绑定商品
This commit is contained in:
parent
c14f7e45c0
commit
6dd4146cc6
|
|
@ -112,6 +112,17 @@ export function posttbProskuCon(data) {
|
|||
data
|
||||
});
|
||||
}
|
||||
/**
|
||||
* 新增商品规格耗材信息-修改后
|
||||
* @returns
|
||||
*/
|
||||
export function posttbProskuCons(data) {
|
||||
return request({
|
||||
url: '/api/tbProskuCon',
|
||||
method: "post",
|
||||
data
|
||||
});
|
||||
}
|
||||
/**
|
||||
* 修改商品规格耗材信息状态
|
||||
* @returns
|
||||
|
|
@ -123,6 +134,14 @@ export function puttbProskuCon(data) {
|
|||
data
|
||||
});
|
||||
}
|
||||
// 编辑单位耗材值
|
||||
// export function puttbProskuCon(data) {
|
||||
// return request({
|
||||
// url: '/api/tbProskuCon',
|
||||
// method: "put",
|
||||
// data
|
||||
// });
|
||||
// }
|
||||
/**
|
||||
* 删除商品规格耗材信息状态
|
||||
* @returns
|
||||
|
|
|
|||
|
|
@ -30,7 +30,8 @@
|
|||
<div class="head-container">
|
||||
<el-row>
|
||||
<el-col>
|
||||
<el-button type="primary" icon="el-icon-plus" @click="clickdialogframe('add')">添加</el-button>
|
||||
<el-button type="primary" icon="el-icon-plus"
|
||||
@click="$refs.shopList.show(tableData.list)">选择商品规格</el-button>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
|
|
@ -39,6 +40,7 @@
|
|||
<el-table-column prop="id" label="ID" width="50px" />
|
||||
<el-table-column label="耗材信息ID" prop="conInfoId" />
|
||||
<el-table-column label="耗材信息名称" prop="conName" />
|
||||
<!-- <el-table-column label="价格" prop="conName" /> -->
|
||||
<el-table-column label="规格名称" prop="specSnap" />
|
||||
<el-table-column label="耗材信息代码" prop="conCode" />
|
||||
<el-table-column label="耗材信息单位" prop="conUnit" />
|
||||
|
|
@ -78,46 +80,55 @@
|
|||
<el-pagination :total="tableData.total" :current-page="tableData.page + 1" :page-size="tableData.size"
|
||||
layout="total, sizes, prev, pager, next, jumper" @current-change="paginationChange" />
|
||||
</div>
|
||||
<el-dialog :title="dialogtitle" :visible.sync="dialogshow">
|
||||
<el-form ref="refruleForm" :model="ruleForm" :rules="rules" :inline="true">
|
||||
<el-form-item label="商品规格" prop="productSkuIdname">
|
||||
<el-input v-model="ruleForm.productSkuIdname" placeholder="请输入商品规格" disabled></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="tableDataskudialogshow = true">去选择商品规格</el-button>
|
||||
</el-form-item>
|
||||
<el-form-item label="耗材信息" prop="conInfoIdname">
|
||||
<el-input v-model="ruleForm.conInfoIdname" placeholder="请输入耗材信息" disabled></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="informationdialogshow = true">去选择耗材信息</el-button>
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label="是否禁用" prop="status">
|
||||
<el-switch v-model="ruleForm.status" />
|
||||
</el-form-item> -->
|
||||
<el-form-item label="单位耗材值" prop="surplusStock">
|
||||
<el-input v-model="ruleForm.surplusStock" placeholder="请输入单位耗材值"></el-input>
|
||||
</el-form-item>
|
||||
<el-dialog :title="dialogtitle" :visible.sync="dialogshow" width="50%">
|
||||
<el-form ref="addSelect" :inline="true">
|
||||
<template v-if="addSelect.length">
|
||||
<template v-if="addSelect[0].isDistribute == 1">
|
||||
<el-form-item label="商品规格">
|
||||
<el-input v-model="addSelect[0].specSnap" style="width: 130px;" placeholder="请选择商品规格"
|
||||
disabled></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="耗材信息" prop="conName">
|
||||
<el-input v-model="addSelect[0].conName" style="width: 130px;" placeholder="请选择耗材信息"
|
||||
disabled></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="informationdialogshow = true">去选择耗材信息</el-button>
|
||||
</el-form-item>
|
||||
<el-form-item label="单位耗材值">
|
||||
<el-input v-model="addSelect[0].surplusStock" placeholder="请输入单位耗材值"></el-input>
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template v-else>
|
||||
<template v-if="addSelect[0]">
|
||||
<template v-for="(item, i) in addSelect[0].skuList">
|
||||
<el-form-item label="商品规格">
|
||||
<el-input v-model="item.specSnap" style="width: 130px;" placeholder="请选择商品规格"
|
||||
disabled></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="耗材信息" prop="conName">
|
||||
<el-input v-model="item.conName" style="width: 130px;" placeholder="请选择耗材信息"
|
||||
disabled></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="selecthaocai(i)">去选择耗材信息</el-button>
|
||||
</el-form-item>
|
||||
<el-form-item label="单位耗材值">
|
||||
<el-input v-model="item.surplusStock" placeholder="请输入单位耗材值"></el-input>
|
||||
</el-form-item>
|
||||
</template>
|
||||
</template>
|
||||
</template>
|
||||
</template>
|
||||
|
||||
|
||||
<el-form-item style="display: flex;justify-content: flex-end;">
|
||||
<el-button @click="dialogshow = false">取 消</el-button>
|
||||
<el-button type="primary" @click="submitForm('refruleForm')">确 定</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-dialog>
|
||||
<el-dialog title="修改" :visible.sync="dialogshows">
|
||||
<el-form ref="refruleForm" :model="ruleForm" :inline="true" :rules="rulesdialogshows">
|
||||
<el-form-item label="是否禁用" prop="status">
|
||||
<el-switch v-model="ruleForm.status" />
|
||||
</el-form-item>
|
||||
<el-form-item label="单位耗材值" prop="surplusStock">
|
||||
<el-input v-model="ruleForm.surplusStock" placeholder="请输入单位耗材值"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item style="display: flex;justify-content: flex-end;">
|
||||
<el-button @click="dialogshows = false">取 消</el-button>
|
||||
<el-button type="primary" @click="submitForm('refruleForm')">确 定</el-button>
|
||||
<el-button type="primary" @click="submitForm('addSelect')">确 定</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-dialog>
|
||||
|
||||
<el-dialog title="耗材信息" :visible.sync="informationdialogshow">
|
||||
<div class="head-container">
|
||||
<el-input v-model="queryinformation.conTypeId" size="small" clearable placeholder="请输入类型id"
|
||||
|
|
@ -155,45 +166,30 @@
|
|||
@current-change="paginationChangeinformation" />
|
||||
</div>
|
||||
</el-dialog>
|
||||
<el-dialog title="选择规格" :visible.sync="tableDataskudialogshow" width="700px;">
|
||||
<div class="head-container">
|
||||
<el-input v-model="querytableDatasku.specSnap" size="small" clearable placeholder="请输入规格"
|
||||
style="width: 100%;" class="filter-item" @keyup.enter.native="getTableDatasku" />
|
||||
<el-input v-model="querytableDatasku.name" size="small" clearable placeholder="请输入商品名称"
|
||||
style="width: 100%;" class="filter-item" @keyup.enter.native="getTableDatasku" />
|
||||
<el-input v-model="querytableDatasku.shopName" size="small" clearable placeholder="请输入店铺名称"
|
||||
style="width: 100%;" class="filter-item" @keyup.enter.native="getTableDatasku" />
|
||||
<div style="display: flex; justify-content: flex-end;">
|
||||
<el-button style="margin-right: 20px;" type="primary" @click="getTableDatasku">查询</el-button>
|
||||
<el-button @click="resetHandlesku">重置</el-button>
|
||||
</div>
|
||||
</div>
|
||||
<el-table ref="table" :data="tableDatasku.data" v-loading="tableDatasku.loading" row-key="id">
|
||||
<el-table-column label="店铺名称" prop="shopName" />
|
||||
<el-table-column label="商品名称" prop="name" />
|
||||
<el-table-column label="规格" prop="specSnap" />
|
||||
<el-table-column label="" width="200">
|
||||
<template v-slot="scope">
|
||||
<el-button @click="tableDatatablesku(scope.row)">确定</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<div class="head-container">
|
||||
<el-pagination :total="tableDatasku.total" :current-page="tableDatasku.page + 1"
|
||||
:page-size="tableDatasku.size" layout="total, sizes, prev, pager, next, jumper"
|
||||
@current-change="Changeinformationsku" />
|
||||
</div>
|
||||
<el-dialog title="编辑" :visible.sync="informationdialogshowedit" width="20%">
|
||||
<el-form ref="addSelect" :inline="true">
|
||||
<el-form-item label="单位耗材值">
|
||||
<el-input v-model="surplusStocks.surplusStock" placeholder="请输入单位耗材值"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item style="display: flex;justify-content: flex-end;">
|
||||
<el-button @click="informationdialogshowedit = false">取 消</el-button>
|
||||
<el-button type="primary" @click="submitForm('addSelect')">确 定</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-dialog>
|
||||
<shopList ref="shopList" @success="selectShop" />
|
||||
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import Sortable from 'sortablejs'
|
||||
import dayjs from 'dayjs'
|
||||
import settings from '@/settings'
|
||||
import { upProSort } from '@/api/shop'
|
||||
import { getviewConSku, gettbProductSpec, gettbConsInfo, posttbProskuCon, puttbProskuCon, deletetbProskuCon } from '@/api/consumable'
|
||||
import shopList from '../components/shopList'
|
||||
import { upProSort, tbProduct } from '@/api/shop'
|
||||
import { getviewConSku, gettbProductSpec, gettbConsInfo, posttbProskuCons, puttbProskuCon, deletetbProskuCon } from '@/api/consumable'
|
||||
export default {
|
||||
components: { shopList },
|
||||
data() {
|
||||
return {
|
||||
dayjs,
|
||||
|
|
@ -203,7 +199,7 @@ export default {
|
|||
name: '',
|
||||
status: ''
|
||||
},
|
||||
categorys: [],
|
||||
surplusStocks: '',
|
||||
typeEnums: [{
|
||||
label: '正常',
|
||||
value: '1'
|
||||
|
|
@ -212,9 +208,9 @@ export default {
|
|||
value: '0'
|
||||
}],
|
||||
dialogshow: false, //弹框显示
|
||||
dialogshows: false,
|
||||
dialogtitle: '', //文字显示
|
||||
informationdialogshow: false,
|
||||
informationdialogshowedit: false,
|
||||
tableData: {
|
||||
data: [],
|
||||
page: 0,
|
||||
|
|
@ -258,11 +254,11 @@ export default {
|
|||
status: false
|
||||
},
|
||||
rules: {
|
||||
conInfoIdname: [
|
||||
conNameS: [
|
||||
{ required: true, message: '请输入耗材信息', trigger: 'blur' }
|
||||
],
|
||||
productSkuIdname: [
|
||||
{ required: true, message: '请输入商品规格', trigger: 'blur' }
|
||||
name: [
|
||||
{ required: true, message: '请选择商品规格', trigger: 'blur' }
|
||||
],
|
||||
surplusStock: [
|
||||
{ required: true, message: '请输入单位耗材值', trigger: 'blur' }
|
||||
|
|
@ -271,14 +267,10 @@ export default {
|
|||
{ required: true, message: '选择状态', trigger: 'blur' }
|
||||
]
|
||||
},
|
||||
rulesdialogshows: {
|
||||
surplusStock: [
|
||||
{ required: true, message: '请输入单位耗材值', trigger: 'blur' }
|
||||
],
|
||||
status: [
|
||||
{ required: true, message: '选择状态', trigger: 'blur' }
|
||||
]
|
||||
}
|
||||
// 动态新增选择框
|
||||
addSelect: [],
|
||||
// 选择耗材的index
|
||||
ALLisDistribute: null
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
|
|
@ -290,6 +282,16 @@ export default {
|
|||
})
|
||||
},
|
||||
methods: {
|
||||
selectShop(res) {
|
||||
this.addSelect = res
|
||||
res[0]['specSnap'] = res[0].name
|
||||
this.clickdialogframe('add')
|
||||
},
|
||||
// 选择耗材
|
||||
selecthaocai(i) {
|
||||
this.ALLisDistribute = i
|
||||
this.informationdialogshow = true
|
||||
},
|
||||
//表格拖拽
|
||||
tableDrag() {
|
||||
const el = document.querySelector('#table_drag .el-table__body-wrapper tbody')
|
||||
|
|
@ -389,21 +391,30 @@ export default {
|
|||
},
|
||||
// 耗材信息的信息
|
||||
tableDatainformationtable(item) {
|
||||
this.ruleForm.conInfoId = item.id
|
||||
this.ruleForm.conInfoIdname = item.conName
|
||||
this.addSelect.forEach((ele, i) => {
|
||||
ele.consInfoId = item.id
|
||||
ele.conName = item.conName
|
||||
if (this.ALLisDistribute != null) {
|
||||
this.addSelect.forEach((ele, i) => {
|
||||
ele.skuList[this.ALLisDistribute].skuId = item.id
|
||||
ele.skuList[this.ALLisDistribute].conName = item.conName
|
||||
})
|
||||
}
|
||||
})
|
||||
// this.ruleForm.skuInfos = item
|
||||
// this.ruleForm.conInfoId = item.id
|
||||
// this.ruleForm.conInfoIdname = item.conName
|
||||
this.informationdialogshow = false
|
||||
},
|
||||
tableDatatablesku(item) {///规格
|
||||
console.log(item)
|
||||
this.ruleForm.productSkuId = item.id
|
||||
this.ruleForm.productSkuIdname = item.name
|
||||
this.tableDataskudialogshow = false
|
||||
},
|
||||
// tableDatatablesku(item) {///规格
|
||||
// this.ruleForm = item
|
||||
// this.tableDataskudialogshow = false
|
||||
// },
|
||||
// 获取商品规格
|
||||
async getTableDatasku() {
|
||||
this.tableDatasku.loading = true
|
||||
try {
|
||||
const res = await gettbProductSpec({
|
||||
const res = await tbProduct({
|
||||
page: this.tableDatasku.page,
|
||||
size: this.tableDatasku.size,
|
||||
shopId: localStorage.getItem('shopId'),
|
||||
|
|
@ -427,52 +438,73 @@ export default {
|
|||
if (type == 'add') { // 添加
|
||||
this.dialogtitle = '添加'
|
||||
this.$nextTick(() => {
|
||||
this.$refs.refruleForm.resetFields()
|
||||
this.$refs.addSelect.resetFields()
|
||||
})
|
||||
this.dialogshow = true
|
||||
|
||||
} else {
|
||||
this.dialogshows = true
|
||||
this.informationdialogshowedit = true
|
||||
this.dialogtitle = '编辑'
|
||||
this.ruleForm.id = item.productSkuId
|
||||
this.ruleForm.conInfoId = item.conInfoId
|
||||
this.ruleForm.id = item.id
|
||||
this.ruleForm.surplusStock = item.surplusStock
|
||||
this.ruleForm.status = item.status == 0 ? true : false
|
||||
// console.log(item,'调试11')
|
||||
this.surplusStocks = item
|
||||
}
|
||||
},
|
||||
submitForm(formName) {
|
||||
this.$refs[formName].validate(async (valid) => {
|
||||
if (valid) {
|
||||
if (this.dialogtitle == '编辑') {
|
||||
await puttbProskuCon({
|
||||
id: this.ruleForm.id,
|
||||
// productSkuId: this.ruleForm.productSkuId,
|
||||
// conInfoId: this.ruleForm.conInfoId,
|
||||
shopId: this.ruleForm.shopId,
|
||||
status: this.ruleForm.status ? '0' : '1',
|
||||
surplusStock: this.ruleForm.surplusStock
|
||||
})
|
||||
this.dialogshows = false
|
||||
|
||||
this.getTableData()
|
||||
} else {
|
||||
await posttbProskuCon({
|
||||
productSkuId: this.ruleForm.productSkuId,
|
||||
conInfoId: this.ruleForm.conInfoId,
|
||||
shopId: this.ruleForm.shopId,
|
||||
status: this.ruleForm.status ? '0' : '1',
|
||||
surplusStock: this.ruleForm.surplusStock
|
||||
})
|
||||
this.dialogshow = false
|
||||
}
|
||||
this.$refs[formName].resetFields()
|
||||
this.getTableData()
|
||||
} else {
|
||||
console.log('error submit!!')
|
||||
return false
|
||||
async submitForm(formName) {
|
||||
if (this.dialogtitle == '编辑') {
|
||||
let { id, surplusStock } = this.surplusStocks
|
||||
await puttbProskuCon({
|
||||
id,
|
||||
surplusStock
|
||||
})
|
||||
this.$message({
|
||||
message: '修改成功',
|
||||
type: 'success'
|
||||
});
|
||||
this.informationdialogshowedit = false
|
||||
} else {
|
||||
let { id, consInfoId, surplusStock } = this.addSelect[0]
|
||||
let obj = {
|
||||
productId: id,
|
||||
consInfoId: consInfoId,
|
||||
skuInfos: null,
|
||||
surplusStock: surplusStock
|
||||
}
|
||||
})
|
||||
// 1为共享库存
|
||||
if (this.addSelect[0].isDistribute != 1) {
|
||||
let isgongx = false
|
||||
this.addSelect[0].skuList.forEach(ele => {
|
||||
if (!ele.skuId || !ele.surplusStock) {
|
||||
isgongx = true
|
||||
} else {
|
||||
isgongx = false
|
||||
}
|
||||
})
|
||||
if (isgongx) {
|
||||
this.$message.error('请选择耗材信息与输入耗材值')
|
||||
return
|
||||
}
|
||||
obj.skuInfos = this.addSelect[0].skuList
|
||||
} else {
|
||||
|
||||
if (!consInfoId) {
|
||||
this.$message.error('请选择耗材信息')
|
||||
return
|
||||
}
|
||||
if (!surplusStock) {
|
||||
this.$message.error('请输入耗材值')
|
||||
return
|
||||
}
|
||||
}
|
||||
await posttbProskuCons(obj)
|
||||
this.$message({
|
||||
message: '新增成功',
|
||||
type: 'success'
|
||||
});
|
||||
this.ALLisDistribute = null
|
||||
this.dialogshow = false
|
||||
}
|
||||
this.$refs[formName].resetFields()
|
||||
this.getTableData()
|
||||
|
||||
},
|
||||
resetForm(formName) {
|
||||
this.$refs[formName].resetFields()
|
||||
|
|
|
|||
Loading…
Reference in New Issue