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
linweijiong
jinfa-platform
Commits
573c6cc0
Commit
573c6cc0
authored
Feb 09, 2022
by
前端-钟卫鹏
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'v2' of
http://10.0.0.22:3000/lingxi/lingxi-business-paltform
into v2
parents
357331ae
13afc035
Hide whitespace changes
Inline
Side-by-side
Showing
29 changed files
with
351 additions
and
118 deletions
+351
-118
balanceRoute.ts
config/routes/balanceRoute.ts
+15
-0
index.ts
config/routes/index.ts
+3
-3
env.js
env.js
+1
-1
index.tsx
src/components/CheckBoxTree/index.tsx
+13
-5
index.tsx
src/components/CitySelect/index.tsx
+22
-2
useTreeTabs.ts
src/hooks/useTreeTabs.ts
+3
-4
balance.ts
src/locales/en-US/balance.ts
+3
-0
balance.ts
src/locales/ko-KR/balance.ts
+2
-0
balance.ts
src/locales/zh-CN/balance.ts
+2
-0
memberDetail.tsx
src/pages/authConfig/memberSystem/memberDetail.tsx
+25
-23
useHandleSettlementList.tsx
...sPayable/settlementList/hooks/useHandleSettlementList.tsx
+31
-2
orderDetail.tsx
...es/balance/accountsPayable/settlementList/orderDetail.tsx
+2
-2
index.tsx
src/pages/balance/accountsReceivable/invoice/index.tsx
+9
-8
useHandleSettlementList.tsx
...ceivable/settlementList/hooks/useHandleSettlementList.tsx
+31
-2
orderDetail.tsx
...balance/accountsReceivable/settlementList/orderDetail.tsx
+2
-3
columns.tsx
src/pages/balance/common/columns.tsx
+3
-3
invoiceDrawerInfo.tsx
...es/balance/components/InvoiceCreate/invoiceDrawerInfo.tsx
+1
-1
useHandleSettlementList.tsx
...lement/couponSettlement/hooks/useHandleSettlementList.tsx
+11
-16
index.tsx
...ges/balance/platformSettlement/couponSettlement/index.tsx
+14
-10
info.tsx
...ages/balance/platformSettlement/couponSettlement/info.tsx
+133
-0
index.tsx
...ance/platformSettlement/couponSettlement/schema/index.tsx
+9
-14
index.tsx
src/pages/balance/platformSettlement/integral/index.tsx
+1
-5
index.tsx
src/pages/channel/channelInfo/index.tsx
+3
-3
viewDirectChannel.tsx
src/pages/commodity/products/viewDirectChannel.tsx
+1
-1
index.tsx
src/pages/content/announcements/index.tsx
+1
-1
index.tsx
src/pages/content/infomation/index.tsx
+1
-1
useInitialValue.tsx
src/pages/member/common/hooks/useInitialValue.tsx
+4
-4
commodity.tsx
src/pages/systemSetting/collection/commodity.tsx
+2
-2
index.tsx
...esManagement/activePage/components/ActivityItem/index.tsx
+3
-2
No files found.
config/routes/balanceRoute.ts
View file @
573c6cc0
...
...
@@ -114,6 +114,21 @@ const BalancedRoute = {
component
:
'@/pages/balance/platformSettlement/integral/info'
,
hideInMenu
:
true
,
},
// 平台结算管理 -> 优惠券管理
{
path
:
'/memberCenter/balance/platformSettlement/coupon'
,
name
:
'coupon'
,
icon
:
'smile'
,
component
:
'@/pages/balance/platformSettlement/couponSettlement'
,
},
// 平台结算管理 -> 优惠券管理详情页
{
path
:
'/memberCenter/balance/platformSettlement/coupon/detail'
,
name
:
'couponInfo'
,
icon
:
'smile'
,
component
:
'@/pages/balance/platformSettlement/couponSettlement/info'
,
hideInMenu
:
true
,
},
],
},
// 应付账款管理
...
...
config/routes/index.ts
View file @
573c6cc0
...
...
@@ -16,6 +16,7 @@ import CommodityRoute from './commodityRoute' // 商品能力路由
// import HandlingRoute from './handlingRoute'; // 加工能力
// import DealAbilityRoute from './dealAbilityRoute'; //
// import marketingRoute from './marketingRoute';
// import BalancedRoute from './balanceRoute';
import
asyncRoutes
from
'../router.config.json'
;
// import ProcurementRoute from './procurementRoute';
// import { callForBidsRoute } from './procurementRoute/callForBids';
...
...
@@ -23,7 +24,6 @@ import asyncRoutes from '../router.config.json';
// import contracRoute from './contracRoute';
// export const routes = [CommodityRoute, MemberRoute, ShopRoute, ChannelRoute, TranactionRoute, AfterService, PayandSettleRoute, LogisticsRoute, AuthConfigRoute, HandlingRoute, BalaceRoute]
/** process.env.NODE_ENV === "development" */
const
isDev
=
false
;
const
homeRoute
=
{
path
:
`/memberCenter/home`
,
...
...
@@ -32,8 +32,8 @@ const homeRoute = {
key
:
'home'
,
component
:
'@/pages/home'
,
};
// const routes = isDev ? [ homeRoute, marketingRoute, Member
Route ] : asyncRoutes;
const
routes
=
isDev
?
[
CommodityRoute
]
:
asyncRoutes
;
const
routes
=
isDev
?
[
home
Route
]
:
asyncRoutes
;
//
const routes = isDev ? [ CommodityRoute ] : asyncRoutes;
const
memberCenterRoute
=
{
path
:
'/memberCenter'
,
...
...
env.js
View file @
573c6cc0
...
...
@@ -129,7 +129,7 @@ module.exports = {
ssh
:
JSON
.
stringify
({
user
:
"root"
,
// Password optional, prompted if none given
password
:
"
12345
6"
,
password
:
"
SsyLingxi@test66
6"
,
host
:
"10.0.0.17"
,
port
:
22
,
localRoot
:
path
.
resolve
(
'./dist/'
),
...
...
src/components/CheckBoxTree/index.tsx
View file @
573c6cc0
import
React
,
{
RefObject
,
useRef
}
from
'react'
;
import
React
,
{
RefObject
,
useRef
,
useEffect
}
from
'react'
;
import
{
Button
,
Checkbox
}
from
'antd'
;
import
{
useSelections
}
from
'@umijs/hooks'
;
import
{
findTreeKeys
}
from
'@/utils'
;
...
...
@@ -13,6 +13,7 @@ export interface CheckboxTreeProps {
showSave
?;
disabled
?:
boolean
;
actions
?:
RefObject
<
any
>
;
checkIds
:
any
;
}
const
CheckboxTree
:
React
.
FC
<
CheckboxTreeProps
>
=
props
=>
{
...
...
@@ -24,6 +25,7 @@ const CheckboxTree: React.FC<CheckboxTreeProps> = props => {
disabled
,
showSave
,
handleSubmit
,
checkIds
,
}
=
props
;
const
checkedKeys
=
findTreeKeys
(
checkedNodes
,
'id'
);
const
{
...
...
@@ -49,8 +51,13 @@ const CheckboxTree: React.FC<CheckboxTreeProps> = props => {
selectAll
();
}
};
useEffect
(()
=>
{
for
(
let
i
=
0
;
i
<
checkIds
?.
length
;
i
++
)
{
selected
.
push
(
checkIds
[
i
])
}
},
[
checkIds
])
const
checkChange
=
(
e
?)
=>
{
handleChange
&&
handleChange
(
e
);
};
return
(
...
...
@@ -60,11 +67,11 @@ const CheckboxTree: React.FC<CheckboxTreeProps> = props => {
<
div
>
{
props
.
title
}
</
div
>
<
div
>
<
Button
onClick=
{
toggleSelectAll
}
type=
"link"
disabled=
{
disabled
}
>
{
allSelected
?
intl
.
formatMessage
({
id
:
'components.quxiaoquanxuan'
})
:
intl
.
formatMessage
({
id
:
'components.quanxuan'
})
}
{
allSelected
?
intl
.
formatMessage
({
id
:
'components.quxiaoquanxuan'
})
:
intl
.
formatMessage
({
id
:
'components.quanxuan'
})
}
</
Button
>
{
showSave
&&
(
<
Button
onClick=
{
handleSubmit
}
type=
"link"
disabled=
{
disabled
}
>
{
intl
.
formatMessage
({
id
:
'components.baocun'
})
}
{
intl
.
formatMessage
({
id
:
'components.baocun'
})
}
</
Button
>
)
}
</
div
>
...
...
@@ -80,8 +87,9 @@ const CheckboxTree: React.FC<CheckboxTreeProps> = props => {
disabled=
{
disabled
}
onClick=
{
()
=>
toggle
(
v
.
id
)
}
checked=
{
isSelected
(
v
.
id
)
}
// checked=
{
checkIds
?
.
indexOf
[
v
?
.
id
]
!=
-1
?
false
:
true
}
>
{
v
.
buttonN
ame
}
{
v
.
n
ame
}
</
Checkbox
>
</
li
>
);
...
...
src/components/CitySelect/index.tsx
View file @
573c6cc0
import
React
,
{
memo
,
useState
,
Fragment
,
forwardRef
,
useEffect
}
from
'react'
/*
* @Author: ghua
* @Date: 2021-05-10 11:36:58
* @LastEditors: ghua
* @LastEditTime: 2021-05-11 10:16:12
* @Description: 地区选择组件
*/
import
React
,
{
useState
,
Fragment
,
forwardRef
,
useEffect
}
from
'react'
import
{
Select
}
from
'antd'
import
{
PlusOutlined
,
MinusOutlined
}
from
'@ant-design/icons'
import
cx
from
'classnames'
...
...
@@ -34,6 +41,11 @@ const CityCascader: React.FC<CitySelectPropsType> = (props) => {
fetchAreaList
()
},
[])
/**
* 根据省编码获取省份信息
* @param id
* @returns
*/
const
getProviceById
=
(
id
:
number
)
=>
{
let
result
=
0
provinceData
&&
provinceData
.
map
(
item
=>
{
...
...
@@ -44,6 +56,12 @@ const CityCascader: React.FC<CitySelectPropsType> = (props) => {
return
result
}
/**
* 根绝id获取区信息
* @param id 城市编码
* @param provinceCode 省编码
* @returns
*/
const
getCityById
=
(
id
:
number
,
provinceCode
:
string
)
=>
{
let
result
=
0
!
isEmpty
(
cityData
)
&&
cityData
[
provinceCode
].
map
(
item
=>
{
...
...
@@ -54,7 +72,9 @@ const CityCascader: React.FC<CitySelectPropsType> = (props) => {
return
result
}
/**
* 查询省市区数据
*/
const
fetchAreaList
=
()
=>
{
getManageAreaAll
().
then
(
res
=>
{
initProvinceAndCityData
(
res
.
data
)
...
...
src/hooks/useTreeTabs.ts
View file @
573c6cc0
...
...
@@ -45,7 +45,7 @@ export const useTreeTabs = (options: useTreeTabOptions = {}) => {
setTreeData
(
res
.
data
||
[])
}
}
const
handleSelect
=
(
selectKey
?,
node
?)
=>
{
if
(
selectCallback
)
{
selectCallback
(
selectKey
,
node
)
...
...
@@ -76,7 +76,7 @@ export const useTreeTabs = (options: useTreeTabOptions = {}) => {
handleFindDetail
(
selectKey
)
setIsEditForm
(
false
)
resetDetail
&&
resetDetail
()
resolve
()
resolve
(
true
)
},
onCancel
()
{
reject
()
...
...
@@ -154,4 +154,4 @@ export const useTreeTabs = (options: useTreeTabOptions = {}) => {
toolsRender
,
handleDeleteMenu
}
}
\ No newline at end of file
}
src/locales/en-US/balance.ts
View file @
573c6cc0
...
...
@@ -574,4 +574,6 @@ export default {
'balance.jisongriqi'
:
'Delivery date'
,
'balance.fapiaohaoma'
:
'Invoice number'
,
'balance.querenduizhangdan'
:
'Confirm the statement'
,
'balance.coupon.amout'
:
'couponAmount'
,
'balance.coupon.couponNo'
:
'couponNo'
,
}
\ No newline at end of file
src/locales/ko-KR/balance.ts
View file @
573c6cc0
...
...
@@ -575,4 +575,6 @@ export default {
'balance.jisongriqi'
:
'발송 일자'
,
'balance.fapiaohaoma'
:
'영수증 번호'
,
'balance.querenduizhangdan'
:
'청구서 확인'
,
'balance.coupon.amout'
:
'쿠폰 금액'
,
'balance.coupon.couponNo'
:
'쿠폰 쿠폰'
,
}
src/locales/zh-CN/balance.ts
View file @
573c6cc0
...
...
@@ -762,5 +762,7 @@ export default {
'balance.businessRequestFunds.detail.columns.canWriteOffAmount'
:
'可核销金额'
,
'balance.businessRequestFunds.search.columns.payee'
:
'收款方'
,
'balance.coupon.amout'
:
'优惠券金额'
,
'balance.coupon.couponNo'
:
'优惠券券码'
,
}
src/pages/authConfig/memberSystem/memberDetail.tsx
View file @
573c6cc0
...
...
@@ -125,6 +125,8 @@ const MemberDetail: React.FC<{}> = () => {
const
formInitValue
=
nodeRecord
?
getButtonAuth
(
nodeRecord
.
key
)
:
{};
const
[
errors
,
setErrors
]
=
useState
<
boolean
>
(
false
);
const
[
formValue
,
setFormValue
]
=
useState
<
any
>
(
null
);
// 控制按钮权限是否能勾选
const
[
checkflag
,
setcheckflag
]
=
useState
<
boolean
>
(
false
)
// 储存的按钮数据
const
[
buttonInfos
,
setButtonInfos
]
=
useState
<
any
>
([]);
...
...
@@ -161,12 +163,8 @@ const MemberDetail: React.FC<{}> = () => {
menuId
:
node
?
node
.
id
:
nodeRecord
.
id
,
...
params
,
});
console
.
log
(
data
,
'data'
)
if
(
!
isAdd
&&
data
.
orgIds
)
{
console
.
log
(
plateformTreeData
,
'plateformTreeData'
);
console
.
log
(
data
.
orgIds
,
'data.orgIds'
);
let
plateformTreeDataList
=
mapkey
(
plateformTreeData
,
data
.
orgIds
,
[])
console
.
log
(
plateformTreeDataList
)
setplateformTreeList
(
plateformTreeDataList
)
}
setButtonAuth
(
node
.
id
,
data
);
...
...
@@ -195,8 +193,12 @@ const MemberDetail: React.FC<{}> = () => {
});
const
handleNodeSelected
=
async
(
selectKey
,
selectNode
)
=>
{
console
.
log
(
actionRef
.
current
.
selected
)
try
{
const
{
node
}
=
await
handleSelect
(
selectKey
,
selectNode
);
const
res
=
getMemberRoleAuthButton
({
menuId
:
selectKey
})
setcheckflag
(
treeActions
.
getSelectKeys
().
indexOf
(
selectKey
)
!=
-
1
)
// console.log(node)
if
(
nodeRecord
)
{
return
new
Promise
((
resolve
,
reject
)
=>
{
if
(
selectKey
!==
nodeRecord
.
key
)
{
...
...
@@ -204,6 +206,7 @@ const MemberDetail: React.FC<{}> = () => {
.
then
(()
=>
{
setNodeRecord
(
node
);
fetchItemDetailData
(
node
);
setButtonInfos
(
node
.
buttons
)
resolve
(
true
);
})
.
catch
(()
=>
{
...
...
@@ -220,6 +223,12 @@ const MemberDetail: React.FC<{}> = () => {
}
catch
(
error
)
{
}
};
const
handleCheck
=
async
(
e
)
=>
{
const
{
checked
}
=
e
;
if
(
nodeRecord
)
{
setcheckflag
(
checked
.
indexOf
(
nodeRecord
.
id
)
!=
-
1
?
true
:
false
)
}
}
// 编辑和预览模式下需回显数据
const
fetchRoleMenuDetail
=
async
id
=>
{
// 10秒缓存
...
...
@@ -243,10 +252,8 @@ const MemberDetail: React.FC<{}> = () => {
},
[]);
useEffect
(()
=>
{
// console.log(formInitValue)
if
(
formInitValue
)
{
// 显示右侧checkbox
setButtonInfos
(
formInitValue
.
buttons
||
[]);
// 回显右侧checkbox的值
if
(
actionRef
.
current
.
setSelected
)
{
actionRef
.
current
.
setSelected
();
}
...
...
@@ -310,6 +317,7 @@ const MemberDetail: React.FC<{}> = () => {
list
=
publicarr
.
filter
((
element
,
index
,
self
)
=>
{
return
self
.
findIndex
(
x
=>
x
.
menuId
===
element
.
menuId
)
===
index
})
console
.
log
(
actionRef
.
current
.
selected
)
const
publicParams
=
{
...
values
,
imFlag
:
!!
values
.
imFlag
,
...
...
@@ -317,21 +325,13 @@ const MemberDetail: React.FC<{}> = () => {
auth
:
(
flag
&&
dataId
.
length
===
0
)
?
[]
:
list
.
map
(
v
=>
({
menuId
:
v
.
menuId
,
// @todo 暂时写死为空
buttonIds
:
[]
,
buttonIds
:
actionRef
.
current
.
selected
,
checked
:
v
.
checked
,
hasDataAuth
:
authInfos
[
v
.
menuId
]?.
hasDataAuth
?
authInfos
[
v
.
menuId
]?.
hasDataAuth
:
0
,
orgIds
:
authInfos
[
v
.
menuId
]?.
hasDataAuth
?
authInfos
[
v
.
menuId
]?.
orgIds
:
[],
}))
// auth: treeCheckIds.map(v => ({
// menuId: v,
// // @todo 暂时写死为空
// buttonIds: [],
// checked: true,
// hasDataAuth: authInfos[v]?.hasDataAuth,
// orgIds: authInfos[v]?.orgIds
// })),
};
console
.
log
(
publicarr
,
'publicarr'
,
flag
,
'flag'
,
publicParams
)
delete
publicParams
.
checkIds
if
(
pageStatus
===
PageStatus
.
EDIT
)
{
await
postMemberRoleUpdate
({
...
...
@@ -346,7 +346,7 @@ const MemberDetail: React.FC<{}> = () => {
history
.
goBack
(
-
1
);
})
.
catch
(
err
=>
{
console
.
log
(
err
);
//
console.log(err);
if
(
Array
.
isArray
(
err
))
{
setErrors
(
true
);
}
...
...
@@ -354,7 +354,7 @@ const MemberDetail: React.FC<{}> = () => {
};
const
changeTabs
=
key
=>
{
console
.
log
(
key
)
//
console.log(key)
// if (key === '2' && id) {
// fetchRoleMenuDetail(id).then(res => {
// const { data } = res;
...
...
@@ -428,10 +428,10 @@ const MemberDetail: React.FC<{}> = () => {
{
orgIds
:
selectKeys
},
),
});
console
.
log
(
plateformTreeData
,
'plateformTreeData'
);
console
.
log
(
selectKeys
,
'selectKeys'
);
//
console.log(plateformTreeData, 'plateformTreeData');
//
console.log(selectKeys, 'selectKeys');
let
plateformTreeDataList
=
mapkey
(
plateformTreeData
,
selectKeys
,
[])
console
.
log
(
plateformTreeDataList
)
//
console.log(plateformTreeDataList)
setplateformTreeList
(
plateformTreeDataList
)
// console.log(plateformTreeDataList, 'plateformTreeData')
setOrgModalVisible
(
false
);
...
...
@@ -517,6 +517,7 @@ const MemberDetail: React.FC<{}> = () => {
treeData=
{
treeData
}
handleSelect=
{
handleNodeSelected
}
checkStrictly=
{
true
}
handleCheck=
{
handleCheck
}
customKey=
"id"
disabled=
{
pageStatus
===
PageStatus
.
PREVIEW
}
/>
...
...
@@ -525,8 +526,9 @@ const MemberDetail: React.FC<{}> = () => {
<
Col
span=
{
7
}
className=
{
styled
[
'menu-role-tree'
]
}
>
<
CheckboxTree
actions=
{
actionRef
}
disabled=
{
pageStatus
===
PageStatus
.
PREVIEW
}
disabled=
{
!
checkflag
}
checkedNodes=
{
buttonInfos
}
checkIds=
{
checkIds
}
title=
{
intl
.
formatMessage
({
id
:
'authConfig.MenuInterfaceAccess'
})
}
/>
</
Col
>
...
...
src/pages/balance/accountsPayable/settlementList/hooks/useHandleSettlementList.tsx
View file @
573c6cc0
...
...
@@ -152,9 +152,38 @@ function useHandleSettlementList() {
const
prefix
=
`/memberCenter/balance/accountsPayable/settlementList/`
;
const
url
=
URL_MAP
[
record
.
orderType
];
let
fullUrl
=
`
${
prefix
}${
url
}
?id=
${
record
.
id
}
`
;
if
(
record
.
orderType
===
CONTRACT_FUND_BILL
)
{
fullUrl
=
`/memberCenter/contract/funds/bill/details?applyId=
${
record
.
orderId
}
`
;
switch
(
record
.
orderType
)
{
// 生产单
case
1
:
fullUrl
=
`/memberCenter/balance/accountsPayable/settlementList/productNoticeSettlementDetail?id=
${
record
.
orderId
}
`
;
break
;
// 物流单
case
2
:
fullUrl
=
`/memberCenter/balance/accountsPayable/settlementList/logisticsDetail?id=
${
record
.
orderId
}
`
;
break
;
// 订单
case
3
:
case
4
:
fullUrl
=
`/memberCenter/tranactionAbility/saleOrder/orderList/preview?orderNo=
${
record
.
orderNo
}
`
;
break
;
// 退货
case
5
:
fullUrl
=
`/memberCenter/afterService/returnManage/returnQuery/detail?id=
${
record
.
orderId
}
`
;
break
;
// 请款单
case
6
:
case
7
:
fullUrl
=
`/memberCenter/balance/businessRequestFunds/search/preview?id=
${
record
.
orderId
}
&no=
${
record
.
orderNo
}
`
;
break
;
// case 7:
// window.open(`/memberCenter/balance/businessReconciliation/search/preview?id=${record.dataId}&no=${record.orderNo}`)
// break;
default
:
break
;
}
// if(record.orderType === CONTRACT_FUND_BILL) {
// fullUrl = `/memberCenter/contract/funds/bill/details?applyId=${record.orderId}`;
// }
return
(
<
EyePreview
url=
{
fullUrl
}
>
{
record
.
settlementNo
}
...
...
src/pages/balance/accountsPayable/settlementList/orderDetail.tsx
View file @
573c6cc0
...
...
@@ -18,7 +18,7 @@ import { useAsyncInitSelect } from '@/formSchema/effects/useAsyncInitSelect';
import
{
detailSchema
}
from
'./schema'
import
{
usePageStatus
}
from
'@/hooks/usePageStatus'
;
// import StatusTag from '../../components/StatusTag'
import
{
productNoticecolumns
}
from
'../../common/columns'
;
import
{
orderColumns
,
productNoticecolumns
}
from
'../../common/columns'
;
import
{
priceFormat
}
from
'@/utils/numberFomat'
;
import
useFetchBillData
from
'../../hooks/useFetchBillData'
;
import
useBalanceInfo
from
'../../hooks/useBalanceInfo'
;
...
...
@@ -49,7 +49,7 @@ const OrderDetail: React.FC = () => {
tableProps=
{
{
rowKey
:
'orderNo'
,
}
}
columns=
{
productNoticec
olumns
}
columns=
{
orderC
olumns
}
currentRef=
{
ref
}
fetchTableData=
{
(
params
:
any
)
=>
fetchListData
(
getSettleAccountsMemberSettlementPagePayableOrderSettlement
,
{
settlementId
:
id
,
...
params
})
}
controlRender=
{
...
...
src/pages/balance/accountsReceivable/invoice/index.tsx
View file @
573c6cc0
...
...
@@ -14,7 +14,7 @@ import { schema } from './schema';
import
StatusTag
,
{
STATUS_TYPE
}
from
'@/components/StatusTag'
import
{
fetchOptions
}
from
'../../common'
;
import
useSetSearchValueInTable
from
'@/hooks/useSetSearchValueInTable'
;
import
{
priceFormat
}
from
'@/utils/numberFomat'
;
import
{
numFormat
,
priceFormat
}
from
'@/utils/numberFomat'
;
import
{
getSettleAccountsCommonGetPayStatus
,
getSettleAccountsCommonGetReceiptInvoiceStatus
,
...
...
@@ -143,9 +143,6 @@ const SettlementList: React.FC = () => {
return
{
...
rest
,
// TODO, 修改
// kind: kindName == intl.formatMessage({id: 'balance.zengzhishuiputongfapiao'}) ? 1 : 2,
// type: typeName == intl.formatMessage({id: 'balance.qiye'}) ? 1 : 2,
proveList
:
res
[
`list-
${
key
}
`
]
}
})
...
...
@@ -166,8 +163,6 @@ const SettlementList: React.FC = () => {
const
defaultPostData
=
{
receiptInvoiceId
:
activeData
.
id
,
...
rest
,
// kind: kindName == intl.formatMessage({id: 'balance.zengzhishuiputongfapiao'}) ? 1 : 2,
// type: typeName == intl.formatMessage({id: 'balance.qiye'}) ? 1 : 2,
proveList
:
res
[
`list-0`
]
}
setSubmitLoading
(
true
);
...
...
@@ -236,7 +231,7 @@ const SettlementList: React.FC = () => {
title
:
intl
.
formatMessage
({
id
:
'balance.accountsReceivable.invoice.columns.tax'
}),
dataIndex
:
'tax'
,
render
:
(
text
,
record
)
=>
{
return
record
.
isHasTax
?
`
${
record
.
isHasTaxName
}
/
${
record
.
taxRate
*
100
}
%`
:
intl
.
formatMessage
({
id
:
'balance.accountsReceivable.invoice.columns.tax.none'
});
return
record
.
isHasTax
?
`
${
record
.
isHasTaxName
}
/
${
priceFormat
(
record
.
taxRate
*
100
)
}
%`
:
intl
.
formatMessage
({
id
:
'balance.accountsReceivable.invoice.columns.tax.none'
});
}
},
{
...
...
@@ -294,7 +289,13 @@ const SettlementList: React.FC = () => {
title
:
intl
.
formatMessage
({
id
:
'balance.accountsReceivable.invoice.columns.operation'
}),
render
:
(
text
,
record
)
=>
{
return
(
<
a
onClick=
{
()
=>
handleShow
(
record
)
}
>
{
record
.
invoiceStatus
==
1
?
intl
.
formatMessage
({
id
:
'balance.accountsReceivable.invoice.columns.operation.1'
})
:
intl
.
formatMessage
({
id
:
'balance.accountsReceivable.invoice.columns.operation.2'
})
}
</
a
>
<
a
onClick=
{
()
=>
handleShow
(
record
)
}
>
{
record
.
invoiceStatus
==
1
?
intl
.
formatMessage
({
id
:
'balance.accountsReceivable.invoice.columns.operation.1'
})
:
intl
.
formatMessage
({
id
:
'balance.accountsReceivable.invoice.columns.operation.2'
})
}
</
a
>
)
}
}
...
...
src/pages/balance/accountsReceivable/settlementList/hooks/useHandleSettlementList.tsx
View file @
573c6cc0
...
...
@@ -88,9 +88,38 @@ function useHandleSettlementList() {
const
prefix
=
'/memberCenter/balance/accountsReceivable/settlementList/'
;
const
url
=
URL_MAP
[
record
.
orderType
];
let
fullUrl
=
`
${
prefix
}${
url
}
?id=
${
record
.
id
}
`
;
if
(
record
.
orderType
===
CONTRACT_FUND_BILL
)
{
fullUrl
=
`/memberCenter/contract/funds/bill/details?applyId=
${
record
.
orderId
}
`
;
switch
(
record
.
orderType
)
{
// 生产单
case
1
:
fullUrl
=
`/memberCenter/balance/accountsPayable/settlementList/productNoticeSettlementDetail?id=
${
record
.
orderId
}
`
;
break
;
// 物流单
case
2
:
fullUrl
=
`/memberCenter/balance/accountsPayable/settlementList/logisticsDetail?id=
${
record
.
orderId
}
`
;
break
;
// 订单
case
3
:
case
4
:
fullUrl
=
`/memberCenter/tranactionAbility/saleOrder/orderList/preview?orderNo=
${
record
.
orderNo
}
`
;
break
;
// 退货
case
5
:
fullUrl
=
`/memberCenter/afterService/returnManage/returnQuery/detail?id=
${
record
.
orderId
}
`
;
break
;
// 请款单
case
6
:
case
7
:
fullUrl
=
`/memberCenter/balance/businessRequestFundsCollaboration/search/preview?id=
${
record
.
orderId
}
&no=
${
record
.
orderNo
}
`
;
break
;
// case 7:
// window.open(`/memberCenter/balance/businessReconciliation/search/preview?id=${record.dataId}&no=${record.orderNo}`)
// break;
default
:
break
;
}
// if(record.orderType === CONTRACT_FUND_BILL) {
// fullUrl = `/memberCenter/contract/funds/bill/details?applyId=${record.orderId}`;
// }
return
(
<
EyePreview
url=
{
fullUrl
}
>
{
record
.
settlementNo
}
...
...
src/pages/balance/accountsReceivable/settlementList/orderDetail.tsx
View file @
573c6cc0
...
...
@@ -13,10 +13,9 @@ import { FORM_FILTER_PATH } from '@/formSchema/const';
import
{
createFormActions
}
from
'@formily/antd'
;
import
StandardTable
from
'@/components/StandardTable'
;
import
{
useStateFilterSearchLinkageEffect
}
from
'@/formSchema/effects/useFilterSearch'
;
import
{
useAsyncInitSelect
}
from
'@/formSchema/effects/useAsyncInitSelect'
;
import
{
detailSchema
}
from
'./schema'
import
{
usePageStatus
}
from
'@/hooks/usePageStatus'
;
import
{
productNoticecolumns
}
from
'../../common/columns'
;
import
{
orderColumns
,
productNoticecolumns
}
from
'../../common/columns'
;
import
{
priceFormat
}
from
'@/utils/numberFomat'
;
import
useFetchBillData
from
'../../hooks/useFetchBillData'
;
import
useBalanceInfo
from
'../../hooks/useBalanceInfo'
;
...
...
@@ -47,7 +46,7 @@ const OrderDetail: React.FC = () => {
tableProps=
{
{
rowKey
:
'orderNo'
,
}
}
columns=
{
productNoticec
olumns
}
columns=
{
orderC
olumns
}
currentRef=
{
ref
}
fetchTableData=
{
(
params
:
any
)
=>
fetchListData
(
getSettleAccountsMemberSettlementPagePayableOrderSettlement
,
{
settlementId
:
id
,
...
params
})
}
controlRender=
{
...
...
src/pages/balance/common/columns.tsx
View file @
573c6cc0
...
...
@@ -104,10 +104,10 @@ export const orderColumns = [
return
record
.
isHasTax
?
`
${
record
.
isHasTaxName
}
/
${
record
.
taxRate
}
`
:
intl
.
formatMessage
({
id
:
'balance.common.columns.orderColumns.tax.none'
});
}
},
{
title
:
intl
.
formatMessage
({
id
:
'balance.common.columns.orderColumns.batch'
}),
dataIndex
:
'
batch
'
},
{
title
:
intl
.
formatMessage
({
id
:
'balance.common.columns.orderColumns.batch'
}),
dataIndex
:
'
payCount
'
},
{
title
:
intl
.
formatMessage
({
id
:
'balance.common.columns.orderColumns.amount'
}),
dataIndex
:
'
a
mount'
,
dataIndex
:
'
payA
mount'
,
render
:
(
text
)
=>
{
return
(
<
div
style=
{
{
display
:
"flex"
,
flexDirection
:
"row"
,
alignItems
:
'center'
}
}
>
...
...
@@ -121,7 +121,7 @@ export const orderColumns = [
)
}
},
{
title
:
intl
.
formatMessage
({
id
:
'balance.common.columns.orderColumns.payTime'
}),
dataIndex
:
intl
.
formatMessage
({
id
:
'balance.common.columns.orderColumns.payTime'
})
},
{
title
:
intl
.
formatMessage
({
id
:
'balance.common.columns.orderColumns.payTime'
}),
dataIndex
:
'payTime'
},
{
title
:
intl
.
formatMessage
({
id
:
'balance.common.columns.orderColumns.settlementAmount'
}),
dataIndex
:
'settlementAmount'
,
...
...
src/pages/balance/components/InvoiceCreate/invoiceDrawerInfo.tsx
View file @
573c6cc0
...
...
@@ -106,7 +106,7 @@ const InvoiceDrawerInfo: React.FC<Iprops> = (props: Iprops) => {
<
div
className=
{
styles
.
header
}
>
<
div
className=
{
styles
[
'header-item'
]
}
>
{
disabled
?
'原订单发票号码'
:
<>
{
intl
.
formatMessage
({
id
:
'balance.fapiao
guanli
'
})
}
<
span
className=
{
styles
.
required
}
>
*
</
span
>
{
intl
.
formatMessage
({
id
:
'balance.fapiao
haoma
'
})
}
<
span
className=
{
styles
.
required
}
>
*
</
span
>
</>
}
</
div
>
<
div
className=
{
styles
[
'header-item'
]
}
>
...
...
src/pages/balance/platformSettlement/couponSettlement/hooks/useHandleSettlementList.tsx
View file @
573c6cc0
import
EyePreview
from
'@/components/EyePreview'
;
// import StatusTag from '../components/StatusTag';
// import { TO_BE_RECONCILED, TO_BE_PAY, TO_BE_COLLECTED, COMPLETED, PRODUCT_NOTICE_SETTLEMENT_DETAIL, LOGISTICS_DETAIL, ORDER_DETAIL, CONTRACT_FUND_BILL } from '../common/constants';
import
{
priceFormat
}
from
'@/utils/numberFomat'
import
{
numFormat
,
priceFormat
}
from
'@/utils/numberFomat'
import
StatusTag
,
{
STATUS_TYPE
}
from
'@/components/StatusTag'
;
import
React
,
{
useMemo
,
useState
}
from
'react'
;
// import { payStatus } from '../common';
...
...
@@ -66,36 +66,31 @@ function useHandleSettlementList() {
render
:
(
text
,
record
)
=>
{
return
(
<
EyePreview
url=
{
`/memberCenter/balance/platformSettlement/
integral
/detail?id=${record.id}`
}
url=
{
`/memberCenter/balance/platformSettlement/
coupon
/detail?id=${record.id}`
}
>
{
record
.
settlementNo
}
</
EyePreview
>
)
}
},
{
title
:
intl
.
formatMessage
({
id
:
'balance.platformSettlement.integral.columns.settlementDate'
}),
dataIndex
:
'settlementDate'
},
{
title
:
intl
.
formatMessage
({
id
:
'balance.platformSettlement.integral.columns.settlementWayName'
}),
dataIndex
:
'settlementWayName'
},
{
title
:
intl
.
formatMessage
({
id
:
'结算方'
}),
dataIndex
:
'settlementName'
},
{
title
:
intl
.
formatMessage
({
id
:
'balance.platformSettlement.integral.columns.settlementDate'
}),
dataIndex
:
'settlementDate'
},
{
title
:
intl
.
formatMessage
({
id
:
'balance.platformSettlement.integral.columns.totalCount'
}),
dataIndex
:
'totalCount'
},
// { title: intl.formatMessage({ id: 'balance.platformSettlement.integral.columns.score' }), dataIndex: 'score' },
// {
// title: intl.formatMessage({ id: 'balance.platformSettlement.integral.columns.ratio' }),
// dataIndex: 'ratio',
// render: (text, record) => {
// return (record.ratio + "%");
// }
// },
{
title
:
intl
.
formatMessage
({
id
:
'balance.platformSettlement.integral.columns.amount'
}),
dataIndex
:
'amount'
},
{
title
:
intl
.
formatMessage
({
id
:
'balance.platformSettlement.integral.columns.amount'
}),
dataIndex
:
'amount'
,
render
:
(
text
)
=>
`¥
${
priceFormat
(
text
)}
`
},
{
title
:
intl
.
formatMessage
({
id
:
'balance.platformSettlement.integral.columns.settlementTime'
}),
dataIndex
:
'settlementTime'
},
{
title
:
intl
.
formatMessage
({
id
:
'balance.platformSettlement.integral.columns.payWayName'
}),
dataIndex
:
'payWayName'
},
{
title
:
'预计付款时间'
,
dataIndex
:
'payTime'
},
{
title
:
'实际付款时间'
,
dataIndex
:
'actualPayTime'
},
{
title
:
intl
.
formatMessage
({
id
:
'balance.platformSettlement.integral.columns.status'
}),
dataIndex
:
'status'
,
filters
:
payStatus
,
onFilter
:
(
value
:
number
,
record
:
any
)
=>
record
.
status
==
value
,
render
:
(
text
,
record
)
=>
{
return
(
// <StatusTag status={record.status || 1} />
<
StatusTag
type=
{
STATUS_TYPE
[
record
.
status
]
as
'success'
}
title=
{
STATUS_TEXT
[
record
.
status
]
}
/>
<
StatusTag
type=
{
STATUS_TYPE
[
record
.
status
]
as
'success'
}
title=
{
record
.
statusName
}
/>
)
}
},
...
...
src/pages/balance/platformSettlement/couponSettlement/index.tsx
View file @
573c6cc0
...
...
@@ -13,7 +13,14 @@ import { useAsyncSelect } from '@/formSchema/effects/useAsyncSelect';
import
Voucher
from
'../../components/Voucher'
;
import
ConfirmAccount
from
'../../components/ConfirmAccount'
;
import
useSetSearchValueInTable
from
'@/hooks/useSetSearchValueInTable'
;
import
{
getSettleAccountsCommonGetSettlementStatus
,
getSettleAccountsPlatformScoreSettlementGetReceivablePayProve
,
getSettleAccountsPlatformScoreSettlementPageReceivableSettlement
,
GetSettleAccountsPlatformScoreSettlementPageReceivableSettlementRequest
,
postSettleAccountsPlatformScoreSettlementConfirmAccountComplete
,
postSettleAccountsPlatformScoreSettlementConfirmPayProve
}
from
'@/services/SettleV2Api'
;
import
{
getSettleAccountsCommonGetSettlementStatus
,
getSettleAccountsPlatformCouponSettlementGetReceivablePayProve
,
getSettleAccountsPlatformCouponSettlementPageReceivableSettlement
,
GetSettleAccountsPlatformCouponSettlementPageReceivableSettlementRequest
,
postSettleAccountsPlatformCouponSettlementConfirmAccountComplete
,
postSettleAccountsPlatformCouponSettlementConfirmPayProve
,
}
from
'@/services/SettleV2Api'
;
import
useHandleSettlementList
from
'./hooks/useHandleSettlementList'
;
import
ViewUniversalPay
from
'../../components/ViewUniversalPay'
;
...
...
@@ -33,7 +40,7 @@ const CouponSettlement: React.FC = () => {
}),
[
itemInfo
])
const
fetchListData
=
async
(
params
:
GetSettleAccountsPlatform
Score
SettlementPageReceivableSettlementRequest
)
=>
{
const
fetchListData
=
async
(
params
:
GetSettleAccountsPlatform
Coupon
SettlementPageReceivableSettlementRequest
)
=>
{
const
searchParams
=
{
...
searchData
,
...
params
,
...
...
@@ -43,7 +50,7 @@ const CouponSettlement: React.FC = () => {
status
:
searchParams
.
status
||
'0'
,
}
// /settle/accounts/platform/score/settlement/pageReceivableSettlement
const
{
data
}
=
await
getSettleAccountsPlatform
Score
SettlementPageReceivableSettlement
(
postData
);
const
{
data
}
=
await
getSettleAccountsPlatform
Coupon
SettlementPageReceivableSettlement
(
postData
);
return
data
}
...
...
@@ -51,7 +58,7 @@ const CouponSettlement: React.FC = () => {
* 确认对账
*/
const
handleConfirm
=
async
(
params
:
{
id
:
number
})
=>
{
const
{
code
}
=
await
postSettleAccountsPlatform
Score
SettlementConfirmAccountComplete
({
settlementId
:
params
.
id
})
const
{
code
}
=
await
postSettleAccountsPlatform
Coupon
SettlementConfirmAccountComplete
({
settlementId
:
params
.
id
})
if
(
code
===
1000
)
{
// reconciliationOnCancel();
handleClose
(
'reconciledComfirm'
)
...
...
@@ -63,7 +70,7 @@ const CouponSettlement: React.FC = () => {
* 确认付款凭证
*/
const
handleConfirmPayStatus
=
async
(
params
:
{
status
:
0
|
1
,
id
:
number
})
=>
{
const
{
code
}
=
await
postSettleAccountsPlatform
Score
SettlementConfirmPayProve
({
id
:
params
.
id
,
status
:
params
.
status
});
const
{
code
}
=
await
postSettleAccountsPlatform
Coupon
SettlementConfirmPayProve
({
id
:
params
.
id
,
status
:
params
.
status
});
if
(
code
)
{
// confirmPayOnCancel();
handleClose
(
'confirmCompletePaymentStatus'
)
...
...
@@ -72,7 +79,7 @@ const CouponSettlement: React.FC = () => {
}
const
fetchVouchers
=
useCallback
(
async
(
id
:
number
)
=>
{
const
{
code
,
data
}
=
await
getSettleAccountsPlatform
Score
SettlementGetReceivablePayProve
({
id
:
id
.
toString
()
})
const
{
code
,
data
}
=
await
getSettleAccountsPlatform
Coupon
SettlementGetReceivablePayProve
({
id
:
id
.
toString
()
})
if
(
code
===
1000
)
{
setFiles
(
data
);
}
...
...
@@ -108,8 +115,7 @@ const CouponSettlement: React.FC = () => {
controlRender=
{
<
NiceForm
actions=
{
formActions
}
components=
{
{
DatePicker
}
}
expressionScope=
{
{}
}
components=
{
{
RangePicker
:
DatePicker
.
RangePicker
}
}
effects=
{
(
$
,
actions
)
=>
{
useStateFilterSearchLinkageEffect
(
$
,
actions
,
'megaLayout.settlementNo'
,
FORM_FILTER_PATH
);
useAsyncSelect
(
...
...
@@ -121,8 +127,6 @@ const CouponSettlement: React.FC = () => {
onSubmit=
{
handleSearch
}
onReset=
{
()
=>
{
clear
()
// formActions.setFieldValue('startTime', null);
// formActions.setFieldValue('endTime', null);
}
}
{
...
formatInitialValue
}
/>
...
...
src/pages/balance/platformSettlement/couponSettlement/info.tsx
0 → 100644
View file @
573c6cc0
import
React
,
{
useRef
,
useState
,
useEffect
,
useMemo
}
from
'react'
;
import
{
PageHeaderWrapper
}
from
'@ant-design/pro-layout'
import
{
Card
,
PageHeader
,
Descriptions
,
Button
,
message
}
from
'antd'
;
import
{
history
,
useIntl
,
getIntl
}
from
'umi'
;
import
NiceForm
from
'@/components/NiceForm'
;
import
{
FORM_FILTER_PATH
}
from
'@/formSchema/const'
;
import
{
createFormActions
}
from
'@formily/antd'
;
import
StandardTable
from
'@/components/StandardTable'
;
import
{
useStateFilterSearchLinkageEffect
}
from
'@/formSchema/effects/useFilterSearch'
;
import
{
detailSchema
}
from
'./schema'
;
import
moment
from
'moment'
;
import
{
usePageStatus
}
from
'@/hooks/usePageStatus'
;
import
useInitialValue
from
'@/pages/member/common/hooks/useInitialValue'
;
import
useBalanceInfo
from
'../../hooks/useBalanceInfo'
;
import
{
getSettleAccountsPlatformCouponSettlementGetReceivableDetail
,
GetSettleAccountsPlatformCouponSettlementGetReceivableDetailResponse
,
getSettleAccountsPlatformCouponSettlementPageReceivableSettlementDetail
,
getSettleAccountsPlatformCouponSettlementReceivableExport
,
}
from
'@/services/SettleV2Api'
;
import
CustomizeColumn
from
'@/components/CustomizeColumn'
;
import
{
priceFormat
}
from
'@/utils/numberFomat'
;
const
intl
=
getIntl
();
const
formActions
=
createFormActions
();
const
columns
=
[
{
title
:
intl
.
formatMessage
({
id
:
'balance.platformSettlement.integral.info.columns.orderNo'
}),
dataIndex
:
'orderNo'
},
{
title
:
intl
.
formatMessage
({
id
:
'balance.platformSettlement.integral.info.columns.orderAbstract'
}),
dataIndex
:
'orderAbstract'
},
{
title
:
intl
.
formatMessage
({
id
:
'balance.platformSettlement.integral.info.columns.settlementOrderTypeName'
}),
dataIndex
:
'settlementOrderTypeName'
},
{
title
:
intl
.
formatMessage
({
id
:
'balance.platformSettlement.integral.info.columns.orderTime'
}),
dataIndex
:
'orderTime'
},
{
title
:
intl
.
formatMessage
({
id
:
'balance.platformSettlement.integral.info.columns.orderTypeName'
}),
dataIndex
:
'orderTypeName'
},
{
title
:
intl
.
formatMessage
({
id
:
'balance.common.columns.productNoticecolumns.orderAmount'
}),
dataIndex
:
'orderAmount'
,
render
:
(
text
)
=>
`¥
${
priceFormat
(
text
)}
`
},
{
title
:
intl
.
formatMessage
({
id
:
'balance.coupon.amount'
}),
dataIndex
:
'couponAmount'
,
render
:
(
text
)
=>
`¥
${
priceFormat
(
text
)}
`
},
{
title
:
intl
.
formatMessage
({
id
:
'balance.coupon.couponNo'
}),
dataIndex
:
'couponNo'
},
{
title
:
intl
.
formatMessage
({
id
:
'balance.platformSettlement.integral.info.columns.payTime'
}),
dataIndex
:
'payTime'
},
{
title
:
intl
.
formatMessage
({
id
:
'balance.platformSettlement.integral.info.columns.settlementAmount'
}),
dataIndex
:
'settlementAmount'
}
]
const
Info
:
React
.
FC
=
()
=>
{
const
ref
=
useRef
<
any
>
({});
const
intl
=
useIntl
();
const
{
id
,
preview
}
=
usePageStatus
();
const
params
=
useMemo
(()
=>
{
return
id
?
{
id
:
id
.
toString
()
}
:
null
},
[
id
]);
const
{
loading
,
initialValue
}
=
useInitialValue
<
GetSettleAccountsPlatformCouponSettlementGetReceivableDetailResponse
,
{
id
:
string
}
>
(
getSettleAccountsPlatformCouponSettlementGetReceivableDetail
,
params
)
const
{
infoList
}
=
useBalanceInfo
(
initialValue
,
{
type
:
"score"
})
const
fetchListData
=
async
(
params
)
=>
{
const
postData
=
{
settlementId
:
id
,
...
params
}
const
res
=
await
getSettleAccountsPlatformCouponSettlementPageReceivableSettlementDetail
(
postData
)
return
res
.
data
}
/**
* 搜索
*/
const
handleSearch
=
(
values
)
=>
{
console
.
log
(
values
);
ref
.
current
.
reload
({
...
values
});
}
const
handleExport
=
async
()
=>
{
const
loadingMsg
=
message
.
loading
(
'正在导出'
,
0
)
const
{
data
}
=
await
getSettleAccountsPlatformCouponSettlementReceivableExport
(
{
settlementId
:
id
}
as
any
,
{
responseType
:
'blob'
,
getResponse
:
true
}
);
loadingMsg
();
let
blob
=
new
Blob
([
data
as
any
]);
let
downloadFilename
=
`
${
moment
().
format
(
'YYYY-MM-DD HH:mm:ss'
)}
.xlsx`
;
//设置导出的文件名
createDownloadLink
(
blob
,
downloadFilename
)
}
const
createDownloadLink
=
(
blob
:
Blob
,
fileName
:
string
)
=>
{
let
url
=
window
.
URL
.
createObjectURL
(
blob
);
let
downloadElement
=
document
.
createElement
(
"a"
);
downloadElement
.
style
.
display
=
"none"
;
downloadElement
.
href
=
url
;
downloadElement
.
download
=
fileName
;
document
.
body
.
appendChild
(
downloadElement
);
downloadElement
.
click
();
document
.
body
.
removeChild
(
downloadElement
);
window
.
URL
.
revokeObjectURL
(
url
);
}
return
(
<
PageHeaderWrapper
title=
{
intl
.
formatMessage
({
id
:
'balance.platformSettlement.integral.info.title'
},
{
data
:
initialValue
?.
settlementNo
})
}
>
<
div
style=
{
{
marginBottom
:
'16px'
}
}
>
<
CustomizeColumn
data=
{
infoList
}
title=
""
column=
{
3
}
/>
</
div
>
<
Card
>
<
StandardTable
tableProps=
{
{
rowKey
:
record
=>
(
`${record.orderNo}-${record.payTime}`
),
}
}
columns=
{
columns
}
currentRef=
{
ref
}
fetchTableData=
{
(
params
:
any
)
=>
fetchListData
(
params
)
}
keepAlive=
{
false
}
controlRender=
{
<
NiceForm
actions=
{
formActions
}
components=
{
{
ExportBtn
:
()
=>
{
return
(
<
div
>
<
Button
onClick=
{
handleExport
}
>
{
intl
.
formatMessage
({
id
:
'balance.platformSettlement.integral.info.exportBtn'
})
}
</
Button
>
</
div
>
)
}
}
}
effects=
{
(
$
,
actions
)
=>
{
useStateFilterSearchLinkageEffect
(
$
,
actions
,
'megaLayout.topLayout.orderNo'
,
FORM_FILTER_PATH
);
}
}
schema=
{
detailSchema
}
onSubmit=
{
handleSearch
}
/>
}
/>
</
Card
>
</
PageHeaderWrapper
>
)
}
export
default
Info
src/pages/balance/platformSettlement/couponSettlement/schema/index.tsx
View file @
573c6cc0
...
...
@@ -42,8 +42,7 @@ export const schema: ISchema = {
},
properties
:
{
"[startTime, endTime]"
:
{
type
:
'object'
,
"x-component"
:
'RangePicker'
,
type
:
'daterange'
,
'x-component-props'
:
{
allowClear
:
true
,
placeholder
:
[
intl
.
formatMessage
({
id
:
'balance.platformSettlement.integral.schema.schema.startTime'
}),
intl
.
formatMessage
({
id
:
'balance.platformSettlement.integral.schema.schema.endTime'
})],
...
...
@@ -112,10 +111,7 @@ export const detailSchema: ISchema = {
properties
:
{
ctl
:
{
type
:
'object'
,
'x-component'
:
'Children'
,
'x-component-props'
:
{
children
:
'{{exportBtn}}'
,
},
'x-component'
:
'ExportBtn'
,
},
orderNo
:
{
type
:
'string'
,
...
...
@@ -141,19 +137,18 @@ export const detailSchema: ISchema = {
placeholder
:
intl
.
formatMessage
({
id
:
'balance.platformSettlement.integral.schema.detailSchema.orderAbstract'
})
}
},
orderTime
:
{
type
:
'
string
'
,
enum
:
orderTime
,
'[orderStartTime, orderEndTime]'
:
{
type
:
'
daterange
'
,
//
enum: orderTime,
'x-component-props'
:
{
placeholder
:
intl
.
formatMessage
({
id
:
'balance.platformSettlement.integral.schema.detailSchema.orderTime'
})
,
placeholder
:
[
intl
.
formatMessage
({
id
:
'balance.accountsReceivable.invoice.schema.orderStartTime'
}),
intl
.
formatMessage
({
id
:
'balance.accountsReceivable.invoice.schema.orderEndTime'
})]
,
allowClear
:
true
,
},
},
payTime
:
{
type
:
'string'
,
enum
:
payTime
,
'[payStartTime, payEndTime]'
:
{
type
:
'daterange'
,
'x-component-props'
:
{
placeholder
:
intl
.
formatMessage
({
id
:
'balance.platformSettlement.integral.schema.detailSchema.payTime'
})
,
placeholder
:
[
intl
.
formatMessage
({
id
:
'balance.platformSettlement.integral.schema.detailSchema.payStartTime'
}),
intl
.
formatMessage
({
id
:
'balance.platformSettlement.integral.schema.detailSchema.payStartTime'
})]
,
allowClear
:
true
,
},
},
...
...
src/pages/balance/platformSettlement/integral/index.tsx
View file @
573c6cc0
...
...
@@ -51,7 +51,6 @@ const Integral: React.FC = () => {
}
/**
* TODO 需要换成优惠券结算
* 确认对账
*/
const
handleConfirm
=
async
(
params
:
{
id
:
number
})
=>
{
...
...
@@ -65,7 +64,6 @@ const Integral: React.FC = () => {
/**
* 确认付款凭证
* TODO 需要换成优惠券结算
*/
const
handleConfirmPayStatus
=
async
(
params
:
{
status
:
0
|
1
,
id
:
number
})
=>
{
const
{
code
}
=
await
postSettleAccountsPlatformScoreSettlementConfirmPayProve
({
id
:
params
.
id
,
status
:
params
.
status
});
...
...
@@ -77,7 +75,6 @@ const Integral: React.FC = () => {
}
/**
* TODO 需要换成优惠券结算
*/
const
fetchVouchers
=
useCallback
(
async
(
id
:
number
)
=>
{
const
{
code
,
data
}
=
await
getSettleAccountsPlatformScoreSettlementGetReceivablePayProve
({
id
:
id
.
toString
()
})
...
...
@@ -116,8 +113,7 @@ const Integral: React.FC = () => {
controlRender=
{
<
NiceForm
actions=
{
formActions
}
components=
{
{
DatePicker
}
}
expressionScope=
{
{}
}
components=
{
{
RangePicker
:
DatePicker
.
RangePicker
}
}
effects=
{
(
$
,
actions
)
=>
{
useStateFilterSearchLinkageEffect
(
$
,
actions
,
'megaLayout.settlementNo'
,
FORM_FILTER_PATH
);
useAsyncSelect
(
...
...
src/pages/channel/channelInfo/index.tsx
View file @
573c6cc0
...
...
@@ -305,13 +305,13 @@ const ChannelInfo: React.FC<ShopInfoPropsType> = (props) => {
let
url
=
''
switch
(
option
.
type
)
{
case
3
:
url
=
`
${
CHANNEL_CENTER_URL
}
/
m
${
shopInfo
.
memberId
}
`
url
=
`
${
CHANNEL_CENTER_URL
}
/
${
shopInfo
.
memberId
}
`
break
case
4
:
url
=
`
${
ICHANNEL_CENTER_URL
}
/
m
${
shopInfo
.
memberId
}
`
url
=
`
${
ICHANNEL_CENTER_URL
}
/
${
shopInfo
.
memberId
}
`
break
case
5
:
url
=
`
${
CHANNEL_CENTER_URL
}
/
m
${
shopInfo
.
memberId
}
/integral`
url
=
`
${
CHANNEL_CENTER_URL
}
/
${
shopInfo
.
memberId
}
/integral`
break
}
setResUrl
(
url
)
...
...
src/pages/commodity/products/viewDirectChannel.tsx
View file @
573c6cc0
...
...
@@ -159,7 +159,7 @@ const ViewDriectChannel: React.FC<{}> = () => {
href=
{
channelDetails
?.
channelCommodity
?.
source
===
1
?
`${CHANNEL_CENTER_URL}/
m
${channelDetails?.channelCommodity?.parentMemberId}/commodity/detail/${channelDetails?.channelCommodity?.commodity?.id}`
`${CHANNEL_CENTER_URL}/${channelDetails?.channelCommodity?.parentMemberId}/commodity/detail/${channelDetails?.channelCommodity?.commodity?.id}`
:
`/memberCenter/commodityAbility/commodity/products/detail?id=${channelDetails?.channelCommodity?.commodity?.id}`
}
...
...
src/pages/content/announcements/index.tsx
View file @
573c6cc0
...
...
@@ -138,7 +138,7 @@ const Announcements = () => {
?
(
<
Dropdown
overlay=
{
menu
}
>
<
a
>
{
intl
.
formatMessage
({
id
:
'common.text.mo
st
'
})
}
<
DownOutlined
/>
{
intl
.
formatMessage
({
id
:
'common.text.mo
re
'
})
}
<
DownOutlined
/>
</
a
>
</
Dropdown
>
)
...
...
src/pages/content/infomation/index.tsx
View file @
573c6cc0
...
...
@@ -125,7 +125,7 @@ const Infomation = () => {
CAN_MODIFY
.
includes
(
record
.
status
)
?
<
Dropdown
overlay=
{
menu
}
>
<
a
>
{
intl
.
formatMessage
({
id
:
'common.text.mo
st
'
})
}
<
DownOutlined
/>
{
intl
.
formatMessage
({
id
:
'common.text.mo
re
'
})
}
<
DownOutlined
/>
</
a
>
</
Dropdown
>
:
null
...
...
src/pages/member/common/hooks/useInitialValue.tsx
View file @
573c6cc0
...
...
@@ -13,15 +13,15 @@ type HeadersType = {
[
key
:
string
]:
any
,
}
type
Ires
=
{
type
Ires
<
T
>
=
{
code
:
number
,
data
:
{
[
key
:
string
]:
any
}
,
data
:
T
,
message
:
string
}
function
useInitialValue
<
T
,
P
extends
Object
>
(
api
:
(
params
:
P
,
headers
?:
HeadersType
)
=>
Promise
<
T
&
Ires
>
,
params
:
P
,
headers
?:
HeadersType
):
{
loading
:
boolean
,
initialValue
:
T
,
refresh
:
(
params
:
P
)
=>
void
,
setInitialValue
:
any
}
{
function
useInitialValue
<
T
,
P
extends
Object
>
(
api
:
(
params
:
P
,
headers
?:
HeadersType
)
=>
Promise
<
Ires
<
T
>
>
,
params
:
P
,
headers
?:
HeadersType
):
{
loading
:
boolean
,
initialValue
:
T
,
refresh
:
(
params
:
P
)
=>
void
,
setInitialValue
:
any
}
{
const
[
loading
,
setLoading
]
=
useState
<
boolean
>
(
false
);
const
[
initialValue
,
setInitialValue
]
=
useState
<
null
|
Ires
[
"data"
]
>
(
null
);
const
[
initialValue
,
setInitialValue
]
=
useState
<
null
|
T
>
(
null
);
const
fetchData
=
useCallback
(
async
(
params
)
=>
{
setLoading
(
true
)
...
...
src/pages/systemSetting/collection/commodity.tsx
View file @
573c6cc0
...
...
@@ -50,10 +50,10 @@ const Commodity: React.FC = () => {
switch
(
detail
.
commodity
.
priceType
)
{
case
1
:
case
2
:
el
.
href
=
`
${
mallUrl
}
/
m
${
detail
.
channelMemberId
}
/commodity/detail/
${
detail
.
commodity
.
id
}
`
;
el
.
href
=
`
${
mallUrl
}
/
${
detail
.
channelMemberId
}
/commodity/detail/
${
detail
.
commodity
.
id
}
`
;
break
case
3
:
el
.
href
=
`
${
mallUrl
}
/
m
${
detail
.
channelMemberId
}
/integral/detail/
${
detail
.
commodity
.
id
}
`
;
el
.
href
=
`
${
mallUrl
}
/
${
detail
.
channelMemberId
}
/integral/detail/
${
detail
.
commodity
.
id
}
`
;
break
}
}
else
{
...
...
src/pages/transaction/marketingAbility/marketingActivitiesManagement/activePage/components/ActivityItem/index.tsx
View file @
573c6cc0
...
...
@@ -36,10 +36,11 @@ const WEB_FIXTURE_LINK = `/memberCenter/marketingAbility/activityPages/managemen
const
PENDIGN_ONLINE
=
1
;
const
ONLINE
=
2
;
/** 进行中 */
const
IN_PROGRESS
=
3
;
/** 下线 */
const
OFFLINE
=
4
;
/**
借宿
*/
/**
结束
*/
const
END
=
5
;
const
format
=
'YYYY-MM-DD HH:mm:ss'
;
...
...
@@ -114,7 +115,7 @@ const ActiveItem: React.FC<Iprops> = (props: Iprops) => {
)
}
{
[
PENDIGN_ONLINE
,
OFFLINE
].
includes
(
status
)
&&
(
[
PENDIGN_ONLINE
,
IN_PROGRESS
,
ONLINE
,
OFFLINE
].
includes
(
status
)
&&
(
// <Link to=
{
`/memberCenter/marketingAbility/activityPages/management/edit?id=${id}`
}
>
<
Link
to=
{
`${environment === WEB ? WEB_FIXTURE_LINK : APP_FIXTURE_LINK}?id=${id}`
}
>
{
/* <Button icon={<EditOutlined />}></Button> */
}
...
...
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