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
9a757e36
Commit
9a757e36
authored
Sep 15, 2020
by
黄奎
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
页面修改
parent
199dc0dd
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
811 additions
and
864 deletions
+811
-864
goodsList.vue
src/components/CommodityMan/goodsList.vue
+811
-864
No files found.
src/components/CommodityMan/goodsList.vue
View file @
9a757e36
<
template
>
<div
class=
"goodsList"
>
<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('goodsListEdit',
{hpState:hpState,FxState:FxState})" style="float:right;margin-top: -5px;margin-left:20px;" size="small" type="primary">添加商品
</el-button>
<!--
<el-button
style=
"float:right;margin-top: -5px;margin-left:20px;"
size=
"small"
type=
"primary"
>
更新所有商品销量
</el-button>
-->
商品列表
<el-button
@
click=
"Export"
style=
"float:right;margin-top: -5px;margin-left:20px;"
size=
"small"
type=
"primary"
>
商品导出
</el-button>
<el-button
@
click=
"CommonJump('goodsListEdit',
{hpState:hpState,FxState:FxState})"
style="float:right;margin-top: -5px;margin-left:20px;" size="small" type="primary">添加商品
</el-button>
<!--
<el-button
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>
<el-button
@
click=
"flDig=true"
style=
"margin-right:10px;"
size=
"small"
>
分类筛选
</el-button>
<el-button
v-show=
"checkList.length>0"
@
click=
"checkList=[],msg.CategoryIds='',msg.pageIndex=1,getList()"
type=
"danger"
style=
"margin-right:10px;"
size=
"small"
>
清除分类
</el-button>
<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>
<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>
<el-button
@
click=
"flDig=true"
style=
"margin-right:10px;"
size=
"small"
>
分类筛选
</el-button>
<el-button
v-show=
"checkList.length>0"
@
click=
"checkList=[],msg.CategoryIds='',msg.pageIndex=1,getList()"
type=
"danger"
style=
"margin-right:10px;"
size=
"small"
>
清除分类
</el-button>
<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
style=
"margin-top:15
px"
>
<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
class=
"searchInput"
style=
"width:250
px"
>
<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>
<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>
<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>
</
template
>
</el-table-column>
<el-table-column
prop=
"address"
width=
"300"
label=
"商品名称"
>
<
template
slot-scope=
"scope"
>
<div
flex=
"box:first"
>
<img
style=
"width:50px;height:50px;margin-right:1px"
:src=
"scope.row.CoverImage"
alt=
""
>
<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>
</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>
<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
slot-scope=
"scope"
>
<span
>
{{
scope
.
row
.
GoodsBuyNum
}}
+
{{
scope
.
row
.
SalesNum
}}
</span>
<
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
>
</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>
</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=
"app-add-cat"
title=
"选择分类"
:visible
.
sync=
"flDig"
width=
"1100px"
>
<el-row>
<el-col
:span=
"8"
style=
"padding:0 10px;box-sizing:border-box"
>
<h3
style=
"padding:15px 0"
>
一级分类
</h3>
<div
class=
"app-goods-cat-list active"
>
<el-checkbox-group
v-model=
"checkList"
>
<div
v-for=
"(item,index) in fenleiData"
:key=
"index"
flex=
"dir:left box:first"
class=
"cat-item"
>
<el-checkbox
:label=
"item"
>
<span
style=
"display: none;"
>
{{item.Name}}
</span>
</el-checkbox>
<div
flex=
"box:last cross:center"
>
<span>
{{item.Name}}
</span>
<i
v-if=
"item.ChildList.length>0"
@
click=
"getChild2(item.ChildList)"
class=
"el-icon-arrow-right"
></i>
</div>
</div>
</el-checkbox-group>
<el-row>
<el-col
:span=
"8"
style=
"padding:0 10px;box-sizing:border-box"
>
<h3
style=
"padding:15px 0"
>
一级分类
</h3>
<div
class=
"app-goods-cat-list active"
>
<el-checkbox-group
v-model=
"checkList"
>
<div
v-for=
"(item,index) in fenleiData"
:key=
"index"
flex=
"dir:left box:first"
class=
"cat-item"
>
<el-checkbox
:label=
"item"
>
<span
style=
"display: none;"
>
{{item.Name}}
</span>
</el-checkbox>
<div
flex=
"box:last cross:center"
>
<span>
{{item.Name}}
</span>
<i
v-if=
"item.ChildList.length>0"
@
click=
"getChild2(item.ChildList)"
class=
"el-icon-arrow-right"
></i>
</div>
</el-col>
<el-col
v-show=
"childList2.length>0"
:span=
"8"
style=
"padding:0 10px;box-sizing:border-box"
>
<h3
style=
"padding:15px 0"
>
二级分类
</h3>
<div
class=
"app-goods-cat-list active"
>
<el-checkbox-group
v-model=
"checkList"
>
<div
v-for=
"(item,index) in childList2"
:key=
"index"
flex=
"dir:left box:first"
class=
"cat-item"
>
<el-checkbox
:label=
"item"
>
<span
style=
"display: none;"
>
{{item.Name}}
</span>
</el-checkbox>
<div
flex=
"box:last cross:center"
>
<span>
{{item.Name}}
</span>
<i
v-if=
"item.ChildList.length>0"
@
click=
"getChild3(item.ChildList)"
class=
"el-icon-arrow-right"
></i>
</div>
</div>
</el-checkbox-group>
</div>
</el-checkbox-group>
</div>
</el-col>
<el-col
v-show=
"childList2.length>0"
:span=
"8"
style=
"padding:0 10px;box-sizing:border-box"
>
<h3
style=
"padding:15px 0"
>
二级分类
</h3>
<div
class=
"app-goods-cat-list active"
>
<el-checkbox-group
v-model=
"checkList"
>
<div
v-for=
"(item,index) in childList2"
:key=
"index"
flex=
"dir:left box:first"
class=
"cat-item"
>
<el-checkbox
:label=
"item"
>
<span
style=
"display: none;"
>
{{item.Name}}
</span>
</el-checkbox>
<div
flex=
"box:last cross:center"
>
<span>
{{item.Name}}
</span>
<i
v-if=
"item.ChildList.length>0"
@
click=
"getChild3(item.ChildList)"
class=
"el-icon-arrow-right"
></i>
</div>
</el-col>
<el-col
v-show=
"childList3.length>0"
:span=
"8"
style=
"padding:0 10px;box-sizing:border-box"
>
<h3
style=
"padding:15px 0"
>
三级分类
</h3>
<div
class=
"app-goods-cat-list active"
>
<el-checkbox-group
v-model=
"checkList"
>
<div
v-for=
"(item,index) in childList3"
:key=
"index"
flex=
"dir:left box:first"
class=
"cat-item"
>
<el-checkbox
:label=
"item"
>
<span
style=
"display: none;"
>
{{item.Name}}
</span>
</el-checkbox>
<div
flex=
"box:last cross:center"
>
<span>
{{item.Name}}
</span>
<i
class=
"el-icon-arrow-right"
></i>
</div>
</div>
</el-checkbox-group>
</div>
</el-checkbox-group>
</div>
</el-col>
<el-col
v-show=
"childList3.length>0"
:span=
"8"
style=
"padding:0 10px;box-sizing:border-box"
>
<h3
style=
"padding:15px 0"
>
三级分类
</h3>
<div
class=
"app-goods-cat-list active"
>
<el-checkbox-group
v-model=
"checkList"
>
<div
v-for=
"(item,index) in childList3"
:key=
"index"
flex=
"dir:left box:first"
class=
"cat-item"
>
<el-checkbox
:label=
"item"
>
<span
style=
"display: none;"
>
{{item.Name}}
</span>
</el-checkbox>
<div
flex=
"box:last cross:center"
>
<span>
{{item.Name}}
</span>
<i
class=
"el-icon-arrow-right"
></i>
</div>
</el-col>
</el-row>
<div
class=
"tag-box"
>
<el-tag
@
close=
"exitCheck(item)"
v-for=
"(item,index) in checkList"
:key=
"index"
type=
"warning"
closable
style=
"margin-right:5px"
>
{{item.Name}}
</el-tag>
</div>
<span
slot=
"footer"
class=
"dialog-footer"
>
<el-button
size=
"small"
@
click=
"flDig = false"
>
取 消
</el-button>
<el-button
@
click=
"chooseFl"
size=
"small"
type=
"primary"
>
确 定
</el-button>
</span>
</div>
</el-checkbox-group>
</div>
</el-col>
</el-row>
<div
class=
"tag-box"
>
<el-tag
@
close=
"exitCheck(item)"
v-for=
"(item,index) in checkList"
:key=
"index"
type=
"warning"
closable
style=
"margin-right:5px"
>
{{item.Name}}
</el-tag>
</div>
<span
slot=
"footer"
class=
"dialog-footer"
>
<el-button
size=
"small"
@
click=
"flDig = false"
>
取 消
</el-button>
<el-button
@
click=
"chooseFl"
size=
"small"
type=
"primary"
>
确 定
</el-button>
</span>
</el-dialog>
<!-- 批量修改 -->
<el-dialog
custom-class=
"plxg"
title=
"批量修改"
:visible
.
sync=
"plDig"
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=
"chooseyfDig=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 options"
:key=
"item.ID"
:label=
"item.Name"
:value=
"item.ID"
>
</el-option>
</el-select>
</el-form-item>
</el-form>
</div>
<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=
"chooseyfDig=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 options"
: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=
"plDig = false"
>
取 消
</el-button>
<el-button
@
click=
"plsetOk"
size=
"small"
type=
"primary"
>
确 定
</el-button>
</span>
</el-dialog>
<!-- 选择运费 -->
<el-dialog
title=
"选择运费"
top=
"2%"
:modal=
"false"
:modal-append-to-body=
'false'
:visible
.
sync=
"chooseyfDig"
width=
"25%"
>
<div>
<el-radio-group
v-model=
"val"
>
<el-radio
@
change=
"YfSelect"
class=
"yfradio"
v-for=
"(item,index) in ruleList"
:key=
"index"
:label=
"item"
>
{{item.RulesName}}
</el-radio>
</el-radio-group>
</div>
<span
slot=
"footer"
class=
"dialog-footer"
>
<el-button
size=
"small"
@
click=
"chooseyfDig = false,ruleSelect={},plszMsg.FreightId=0"
>
取 消
</el-button>
<el-button
size=
"small"
@
click=
"chooseyfDig = false"
type=
"primary"
>
确 定
</el-button>
</span>
<el-dialog
title=
"选择运费"
top=
"2%"
:modal=
"false"
:modal-append-to-body=
'false'
:visible
.
sync=
"chooseyfDig"
width=
"25%"
>
<div>
<el-radio-group
v-model=
"val"
>
<el-radio
@
change=
"YfSelect"
class=
"yfradio"
v-for=
"(item,index) in ruleList"
:key=
"index"
:label=
"item"
>
{{item.RulesName}}
</el-radio>
</el-radio-group>
</div>
<span
slot=
"footer"
class=
"dialog-footer"
>
<el-button
size=
"small"
@
click=
"chooseyfDig = false,ruleSelect={},plszMsg.FreightId=0"
>
取 消
</el-button>
<el-button
size=
"small"
@
click=
"chooseyfDig = false"
type=
"primary"
>
确 定
</el-button>
</span>
</el-dialog>
</div>
</template>
<
script
>
export
default
{
export
default
{
name
:
"quickBuy"
,
data
(){
return
{
chooseyfDig
:
false
,
plDig
:
false
,
flDig
:
false
,
val
:
''
,
dateList
:[],
activeName
:
'first'
,
editState
:
false
,
msg
:{
pageIndex
:
1
,
pageSize
:
15
,
Name
:
''
,
GoodsStatus
:
0
,
IsSelectSellOut
:
0
,
CategoryIds
:
''
,
Id
:
''
,
StartTime
:
''
,
EndTime
:
''
,
OrderBy
:
0
,
},
total
:
0
,
tableData
:[],
loading
:
false
,
options
:[],
addMsg
:{
Id
:
0
,
Sort
:
''
,
Name
:
''
,
IsDefault
:
1
,
Remark
:
''
,
UpdateType
:
1
,
},
rules
:{
CategoryIdNew
:
[
{
required
:
true
,
message
:
'分类不能为空'
,
trigger
:
'change'
}
],
Sort
:
[
{
required
:
true
,
message
:
'请输入排序'
,
trigger
:
'blur'
}
],
},
fenleiData
:[],
checkList
:[],
childList2
:[],
childList3
:[],
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
:
''
},
ruleList
:[],
ruleSelect
:{},
keepGoodsIds
:
''
,
BuyGoodsNumState
:
true
,
BuyOrderNumState
:
true
,
hpState
:
0
,
FxState
:
0
}
},
created
(){
this
.
getList
();
this
.
getTree
();
this
.
getRule
();
this
.
getHpState
();
this
.
getFxState
();
this
.
getSupplierList
()
//获取供应商
},
methods
:{
//获取是否开启和平返佣
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"
);
},
plsetOk
(){
if
(
this
.
plszMsg
.
Type
==
7
){
// if(this.plszMsg.FreightId==0){
// this.Error("请选择运费规则");
// return;
// }
}
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
.
plDig
=
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
:
''
}
},
YfSelect
(
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
addMsg
=
{
GoodsIds
:
row
.
Id
,
Type
:
num
,
Sort
:
row
.
SortNew
,
GoodsName
:
row
.
NameNew
,
IsQuickBuy
:
row
.
IsQuickBuy
};
this
.
commonSet
(
addMsg
)
},
commonSet
(
addMsg
){
this
.
apipost
(
'/api/product/SetProductGoodsQuickUpdate'
,
addMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
getList
();
this
.
Success
(
res
.
data
.
message
)
this
.
plDig
=
false
;
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
null
);
},
chooseFl
(){
let
CategoryIds
=
[];
this
.
checkList
.
forEach
(
item
=>
{
CategoryIds
.
push
(
item
.
Id
)
})
this
.
msg
.
pageIndex
=
1
this
.
msg
.
CategoryIds
=
CategoryIds
.
join
(
","
);
this
.
getList
();
this
.
flDig
=
false
;
},
getChild3
(
ChildList
){
this
.
childList3
=
ChildList
;
},
getChild2
(
ChildList
){
this
.
childList2
=
ChildList
;
},
exitCheck
(
item
,
index
){
this
.
checkList
.
forEach
((
list
,
k
)
=>
{
if
(
list
.
Id
==
item
.
Id
){
this
.
checkList
.
splice
(
k
,
1
);
}
})
},
handleCheckChange
(
val
){
data
()
{
return
{
chooseyfDig
:
false
,
plDig
:
false
,
flDig
:
false
,
val
:
''
,
dateList
:
[],
activeName
:
'first'
,
editState
:
false
,
msg
:
{
pageIndex
:
1
,
pageSize
:
15
,
Name
:
''
,
GoodsStatus
:
0
,
IsSelectSellOut
:
0
,
CategoryIds
:
''
,
Id
:
''
,
StartTime
:
''
,
EndTime
:
''
,
OrderBy
:
0
,
},
Clearconditions
(){
this
.
msg
.
Name
=
''
;
this
.
msg
.
CategoryIds
=
''
;
this
.
dateList
=
[];
this
.
checkList
=
[];
this
.
getList
();
total
:
0
,
tableData
:
[],
loading
:
false
,
options
:
[],
addMsg
:
{
Id
:
0
,
Sort
:
''
,
Name
:
''
,
IsDefault
:
1
,
Remark
:
''
,
UpdateType
:
1
,
},
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
(
'是否删除?'
,
'提示'
,
{
confirmButtonText
:
'确定'
,
cancelButtonText
:
'取消'
,
type
:
'warning'
}).
then
(()
=>
{
this
.
apipost
(
'/api/product/DelProcudtGoodsInfo'
,{
GoodsId
:
item
.
Id
},
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
getList
();
this
.
Success
(
res
.
data
.
message
)
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
null
);
}).
catch
(()
=>
{
});
rules
:
{
CategoryIdNew
:
[{
required
:
true
,
message
:
'分类不能为空'
,
trigger
:
'change'
}],
Sort
:
[{
required
:
true
,
message
:
'请输入排序'
,
trigger
:
'blur'
}],
},
handleCurrentChange
(
val
)
{
this
.
msg
.
pageIndex
=
val
;
this
.
getList
();
fenleiData
:
[],
checkList
:
[],
childList2
:
[],
childList3
:
[],
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
:
''
},
getList
(){
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
.
fenleiData
=
pageData
;
}
})
},
getRule
(){
let
msg1
=
{
pageIndex
:
1
,
pageSize
:
999
,
RulesName
:
''
,
ruleList
:
[],
ruleSelect
:
{},
keepGoodsIds
:
''
,
BuyGoodsNumState
:
true
,
BuyOrderNumState
:
true
,
hpState
:
0
,
FxState
:
0
}
},
created
()
{
this
.
getList
();
this
.
getTree
();
this
.
getRule
();
this
.
getHpState
();
this
.
getFxState
();
this
.
getSupplierList
()
//获取供应商
},
methods
:
{
//获取是否开启和平返佣
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"
);
},
plsetOk
()
{
if
(
this
.
plszMsg
.
Type
==
7
)
{
// if(this.plszMsg.FreightId==0){
// this.Error("请选择运费规则");
// return;
// }
}
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
.
plDig
=
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
:
''
}
},
YfSelect
(
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
addMsg
=
{
GoodsIds
:
row
.
Id
,
Type
:
num
,
Sort
:
row
.
SortNew
,
GoodsName
:
row
.
NameNew
,
IsQuickBuy
:
row
.
IsQuickBuy
};
this
.
commonSet
(
addMsg
)
},
commonSet
(
addMsg
)
{
this
.
apipost
(
'/api/product/SetProductGoodsQuickUpdate'
,
addMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
getList
();
this
.
Success
(
res
.
data
.
message
)
this
.
plDig
=
false
;
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
this
.
apipost
(
"/api/MallBase/GetLogisticsRulesPage"
,
msg1
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
){
let
pageData
=
res
.
data
.
data
.
pageData
;
this
.
ruleList
=
pageData
;
}
},
null
);
},
chooseFl
()
{
let
CategoryIds
=
[];
this
.
checkList
.
forEach
(
item
=>
{
CategoryIds
.
push
(
item
.
Id
)
})
this
.
msg
.
pageIndex
=
1
this
.
msg
.
CategoryIds
=
CategoryIds
.
join
(
","
);
this
.
getList
();
this
.
flDig
=
false
;
},
getChild3
(
ChildList
)
{
this
.
childList3
=
ChildList
;
},
getChild2
(
ChildList
)
{
this
.
childList2
=
ChildList
;
},
exitCheck
(
item
,
index
)
{
this
.
checkList
.
forEach
((
list
,
k
)
=>
{
if
(
list
.
Id
==
item
.
Id
)
{
this
.
checkList
.
splice
(
k
,
1
);
}
})
},
handleCheckChange
(
val
)
{},
Clearconditions
()
{
this
.
msg
.
Name
=
''
;
this
.
msg
.
CategoryIds
=
''
;
this
.
dateList
=
[];
this
.
checkList
=
[];
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
(
'是否删除?'
,
'提示'
,
{
confirmButtonText
:
'确定'
,
cancelButtonText
:
'取消'
,
type
:
'warning'
}).
then
(()
=>
{
this
.
apipost
(
'/api/product/DelProcudtGoodsInfo'
,
{
GoodsId
:
item
.
Id
},
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
getList
();
this
.
Success
(
res
.
data
.
message
)
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
null
);
}).
catch
(()
=>
{
});
},
handleCurrentChange
(
val
)
{
this
.
msg
.
pageIndex
=
val
;
this
.
getList
();
},
getList
()
{
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
;
})
},
changeSupplier
(
val
)
{},
getSupplierList
(){
this
.
apipost
(
"/api/Supplier/GetSupplierAllList"
,
{},
res
=>
{
this
.
loading
=
false
;
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
options
=
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
:
'goodsListEdit'
,
query
:
{
GoodsId
:
Id
,
hpState
:
this
.
hpState
,
FxState
:
this
.
FxState
}
});
window
.
open
(
routeData
.
href
,
"_blank"
);
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
.
fenleiData
=
pageData
;
}
})
},
getRule
()
{
let
msg1
=
{
pageIndex
:
1
,
pageSize
:
999
,
RulesName
:
''
,
}
this
.
apipost
(
"/api/MallBase/GetLogisticsRulesPage"
,
msg1
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
let
pageData
=
res
.
data
.
data
.
pageData
;
this
.
ruleList
=
pageData
;
}
})
},
changeSupplier
(
val
)
{},
getSupplierList
()
{
this
.
apipost
(
"/api/Supplier/GetSupplierAllList"
,
{},
res
=>
{
this
.
loading
=
false
;
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
options
=
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
:
'goodsListEdit'
,
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
{
.plxg
.spmy
.el-form-item__label
{
padding-right
:
26px
;
}
.yfradio
{
display
:
block
;
padding
:
10px
;
}
.plxg
.batch-div-active
{
}
.plxg
.batch-div-active
{
background-color
:
#e2e2e2
;
}
.plxg
.batch-box-left
div
{
}
.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
{
}
.plxg
.batch-box-left
{
width
:
120px
;
border-right
:
1px
solid
#e2e2e2
;
padding
:
0
20px
;
}
.plxg
.el-dialog__body
{
padding-top
:
10px
!important
;
}
.plxg
.absoSpan
{
}
.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
{
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
{
}
.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
{
}
.app-add-cat
.tag-box
{
margin
:
20px
0
;
}
.app-add-cat
.app-goods-cat-list
.active
{
}
.app-add-cat
.app-goods-cat-list
.active
{
background
:
#FAFAFA
;
}
.app-add-cat
.app-goods-cat-list
.cat-item
{
}
.app-add-cat
.app-goods-cat-list
.cat-item
{
cursor
:
pointer
;
padding
:
5px
10px
;
}
.app-add-cat
.app-goods-cat-list
{
}
.app-add-cat
.app-goods-cat-list
{
border
:
1px
solid
#E8EAEE
;
border-radius
:
5px
;
margin-top
:
-5px
;
padding
:
10px
0
;
overflow
:
scroll
;
height
:
400px
;
}
.goodsList
.vue-line-clamp
{
}
.goodsList
.vue-line-clamp
{
display
:
block
;
display
:
-webkit-box
;
-webkit-box-orient
:
vertical
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
}
.goodsList
.content
{
}
.goodsList
.content
{
background
:
#fff
;
margin-top
:
10px
;
margin-top
:
10px
;
padding
:
20px
;
box-sizing
:
border-box
;
}
}
</
style
>
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