qj-common 4.3.0 → 4.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.babelrc +12 -12
- package/.eslintrc.js +25 -25
- package/.idea/common.iml +11 -11
- package/.idea/modules.xml +7 -7
- package/.idea/vcs.xml +5 -5
- package/.postcssrc.js +9 -9
- package/.prettierrc.js +7 -7
- package/.project +37 -37
- package/README.md +2 -2
- package/gulpfile.js +20 -20
- package/package.json +18 -18
- package/src/api/apimanage.js +146 -146
- package/src/api/common/index.js +192 -192
- package/src/api/login.js +160 -160
- package/src/api/shopFbu.js +515 -515
- package/src/api/upload.js +8 -8
- package/src/components/Bounced/index.vue +145 -145
- package/src/components/Breadcrumb/index.vue +71 -71
- package/src/components/Checkbox/index.vue +53 -53
- package/src/components/Hamburger/index.vue +48 -48
- package/src/components/Logistics/logic.vue +186 -186
- package/src/components/ScrollBar/index.vue +60 -60
- package/src/components/Sticky/index.vue +76 -76
- package/src/components/SvgIcon/index.vue +42 -42
- package/src/components/ThemePicker/index.vue +243 -243
- package/src/components/Tinymce/components/editorImage.vue +94 -94
- package/src/components/Tinymce/index.vue +166 -166
- package/src/components/Tinymce/plugins.js +7 -7
- package/src/components/Tinymce/toolbar.js +6 -6
- package/src/components/TreeTable/customEval.js +44 -44
- package/src/components/TreeTable/eval.js +29 -29
- package/src/components/TreeTable/index.vue +124 -124
- package/src/components/TreeTable/readme.md +89 -89
- package/src/components/TreeTableApi/customEval.js +49 -49
- package/src/components/TreeTableApi/eval.js +29 -29
- package/src/components/TreeTableApi/index.vue +124 -124
- package/src/components/TreeTableApi/readme.md +89 -89
- package/src/components/Upload/singleImage.vue +123 -123
- package/src/components/Upload/singleImage2.vue +118 -118
- package/src/components/Upload/singleImage3.vue +138 -138
- package/src/components/Upload/upload.vue +295 -295
- package/src/components/workOrderList/index.vue +158 -158
- package/src/dependencies.js +119 -119
- package/src/iconShop/demo.css +539 -539
- package/src/iconShop/demo_index.html +8445 -8445
- package/src/iconShop/iconfont.css +1451 -1451
- package/src/iconShop/iconfont.json +2522 -2522
- package/src/iconShop/iconfont.svg +1070 -1070
- package/src/iconfont/demo.css +539 -539
- package/src/iconfont/demo_index.html +5276 -5276
- package/src/iconfont/iconfont.css +905 -905
- package/src/iconfont/iconfont.json +1563 -1563
- package/src/iconfont/iconfont.svg +692 -692
- package/src/icons/index.js +9 -9
- package/src/lang/e.js +48 -48
- package/src/lang/en.js +48 -48
- package/src/lang/zh.js +48 -48
- package/src/main.js +62 -62
- package/src/permission.js +283 -283
- package/src/permissionForMall.backup.js +375 -375
- package/src/permissionForMall.js +375 -375
- package/src/preset.js +67 -67
- package/src/router/_import_common.js +1 -1
- package/src/router/_import_development.js +1 -1
- package/src/router/_import_production.js +1 -1
- package/src/store/getters.js +39 -39
- package/src/store/index.js +18 -18
- package/src/store/modules/app.js +34 -30
- package/src/store/modules/menu.js +82 -82
- package/src/store/modules/user.js +227 -227
- package/src/styles/element-ui.scss +1368 -1368
- package/src/styles/index.scss +166 -166
- package/src/styles/mixin.scss +27 -27
- package/src/styles/pc-ui.scss +1031 -1031
- package/src/styles/scrollBar.scss +21 -21
- package/src/styles/sidebar.scss +123 -123
- package/src/styles/transition.scss +32 -32
- package/src/styles/variables.scss +44 -44
- package/src/styles/wf-ui.scss +86 -86
- package/src/utils/auth.js +57 -57
- package/src/utils/dom.js +12 -12
- package/src/utils/getQueryString.js +5 -5
- package/src/utils/import.js +5 -5
- package/src/utils/index.js +355 -355
- package/src/utils/interceptor.js +34 -34
- package/src/utils/menu.js +116 -116
- package/src/utils/proapp.js +35 -35
- package/src/utils/query.js +26 -26
- package/src/utils/request.js +366 -366
- package/src/utils/routeMapping.js +39 -39
- package/src/utils/routeMapping.json +310 -310
- package/src/utils/utils.js +84 -84
- package/src/utils/validate.js +102 -102
- package/src/views/404.vue +72 -72
- package/src/views/Layout.vue +106 -106
- package/src/views/imgSwiper/index.vue +34 -34
- package/src/views/layout/Layout.vue +181 -170
- package/src/views/layout/components/AppMain.vue +20 -20
- package/src/views/layout/components/Footer.vue +22 -22
- package/src/views/layout/components/LeftNavbar.vue +318 -310
- package/src/views/layout/components/NavMenu.vue +15 -15
- package/src/views/layout/components/Navbar.vue +664 -661
- package/src/views/layout/components/Sidebar/SidebarItem.vue +116 -113
- package/src/views/layout/components/Sidebar/index.vue +203 -193
- package/src/views/layout/components/index.js +19 -19
- package/src/views/layout/theme/darkBlue/Layout.vue +140 -140
- package/src/views/layout/theme/darkBlue/components/AppMain.vue +38 -38
- package/src/views/layout/theme/darkBlue/components/Footer.vue +147 -147
- package/src/views/layout/theme/darkBlue/components/LeftNavbar(/345/261/225/347/244/272/345/205/250/351/203/250/350/217/234/345/215/225).vue +448 -448
- package/src/views/layout/theme/darkBlue/components/LeftNavbar.3.vue +191 -191
- package/src/views/layout/theme/darkBlue/components/LeftNavbar.vue +466 -466
- package/src/views/layout/theme/darkBlue/components/Navbar.vue +200 -200
- package/src/views/layout/theme/darkBlue/components/Sidebar/SidebarItem.vue +71 -71
- package/src/views/layout/theme/darkBlue/components/Sidebar/index.vue +49 -49
- package/src/views/layout/theme/darkBlue/components/index.js +15 -15
- package/src/views/layout-default/Layout.vue +134 -134
- package/src/views/layout-default/components/AppMain.vue +19 -19
- package/src/views/layout-default/components/Footer.vue +22 -22
- package/src/views/layout-default/components/LeftNavbar.vue +164 -164
- package/src/views/layout-default/components/Navbar.vue +295 -295
- package/src/views/layout-default/components/Sidebar/SidebarItem.vue +67 -67
- package/src/views/layout-default/components/Sidebar/index.vue +59 -59
- package/src/views/layout-default/components/index.js +4 -4
- package/src/views/layout-default/theme/darkBlue/Layout.vue +140 -140
- package/src/views/layout-default/theme/darkBlue/components/AppMain.vue +38 -38
- package/src/views/layout-default/theme/darkBlue/components/Footer.vue +147 -147
- package/src/views/layout-default/theme/darkBlue/components/LeftNavbar.vue +465 -465
- package/src/views/layout-default/theme/darkBlue/components/Navbar.vue +200 -200
- package/src/views/layout-default/theme/darkBlue/components/Sidebar/SidebarItem.vue +69 -69
- package/src/views/layout-default/theme/darkBlue/components/Sidebar/index.vue +49 -49
- package/src/views/layout-default/theme/darkBlue/components/index.js +15 -15
- package/src/views/pc/Internationalization.vue +80 -80
- package/src/views/pc/default/Layout.vue +442 -442
- package/src/views/pc/default/LayoutCard.vue +424 -424
- package/src/views/pc/default/assets/flex.scss +99 -99
- package/src/views/pc/default/footer-modules/DgFooter/index.vue +179 -179
- package/src/views/pc/default/footer-modules/DgFooter/indexSDX.vue +187 -187
- package/src/views/pc/default/footer-modules/footer.vue +171 -171
- package/src/views/pc/default/footer-modules/footerAns.vue +167 -167
- package/src/views/pc/default/footer-modules/footerBulk.vue +169 -169
- package/src/views/pc/default/footer-modules/footerDM.vue +254 -254
- package/src/views/pc/default/footer-modules/footerDefault.vue +267 -267
- package/src/views/pc/default/footer-modules/footerDefaultA.vue +270 -270
- package/src/views/pc/default/footer-modules/footerDefaultNew.vue +201 -201
- package/src/views/pc/default/footer-modules/footerHDB.vue +153 -153
- package/src/views/pc/default/footer-modules/footerHy.vue +63 -63
- package/src/views/pc/default/footer-modules/footerKYW.vue +163 -163
- package/src/views/pc/default/footer-modules/footerMh.vue +30 -30
- package/src/views/pc/default/footer-modules/footerNew.vue +116 -116
- package/src/views/pc/default/footer-modules/footer_yzj.vue +169 -169
- package/src/views/pc/default/footer-modules/footerayd.vue +85 -85
- package/src/views/pc/default/footer-modules/ymFooter.vue +154 -154
- package/src/views/pc/default/footer-modules/zgl.vue +250 -250
- package/src/views/pc/default/header-modules/DgHeader/Logo.vue +57 -57
- package/src/views/pc/default/header-modules/DgHeader/Search.vue +135 -135
- package/src/views/pc/default/header-modules/DgHeader/Settleup.vue +46 -46
- package/src/views/pc/default/header-modules/DgHeader/index.vue +38 -38
- package/src/views/pc/default/header-modules/active.vue +177 -177
- package/src/views/pc/default/header-modules/header.vue +97 -97
- package/src/views/pc/default/header-modules/headerA.vue +142 -142
- package/src/views/pc/default/header-modules/headerFLPT.vue +157 -157
- package/src/views/pc/default/header-modules/headerMh.vue +187 -187
- package/src/views/pc/default/header-modules/headerNew.vue +121 -121
- package/src/views/pc/default/header-modules/headerSDX.vue +304 -304
- package/src/views/pc/default/header-modules/headerStyle2.vue +173 -173
- package/src/views/pc/default/header-modules/headerStyle3.vue +190 -190
- package/src/views/pc/default/header-modules/headerStyle4.vue +163 -163
- package/src/views/pc/default/header-modules/headerStyleAns.vue +400 -400
- package/src/views/pc/default/header-modules/headerStyleBulk.vue +427 -427
- package/src/views/pc/default/header-modules/headerStyleDefalut.vue +209 -209
- package/src/views/pc/default/header-modules/headerStyleKYW.vue +435 -435
- package/src/views/pc/default/header-modules/headerStyle_yzj.vue +427 -427
- package/src/views/pc/default/header-modules/headerayd.vue +187 -187
- package/src/views/pc/default/header-modules/index.vue +466 -466
- package/src/views/pc/default/header-modules/ymHeader.vue +292 -292
- package/src/views/pc/default/header-modules/ysHeader.vue +248 -248
- package/src/views/pc/default/header-modules/zgl.vue +855 -855
- package/src/views/pc/default/leftMenu-modules/leftMenu-logo.vue +194 -194
- package/src/views/pc/default/leftMenu-modules/leftMenu-style2.vue +206 -206
- package/src/views/pc/default/leftMenu-modules/leftMenu-style3.vue +207 -207
- package/src/views/pc/default/leftMenu-modules/leftMenu-style4.vue +192 -192
- package/src/views/pc/default/leftMenu-modules/leftMenu.vue +183 -183
- package/src/views/pc/default/leftMenu-modules/leftMenuDefault.vue +212 -212
- package/src/views/pc/default/leftMenu-modules/leftMenuDefaultEn.vue +214 -214
- package/src/views/pc/default/leftMenu-modules/leftMenuDefaultFLPT.vue +220 -220
- package/src/views/pc/default/leftMenu-modules/leftMenuDefaultayd.vue +220 -220
- package/src/views/pc/default/nav-modules/nav.vue +52 -52
- package/src/views/pc/default/nav-modules/navAns.vue +60 -60
- package/src/views/pc/default/nav-modules/navBulk.vue +60 -60
- package/src/views/pc/default/top-modules/DgTopShortcut/index.vue +177 -177
- package/src/views/pc/default/top-modules/Toplg.vue +280 -280
- package/src/views/pc/default/top-modules/topA.vue +136 -136
- package/src/views/pc/default/top-modules/topAns.vue +261 -261
- package/src/views/pc/default/top-modules/topAns_yzj.vue +282 -282
- package/src/views/pc/default/top-modules/topBar.vue +304 -304
- package/src/views/pc/default/top-modules/topBulk.vue +280 -280
- package/src/views/pc/default/top-modules/topDefault.vue +244 -244
- package/src/views/pc/default/top-modules/topDefaultDM.vue +197 -197
- package/src/views/pc/default/top-modules/topDefaultNew.vue +271 -271
- package/src/views/pc/default/top-modules/topFLPT.vue +197 -197
- package/src/views/pc/default/top-modules/topHDB.vue +479 -479
- package/src/views/pc/default/top-modules/topKYW.vue +258 -258
- package/src/views/pc/default/top-modules/topMh.vue +174 -174
- package/src/views/pc/default/top-modules/topNew.vue +97 -97
- package/src/views/pc/default/top-modules/topSDX.vue +298 -298
- package/src/views/pc/default/top-modules/topSimple.vue +247 -247
- package/src/views/pc/default/top-modules/topSimpleHy.vue +256 -256
- package/src/views/pc/default/top-modules/topUcc.vue +264 -264
- package/src/views/pc/default/top-modules/topayd.vue +170 -170
- package/src/views/pc/default/top-modules/ymTop.vue +299 -299
- package/src/views/pc/default/top-modules/zgltop.vue +499 -499
- package/src/views/routerView.vue +9 -9
- package/src/views/templates/components/temp-select.vue +80 -80
- package/src/views/templates/components/temp-upload.vue +233 -233
- package/src/views/templates/readme.md +2 -2
- package/src/views/templates/templateInput.vue +421 -421
- package/src/views/templates/templateReadme.html +588 -588
- package/src/views/templates/templateReadme.md +619 -619
- package/src/views/templates/templateTable.vue +2243 -2243
- package/src/views/templates/templateTableData.vue +1883 -1883
- package/src/views/templates/templateUi/templateTableContent.vue +187 -187
- package/src/views/treeTemplate/index.vue +559 -559
- package/src/views/treeTemplate/treeTemplate.md +274 -274
- package/src/views/uploadDialog/index copy.vue +352 -352
- package/src/views/uploadDialog/index.vue +558 -558
- package/src/views/uploadDialog/indexOlay.vue +582 -582
- package/src/views/uploadDialog/indexPM.vue +578 -578
- package/src/views/uploadDialog/indexUpload.vue +543 -543
- package/src/views/uploadDialog/readme.md +45 -45
|
@@ -1,620 +1,620 @@
|
|
|
1
|
-
|
|
2
|
-
####templateReadme
|
|
3
|
-
>template都是基于element-ui模板进行封装的
|
|
4
|
-
一、搜索栏 temInput
|
|
5
|
-
>**temInput**是一个Array,里面包含多个对象
|
|
6
|
-
>暂且支持类型:text、select、date、daterange
|
|
7
|
-
11111
|
|
8
|
-
|
|
9
|
-
{
|
|
10
|
-
label:'标题',//可选参数
|
|
11
|
-
type:'text',//类型 暂且支持text/select/data/daterange/autocomplete 类型同element一致
|
|
12
|
-
name:'name', //参数名称
|
|
13
|
-
value:'',//参数值,默认为空
|
|
14
|
-
placeholder:"请输入..." //可选参数,提示用语
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
注意:
|
|
18
|
-
type == select
|
|
19
|
-
参数属性多一个options
|
|
20
|
-
type == daterange
|
|
21
|
-
参数属性name:"startDate,endDate"
|
|
22
|
-
type === textMore
|
|
23
|
-
表示多个
|
|
24
|
-
{
|
|
25
|
-
type: "textMore",
|
|
26
|
-
label: "价格区间",
|
|
27
|
-
children: [
|
|
28
|
-
{
|
|
29
|
-
name: "projectMinprice",
|
|
30
|
-
placeholder: "请输入最小价格",
|
|
31
|
-
value: ""
|
|
32
|
-
},
|
|
33
|
-
{
|
|
34
|
-
name: "projectMaxprice",
|
|
35
|
-
placeholder: "请输入最大价格",
|
|
36
|
-
value: ""
|
|
37
|
-
}
|
|
38
|
-
]
|
|
39
|
-
},
|
|
40
|
-
type=== autocomplete //表示text可远程搜索
|
|
41
|
-
{
|
|
42
|
-
type: "autocomplete",
|
|
43
|
-
name: "classtreeName",
|
|
44
|
-
label: "搜索",
|
|
45
|
-
placeholder: "请输入产品编号",
|
|
46
|
-
restaurants: [
|
|
47
|
-
{ value: "三全鲜食(北新泾店)", address: "长宁区新渔路144号" },
|
|
48
|
-
],
|
|
49
|
-
value: ""
|
|
50
|
-
},
|
|
51
|
-
|
|
52
|
-
temInput的按钮操作
|
|
53
|
-
属性名称为btnArray:[]
|
|
54
|
-
{
|
|
55
|
-
type:'primary',//按钮类型,同element-ui的一致
|
|
56
|
-
id:'query',//操作的id id的类型query/search,add
|
|
57
|
-
label:"搜索",
|
|
58
|
-
url:"",//搜索的url暂且是定义的全局
|
|
59
|
-
}
|
|
60
|
-
当id == 'add',表示需要新增模板
|
|
61
|
-
需要添加属性
|
|
62
|
-
template:{
|
|
63
|
-
type: "json", //json类型暂且只支持json类型的
|
|
64
|
-
label: "编辑标题",
|
|
65
|
-
formLabelWidth: "6rem", //长度根据标题长度来,一个字一个rem
|
|
66
|
-
html:[],//具体详见模板二 input
|
|
67
|
-
};
|
|
68
|
-
type === cascader
|
|
69
|
-
value:[],
|
|
70
|
-
{
|
|
71
|
-
type: "cascader",
|
|
72
|
-
name: "classtreeName",
|
|
73
|
-
label: "产品分类",
|
|
74
|
-
showAllLevels:false,//可选参数,判断是否是取最后一集
|
|
75
|
-
placeholder: "请选择产品分类",
|
|
76
|
-
props: {
|
|
77
|
-
value: "value",
|
|
78
|
-
label: "label",
|
|
79
|
-
children: "children"
|
|
80
|
-
},
|
|
81
|
-
value: [],
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
例子:
|
|
90
|
-
|
|
91
|
-
temInput:[{
|
|
92
|
-
label: "标题",//自定义 title=>label
|
|
93
|
-
type: "text",//类型,暂且只支持text/select/date/daterange/button
|
|
94
|
-
name: "name",//参数名称
|
|
95
|
-
value: "",//值
|
|
96
|
-
placeholder: "请输入"//默认提示语,可选参数
|
|
97
|
-
},
|
|
98
|
-
{
|
|
99
|
-
label: "标题",//自定义
|
|
100
|
-
type: "select",//select类型包含options对象,参数label和value
|
|
101
|
-
name: "name",//参数名称
|
|
102
|
-
value: "",//值
|
|
103
|
-
placeholder: "请输入"//默认提示语,可选参数
|
|
104
|
-
props:{ //可选参数,正对select所需要的label和value
|
|
105
|
-
label:'name',
|
|
106
|
-
value:'code'
|
|
107
|
-
},
|
|
108
|
-
options:[
|
|
109
|
-
{
|
|
110
|
-
label:'',
|
|
111
|
-
value:''
|
|
112
|
-
}
|
|
113
|
-
]
|
|
114
|
-
},
|
|
115
|
-
{
|
|
116
|
-
type: "autocomplete",
|
|
117
|
-
name: "classtreeName",
|
|
118
|
-
label: "搜索",
|
|
119
|
-
placeholder: "请输入产品编号",
|
|
120
|
-
restaurants: [
|
|
121
|
-
{ value: "三全鲜食(北新泾店)", address: "长宁区新渔路144号" },
|
|
122
|
-
],
|
|
123
|
-
value: ""
|
|
124
|
-
},
|
|
125
|
-
{
|
|
126
|
-
btnArray:[ //按钮的对象数组-搜索
|
|
127
|
-
{
|
|
128
|
-
type:'primary',//按钮类型,和element-ui类型一致
|
|
129
|
-
id:'query',//id类型,query表示搜索,add-新增,del-删除 query-搜索 其他不确定类型抛出inputBtnClick("整个按钮对象","索引值")方法进行操作
|
|
130
|
-
label:"搜索",
|
|
131
|
-
url:''
|
|
132
|
-
},
|
|
133
|
-
{
|
|
134
|
-
type:"primary",
|
|
135
|
-
id:'add',
|
|
136
|
-
label:"新增",//当为新增的时候,需使用模板,url是写在模板里面的
|
|
137
|
-
template:{
|
|
138
|
-
type: "json", //json类型暂且只支持json类型的
|
|
139
|
-
title: "编辑标题",
|
|
140
|
-
formLabelWidth: "6rem", //长度根据标题长度来,一个字一个rem
|
|
141
|
-
html:[
|
|
142
|
-
{
|
|
143
|
-
label: "名称",
|
|
144
|
-
type: "text",//类型暂且只支持text/upload/textarea/select/date
|
|
145
|
-
value: "",
|
|
146
|
-
name: "brandName"
|
|
147
|
-
},
|
|
148
|
-
{
|
|
149
|
-
label: "logo",
|
|
150
|
-
showFileList: false, //false为单个图片.暂且只支持单个图片编辑
|
|
151
|
-
type: "upload",
|
|
152
|
-
value: "",
|
|
153
|
-
name: "brandLogo"
|
|
154
|
-
},
|
|
155
|
-
{
|
|
156
|
-
btnArray: [
|
|
157
|
-
//id类型,query表示搜索,add-新增,confirm-确定(一般属于编辑里面的),cancel-取消,del-删除 query-搜索 其他不确定类型抛出inputBtnClick("整个按钮对象","索引值")方法进行操作
|
|
158
|
-
{
|
|
159
|
-
label: "取消", value=>label
|
|
160
|
-
id: "cancel"
|
|
161
|
-
},
|
|
162
|
-
{
|
|
163
|
-
type: "primary",
|
|
164
|
-
label: "确定",
|
|
165
|
-
id: "add",
|
|
166
|
-
url: "/web/rs/brand/saveBrand.json"
|
|
167
|
-
}
|
|
168
|
-
]
|
|
169
|
-
},
|
|
170
|
-
],
|
|
171
|
-
rules: {}//规则,和element一致
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
]
|
|
175
|
-
}]
|
|
176
|
-
|
|
177
|
-
#####二、显示temTab
|
|
178
|
-
|
|
179
|
-
temTab: {
|
|
180
|
-
tabPane: [
|
|
181
|
-
{
|
|
182
|
-
label: "操作一",
|
|
183
|
-
name: "参数",
|
|
184
|
-
value: ""
|
|
185
|
-
}
|
|
186
|
-
]
|
|
187
|
-
},
|
|
188
|
-
|
|
189
|
-
#####三、显示temTable
|
|
190
|
-
>**temTable**是一个对象,包含selection,tableHead,()tableData,可选),tableBtn,tabBtnWidth(操作的宽度)
|
|
191
|
-
>**tableBtn**:
|
|
192
|
-
|
|
193
|
-
temTable: {
|
|
194
|
-
selection: {
|
|
195
|
-
state: true,
|
|
196
|
-
params: [] //单选的参数
|
|
197
|
-
}, //表示有单选,可选参数
|
|
198
|
-
tableHead:[
|
|
199
|
-
{
|
|
200
|
-
prop: "brandName", //基础参数
|
|
201
|
-
label: "品牌名称",//基础参数
|
|
202
|
-
splicing: ["brandLogo","contractInmoney", "goodsNum"], //参数可选,表示需要拼接
|
|
203
|
-
imgType: 0 //当表示有图片的时候,显示,值表示图片的位置 可选参数,
|
|
204
|
-
renderTemp: this.renderContent // 可选参数 自定义表格展示的方法 (优先级最高,会覆盖其他参数)
|
|
205
|
-
},
|
|
206
|
-
{
|
|
207
|
-
prop: "brandName", //基础参数
|
|
208
|
-
label: "品牌名称",//基础参数
|
|
209
|
-
splicing: ["brandLogo","contractInmoney", "goodsNum"], //参数可选,表示需要拼接
|
|
210
|
-
},
|
|
211
|
-
{
|
|
212
|
-
prop: "brandName", //基础参数
|
|
213
|
-
label: "品牌名称",//基础参数
|
|
214
|
-
pair: [//表示需要键值对显示的
|
|
215
|
-
{
|
|
216
|
-
key: "用户名",
|
|
217
|
-
prop: "memberBname"
|
|
218
|
-
},
|
|
219
|
-
{
|
|
220
|
-
key: "收件人",
|
|
221
|
-
prop: "goodsReceiptMem"
|
|
222
|
-
},
|
|
223
|
-
{
|
|
224
|
-
key: "手机号",
|
|
225
|
-
prop: "goodsReceiptPhone"
|
|
226
|
-
}
|
|
227
|
-
], //需要以键值对显示,//可选参数
|
|
228
|
-
width:150,//可选参数
|
|
229
|
-
},
|
|
230
|
-
{
|
|
231
|
-
prop: "gmtCreate",
|
|
232
|
-
label: "下单时间",
|
|
233
|
-
template: "format"//日期类型,做转换
|
|
234
|
-
},
|
|
235
|
-
{
|
|
236
|
-
prop: "dataState",
|
|
237
|
-
label: "订单状态",
|
|
238
|
-
template: { //特殊类型转换的
|
|
239
|
-
"-1": "已取消",
|
|
240
|
-
"0": "审核",
|
|
241
|
-
"1": "待付款",
|
|
242
|
-
"2": "待发货",
|
|
243
|
-
"3": "已发货",
|
|
244
|
-
"4": "已完成",
|
|
245
|
-
"5": "交易成功"
|
|
246
|
-
}
|
|
247
|
-
},
|
|
248
|
-
{props:['']} //表示为数组,多个数据无缝拼接,例如省市区地址
|
|
249
|
-
],
|
|
250
|
-
//tableData: [],优化已删除
|
|
251
|
-
tableBtn:[
|
|
252
|
-
{
|
|
253
|
-
label: "查看详情", name=>label
|
|
254
|
-
state: true, //不可与stateType同时出现
|
|
255
|
-
dataState: "1", //判断是否显示
|
|
256
|
-
stateType:{ --已取消 //不可与state,dataState同时出现 用的是‘或’,当有一个为true,那就显示
|
|
257
|
-
name: 'userType',
|
|
258
|
-
data: [0,1]
|
|
259
|
-
},//根据类型数据判断是否显示,name为类型,data是类型显示的类型数据的状态,data数据为空则都不显示,参数不存在则不考虑
|
|
260
|
-
id: "see", //表示查看详情
|
|
261
|
-
type:"primary",//和element一致
|
|
262
|
-
template: {
|
|
263
|
-
type: "json", //表示json类型//可选,
|
|
264
|
-
title: "查看详情",
|
|
265
|
-
html: [
|
|
266
|
-
{
|
|
267
|
-
type:'img',//可选参数,表示有图片
|
|
268
|
-
title:'标题内容',
|
|
269
|
-
con:"内容" //图片的url
|
|
270
|
-
},
|
|
271
|
-
{
|
|
272
|
-
label: "注册时间",
|
|
273
|
-
name: "gmtCreate",
|
|
274
|
-
type: "text",
|
|
275
|
-
value: "",
|
|
276
|
-
template: "foramte"
|
|
277
|
-
},
|
|
278
|
-
{
|
|
279
|
-
label: "商家类型",
|
|
280
|
-
name: "userinfoType",
|
|
281
|
-
type: "text",
|
|
282
|
-
value: "",
|
|
283
|
-
template: {
|
|
284
|
-
"1": "个人",
|
|
285
|
-
"2": "公司"
|
|
286
|
-
}
|
|
287
|
-
},
|
|
288
|
-
{ //查看需要根据状态值是否显示,添加state一系列
|
|
289
|
-
label: "公司名称",
|
|
290
|
-
name: "userinfoCompname",
|
|
291
|
-
type: "text",
|
|
292
|
-
value: "",
|
|
293
|
-
state: "2",
|
|
294
|
-
stateName: "userinfoType",
|
|
295
|
-
stateValue: ""
|
|
296
|
-
}
|
|
297
|
-
]
|
|
298
|
-
|
|
299
|
-
}
|
|
300
|
-
},
|
|
301
|
-
{
|
|
302
|
-
dropdown: true, // 可选参数,表示在此后面的按钮是需要折叠的
|
|
303
|
-
dropdowMenu: [
|
|
304
|
-
{
|
|
305
|
-
label: "取消订单",
|
|
306
|
-
dataState: "1", //判断是否显示
|
|
307
|
-
id: "cancel", //表示查看详情,需要自定义
|
|
308
|
-
type: "danger", //和element一致
|
|
309
|
-
prompt:false,//可选参数,为false不显示提示框
|
|
310
|
-
promptTitle: "是否确定付款!", //提示内荣,可选参数,不填则不给提示
|
|
311
|
-
params: {
|
|
312
|
-
contractId: ""
|
|
313
|
-
},
|
|
314
|
-
url: "/web/oc/contract/offlinePayContractState.json",
|
|
315
|
-
},
|
|
316
|
-
{
|
|
317
|
-
label: "修改状态",
|
|
318
|
-
state: true, //可选参数表示全部都显示
|
|
319
|
-
id: "modify", //表示查看详情,需要自定义
|
|
320
|
-
type: "primary" //和element一致
|
|
321
|
-
}
|
|
322
|
-
]
|
|
323
|
-
}
|
|
324
|
-
{
|
|
325
|
-
label: "查看", name=>label
|
|
326
|
-
state: true,
|
|
327
|
-
id: "see", //表示查看
|
|
328
|
-
//color: "",可选
|
|
329
|
-
template: {
|
|
330
|
-
type: "json", //表示json类型//可选,
|
|
331
|
-
labelWidth: 100,
|
|
332
|
-
title: "查看商家详情"
|
|
333
|
-
html:[
|
|
334
|
-
{
|
|
335
|
-
label: "站点名称",
|
|
336
|
-
type: "text", //现在支持text/select/img
|
|
337
|
-
name: "tginfoName",
|
|
338
|
-
value: ""
|
|
339
|
-
},
|
|
340
|
-
{
|
|
341
|
-
label: "产品",
|
|
342
|
-
type: "select",
|
|
343
|
-
name: "proappCode",
|
|
344
|
-
template: {
|
|
345
|
-
"001": "设计师A",
|
|
346
|
-
"002": "设计师B",
|
|
347
|
-
"003": "设计师C"
|
|
348
|
-
},
|
|
349
|
-
value: ""
|
|
350
|
-
},
|
|
351
|
-
{
|
|
352
|
-
label: "热门关键词",
|
|
353
|
-
type: "text",
|
|
354
|
-
name: "tginfoKey",
|
|
355
|
-
value: ""
|
|
356
|
-
},
|
|
357
|
-
{
|
|
358
|
-
label: "主域名",
|
|
359
|
-
type: "text",
|
|
360
|
-
name: "tginfoCompanyurl",
|
|
361
|
-
value: ""
|
|
362
|
-
},
|
|
363
|
-
{
|
|
364
|
-
label: "二级域名",
|
|
365
|
-
type: "text",
|
|
366
|
-
name: "tginfoExchangeurl",
|
|
367
|
-
value: ""
|
|
368
|
-
},
|
|
369
|
-
{
|
|
370
|
-
label: "模板",
|
|
371
|
-
type: "select",
|
|
372
|
-
name: "mmodulCode",
|
|
373
|
-
template: {
|
|
374
|
-
"1": "设计师A",
|
|
375
|
-
"2": "设计师B",
|
|
376
|
-
"3": "设计师C"
|
|
377
|
-
},
|
|
378
|
-
value: ""
|
|
379
|
-
},
|
|
380
|
-
{
|
|
381
|
-
label: "商城LOGO",
|
|
382
|
-
type: "img",
|
|
383
|
-
name: "tginfoLogo",
|
|
384
|
-
value: ""
|
|
385
|
-
}
|
|
386
|
-
]
|
|
387
|
-
}
|
|
388
|
-
},
|
|
389
|
-
{
|
|
390
|
-
label: "启用",
|
|
391
|
-
state: false,
|
|
392
|
-
params: {
|
|
393
|
-
//单单只对停用启用有效
|
|
394
|
-
oldDataState: "0",
|
|
395
|
-
dataState: "2",
|
|
396
|
-
tginfoId: "" //为空则会从当前这行table数据中获取
|
|
397
|
-
},
|
|
398
|
-
dataState: "-1", //状态参数
|
|
399
|
-
id: "start"
|
|
400
|
-
},
|
|
401
|
-
{
|
|
402
|
-
label: "停用",
|
|
403
|
-
state: false,
|
|
404
|
-
params: { // 此为应传入的参数
|
|
405
|
-
//单单只对停用启用有效,需要传的参数
|
|
406
|
-
oldDataState: "0",
|
|
407
|
-
dataState: "2",
|
|
408
|
-
goodsIdStr: "" // 会从当前这行tabel数据中获取这个字段,如果是某个字段设置了别名,就会用到paramProps
|
|
409
|
-
},
|
|
410
|
-
paramProps: {
|
|
411
|
-
goodsIdStr: 'goodsId' // 和params里面对应,设置的别名,会从当前这行数据中获取goodsId,作为goodsIdStr传输
|
|
412
|
-
},
|
|
413
|
-
dataState: "0", //状态 参数 dataState存在,state为false
|
|
414
|
-
id: "stop", //自定义的
|
|
415
|
-
},
|
|
416
|
-
{
|
|
417
|
-
label: "编辑", //暂且只支持表单类型
|
|
418
|
-
state: true,
|
|
419
|
-
id: "edit", //和编辑
|
|
420
|
-
renderTemp: this.renderBtn, // 可选参数 自定义表格按钮展示的方法 (优先级最高,会覆盖其他参数)
|
|
421
|
-
template: {
|
|
422
|
-
type: "json", //json类型
|
|
423
|
-
title: "编辑品牌",
|
|
424
|
-
formLabelWidth: "6rem", //长度根据标题长度来,一个字一个rem
|
|
425
|
-
html: [
|
|
426
|
-
{
|
|
427
|
-
label: "名称",
|
|
428
|
-
type: "text",
|
|
429
|
-
value: "",
|
|
430
|
-
name: "brandName"
|
|
431
|
-
},
|
|
432
|
-
{
|
|
433
|
-
label: "logo",
|
|
434
|
-
showFileList: false, //false为单个图片.暂且只支持单个图片编辑
|
|
435
|
-
type: "upload",
|
|
436
|
-
value: "",
|
|
437
|
-
name: "brandLogo"
|
|
438
|
-
}
|
|
439
|
-
],
|
|
440
|
-
rules: {}
|
|
441
|
-
}
|
|
442
|
-
}
|
|
443
|
-
]
|
|
444
|
-
}
|
|
445
|
-
···
|
|
446
|
-
methods: {
|
|
447
|
-
renderContent(h, item) { // item为当前这一行的数据 语法为jsx
|
|
448
|
-
return (
|
|
449
|
-
<div>
|
|
450
|
-
<span >{item.contractInmoney}/{item.contractInmoney}({item.contractInmoney})</span>
|
|
451
|
-
<span >{parseTime(item.gmtCreate)}</span>
|
|
452
|
-
</div>
|
|
453
|
-
)
|
|
454
|
-
},
|
|
455
|
-
renderBtn(h, item, val) { // item为当前这一行的数据 语法为jsx
|
|
456
|
-
return (
|
|
457
|
-
<div>
|
|
458
|
-
<span >{item.contractInmoney}/{item.contractInmoney}({item.contractInmoney})</span>
|
|
459
|
-
<span >{parseTime(item.gmtCreate)}</span>
|
|
460
|
-
</div>
|
|
461
|
-
)
|
|
462
|
-
},
|
|
463
|
-
}
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
#####分页
|
|
468
|
-
|
|
469
|
-
temPage:{ //基于element-ui的
|
|
470
|
-
currentPage: 1,
|
|
471
|
-
pageSizes: [10, 20, 30, 40],
|
|
472
|
-
pageSize: 10,
|
|
473
|
-
total: 1
|
|
474
|
-
}
|
|
475
|
-
##### url
|
|
476
|
-
|
|
477
|
-
url:'/web/rs/goodsFile/uploadGoodsFile.json',//数据查询url
|
|
478
|
-
|
|
479
|
-
#####参数
|
|
480
|
-
| 参数 | 说明 | 类型 | 状态 |
|
|
481
|
-
| :--------: | :-----:| :--: | :--: |
|
|
482
|
-
| temInput | 查询框 | Array | 可选 |
|
|
483
|
-
| temTab | tab切换框 | Object | 可选 |
|
|
484
|
-
| temTable | table 数据显示 | Array | 可选 |
|
|
485
|
-
| url | 数据查询url | String | 可选 |
|
|
486
|
-
| temPage | 数据分页 | Object | 可选 |
|
|
487
|
-
|
|
488
|
-
#####API
|
|
489
|
-
| 事件名称 | 说明 | 回调参数 | 例子 |
|
|
490
|
-
| :--------: | :-----:| :--: | :--: |
|
|
491
|
-
|inputBtnClick| temInput 里面其他按钮操作 | (data, index)|
|
|
492
|
-
| getData(已删除) | 列表数据返回的接口 | (data) | getData(data) { //获取数据this.temTable.tableData =data;}|
|
|
493
|
-
|tableBtnClick| table 表格里面其他按钮事件 | (data,item, index)| item.id ==="",根据id来执行事件 |
|
|
494
|
-
| handleSelectionChange | table 多选按钮 | handleSelectionChange(val) |
|
|
495
|
-
| selChange| select 改变时触发 | selChange(val,item),val为code值,item为操作json |
|
|
496
|
-
| handleSelect | input搜索 | handleSelect(data)|
|
|
497
|
-
| btnConfirm | 提示框确定钩子 | btnConfirm(data,item) |
|
|
498
|
-
|
|
499
|
-
####模板 templateInput
|
|
500
|
-
#####一、temInput
|
|
501
|
-
|
|
502
|
-
> 支持的type类型:text / number / password /select / cascader / switch / checkbox / radio / textarea/autocomplete
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
temInput:[
|
|
506
|
-
{
|
|
507
|
-
label: "用户类型", //标题
|
|
508
|
-
name: "userinfoType", //参数名称
|
|
509
|
-
type: "radio", // 类型,现支持 radio/checkbox/switch/password/textarea/upload
|
|
510
|
-
value: "2", //参数值
|
|
511
|
-
radioGroup: [ //选择内容
|
|
512
|
-
{
|
|
513
|
-
label: "公司",
|
|
514
|
-
value: "2"
|
|
515
|
-
},
|
|
516
|
-
{
|
|
517
|
-
label: "个人",
|
|
518
|
-
value: "1"
|
|
519
|
-
}
|
|
520
|
-
]
|
|
521
|
-
},
|
|
522
|
-
{
|
|
523
|
-
type: "autocomplete",
|
|
524
|
-
name: "classtreeName",
|
|
525
|
-
label: "搜索",
|
|
526
|
-
placeholder: "请输入产品编号",
|
|
527
|
-
restaurants: [
|
|
528
|
-
{ value: "三全鲜食(北新泾店)", address: "长宁区新渔路144号" },
|
|
529
|
-
],
|
|
530
|
-
value: ""
|
|
531
|
-
},
|
|
532
|
-
{
|
|
533
|
-
label: "公司名称",
|
|
534
|
-
type: "text",
|
|
535
|
-
state: "2", //可选参数
|
|
536
|
-
name: "userinfoCompname",
|
|
537
|
-
placeholder: "输入公司名称",
|
|
538
|
-
value: ""
|
|
539
|
-
},
|
|
540
|
-
{
|
|
541
|
-
btnArray: [ //id类型,add-新增,confirm-确定,cancel-取消,reset-重置, 其他不确定类型抛出inputBtnClick("整个按钮对象","索引值")方法进行操作
|
|
542
|
-
{
|
|
543
|
-
btnType: "primary",
|
|
544
|
-
id: "confirm",
|
|
545
|
-
url: "/web/um/userMerchant/saveUserMerchant.json",
|
|
546
|
-
label: "立即创建" value=>label
|
|
547
|
-
},
|
|
548
|
-
{
|
|
549
|
-
btnType: "danger",
|
|
550
|
-
id: "reset",
|
|
551
|
-
label: "重置"
|
|
552
|
-
}
|
|
553
|
-
]
|
|
554
|
-
}
|
|
555
|
-
],
|
|
556
|
-
rules:[]//规则验证
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
#####二、其他
|
|
561
|
-
|
|
562
|
-
label: "商品类型",
|
|
563
|
-
type: "radio",
|
|
564
|
-
name: "radio",
|
|
565
|
-
value: "1",
|
|
566
|
-
labelWidth:"",label的宽度,单位为rem,一个字一个rem,可选参数
|
|
567
|
-
tabState: { //是需要进行tab切换时使用
|
|
568
|
-
name: "userinfoType",//参数名称
|
|
569
|
-
value: "2",//默认参数,需要外部进行监听,当值改变的时候,去改变temInput的值
|
|
570
|
-
typeArray: ["1", "2"] //通过typeArray把几种类型传递过去,对数据进行保留
|
|
571
|
-
}, //可选参数,表示需要监听的
|
|
572
|
-
{ //需要切换时需要添加state参数
|
|
573
|
-
label: "库存",
|
|
574
|
-
type: "number",
|
|
575
|
-
disabled:true,//可选参数,禁止
|
|
576
|
-
state: true,
|
|
577
|
-
value: 0,
|
|
578
|
-
name: "inventory",
|
|
579
|
-
placeholder: "请输入库存"
|
|
580
|
-
},
|
|
581
|
-
{
|
|
582
|
-
label: "商品图片",
|
|
583
|
-
type: "upload",
|
|
584
|
-
state: true,
|
|
585
|
-
limit: 3,//可选参数,默认为1
|
|
586
|
-
showFileList: false, //表示单个个图片
|
|
587
|
-
name: "picList",
|
|
588
|
-
value: [] //多个图片为数组,单个为字符串"" },
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
#####参数
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
| 参数名称 | 说明 | 类型 | 例子 |
|
|
596
|
-
| :--: | :--: | :--: | :--:|
|
|
597
|
-
| temInput | 需要哪些表单 | Array | |
|
|
598
|
-
| rules | 表单验证规则,基于element-ui | Array |
|
|
599
|
-
| title | 发布表单的通用标题 | String |
|
|
600
|
-
| labelWidth | label的宽度,单位为rem,一个字一个rem,可选参数 | String |
|
|
601
|
-
| tabState | 表单发布需要切换时使用 | Object |
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
#####API
|
|
605
|
-
| 事件名称 | 参数 | 回调参数 | 例子 |
|
|
606
|
-
| :--: | :--: | :--: | :--:|
|
|
607
|
-
| inputBtnClick | 查询按钮事件 | (data,index) |
|
|
608
|
-
| inputBlur | input失去焦点事件 | inputBlur(item) |
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
##### 新增统计
|
|
612
|
-
:count="count"
|
|
613
|
-
count: [
|
|
614
|
-
{
|
|
615
|
-
label: "支付总额:",
|
|
616
|
-
name: "orderAmount",
|
|
617
|
-
value: 0,
|
|
618
|
-
unit: "元"
|
|
619
|
-
}
|
|
1
|
+
|
|
2
|
+
####templateReadme
|
|
3
|
+
>template都是基于element-ui模板进行封装的
|
|
4
|
+
一、搜索栏 temInput
|
|
5
|
+
>**temInput**是一个Array,里面包含多个对象
|
|
6
|
+
>暂且支持类型:text、select、date、daterange
|
|
7
|
+
11111
|
|
8
|
+
|
|
9
|
+
{
|
|
10
|
+
label:'标题',//可选参数
|
|
11
|
+
type:'text',//类型 暂且支持text/select/data/daterange/autocomplete 类型同element一致
|
|
12
|
+
name:'name', //参数名称
|
|
13
|
+
value:'',//参数值,默认为空
|
|
14
|
+
placeholder:"请输入..." //可选参数,提示用语
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
注意:
|
|
18
|
+
type == select
|
|
19
|
+
参数属性多一个options
|
|
20
|
+
type == daterange
|
|
21
|
+
参数属性name:"startDate,endDate"
|
|
22
|
+
type === textMore
|
|
23
|
+
表示多个
|
|
24
|
+
{
|
|
25
|
+
type: "textMore",
|
|
26
|
+
label: "价格区间",
|
|
27
|
+
children: [
|
|
28
|
+
{
|
|
29
|
+
name: "projectMinprice",
|
|
30
|
+
placeholder: "请输入最小价格",
|
|
31
|
+
value: ""
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
name: "projectMaxprice",
|
|
35
|
+
placeholder: "请输入最大价格",
|
|
36
|
+
value: ""
|
|
37
|
+
}
|
|
38
|
+
]
|
|
39
|
+
},
|
|
40
|
+
type=== autocomplete //表示text可远程搜索
|
|
41
|
+
{
|
|
42
|
+
type: "autocomplete",
|
|
43
|
+
name: "classtreeName",
|
|
44
|
+
label: "搜索",
|
|
45
|
+
placeholder: "请输入产品编号",
|
|
46
|
+
restaurants: [
|
|
47
|
+
{ value: "三全鲜食(北新泾店)", address: "长宁区新渔路144号" },
|
|
48
|
+
],
|
|
49
|
+
value: ""
|
|
50
|
+
},
|
|
51
|
+
|
|
52
|
+
temInput的按钮操作
|
|
53
|
+
属性名称为btnArray:[]
|
|
54
|
+
{
|
|
55
|
+
type:'primary',//按钮类型,同element-ui的一致
|
|
56
|
+
id:'query',//操作的id id的类型query/search,add
|
|
57
|
+
label:"搜索",
|
|
58
|
+
url:"",//搜索的url暂且是定义的全局
|
|
59
|
+
}
|
|
60
|
+
当id == 'add',表示需要新增模板
|
|
61
|
+
需要添加属性
|
|
62
|
+
template:{
|
|
63
|
+
type: "json", //json类型暂且只支持json类型的
|
|
64
|
+
label: "编辑标题",
|
|
65
|
+
formLabelWidth: "6rem", //长度根据标题长度来,一个字一个rem
|
|
66
|
+
html:[],//具体详见模板二 input
|
|
67
|
+
};
|
|
68
|
+
type === cascader
|
|
69
|
+
value:[],
|
|
70
|
+
{
|
|
71
|
+
type: "cascader",
|
|
72
|
+
name: "classtreeName",
|
|
73
|
+
label: "产品分类",
|
|
74
|
+
showAllLevels:false,//可选参数,判断是否是取最后一集
|
|
75
|
+
placeholder: "请选择产品分类",
|
|
76
|
+
props: {
|
|
77
|
+
value: "value",
|
|
78
|
+
label: "label",
|
|
79
|
+
children: "children"
|
|
80
|
+
},
|
|
81
|
+
value: [],
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
例子:
|
|
90
|
+
|
|
91
|
+
temInput:[{
|
|
92
|
+
label: "标题",//自定义 title=>label
|
|
93
|
+
type: "text",//类型,暂且只支持text/select/date/daterange/button
|
|
94
|
+
name: "name",//参数名称
|
|
95
|
+
value: "",//值
|
|
96
|
+
placeholder: "请输入"//默认提示语,可选参数
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
label: "标题",//自定义
|
|
100
|
+
type: "select",//select类型包含options对象,参数label和value
|
|
101
|
+
name: "name",//参数名称
|
|
102
|
+
value: "",//值
|
|
103
|
+
placeholder: "请输入"//默认提示语,可选参数
|
|
104
|
+
props:{ //可选参数,正对select所需要的label和value
|
|
105
|
+
label:'name',
|
|
106
|
+
value:'code'
|
|
107
|
+
},
|
|
108
|
+
options:[
|
|
109
|
+
{
|
|
110
|
+
label:'',
|
|
111
|
+
value:''
|
|
112
|
+
}
|
|
113
|
+
]
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
type: "autocomplete",
|
|
117
|
+
name: "classtreeName",
|
|
118
|
+
label: "搜索",
|
|
119
|
+
placeholder: "请输入产品编号",
|
|
120
|
+
restaurants: [
|
|
121
|
+
{ value: "三全鲜食(北新泾店)", address: "长宁区新渔路144号" },
|
|
122
|
+
],
|
|
123
|
+
value: ""
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
btnArray:[ //按钮的对象数组-搜索
|
|
127
|
+
{
|
|
128
|
+
type:'primary',//按钮类型,和element-ui类型一致
|
|
129
|
+
id:'query',//id类型,query表示搜索,add-新增,del-删除 query-搜索 其他不确定类型抛出inputBtnClick("整个按钮对象","索引值")方法进行操作
|
|
130
|
+
label:"搜索",
|
|
131
|
+
url:''
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
type:"primary",
|
|
135
|
+
id:'add',
|
|
136
|
+
label:"新增",//当为新增的时候,需使用模板,url是写在模板里面的
|
|
137
|
+
template:{
|
|
138
|
+
type: "json", //json类型暂且只支持json类型的
|
|
139
|
+
title: "编辑标题",
|
|
140
|
+
formLabelWidth: "6rem", //长度根据标题长度来,一个字一个rem
|
|
141
|
+
html:[
|
|
142
|
+
{
|
|
143
|
+
label: "名称",
|
|
144
|
+
type: "text",//类型暂且只支持text/upload/textarea/select/date
|
|
145
|
+
value: "",
|
|
146
|
+
name: "brandName"
|
|
147
|
+
},
|
|
148
|
+
{
|
|
149
|
+
label: "logo",
|
|
150
|
+
showFileList: false, //false为单个图片.暂且只支持单个图片编辑
|
|
151
|
+
type: "upload",
|
|
152
|
+
value: "",
|
|
153
|
+
name: "brandLogo"
|
|
154
|
+
},
|
|
155
|
+
{
|
|
156
|
+
btnArray: [
|
|
157
|
+
//id类型,query表示搜索,add-新增,confirm-确定(一般属于编辑里面的),cancel-取消,del-删除 query-搜索 其他不确定类型抛出inputBtnClick("整个按钮对象","索引值")方法进行操作
|
|
158
|
+
{
|
|
159
|
+
label: "取消", value=>label
|
|
160
|
+
id: "cancel"
|
|
161
|
+
},
|
|
162
|
+
{
|
|
163
|
+
type: "primary",
|
|
164
|
+
label: "确定",
|
|
165
|
+
id: "add",
|
|
166
|
+
url: "/web/rs/brand/saveBrand.json"
|
|
167
|
+
}
|
|
168
|
+
]
|
|
169
|
+
},
|
|
170
|
+
],
|
|
171
|
+
rules: {}//规则,和element一致
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
]
|
|
175
|
+
}]
|
|
176
|
+
|
|
177
|
+
#####二、显示temTab
|
|
178
|
+
|
|
179
|
+
temTab: {
|
|
180
|
+
tabPane: [
|
|
181
|
+
{
|
|
182
|
+
label: "操作一",
|
|
183
|
+
name: "参数",
|
|
184
|
+
value: ""
|
|
185
|
+
}
|
|
186
|
+
]
|
|
187
|
+
},
|
|
188
|
+
|
|
189
|
+
#####三、显示temTable
|
|
190
|
+
>**temTable**是一个对象,包含selection,tableHead,()tableData,可选),tableBtn,tabBtnWidth(操作的宽度)
|
|
191
|
+
>**tableBtn**:
|
|
192
|
+
|
|
193
|
+
temTable: {
|
|
194
|
+
selection: {
|
|
195
|
+
state: true,
|
|
196
|
+
params: [] //单选的参数
|
|
197
|
+
}, //表示有单选,可选参数
|
|
198
|
+
tableHead:[
|
|
199
|
+
{
|
|
200
|
+
prop: "brandName", //基础参数
|
|
201
|
+
label: "品牌名称",//基础参数
|
|
202
|
+
splicing: ["brandLogo","contractInmoney", "goodsNum"], //参数可选,表示需要拼接
|
|
203
|
+
imgType: 0 //当表示有图片的时候,显示,值表示图片的位置 可选参数,
|
|
204
|
+
renderTemp: this.renderContent // 可选参数 自定义表格展示的方法 (优先级最高,会覆盖其他参数)
|
|
205
|
+
},
|
|
206
|
+
{
|
|
207
|
+
prop: "brandName", //基础参数
|
|
208
|
+
label: "品牌名称",//基础参数
|
|
209
|
+
splicing: ["brandLogo","contractInmoney", "goodsNum"], //参数可选,表示需要拼接
|
|
210
|
+
},
|
|
211
|
+
{
|
|
212
|
+
prop: "brandName", //基础参数
|
|
213
|
+
label: "品牌名称",//基础参数
|
|
214
|
+
pair: [//表示需要键值对显示的
|
|
215
|
+
{
|
|
216
|
+
key: "用户名",
|
|
217
|
+
prop: "memberBname"
|
|
218
|
+
},
|
|
219
|
+
{
|
|
220
|
+
key: "收件人",
|
|
221
|
+
prop: "goodsReceiptMem"
|
|
222
|
+
},
|
|
223
|
+
{
|
|
224
|
+
key: "手机号",
|
|
225
|
+
prop: "goodsReceiptPhone"
|
|
226
|
+
}
|
|
227
|
+
], //需要以键值对显示,//可选参数
|
|
228
|
+
width:150,//可选参数
|
|
229
|
+
},
|
|
230
|
+
{
|
|
231
|
+
prop: "gmtCreate",
|
|
232
|
+
label: "下单时间",
|
|
233
|
+
template: "format"//日期类型,做转换
|
|
234
|
+
},
|
|
235
|
+
{
|
|
236
|
+
prop: "dataState",
|
|
237
|
+
label: "订单状态",
|
|
238
|
+
template: { //特殊类型转换的
|
|
239
|
+
"-1": "已取消",
|
|
240
|
+
"0": "审核",
|
|
241
|
+
"1": "待付款",
|
|
242
|
+
"2": "待发货",
|
|
243
|
+
"3": "已发货",
|
|
244
|
+
"4": "已完成",
|
|
245
|
+
"5": "交易成功"
|
|
246
|
+
}
|
|
247
|
+
},
|
|
248
|
+
{props:['']} //表示为数组,多个数据无缝拼接,例如省市区地址
|
|
249
|
+
],
|
|
250
|
+
//tableData: [],优化已删除
|
|
251
|
+
tableBtn:[
|
|
252
|
+
{
|
|
253
|
+
label: "查看详情", name=>label
|
|
254
|
+
state: true, //不可与stateType同时出现
|
|
255
|
+
dataState: "1", //判断是否显示
|
|
256
|
+
stateType:{ --已取消 //不可与state,dataState同时出现 用的是‘或’,当有一个为true,那就显示
|
|
257
|
+
name: 'userType',
|
|
258
|
+
data: [0,1]
|
|
259
|
+
},//根据类型数据判断是否显示,name为类型,data是类型显示的类型数据的状态,data数据为空则都不显示,参数不存在则不考虑
|
|
260
|
+
id: "see", //表示查看详情
|
|
261
|
+
type:"primary",//和element一致
|
|
262
|
+
template: {
|
|
263
|
+
type: "json", //表示json类型//可选,
|
|
264
|
+
title: "查看详情",
|
|
265
|
+
html: [
|
|
266
|
+
{
|
|
267
|
+
type:'img',//可选参数,表示有图片
|
|
268
|
+
title:'标题内容',
|
|
269
|
+
con:"内容" //图片的url
|
|
270
|
+
},
|
|
271
|
+
{
|
|
272
|
+
label: "注册时间",
|
|
273
|
+
name: "gmtCreate",
|
|
274
|
+
type: "text",
|
|
275
|
+
value: "",
|
|
276
|
+
template: "foramte"
|
|
277
|
+
},
|
|
278
|
+
{
|
|
279
|
+
label: "商家类型",
|
|
280
|
+
name: "userinfoType",
|
|
281
|
+
type: "text",
|
|
282
|
+
value: "",
|
|
283
|
+
template: {
|
|
284
|
+
"1": "个人",
|
|
285
|
+
"2": "公司"
|
|
286
|
+
}
|
|
287
|
+
},
|
|
288
|
+
{ //查看需要根据状态值是否显示,添加state一系列
|
|
289
|
+
label: "公司名称",
|
|
290
|
+
name: "userinfoCompname",
|
|
291
|
+
type: "text",
|
|
292
|
+
value: "",
|
|
293
|
+
state: "2",
|
|
294
|
+
stateName: "userinfoType",
|
|
295
|
+
stateValue: ""
|
|
296
|
+
}
|
|
297
|
+
]
|
|
298
|
+
|
|
299
|
+
}
|
|
300
|
+
},
|
|
301
|
+
{
|
|
302
|
+
dropdown: true, // 可选参数,表示在此后面的按钮是需要折叠的
|
|
303
|
+
dropdowMenu: [
|
|
304
|
+
{
|
|
305
|
+
label: "取消订单",
|
|
306
|
+
dataState: "1", //判断是否显示
|
|
307
|
+
id: "cancel", //表示查看详情,需要自定义
|
|
308
|
+
type: "danger", //和element一致
|
|
309
|
+
prompt:false,//可选参数,为false不显示提示框
|
|
310
|
+
promptTitle: "是否确定付款!", //提示内荣,可选参数,不填则不给提示
|
|
311
|
+
params: {
|
|
312
|
+
contractId: ""
|
|
313
|
+
},
|
|
314
|
+
url: "/web/oc/contract/offlinePayContractState.json",
|
|
315
|
+
},
|
|
316
|
+
{
|
|
317
|
+
label: "修改状态",
|
|
318
|
+
state: true, //可选参数表示全部都显示
|
|
319
|
+
id: "modify", //表示查看详情,需要自定义
|
|
320
|
+
type: "primary" //和element一致
|
|
321
|
+
}
|
|
322
|
+
]
|
|
323
|
+
}
|
|
324
|
+
{
|
|
325
|
+
label: "查看", name=>label
|
|
326
|
+
state: true,
|
|
327
|
+
id: "see", //表示查看
|
|
328
|
+
//color: "",可选
|
|
329
|
+
template: {
|
|
330
|
+
type: "json", //表示json类型//可选,
|
|
331
|
+
labelWidth: 100,
|
|
332
|
+
title: "查看商家详情"
|
|
333
|
+
html:[
|
|
334
|
+
{
|
|
335
|
+
label: "站点名称",
|
|
336
|
+
type: "text", //现在支持text/select/img
|
|
337
|
+
name: "tginfoName",
|
|
338
|
+
value: ""
|
|
339
|
+
},
|
|
340
|
+
{
|
|
341
|
+
label: "产品",
|
|
342
|
+
type: "select",
|
|
343
|
+
name: "proappCode",
|
|
344
|
+
template: {
|
|
345
|
+
"001": "设计师A",
|
|
346
|
+
"002": "设计师B",
|
|
347
|
+
"003": "设计师C"
|
|
348
|
+
},
|
|
349
|
+
value: ""
|
|
350
|
+
},
|
|
351
|
+
{
|
|
352
|
+
label: "热门关键词",
|
|
353
|
+
type: "text",
|
|
354
|
+
name: "tginfoKey",
|
|
355
|
+
value: ""
|
|
356
|
+
},
|
|
357
|
+
{
|
|
358
|
+
label: "主域名",
|
|
359
|
+
type: "text",
|
|
360
|
+
name: "tginfoCompanyurl",
|
|
361
|
+
value: ""
|
|
362
|
+
},
|
|
363
|
+
{
|
|
364
|
+
label: "二级域名",
|
|
365
|
+
type: "text",
|
|
366
|
+
name: "tginfoExchangeurl",
|
|
367
|
+
value: ""
|
|
368
|
+
},
|
|
369
|
+
{
|
|
370
|
+
label: "模板",
|
|
371
|
+
type: "select",
|
|
372
|
+
name: "mmodulCode",
|
|
373
|
+
template: {
|
|
374
|
+
"1": "设计师A",
|
|
375
|
+
"2": "设计师B",
|
|
376
|
+
"3": "设计师C"
|
|
377
|
+
},
|
|
378
|
+
value: ""
|
|
379
|
+
},
|
|
380
|
+
{
|
|
381
|
+
label: "商城LOGO",
|
|
382
|
+
type: "img",
|
|
383
|
+
name: "tginfoLogo",
|
|
384
|
+
value: ""
|
|
385
|
+
}
|
|
386
|
+
]
|
|
387
|
+
}
|
|
388
|
+
},
|
|
389
|
+
{
|
|
390
|
+
label: "启用",
|
|
391
|
+
state: false,
|
|
392
|
+
params: {
|
|
393
|
+
//单单只对停用启用有效
|
|
394
|
+
oldDataState: "0",
|
|
395
|
+
dataState: "2",
|
|
396
|
+
tginfoId: "" //为空则会从当前这行table数据中获取
|
|
397
|
+
},
|
|
398
|
+
dataState: "-1", //状态参数
|
|
399
|
+
id: "start"
|
|
400
|
+
},
|
|
401
|
+
{
|
|
402
|
+
label: "停用",
|
|
403
|
+
state: false,
|
|
404
|
+
params: { // 此为应传入的参数
|
|
405
|
+
//单单只对停用启用有效,需要传的参数
|
|
406
|
+
oldDataState: "0",
|
|
407
|
+
dataState: "2",
|
|
408
|
+
goodsIdStr: "" // 会从当前这行tabel数据中获取这个字段,如果是某个字段设置了别名,就会用到paramProps
|
|
409
|
+
},
|
|
410
|
+
paramProps: {
|
|
411
|
+
goodsIdStr: 'goodsId' // 和params里面对应,设置的别名,会从当前这行数据中获取goodsId,作为goodsIdStr传输
|
|
412
|
+
},
|
|
413
|
+
dataState: "0", //状态 参数 dataState存在,state为false
|
|
414
|
+
id: "stop", //自定义的
|
|
415
|
+
},
|
|
416
|
+
{
|
|
417
|
+
label: "编辑", //暂且只支持表单类型
|
|
418
|
+
state: true,
|
|
419
|
+
id: "edit", //和编辑
|
|
420
|
+
renderTemp: this.renderBtn, // 可选参数 自定义表格按钮展示的方法 (优先级最高,会覆盖其他参数)
|
|
421
|
+
template: {
|
|
422
|
+
type: "json", //json类型
|
|
423
|
+
title: "编辑品牌",
|
|
424
|
+
formLabelWidth: "6rem", //长度根据标题长度来,一个字一个rem
|
|
425
|
+
html: [
|
|
426
|
+
{
|
|
427
|
+
label: "名称",
|
|
428
|
+
type: "text",
|
|
429
|
+
value: "",
|
|
430
|
+
name: "brandName"
|
|
431
|
+
},
|
|
432
|
+
{
|
|
433
|
+
label: "logo",
|
|
434
|
+
showFileList: false, //false为单个图片.暂且只支持单个图片编辑
|
|
435
|
+
type: "upload",
|
|
436
|
+
value: "",
|
|
437
|
+
name: "brandLogo"
|
|
438
|
+
}
|
|
439
|
+
],
|
|
440
|
+
rules: {}
|
|
441
|
+
}
|
|
442
|
+
}
|
|
443
|
+
]
|
|
444
|
+
}
|
|
445
|
+
···
|
|
446
|
+
methods: {
|
|
447
|
+
renderContent(h, item) { // item为当前这一行的数据 语法为jsx
|
|
448
|
+
return (
|
|
449
|
+
<div>
|
|
450
|
+
<span >{item.contractInmoney}/{item.contractInmoney}({item.contractInmoney})</span>
|
|
451
|
+
<span >{parseTime(item.gmtCreate)}</span>
|
|
452
|
+
</div>
|
|
453
|
+
)
|
|
454
|
+
},
|
|
455
|
+
renderBtn(h, item, val) { // item为当前这一行的数据 语法为jsx
|
|
456
|
+
return (
|
|
457
|
+
<div>
|
|
458
|
+
<span >{item.contractInmoney}/{item.contractInmoney}({item.contractInmoney})</span>
|
|
459
|
+
<span >{parseTime(item.gmtCreate)}</span>
|
|
460
|
+
</div>
|
|
461
|
+
)
|
|
462
|
+
},
|
|
463
|
+
}
|
|
464
|
+
|
|
465
|
+
|
|
466
|
+
|
|
467
|
+
#####分页
|
|
468
|
+
|
|
469
|
+
temPage:{ //基于element-ui的
|
|
470
|
+
currentPage: 1,
|
|
471
|
+
pageSizes: [10, 20, 30, 40],
|
|
472
|
+
pageSize: 10,
|
|
473
|
+
total: 1
|
|
474
|
+
}
|
|
475
|
+
##### url
|
|
476
|
+
|
|
477
|
+
url:'/web/rs/goodsFile/uploadGoodsFile.json',//数据查询url
|
|
478
|
+
|
|
479
|
+
#####参数
|
|
480
|
+
| 参数 | 说明 | 类型 | 状态 |
|
|
481
|
+
| :--------: | :-----:| :--: | :--: |
|
|
482
|
+
| temInput | 查询框 | Array | 可选 |
|
|
483
|
+
| temTab | tab切换框 | Object | 可选 |
|
|
484
|
+
| temTable | table 数据显示 | Array | 可选 |
|
|
485
|
+
| url | 数据查询url | String | 可选 |
|
|
486
|
+
| temPage | 数据分页 | Object | 可选 |
|
|
487
|
+
|
|
488
|
+
#####API
|
|
489
|
+
| 事件名称 | 说明 | 回调参数 | 例子 |
|
|
490
|
+
| :--------: | :-----:| :--: | :--: |
|
|
491
|
+
|inputBtnClick| temInput 里面其他按钮操作 | (data, index)|
|
|
492
|
+
| getData(已删除) | 列表数据返回的接口 | (data) | getData(data) { //获取数据this.temTable.tableData =data;}|
|
|
493
|
+
|tableBtnClick| table 表格里面其他按钮事件 | (data,item, index)| item.id ==="",根据id来执行事件 |
|
|
494
|
+
| handleSelectionChange | table 多选按钮 | handleSelectionChange(val) |
|
|
495
|
+
| selChange| select 改变时触发 | selChange(val,item),val为code值,item为操作json |
|
|
496
|
+
| handleSelect | input搜索 | handleSelect(data)|
|
|
497
|
+
| btnConfirm | 提示框确定钩子 | btnConfirm(data,item) |
|
|
498
|
+
|
|
499
|
+
####模板 templateInput
|
|
500
|
+
#####一、temInput
|
|
501
|
+
|
|
502
|
+
> 支持的type类型:text / number / password /select / cascader / switch / checkbox / radio / textarea/autocomplete
|
|
503
|
+
|
|
504
|
+
|
|
505
|
+
temInput:[
|
|
506
|
+
{
|
|
507
|
+
label: "用户类型", //标题
|
|
508
|
+
name: "userinfoType", //参数名称
|
|
509
|
+
type: "radio", // 类型,现支持 radio/checkbox/switch/password/textarea/upload
|
|
510
|
+
value: "2", //参数值
|
|
511
|
+
radioGroup: [ //选择内容
|
|
512
|
+
{
|
|
513
|
+
label: "公司",
|
|
514
|
+
value: "2"
|
|
515
|
+
},
|
|
516
|
+
{
|
|
517
|
+
label: "个人",
|
|
518
|
+
value: "1"
|
|
519
|
+
}
|
|
520
|
+
]
|
|
521
|
+
},
|
|
522
|
+
{
|
|
523
|
+
type: "autocomplete",
|
|
524
|
+
name: "classtreeName",
|
|
525
|
+
label: "搜索",
|
|
526
|
+
placeholder: "请输入产品编号",
|
|
527
|
+
restaurants: [
|
|
528
|
+
{ value: "三全鲜食(北新泾店)", address: "长宁区新渔路144号" },
|
|
529
|
+
],
|
|
530
|
+
value: ""
|
|
531
|
+
},
|
|
532
|
+
{
|
|
533
|
+
label: "公司名称",
|
|
534
|
+
type: "text",
|
|
535
|
+
state: "2", //可选参数
|
|
536
|
+
name: "userinfoCompname",
|
|
537
|
+
placeholder: "输入公司名称",
|
|
538
|
+
value: ""
|
|
539
|
+
},
|
|
540
|
+
{
|
|
541
|
+
btnArray: [ //id类型,add-新增,confirm-确定,cancel-取消,reset-重置, 其他不确定类型抛出inputBtnClick("整个按钮对象","索引值")方法进行操作
|
|
542
|
+
{
|
|
543
|
+
btnType: "primary",
|
|
544
|
+
id: "confirm",
|
|
545
|
+
url: "/web/um/userMerchant/saveUserMerchant.json",
|
|
546
|
+
label: "立即创建" value=>label
|
|
547
|
+
},
|
|
548
|
+
{
|
|
549
|
+
btnType: "danger",
|
|
550
|
+
id: "reset",
|
|
551
|
+
label: "重置"
|
|
552
|
+
}
|
|
553
|
+
]
|
|
554
|
+
}
|
|
555
|
+
],
|
|
556
|
+
rules:[]//规则验证
|
|
557
|
+
|
|
558
|
+
|
|
559
|
+
|
|
560
|
+
#####二、其他
|
|
561
|
+
|
|
562
|
+
label: "商品类型",
|
|
563
|
+
type: "radio",
|
|
564
|
+
name: "radio",
|
|
565
|
+
value: "1",
|
|
566
|
+
labelWidth:"",label的宽度,单位为rem,一个字一个rem,可选参数
|
|
567
|
+
tabState: { //是需要进行tab切换时使用
|
|
568
|
+
name: "userinfoType",//参数名称
|
|
569
|
+
value: "2",//默认参数,需要外部进行监听,当值改变的时候,去改变temInput的值
|
|
570
|
+
typeArray: ["1", "2"] //通过typeArray把几种类型传递过去,对数据进行保留
|
|
571
|
+
}, //可选参数,表示需要监听的
|
|
572
|
+
{ //需要切换时需要添加state参数
|
|
573
|
+
label: "库存",
|
|
574
|
+
type: "number",
|
|
575
|
+
disabled:true,//可选参数,禁止
|
|
576
|
+
state: true,
|
|
577
|
+
value: 0,
|
|
578
|
+
name: "inventory",
|
|
579
|
+
placeholder: "请输入库存"
|
|
580
|
+
},
|
|
581
|
+
{
|
|
582
|
+
label: "商品图片",
|
|
583
|
+
type: "upload",
|
|
584
|
+
state: true,
|
|
585
|
+
limit: 3,//可选参数,默认为1
|
|
586
|
+
showFileList: false, //表示单个个图片
|
|
587
|
+
name: "picList",
|
|
588
|
+
value: [] //多个图片为数组,单个为字符串"" },
|
|
589
|
+
|
|
590
|
+
|
|
591
|
+
|
|
592
|
+
#####参数
|
|
593
|
+
|
|
594
|
+
|
|
595
|
+
| 参数名称 | 说明 | 类型 | 例子 |
|
|
596
|
+
| :--: | :--: | :--: | :--:|
|
|
597
|
+
| temInput | 需要哪些表单 | Array | |
|
|
598
|
+
| rules | 表单验证规则,基于element-ui | Array |
|
|
599
|
+
| title | 发布表单的通用标题 | String |
|
|
600
|
+
| labelWidth | label的宽度,单位为rem,一个字一个rem,可选参数 | String |
|
|
601
|
+
| tabState | 表单发布需要切换时使用 | Object |
|
|
602
|
+
|
|
603
|
+
|
|
604
|
+
#####API
|
|
605
|
+
| 事件名称 | 参数 | 回调参数 | 例子 |
|
|
606
|
+
| :--: | :--: | :--: | :--:|
|
|
607
|
+
| inputBtnClick | 查询按钮事件 | (data,index) |
|
|
608
|
+
| inputBlur | input失去焦点事件 | inputBlur(item) |
|
|
609
|
+
|
|
610
|
+
|
|
611
|
+
##### 新增统计
|
|
612
|
+
:count="count"
|
|
613
|
+
count: [
|
|
614
|
+
{
|
|
615
|
+
label: "支付总额:",
|
|
616
|
+
name: "orderAmount",
|
|
617
|
+
value: 0,
|
|
618
|
+
unit: "元"
|
|
619
|
+
}
|
|
620
620
|
],
|