<template>
|
<div>
|
<list-condition-template ref="table" :form="listQuery" :formLabel="formLabel"
|
:tableData="tableData" :total="total"
|
@page-info-change="handlePageInfoChange">
|
<template slot="otherElement">
|
<el-col :span="24" :offset="0" class="buttonPosition">
|
<el-button size="mini" type="primary" @click="queryData">查询</el-button>
|
<el-button size="mini" @click="resetQuery">重置</el-button>
|
</el-col>
|
</template>
|
<template slot="operationSection">
|
<!-- <el-button size="mini" type="success" @click="addItem">新增</el-button> -->
|
</template>
|
<template slot="columns">
|
<el-table-column label="赠品名称" prop="spuName" show-overflow-tooltip>
|
</el-table-column>
|
<el-table-column label="赠品编码" prop="spuNum" show-overflow-tooltip>
|
</el-table-column>
|
<el-table-column label="赠品图片" prop="brandDesc">
|
<template slot-scope="scope">
|
<div v-viewer>
|
<el-tooltip placement="left" effect="light">
|
<div slot="content"><img :src="scope.row.imageUrl" width="100px" /></div>
|
<img :src="scope.row.imageUrl" />
|
</el-tooltip>
|
</div>
|
</template>
|
</el-table-column>
|
<el-table-column label="赠品类型" prop="giftType">
|
<template slot-scope="scope">
|
{{getGiftType(giftTypeArr,scope.row.giftType)}}
|
</template>
|
</el-table-column>
|
<el-table-column label="剩余库存" prop="spuStorage">
|
</el-table-column>
|
<el-table-column label="操作" :width="`${2 * $store.getters.colSize}px`">
|
<template slot-scope="scope">
|
<wly-btn @click="lookInfo(scope.row)">详情</wly-btn>
|
<wly-btn type="primary" @click="editInfo(scope.row)">编辑</wly-btn>
|
<!-- <wly-btn type="danger" @click="deleteItem(scope.row)">删除</wly-btn> -->
|
</template>
|
</el-table-column>
|
</template>
|
</list-condition-template>
|
<gift-info :show.sync="dialogForm.show" :row="dialogForm.row" :title="dialogForm.title">
|
</gift-info>
|
</div>
|
</template>
|
<script>
|
import giftPrdApi from '@/api/giftPrd'
|
import giftInfo from '@/views/giftMgt/info.vue'
|
import { getArrayLable } from '@/utils/getArrayLable'
|
import productListApi from '@/api/productmanagement/productList'
|
|
const giftTypeArr = [
|
{
|
id: 'GIFT',
|
name: '非卖品'
|
},
|
{
|
id: 'MATERIAL',
|
name: '物料'
|
},
|
{
|
id: 'DEPUTY_PROD',
|
name: '商品'
|
},
|
{
|
id: 'TASTING',
|
name: '品鉴'
|
}
|
]
|
export default {
|
components: { giftInfo },
|
data() {
|
return {
|
giftTypeArr,
|
formLabel: [
|
{
|
model: 'spuName',
|
label: '赠品名称',
|
type: 'input'
|
},
|
{
|
model: 'spuNum',
|
label: '赠品编码',
|
type: 'input',
|
rule: /[^\w]/g // 可输入数字字母
|
},
|
{
|
model: 'giftType',
|
label: '赠品类型',
|
type: 'select',
|
opts: giftTypeArr
|
}
|
],
|
listQuery: {
|
spuName: null,
|
isGift: '1',
|
spuNum: null,
|
giftType: null
|
},
|
tableData: [],
|
total: 0,
|
dialogForm: {
|
show: false,
|
title: null,
|
row: {}
|
},
|
dialogVisible: false,
|
form: {}
|
}
|
},
|
/**
|
* 数据变化后刷新列表
|
*/
|
activated() {
|
this.queryList(this.$refs.table.getPageInfo())
|
},
|
async mounted() {
|
const p = await this.findShopByMerchantId()
|
await this.saveUserShopRelation(p)
|
},
|
methods: {
|
/**
|
*查询用户所在店铺
|
*/
|
findShopByMerchantId() {
|
return new Promise(resolve => {
|
// 传入固定值:WLY
|
productListApi.findShopByMerchantId('WLY').then(res => {
|
if (res.data) {
|
resolve(res.data[0])
|
}
|
})
|
})
|
},
|
/**
|
* 进入用户所在店铺
|
*/
|
saveUserShopRelation(row) {
|
productListApi.saveUserShopRelation(row).then(res => {
|
if (res.data) { }
|
})
|
},
|
/**
|
* 获取赠品类型
|
*/
|
getGiftType(array, id) {
|
return getArrayLable(array, id)
|
},
|
// 删除
|
deleteItem(row) {
|
this.$confirm('删除赠品后该赠品无法进行选择赠送确定要删除吗', '删除', {
|
confirmButtonText: '确定',
|
cancelButtonText: '取消',
|
type: 'warning'
|
}).then(async() => {
|
try {
|
const res = await giftPrdApi.deleteItem([{
|
shopSpuId: row.shopSpuId
|
}])
|
if (res.code === '0') {
|
this.$message({
|
message: '删除成功',
|
type: 'success'
|
})
|
this.$refs.table.changeCondition() // 查询列表
|
}
|
} catch (error) {
|
}
|
})
|
},
|
/**
|
* '分页信息改变时查询列表
|
*/
|
handlePageInfoChange(pageInfo) {
|
this.queryList(pageInfo)
|
},
|
/**
|
* 重置
|
*/
|
resetQuery() {
|
this.$refs.table.reloadCurrent()
|
},
|
/**
|
* 点击查询按钮
|
*/
|
queryData() {
|
this.$refs.table.changeCondition()
|
},
|
// 获取详情
|
async getDetails(row) {
|
try {
|
const res = await giftPrdApi.detailsItem({ shopSpuId: row.shopSpuId })
|
if (res.code === '0') {
|
return res.data
|
}
|
} catch (error) {
|
}
|
},
|
/**
|
* 查看详情
|
*/
|
async lookInfo(row) {
|
const data = await this.getDetails(row)
|
if (data) {
|
this.dialogForm.show = true
|
this.dialogForm.title = '赠品详情'
|
this.dialogForm.row = data
|
}
|
},
|
/**
|
* 编辑
|
*/
|
async editInfo(row) {
|
const data = await this.getDetails(row)
|
if (data) {
|
this.dialogForm.show = true
|
this.dialogForm.title = '编辑赠品'
|
this.dialogForm.row = data
|
}
|
},
|
|
/**
|
* 查询列表
|
*/
|
async queryList(pageInfo = { pageNum: 1, pageSize: 10 }) {
|
try {
|
const res = await giftPrdApi.getList({ ...this.listQuery, ...pageInfo })
|
if (res.code === '0') {
|
this.tableData = res.data.list
|
this.total = res.data.total
|
}
|
} catch (error) {
|
}
|
},
|
/**
|
* 跳转到新增页面
|
*/
|
addItem() {
|
this.dialogForm.show = true
|
this.dialogForm.title = '添加赠品'
|
}
|
}
|
}
|
</script>
|