|
@@ -1,45 +1,56 @@
|
|
|
<template>
|
|
|
<template-page
|
|
|
ref="pageRef"
|
|
|
- :getList="getList"
|
|
|
- :optionsEvensGroup="optionsEvensGroup"
|
|
|
- :exportList="exportList"
|
|
|
+ :get-list="getList"
|
|
|
+ :options-evens-group="optionsEvensGroup"
|
|
|
+ :export-list="exportList"
|
|
|
:operation="operation()"
|
|
|
- :tableAttributes="tableAttributes"
|
|
|
- :tableEvents="tableEvents"
|
|
|
- :columnParsing="columnParsing"
|
|
|
+ :table-attributes="tableAttributes"
|
|
|
+ :table-events="tableEvents"
|
|
|
+ :column-parsing="columnParsing"
|
|
|
>
|
|
|
<!-- 弹窗 -->
|
|
|
<el-dialog
|
|
|
title="仓库仓位对应关系"
|
|
|
:visible.sync="showDialogForm"
|
|
|
- width="30%"
|
|
|
+ width="50%"
|
|
|
:show-close="false"
|
|
|
:close-on-click-modal="false"
|
|
|
>
|
|
|
- <el-form ref="diaLogForm" :model="diaLogForm" label-width="70px" size="small" label-position="left">
|
|
|
+ <el-form ref="diaLogForm" :model="diaLogForm" label-width="120px" size="small" label-position="left">
|
|
|
<el-form-item label="仓库名称" prop="name">
|
|
|
- <el-input v-model="diaLogForm.name"></el-input>
|
|
|
+ <el-input v-model="diaLogForm.name" />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="仓位名称" prop="stockIds">
|
|
|
<el-select v-model="diaLogForm.stockIds" multiple filterable placeholder="请选择">
|
|
|
- <el-option v-for="item in cList" :key="item.id" :label="item.name" :value="item.id"> </el-option>
|
|
|
+ <el-option v-for="item in cList" :key="item.id" :label="item.name" :value="item.id" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="库存警戒线" prop="stockCordon">
|
|
|
- <el-input v-model="diaLogForm.stockCordon"></el-input>
|
|
|
+ <el-input v-model="diaLogForm.stockCordon" />
|
|
|
</el-form-item>
|
|
|
<!-- <el-form-item label="库存状态">
|
|
|
<el-radio v-model="diaLogForm.status" label="1">充足</el-radio>
|
|
|
<el-radio v-model="diaLogForm.status" label="2">补充足</el-radio>
|
|
|
</el-form-item> -->
|
|
|
<el-form-item label="备注" prop="remark">
|
|
|
- <el-input type="textarea" v-model="diaLogForm.remark"></el-input>
|
|
|
+ <el-input v-model="diaLogForm.remark" type="textarea" />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="虚拟仓" prop="type">
|
|
|
<el-radio v-model="diaLogForm.type" label="2">是</el-radio>
|
|
|
<el-radio v-model="diaLogForm.type" label="1">否</el-radio>
|
|
|
</el-form-item>
|
|
|
+ <el-form-item label="共享互通配置" prop="categoryIds">
|
|
|
+ <div class="weight">选择勾选后该存货类别支持广佛商家互通使用</div>
|
|
|
+ <div>
|
|
|
+ <el-checkbox-group v-model="diaLogForm.categoryIds">
|
|
|
+ <el-checkbox v-for="(item, index) in dataList" :key="index" :label="item.id">
|
|
|
+ {{ item.name }}
|
|
|
+ </el-checkbox>
|
|
|
+ </el-checkbox-group>
|
|
|
+ </div>
|
|
|
+ <div class="weight">注:设置后商家下单的仓库可以选择对应仓库的品类</div>
|
|
|
+ </el-form-item>
|
|
|
</el-form>
|
|
|
<div slot="footer" class="dialog-footer">
|
|
|
<el-button @click="onClose">取 消</el-button>
|
|
@@ -54,6 +65,8 @@ import TemplatePage from '@/components/template/template-page-1.vue'
|
|
|
import import_mixin from '@/components/template/import_mixin.js'
|
|
|
import add_callback_mixin from '@/components/template/add_callback_mixin.js'
|
|
|
import Popu from '@/components/template/popu.vue'
|
|
|
+import { getKingDeeCategory } from '@/api/basic_data/material'
|
|
|
+
|
|
|
import {
|
|
|
addStock,
|
|
|
deleteStock,
|
|
@@ -63,7 +76,6 @@ import {
|
|
|
exportListStockV2,
|
|
|
getStockDetailStock
|
|
|
} from '@/api/basic_data/warehouse'
|
|
|
-import { nextTick } from 'process'
|
|
|
export default {
|
|
|
components: { TemplatePage, Popu },
|
|
|
mixins: [import_mixin, add_callback_mixin],
|
|
@@ -77,6 +89,7 @@ export default {
|
|
|
{
|
|
|
name: '新增',
|
|
|
click: this.addOn(() => {
|
|
|
+ this.getDataList()
|
|
|
this.newData()
|
|
|
}),
|
|
|
isRole: this.$checkBtnRole('add', this.$route.meta.roles)
|
|
@@ -87,15 +100,15 @@ export default {
|
|
|
[
|
|
|
{
|
|
|
name: '批量删除',
|
|
|
- click: async () => {
|
|
|
+ click: async() => {
|
|
|
if (this.recordSelected.length === 0) {
|
|
|
this.$message.error('请选择需要删除的数据')
|
|
|
return
|
|
|
}
|
|
|
- let ids = this.recordSelected.map(v => {
|
|
|
+ const ids = this.recordSelected.map(v => {
|
|
|
return v.id
|
|
|
})
|
|
|
- let params = ids
|
|
|
+ const params = ids
|
|
|
await deleteStock({ id: params.join(',') })
|
|
|
this.$refs.pageRef.refreshList()
|
|
|
this.$message.success('批量删除成功')
|
|
@@ -150,7 +163,8 @@ export default {
|
|
|
stockCordon: 0,
|
|
|
stockIds: [],
|
|
|
updateBy: '',
|
|
|
- updateTime: ''
|
|
|
+ updateTime: '',
|
|
|
+ categoryIds: []
|
|
|
},
|
|
|
showDialogForm: false,
|
|
|
screenForm: {
|
|
@@ -162,7 +176,8 @@ export default {
|
|
|
name: '' // 名称
|
|
|
},
|
|
|
type: null,
|
|
|
- cList: {}
|
|
|
+ cList: {},
|
|
|
+ dataList: []
|
|
|
}
|
|
|
},
|
|
|
methods: {
|
|
@@ -184,12 +199,13 @@ export default {
|
|
|
operation() {
|
|
|
return (h, { row, index, column }) => {
|
|
|
return (
|
|
|
- <div class="operation-btns">
|
|
|
+ <div class='operation-btns'>
|
|
|
{this.$checkBtnRole('edit', this.$route.meta.roles) ? (
|
|
|
<el-button
|
|
|
- size="mini"
|
|
|
- type="text"
|
|
|
+ size='mini'
|
|
|
+ type='text'
|
|
|
onClick={() => {
|
|
|
+ this.getDataList()
|
|
|
this.editFn(row.id)
|
|
|
}}
|
|
|
>
|
|
@@ -198,16 +214,16 @@ export default {
|
|
|
) : null}
|
|
|
{this.$checkBtnRole('del', this.$route.meta.roles) ? (
|
|
|
<el-popconfirm
|
|
|
- confirm-button-text="好的"
|
|
|
- cancel-button-text="不用了"
|
|
|
- icon="el-icon-info"
|
|
|
- icon-color="red"
|
|
|
- title="内容确定删除吗?"
|
|
|
+ confirm-button-text='好的'
|
|
|
+ cancel-button-text='不用了'
|
|
|
+ icon='el-icon-info'
|
|
|
+ icon-color='red'
|
|
|
+ title='内容确定删除吗?'
|
|
|
onOnConfirm={() => {
|
|
|
this.hanleDelete(row.id)
|
|
|
}}
|
|
|
>
|
|
|
- <el-button size="mini" slot="reference" type="text" class="textColor el-popover-left">
|
|
|
+ <el-button size='mini' slot='reference' type='text' class='textColor el-popover-left'>
|
|
|
删除
|
|
|
</el-button>
|
|
|
</el-popconfirm>
|
|
@@ -227,7 +243,9 @@ export default {
|
|
|
stockCordon: 0,
|
|
|
stockIds: [],
|
|
|
updateBy: '',
|
|
|
- updateTime: ''
|
|
|
+ updateTime: '',
|
|
|
+ categoryIds: []
|
|
|
+
|
|
|
}
|
|
|
this.addOff(() => {
|
|
|
this.showDialogForm = false
|
|
@@ -246,12 +264,11 @@ export default {
|
|
|
this.listTotal = res.data.total
|
|
|
})
|
|
|
},
|
|
|
- //显示编辑,编辑数据初始化
|
|
|
+ // 显示编辑,编辑数据初始化
|
|
|
editFn(id) {
|
|
|
let row
|
|
|
getStockDetailStock({ id }).then(res => {
|
|
|
row = res.data
|
|
|
- this.type = 2
|
|
|
const arr = []
|
|
|
if (row.kingDeeStocks && row.kingDeeStocks.length > 0) {
|
|
|
row.kingDeeStocks.forEach(el => {
|
|
@@ -259,6 +276,7 @@ export default {
|
|
|
})
|
|
|
}
|
|
|
this.newData()
|
|
|
+ this.type = 2
|
|
|
this.diaLogForm = {
|
|
|
id,
|
|
|
name: row.name,
|
|
@@ -266,21 +284,29 @@ export default {
|
|
|
status: row.status,
|
|
|
stockCordon: row.stockCordon,
|
|
|
type: row.type + '',
|
|
|
- stockIds: row.stockIds === undefined ? arr : row.stockIds
|
|
|
+ stockIds: row.stockIds === undefined ? arr : row.stockIds,
|
|
|
+ categoryIds: row.kingDeeCategories.map(k=>k.id)
|
|
|
}
|
|
|
this.showDialogForm = true
|
|
|
})
|
|
|
},
|
|
|
-
|
|
|
+ // 金蝶存货类别列表
|
|
|
+ async getDataList() {
|
|
|
+ const res = await getKingDeeCategory()
|
|
|
+ res.data.forEach(k => {
|
|
|
+ k.isFront = false
|
|
|
+ k.isPick = false
|
|
|
+ })
|
|
|
+ this.dataList = res.data
|
|
|
+ },
|
|
|
hanleInfo() {
|
|
|
- console.log(this.type)
|
|
|
if (this.type == 1) {
|
|
|
addStock(this.diaLogForm).then(res => {
|
|
|
this.$successMsg('保存成功')
|
|
|
this.showDialogForm = false
|
|
|
this.$refs.pageRef.refreshList()
|
|
|
})
|
|
|
- } else if (this.type == 2) {
|
|
|
+ } else {
|
|
|
const params = {
|
|
|
...this.diaLogForm
|
|
|
}
|
|
@@ -298,7 +324,8 @@ export default {
|
|
|
stockCordon: 0,
|
|
|
stockIds: [],
|
|
|
updateBy: '',
|
|
|
- updateTime: ''
|
|
|
+ updateTime: '',
|
|
|
+ categoryIds: []
|
|
|
}
|
|
|
},
|
|
|
// 删除数据
|
|
@@ -334,4 +361,7 @@ export default {
|
|
|
.right {
|
|
|
float: right;
|
|
|
}
|
|
|
+.weight{
|
|
|
+ font-weight: 700;
|
|
|
+}
|
|
|
</style>
|