Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
J
jinfa-admin
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
project
jinfa-admin
Commits
9dd58334
Commit
9dd58334
authored
May 08, 2021
by
Bill
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'dev-srm' of 10.0.0.22:lingxi/lingxi-business-system into dev-srm
parents
9eeacd60
0038ece8
Hide whitespace changes
Inline
Side-by-side
Showing
17 changed files
with
520 additions
and
82 deletions
+520
-82
index.ts
config/routes/index.ts
+2
-0
purchaseBidRoute.ts
config/routes/purchaseBidRoute.ts
+52
-0
index.tsx
src/pages/procurement/callForBidsSearch/index.tsx
+1
-1
useSelfTable.tsx
...ages/procurement/callForBidsSearch/model/useSelfTable.tsx
+10
-10
index.ts
src/pages/procurement/callForBidsSearch/schema/index.ts
+1
-1
index.tsx
src/pages/procurement/constants/index.tsx
+15
-15
index.tsx
src/pages/procurement/readyCheckBid/index.tsx
+39
-39
useSelfTable.tsx
src/pages/procurement/readyCheckBid/model/useSelfTable.tsx
+1
-1
index.ts
src/pages/procurement/readyCheckBid/schema/index.ts
+1
-1
index.tsx
src/pages/procurement/tenderSearch/index.tsx
+1
-1
useSelfTable.tsx
src/pages/procurement/tenderSearch/model/useSelfTable.tsx
+8
-8
index.ts
src/pages/procurement/tenderSearch/schema/index.ts
+3
-3
index.tsx
src/pages/purchaseAbility/components/table/index.tsx
+37
-2
index.tsx
src/pages/purchaseAbility/purchaseBid/detail/index.tsx
+0
-0
index.tsx
...pages/purchaseAbility/purchaseBid/examineSearch/index.tsx
+111
-0
index.tsx
src/pages/purchaseAbility/purchaseBid/search/index.tsx
+73
-0
purchaseBid.ts
src/pages/purchaseAbility/schema/purchaseBid.ts
+165
-0
No files found.
config/routes/index.ts
View file @
9dd58334
...
...
@@ -31,6 +31,7 @@
// import exchangeManageRoutes from './exchangeManageRoute'; // 换货申请单管理
// import returnManageRoute from './returnManageRoute'; // 退货申请单管理
// import repairManageRoute from './repairManageRoute'; // 维修申请单管理
import
purchaseBidRoute
from
'./purchaseBidRoute'
;
// 采购竞价单审核
//@ts-ignore
import
asyncRoutes
from
'../router.config.json'
...
...
@@ -102,6 +103,7 @@ const router = [
// },
// ...routeList,
...
asyncRoutes
,
// purchaseBidRoute,
{
path
:
'/noAuth'
,
hidePageHeader
:
true
,
...
...
config/routes/purchaseBidRoute.ts
0 → 100644
View file @
9dd58334
// 采购竞价单审核
const
router
=
{
path
:
'/purchaseBid/demand'
,
name
:
'采购竞价单审核'
,
routes
:
[
{
// 采购竞价单查询
path
:
'/purchaseBid/demand/search'
,
name
:
'采购竞价单查询'
,
hidePageHeader
:
true
,
component
:
'@/pages/purchaseAbility/purchaseBid/search'
,
},
// {
// // 采购竞价单详情
// path: '/purchaseBid/demand/search/preview',
// name: '采购竞价单详情',
// component: '@/pages/purchaseAbility/purchaseBid/detail',
// hidePageHeader: true,
// hideInMenu: true,
// noMargin: true,
// },
{
// 待审核采购竞价单
path
:
'/purchaseBid/demand/examineSearch'
,
name
:
'待审核采购竞价单查询'
,
hidePageHeader
:
true
,
component
:
'@/pages/purchaseAbility/purchaseBid/examineSearch'
,
},
// {
// // 采购竞价单详情 审核
// path: '/purchaseBid/demand/examineSearch/detail',
// name: '待审核采购竞价单详情',
// component: '@/pages/purchaseAbility/purchaseBid/detail',
// hidePageHeader: true,
// hideInMenu: true,
// noMargin: true,
// },
// {
// // 采购竞价单详情
// path: '/purchaseBid/demand/examineSearch/preview',
// name: '待审核采购竞价单详情',
// component: '@/pages/purchaseAbility/purchaseBid/detail',
// hidePageHeader: true,
// hideInMenu: true,
// noMargin: true,
// },
]
}
export
default
router
\ No newline at end of file
src/pages/procurement/callForBidsSearch/index.tsx
View file @
9dd58334
...
...
@@ -41,7 +41,7 @@ const callForBidsSearch: React.FC<{}> = () => {
useStateFilterSearchLinkageEffect
(
$
,
actions
,
'
c
ode'
,
'
inviteTenderC
ode'
,
FORM_FILTER_PATH
,
);
},
...
...
src/pages/procurement/callForBidsSearch/model/useSelfTable.tsx
View file @
9dd58334
...
...
@@ -13,14 +13,14 @@ export const useSelfTable = () => {
const
callForBidColumns
:
any
[]
=
[
{
title
:
'序号'
,
align
:
'
center
'
,
align
:
'
left
'
,
dataIndex
:
'id'
,
key
:
'id'
,
render
:
(
text
,
record
,
index
)
=>
index
+
1
},
{
title
:
'招标编号/项目'
,
align
:
'
center
'
,
align
:
'
left
'
,
dataIndex
:
'code'
,
key
:
'code'
,
render
:
(
text
,
record
)
=>
<>
...
...
@@ -32,21 +32,21 @@ export const useSelfTable = () => {
},
{
title
:
'采购类型'
,
align
:
'
center
'
,
align
:
'
left
'
,
dataIndex
:
'purchaseType'
,
key
:
'purchaseType'
,
render
:
(
t
)
=>
PURCHASE_TYPE
[
t
]
},
{
title
:
'招标方式'
,
align
:
'
center
'
,
align
:
'
left
'
,
dataIndex
:
'inviteTenderType'
,
key
:
'inviteTenderType'
,
render
:
(
t
)
=>
CALLFORBID_TYPE
[
t
]
},
{
title
:
'发布时间'
,
align
:
'
center
'
,
align
:
'
left
'
,
dataIndex
:
'createTime'
,
key
:
'createTime'
,
render
:
(
text
,
record
)
=>
formatTimeString
(
record
.
createTime
),
...
...
@@ -54,7 +54,7 @@ export const useSelfTable = () => {
},
{
title
:
'报名开始/截止时间'
,
align
:
'
center
'
,
align
:
'
left
'
,
dataIndex
:
'registerStartTime'
,
key
:
'registerStartTime'
,
render
:
(
text
,
record
)
=>
<>
...
...
@@ -65,7 +65,7 @@ export const useSelfTable = () => {
},
{
title
:
'资格预审开始/截止时间'
,
align
:
'
center
'
,
align
:
'
left
'
,
dataIndex
:
'checkStartTime'
,
key
:
'checkStartTime'
,
render
:
(
text
,
record
)
=>
<>
...
...
@@ -76,7 +76,7 @@ export const useSelfTable = () => {
},
{
title
:
'投标开始/截止时间'
,
align
:
'
center
'
,
align
:
'
left
'
,
dataIndex
:
'inviteTenderStartTime'
,
key
:
'inviteTenderStartTime'
,
render
:
(
text
,
record
)
=>
<>
...
...
@@ -87,14 +87,14 @@ export const useSelfTable = () => {
},
{
title
:
'外部状态'
,
align
:
'
center
'
,
align
:
'
left
'
,
dataIndex
:
'tenderOutStatus'
,
key
:
'tenderOutStatus'
,
render
:
text
=>
<
CustomTag
status=
{
text
}
type=
'out'
/>
},
// {
// title: '内部状态',
// align: '
center
',
// align: '
left
',
// dataIndex: 'inviteTenderInStatus',
// key: 'inviteTenderInStatus',
// render: (text) => <CustomBadge status={text} type='inside' />
...
...
src/pages/procurement/callForBidsSearch/schema/index.ts
View file @
9dd58334
...
...
@@ -8,7 +8,7 @@ import { BidInStateTexts, BidOutStateTexts } from '@/constants';
export
const
tableListSchema
:
ISchema
=
{
type
:
'object'
,
properties
:
{
c
ode
:
{
inviteTenderC
ode
:
{
type
:
'string'
,
"x-component"
:
'SearchFilter'
,
'x-component-props'
:
{
...
...
src/pages/procurement/constants/index.tsx
View file @
9dd58334
...
...
@@ -50,7 +50,7 @@ export const remarkProcessStatus = [
export
const
baseBidListColumns
:
any
[]
=
[
{
title
:
'招标编号/项目'
,
align
:
'
center
'
,
align
:
'
left
'
,
dataIndex
:
'code'
,
key
:
'code'
,
render
:
(
text
,
record
)
=>
<>
...
...
@@ -62,7 +62,7 @@ export const baseBidListColumns: any[] = [
},
{
title
:
'采购类型'
,
align
:
'
center
'
,
align
:
'
left
'
,
dataIndex
:
'purchaseType'
,
key
:
'purchaseType'
,
render
:
(
t
)
=>
PURCHASE_TYPE
[
t
]
...
...
@@ -76,7 +76,7 @@ export const baseBidListColumns: any[] = [
},
{
title
:
'发布时间'
,
align
:
'
center
'
,
align
:
'
left
'
,
dataIndex
:
'createTime'
,
key
:
'createTime'
,
render
:
(
text
,
record
)
=>
formatTimeString
(
record
.
createTime
),
...
...
@@ -84,25 +84,25 @@ export const baseBidListColumns: any[] = [
},
{
title
:
'投标开始/截止时间'
,
align
:
'
center
'
,
dataIndex
:
'
create
Time'
,
key
:
'
create
Time'
,
align
:
'
left
'
,
dataIndex
:
'
inviteTenderStart
Time'
,
key
:
'
inviteTenderStart
Time'
,
render
:
(
text
,
record
)
=>
<>
<
div
><
PlayCircleOutlined
/>
{
formatTimeString
(
record
.
createTime
)
}
</
div
>
<
div
><
PoweroffOutlined
/>
{
formatTimeString
(
record
.
create
Time
)
}
</
div
>
<
div
><
PlayCircleOutlined
/>
{
formatTimeString
(
text
)
}
</
div
>
<
div
><
PoweroffOutlined
/>
{
formatTimeString
(
record
.
inviteTenderEnd
Time
)
}
</
div
>
</>,
width
:
200
},
{
title
:
'外部状态'
,
align
:
'
center
'
,
align
:
'
left
'
,
dataIndex
:
'tenderOutStatus'
,
key
:
'tenderOutStatus'
,
render
:
text
=>
<
CustomTag
status=
{
text
}
type=
'out'
/>
},
// {
// title: '内部状态',
// align: '
center
',
// align: '
left
',
// dataIndex: 'inviteTenderInStatus',
// key: 'inviteTenderInStatus',
// render: (text) => <CustomBadge status={text} type='inside' />
...
...
@@ -113,7 +113,7 @@ export const baseBidListColumns: any[] = [
export
const
baseTenderListColumns
:
any
[]
=
[
{
title
:
'投标编号/项目'
,
align
:
'
center
'
,
align
:
'
left
'
,
dataIndex
:
'orderNo'
,
key
:
'orderNo'
,
render
:
(
text
,
record
)
=>
<>
...
...
@@ -125,7 +125,7 @@ export const baseTenderListColumns: any[] = [
},
{
title
:
'招标编号/会员'
,
align
:
'
center
'
,
align
:
'
left
'
,
dataIndex
:
'orderNo'
,
key
:
'orderNo'
,
render
:
(
text
,
record
)
=>
<>
...
...
@@ -137,7 +137,7 @@ export const baseTenderListColumns: any[] = [
},
{
title
:
'投标开始/截止时间'
,
align
:
'
center
'
,
align
:
'
left
'
,
dataIndex
:
'createTime'
,
key
:
'createTime'
,
render
:
(
text
,
record
)
=>
<>
...
...
@@ -148,14 +148,14 @@ export const baseTenderListColumns: any[] = [
},
{
title
:
'外部状态'
,
align
:
'
center
'
,
align
:
'
left
'
,
dataIndex
:
'tenderOutStatus'
,
key
:
'tenderOutStatus'
,
render
:
text
=>
<
CustomTag
status=
{
text
}
type=
'out'
/>
},
{
title
:
'内部状态'
,
align
:
'
center
'
,
align
:
'
left
'
,
dataIndex
:
'inviteTenderInStatus'
,
key
:
'inviteTenderInStatus'
,
render
:
(
text
)
=>
<
CustomBadge
status=
{
text
}
type=
'inside'
/>
...
...
src/pages/procurement/readyCheckBid/index.tsx
View file @
9dd58334
...
...
@@ -54,47 +54,47 @@ const FirstCheckedBid:React.FC<FirstCheckedBidProps> = (props) => {
}
}
return
<
Card
>
<
StandardTable
fetchTableData=
{
params
=>
fetchTableData
(
params
)
}
rowSelection=
{
rowSelection
}
columns=
{
columns
}
currentRef=
{
ref
}
rowKey=
{
'id'
}
formilyLayouts=
{
{
justify
:
'space-between'
}
}
formilyProps=
{
{
ctx
:
{
inline
:
false
,
schema
:
tableListSchema
,
effects
:
(
$
,
actions
)
=>
{
useStateFilterSearchLinkageEffect
(
$
,
actions
,
'code'
,
FORM_FILTER_PATH
,
);
},
components
:
{
DateRangePickerUnix
,
Submit
}
<
StandardTable
fetchTableData=
{
params
=>
fetchTableData
(
params
)
}
rowSelection=
{
rowSelection
}
columns=
{
columns
}
currentRef=
{
ref
}
rowKey=
{
'id'
}
formilyLayouts=
{
{
justify
:
'space-between'
}
}
formilyProps=
{
{
ctx
:
{
inline
:
false
,
schema
:
tableListSchema
,
effects
:
(
$
,
actions
)
=>
{
useStateFilterSearchLinkageEffect
(
$
,
actions
,
'inviteTenderCode'
,
FORM_FILTER_PATH
,
);
},
layou
ts
:
{
order
:
2
,
span
:
24
componen
ts
:
{
DateRangePickerUnix
,
Submit
}
}
}
formilyChilds=
{
{
children
:
<
Space
>
<
Button
onClick=
{
handleSubmitBatch
}
loading=
{
loading
}
>
批量审核通过
</
Button
>
</
Space
>,
layouts
:
{
span
:
8
}
}
}
/>
</
Card
>
},
layouts
:
{
order
:
2
,
span
:
16
}
}
}
formilyChilds=
{
{
children
:
<
Space
>
<
Button
onClick=
{
handleSubmitBatch
}
loading=
{
loading
}
>
批量审核通过
</
Button
>
</
Space
>,
layouts
:
{
span
:
8
}
}
}
/>
</
Card
>
}
FirstCheckedBid
.
defaultProps
=
{}
...
...
src/pages/procurement/readyCheckBid/model/useSelfTable.tsx
View file @
9dd58334
...
...
@@ -18,7 +18,7 @@ export const useSelfTable = () => {
const
secondColumns
:
any
[]
=
baseBidListColumns
.
concat
([
{
title
:
'操作'
,
align
:
'
center
'
,
align
:
'
left
'
,
dataIndex
:
'ctl'
,
key
:
'ctl'
,
render
:
(
text
,
record
)
=>
<
Button
type=
'link'
onClick=
{
()
=>
handleSubmit
(
record
)
}
>
审核
</
Button
>
...
...
src/pages/procurement/readyCheckBid/schema/index.ts
View file @
9dd58334
...
...
@@ -7,7 +7,7 @@ import { FORM_FILTER_PATH } from '@/formSchema/const';
export
const
tableListSchema
:
ISchema
=
{
type
:
'object'
,
properties
:
{
c
ode
:
{
inviteTenderC
ode
:
{
type
:
'string'
,
"x-component"
:
'SearchFilter'
,
'x-component-props'
:
{
...
...
src/pages/procurement/tenderSearch/index.tsx
View file @
9dd58334
...
...
@@ -40,7 +40,7 @@ const TenderSearch: React.FC<{}> = () => {
useStateFilterSearchLinkageEffect
(
$
,
actions
,
'
c
ode'
,
'
inviteTenderC
ode'
,
FORM_FILTER_PATH
,
);
},
...
...
src/pages/procurement/tenderSearch/model/useSelfTable.tsx
View file @
9dd58334
...
...
@@ -10,14 +10,14 @@ export const useSelfTable = () => {
const
callForBidColumns
:
any
[]
=
[
{
title
:
'序号'
,
align
:
'
center
'
,
align
:
'
left
'
,
dataIndex
:
'id'
,
key
:
'id'
,
render
:
(
text
,
record
,
index
)
=>
index
+
1
},
{
title
:
'招标编号/项目'
,
align
:
'
center
'
,
align
:
'
left
'
,
dataIndex
:
'memberId'
,
key
:
'memberId'
,
render
:
(
text
,
record
)
=>
<>
...
...
@@ -29,7 +29,7 @@ export const useSelfTable = () => {
},
{
title
:
'投标编号/会员'
,
align
:
'
center
'
,
align
:
'
left
'
,
dataIndex
:
'code'
,
key
:
'code'
,
render
:
(
text
,
record
)
=>
<>
...
...
@@ -41,7 +41,7 @@ export const useSelfTable = () => {
},
{
title
:
'投标时间'
,
align
:
'
center
'
,
align
:
'
left
'
,
dataIndex
:
'inviteTender'
,
key
:
'inviteTender'
,
render
:
(
text
,
record
)
=>
formatTimeString
(
record
.
inviteTender
.
inviteTenderStartTime
),
...
...
@@ -49,7 +49,7 @@ export const useSelfTable = () => {
},
{
title
:
'开标时间'
,
align
:
'
center
'
,
align
:
'
left
'
,
dataIndex
:
'inviteTender'
,
key
:
'inviteTender'
,
render
:
(
text
,
record
)
=>
formatTimeString
(
record
.
inviteTender
.
openTenderTime
),
...
...
@@ -57,21 +57,21 @@ export const useSelfTable = () => {
},
{
title
:
'是否中标'
,
align
:
'
center
'
,
align
:
'
left
'
,
dataIndex
:
'isWin'
,
key
:
'isWin'
,
render
:
(
text
)
=>
text
?
'是'
:
'否'
},
{
title
:
'外部状态'
,
align
:
'
center
'
,
align
:
'
left
'
,
dataIndex
:
'inviteTender'
,
key
:
'inviteTender'
,
render
:
(
text
,
record
)
=>
<
CustomTag
status=
{
record
.
inviteTender
.
tenderOutStatus
}
type=
'out'
/>
},
// {
// title: '内部状态',
// align: '
center
',
// align: '
left
',
// dataIndex: 'interiorState',
// key: 'interiorState',
// render: (text) => <CustomBadge status={text} type='inside' />
...
...
src/pages/procurement/tenderSearch/schema/index.ts
View file @
9dd58334
...
...
@@ -8,7 +8,7 @@ import { BidOutStateTexts } from '@/constants';
export
const
tableListSchema
:
ISchema
=
{
type
:
'object'
,
properties
:
{
c
ode
:
{
inviteTenderC
ode
:
{
type
:
'string'
,
"x-component"
:
'SearchFilter'
,
'x-component-props'
:
{
...
...
@@ -35,7 +35,7 @@ export const tableListSchema: ISchema = {
placeholder
:
'请输入投标项目'
,
}
},
t
enderCode
:
{
submitT
enderCode
:
{
type
:
'string'
,
'x-component-props'
:
{
placeholder
:
'请输入投标编号'
,
...
...
@@ -49,7 +49,7 @@ export const tableListSchema: ISchema = {
showTime
:
true
,
},
},
m
emberName
:
{
inviteTenderM
emberName
:
{
type
:
'string'
,
'x-component-props'
:
{
placeholder
:
'请输入投标会员'
,
...
...
src/pages/purchaseAbility/components/table/index.tsx
View file @
9dd58334
...
...
@@ -8,6 +8,10 @@ import NiceForm from '@/components/NiceForm';
import
{
createFormActions
,
FormEffectHooks
}
from
'@formily/antd'
;
import
{
useStateFilterSearchLinkageEffect
}
from
'@/formSchema/effects/useFilterSearch'
;
import
{
searchSelectGetSelectCategoryOptionEffect
}
from
'@/pages/systemManage/effect'
;
import
{
useLinkageUtils
}
from
'@/utils/formEffectUtils'
;
const
{
onFormMount$
}
=
FormEffectHooks
import
{
PurchaseDemandSchema
,
PurchaseDemandPublicSchema
,
...
...
@@ -21,6 +25,11 @@ import {
CONFIRMOFFERAUDIT_SCHEMA
,
}
from
'../../schema'
;
import
{
PurchaseBidSearchSchema
,
PurchaseBidExamineSearchSchema
}
from
'../../schema/purchaseBid'
;
interface
Iprops
{
fetch
?:
()
=>
Promise
<
unknown
>
,
fetchRowkeys
?(
e
:
any
),
...
...
@@ -35,11 +44,15 @@ interface Iprops {
'OFFERSERAHAUDIT_SCHEMA'
|
'CONFIRMOFFERSERAH_SCHEMA'
|
'CONFIRMOFFERSUBMITAPRICE_SCHEMA'
|
'CONFIRMOFFERAUDIT_SCHEMA'
,
'CONFIRMOFFERAUDIT_SCHEMA'
|
'PurchaseBidSearchSchema'
|
'PurchaseBidExamineSearchSchema'
columns
:
ColumnType
<
any
>
[],
effects
?:
string
,
selectedRow
?:
boolean
,
reload
?:
any
,
externalStatusFetch
?:
Promise
<
unknown
>
,
interiorStatusFetch
?:
Promise
<
unknown
>
,
}
const
formActions
=
createFormActions
();
const
Table
:
React
.
FC
<
Iprops
>
=
(
props
:
any
)
=>
{
...
...
@@ -51,7 +64,9 @@ const Table: React.FC<Iprops> = (props: any) => {
controllerBtns
,
selectedRow
,
reload
,
fetchRowkeys
fetchRowkeys
,
externalStatusFetch
,
interiorStatusFetch
}
=
props
;
const
tableRef
=
useRef
<
any
>
({});
/** Schema */
...
...
@@ -77,6 +92,10 @@ const Table: React.FC<Iprops> = (props: any) => {
return
CONFIRMOFFERSUBMITAPRICE_SCHEMA
;
case
'CONFIRMOFFERAUDIT_SCHEMA'
:
return
CONFIRMOFFERAUDIT_SCHEMA
;
case
'PurchaseBidSearchSchema'
:
return
PurchaseBidSearchSchema
case
'PurchaseBidExamineSearchSchema'
:
return
PurchaseBidExamineSearchSchema
}
}
/** 列表数据 */
...
...
@@ -109,6 +128,21 @@ const Table: React.FC<Iprops> = (props: any) => {
tableRef
.
current
.
reload
(
values
)
}
const
useBusinessEffects
=
()
=>
{
const
linkage
=
useLinkageUtils
();
onFormMount$
().
subscribe
(()
=>
{
externalStatusFetch
&&
externalStatusFetch
().
then
(
res
=>
{
const
_enum
=
res
.
data
.
map
((
item
)
=>
{
return
{
label
:
item
.
name
,
value
:
item
.
satatus
}})
linkage
.
enum
(
'externalState'
,
_enum
)
})
interiorStatusFetch
&&
interiorStatusFetch
().
then
(
res
=>
{
const
_enum
=
res
.
data
.
map
((
item
)
=>
{
return
{
label
:
item
.
name
,
value
:
item
.
satatus
}})
linkage
.
enum
(
'interiorState'
,
_enum
)
})
})
}
return
(
<
PageHeaderWrapper
>
<
Card
>
...
...
@@ -128,6 +162,7 @@ const Table: React.FC<Iprops> = (props: any) => {
FormEffectHooks
.
onFieldChange$
(
'category'
).
subscribe
(
state
=>
{
searchSelectGetSelectCategoryOptionEffect
(
actions
,
'category'
)
})
useBusinessEffects
();
}
}
schema=
{
schemaType
&&
SchemaRender
()
...
...
src/pages/purchaseAbility/purchaseBid/detail/index.tsx
0 → 100644
View file @
9dd58334
src/pages/purchaseAbility/purchaseBid/examineSearch/index.tsx
0 → 100644
View file @
9dd58334
import
React
,
{
useRef
,
useState
}
from
'react'
;
import
{
history
,
Link
}
from
'umi'
;
import
{
Tag
,
Typography
,
Space
,
Row
,
Col
,
Button
}
from
'antd'
;
import
{
ColumnType
}
from
'antd/lib/table/interface'
;
import
{
PlayCircleOutlined
,
PoweroffOutlined
}
from
'@ant-design/icons'
import
EyePreview
from
'@/components/EyePreview'
;
import
{
formatTimeString
}
from
'@/utils'
import
{
PublicApi
}
from
'@/services/api'
;
import
Table
from
'../../components/table'
;
import
{
OFFTER_EXTERNALSTATE
,
OFFTER_EXTERNALSTATE_COLOR
,
}
from
'../../constants'
;
const
{
Text
}
=
Typography
;
const
ExamineSearch
=
()
=>
{
const
ref
=
useRef
<
any
>
({});
const
[
rowkeys
,
setRowKeys
]
=
useState
<
Array
<
number
>>
([]);
const
columns
:
ColumnType
<
any
>
[]
=
[{
title
:
'竞价单号/摘要'
,
key
:
'biddingNo'
,
dataIndex
:
'biddingNo'
,
render
:
(
text
:
any
,
record
:
any
)
=>
(
<
Space
direction=
'vertical'
>
<
EyePreview
url=
{
`/purchase/demand/demandInquiry/preview?id=${record.id}&number=${record.biddingNo}`
}
>
{
text
}
</
EyePreview
>
<
Text
type=
"secondary"
>
{
record
.
details
}
</
Text
>
</
Space
>
)
},
{
title
:
'采购会员'
,
key
:
'memberName'
,
dataIndex
:
'memberName'
,
},
{
title
:
'竞价开始/结束时间'
,
key
:
'biddingStartTime'
,
dataIndex
:
'biddingStartTime'
,
render
:
(
text
:
any
,
record
:
any
)
=>
<>
<
div
><
PlayCircleOutlined
/>
{
formatTimeString
(
record
.
biddingStartTime
)
}
</
div
>
<
div
><
PoweroffOutlined
/>
{
formatTimeString
(
record
.
biddingEndTime
)
}
</
div
>
</>,
width
:
180
},
{
title
:
'单据时间'
,
key
:
'createTime'
,
dataIndex
:
'createTime'
,
render
:
(
text
:
any
,
record
:
any
)
=>
formatTimeString
(
text
),
width
:
180
},
{
title
:
'外部状态'
,
key
:
'externalState'
,
dataIndex
:
'externalState'
,
render
:
(
text
:
any
,
record
:
any
)
=>
<
Tag
color=
{
OFFTER_EXTERNALSTATE_COLOR
[
text
]
}
>
{
record
.
externalStateName
}
</
Tag
>
},
{
title
:
'操作'
,
key
:
'operate'
,
dataIndex
:
'operate'
,
render
:
(
text
:
any
,
record
:
any
)
=>
(
<
Link
to=
{
`/purchaseBid/demand/examineSearch/detail?id=${record.id}&number=${record.biddingNo}`
}
>
审核
</
Link
>
)
}];
/** 批量审核 */
const
fetchSubmitBatch
=
async
(
id
?:
number
)
=>
{
let
res
=
null
;
if
(
id
)
{
res
=
await
PublicApi
.
postPurchaseBiddingPlatformExamine
({
id
,
state
:
1
});
}
else
{
res
=
await
PublicApi
.
postPurchaseBiddingPlatformExamineBatch
({
ids
:
rowkeys
});
}
if
(
res
.
code
===
1000
)
{
ref
.
current
.
reload
();
setRowKeys
([])
}
}
return
(
<>
<
Table
selectedRow
fetchRowkeys=
{
(
e
)
=>
setRowKeys
(
e
)
}
schemaType=
'PurchaseBidExamineSearchSchema'
columns=
{
columns
}
effects=
'biddingNo'
fetch=
{
PublicApi
.
getPurchaseBiddingPlatformExamineList
}
reload=
{
ref
}
controllerBtns=
{
<
Row
>
<
Col
span=
{
24
}
>
<
Space
size=
{
16
}
>
<
Button
onClick=
{
()
=>
fetchSubmitBatch
()
}
disabled=
{
rowkeys
.
length
===
0
}
>
批量审核通过
</
Button
>
</
Space
>
</
Col
>
</
Row
>
}
/>
</>
)
}
export
default
ExamineSearch
src/pages/purchaseAbility/purchaseBid/search/index.tsx
0 → 100644
View file @
9dd58334
import
React
,
{
useRef
}
from
'react'
;
import
{
Tag
,
Typography
,
Space
}
from
'antd'
;
import
{
ColumnType
}
from
'antd/lib/table/interface'
;
import
{
PlayCircleOutlined
,
PoweroffOutlined
}
from
'@ant-design/icons'
import
EyePreview
from
'@/components/EyePreview'
;
import
{
formatTimeString
}
from
'@/utils'
import
{
PublicApi
}
from
'@/services/api'
;
import
Table
from
'../../components/table'
;
import
{
OFFTER_EXTERNALSTATE
,
OFFTER_EXTERNALSTATE_COLOR
,
}
from
'../../constants'
;
const
{
Text
}
=
Typography
;
const
Search
=
()
=>
{
const
ref
=
useRef
<
any
>
({});
const
columns
:
ColumnType
<
any
>
[]
=
[{
title
:
'竞价单号/摘要'
,
key
:
'biddingNo'
,
dataIndex
:
'biddingNo'
,
render
:
(
text
:
any
,
record
:
any
)
=>
(
<
Space
direction=
'vertical'
>
<
EyePreview
url=
{
`/purchase/demand/demandInquiry/preview?id=${record.id}&number=${record.biddingNo}`
}
>
{
text
}
</
EyePreview
>
<
Text
type=
"secondary"
>
{
record
.
details
}
</
Text
>
</
Space
>
)
},
{
title
:
'采购会员'
,
key
:
'memberName'
,
dataIndex
:
'memberName'
,
},
{
title
:
'竞价开始/结束时间'
,
key
:
'biddingStartTime'
,
dataIndex
:
'biddingStartTime'
,
render
:
(
text
:
any
,
record
:
any
)
=>
<>
<
div
><
PlayCircleOutlined
/>
{
formatTimeString
(
record
.
biddingStartTime
)
}
</
div
>
<
div
><
PoweroffOutlined
/>
{
formatTimeString
(
record
.
biddingEndTime
)
}
</
div
>
</>,
width
:
180
},
{
title
:
'单据时间'
,
key
:
'createTime'
,
dataIndex
:
'createTime'
,
render
:
(
text
:
any
,
record
:
any
)
=>
formatTimeString
(
text
),
width
:
180
},
{
title
:
'外部状态'
,
key
:
'externalState'
,
dataIndex
:
'externalState'
,
render
:
(
text
:
any
,
record
:
any
)
=>
<
Tag
color=
{
OFFTER_EXTERNALSTATE_COLOR
[
text
]
}
>
{
record
.
externalStateName
}
</
Tag
>
}];
return
(
<>
<
Table
schemaType=
'PurchaseBidSearchSchema'
columns=
{
columns
}
effects=
'biddingNo'
fetch=
{
PublicApi
.
getPurchaseBiddingPlatformList
}
reload=
{
ref
}
externalStatusFetch=
{
PublicApi
.
getPurchaseBiddingExternalStatus
}
/>
</>
)
}
export
default
Search
src/pages/purchaseAbility/schema/purchaseBid.ts
0 → 100644
View file @
9dd58334
import
{
ISchema
}
from
'@formily/antd'
import
{
FORM_FILTER_PATH
}
from
'@/formSchema/const'
/** 采购竞价单查询 */
export
const
PurchaseBidSearchSchema
:
ISchema
=
{
type
:
'object'
,
properties
:
{
megalayout
:
{
type
:
'object'
,
"x-component"
:
'mega-layout'
,
properties
:
{
biddingNo
:
{
type
:
'string'
,
"x-component"
:
"Search"
,
"x-mega-props"
:
{
},
"x-component-props"
:
{
placeholder
:
'竞价单号'
,
align
:
'flex-left'
,
}
}
}
},
[
FORM_FILTER_PATH
]:
{
type
:
'object'
,
"x-component"
:
"flex-layout"
,
"x-component-props"
:
{
rowStyle
:
{
justifyContent
:
'flex-start'
,
flexWrap
:
'nowrap'
},
colStyle
:
{
//改变间隔
marginRight
:
20
}
},
properties
:
{
PRO_LAYOUT
:
{
type
:
'object'
,
"x-component"
:
'mega-layout'
,
"x-mega-props"
:
{
span
:
5
},
"x-component-props"
:
{
inline
:
true
},
properties
:
{
"[startTime,endTime]"
:
{
type
:
'string'
,
"x-component"
:
"dateSelect"
,
"x-component-props"
:
{
placeholder
:
'单据时间(全部)'
,
}
},
memberName
:
{
type
:
'string'
,
"x-component-props"
:
{
placeholder
:
'采购会员'
}
},
externalState
:
{
type
:
'string'
,
"x-component-props"
:
{
placeholder
:
'外部状态'
},
enum
:
[]
},
}
},
sumbit
:
{
"x-component"
:
'Submit'
,
"x-mega-props"
:
{
span
:
1
},
"x-component-props"
:
{
children
:
'查询'
}
}
}
}
}
}
/** 采购竞价单查询 */
export
const
PurchaseBidExamineSearchSchema
:
ISchema
=
{
type
:
'object'
,
properties
:
{
megalayout
:
{
type
:
'object'
,
"x-component"
:
'mega-layout'
,
"x-component-props"
:
{
grid
:
true
},
properties
:
{
ctl
:
{
type
:
'object'
,
"x-component"
:
"Children"
,
"x-component-props"
:
{
children
:
"{{controllerBtns}}"
}
},
biddingNo
:
{
type
:
'string'
,
"x-component"
:
"Search"
,
"x-mega-props"
:
{
},
"x-component-props"
:
{
placeholder
:
'竞价单号'
,
}
}
}
},
[
FORM_FILTER_PATH
]:
{
type
:
'object'
,
"x-component"
:
"flex-layout"
,
"x-component-props"
:
{
rowStyle
:
{
justifyContent
:
'flex-start'
,
flexWrap
:
'nowrap'
},
colStyle
:
{
//改变间隔
marginRight
:
20
}
},
properties
:
{
PRO_LAYOUT
:
{
type
:
'object'
,
"x-component"
:
'mega-layout'
,
"x-mega-props"
:
{
span
:
5
},
"x-component-props"
:
{
inline
:
true
},
properties
:
{
"[startTime,endTime]"
:
{
type
:
'string'
,
"x-component"
:
"dateSelect"
,
"x-component-props"
:
{
placeholder
:
'单据时间(全部)'
,
}
},
memberName
:
{
type
:
'string'
,
"x-component-props"
:
{
placeholder
:
'采购会员'
}
},
}
},
sumbit
:
{
"x-component"
:
'Submit'
,
"x-mega-props"
:
{
span
:
1
},
"x-component-props"
:
{
children
:
'查询'
}
}
}
}
}
}
\ No newline at end of file
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