物料产品批次属性配置功能
This commit is contained in:
parent
b01fba286e
commit
583d03b2f8
44
src/api/mes/md/batchconfig.js
Normal file
44
src/api/mes/md/batchconfig.js
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 查询物料批次属性配置列表
|
||||||
|
export function listBatchconfig(query) {
|
||||||
|
return request({
|
||||||
|
url: '/mes/md/batchconfig/list',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询物料批次属性配置详细
|
||||||
|
export function getBatchconfig(itemId) {
|
||||||
|
return request({
|
||||||
|
url: '/mes/md/batchconfig/' + itemId,
|
||||||
|
method: 'get'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增物料批次属性配置
|
||||||
|
export function addBatchconfig(data) {
|
||||||
|
return request({
|
||||||
|
url: '/mes/md/batchconfig',
|
||||||
|
method: 'post',
|
||||||
|
data: data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改物料批次属性配置
|
||||||
|
export function updateBatchconfig(data) {
|
||||||
|
return request({
|
||||||
|
url: '/mes/md/batchconfig',
|
||||||
|
method: 'put',
|
||||||
|
data: data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除物料批次属性配置
|
||||||
|
export function delBatchconfig(configId) {
|
||||||
|
return request({
|
||||||
|
url: '/mes/md/batchconfig/' + configId,
|
||||||
|
method: 'delete'
|
||||||
|
})
|
||||||
|
}
|
167
src/views/mes/md/mditem/components/batch.vue
Normal file
167
src/views/mes/md/mditem/components/batch.vue
Normal file
@ -0,0 +1,167 @@
|
|||||||
|
<template>
|
||||||
|
<div class="app-container">
|
||||||
|
<el-row :gutter="10" class="mb8">
|
||||||
|
<el-col :span="1.5">
|
||||||
|
<el-button
|
||||||
|
type="primary"
|
||||||
|
plain
|
||||||
|
icon="el-icon-save"
|
||||||
|
size="mini"
|
||||||
|
v-if="optType === 'add' || optType === 'edit'"
|
||||||
|
@click="submitForm"
|
||||||
|
v-hasPermi="['mes:md:batchconfig:update']"
|
||||||
|
>保存</el-button>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-form ref="form" :model="form" :rules="rules">
|
||||||
|
<el-form-item prop="selectedAttributes">
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="4">
|
||||||
|
<el-checkbox v-model="form.produceDateFlag" true-label="Y" false-label="N">生产日期</el-checkbox>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="4">
|
||||||
|
<el-checkbox v-model="form.expireDateFlag" true-label="Y" false-label="N">有效期</el-checkbox>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="4">
|
||||||
|
<el-checkbox v-model="form.recptDateFlag" true-label="Y" false-label="N">入库日期</el-checkbox>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="4">
|
||||||
|
<el-checkbox v-model="form.vendorFlag" true-label="Y" false-label="N">供应商</el-checkbox>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="4">
|
||||||
|
<el-checkbox v-model="form.clientFlag" true-label="Y" false-label="N">客户</el-checkbox>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="4">
|
||||||
|
<el-checkbox v-model="form.coCodeFlag" true-label="Y" false-label="N">销售订单编号</el-checkbox>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="4">
|
||||||
|
<el-checkbox v-model="form.poCodeFlag" true-label="Y" false-label="N">采购订单编号</el-checkbox>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="4">
|
||||||
|
<el-checkbox v-model="form.workorderFlag" true-label="Y" false-label="N">生产工单</el-checkbox>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="4">
|
||||||
|
<el-checkbox v-model="form.taskFlag" true-label="Y" false-label="N">生产任务</el-checkbox>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="4">
|
||||||
|
<el-checkbox v-model="form.workstationFlag" true-label="Y" false-label="N">工作站</el-checkbox>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="4">
|
||||||
|
<el-checkbox v-model="form.toolFlag" true-label="Y" false-label="N">工具</el-checkbox>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="4">
|
||||||
|
<el-checkbox v-model="form.moldFlag" true-label="Y" false-label="N">模具</el-checkbox>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="4">
|
||||||
|
<el-checkbox v-model="form.lotNumberFlag" true-label="Y" false-label="N">生产批号</el-checkbox>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="4">
|
||||||
|
<el-checkbox v-model="form.qualityStatusFlag" true-label="Y" false-label="N">质量状态</el-checkbox>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { getBatchconfig, addBatchconfig, updateBatchconfig } from "@/api/mes/md/batchconfig";
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: "Batchconfig",
|
||||||
|
props: {
|
||||||
|
itemId: null,
|
||||||
|
optType: null
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
|
||||||
|
// 表单参数
|
||||||
|
form: {
|
||||||
|
configId: null,
|
||||||
|
itemId: this.itemId,
|
||||||
|
produceDateFlag: 'N',
|
||||||
|
expireDateFlag: 'N',
|
||||||
|
recptDateFlag: 'N',
|
||||||
|
vendorFlag: 'N',
|
||||||
|
clientFlag: 'N',
|
||||||
|
coCodeFlag: 'N',
|
||||||
|
poCodeFlag: 'N',
|
||||||
|
workorderFlag: 'N',
|
||||||
|
taskFlag: 'N',
|
||||||
|
workstationFlag: 'N',
|
||||||
|
toolFlag: 'N',
|
||||||
|
moldFlag: 'N',
|
||||||
|
lotNumberFlag: 'N',
|
||||||
|
qualityStatusFlag: 'N'
|
||||||
|
},
|
||||||
|
// 表单校验
|
||||||
|
rules: {
|
||||||
|
selectedAttributes: [
|
||||||
|
{ validator: this.checkSelectedAttributes, trigger: 'change' }
|
||||||
|
]
|
||||||
|
}
|
||||||
|
};
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
this.getBatchconfig();
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
checkSelectedAttributes(rule, value, callback) {
|
||||||
|
if (
|
||||||
|
this.form.produceDateFlag === 'N' &&
|
||||||
|
this.form.expireDateFlag === 'N' &&
|
||||||
|
this.form.recptDateFlag === 'N' &&
|
||||||
|
this.form.vendorFlag === 'N' &&
|
||||||
|
this.form.clientFlag === 'N' &&
|
||||||
|
this.form.coCodeFlag === 'N' &&
|
||||||
|
this.form.poCodeFlag === 'N' &&
|
||||||
|
this.form.workorderFlag === 'N' &&
|
||||||
|
this.form.taskFlag === 'N' &&
|
||||||
|
this.form.workstationFlag === 'N' &&
|
||||||
|
this.form.toolFlag === 'N' &&
|
||||||
|
this.form.moldFlag === 'N' &&
|
||||||
|
this.form.lotNumberFlag === 'N' &&
|
||||||
|
this.form.qualityStatusFlag === 'N'
|
||||||
|
) {
|
||||||
|
callback(
|
||||||
|
new Error("至少选择一个属性")
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
callback();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
/** 获取批次配置 */
|
||||||
|
getBatchconfig() {
|
||||||
|
getBatchconfig(this.itemId).then(response => {
|
||||||
|
if(response.data ){
|
||||||
|
this.form = response.data;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
|
/** 提交按钮 */
|
||||||
|
submitForm() {
|
||||||
|
this.$refs["form"].validate(valid => {
|
||||||
|
if (valid) {
|
||||||
|
if (this.form.configId != null) {
|
||||||
|
updateBatchconfig(this.form).then(response => {
|
||||||
|
this.$modal.msgSuccess("修改成功");
|
||||||
|
this.open = false;
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
addBatchconfig(this.form).then(response => {
|
||||||
|
this.$modal.msgSuccess("修改成功");
|
||||||
|
this.open = false;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
</script>
|
@ -340,7 +340,9 @@
|
|||||||
<el-tab-pane label="BOM组成">
|
<el-tab-pane label="BOM组成">
|
||||||
<ItemBom :optType="optType" :itemId="form.itemId"></ItemBom>
|
<ItemBom :optType="optType" :itemId="form.itemId"></ItemBom>
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
<el-tab-pane v-if="form.batchFlag =='Y'" label="批次属性"></el-tab-pane>
|
<el-tab-pane v-if="form.batchFlag =='Y'" label="批次属性">
|
||||||
|
<BatchConfig :itemId="form.itemId" :optType="optType"></BatchConfig>
|
||||||
|
</el-tab-pane>
|
||||||
<el-tab-pane label="替代品"></el-tab-pane>
|
<el-tab-pane label="替代品"></el-tab-pane>
|
||||||
<el-tab-pane label="SIP">
|
<el-tab-pane label="SIP">
|
||||||
<SIPTab :itemId="form.itemId" :optType="optType"></SIPTab>
|
<SIPTab :itemId="form.itemId" :optType="optType"></SIPTab>
|
||||||
@ -402,10 +404,11 @@ import { getBarcodeUrl } from "@/api/mes/wm/barcode";
|
|||||||
import "@riophae/vue-treeselect/dist/vue-treeselect.css";
|
import "@riophae/vue-treeselect/dist/vue-treeselect.css";
|
||||||
import BarcodeImg from "@/components/barcodeImg/index.vue"
|
import BarcodeImg from "@/components/barcodeImg/index.vue"
|
||||||
import printLabel from "@/components/printerLabel/index.vue"
|
import printLabel from "@/components/printerLabel/index.vue"
|
||||||
|
import BatchConfig from "./components/batch.vue";
|
||||||
export default {
|
export default {
|
||||||
name: "MdItem",
|
name: "MdItem",
|
||||||
dicts: ['sys_yes_no','mes_item_product'],
|
dicts: ['sys_yes_no','mes_item_product'],
|
||||||
components: { Treeselect,ItemBom,SOPTab,SIPTab,BarcodeImg,printLabel },
|
components: { Treeselect,ItemBom,SOPTab,SIPTab,BarcodeImg,printLabel, BatchConfig },
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
// 遮罩层
|
// 遮罩层
|
||||||
|
Loading…
Reference in New Issue
Block a user