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
7effb3e1
Commit
7effb3e1
authored
Jul 21, 2021
by
alwayOnlie
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改路由
parent
6f4be60b
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
1132 additions
and
34 deletions
+1132
-34
crossSellProducts.tsx
...tract/coordination/components/modal/crossSellProducts.tsx
+10
-6
add.tsx
src/pages/contract/funds/addbill/add.tsx
+2
-11
index.tsx
src/pages/contract/funds/addbill/index.tsx
+1
-1
index.css
src/pages/contract/funds/editbill/components/index.css
+19
-0
index.less
src/pages/contract/funds/editbill/components/index.less
+22
-0
info.tsx
src/pages/contract/funds/editbill/components/info.tsx
+512
-0
index.ts
src/pages/contract/funds/editbill/components/schema/index.ts
+58
-0
table.tsx
src/pages/contract/funds/editbill/components/table.tsx
+380
-0
index.tsx
src/pages/contract/funds/editbill/index.tsx
+95
-0
FormList.tsx
src/pages/contract/manage/add/components/FormList.tsx
+18
-15
index.tsx
src/pages/contract/manage/auction/index.tsx
+15
-1
No files found.
src/pages/contract/coordination/components/modal/crossSellProducts.tsx
View file @
7effb3e1
...
...
@@ -42,6 +42,7 @@ const CrossSellProducts: React.FC<IProps> = (props: any) => {
onClick
}
=
props
;
const
[
flag
,
setFlag
]
=
useState
<
boolean
>
(
false
);
console
.
log
(
record
)
const
[
product
,
setProduct
]
=
useState
<
any
>
({});
const
[
attribute
,
setAttribute
]
=
useState
<
any
>
([]);
const
handleAnchorClick
=
(
e
)
=>
{
...
...
@@ -63,11 +64,13 @@ const CrossSellProducts: React.FC<IProps> = (props: any) => {
setProduct
(
params
);
GetCommodityAttribute
(
params
.
id
);
setFlag
(
false
);
}
/** 关闭 */
const
handleClose
=
()
=>
{
onClose
()
setProduct
({})
}
/** 确定 */
const
handleConfirm
=
()
=>
{
...
...
@@ -75,6 +78,7 @@ const CrossSellProducts: React.FC<IProps> = (props: any) => {
product
,
attribute
})
setProduct
({})
}
return
(
<>
...
...
@@ -94,10 +98,10 @@ const CrossSellProducts: React.FC<IProps> = (props: any) => {
>
<
Button
onClick=
{
handleClose
}
style=
{
{
marginRight
:
8
}
}
>
取消
</
Button
>
</
Button
>
<
Button
onClick=
{
handleConfirm
}
type=
"primary"
>
确定
</
Button
>
</
Button
>
</
div
>
}
>
...
...
@@ -148,7 +152,7 @@ const CrossSellProducts: React.FC<IProps> = (props: any) => {
}
}
>
基本信息
</
span
>
</
span
>
</>
}
/>
...
...
@@ -183,7 +187,7 @@ const CrossSellProducts: React.FC<IProps> = (props: any) => {
<
div
className=
{
cx
(
style
.
box
,
style
.
boxBlue
)
}
>
<
div
className=
{
cx
(
style
.
title
,
style
.
tagBlue
)
}
>
报价商品
<
Text
type=
'danger'
>
*
</
Text
>
<
Text
type=
'danger'
>
*
</
Text
>
</
div
>
<
div
className=
{
style
.
content
}
>
{
Object
.
keys
(
product
).
length
>
0
...
...
@@ -206,7 +210,7 @@ const CrossSellProducts: React.FC<IProps> = (props: any) => {
<
Button
onClick=
{
()
=>
setFlag
(
true
)
}
block
type=
"dashed"
style=
{
{
margin
:
'16px 0px'
}
}
>
<
PlusSquareOutlined
/>
选择商品
</
Button
>
</
Button
>
</
div
>
</
div
>
</
div
>
...
...
@@ -271,7 +275,7 @@ const CrossSellProducts: React.FC<IProps> = (props: any) => {
}
}
>
附件
</
span
>
</
span
>
</>
}
/>
...
...
src/pages/contract/funds/addbill/add.tsx
View file @
7effb3e1
...
...
@@ -17,25 +17,16 @@ const { TabPane } = Tabs;
const
Add
:
React
.
FC
<
{}
>
=
(
props
:
any
)
=>
{
const
{
location
:
{
query
:
{
sourceType
,
paymentId
,
type
}
}
}
=
props
;
console
.
log
(
sourceT
ype
)
console
.
log
(
t
ype
)
const
currentBasic
=
useRef
<
any
>
({});
const
detailData
=
useRef
<
any
>
({});
const
[
flag
,
setflag
]
=
useState
<
any
>
(
false
);
const
[
id
,
setid
]
=
useState
(
''
);
/* 判断是不是手工单 */
const
getflag
=
(
data
)
=>
{
setflag
(
data
.
flag
)
setid
(
data
.
selectRow
.
id
)
console
.
log
(
data
)
}
// useEffect(() => {
// PublicApi.getContractApplyAmountGetDetail({ applyId: paymentId }).then((res) => {
// console.log(res)
// }).catch((err) => {
// });
// }, [])
const
TabList
=
[
{
name
:
'基本信息'
,
components
:
...
...
@@ -78,7 +69,7 @@ const Add: React.FC<{}> = (props: any) => {
return
(
<
PageHeaderWrapper
title=
{
type
?
'修改请款单'
:
'新建请款单'
}
title=
"新建请款单"
onBack=
{
()
=>
history
.
goBack
()
}
backIcon=
{
<
ReutrnEle
description=
"返回"
/>
}
extra=
{
[
...
...
src/pages/contract/funds/addbill/index.tsx
View file @
7effb3e1
...
...
@@ -87,7 +87,7 @@ const AddbillList: React.FC<{}> = () => {
// 状态, 1.待提交审核, 2.待审核(一级), 3.审核不通过(一级), 4.待审核(二级), 5.审核不通过(二级), 6.待提交财务付款, 7.待付款, 8.已付款, 9.已作废
// 删除:只有内部状态为待提交审核状态且从未提交审核的才可以删除,删除前需要提示,确认后才能删除
let
node
;
let
edit
=
<
span
style=
{
{
color
:
'#00B37A'
,
marginRight
:
20
,
cursor
:
'pointer'
,
}
}
onClick=
{
()
=>
history
.
push
(
`/memberCenter/contract/funds/
addbill/Add
?paymentId=${record.id}&type=edit`
)
}
>
修改
</
span
>;
let
edit
=
<
span
style=
{
{
color
:
'#00B37A'
,
marginRight
:
20
,
cursor
:
'pointer'
,
}
}
onClick=
{
()
=>
history
.
push
(
`/memberCenter/contract/funds/
editbill/edit
?paymentId=${record.id}&type=edit`
)
}
>
修改
</
span
>;
switch
(
record
.
status
)
{
case
1
:
node
=
edit
;
...
...
src/pages/contract/funds/editbill/components/index.css
0 → 100644
View file @
7effb3e1
.tag
{
padding
:
10px
15px
;
border
:
1px
solid
#E4E6EB
;
cursor
:
pointer
;
}
.tative
{
padding
:
10px
15px
;
background
:
#6B778C
;
color
:
#fff
;
cursor
:
pointer
;
}
.point
{
width
:
10px
;
height
:
10
ox
;
background
:
'#41CC9E'
;
display
:
'inline-block'
;
border-radius
:
'50%'
;
margin-right
:
10px
;
}
src/pages/contract/funds/editbill/components/index.less
0 → 100644
View file @
7effb3e1
.tag{
padding: 10px 15px;
border: 1px solid #E4E6EB;
cursor:pointer;
}
.tative{
padding: 10px 15px;
background: #6B778C;
color: #fff;
cursor:pointer;
}
.point {
width: 10px;
height: 10ox;
background: '#41CC9E';
display: 'inline-block';
border-radius: '50%';
margin-right: 10px;
}
src/pages/contract/funds/editbill/components/info.tsx
0 → 100644
View file @
7effb3e1
import
React
,
{
useRef
,
useState
,
useEffect
}
from
'react'
;
import
{
Button
,
Tabs
,
Table
,
Input
,
Form
,
Select
,
Drawer
,
DatePicker
,
}
from
'antd'
import
styles
from
'./index.less'
import
{
useRowSelectionTable
}
from
'@/hooks/useRowSelectionTable'
;
import
{
useStateFilterSearchLinkageEffect
}
from
'@/formSchema/effects/useFilterSearch'
import
{
LinkOutlined
,
}
from
'@ant-design/icons'
import
Submit
from
'@/components/NiceForm/components/Submit'
import
moment
from
'moment'
;
import
{
FORM_FILTER_PATH
}
from
'@/formSchema/const'
;
import
DateRangePickerUnix
from
'@/components/NiceForm/components/DateRangePickerUnix'
const
{
Search
,
TextArea
}
=
Input
import
{
StandardTable
}
from
'god'
;
import
{
PublicApi
}
from
'@/services/api'
;
const
{
Option
}
=
Select
;
import
{
Schema
}
from
"./schema"
import
style
from
'../../../constants/styles.less'
const
AddInfo
=
(
props
:
any
)
=>
{
const
{
currentRef
,
getcontractId
,
sourceType
,
paymentId
}
=
props
;
const
refs
=
useRef
({});
/* 显示弹出 */
const
[
attrValueForm
]
=
Form
.
useForm
();
const
[
visible
,
setvisible
]
=
useState
<
boolean
>
(
false
);
const
[
rowSelection
,
RowCtl
]
=
useRowSelectionTable
({
customKey
:
'id'
,
type
:
'radio'
});
const
[
account
,
setaccount
]
=
useState
<
string
>
(
''
);
const
[
isFalg
,
setisFalg
]
=
useState
(
false
);
/* 初始值 */
const
[
basics
,
setBasics
]
=
useState
<
any
>
({
id
:
0
,
//请款单id(为0代表新增)
applyAbstract
:
''
,
//请款单摘要
contractId
:
''
,
//合同id
payeeName
:
''
,
//收款账户
bankAccount
:
''
,
//银行账号
bankDeposit
:
''
,
//开户行
payPlanId
:
''
,
// 付款计划id
payRatio
:
''
,
// 付款比例
applyAmount
:
''
,
//请款金额
expectPayTime
:
''
,
//预计付款时间(yyyy-MM-dd)
payWay
:
''
,
//付款方式,1.现结,2.账期,3.月结
payParam
:
''
,
// 付款参数(账期天数请款日)
moneyPayWay
:
'2'
,
//支付方式:2.线下支付
moneyPayChannel
:
'5'
,
//支付渠道:5.线下支付线上确认
remark
:
''
,
//备注
})
const
[
Info
,
setInfo
]
=
useState
<
any
>
({
number
:
''
,
time
:
''
,
startTime
:
''
,
status
:
''
,
})
/* 付款阶段 */
const
[
payPlanList
,
setpayPlanList
]
=
useState
<
any
>
([]);
/* 选中设置值 */
const
[
Index
,
setIndex
]
=
useState
<
number
>
(
1
)
const
columnsList
:
any
=
[
{
title
:
'单据编号/摘要'
,
dataIndex
:
'contractNo'
,
align
:
'center'
,
render
:
(
text
,
record
)
=>
<
div
>
<
p
>
{
text
}
</
p
>
<
p
>
{
record
.
contractAbstract
}
</
p
>
</
div
>
},
{
title
:
'合同生效/失效时间'
,
dataIndex
:
'startTime'
,
align
:
'center'
,
sorter
:
{
compare
:
(
a
,
b
)
=>
a
.
demandPublishTime
-
b
.
demandPublishTime
,
multiple
:
1
,
},
render
:
(
text
,
record
)
=>
<
div
>
<
p
>
{
text
}
</
p
>
<
p
>
{
record
.
endTime
}
</
p
>
</
div
>
},
{
title
:
'合同乙方'
,
dataIndex
:
'partyBName'
,
align
:
'center'
,
},
{
title
:
'合同剩余金额'
,
dataIndex
:
'totalAmount'
,
align
:
'center'
,
render
:
(
text
)
=>
<
div
>
<
p
>
¥
{
text
}
</
p
>
</
div
>
},
{
title
:
'对应单据/寻源类型'
,
dataIndex
:
'sourceNo'
,
align
:
'center'
,
render
:
(
text
,
record
)
=>
<
div
>
<
p
>
{
text
}
</
p
>
<
p
>
{
record
.
sourceTypeName
}
</
p
>
</
div
>
},
]
const
[
applyAmount
,
setapplyAmount
]
=
useState
<
string
>
(
''
);
const
[
tag
,
setTag
]
=
useState
<
any
>
([]);
/**
* 选中值
*/
const
onSelectChange
=
(
e
,
key
)
=>
{
const
basic
=
basics
;
basics
[
key
]
=
e
;
setBasics
(
basic
);
}
/* 确认回显数据 */
const
Confirm
=
()
=>
{
let
selectRow
=
RowCtl
.
selectRow
[
0
];
getAmountOrder
(
selectRow
)
setvisible
(
!
visible
);
}
/* 查询银行卡新 */
const
getAmountOrder
=
(
selectRow
)
=>
{
PublicApi
.
getContractManageGetContractInfoByApplyAmountOrder
({
contractId
:
selectRow
.
id
}).
then
(
res
=>
{
const
basicsData
=
basics
;
const
info
=
Info
;
if
(
res
.
code
==
1000
)
{
if
(
res
.
data
.
payPlanList
.
length
!=
0
)
{
for
(
let
i
=
0
;
i
<
res
.
data
.
payPlanList
.
length
;
i
++
)
{
if
(
res
.
data
.
payPlanList
[
i
].
id
==
paymentId
)
{
console
.
log
(
1232131
);
const
expectPayTime
=
new
Date
(
res
.
data
.
payPlanList
[
i
].
expectPayTime
).
getTime
();
basicsData
.
payPlanId
=
res
.
data
.
payPlanList
[
i
].
id
;
basicsData
.
payRatio
=
res
.
data
.
payPlanList
[
i
].
payRatio
;
basicsData
.
expectPayTime
=
moment
(
expectPayTime
);
basicsData
.
payWay
=
res
.
data
.
payPlanList
[
i
].
payWay
;
basicsData
.
payParam
=
res
.
data
.
payPlanList
[
i
].
payParam
;
basicsData
.
applyAmount
=
res
.
data
.
payPlanList
[
i
].
payAmount
;
setapplyAmount
(
res
.
data
.
payPlanList
[
i
].
payAmount
)
setIndex
(
i
+
1
)
break
;
}
else
{
const
expectPayTime
=
new
Date
(
res
.
data
.
payPlanList
[
0
].
expectPayTime
).
getTime
();
basicsData
.
payPlanId
=
res
.
data
.
payPlanList
[
0
].
id
;
basicsData
.
payRatio
=
res
.
data
.
payPlanList
[
0
].
payRatio
;
basicsData
.
expectPayTime
=
moment
(
expectPayTime
);
basicsData
.
payWay
=
res
.
data
.
payPlanList
[
0
].
payWay
;
basicsData
.
payParam
=
res
.
data
.
payPlanList
[
0
].
payParam
;
basicsData
.
applyAmount
=
res
.
data
.
payPlanList
[
0
].
payAmount
;
setapplyAmount
(
res
.
data
.
payPlanList
[
0
].
payAmount
)
}
}
}
basicsData
.
contractNo
=
selectRow
.
contractNo
;
basicsData
.
contractId
=
selectRow
.
id
;
info
.
startTime
=
selectRow
.
startTime
;
basicsData
.
payeeName
=
res
.
data
.
corporateAccountConfig
.
name
;
basicsData
.
bankAccount
=
res
.
data
.
corporateAccountConfig
.
bankAccount
;
basicsData
.
bankDeposit
=
res
.
data
.
corporateAccountConfig
.
bankDeposit
;
info
.
status
=
"同意签订合同"
;
setpayPlanList
(
res
.
data
.
payPlanList
)
setInfo
(
info
)
/* 设置tab点击数组
* payWay 1 账期 2 月结 3 现结
*/
const
tagList
:
any
=
[];
res
.
data
.
payPlanList
.
map
((
item
,
index
)
=>
{
tagList
.
push
({
name
:
item
.
payWay
==
1
?
'账期'
:
item
.
payWay
==
2
?
'月结'
:
'现结'
,
payParam
:
item
.
payParam
,
Index
:
index
+
1
,
payWay
:
item
.
payWay
,
id
:
item
.
id
,
})
})
setTag
(
tagList
)
getcontractId
({
flag
:
sourceType
==
1
||
sourceType
==
2
?
false
:
true
,
selectRow
})
const
auth
=
JSON
.
parse
(
localStorage
.
getItem
(
'auth'
));
setaccount
(
auth
.
account
);
setBasics
(
basicsData
)
console
.
log
(
basicsData
,
'basicsData'
)
attrValueForm
.
setFieldsValue
(
basicsData
);
}
})
}
useEffect
(()
=>
{
if
(
sourceType
)
{
let
basics
=
JSON
.
parse
(
sessionStorage
.
getItem
(
'basics'
))
if
(
basics
)
{
getAmountOrder
(
basics
);
setisFalg
(
true
)
}
}
},
[])
useEffect
(()
=>
{
currentRef
.
current
=
{
get
:
()
=>
new
Promise
((
resolve
:
any
)
=>
{
attrValueForm
.
validateFields
().
then
(
res
=>
{
res
.
expectPayTime
=
moment
(
res
.
expectPayTime
).
format
(),
resolve
({
state
:
true
,
name
:
'basic'
,
data
:
Object
.
assign
(
basics
,
res
)
})
}).
catch
(
error
=>
{
if
(
error
&&
error
.
errorFields
)
{
}
})
})
}
})
/***
* @function fetchData 请求表格数据
**/
const
fetchData
=
(
params
:
any
)
=>
{
params
.
startTime
=
params
.
startTime
?
moment
().
format
(
'YYYY-MM-DD'
)
:
''
;
params
.
endTime
=
params
.
endTime
?
moment
().
format
(
'YYYY-MM-DD'
)
:
''
;
return
new
Promise
(
resolve
=>
{
PublicApi
.
getContractManagePageCompleteList
({
...
params
}).
then
(
res
=>
{
console
.
log
(
res
)
resolve
(
res
.
data
)
})
})
}
/* 切换请款金额 */
const
onSelect
=
(
e
)
=>
{
setBasicsKey
(
e
)
}
/* 切换 给对应的赋值 */
const
setBasicsKey
=
(
id
:
string
)
=>
{
let
key
:
any
=
{};
payPlanList
.
some
((
item
:
any
,
index
:
number
)
=>
{
item
.
Index
=
index
+
1
;
if
(
item
.
id
==
id
)
{
key
=
item
}
})
const
basicsData
=
basics
;
basicsData
.
applyAmount
=
key
.
payAmount
;
basicsData
.
payWay
=
key
.
payWay
;
basicsData
.
payPlanId
=
key
.
id
;
basicsData
.
expectPayTime
=
moment
(
key
.
expectPayTime
);
basicsData
.
payParam
=
key
.
payParam
;
basicsData
.
payRatio
=
key
.
payRatio
;
setBasics
(
basicsData
)
setIndex
(
key
.
Index
);
attrValueForm
.
setFieldsValue
(
basicsData
);
}
return
(
<
div
className=
{
style
.
revise_info
}
>
<
Form
form=
{
attrValueForm
}
name=
"edit_infomation"
layout=
"horizontal"
labelAlign=
"left"
colon=
{
false
}
autoComplete=
"off"
style=
{
{
width
:
'100%'
,
display
:
'flex'
,
justifyContent
:
'space-between'
}
}
>
<
div
style=
{
{
flex
:
1
,
}
}
>
{
/* <Form.Item label="请款单号" labelAlign="left" labelCol={{ span: 4 }} wrapperCol={{ span: 18 }}>
<span>{basics.applyAbstract}</span>
</Form.Item> */
}
<
Form
.
Item
label=
"请款单摘要"
labelAlign=
"left"
labelCol=
{
{
span
:
4
}
}
wrapperCol=
{
{
span
:
18
}
}
name=
"applyAbstract"
rules=
{
[
{
required
:
true
,
message
:
'请输入请款单摘要'
,
},
]
}
>
<
Input
placeholder=
'请输入请款单摘要'
/>
</
Form
.
Item
>
<
Form
.
Item
label=
"合同编号"
labelAlign=
"left"
labelCol=
{
{
span
:
4
}
}
name=
"contractNo"
wrapperCol=
{
{
span
:
18
}
}
>
{
isFalg
?
<
Input
placeholder=
'最长60个字符,30个汉字'
disabled
/>
:
<
Search
placeholder=
"最长60个字符,30个汉字"
readOnly
enterButton=
{
<
div
onClick=
{
()
=>
setvisible
(
!
visible
)
}
><
LinkOutlined
/>
选择
</
div
>
}
/>
}
</
Form
.
Item
>
<
Form
.
Item
label=
"收款方"
labelAlign=
"left"
labelCol=
{
{
span
:
4
}
}
wrapperCol=
{
{
span
:
18
}
}
>
<
span
>
{
account
}
</
span
>
</
Form
.
Item
>
<
Form
.
Item
label=
"收款账号"
labelAlign=
"left"
labelCol=
{
{
span
:
4
}
}
wrapperCol=
{
{
span
:
18
}
}
>
<
span
>
{
basics
.
payeeName
}
</
span
>
</
Form
.
Item
>
<
Form
.
Item
label=
"银行卡号"
labelAlign=
"left"
labelCol=
{
{
span
:
4
}
}
wrapperCol=
{
{
span
:
18
}
}
>
<
span
>
{
basics
.
bankAccount
}
</
span
>
</
Form
.
Item
>
<
Form
.
Item
label=
"开户行"
labelAlign=
"left"
labelCol=
{
{
span
:
4
}
}
wrapperCol=
{
{
span
:
18
}
}
>
<
span
>
{
basics
.
bankDeposit
}
</
span
>
</
Form
.
Item
>
<
Form
.
Item
label=
"合同付款阶段"
labelAlign=
"left"
name=
"payPlanId"
initialValue=
{
basics
.
payPlanId
}
labelCol=
{
{
span
:
4
}
}
wrapperCol=
{
{
span
:
18
}
}
>
<
Select
onChange=
{
(
e
)
=>
onSelect
(
e
)
}
>
{
payPlanList
.
map
(
item
=>
(
<
Option
value=
{
item
.
id
}
key=
{
item
.
id
}
>
{
item
.
payStage
}
</
Option
>
))
}
</
Select
>
</
Form
.
Item
>
<
Form
.
Item
label=
"合同付款比例"
labelAlign=
"left"
labelCol=
{
{
span
:
4
}
}
name=
"payRatio"
wrapperCol=
{
{
span
:
18
}
}
initialValue=
{
basics
.
payRatio
}
>
<
Input
addonAfter=
"%"
/>
</
Form
.
Item
>
<
Form
.
Item
label=
"请款金额"
name=
"applyAmount"
labelAlign=
"left"
initialValue=
{
applyAmount
}
labelCol=
{
{
span
:
4
}
}
wrapperCol=
{
{
span
:
18
}
}
rules=
{
[
{
required
:
true
,
message
:
'请输入请款金额'
,
},
]
}
>
<
Input
addonAfter=
"元"
/>
</
Form
.
Item
>
<
Form
.
Item
label=
"预计付款时间"
labelAlign=
"left"
labelCol=
{
{
span
:
4
}
}
wrapperCol=
{
{
span
:
18
}
}
name=
"expectPayTime"
>
<
DatePicker
style=
{
{
width
:
'100%'
}
}
format=
"YYYY-MM-DD"
/>
</
Form
.
Item
>
{
/* tag */
}
{
tag
.
length
!=
0
&&
<>
<
Form
.
Item
label=
"付款方式"
labelAlign=
"left"
labelCol=
{
{
span
:
4
}
}
wrapperCol=
{
{
span
:
18
}
}
>
{
tag
.
map
((
item
:
any
)
=>
{
return
(
<
span
className=
{
item
.
Index
==
Index
?
styles
.
tative
:
styles
.
tag
}
onClick=
{
()
=>
setBasicsKey
(
item
.
id
)
}
key=
{
item
.
Index
}
>
{
item
.
name
}
</
span
>
)
})
}
</
Form
.
Item
>
<
Form
.
Item
label=
" "
labelAlign=
"left"
labelCol=
{
{
span
:
4
}
}
wrapperCol=
{
{
span
:
18
}
}
>
{
/* * payWay 1 账期 2 月结 3 现结 */
}
<
Input
addonAfter=
{
Index
===
2
?
'天'
:
Index
===
3
?
'号'
:
null
}
value=
{
tag
[
Index
-
1
].
name
===
'现结'
?
''
:
tag
[
Index
-
1
].
payParam
}
disabled=
{
tag
[
Index
-
1
].
name
===
'现结'
?
true
:
false
}
/>
</
Form
.
Item
>
</>
}
<
Form
.
Item
label=
"支付方式"
labelAlign=
"left"
labelCol=
{
{
span
:
4
}
}
wrapperCol=
{
{
span
:
18
}
}
>
<
div
style=
{
{
display
:
'flex'
,
justifyContent
:
'space-between'
,
}
}
>
<
Select
onChange=
{
(
e
)
=>
onSelectChange
(
e
,
'moneyPayWay'
)
}
value=
{
basics
.
moneyPayWay
}
style=
{
{
width
:
'290px'
,
// marginRight: 20,
}
}
>
<
Option
value=
"2"
key=
{
2
}
>
线下支付
</
Option
>
</
Select
>
<
Select
onChange=
{
(
e
)
=>
onSelectChange
(
e
,
'moneyPayChannel'
)
}
value=
{
basics
.
moneyPayChannel
}
style=
{
{
width
:
'290px'
}
}
>
<
Option
value=
"5"
key=
{
5
}
>
线下支付线上确认
</
Option
>
</
Select
>
</
div
>
</
Form
.
Item
>
</
div
>
<
div
style=
{
{
flex
:
1
,
}
}
>
<
Form
.
Item
label=
"请款备注"
labelAlign=
"left"
name=
"remark"
labelCol=
{
{
span
:
4
}
}
wrapperCol=
{
{
span
:
18
}
}
rules=
{
[
{
required
:
true
,
message
:
'请输入请款备注'
,
},
]
}
>
<
TextArea
placeholder=
'最长160字符,80个汉字'
maxLength=
{
160
}
style=
{
{
height
:
72
}
}
/>
</
Form
.
Item
>
{
/* <Form.Item label="发票编号" labelAlign="left" labelCol={{ span: 4 }} wrapperCol={{ span: 18 }}>
<span>{Info.number}</span>
</Form.Item>
<Form.Item label="开票日期" labelAlign="left" labelCol={{ span: 4 }} wrapperCol={{ span: 18 }}>
<span>{Info.time}</span>
</Form.Item> */
}
<
Form
.
Item
label=
"单据时间"
labelAlign=
"left"
labelCol=
{
{
span
:
4
}
}
wrapperCol=
{
{
span
:
18
}
}
>
<
span
>
{
Info
.
startTime
}
</
span
>
</
Form
.
Item
>
<
Form
.
Item
label=
"内部状态"
labelAlign=
"left"
labelCol=
{
{
span
:
4
}
}
wrapperCol=
{
{
span
:
18
}
}
>
<
span
>
{
Info
.
status
}
</
span
>
</
Form
.
Item
>
</
div
>
</
Form
>
{
/* 选择弹出内容 */
}
<
Drawer
visible=
{
visible
}
onClose=
{
()
=>
setvisible
(
!
visible
)
}
title=
"选择采购合同"
width=
{
900
}
footer=
{
<
div
style=
{
{
textAlign
:
'right'
,
}
}
>
<
Button
onClick=
{
()
=>
setvisible
(
!
visible
)
}
style=
{
{
marginRight
:
8
}
}
>
取消
</
Button
>
<
Button
type=
"primary"
onClick=
{
()
=>
Confirm
()
}
>
确定
</
Button
>
</
div
>
}
destroyOnClose
>
<
StandardTable
tableProps=
{
{
rowKey
:
'id'
,
}
}
rowKey=
"id"
columns=
{
columnsList
}
currentRef=
{
refs
}
rowSelection=
{
rowSelection
}
fetchTableData=
{
(
params
:
any
)
=>
fetchData
(
params
)
}
formilyProps=
{
{
ctx
:
{
inline
:
false
,
schema
:
Schema
,
effects
:
(
$
,
actions
)
=>
{
useStateFilterSearchLinkageEffect
(
$
,
actions
,
'contractNo'
,
FORM_FILTER_PATH
,
);
},
components
:
{
DateRangePickerUnix
,
Submit
}
}
}
}
/>
</
Drawer
>
</
div
>
)
}
export
default
AddInfo
;
src/pages/contract/funds/editbill/components/schema/index.ts
0 → 100644
View file @
7effb3e1
import
{
FORM_FILTER_PATH
}
from
'@/formSchema/const'
;
export
const
Schema
:
any
=
{
type
:
'object'
,
properties
:
{
contractNo
:
{
type
:
'string'
,
"x-component"
:
'SearchFilter'
,
'x-component-props'
:
{
placeholder
:
'请输入搜索合同编号'
,
align
:
'start'
,
},
},
[
FORM_FILTER_PATH
]:
{
type
:
'object'
,
'x-component'
:
'flex-layout'
,
'x-component-props'
:
{
inline
:
true
,
colStyle
:
{
marginRight
:
20
}
},
properties
:
{
"contractAbstract"
:
{
type
:
'string'
,
"x-component-props"
:
{
placeholder
:
'请款单摘要'
}
},
"[startTime,endTime]"
:
{
type
:
'array'
,
"x-component"
:
'DateRangePickerUnix'
,
'x-component-props'
:
{
placeholder
:
[
'开始时间'
,
'结束时间'
],
format
:
'YYYY-MM-DD HH:mm:ss'
,
// disabledDate: current => {
// console.log(current);
// return current && current < moment().startOf('day')
// }
},
},
"awardName"
:
{
type
:
'string'
,
"x-component-props"
:
{
placeholder
:
'请输入收款方'
}
},
submit
:
{
'x-component'
:
'Submit'
,
'x-component-props'
:
{
children
:
'查询'
,
},
},
},
},
}
}
src/pages/contract/funds/editbill/components/table.tsx
0 → 100644
View file @
7effb3e1
import
React
,
{
useState
,
useRef
,
useEffect
}
from
'react'
;
import
{
Button
,
Table
,
Input
,
Space
,
Drawer
,
Typography
}
from
'antd'
import
styles
from
'./index.less'
import
{
useRowSelectionTable
}
from
'@/hooks/useRowSelectionTable'
;
import
{
useStateFilterSearchLinkageEffect
}
from
'@/formSchema/effects/useFilterSearch'
import
{
StandardTable
}
from
'god'
;
import
{
FORM_FILTER_PATH
}
from
'@/formSchema/const'
;
import
Submit
from
'@/components/NiceForm/components/Submit'
import
DateRangePickerUnix
from
'@/components/NiceForm/components/DateRangePickerUnix'
import
{
Schema
}
from
"./schema"
import
moment
from
'moment'
;
import
{
PlusOutlined
}
from
'@ant-design/icons'
import
{
PublicApi
}
from
'@/services/api'
;
const
{
Text
}
=
Typography
;
const
table
=
(
props
:
any
)
=>
{
const
{
flag
,
id
,
currentRef
,
sourceType
}
=
props
;
const
refs
=
useRef
({});
/**
* @param visible 显示添加对应单据状态
* @param rowSelection 选中弹出单选对应一条值
* @param toorderAmount 已付款总金额
* @param applyAmount 请款总金额
* @param PlanList 付款计划
* @param tabcolumns 单据表格
*/
const
[
visible
,
setvisible
]
=
useState
<
boolean
>
(
false
);
// const [rowSelection, RowCtl] = useRowSelectionTable({ customKey: 'orderId' });
const
[
toorderAmount
,
settoorderAmount
]
=
useState
<
number
>
(
0
);
const
[
topayAmount
,
settopayAmount
]
=
useState
<
number
>
(
0
);
const
[
tounPayApplyAmount
,
settounPayApplyAmount
]
=
useState
<
number
>
(
0
);
const
[
payAmount
,
setpayAmount
]
=
useState
<
number
>
(
0
)
const
[
applyAmount
,
setapplyAmount
]
=
useState
<
number
>
(
0
)
const
[
PlanList
,
setPlanList
]
=
useState
<
any
>
([]);
const
tabcolumns
:
any
=
[
{
title
:
'单据编号/摘要'
,
dataIndex
:
'applyNo'
,
align
:
'center'
,
render
:
(
text
,
record
)
=>
<
div
>
<
div
>
{
text
}
</
div
>
{
/* <p>{record.applyAbstract}</p> */
}
</
div
>
},
{
title
:
'订单类型'
,
dataIndex
:
'orderTypeName'
,
align
:
'center'
,
render
:
(
text
)
=>
<
div
>
<
div
>
{
text
}
</
div
>
</
div
>
},
{
title
:
'单据状态'
,
dataIndex
:
'outerStatusName'
,
align
:
'center'
,
render
:
(
text
)
=>
<
div
>
<
div
>
{
text
}
</
div
>
</
div
>
},
{
title
:
'单据时间'
,
dataIndex
:
'orderTime'
,
align
:
'center'
,
},
{
title
:
(
<
Space
direction=
'vertical'
>
<
Text
>
单据金额
</
Text
>
<
Text
>
合计: ¥
{
toorderAmount
}
</
Text
>
</
Space
>
),
dataIndex
:
'orderAmount'
,
align
:
'center'
,
render
:
(
text
,
record
)
=>
<
div
>
<
div
>
¥
{
record
.
orderType
==
2
?
`-${text}`
:
text
}
</
div
>
</
div
>
},
{
title
:
'含税/税率'
,
dataIndex
:
'taxRate'
,
align
:
'left'
,
render
:
(
text
,
record
)
=>
<
div
>
<
div
>
{
record
.
isHasTax
?
'是'
:
'否'
}
</
div
>
<
div
>
%
{
text
}
</
div
>
</
div
>
},
{
dataIndex
:
'payAmount'
,
align
:
'center'
,
title
:
(
<
Space
direction=
'vertical'
>
<
Text
>
已付款
</
Text
>
<
Text
>
合计: ¥
{
topayAmount
}
</
Text
>
</
Space
>
),
render
:
(
text
,
record
)
=>
<
div
>
<
div
>
¥
{
text
?
text
:
0
}
</
div
>
</
div
>
},
{
dataIndex
:
'unPayApplyAmount'
,
align
:
'center'
,
title
:
(
<
Space
direction=
'vertical'
>
<
Text
>
已请款待付款
</
Text
>
<
Text
>
合计: ¥
{
tounPayApplyAmount
}
</
Text
>
</
Space
>
),
render
:
(
text
,
record
)
=>
<
div
>
<
div
>
¥
{
text
?
text
:
0
}
</
div
>
</
div
>
},
{
dataIndex
:
'applyAmount'
,
align
:
'center'
,
title
:
(
<
Space
direction=
'vertical'
>
<
Text
>
请款金额
</
Text
>
<
Text
>
合计: ¥
{
applyAmount
}
</
Text
>
</
Space
>
),
render
:
(
_
,
item
,
index
)
=>
<
Input
addonBefore=
"¥"
style=
{
{
width
:
130
,
}
}
placeholder=
""
onChange=
{
(
e
)
=>
onSelectChange
(
e
,
'applyAmount'
,
index
)
}
onBlur=
{
()
=>
Amount
()
}
/>
},
{
title
:
'操作'
,
dataIndex
:
''
,
align
:
'center'
,
render
:
(
_
,
item
,
index
)
=>
<
a
onClick=
{
()
=>
Delete
(
item
,
index
)
}
>
删除
</
a
>,
}
];
const
[
selectRow
,
setSelectRow
]
=
useState
<
any
[]
>
([])
// 模态框选择的行数据
const
[
selectedRowKeys
,
setSelectedRowKeys
]
=
useState
<
Array
<
string
>>
([])
const
rowSelection
:
any
=
{
selectedRowKeys
:
selectedRowKeys
,
onChange
:
(
selectedRowKeys
:
any
,
selectedRows
:
any
)
=>
{
setSelectRow
(
selectedRows
)
setSelectedRowKeys
(
selectedRowKeys
)
console
.
log
(
selectedRowKeys
,
selectedRows
,
'rowSelection'
)
}
};
const
onSelectChange
=
(
e
,
name
,
idx
)
=>
{
let
item
=
[...
PlanList
];
console
.
log
(
PlanList
)
switch
(
name
)
{
case
'applyAmount'
:
item
[
idx
].
applyAmount
=
e
.
target
.
value
;
break
;
}
console
.
log
(
item
);
setPlanList
(
item
)
}
/* 计算金额 */
const
Amount
=
()
=>
{
// bidCount
let
tounPayApplyAmount
=
0
;
let
toorderAmount
=
0
;
// 单据金额
let
topayAmount
=
0
;
let
payAmount
=
0
;
// 已付款
let
applyAmount
=
0
;
PlanList
.
map
(
item
=>
{
toorderAmount
+=
item
.
orderAmount
;
tounPayApplyAmount
+=
item
.
unPayApplyAmount
?
item
.
unPayApplyAmount
:
0
;
topayAmount
+=
item
.
payAmount
?
Number
(
item
.
payAmount
)
:
0
;
payAmount
+=
item
.
payAmount
?
item
.
payAmount
:
0
;
applyAmount
+=
item
.
applyAmount
?
Number
(
item
.
applyAmount
)
:
0
})
settopayAmount
(
topayAmount
)
setpayAmount
(
payAmount
)
setapplyAmount
(
applyAmount
)
settounPayApplyAmount
(
tounPayApplyAmount
)
settoorderAmount
(
toorderAmount
)
}
/* 删除 */
const
Delete
=
(
elm
,
idx
)
=>
{
const
dataSource
=
[...
PlanList
];
let
List
=
dataSource
.
filter
((
item
,
index
)
=>
index
!==
idx
);
setPlanList
(
List
)
};
const
columnsList
:
any
=
[
{
title
:
'单据编号/摘要'
,
dataIndex
:
'applyNo'
,
align
:
'center'
,
render
:
(
text
,
record
)
=>
<
div
>
<
div
>
{
text
}
</
div
>
<
div
>
{
record
.
applyAbstract
}
</
div
>
</
div
>
},
{
title
:
'单据类型'
,
dataIndex
:
'orderTypeName'
,
align
:
'center'
,
render
:
(
text
,
record
)
=>
<
div
>
<
div
>
{
text
}
</
div
>
</
div
>
},
{
title
:
'单据时间'
,
dataIndex
:
'orderTime'
,
align
:
'center'
,
},
{
title
:
'单据状态'
,
dataIndex
:
'outerStatusName'
,
align
:
'center'
,
render
:
(
text
)
=>
<
div
>
<
div
>
{
text
}
</
div
>
</
div
>
},
{
title
:
'单据金额'
,
dataIndex
:
'orderAmount'
,
align
:
'center'
,
render
:
(
text
,
record
)
=>
<
div
>
<
div
>
¥
{
text
}
</
div
>
</
div
>
},
{
title
:
'待请款'
,
dataIndex
:
'toBePayAmount'
,
align
:
'center'
,
render
:
(
text
,
record
)
=>
<
div
>
<
div
>
¥
{
text
}
</
div
>
</
div
>
},
]
/***
* @function fetchData 请求表格数据
**/
const
fetchData
=
(
params
:
any
)
=>
{
params
.
contractId
=
id
;
return
new
Promise
(
resolve
=>
{
PublicApi
.
getContractApplyAmountContractOrderPageList
({
...
params
}).
then
(
res
=>
{
if
(
res
.
code
==
1000
)
{
if
(
res
.
data
.
data
)
{
res
.
data
.
data
.
findIndex
((
item
,
index
)
=>
{
item
.
orderTime
=
item
.
orderTime
?
moment
().
format
(
'YYYY-MM-DD'
)
:
''
;
item
.
keyId
=
index
+
1
;
})
}
}
resolve
(
res
.
data
)
})
})
}
const
Confirm
=
()
=>
{
setPlanList
(
selectRow
)
setvisible
(
false
)
Amount
()
}
useEffect
(()
=>
{
currentRef
.
current
=
{
get
:
()
=>
new
Promise
((
resolve
:
any
)
=>
{
let
data
=
[];
console
.
log
(
PlanList
)
PlanList
.
map
((
item
:
any
)
=>
{
data
.
push
(
{
id
:
0
,
applyAmount
:
item
.
applyAmount
,
orderId
:
item
.
orderId
,
orderNO
:
item
.
applyNo
,
isHasTax
:
item
.
isHasTax
,
taxRate
:
item
.
taxRate
,
executeId
:
item
.
id
?
item
.
id
:
''
,
}
)
})
resolve
(
data
)
})
}
})
useEffect
(()
=>
{
let
PlanList
=
JSON
.
parse
(
sessionStorage
.
getItem
(
'list'
))
console
.
log
(
PlanList
,
sourceType
)
if
(
sourceType
==
2
)
{
PlanList
.
map
((
item
)
=>
{
item
.
applyNo
=
item
.
orderNO
;
item
.
outerStatusName
=
item
.
orderStatusName
;
// item.isHasTax = item.isHasTax == '是' ? 1 : 0;
})
setPlanList
(
PlanList
)
}
},
[])
return
(
<
div
className=
"table"
>
{
flag
&&
<
div
style=
{
{
padding
:
15
,
}
}
onClick=
{
()
=>
setvisible
(
!
visible
)
}
>
<
Button
block
type=
'dashed'
><
PlusOutlined
/>
选择待请款单据
</
Button
>
</
div
>
}
<
Table
columns=
{
tabcolumns
}
dataSource=
{
PlanList
}
rowKey=
"keyId"
style=
{
{
width
:
"100%"
}
}
pagination=
{
false
}
/>
{
/* 选择弹出内容 */
}
<
Drawer
visible=
{
visible
}
onClose=
{
()
=>
setvisible
(
!
visible
)
}
title=
"选择采购合同"
width=
{
900
}
footer=
{
<
div
style=
{
{
textAlign
:
'right'
,
}
}
>
<
Button
onClick=
{
()
=>
setvisible
(
!
visible
)
}
style=
{
{
marginRight
:
8
}
}
>
取消
</
Button
>
<
Button
type=
"primary"
onClick=
{
()
=>
Confirm
()
}
>
确定
</
Button
>
</
div
>
}
destroyOnClose
>
<
StandardTable
tableProps=
{
{
rowKey
:
'keyId'
,
}
}
columns=
{
columnsList
}
currentRef=
{
refs
}
rowSelection=
{
rowSelection
}
fetchTableData=
{
(
params
:
any
)
=>
fetchData
(
params
)
}
formilyProps=
{
{
ctx
:
{
inline
:
false
,
schema
:
Schema
,
effects
:
(
$
,
actions
)
=>
{
useStateFilterSearchLinkageEffect
(
$
,
actions
,
'contractNo'
,
FORM_FILTER_PATH
,
);
},
components
:
{
DateRangePickerUnix
,
Submit
}
}
}
}
/>
</
Drawer
>
</
div
>
)
}
export
default
table
;
src/pages/contract/funds/editbill/index.tsx
0 → 100644
View file @
7effb3e1
import
React
,
{
useState
,
useRef
,
useEffect
}
from
'react'
import
{
history
}
from
'umi'
;
import
{
PageHeaderWrapper
}
from
'@ant-design/pro-layout'
;
import
{
Card
,
Tabs
,
Button
}
from
'antd'
;
import
{
createFormActions
}
from
'@formily/antd'
;
import
{
SaveOutlined
,
}
from
'@ant-design/icons'
import
AddInfo
from
'./components/info'
import
ReutrnEle
from
'@/components/ReturnEle'
;
import
InfoTable
from
'./components/table'
import
{
PublicApi
}
from
'@/services/api'
;
const
formActions
=
createFormActions
();
const
{
TabPane
}
=
Tabs
;
const
Editbill
:
React
.
FC
<
{}
>
=
(
props
:
any
)
=>
{
const
{
location
:
{
query
:
{
sourceType
,
paymentId
,
type
}
}
}
=
props
;
console
.
log
(
type
)
const
currentBasic
=
useRef
<
any
>
({});
const
detailData
=
useRef
<
any
>
({});
const
[
flag
,
setflag
]
=
useState
<
any
>
(
false
);
const
[
id
,
setid
]
=
useState
(
''
);
/* 判断是不是手工单 */
const
getflag
=
(
data
)
=>
{
setflag
(
data
.
flag
)
setid
(
data
.
selectRow
.
id
)
}
const
TabList
=
[
{
name
:
'基本信息'
,
components
:
<
AddInfo
currentRef=
{
currentBasic
}
getcontractId=
{
getflag
}
sourceType=
{
sourceType
}
paymentId=
{
paymentId
}
type=
{
type
}
/>
},
{
name
:
'请款明细'
,
components
:
<
InfoTable
flag=
{
flag
}
id=
{
id
}
currentRef=
{
detailData
}
sourceType=
{
sourceType
}
/>
},
]
const
submit
=
async
()
=>
{
const
basicsVO
=
await
currentBasic
.
current
.
get
();
const
detailList
=
await
Object
.
keys
(
detailData
.
current
).
length
!=
0
?
await
detailData
.
current
.
get
()
:
[];
basicsVO
.
data
.
sourceType
=
sourceType
?
sourceType
:
3
;
let
data
=
{
basics
:
basicsVO
.
data
,
detailList
:
detailList
,
}
PublicApi
.
postContractApplyAmountSave
(
data
).
then
(
res
=>
{
console
.
log
(
res
);
if
(
res
.
code
===
1000
)
{
history
.
push
(
'/memberCenter/contract/funds/addbill'
)
}
})
}
return
(
<
PageHeaderWrapper
title=
"修改请款单"
onBack=
{
()
=>
history
.
goBack
()
}
backIcon=
{
<
ReutrnEle
description=
"返回"
/>
}
extra=
{
[
<
Button
key=
"1"
type=
"primary"
icon=
{
<
SaveOutlined
/>
}
onClick=
{
()
=>
submit
()
}
>
保存
</
Button
>
]
}
>
<
Card
>
<
Tabs
defaultActiveKey=
"0"
type=
"card"
size=
"small"
>
{
TabList
.
map
((
item
,
index
)
=>
(
<
TabPane
tab=
{
item
.
name
}
key=
{
index
}
>
{
item
.
components
}
</
TabPane
>
))
}
</
Tabs
>
</
Card
>
</
PageHeaderWrapper
>
)
}
export
default
Editbill
src/pages/contract/manage/add/components/FormList.tsx
View file @
7effb3e1
...
...
@@ -77,7 +77,9 @@ const FormList = (props: any) => {
parmas
.
submitTenderId
=
Row
.
bidId
;
fn
=
PublicApi
.
getPurchaseSubmitTenderMaterielGetSubmitTenderMaterielList
}
else
{
fn
=
PublicApi
.
getProductGoodsGetGoodsList
parmas
.
id
=
Row
.
viePriceId
fn
=
PublicApi
.
getPurchaseBiddingPrizeMaterielPage
}
console
.
log
(
sourceType
)
...
...
@@ -87,21 +89,22 @@ const FormList = (props: any) => {
if
(
res
.
code
===
1000
)
{
let
data
=
res
.
data
.
data
.
map
(
item
=>
{
return
{
code
:
sourceType
==
'1'
?
item
.
number
:
sourceType
==
'2'
?
item
.
inviteTenderMateriel
.
code
:
''
,
// 物料编号
name
:
sourceType
==
'1'
?
item
.
name
:
sourceType
==
'2'
?
item
.
inviteTenderMateriel
.
name
:
''
,
// 物料名称
type
:
sourceType
==
'1'
?
item
.
model
:
sourceType
==
'2'
?
item
.
inviteTenderMateriel
.
type
:
''
,
// 物料规格
customerCategory
:
{
code
:
sourceType
==
'1'
?
item
.
number
:
sourceType
==
'2'
?
item
.
inviteTenderMateriel
.
code
:
item
.
number
,
// 物料编号
name
:
sourceType
==
'1'
?
item
.
name
:
sourceType
==
'2'
?
item
.
inviteTenderMateriel
.
name
:
item
.
name
,
// 物料名称
type
:
sourceType
==
'1'
?
item
.
model
:
sourceType
==
'2'
?
item
.
inviteTenderMateriel
.
type
:
item
.
model
,
// 物料规格
customerCategory
:
{
// 品类
name
:
sourceType
==
'1'
?
item
.
category
:
sourceType
==
'2'
?
item
.
inviteTenderMateriel
.
brandName
:
''
,
id
:
sourceType
==
'1'
?
item
.
goodsId
:
sourceType
==
'2'
?
item
.
inviteTenderMateriel
.
categoryId
[
0
]
:
''
category
:
item
.
category
?
item
.
category
:
''
,
id
:
sourceType
==
'1'
?
item
.
goodsId
:
sourceType
==
'2'
?
item
.
inviteTenderMateriel
.
categoryId
[
0
]
:
item
.
ids
[
0
],
},
brand
:
{
name
:
sourceType
==
'1'
?
item
.
brand
:
sourceType
==
'2'
?
item
.
inviteTenderMateriel
.
categoryName
:
''
},
unitName
:
sourceType
==
'1'
?
item
.
unit
:
sourceType
==
'2'
?
item
.
inviteTenderMateriel
.
unitName
:
''
,
//单位
purchaseCount
:
sourceType
==
'1'
?
item
.
purchaseCount
:
sourceType
==
'2'
?
item
.
inviteTenderMateriel
.
count
:
''
,
// 数量
isHasTax
:
sourceType
==
'1'
?
item
.
isTax
:
sourceType
==
'2'
?
item
.
isTax
?
1
:
0
:
''
,
taxRate
:
sourceType
==
'1'
?
item
.
taxProbability
:
sourceType
==
'2'
?
item
.
taxRate
:
''
,
price
:
sourceType
==
'1'
?
item
.
taxUnitPrice
:
sourceType
==
'2'
?
item
.
price
:
''
,
bidCount
:
sourceType
==
'1'
?
item
.
awardTaxProbability
*
item
.
purchaseCount
/
100
:
sourceType
==
'2'
?
item
.
awardTenderRatio
*
item
.
inviteTenderMateriel
.
count
/
100
:
''
,
bidAmount
:
sourceType
==
'1'
?
item
.
awardTaxProbability
*
item
.
purchaseCount
/
100
*
item
.
taxUnitPrice
:
sourceType
==
'2'
?
item
.
awardTenderRatio
*
item
.
inviteTenderMateriel
.
count
/
100
*
item
.
price
:
''
,
brand
:
{
name
:
sourceType
==
'1'
?
item
.
brand
:
sourceType
==
'2'
?
item
.
inviteTenderMateriel
.
categoryName
:
item
.
brand
},
// 品牌
unitName
:
sourceType
==
'1'
?
item
.
unit
:
sourceType
==
'2'
?
item
.
inviteTenderMateriel
.
unitName
:
item
.
unitPrice
,
//单位
purchaseCount
:
sourceType
==
'1'
?
item
.
purchaseCount
:
sourceType
==
'2'
?
item
.
inviteTenderMateriel
.
count
:
item
.
purchaseCount
,
// 数量
isHasTax
:
sourceType
==
'1'
?
item
.
isTax
:
sourceType
==
'2'
?
item
.
isTax
?
1
:
0
:
item
.
isTax
?
1
:
0
,
// 是否函税
taxRate
:
sourceType
==
'1'
?
item
.
taxProbability
:
sourceType
==
'2'
?
item
.
taxRate
:
item
.
taxRate
,
//税率
price
:
sourceType
==
'1'
?
item
.
taxUnitPrice
:
item
.
price
,
// 单价
bidCount
:
sourceType
==
'1'
?
item
.
awardTaxProbability
*
item
.
purchaseCount
/
100
:
sourceType
==
'2'
?
item
.
awardTenderRatio
*
item
.
inviteTenderMateriel
.
count
/
100
:
item
.
purchaseCount
,
bidAmount
:
sourceType
==
'1'
?
item
.
awardTaxProbability
*
item
.
purchaseCount
/
100
*
item
.
taxUnitPrice
:
sourceType
==
'2'
?
item
.
awardTenderRatio
*
item
.
inviteTenderMateriel
.
count
/
100
*
item
.
price
:
item
.
price
,
associatedDataId
:
sourceType
==
'1'
?
item
.
productId
:
sourceType
==
'2'
?
item
.
commodityId
:
''
,
// 关联商品id
associatedMaterielNo
:
sourceType
==
'1'
?
item
.
number
:
sourceType
==
'2'
?
item
.
inviteTenderMateriel
.
code
:
''
,
// 关联物料编号
associatedMaterielName
:
sourceType
==
'1'
?
item
.
productName
:
sourceType
==
'2'
?
item
.
commodityName
:
''
,
// 关联商品名称
...
...
@@ -127,7 +130,7 @@ const FormList = (props: any) => {
{
title
:
'品类'
,
dataIndex
:
'customerCategory'
,
align
:
'center'
,
render
:
(
text
,
item
)
=>
<
span
>
{
item
.
customerCategory
.
name
?
item
.
customerCategory
.
name
:
''
}
</
span
>
<
span
>
{
item
.
customerCategory
.
name
?
item
.
customerCategory
.
name
:
item
.
customerCategory
.
category
}
</
span
>
},
{
title
:
'品牌'
,
dataIndex
:
'brand'
,
align
:
'center'
,
...
...
src/pages/contract/manage/auction/index.tsx
View file @
7effb3e1
...
...
@@ -105,12 +105,26 @@ const Auction = () => {
render
:
(
_
,
record
)
=>
{
return
(
<
div
>
<
span
style=
{
{
color
:
'#00B37A'
,
cursor
:
'pointer'
,
marginRight
:
10
}
}
onClick=
{
()
=>
history
.
push
(
`/memberCenter/contract/manage/add/addList/contracAdd?contractId=${record.id}&sourceType=3`
)
}
>
创建采购竞价合同
</
span
>
<
span
style=
{
{
color
:
'#00B37A'
,
cursor
:
'pointer'
,
marginRight
:
10
}
}
onClick=
{
()
=>
Like
(
record
)
}
>
创建采购竞价合同
</
span
>
{
/* <span style={{ color: '#00B37A', cursor: 'pointer' }} onClick={() => history.push(`/memberCenter/contract/manage/Auction/details?contractId=${record.id}`)}> 查看 </span> */
}
</
div
>
)
}
}]
const
Like
=
(
record
)
=>
{
record
.
sourceId
=
record
.
viePriceId
;
record
.
sourceNo
=
record
.
viePriceNO
;
record
.
totalAmount
=
record
.
awardAmount
;
record
.
partyBMemberId
=
record
.
awardMemberId
;
record
.
partyBRoleId
=
record
.
awardRoleId
;
record
.
partyBName
=
record
.
awardName
;
record
.
sourceType
=
"3"
;
sessionStorage
.
setItem
(
'record'
,
JSON
.
stringify
(
record
));
console
.
log
(
record
);
// return;
history
.
push
(
`/memberCenter/contract/manage/add/addList/contracAdd?contractId=
${
record
.
id
}
&sourceType=3`
)
}
const
getdate
=
(
time
)
=>
{
return
new
Date
(
Date
.
parse
(
time
.
replace
(
/-/g
,
"/"
))).
getTime
()
/
1000
;
}
...
...
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