MES:增加成品条码信息生成,根据原材料条码生成成品条码信息,适合5楼半成品入成品库前打印成品条码
master
xs 4 months ago
parent 0d4755e46e
commit c1f7869a44

@ -43,6 +43,11 @@ public class MesBaseBarcodeInfo extends BaseEntity
@Excel(name = "条码类型", readConverterExp = "1=原材料,2半成品,3成品,4背板")
private String barcodeType;
/**
*(01)使
*/
private String singleFlag;
/** 条码内容;如果是按单个物料贴,则一个物料一个条码,如果是按批次贴,则条码跟批次代码相同 */
@Excel(name = "条码内容")
private String barcodeInfo;
@ -226,6 +231,15 @@ public class MesBaseBarcodeInfo extends BaseEntity
{
return barcodeType;
}
public String getSingleFlag() {
return singleFlag;
}
public void setSingleFlag(String singleFlag) {
this.singleFlag = singleFlag;
}
public void setBarcodeInfo(String barcodeInfo)
{
this.barcodeInfo = barcodeInfo;

@ -140,6 +140,9 @@ public class MesConstants {
/**工序类型*/
public static final String MES_PROCESS_TYPE_FIFTH_SPLIT = "1";//五楼拆分工序
/**单独生成成品条码标识*/
public static final String MES_BARCODE_SINGLE_FLAG_YES = "1";//是
}

@ -73,13 +73,21 @@ public interface MesBaseBarcodeInfoMapper
/**
*
* ,limit 1
*
* @param bindBarcode
* @return
*/
public MesBaseBarcodeInfo selectMesBaseBarcodeInfoByBindBarcode(String bindBarcode);
/**
* ,limit 1
*
* @param productBarcode 545
* @return
*/
public MesBaseBarcodeInfo selectMesBaseBarcodeInfoByProductBarcode(String productBarcode);
/**
*

@ -121,9 +121,7 @@ public class MesBaseBarcodeInfoServiceImpl implements IMesBaseBarcodeInfoService
// 生成成品条码
else if (mesBaseBarcodeInfo.getBarcodeType().equals(MesConstants.MES_BARCODE_TYPE_PRODUCT)) {
generateProductBarcode(mesBaseBarcodeInfo);
}
else{//生成背板条码或者门板条码
} else {//生成背板条码或者门板条码
generateBackOrDoorBarcode(mesBaseBarcodeInfo);
}
@ -197,6 +195,7 @@ public class MesBaseBarcodeInfoServiceImpl implements IMesBaseBarcodeInfoService
/**
*
*
* @param mesBaseBarcodeInfo
*/
@Override
@ -213,16 +212,18 @@ public class MesBaseBarcodeInfoServiceImpl implements IMesBaseBarcodeInfoService
// 生成数量条的不同条码内容
toInsertedBarcodeInfo = getInsertedBarcodeInfo(mesBaseBarcodeInfo, batchCode, userName, currentDate);
toInsertedBarcodeInfo.setSafeFlag(MesConstants.MES_ORDER_BIND_SAFE_FLAG_YES);
toInsertedBarcodeInfo.setSaleOrderId(0L);
toInsertedBarcodeInfos.add(toInsertedBarcodeInfo);
}
return mesBaseBarcodeInfoMapper.batchMesBaseBarcodeInfo(toInsertedBarcodeInfos);
return mesBaseBarcodeInfoMapper.batchMesBaseBarcodeInfo(toInsertedBarcodeInfos);
}
/**
*
*
* @param mesBaseBarcodeInfo
*/
@Override
@ -246,30 +247,78 @@ public class MesBaseBarcodeInfoServiceImpl implements IMesBaseBarcodeInfoService
public void generateProductBarcode(MesBaseBarcodeInfo mesBaseBarcodeInfo) {
String planCode = mesBaseBarcodeInfo.getPlanCode();
String planDetailCode = mesBaseBarcodeInfo.getPlanDetailCode();
String planCode;
String planDetailCode;
Long saleOrderId;
String saleOrderCode;
Long materialId;
if (mesBaseBarcodeInfo.getSingleFlag().equals(MesConstants.MES_BARCODE_SINGLE_FLAG_YES)) {
String rawMaterialBarcode = mesBaseBarcodeInfo.getProductBarcode();
MesBaseBarcodeInfo rawBarcode = mesBaseBarcodeInfoMapper.selectMesBaseBarcodeInfoByBarcodeInfo(rawMaterialBarcode);
if (rawBarcode == null) {
throw new ServiceException("原材料条码有误");
}
MesBaseBarcodeInfo queryBarcodeInfo = new MesBaseBarcodeInfo();
queryBarcodeInfo.setPlanDetailCode(planDetailCode);
List<MesBaseBarcodeInfo> mesBaseBarcodeInfos = mesBaseBarcodeInfoMapper.selectMesBaseBarcodeInfoList(queryBarcodeInfo);
if (!rawBarcode.getBarcodeType().equals(MesConstants.MES_BARCODE_TYPE_RAW)) {
throw new ServiceException("此条码为非原材料条码,不能生成成品条码");
}
if (mesBaseBarcodeInfos != null && !mesBaseBarcodeInfos.isEmpty()) {
throw new ServiceException("此生产明细已经生成条码,不能重复生成");
}
MesBaseBarcodeInfo bindBarcode = mesBaseBarcodeInfoMapper.selectMesBaseBarcodeInfoByBindBarcode(rawMaterialBarcode);
if (bindBarcode == null) {
throw new ServiceException("此原材料条码没有绑定背板或门板");
}
MesProductPlanDetail mesProductPlanDetail = mesProductPlanDetailMapper.selectMesProductPlanDetailByPlanDetailCode(planDetailCode);
if (mesProductPlanDetail == null) {
throw new ServiceException("此生产明细不存在");
}
MesBaseBarcodeInfo productBarcodeInfo = mesBaseBarcodeInfoMapper.selectMesBaseBarcodeInfoByProductBarcode(rawMaterialBarcode);
if (productBarcodeInfo != null) {
throw new ServiceException("此原材料条码已经生成过成品条码,不能重复生成");
}
if (!mesProductPlanDetail.getPlanDetailStatus().equals(MesConstants.MES_PRODUCT_PLAN_DETAIL_STATUS_FINISH) &&
!mesProductPlanDetail.getPlanDetailStatus().equals(MesConstants.MES_PRODUCT_PLAN_DETAIL_STATUS_ABNORMAL_FINISH)) {
throw new ServiceException("此生产明细还未完成,不能打印条码");
}
planCode = bindBarcode.getPlanCode();
planDetailCode = bindBarcode.getPlanDetailCode();
saleOrderId = bindBarcode.getSaleOrderId();
saleOrderCode = bindBarcode.getSaleorderCode();
materialId = rawBarcode.getMaterialId();
MesProductPlan productPlan = mesProductPlanMapper.selectOnlyMesProductPlanByPlanCode(planCode);
if (productPlan == null) {
throw new ServiceException("此生产派工不存在");
if (StringUtils.isEmpty(planCode) || StringUtils.isEmpty(planDetailCode)) {
throw new ServiceException("绑定的门板或背板条码有误");
}
if (StringUtils.isEmpty(rawBarcode.getPalletInfoCode())) {
throw new ServiceException("此条码有误,未绑定托盘信息");
}
mesBaseBarcodeInfo.setPalletInfoCode(rawBarcode.getPalletInfoCode());
} else {
planCode = mesBaseBarcodeInfo.getPlanCode();
planDetailCode = mesBaseBarcodeInfo.getPlanDetailCode();
MesBaseBarcodeInfo queryBarcodeInfo = new MesBaseBarcodeInfo();
queryBarcodeInfo.setPlanDetailCode(planDetailCode);
List<MesBaseBarcodeInfo> mesBaseBarcodeInfos = mesBaseBarcodeInfoMapper.selectMesBaseBarcodeInfoList(queryBarcodeInfo);
if (mesBaseBarcodeInfos != null && !mesBaseBarcodeInfos.isEmpty()) {
throw new ServiceException("此生产明细已经生成条码,不能重复生成");
}
MesProductPlanDetail mesProductPlanDetail = mesProductPlanDetailMapper.selectMesProductPlanDetailByPlanDetailCode(planDetailCode);
if (mesProductPlanDetail == null) {
throw new ServiceException("此生产明细不存在");
}
if (!mesProductPlanDetail.getPlanDetailStatus().equals(MesConstants.MES_PRODUCT_PLAN_DETAIL_STATUS_FINISH) &&
!mesProductPlanDetail.getPlanDetailStatus().equals(MesConstants.MES_PRODUCT_PLAN_DETAIL_STATUS_ABNORMAL_FINISH)) {
throw new ServiceException("此生产明细还未完成,不能打印条码");
}
MesProductPlan productPlan = mesProductPlanMapper.selectOnlyMesProductPlanByPlanCode(planCode);
if (productPlan == null) {
throw new ServiceException("此生产派工不存在");
}
saleOrderId = productPlan.getSaleOrderId();
saleOrderCode = productPlan.getSaleorderCode();
materialId = productPlan.getMaterialId();
}
@ -278,17 +327,17 @@ public class MesBaseBarcodeInfoServiceImpl implements IMesBaseBarcodeInfoService
mesBaseBarcodeInfo.setBatchCode(barcode);// 成品的批次代码 == 条码内容
mesBaseBarcodeInfo.setBarcodeInfo(barcode);
mesBaseBarcodeInfo.setAmount(new BigDecimal(1));
mesBaseBarcodeInfo.setBatchFlag(MesConstants.NOT_IS_BATCH);
mesBaseBarcodeInfo.setSafeFlag(MesConstants.MES_ORDER_BIND_SAFE_FLAG_YES);
mesBaseBarcodeInfo.setMaterialId(productPlan.getMaterialId());
mesBaseBarcodeInfo.setSafeFlag(saleOrderId.equals(0L) ? MesConstants.MES_ORDER_BIND_SAFE_FLAG_YES : MesConstants.MES_ORDER_BIND_SAFE_FLAG_NO);
mesBaseBarcodeInfo.setMaterialId(materialId);
mesBaseBarcodeInfo.setPrintFlag(MesConstants.MES_BARCODE_PRINT_FLAG_NO);
mesBaseBarcodeInfo.setSaleOrderId(productPlan.getSaleOrderId());
mesBaseBarcodeInfo.setSaleorderCode(productPlan.getSaleorderCode());
mesBaseBarcodeInfo.setSaleOrderId(saleOrderId);
mesBaseBarcodeInfo.setSaleorderCode(saleOrderCode);
mesBaseBarcodeInfo.setPlanCode(planCode);
mesBaseBarcodeInfo.setPlanDetailCode(planDetailCode);
mesBaseBarcodeInfo.setCreateTime(currentDate);
mesBaseBarcodeInfo.setCreateBy(SecurityUtils.getUsername());
mesBaseBarcodeInfoMapper.insertMesBaseBarcodeInfo(mesBaseBarcodeInfo);
}
@ -296,6 +345,7 @@ public class MesBaseBarcodeInfoServiceImpl implements IMesBaseBarcodeInfoService
/**
*
*
* @param mesBaseBarcodeInfo
*/
public void generateBackOrDoorBarcode(MesBaseBarcodeInfo mesBaseBarcodeInfo) {
@ -323,7 +373,7 @@ public class MesBaseBarcodeInfoServiceImpl implements IMesBaseBarcodeInfoService
}
MesBaseBarcodeInfo bindBarcodeInfo = mesBaseBarcodeInfoMapper.selectMesBaseBarcodeInfoByBarcodeInfo(mesBaseBarcodeInfo.getBindBarcode());
if(bindBarcodeInfo==null){
if (bindBarcodeInfo == null) {
throw new ServiceException("绑定的柜体码不存在");
}
@ -435,7 +485,7 @@ public class MesBaseBarcodeInfoServiceImpl implements IMesBaseBarcodeInfoService
List<MesBaseBarcodeInfo> toUpdatedBaseBarcodeInfos = new ArrayList<>();
for (Long barcodeId : barcodeIds) {
printBarcodesByBarcodeId(barcodeId,printType);
printBarcodesByBarcodeId(barcodeId, printType);
}
// for (MesBaseBarcodeInfo toUpdateMesBaseBarcodeInfo : toUpdatedBaseBarcodeInfos) {
@ -463,7 +513,7 @@ public class MesBaseBarcodeInfoServiceImpl implements IMesBaseBarcodeInfoService
@Transactional(propagation = Propagation.REQUIRES_NEW)
public void printBarcodesByBarcodeId(Long barcodeId,String printType){
public void printBarcodesByBarcodeId(Long barcodeId, String printType) {
MesBaseBarcodeInfo mesBaseBarcodeInfo = mesBaseBarcodeInfoMapper.selectMesBaseBarcodeInfoJoinByBarcodeId(barcodeId);
String printFlag = mesBaseBarcodeInfo.getPrintFlag();
if (printFlag.equals(MesConstants.MES_BARCODE_PRINT_FLAG_YES)) {

@ -11,6 +11,7 @@
<result property="printFlag" column="print_flag"/>
<result property="batchFlag" column="batch_flag"/>
<result property="barcodeType" column="barcode_type"/>
<result property="singleFlag" column="single_flag"/>
<result property="barcodeInfo" column="barcode_info"/>
<result property="batchCode" column="batch_code"/>
<result property="palletInfoCode" column="pallet_info_code"/>
@ -96,6 +97,7 @@
<if test="printFlag != null and printFlag != ''">and bbi.print_flag = #{printFlag}</if>
<if test="batchFlag != null and batchFlag != ''">and bbi.batch_flag = #{batchFlag}</if>
<if test="barcodeType != null and barcodeType != ''">and bbi.barcode_type = #{barcodeType}</if>
<if test="singleFlag != null and singleFlag != ''">and bbi.single_flag = #{singleFlag}</if>
<if test="barcodeInfo != null and barcodeInfo != ''">and bbi.barcode_info = #{barcodeInfo}</if>
<if test="batchCode != null and batchCode != ''">and bbi.batch_code = #{batchCode}</if>
<if test="palletInfoCode != null and palletInfoCode != ''">and bbi.pallet_info_code = #{palletInfoCode}</if>
@ -140,6 +142,7 @@
<if test="printFlag != null and printFlag != ''">print_flag,</if>
<if test="batchFlag != null and batchFlag != ''">batch_flag,</if>
<if test="barcodeType != null and barcodeType != ''">barcode_type,</if>
<if test="singleFlag != null and singleFlag != ''">single_flag,</if>
<if test="barcodeInfo != null and barcodeInfo != ''">barcode_info,</if>
<if test="batchCode != null and batchCode != ''">batch_code,</if>
<if test="palletInfoCode != null">pallet_info_code,</if>
@ -175,6 +178,7 @@
<if test="printFlag != null and printFlag != ''">#{printFlag},</if>
<if test="batchFlag != null and batchFlag != ''">#{batchFlag},</if>
<if test="barcodeType != null and barcodeType != ''">#{barcodeType},</if>
<if test="singleFlag != null and singleFlag != ''">#{singleFlag},</if>
<if test="barcodeInfo != null and barcodeInfo != ''">#{barcodeInfo},</if>
<if test="batchCode != null and batchCode != ''">#{batchCode},</if>
<if test="palletInfoCode != null">#{palletInfoCode},</if>
@ -268,7 +272,10 @@
</select>
<select id="selectMesBaseBarcodeInfoByProductBarcode" parameterType="String" resultMap="MesBaseBarcodeInfoResult">
<include refid="selectMesBaseBarcodeInfoVo"/>
where bbi.product_barcode = #{productBarcode} limit 1
</select>
<select id="selectMesBaseBarcodeInfoCount" parameterType="MesBaseBarcodeInfo">

@ -18,6 +18,20 @@
</el-form-->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
v-hasPermi="['mes:barcode:add']"
icon="el-icon-plus"
plain
size="mini"
type="primary"
@click="handleAddProductBarcode"
v-if="addProductBarcodeBtnVisible"
>新增
</el-button>
</el-col>
<el-col :span="1.5">
<el-button
v-hasPermi="['mes:barcode:add']"
@ -27,7 +41,7 @@
type="primary"
@click="handleAdd"
v-if="addBarcodeBtnVisible"
>{{addBtnTitle}}
>{{ addBtnTitle }}
</el-button>
</el-col>
@ -182,7 +196,8 @@
</el-form-item>
<el-form-item label="绑定柜体码" prop="bindBarcode">
<el-input v-model="form.bindBarcode" :disabled="true" v-if="this.form.barcodeType === this.BARCODE_TYPE.BACK_PLANE || this.form.barcodeType === this.BARCODE_TYPE.DOOR">
<el-input v-model="form.bindBarcode" :disabled="true"
v-if="this.form.barcodeType === this.BARCODE_TYPE.BACK_PLANE || this.form.barcodeType === this.BARCODE_TYPE.DOOR">
</el-input>
</el-form-item>
@ -240,6 +255,48 @@
</div>
</el-dialog>
<!-- 添加或修改条码信息对话框 -->
<el-dialog :title="addProductBarcodeTitle" :visible.sync="addProductBarcodeOpen" append-to-body width="500px">
<el-form ref="addProductBarcodeForm" :model="addProductBarcodeForm" :rules="addProductBarcodeRules"
label-width="120px">
<el-form-item label="原材料条码" prop="productBarcode">
<el-input v-model="addProductBarcodeForm.productBarcode" placeholder="请扫描或输入原材料条码" suffix-icon="el-icon-full-screen">
</el-input>
</el-form-item>
<el-form-item label="数量" prop="amount">
<el-input-number v-model="addProductBarcodeForm.amount" :min="0" placeholder="请输入数量" :disabled="true"/>
</el-form-item>
<el-form-item label="生产日期" prop="productionDate">
<el-date-picker v-model="addProductBarcodeForm.productionDate"
clearable
placeholder="请选择生产日期"
type="date"
value-format="yyyy-MM-dd">
</el-date-picker>
</el-form-item>
<el-form-item label="最晚出库日期" prop="lastOutstockDate">
<el-date-picker v-model="addProductBarcodeForm.lastOutstockDate"
clearable
placeholder="请选择最晚出库日期"
type="date"
value-format="yyyy-MM-dd">
</el-date-picker>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="addProductBarcodeForm.remark" placeholder="请输入内容" type="textarea"/>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitProductBarcodeForm"> </el-button>
<el-button @click="cancelProductBarcode"> </el-button>
</div>
</el-dialog>
<!-- 添加生产计划编号对话框 -->
<el-dialog :visible.sync="productPlanOpen" append-to-body title="选择生产计划编号">
<add-ProductPlan ref="productPlanRef" :defineData="defineData" @selection="handleSelection"></add-ProductPlan>
@ -291,7 +348,16 @@ export default {
title: "",
//
open: false,
addBtnTitle:'新增条码',
addBtnTitle: '新增条码',
addProductBarcodeTitle: '新增成品条码',
addProductBarcodeForm: {},
addProductBarcodeRules: {
productBarcode: [
{required: true, message: "原材料条码不能为空", trigger: "blur"}
],
},
addProductBarcodeOpen: false,
//
queryParams: {
pageNum: 1,
@ -322,7 +388,8 @@ export default {
bindBy: null,
bindTime: null,
updateBy: null,
updateTime: null
updateTime: null,
singleFlag: null,
},
//
form: {},
@ -377,16 +444,19 @@ export default {
],
addBarcodeBtnVisible: false,
addDoorBarcodeBtnVisible:false,
addDoorBarcodeBtnVisible: false,
batchPrintBtnDisabled: false,
addProductBarcodeBtnVisible: false,
BARCODE_TYPE: {
PRODUCT: '3',//
BACK_PLANE: '4',//
DOOR :'5'//
DOOR: '5'//
},
SINGLE_FLAG: {
YES: '1',//
}
};
},
mounted() {
@ -413,24 +483,30 @@ export default {
// },
methods: {
getData() {
let barcodeType = this.defineData.barcodeType ? this.defineData.barcodeType : this.BARCODE_TYPE.PRODUCT;
let bindBarcode = this.defineData.bindBarcode ? this.defineData.bindBarcode : '';
if(barcodeType === this.BARCODE_TYPE.BACK_PLANE){
this.addBtnTitle = "新增背板条码";
}
this.form = {
planId: this.defineData.planId,
planCode: this.defineData.planCode,
planDetailCode: this.defineData.planDetailCode,
batchFlag: '0',
bindBarcode: bindBarcode,
barcodeType: barcodeType,
amount: 1,
}
this.queryParams.planDetailCode = this.defineData.planDetailCode;
if(barcodeType !==this.BARCODE_TYPE.PRODUCT){
this.queryParams.barcodeType = null;
this.queryParams.barcodeTypeStr = this.BARCODE_TYPE.DOOR+","+this.BARCODE_TYPE.BACK_PLANE;
if (this.defineData.barcodeType) {
let barcodeType = this.defineData.barcodeType ? this.defineData.barcodeType : this.BARCODE_TYPE.PRODUCT;
let bindBarcode = this.defineData.bindBarcode ? this.defineData.bindBarcode : '';
if (barcodeType === this.BARCODE_TYPE.BACK_PLANE) {
this.addBtnTitle = "新增背板条码";
}
this.form = {
planId: this.defineData.planId,
planCode: this.defineData.planCode,
planDetailCode: this.defineData.planDetailCode,
batchFlag: '0',
bindBarcode: bindBarcode,
barcodeType: barcodeType,
amount: 1,
}
this.queryParams.planDetailCode = this.defineData.planDetailCode;
if (barcodeType !== this.BARCODE_TYPE.PRODUCT) {
this.queryParams.barcodeType = null;
this.queryParams.barcodeTypeStr = this.BARCODE_TYPE.DOOR + "," + this.BARCODE_TYPE.BACK_PLANE;
}
} else {
this.queryParams.barcodeType = this.BARCODE_TYPE.PRODUCT;
this.queryParams.singleFlag = this.SINGLE_FLAG.YES;
this.addProductBarcodeBtnVisible = true;
}
@ -441,25 +517,30 @@ export default {
listProductBarcode(this.queryParams).then(response => {
this.barcodeList = response.rows;
this.total = response.total;
if (this.total && this.total > 0) {
if(this.queryParams.barcodeTypeStr){
if (this.queryParams.singleFlag && this.queryParams.singleFlag === this.SINGLE_FLAG.YES) {
} else {
if (this.total && this.total > 0) {
if (this.queryParams.barcodeTypeStr) {
this.addBarcodeBtnVisible = true;
this.addDoorBarcodeBtnVisible = true;
this.barcodeList.forEach(e => {
if (e.barcodeType === this.BARCODE_TYPE.BACK_PLANE) {
this.addBarcodeBtnVisible = false;
} else if (e.barcodeType === this.BARCODE_TYPE.DOOR) {
this.addDoorBarcodeBtnVisible = false;
}
})
} else {
this.addBarcodeBtnVisible = false;
}
} else {
this.addBarcodeBtnVisible = true;
this.addDoorBarcodeBtnVisible = true;
this.barcodeList.forEach(e =>{
if(e.barcodeType === this.BARCODE_TYPE.BACK_PLANE){
this.addBarcodeBtnVisible = false;
}else if(e.barcodeType === this.BARCODE_TYPE.DOOR){
this.addDoorBarcodeBtnVisible = false;
}
})
}else{
this.addBarcodeBtnVisible = false;
this.handleAdd();
}
} else {
this.addBarcodeBtnVisible = true;
this.addDoorBarcodeBtnVisible = true;
this.handleAdd();
}
this.loading = false;
});
},
@ -558,6 +639,56 @@ export default {
this.title = "添加条码信息";
},
//
resetProductBarcode() {
this.addProductBarcodeForm = {
barcodeId: null,
productBarcode: null,
printTime: null,
printPerson: null,
batchFlag: '0',
barcodeType: '3',
barcodeInfo: null,
batchCode: null,
palletInfoCode: null,
materialId: null,
manufacturerId: null,
amount: 1,
machineName: null,
printNumber: null,
poNo: null,
productionDate: null,
acceptedDate: null,
lastOutstockDate: null,
planCode: null,
planDetailCode: null,
saleOrderId: null,
saleorderCode: null,
projectNo: null,
serialNumber: null,
remark: null,
bindStatus: null,
bindBy: null,
bindTime: null,
updateBy: null,
updateTime: null
};
this.resetForm("addProductBarcodeForm");
},
handleAddProductBarcode() {
this.resetProductBarcode();
this.addProductBarcodeOpen = true;
},
//
cancelProductBarcode() {
this.addProductBarcodeOpen = false;
this.resetProductBarcode();
},
/** 打印条码按钮操作 */
handlePrintBarcodes(row) {
const barcodeIds = row.barcodeId || this.ids;
@ -645,6 +776,21 @@ export default {
});
},
/** 提交按钮 */
submitProductBarcodeForm() {
this.$refs["addProductBarcodeForm"].validate(valid => {
if (valid) {
this.addProductBarcodeForm.singleFlag = this.SINGLE_FLAG.YES;
addProductBarcode(this.addProductBarcodeForm).then(response => {
this.$modal.msgSuccess("新增成功");
this.addProductBarcodeOpen = false;
this.getList();
});
}
});
},
}
};
</script>

Loading…
Cancel
Save