From b13703802e12b2879a2c3ae7a931ee326c7af3af Mon Sep 17 00:00:00 2001 From: zhangxin Date: Wed, 9 Mar 2022 13:28:06 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8B=E7=BA=BF=E6=89=93=E5=8C=85=E5=8F=AF?= =?UTF-8?q?=E4=BB=A5=E6=B7=B7=E5=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jit/implments/PackOrder.service.impl.go | 83 ++++++++++--------- 1 file changed, 44 insertions(+), 39 deletions(-) diff --git a/services/jit/implments/PackOrder.service.impl.go b/services/jit/implments/PackOrder.service.impl.go index 7d3a164..303cf8f 100644 --- a/services/jit/implments/PackOrder.service.impl.go +++ b/services/jit/implments/PackOrder.service.impl.go @@ -466,8 +466,8 @@ func (impl *PackOrderServiceImplement) ScanBarcode(user *global.User, barcode st return nil, grmi.NewBusinessError("条码对应的工单状态不允许打包") } serialOrder := serialOrderLi[0] - if serialOrder.QualityCheck != baseModel.QualityCheck_STATUS_OK { - return nil, grmi.NewBusinessError("工单目检结果不符合要求") + if serialOrder.QualityCheck != baseModel.QualityCheck_STATUS_OK && serialOrder.QualityCheck != baseModel.QualityCheck_STATUS_FAIL { + return nil, grmi.NewBusinessError("工单未进行目检") } // 获取用户之前是否存在未关包的包装单 如果存在则使用之前的包装单ID 如果不存在则创建包装单 如果超过一个则报错 var packOrderId string @@ -501,12 +501,12 @@ func (impl *PackOrderServiceImplement) ScanBarcode(user *global.User, barcode st currentPackOrder := &model.PackOrderWithStatus{} // 如果当前用户不存在操作中未关闭的包装单, 则创建包装单数据 if packOrderId == "" { - var packTypeId string - if serialOrder.OrderType == baseModel.ODER_TYPE_SEQ { - packTypeId = model.PACK_TYPE_STD - } else { - packTypeId = model.PACK_TYPE_INT - } + var packTypeId string = model.PACK_TYPE_STD + //if serialOrder.OrderType == baseModel.ODER_TYPE_SEQ { + // packTypeId = model.PACK_TYPE_STD + //} else { + // packTypeId = model.PACK_TYPE_INT + //} packOrderId, err = snrDao.GetNextSnr(project.PackOrderSnr) if err != nil { _ = session.Rollback() @@ -575,11 +575,11 @@ func (impl *PackOrderServiceImplement) ScanBarcode(user *global.User, barcode st return nil, grmi.NewBusinessError("对应的包装单数据不存在, 包装单ID:" + packOrderId) } // 如果工单时内部工单 则校验包装单类型 是不是符合要求 同时插入包装单 - if serialOrder.OrderType == baseModel.ODER_TYPE_SEQ { - if currentPackOrder.PackOrder.PackTypeId == model.PACK_TYPE_INT { - _ = session.Rollback() - return nil, grmi.NewBusinessError("当前工单是序列工单,但是包装单是内部包装单。") - } + //if serialOrder.OrderType == baseModel.ODER_TYPE_SEQ { + // if currentPackOrder.PackOrder.PackTypeId == model.PACK_TYPE_INT { + // _ = session.Rollback() + // return nil, grmi.NewBusinessError("当前工单是序列工单,但是包装单是内部包装单。") + // } //currentPackOrder.PackOrder.ActQty += 1 //currentPackOrder.PackOrder.PlanQty += 1 //currentPackOrder.PackOrder.Operator = user.UserId @@ -614,12 +614,12 @@ func (impl *PackOrderServiceImplement) ScanBarcode(user *global.User, barcode st //result.PackOrderId = currentPackOrder.PackOrder.PackOrderId //result.MatchTemplateLi = make([]model.PackTemplate, 0) //return result, nil - } else { - if currentPackOrder.PackOrder.PackTypeId != model.PACK_TYPE_INT { - _ = session.Rollback() - return nil, grmi.NewBusinessError("当前进行包装的包装单是标包, 但工单不是序列工单") - } - } + //} else { + // if currentPackOrder.PackOrder.PackTypeId != model.PACK_TYPE_INT { + // _ = session.Rollback() + // return nil, grmi.NewBusinessError("当前进行包装的包装单是标包, 但工单不是序列工单") + // } + //} // 判断包装单是否校验CheckSyncKey if currentPackOrder.PackOrder.CheckSyncKey { @@ -938,18 +938,18 @@ func (impl *PackOrderServiceImplement) ScanBarcode(user *global.User, barcode st } else if len(tempMatchLi) == 1 { // 如果当前包装单匹配到一个模板 则直接将模板数据写入到当前包装单中 template := tempMatchLi[0] - var packTypeId string - if serialOrderLi[0].OrderType == baseModel.ODER_TYPE_INTERVAL { - packTypeId = model.PACK_TYPE_INT - } else { - packTypeId = template.PackTypeId - } - var checkSyncKey bool = true - if currentPackOrder.PackOrder.PackTypeId == model.PACK_TYPE_INT { - checkSyncKey = false - } else { - checkSyncKey = template.CheckSyncKey - } + var packTypeId string = template.PackTypeId + //if serialOrderLi[0].OrderType == baseModel.ODER_TYPE_INTERVAL { + // packTypeId = model.PACK_TYPE_INT + //} else { + // packTypeId = template.PackTypeId + //} + var checkSyncKey bool = template.CheckSyncKey + //if currentPackOrder.PackOrder.PackTypeId == model.PACK_TYPE_INT { + // checkSyncKey = false + //} else { + // checkSyncKey = template.CheckSyncKey + //} currentPackOrder.PackOrder.PackTemplateId = template.PackTemplateId currentPackOrder.PackOrder.PackTypeId = packTypeId currentPackOrder.PackOrder.PlanQty = template.PlanQty @@ -1005,15 +1005,20 @@ func (impl *PackOrderServiceImplement) ScanBarcode(user *global.User, barcode st return result, nil } else { var checkSyncKey bool = true - if currentPackOrder.PackOrder.PackTypeId == model.PACK_TYPE_INT { - checkSyncKey = false - } else { - for _, template := range tempMatchLi { - if !template.CheckSyncKey { - checkSyncKey = false - } + for _, template := range tempMatchLi { + if !template.CheckSyncKey { + checkSyncKey = false } } + //if currentPackOrder.PackOrder.PackTypeId == model.PACK_TYPE_INT { + // checkSyncKey = false + //} else { + // for _, template := range tempMatchLi { + // if !template.CheckSyncKey { + // checkSyncKey = false + // } + // } + //} currentPackOrder.PackOrder.CheckSyncKey = checkSyncKey err = packOrderDao.UpdateOne(¤tPackOrder.PackOrder) @@ -2250,7 +2255,7 @@ func (impl *PackOrderServiceImplement) MakeUpSeatData(session *xorm.Session, use } var status = `1` for _, serialOrder := range serialOrderLi { - if serialOrder.SerialOrderStatus.Status != baseModel.WO_STATUS_FINISHED { + if serialOrder.SerialOrderStatus.Status != baseModel.WO_STATUS_FINISHED || serialOrder.QualityCheck != baseModel.QualityCheck_STATUS_OK { status = `0` } }