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
黄庭坚
jinfa-platform
Commits
4d563ba1
Commit
4d563ba1
authored
May 24, 2021
by
Bill
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat: 分离加工能力
parent
19e62fad
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
268 additions
and
2 deletions
+268
-2
index.ts
config/routes/index.ts
+2
-2
index.tsx
src/pages/handling/assign/allQuery/index.tsx
+63
-0
query.tsx
src/pages/handling/common/columns/query.tsx
+45
-0
useFetchData.tsx
src/pages/handling/common/hooks/useFetchData.tsx
+35
-0
useFetchFilterData.tsx
src/pages/handling/common/hooks/useFetchFilterData.tsx
+36
-0
query.tsx
src/pages/handling/common/schemas/query.tsx
+87
-0
No files found.
config/routes/index.ts
View file @
4d563ba1
...
@@ -13,7 +13,7 @@ import ChannelRoute from './channelRoute' // 渠道能力路由
...
@@ -13,7 +13,7 @@ import ChannelRoute from './channelRoute' // 渠道能力路由
// import PayandSettleRoute from './payandSettle' //支付与结算
// import PayandSettleRoute from './payandSettle' //支付与结算
// import AuthConfigRoute from './authConfigRoute'
// import AuthConfigRoute from './authConfigRoute'
// import AfterService from './afterServiceRoute' // 售后
// import AfterService from './afterServiceRoute' // 售后
//
import HandlingRoute from './handlingRoute'; // 加工能力
import
HandlingRoute
from
'./handlingRoute'
;
// 加工能力
import
asyncRoutes
from
'../router.config.json'
;
import
asyncRoutes
from
'../router.config.json'
;
// import ProcurementRoute from './procurementRoute';
// import ProcurementRoute from './procurementRoute';
// import { callForBidsRoute } from './procurementRoute/callForBids';
// import { callForBidsRoute } from './procurementRoute/callForBids';
...
@@ -63,7 +63,6 @@ const memberCenterRoute = {
...
@@ -63,7 +63,6 @@ const memberCenterRoute = {
// name: 'home',
// name: 'home',
// icon: 'home',
// icon: 'home',
// key: 'home',
// key: 'home',
// // component: '@/pages/index',
// component: '@/pages/home',
// component: '@/pages/home',
// },
// },
// ShopRoute,
// ShopRoute,
...
@@ -77,6 +76,7 @@ const memberCenterRoute = {
...
@@ -77,6 +76,7 @@ const memberCenterRoute = {
//...
//...
// AuthConfigRoute,
// AuthConfigRoute,
// MemberRoute,
// MemberRoute,
// HandlingRoute,
...
asyncRoutes
,
...
asyncRoutes
,
{
{
path
:
'/memberCenter/noAuth'
,
path
:
'/memberCenter/noAuth'
,
...
...
src/pages/handling/assign/allQuery/index.tsx
0 → 100644
View file @
4d563ba1
import
React
,
{
useCallback
,
useRef
}
from
'react'
;
import
{
PageHeaderWrapper
}
from
'@ant-design/pro-layout'
;
import
{
Card
}
from
'antd'
;
import
{
querySchema
}
from
'../../common/schemas/query'
;
import
{
StandardTable
}
from
'god'
;
import
NiceForm
from
'@/components/NiceForm'
;
import
{
useStateFilterSearchLinkageEffect
}
from
'@/formSchema/effects/useFilterSearch'
;
import
{
useAsyncInitSelect
}
from
'@/formSchema/effects/useAsyncInitSelect'
;
import
{
FORM_FILTER_PATH
}
from
'@/formSchema/const'
;
import
{
useRowSelectionTable
}
from
'@/hooks/useRowSelectionTable'
;
import
{
createFormActions
}
from
'@formily/antd'
;
import
{
timeRange
}
from
'@/utils'
;
import
{
queryColumns
}
from
'../../common/columns/query'
;
import
{
PublicApi
}
from
'@/services/api'
;
import
useFetchData
from
'../../common/hooks/useFetchData'
;
import
useFetchFilterData
from
'../../common/hooks/useFetchFilterData'
;
const
formActions
=
createFormActions
();
const
AllQuery
=
()
=>
{
const
ref
=
useRef
<
any
>
({});
const
{
fetchListData
,
onFormatSearchData
}
=
useFetchData
()
const
{
filterRes
,
fetchSelectOptions
}
=
useFetchFilterData
()
const
handleSearch
=
useCallback
((
values
:
any
)
=>
{
const
searchData
=
onFormatSearchData
(
values
)
ref
.
current
.
reload
(
searchData
)
},
[
ref
])
return
(
<
PageHeaderWrapper
title=
{
'生产通知单查询'
}
>
<
Card
>
<
StandardTable
tableProps=
{
{
rowKey
:
'id'
,
// rowSelection: selectRow
}
}
columns=
{
queryColumns
}
currentRef=
{
ref
}
fetchTableData=
{
(
params
:
any
)
=>
fetchListData
(
PublicApi
.
getEnhanceSupplierAllList
,
params
)
}
controlRender=
{
<
NiceForm
actions=
{
formActions
}
onSubmit=
{
handleSearch
}
effects=
{
(
$
,
actions
)
=>
{
useStateFilterSearchLinkageEffect
(
$
,
actions
,
'noticeNo'
,
FORM_FILTER_PATH
);
useAsyncInitSelect
(
[
'innerStatus'
,
'outerStatus'
],
fetchSelectOptions
,
);
}
}
schema=
{
querySchema
}
/>
}
/>
</
Card
>
</
PageHeaderWrapper
>
)
}
export
default
AllQuery
src/pages/handling/common/columns/query.tsx
0 → 100644
View file @
4d563ba1
import
React
from
'react'
;
import
{
ColumnsType
}
from
'antd/es/table'
;
import
moment
from
'moment'
;
import
{
Badge
}
from
'antd'
;
import
EyePreview
from
'@/components/EyePreview'
;
export
const
queryColumns
:
ColumnsType
<
any
>
=
[
{
title
:
'通知单号/摘要'
,
dataIndex
:
'des'
,
render
:
(
text
,
record
)
=>
{
return
(
<
div
>
<
EyePreview
url=
{
`http://www.baidu.com?id=${record.id}`
}
>
{
text
}
</
EyePreview
>
</
div
>
)
}
},
{
title
:
'加工企业名称'
,
dataIndex
:
"processName"
},
{
title
:
'单据时间'
,
dataIndex
:
'createTime'
,
sorter
:
(
a
,
b
)
=>
a
.
createTime
-
b
.
createTime
,
render
:
(
text
,
record
)
=>
moment
(
text
).
format
(
'YYYY-MM-DD'
),
},
{
title
:
'外部状态'
,
dataIndex
:
'outerStatusName'
,
// render: (text, record: any) => {
// return <StatusTag title={text} type={SUPPLIER_OUTER_STATUS_COLOR[record.outerStatus]}></StatusTag>
// }
},
{
title
:
'内部状态'
,
dataIndex
:
'innerStatusName'
,
render
:
(
text
,
record
:
any
)
=>
{
return
(
<
Badge
status=
{
"success"
}
text=
{
text
}
></
Badge
>
)
}
}
]
src/pages/handling/common/hooks/useFetchData.tsx
0 → 100644
View file @
4d563ba1
import
{
timeRange
}
from
'@/utils'
;
import
React
,
{
useCallback
,
useMemo
}
from
'react'
;
interface
ResponseDataType
{
code
:
number
,
message
:
string
}
function
useFetchData
()
{
const
fetchListData
=
useCallback
(
async
<
T
,
P
>
(fn: (postData: P, headers:
{
[
key
:
string
]:
string
}
) =
>
Promise
<
ResponseDataType
&
{
data
:
T
}
>
, params: P, headers?:
{
[
key
:
string
]:
string
}
) =
>
{
const
{
code
,
data
,
message
}
=
await
fn
(
params
,
headers
);
if
(
code
===
1000
)
{
return
data
;
}
return
{
totalCount
:
0
,
data
:
[],
}
}
, [])
const onFormatSearchData = useCallback(
<
Q
,
>
(values: Q) =
>
{
const
{
docTime
,
...
rest
}
=
values
as
Q
&
{
[
key
:
string
]:
any
};
const
{
st
,
et
}
=
timeRange
(
docTime
);
let
searchData
=
{
...
rest
,
startTime
:
st
,
endTime
:
et
}
return
searchData
}
, [])
return
{
fetchListData
,
onFormatSearchData
}
}
export default useFetchData;
src/pages/handling/common/hooks/useFetchFilterData.tsx
0 → 100644
View file @
4d563ba1
import
{
PublicApi
}
from
'@/services/api'
;
import
React
,
{
useCallback
,
useState
}
from
'react'
;
type
FilterResType
=
{
innerStatus
:
{
label
:
string
,
value
:
number
}[],
outerStatus
:
{
label
:
string
,
value
:
number
}[],
}
/**
* 获取列表页,搜索条件
* 暂时写死
*/
function
useFetchFilterData
()
{
const
[
filterRes
,
setFilterRes
]
=
useState
<
FilterResType
>
({
innerStatus
:
[],
outerStatus
:
[],
})
const
fetchSelectOptions
=
useCallback
(
async
()
=>
{
const
{
data
,
code
}
=
await
PublicApi
.
getEnhanceSupplierAllOuterAndInner
()
if
(
code
===
1000
)
{
const
res
=
{
innerStatus
:
data
.
innerList
.
map
((
item
:
any
)
=>
({
label
:
item
.
message
,
value
:
item
.
code
})),
outerStatus
:
data
.
outerList
.
map
((
item
:
any
)
=>
({
label
:
item
.
message
,
value
:
item
.
code
})),
}
setFilterRes
(
res
);
return
res
;
}
return
{
innerStatus
:
[],
outerStatus
:
[],
}
},
[]);
return
{
fetchSelectOptions
,
filterRes
}
}
export
default
useFetchFilterData
;
src/pages/handling/common/schemas/query.tsx
0 → 100644
View file @
4d563ba1
import
{
FORM_FILTER_PATH
}
from
"@/formSchema/const"
;
import
{
ISchema
}
from
"@formily/antd"
;
/**
* 列表页schema,无创建按钮
*/
export
const
querySchema
:
ISchema
=
{
type
:
'object'
,
properties
:
{
megaLayout
:
{
type
:
'object'
,
'x-component'
:
'mega-layout'
,
properties
:
{
noticeNo
:
{
type
:
'string'
,
'x-component'
:
'Search'
,
'x-component-props'
:
{
placeholder
:
'搜索通知单号'
,
align
:
'flex-left'
,
tip
:
'输入通知单号进行搜索'
,
},
},
[
FORM_FILTER_PATH
]:
{
type
:
'object'
,
'x-component'
:
'mega-layout'
,
'x-component-props'
:
{
grid
:
true
,
full
:
true
,
autoRow
:
true
,
columns
:
6
,
},
properties
:
{
summary
:
{
type
:
'string'
,
'x-component-props'
:
{
placeholder
:
'通知单摘要'
,
allowClear
:
true
,
},
},
processName
:
{
type
:
'string'
,
'x-component-props'
:
{
placeholder
:
'加工企业名'
,
allowClear
:
true
,
},
},
docTime
:
{
type
:
'string'
,
default
:
0
,
enum
:
docTime
,
'x-component-props'
:
{
placeholder
:
'单据时间(全部)'
,
allowClear
:
true
,
},
},
outerStatus
:
{
type
:
'string'
,
default
:
undefined
,
enum
:
[],
'x-component-props'
:
{
placeholder
:
'外部状态(全部)'
,
allowClear
:
true
,
},
},
innerStatus
:
{
type
:
'string'
,
default
:
undefined
,
enum
:
[],
'x-component-props'
:
{
placeholder
:
'内部状态(全部)'
,
allowClear
:
true
,
},
},
submit
:
{
'x-component'
:
'Submit'
,
'x-mega-props'
:
{
span
:
1
,
},
'x-component-props'
:
{
children
:
'查询'
,
},
},
},
},
},
},
},
};
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