@ -225,6 +225,16 @@
< / e l - t a b l e - c o l u m n >
< el -table -column label = "操作" align = "center" class -name = " small -padding fixed -width " fixed = "right" >
< template slot -scope = " scope " >
< el -button
size = "mini"
type = "text"
icon = "el-icon-edit"
@ click = "handleUpdate(scope.row)"
v - if = "((scope.row.printFlag !==PRINT_FLAG.YES && scope.row.singleFlag!==SINGLE_FLAG.MERGE) || scope.row.singleFlag===SINGLE_FLAG.MERGE) &&scope.row.barcodeType === BARCODE_TYPE.RAW"
v - hasPermi = "['mes:barcode:edit']"
> 编辑
< / e l - b u t t o n >
< el -button
size = "mini"
type = "text"
@ -292,7 +302,7 @@
< el -form -item label = "批次标识" prop = "batchFlag" >
< el -radio -group v-model ="form.batchFlag" :disabled ="saleBatchFlagDisable" >
< el -radio
v - for = "dict in dict.type. ac tiv e_flag"
v - for = "dict in dict.type. mes_m aterial_batch _flag"
: key = "dict.value"
: label = "dict.value"
> { { dict . label } }
@ -320,10 +330,8 @@
< / e l - t o o l t i p >
条码数量
< / span >
< el -input v -model = " form.barcodeAmount " disabled / >
< span v-if ="form.currentOrderBindAmount!==0 || form.currentSafeBindAmount !==0" > < b > 订单条码数量 : < / b > { {
form . currentOrderBindAmount
} } < b > 安全库存条码数量 : < / b > { { form . currentSafeBindAmount } } < / span >
< el -input v -model = " form.barcodeAmount " / >
< span > < b > 可用数量 : < / b > { { form . availableBindAmount } } < / span >
< / e l - f o r m - i t e m >
< el -form -item label = "生产日期" prop = "productionDate" >
@ -605,7 +613,7 @@
< el -table :data ="materialRelateForm.mesSaleOrderRelateList" :row-class-name ="rowMesBaseMaterialRelateIndex"
@ selection - change = "handleMesBaseMaterialRelateSelectionChange" ref = "mesBaseMaterialRelate" >
< el -table -column label = "序号" align = "center" prop = "index" / >
< el -table -column label = "采购订单" align = "center" prop = "purchaseOrderId" v -if = " false " / >
< el -table -column label = "采购订单" align = "center" prop = "purchaseOrderId" / >
< el -table -column label = "物料编码" align = "center" prop = "materialCode" / >
< el -table -column label = "物料名称" align = "center" prop = "materialName" / >
< el -table -column label = "物料规格" align = "center" prop = "materialSpec" / >
@ -617,7 +625,7 @@
size = "mini"
type = "text"
icon = "el-icon-delete"
@ click = " regenerateBarcode (scope.row)"
@ click = " handleDeletePurchaseOrder (scope.row)"
> 删除
< / e l - b u t t o n >
< / template >
@ -672,11 +680,12 @@ import {checkWarehouseMaterials} from "@/api/wms/wmswarehouse";
import selectOrderBind from '@//views/mes/purchaseOrder/selectOrderBind.vue' ;
import selectMaterial from '@//views/mes/materialinfo/selectMaterial.vue' ;
import { getMaterialinfo } from "@/api/mes/materialinfo" ;
export default {
name : "Barcode" ,
dicts : [ 'bind_status' , 'active_flag' , 'barcode_type' , 'mes_safe_flag' , 'mes_print_flag' ],
dicts : [ 'bind_status' , 'active_flag' , 'barcode_type' , 'mes_safe_flag' , 'mes_print_flag' , 'mes_material_batch_flag' ],
components : {
'select-orderBind' : selectOrderBind ,
'select-material' : selectMaterial
@ -756,9 +765,6 @@ export default {
batchFlag : [
{ required : true , message : "批次标识不能为空" , trigger : "change" }
] ,
amount : [
{ required : true , message : "批次数量不能为空" , trigger : "change" }
] ,
barcodeAmount : [
{ required : true , message : "条码数量不能为空" , trigger : "change" }
] ,
@ -818,9 +824,6 @@ export default {
batchFlag : [
{ required : true , message : "批次标识不能为空" , trigger : "change" }
] ,
amount : [
{ required : true , message : "批次数量不能为空" , trigger : "change" }
] ,
barcodeType : [
{ required : true , message : "条码类型不能为空" , trigger : "change" }
] ,
@ -893,9 +896,6 @@ export default {
batchFlag : [
{ required : true , message : "批次标识不能为空" , trigger : "change" }
] ,
amount : [
{ required : true , message : "批次数量不能为空" , trigger : "change" }
] ,
barcodeType : [
{ required : true , message : "条码类型不能为空" , trigger : "change" }
] ,
@ -904,6 +904,23 @@ export default {
] ,
} ,
PRINT _FLAG : {
YES : "1" ,
NO : "0"
} ,
SINGLE _FLAG : {
NO : "0" ,
YES : "1" ,
INTERNAL : "2" ,
MERGE : "3"
} ,
BARCODE _TYPE : {
RAW : "1" ,
REGULAR : "9"
} ,
} ;
} ,
created ( ) {
@ -971,7 +988,7 @@ export default {
bindTime : null ,
updateBy : null ,
updateTime : null ,
currentOrder BindAmount: 0 ,
available BindAmount: 0 ,
currentSafeBindAmount : 0
} ;
this . resetForm ( "form" ) ;
@ -1000,6 +1017,7 @@ export default {
} ,
/** 新增采购订单按钮操作 */
handlePurchaseOrderAdd ( ) {
this . barcodeData = { mergeFlag : null } ;
this . purchaseOrderOpen = true ;
} ,
@ -1103,9 +1121,8 @@ export default {
return formItem . relateSaleOrderId === item . saleOrderId ;
} ) ;
if ( filterSaleOrderIdMaterialRelateList != null && filterSaleOrderIdMaterialRelateList . length > 0 ) {
if ( filterSaleOrderIdMaterialRelateList != null && filterSaleOrderIdMaterialRelateList . length > 0 ) {
let errorMsg = "选择的信息跟已经选择的销售订单号明细相同." ;
alert ( JSON . stringify ( filterSaleOrderIdMaterialRelateList ) )
for ( let ssoid of filterSaleOrderIdMaterialRelateList ) {
errorMsg += "销售订单号:" + ssoid . saleOrderCode + ",成品编码:" + ssoid . productCode + ",成品名称:" + ssoid . productName + ",成品规格:" + ssoid . productSpec + ";" ;
}
@ -1120,18 +1137,19 @@ export default {
index : item . index ,
orderBindId : item . orderBindId ,
relateSaleOrderId : item . saleOrderId ,
saleOrderCode: item . saleOrderCode ,
relateSaleOrderCode: item . saleOrderCode ,
productId : item . productId ,
productCode : item . productCode ,
productName : item . productName ,
productSpec : item . productSpec ,
productCode : item . productCode ,
productName : item . productName ,
productSpec : item . productSpec ,
purchaseOrderId : item . purchaseOrderId ,
materialId : item . materialId ,
materialCode : item . materialCode ,
materialName : item . materialName ,
materialSpec : item . materialSpec ,
specificationParameter : item . specificationParameter ,
relateSaleOrderAmount : item . relateSaleOrderAmount
materialCode : item . materialCode ,
materialName : item . materialName ,
materialSpec : item . materialSpec ,
specificationParameter : item . specificationParameter ,
relateSaleOrderAmount : item . relateSaleOrderAmount ,
orderAmount : item . orderAmount
} ;
this . materialRelateForm . mesSaleOrderRelateList . push ( mesSaleOrderRelate ) ;
@ -1147,83 +1165,83 @@ export default {
/ / a l e r t ( J S O N . s t r i n g i f y ( s e l e c t e d R o w s ) ) ;
} else {
let selectedRow = this . $refs . purchaseOrderRef . selectedRow ;
this . form . batchFlag = null ;
this . form . amount = null ;
this . form . materialCode = null ;
this . form . materialId = null ;
this . form . materialName = null ;
this . form . materialSpec = null ;
this . form . barcodeSpec = null ;
this . form . projectNo = null ;
this . form . purchaseOrderId = null ;
/ / 本 次 待 生 成 订 单 条 码 数 量
this . form . currentOrderBindAmount = null ;
/ / 本 次 待 生 成 安 全 库 存 条 码 数 量
this . form . currentSafeBindAmount = null ;
/ / 本 次 生 成 条 码 总 数 量
this . form . barcodeAmount = null ;
this . form . poNo = null ;
let currentOrderBindAmount = parseInt ( selectedRow . orderBindAmount ) - parseInt ( selectedRow . orderBarcodeAmount ) ;
let currentSafeBindAmount = parseInt ( selectedRow . safeBindAmount ) - parseInt ( selectedRow . safeBarcodeAmount )
let canBindAmount = currentOrderBindAmount + currentSafeBindAmount ;
if ( selectedRow . mesMaterialId === null || selectedRow . mesMaterialId === '' || selectedRow . mesMaterialId === 0 ) {
this . $modal . msgError ( "物料信息不存在" ) ;
return ;
}
if ( canBindAmount <= 0 ) {
this . $modal . msgError ( "无可生成条码数量" ) ;
return ;
}
this . $set ( this . form , "poNo" , selectedRow . poNo ) ;
this . form . barcodeType = '1' ; / / 条 码 类 型 ( 1 原 材 料 , 2 半 成 品 , 3 成 品 , 4 背 板 )
/ / t h i s . f o r m . m a t e r i a l I d = s e l e c t e d R o w . m a t e r i a l I d ; / / 在 物 料 信 息 中 对 应 的 是 E R P I D
this . form . materialId = selectedRow . mesMaterialId ; / / 物 料 信 息 表 中 物 料 I D 主 键
this . form . materialCode = selectedRow . materialCode ;
this . form . materialName = selectedRow . materialName ;
this . form . materialSpec = selectedRow . materialSpec ;
this . form . projectNo = selectedRow . projectNo ;
this . form . purchaseOrderId = selectedRow . purchaseOrderId ;
this . form . barcodeSpec = selectedRow . specificationParameter ;
/ / 本 次 待 生 成 订 单 条 码 数 量
this . form . currentOrderBindAmount = currentOrderBindAmount ;
/ / 本 次 待 生 成 安 全 库 存 条 码 数 量
this . form . currentSafeBindAmount = currentSafeBindAmount ;
/ / 本 次 生 成 条 码 总 数 量
this . form . barcodeAmount = canBindAmount ;
if ( selectedRow . batchFlag != null && selectedRow . batchFlag !== '' ) {
this . saleBatchFlagDisable = true ;
this . form . batchFlag = selectedRow . batchFlag ;
if ( this . form . batchFlag === this . BATCH _FLAG . YES ) {
this . form . amount = selectedRow . batchAmount ;
} else {
this . form . amount = 1 ;
}
} else {
this . saleBatchFlagDisable = false ;
}
getMaterialInfoByErpId ( selectedRow . materialId ) . then ( response => {
if ( response . data == null ) {
this . $modal . msgError ( "物料信息不存在" ) ;
return ;
}
this . purchaseOrderOpen = false ;
} ) ;
this . submitSingleSelectPurchaseOrder ( ) ;
}
} ,
submitSingleSelectPurchaseOrder ( ) {
let selectedRow = this . $refs . purchaseOrderRef . selectedRow ;
this . form . batchFlag = null ;
this . form . amount = null ;
this . form . materialCode = null ;
this . form . materialId = null ;
this . form . materialName = null ;
this . form . materialSpec = null ;
this . form . barcodeSpec = null ;
this . form . projectNo = null ;
this . form . purchaseOrderId = null ;
/ / 本 次 待 生 成 订 单 条 码 数 量
this . form . availableBindAmount = null ;
/ / 本 次 生 成 条 码 总 数 量
this . form . barcodeAmount = null ;
this . form . poNo = null ;
this . form . orderBindId = null ;
if ( selectedRow . relateSaleOrderAmount == null || selectedRow . relateSaleOrderAmount === '' || parseInt ( selectedRow . relateSaleOrderAmount ) <= 0 ) {
this . $modal . msgError ( "无可生成条码数量" ) ;
return ;
}
this . $set ( this . form , "poNo" , selectedRow . poNo ) ;
this . form . barcodeType = '1' ; / / 条 码 类 型 ( 1 原 材 料 , 2 半 成 品 , 3 成 品 , 4 背 板 )
/ / t h i s . f o r m . m a t e r i a l I d = s e l e c t e d R o w . m a t e r i a l I d ; / / 在 物 料 信 息 中 对 应 的 是 E R P I D
this . form . materialId = selectedRow . materialId ; / / 物 料 信 息 表 中 物 料 I D 主 键
this . form . materialCode = selectedRow . materialCode ;
this . form . materialName = selectedRow . materialName ;
this . form . materialSpec = selectedRow . materialSpec ;
this . form . projectNo = selectedRow . projectNo ;
this . form . purchaseOrderId = selectedRow . purchaseOrderId ;
this . form . barcodeSpec = selectedRow . specificationParameter ;
/ / 本 次 可 用 条 码 数 量
this . form . availableBindAmount = parseInt ( selectedRow . relateSaleOrderAmount ) ;
this . form . orderBindId = selectedRow . orderBindId ;
/ / 本 次 生 成 条 码 总 数 量
this . form . barcodeAmount = null ;
this . form . batchFlag = selectedRow . batchFlag ;
this . form . amount = selectedRow . batchAmount ;
this . saleBatchFlagDisable = ! ! this . form . batchFlag ;
this . purchaseOrderOpen = false ;
} ,
handleDeletePurchaseOrder ( row ) {
const mesSaleOrderRelateList = this . materialRelateForm . mesSaleOrderRelateList ;
this . materialRelateForm . mesSaleOrderRelateList = mesSaleOrderRelateList . filter ( function ( item ) {
return row . index !== item . index
} ) ;
if ( ! this . materialRelateForm . mesSaleOrderRelateList || this . materialRelateForm . mesSaleOrderRelateList . length <= 0 ) {
this . materialRelateForm . poNo = null ;
this . materialRelateForm . saleOrderCode = null ;
}
/ / i f ( t h i s . c h e c k e d D m s B i l l s M a i n t D e t a i l P r o j e c t . l e n g t h = = 0 ) {
/ / t h i s . $ m o d a l . m s g E r r o r ( " 请 先 选 择 要 删 除 的 保 养 工 单 明 细 项 目 信 息 ; 检 查 每 个 项 目 的 点 巡 检 结 果 详 情 数 据 " ) ;
/ / } e l s e {
/ / c o n s t d m s B i l l s M a i n t D e t a i l P r o j e c t L i s t = t h i s . d m s B i l l s M a i n t D e t a i l P r o j e c t L i s t ;
/ / c o n s t c h e c k e d D m s B i l l s M a i n t D e t a i l P r o j e c t = t h i s . c h e c k e d D m s B i l l s M a i n t D e t a i l P r o j e c t ;
/ / t h i s . d m s B i l l s M a i n t D e t a i l P r o j e c t L i s t = d m s B i l l s M a i n t D e t a i l P r o j e c t L i s t . f i l t e r ( f u n c t i o n ( i t e m ) {
/ / r e t u r n c h e c k e d D m s B i l l s M a i n t D e t a i l P r o j e c t . i n d e x O f ( i t e m . i n d e x ) = = - 1
/ / } ) ;
/ / }
} ,
/** 新增按钮操作 */
handleAdd ( ) {
this . reset ( ) ;
@ -1231,6 +1249,7 @@ export default {
this . title = "添加原材料条码信息" ;
} ,
/** 打印条码按钮操作 */
handlePrintBarcodes ( row ) {
this . loading = true ;
@ -1295,10 +1314,22 @@ export default {
/** 修改按钮操作 */
handleUpdate ( row ) {
this . reset ( ) ;
const barcodeId = row . barcodeId || this . ids
if ( row . singleFlag === this . SINGLE _FLAG . MERGE ) {
this . resetRelate ( ) ;
} else {
if ( row . purchaseOrderId === 0 ) {
this . resetNoPurchase ( ) ;
} else {
this . reset ( ) ;
}
}
const barcodeId = row . barcodeId ;
getBarcode ( barcodeId ) . then ( response => {
this . form = response . data ;
this . open = true ;
this . title = "修改原材料条码信息" ;
} ) ;
@ -1697,7 +1728,7 @@ export default {
bindTime : null ,
updateBy : null ,
updateTime : null ,
currentOrder BindAmount: 0 ,
available BindAmount: 0 ,
currentSafeBindAmount : 0 ,
mesSaleOrderRelateList : [ ]
} ;
@ -1731,7 +1762,10 @@ export default {
this . $refs [ "materialRelateForm" ] . validate ( valid => {
if ( valid ) {
this . submitLoading = true ;
alert ( JSON . stringify ( this . materialRelateForm . mesSaleOrderRelateList ) )
if ( this . materialRelateForm . mesSaleOrderRelateList . length <= 1 ) {
this . $modal . msgError ( "请选择至少2条采购信息" ) ;
return ;
}
mergeAddBarcode ( this . materialRelateForm ) . then ( response => {
this . $modal . msgSuccess ( "新增成功" ) ;
this . materialRelateOpen = false ;