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
c215700a
Commit
c215700a
authored
Mar 29, 2021
by
前端-钟卫鹏
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix: 投标的招标查询投标查询待招标报名
parent
bb169f46
Show whitespace changes
Inline
Side-by-side
Showing
34 changed files
with
362 additions
and
402 deletions
+362
-402
MultAddress.tsx
src/components/NiceForm/components/MultAddress.tsx
+15
-28
index.ts
src/constants/index.ts
+112
-28
index.tsx
...nt/callForBids/addNewBid/components/memberModal/index.tsx
+1
-1
index.tsx
...orBids/addNewBid/components/relevanceGoodDrawer/index.tsx
+4
-4
index.tsx
...ages/procurement/callForBids/addNewBid/constant/index.tsx
+3
-4
index.tsx
src/pages/procurement/callForBids/addNewBid/index.tsx
+9
-6
modal.ts
src/pages/procurement/callForBids/addNewBid/schema/modal.ts
+8
-4
index.tsx
...pages/procurement/callForBids/callForBidsSearch/index.tsx
+3
-1
index.ts
...procurement/callForBids/callForBidsSearch/schema/index.ts
+1
-1
index.tsx
src/pages/procurement/callForBids/firstCheckedBid/index.tsx
+2
-2
useSelfTable.tsx
...rement/callForBids/firstCheckedBid/model/useSelfTable.tsx
+5
-3
index.tsx
src/pages/procurement/callForBids/readyAddBid/index.tsx
+3
-3
index.tsx
...pages/procurement/callForBids/readyAddBid/model/index.tsx
+2
-2
index.tsx
...es/procurement/callForBids/readyCheckedRegister/index.tsx
+1
-2
useSelfTable.tsx
...t/callForBids/readyCheckedRegister/model/useSelfTable.tsx
+6
-1
index.tsx
...s/procurement/callForBids/readyQualifityChecked/index.tsx
+5
-31
index.ts
...urement/callForBids/readyQualifityChecked/schema/index.ts
+2
-2
index.tsx
src/pages/procurement/callForBids/readySubmitBid/index.tsx
+2
-2
index.tsx
src/pages/procurement/callForBids/tenderSearch/index.tsx
+4
-2
useSelfTable.tsx
...ocurement/callForBids/tenderSearch/model/useSelfTable.tsx
+9
-9
index.ts
...ages/procurement/callForBids/tenderSearch/schema/index.ts
+1
-1
index.tsx
src/pages/procurement/components/bidMethod/index.tsx
+5
-5
customBadge.tsx
src/pages/procurement/components/customBadge.tsx
+6
-2
customTag.tsx
src/pages/procurement/components/customTag.tsx
+8
-2
index.tsx
...ges/procurement/tender/callForBidsSearch/detail/index.tsx
+2
-8
index.tsx
src/pages/procurement/tender/callForBidsSearch/index.tsx
+6
-4
useSelfTable.tsx
...ocurement/tender/callForBidsSearch/model/useSelfTable.tsx
+32
-59
index.ts
...ages/procurement/tender/callForBidsSearch/schema/index.ts
+15
-14
index.tsx
src/pages/procurement/tender/readyBidRegister/index.tsx
+6
-59
index.ts
...pages/procurement/tender/readyBidRegister/schema/index.ts
+1
-1
index.tsx
src/pages/procurement/tender/tenderSearch/detail/index.tsx
+5
-24
index.tsx
src/pages/procurement/tender/tenderSearch/index.tsx
+5
-5
useSelfTable.tsx
...es/procurement/tender/tenderSearch/model/useSelfTable.tsx
+44
-54
index.ts
src/pages/procurement/tender/tenderSearch/schema/index.ts
+29
-28
No files found.
src/components/NiceForm/components/MultAddress.tsx
View file @
c215700a
import
React
,
{
useEffect
,
useState
}
from
'react'
import
React
,
{
useEffect
,
use
Ref
,
use
State
}
from
'react'
import
{
Row
,
Col
,
Select
,
Form
,
Button
,
message
}
from
'antd'
;
import
styled
from
'styled-components'
import
{
PublicApi
}
from
'@/services/api'
;
...
...
@@ -47,6 +47,7 @@ const MultAddress = (props) => {
const
[
code
,
setcode
]
=
useState
<
any
>
([]);
const
[
province
,
setprovince
]
=
useState
<
any
>
([]);
// 省列表
const
[
city
,
setcity
]
=
useState
<
any
>
([]);
// 市列表
const
flag
=
useRef
<
boolean
>
(
true
)
useEffect
(()
=>
{
PublicApi
.
getManageAreaAll
().
then
(
res
=>
{
...
...
@@ -57,14 +58,26 @@ const MultAddress = (props) => {
},
[])
useEffect
(()
=>
{
console
.
log
(
value
,
'vvv'
)
value
.
forEach
((
item
,
index
)
=>
{
if
(
item
.
provinceCode
)
{
renderProvice
([...
value
],
item
[
'provinceCode'
],
index
).
then
(()
=>
{
renderCity
([...
value
],
item
[
'cityCode'
],
index
)
})
}
})
},
[
province
])
useEffect
(()
=>
{
if
(
flag
.
current
&&
value
[
0
][
'provinceCode'
])
{
value
.
forEach
((
item
,
index
)
=>
{
renderProvice
([...
value
],
item
[
'provinceCode'
],
index
).
then
(()
=>
{
renderCity
([...
value
],
item
[
'cityCode'
],
index
)
})
})
flag
.
current
=
false
}
},
[
value
])
// 触发onChange改变值
const
changeAddress
=
async
(
val
:
any
,
idx
:
number
,
num
:
number
)
=>
{
const
result
=
[...
value
]
...
...
@@ -77,33 +90,8 @@ const MultAddress = (props) => {
setcode
([...
cityCode
]);
if
(
num
===
1
)
{
renderProvice
(
result
,
val
,
idx
)
// await province.forEach(item => {
// if (item.code === val) {
// PublicApi.getManageAreaByPcodeAll({ pcode: val }).then((res: any) => {
// if (res.code === 1000) {
// result[idx].provinceCode = val;
// result[idx].province = item.name;
// city[idx] = { citydata: res.data }
// setcity([...city])
// }
// })
// }
// })
}
else
if
(
num
===
2
)
{
renderCity
(
result
,
val
,
idx
)
// city.forEach(item => {
// item.citydata.forEach(items => {
// if (items.code === val) {
// const cityCode = code.find(it => items.code);
// if (cityCode !== items.code) {
// items.disabled = false
// }
// result[idx].cityCode = val;
// result[idx].city = items.name;
// }
// })
// })
// setcity([...city])
}
mutators
.
change
(
result
)
}
...
...
@@ -184,7 +172,6 @@ const MultAddress = (props) => {
}
})
setcity
(
cityFilter
)
console
.
log
(
requisitionFormAddressFilter
,
'删除'
)
mutators
.
change
(
requisitionFormAddressFilter
)
}
...
...
src/constants/index.ts
View file @
c215700a
...
...
@@ -2056,52 +2056,55 @@ export const BidInStateTexts = {
// 招标 外部状态工作流状态
export
enum
BidOuterWorkState
{
/** 提交招标 */
/**
待
提交招标 */
Submitted_Invite_Tender
=
1
,
/** 待平台审核招标 */
Not_Check_Invite_Tender
=
2
,
Platform_Not_Check_Invite_Tender
=
2
,
/** 平台审核不通过 */
Platform_Check_Not_Pass
=
3
,
/** 待招标报名 */
Not_Invite_Tender_Register
=
3
,
Not_Invite_Tender_Register
=
4
,
/** 待审核报名 */
Not_Check_Register_Check
=
4
,
Not_Check_Register_Check
=
5
,
/** 报名审核不通过 */
Register_Check_Not_Pass
=
6
,
/** 待提交资格预审 */
Not_Submitted_Qualifications_Check
=
5
,
Not_Submitted_Qualifications_Check
=
7
,
/** 待资格预审 */
Not_Qualifications_Check
=
6
,
Not_Qualifications_Check
=
8
,
/** 资格预审不通过 */
Qualifications_Check_Not_Pass
=
9
,
/** 待投标 */
Not_Invite_Tender
=
7
,
Not_Invite_Tender
=
10
,
/** 待开标 */
Not_Open_Tender
=
8
,
Not_Open_Tender
=
11
,
/** 待评标 */
Not_Selection_Tender
=
9
,
/** 待定标 */
Not_Finish_Tender
=
10
,
Not_Selection_Tender
=
12
,
/** 待中标公示 */
Not_Win_Notice
=
11
,
/** 待完成招标 */
Not_Finish_Invite_Tender
=
12
,
Not_Win_Notice
=
13
,
/** 完成招标 */
Finish_Invite_Tender
=
1
3
,
Finish_Invite_Tender
=
1
4
,
/** 已废标 */
Discard_Tender
=
1
4
,
Discard_Tender
=
1
5
,
}
/** 招标 外部状态 */
export
const
BidOutStateTexts
=
{
1
:
"提交招标"
,
2
:
'待平台审核招标'
,
3
:
'待招标报名'
,
4
:
'待审核报名'
,
5
:
'待提交资格预审'
,
6
:
'待资格预审'
,
7
:
'待投标'
,
8
:
'待开标'
,
9
:
'待评标'
,
10
:
'待定标'
,
11
:
'待中标公示'
,
12
:
'待完成招标'
,
13
:
'完成招标'
,
14
:
'已废标'
,
3
:
'平台审核不通过'
,
4
:
'待招标报名'
,
5
:
'待审核报名'
,
6
:
'报名审核不通过'
,
7
:
'待提交资格预审'
,
8
:
'待资格预审'
,
9
:
'资格预审不通过'
,
10
:
'待投标'
,
11
:
'待开标'
,
12
:
'待评标'
,
13
:
'待中标公示'
,
14
:
'完成招标'
,
15
:
'已废标'
,
}
...
...
@@ -2137,3 +2140,84 @@ export const BidOutOpeartTexts = {
12
:
"完成招标"
,
13
:
"已废标"
,
}
//******投标** 内部状态工作流状态
export
enum
TenderInsideWorkState
{
/** 未提交招标报名 */
NotSubmitted_Invite_Tender_Register
=
1
,
/** 已提交招标报名 */
Submitted_Invite_Tender_Register
=
2
,
/** 报名审核通过 */
Register_Check_Pass
=
3
,
/** 报名审核不通过 */
Register_Check_Not_Pass
=
4
,
/** 已提交资格预审 */
Submitted_Qualifications_Check
=
5
,
/** 资格预审审核通过 */
Qualifications_Check_Pass
=
6
,
/** 资格预审审核不通过 */
Qualifications_Check_Not_Pass
=
7
,
/** 待提交审核投标 */
Not_Submitted_Check_Submit_Tender
=
8
,
/** 审核投标通过 */
Check_Submit_Tender_Pass
=
9
,
/** 审核投标不通过 */
Check_Submit_Tender_Not_Pass
=
10
,
/** 已提交投标 */
Submitted_Submit_Tender
=
11
,
/** 提交评标报告 */
Submitted_Selection_Tender
=
12
,
/** 待提交审核定标 */
Not_Submitted_Check_Finish_Tender
=
13
,
/** 定标审核通过 */
Finish_Tender_Check_Pass
=
14
,
/** 定标审核不通过 **/
Finish_Tender_Check_Not_Pass
=
15
,
/** 待中标公示 */
Not_Win_Notice
=
16
,
/** 待完成招标 */
Not_Finish_Invite_Tender
=
17
,
/** 完成招标 */
Finish_Invite_Tender
=
18
,
/** 已废标 */
Discard_Tender
=
19
,
}
/** 投标 内部状态 */
export
const
TenderInStateTexts
=
{
1
:
"未提交招标报名"
,
2
:
"已提交招标报名"
,
3
:
"报名审核通过"
,
4
:
'报名审核不通过'
,
5
:
'已提交资格预审'
,
6
:
'资格预审审核通过'
,
7
:
'资格预审审核不通过'
,
8
:
'待提交审核投标'
,
9
:
'审核投标通过'
,
10
:
'审核投标不通过'
,
11
:
'已提交投标'
,
12
:
'提交评标报告'
,
13
:
'待提交审核定标'
,
14
:
'定标审核通过'
,
15
:
'定标审核不通过'
,
16
:
'待中标公示'
,
17
:
'待完成招标'
,
18
:
'完成招标'
,
19
:
'已废标'
,
}
/** 投标 内部操作文本 */
export
const
TenderInOpeartTexts
=
{
1
:
"投标报名"
,
2
:
"审核报名"
,
3
:
"审核资格"
,
4
:
"审核投标"
,
5
:
"完成评标"
,
6
:
"选择中标会员"
,
7
:
"审核定标"
,
8
:
"确认招标"
,
9
:
"发送中标公示"
,
10
:
"完成招标"
,
11
:
"已废标"
,
}
src/pages/procurement/callForBids/addNewBid/components/memberModal/index.tsx
View file @
c215700a
...
...
@@ -59,7 +59,7 @@ const MemberModal:React.FC<MemberModalProps> = (props) => {
// rowSelectionCtl.setSelectedRowKeys([])
// rowSelectionCtl.setSelectRow([])
// } else {
let
processedData
=
rowSelectionCtl
.
selectRow
.
map
(
item
=>
({
...
item
,
isSubMember
:
true
,
isSend
:
0
}))
let
processedData
=
rowSelectionCtl
.
selectRow
.
map
(
item
=>
({
...
item
,
isSubMember
:
true
,
isSend
:
true
}))
schemaAction
.
setFieldValue
(
'memberList'
,
processedData
)
// 冗余一份数据
schemaAction
.
setFieldState
(
'memberList'
,
state
=>
{
...
...
src/pages/procurement/callForBids/addNewBid/components/relevanceGoodDrawer/index.tsx
View file @
c215700a
...
...
@@ -16,6 +16,7 @@ import { PublicApi } from '@/services/api'
import
{
goodFormSchema
,
goodSearch
}
from
'../../schema/modal'
import
{
searchBrandOptionEffect
,
searchCustomerCategoryOptionEffect
}
from
'../../effects'
import
{
treeReduction
}
from
'@/utils'
import
{
usePageStatus
,
PageStatus
}
from
'@/hooks/usePageStatus'
export
interface
RelevanceGoodDrawerProps
{
type
?:
'radio'
|
'checkbox'
,
...
...
@@ -44,6 +45,7 @@ export const RelevanceGoodDrawer:React.FC<RelevanceGoodDrawerProps> = ({
categorys
:
[],
units
:
[]
})
const
{
pageStatus
}
=
usePageStatus
()
const
{
visible
,
setVisible
}
=
useModalTable
({
type
,
customKey
:
'id'
})
const
[
childVisible
,
setChildVisible
]
=
useState
<
boolean
>
(
false
)
const
[
selectRow
,
setSelectRow
]
=
useState
<
any
[]
>
([])
// 子级抽屉选择的行数据
...
...
@@ -214,16 +216,14 @@ export const RelevanceGoodDrawer:React.FC<RelevanceGoodDrawerProps> = ({
})
$
(
'onFieldValueChange'
,
'unitId'
).
subscribe
(
state
=>
{
const
{
value
}
=
state
if
(
value
)
{
if
(
value
&&
pageStatus
!==
PageStatus
.
EDIT
)
{
let
_v
=
cacheRef
.
current
.
units
.
filter
(
item
=>
item
.
id
===
value
)[
0
][
'name'
]
ctx
.
setFieldValue
(
'unitName'
,
_v
)
}
})
$
(
'onFieldValueChange'
,
'categoryId'
).
subscribe
(
state
=>
{
const
{
value
}
=
state
if
(
value
.
length
)
{
console
.
log
(
state
.
props
,
cacheRef
.
current
)
// let _v = treeReduction(state.props["x-component-props"].options)[value[value.length -1]]['title']
if
(
value
.
length
&&
pageStatus
!==
PageStatus
.
EDIT
)
{
let
_v
=
treeReduction
(
cacheRef
.
current
.
categorys
)[
value
[
value
.
length
-
1
]][
'title'
]
ctx
.
setFieldValue
(
'categoryName'
,
_v
)
}
...
...
src/pages/procurement/callForBids/addNewBid/constant/index.tsx
View file @
c215700a
...
...
@@ -66,11 +66,10 @@ export const paramsConversionFn = (value) => {
value
[
'memberList'
]
=
_value
[
'memberList'
].
map
(
item
=>
{
let
param
=
{
id
:
item
.
id
,
memberId
:
item
.
memberId
,
memberName
:
item
.
name
,
memberTypeName
:
item
.
memberTypeName
,
memberRoleId
:
item
.
roleId
,
memberRoleName
:
item
.
roleName
,
...
item
,
}
if
(
!
id
)
delete
param
.
id
return
param
...
...
@@ -115,8 +114,8 @@ export const paramsRenderFn = (value) => {
value
[
'createTime'
]
=
unixChangeRender
(
_value
[
'createTime'
])
// 状态转换
value
[
'in
Status'
]
=
BidInStateTexts
[
_value
[
'i
nStatus'
]]
value
[
'
outStatus'
]
=
BidOutStateTexts
[
_value
[
'o
utStatus'
]]
value
[
'in
viteTenderInStatus'
]
=
BidInStateTexts
[
_value
[
'inviteTenderI
nStatus'
]]
value
[
'
tenderOutStatus'
]
=
BidOutStateTexts
[
_value
[
'tenderO
utStatus'
]]
value
[
'addMode'
]
=
1
...
...
src/pages/procurement/callForBids/addNewBid/index.tsx
View file @
c215700a
...
...
@@ -108,12 +108,15 @@ const AddNewBid:React.FC<AddNewBidProps> = (props) => {
return
message
.
error
(
'评标开始时间大于开标时间'
)
}
let
res
=
await
PublicApi
.
postPurchaseInviteTenderSaveOrUpdateInviteTender
({...
params
,
id
})
if
(
res
.
code
===
1000
)
{
history
.
goBack
()
}
else
{
setBtnLoading
(
false
)
}
if
(
id
)
{
params
[
'id'
]
=
id
}
let
res
=
await
PublicApi
.
postPurchaseInviteTenderSaveOrUpdateInviteTender
(
params
)
// if(res.code === 1000) {
// history.goBack()
// } else {
// setBtnLoading(false)
// }
}
const
providerValue
=
{
...
...
src/pages/procurement/callForBids/addNewBid/schema/modal.ts
View file @
c215700a
...
...
@@ -57,17 +57,21 @@ export const goodFormSchema: ISchema = {
"x-component-props"
:
{
// disabled: true,
addonAfter
:
"{{connectGood}}"
,
placeholder
:
'最长20个字符
,10个汉字
'
placeholder
:
'最长20个字符'
},
"x-rules"
:
[
{
required
:
true
,
message
:
'请填写或选择货
品名称
'
message
:
'请填写或选择货
号
'
},
{
limitByte
:
true
,
m
axByte
:
20
pattern
:
/^
(?=
.*
\d)(?=
.*
[
a-z_A-Z
])(?=
.*
[
~!@#$%^&*-_
])[\d
a-zA-Z~!@#$%^&*-_
]{1,20}
$/
,
m
essage
:
'最长20个字符(由字母、数组、特殊字符组成)'
},
// {
// limitByte: true,
// maxByte: 20,
// },
]
},
name
:
{
...
...
src/pages/procurement/callForBids/callForBidsSearch/index.tsx
View file @
c215700a
...
...
@@ -34,7 +34,9 @@ const callForBidsSearch: React.FC<{}> = () => {
}
=
useSelfTable
(
destoryRef
,
destroyActions
,
modifyRef
,
modifyActions
,
{
setInviteTenderEndTime
,
setEvaluationEndTime
})
const
fetchTableData
=
async
(
params
)
=>
{
const
{
data
}
=
await
PublicApi
.
postPurchaseInviteTenderGetInviteTenderList
(
params
,
{
ctlType
:
"none"
})
let
_params
=
params
.
inviteTenderInStatusList
?
{
...
params
,
inviteTenderInStatusList
:
[
params
.
inviteTenderInStatusList
]
}
:
{...
params
}
let
__params
=
_params
.
tenderOutStatusList
?
{
...
_params
,
tenderOutStatusList
:
[
_params
.
tenderOutStatusList
]
}
:
{...
_params
}
const
{
data
}
=
await
PublicApi
.
postPurchaseInviteTenderGetInviteTenderList
(
__params
,
{
ctlType
:
"none"
})
return
data
}
...
...
src/pages/procurement/callForBids/callForBidsSearch/schema/index.ts
View file @
c215700a
...
...
@@ -49,7 +49,7 @@ export const tableListSchema: ISchema = {
placeholder
:
[
'报名开始时间'
,
'报名结束时间'
],
},
},
"tenderOutStatus"
:
{
"tenderOutStatus
List
"
:
{
type
:
'string'
,
"x-component-props"
:
{
placeholder
:
'请选择外部状态'
...
...
src/pages/procurement/callForBids/firstCheckedBid/index.tsx
View file @
c215700a
...
...
@@ -19,7 +19,7 @@ export interface FirstCheckedBidProps {}
const
fetchTableData
=
async
(
params
)
=>
{
const
{
data
}
=
await
PublicApi
.
postPurchaseInviteTenderGetInviteTenderList
({
...
params
,
tenderOutStatus
:
1
,
tenderOutStatus
List
:
[
1
]
,
inviteTenderInStatusList
:
[
2
]
},
{
ctlType
:
"none"
})
return
data
...
...
@@ -40,7 +40,7 @@ const FirstCheckedBid:React.FC<FirstCheckedBidProps> = (props) => {
message
.
error
(
'请先选择招标'
)
return
;
}
const
canBitch
=
!
rowSelectionCtl
.
selectRow
.
some
(
v
=>
v
.
inviteTenderInStatus
List
!==
BidInsideWorkState
.
Not_Tender_Check
)
const
canBitch
=
!
rowSelectionCtl
.
selectRow
.
some
(
v
=>
v
.
inviteTenderInStatus
!==
BidInsideWorkState
.
Not_Tender_Check
)
if
(
canBitch
)
{
const
{
code
}
=
await
run
({
idList
:
rowSelectionCtl
.
selectedRowKeys
})
if
(
code
===
1000
)
{
...
...
src/pages/procurement/callForBids/firstCheckedBid/model/useSelfTable.tsx
View file @
c215700a
import
React
,
{
useRef
}
from
'react'
import
{
Button
}
from
'antd'
import
{
Button
,
message
}
from
'antd'
import
{
history
}
from
'umi'
import
{
useRowSelectionTable
}
from
'@/hooks/useRowSelectionTable'
import
{
BidInsideWorkState
,
PurchaseOrderInsideWorkState
}
from
'@/constants'
import
{
BidInsideWorkState
}
from
'@/constants'
import
{
baseBidListColumns
}
from
'@/pages/procurement/constants'
// 待审核招标一级 hook
...
...
@@ -11,8 +11,10 @@ export const useSelfTable = () => {
const
[
rowSelection
,
rowSelectionCtl
]
=
useRowSelectionTable
({
customKey
:
'id'
})
const
handleSubmit
=
async
(
record
)
=>
{
if
(
record
.
inviteTenderInStatus
List
===
BidInsideWorkState
.
Not_Tender_Check
)
{
if
(
record
.
inviteTenderInStatus
===
BidInsideWorkState
.
Not_Tender_Check
)
{
history
.
push
(
`/memberCenter/procurementAbility/callForBids/firstCheckedBid/detail?id=
${
record
.
id
}
&action=1`
)
}
else
{
message
.
error
(
'只能审核内部状态为待审核招标的招标'
)
}
}
const
secondColumns
:
any
[]
=
baseBidListColumns
.
concat
([
...
...
src/pages/procurement/callForBids/readyAddBid/index.tsx
View file @
c215700a
...
...
@@ -22,7 +22,7 @@ export interface ReadyAddBidProps {}
const
fetchTableData
=
async
(
params
)
=>
{
const
{
data
}
=
await
PublicApi
.
postPurchaseInviteTenderGetInviteTenderList
({
...
params
,
tenderOutStatus
:
1
,
tenderOutStatus
List
:
[
1
]
,
inviteTenderInStatusList
:
[
1
,
4
]
},
{
ctlType
:
"none"
})
return
data
...
...
@@ -40,7 +40,7 @@ const ReadyAddBid:React.FC<ReadyAddBidProps> = (props) => {
switch
(
e
.
key
)
{
case
'1'
:
{
// 批量删除
const
canDelete
=
!
rowSelectionCtl
.
selectRow
.
some
(
v
=>
v
.
inviteTenderInStatus
List
!==
BidInsideWorkState
.
Not_Submitted_Check_Invite_Tender
)
const
canDelete
=
!
rowSelectionCtl
.
selectRow
.
some
(
v
=>
v
.
inviteTenderInStatus
!==
BidInsideWorkState
.
Not_Submitted_Check_Invite_Tender
)
if
(
canDelete
)
{
const
{
code
}
=
await
deleteRun
({
idList
:
rowSelectionCtl
.
selectedRowKeys
})
if
(
code
===
1000
)
{
...
...
@@ -57,7 +57,7 @@ const ReadyAddBid:React.FC<ReadyAddBidProps> = (props) => {
}
// 批量审核
const
handleBitchPush
=
async
()
=>
{
const
canDelete
=
!
rowSelectionCtl
.
selectRow
.
some
(
v
=>
v
.
inviteTenderInStatus
List
!==
BidInsideWorkState
.
Not_Submitted_Check_Invite_Tender
)
const
canDelete
=
!
rowSelectionCtl
.
selectRow
.
some
(
v
=>
v
.
inviteTenderInStatus
!==
BidInsideWorkState
.
Not_Submitted_Check_Invite_Tender
)
if
(
canDelete
)
{
const
{
code
}
=
await
submitRun
({
idList
:
rowSelectionCtl
.
selectedRowKeys
})
if
(
code
===
1000
)
{
...
...
src/pages/procurement/callForBids/readyAddBid/model/index.tsx
View file @
c215700a
...
...
@@ -13,7 +13,7 @@ export const useSelfTable = () => {
const
handleSubmit
=
async
(
record
)
=>
{
// 从待新增直接传到一级审核, 状态写死
if
(
record
.
inviteTenderInStatus
List
!==
BidInsideWorkState
.
Not_Submitted_Check_Invite_Tender
)
{
if
(
record
.
inviteTenderInStatus
!==
BidInsideWorkState
.
Not_Submitted_Check_Invite_Tender
)
{
return
message
.
error
(
'只能提交内部状态为待提交审核招标的招标'
)
}
await
PublicApi
.
postPurchaseInviteTenderApplyCheckInviteTender
({
idList
:
[
record
.
id
]})
...
...
@@ -21,7 +21,7 @@ export const useSelfTable = () => {
}
const
handleDelete
=
async
(
record
)
=>
{
if
(
record
.
inviteTenderInStatus
List
!==
BidInsideWorkState
.
Not_Submitted_Check_Invite_Tender
)
{
if
(
record
.
inviteTenderInStatus
!==
BidInsideWorkState
.
Not_Submitted_Check_Invite_Tender
)
{
return
message
.
error
(
'只能删除内部状态为待提交审核且从未提交过审核的招标'
)
}
await
PublicApi
.
postPurchaseInviteTenderDeleteInviteTender
({
idList
:
[
record
.
id
]})
...
...
src/pages/procurement/callForBids/readyCheckedRegister/index.tsx
View file @
c215700a
...
...
@@ -17,8 +17,7 @@ export interface ReadyCheckedRegisterProps {}
const
fetchTableData
=
async
(
params
)
=>
{
const
{
data
}
=
await
PublicApi
.
postPurchaseInviteTenderGetInviteTenderList
({
...
params
,
tenderOutStatus
:
2
,
inviteTenderInStatusList
:
[
5
]
tenderOutStatusList
:
[
5
]
},
{
ctlType
:
"none"
})
return
data
}
...
...
src/pages/procurement/callForBids/readyCheckedRegister/model/useSelfTable.tsx
View file @
c215700a
import
React
,
{
useRef
}
from
'react'
import
{
Button
}
from
'antd'
import
{
Button
,
message
}
from
'antd'
import
{
history
}
from
'umi'
import
{
baseBidListColumns
}
from
'@/pages/procurement/constants'
import
{
BidInsideWorkState
}
from
'@/constants'
// 待审核报名 招标
export
const
useSelfTable
=
()
=>
{
const
ref
=
useRef
<
any
>
({})
const
handleSubmit
=
async
(
record
)
=>
{
// if(record.inviteTenderInStatus === BidInsideWorkState) {
history
.
push
(
`/memberCenter/procurementAbility/callForBids/readyCheckedRegister/detail?id=
${
record
.
id
}
&action=1`
)
// } else {
// message.error('只能审核内部状态为待审核报名的招标')
// }
}
const
secondColumns
:
any
[]
=
baseBidListColumns
.
concat
([
{
...
...
src/pages/procurement/callForBids/readyQualifityChecked/index.tsx
View file @
c215700a
...
...
@@ -21,11 +21,13 @@ import { useHttpRequest } from '@/hooks/useHttpRequest'
export
interface
ReadyQualifityCheckedProps
{}
const
fetchTableData
=
async
(
params
)
=>
{
const
{
data
}
=
await
PublicApi
.
getOrderProcurementReviewedListOne
(
params
)
const
{
data
}
=
await
PublicApi
.
postPurchaseInviteTenderGetInviteTenderList
({
...
params
,
tenderOutStatusList
:
[
5
],
},
{
ctlType
:
"none"
})
return
data
}
// TODO
const
ReadyQualifityChecked
:
React
.
FC
<
ReadyQualifityCheckedProps
>
=
(
props
)
=>
{
const
{
columns
,
...
...
@@ -34,30 +36,10 @@ const ReadyQualifityChecked:React.FC<ReadyQualifityCheckedProps> = (props) => {
rowSelectionCtl
}
=
useSelfTable
()
const
{
run
,
loading
}
=
useHttpRequest
(
PublicApi
.
postOrderProcurementOrderReviewedAll
)
const
handleSubmitBatch
=
async
()
=>
{
if
(
rowSelectionCtl
.
selectRow
.
length
===
0
)
{
message
.
error
(
'请先勾选订单'
)
return
;
}
const
canBitch
=
!
rowSelectionCtl
.
selectRow
.
some
(
v
=>
v
.
interiorState
!==
PurchaseOrderInsideWorkState
.
ONE_LEVEL_AUDIT_ORDER
)
if
(
canBitch
)
{
const
{
code
}
=
await
run
({
ids
:
rowSelectionCtl
.
selectedRowKeys
})
if
(
code
===
1000
)
{
ref
.
current
.
reload
()
rowSelectionCtl
.
setSelectRow
([])
rowSelectionCtl
.
setSelectedRowKeys
([])
}
}
else
{
message
.
error
(
'只能批量提交内部状态为审核中的订单'
)
}
}
return
<
PageHeaderWrapper
>
<
Card
>
<
StandardTable
fetchTableData=
{
params
=>
fetchTableData
(
params
)
}
rowSelection=
{
rowSelection
}
columns=
{
columns
}
currentRef=
{
ref
}
rowKey=
{
'id'
}
...
...
@@ -72,7 +54,7 @@ const ReadyQualifityChecked:React.FC<ReadyQualifityCheckedProps> = (props) => {
useStateFilterSearchLinkageEffect
(
$
,
actions
,
'
orderNo
'
,
'
code
'
,
FORM_FILTER_PATH
,
);
},
...
...
@@ -86,14 +68,6 @@ const ReadyQualifityChecked:React.FC<ReadyQualifityCheckedProps> = (props) => {
span
:
24
}
}
}
formilyChilds=
{
{
children
:
<
Space
>
<
Button
onClick=
{
handleSubmitBatch
}
loading=
{
loading
}
>
批量审核通过
</
Button
>
</
Space
>,
layouts
:
{
span
:
8
}
}
}
/>
</
Card
>
</
PageHeaderWrapper
>
...
...
src/pages/procurement/callForBids/readyQualifityChecked/schema/index.ts
View file @
c215700a
import
{
ISchema
}
from
'@formily/antd'
;
import
{
FORM_FILTER_PATH
}
from
'@/formSchema/const'
;
import
{
OrderTypeMap
,
PurchaseOrderInsideWorkStateTexts
,
PurchaseOrderOutWorkStateTexts
}
from
'@/constants'
;
import
{
OrderTypeMap
}
from
'@/constants'
;
/**
* 除了订单必填字段, 默认
...
...
@@ -8,7 +8,7 @@ import { OrderTypeMap, PurchaseOrderInsideWorkStateTexts, PurchaseOrderOutWorkSt
export
const
tableListSchema
:
ISchema
=
{
type
:
'object'
,
properties
:
{
orderNo
:
{
code
:
{
type
:
'string'
,
"x-component"
:
'SearchFilter'
,
'x-component-props'
:
{
...
...
src/pages/procurement/callForBids/readySubmitBid/index.tsx
View file @
c215700a
...
...
@@ -20,7 +20,7 @@ export interface ReadySubmitBidProps {}
const
fetchTableData
=
async
(
params
)
=>
{
const
{
data
}
=
await
PublicApi
.
postPurchaseInviteTenderGetInviteTenderList
({
...
params
,
tenderOutStatus
:
1
,
tenderOutStatus
List
:
[
1
]
,
inviteTenderInStatusList
:
[
3
]
},
{
ctlType
:
"none"
})
return
data
...
...
@@ -41,7 +41,7 @@ const ReadySubmitBid:React.FC<ReadySubmitBidProps> = (props) => {
message
.
error
(
'请先选择招标'
)
return
;
}
const
canBitch
=
!
rowSelectionCtl
.
selectRow
.
some
(
v
=>
v
.
inviteTenderInStatus
List
!==
BidInsideWorkState
.
Tender_Check_Pass
)
const
canBitch
=
!
rowSelectionCtl
.
selectRow
.
some
(
v
=>
v
.
inviteTenderInStatus
!==
BidInsideWorkState
.
Tender_Check_Pass
)
if
(
canBitch
)
{
const
{
code
}
=
await
run
({
idList
:
rowSelectionCtl
.
selectedRowKeys
})
if
(
code
===
1000
)
{
...
...
src/pages/procurement/callForBids/tenderSearch/index.tsx
View file @
c215700a
...
...
@@ -18,7 +18,9 @@ const TenderSearch: React.FC<{}> = () => {
}
=
useSelfTable
()
const
fetchTableData
=
async
(
params
)
=>
{
const
{
data
}
=
await
PublicApi
.
postPurchaseInviteTenderGetSubmitTenderList
(
params
)
let
_params
=
params
.
inviteTenderInStatusList
?
{
...
params
,
inviteTenderInStatusList
:
[
params
.
inviteTenderInStatusList
]
}
:
{...
params
}
let
__params
=
_params
.
tenderOutStatusList
?
{
...
_params
,
tenderOutStatusList
:
[
_params
.
tenderOutStatusList
]
}
:
{...
_params
}
const
{
data
}
=
await
PublicApi
.
postPurchaseInviteTenderGetSubmitTenderList
(
__params
,
{
ctlType
:
"none"
})
return
data
}
...
...
@@ -29,7 +31,7 @@ const TenderSearch: React.FC<{}> = () => {
fetchTableData=
{
params
=>
fetchTableData
(
params
)
}
currentRef=
{
ref
}
columns=
{
columns
}
rowKey=
{
'
orderNo
'
}
rowKey=
{
'
id
'
}
formilyLayouts=
{
{
justify
:
'space-between'
}
}
...
...
src/pages/procurement/callForBids/tenderSearch/model/useSelfTable.tsx
View file @
c215700a
...
...
@@ -56,17 +56,17 @@ export const useSelfTable = () => {
{
title
:
'投标时间'
,
align
:
'center'
,
dataIndex
:
'inviteTender
StartTime
'
,
key
:
'inviteTender
StartTime
'
,
render
:
(
text
,
record
)
=>
formatTimeString
(
text
),
dataIndex
:
'inviteTender'
,
key
:
'inviteTender'
,
render
:
(
text
,
record
)
=>
formatTimeString
(
record
.
inviteTender
.
inviteTenderStartTime
),
width
:
200
},
{
title
:
'开标时间'
,
align
:
'center'
,
dataIndex
:
'
openTenderTime
'
,
key
:
'
openTenderTime
'
,
render
:
(
text
,
record
)
=>
formatTimeString
(
text
),
dataIndex
:
'
inviteTender
'
,
key
:
'
inviteTender
'
,
render
:
(
text
,
record
)
=>
formatTimeString
(
record
.
inviteTender
.
openTenderTime
),
width
:
200
},
{
...
...
@@ -79,9 +79,9 @@ export const useSelfTable = () => {
{
title
:
'外部状态'
,
align
:
'center'
,
dataIndex
:
'
tenderOutStatus
'
,
key
:
'
tenderOutStatus
'
,
render
:
text
=>
<
CustomTag
status=
{
text
}
type=
'out'
/>
dataIndex
:
'
inviteTender
'
,
key
:
'
inviteTender
'
,
render
:
(
text
,
record
)
=>
<
CustomTag
status=
{
record
.
inviteTender
.
tenderOutStatus
}
type=
'out'
/>
},
// {
// title: '内部状态',
...
...
src/pages/procurement/callForBids/tenderSearch/schema/index.ts
View file @
c215700a
...
...
@@ -55,7 +55,7 @@ export const tableListSchema: ISchema = {
placeholder
:
'请输入投标会员'
,
}
},
tenderOutStatus
:
{
tenderOutStatus
List
:
{
type
:
'string'
,
"x-component-props"
:
{
placeholder
:
'请选择外部状态'
...
...
src/pages/procurement/components/bidMethod/index.tsx
View file @
c215700a
...
...
@@ -44,15 +44,15 @@ const BidMethod: React.FC<BidMethodProps> = ({cardTitle}) => {
},
{
title
:
'是否归属会员'
,
dataIndex
:
'is
Affiliate
'
,
key
:
'is
Affiliate
'
,
dataIndex
:
'is
SubMember
'
,
key
:
'is
SubMember
'
,
render
:
(
t
,
r
)
=>
t
?
'是'
:
'否'
,
},
{
title
:
<>
状态
<
Tooltip
title=
"打开开关,审核通过后,将招标发至对应的会员"
><
span
>
<
QuestionCircleOutlined
/></
span
></
Tooltip
></>,
dataIndex
:
'
status
'
,
key
:
'
status
'
,
render
:
(
text
,
record
)
=>
<
Switch
disabled
defaultChecked
onChange=
{
()
=>
onChange
(
record
)
}
/>
dataIndex
:
'
isSend
'
,
key
:
'
isSend
'
,
render
:
(
text
,
record
)
=>
<
Switch
disabled
defaultChecked
=
{
text
}
onChange=
{
()
=>
onChange
(
record
)
}
/>
},
{
title
:
'操作'
,
...
...
src/pages/procurement/components/customBadge.tsx
View file @
c215700a
import
React
from
'react'
import
{
BidInStateTexts
,
BidOutStateTexts
}
from
'@/constants'
import
{
BidInStateTexts
,
BidOutStateTexts
,
TenderInStateTexts
}
from
'@/constants'
// 用于标签状态控制
export
interface
StatusColorsProps
{
status
:
number
,
type
:
'out'
|
'inside'
type
:
'out'
|
'inside'
|
'tenderInside'
}
// className映射
...
...
@@ -30,8 +30,12 @@ const CustomBadge: React.FC<StatusColorsProps> = (props) => {
const
{
status
,
type
}
=
props
const
typeMaps
=
{
/** 招标外部状态 */
'out'
:
BidOutStateTexts
,
/** 招标内部状态 */
'inside'
:
BidInStateTexts
,
/** 投标内部状态 */
'tenderInside'
:
TenderInStateTexts
,
}
const
statusText
=
typeMaps
[
type
]
...
...
src/pages/procurement/components/customTag.tsx
View file @
c215700a
import
React
from
'react'
import
{
Tag
}
from
'antd'
import
{
BidInStateTexts
,
BidOutStateTexts
}
from
'@/constants'
import
{
BidInStateTexts
,
BidOutStateTexts
,
TenderInStateTexts
}
from
'@/constants'
// 用于标签状态控制
export
interface
StatusColorsProps
{
status
:
number
,
/** 外部状态 内部状态 外部流转状态 内部流转状态 */
type
:
'out'
|
'inside'
|
'transformInside'
|
'transformOut'
type
:
'out'
|
'inside'
|
'transformInside'
|
'transformOut'
|
'tenderInside'
}
// 颜色映射
...
...
@@ -31,8 +31,14 @@ const CustomTag: React.FC<StatusColorsProps> = (props) => {
const
{
status
,
type
}
=
props
const
typeMaps
=
{
/** 招标外部状态 */
'out'
:
BidOutStateTexts
,
/** 招标内部状态 */
'inside'
:
BidInStateTexts
,
/** 投标内部状态 */
'tenderInside'
:
TenderInStateTexts
,
// /** 投标外部状态 */
// 'tenderOut': BidOutStateTexts,
}
const
statusText
=
typeMaps
[
type
]
...
...
src/pages/procurement/tender/callForBidsSearch/detail/index.tsx
View file @
c215700a
...
...
@@ -11,8 +11,8 @@ import BidDetailHeader from '@/pages/procurement/components/bidDetailHeader';
import
BidDetailSection
from
'@/pages/procurement/components/bidDetailSection'
;
const
CallForBidsSearchDetailInTender
:
React
.
FC
=
()
=>
{
const
{
formContext
,
id
,
detailList
}
=
useBidDetail
({
type
:
'purchaseOrder
'
})
const
{
data
,
currentPayInfoId
}
=
formContext
const
{
formContext
,
id
}
=
useBidDetail
({
type
:
'callForBid
'
})
const
{
data
}
=
formContext
const
payRef
=
useRef
<
any
>
({})
...
...
@@ -37,15 +37,9 @@ const CallForBidsSearchDetailInTender: React.FC = () => {
<
div
>
<
BidDetailContext
.
Provider
value=
{
formContext
}
>
<
BidDetailHeader
detailList=
{
detailList
}
formContext=
{
formContext
}
anchorList=
{
anchorTitleList
}
backLink=
"/memberCenter/procurementAbility/tender/callForBidsSearch"
// extraRight={
// <Button type='primary'>
// 去支付
// </Button>
// }
/>
<
OrderDetailWrapper
>
<
PreLoading
loading=
{
!
formContext
.
data
}
active
paragraph=
{
{
rows
:
6
}
}
>
...
...
src/pages/procurement/tender/callForBidsSearch/index.tsx
View file @
c215700a
import
React
from
'react'
import
{
Card
}
from
'antd'
import
{
Card
}
from
'antd'
import
{
PageHeaderWrapper
}
from
'@ant-design/pro-layout'
import
{
StandardTable
}
from
'god'
import
{
useStateFilterSearchLinkageEffect
}
from
'@/formSchema/effects/useFilterSearch'
...
...
@@ -10,6 +10,7 @@ import Submit from '@/components/NiceForm/components/Submit'
import
DateRangePickerUnix
from
'@/components/NiceForm/components/DateRangePickerUnix'
import
{
PublicApi
}
from
'@/services/api'
const
callForBidsSearch
:
React
.
FC
<
{}
>
=
()
=>
{
const
{
...
...
@@ -18,7 +19,7 @@ const callForBidsSearch: React.FC<{}> = () => {
}
=
useSelfTable
()
const
fetchTableData
=
async
(
params
)
=>
{
const
{
data
}
=
await
PublicApi
.
postPurchaseSubmitTenderGetInviteTenderList
(
params
)
const
{
data
}
=
await
PublicApi
.
postPurchaseSubmitTenderGetInviteTenderList
(
params
,
{
ctlType
:
"none"
}
)
return
data
}
...
...
@@ -29,7 +30,7 @@ const callForBidsSearch: React.FC<{}> = () => {
fetchTableData=
{
params
=>
fetchTableData
(
params
)
}
currentRef=
{
ref
}
columns=
{
columns
}
rowKey=
{
'code
'
}
rowKey=
{
'id
'
}
formilyLayouts=
{
{
justify
:
'space-between'
}
}
...
...
@@ -41,7 +42,7 @@ const callForBidsSearch: React.FC<{}> = () => {
useStateFilterSearchLinkageEffect
(
$
,
actions
,
'orderNo
'
,
'code
'
,
FORM_FILTER_PATH
,
);
},
...
...
@@ -53,6 +54,7 @@ const callForBidsSearch: React.FC<{}> = () => {
}
}
/>
</
Card
>
</
PageHeaderWrapper
>
)
}
...
...
src/pages/procurement/tender/callForBidsSearch/model/useSelfTable.tsx
View file @
c215700a
import
React
,
{
useRef
}
from
'react'
import
{
history
}
from
'umi'
import
{
Button
,
Popconfirm
}
from
'antd'
import
{
PublicApi
}
from
'@/services/api'
import
EyePreview
from
'@/components/EyePreview'
import
{
formatTimeString
}
from
'@/utils'
import
{
ORDER
_TYPE
}
from
'@/constants'
import
{
CALLFORBID_TYPE
,
PURCHASE
_TYPE
}
from
'@/constants'
import
{
PlayCircleOutlined
,
PoweroffOutlined
}
from
'@ant-design/icons'
import
CustomTag
from
'@/pages/procurement/components/CustomTag'
import
CustomBadge
from
'@/pages/procurement/components/customBadge'
...
...
@@ -13,14 +10,6 @@ import CustomBadge from '@/pages/procurement/components/customBadge'
export
const
useSelfTable
=
()
=>
{
const
ref
=
useRef
<
any
>
({})
const
handleCancel
=
(
param
)
=>
{
PublicApi
.
postOrderPurchaseOrderCancel
({
id
:
param
}).
then
(
res
=>
{
if
(
res
.
code
===
1000
)
{
ref
.
current
.
reload
()
}
})
}
const
callForBidColumns
:
any
[]
=
[
{
title
:
'序号'
,
...
...
@@ -32,27 +21,28 @@ export const useSelfTable = () => {
{
title
:
'招标编号/项目'
,
align
:
'center'
,
dataIndex
:
'
orderNo
'
,
key
:
'
orderNo
'
,
dataIndex
:
'
code
'
,
key
:
'
code
'
,
render
:
(
text
,
record
)
=>
<>
<
EyePreview
url=
{
`/memberCenter/procurementAbility/tender/callForBidsSearch/detail?id=${record.id}`
}
>
{
text
}
</
EyePreview
>
<
div
>
{
text
}
</
div
>
<
div
>
{
record
[
'projectName'
]
}
</
div
>
</>
},
{
title
:
'采购类型'
,
align
:
'center'
,
dataIndex
:
'
t
ype'
,
key
:
'
t
ype'
,
render
:
(
t
ext
)
=>
ORDER_TYPE
[
tex
t
]
dataIndex
:
'
purchaseT
ype'
,
key
:
'
purchaseT
ype'
,
render
:
(
t
)
=>
PURCHASE_TYPE
[
t
]
},
{
title
:
'招标方式'
,
align
:
'left'
,
dataIndex
:
'supplyMembersName'
,
key
:
'supplyMembersName'
,
align
:
'center'
,
dataIndex
:
'inviteTenderType'
,
key
:
'inviteTenderType'
,
render
:
(
t
)
=>
CALLFORBID_TYPE
[
t
]
},
{
title
:
'发布时间'
,
...
...
@@ -60,72 +50,55 @@ export const useSelfTable = () => {
dataIndex
:
'createTime'
,
key
:
'createTime'
,
render
:
(
text
,
record
)
=>
formatTimeString
(
record
.
createTime
),
width
:
20
0
width
:
18
0
},
{
title
:
'报名开始/截止时间'
,
align
:
'center'
,
dataIndex
:
'
create
Time'
,
key
:
'
create
Time'
,
dataIndex
:
'
registerStart
Time'
,
key
:
'
registerStart
Time'
,
render
:
(
text
,
record
)
=>
<>
<
div
><
PlayCircleOutlined
/>
{
formatTimeString
(
record
.
create
Time
)
}
</
div
>
<
div
><
PoweroffOutlined
/>
{
formatTimeString
(
record
.
create
Time
)
}
</
div
>
<
div
><
PlayCircleOutlined
/>
{
formatTimeString
(
record
.
registerStart
Time
)
}
</
div
>
<
div
><
PoweroffOutlined
/>
{
formatTimeString
(
record
.
registerEnd
Time
)
}
</
div
>
</>,
width
:
20
0
width
:
18
0
},
{
title
:
'资格预审开始/截止时间'
,
align
:
'center'
,
dataIndex
:
'c
reate
Time'
,
key
:
'c
reate
Time'
,
dataIndex
:
'c
heckStart
Time'
,
key
:
'c
heckStart
Time'
,
render
:
(
text
,
record
)
=>
<>
<
div
><
PlayCircleOutlined
/>
{
formatTimeString
(
record
.
createTime
)
}
</
div
>
<
div
><
PoweroffOutlined
/>
{
formatTimeString
(
record
.
createTime
)
}
</
div
>
{
record
.
preCheckStartTime
?
<
div
><
PlayCircleOutlined
/>
{
formatTimeString
(
record
.
preCheckStartTime
)
}
</
div
>
:
null
}
{
record
.
preCheckEndTime
?
<
div
><
PoweroffOutlined
/>
{
formatTimeString
(
record
.
preCheckEndTime
)
}
</
div
>
:
null
}
</>,
width
:
20
0
width
:
18
0
},
{
title
:
'投标开始/截止时间'
,
align
:
'center'
,
dataIndex
:
'
create
Time'
,
key
:
'
create
Time'
,
dataIndex
:
'
inviteTenderStart
Time'
,
key
:
'
inviteTenderStart
Time'
,
render
:
(
text
,
record
)
=>
<>
<
div
><
PlayCircleOutlined
/>
{
formatTimeString
(
record
.
create
Time
)
}
</
div
>
<
div
><
PoweroffOutlined
/>
{
formatTimeString
(
record
.
create
Time
)
}
</
div
>
<
div
><
PlayCircleOutlined
/>
{
formatTimeString
(
record
.
inviteTenderStart
Time
)
}
</
div
>
<
div
><
PoweroffOutlined
/>
{
formatTimeString
(
record
.
inviteTenderEnd
Time
)
}
</
div
>
</>,
width
:
20
0
width
:
18
0
},
{
title
:
'外部状态'
,
align
:
'center'
,
dataIndex
:
'
externalState
'
,
key
:
'
externalState
'
,
dataIndex
:
'
tenderOutStatus
'
,
key
:
'
tenderOutStatus
'
,
render
:
text
=>
<
CustomTag
status=
{
text
}
type=
'out'
/>
},
{
title
:
'内部状态'
,
align
:
'center'
,
dataIndex
:
'in
teriorState
'
,
key
:
'in
teriorState
'
,
render
:
(
text
)
=>
<
CustomBadge
status=
{
text
}
type=
'
i
nside'
/>
dataIndex
:
'in
viteTenderInStatus
'
,
key
:
'in
viteTenderInStatus
'
,
render
:
(
text
)
=>
<
CustomBadge
status=
{
text
}
type=
'
tenderI
nside'
/>
},
{
title
:
'操作'
,
align
:
'center'
,
dataIndex
:
'ctl'
,
key
:
'ctl'
,
render
:
(
text
,
record
)
=>
<>
<
Button
type=
'link'
>
复制
</
Button
>
<
Popconfirm
title=
"是否要取消该订单?"
onConfirm=
{
()
=>
handleCancel
(
record
.
id
)
}
okText=
"是"
cancelText=
"否"
>
<
Button
type=
'link'
>
废标
</
Button
>
</
Popconfirm
>
</>
}
]
return
{
...
...
src/pages/procurement/tender/callForBidsSearch/schema/index.ts
View file @
c215700a
import
{
ISchema
}
from
'@formily/antd'
;
import
{
FORM_FILTER_PATH
}
from
'@/formSchema/const'
;
import
{
OrderTypeMap
,
PurchaseOrderInsideWorkStateTexts
,
PurchaseOrderOutWorkStateTexts
}
from
'@/constants'
;
import
{
BidInStateTexts
,
BidOutStateTexts
,
OrderTypeMap
,
PurchaseOrderInsideWorkStateTexts
,
PurchaseOrderOutWorkStateTexts
}
from
'@/constants'
;
/**
* 招标查询列表高级筛选
*/
export
const
tableListSchema
:
ISchema
=
{
export
const
tableListSchema
:
ISchema
=
{
type
:
'object'
,
properties
:
{
orderNo
:
{
code
:
{
type
:
'string'
,
"x-component"
:
'SearchFilter'
,
'x-component-props'
:
{
...
...
@@ -29,54 +29,54 @@ export const tableListSchema: ISchema = {
}
},
properties
:
{
orderTh
e
:
{
projectNam
e
:
{
type
:
'string'
,
'x-component-props'
:
{
placeholder
:
'请输入招标项目'
,
}
},
"[start
CreateTime,endCreate
Time]"
:
{
"[start
Time,end
Time]"
:
{
type
:
'array'
,
"x-component"
:
'DateRangePickerUnix'
,
'x-component-props'
:
{
placeholder
:
[
'发布开始时间'
,
'发布结束时间'
],
},
},
"[
startEnterTime,endEnter
Time]"
:
{
"[
registerStartTime,registerEnd
Time]"
:
{
type
:
'array'
,
"x-component"
:
'DateRangePickerUnix'
,
'x-component-props'
:
{
placeholder
:
[
'报名开始时间'
,
'报名结束时间'
],
},
},
"
externalState
"
:
{
"
tenderOutStatus
"
:
{
type
:
'string'
,
"x-component-props"
:
{
placeholder
:
'请选择外部状态'
},
enum
:
Object
.
keys
(
PurchaseOrderOutWork
StateTexts
).
map
(
item
=>
({
label
:
PurchaseOrderOutWork
StateTexts
[
item
],
enum
:
Object
.
keys
(
BidOut
StateTexts
).
map
(
item
=>
({
label
:
BidOut
StateTexts
[
item
],
value
:
item
,
}))
},
"in
teriorState
"
:
{
"in
viteTenderInStatusList
"
:
{
type
:
'string'
,
"x-component-props"
:
{
placeholder
:
'请选择内部状态'
},
enum
:
Object
.
keys
(
PurchaseOrderInsideWork
StateTexts
).
map
(
item
=>
({
label
:
PurchaseOrderInsideWork
StateTexts
[
item
],
enum
:
Object
.
keys
(
BidIn
StateTexts
).
map
(
item
=>
({
label
:
BidIn
StateTexts
[
item
],
value
:
item
,
}))
},
"[
startApplyTime,endApply
Time]"
:
{
"[
preCheckStartTime,preCheckEnd
Time]"
:
{
type
:
'array'
,
"x-component"
:
'DateRangePickerUnix'
,
'x-component-props'
:
{
placeholder
:
[
'预审开始时间'
,
'预审结束时间'
],
},
},
"[
startBidTime,endBi
dTime]"
:
{
"[
inviteTenderStartTime,inviteTenderEn
dTime]"
:
{
type
:
'array'
,
"x-component"
:
'DateRangePickerUnix'
,
'x-component-props'
:
{
...
...
@@ -93,3 +93,4 @@ export const tableListSchema: ISchema = {
},
}
}
src/pages/procurement/tender/readyBidRegister/index.tsx
View file @
c215700a
import
React
from
'react'
import
{
history
}
from
'umi'
import
{
Card
,
Button
,
Space
,
Dropdown
,
Menu
,
message
}
from
'antd'
import
{
Card
}
from
'antd'
import
{
StandardTable
}
from
'god'
import
{
PageHeaderWrapper
}
from
'@ant-design/pro-layout'
import
{
PublicApi
}
from
'@/services/api'
import
{
PlusCircleOutlined
,
DownOutlined
,
DeleteOutlined
}
from
'@ant-design/icons'
import
DropDeleteDown
from
'@/components/DropDeleteDown'
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
{
DatePicker
}
from
'@formily/antd-components'
import
{
useSelfTable
}
from
'./model'
import
{
useRowSelectionTable
}
from
'@/hooks/useRowSelectionTable'
import
{
PurchaseOrderInsideWorkState
}
from
'@/constants'
import
{
useHttpRequest
}
from
'@/hooks/useHttpRequest'
import
DateRangePickerUnix
from
'@/components/NiceForm/components/DateRangePickerUnix'
// 待招标报名 投标
...
...
@@ -22,48 +15,16 @@ import DateRangePickerUnix from '@/components/NiceForm/components/DateRangePicke
export
interface
ReadyBidRegisterProps
{}
const
fetchTableData
=
async
(
params
)
=>
{
const
{
data
}
=
await
PublicApi
.
getOrderProcurementStayAddList
(
params
)
const
{
data
}
=
await
PublicApi
.
postPurchaseSubmitTenderGetSubmitTenderList
({
...
params
,
tenderOutStatusList
:
[
4
,
6
],
},
{
ctlType
:
"none"
})
return
data
}
const
ReadyBidRegister
:
React
.
FC
<
ReadyBidRegisterProps
>
=
(
props
)
=>
{
const
{
run
:
deleteRun
}
=
useHttpRequest
(
PublicApi
.
postOrderProcurementOrderDeleteAll
)
const
{
loading
:
submitLoading
,
run
:
submitRun
}
=
useHttpRequest
(
PublicApi
.
postOrderProcurementOrderSubmitExamineAll
)
const
{
columns
,
ref
,
rowSelection
,
rowSelectionCtl
}
=
useSelfTable
()
const
handleMenuClick
=
async
(
e
)
=>
{
switch
(
e
.
key
)
{
case
'1'
:
{
// 批量删除
const
canDelete
=
!
rowSelectionCtl
.
selectRow
.
some
(
v
=>
v
.
interiorState
!==
PurchaseOrderInsideWorkState
.
ADD_PURCHASE_ORDER
)
if
(
canDelete
)
{
const
{
code
}
=
await
deleteRun
({
ids
:
rowSelectionCtl
.
selectedRowKeys
})
if
(
code
===
1000
)
{
ref
.
current
.
reload
()
rowSelectionCtl
.
setSelectRow
([])
rowSelectionCtl
.
setSelectedRowKeys
([])
}
}
else
{
message
.
error
(
'只能删除内部状态为未审核过的订单'
)
}
break
;
}
}
}
const
handleBitchPush
=
async
()
=>
{
const
canBitch
=
!
rowSelectionCtl
.
selectRow
.
some
(
v
=>
v
.
interiorState
!==
PurchaseOrderInsideWorkState
.
ADD_PURCHASE_ORDER
)
if
(
canBitch
)
{
const
{
code
}
=
await
submitRun
({
ids
:
rowSelectionCtl
.
selectedRowKeys
})
if
(
code
===
1000
)
{
ref
.
current
.
reload
()
rowSelectionCtl
.
setSelectRow
([])
rowSelectionCtl
.
setSelectedRowKeys
([])
}
}
else
{
message
.
error
(
'只能提交审核待新增的订单'
)
}
}
return
<
PageHeaderWrapper
>
<
Card
>
...
...
@@ -83,7 +44,7 @@ const ReadyBidRegister:React.FC<ReadyBidRegisterProps> = (props) => {
useStateFilterSearchLinkageEffect
(
$
,
actions
,
'
orderNo
'
,
'
code
'
,
FORM_FILTER_PATH
,
);
},
...
...
@@ -97,20 +58,6 @@ const ReadyBidRegister:React.FC<ReadyBidRegisterProps> = (props) => {
span
:
24
}
}
}
// formilyChilds={{
// children: <Space>
// <Button
// icon={<PlusCircleOutlined/>}
// type='primary'
// onClick={() => history.push('/memberCenter/procurementAbility/tender/readyBidRegister/add')}
// >
// 新建
// </Button>
// </Space>,
// layouts: {
// span: 8
// }
// }}
/>
</
Card
>
</
PageHeaderWrapper
>
...
...
src/pages/procurement/tender/readyBidRegister/schema/index.ts
View file @
c215700a
...
...
@@ -7,7 +7,7 @@ import { FORM_FILTER_PATH } from '@/formSchema/const';
export
const
tableListSchema
:
ISchema
=
{
type
:
'object'
,
properties
:
{
orderNo
:
{
code
:
{
type
:
'string'
,
"x-component"
:
'SearchFilter'
,
'x-component-props'
:
{
...
...
src/pages/procurement/tender/tenderSearch/detail/index.tsx
View file @
c215700a
import
React
,
{
use
State
,
useCallback
,
useRef
,
useContext
,
useEffect
,
create
Ref
}
from
'react'
;
import
React
,
{
useRef
}
from
'react'
;
import
{
history
}
from
'umi'
import
{
Button
}
from
'antd'
;
import
style
from
'./index.less'
...
...
@@ -11,15 +11,10 @@ import BidDetailHeader from '@/pages/procurement/components/bidDetailHeader';
import
BidDetailSection
from
'@/pages/procurement/components/bidDetailSection'
;
const
TenderSearchDetail
:
React
.
FC
=
()
=>
{
const
{
formContext
,
id
,
detailList
}
=
useBidDetail
({
type
:
'purchaseOr
der'
})
const
{
data
,
currentPayInfoId
}
=
formContext
const
{
formContext
,
id
}
=
useBidDetail
({
type
:
'ten
der'
})
const
{
data
}
=
formContext
const
payRef
=
useRef
<
any
>
({})
const
contentRef
=
useRef
<
any
>
({})
/** 约定好 对应的锚点title和元素id映射 */
// type? 用于区分DescriptionsInfo组件的内容
// componentName? 用于区分不同组件的渲染
const
anchorTitleList
=
[
{
title
:
'流转进度'
,
id
:
'transferProcess'
,
componentName
:
"TransferProcess"
},
...
...
@@ -36,22 +31,8 @@ const TenderSearchDetail: React.FC = () => {
<
div
>
<
BidDetailContext
.
Provider
value=
{
formContext
}
>
<
BidDetailHeader
detailList=
{
detailList
}
formContext=
{
formContext
}
// detailData={formContext.data}
anchorList=
{
anchorTitleList
}
backLink=
"/memberCenter/procurementAbility/callForBids/tenderSearch"
extraRight=
{
<>
<
Button
type=
'primary'
>
去支付
</
Button
>
<
div
style=
{
{
textAlign
:
'right'
}
}
>
<
p
style=
{
{
marginTop
:
12
,
fontSize
:
12
,
color
:
'#6B778C'
}
}
>
本次需支付
</
p
>
{
formContext
.
data
&&
<
p
>
¥666
</
p
>
}
</
div
>
</>
}
/>
<
OrderDetailWrapper
>
<
PreLoading
loading=
{
!
formContext
.
data
}
active
paragraph=
{
{
rows
:
6
}
}
>
...
...
@@ -65,6 +46,6 @@ const TenderSearchDetail: React.FC = () => {
</
BidDetailContext
.
Provider
>
</
div
>
);
}
;
}
export
default
TenderSearchDetail
;
export
default
TenderSearchDetail
src/pages/procurement/tender/tenderSearch/index.tsx
View file @
c215700a
import
React
,
{
useRef
}
from
'react'
import
{
Button
,
Popconfirm
,
Card
,
Space
}
from
'antd'
import
React
from
'react'
import
{
Card
}
from
'antd'
import
{
PageHeaderWrapper
}
from
'@ant-design/pro-layout'
import
{
StandardTable
}
from
'god'
import
{
useStateFilterSearchLinkageEffect
}
from
'@/formSchema/effects/useFilterSearch'
...
...
@@ -18,7 +18,7 @@ const TenderSearch: React.FC<{}> = () => {
}
=
useSelfTable
()
const
fetchTableData
=
async
(
params
)
=>
{
const
{
data
}
=
await
PublicApi
.
getOrderPendingOrderList
(
params
)
const
{
data
}
=
await
PublicApi
.
postPurchaseSubmitTenderGetSubmitTenderList
(
params
,
{
ctlType
:
"none"
}
)
return
data
}
...
...
@@ -29,7 +29,7 @@ const TenderSearch: React.FC<{}> = () => {
fetchTableData=
{
params
=>
fetchTableData
(
params
)
}
currentRef=
{
ref
}
columns=
{
columns
}
rowKey=
{
'orderNo
'
}
rowKey=
{
'id
'
}
formilyLayouts=
{
{
justify
:
'space-between'
}
}
...
...
@@ -41,7 +41,7 @@ const TenderSearch: React.FC<{}> = () => {
useStateFilterSearchLinkageEffect
(
$
,
actions
,
'orderNo
'
,
'submitTenderCode
'
,
FORM_FILTER_PATH
,
);
},
...
...
src/pages/procurement/tender/tenderSearch/model/useSelfTable.tsx
View file @
c215700a
import
React
,
{
useRef
}
from
'react'
import
{
history
,
Link
}
from
'umi'
import
{
Button
,
Row
,
Col
,
Progress
,
Popconfirm
}
from
'antd'
import
{
PublicApi
}
from
'@/services/api'
import
{
history
}
from
'umi'
import
{
Button
}
from
'antd'
import
EyePreview
from
'@/components/EyePreview'
import
{
formatTimeString
}
from
'@/utils'
import
{
ORDER_TYPE
,
PurchaseOrderInsideWorkState
,
PurchaseOrderOutWorkState
}
from
'@/constants'
import
{
PlayCircleOutlined
,
PoweroffOutlined
}
from
'@ant-design/icons'
import
CustomTag
from
'@/pages/procurement/components/CustomTag'
import
CustomBadge
from
'@/pages/procurement/components/customBadge'
...
...
@@ -13,12 +11,8 @@ import CustomBadge from '@/pages/procurement/components/customBadge'
export
const
useSelfTable
=
()
=>
{
const
ref
=
useRef
<
any
>
({})
const
handleCancel
=
(
param
)
=>
{
PublicApi
.
postOrderPurchaseOrderCancel
({
id
:
param
}).
then
(
res
=>
{
if
(
res
.
code
===
1000
)
{
ref
.
current
.
reload
()
}
})
const
handlePreview
=
(
param
)
=>
{
history
.
push
(
`/memberCenter/procurementAbility/tender/tenderSearch/detail?id=
${
param
.
id
}
`
)
}
const
callForBidColumns
:
any
[]
=
[
...
...
@@ -32,80 +26,76 @@ export const useSelfTable = () => {
{
title
:
'招标编号/项目'
,
align
:
'center'
,
dataIndex
:
'
orderNo
'
,
key
:
'
orderNo
'
,
dataIndex
:
'
inviteTender
'
,
key
:
'
inviteTender
'
,
render
:
(
text
,
record
)
=>
<>
<
EyePreview
url=
{
`/memberCenter/procurementAbility/tender/
tender
Search/detail?id=${record.id}`
}
>
{
text
}
<
EyePreview
url=
{
`/memberCenter/procurementAbility/tender/
callForBids
Search/detail?id=${record.id}`
}
>
{
record
.
inviteTender
.
code
}
</
EyePreview
>
<
div
>
{
text
}
</
div
>
<
div
>
{
record
.
inviteTender
.
projectName
}
</
div
>
</>
},
{
title
:
'投标编号/会员'
,
align
:
'center'
,
dataIndex
:
'
orderNo
'
,
key
:
'
orderNo
'
,
dataIndex
:
'
code
'
,
key
:
'
code
'
,
render
:
(
text
,
record
)
=>
<>
<
EyePreview
url=
{
`/memberCenter/procurementAbility/callForBids/tenderSearch/preview
?id=${record.id}`
}
>
{
text
?
<
EyePreview
url=
{
`/memberCenter/procurementAbility/callForBids/tenderSearch/detail
?id=${record.id}`
}
>
{
text
}
</
EyePreview
>
<
div
>
{
text
}
</
div
>
</
EyePreview
>
:
null
}
<
div
>
{
record
.
memberName
}
</
div
>
</>
},
{
title
:
'投标时间'
,
align
:
'center'
,
dataIndex
:
'
createTime
'
,
key
:
'
createTime
'
,
render
:
(
text
,
record
)
=>
formatTimeString
(
record
.
create
Time
),
width
:
20
0
dataIndex
:
'
memberId
'
,
key
:
'
memberId
'
,
render
:
(
text
,
record
)
=>
formatTimeString
(
record
.
inviteTender
.
inviteTenderStart
Time
),
width
:
18
0
},
{
title
:
'
开标
时间'
,
title
:
'
招标开始/截止
时间'
,
align
:
'center'
,
dataIndex
:
'createTime'
,
key
:
'createTime'
,
render
:
(
text
,
record
)
=>
formatTimeString
(
record
.
createTime
),
width
:
200
dataIndex
:
'memberRoleId'
,
key
:
'memberRoleId'
,
render
:
(
text
,
record
)
=>
<>
<
div
><
PlayCircleOutlined
/>
{
formatTimeString
(
record
.
inviteTender
.
inviteTenderStartTime
)
}
</
div
>
<
div
><
PoweroffOutlined
/>
{
formatTimeString
(
record
.
inviteTender
.
inviteTenderEndTime
)
}
</
div
>
</>,
width
:
180
},
{
title
:
'是否中标'
,
align
:
'center'
,
dataIndex
:
'externalState'
,
key
:
'externalState'
,
dataIndex
:
'isWin'
,
key
:
'isWin'
,
render
:
(
t
,
r
)
=>
t
?
'是'
:
'否'
},
{
title
:
'外部状态'
,
align
:
'center'
,
dataIndex
:
'
externalState
'
,
key
:
'
externalState
'
,
render
:
text
=>
<
CustomTag
status=
{
text
}
type=
'out'
/>
dataIndex
:
'
isSend
'
,
key
:
'
isSend
'
,
render
:
(
t
,
r
)
=>
<
CustomTag
status=
{
r
.
inviteTender
.
tenderOutStatus
}
type=
'out'
/>
},
{
title
:
'内部状态'
,
align
:
'center'
,
dataIndex
:
'i
nteriorState
'
,
key
:
'i
nteriorState
'
,
render
:
(
t
ext
)
=>
<
CustomBadge
status=
{
text
}
type=
'i
nside'
/>
dataIndex
:
'i
sSubMember
'
,
key
:
'i
sSubMember
'
,
render
:
(
t
,
r
)
=>
<
CustomBadge
status=
{
r
.
inviteTender
.
submitTenderInStatus
}
type=
'tenderI
nside'
/>
},
// {
// title: '操作',
// align: 'center',
// dataIndex: 'ctl',
// key: 'ctl',
// render: (text, record) => <>
// <Button type='link'>复制</Button>
// <Popconfirm
// title="是否要取消该订单?"
// onConfirm={() => handleCancel(record.id)}
// okText="是"
// cancelText="否"
// >
// <Button type='link'>废标</Button>
// </Popconfirm>
// </>
// }
{
title
:
'操作'
,
align
:
'center'
,
dataIndex
:
'ctl'
,
key
:
'ctl'
,
render
:
(
text
,
record
)
=>
<>
<
Button
type=
'link'
onClick=
{
()
=>
handlePreview
(
record
)
}
>
查看
</
Button
>
</>
}
]
return
{
...
...
src/pages/procurement/tender/tenderSearch/schema/index.ts
View file @
c215700a
import
{
ISchema
}
from
'@formily/antd'
;
import
{
FORM_FILTER_PATH
}
from
'@/formSchema/const'
;
import
{
OrderTypeMap
,
PurchaseOrderInsideWorkStateTexts
,
PurchaseOrderOutWork
StateTexts
}
from
'@/constants'
;
import
{
BidOutStateTexts
,
OrderTypeMap
,
PurchaseOrderInsideWorkStateTexts
,
PurchaseOrderOutWorkStateTexts
,
TenderIn
StateTexts
}
from
'@/constants'
;
/**
*
招
标查询列表高级筛选
*
投
标查询列表高级筛选
*/
export
const
tableListSchema
:
ISchema
=
{
export
const
tableListSchema
:
ISchema
=
{
type
:
'object'
,
properties
:
{
orderNo
:
{
submitTenderCode
:
{
type
:
'string'
,
"x-component"
:
'SearchFilter'
,
'x-component-props'
:
{
placeholder
:
'请输入
招
标编号'
,
placeholder
:
'请输入
投
标编号'
,
align
:
'flex-start'
,
},
},
...
...
@@ -29,51 +29,51 @@ export const tableListSchema: ISchema = {
}
},
properties
:
{
orderTh
e
:
{
projectNam
e
:
{
type
:
'string'
,
'x-component-props'
:
{
placeholder
:
'请输入
投
标项目'
,
placeholder
:
'请输入
招
标项目'
,
}
},
t
enderCode
:
{
inviteT
enderCode
:
{
type
:
'string'
,
'x-component-props'
:
{
placeholder
:
'请输入招标编
码
'
,
}
placeholder
:
'请输入招标编
号
'
,
}
,
},
"[s
tartEnterTime,endEnter
Time]"
:
{
"[s
ubmitTenderStartTime,submitTenderEnd
Time]"
:
{
type
:
'array'
,
"x-component"
:
'DateRangePickerUnix'
,
'x-component-props'
:
{
placeholder
:
[
'
开标开始时间'
,
'开
标结束时间'
],
placeholder
:
[
'
投标开始时间'
,
'投
标结束时间'
],
},
},
tenderMember
:
{
inviteTenderMemberName
:
{
type
:
'string'
,
'x-component-props'
:
{
placeholder
:
'请输入
投
标会员'
,
}
placeholder
:
'请输入
招
标会员'
,
}
,
},
"
externalState
"
:
{
"
tenderOutStatus
"
:
{
type
:
'string'
,
"x-component-props"
:
{
placeholder
:
'请选择外部状态'
},
enum
:
Object
.
keys
(
PurchaseOrderOutWorkStateTexts
).
map
(
item
=>
({
label
:
PurchaseOrderOutWorkStateTexts
[
item
],
enum
:
Object
.
keys
(
BidOutStateTexts
).
map
(
item
=>
({
label
:
BidOutStateTexts
[
item
],
value
:
item
,
}))
},
"submitTenderInStatusList"
:
{
type
:
'string'
,
"x-component-props"
:
{
placeholder
:
'请选择内部状态'
},
enum
:
Object
.
keys
(
TenderInStateTexts
).
map
(
item
=>
({
label
:
TenderInStateTexts
[
item
],
value
:
item
,
}))
},
// "interiorState": {
// type: 'string',
// "x-component-props": {
// placeholder: '请选择内部状态'
// },
// enum: Object.keys(PurchaseOrderInsideWorkStateTexts).map(item => ({
// label: PurchaseOrderInsideWorkStateTexts[item],
// value: item,
// }))
// },
submit
:
{
'x-component'
:
'Submit'
,
'x-component-props'
:
{
...
...
@@ -84,3 +84,4 @@ export const tableListSchema: ISchema = {
},
}
}
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