Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
J
jinfa-admin
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
project
jinfa-admin
Commits
98b1d828
Commit
98b1d828
authored
Apr 27, 2021
by
前端-许佳敏
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'dev' into dev-srm
parents
8d15a8a2
56871202
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
20 changed files
with
164 additions
and
168 deletions
+164
-168
env.js
env.js
+23
-0
package.json
package.json
+2
-0
Search.tsx
src/components/NiceForm/components/Search.tsx
+1
-1
NormalTable.tsx
src/components/PolymericTable/NormalTable.tsx
+2
-2
detail.tsx
src/pages/exchangeManage/query/detail.tsx
+1
-13
index.tsx
...ges/member/memberMaintain/components/MemberForm/index.tsx
+5
-1
index.tsx
src/pages/member/memberMaintain/detailed/index.tsx
+0
-0
index.tsx
src/pages/member/memberPr1/components/DetailInfo/index.tsx
+2
-2
index.tsx
src/pages/member/memberPr2/components/DetailInfo/index.tsx
+2
-2
index.tsx
...es/member/memberPrConfirm/components/DetailInfo/index.tsx
+3
-3
index.tsx
...ges/member/memberPrSubmit/components/DetailInfo/index.tsx
+29
-26
index.tsx
...orderSystem/orderDetail/components/orderPayTabs/index.tsx
+1
-1
index.tsx
src/pages/pageCustomized/components/toolBar/index.tsx
+2
-2
config.ts
src/pages/pageCustomized/mobileEdit/config.ts
+5
-5
detail.tsx
src/pages/repairManage/query/detail.tsx
+0
-12
index.tsx
src/pages/returnManage/components/DetailInfo/index.tsx
+0
-12
index.tsx
src/pages/returnManage/components/ProductList/index.tsx
+53
-52
index.tsx
src/pages/returnManage/components/ReturnAnalysis/index.tsx
+27
-31
index.tsx
src/pages/returnManage/components/ReturnDetailInfo/index.tsx
+2
-3
index.ts
src/utils/index.ts
+4
-0
No files found.
env.js
View file @
98b1d828
...
...
@@ -117,4 +117,27 @@ module.exports = {
forcePasv
:
true
})
},
v2Preview
:
{
SITE_ID
:
'1'
,
BACK_GATEWAY
:
'http://10.0.1.220:8100'
,
USE_ROUTE_CONFIG
:
true
,
SOCKET_URL
:
'ws://10.0.1.220:8100'
,
ssh
:
JSON
.
stringify
({
user
:
"root"
,
// Password optional, prompted if none given
password
:
"Shushangyun520"
,
host
:
"10.0.1.220"
,
port
:
22
,
localRoot
:
path
.
resolve
(
'./dist/'
),
remoteRoot
:
"/home/www/lingxi/lingxi-business-system/dist/"
,
// include: ["*", "**/*"], // this would upload everything except dot files
include
:
[
"*"
],
// e.g. exclude sourcemaps, and ALL files in node_modules (including dot files)
// exclude: ["dist/**/*.map", "node_modules/**", "node_modules/**/.*", ".git/**"],
// delete ALL existing files at destination before uploading, if true
deleteRemote
:
true
,
// Passive mode is forced (EPSV command is not sent)
forcePasv
:
true
})
},
}
package.json
View file @
98b1d828
...
...
@@ -7,6 +7,7 @@
"upload:10"
:
"cross-env local=10 taskName=upload yarn scripts:build"
,
"upload:25"
:
"cross-env local=25 taskName=upload yarn scripts:build"
,
"upload:v2"
:
"cross-env local=v2 taskName=upload yarn scripts:build"
,
"upload:v2Preview"
:
"cross-env local=v2Preview taskName=upload yarn scripts:build"
,
"upload:study"
:
"cross-env local=study taskName=upload yarn scripts:build"
,
"api"
:
"god-ytt"
,
"start:analyze"
:
"ANALYZE=1 umi dev"
,
...
...
@@ -23,6 +24,7 @@
"build:all"
:
"cross-env SITE_ID=1 BACK_GATEWAY=http://lingxi-all.wg.shushangyun.com SOCKET_URL=ws://lingxi-all.wg.shushangyun.com yarn build"
,
"build:10"
:
"cross-env SITE_ID=1 BACK_GATEWAY=http://10.0.0.10:8100 SOCKET_URL=ws://10.0.0.10:9400 yarn build"
,
"build:v2"
:
"cross-env SITE_ID=1 BACK_GATEWAY=http://10.0.0.17:8100 SOCKET_URL=ws://10.0.0.17:9400 yarn build"
,
"build:v2Preview"
:
"cross-env SITE_ID=1 BACK_GATEWAY=http://10.0.1.220:8100 SOCKET_URL=ws://10.0.1.220:9400 yarn build"
,
"build:25"
:
"cross-env SITE_ID=352 BACK_GATEWAY=http://10.0.0.25:8100 SOCKET_URL=ws://10.0.0.25:9400 yarn build"
,
"build:study"
:
"cross-env SITE_ID=1 BACK_GATEWAY=http://10.0.1.207:8100 SOCKET_URL=ws://10.0.1.207:9400 yarn build"
,
"postinstall"
:
"umi generate tmp"
,
...
...
src/components/NiceForm/components/Search.tsx
View file @
98b1d828
...
...
@@ -48,7 +48,7 @@ const Search = props => {
/>
</
Tooltip
>
{
advanced
&&
(
<
Button
onClick=
{
changeFilterVisible
}
>
<
Button
style=
{
state
.
filterSearch
?
{
backgroundColor
:
"#6B778C"
,
borderColor
:
"#6B778C"
,
color
:
"#FFF"
}
:
{}
}
onClick=
{
changeFilterVisible
}
>
高级筛选
{
state
.
filterSearch
?
<
CaretUpOutlined
/>
:
<
CaretDownOutlined
/>
}
</
Button
>
...
...
src/components/PolymericTable/NormalTable.tsx
View file @
98b1d828
...
...
@@ -2,7 +2,7 @@
* @Author: XieZhiXiong
* @Date: 2020-08-20 16:15:59
* @LastEditors: XieZhiXiong
* @LastEditTime: 202
0-12-21 13:57:12
* @LastEditTime: 202
1-04-19 17:28:05
* @Description: 简单封装了分页事件的 Table
*/
import
React
from
'react'
;
...
...
@@ -41,7 +41,7 @@ export default class NormalTable extends React.PureComponent<StandardTableProps>
columns
,
dataSource
,
rowKey
=
'id'
,
pagination
=
{}
,
pagination
,
loading
,
className
,
onPaginationChange
,
...
...
src/pages/exchangeManage/query/detail.tsx
View file @
98b1d828
...
...
@@ -2,17 +2,13 @@ import React, { Suspense, useEffect, useState } from 'react';
import
{
PageHeader
,
Descriptions
,
Card
,
Spin
,
Button
,
Row
,
Col
,
Badge
,
Switch
,
Tooltip
,
message
,
}
from
'antd'
;
import
{
FormOutlined
,
QuestionCircleOutlined
}
from
'@ant-design/icons'
;
import
{
QuestionCircleOutlined
}
from
'@ant-design/icons'
;
import
{
PageHeaderWrapper
}
from
'@ant-design/pro-layout'
;
import
{
history
}
from
'umi'
;
import
{
PublicApi
}
from
'@/services/api'
;
...
...
@@ -25,7 +21,6 @@ import { normalizeFiledata, FileData, findLastIndexFlowState } from '@/utils';
import
{
usePageStatus
}
from
'@/hooks/usePageStatus'
;
import
AvatarWrap
from
'@/components/AvatarWrap'
;
import
StatusTag
from
'@/components/StatusTag'
;
import
EyePreview
from
'@/components/EyePreview'
;
import
AuditProcess
from
'@/components/AuditProcess'
;
import
{
EditableColumns
}
from
'@/components/PolymericTable/interface'
;
import
{
OuterHistoryData
,
InnerHistoryData
}
from
'../components/FlowRecords'
;
...
...
@@ -104,13 +99,6 @@ const DetailInfo: React.FC = () => {
{
title
:
'订单号'
,
dataIndex
:
'orderNo'
,
render
:
(
text
,
record
)
=>
(
<
EyePreview
url=
{
`/exchangeManage/query/orderDetail?orderNo=${text}`
}
>
{
text
}
</
EyePreview
>
),
},
{
title
:
'商品ID'
,
...
...
src/pages/member/memberMaintain/components/MemberForm/index.tsx
View file @
98b1d828
...
...
@@ -2,7 +2,7 @@
* @Author: XieZhiXiong
* @Date: 2021-01-26 15:45:24
* @LastEditors: XieZhiXiong
* @LastEditTime: 2021-0
1-26 16:48:0
8
* @LastEditTime: 2021-0
4-19 16:50:1
8
* @Description:
*/
import
React
,
{
useState
,
useEffect
}
from
'react'
;
...
...
@@ -144,6 +144,8 @@ const MemberForm: React.FC<MemberFormProps> = ({
phone
,
email
,
detail
:
rest
,
},
{
timeout
:
0
,
}).
then
(
res
=>
{
if
(
res
.
code
!==
1000
)
{
return
;
...
...
@@ -175,6 +177,8 @@ const MemberForm: React.FC<MemberFormProps> = ({
phone
,
email
,
detail
:
rest
,
},
{
timeout
:
0
,
}).
then
(
res
=>
{
if
(
res
.
code
!==
1000
)
{
return
;
...
...
src/pages/member/memberMaintain/detailed/index.tsx
View file @
98b1d828
This diff is collapsed.
Click to expand it.
src/pages/member/memberPr1/components/DetailInfo/index.tsx
View file @
98b1d828
...
...
@@ -293,10 +293,10 @@ const DetailInfo: React.FC<DetailInfoProps> = ({
<
Descriptions
.
Item
label=
"会员类型"
>
{
basicInfo
?.
memberTypeName
}
</
Descriptions
.
Item
>
<
Descriptions
.
Item
label=
"会员角色"
span=
{
2
}
>
{
basicInfo
?.
roleName
}
</
Descriptions
.
Item
>
<
Descriptions
.
Item
label=
"外部状态"
>
<
StatusTag
type=
{
MEMBER_OUTER_STATUS_TYPE
[
basicInfo
?.
outerStatus
]
}
title=
{
basicInfo
?.
outerStatusName
}
/>
<
StatusTag
type=
{
basicInfo
?.
outerStatus
?
MEMBER_OUTER_STATUS_TYPE
[
basicInfo
?.
outerStatus
]
:
'default'
}
title=
{
basicInfo
?.
outerStatusName
}
/>
</
Descriptions
.
Item
>
<
Descriptions
.
Item
label=
"内部状态"
>
<
Badge
color=
{
MEMBER_INNER_STATUS_BADGE_COLOR
[
basicInfo
?.
innerStatus
]
}
text=
{
basicInfo
?.
innerStatusName
}
/>
<
Badge
color=
{
basicInfo
?.
innerStatus
?
MEMBER_INNER_STATUS_BADGE_COLOR
[
basicInfo
?.
innerStatus
]
:
'#909399'
}
text=
{
basicInfo
?.
innerStatusName
}
/>
</
Descriptions
.
Item
>
</
Descriptions
>
</
PageHeader
>
...
...
src/pages/member/memberPr2/components/DetailInfo/index.tsx
View file @
98b1d828
...
...
@@ -294,10 +294,10 @@ const DetailInfo: React.FC<DetailInfoProps> = ({
<
Descriptions
.
Item
label=
"会员类型"
>
{
basicInfo
?.
memberTypeName
}
</
Descriptions
.
Item
>
<
Descriptions
.
Item
label=
"会员角色"
span=
{
2
}
>
{
basicInfo
?.
roleName
}
</
Descriptions
.
Item
>
<
Descriptions
.
Item
label=
"外部状态"
>
<
StatusTag
type=
{
MEMBER_OUTER_STATUS_TYPE
[
basicInfo
?.
outerStatus
]
}
title=
{
basicInfo
?.
outerStatusName
}
/>
<
StatusTag
type=
{
basicInfo
?.
outerStatus
?
MEMBER_OUTER_STATUS_TYPE
[
basicInfo
?.
outerStatus
]
:
'default'
}
title=
{
basicInfo
?.
outerStatusName
}
/>
</
Descriptions
.
Item
>
<
Descriptions
.
Item
label=
"内部状态"
>
<
Badge
color=
{
MEMBER_INNER_STATUS_BADGE_COLOR
[
basicInfo
?.
innerStatus
]
}
text=
{
basicInfo
?.
innerStatusName
}
/>
<
Badge
color=
{
basicInfo
?.
innerStatus
?
MEMBER_INNER_STATUS_BADGE_COLOR
[
basicInfo
?.
innerStatus
]
:
'#909399'
}
text=
{
basicInfo
?.
innerStatusName
}
/>
</
Descriptions
.
Item
>
</
Descriptions
>
</
PageHeader
>
...
...
src/pages/member/memberPrConfirm/components/DetailInfo/index.tsx
View file @
98b1d828
...
...
@@ -2,7 +2,7 @@
* @Author: XieZhiXiong
* @Date: 2021-01-26 17:06:48
* @LastEditors: XieZhiXiong
* @LastEditTime: 2021-0
1-26 17:06:48
* @LastEditTime: 2021-0
4-19 15:31:15
* @Description:
*/
import
React
,
{
useState
,
useEffect
,
useRef
}
from
'react'
;
...
...
@@ -298,10 +298,10 @@ const DetailInfo: React.FC<DetailInfoProps> = ({
<
Descriptions
.
Item
label=
"会员类型"
>
{
basicInfo
?.
memberTypeName
}
</
Descriptions
.
Item
>
<
Descriptions
.
Item
label=
"会员角色"
span=
{
2
}
>
{
basicInfo
?.
roleName
}
</
Descriptions
.
Item
>
<
Descriptions
.
Item
label=
"外部状态"
>
<
StatusTag
type=
{
MEMBER_OUTER_STATUS_TYPE
[
basicInfo
?.
outerStatus
]
}
title=
{
basicInfo
?.
outerStatusName
}
/>
<
StatusTag
type=
{
basicInfo
?.
outerStatus
?
MEMBER_OUTER_STATUS_TYPE
[
basicInfo
?.
outerStatus
]
:
''
}
title=
{
basicInfo
?.
outerStatusName
}
/>
</
Descriptions
.
Item
>
<
Descriptions
.
Item
label=
"内部状态"
>
<
Badge
color=
{
MEMBER_INNER_STATUS_BADGE_COLOR
[
basicInfo
?.
innerStatus
]
||
'#909399'
}
text=
{
basicInfo
?.
innerStatusName
}
/>
<
Badge
color=
{
basicInfo
?.
innerStatus
?
MEMBER_INNER_STATUS_BADGE_COLOR
[
basicInfo
?.
innerStatus
]
:
'#909399'
}
text=
{
basicInfo
?.
innerStatusName
}
/>
</
Descriptions
.
Item
>
</
Descriptions
>
</
PageHeader
>
...
...
src/pages/member/memberPrSubmit/components/DetailInfo/index.tsx
View file @
98b1d828
...
...
@@ -2,7 +2,7 @@
* @Author: XieZhiXiong
* @Date: 2021-01-26 16:36:30
* @LastEditors: XieZhiXiong
* @LastEditTime: 2021-0
1-26 16:41:39
* @LastEditTime: 2021-0
4-19 16:58:00
* @Description: 待提交审核详情信息
*/
import
React
,
{
useState
,
useEffect
,
useRef
}
from
'react'
;
...
...
@@ -16,7 +16,8 @@ import {
Col
,
Modal
,
Button
,
Spin
,
Spin
,
message
,
}
from
'antd'
;
import
{
FormOutlined
}
from
'@ant-design/icons'
;
import
{
usePageStatus
,
PageStatus
}
from
'@/hooks/usePageStatus'
;
...
...
@@ -51,11 +52,11 @@ interface DetailInfoProps {
/**
* 数据id
*/
id
?
:
string
;
id
:
string
;
/**
* 审核id
*/
validateId
?
:
string
;
validateId
:
string
;
/**
* 是否是编辑的
*/
...
...
@@ -175,7 +176,7 @@ const DetailInfo: React.FC<DetailInfoProps> = ({
}
else
{
if
(
isEditForm
)
{
// 有填写过表单
return
new
Promise
((
resolve
,
reject
)
=>
{
return
new
Promise
<
void
>
((
resolve
,
reject
)
=>
{
Modal
.
confirm
({
content
:
'确认要离开当前页面吗,您提交的数据尚未保存'
,
onOk
()
{
...
...
@@ -232,8 +233,8 @@ const DetailInfo: React.FC<DetailInfoProps> = ({
if
(
isEditForm
)
{
// 更新右侧按钮
await
PublicApi
.
postMemberValidateCommitUpdatebutton
({
memberId
:
id
,
validateId
,
memberId
:
+
id
,
validateId
:
+
validateId
,
menuId
:
nodeRecord
.
id
,
buttonIds
:
buttonIds
,
});
...
...
@@ -247,43 +248,44 @@ const DetailInfo: React.FC<DetailInfoProps> = ({
const
updateMenu
=
()
=>
{
const
menuIds
:
any
=
treeActions
.
getSelectKeys
();
return
PublicApi
.
postMemberValidateCommitUpdatemenu
({
memberId
:
id
,
validateId
,
memberId
:
+
id
,
validateId
:
+
validateId
,
menuIds
,
},
{
ctlType
:
'none'
,
});
};
const
handleSubmit
=
values
=>
{
const
handleSubmit
=
async
(
values
)
=>
{
if
(
!
isEdit
)
{
return
;
}
setConfirmLoading
(
true
);
const
promises
=
[
updateMenu
(),
PublicApi
.
postMemberValidateCommitSubmit
({
memberId
:
id
,
validateId
,
...
values
,
}),
];
const
updateRes
=
await
updateMenu
();
if
(
updateRes
.
code
!==
1000
)
{
message
.
error
(
updateRes
.
message
||
'未知错误'
);
setConfirmLoading
(
false
);
return
;
}
Promise
.
all
(
promises
).
then
(
resArr
=>
{
if
(
resArr
.
every
(
item
=>
item
&&
item
.
code
===
1000
))
{
PublicApi
.
postMemberValidateCommitSubmit
({
memberId
:
id
,
validateId
,
...
values
,
}).
then
((
res
)
=>
{
if
(
res
.
code
===
1000
)
{
setTimeout
(()
=>
{
history
.
goBack
();
},
800
);
setModalVisible
(
false
);
setPowerUnsaved
(
false
);
}
setConfirmLoading
(
false
);
setPowerUnsaved
(
false
);
}).
catch
(()
=>
{
}).
finally
(()
=>
{
setConfirmLoading
(
false
);
});
};
const
handleCheck
=
(
)
=>
{
const
handleCheck
=
(
keys
:
any
,
nodes
:
any
):
any
=>
{
setPowerUnsaved
(
true
);
};
...
...
@@ -327,10 +329,10 @@ const DetailInfo: React.FC<DetailInfoProps> = ({
<
Descriptions
.
Item
label=
"会员类型"
>
{
basicInfo
?.
memberTypeName
}
</
Descriptions
.
Item
>
<
Descriptions
.
Item
label=
"会员角色"
span=
{
2
}
>
{
basicInfo
?.
roleName
}
</
Descriptions
.
Item
>
<
Descriptions
.
Item
label=
"外部状态"
>
<
StatusTag
type=
{
MEMBER_OUTER_STATUS_TYPE
[
basicInfo
?.
outerStatus
]
}
title=
{
basicInfo
?.
outerStatusName
}
/>
<
StatusTag
type=
{
basicInfo
?.
outerStatus
?
MEMBER_OUTER_STATUS_TYPE
[
basicInfo
?.
outerStatus
]
:
'default'
}
title=
{
basicInfo
?.
outerStatusName
}
/>
</
Descriptions
.
Item
>
<
Descriptions
.
Item
label=
"内部状态"
>
<
Badge
color=
{
MEMBER_INNER_STATUS_BADGE_COLOR
[
basicInfo
?.
innerStatus
]
}
text=
{
basicInfo
?.
innerStatusName
}
/>
<
Badge
color=
{
basicInfo
?.
innerStatus
?
MEMBER_INNER_STATUS_BADGE_COLOR
[
basicInfo
?.
innerStatus
]
:
'#909399'
}
text=
{
basicInfo
?.
innerStatusName
}
/>
</
Descriptions
.
Item
>
</
Descriptions
>
</
PageHeader
>
...
...
@@ -398,6 +400,7 @@ const DetailInfo: React.FC<DetailInfoProps> = ({
handleSelect=
{
handleSelect
}
handleCheck=
{
handleCheck
}
disabled=
{
!
isEdit
}
checkStrictly
checkable
/>
</
MellowCard
>
...
...
src/pages/orderSystem/orderDetail/components/orderPayTabs/index.tsx
View file @
98b1d828
...
...
@@ -53,7 +53,7 @@ const OrderPayTabs:React.FC<OrderPayTabsProps> = (props) => {
const
processEnum
=
data
.
processEnum
useEffect
(()
=>
{
PublicApi
.
getPayPayWayList
({
memberId
:
data
.
supplyMembersId
,
MemberManage
RoleId
:
data
.
supplyMembersRoleId
}).
then
(
res
=>
{
PublicApi
.
getPayPayWayList
({
memberId
:
data
.
supplyMembersId
,
member
RoleId
:
data
.
supplyMembersRoleId
}).
then
(
res
=>
{
const
{
code
,
data
}
=
res
if
(
code
===
1000
)
{
setPaylist
(
data
)
...
...
src/pages/pageCustomized/components/toolBar/index.tsx
View file @
98b1d828
import
React
,
{
useCallback
,
useState
}
from
'react'
import
{
Modal
,
Button
,
message
}
from
'antd'
import
{
ArrowLeftOutlined
}
from
'@ant-design/icons'
import
{
ArrowLeftOutlined
,
SaveOutlined
}
from
'@ant-design/icons'
import
{
PublicApi
}
from
'@/services/api'
import
{
useSelector
,
STATE_PROPS
,
ComponentConfigsType
,
PROPS_TYPES
}
from
'lingxi-editor-core'
import
{
history
}
from
'umi'
...
...
@@ -117,7 +117,7 @@ const ToolBar: React.FC<ToolBarPropsType> = (props) => {
{
showActions
&&
<
div
className=
{
styles
.
toolbar_actions
}
>
<
Button
type=
"link"
onClick=
{
()
=>
handleGoBack
()
}
>
取消
</
Button
>
<
Button
loading=
{
saveLoading
}
type=
"primary"
onClick=
{
()
=>
handleSave
()
}
>
保存
</
Button
>
<
Button
icon=
{
<
SaveOutlined
/>
}
loading=
{
saveLoading
}
type=
"primary"
onClick=
{
()
=>
handleSave
()
}
>
保存
</
Button
>
</
div
>
}
</
div
>
...
...
src/pages/pageCustomized/mobileEdit/config.ts
View file @
98b1d828
...
...
@@ -123,31 +123,31 @@ export const mobileQuickNav = {
"props"
:
{
dataList
:
[
{
"icon"
:
"https://shushangyun-lingxi.oss-cn-shenzhen.aliyuncs.com/
ebcd9c7a6afe4200ba4edd67a9c62be01612246689541
.png"
,
"icon"
:
"https://shushangyun-lingxi.oss-cn-shenzhen.aliyuncs.com/
85de453a73a44983ba9c441c54bdc2261619070264426
.png"
,
"name"
:
"找现货"
,
"type"
:
1
,
"url"
:
""
,
},
{
"icon"
:
"https://shushangyun-lingxi.oss-cn-shenzhen.aliyuncs.com/
b755a77da8c64e01870d419161fc056e1612246693248
.png"
,
"icon"
:
"https://shushangyun-lingxi.oss-cn-shenzhen.aliyuncs.com/
646cba64f3984e8887b8cda29e561f471619070308310
.png"
,
"name"
:
"找供应"
,
"type"
:
2
,
"url"
:
""
,
},
{
"icon"
:
"https://shushangyun-lingxi.oss-cn-shenzhen.aliyuncs.com/
138a56b8004e4e37a96146b3fe2675881612246699302
.png"
,
"icon"
:
"https://shushangyun-lingxi.oss-cn-shenzhen.aliyuncs.com/
c2d16fe4c2104859a5ffc4ddd2b3bebe1619070341564
.png"
,
"name"
:
"找店铺"
,
"type"
:
6
,
"url"
:
""
,
},
{
"icon"
:
"https://shushangyun-lingxi.oss-cn-shenzhen.aliyuncs.com/
28b845cb318a41e1a99c7eb3d7e04d0c1612246707907
.png"
,
"icon"
:
"https://shushangyun-lingxi.oss-cn-shenzhen.aliyuncs.com/
d6818a5f4c044e0b9fcc28e243b7ddcc1619070365026
.png"
,
"name"
:
"看资讯"
,
"type"
:
7
,
"url"
:
""
,
},
{
"icon"
:
"https://shushangyun-lingxi.oss-cn-shenzhen.aliyuncs.com/b
799143525244d84b10433c334f734cd1612246720501
.png"
,
"icon"
:
"https://shushangyun-lingxi.oss-cn-shenzhen.aliyuncs.com/b
bb358d8b1c64eb5ab0bfb9f5396297c1619070388474
.png"
,
"name"
:
"人气店铺"
,
"type"
:
9
,
"url"
:
""
,
...
...
src/pages/repairManage/query/detail.tsx
View file @
98b1d828
...
...
@@ -2,15 +2,11 @@ import React, { Suspense, useEffect, useState } from 'react';
import
{
PageHeader
,
Descriptions
,
Card
,
Spin
,
Button
,
Row
,
Col
,
Badge
,
message
,
}
from
'antd'
;
import
{
FormOutlined
}
from
'@ant-design/icons'
;
import
{
PageHeaderWrapper
}
from
'@ant-design/pro-layout'
;
import
{
history
}
from
'umi'
;
import
{
PublicApi
}
from
'@/services/api'
;
...
...
@@ -20,7 +16,6 @@ import { usePageStatus } from '@/hooks/usePageStatus';
import
AvatarWrap
from
'@/components/AvatarWrap'
;
import
StatusTag
from
'@/components/StatusTag'
;
import
AuditProcess
from
'@/components/AuditProcess'
;
import
EyePreview
from
'@/components/EyePreview'
;
import
{
EditableColumns
}
from
'@/components/PolymericTable/interface'
;
import
{
REPAIR_OUTER_STATUS_FINISHED
}
from
'@/constants'
;
import
{
...
...
@@ -50,13 +45,6 @@ const DetailInfo: React.FC = () => {
{
title
:
'订单号'
,
dataIndex
:
'orderNo'
,
render
:
(
text
,
record
)
=>
(
<
EyePreview
url=
{
`/repairManage/query/orderDetail?orderNo=${text}`
}
>
{
text
}
</
EyePreview
>
),
},
{
title
:
'商品ID'
,
...
...
src/pages/returnManage/components/DetailInfo/index.tsx
View file @
98b1d828
...
...
@@ -2,15 +2,12 @@ import React, { Suspense, useEffect, useState } from 'react';
import
{
PageHeader
,
Descriptions
,
Card
,
Spin
,
Button
,
Row
,
Col
,
Badge
,
Switch
,
Tooltip
,
message
,
}
from
'antd'
;
import
{
QuestionCircleOutlined
}
from
'@ant-design/icons'
;
import
{
PageHeaderWrapper
}
from
'@ant-design/pro-layout'
;
...
...
@@ -28,10 +25,8 @@ import {
RETURN_OUTER_STATUS_UNCONFIRMED_FINISHED
,
}
from
'@/constants'
;
import
{
normalizeFiledata
,
FileData
,
findLastIndexFlowState
}
from
'@/utils'
;
import
{
usePageStatus
}
from
'@/hooks/usePageStatus'
;
import
AvatarWrap
from
'@/components/AvatarWrap'
;
import
StatusTag
from
'@/components/StatusTag'
;
import
EyePreview
from
'@/components/EyePreview'
;
import
AuditProcess
from
'@/components/AuditProcess'
;
import
{
EditableColumns
}
from
'@/components/PolymericTable/interface'
;
import
ReturnInfoDrawer
,
{
OrderInfo
}
from
'../../components/ReturnInfoDrawer'
;
...
...
@@ -111,13 +106,6 @@ const DetailInfo: React.FC<DetailInfoProps> = ({
{
title
:
'订单号'
,
dataIndex
:
'orderNo'
,
render
:
(
text
,
record
)
=>
(
<
EyePreview
url=
{
`${target}?orderNo=${text}`
}
>
{
text
}
</
EyePreview
>
),
},
{
title
:
'商品ID'
,
...
...
src/pages/returnManage/components/ProductList/index.tsx
View file @
98b1d828
/*
* @Author: XieZhiXiong
* @Date: 2020-11-03 11:38:09
* @LastEditors: XieZhiXiong
* @LastEditTime: 2020-11-05 14:58:55
* @Description: 商品列表
*/
import
React
from
'react'
;
import
MellowCard
from
'@/components/MellowCard'
;
import
PolymericTable
from
'@/components/PolymericTable'
;
import
{
EditableColumns
}
from
'@/components/PolymericTable/interface'
;
interface
HistoryListHistoryListProps
{
dataSource
:
{
[
key
:
string
]:
any
,
}[];
// 标题
title
?:
string
;
// 表格列
columns
:
EditableColumns
[];
// rowKey
rowKey
?:
string
;
// 目标路径
target
?:
string
;
// loading
loading
?:
boolean
;
};
const
ProductList
:
React
.
FC
<
HistoryListHistoryListProps
>
=
({
dataSource
=
[],
title
=
'标题'
,
columns
=
[],
rowKey
=
'id'
,
target
,
loading
=
false
,
})
=>
{
return
(
<
MellowCard
title=
{
title
}
>
<
PolymericTable
rowKey=
{
rowKey
}
dataSource=
{
dataSource
}
columns=
{
columns
}
loading=
{
loading
}
pagination=
{
null
}
/>
</
MellowCard
>
);
};
/*
* @Author: XieZhiXiong
* @Date: 2020-11-03 11:38:09
* @LastEditors: XieZhiXiong
* @LastEditTime: 2020-11-05 14:58:55
* @Description: 商品列表
*/
import
React
from
'react'
;
import
MellowCard
from
'@/components/MellowCard'
;
import
PolymericTable
from
'@/components/PolymericTable'
;
import
{
EditableColumns
}
from
'@/components/PolymericTable/interface'
;
interface
HistoryListHistoryListProps
{
dataSource
:
{
[
key
:
string
]:
any
,
}[];
// 标题
title
?:
string
;
// 表格列
columns
:
EditableColumns
[];
// rowKey
rowKey
?:
string
;
// 目标路径
target
?:
string
;
// loading
loading
?:
boolean
;
};
const
ProductList
:
React
.
FC
<
HistoryListHistoryListProps
>
=
({
dataSource
=
[],
title
=
'标题'
,
columns
=
[],
rowKey
=
'id'
,
target
,
loading
=
false
,
})
=>
{
return
(
<
MellowCard
title=
{
title
}
>
<
PolymericTable
rowKey=
{
rowKey
}
dataSource=
{
dataSource
}
columns=
{
columns
}
loading=
{
loading
}
pagination=
{
undefined
}
/>
</
MellowCard
>
);
};
export
default
ProductList
;
\ No newline at end of file
src/pages/returnManage/components/ReturnAnalysis/index.tsx
View file @
98b1d828
...
...
@@ -2,7 +2,7 @@
* @Author: XieZhiXiong
* @Date: 2020-11-05 15:18:15
* @LastEditors: XieZhiXiong
* @LastEditTime: 202
0-12-09 11:35:12
* @LastEditTime: 202
1-04-19 17:12:35
* @Description: 退货收货统计、退货发货明细
*/
import
React
from
'react'
;
...
...
@@ -70,13 +70,6 @@ const ReturnInfo: React.FC<ReturnInfoProps> = ({
{
title
:
'订单号'
,
dataIndex
:
'orderNo'
,
render
:
(
text
,
record
)
=>
(
<
EyePreview
url=
{
``
}
>
{
text
}
</
EyePreview
>
),
},
{
title
:
'商品ID'
,
...
...
@@ -133,49 +126,52 @@ const ReturnInfo: React.FC<ReturnInfoProps> = ({
const
detailedColumns
:
EditableColumns
[]
=
[
{
title
:
'批次号'
,
dataIndex
:
'batch'
,
render
:
(
text
,
record
)
=>
(
<
EyePreview
url=
{
``
}
>
{
text
}
</
EyePreview
>
),
title
:
'订单号'
,
dataIndex
:
'orderNo'
,
},
{
title
:
'商品ID'
,
dataIndex
:
'productId'
,
align
:
'center'
,
},
{
title
:
'商品名称'
,
dataIndex
:
'productName'
,
align
:
'center'
,
},
{
title
:
'
退货发货单号
'
,
dataIndex
:
'
deliveryNo
'
,
title
:
'
品类
'
,
dataIndex
:
'
category
'
,
align
:
'center'
,
},
{
title
:
'
发货时间
'
,
dataIndex
:
'
deliveryTime
'
,
title
:
'
品牌
'
,
dataIndex
:
'
brand
'
,
align
:
'center'
,
},
{
title
:
'
物流单号
'
,
dataIndex
:
'
logisticsOrderNo
'
,
title
:
'
单位
'
,
dataIndex
:
'
unit
'
,
align
:
'center'
,
},
{
title
:
'
物流公司
'
,
dataIndex
:
'
logisticsName
'
,
title
:
'
退货数量
'
,
dataIndex
:
'
count
'
,
align
:
'center'
,
},
{
title
:
'退货
入库单号
'
,
dataIndex
:
'
storageNo
'
,
title
:
'退货
发货数量
'
,
dataIndex
:
'
deliveryCount
'
,
align
:
'center'
,
},
{
title
:
'
入库时间
'
,
dataIndex
:
'storage
Time
'
,
title
:
'
退货入库数量
'
,
dataIndex
:
'storage
Count
'
,
align
:
'center'
,
},
{
title
:
'
内部状态
'
,
dataIndex
:
'
innerStatusName
'
,
title
:
'
差异数量
'
,
dataIndex
:
'
differenceCount
'
,
align
:
'center'
,
},
];
...
...
src/pages/returnManage/components/ReturnDetailInfo/index.tsx
View file @
98b1d828
...
...
@@ -2,7 +2,7 @@
* @Author: XieZhiXiong
* @Date: 2020-11-05 18:02:18
* @LastEditors: XieZhiXiong
* @LastEditTime: 2021-0
2-20 15:20:18
* @LastEditTime: 2021-0
4-19 17:20:33
* @Description: 退款明细
*/
import
React
,
{
useState
}
from
'react'
;
...
...
@@ -99,7 +99,6 @@ const ReturnDetailInfo: React.FC<ReturnDetailInfoProps> = ({
{
title
:
'订单号'
,
dataIndex
:
'orderNo'
,
render
:
(
text
,
record
)
=>
text
,
},
{
title
:
'商品ID'
,
...
...
@@ -257,7 +256,7 @@ const ReturnDetailInfo: React.FC<ReturnDetailInfoProps> = ({
dataSource=
{
dataSource
}
columns=
{
columns
}
loading=
{
false
}
pagination=
{
false
}
pagination=
{
undefined
}
expandable=
{
{
expandIcon
:
({
expanded
,
onExpand
,
record
})
=>
expanded
?
(
...
...
src/utils/index.ts
View file @
98b1d828
...
...
@@ -286,6 +286,8 @@ export interface FileData {
name
:
string
;
status
:
'uploading'
|
'done'
|
'error'
|
'removed'
;
url
:
string
;
size
:
number
,
type
:
string
,
};
/**
...
...
@@ -303,6 +305,8 @@ export function normalizeFiledata(url: any): any {
uid
:
Math
.
random
().
toFixed
(
16
).
slice
(
2
,
10
),
name
:
fileName
,
status
:
'done'
,
size
:
0
,
type
:
''
,
url
,
};
};
...
...
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