Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
J
jinfa-platform
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
shenshaokai
jinfa-platform
Commits
e8a67109
Commit
e8a67109
authored
Jan 04, 2022
by
前端-钟卫鹏
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat: 新增待分配订单页面
parent
ed7530ce
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
432 additions
and
14 deletions
+432
-14
purchaseOrder.ts
config/routes/tranactionRoute/purchaseOrder.ts
+28
-14
index.tsx
...transaction/purchaseOrder/readyDistrbutionOrder/index.tsx
+95
-0
useSelfTable.tsx
...urchaseOrder/readyDistrbutionOrder/model/useSelfTable.tsx
+32
-0
index.ts
...ction/purchaseOrder/readyDistrbutionOrder/schema/index.ts
+75
-0
index.tsx
...ges/transaction/saleOrder/readyDistrbutionOrder/index.tsx
+95
-0
useSelfTable.tsx
...on/saleOrder/readyDistrbutionOrder/model/useSelfTable.tsx
+32
-0
index.ts
...ansaction/saleOrder/readyDistrbutionOrder/schema/index.ts
+75
-0
No files found.
config/routes/tranactionRoute/purchaseOrder.ts
View file @
e8a67109
...
...
@@ -306,20 +306,20 @@ export default [
hideInMenu
:
true
,
noMargin
:
true
,
},
// 待新增入库单订单
{
path
:
'/memberCenter/tranactionAbility/purchaseOrder/addPurchaseWarehouseOrder'
,
name
:
'addPurchaseWarehouseOrder'
,
component
:
'@/pages/transaction/purchaseOrder/addPurchaseWarehouseOrder'
},
// 待新增入库单订单-查看
{
path
:
'/memberCenter/tranactionAbility/purchaseOrder/addPurchaseWarehouseOrder/preview'
,
name
:
'orderPreview'
,
hideInMenu
:
true
,
noMargin
:
true
,
component
:
'@/pages/transaction/purchaseOrder/orderPreview'
},
//
//
待新增入库单订单
//
{
//
path: '/memberCenter/tranactionAbility/purchaseOrder/addPurchaseWarehouseOrder',
//
name: 'addPurchaseWarehouseOrder',
//
component: '@/pages/transaction/purchaseOrder/addPurchaseWarehouseOrder'
//
},
//
//
待新增入库单订单-查看
//
{
//
path: '/memberCenter/tranactionAbility/purchaseOrder/addPurchaseWarehouseOrder/preview',
//
name: 'orderPreview',
//
hideInMenu: true,
//
noMargin: true,
//
component: '@/pages/transaction/purchaseOrder/orderPreview'
//
},
// 待收货订单
{
path
:
'/memberCenter/tranactionAbility/purchaseOrder/readyReceiveOrder'
,
...
...
@@ -378,6 +378,20 @@ export default [
hideInMenu
:
true
,
noMargin
:
true
,
},
// 待分配订单
{
path
:
'/memberCenter/tranactionAbility/purchaseOrder/readyDistributionOrder'
,
name
:
'readyDistributionOrder'
,
component
:
'@/pages/transaction/purchaseOrder/readyDistributionOrder'
},
// 待分配订单-查看
{
path
:
'/memberCenter/tranactionAbility/purchaseOrder/readyDistributionOrder/preview'
,
name
:
'orderPreview'
,
hideInMenu
:
true
,
noMargin
:
true
,
component
:
'@/pages/transaction/purchaseOrder/orderPreview'
},
]
}
]
src/pages/transaction/purchaseOrder/readyDistrbutionOrder/index.tsx
0 → 100644
View file @
e8a67109
import
React
from
'react'
import
{
Card
,
Button
,
Space
,
message
}
from
'antd'
import
StandardTable
from
'@/components/StandardTable'
;
import
{
PageHeaderWrapper
}
from
'@ant-design/pro-layout'
import
{
useSelfTable
}
from
'./model/useSelfTable'
import
{
tableListSchema
}
from
'./schema'
import
{
useStateFilterSearchLinkageEffect
}
from
'@/formSchema/effects/useFilterSearch'
import
{
FORM_FILTER_PATH
}
from
'@/formSchema/const'
import
Submit
from
'@/components/NiceForm/components/Submit'
import
DateRangePickerUnix
from
'@/components/NiceForm/components/DateRangePickerUnix'
import
{
useHttpRequest
}
from
'@/hooks/useHttpRequest'
import
'../index.less'
import
{
getOrderBuyerValidateSubmitPage
,
postOrderBuyerValidateSubmitBatch
}
from
'@/services/OrderNewV2Api'
import
{
useIntl
}
from
'umi'
// 待分配订单
export
interface
ReadyDistributionOrderProps
{}
const
fetchTableData
=
async
(
params
)
=>
{
const
{
data
}
=
await
getOrderBuyerValidateSubmitPage
(
params
)
return
data
}
const
ReadyDistributionOrder
:
React
.
FC
<
ReadyDistributionOrderProps
>
=
(
props
)
=>
{
const
{
columns
,
ref
,
rowSelection
,
rowSelectionCtl
}
=
useSelfTable
()
const
{
run
,
loading
}
=
useHttpRequest
(
postOrderBuyerValidateSubmitBatch
)
const
intl
=
useIntl
()
const
handleBitchPush
=
async
()
=>
{
if
(
rowSelectionCtl
.
selectRow
.
length
===
0
)
{
return
message
.
error
(
intl
.
formatMessage
({
id
:
'purchaseOrder.qingxiangouxuanding'
,
defaultMessage
:
'请先勾选订单'
}))
}
const
{
code
}
=
await
run
(
rowSelectionCtl
.
selectedRowKeys
.
map
(
item
=>
({
orderId
:
item
})))
if
(
code
===
1000
)
{
ref
.
current
.
reload
()
rowSelectionCtl
.
setSelectRow
([])
rowSelectionCtl
.
setSelectedRowKeys
([])
}
}
return
<
PageHeaderWrapper
>
<
Card
>
<
StandardTable
rowSelection=
{
rowSelection
}
fetchTableData=
{
params
=>
fetchTableData
(
params
)
}
columns=
{
columns
}
currentRef=
{
ref
}
rowKey=
{
'orderId'
}
formilyLayouts=
{
{
justify
:
'space-between'
}
}
formilyProps=
{
{
ctx
:
{
inline
:
false
,
schema
:
tableListSchema
(),
effects
:
(
$
,
actions
)
=>
{
useStateFilterSearchLinkageEffect
(
$
,
actions
,
'orderNo'
,
FORM_FILTER_PATH
,
);
},
components
:
{
DateRangePickerUnix
,
Submit
}
},
layouts
:
{
order
:
2
,
span
:
16
}
}
}
formilyChilds=
{
{
children
:
<
Space
>
<
Button
onClick=
{
handleBitchPush
}
loading=
{
loading
}
>
{
intl
.
formatMessage
({
id
:
'purchaseOrder.piliangtijiao'
,
defaultMessage
:
'批量提交'
})
}
</
Button
>
</
Space
>,
layouts
:
{
span
:
8
}
}
}
/>
</
Card
>
</
PageHeaderWrapper
>
}
ReadyDistributionOrder
.
defaultProps
=
{}
export
default
ReadyDistributionOrder
src/pages/transaction/purchaseOrder/readyDistrbutionOrder/model/useSelfTable.tsx
0 → 100644
View file @
e8a67109
import
React
,
{
useRef
}
from
'react'
import
{
Button
}
from
'antd'
import
{
baseOrderListColumns
}
from
'../../constant'
import
{
history
,
useIntl
}
from
'umi'
import
{
useRowSelectionTable
}
from
'@/hooks/useRowSelectionTable'
export
const
useSelfTable
=
()
=>
{
const
ref
=
useRef
<
any
>
({})
const
[
rowSelection
,
rowSelectionCtl
]
=
useRowSelectionTable
({
customKey
:
'orderId'
})
const
intl
=
useIntl
()
const
handleSubmit
=
async
(
id
)
=>
{
history
.
push
(
`/memberCenter/tranactionAbility/purchaseOrder/readySubmitOrder/detail?id=
${
id
}
&preview=0`
)
}
const
secondColumns
:
any
[]
=
baseOrderListColumns
().
concat
([
{
title
:
intl
.
formatMessage
({
id
:
'purchaseOrder.caozuo'
,
defaultMessage
:
'操作'
}),
align
:
'center'
,
dataIndex
:
'ctl'
,
key
:
'ctl'
,
render
:
(
text
,
record
)
=>
<
Button
type=
'link'
onClick=
{
()
=>
handleSubmit
(
record
.
orderId
)
}
>
{
intl
.
formatMessage
({
id
:
'purchaseOrder.tijiaodingdan'
,
defaultMessage
:
'提交订单'
})
}
</
Button
>
}
])
return
{
columns
:
secondColumns
,
ref
,
rowSelection
,
rowSelectionCtl
}
}
src/pages/transaction/purchaseOrder/readyDistrbutionOrder/schema/index.ts
0 → 100644
View file @
e8a67109
import
{
FORM_FILTER_PATH
}
from
'@/formSchema/const'
;
import
{
getPurchaseOrderSelectOption
}
from
'@/pages/transaction/effect'
;
import
{
useIntl
}
from
'umi'
;
export
const
tableListSchema
:
any
=
()
=>
{
const
intl
=
useIntl
()
const
res
=
getPurchaseOrderSelectOption
()
if
(
res
)
{
const
{
orderTypes
:
OrderType
,
}
=
res
return
{
type
:
'object'
,
properties
:
{
orderNo
:
{
type
:
'string'
,
"x-component"
:
'SearchFilter'
,
'x-component-props'
:
{
placeholder
:
intl
.
formatMessage
({
id
:
'purchaseOrder.qingshurudingdanOrderNo'
,
defaultMessage
:
'请输入订单编号'
}),
align
:
'flex-end'
,
},
},
[
FORM_FILTER_PATH
]:
{
type
:
'object'
,
'x-component'
:
'flex-layout'
,
'x-component-props'
:
{
inline
:
true
,
colStyle
:
{
marginLeft
:
20
}
},
properties
:
{
digest
:
{
type
:
'string'
,
'x-component-props'
:
{
placeholder
:
intl
.
formatMessage
({
id
:
'purchaseOrder.qingshurudingdanDigest'
,
defaultMessage
:
'请输入订单摘要'
}),
}
},
"memberName"
:
{
type
:
'string'
,
"x-component-props"
:
{
placeholder
:
intl
.
formatMessage
({
id
:
'purchaseOrder.qingshurudingdanMemberName'
,
defaultMessage
:
'请输入供应会员名称'
})
}
},
"orderType"
:
{
type
:
'string'
,
"x-component-props"
:
{
placeholder
:
intl
.
formatMessage
({
id
:
'purchaseOrder.qingxuanzedingdanOrderType'
,
defaultMessage
:
'请选择订单类型'
})
},
enum
:
OrderType
.
map
(
item
=>
({
label
:
item
[
'text'
],
value
:
item
[
'id'
],
}))
},
"[startDate, endDate]"
:
{
type
:
'daterange'
,
// "x-component": 'DateRangePickerUnix',
'x-component-props'
:
{
// showTime: true,
placeholder
:
[
intl
.
formatMessage
({
id
:
'purchaseOrder.kaishishijian'
,
defaultMessage
:
'开始时间'
}),
intl
.
formatMessage
({
id
:
'purchaseOrder.jieshushijian'
,
defaultMessage
:
'结束时间'
})],
},
},
submit
:
{
'x-component'
:
'Submit'
,
'x-component-props'
:
{
children
:
intl
.
formatMessage
({
id
:
'purchaseOrder.chaxun'
,
defaultMessage
:
'查询'
}),
},
},
},
},
}
}
}
}
src/pages/transaction/saleOrder/readyDistrbutionOrder/index.tsx
0 → 100644
View file @
e8a67109
import
React
from
'react'
import
{
Card
,
Button
,
Space
,
message
}
from
'antd'
import
StandardTable
from
'@/components/StandardTable'
;
import
{
PageHeaderWrapper
}
from
'@ant-design/pro-layout'
import
{
useSelfTable
}
from
'./model/useSelfTable'
import
{
tableListSchema
}
from
'./schema'
import
{
useStateFilterSearchLinkageEffect
}
from
'@/formSchema/effects/useFilterSearch'
import
{
FORM_FILTER_PATH
}
from
'@/formSchema/const'
import
Submit
from
'@/components/NiceForm/components/Submit'
import
DateRangePickerUnix
from
'@/components/NiceForm/components/DateRangePickerUnix'
import
{
useHttpRequest
}
from
'@/hooks/useHttpRequest'
import
'../index.less'
import
{
getOrderBuyerValidateSubmitPage
,
postOrderBuyerValidateSubmitBatch
}
from
'@/services/OrderNewV2Api'
import
{
useIntl
}
from
'umi'
// 待分配订单
export
interface
ReadyDistributionOrderProps
{}
const
fetchTableData
=
async
(
params
)
=>
{
const
{
data
}
=
await
getOrderBuyerValidateSubmitPage
(
params
)
return
data
}
const
ReadyDistributionOrder
:
React
.
FC
<
ReadyDistributionOrderProps
>
=
(
props
)
=>
{
const
{
columns
,
ref
,
rowSelection
,
rowSelectionCtl
}
=
useSelfTable
()
const
{
run
,
loading
}
=
useHttpRequest
(
postOrderBuyerValidateSubmitBatch
)
const
intl
=
useIntl
()
const
handleBitchPush
=
async
()
=>
{
if
(
rowSelectionCtl
.
selectRow
.
length
===
0
)
{
return
message
.
error
(
intl
.
formatMessage
({
id
:
'purchaseOrder.qingxiangouxuanding'
,
defaultMessage
:
'请先勾选订单'
}))
}
const
{
code
}
=
await
run
(
rowSelectionCtl
.
selectedRowKeys
.
map
(
item
=>
({
orderId
:
item
})))
if
(
code
===
1000
)
{
ref
.
current
.
reload
()
rowSelectionCtl
.
setSelectRow
([])
rowSelectionCtl
.
setSelectedRowKeys
([])
}
}
return
<
PageHeaderWrapper
>
<
Card
>
<
StandardTable
rowSelection=
{
rowSelection
}
fetchTableData=
{
params
=>
fetchTableData
(
params
)
}
columns=
{
columns
}
currentRef=
{
ref
}
rowKey=
{
'orderId'
}
formilyLayouts=
{
{
justify
:
'space-between'
}
}
formilyProps=
{
{
ctx
:
{
inline
:
false
,
schema
:
tableListSchema
(),
effects
:
(
$
,
actions
)
=>
{
useStateFilterSearchLinkageEffect
(
$
,
actions
,
'orderNo'
,
FORM_FILTER_PATH
,
);
},
components
:
{
DateRangePickerUnix
,
Submit
}
},
layouts
:
{
order
:
2
,
span
:
16
}
}
}
formilyChilds=
{
{
children
:
<
Space
>
<
Button
onClick=
{
handleBitchPush
}
loading=
{
loading
}
>
{
intl
.
formatMessage
({
id
:
'purchaseOrder.piliangtijiao'
,
defaultMessage
:
'批量提交'
})
}
</
Button
>
</
Space
>,
layouts
:
{
span
:
8
}
}
}
/>
</
Card
>
</
PageHeaderWrapper
>
}
ReadyDistributionOrder
.
defaultProps
=
{}
export
default
ReadyDistributionOrder
src/pages/transaction/saleOrder/readyDistrbutionOrder/model/useSelfTable.tsx
0 → 100644
View file @
e8a67109
import
React
,
{
useRef
}
from
'react'
import
{
Button
}
from
'antd'
import
{
baseOrderListColumns
}
from
'../../constant'
import
{
history
,
useIntl
}
from
'umi'
import
{
useRowSelectionTable
}
from
'@/hooks/useRowSelectionTable'
export
const
useSelfTable
=
()
=>
{
const
ref
=
useRef
<
any
>
({})
const
[
rowSelection
,
rowSelectionCtl
]
=
useRowSelectionTable
({
customKey
:
'orderId'
})
const
intl
=
useIntl
()
const
handleSubmit
=
async
(
id
)
=>
{
history
.
push
(
`/memberCenter/tranactionAbility/purchaseOrder/readySubmitOrder/detail?id=
${
id
}
&preview=0`
)
}
const
secondColumns
:
any
[]
=
baseOrderListColumns
().
concat
([
{
title
:
intl
.
formatMessage
({
id
:
'purchaseOrder.caozuo'
,
defaultMessage
:
'操作'
}),
align
:
'center'
,
dataIndex
:
'ctl'
,
key
:
'ctl'
,
render
:
(
text
,
record
)
=>
<
Button
type=
'link'
onClick=
{
()
=>
handleSubmit
(
record
.
orderId
)
}
>
{
intl
.
formatMessage
({
id
:
'purchaseOrder.tijiaodingdan'
,
defaultMessage
:
'提交订单'
})
}
</
Button
>
}
])
return
{
columns
:
secondColumns
,
ref
,
rowSelection
,
rowSelectionCtl
}
}
src/pages/transaction/saleOrder/readyDistrbutionOrder/schema/index.ts
0 → 100644
View file @
e8a67109
import
{
FORM_FILTER_PATH
}
from
'@/formSchema/const'
;
import
{
getPurchaseOrderSelectOption
}
from
'@/pages/transaction/effect'
;
import
{
useIntl
}
from
'umi'
;
export
const
tableListSchema
:
any
=
()
=>
{
const
intl
=
useIntl
()
const
res
=
getPurchaseOrderSelectOption
()
if
(
res
)
{
const
{
orderTypes
:
OrderType
,
}
=
res
return
{
type
:
'object'
,
properties
:
{
orderNo
:
{
type
:
'string'
,
"x-component"
:
'SearchFilter'
,
'x-component-props'
:
{
placeholder
:
intl
.
formatMessage
({
id
:
'purchaseOrder.qingshurudingdanOrderNo'
,
defaultMessage
:
'请输入订单编号'
}),
align
:
'flex-end'
,
},
},
[
FORM_FILTER_PATH
]:
{
type
:
'object'
,
'x-component'
:
'flex-layout'
,
'x-component-props'
:
{
inline
:
true
,
colStyle
:
{
marginLeft
:
20
}
},
properties
:
{
digest
:
{
type
:
'string'
,
'x-component-props'
:
{
placeholder
:
intl
.
formatMessage
({
id
:
'purchaseOrder.qingshurudingdanDigest'
,
defaultMessage
:
'请输入订单摘要'
}),
}
},
"memberName"
:
{
type
:
'string'
,
"x-component-props"
:
{
placeholder
:
intl
.
formatMessage
({
id
:
'purchaseOrder.qingshurudingdanMemberName'
,
defaultMessage
:
'请输入供应会员名称'
})
}
},
"orderType"
:
{
type
:
'string'
,
"x-component-props"
:
{
placeholder
:
intl
.
formatMessage
({
id
:
'purchaseOrder.qingxuanzedingdanOrderType'
,
defaultMessage
:
'请选择订单类型'
})
},
enum
:
OrderType
.
map
(
item
=>
({
label
:
item
[
'text'
],
value
:
item
[
'id'
],
}))
},
"[startDate, endDate]"
:
{
type
:
'daterange'
,
// "x-component": 'DateRangePickerUnix',
'x-component-props'
:
{
// showTime: true,
placeholder
:
[
intl
.
formatMessage
({
id
:
'purchaseOrder.kaishishijian'
,
defaultMessage
:
'开始时间'
}),
intl
.
formatMessage
({
id
:
'purchaseOrder.jieshushijian'
,
defaultMessage
:
'结束时间'
})],
},
},
submit
:
{
'x-component'
:
'Submit'
,
'x-component-props'
:
{
children
:
intl
.
formatMessage
({
id
:
'purchaseOrder.chaxun'
,
defaultMessage
:
'查询'
}),
},
},
},
},
}
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment