Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
E
ElectricitySheep
Project
Project
Details
Activity
Releases
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
黄媛媛
ElectricitySheep
Commits
9b8b1645
Commit
9b8b1645
authored
Oct 28, 2020
by
黄奎
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
新增页面
parent
bfc0df20
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
946 additions
and
62 deletions
+946
-62
storesManage.vue
src/components/StoreDesign/storesManage.vue
+74
-59
offlineIndex.vue
src/components/offlineService/offlineIndex.vue
+3
-1
serviceProductList.vue
src/components/offlineService/serviceProductList.vue
+861
-0
index.js
src/plug/index.js
+2
-2
index.js
src/router/index.js
+6
-0
No files found.
src/components/StoreDesign/storesManage.vue
View file @
9b8b1645
...
...
@@ -3,7 +3,8 @@
<template
v-if=
"storesIsShowAdd"
>
<div
class=
"head-title"
>
门店管理
<el-button
@
click=
"storesIsShowAdd=false,clearMsg()"
style=
"float:right;margin-top: -5px;"
size=
"small"
type=
"primary"
>
<el-button
@
click=
"storesIsShowAdd=false,clearMsg()"
style=
"float:right;margin-top: -5px;"
size=
"small"
type=
"primary"
>
添加门店
</el-button>
</div>
...
...
@@ -24,7 +25,8 @@
</el-table-column>
<el-table-column
label=
"封面图"
width=
"110"
>
<template
slot-scope=
"scope"
>
<img
:src=
"getIconLink(scope.row.CoverImg)"
style=
"width:80px;height:80px;"
/>
<el-image
:src=
"getIconLink(scope.row.CoverImg)"
style=
"width:80px;height:80px;"
:preview-src-list=
"[getIconLink(scope.row.CoverImg)]"
></el-image>
</
template
>
</el-table-column>
<el-table-column
prop=
"Tel"
label=
"联系方式"
width=
"120"
>
...
...
@@ -35,8 +37,7 @@
</el-table-column>
<el-table-column
label=
"操作"
>
<
template
slot-scope=
"scope"
>
<img
@
click=
"EditstoreManage(scope.row)"
class=
"operatImg"
src=
"../../assets/img/userman/edit.png"
alt=
""
>
<img
@
click=
"EditstoreManage(scope.row)"
class=
"operatImg"
src=
"../../assets/img/userman/edit.png"
alt=
""
>
<img
@
click=
"RemovestoreManage(scope.row)"
class=
"operatImg"
src=
"../../assets/img/userman/del.png"
alt=
""
>
</
template
>
...
...
@@ -58,10 +59,12 @@
<div
class=
"el-row"
>
<div
class=
"el-col el-col-12"
>
<el-form-item
label=
"门店名称"
prop=
"Name"
>
<el-input
type=
"text"
placeholder=
"请输入门店名称"
v-model=
"addMsg.Name"
maxlength=
"50"
size=
"small"
></el-input>
<el-input
type=
"text"
placeholder=
"请输入门店名称"
v-model=
"addMsg.Name"
maxlength=
"50"
size=
"small"
>
</el-input>
</el-form-item>
<el-form-item
label=
"联系电话"
prop=
"Tel"
>
<el-input
type=
"text"
placeholder=
"请输入门店联系电话"
v-model=
"addMsg.Tel"
maxlength=
"20"
size=
"small"
></el-input>
<el-input
type=
"text"
placeholder=
"请输入门店联系电话"
v-model=
"addMsg.Tel"
maxlength=
"20"
size=
"small"
>
</el-input>
</el-form-item>
<el-form-item
label=
"门店地址"
prop=
"Address"
>
<el-input
type=
"text"
placeholder=
"请输入门店地址"
v-model=
"addMsg.Address"
size=
"small"
></el-input>
...
...
@@ -98,11 +101,12 @@
<el-button
size=
"mini"
@
click=
"choicImg=true,commonIndex=1"
>
选择图片
</el-button>
</el-tooltip>
<div
class=
"customize-share-title"
>
<div
class=
"zk_pic_box"
@
click=
"choicImg=true,commonIndex=1"
flex=
"main:center cross:center"
style=
"width:80px;height:80px;"
<div
class=
"zk_pic_box"
@
click=
"choicImg=true,commonIndex=1"
flex=
"main:center cross:center"
style=
"width:80px;height:80px;"
:style=
"
{backgroundImage:'url(' + getIconLink(addMsg.CoverImg) + ')'}">
<i
v-if=
"addMsg.CoverImg==''"
class=
"el-icon-picture-outline"
></i>
<el-button
type=
"danger"
v-if=
"addMsg.CoverImg!=''"
class=
"image-delete"
size=
"mini"
icon=
"el-icon-close"
@
click
.
stop=
"addMsg.CoverImg=''"
circle
></el-button>
icon=
"el-icon-close"
@
click
.
stop=
"addMsg.CoverImg=''"
circle
></el-button>
</div>
</div>
</el-form-item>
...
...
@@ -111,22 +115,27 @@
<el-button
size=
"mini"
@
click=
"choicImg=true,commonIndex=2"
>
选择图片
</el-button>
</el-tooltip>
<div
class=
"customize-share-title"
>
<div
class=
"zk_pic_box"
@
click=
"choicImg=true,commonIndex=2"
flex=
"main:center cross:center"
style=
"width:80px;height:80px;"
<div
class=
"zk_pic_box"
@
click=
"choicImg=true,commonIndex=2"
flex=
"main:center cross:center"
style=
"width:80px;height:80px;"
:style=
"
{backgroundImage:'url(' + getIconLink(addMsg.NavImg) + ')'}">
<i
v-if=
"addMsg.NavImg==''"
class=
"el-icon-picture-outline"
></i>
<el-button
type=
"danger"
v-if=
"addMsg.NavImg!=''"
class=
"image-delete"
size=
"mini"
icon=
"el-icon-close"
@
click
.
stop=
"addMsg.NavImg=''"
circle
></el-button>
icon=
"el-icon-close"
@
click
.
stop=
"addMsg.NavImg=''"
circle
></el-button>
</div>
</div>
</el-form-item>
<el-form-item
label=
"营业时间"
>
<el-time-select
placeholder=
"起始时间"
v-model=
"addMsg.StartTime"
:disabled=
"checked"
size=
"small"
:picker-options=
"
{
<el-checkbox
v-model=
"checked"
@
change=
"checked==true? addMsg.IsAllDay=1:addMsg.IsAllDay=0"
>
全天营业
</el-checkbox>
<el-time-select
placeholder=
"起始时间"
v-model=
"addMsg.StartTime"
:disabled=
"checked"
size=
"small"
:picker-options=
"
{
start: '00:00',
step: '00:15',
end: '23:45'
}">
</el-time-select>
<el-time-select
placeholder=
"结束时间"
v-model=
"addMsg.EndTime"
:disabled=
"checked"
size=
"small"
:picker-options=
"
{
<el-time-select
placeholder=
"结束时间"
v-model=
"addMsg.EndTime"
:disabled=
"checked"
size=
"small"
:picker-options=
"
{
start: '00:00',
step: '00:15',
end: '23:45',
...
...
@@ -134,8 +143,10 @@
}">
</el-time-select>
</el-form-item>
<el-form-item
label=
""
>
<el-checkbox
v-model=
"checked"
@
change=
"checked==true? addMsg.IsAllDay=1:addMsg.IsAllDay=0"
>
全天营业
</el-checkbox>
<el-form-item
label=
"服务项目"
prop=
"ServiceProject"
>
<div
style=
"line-height:normal;"
>
<UE
:defaultMsg=
"addMsg.ServiceProject"
:config=
"config"
ref=
"ue2"
@
input=
"getService"
></UE>
</div>
</el-form-item>
</div>
</div>
...
...
@@ -153,8 +164,6 @@
<el-dialog
title=
"地图展示"
:visible
.
sync=
"isShowMap"
width=
"960px"
>
<commonMap
@
map-submit=
"mapEvent"
></commonMap>
</el-dialog>
</div>
</template>
<
script
>
...
...
@@ -172,8 +181,8 @@
//是否线下链接弹窗
loading
:
false
,
choicImg
:
false
,
isShowMap
:
false
,
checked
:
false
,
isShowMap
:
false
,
checked
:
false
,
dataList
:
[],
msg
:
{
pageIndex
:
1
,
...
...
@@ -195,6 +204,7 @@
StartTime
:
"00:00"
,
//营业开始时间
EndTime
:
"24:00"
,
//营业结束时间
IsAllDay
:
0
,
//是否全天营业(1-是)
ServiceProject
:
""
,
//服务项目
},
config
:
{
initialFrameWidth
:
null
,
...
...
@@ -202,43 +212,42 @@
},
commonIndex
:
-
1
,
rules
:
{
Name
:
[{
required
:
true
,
message
:
'请输入门店名称'
,
trigger
:
'change'
}],
Tel
:
[{
required
:
true
,
message
:
'请输入门店联系方式'
,
trigger
:
'change'
}],
Address
:
[{
required
:
true
,
message
:
'请输入门店地址'
,
trigger
:
'change'
}],
LngLat
:
[{
required
:
true
,
message
:
'请输入门店经纬度'
,
trigger
:
'change'
}],
Intro
:
[{
required
:
true
,
message
:
'请输入门店描述'
,
trigger
:
'change'
}],
CoverImg
:
[{
required
:
true
,
message
:
'请添加门店封面图'
,
trigger
:
'change'
}],
NavImg
:
[{
required
:
true
,
message
:
'请添加门店轮播图'
,
trigger
:
'change'
}],
Name
:
[{
required
:
true
,
message
:
'请输入门店名称'
,
trigger
:
'change'
}],
Tel
:
[{
required
:
true
,
message
:
'请输入门店联系方式'
,
trigger
:
'change'
}],
Address
:
[{
required
:
true
,
message
:
'请输入门店地址'
,
trigger
:
'change'
}],
LngLat
:
[{
required
:
true
,
message
:
'请输入门店经纬度'
,
trigger
:
'change'
}],
Intro
:
[{
required
:
true
,
message
:
'请输入门店描述'
,
trigger
:
'change'
}],
CoverImg
:
[{
required
:
true
,
message
:
'请添加门店封面图'
,
trigger
:
'change'
}],
NavImg
:
[{
required
:
true
,
message
:
'请添加门店轮播图'
,
trigger
:
'change'
}],
},
};
},
created
()
{
...
...
@@ -296,7 +305,8 @@
this
.
addMsg
.
StartTime
=
''
;
this
.
addMsg
.
EndTime
=
''
;
this
.
addMsg
.
IsAllDay
=
0
;
this
.
checked
=
false
;
this
.
addMsg
.
ServiceProject
=
""
;
this
.
checked
=
false
;
},
//修改
EditstoreManage
(
item
)
{
...
...
@@ -318,8 +328,9 @@
this
.
addMsg
.
StartTime
=
jsonData
.
StartTime
;
this
.
addMsg
.
EndTime
=
jsonData
.
EndTime
;
this
.
addMsg
.
IsAllDay
=
jsonData
.
IsAllDay
;
if
(
this
.
addMsg
.
IsAllDay
==
1
){
this
.
checked
=
true
;
this
.
addMsg
.
ServiceProject
=
jsonData
.
ServiceProject
;
if
(
this
.
addMsg
.
IsAllDay
==
1
)
{
this
.
checked
=
true
;
}
}
else
{
this
.
Info
(
res
.
data
.
message
);
...
...
@@ -357,9 +368,14 @@
}
})
},
//门店描述
input
(
obj
)
{
this
.
addMsg
.
Intro
=
obj
;
},
//服务项目
getService
(
obj
)
{
this
.
addMsg
.
ServiceProject
=
obj
;
},
//选择图片
SelectId
(
msg
)
{
if
(
this
.
commonIndex
==
1
)
{
...
...
@@ -373,9 +389,8 @@
mapEvent
(
e
)
{
this
.
addMsg
.
LngLat
=
e
.
lat
+
','
+
e
.
long
;
this
.
addMsg
.
Address
=
e
.
address
;
this
.
isShowMap
=
false
;
this
.
isShowMap
=
false
;
},
},
mounted
()
{
this
.
getList
();
...
...
src/components/offlineService/offlineIndex.vue
View file @
9b8b1645
...
...
@@ -175,7 +175,9 @@
<li
class=
"menu_item"
:class=
"
{'Fchecked':isChecked=='/osCardrelease'}" @click="isChecked='/osCardrelease',CommonJump('osCardrelease')">
<i
class=
"el-icon-menu"
></i><span>
套餐卡自动发放
</span>
</li>
<li
class=
"menu_item"
:class=
"
{'Fchecked':isChecked=='/serviceProductList'}" @click="isChecked='/serviceProductList',CommonJump('serviceProductList')">
<i
class=
"el-icon-menu"
></i><span>
服务产品
</span>
</li>
</ul>
</div>
</div>
...
...
src/components/offlineService/serviceProductList.vue
0 → 100644
View file @
9b8b1645
<
template
>
<div
class=
"serviceProduct"
>
<div
class=
"head-title"
>
商品列表
<el-button
@
click=
"Export"
style=
"float:right;margin-top: -5px;margin-left:20px;"
size=
"small"
type=
"primary"
>
商品导出
</el-button>
<el-button
@
click=
"CommonJump('serviceProductEdit',
{hpState:hpState,FxState:FxState})"
style="float:right;margin-top: -5px;margin-left:20px;" size="small" type="primary">添加商品
</el-button>
</div>
<div
class=
"content"
>
<div>
<el-tabs
v-model=
"activeName"
@
tab-click=
"handleClick"
>
<el-tab-pane
:dataId=
"0"
label=
"全部"
name=
"first"
></el-tab-pane>
<el-tab-pane
:dataId=
"1"
label=
"上架中"
name=
"second"
></el-tab-pane>
<el-tab-pane
:dataId=
"2"
label=
"下架中"
name=
"third"
></el-tab-pane>
<el-tab-pane
:dataId=
"3"
label=
"售罄"
name=
"fourth"
></el-tab-pane>
</el-tabs>
</div>
<div>
<span>
分类筛选
</span>
<el-select
v-model=
"showCategoryName"
placeholder=
"请选择"
multiple
clearable
collapse-tags
@
change=
"selectChange"
>
<el-option
:value=
"chooseCategroyArray"
style=
"height: auto"
>
<el-tree
:data=
"categoryTreeData"
show-checkbox
node-key=
"Id"
ref=
"tree"
highlight-current
:props=
"defaultProps"
@
check-change=
"categoryCheckChange"
></el-tree>
</el-option>
</el-select>
<span>
添加时间:
</span>
<el-date-picker
v-model=
"dateList"
@
change=
"msg.pageIndex=1,getList()"
size=
"small"
type=
"datetimerange"
range-separator=
"至"
value-format=
"yyyy-MM-dd HH:mm:ss"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
>
</el-date-picker>
<div
class=
"searchInput"
style=
"width:250px;margin-right: 0px;"
>
<el-input
@
keyup
.
enter
.
native=
"msg.pageIndex=1,getList()"
style=
"display:inline-block;width:225px;height:30px"
placeholder=
"请输入名称搜索"
v-model=
"msg.Name"
@
clear=
"msg.pageIndex=1,getList()"
size=
"small"
clearable
>
</el-input>
<span
@
click=
"msg.pageIndex=1,getList()"
class=
"el-icon-search"
style=
"color:#979dad;font-size:14px;position:relative;top:1px"
></span>
</div>
<div
class=
"searchInput"
style=
"width:250px"
>
<el-input
@
keyup
.
enter
.
native=
"msg.pageIndex=1,getList()"
style=
"display:inline-block;width:225px;height:30px"
placeholder=
"请输入ID搜索"
v-model=
"msg.Id"
@
clear=
"msg.pageIndex=1,getList()"
size=
"small"
clearable
>
</el-input>
<span
@
click=
"msg.pageIndex=1,getList()"
class=
"el-icon-search"
style=
"color:#979dad;font-size:14px;position:relative;top:1px"
></span>
</div>
<span
@
click=
"Clearconditions"
v-if=
"msg.Name!='' || msg.CategoryIds!='' || (dateList && dateList.length>0)"
class=
'blue point'
>
清空筛选条件
</span>
</div>
<div
style=
"margin-top:15px"
>
<el-button
@
click=
"tableSet(4)"
style=
"margin-left:10px;"
size=
"mini"
>
上架
</el-button>
<el-button
@
click=
"tableSet(5)"
style=
"margin-left:10px;"
size=
"mini"
>
下架
</el-button>
<el-button
@
click=
"tableSet(6)"
style=
"margin-left:10px;"
size=
"mini"
>
删除
</el-button>
<el-button
@
click=
"plsetBtn"
style=
"margin-left:10px;"
size=
"mini"
>
批量设置
</el-button>
</div>
<el-table
:data=
"tableData"
v-loading=
"loading"
border
sortable=
'custom'
@
sort-change=
'getSort'
@
selection-change=
"tableSelect"
style=
"width: 100%;margin:20px 0"
>
<el-table-column
type=
"selection"
width=
"55"
>
</el-table-column>
<el-table-column
prop=
"Id"
width=
"80"
sortable
label=
"ID"
>
</el-table-column>
<el-table-column
prop=
"address"
sortable
label=
"排序"
>
<template
slot-scope=
"scope"
>
<template
v-if=
"!scope.row.editsort"
>
<span>
{{
scope
.
row
.
Sort
}}
</span>
<img
@
click=
"scope.row.editsort=true,scope.row.SortNew=scope.row.Sort"
style=
"width:15px;height:15px;margin-left:7px"
src=
"../../assets/img/userman/edit1.png"
alt=
""
>
</
template
>
<
template
v-else
>
<el-input
v-model=
"scope.row.SortNew"
type=
"number"
min=
"1"
size=
"small"
style=
"display:inline-block;width:70px"
></el-input>
<span
@
click=
"scope.row.editsort=false"
class=
"el-icon-error"
style=
"color: rgb(245, 108, 108);"
></span>
<span
@
click=
"Edit(scope.row,1)"
class=
"el-icon-success"
style=
"color:#67c23a"
></span>
</
template
>
</template>
</el-table-column>
<el-table-column
prop=
"Remark"
label=
"分类"
>
<
template
slot-scope=
"scope"
>
<el-tag
size=
"mini"
v-if=
"scope.row.CategoryList && scope.row.CategoryList.length>0"
>
{{
scope
.
row
.
CategoryList
[
0
].
CategoryName
}}
</el-tag>
<el-tooltip
class=
"item"
effect=
"dark"
placement=
"top"
>
<div
slot=
"content"
>
<span
v-for=
"(item,index) in scope.row.CategoryList"
:key=
"index"
>
{{
item
.
CategoryName
}}
</span>
</div>
<span
v-if=
"scope.row.CategoryList.length>1 && index==0"
v-for=
"(item,index) in scope.row.CategoryList"
:key=
"index"
>
...
</span>
</el-tooltip>
</
template
>
</el-table-column>
<el-table-column
prop=
"address"
width=
"300"
label=
"商品名称"
>
<
template
slot-scope=
"scope"
>
<div
flex=
"box:first"
>
<el-image
title=
"点击查看大图"
style=
"width:50px;height:50px;margin-right:1px"
:src=
"scope.row.CoverImage"
:preview-src-list=
"scope.row.CarouselImageList"
>
</el-image>
<template
v-if=
"!scope.row.editname"
>
<div
flex=
"cross:top"
style=
"display:inline-flex"
>
<div
flex=
"dir:left"
>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"scope.row.Name"
placement=
"top"
>
<div
class=
"vue-line-clamp"
style=
"word-break: break-all; -webkit-line-clamp: 2;"
>
<span>
{{
scope
.
row
.
Name
}}
</span>
</div>
</el-tooltip>
<img
@
click=
"scope.row.editname=true,scope.row.NameNew=scope.row.Name"
style=
"width:15px;height:15px;margin-left:7px"
src=
"../../assets/img/userman/edit1.png"
alt=
""
>
</div>
</div>
</
template
>
<
template
v-else
>
<el-input
v-model=
"scope.row.NameNew"
size=
"small"
style=
"display:inline-block;width:150px"
></el-input>
<span
@
click=
"scope.row.editname=false"
class=
"el-icon-error"
style=
"margin-left:5px;color: rgb(245, 108, 108);position: relative;top: 9px;"
></span>
<span
@
click=
"Edit(scope.row,2)"
class=
"el-icon-success"
style=
"color:#67c23a;position: relative;top: 9px;"
></span>
</
template
>
</div>
<div
flex=
"dir:left"
style=
"margin-top:5px;color:#F56C6C;font-size:12px;"
v-if=
"scope.row.Remark"
>
<div
style=
"width:38px;"
>
备注:
</div>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"scope.row.Remark"
placement=
"top"
>
<div
class=
"vue-line-clamp"
style=
"word-break: break-all; -webkit-line-clamp: 2;width:90%;margin-left:0;"
>
<span>
{{scope.row.Remark}}
</span>
</div>
</el-tooltip>
</div>
</template>
</el-table-column>
<el-table-column
prop=
"SellingPrice"
width=
"100"
sortable
label=
"售价"
>
</el-table-column>
<el-table-column
prop=
"InventoryNum"
width=
"100"
sortable
label=
"库存"
>
<
template
slot-scope=
"scope"
>
<span
v-if=
"scope.row.InventoryNum==0"
style=
"color:red"
>
售罄
</span>
<span
v-else
>
{{
scope
.
row
.
InventoryNum
}}
</span>
</
template
>
</el-table-column>
<el-table-column
width=
"120"
>
<
template
slot=
"header"
>
已出售量
<el-tooltip
effect=
"dark"
content=
"已出售量=实际销量+虚拟销量,按实际销量排序"
placement=
"top"
>
<i
class=
"el-icon-info"
></i>
</el-tooltip>
</
template
>
<
template
slot-scope=
"scope"
>
<span>
{{
scope
.
row
.
GoodsBuyNum
}}
+
{{
scope
.
row
.
SalesNum
}}
</span>
</
template
>
</el-table-column>
<el-table-column
prop=
"UpdateDate"
width=
"110"
label=
"是否加入快速购买"
>
<
template
slot-scope=
"scope"
>
<el-switch
@
change=
"Edit(scope.row,10)"
v-model=
"scope.row.IsQuickBuy"
active-color=
"#409EFF"
:active-value=
"1"
:inactive-value=
"0"
>
</el-switch>
</
template
>
</el-table-column>
<el-table-column
prop=
"CreateDate"
width=
"160"
label=
"添加时间"
>
</el-table-column>
<el-table-column
prop=
"UpdateDate"
width=
"100"
label=
"状态"
>
<
template
slot-scope=
"scope"
>
<el-tag
v-if=
"scope.row.GoodsStatus==1"
type=
"success"
>
销售中
</el-tag>
<el-tag
v-if=
"scope.row.GoodsStatus==2"
type=
"warning"
>
下架中
</el-tag>
</
template
>
</el-table-column>
<el-table-column
prop=
"address"
width=
"200"
label=
"操作"
>
<
template
slot-scope=
"scope"
>
<img
@
click=
"goGoodsEdit(scope.row.Id)"
style=
"width:32px;height:32px;margin:0 10px"
src=
"../../assets/img/userman/edit.png"
alt=
""
>
<img
@
click=
"Delete(scope.row)"
style=
"width:32px;height:32px;margin:0 10px"
src=
"../../assets/img/userman/del.png"
alt=
""
>
</
template
>
</el-table-column>
</el-table>
<el-pagination
style=
"text-align:right"
background
@
current-change=
"handleCurrentChange"
:page-size=
"msg.pageSize"
layout=
"prev, pager, next"
:current-page
.
sync=
"msg.pageIndex"
:total=
"total"
>
</el-pagination>
</div>
<!-- 批量修改 -->
<el-dialog
custom-class=
"plxg"
title=
"批量修改"
:visible
.
sync=
"isShowBatchEdit"
width=
"960px"
>
<span
class=
"absoSpan"
>
已选商品{{GoodsIds.length}}个
</span>
<div
class=
"batch-remark c99 f14"
>
注:每次只能修改一项,修改后点击确定即可生效。如需修改多项,需多次操作。
</div>
<div
style=
"margin-top:15px"
flex=
"dir:left box:first"
>
<div
flex=
"dir:top"
class=
"batch-box-left"
>
<div
flex=
"main:center"
@
click=
"ClearSelect(7)"
:class=
"plszMsg.Type==7?'batch-div-active':''"
>
运费
</div>
<div
flex=
"main:center"
@
click=
"ClearSelect(8)"
:class=
"plszMsg.Type==8?'batch-div-active':''"
>
限购
</div>
<div
flex=
"main:center"
@
click=
"ClearSelect(9)"
:class=
"plszMsg.Type==9?'batch-div-active':''"
>
积分
</div>
<div
flex=
"main:center"
@
click=
"ClearSelect(10)"
:class=
"plszMsg.Type==10?'batch-div-active':''"
>
快速购买
</div>
<div
flex=
"main:center"
@
click=
"ClearSelect(11)"
:class=
"plszMsg.Type==11?'batch-div-active':''"
>
面议
</div>
<div
flex=
"main:center"
@
click=
"ClearSelect(12)"
:class=
"plszMsg.Type==12?'batch-div-active':''"
>
供应商
</div>
</div>
<div
class=
"batch-box-right"
>
<el-form
class=
"app-batch"
:model=
"addMsg"
:rules=
"rules"
ref=
"addMsg"
label-width=
"100px"
>
<el-form-item
v-if=
"plszMsg.Type==7"
label=
"运费设置"
>
<el-tag
v-if=
"ruleSelect.RulesName"
@
close=
"plszMsg.FreightId=0,ruleSelect={}"
closable
>
{{ruleSelect.RulesName}}
</el-tag>
<el-button
@
click=
"isShowFreight=true"
style=
"margin-left:10px;"
size=
"small"
>
选择运费
</el-button>
</el-form-item>
<el-form-item
v-if=
"plszMsg.Type==8"
label=
"每人限购"
>
<el-form-item
label-width=
"50px"
label=
"商品"
>
<el-input
:disabled=
"BuyGoodsNumState"
v-model=
"plszMsg.LimitBuyGoodsNum"
style=
"width:254px;margin-left:15px"
type=
"number"
min=
"1"
size=
"small"
placeholder=
"请输入内容"
class=
"input-with-select"
>
<el-button
slot=
"append"
>
件
</el-button>
</el-input>
<el-checkbox
@
change=
"goodChange(BuyGoodsNumState,1)"
style=
"margin-left:10px"
v-model=
"BuyGoodsNumState"
>
不限制
</el-checkbox>
</el-form-item>
<el-form-item
label-width=
"50px"
label=
"订单"
>
<el-input
:disabled=
"BuyOrderNumState"
v-model=
"plszMsg.LimitBuyOrderNum"
style=
"width:254px;margin-left:15px"
type=
"number"
min=
"1"
size=
"small"
placeholder=
"请输入内容"
class=
"input-with-select"
>
<el-button
slot=
"append"
>
单
</el-button>
</el-input>
<el-checkbox
@
change=
"goodChange(BuyOrderNumState,2)"
style=
"margin-left:10px"
v-model=
"BuyOrderNumState"
>
不限制
</el-checkbox>
</el-form-item>
</el-form-item>
<
template
v-if=
"plszMsg.Type==9"
>
<el-form-item
label=
"积分赠送"
>
<el-tooltip
class=
"item"
effect=
"dark"
placement=
"top"
style=
"position: absolute;left: -10px;top:12px"
>
<div
slot=
"content"
>
用户购物赠送的积分, 如果不填写或填写0,则默认为不赠送积分
<br
/>
如果为百分比则为按成交价格的比例计算积分
<br
/>
如: 购买2件,设置10 积分, 不管成交价格是多少, 则购买后获得20积分
<br
/>
如: 购买2件,设置10%积分, 成交价格2 * 200= 400, 则购买后获得 40 积分(400*10%)
<br
/>
</div>
<i
class=
"el-tooltip el-icon-info"
></i>
</el-tooltip>
<el-input
v-model=
"plszMsg.IntegralPresent"
style=
"width:670px;margin-left:15px"
type=
"number"
min=
"1"
size=
"small"
placeholder=
"请输入内容"
class=
"input-with-select"
>
<el-button
slot=
"append"
>
分
<el-radio
v-model=
"plszMsg.IntegralPresentType"
:label=
"2"
>
固定值
</el-radio>
<el-radio
v-model=
"plszMsg.IntegralPresentType"
:label=
"1"
>
百分比
</el-radio>
</el-button>
</el-input>
</el-form-item>
<el-form-item
label=
"积分抵扣"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"如果设置0,则不支持积分抵扣 如果带%则为按成交价格的比例计算抵扣多少元"
placement=
"top"
style=
"position: absolute;left: -10px;top:12px"
>
<i
class=
"el-tooltip el-icon-info"
></i>
</el-tooltip>
<el-input
v-model=
"plszMsg.PointsDeduction"
style=
"width:670px;margin-left:15px"
type=
"number"
min=
"1"
size=
"small"
placeholder=
"请输入内容"
class=
"input-with-select"
>
<template
slot=
"prepend"
>
最多抵扣
</
template
>
<el-button
slot=
"append"
>
分
<el-radio
v-model=
"plszMsg.PointsDeductionType"
:label=
"2"
>
固定值
</el-radio>
<el-radio
v-model=
"plszMsg.PointsDeductionType"
:label=
"1"
>
百分比
</el-radio>
</el-button>
</el-input>
</el-form-item>
<el-form-item
label-width=
"110px"
>
<el-checkbox
v-model=
"plszMsg.IsMultipleDeduction"
:true-label=
"1"
:false-label=
"2"
>
允许多件抵扣
</el-checkbox>
</el-form-item>
</template>
<el-form-item
v-if=
"plszMsg.Type==10"
label-width=
"160px"
label=
"是否加入快速购买"
>
<el-switch
v-model=
"plszMsg.IsQuickBuy"
active-color=
"#409EFF"
:active-value=
"1"
:inactive-value=
"0"
>
</el-switch>
</el-form-item>
<el-form-item
class=
"spmy"
v-if=
"plszMsg.Type==11"
label-width=
"160px"
label=
"是否加入商品面议"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"如果开启面议,则商品无法在线支付"
placement=
"top"
style=
"position: absolute;left: -22px;top:12px"
>
<i
class=
"el-tooltip el-icon-info"
></i>
</el-tooltip>
<el-switch
v-model=
"plszMsg.IsGoodsNegotiable"
active-color=
"#409EFF"
:active-value=
"1"
:inactive-value=
"0"
>
</el-switch>
</el-form-item>
<el-form-item
class=
"spmy"
v-if=
"plszMsg.Type==12"
label-width=
"160px"
label=
"供应商"
>
<el-select
class=
"w150"
style=
"margin-right: 10px;"
v-model=
"plszMsg.SupplierId"
size=
"small"
placeholder=
"请选择"
@
change=
'changeSupplier'
>
<el-option
v-for=
"item in SupplierList"
:key=
"item.ID"
:label=
"item.Name"
:value=
"item.ID"
>
</el-option>
</el-select>
</el-form-item>
</el-form>
</div>
</div>
<span
slot=
"footer"
class=
"dialog-footer"
>
<el-button
size=
"small"
@
click=
"isShowBatchEdit = false"
>
取 消
</el-button>
<el-button
@
click=
"batchSetting"
size=
"small"
type=
"primary"
>
确 定
</el-button>
</span>
</el-dialog>
<!-- 选择运费 -->
<el-dialog
title=
"选择运费"
top=
"2%"
:modal=
"false"
:modal-append-to-body=
'false'
:visible
.
sync=
"isShowFreight"
width=
"25%"
>
<div>
<el-radio-group
v-model=
"val"
>
<el-radio
@
change=
"chooseFreight"
class=
"yfradio"
v-for=
"(item,index) in freightRuleList"
:key=
"index"
:label=
"item"
>
{{item.RulesName}}
</el-radio>
</el-radio-group>
</div>
<span
slot=
"footer"
class=
"dialog-footer"
>
<el-button
size=
"small"
@
click=
"isShowFreight = false,ruleSelect={},plszMsg.FreightId=0"
>
取 消
</el-button>
<el-button
size=
"small"
@
click=
"isShowFreight = false"
type=
"primary"
>
确 定
</el-button>
</span>
</el-dialog>
</div>
</template>
<
script
>
export
default
{
name
:
"quickBuy"
,
data
()
{
return
{
isShowFreight
:
false
,
//是否显示运费设置弹窗
isShowBatchEdit
:
false
,
//是否显示批量设置弹窗
val
:
''
,
dateList
:
[],
//查询时间段
activeName
:
'first'
,
msg
:
{
pageIndex
:
1
,
pageSize
:
15
,
Name
:
''
,
GoodsStatus
:
0
,
IsSelectSellOut
:
0
,
CategoryIds
:
''
,
Id
:
''
,
StartTime
:
''
,
EndTime
:
''
,
OrderBy
:
0
,
},
total
:
0
,
tableData
:
[],
//分类树默认属性
defaultProps
:
{
children
:
'ChildList'
,
label
:
'Name'
},
loading
:
false
,
//供应商列表
SupplierList
:
[],
addMsg
:
{
Id
:
0
,
Sort
:
''
,
Name
:
''
,
IsDefault
:
1
,
Remark
:
''
,
UpdateType
:
1
,
},
rules
:
{
CategoryIdNew
:
[{
required
:
true
,
message
:
'分类不能为空'
,
trigger
:
'change'
}],
Sort
:
[{
required
:
true
,
message
:
'请输入排序'
,
trigger
:
'blur'
}],
},
categoryTreeData
:
[],
//分类树形表
GoodsIds
:
[],
//列表选中的商品编号
plszMsg
:
{
GoodsIds
:
''
,
Type
:
7
,
FreightId
:
0
,
LimitBuyGoodsNum
:
-
1
,
LimitBuyOrderNum
:
-
1
,
IntegralPresent
:
0
,
IntegralPresentType
:
2
,
PointsDeduction
:
0
,
PointsDeductionType
:
2
,
IsMultipleDeduction
:
2
,
IsQuickBuy
:
2
,
IsGoodsNegotiable
:
2
,
SupplierId
:
''
},
freightRuleList
:
[],
//运费规则列表
ruleSelect
:
{},
keepGoodsIds
:
''
,
BuyGoodsNumState
:
true
,
BuyOrderNumState
:
true
,
hpState
:
0
,
FxState
:
0
,
chooseCategroyArray
:
[],
showCategoryName
:
""
,
}
},
created
()
{
this
.
getList
();
this
.
getTree
();
this
.
getRule
();
this
.
getHpState
();
this
.
getFxState
();
this
.
getSupplierList
()
//获取供应商
},
methods
:
{
//商品分类下拉框改变
selectChange
(
e
)
{
var
arrNew
=
[];
var
dataLength
=
this
.
chooseCategroyArray
.
length
;
var
eleng
=
e
.
length
;
for
(
let
i
=
0
;
i
<
dataLength
;
i
++
)
{
for
(
let
j
=
0
;
j
<
eleng
;
j
++
)
{
if
(
e
[
j
]
===
this
.
chooseCategroyArray
[
i
].
Name
)
{
arrNew
.
push
(
this
.
chooseCategroyArray
[
i
])
}
}
}
this
.
$refs
.
tree
.
setCheckedNodes
(
arrNew
);
//设置勾选的值
this
.
getList
();
},
//商品分类选中
categoryCheckChange
()
{
let
res
=
this
.
$refs
.
tree
.
getCheckedNodes
(
true
,
true
);
let
arrLabel
=
[];
let
arr
=
[];
res
.
forEach
(
item
=>
{
arrLabel
.
push
(
item
.
Name
);
arr
.
push
(
item
);
});
this
.
chooseCategroyArray
=
arr
;
this
.
showCategoryName
=
arrLabel
;
this
.
getList
();
},
//获取是否开启和平返佣
getHpState
()
{
this
.
apipost
(
"/api/user/GetHpDistributorIsEnabled"
,
{},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
hpState
=
res
.
data
.
data
;
}
})
},
//是否开启粉象返佣
getFxState
()
{
this
.
apipost
(
"/api/user/GetIsEnableFXDistributorGrade"
,
{},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
FxState
=
res
.
data
.
data
;
}
})
},
goodChange
(
val
,
num
)
{
if
(
!
val
)
{
if
(
num
==
1
)
{
this
.
plszMsg
.
LimitBuyGoodsNum
=
0
;
}
else
if
(
num
==
2
)
{
this
.
plszMsg
.
LimitBuyOrderNum
=
0
;
}
}
},
//商品导出
Export
()
{
let
msg
=
this
.
msg
;
if
(
msg
.
Id
==
''
)
{
msg
.
Id
=
0
}
msg
=
JSON
.
parse
(
JSON
.
stringify
(
msg
));
msg
.
pageSize
=
999
;
this
.
GetLocalFile
(
"/api/product/GetProductGoodsListToExcel"
,
msg
,
"商品列表.xls"
);
},
//批量设置保存
batchSetting
()
{
if
(
this
.
plszMsg
.
Type
==
7
)
{
}
if
(
this
.
plszMsg
.
Type
==
8
)
{
if
(
this
.
plszMsg
.
BuyGoodsNumState
)
{
this
.
plszMsg
.
LimitBuyGoodsNum
=
-
1
}
if
(
this
.
plszMsg
.
BuyOrderNumState
)
{
this
.
plszMsg
.
LimitBuyOrderNum
=
-
1
}
}
let
mall_userInfo
=
JSON
.
parse
(
localStorage
.
mall_userInfo
)
if
(
mall_userInfo
.
TenantId
==
1
&&
mall_userInfo
.
MallBaseId
==
1
)
{
if
(
this
.
plszMsg
.
SupplierId
==
''
)
{
this
.
Error
(
"请选择供应商!"
);
return
}
else
{
this
.
commonSet
(
this
.
plszMsg
);
}
}
else
{
if
(
this
.
plszMsg
.
SupplierId
==
''
)
{
this
.
plszMsg
.
SupplierId
=
0
this
.
commonSet
(
this
.
plszMsg
)
}
else
{
this
.
commonSet
(
this
.
plszMsg
);
}
}
},
//显示批量设置弹窗
plsetBtn
()
{
if
(
this
.
GoodsIds
.
length
==
0
)
{
this
.
Error
(
"请先勾选要设置的商品!"
);
return
;
}
let
idList
=
[];
this
.
GoodsIds
.
forEach
(
item
=>
{
idList
.
push
(
item
.
Id
)
})
this
.
keepGoodsIds
=
idList
.
join
(
','
);
this
.
plszMsg
.
GoodsIds
=
this
.
keepGoodsIds
;
this
.
plszMsg
.
SupplierId
=
''
this
.
isShowBatchEdit
=
true
;
},
ClearSelect
(
type
)
{
this
.
plszMsg
=
{
GoodsIds
:
this
.
keepGoodsIds
,
Type
:
type
,
FreightId
:
0
,
LimitBuyGoodsNum
:
-
1
,
LimitBuyOrderNum
:
-
1
,
IntegralPresent
:
0
,
IntegralPresentType
:
2
,
PointsDeduction
:
0
,
PointsDeductionType
:
2
,
IsMultipleDeduction
:
2
,
IsQuickBuy
:
2
,
IsGoodsNegotiable
:
2
,
SupplierId
:
''
}
},
//运费选中
chooseFreight
(
val
)
{
this
.
ruleSelect
=
val
;
this
.
plszMsg
.
FreightId
=
val
.
ID
;
},
//表格选中
tableSelect
(
val
)
{
this
.
GoodsIds
=
val
;
},
// 上架 下架 删除
tableSet
(
num
)
{
if
(
this
.
GoodsIds
.
length
==
0
)
{
this
.
Error
(
"请先勾选要设置的商品!"
);
return
;
}
let
idList
=
[];
this
.
GoodsIds
.
forEach
(
item
=>
{
idList
.
push
(
item
.
Id
)
})
let
GoodsIds
=
idList
.
join
(
','
);
let
msg
=
{
GoodsIds
:
GoodsIds
,
Type
:
num
,
}
let
str
=
""
;
if
(
num
==
4
)
{
str
=
"批量上架,是否继续"
;
}
if
(
num
==
5
)
{
str
=
"批量下架,是否继续"
;
}
if
(
num
==
6
)
{
str
=
"是否确认删除选中的商品?"
;
}
let
that
=
this
;
that
.
$confirm
(
str
,
'提示'
,
{
confirmButtonText
:
'确定'
,
cancelButtonText
:
'取消'
,
type
:
'warning'
}).
then
(()
=>
{
this
.
commonSet
(
msg
);
}).
catch
(()
=>
{});
},
Edit
(
row
,
num
)
{
let
editMsg
=
{
GoodsIds
:
row
.
Id
,
Type
:
num
,
Sort
:
row
.
SortNew
,
GoodsName
:
row
.
NameNew
,
IsQuickBuy
:
row
.
IsQuickBuy
};
this
.
commonSet
(
editMsg
)
},
commonSet
(
data
)
{
this
.
apipost
(
'/api/product/SetProductGoodsQuickUpdate'
,
data
,
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
getList
();
this
.
Success
(
res
.
data
.
message
)
this
.
isShowBatchEdit
=
false
;
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
null
);
},
//清空查询条件
Clearconditions
()
{
this
.
msg
.
Name
=
''
;
this
.
msg
.
CategoryIds
=
''
;
this
.
dateList
=
[];
this
.
getList
();
},
//分类切换
handleClick
(
val
)
{
let
dataId
=
val
.
$attrs
.
dataId
;
if
(
dataId
==
0
)
{
this
.
msg
.
GoodsStatus
=
0
;
this
.
msg
.
IsSelectSellOut
=
0
;
}
if
(
dataId
==
1
)
{
this
.
msg
.
GoodsStatus
=
1
;
this
.
msg
.
IsSelectSellOut
=
0
;
}
if
(
dataId
==
2
)
{
this
.
msg
.
GoodsStatus
=
2
;
this
.
msg
.
IsSelectSellOut
=
0
;
}
if
(
dataId
==
3
)
{
this
.
msg
.
GoodsStatus
=
0
;
this
.
msg
.
IsSelectSellOut
=
1
;
}
this
.
msg
.
pageIndex
=
1
this
.
getList
();
},
//删除商品
Delete
(
item
)
{
let
that
=
this
;
that
.
Confirm
(
'是否删除'
,
function
()
{
that
.
apipost
(
'/api/product/DelProcudtGoodsInfo'
,
{
GoodsId
:
item
.
Id
},
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
that
.
getList
();
that
.
Success
(
res
.
data
.
message
)
}
else
{
that
.
Error
(
res
.
data
.
message
);
}
},
null
);
})
},
//分页切换
handleCurrentChange
(
val
)
{
this
.
msg
.
pageIndex
=
val
;
this
.
getList
();
},
//获取商品列表
getList
()
{
this
.
msg
.
CategoryIds
=
""
;
var
tempCategory
=
""
;
if
(
this
.
chooseCategroyArray
&&
this
.
chooseCategroyArray
.
length
>
0
)
{
this
.
chooseCategroyArray
.
forEach
(
item
=>
{
tempCategory
+=
item
.
Id
+
","
;
})
}
this
.
msg
.
CategoryIds
=
tempCategory
.
substring
(
0
,
tempCategory
.
lastIndexOf
(
','
));
if
(
this
.
dateList
&&
this
.
dateList
.
length
>
0
)
{
this
.
msg
.
StartTime
=
this
.
dateList
[
0
];
this
.
msg
.
EndTime
=
this
.
dateList
[
1
];
}
else
{
this
.
msg
.
StartTime
=
''
;
this
.
msg
.
EndTime
=
''
;
}
let
msg
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
msg
))
if
(
msg
.
Id
==
''
)
{
msg
.
Id
=
0
;
}
this
.
loading
=
true
;
this
.
apipost
(
"/api/product/GetProductGoodsPageList"
,
msg
,
res
=>
{
this
.
loading
=
false
;
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
total
=
res
.
data
.
data
.
count
;
let
pageData
=
res
.
data
.
data
.
pageData
;
pageData
.
forEach
(
item
=>
{
item
.
SortNew
=
item
.
Sort
;
item
.
NameNew
=
item
.
Name
;
item
.
editsort
=
false
;
item
.
editname
=
false
;
})
this
.
tableData
=
pageData
;
}
})
},
//获取商品分类
getTree
()
{
let
msg1
=
{
Id
:
0
,
Name
:
''
,
Tier
:
0
,
ParentId
:
0
,
Enabled
:
1
,
IsShow
:
1
,
}
this
.
apipost
(
"/api/product/GetProductCategoryTreeList"
,
msg1
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
let
pageData
=
res
.
data
.
data
;
this
.
categoryTreeData
=
pageData
;
}
})
},
getRule
()
{
let
qRuleMsg
=
{
pageIndex
:
1
,
pageSize
:
999
,
RulesName
:
''
,
}
this
.
apipost
(
"/api/MallBase/GetLogisticsRulesPage"
,
qRuleMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
freightRuleList
=
res
.
data
.
data
.
pageData
;
}
})
},
//
changeSupplier
(
val
)
{
},
//获取供应商列表
getSupplierList
()
{
this
.
apipost
(
"/api/Supplier/GetSupplierAllList"
,
{},
res
=>
{
this
.
loading
=
false
;
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
SupplierList
=
res
.
data
.
data
;
}
});
},
getSort
(
val
)
{
//列表的升序降序
if
(
val
.
prop
==
'Id'
)
{
if
(
val
.
order
==
'ascending'
)
{
this
.
msg
.
OrderBy
=
1
}
else
if
(
val
.
order
==
'descending'
)
{
this
.
msg
.
OrderBy
=
2
}
else
{
this
.
msg
.
OrderBy
=
0
}
}
else
if
(
val
.
prop
==
'address'
)
{
if
(
val
.
order
==
'ascending'
)
{
this
.
msg
.
OrderBy
=
3
}
else
if
(
val
.
order
==
'descending'
)
{
this
.
msg
.
OrderBy
=
4
}
else
{
this
.
msg
.
OrderBy
=
0
}
}
else
if
(
val
.
prop
==
'SellingPrice'
)
{
if
(
val
.
order
==
'ascending'
)
{
this
.
msg
.
OrderBy
=
5
}
else
if
(
val
.
order
==
'descending'
)
{
this
.
msg
.
OrderBy
=
6
}
else
{
this
.
msg
.
OrderBy
=
0
}
}
else
if
(
val
.
prop
==
'InventoryNum'
)
{
if
(
val
.
order
==
'ascending'
)
{
this
.
msg
.
OrderBy
=
7
}
else
if
(
val
.
order
==
'descending'
)
{
this
.
msg
.
OrderBy
=
8
}
else
{
this
.
msg
.
OrderBy
=
0
}
}
this
.
getList
()
},
//新窗口跳转
goGoodsEdit
(
Id
)
{
let
routeData
=
this
.
$router
.
resolve
({
name
:
'serviceProductEdit'
,
query
:
{
GoodsId
:
Id
,
hpState
:
this
.
hpState
,
FxState
:
this
.
FxState
}
});
window
.
open
(
routeData
.
href
,
"_blank"
);
}
},
};
</
script
>
<
style
>
.plxg
.spmy
.el-form-item__label
{
padding-right
:
26px
;
}
.yfradio
{
display
:
block
;
padding
:
10px
;
}
.plxg
.batch-div-active
{
background-color
:
#e2e2e2
;
}
.plxg
.batch-box-left
div
{
padding
:
5px
0
;
margin
:
5px
0
;
cursor
:
pointer
;
-webkit-border-radius
:
5px
;
-moz-border-radius
:
5px
;
border-radius
:
5px
;
}
.plxg
.batch-box-left
{
width
:
120px
;
border-right
:
1px
solid
#e2e2e2
;
padding
:
0
20px
;
}
.plxg
.el-dialog__body
{
padding-top
:
10px
!important
;
}
.plxg
.absoSpan
{
position
:
absolute
;
top
:
22px
;
left
:
100px
;
}
.app-add-cat
.el-checkbox-group
{
font-size
:
14px
!important
;
}
.app-add-cat
.el-checkbox
{
margin-right
:
0
;
}
.app-add-cat
.el-dialog__body
{
padding
:
10px
20px
!important
;
}
.app-add-cat
.tag-box
.tag-item
{
margin-right
:
5px
;
}
.app-add-cat
.tag-box
{
margin
:
20px
0
;
}
.app-add-cat
.app-goods-cat-list
.active
{
background
:
#FAFAFA
;
}
.app-add-cat
.app-goods-cat-list
.cat-item
{
cursor
:
pointer
;
padding
:
5px
10px
;
}
.app-add-cat
.app-goods-cat-list
{
border
:
1px
solid
#E8EAEE
;
border-radius
:
5px
;
margin-top
:
-5px
;
padding
:
10px
0
;
overflow
:
scroll
;
height
:
400px
;
}
.serviceProduct
.vue-line-clamp
{
display
:
block
;
display
:
-webkit-box
;
-webkit-box-orient
:
vertical
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
}
.serviceProduct
.content
{
background
:
#fff
;
margin-top
:
10px
;
padding
:
20px
;
box-sizing
:
border-box
;
}
</
style
>
src/plug/index.js
View file @
9b8b1645
...
...
@@ -59,9 +59,9 @@ export default {
// domainUrl = "http://192.168.1.27:8200";
//domainUrl = "http://192.168.1.13:8088";
domainUrl
=
"http://192.168.1.2
1
"
;
domainUrl
=
"http://192.168.1.2
7:8200
"
;
//
domainUrl = "https://localhost:5001";
domainUrl
=
"https://localhost:5001"
;
let
vtUploadUrl
=
"http://192.168.1.214:8120"
;
let
vtViewUrl
=
"http://192.168.1.214:8130"
;
...
...
src/router/index.js
View file @
9b8b1645
...
...
@@ -374,6 +374,12 @@ export default new Router({
name
:
'osedgrantCouPon'
,
component
:
resolve
=>
require
([
'@/components/offlineService/osedgrantCouPon'
],
resolve
),
},
//线下服务产品列表
{
path
:
'/serviceProductList'
,
name
:
'serviceProductList'
,
component
:
resolve
=>
require
([
'@/components/offlineService/serviceProductList'
],
resolve
),
},
]
},
...
...
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