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
陈智峰
jinfa-platform
Commits
5383ca73
Commit
5383ca73
authored
Jul 27, 2020
by
LeeJiancong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
运费模板对接完成
parent
b60cfb09
Show whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
686 additions
and
104 deletions
+686
-104
base.config.json
config/base.config.json
+1
-1
logisticsRoutes.ts
config/routes/logisticsRoutes.ts
+12
-1
package.json
package.json
+1
-0
menu.ts
src/locales/zh-CN/menu.ts
+4
-2
confirmModal.tsx
src/pages/logistics/components/confirmModal.tsx
+107
-0
orderSearchDetail.tsx
src/pages/logistics/components/orderSearchDetail.tsx
+20
-9
orderSearchList.tsx
src/pages/logistics/components/orderSearchList.tsx
+6
-1
company.tsx
src/pages/logistics/list/company.tsx
+2
-1
addressForm.tsx
src/pages/logistics/list/components/addressForm.tsx
+40
-19
templateForm.tsx
src/pages/logistics/list/components/templateForm.tsx
+7
-3
toOrderComfirmList.tsx
src/pages/logistics/logisticsResult/toOrderComfirmList.tsx
+432
-0
toOrderSumitList.tsx
src/pages/logistics/logisticsSubmit/toOrderSumitList.tsx
+54
-67
index.ts
src/services/index.ts
+0
-0
No files found.
config/base.config.json
View file @
5383ca73
{
"userRegister"
:{
"useType"
:{
"memberType"
:[{
"id"
:
5
,
"typeName"
:
"企业会员"
},{
"id"
:
6
,
"typeName"
:
"企业个人会员"
},{
"id"
:
7
,
"typeName"
:
"渠道企业会员"
},{
"id"
:
8
,
"typeName"
:
"渠道个人会员"
}],
"businessType"
:[{
"id"
:
1
,
"typeName"
:
"采购"
},{
"id"
:
2
,
"typeName"
:
"商品销售"
},{
"id"
:
3
,
"typeName"
:
"加工服务"
},{
"id"
:
4
,
"typeName"
:
"物流服务"
},{
"id"
:
5
,
"typeName"
:
"金融服务"
},{
"id"
:
6
,
"typeName"
:
"保险服务
"
}]},
"useDetail"
:[{
"groupName"
:
"联系信息"
,
"elements"
:[{
"id"
:
26
,
"fieldName"
:
"contact"
,
"fieldCNName"
:
"联系人"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
27
,
"fieldName"
:
"fixed_contact_number"
,
"fieldCNName"
:
"固定联系电话"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
28
,
"fieldName"
:
"phone_number"
,
"fieldCNName"
:
"手机号码"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
29
,
"fieldName"
:
"fax_number"
,
"fieldCNName"
:
"传真号码"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
30
,
"fieldName"
:
"address"
,
"fieldCNName"
:
"地址"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
31
,
"fieldName"
:
"zip_code"
,
"fieldCNName"
:
"邮编"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
32
,
"fieldName"
:
"url"
,
"fieldCNName"
:
"网址"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
33
,
"fieldName"
:
"email"
,
"fieldCNName"
:
"邮箱"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]}]},{
"groupName"
:
"营业执照信息"
,
"elements"
:[{
"id"
:
10
,
"fieldName"
:
"company_name"
,
"fieldCNName"
:
"公司名称"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
11
,
"fieldName"
:
"enterprise_type"
,
"fieldCNName"
:
"企业类型"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
12
,
"fieldName"
:
"residence"
,
"fieldCNName"
:
"住所"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
13
,
"fieldName"
:
"legal_representative"
,
"fieldCNName"
:
"法定代表人"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
14
,
"fieldName"
:
"register_capital"
,
"fieldCNName"
:
"注册资本"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
15
,
"fieldName"
:
"establish_date"
,
"fieldCNName"
:
"成立日期"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
16
,
"fieldName"
:
"business_term"
,
"fieldCNName"
:
"营业期限"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
17
,
"fieldName"
:
"business_scope"
,
"fieldCNName"
:
"经营范围"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
18
,
"fieldName"
:
"registration_authority"
,
"fieldCNName"
:
"登记机关"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
19
,
"fieldName"
:
"registration_time"
,
"fieldCNName"
:
"登记时间"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
20
,
"fieldName"
:
"unified_social_credit_code"
,
"fieldCNName"
:
"统一社会信用代码"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
21
,
"fieldName"
:
"business_license"
,
"fieldCNName"
:
"营业执照"
,
"fieldType"
:
"file"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]}]},{
"groupName"
:
"填写会员基本信息"
,
"elements"
:[{
"id"
:
1
,
"fieldName"
:
"member_type"
,
"fieldCNName"
:
"会员类型"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
2
,
"fieldName"
:
"MEMBER_ROLE"
,
"fieldCNName"
:
"会员角色"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
3
,
"fieldName"
:
"member_level"
,
"fieldCNName"
:
"会员等级"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
4
,
"fieldName"
:
"REGISTER_PHONE"
,
"fieldCNName"
:
"注册手机号"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
5
,
"fieldName"
:
"register_email"
,
"fieldCNName"
:
"注册邮箱"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]}]},{
"groupName"
:
"法定代表人信息"
,
"elements"
:[{
"id"
:
22
,
"fieldName"
:
"legal_name"
,
"fieldCNName"
:
"法人姓名"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
23
,
"fieldName"
:
"legal_phone"
,
"fieldCNName"
:
"法人手机号"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
24
,
"fieldName"
:
"legal_id_card"
,
"fieldCNName"
:
"法人身份证号"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
25
,
"fieldName"
:
"legal_id_card_information"
,
"fieldCNName"
:
"法人身份证信息"
,
"fieldType"
:
"file"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]}]},{
"groupName"
:
"填写渠道信息"
,
"elements"
:[{
"id"
:
6
,
"fieldName"
:
"channel_level"
,
"fieldCNName"
:
"渠道级别"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
7
,
"fieldName"
:
"channel_type"
,
"fieldCNName"
:
"渠道类型"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
8
,
"fieldName"
:
"agent_city"
,
"fieldCNName"
:
"代理地市"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
9
,
"fieldName"
:
"channel_describe"
,
"fieldCNName"
:
"渠道描述"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]}]}]},
"global"
:{
"logo"
:
"http://lingxi-frontend-test.oss-cn-hangzhou.aliyuncs.com/images/logo.png"
,
"countryList"
:[{
"name"
:
"简体中文-ZH"
,
"key"
:
"cn"
,
"icon"
:
"http://lingxi-frontend-test.oss-cn-hangzhou.aliyuncs.com/images/china.png"
},{
"name"
:
"English-EN"
,
"key"
:
"en"
,
"icon"
:
"http://lingxi-frontend-test.oss-cn-hangzhou.aliyuncs.com/images/us.png"
},{
"name"
:
"日本語-JP"
,
"key"
:
"jp"
,
"icon"
:
"http://lingxi-frontend-test.oss-cn-hangzhou.aliyuncs.com/images/japen.png"
},{
"name"
:
"한국어-KO"
,
"key"
:
"ko"
,
"icon"
:
"http://lingxi-frontend-test.oss-cn-hangzhou.aliyuncs.com/images/koren.png"
}]}}
{
"userRegister"
:{
"useType"
:{
"memberType"
:[{
"id"
:
1
,
"typeName"
:
"企业会员"
},{
"id"
:
2
,
"typeName"
:
"企业个人会员"
},{
"id"
:
3
,
"typeName"
:
"渠道企业会员"
},{
"id"
:
4
,
"typeName"
:
"渠道个人会员"
}],
"businessType"
:[{
"id"
:
1
,
"typeName"
:
"采购"
},{
"id"
:
2
,
"typeName"
:
"商品销售"
},{
"id"
:
3
,
"typeName"
:
"加工服务"
},{
"id"
:
4
,
"typeName"
:
"物流服务"
},{
"id"
:
5
,
"typeName"
:
"金融服务"
},{
"id"
:
6
,
"typeName"
:
"保险服务"
},{
"id"
:
7
,
"typeName"
:
"1
"
}]},
"useDetail"
:[{
"groupName"
:
"联系信息"
,
"elements"
:[{
"id"
:
26
,
"fieldName"
:
"contact"
,
"fieldCNName"
:
"联系人"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
27
,
"fieldName"
:
"fixed_contact_number"
,
"fieldCNName"
:
"固定联系电话"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
28
,
"fieldName"
:
"phone_number"
,
"fieldCNName"
:
"手机号码"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
29
,
"fieldName"
:
"fax_number"
,
"fieldCNName"
:
"传真号码"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
30
,
"fieldName"
:
"address"
,
"fieldCNName"
:
"地址"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
31
,
"fieldName"
:
"zip_code"
,
"fieldCNName"
:
"邮编"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
32
,
"fieldName"
:
"url"
,
"fieldCNName"
:
"网址"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
33
,
"fieldName"
:
"email"
,
"fieldCNName"
:
"邮箱"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]}]},{
"groupName"
:
"营业执照信息"
,
"elements"
:[{
"id"
:
10
,
"fieldName"
:
"company_name"
,
"fieldCNName"
:
"公司名称"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
11
,
"fieldName"
:
"enterprise_type"
,
"fieldCNName"
:
"企业类型"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
12
,
"fieldName"
:
"residence"
,
"fieldCNName"
:
"住所"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
13
,
"fieldName"
:
"legal_representative"
,
"fieldCNName"
:
"法定代表人"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
14
,
"fieldName"
:
"register_capital"
,
"fieldCNName"
:
"注册资本"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
15
,
"fieldName"
:
"establish_date"
,
"fieldCNName"
:
"成立日期"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
16
,
"fieldName"
:
"business_term"
,
"fieldCNName"
:
"营业期限"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
17
,
"fieldName"
:
"business_scope"
,
"fieldCNName"
:
"经营范围"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
18
,
"fieldName"
:
"registration_authority"
,
"fieldCNName"
:
"登记机关"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
19
,
"fieldName"
:
"registration_time"
,
"fieldCNName"
:
"登记时间"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
20
,
"fieldName"
:
"unified_social_credit_code"
,
"fieldCNName"
:
"统一社会信用代码"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
21
,
"fieldName"
:
"business_license"
,
"fieldCNName"
:
"营业执照"
,
"fieldType"
:
"file"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]}]},{
"groupName"
:
"填写会员基本信息"
,
"elements"
:[{
"id"
:
1
,
"fieldName"
:
"member_type"
,
"fieldCNName"
:
"会员类型"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
2
,
"fieldName"
:
"MEMBER_ROLE"
,
"fieldCNName"
:
"会员角色"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
3
,
"fieldName"
:
"member_level"
,
"fieldCNName"
:
"会员等级"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
4
,
"fieldName"
:
"REGISTER_PHONE"
,
"fieldCNName"
:
"注册手机号"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
5
,
"fieldName"
:
"register_email"
,
"fieldCNName"
:
"注册邮箱"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]}]},{
"groupName"
:
"法定代表人信息"
,
"elements"
:[{
"id"
:
22
,
"fieldName"
:
"legal_name"
,
"fieldCNName"
:
"法人姓名"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
23
,
"fieldName"
:
"legal_phone"
,
"fieldCNName"
:
"法人手机号"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
24
,
"fieldName"
:
"legal_id_card"
,
"fieldCNName"
:
"法人身份证号"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
25
,
"fieldName"
:
"legal_id_card_information"
,
"fieldCNName"
:
"法人身份证信息"
,
"fieldType"
:
"file"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]}]},{
"groupName"
:
"填写渠道信息"
,
"elements"
:[{
"id"
:
6
,
"fieldName"
:
"channel_level"
,
"fieldCNName"
:
"渠道级别"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
7
,
"fieldName"
:
"channel_type"
,
"fieldCNName"
:
"渠道类型"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
8
,
"fieldName"
:
"agent_city"
,
"fieldCNName"
:
"代理地市"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]},{
"id"
:
9
,
"fieldName"
:
"channel_describe"
,
"fieldCNName"
:
"渠道描述"
,
"fieldType"
:
"String"
,
"fieldLength"
:
100
,
"fieldEmpty"
:
0
,
"fieldOrder"
:
1
,
"fieldRemark"
:
"test"
,
"checkRules"
:[]}]}]},
"global"
:{
"logo"
:
"http://lingxi-frontend-test.oss-cn-hangzhou.aliyuncs.com/images/logo.png"
,
"countryList"
:[{
"name"
:
"简体中文-ZH"
,
"key"
:
"cn"
,
"icon"
:
"http://lingxi-frontend-test.oss-cn-hangzhou.aliyuncs.com/images/china.png"
},{
"name"
:
"English-EN"
,
"key"
:
"en"
,
"icon"
:
"http://lingxi-frontend-test.oss-cn-hangzhou.aliyuncs.com/images/us.png"
},{
"name"
:
"日本語-JP"
,
"key"
:
"jp"
,
"icon"
:
"http://lingxi-frontend-test.oss-cn-hangzhou.aliyuncs.com/images/japen.png"
},{
"name"
:
"한국어-KO"
,
"key"
:
"ko"
,
"icon"
:
"http://lingxi-frontend-test.oss-cn-hangzhou.aliyuncs.com/images/koren.png"
}]}}
config/routes/logisticsRoutes.ts
View file @
5383ca73
...
...
@@ -116,7 +116,18 @@ const LogisticsRoute = {
name
:
'orderResultDeatil'
,
component
:
'@/pages/logistics/components/orderSearchDetail'
,
hideInMenu
:
true
}
},
{
path
:
'/memberCenter/logisticsAbility/logisticsResult/toOrderComfirmList'
,
name
:
'toOrderComfirmList'
,
component
:
'@/pages/logistics/logisticsResult/toOrderComfirmList'
,
},
{
//待确认详情处理
path
:
'/memberCenter/logisticsAbility/logisticsResult/toOrderComfirmDeatil'
,
name
:
'orderResultDeatil'
,
component
:
'@/pages/logistics/components/orderSearchDetail'
,
hideInMenu
:
true
},
]
}
...
...
package.json
View file @
5383ca73
...
...
@@ -3,6 +3,7 @@
"scripts"
:
{
"api"
:
"god-ytt"
,
"scripts:build"
:
"node scripts/run"
,
"start:dev"
:
"umi dev"
,
"start:analyze"
:
"ANALYZE=1 umi dev"
,
"clean"
:
"rimraf node_modules"
,
"start"
:
"yarn scripts:build && umi dev"
,
...
...
src/locales/zh-CN/menu.ts
View file @
5383ca73
...
...
@@ -2,7 +2,7 @@
* @Author: LeeJiancong
* @Date: 2020-07-13 14:08:50
* @LastEditors: LeeJiancong
* @LastEditTime: 2020-07-2
3 14:02:07
* @LastEditTime: 2020-07-2
7 11:29:16
*/
export
default
{
...
...
@@ -83,5 +83,6 @@ export default {
'menu.logisticsAbility.logisticsResult'
:
'物流单处理'
,
'menu.logisticsAbility.logisticsResult.orderResultSearchList'
:
'物流单查询'
,
'menu.logisticsAbility.logisticsResult.orderResultDeatil'
:
'物流单详情'
'menu.logisticsAbility.logisticsResult.orderResultDeatil'
:
'物流单详情'
,
'menu.logisticsAbility.logisticsResult.toOrderComfirmList'
:
'待确认物流单'
,
};
\ No newline at end of file
src/pages/logistics/components/confirmModal.tsx
0 → 100644
View file @
5383ca73
import
React
,
{
Component
,
useState
,
useEffect
}
from
'react'
;
import
{
Modal
,
Button
,
Form
}
from
'antd'
import
{
SchemaForm
,
SchemaMarkupField
as
Field
,
createFormActions
,
FormEffectHooks
}
from
'@formily/antd'
import
{
Input
,
Radio
,
FormMegaLayout
}
from
'@formily/antd-components'
import
{
values
}
from
'mobx'
;
export
interface
Params
{
dialogVisible
:
boolean
,
onCancel
:
Function
,
dontReceive
?:
boolean
//默认展示
}
const
actions
=
createFormActions
()
const
{
onFieldChange$
}
=
FormEffectHooks
const
comfirmDialog
:
React
.
FC
<
Params
>
=
(
props
)
=>
{
console
.
log
(
props
.
dialogVisible
)
const
handleCancel
=
()
=>
{
}
const
handletOk
=
(
values
:
any
)
=>
{
console
.
log
(
values
)
actions
.
submit
()
props
.
onCancel
()
}
useEffect
(()
=>
{
return
()
=>
{
}
},
[])
const
useFormEffects
=
()
=>
{
const
{
setFieldState
}
=
createFormActions
()
onFieldChange$
(
'radio'
).
subscribe
(({
value
})
=>
{
setFieldState
(
'remarkOption'
,
state
=>
{
if
(
value
==
1
){
state
.
visible
=
false
}
else
{
state
.
visible
=
true
}
})
})
}
return
(
<>
<
Modal
title=
'单据确认'
width=
{
800
}
visible=
{
props
.
dialogVisible
}
onOk=
{
handletOk
}
onCancel=
{
()
=>
props
.
onCancel
()
}
destroyOnClose
afterClose=
{
()
=>
actions
.
reset
()
}
okText=
'确定'
cancelText=
'取消'
>
<
SchemaForm
components=
{
{
Input
,
Radio
:
Radio
.
Group
,
TextArea
:
Input
.
TextArea
}
}
actions=
{
actions
}
effects=
{
()
=>
useFormEffects
()
}
onSubmit=
{
(
values
)
=>
handletOk
(
values
)
}
>
<
Field
enum=
{
[
{
label
:
'接受物流单'
,
value
:
1
},
{
label
:
'不接受物流单'
,
value
:
2
}
]
}
name=
'radio'
required
x
-
component=
"Radio"
/>
{
props
.
dontReceive
&&
<
FormMegaLayout
name=
'remarkOption'
label=
'不接受原因'
full
required
wrapperWidth=
{
570
}
labelCol=
{
2
}
labelAlign=
"top"
>
<
Field
name=
"remark"
x
-
component=
"TextArea"
required
x
-
component
-
props=
{
{
placeholder
:
'在此输入你的内容,最多60个汉字'
}
}
x
-
rules=
{
value
=>
{
if
(
value
.
length
>
60
)
{
return
{
type
:
'warning'
,
message
:
'原因最多60个汉字'
}
}
}
}
/>
</
FormMegaLayout
>
}
</
SchemaForm
>
</
Modal
>
</>
)
}
comfirmDialog
.
defaultProps
=
{
dontReceive
:
true
}
export
default
comfirmDialog
\ No newline at end of file
src/pages/logistics/components/orderSearchDetail.tsx
View file @
5383ca73
...
...
@@ -4,6 +4,8 @@ import { PageHeaderWrapper } from '@ant-design/pro-layout'
import
{
EyeOutlined
,
ClockCircleOutlined
,
UpOutlined
,
DownOutlined
,
StopOutlined
,
CheckSquareOutlined
}
from
'@ant-design/icons'
import
{
StandardTable
}
from
'god'
import
{
ColumnType
}
from
'antd/lib/table/interface'
import
ConfirmModal
from
'./confirmModal'
import
{
history
}
from
'umi'
import
style
from
'./index.less'
const
{
Step
}
=
Steps
const
data
=
[
...
...
@@ -20,6 +22,8 @@ const data = [
const
detailInfo
:
React
.
FC
<
{}
>
=
()
=>
{
const
ref
=
useRef
({})
let
[
isextraOption
,
setIsextraOption
]
=
useState
(
false
)
let
[
visible
,
setvisible
]
=
useState
(
false
)
const
[
detailData
,
setDetailData
]
=
useState
<
any
>
({
step
:
{
current
:
0
,
...
...
@@ -168,13 +172,15 @@ const detailInfo: React.FC<{}> = () => {
},
];
//在这做逻辑判断 判断路由 是由哪个页面进来的
// useEffect(() => {
// effect
// return () => {
// cleanup
// }
// }, [])
// 模拟请求
useEffect
(()
=>
{
let
pathname
=
history
.
location
.
pathname
if
(
pathname
===
'/memberCenter/logisticsAbility/logisticsResult/toOrderComfirmDeatil'
){
setIsextraOption
(
true
)
}
return
()
=>
{
}
},
[])
const
fetchData
=
(
params
:
any
)
=>
{
return
new
Promise
((
resolve
,
reject
)
=>
{
const
queryResult
=
data
.
find
(
v
=>
v
.
key
===
params
.
keywords
);
...
...
@@ -203,12 +209,13 @@ const detailInfo: React.FC<{}> = () => {
</>
}
extra=
{
isextraOption
&&
<>
<
Button
>
<
Button
onClick=
{
()
=>
setvisible
(
true
)
}
>
<
StopOutlined
/>
不接受物流单
</
Button
>
<
Button
className=
{
style
[
'saveBtn'
]
}
>
<
Button
onClick=
{
()
=>
setvisible
(
true
)
}
className=
{
style
[
'saveBtn'
]
}
>
<
CheckSquareOutlined
/>
接受物流单
</
Button
>
...
...
@@ -409,6 +416,10 @@ const detailInfo: React.FC<{}> = () => {
</
Col
>
</
Row
>
<
ConfirmModal
dialogVisible=
{
visible
}
onCancel=
{
()
=>
setvisible
(
false
)
}
/>
</
PageHeaderWrapper
>
)
...
...
src/pages/logistics/components/orderSearchList.tsx
View file @
5383ca73
...
...
@@ -122,8 +122,13 @@ const orderSearchList: React.FC<listProps> = (props) => {
TimeRange
:
''
})
const
handleSee
=
()
=>
{
props
.
type
===
'1'
?
history
.
push
(
`/memberCenter/logisticsAbility/logisticsSubmit/orderSubmitDeatil`
):
if
(
props
.
type
===
'1'
){
history
.
push
(
`/memberCenter/logisticsAbility/logisticsSubmit/orderSubmitDeatil`
)
}
else
if
(
props
.
type
===
'2'
){
history
.
push
(
'/memberCenter/logisticsAbility/logisticsResult/orderResultDeatil'
)
}
else
{
history
.
push
(
' /memberCenter/logisticsAbility/logisticsResult/toOrderComfirmDeatil'
)
}
}
const
columns
:
ColumnType
<
any
>
[]
=
[
{
...
...
src/pages/logistics/list/company.tsx
View file @
5383ca73
/*
* @Date: 2020-07-13 15:01:40
* @LastEditors: LeeJiancong
* @LastEditTime: 2020-07-2
4 17:54:55
* @LastEditTime: 2020-07-2
7 11:38:38
*/
import
React
,
{
ReactNode
,
useRef
}
from
'react'
...
...
@@ -191,6 +191,7 @@ const Company: React.FC<{}> = () => {
<
PageHeaderWrapper
>
<
Card
>
<
StandardTable
tableProps=
{
{
rowKey
:
'id'
}
}
columns=
{
columns
}
currentRef=
{
ref
}
fetchTableData=
{
(
params
:
any
)
=>
fetchData
(
params
)
}
...
...
src/pages/logistics/list/components/addressForm.tsx
View file @
5383ca73
...
...
@@ -2,7 +2,7 @@
* @Author: LeeJiancong
* @Date: 2020-07-15 10:31:55
* @LastEditors: LeeJiancong
* @LastEditTime: 2020-07-2
4 20:42:21
* @LastEditTime: 2020-07-2
7 17:01:52
*/
import
React
,
{
Component
,
useState
,
useEffect
}
from
'react'
;
import
ReactDOM
from
'react-dom'
...
...
@@ -81,6 +81,9 @@ const diaLogForm: React.FC<ListProps> = (props) => {
const
[
areaCode
,
setAreaCode
]
=
useState
<
number
>
(
null
)
const
[
Options
,
setOptions
]
=
useState
([])
const
[
state
,
setState
]
=
useState
({
editable
:
true
})
const
[
provinceName
,
setProvinceName
]
=
useState
(
''
)
const
[
cityName
,
setCityName
]
=
useState
(
''
)
const
[
districtName
,
setDistrictName
]
=
useState
(
''
)
const
[
headerTitle
,
setHeaderTitle
]
=
useState
(
''
)
const
[
provinceList
,
setProvinceList
]
=
useState
([])
const
[
cityList
,
setCityList
]
=
useState
([])
...
...
@@ -95,7 +98,7 @@ const diaLogForm: React.FC<ListProps> = (props) => {
)
}
/**
* @description:
* @description:
Form保存
* @param {type}
* @return:
*/
...
...
@@ -107,6 +110,12 @@ const diaLogForm: React.FC<ListProps> = (props) => {
value
.
isDefault
=
values
.
isDefault
?
1
:
0
if
(
type
==
1
)
{
if
(
id
==
0
)
{
value
.
provinceCode
=
value
.
provinceCode
.
split
(
'-'
).
length
>
1
?
value
.
provinceCode
.
split
(
'-'
)[
0
]
:
value
.
provinceCode
value
.
cityCode
=
value
.
cityCode
.
split
(
'-'
).
length
>
1
?
value
.
cityCode
.
split
(
'-'
)[
0
]
:
value
.
cityCode
value
.
districtCode
=
value
.
districtCode
.
split
(
'-'
).
length
>
1
?
value
.
districtCode
.
split
(
'-'
)[
0
]
:
value
.
districtCode
value
.
provinceName
=
provinceName
value
.
cityName
=
cityName
value
.
districtName
=
districtName
PublicApi
.
postLogisticsShipperAddressAdd
(
value
).
then
(
res
=>
{
if
(
res
.
code
==
1000
)
{
}
...
...
@@ -180,7 +189,8 @@ const diaLogForm: React.FC<ListProps> = (props) => {
PublicApi
.
getWarehouseAreaByPcodeAll
({
pcode
:
'100000'
}).
then
(
res
=>
{
let
list
=
[]
res
.
data
.
forEach
((
item
:
any
,
index
:
number
)
=>
{
list
.
push
({
label
:
item
.
name
,
value
:
item
.
code
})
list
.
push
({
label
:
item
.
name
,
value
:
`
${
item
.
code
}
-
${
item
.
name
}
`
})
// list.push({ label: item.name, value: item.code })
})
setProvinceList
(
list
)
})
...
...
@@ -236,37 +246,48 @@ const diaLogForm: React.FC<ListProps> = (props) => {
*/
const
useAreaEffects
=
()
=>
{
const
{
setFieldState
}
=
createFormActions
()
onFieldValueChange$
(
'province
Id
'
).
subscribe
(({
value
})
=>
{
onFieldValueChange$
(
'province
Code
'
).
subscribe
(({
value
})
=>
{
console
.
log
(
value
)
setFieldState
(
'district
Id
'
,
state
=>
{
setFieldState
(
'district
Code
'
,
state
=>
{
state
.
value
=
''
})
setFieldState
(
'*(cityId)'
,
state
=>
{
let
name
=
value
&&
value
.
split
(
'-'
).
length
>
1
?
value
.
split
(
'-'
)[
1
]
:
''
setProvinceName
(
name
)
setFieldState
(
'*(cityCode)'
,
state
=>
{
state
.
value
=
''
let
list
=
[]
PublicApi
.
getWarehouseAreaByPcodeAll
({
pcode
:
value
}).
then
(
res
=>
{
let
pcode
=
value
&&
value
.
split
(
'-'
).
length
>
1
?
value
.
split
(
'-'
)[
0
]
:
value
PublicApi
.
getWarehouseAreaByPcodeAll
({
pcode
:
pcode
}).
then
(
res
=>
{
res
.
data
.
forEach
((
item
:
any
,
index
:
number
)
=>
{
list
.
push
({
label
:
item
.
name
,
value
:
item
.
code
})
// list.push({ label: item.name, value: item.code })
list
.
push
({
label
:
item
.
name
,
value
:
`
${
item
.
code
}
-
${
item
.
name
}
`
})
})
// setCityList(list)
})
FormPath
.
setIn
(
state
,
'props.enum'
,
list
)
})
})
onFieldValueChange$
(
'city
Id
'
).
subscribe
(({
value
})
=>
{
onFieldValueChange$
(
'city
Code
'
).
subscribe
(({
value
})
=>
{
console
.
log
(
value
)
setFieldState
(
'*(districtId)'
,
state
=>
{
let
name
=
value
&&
value
.
split
(
'-'
).
length
>
1
?
value
.
split
(
'-'
)[
1
]
:
''
setCityName
(
name
)
setFieldState
(
'*(districtCode)'
,
state
=>
{
state
.
value
=
''
let
list
=
[]
PublicApi
.
getWarehouseAreaByPcodeAll
({
pcode
:
value
}).
then
(
res
=>
{
let
pcode
=
value
&&
value
.
split
(
'-'
).
length
>
1
?
value
.
split
(
'-'
)[
0
]
:
value
PublicApi
.
getWarehouseAreaByPcodeAll
({
pcode
:
pcode
}).
then
(
res
=>
{
res
.
data
.
forEach
((
item
:
any
,
index
:
number
)
=>
{
list
.
push
({
label
:
item
.
name
,
value
:
item
.
code
})
// list.push({ label: item.name, value: item.code })
list
.
push
({
label
:
item
.
name
,
value
:
`
${
item
.
code
}
-
${
item
.
name
}
`
})
})
})
FormPath
.
setIn
(
state
,
'props.enum'
,
list
)
})
})
onFieldValueChange$
(
'districtCode'
).
subscribe
(({
value
})
=>
{
let
name
=
value
&&
value
.
split
(
'-'
).
length
>
1
?
value
.
split
(
'-'
)[
1
]
:
''
setDistrictName
(
name
)
})
}
return
(
...
...
@@ -281,9 +302,9 @@ const diaLogForm: React.FC<ListProps> = (props) => {
<
SchemaForm
editable=
{
state
.
editable
}
initialValues=
{
{
// areaCode: areaCode
// province
Id
: '',
// city
Id
:'111120',
// district
Id
:'121212'
// province
Code
: '',
// city
Code
:'111120',
// district
Code
:'121212'
}
}
actions=
{
actions
}
//要传递
components=
{
{
...
...
@@ -324,7 +345,7 @@ const diaLogForm: React.FC<ListProps> = (props) => {
x
-
component=
"Select"
enum=
{
provinceList
}
required
name=
"province
Id
"
name=
"province
Code
"
x
-
component
-
props=
{
{
placeholder
:
'-省份/直辖市-'
}
}
...
...
@@ -334,7 +355,7 @@ const diaLogForm: React.FC<ListProps> = (props) => {
x
-
component=
"Select"
enum=
{
cityList
}
required
name=
"city
Id
"
name=
"city
Code
"
x
-
component
-
props=
{
{
placeholder
:
'-市-'
}
}
...
...
@@ -344,7 +365,7 @@ const diaLogForm: React.FC<ListProps> = (props) => {
x
-
component=
"Select"
enum=
{
selectList
}
required
name=
"district
Id
"
name=
"district
Code
"
x
-
component
-
props=
{
{
placeholder
:
'-区-'
}
}
...
...
src/pages/logistics/list/components/templateForm.tsx
View file @
5383ca73
...
...
@@ -2,7 +2,7 @@
* @Author: LeeJiancong
* @Date: 2020-07-15 10:31:55
* @LastEditors: LeeJiancong
* @LastEditTime: 2020-07-2
4 20:10:56
* @LastEditTime: 2020-07-2
7 19:11:21
*/
import
React
,
{
Component
,
useState
,
useEffect
}
from
'react'
;
import
ReactDOM
from
'react-dom'
...
...
@@ -84,7 +84,7 @@ const dropdownRender = () => {
const
diaLogForm
:
React
.
FC
<
ListProps
>
=
(
props
)
=>
{
const
[
provinceList
,
setProvinceList
]
=
useState
([])
const
[
state
,
setState
]
=
useState
({
editable
:
true
}
)
const
[
editable
,
setEditable
]
=
useState
<
boolean
>
(
true
)
const
[
headerTitle
,
setHeaderTitle
]
=
useState
(
''
)
const
[
select
,
setSelect
]
=
useState
<
countryItem
>
({
key
:
'cn'
,
...
...
@@ -118,6 +118,9 @@ const diaLogForm: React.FC<ListProps> = (props) => {
let
_title
=
history
.
location
.
query
.
isSee
?
'查看'
:
Number
(
id
)
===
0
?
'新建'
:
'编辑'
if
(
history
.
location
.
query
.
isSee
){
setEditable
(
false
)
}
// console.log(id,typeof id,history.location.query.isSee,typeof history.location.query.isSee)
setHeaderTitle
(
`
${
_title
}
运费模板`
)
PublicApi
.
getWarehouseAreaByPcodeAll
({
pcode
:
'100000'
}).
then
(
res
=>
{
...
...
@@ -181,6 +184,7 @@ const diaLogForm: React.FC<ListProps> = (props) => {
backIcon=
{
<
ReutrnEle
description=
"返回"
/>
}
title=
{
headerTitle
}
extra=
{
editable
&&
<
Button
type=
"primary"
onClick=
{
()
=>
actions
.
submit
()
}
>
保存
</
Button
>
//外层调用form API
}
...
...
@@ -188,7 +192,7 @@ const diaLogForm: React.FC<ListProps> = (props) => {
<
Card
>
<
Row
>
<
Col
span=
{
24
}
>
<
SchemaForm
editable=
{
state
.
editable
}
<
SchemaForm
editable=
{
editable
}
actions=
{
actions
}
//要传递
initialValues=
{
{
// provic: '广东省',
...
...
src/pages/logistics/logisticsResult/toOrderComfirmList.tsx
0 → 100644
View file @
5383ca73
/*
* @Author: LeeJiancong
* @Date: 2020-07-14 15:07:34
* @LastEditors: LeeJiancong
* @LastEditTime: 2020-07-27 17:32:33
*/
import
React
,
{
Component
,
ReactNode
,
useRef
,
useState
}
from
'react'
import
{
history
}
from
'umi'
import
{
Modal
,
Card
,
Button
,
Form
,
InputNumber
,
Radio
,
Popconfirm
,
Tooltip
,
Switch
,
Select
,
Input
,
Tag
,
Row
,
Col
}
from
'antd'
;
import
{
PlayCircleOutlined
,
PauseCircleOutlined
,
PlusOutlined
,
EyeOutlined
,
UpOutlined
,
DownOutlined
,
PlusCircleOutlined
}
from
'@ant-design/icons'
;
import
{
PageHeaderWrapper
}
from
'@ant-design/pro-layout'
import
ConfirmModal
from
'../components/confirmModal'
import
{
StandardTable
}
from
'god'
import
{
ColumnType
}
from
'antd/lib/table/interface'
import
{
IFormFilter
,
IButtonFilter
}
from
'god/dist/src/standard-table/TableController'
import
{
PublicApi
}
from
'@/services/api'
import
style
from
'../components/index.less'
const
{
Option
}
=
Select
const
data
=
[
{
key
:
'1'
,
shipperName
:
'采购商'
,
phone
:
'18819276235'
,
tel
:
'02020'
,
required
:
'平台物流服务商'
,
isDefault
:
0
,
code
:
252525
,
status
:
1
,
address
:
'地址'
},
{
key
:
'2'
,
shipperName
:
'采购商'
,
phone
:
'18819276235'
,
tel
:
'02020'
,
required
:
'平台物流服务商'
,
isDefault
:
0
,
code
:
252525
,
status
:
0
,
address
:
'地址32'
},
]
interface
Item
{
key
:
string
}
//父页面传递来的参数
export
interface
ListProps
{
title
?:
React
.
ReactNode
,
type
:
string
}
interface
DiaLogParams
{
onCancel
:
Function
}
export
interface
ListType
{
checked
:
boolean
//可选
}
interface
EditableCellProps
extends
React
.
HTMLAttributes
<
HTMLElement
>
{
editing
:
boolean
;
dataIndex
:
string
;
title
:
any
;
inputType
:
'number'
|
'text'
;
record
:
Item
;
index
:
number
;
children
:
React
.
ReactNode
;
}
const
EditableCell
:
React
.
FC
<
EditableCellProps
>
=
({
editing
,
dataIndex
,
title
,
inputType
,
record
,
index
,
children
,
...
restProps
})
=>
{
const
inputNode
=
inputType
===
'number'
?
<
InputNumber
/>
:
<
Input
/>;
return
(
<
td
{
...
restProps
}
>
{
editing
?
(
<
Form
.
Item
name=
{
dataIndex
}
style=
{
{
margin
:
0
}
}
rules=
{
[
{
required
:
true
,
message
:
`Please Input ${title}!`
,
},
]
}
>
{
inputNode
}
</
Form
.
Item
>
)
:
(
children
)
}
</
td
>
);
};
/**
* @description:
* @param {type}
* @return:
*/
const
OrderList
:
React
.
FC
<
ListProps
>
=
(
props
)
=>
{
console
.
log
(
props
)
const
ref
=
useRef
({})
const
[
form
]
=
Form
.
useForm
();
const
[
table
,
setTable
]
=
useState
([])
const
[
editingKey
,
setEditingKey
]
=
useState
(
''
);
let
[
visible
,
setvisible
]
=
useState
<
boolean
>
(
false
)
let
[
isSearch
,
setIsSearch
]
=
useState
<
boolean
>
(
false
)
const
[
searchForm
,
setSearchForm
]
=
useState
({
searName
:
''
,
buyer
:
''
,
//收货商
dateSelect
:
''
,
outSideStatus
:
''
,
TimeRange
:
''
})
const
TimeList
=
[
{
label
:
'单据时间(全部)'
,
value
:
''
},
{
label
:
'今天'
,
value
:
1
},
{
label
:
'一周内'
,
value
:
2
},
{
label
:
'一个月内'
,
value
:
3
},
{
label
:
'三个月内'
,
value
:
4
},
{
label
:
'六个月内'
,
value
:
5
},
{
label
:
'一年内'
,
value
:
6
},
{
label
:
'一年前'
,
value
:
7
}
]
const
outSideStatusList
=
[
{
label
:
'外部状态(全部)'
,
value
:
''
},
{
label
:
'待提交'
,
value
:
1
},
{
label
:
'待确认'
,
value
:
2
},
{
label
:
'接受物流单'
,
value
:
3
},
{
label
:
'不接受物流单'
,
value
:
4
}
]
const
columns
:
ColumnType
<
any
>
[]
=
[
{
title
:
'物流单号'
,
dataIndex
:
'logisticsOrderNo'
,
align
:
'center'
,
key
:
'logisticsOrderNo'
,
},
{
title
:
'对应订单号'
,
align
:
'left'
,
dataIndex
:
'invoicesNo'
,
key
:
'invoicesNo'
},
{
title
:
'发货方'
,
dataIndex
:
'shipperName'
,
align
:
'center'
,
key
:
'shipperName'
},
{
title
:
'收货方'
,
align
:
'center'
,
dataIndex
:
'receiverName'
,
key
:
'receiverName'
,
},
{
title
:
'总箱数'
,
align
:
'center'
,
dataIndex
:
'totalCarton'
,
key
:
'totalCarton'
},
{
title
:
'总重量'
,
align
:
'center'
,
dataIndex
:
'totalWeight'
,
key
:
'totalWeight'
},
{
title
:
'总体积'
,
align
:
'center'
,
dataIndex
:
'totalVolume'
,
key
:
'totalVolume'
},
{
title
:
'单据时间'
,
align
:
'center'
,
dataIndex
:
'invoicesTime'
,
key
:
'invoicesTime'
},
{
title
:
'外部状态'
,
align
:
'center'
,
dataIndex
:
'status'
,
key
:
'status'
,
render
:
()
=>
{
return
(
<>
<
Tag
color=
"default"
>
待提交
</
Tag
>
<
Tag
color=
"processing"
>
待确认
</
Tag
>
<
Tag
color=
"green"
>
接受物流单
</
Tag
>
<
Tag
color=
"red"
>
不接受物流单
</
Tag
>
</>
)
}
},
{
title
:
'操作'
,
dataIndex
:
'option'
,
align
:
'center'
,
render
:
(
_
:
any
,
record
:
any
)
=>
{
return
(
<>
<
Button
type=
'link'
onClick=
{
()
=>
handleDialog
(
record
.
id
)
}
>
确认
</
Button
>
<
Button
type=
'link'
onClick=
{
()
=>
handleSee
(
record
.
id
)
}
>
查看
</
Button
>
</>
)
}
}
];
// 模拟请求
const
fetchData
=
(
params
:
any
)
=>
{
return
new
Promise
((
resolve
,
reject
)
=>
{
// PublicApi.getLogisticsShipperAddressPage({ current: params.page, pageSize: params.rows }).then(res => {
const
queryResult
=
data
.
find
(
v
=>
v
.
key
===
params
.
keywords
)
setTimeout
(()
=>
{
resolve
({
code
:
200
,
message
:
''
,
data
:
queryResult
?
[
queryResult
]
:
data
})
},
1000
)
// })
})
}
//生命周期
// useEffect(() => {
// effect
// return () => {
// cleanup
// }
// }, [input])
const
handleDialog
=
(
id
:
any
)
=>
{
setvisible
(
true
)
}
const
onDefaultChange
=
(
id
:
any
,
checked
:
boolean
)
=>
{
console
.
log
(
id
,
checked
)
columns
.
forEach
((
v
,
index
)
=>
{
})
}
const
handleDelete
=
()
=>
{
console
.
log
(
'delete'
)
}
const
handleSee
=
(
id
:
any
)
=>
{
history
.
push
(
`/memberCenter/logisticsAbility/logisticsResult/toOrderComfirmDeatil?id=
${
id
}
`
)
}
const
confirm
=
()
=>
{
console
.
log
(
'confirm'
)
}
const
cancel
=
()
=>
{
console
.
log
(
'cancel'
)
}
const
handleModify
=
(
record
:
object
)
=>
{
// 通过传入的params字符串判断是修改那种类型的数据
console
.
log
(
'执行状态修改'
,
record
)
}
const
handleSearch
=
()
=>
{
}
const
handleReset
=
()
=>
{
for
(
let
key
in
searchForm
)
{
searchForm
[
key
]
=
''
}
setSearchForm
({
...
searchForm
})
}
const
onCancel
=
()
=>
{
setvisible
(
false
)
}
return
(
<
PageHeaderWrapper
>
<
Card
>
<
StandardTable
tableProps=
{
{
rowKey
:
'id'
}
}
columns=
{
columns
}
currentRef=
{
ref
}
fetchTableData=
{
(
params
:
any
)
=>
fetchData
(
params
)
}
rowClassName=
"editable-row"
formilyChilds=
{
{
children
:
(
<>
<
Button
type=
"primary"
icon=
{
<
PlusOutlined
/>
}
onClick=
{
()
=>
history
.
push
(
`/memberCenter/logisticsAbility/logistics/list/addressForm?addType=${props.type}`
)
}
>
新建
</
Button
>
</>
)
}
}
controlRender=
{
<>
<
Row
>
<
Col
span=
{
12
}
>
<
Tooltip
trigger=
{
[
'focus'
]
}
placement=
'top'
title=
{
props
.
type
===
'1'
?
'输入物流单号、订单号进行搜索'
:
'输入物流单号、发货方进行搜索'
}
>
<
Input
.
Search
style=
{
{
width
:
'232px'
}
}
value=
{
searchForm
.
searName
}
placeholder=
'搜索'
onChange=
{
(
e
)
=>
setSearchForm
({
...
searchForm
,
searName
:
e
.
target
.
value
})
}
onSearch=
{
()
=>
handleSearch
}
/>
</
Tooltip
>
<
Button
className=
{
style
[
'filter-btn'
]
}
onClick=
{
()
=>
setIsSearch
(
isSearch
=
!
isSearch
)
}
>
高级筛选
{
isSearch
?
<
UpOutlined
/>
:
<
DownOutlined
/>
}
</
Button
>
<
Button
className=
{
style
.
selectBtn
}
onClick=
{
()
=>
handleReset
()
}
>
重置
</
Button
>
</
Col
>
</
Row
>
<
Row
style=
{
{
margin
:
'16px 0'
}
}
>
{
isSearch
&&
<
Col
>
{
props
.
type
===
'1'
?
<
Select
className=
{
style
.
select
}
value=
{
searchForm
.
buyer
}
onChange=
{
(
val
)
=>
setSearchForm
({
...
searchForm
,
buyer
:
val
})
}
>
<
Option
value=
''
>
物流服务商(全部)
</
Option
>
<
Option
value=
'1'
>
待审核
</
Option
>
<
Option
value=
'2'
>
审核通过
</
Option
>
<
Option
value=
'3'
>
审核不通过
</
Option
>
</
Select
>
:
<
Select
className=
{
style
.
select
}
value=
{
searchForm
.
buyer
}
onChange=
{
(
val
)
=>
setSearchForm
({
...
searchForm
,
buyer
:
val
})
}
>
<
Option
value=
''
>
发货方(全部)
</
Option
>
<
Option
value=
'1'
>
待审核
</
Option
>
<
Option
value=
'2'
>
审核通过
</
Option
>
<
Option
value=
'3'
>
审核不通过
</
Option
>
</
Select
>
}
<
Select
className=
{
style
.
select
}
value=
{
searchForm
.
TimeRange
}
onChange=
{
(
val
)
=>
setSearchForm
({
...
searchForm
,
TimeRange
:
val
})
}
>
{
TimeList
.
map
((
item
)
=>
{
return
<
Option
value=
{
item
.
value
}
>
{
item
.
label
}
</
Option
>
})
}
</
Select
>
<
Select
className=
{
style
.
select
}
value=
{
searchForm
.
outSideStatus
}
onChange=
{
(
val
)
=>
setSearchForm
({
...
searchForm
,
outSideStatus
:
val
})
}
>
{
outSideStatusList
.
map
((
item
)
=>
{
return
<
Option
value=
{
item
.
value
}
>
{
item
.
label
}
</
Option
>
})
}
</
Select
>
</
Col
>
}
</
Row
>
</>
}
/>
<
ConfirmModal
dialogVisible=
{
visible
}
onCancel=
{
()
=>
setvisible
(
false
)
}
/>
</
Card
>
</
PageHeaderWrapper
>
)
}
OrderList
.
defaultProps
=
{
}
export
default
OrderList
\ No newline at end of file
src/pages/logistics/logisticsSubmit/toOrderSumitList.tsx
View file @
5383ca73
...
...
@@ -2,11 +2,11 @@
* @Author: LeeJiancong
* @Date: 2020-07-14 15:07:34
* @LastEditors: LeeJiancong
* @LastEditTime: 2020-07-2
3 13:54:05
* @LastEditTime: 2020-07-2
7 11:26:07
*/
import
React
,
{
Component
,
ReactNode
,
useRef
,
useState
}
from
'react'
import
{
history
}
from
'umi'
import
{
Modal
,
Card
,
Button
,
Form
,
InputNumber
,
Radio
,
Popconfirm
,
Switch
,
Input
}
from
'antd'
;
import
{
Modal
,
Card
,
Button
,
Form
,
InputNumber
,
Radio
,
Popconfirm
,
Switch
,
Input
,
Tag
}
from
'antd'
;
import
{
PlayCircleOutlined
,
PauseCircleOutlined
,
...
...
@@ -43,19 +43,6 @@ const data = [
address
:
'地址32'
},
]
// const fetchData = (param: any) => {
// return new Promise((resolve) => {
// let reqParam = {
// ...param
// }
// getUserInfoList(reqParam).then(res => {
// resolve(res.data)
// })
// })
// }
interface
Item
{
key
:
string
}
...
...
@@ -115,7 +102,7 @@ const EditableCell: React.FC<EditableCellProps> = ({
* @param {type}
* @return:
*/
const
Address
List
:
React
.
FC
<
ListProps
>
=
(
props
)
=>
{
const
Order
List
:
React
.
FC
<
ListProps
>
=
(
props
)
=>
{
console
.
log
(
props
)
const
ref
=
useRef
({})
const
[
form
]
=
Form
.
useForm
();
...
...
@@ -128,49 +115,68 @@ const AddressList: React.FC<ListProps> = (props) => {
};
const
columns
:
ColumnType
<
any
>
[]
=
[
{
title
:
'
发货人姓名
'
,
dataIndex
:
'
shipperName
'
,
title
:
'
物流单号
'
,
dataIndex
:
'
logisticsOrderNo
'
,
align
:
'center'
,
key
:
'
shipperName
'
,
key
:
'
logisticsOrderNo
'
,
},
{
title
:
'
发货地址
'
,
title
:
'
对应订单号
'
,
align
:
'left'
,
dataIndex
:
'address'
,
key
:
'address'
,
render
:
(
_
:
any
,
record
:
any
)
=>
(
<>
{
record
.
fullAddress
}
</>
)
dataIndex
:
'invoicesNo'
,
key
:
'invoicesNo'
},
{
title
:
'
邮编
'
,
dataIndex
:
'co
d
e'
,
title
:
'
物流服务商
'
,
dataIndex
:
'co
mpanyNam
e'
,
align
:
'center'
,
key
:
'co
d
e'
key
:
'co
mpanyNam
e'
},
{
title
:
'
手机号码
'
,
title
:
'
收货方
'
,
align
:
'center'
,
dataIndex
:
'
phoneNO
'
,
key
:
'
phoneNO
'
,
dataIndex
:
'
receiverName
'
,
key
:
'
receiverName
'
,
},
{
title
:
'
电话号码
'
,
title
:
'
总箱数
'
,
align
:
'center'
,
dataIndex
:
't
elNO
'
,
key
:
't
elNO
'
dataIndex
:
't
otalCarton
'
,
key
:
't
otalCarton
'
},
{
title
:
'
是否默认
'
,
title
:
'
总重量
'
,
align
:
'center'
,
dataIndex
:
'isDefault'
,
key
:
'isDefault'
,
render
:
(
_
:
any
,
record
:
any
)
=>
<
Switch
size=
'small'
disabled
defaultChecked=
{
record
.
isDefault
==
0
?
false
:
true
}
/>,
dataIndex
:
'totalWeight'
,
key
:
'totalWeight'
},
{
title
:
'总体积'
,
align
:
'center'
,
dataIndex
:
'totalVolume'
,
key
:
'totalVolume'
},
{
title
:
'单据时间'
,
align
:
'center'
,
dataIndex
:
'invoicesTime'
,
key
:
'invoicesTime'
},
{
title
:
'外部状态'
,
align
:
'center'
,
dataIndex
:
'status'
,
key
:
'status'
,
render
:
()
=>
{
return
(
<>
<
Tag
color=
"default"
>
待提交
</
Tag
>
<
Tag
color=
"processing"
>
待确认
</
Tag
>
<
Tag
color=
"green"
>
接受物流单
</
Tag
>
<
Tag
color=
"red"
>
不接受物流单
</
Tag
>
</>
)
}
},
{
title
:
'操作'
,
...
...
@@ -179,7 +185,7 @@ const AddressList: React.FC<ListProps> = (props) => {
render
:
(
_
:
any
,
record
:
any
)
=>
{
return
(
<>
<
Button
type=
'link'
>
启用
</
Button
>
{
record
.
status
===
0
?
<><
Button
type=
"link"
onClick=
{
()
=>
edit
(
record
)
}
>
编辑
</
Button
>
...
...
@@ -190,6 +196,7 @@ const AddressList: React.FC<ListProps> = (props) => {
</
Popconfirm
>
</>
:
''
}
<
Button
type=
'link'
>
提交
</
Button
>
<
Button
type=
'link'
>
查看
</
Button
>
</>
)
...
...
@@ -229,26 +236,6 @@ const fetchData = (params: any) => {
const
handleDelete
=
()
=>
{
console
.
log
(
'delete'
)
}
const
search
:
IFormFilter
[]
=
[
{
type
:
'Input'
,
value
:
'keywords'
,
col
:
4
,
placeHolder
:
'输入属性名称'
}
]
const
searchBarActions
:
IButtonFilter
[]
=
[
{
type
:
'primary'
,
text
:
'新建'
,
icon
:
<
PlusOutlined
/>,
handler
:
()
=>
{
history
.
push
(
'/logisticsAbility/logistics/list/addCompany'
)
}
}
]
const
handleSee
=
(
record
:
any
)
=>
{
console
.
log
(
'see'
)
}
...
...
@@ -286,7 +273,7 @@ const fetchData = (params: any) => {
</
PageHeaderWrapper
>
)
}
Address
List
.
defaultProps
=
{
Order
List
.
defaultProps
=
{
}
export
default
AddressList
\ No newline at end of file
export
default
OrderList
\ No newline at end of file
src/services/index.ts
View file @
5383ca73
This source diff could not be displayed because it is too large. You can
view the blob
instead.
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