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
6c5035f9
Commit
6c5035f9
authored
Nov 16, 2020
by
前端-黄佳鑫
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'dev' of
http://10.0.0.22:3000/lingxi/lingxi-business-paltform
into dev
parents
b4a9d1a7
57ab3da6
Show whitespace changes
Inline
Side-by-side
Showing
29 changed files
with
195 additions
and
44 deletions
+195
-44
index.ts
src/constants/index.ts
+1
-1
UserHeader.tsx
src/layouts/components/UserHeader.tsx
+1
-1
selectProduct.tsx
...pages/commodity/products/addChannelItem/selectProduct.tsx
+2
-0
logisticsForm.tsx
...ages/commodity/products/addProductsItem/logisticsForm.tsx
+22
-2
priceAttributeForm.tsx
...commodity/products/addProductsItem/priceAttributeForm.tsx
+2
-2
directChannel.tsx
src/pages/commodity/products/directChannel.tsx
+3
-1
index.less
src/pages/commodity/products/index.less
+8
-0
index.tsx
src/pages/commodity/products/index.tsx
+3
-1
channelSchema.tsx
src/pages/commodity/products/schema/channelSchema.tsx
+5
-5
index.tsx
src/pages/lxMall/commodityDetail/index.tsx
+1
-1
index.tsx
src/pages/lxMall/components/AboutUs/index.tsx
+2
-2
index.less
src/pages/lxMall/components/ChannelHeader/index.less
+1
-1
index.tsx
src/pages/lxMall/components/ChannelHeader/index.tsx
+2
-0
index.tsx
src/pages/lxMall/components/CommonHeader/index.tsx
+20
-1
index.tsx
src/pages/lxMall/components/Recommand/index.tsx
+2
-2
index.less
src/pages/lxMall/components/ShopHeader/index.less
+1
-1
index.tsx
src/pages/lxMall/components/ShopHeader/index.tsx
+2
-0
LXIChannelLayout.tsx
src/pages/lxMall/layouts/LXIChannelLayout.tsx
+9
-2
index.tsx
src/pages/lxMall/pay/components/credit/index.tsx
+1
-0
index.tsx
src/pages/lxMall/pay/components/transfer/index.tsx
+2
-1
index.tsx
src/pages/lxMall/pay/components/wechat/index.tsx
+34
-3
index.tsx
src/pages/lxMall/pay/index.tsx
+1
-1
index.less
src/pages/lxMall/shopAbout/index.less
+25
-0
index.tsx
src/pages/lxMall/shopAbout/index.tsx
+21
-4
PositionSetting.tsx
src/pages/repositories/components/PositionSetting.tsx
+2
-0
index.tsx
...s/transaction/components/orderHandReceivedModal/index.tsx
+8
-8
index.less
src/pages/transaction/purchaseOrder/orderCollect/index.less
+9
-0
index.tsx
src/pages/transaction/purchaseOrder/orderCollect/index.tsx
+2
-1
index.tsx
src/pages/transaction/saleOrder/constant/index.tsx
+3
-3
No files found.
src/constants/index.ts
View file @
6c5035f9
export
const
NOT_CHANGE_VALUE
=
'hello, world'
// socket的链接地址, 默认会使用后端接口网关地址
export
const
SOCKET_URL
=
process
.
env
.
SOCKET_URL
||
process
.
env
.
BACK_GATEWAY
||
"ws://10.0.0.25:9400"
export
const
SOCKET_URL
=
process
.
env
.
SOCKET_URL
||
process
.
env
.
BACK_GATEWAY
.
replace
(
'http'
,
'ws'
)
||
"ws://10.0.0.25:9400"
export
const
MALL_TYPE
=
{
1
:
'企业商城'
,
...
...
src/layouts/components/UserHeader.tsx
View file @
6c5035f9
...
...
@@ -24,7 +24,7 @@ const UserHeader: React.FC<UserHeaderProps> = (props) => {
const
getRouteName
=
()
=>
{
switch
(
pathname
)
{
case
'/user/login'
:
setTitle
(
"欢登录"
)
setTitle
(
"欢
迎
登录"
)
break
case
'/user/register'
:
setTitle
(
"欢迎注册"
)
...
...
src/pages/commodity/products/addChannelItem/selectProduct.tsx
View file @
6c5035f9
...
...
@@ -58,6 +58,8 @@ const SelectProduct:React.FC<IProps> = (props) => {
title
:
'商品名称'
,
dataIndex
:
'name'
,
key
:
'name'
,
width
:
300
,
ellipsis
:
true
,
},
{
title
:
'品类'
,
...
...
src/pages/commodity/products/addProductsItem/logisticsForm.tsx
View file @
6c5035f9
...
...
@@ -37,6 +37,7 @@ const LogisticsForm: React.FC<Iprops> = (props) => {
const
[
carriageType
,
setCarriageType
]
=
useState
<
number
>
()
const
flagRef
=
useRef
<
boolean
>
(
false
)
const
[
banCarriageType
,
setBanCarriageType
]
=
useState
(
false
)
const
[
template
,
setTemplate
]
=
useState
(
false
)
// 是否必填运费模板
const
{
productInfoByEdit
,
selectCategoryId
,
productPriceType
}
=
ProductStore
...
...
@@ -102,6 +103,19 @@ const LogisticsForm: React.FC<Iprops> = (props) => {
logisticsForm
.
setFieldsValue
({
weight
:
null
})
}
const
changeCarriageType
=
(
e
)
=>
{
setCarriageType
(
e
.
target
.
value
)
if
(
e
.
target
.
value
===
2
)
{
setTemplate
(
true
)
setIsTemplate
(
true
)
logisticsForm
.
setFieldsValue
({
useTemplate
:
true
})
}
else
{
setTemplate
(
false
)
setIsTemplate
(
false
)
logisticsForm
.
setFieldsValue
({
useTemplate
:
false
})
}
}
return
(<>
<
Form
{
...
layout
}
...
...
@@ -140,7 +154,7 @@ const LogisticsForm: React.FC<Iprops> = (props) => {
},
]
}
>
<
Radio
.
Group
onChange=
{
(
e
)
=>
setCarriageType
(
e
.
target
.
value
)
}
disabled=
{
banCarriageType
}
>
<
Radio
.
Group
onChange=
{
changeCarriageType
}
disabled=
{
banCarriageType
}
>
<
Radio
value=
{
1
}
>
卖家承担运费(默认)
</
Radio
>
<
Radio
value=
{
2
}
>
买家承担运费
</
Radio
>
</
Radio
.
Group
>
...
...
@@ -174,13 +188,19 @@ const LogisticsForm: React.FC<Iprops> = (props) => {
valuePropName=
"checked"
label=
" "
>
<
Checkbox
onChange=
{
onChangeTemplate
}
>
使用运费模板(只有买家承担运费才能选择)
</
Checkbox
>
<
Checkbox
disabled=
{
template
}
onChange=
{
onChangeTemplate
}
>
使用运费模板(只有买家承担运费才能选择)
</
Checkbox
>
</
Form
.
Item
>
}
{
isTemplate
&&
<
Form
.
Item
name=
"templateId"
label=
"运费模板"
rules=
{
[
{
required
:
template
,
message
:
'请正确输入重量'
,
}
]
}
>
<
Select
placeholder=
"请选择运费模板"
...
...
src/pages/commodity/products/addProductsItem/priceAttributeForm.tsx
View file @
6c5035f9
...
...
@@ -330,11 +330,11 @@ const PriceAttributeForm: React.FC<Iprops> = (props) => {
if
(
updateFlag
.
current
){
// 初次渲染tab 再次进入tab采用缓存数据
_tempObj
[
'单价'
]
=
productInfoByEdit
.
unitPriceAndPicList
[
i
]?.
unitPrice
||
{}
}
else
{
_tempObj
[
'单价'
]
=
_tableDataSource
[
i
]
&&
tableDataSource
[
i
]
[
'单价'
]
||
{}
_tempObj
[
'单价'
]
=
_tableDataSource
[
i
]
&&
tableDataSource
[
i
]
||
{}
}
}
else
{
_tempObj
[
'对应货品'
]
=
selectedGoods
.
length
>
0
?
selectedGoods
[
0
].
id
:
0
_tempObj
[
'单价'
]
=
_tableDataSource
[
i
]
&&
tableDataSource
[
i
][
'单价'
]
||
{}
_tempObj
[
'单价'
]
=
_tableDataSource
[
i
]
&&
tableDataSource
[
i
]
&&
tableDataSource
[
i
]
[
'单价'
]
||
{}
}
// 价格属性变动引发的构建清空价格(仅清空一次)
if
(
clearPrice
.
current
){
...
...
src/pages/commodity/products/directChannel.tsx
View file @
6c5035f9
...
...
@@ -26,7 +26,7 @@ import { useAsyncSelect } from '@/formSchema/effects/useAsyncSelect'
import
{
searchBrandOptionEffect
,
searchCustomerCategoryOptionEffect
}
from
'./effect'
import
EyePreview
from
'@/components/EyePreview'
import
moment
from
'moment'
import
{
GetProductChannelCommodityGetShopResponse
}
from
'@/services'
import
{
GetProductChannelCommodityGetShopResponse
}
from
'@/services
/ProductApi
'
// 定义选择的行数据的类型
interface
Item
{
...
...
@@ -68,6 +68,8 @@ const DirectChannel: React.FC<{}> = () => {
dataIndex
:
[
'channelCommodity'
,
'commodity'
,
'name'
],
key
:
'id'
,
className
:
'commonPickColor'
,
width
:
300
,
ellipsis
:
true
,
render
:
(
text
:
any
,
record
:
any
)
=>
<
EyePreview
url=
{
`/memberCenter/commodityAbility/commodity/products/directChannel/detail?id=${record.id}`
}
>
...
...
src/pages/commodity/products/index.less
View file @
6c5035f9
...
...
@@ -258,3 +258,10 @@
}
}
}
.overFlowEllipsis {
width: 300px;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
\ No newline at end of file
src/pages/commodity/products/index.tsx
View file @
6c5035f9
...
...
@@ -109,7 +109,9 @@ const Products: React.FC<{}> = () => {
dataIndex
:
'name'
,
key
:
'name'
,
className
:
'commonPickColor'
,
render
:
(
text
:
any
,
record
:
any
)
=>
<
span
className=
"commonPickColor"
onClick=
{
()
=>
handleSee
(
record
)
}
>
{
text
}
<
EyeOutlined
/></
span
>
width
:
300
,
ellipsis
:
true
,
render
:
(
text
:
any
,
record
:
any
)
=>
<
a
title=
{
text
}
onClick=
{
()
=>
handleSee
(
record
)
}
>
{
text
}
<
EyeOutlined
/></
a
>
},
{
title
:
'品类'
,
...
...
src/pages/commodity/products/schema/channelSchema.tsx
View file @
6c5035f9
...
...
@@ -68,7 +68,7 @@ export const channelSchema: ISchema = {
defaultActiveFirstOption
:
false
,
filterOption
:
false
,
notFoundContent
:
null
,
style
:
{
width
:
'174px'
,
lineHeight
:
'32px'
},
//
style: { width: '174px', lineHeight: '32px' },
searchValue
:
null
,
dataoption
:
[],
},
...
...
@@ -83,7 +83,7 @@ export const channelSchema: ISchema = {
defaultActiveFirstOption
:
false
,
filterOption
:
false
,
notFoundContent
:
null
,
style
:
{
width
:
'174px'
,
lineHeight
:
'32px'
},
//
style: { width: '174px', lineHeight: '32px' },
searchValue
:
null
,
dataoption
:
[]
},
...
...
@@ -102,7 +102,7 @@ export const channelSchema: ISchema = {
],
'x-component-props'
:
{
placeholder
:
'商品来源'
,
style
:
{
width
:
'174px'
},
//
style: { width: '174px' },
},
},
statusList
:
{
...
...
@@ -123,7 +123,7 @@ export const channelSchema: ISchema = {
],
'x-component-props'
:
{
placeholder
:
'商品状态'
,
style
:
{
width
:
'174px'
},
//
style: { width: '174px' },
},
},
priceTypeList
:
{
...
...
@@ -144,7 +144,7 @@ export const channelSchema: ISchema = {
],
'x-component-props'
:
{
placeholder
:
'产品定价'
,
style
:
{
width
:
'174px'
},
//
style: { width: '174px' },
},
},
'NO_NAME_FIELD_$2'
:
{
...
...
src/pages/lxMall/commodityDetail/index.tsx
View file @
6c5035f9
...
...
@@ -262,7 +262,7 @@ const CommodityDetail = (props) => {
}
/**
* 获取会员权益
餐宿
* 获取会员权益
参数
* @param memberId
* @param memberRoleId
*/
...
...
src/pages/lxMall/components/AboutUs/index.tsx
View file @
6c5035f9
...
...
@@ -35,10 +35,10 @@ const AboutUs: React.FC<AboutUsPropsType> = (props) => {
link
=
`/shop/about?shopId=
${
shopUrlParam
}
`
break
case
LAYOUT_TYPE
.
channel
:
link
=
`
${
GlobalConfig
.
channelRootRoute
}
/about?
i
d=
${
shopUrlParam
}
`
link
=
`
${
GlobalConfig
.
channelRootRoute
}
/about?
channelI
d=
${
shopUrlParam
}
`
break
case
LAYOUT_TYPE
.
ichannel
:
link
=
`
${
GlobalConfig
.
ichannelRootRoute
}
/about?
i
d=
${
shopUrlParam
}
`
link
=
`
${
GlobalConfig
.
ichannelRootRoute
}
/about?
channelI
d=
${
shopUrlParam
}
`
break
}
return
link
...
...
src/pages/lxMall/components/ChannelHeader/index.less
View file @
6c5035f9
...
...
@@ -20,7 +20,7 @@
position: relative;
margin: auto 97px auto 20px;
&>
img {
img {
display: block;
margin: 0 auto;
max-width: 145px;
...
...
src/pages/lxMall/components/ChannelHeader/index.tsx
View file @
6c5035f9
...
...
@@ -53,7 +53,9 @@ const Header: React.FC<HeaderPropsType> = (props) => {
<
div
className=
{
styles
.
header
}
>
<
div
className=
{
styles
.
header_container
}
>
<
div
className=
{
styles
.
logo
}
>
<
a
href=
{
`${type === LAYOUT_TYPE.channel ? GlobalConfig.channelRootRoute : GlobalConfig.ichannelRootRoute}?channelId=${shopUrlParam}`
}
>
<
img
src=
{
shopInfo
?.
logo
}
/>
</
a
>
</
div
>
<
div
className=
{
styles
.
mall_search
}
>
<
div
className=
{
styles
.
mall_search_box
}
>
...
...
src/pages/lxMall/components/CommonHeader/index.tsx
View file @
6c5035f9
import
React
from
'react'
import
styles
from
'./index.less'
import
{
LAYOUT_TYPE
}
from
'@/constants'
import
{
GlobalConfig
}
from
'@/global/config'
interface
ShopHeaderPropsType
{
title
?:
string
;
...
...
@@ -11,13 +12,31 @@ interface ShopHeaderPropsType {
const
CommonHeader
:
React
.
FC
<
ShopHeaderPropsType
>
=
(
props
)
=>
{
const
{
title
,
logoUrl
}
=
props
const
{
title
,
logoUrl
,
type
,
shopUrlParam
}
=
props
const
getLink
=
()
=>
{
let
url
:
string
=
''
switch
(
type
)
{
case
LAYOUT_TYPE
.
channel
:
url
=
`
${
GlobalConfig
.
channelRootRoute
}
?channelId=
${
shopUrlParam
}
`
break
case
LAYOUT_TYPE
.
ichannel
:
url
=
`
${
GlobalConfig
.
ichannelRootRoute
}
?channelId=
${
shopUrlParam
}
`
break
default
:
url
=
'/'
break
}
return
url
}
return
(
<
div
className=
{
styles
.
common_header
}
>
<
div
className=
{
styles
.
common_header_container
}
>
<
div
className=
{
styles
.
logo
}
>
<
a
href=
{
getLink
()
}
>
<
img
src=
{
logoUrl
}
/>
</
a
>
</
div
>
<
div
className=
{
styles
.
common_header_split
}
></
div
>
<
div
className=
{
styles
.
common_header_title
}
>
{
title
}
</
div
>
...
...
src/pages/lxMall/components/Recommand/index.tsx
View file @
6c5035f9
...
...
@@ -184,7 +184,7 @@ const Recommand: React.FC<RecommandPropsType> = (props) => {
return
link
}
return
(
return
(
list
&&
list
.
length
>
0
)
?
(
<
div
className=
{
styles
.
recommand
}
>
<
div
className=
{
styles
.
recommand_title
}
>
买家还在看
</
div
>
<
div
className=
{
styles
.
recommand_list
}
>
...
...
@@ -206,7 +206,7 @@ const Recommand: React.FC<RecommandPropsType> = (props) => {
}
</
div
>
</
div
>
)
)
:
null
}
export
default
inject
(
'SiteStore'
)(
observer
(
Recommand
))
src/pages/lxMall/components/ShopHeader/index.less
View file @
6c5035f9
...
...
@@ -55,7 +55,7 @@
height: 48px;
margin-right: 8px;
&>
img {
img {
width: 48px;
height: 48px;
}
...
...
src/pages/lxMall/components/ShopHeader/index.tsx
View file @
6c5035f9
...
...
@@ -95,7 +95,9 @@ const ShopHeader: React.FC<ShopHeaderPropsType> = (props) => {
<
div
className=
{
styles
.
shop_header_split
}
></
div
>
<
div
className=
{
styles
.
shop_header_info
}
>
<
div
className=
{
styles
.
shop_header_info_logo
}
>
<
a
href=
{
`/shop?shopId=${shopUrlParam}`
}
>
<
img
src=
{
shopInfo
?.
logo
}
/>
</
a
>
</
div
>
<
div
className=
{
styles
.
shop_header_info_content
}
>
<
div
className=
{
styles
.
shop_header_info_content_name
}
>
...
...
src/pages/lxMall/layouts/LXIChannelLayout.tsx
View file @
6c5035f9
import
React
,
{
useEffect
,
useState
}
from
'react'
import
React
,
{
Fragment
,
useEffect
,
useState
}
from
'react'
import
{
BasicLayoutProps
as
ProLayoutProps
,
getMenuData
}
from
'@ant-design/pro-layout'
import
SelectLang
from
'@/layouts/components/SelectLang'
import
{
useIntl
}
from
'umi'
import
{
useIntl
,
Helmet
}
from
'umi'
import
{
LAYOUT_TYPE
}
from
"@/constants"
import
{
inject
,
observer
}
from
'mobx-react'
import
TopBar
from
'../components/TopBar'
...
...
@@ -82,6 +82,12 @@ const LXIChannelLayout: React.FC<LXIChannelLayoutPropsType> = (props) => {
},
[
shopInfo
])
return
(
<
Fragment
>
<
Helmet
>
{
shopInfo
?
<
title
>
{
shopInfo
.
company
}
</
title
>
:
null
}
</
Helmet
>
<
div
className=
{
styles
.
lxmall_page
}
>
<
TopBar
langComponent=
{
<
SelectLang
/>
}
name=
{
shopInfo
?.
company
}
type=
{
LAYOUT_TYPE
.
ichannel
}
shopUrlParam=
{
channelId
}
/>
<
div
className=
{
styles
.
content
}
>
...
...
@@ -110,6 +116,7 @@ const LXIChannelLayout: React.FC<LXIChannelLayoutPropsType> = (props) => {
<
Footer
/>
<
SideNav
type=
{
LAYOUT_TYPE
.
ichannel
}
shopUrlParam=
{
channelId
}
/>
</
div
>
</
Fragment
>
)
}
...
...
src/pages/lxMall/pay/components/credit/index.tsx
View file @
6c5035f9
...
...
@@ -80,6 +80,7 @@ const CreditPayWay: React.FC<CreditPayWayPropsType> = (props) => {
let
param
=
{
id
:
Number
(
orderId
),
paymentInformationId
:
Number
(
payInfo
.
paymentInformationId
),
payTypeId
:
payInfo
.
paymentChannelsId
,
payPassword
:
Number
(
payPassword
)
}
setConfirmLoading
(
true
)
...
...
src/pages/lxMall/pay/components/transfer/index.tsx
View file @
6c5035f9
...
...
@@ -70,8 +70,9 @@ const TransferPayWay: React.FC<TransferPayWayPropsType> = (props) => {
return
}
let
param
=
{
id
:
orderId
,
id
:
Number
(
orderId
)
,
paymentInformationId
:
payInfo
.
paymentInformationId
,
payTypeId
:
payInfo
.
paymentChannelsId
,
payOrderUrls
:
JSON
.
stringify
([
payOrderUrl
])
}
setConfirmLoading
(
true
)
...
...
src/pages/lxMall/pay/components/wechat/index.tsx
View file @
6c5035f9
import
React
from
'react'
import
React
,
{
useEffect
}
from
'react'
import
{
GetOrderOrderPayDetailsResponse
}
from
'@/services/OrderApi'
import
{
LAYOUT_TYPE
}
from
'@/constants'
import
wechatIcon
from
'@/assets/imgs/wechat_icon.png'
import
wechatImg
from
'@/assets/imgs/wechat.png'
import
{
priceFormat
}
from
'@/utils/numberFomat'
import
{
PublicApi
}
from
'@/services/api'
import
styles
from
'./index.less'
import
{
useState
}
from
'react'
interface
WechatPayWayPropsType
{
payInfo
:
GetOrderOrderPayDetailsResponse
,
orderInfo
:
any
,
orderId
:
number
,
onChange
:
Function
,
layoutType
?:
LAYOUT_TYPE
,
shopUrlParam
?:
string
}
const
WechatPayWay
:
React
.
FC
<
WechatPayWayPropsType
>
=
(
props
)
=>
{
const
{
payInfo
,
orderId
,
onChange
,
orderInfo
,
layoutType
,
shopUrlParam
}
=
props
const
[
wechatPayUrl
,
setWechatPayUrl
]
=
useState
<
string
>
(
''
)
useEffect
(()
=>
{
pay
()
},
[])
const
pay
=
()
=>
{
let
param
=
{
id
:
Number
(
orderId
),
paymentInformationId
:
payInfo
.
paymentInformationId
,
payTypeId
:
payInfo
.
paymentChannelsId
,
}
//@ts-ignore
PublicApi
.
postOrderPendingOrderPay
(
param
).
then
(
res
=>
{
// setWechatPayUrl(res.data)
}).
catch
(()
=>
{
onChange
(
false
)
})
}
return
(
<>
...
...
@@ -22,7 +53,7 @@ const WechatPayWay: React.FC<WechatPayWayPropsType> = (props) => {
</
div
>
<
div
className=
{
styles
.
wechat_payway_needpay
}
>
<
label
>
当前需支付:
</
label
>
<
span
>
20,000
</
span
>
<
span
>
{
priceFormat
(
payInfo
.
payPrice
)
}
</
span
>
<
label
>
RMB
</
label
>
</
div
>
</
div
>
...
...
src/pages/lxMall/pay/index.tsx
View file @
6c5035f9
...
...
@@ -107,7 +107,7 @@ const PayPage: React.FC<PayPagePropsType> = (props) => {
case
PayWayType
.
credit
:
return
<
CreditPayWay
payInfo=
{
payInfo
}
orderInfo=
{
orderInfo
}
orderId=
{
orderId
}
onChange=
{
(
state
)
=>
handlePayChangge
(
state
)
}
{
...
props
}
/>
case
PayWayType
.
wechat
:
return
<
WechatPayWay
/>
return
<
WechatPayWay
payInfo=
{
payInfo
}
orderInfo=
{
orderInfo
}
orderId=
{
orderId
}
onChange=
{
(
state
)
=>
handlePayChangge
(
state
)
}
{
...
props
}
/>
case
PayWayType
.
bank
:
return
<
BankPayWay
/>
case
PayWayType
.
transfer
:
...
...
src/pages/lxMall/shopAbout/index.less
View file @
6c5035f9
...
...
@@ -348,3 +348,27 @@
}
}
}
.mallComfirm {
position: relative;
:global {
.ant-modal-confirm-btns {
.ant-btn {
&:hover {
color: var(--mall_main_color);
border-color: var(--mall_main_color);
}
}
.ant-btn-primary {
background-color: var(--mall_main_color);
border-color: var(--mall_main_color);
&:hover {
color: #ffffff;
}
}
}
}
}
\ No newline at end of file
src/pages/lxMall/shopAbout/index.tsx
View file @
6c5035f9
import
React
,
{
useState
,
useEffect
}
from
'react'
import
{
Rate
,
Button
,
message
}
from
'antd'
import
{
Rate
,
Button
,
message
,
Modal
}
from
'antd'
import
{
LeftOutlined
,
RightOutlined
}
from
'@ant-design/icons'
import
cx
from
'classnames'
import
shop_icon
from
'@/assets/imgs/shop_icon.png'
...
...
@@ -44,18 +44,35 @@ const ShopAbout: React.FC<ShopAboutPropType> = (props) => {
const
applyFroVip
=
()
=>
{
if
(
shopInfo
)
{
Modal
.
confirm
({
centered
:
true
,
className
:
styles
.
mallComfirm
,
content
:
layoutType
===
LAYOUT_TYPE
.
shop
?
`是否申请成为该店铺会员?`
:
'是否申请成为该渠道所属下级渠道会员?'
,
onOk
:
()
=>
{
return
new
Promise
((
resolve
,
reject
)
=>
{
let
param
=
{
memberId
:
shopInfo
.
memberId
,
roleId
:
shopInfo
.
roleId
}
setApplyLoading
(
true
)
PublicApi
.
postMemberAbilityMallSubApply
(
param
).
then
((
res
)
=>
{
if
(
res
.
code
===
1000
)
{
}
if
(
res
.
code
===
1000
)
{
resolve
()
}
else
{
reject
()
}
setApplyLoading
(
false
)
}).
catch
(()
=>
{
setApplyLoading
(
false
)
reject
()
})
})
}
})
}
}
const
handleCollect
=
()
=>
{
...
...
@@ -106,7 +123,7 @@ const ShopAbout: React.FC<ShopAboutPropType> = (props) => {
{
layoutType
===
LAYOUT_TYPE
.
shop
&&
<
div
className=
{
cx
(
styles
.
shop_about_btn
,
collectState
?
styles
.
active
:
""
)
}
onClick=
{
()
=>
handleCollect
()
}
>
{
collectState
?
'已收藏本店'
:
'收藏本店'
}
</
div
>
}
<
Button
loading=
{
applyLoading
}
className=
{
cx
(
styles
.
shop_about_btn
,
styles
.
primary
)
}
onClick=
{
()
=>
applyFroVip
()
}
>
申请成为本店会员
</
Button
>
<
Button
loading=
{
applyLoading
}
className=
{
cx
(
styles
.
shop_about_btn
,
styles
.
primary
)
}
onClick=
{
()
=>
applyFroVip
()
}
>
{
layoutType
===
LAYOUT_TYPE
.
shop
?
'申请成为本店会员'
:
'申请加盟'
}
</
Button
>
</
div
>
</
div
>
<
div
className=
{
cx
(
styles
.
shop_about_info_item
,
styles
.
auto_width
)
}
>
...
...
@@ -137,7 +154,7 @@ const ShopAbout: React.FC<ShopAboutPropType> = (props) => {
</
div
>
<
div
className=
{
styles
.
shop_about_split
}
>
<
div
className=
{
styles
.
shop_about_split_line
}
></
div
>
<
div
className=
{
styles
.
shop_about_split_text
}
>
公司
介绍
</
div
>
<
div
className=
{
styles
.
shop_about_split_text
}
>
公司介绍
</
div
>
<
div
className=
{
styles
.
shop_about_split_line
}
></
div
>
</
div
>
<
div
className=
{
styles
.
shop_workshopimg_list
}
>
...
...
src/pages/repositories/components/PositionSetting.tsx
View file @
6c5035f9
...
...
@@ -306,6 +306,8 @@ const PositionSetting:React.FC<PositionSettingProps> = (props) => {
dataIndex
:
'name'
,
align
:
'center'
,
key
:
'name'
,
width
:
210
,
ellipsis
:
true
,
},
{
title
:
'品类'
,
...
...
src/pages/transaction/components/orderHandReceivedModal/index.tsx
View file @
6c5035f9
...
...
@@ -45,20 +45,20 @@ const OrderHandReceivedModal:React.FC<OrderHandReceivedModalProps> = ({currentRe
formData
&&
<>
<
Row
>
<
Col
span=
{
6
}
>
发货地址:
</
Col
>
<
Col
>
{
formData
.
name
}
</
Col
>
<
Col
span=
{
6
}
>
<
p
>
发货地址:
</
p
>
</
Col
>
<
Col
>
<
p
>
{
formData
.
name
}
</
p
>
</
Col
>
</
Row
>
<
Row
>
<
Col
span=
{
6
}
>
发货时间:
</
Col
>
<
Col
>
{
moment
(
formData
.
deliverTime
).
format
(
'YYYY-MM-DD'
)
}
</
Col
>
<
Col
span=
{
6
}
>
<
p
>
发货时间:
</
p
>
</
Col
>
<
Col
>
<
p
>
{
moment
(
formData
.
deliverTime
).
format
(
'YYYY-MM-DD'
)
}
</
p
>
</
Col
>
</
Row
>
<
Row
>
<
Col
span=
{
6
}
>
物流单号:
</
Col
>
<
Col
>
{
formData
.
deliverNo
}
</
Col
>
<
Col
span=
{
6
}
>
<
p
>
物流单号:
</
p
>
</
Col
>
<
Col
>
<
p
><
a
href=
{
`https://www.kuaidi100.com/chaxun?nu=${formData.deliverNo}`
}
target=
"_blank"
>
{
formData
.
deliverNo
}
</
a
></
p
>
</
Col
>
</
Row
>
<
Row
>
<
Col
span=
{
6
}
>
物流公司:
</
Col
>
<
Col
>
{
formData
.
logisticsCompany
}
</
Col
>
<
Col
span=
{
6
}
>
<
p
>
物流公司:
</
p
>
</
Col
>
<
Col
>
<
p
>
{
formData
.
logisticsCompany
}
</
p
>
</
Col
>
</
Row
>
</>
}
...
...
src/pages/transaction/purchaseOrder/orderCollect/index.less
0 → 100644
View file @
6c5035f9
.orderCollectCard {
:global {
.ant-form-item-explain-error {
position: absolute;
top: 92%;
}
}
}
\ No newline at end of file
src/pages/transaction/purchaseOrder/orderCollect/index.tsx
View file @
6c5035f9
...
...
@@ -29,6 +29,7 @@ import { changeRouterTitleByStatus } from '../../_public/order/utils'
import
{
ReadyAddOrderDetailContext
}
from
'../context'
import
AuditProcess
from
'@/components/AuditProcess'
import
styles
from
'./index.less'
export
interface
PurchaseOrderDetailProps
{}
...
...
@@ -329,7 +330,7 @@ const PurchaseOrderDetail:React.FC<PurchaseOrderDetailProps> = (props) => {
[]
}
></
AuditProcess
>
}
<
Card
className=
''
style=
{
{
marginTop
:
24
}
}
>
<
Card
className=
{
styles
.
orderCollectCard
}
style=
{
{
marginTop
:
24
}
}
>
<
NiceForm
loading=
{
formLoading
}
previewPlaceholder=
' '
...
...
src/pages/transaction/saleOrder/constant/index.tsx
View file @
6c5035f9
...
...
@@ -28,10 +28,10 @@ export const baseOrderListColumns: any[] = [
key
:
'orderThe'
,
},
{
title
:
'
供应
会员'
,
title
:
'
采购
会员'
,
align
:
'center'
,
dataIndex
:
'
supplyMembers
Name'
,
key
:
'
supplyMembers
Name'
,
dataIndex
:
'
member
Name'
,
key
:
'
member
Name'
,
},
{
title
:
'下单时间'
,
...
...
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