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
7f99aabb
Commit
7f99aabb
authored
Mar 25, 2022
by
前端-许冠华
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'cherry-pick-
d5daf6bd
-2' into 'v2-220318'
Merge branch 'fix-v2' into 'v2' See merge request linkseeks-design/pro-platform!39
parents
2aec1de2
861596e3
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
79 additions
and
42 deletions
+79
-42
index.tsx
src/pages/logistics/logisticsInfo/index.tsx
+73
-40
productQuote.tsx
...ity/inquiryOffer/waitAddOffer/components/productQuote.tsx
+6
-2
No files found.
src/pages/logistics/logisticsInfo/index.tsx
View file @
7f99aabb
import
React
,
{
useState
,
useEffect
}
from
'react'
import
React
,
{
useState
,
useEffect
}
from
'react'
import
{
PageHeaderWrapper
}
from
'@ant-design/pro-layout'
import
{
PageHeaderWrapper
}
from
'@ant-design/pro-layout'
import
{
Form
,
Input
,
Button
,
Tooltip
,
Select
,
message
,
Upload
,
Typography
,
Tabs
}
from
'antd'
import
{
Form
,
Input
,
Button
,
Tooltip
,
Select
,
message
,
Upload
,
Typography
,
Tabs
,
Badge
}
from
'antd'
import
{
getIntl
,
Prompt
}
from
'umi'
import
{
getIntl
,
Prompt
}
from
'umi'
import
{
inject
}
from
'mobx-react'
import
{
inject
}
from
'mobx-react'
import
{
QuestionCircleOutlined
,
DeleteOutlined
,
CopyOutlined
,
UploadOutlined
,
LinkOutlined
}
from
'@ant-design/icons'
import
{
QuestionCircleOutlined
,
DeleteOutlined
,
CopyOutlined
,
UploadOutlined
,
LinkOutlined
}
from
'@ant-design/icons'
...
@@ -28,6 +28,14 @@ interface LogisticsInfoPropsType {
...
@@ -28,6 +28,14 @@ interface LogisticsInfoPropsType {
const
{
TabPane
}
=
Tabs
;
const
{
TabPane
}
=
Tabs
;
const
defaultCityData
=
{
index
:
0
,
provinceCode
:
0
,
province
:
''
,
cityCode
:
0
,
city
:
''
}
const
defaultCityData
=
{
index
:
0
,
provinceCode
:
0
,
province
:
''
,
cityCode
:
0
,
city
:
''
}
const
TabFormErrors
=
(
props
)
=>
{
return
(
<
Badge
size=
"small"
count=
{
props
.
dot
}
offset=
{
[
6
,
-
5
]
}
>
{
props
.
children
}
</
Badge
>
)
}
const
LogisticsInfo
:
React
.
FC
<
LogisticsInfoPropsType
>
=
(
props
)
=>
{
const
LogisticsInfo
:
React
.
FC
<
LogisticsInfoPropsType
>
=
(
props
)
=>
{
const
{
siteUrl
,
siteId
}
=
props
.
SiteStore
const
{
siteUrl
,
siteId
}
=
props
.
SiteStore
const
[
door
,
setDoor
]
=
useState
<
string
>
(
''
);
const
[
door
,
setDoor
]
=
useState
<
string
>
(
''
);
...
@@ -46,6 +54,13 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
...
@@ -46,6 +54,13 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
const
[
shopId
,
setShopId
]
=
useState
<
number
>
()
const
[
shopId
,
setShopId
]
=
useState
<
number
>
()
const
[
confirmLoading
,
setConfirmLoading
]
=
useState
<
boolean
>
(
false
)
const
[
confirmLoading
,
setConfirmLoading
]
=
useState
<
boolean
>
(
false
)
const
[
mainBusiness
,
setMainBusiness
]
=
useState
<
Array
<
string
>>
([
''
])
const
[
mainBusiness
,
setMainBusiness
]
=
useState
<
Array
<
string
>>
([
''
])
const
[
badge
,
setbadge
]
=
useState
<
any
>
([
0
,
0
,
0
]);
const
getError
=
(
num
:
number
,
idx
:
number
)
=>
{
const
data
=
[...
badge
];
data
[
idx
]
=
num
;
setbadge
(
data
);
}
/** 上传公司画册 */
/** 上传公司画册 */
const
[
file
,
setFile
]
=
useState
<
any
>
({});
const
[
file
,
setFile
]
=
useState
<
any
>
({});
...
@@ -53,7 +68,7 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
...
@@ -53,7 +68,7 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
const
beforeDocUpload
=
(
file
:
any
)
=>
{
const
beforeDocUpload
=
(
file
:
any
)
=>
{
const
isLt50M
=
file
.
size
/
1024
/
1024
<
50
;
const
isLt50M
=
file
.
size
/
1024
/
1024
<
50
;
if
(
!
isLt50M
)
{
if
(
!
isLt50M
)
{
message
.
error
(
intl
.
formatMessage
({
id
:
'logistics.shangchuanwenjiandaxiaobuchao'
}));
message
.
error
(
intl
.
formatMessage
({
id
:
'logistics.shangchuanwenjiandaxiaobuchao'
}));
}
}
return
isLt50M
;
return
isLt50M
;
}
}
...
@@ -221,6 +236,16 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
...
@@ -221,6 +236,16 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
})
})
}
}
const
getNumber
=
(
arr
:
string
[])
=>
{
let
count
:
number
=
0
;
arr
.
forEach
(
item
=>
{
if
(
!
item
)
{
count
+=
1
}
})
return
count
}
const
handleSave
=
(
e
:
any
)
=>
{
const
handleSave
=
(
e
:
any
)
=>
{
e
.
preventDefault
()
e
.
preventDefault
()
form
.
validateFields
().
then
((
value
:
any
)
=>
{
form
.
validateFields
().
then
((
value
:
any
)
=>
{
...
@@ -249,6 +274,7 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
...
@@ -249,6 +274,7 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
}
}
postTemplateWebMemberLogisticsWebSaveCurrMemberLogistics
(
params
).
then
(
res
=>
{
postTemplateWebMemberLogisticsWebSaveCurrMemberLogistics
(
params
).
then
(
res
=>
{
if
(
res
.
code
===
1000
)
{
if
(
res
.
code
===
1000
)
{
setbadge
([
0
,
0
,
0
])
fetchShopInfo
()
fetchShopInfo
()
setFormIsHalfFilledOut
(
false
)
setFormIsHalfFilledOut
(
false
)
}
}
...
@@ -256,6 +282,13 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
...
@@ -256,6 +282,13 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
}).
catch
(()
=>
{
}).
catch
(()
=>
{
setConfirmLoading
(
false
)
setConfirmLoading
(
false
)
})
})
}).
catch
(
err
=>
{
const
{
mainBusiness
,
areaBOList
,
logo
,
describe
,
title
,
description
,
keywords
}
=
err
.
values
if
(
!
mainBusiness
||
!
areaBOList
||
!
logo
||
!
describe
)
{
getError
(
getNumber
([
mainBusiness
,
areaBOList
,
logo
,
describe
]),
0
)
}
else
if
(
!
title
||
!
description
||
!
keywords
)
{
getError
(
getNumber
([
title
,
description
,
keywords
]),
1
)
}
})
})
}
}
...
@@ -263,7 +296,7 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
...
@@ -263,7 +296,7 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
const
checkareaBOList
=
(
shopAreas
)
=>
{
const
checkareaBOList
=
(
shopAreas
)
=>
{
if
(
isEmpty
(
shopAreas
))
{
if
(
isEmpty
(
shopAreas
))
{
message
.
destroy
()
message
.
destroy
()
message
.
error
(
intl
.
formatMessage
({
id
:
'logistics.qingxuanzeguishudishi'
}))
message
.
error
(
intl
.
formatMessage
({
id
:
'logistics.qingxuanzeguishudishi'
}))
return
false
return
false
}
}
...
@@ -271,7 +304,7 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
...
@@ -271,7 +304,7 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
if
(
isEmpty
(
item
.
provinceCode
))
{
if
(
isEmpty
(
item
.
provinceCode
))
{
message
.
destroy
()
message
.
destroy
()
message
.
error
(
intl
.
formatMessage
({
id
:
'logistics.qingxuanzeguishudishi'
}))
message
.
error
(
intl
.
formatMessage
({
id
:
'logistics.qingxuanzeguishudishi'
}))
return
false
return
false
}
else
{
}
else
{
return
true
return
true
...
@@ -283,7 +316,7 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
...
@@ -283,7 +316,7 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
const
checkmainBusiness
=
(
shopMainBusiness
)
=>
{
const
checkmainBusiness
=
(
shopMainBusiness
)
=>
{
if
(
isEmpty
(
shopMainBusiness
))
{
if
(
isEmpty
(
shopMainBusiness
))
{
message
.
destroy
()
message
.
destroy
()
message
.
error
(
intl
.
formatMessage
({
id
:
'logistics.qingshuruzhuyingyewu'
}))
message
.
error
(
intl
.
formatMessage
({
id
:
'logistics.qingshuruzhuyingyewu'
}))
return
false
return
false
}
}
...
@@ -291,7 +324,7 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
...
@@ -291,7 +324,7 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
if
(
isEmpty
(
item
))
{
if
(
isEmpty
(
item
))
{
message
.
destroy
()
message
.
destroy
()
message
.
error
(
intl
.
formatMessage
({
id
:
'logistics.qingshuruzhuyingyewu'
}))
message
.
error
(
intl
.
formatMessage
({
id
:
'logistics.qingshuruzhuyingyewu'
}))
return
false
return
false
}
else
{
}
else
{
return
true
return
true
...
@@ -303,7 +336,7 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
...
@@ -303,7 +336,7 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
const
handleCopyLinke
=
(
link
:
string
)
=>
{
const
handleCopyLinke
=
(
link
:
string
)
=>
{
if
(
copy
(
link
))
{
if
(
copy
(
link
))
{
message
.
success
(
intl
.
formatMessage
({
id
:
'logistics.fuzhichenggong'
}))
message
.
success
(
intl
.
formatMessage
({
id
:
'logistics.fuzhichenggong'
}))
}
}
}
}
...
@@ -379,10 +412,10 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
...
@@ -379,10 +412,10 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
return
(
return
(
<
PageHeaderWrapper
<
PageHeaderWrapper
extra=
{
extra=
{
<
Button
type=
"primary"
loading=
{
confirmLoading
}
onClick=
{
handleSave
}
>
{
intl
.
formatMessage
({
id
:
'logistics.baocun'
})
}
</
Button
>
<
Button
type=
"primary"
loading=
{
confirmLoading
}
onClick=
{
handleSave
}
>
{
intl
.
formatMessage
({
id
:
'logistics.baocun'
})
}
</
Button
>
}
}
>
>
<
Prompt
when=
{
formIsHalfFilledOut
}
message=
{
intl
.
formatMessage
({
id
:
'logistics.ninhaiyouweibaocundenei'
})
}
/>
<
Prompt
when=
{
formIsHalfFilledOut
}
message=
{
intl
.
formatMessage
({
id
:
'logistics.ninhaiyouweibaocundenei'
})
}
/>
<
div
className=
{
styles
.
logistics_info
}
>
<
div
className=
{
styles
.
logistics_info
}
>
<
Form
<
Form
form=
{
form
}
form=
{
form
}
...
@@ -393,12 +426,12 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
...
@@ -393,12 +426,12 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
<
Tabs
<
Tabs
type=
'card'
type=
'card'
>
>
<
TabPane
tab=
{
intl
.
formatMessage
({
id
:
'logistics.jibenxinxi'
})
}
key=
'1'
forceRender
>
<
TabPane
tab=
{
<
TabFormErrors
dot=
{
badge
[
0
]
}
>
{
intl
.
formatMessage
({
id
:
'logistics.jibenxinxi'
})
}
</
TabFormErrors
>
}
key=
'1'
forceRender
>
<
Form
.
Item
<
Form
.
Item
labelAlign=
"left"
labelAlign=
"left"
name=
"mainBusiness"
name=
"mainBusiness"
label=
{
<
RequireItem
label=
{
intl
.
formatMessage
({
id
:
'logistics.zhuyingyewu'
})
}
isRequire=
{
true
}
/>
}
label=
{
<
RequireItem
label=
{
intl
.
formatMessage
({
id
:
'logistics.zhuyingyewu'
})
}
isRequire=
{
true
}
/>
}
rules=
{
[{
required
:
true
,
message
:
intl
.
formatMessage
({
id
:
'logistics.qingshuruzhuyingyewu'
})
}]
}
rules=
{
[{
required
:
true
,
message
:
intl
.
formatMessage
({
id
:
'logistics.qingshuruzhuyingyewu'
})
}]
}
>
>
<
InputSelect
<
InputSelect
dataSource=
{
mainBusiness
}
dataSource=
{
mainBusiness
}
...
@@ -410,8 +443,8 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
...
@@ -410,8 +443,8 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
<
Form
.
Item
<
Form
.
Item
labelAlign=
"left"
labelAlign=
"left"
name=
"areaBOList"
name=
"areaBOList"
label=
{
<
RequireItem
label=
{
intl
.
formatMessage
({
id
:
'logistics.guishudishi'
})
}
isRequire=
{
true
}
/>
}
label=
{
<
RequireItem
label=
{
intl
.
formatMessage
({
id
:
'logistics.guishudishi'
})
}
isRequire=
{
true
}
/>
}
rules=
{
[{
required
:
true
,
message
:
intl
.
formatMessage
({
id
:
'logistics.qingxuanzeguishudishi'
})
}]
}
rules=
{
[{
required
:
true
,
message
:
intl
.
formatMessage
({
id
:
'logistics.qingxuanzeguishudishi'
})
}]
}
>
>
<
CitySelect
<
CitySelect
selectData=
{
selectCityData
}
selectData=
{
selectCityData
}
...
@@ -423,8 +456,8 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
...
@@ -423,8 +456,8 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
<
Form
.
Item
<
Form
.
Item
labelAlign=
"left"
labelAlign=
"left"
name=
"logo"
name=
"logo"
label=
{
<
RequireItem
label=
{
intl
.
formatMessage
({
id
:
'logistics.gongsiLOGO'
})
}
isRequire=
{
true
}
/>
}
label=
{
<
RequireItem
label=
{
intl
.
formatMessage
({
id
:
'logistics.gongsiLOGO'
})
}
isRequire=
{
true
}
/>
}
rules=
{
[{
required
:
true
,
message
:
intl
.
formatMessage
({
id
:
'logistics.qingshangchuangongsiLOGO'
})
}]
}
rules=
{
[{
required
:
true
,
message
:
intl
.
formatMessage
({
id
:
'logistics.qingshangchuangongsiLOGO'
})
}]
}
>
>
<
UploadImage
<
UploadImage
imgUrl=
{
logo
}
imgUrl=
{
logo
}
...
@@ -441,15 +474,15 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
...
@@ -441,15 +474,15 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
<
Form
.
Item
<
Form
.
Item
labelAlign=
"left"
labelAlign=
"left"
name=
"describe"
name=
"describe"
label=
{
<
RequireItem
label=
{
intl
.
formatMessage
({
id
:
'logistics.gongsijianjie'
})
}
isRequire=
{
true
}
/>
}
label=
{
<
RequireItem
label=
{
intl
.
formatMessage
({
id
:
'logistics.gongsijianjie'
})
}
isRequire=
{
true
}
/>
}
rules=
{
[{
required
:
true
,
message
:
intl
.
formatMessage
({
id
:
'logistics.qingshurugongsijianjie'
})
}]
}
rules=
{
[{
required
:
true
,
message
:
intl
.
formatMessage
({
id
:
'logistics.qingshurugongsijianjie'
})
}]
}
>
>
<
Input
.
TextArea
rows=
{
5
}
className=
{
styles
.
form_item
}
placeholder=
{
intl
.
formatMessage
({
id
:
'logistics.qingshurugongsijianjie'
})
}
maxLength=
{
200
}
/>
<
Input
.
TextArea
rows=
{
5
}
className=
{
styles
.
form_item
}
placeholder=
{
intl
.
formatMessage
({
id
:
'logistics.qingshurugongsijianjie'
})
}
maxLength=
{
200
}
/>
</
Form
.
Item
>
</
Form
.
Item
>
<
Form
.
Item
<
Form
.
Item
labelAlign=
"left"
labelAlign=
"left"
name=
"companyPics"
name=
"companyPics"
label=
{
<
RequireItem
label=
{
intl
.
formatMessage
({
id
:
'logistics.gongsizhaopian'
})
}
/>
}
label=
{
<
RequireItem
label=
{
intl
.
formatMessage
({
id
:
'logistics.gongsizhaopian'
})
}
/>
}
>
>
<
div
className=
{
styles
.
form_item_wrap
}
>
<
div
className=
{
styles
.
form_item_wrap
}
>
...
@@ -475,7 +508,7 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
...
@@ -475,7 +508,7 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
<
Form
.
Item
<
Form
.
Item
labelAlign=
"left"
labelAlign=
"left"
name=
"honorPics"
name=
"honorPics"
label=
{
<
RequireItem
label=
{
intl
.
formatMessage
({
id
:
'logistics.zizhirongyu'
})
}
brief=
{
<
Tooltip
placement=
"top"
title=
{
intl
.
formatMessage
({
id
:
'logistics.rushangbiaozhucezhengshu'
})
}
><
QuestionCircleOutlined
/></
Tooltip
>
}
/>
}
label=
{
<
RequireItem
label=
{
intl
.
formatMessage
({
id
:
'logistics.zizhirongyu'
})
}
brief=
{
<
Tooltip
placement=
"top"
title=
{
intl
.
formatMessage
({
id
:
'logistics.rushangbiaozhucezhengshu'
})
}
><
QuestionCircleOutlined
/></
Tooltip
>
}
/>
}
>
>
<
div
className=
{
styles
.
form_item_wrap
}
>
<
div
className=
{
styles
.
form_item_wrap
}
>
<
div
className=
{
styles
.
img_list
}
>
<
div
className=
{
styles
.
img_list
}
>
...
@@ -500,7 +533,7 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
...
@@ -500,7 +533,7 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
<
Form
.
Item
<
Form
.
Item
labelAlign=
"left"
labelAlign=
"left"
name=
"albumName"
name=
"albumName"
label=
{
<
RequireItem
label=
{
intl
.
formatMessage
({
id
:
'logistics.xuanchuanhuace'
})
}
/>
}
label=
{
<
RequireItem
label=
{
intl
.
formatMessage
({
id
:
'logistics.xuanchuanhuace'
})
}
/>
}
className=
{
styles
.
revise_style
}
className=
{
styles
.
revise_style
}
>
>
<
div
className=
{
styles
.
upload_data
}
>
<
div
className=
{
styles
.
upload_data
}
>
...
@@ -530,15 +563,15 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
...
@@ -530,15 +563,15 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
beforeUpload=
{
beforeDocUpload
}
beforeUpload=
{
beforeDocUpload
}
onChange=
{
handleChange
}
onChange=
{
handleChange
}
>
>
<
Button
loading=
{
fileLoading
}
icon=
{
<
UploadOutlined
/>
}
>
{
intl
.
formatMessage
({
id
:
'logistics.shangchuanwenjian'
})
}
</
Button
>
<
Button
loading=
{
fileLoading
}
icon=
{
<
UploadOutlined
/>
}
>
{
intl
.
formatMessage
({
id
:
'logistics.shangchuanwenjian'
})
}
</
Button
>
<
div
style=
{
{
marginTop
:
'8px'
}
}
>
{
intl
.
formatMessage
({
id
:
'logistics.yicishangchuanyigewenjian'
})
}
</
div
>
<
div
style=
{
{
marginTop
:
'8px'
}
}
>
{
intl
.
formatMessage
({
id
:
'logistics.yicishangchuanyigewenjian'
})
}
</
div
>
</
Upload
>
</
Upload
>
)
}
)
}
</
Form
.
Item
>
</
Form
.
Item
>
<
Form
.
Item
<
Form
.
Item
labelAlign=
"left"
labelAlign=
"left"
name=
"shopId"
name=
"shopId"
label=
{
<
RequireItem
label=
{
intl
.
formatMessage
({
id
:
'logistics.menhulianjie'
})
}
/>
}
label=
{
<
RequireItem
label=
{
intl
.
formatMessage
({
id
:
'logistics.menhulianjie'
})
}
/>
}
>
>
<
Select
allowClear
value=
{
shopId
}
className=
{
styles
.
form_item
}
onChange=
{
handleMallSelectChange
}
>
<
Select
allowClear
value=
{
shopId
}
className=
{
styles
.
form_item
}
onChange=
{
handleMallSelectChange
}
>
{
{
...
@@ -549,44 +582,44 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
...
@@ -549,44 +582,44 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
</
Select
>
</
Select
>
{
resUrl
&&
(
{
resUrl
&&
(
<
div
className=
{
styles
.
shop_url
}
>
<
div
className=
{
styles
.
shop_url
}
>
<
span
>
{
intl
.
formatMessage
({
id
:
'logistics.dangqian'
})
}{
door
}{
intl
.
formatMessage
({
id
:
'logistics.lianjie'
})
}
:
</
span
>
<
span
>
{
intl
.
formatMessage
({
id
:
'logistics.dangqian'
})
}{
door
}{
intl
.
formatMessage
({
id
:
'logistics.lianjie'
})
}
:
</
span
>
<
label
>
{
resUrl
}
</
label
>
<
label
>
{
resUrl
}
</
label
>
<
CopyOutlined
className=
{
styles
.
copy_icon
}
onClick=
{
()
=>
handleCopyLinke
(
resUrl
)
}
/>
<
CopyOutlined
className=
{
styles
.
copy_icon
}
onClick=
{
()
=>
handleCopyLinke
(
resUrl
)
}
/>
</
div
>
</
div
>
)
}
)
}
</
Form
.
Item
>
</
Form
.
Item
>
</
TabPane
>
</
TabPane
>
<
TabPane
tab=
'SEO'
key=
'2'
forceRender
>
<
TabPane
tab=
{
<
TabFormErrors
dot=
{
badge
[
1
]
}
>
SEO
</
TabFormErrors
>
}
key=
'2'
forceRender
>
<
Form
.
Item
<
Form
.
Item
labelAlign=
"left"
labelAlign=
"left"
name=
"title"
name=
"title"
rules=
{
[{
required
:
true
,
message
:
intl
.
formatMessage
({
id
:
'logistics.qingshurubiaoti'
})
}]
}
rules=
{
[{
required
:
true
,
message
:
intl
.
formatMessage
({
id
:
'logistics.qingshurubiaoti'
})
}]
}
label=
{
<
RequireItem
label=
{
intl
.
formatMessage
({
id
:
'logistics.biaoti'
})
}
isRequire=
{
true
}
brief=
{
<
Tooltip
placement=
"top"
title=
{
intl
.
formatMessage
({
id
:
'logistics.yongyuxianshizaiyemiantitle'
})
}
><
QuestionCircleOutlined
/></
Tooltip
>
}
/>
}
label=
{
<
RequireItem
label=
{
intl
.
formatMessage
({
id
:
'logistics.biaoti'
})
}
isRequire=
{
true
}
brief=
{
<
Tooltip
placement=
"top"
title=
{
intl
.
formatMessage
({
id
:
'logistics.yongyuxianshizaiyemiantitle'
})
}
><
QuestionCircleOutlined
/></
Tooltip
>
}
/>
}
>
>
<
Input
placeholder=
{
intl
.
formatMessage
({
id
:
'logistics.zuichang100gezifu50ge'
})
}
maxLength=
{
100
}
className=
{
styles
.
form_item
}
/>
<
Input
placeholder=
{
intl
.
formatMessage
({
id
:
'logistics.zuichang100gezifu50ge'
})
}
maxLength=
{
100
}
className=
{
styles
.
form_item
}
/>
</
Form
.
Item
>
</
Form
.
Item
>
<
Form
.
Item
<
Form
.
Item
labelAlign=
"left"
labelAlign=
"left"
name=
"description"
name=
"description"
rules=
{
[{
required
:
true
,
message
:
intl
.
formatMessage
({
id
:
'logistics.qingshurumiaoshu'
})
}]
}
rules=
{
[{
required
:
true
,
message
:
intl
.
formatMessage
({
id
:
'logistics.qingshurumiaoshu'
})
}]
}
label=
{
<
RequireItem
label=
{
intl
.
formatMessage
({
id
:
'logistics.miaoshu'
})
}
isRequire=
{
true
}
brief=
{
<
Tooltip
placement=
"top"
title=
{
intl
.
formatMessage
({
id
:
'logistics.yongyuxianshizaiyemiantitle'
})
}
><
QuestionCircleOutlined
/></
Tooltip
>
}
/>
}
label=
{
<
RequireItem
label=
{
intl
.
formatMessage
({
id
:
'logistics.miaoshu'
})
}
isRequire=
{
true
}
brief=
{
<
Tooltip
placement=
"top"
title=
{
intl
.
formatMessage
({
id
:
'logistics.yongyuxianshizaiyemiantitle'
})
}
><
QuestionCircleOutlined
/></
Tooltip
>
}
/>
}
>
>
<
Input
.
TextArea
rows=
{
5
}
className=
{
styles
.
form_item
}
placeholder=
{
intl
.
formatMessage
({
id
:
'logistics.zuichang200gezifu100ge'
})
}
maxLength=
{
200
}
/>
<
Input
.
TextArea
rows=
{
5
}
className=
{
styles
.
form_item
}
placeholder=
{
intl
.
formatMessage
({
id
:
'logistics.zuichang200gezifu100ge'
})
}
maxLength=
{
200
}
/>
</
Form
.
Item
>
</
Form
.
Item
>
<
Form
.
Item
<
Form
.
Item
labelAlign=
"left"
labelAlign=
"left"
name=
"keywords"
name=
"keywords"
rules=
{
[{
required
:
true
,
message
:
intl
.
formatMessage
({
id
:
'logistics.qingshuruguanjianzi'
})
}]
}
rules=
{
[{
required
:
true
,
message
:
intl
.
formatMessage
({
id
:
'logistics.qingshuruguanjianzi'
})
}]
}
label=
{
<
RequireItem
label=
{
intl
.
formatMessage
({
id
:
'logistics.guanjianzi'
})
}
isRequire=
{
true
}
brief=
{
<
Tooltip
placement=
"top"
title=
{
intl
.
formatMessage
({
id
:
'logistics.yongyuxianshizaiyemiantitle'
})
}
><
QuestionCircleOutlined
/></
Tooltip
>
}
/>
}
label=
{
<
RequireItem
label=
{
intl
.
formatMessage
({
id
:
'logistics.guanjianzi'
})
}
isRequire=
{
true
}
brief=
{
<
Tooltip
placement=
"top"
title=
{
intl
.
formatMessage
({
id
:
'logistics.yongyuxianshizaiyemiantitle'
})
}
><
QuestionCircleOutlined
/></
Tooltip
>
}
/>
}
>
>
<
Input
.
TextArea
rows=
{
5
}
className=
{
styles
.
form_item
}
placeholder=
{
intl
.
formatMessage
({
id
:
'logistics.zuichang200gezifu100ge'
})
}
maxLength=
{
200
}
/>
<
Input
.
TextArea
rows=
{
5
}
className=
{
styles
.
form_item
}
placeholder=
{
intl
.
formatMessage
({
id
:
'logistics.zuichang200gezifu100ge'
})
}
maxLength=
{
200
}
/>
</
Form
.
Item
>
</
Form
.
Item
>
</
TabPane
>
</
TabPane
>
<
TabPane
tab=
{
intl
.
formatMessage
({
id
:
'logistics.shouyelunbotu'
})
}
key=
'3'
forceRender
>
<
TabPane
tab=
{
intl
.
formatMessage
({
id
:
'logistics.shouyelunbotu'
})
}
key=
'3'
forceRender
>
<
Form
.
Item
<
Form
.
Item
labelAlign=
"left"
labelAlign=
"left"
name=
"slideshowBOList"
name=
"slideshowBOList"
label=
{
<
RequireItem
label=
{
intl
.
formatMessage
({
id
:
'logistics.shouyelunbotu'
})
}
/>
}
label=
{
<
RequireItem
label=
{
intl
.
formatMessage
({
id
:
'logistics.shouyelunbotu'
})
}
/>
}
>
>
<
div
>
<
div
>
<
div
className=
{
styles
.
form_item_wrap
}
>
<
div
className=
{
styles
.
form_item_wrap
}
>
...
@@ -598,8 +631,8 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
...
@@ -598,8 +631,8 @@ const LogisticsInfo: React.FC<LogisticsInfoPropsType> = (props) => {
<
img
className=
{
styles
.
upload_img
}
src=
{
item
.
imgPath
}
/>
<
img
className=
{
styles
.
upload_img
}
src=
{
item
.
imgPath
}
/>
</
div
>
</
div
>
<
div
className=
{
styles
.
jump_link
}
>
<
div
className=
{
styles
.
jump_link
}
>
<
Typography
.
Text
type=
'secondary'
>
{
intl
.
formatMessage
({
id
:
'logistics.tiaozhuanlianjie'
})
}
</
Typography
.
Text
>
<
Typography
.
Text
type=
'secondary'
>
{
intl
.
formatMessage
({
id
:
'logistics.tiaozhuanlianjie'
})
}
</
Typography
.
Text
>
<
Input
addonBefore=
{
<
Typography
.
Text
type=
'secondary'
>
http://
</
Typography
.
Text
>
}
onChange=
{
(
value
)
=>
handleInputIndexPicsItem
(
value
,
index
)
}
value=
{
item
.
link
}
placeholder=
{
intl
.
formatMessage
({
id
:
'logistics.lunbotutiaozhuanlianjie'
})
}
/>
<
Input
addonBefore=
{
<
Typography
.
Text
type=
'secondary'
>
http://
</
Typography
.
Text
>
}
onChange=
{
(
value
)
=>
handleInputIndexPicsItem
(
value
,
index
)
}
value=
{
item
.
link
}
placeholder=
{
intl
.
formatMessage
({
id
:
'logistics.lunbotutiaozhuanlianjie'
})
}
/>
</
div
>
</
div
>
</
div
>
</
div
>
))
))
...
...
src/pages/transaction/dealAbility/inquiryOffer/waitAddOffer/components/productQuote.tsx
View file @
7f99aabb
...
@@ -27,7 +27,7 @@ const ProductQuoteLayout: React.FC<ProductQuoteLayoutProps> = (props: any) => {
...
@@ -27,7 +27,7 @@ const ProductQuoteLayout: React.FC<ProductQuoteLayoutProps> = (props: any) => {
const
count
=
(
num
:
any
,
price
:
any
)
=>
{
const
count
=
(
num
:
any
,
price
:
any
)
=>
{
let
money
:
any
=
null
;
let
money
:
any
=
null
;
money
=
(
Number
(
price
)
*
1
)
*
Number
(
num
);
money
=
(
Number
(
price
)
*
1
)
*
Number
(
num
);
return
Number
(
money
).
toFixed
(
2
)
;
return
Number
(
money
).
toFixed
(
2
)
}
}
const
handleChange
=
(
id
,
e
)
=>
{
const
handleChange
=
(
id
,
e
)
=>
{
const
{
value
}
=
e
.
target
const
{
value
}
=
e
.
target
...
@@ -37,6 +37,7 @@ const ProductQuoteLayout: React.FC<ProductQuoteLayoutProps> = (props: any) => {
...
@@ -37,6 +37,7 @@ const ProductQuoteLayout: React.FC<ProductQuoteLayoutProps> = (props: any) => {
v
.
money
=
count
(
v
.
purchaseCount
,
value
);
v
.
money
=
count
(
v
.
purchaseCount
,
value
);
}
}
})
})
console
.
log
(
dataSource
)
setDataSource
([...
dataSource
]);
setDataSource
([...
dataSource
]);
}
}
...
@@ -104,7 +105,8 @@ const ProductQuoteLayout: React.FC<ProductQuoteLayoutProps> = (props: any) => {
...
@@ -104,7 +105,8 @@ const ProductQuoteLayout: React.FC<ProductQuoteLayoutProps> = (props: any) => {
{
{
title
:
intl
.
formatMessage
({
id
:
'dealAbility.jine'
}),
title
:
intl
.
formatMessage
({
id
:
'dealAbility.jine'
}),
key
:
"money"
,
key
:
"money"
,
dataIndex
:
"money"
dataIndex
:
"money"
,
render
:
(
text
:
any
)
=>
<>
{
text
}
</>
},
},
{
{
title
:
intl
.
formatMessage
({
id
:
'dealAbility.caozuo'
}),
title
:
intl
.
formatMessage
({
id
:
'dealAbility.caozuo'
}),
...
@@ -221,6 +223,8 @@ const ProductQuoteLayout: React.FC<ProductQuoteLayoutProps> = (props: any) => {
...
@@ -221,6 +223,8 @@ const ProductQuoteLayout: React.FC<ProductQuoteLayoutProps> = (props: any) => {
})
})
},
[
commoditySkuId
])
},
[
commoditySkuId
])
console
.
log
(
dataSource
)
return
(
return
(
<
Card
<
Card
id=
"productQuoteLayout"
id=
"productQuoteLayout"
...
...
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