Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
J
jinfa-platform
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
shenshaokai
jinfa-platform
Commits
a00f45dd
Commit
a00f45dd
authored
Nov 23, 2020
by
Bill
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'dev' of 10.0.0.22:lingxi/lingxi-business-paltform into dev
parents
df94782e
6f33f0b1
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
539 additions
and
76 deletions
+539
-76
demandPosts.ts
config/routes/tranactionRoute/demandPosts.ts
+8
-1
templateForm.tsx
src/pages/logistics/list/components/templateForm.tsx
+3
-1
tableStatusList.tsx
src/pages/transaction/common/tableStatusList.tsx
+1
-1
productModal.tsx
...ages/transaction/enquiryOffer/components/productModal.tsx
+2
-2
detail.tsx
src/pages/transaction/enquiryOffer/toAddSubmit/detail.tsx
+13
-22
addGoods.tsx
...tion/enquirySubmit/addDemandOrder/components/addGoods.tsx
+31
-0
basicInfo.tsx
...ion/enquirySubmit/addDemandOrder/components/basicInfo.tsx
+202
-0
flowRecord.tsx
...on/enquirySubmit/addDemandOrder/components/flowRecord.tsx
+88
-0
index.less
...action/enquirySubmit/addDemandOrder/components/index.less
+20
-0
tradingConditions.tsx
...irySubmit/addDemandOrder/components/tradingConditions.tsx
+84
-0
index.tsx
src/pages/transaction/enquirySubmit/addDemandOrder/index.tsx
+45
-0
enquiryGoods.tsx
...on/goodsOffer/addEnquiryOrder/components/enquiryGoods.tsx
+2
-2
index.tsx
src/pages/transaction/goodsOffer/schema/index.tsx
+1
-1
addForm.tsx
...ages/transaction/inquiryQuote/addInquiryOrder/addForm.tsx
+28
-33
attached.tsx
...tion/inquiryQuote/addInquiryOrder/components/attached.tsx
+11
-13
No files found.
config/routes/tranactionRoute/demandPosts.ts
View file @
a00f45dd
...
...
@@ -33,7 +33,14 @@ export default [
name
:
'addEnquiry'
,
component
:
'@/pages/transaction/enquirySubmit/toAddSubmit/detail'
,
hideInMenu
:
true
,
},
},
// 待新增需求单-新增
{
path
:
'/memberCenter/tranactionAbility/enquirySubmit/addDemandOrder/add'
,
name
:
'addEnquiry'
,
component
:
'@/pages/transaction/enquirySubmit/addDemandOrder'
,
hideInMenu
:
true
,
},
// 待新增需求单-编辑
{
path
:
'/memberCenter/tranactionAbility/enquirySubmit/toAddSubmitList/edit'
,
...
...
src/pages/logistics/list/components/templateForm.tsx
View file @
a00f45dd
...
...
@@ -65,6 +65,7 @@ const { ON_FORM_SUBMIT } = LifeCycleTypes //拿到Form提交API
const
onFormSubmit$
=
FormEffectHooks
const
{
Option
}
=
ISelect
;
const
diaLogForm
:
React
.
FC
<
ListProps
>
=
(
props
)
=>
{
const
[
formIsHalfFilledOut
,
setFormIsHalfFilledOut
]
=
useState
(
true
)
const
[
provinceList
,
setProvinceList
]
=
useState
([])
const
[
editable
,
setEditable
]
=
useState
<
boolean
>
(
true
)
const
[
headerTitle
,
setHeaderTitle
]
=
useState
(
''
)
...
...
@@ -163,6 +164,7 @@ const diaLogForm: React.FC<ListProps> = (props) => {
}
})
}
setFormIsHalfFilledOut
(
false
)
}
const
onSearch
=
()
=>
{
...
...
@@ -443,7 +445,7 @@ const diaLogForm: React.FC<ListProps> = (props) => {
</
Col
>
</
Row
>
</
Card
>
<
Prompt
message=
"您还有未保存的内容,是否确定要离开"
/>
<
Prompt
when=
{
formIsHalfFilledOut
}
message=
"您还有未保存的内容,是否确定要离开"
/>
</
PageHeaderWrapper
>
)
}
...
...
src/pages/transaction/common/tableStatusList.tsx
View file @
a00f45dd
...
...
@@ -266,7 +266,7 @@ export const demandQuoteInteriorState = (text:any) => {
// 询价查询, 询价报价, 确认询价报价单 通用外部状态
export
const
generalExternalState
=
(
status
:
any
)
=>
{
let
component
:
ReactNode
=
null
;
PublicApi
.
getOrderQuotationExternalStateEnum
(
{}
).
then
(
res
=>
{
PublicApi
.
getOrderQuotationExternalStateEnum
().
then
(
res
=>
{
if
(
res
.
code
===
1000
)
{
console
.
log
(
res
.
data
)
}
...
...
src/pages/transaction/enquiryOffer/components/productModal.tsx
View file @
a00f45dd
...
...
@@ -158,7 +158,7 @@ const comfirmDialog: React.FC<Params> = (props, { onRef }) => {
productName
:
name
,
//商品名称
brand
:
brandName
,
category
:
customerCategoryName
,
productId
:
id
productId
:
id
,
})
//查询属性
GetCommodityAttribute
(
id
)
...
...
@@ -193,7 +193,7 @@ const comfirmDialog: React.FC<Params> = (props, { onRef }) => {
*/
const
handletOk
=
()
=>
{
Curform
.
validateFields
().
then
(
v
=>
{
props
.
onOK
(
v
,
commodityAttributedataSource
)
props
.
onOK
(
v
,
commodityAttributedataSource
,
productRowCtl
.
selectRow
[
0
]
)
props
.
productAttributeJson
(
commodityAttributedataSource
)
setcommodityAttributedataSource
({})
productRowCtl
.
setSelectRow
([]);
...
...
src/pages/transaction/enquiryOffer/toAddSubmit/detail.tsx
View file @
a00f45dd
...
...
@@ -778,6 +778,10 @@ const Detail: React.FC<{}> = () => {
item
.
purchaseQuantity
=
v
.
purchaseQuantity
//数量
item
.
productId
=
v
.
productId
//商品ID 选择的
item
.
requisitionFormNo
=
values
.
requisitionFormNo
item
.
memberId
=
v
.
memberId
item
.
memberRoleId
=
v
.
memberRoleId
item
.
logistics
=
v
.
logistics
item
.
imgUrl
=
v
.
imgUrl
let
_otherList
=
[]
Object
.
keys
(
v
).
forEach
(
child
=>
{
otherList
.
forEach
(
j
=>
{
...
...
@@ -826,27 +830,11 @@ const Detail: React.FC<{}> = () => {
* @param {type}
* @return {type}
*/
const
handleSubmit
=
(
values
:
any
,
sourData
:
any
)
=>
{
console
.
log
(
'弹窗内容'
,
values
,
sourData
)
const
handleSubmit
=
(
values
:
any
,
sourData
:
any
,
selectRow
:
any
)
=>
{
console
.
log
(
'弹窗内容'
,
selectRow
)
let
item
=
{}
let
list
=
[]
//先循环所有 再循环有值的
// otherList.forEach((vitem: any) => {
// Object.keys(values).forEach((key) => {
// console.log('key', key)
// if (vitem.title == key) {
// console.log('vitem.title:', vitem.title)
// console.log('value', values[vitem.title])
// item[key] = values[vitem.title]
// } else {
// item[key] = values[key]
// }
// })
// })
// list.push(item)
// console.log('list', list)
let
source
=
[]
let
otherColumnkey
=
[]
//动态列的展示
let
data
=
sourData
...
...
@@ -860,10 +848,13 @@ const Detail: React.FC<{}> = () => {
});
obj
[
'category'
]
=
values
.
category
obj
[
'specifications'
]
=
values
.
model
obj
[
'memberId'
]
=
selectRow
.
memberId
obj
[
'memberRoleId'
]
=
selectRow
.
memberRoleId
obj
[
'logistics'
]
=
selectRow
.
logistics
obj
[
'imgUrl'
]
=
selectRow
.
mainPic
//动态
data
.
forEach
((
v
)
=>
{
if
(
JSON
.
stringify
(
v
.
customerAttribute
)
!=
'{}'
)
{
//获取列头
otherColumnkey
.
push
({
title
:
v
.
customerAttribute
.
name
,
...
...
@@ -881,8 +872,8 @@ const Detail: React.FC<{}> = () => {
})
source
.
push
(
obj
)
console
.
log
([...
source
])
setotherList
([...
otherColumnkey
])
//生成列
setproductSource
([...
productSource
,
...
source
])
//新增就要合并
setdialogVisible
(
false
)
}
...
...
@@ -1186,7 +1177,7 @@ const Detail: React.FC<{}> = () => {
mode=
{
mode
}
initialValues=
{
RroductinitialValues
}
productAttributeJson=
{
productAttributeJson
}
onOK=
{
(
values
:
any
,
data
)
=>
handleSubmit
(
values
,
data
)
}
onOK=
{
(
values
:
any
,
data
,
selectRow
)
=>
handleSubmit
(
values
,
data
,
selectRow
)
}
onCancel=
{
()
=>
setdialogVisible
(
false
)
}
>
</
RroductModal
>
...
...
src/pages/transaction/enquirySubmit/addDemandOrder/components/addGoods.tsx
0 → 100644
View file @
a00f45dd
import
React
from
'react'
;
import
{
Form
,
Radio
,
Button
,
Table
}
from
'antd'
;
import
{
ColumnType
}
from
'antd/lib/table/interface'
;
const
layout
:
any
=
{
colon
:
false
,
labelCol
:
{
style
:
{
width
:
'174px'
}
},
wrapperCol
:
{
span
:
9
},
labelAlign
:
"left"
};
const
AddGoods
:
React
.
FC
<
{}
>
=
()
=>
{
return
(
<
Form
{
...
layout
}
>
<
Form
.
Item
label=
'添加方式'
required
>
<
Radio
.
Group
>
<
Radio
value=
{
1
}
>
通过平台属性添加
</
Radio
>
<
Radio
value=
{
2
}
>
选择货品添加
</
Radio
>
<
Radio
value=
{
3
}
>
导入货品生成
</
Radio
>
</
Radio
.
Group
>
</
Form
.
Item
>
<
Form
.
Item
noStyle
>
<
Button
type=
'dashed'
block
>
添加商品
</
Button
>
</
Form
.
Item
>
</
Form
>
)
}
export
default
AddGoods
;
\ No newline at end of file
src/pages/transaction/enquirySubmit/addDemandOrder/components/basicInfo.tsx
0 → 100644
View file @
a00f45dd
import
React
,
{
useState
,
useEffect
}
from
'react'
;
import
{
Form
,
Input
,
Tooltip
,
Button
,
Select
,
Row
,
Col
,
message
}
from
'antd'
;
import
{
QuestionCircleOutlined
}
from
'@ant-design/icons'
;
import
{
PublicApi
}
from
'@/services/api'
;
import
style
from
'./index.less'
;
const
layout
:
any
=
{
colon
:
false
,
labelCol
:
{
style
:
{
width
:
'174px'
}
},
wrapperCol
:
{
span
:
9
},
labelAlign
:
"left"
};
const
{
Option
}
=
Select
;
const
BasicInfo
:
React
.
FC
<
{}
>
=
()
=>
{
const
[
form
]
=
Form
.
useForm
();
const
[
province
,
setprovince
]
=
useState
<
any
>
([]);
// 省列表
const
[
city
,
setcity
]
=
useState
<
any
>
([]);
// 市列表
const
[
requisitionFormAddress
,
setrequisitionFormAddress
]
=
useState
<
any
>
([{
provinceCode
:
''
,
province
:
''
,
cityCode
:
''
,
city
:
''
}]);
const
[
code
,
setcode
]
=
useState
<
any
>
([]);
//获取所有得地区
const
manageProvince
=
()
=>
{
return
new
Promise
(
resolve
=>
{
PublicApi
.
getManageAreaAll
().
then
(
res
=>
{
if
(
res
.
code
===
1000
)
{
resolve
(
res
.
data
);
}
})
})
}
// 选择下拉得内容
const
handProvince
=
(
val
:
any
,
idx
:
number
,
num
:
number
)
=>
{
if
(
num
===
1
)
{
const
result
=
[...
requisitionFormAddress
];
province
.
forEach
(
item
=>
{
if
(
item
.
code
===
val
)
{
PublicApi
.
getManageAreaByPcodeAll
({
pcode
:
val
}).
then
((
res
:
any
)
=>
{
if
(
res
.
code
===
1000
)
{
res
.
data
.
forEach
((
items
:
any
)
=>
{
const
fiterCode
=
code
.
filter
(
value
=>
value
===
items
.
code
);
if
(
fiterCode
[
0
]
===
items
.
code
)
{
items
.
disabled
=
true
}
else
{
items
.
disabled
=
false
}
})
result
[
idx
].
provinceCode
=
val
;
result
[
idx
].
province
=
item
.
name
;
city
[
idx
]
=
{
citydata
:
res
.
data
}
setcity
([...
city
])
}
})
}
})
setrequisitionFormAddress
(
result
);
}
else
{
const
result
=
[...
requisitionFormAddress
];
city
.
forEach
(
item
=>
{
item
.
citydata
.
forEach
(
items
=>
{
if
(
items
.
code
===
val
)
{
result
[
idx
].
cityCode
=
val
;
result
[
idx
].
city
=
items
.
name
;
}
})
})
setcode
([...
code
,
val
]);
setrequisitionFormAddress
(
result
);
}
}
// 添加一条地址
const
addFormAddress
=
(
idx
:
number
)
=>
{
const
address
:
any
=
{
provinceCode
:
''
,
province
:
''
,
cityCode
:
''
,
city
:
''
}
if
(
requisitionFormAddress
[
idx
].
provinceCode
&&
requisitionFormAddress
[
idx
].
cityCode
)
{
setrequisitionFormAddress
([...
requisitionFormAddress
,
address
])
}
else
{
message
.
error
(
'请完善适用城市信息'
)
}
}
// 删除一条地址
const
removeFormAddress
=
(
idx
:
any
)
=>
{
}
useEffect
(()
=>
{
manageProvince
().
then
(
data
=>
{
setprovince
(
data
)
})
},
[])
return
(
<
Form
{
...
layout
}
form=
{
form
}
>
<
Form
.
Item
label=
'需求单摘要'
name=
''
rules=
{
[{
required
:
true
,
message
:
'请输入需求单摘要'
}]
}
>
<
Input
/>
</
Form
.
Item
>
<
Form
.
Item
label=
{
<
Tooltip
placement=
"right"
title=
'设置了归属地市后,此商品可根据地市进行筛选,未设置时默认为所有地市'
>
适用地市
<
QuestionCircleOutlined
style=
{
{
marginLeft
:
'5px'
}
}
/></
Tooltip
>
}
style=
{
{
marginBottom
:
'0'
}
}
>
{
requisitionFormAddress
.
map
((
item
:
any
,
idx
:
number
)
=>
{
return
(
<
Row
gutter=
{
10
}
key=
{
`requisitionFormAddress${idx}`
}
className=
{
style
.
formwrap
}
>
<
Col
span=
{
12
}
>
<
Form
.
Item
name=
{
`province_${idx}`
}
>
<
Select
onChange=
{
(
value
)
=>
{
handProvince
(
value
,
idx
,
1
)
}
}
>
{
province
.
map
(
items
=>
{
return
(
<
Option
key=
{
items
.
id
}
value=
{
items
.
code
}
>
{
items
.
name
}
</
Option
>
)
})
}
</
Select
>
</
Form
.
Item
>
</
Col
>
<
Col
span=
{
12
}
>
<
Form
.
Item
name=
{
`city_${idx}`
}
rules=
{
[{
required
:
item
.
provinceCode
?
true
:
false
,
message
:
'选择三级分类'
}]
}
>
<
Select
onChange=
{
(
value
)
=>
{
handProvince
(
value
,
idx
,
2
)
}
}
>
{
(
item
.
provinceCode
&&
city
.
length
>
0
&&
city
[
idx
].
citydata
)
&&
city
[
idx
].
citydata
.
map
(
items
=>
{
return
(
<
Option
disabled=
{
items
.
disabled
}
key=
{
items
.
id
}
value=
{
items
.
code
}
>
{
items
.
name
}
</
Option
>
)
})
}
</
Select
>
</
Form
.
Item
>
</
Col
>
<
div
className=
{
style
.
formbutton
}
>
{
(
idx
===
requisitionFormAddress
.
length
-
1
)
&&
<
Form
.
Item
>
<
Button
type=
'primary'
onClick=
{
()
=>
addFormAddress
(
idx
)
}
>
+
</
Button
>
</
Form
.
Item
>
}
{
requisitionFormAddress
.
length
>
1
&&
<
Form
.
Item
>
<
Button
onClick=
{
()
=>
removeFormAddress
(
idx
)
}
>
-
</
Button
>
</
Form
.
Item
>
}
</
div
>
</
Row
>
)
})
}
</
Form
.
Item
>
<
Form
.
Item
label=
'需求单号'
>
<
span
>
SPTY12
</
span
>
</
Form
.
Item
>
<
Form
.
Item
label=
'会员名称'
>
<
span
>
温州龙昌手袋有限公司
</
span
>
</
Form
.
Item
>
<
Form
.
Item
label=
'单据时间'
>
<
span
>
2020-08-20 12:56:25
</
span
>
</
Form
.
Item
>
<
Form
.
Item
label=
'外部状态'
>
<
span
>
待提交需求单
</
span
>
</
Form
.
Item
>
<
Form
.
Item
label=
'外部状态'
>
<
span
>
待提交审核
</
span
>
</
Form
.
Item
>
</
Form
>
)
}
export
default
BasicInfo
;
\ No newline at end of file
src/pages/transaction/enquirySubmit/addDemandOrder/components/flowRecord.tsx
0 → 100644
View file @
a00f45dd
import
React
,
{
useState
}
from
'react'
;
import
styles
from
'./index.less'
;
import
{
Radio
}
from
'antd'
;
import
PolymericTable
from
'@/components/PolymericTable'
;
import
{
EditableColumns
}
from
'@/components/PolymericTable/interface'
;
import
moment
from
'moment'
;
const
FlowRecord
:
React
.
FC
<
{}
>
=
()
=>
{
const
[
radio
,
setRadio
]
=
useState
<
string
>
(
'outer'
);
//切换单据
const
format
=
(
text
)
=>
{
return
<>
{
moment
(
text
).
format
(
"YYYY-MM-DD HH:mm:ss"
)
}
</>
}
const
outerColumns
:
EditableColumns
[]
=
[{
title
:
'序号'
,
dataIndex
:
'inquiryListId'
,
},
{
title
:
'操作角色'
,
dataIndex
:
'roleName'
,
},
{
title
:
'状态'
,
dataIndex
:
'state'
,
},
{
title
:
'操作'
,
dataIndex
:
'operation'
,
},
{
title
:
'操作时间'
,
dataIndex
:
'operationTime'
,
render
:
(
text
:
any
,
record
:
any
)
=>
format
(
text
)
},
{
title
:
'审核意见'
,
dataIndex
:
'auditOpinion'
,
}]
const
insideColumns
:
EditableColumns
[]
=
[{
title
:
'序号'
,
dataIndex
:
'inquiryListId'
,
},
{
title
:
'操作人'
,
dataIndex
:
'roleName'
,
},
{
title
:
'部门'
,
dataIndex
:
'department'
,
},
{
title
:
'职位'
,
dataIndex
:
'position'
,
},
{
title
:
'状态'
,
dataIndex
:
'state'
,
},
{
title
:
'操作'
,
dataIndex
:
'operation'
,
},
{
title
:
'操作时间'
,
dataIndex
:
'operationTime'
,
render
:
(
text
:
any
,
record
:
any
)
=>
format
(
text
)
},
{
title
:
'审核意见'
,
dataIndex
:
'auditOpinion'
,
}]
const
onChange
=
(
e
:
any
)
=>
{
setRadio
(
e
.
target
.
value
)
}
return
(
<
div
>
<
Radio
.
Group
defaultValue=
"outer"
buttonStyle=
"solid"
onChange=
{
onChange
}
>
<
Radio
.
Button
value=
"outer"
>
外部单据
</
Radio
.
Button
>
<
Radio
.
Button
value=
"inside"
>
内部单据
</
Radio
.
Button
>
</
Radio
.
Group
>
{
radio
===
'outer'
?
<
PolymericTable
columns=
{
outerColumns
}
loading=
{
false
}
pagination=
{
null
}
/>
:
<
PolymericTable
columns=
{
insideColumns
}
loading=
{
false
}
pagination=
{
null
}
/>
}
</
div
>
)
}
export
default
FlowRecord
\ No newline at end of file
src/pages/transaction/enquirySubmit/addDemandOrder/components/index.less
0 → 100644
View file @
a00f45dd
.formwrap {
position: relative;
.formbutton {
position: absolute;
right: -95px;
display: flex;
width: 90px;
:global {
.ant-form-item {
width: 32px;
margin-right: 10px;
.ant-btn {
width: 32px;
padding: 0;
margin-right: 10px;
}
}
}
}
}
src/pages/transaction/enquirySubmit/addDemandOrder/components/tradingConditions.tsx
0 → 100644
View file @
a00f45dd
import
React
,
{
useState
,
useEffect
}
from
'react'
;
import
moment
from
'moment'
;
import
{
Form
,
Input
,
Select
,
Row
,
Col
,
DatePicker
,
message
}
from
'antd'
;
import
{
PublicApi
}
from
'@/services/api'
;
const
layout
:
any
=
{
colon
:
false
,
labelCol
:
{
style
:
{
width
:
'174px'
}
},
wrapperCol
:
{
span
:
24
},
labelAlign
:
"left"
};
const
TradingConditions
:
React
.
FC
<
{}
>
=
()
=>
{
const
[
TradingConditionsForm
]
=
Form
.
useForm
();
const
[
address
,
setAddress
]
=
useState
([]);
useEffect
(()
=>
{
// 获取交付地址
PublicApi
.
getLogisticsSelectListReceiverAddress
().
then
(
res
=>
{
setAddress
(
res
.
data
)
})
},
[])
const
disabledDate
=
(
current
)
=>
{
return
current
&&
current
<
moment
().
endOf
(
'day'
);
}
return
(
<
Form
{
...
layout
}
form=
{
TradingConditionsForm
}
>
<
Row
gutter=
{
70
}
>
<
Col
span=
{
12
}
>
<
Form
.
Item
label=
'交付日期'
name=
'deliveryTime'
rules=
{
[{
required
:
true
,
message
:
'请选择交付日期'
}]
}
>
<
DatePicker
style=
{
{
width
:
'100%'
}
}
disabledDate=
{
disabledDate
}
format=
"YYYY-MM-DD HH:mm:ss"
/>
</
Form
.
Item
>
<
Form
.
Item
label=
'交付地址'
name=
'fullAddressId'
rules=
{
[{
required
:
true
,
message
:
'请选择交付地址'
}]
}
>
<
Select
>
{
address
.
map
(
v
=>
(
<
Select
.
Option
key=
{
v
.
id
}
value=
{
v
.
id
}
>
{
v
.
fullAddress
}
</
Select
.
Option
>
))
}
</
Select
>
</
Form
.
Item
>
<
Form
.
Item
label=
'报价截止时间'
name=
'quotationAsTime'
rules=
{
[{
required
:
true
,
message
:
'请选择报价截止时间'
}]
}
>
<
DatePicker
style=
{
{
width
:
'100%'
}
}
format=
"YYYY-MM-DD HH:mm:ss"
disabledDate=
{
disabledDate
}
/>
</
Form
.
Item
>
<
Form
.
Item
label=
'报价要求'
name=
'offer'
>
<
Input
.
TextArea
placeholder=
'最长100个字符,50个汉字'
/>
</
Form
.
Item
>
<
Form
.
Item
label=
'付款方式'
name=
'paymentType'
>
<
Input
.
TextArea
placeholder=
'最长100个字符,50个汉字'
/>
</
Form
.
Item
>
<
Form
.
Item
label=
'税费要求'
name=
'taxes'
>
<
Input
.
TextArea
placeholder=
'最长100个字符,50个汉字'
/>
</
Form
.
Item
>
<
Form
.
Item
label=
'物流要求'
name=
'logistics'
>
<
Input
.
TextArea
placeholder=
'最长100个字符,50个汉字'
/>
</
Form
.
Item
>
</
Col
>
<
Col
span=
{
12
}
>
<
Form
.
Item
label=
'包装要求'
name=
'packRequire'
>
<
Input
.
TextArea
placeholder=
'最长100个字符,50个汉字'
/>
</
Form
.
Item
>
<
Form
.
Item
label=
'其他要求'
name=
'otherRequire'
>
<
Input
.
TextArea
placeholder=
'最长100个字符,50个汉字'
/>
</
Form
.
Item
>
</
Col
>
</
Row
>
</
Form
>
)
}
export
default
TradingConditions
\ No newline at end of file
src/pages/transaction/enquirySubmit/addDemandOrder/index.tsx
0 → 100644
View file @
a00f45dd
import
React
from
'react'
;
import
{
history
}
from
'umi'
;
import
ReutrnEle
from
'@/components/ReturnEle'
import
{
PageHeaderWrapper
}
from
'@ant-design/pro-layout'
;
import
{
Button
,
Card
,
Tabs
}
from
'antd'
;
import
BasicInfo
from
'./components/basicInfo'
;
import
TradingConditions
from
'./components/tradingConditions'
import
FlowRecord
from
'./components/flowRecord'
;
import
AddGoods
from
'./components/addGoods'
;
const
{
TabPane
}
=
Tabs
;
const
AddDemandOrder
:
React
.
FC
<
{}
>
=
()
=>
{
return
(
<
PageHeaderWrapper
onBack=
{
()
=>
history
.
goBack
()
}
backIcon=
{
<
ReutrnEle
description=
"返回"
/>
}
extra=
{
<
Button
type=
"primary"
>
保存
</
Button
>
}
>
<
Card
>
<
Tabs
type=
'card'
>
<
TabPane
forceRender
tab=
'基本信息'
key=
'1'
>
<
BasicInfo
/>
</
TabPane
>
<
TabPane
forceRender
tab=
'添加商品'
key=
'2'
>
<
AddGoods
/>
</
TabPane
>
<
TabPane
forceRender
tab=
'交易条件'
key=
'3'
>
<
TradingConditions
/>
</
TabPane
>
<
TabPane
forceRender
tab=
'需求对接'
key=
'4'
>
</
TabPane
>
<
TabPane
forceRender
tab=
'流转记录'
key=
'5'
>
<
FlowRecord
/>
</
TabPane
>
</
Tabs
>
</
Card
>
</
PageHeaderWrapper
>
)
}
export
default
AddDemandOrder
;
\ No newline at end of file
src/pages/transaction/goodsOffer/addEnquiryOrder/components/enquiryGoods.tsx
View file @
a00f45dd
...
...
@@ -51,8 +51,8 @@ const EnquiryGoods: React.FC<queryProps> = (props) => {
purchaseCount
:
1
,
logistics
:
v
.
logistics
,
memberId
:
v
.
memberId
,
memberRoleId
:
v
.
memberRoleId
memberRoleId
:
v
.
memberRoleId
,
imgUrl
:
v
.
mainPic
})
setinquiryGoods
(
inquiry
);
setgoodsList
(
arr
);
...
...
src/pages/transaction/goodsOffer/schema/index.tsx
View file @
a00f45dd
...
...
@@ -63,7 +63,7 @@ export const commonEnquieryOfferSchema: ISchema = {
placeholder
:
'询价单摘要'
}
},
inquiryListM
emberName
:{
m
emberName
:{
type
:
'string'
,
"x-component-props"
:{
placeholder
:
'被询价会员'
...
...
src/pages/transaction/inquiryQuote/addInquiryOrder/addForm.tsx
View file @
a00f45dd
...
...
@@ -38,7 +38,7 @@ const AddQuotes: React.FC<parmas> = (props) => {
setenclosureUrls
(
res
.
data
.
enclosureUrls
)
}
})
}
else
if
(
id
&&
type
===
3
)
{
}
else
if
(
id
&&
type
===
3
)
{
// 报价
PublicApi
.
getOrderProductInquiryDetails
({
id
}).
then
(
res
=>
{
if
(
res
.
code
===
1000
)
{
...
...
@@ -57,38 +57,33 @@ const AddQuotes: React.FC<parmas> = (props) => {
const
onSumbit
=
async
(
params
:
any
)
=>
{
setloading
(
true
);
const
basicInfo
=
await
basicInfoRef
.
current
.
validateFields
();
if
(
count
===
'3'
)
{
const
tradingConditions
=
await
tradingConditionsRef
.
current
.
validateFields
();
const
basicInfoData
=
basicInfo
.
data
;
const
tradingConditionsData
=
tradingConditions
.
data
;
if
(
basicInfo
.
state
&&
tradingConditions
.
state
)
{
const
parmas
=
{
inquiryListProductRequests
:
goodsList
,
// 商品列表 ,InquiryListProductRequest
...
basicInfoData
,
...
tradingConditionsData
,
enclosureUrls
,
inquiryListNo
:
inquiryNo
.
orderNo
,
inquiryListId
:
inquiryNo
.
orderId
}
if
(
id
&&
type
===
2
)
{
parmas
.
id
=
editData
.
id
;
await
PublicApi
.
postOrderProductQuotationUpdate
(
parmas
).
then
(
res
=>
{
if
(
res
.
code
===
1000
)
{
history
.
goBack
();
}
else
{
setloading
(
false
);}
})
}
else
{
await
PublicApi
.
postOrderProductQuotationAdd
(
parmas
).
then
(
res
=>
{
if
(
res
.
code
===
1000
)
{
history
.
goBack
();
}
else
{
setloading
(
false
);}
})
}
const
tradingConditions
=
await
tradingConditionsRef
.
current
.
validateFields
();
const
basicInfoData
=
basicInfo
.
data
;
const
tradingConditionsData
=
tradingConditions
.
data
;
if
(
basicInfo
.
state
&&
tradingConditions
.
state
)
{
const
parmas
=
{
inquiryListProductRequests
:
goodsList
,
// 商品列表 ,InquiryListProductRequest
...
basicInfoData
,
...
tradingConditionsData
,
enclosureUrls
,
inquiryListNo
:
inquiryNo
.
orderNo
,
inquiryListId
:
inquiryNo
.
orderId
}
if
(
id
&&
type
===
2
)
{
parmas
.
id
=
editData
.
id
;
await
PublicApi
.
postOrderProductQuotationUpdate
(
parmas
).
then
(
res
=>
{
if
(
res
.
code
===
1000
)
{
history
.
goBack
();
}
else
{
setloading
(
false
);
}
})
}
else
{
message
.
error
(
'有必填字段没选择,请检查!'
);
setloading
(
false
);
await
PublicApi
.
postOrderProductQuotationAdd
(
parmas
).
then
(
res
=>
{
if
(
res
.
code
===
1000
)
{
history
.
goBack
();
}
else
{
setloading
(
false
);
}
})
}
}
else
{
}
else
{
message
.
error
(
'有必填字段没选择,请检查!'
);
setloading
(
false
);
}
...
...
@@ -144,13 +139,13 @@ const AddQuotes: React.FC<parmas> = (props) => {
/>
</
TabPane
>
<
TabPane
tab=
"附件"
key=
"4"
forceRender
>
<
Attached
<
Attached
editData=
{
editData
}
handleGetEnclosureUrls=
{
handleGetEnclosureUrls
}
/>
</
TabPane
>
<
TabPane
tab=
"流转记录"
key=
"5"
forceRender
>
<
FlowRecord
<
FlowRecord
editData=
{
editData
}
/>
</
TabPane
>
...
...
src/pages/transaction/inquiryQuote/addInquiryOrder/components/attached.tsx
View file @
a00f45dd
...
...
@@ -28,19 +28,17 @@ const Attached: React.FC<parmas> = (props) => {
return
isLt20M
;
}
// 上传回调
const
handleChange
=
({
file
List
})
=>
{
const
handleChange
=
({
file
})
=>
{
const
arr
:
any
=
[];
fileList
.
forEach
(
v
=>
{
if
(
v
.
response
)
{
if
(
v
.
response
.
code
===
1000
)
{
arr
.
push
({
name
:
v
.
name
,
url
:
v
.
response
.
data
})
}
if
(
file
.
response
)
{
if
(
file
.
response
.
code
===
1000
)
{
arr
.
push
({
name
:
file
.
name
,
url
:
file
.
response
.
data
})
}
}
)
setFiles
(
arr
)
}
setFiles
(
[...
files
,
...
arr
]
)
handleGetEnclosureUrls
(
arr
);
}
// 删除附件
...
...
@@ -51,12 +49,12 @@ const Attached: React.FC<parmas> = (props) => {
handleGetEnclosureUrls
(
arr
);
}
useEffect
(()
=>
{
if
(
Object
.
keys
(
editData
).
length
>
0
)
{
if
(
Object
.
keys
(
editData
).
length
>
0
)
{
setFiles
(
editData
.
enclosureUrls
)
}
},
[
editData
])
console
.
log
(
files
,
10086
)
return
(
<
Form
{
...
layout
}
...
...
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