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
079208ae
Commit
079208ae
authored
Jul 21, 2020
by
tjy
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
新增会员管理-待审核、待提交审核、待确认审核列表
parent
1819e76f
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
515 additions
and
27 deletions
+515
-27
memberRoute.ts
config/routes/memberRoute.ts
+32
-0
menu.ts
src/locales/zh-CN/menu.ts
+17
-11
auditDetail.tsx
src/pages/member/components/auditDetail.tsx
+10
-0
auditList.tsx
src/pages/member/components/auditList.tsx
+0
-0
index.less
src/pages/member/components/index.less
+113
-0
addMember.tsx
src/pages/member/memberImport/addMember.tsx
+303
-16
addMember2.tsx
src/pages/member/memberImport/addMember2.tsx
+0
-0
auditPr.tsx
src/pages/member/memberPr/auditPr.tsx
+8
-0
index.less
src/pages/member/memberPr/index.less
+0
-0
index.tsx
src/pages/member/memberPr/index.tsx
+8
-0
auditPrComfirm.tsx
src/pages/member/memberPrConfirm/auditPrComfirm.tsx
+8
-0
index.less
src/pages/member/memberPrConfirm/index.less
+0
-0
index.tsx
src/pages/member/memberPrConfirm/index.tsx
+8
-0
index.less
src/pages/member/memberPrSubmit/index.less
+0
-0
index.tsx
src/pages/member/memberPrSubmit/index.tsx
+8
-0
No files found.
config/routes/memberRoute.ts
View file @
079208ae
...
...
@@ -37,6 +37,38 @@ const MemberRoute = {
component
:
'@/pages/member/memberMaintain/index'
,
},
{
path
:
'/memberCenter/memberAbility/manage/memberPrSubmit'
,
name
:
'memberPrSubmit'
,
key
:
'memberPrSubmit'
,
component
:
'@/pages/member/memberPrSubmit/index'
},
{
path
:
'/memberCenter/memberAbility/manage/memberPr'
,
name
:
'memberPr'
,
key
:
'memberPr'
,
component
:
'@/pages/member/memberPr/index'
},
{
path
:
'/memberCenter/memberAbility/manage/auditPr'
,
name
:
'auditPr'
,
key
:
'auditPr'
,
hideInMenu
:
true
,
component
:
'@/pages/member/memberPr/auditPr'
},
{
path
:
'/memberCenter/memberAbility/manage/memberPrConfirm'
,
name
:
'memberPrConfirm'
,
key
:
'memberPrConfirm'
,
component
:
'@/pages/member/memberPrConfirm/index'
},
{
path
:
'/memberCenter/memberAbility/manage/auditPrComfirm'
,
name
:
'auditPrComfirm'
,
key
:
'auditPrComfirm'
,
hideInMenu
:
true
,
component
:
'@/pages/member/memberPrConfirm/auditPrComfirm'
},
{
path
:
'/memberCenter/memberAbility/manage/upgradeRule'
,
name
:
'memberUpgradeRule'
,
key
:
'memberUpgradeRule'
,
...
...
src/locales/zh-CN/menu.ts
View file @
079208ae
...
...
@@ -3,7 +3,7 @@
* @Date: 2020-07-13 14:08:50
* @LastEditors: LeeJiancong
* @LastEditTime: 2020-07-18 16:25:18
*/
*/
export
default
{
'menu.welcome'
:
'欢迎'
,
...
...
@@ -50,6 +50,11 @@ export default {
'menu.memberAbility.memberManage.memberImport'
:
'会员导入'
,
'menu.memberAbility.memberManage.addMember'
:
'新增会员'
,
'menu.memberAbility.memberManage.memberMaintain'
:
'会员维护'
,
'menu.memberAbility.memberManage.memberPrSubmit'
:
'待提交审核'
,
'menu.memberAbility.memberManage.memberPr'
:
'待审核'
,
'menu.memberAbility.memberManage.auditPr'
:
'待审核详情'
,
'menu.memberAbility.memberManage.memberPrConfirm'
:
'待确认审核'
,
'menu.memberAbility.memberManage.auditPrComfirm'
:
'待确认审核详情'
,
'menu.memberAbility.memberManage.memberUpgradeRule'
:
'会员升级规则'
,
'menu.memberAbility.memberManage.memberLevel'
:
'会员等级'
,
'menu.memberAbility.memberManage.addEquity'
:
'会员权益设置'
,
...
...
@@ -61,15 +66,15 @@ export default {
//物流能力
'menu.logisticsAbility'
:
'物流'
,
'menu.logisticsAbility.logistics'
:
'物流管理'
,
'menu.logisticsAbility.logistics.company'
:
'物流公司管理'
,
'menu.logisticsAbility.logistics.addCompany'
:
'新建物流公司'
,
'menu.logisticsAbility.logistics.deliveryAddress'
:
'发货地址管理'
,
'menu.logisticsAbility.logistics.addressForm'
:
'新建发货地址'
,
'menu.logisticsAbility.logistics.receivingAddress'
:
'收货地址管理'
,
'menu.logisticsAbility.logistics.template'
:
'运费模板管理'
,
'menu.logisticsAbility.logistics.templateForm'
:
'新建运费模板'
,
'menu.logisticsAbility.logistics'
:
'物流管理'
,
'menu.logisticsAbility.logistics.company'
:
'物流公司管理'
,
'menu.logisticsAbility.logistics.addCompany'
:
'新建物流公司'
,
'menu.logisticsAbility.logistics.deliveryAddress'
:
'发货地址管理'
,
'menu.logisticsAbility.logistics.addressForm'
:
'新建发货地址'
,
'menu.logisticsAbility.logistics.receivingAddress'
:
'收货地址管理'
,
'menu.logisticsAbility.logistics.template'
:
'运费模板管理'
,
'menu.logisticsAbility.logistics.templateForm'
:
'新建运费模板'
,
'menu.logisticsAbility.logisticsSubmit'
:
'物流单提交'
,
'menu.logisticsAbility.logisticsSubmit.orderSearchList'
:
'物流单查询'
'menu.logisticsAbility.logisticsSubmit'
:
'物流单提交'
,
'menu.logisticsAbility.logisticsSubmit.orderSearchList'
:
'物流单查询'
};
\ No newline at end of file
src/pages/member/components/auditDetail.tsx
0 → 100644
View file @
079208ae
import
React
,
{
useRef
,
useState
}
from
'react'
;
import
style
from
'./index.less'
;
interface
ItemProps
{}
const
auditDetail
:
React
.
FC
<
ItemProps
>
=
props
=>
{
return
<
div
>
auditDetail
</
div
>;
};
export
default
auditDetail
;
src/pages/member/components/auditList.tsx
0 → 100644
View file @
079208ae
This diff is collapsed.
Click to expand it.
src/pages/member/components/index.less
0 → 100644
View file @
079208ae
.col {
margin-bottom: 16px;
}
.subRow {
width: 100%;
.subCol {
width : 100%;
text-align: right;
.select {
width : 160px;
margin : 0 0 16px 16px;
text-align : left;
&:nth-of-type(1) {
margin-left: 0;
}
}
}
}
.nameCell {
text-align: left;
.nameCellTitle {
color : @main-color;
cursor: pointer;
}
.levelIcon1 {
width : 100%;
height : 16px;
background : url("/static/imgs/level1@2x.png") no-repeat;
background-size: 54px 16px;
margin-top : 8px;
}
.levelIcon2 {
width : 100%;
height : 16px;
background : url("/static/imgs/level2@2x.png") no-repeat;
background-size: 54px 16px;
margin-top : 8px;
}
.levelIcon3 {
width : 100%;
height : 16px;
background : url("/static/imgs/level3@2x.png") no-repeat;
background-size: 54px 16px;
margin-top : 8px;
}
}
.importBtn {
margin: 0 16px;
}
.headerTop {
display : flex;
align-items: center;
span {
font-size : 14px;
font-weight: 400;
&:nth-last-of-type(1) {
font-size : 20px;
font-weight: 500;
color : #172B4D;
margin-left: 16px;
}
}
}
.saveBtn {
color : #fff;
background: @main-color
}
.address {
display: flex;
&-addition {
display : inline-block;
width : 32px;
height : 32px;
text-align : center;
margin-left : 24px;
border : 1px solid #EBFBFC;
border-radius: 2px;
cursor : pointer;
overflow : hidden;
&:hover {
background-color: #00B37A;
border : 0;
color : #fff;
}
&-icon {
width : 20px;
height: 20px;
color : '#6B778C';
}
}
}
\ No newline at end of file
src/pages/member/memberImport/addMember.tsx
View file @
079208ae
import
React
,
{
useState
,
useRef
}
from
'react'
import
{
history
}
from
'umi'
import
{
Tooltip
,
Input
,
Select
,
Button
,
Card
,
Dropdown
,
Menu
,
Row
,
Col
}
from
'antd'
import
{
PageHeaderWrapper
}
from
'@ant-design/pro-layout'
import
React
,
{
useState
,
useEffect
,
useRef
}
from
'react'
;
import
{
history
}
from
'umi'
;
import
{
Tabs
,
Badge
,
Tooltip
,
Button
,
Card
,
Dropdown
,
Menu
,
Row
,
Col
,
}
from
'antd'
;
import
{
PageHeaderWrapper
}
from
'@ant-design/pro-layout'
;
import
{
PlusOutlined
,
EyeOutlined
,
UpOutlined
,
ContainerOutlined
,
DeleteOutlined
,
DownOutlined
}
from
'@ant-design/icons'
import
{
StandardTable
}
from
'god'
import
{
ColumnType
}
from
'antd/lib/table/interface'
import
style
from
'./index.less'
DownOutlined
,
}
from
'@ant-design/icons'
;
import
{
Form
,
FormItem
,
FormButtonGroup
,
createFormActions
,
}
from
'@formily/antd'
;
import
{
MegaLayout
,
Select
,
Input
,
DatePicker
,
}
from
'@formily/antd-components'
;
import
{
StandardTable
}
from
'god'
;
import
{
ColumnType
}
from
'antd/lib/table/interface'
;
import
style
from
'./index.less'
;
import
ChinaImg
from
'../../../../mockStatic/china.png'
;
import
gou
from
'../../../../mockStatic/gou.png'
;
import
japenImg
from
'../../../../mockStatic/japen.png'
;
import
korenImg
from
'../../../../mockStatic/koren.png'
;
import
us
from
'../../../../mockStatic/us.png'
;
const
{
Option
}
=
Select
;
const
countryTem
=
`<><img src={} style={{ width: 24, height: 17 }} />`
;
const
selectList
:
any
=
[
{
label
:
(
<>
<
img
src=
{
ChinaImg
}
style=
{
{
width
:
24
,
height
:
17
}
}
/>
+86
</>
),
value
:
'1'
,
},
{
label
:
(
<>
<
img
src=
{
gou
}
style=
{
{
width
:
24
,
height
:
17
}
}
/>
+86
</>
),
value
:
'2'
,
},
{
label
:
(
<>
<
img
src=
{
japenImg
}
style=
{
{
width
:
24
,
height
:
17
}
}
/>
+86
</>
),
value
:
'3'
,
},
{
label
:
(
<>
<
img
src=
{
korenImg
}
style=
{
{
width
:
24
,
height
:
17
}
}
/>
+86
</>
),
value
:
'4'
,
},
{
label
:
(
<>
<
img
src=
{
us
}
style=
{
{
width
:
24
,
height
:
17
}
}
/>
+86
</>
),
value
:
'5'
,
},
];
const
data
=
[]
const
{
TabPane
}
=
Tabs
;
const
data
=
[];
const
addMember
:
React
.
FC
<
[]
>
=
()
=>
{
const
[
actived
,
setActived
]
=
useState
(
'2'
);
const
[
tabCount
,
setTabCount
]
=
useState
({
'1'
:
0
,
'2'
:
2
,
'3'
:
3
,
'4'
:
4
,
'5'
:
5
,
'6'
:
6
,
});
const
[
editable
,
setEditable
]
=
useState
(
true
);
useEffect
(()
=>
{
// console.log(actived)
});
return
(
<
div
></
div
>
)
}
<
PageHeaderWrapper
onBack=
{
()
=>
history
.
goBack
()
}
title=
{
<>
<
div
className=
{
style
.
headerTop
}
>
<
span
>
返回
</
span
>
<
span
>
新建会员
</
span
>
</
div
>
</>
}
extra=
{
<>
<
Button
className=
{
style
.
saveBtn
}
icon=
{
<
ContainerOutlined
/>
}
>
保存
</
Button
>
</>
}
>
<
Card
>
<
Tabs
tabBarGutter=
{
30
}
activeKey=
{
actived
}
onChange=
{
activeKey
=>
setActived
(
activeKey
)
}
>
<
TabPane
tab=
{
<
Badge
count=
{
tabCount
[
'1'
]
}
offset=
{
[
10
,
0
]
}
>
基本信息
</
Badge
>
}
key=
"1"
>
<
Form
editable=
{
editable
}
labelCol=
{
3
}
wrapperCol=
{
10
}
labelAlign=
"left"
>
<
FormItem
title=
"会员类型"
name=
"memberType"
dataSource=
{
[
{
value
:
1
,
label
:
'企业会员'
},
{
value
:
2
,
label
:
'渠道会员'
},
]
}
rules=
{
[{
required
:
true
,
message
:
'请选择会员类型!'
}]
}
component=
{
Select
}
/>
<
FormItem
title=
"会员角色"
name=
"memberRole"
dataSource=
{
[
{
value
:
1
,
label
:
'企业会员'
},
{
value
:
2
,
label
:
'渠道会员'
},
]
}
rules=
{
[{
required
:
true
,
message
:
'请选择会员角色!'
}]
}
component=
{
Select
}
/>
<
FormItem
title=
"会员等级"
name=
"memberLevel"
dataSource=
{
[
{
value
:
1
,
label
:
'企业会员'
},
{
value
:
2
,
label
:
'渠道会员'
},
]
}
rules=
{
[{
required
:
true
,
message
:
'请选择会员等级!'
}]
}
component=
{
Select
}
/>
<
FormItem
label=
"注册手机号"
name=
"registry"
>
<
Row
gutter=
{
10
}
>
<
Col
span=
{
6
}
>
<
FormItem
itemStyle=
{
{
marginBottom
:
0
}
}
name=
"country"
dataSource=
{
selectList
}
initialValue=
{
'1'
}
required
component=
{
Select
}
/>
</
Col
>
<
Col
span=
{
18
}
>
<
FormItem
itemStyle=
{
{
marginBottom
:
0
}
}
name=
"phoneMobile"
required
component=
{
Input
}
/>
</
Col
>
</
Row
>
</
FormItem
>
<
FormItem
title=
"注册邮箱"
name=
"memberEmail"
component=
{
Input
}
/>
</
Form
>
</
TabPane
>
<
TabPane
tab=
{
<
Badge
count=
{
tabCount
[
'2'
]
}
offset=
{
[
10
,
0
]
}
>
渠道信息
</
Badge
>
}
key=
"2"
>
<
Form
editable=
{
editable
}
labelCol=
{
3
}
wrapperCol=
{
10
}
labelAlign=
"left"
>
<
FormItem
title=
"渠道级别"
name=
"channelLevel"
component=
{
Input
}
/>
<
FormItem
title=
"渠道类型"
name=
"channelType"
dataSource=
{
[
{
value
:
1
,
label
:
'企业会员'
},
{
value
:
2
,
label
:
'渠道会员'
},
]
}
rules=
{
[{
required
:
true
,
message
:
'请选择渠道类型!'
}]
}
component=
{
Select
}
/>
<
FormItem
title=
"代理地市"
name=
"address"
component=
{
Input
}
>
{
/* <Row gutter={10}>
<Col span={6}>
<FormItem
itemStyle={{ marginBottom: 0 }}
name="country"
dataSource={selectList}
initialValue={'1'}
required
component={Select}
/>
</Col>
<Col span={18}>
<FormItem
itemStyle={{ marginBottom: 0 }}
name="phoneMobile"
required
component={Input}
/>
</Col>
</Row> */
}
</
FormItem
>
<
FormItem
mega
-
props=
{
{
placeholder
:
'最长200个字符,100个汉字'
,
}
}
title=
"渠道描述"
name=
"desc"
rules=
{
[{
required
:
true
,
message
:
'请填写渠道描述!'
}]
}
component=
{
Input
.
TextArea
}
x
-
component
-
props=
{
{
placeholder
:
'测试'
,
}
}
/>
</
Form
>
</
TabPane
>
<
TabPane
tab=
{
<
Badge
count=
{
tabCount
[
'3'
]
}
offset=
{
[
10
,
0
]
}
>
营业执照
</
Badge
>
}
key=
"3"
>
Tab 3
</
TabPane
>
<
TabPane
tab=
{
<
Badge
count=
{
tabCount
[
'4'
]
}
offset=
{
[
10
,
0
]
}
>
法定代表人
</
Badge
>
}
key=
"4"
>
Tab 4
</
TabPane
>
<
TabPane
tab=
{
<
Badge
count=
{
tabCount
[
'5'
]
}
offset=
{
[
10
,
0
]
}
>
联系信息
</
Badge
>
}
key=
"5"
>
Tab 5
</
TabPane
>
<
TabPane
tab=
{
<
Badge
count=
{
tabCount
[
'6'
]
}
offset=
{
[
10
,
0
]
}
>
流转记录
</
Badge
>
}
key=
"6"
>
Tab 6
</
TabPane
>
</
Tabs
>
</
Card
>
</
PageHeaderWrapper
>
);
};
export
default
addMember
\ No newline at end of file
export
default
addMember
;
src/pages/member/memberImport/addMember
copy
.tsx
→
src/pages/member/memberImport/addMember
2
.tsx
View file @
079208ae
File moved
src/pages/member/memberPr/auditPr.tsx
0 → 100644
View file @
079208ae
import
React
from
'react'
;
import
AuditDetail
from
'../components/auditDetail'
;
const
auditPr
:
React
.
FC
<
{}
>
=
()
=>
{
return
<
AuditDetail
/>;
};
export
default
auditPr
;
src/pages/member/memberPr/index.less
0 → 100644
View file @
079208ae
src/pages/member/memberPr/index.tsx
0 → 100644
View file @
079208ae
import
React
from
'react'
;
import
AuditList
from
'../components/auditList'
;
const
memberPr
=
()
=>
{
return
<
AuditList
pageType=
"2"
/>;
};
export
default
memberPr
;
src/pages/member/memberPrConfirm/auditPrComfirm.tsx
0 → 100644
View file @
079208ae
import
React
from
'react'
;
import
AuditDetail
from
'../components/auditDetail'
;
const
auditPrConfirm
:
React
.
FC
<
{}
>
=
()
=>
{
return
<
AuditDetail
/>;
};
export
default
auditPrConfirm
;
src/pages/member/memberPrConfirm/index.less
0 → 100644
View file @
079208ae
src/pages/member/memberPrConfirm/index.tsx
0 → 100644
View file @
079208ae
import
React
from
'react'
;
import
AuditList
from
'../components/auditList'
;
const
memberPrConfirm
=
()
=>
{
return
<
AuditList
pageType=
"3"
/>;
};
export
default
memberPrConfirm
;
src/pages/member/memberPrSubmit/index.less
0 → 100644
View file @
079208ae
src/pages/member/memberPrSubmit/index.tsx
0 → 100644
View file @
079208ae
import
React
from
'react'
;
import
AuditList
from
'../components/auditList'
;
const
memberPrSubmit
=
()
=>
{
return
<
AuditList
pageType=
"1"
/>;
};
export
default
memberPrSubmit
;
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