From a47f2b690ee2b7e16942b2bbf7e6facd246faa6c Mon Sep 17 00:00:00 2001 From: louwenzhi Date: Mon, 1 Nov 2021 09:16:18 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9D=A1=E7=A0=81=E6=9B=BF=E4=BB=A3=E9=9B=B6?= =?UTF-8?q?=E4=BB=B6=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- services/jit/ShipOrder.service.go | 2 +- .../jit/implments/ShipOrder.service.impl.go | 46 ++++++++++--------- .../implments/ReclinerReclst.service.impl.go | 2 +- web/controllers/jit/ShipOrder.rest.go | 10 ++-- 4 files changed, 31 insertions(+), 29 deletions(-) diff --git a/services/jit/ShipOrder.service.go b/services/jit/ShipOrder.service.go index 1c89232..e52099e 100644 --- a/services/jit/ShipOrder.service.go +++ b/services/jit/ShipOrder.service.go @@ -236,7 +236,7 @@ type ShipOrderService interface { * @Date : 2021-10-25 13:36:01 * ******************************************************************************/ - ScanCarPackOrders(user *models.Usertab, shipOrderId string, packOrderId string) (bool, error) + ScanCarPackOrders(user *models.Usertab, shipOrderId string, packOrderId string) (bool,string, error) } /****************************************************************************** diff --git a/services/jit/implments/ShipOrder.service.impl.go b/services/jit/implments/ShipOrder.service.impl.go index 050529f..18bd4fa 100644 --- a/services/jit/implments/ShipOrder.service.impl.go +++ b/services/jit/implments/ShipOrder.service.impl.go @@ -528,7 +528,7 @@ func (impl *ShipOrderServiceImplement) Update(user *models.Usertab, entities *[] * @Reference LAPP_GAAS_GFrame_BACKEND/services/jit/ShipOrderService.ScanCarPackOrders * ******************************************************************************/ -func (impl *ShipOrderServiceImplement) ScanCarPackOrders(user *models.Usertab, shipOrderId string, packOrderId string) (bool, error) { +func (impl *ShipOrderServiceImplement) ScanCarPackOrders(user *models.Usertab, shipOrderId string, packOrderId string) (bool,string, error) { grmi.Log(user, "/services/jit/implments/ShipOrder.service.impl.go", "ScanCarPackOrders", "扫描ShipOrder") @@ -536,9 +536,10 @@ func (impl *ShipOrderServiceImplement) ScanCarPackOrders(user *models.Usertab, s session := engine.NewSession() defer session.Close() + IsClose := "doing" // add Begin() before any action if err := session.Begin(); err != nil { - return false, err + return false,IsClose, err } packDao := logDal.NewPackOrderDAO(session, user.Pid, user.Userid) dao := dal.NewShipOrderDAO(session, user.Pid, user.Userid) @@ -549,34 +550,34 @@ func (impl *ShipOrderServiceImplement) ScanCarPackOrders(user *models.Usertab, s shipInfo, err := dao.SelectOne(shipOrderId) if err != nil { session.Rollback() - return false, err + return false,IsClose, err } if shipInfo == nil { session.Rollback() - return true, grmi.NewBusinessError("发运单信息不存在!") + return true,IsClose, grmi.NewBusinessError("发运单信息不存在!") } packInfo, err := packDao.SelectOne(packOrderId) if err != nil { session.Rollback() - return false, err + return false,IsClose, err } if packInfo == nil { session.Rollback() - return true, grmi.NewBusinessError("包装单信息不存在!") + return true,IsClose, grmi.NewBusinessError("包装单信息不存在!") } if packInfo.Status != basmodel.WO_STATUS_FINISHED{ session.Rollback() - return true, grmi.NewBusinessError("包装单状态未完成!") + return true,IsClose, grmi.NewBusinessError("包装单状态未完成!") } //第二步:根据包装单信心,查询对应的发运单项信息 itemInfo, err := lstDao.SelectOne(shipOrderId, packInfo.MaterialId) if err != nil { session.Rollback() - return false, err + return false,IsClose, err } if itemInfo == nil { session.Rollback() - return true, grmi.NewBusinessError("发运项信息不存在!") + return true,IsClose, grmi.NewBusinessError("发运项信息不存在!") } //判断是否扫描过 packDatalist, err := dataDao.Select([]grmi.Predicate{ @@ -584,11 +585,11 @@ func (impl *ShipOrderServiceImplement) ScanCarPackOrders(user *models.Usertab, s }, nil) if err != nil { session.Rollback() - return false, err + return false,IsClose, err } if len(packDatalist) > 0 { session.Rollback() - return true, grmi.NewBusinessError("该包装单已经扫描过!") + return true,IsClose, grmi.NewBusinessError("该包装单已经扫描过!") } //第三步:逻辑判断是否符合规则 actQty := utils.ValueToInt(packInfo.ActQty, 0) @@ -600,14 +601,14 @@ func (impl *ShipOrderServiceImplement) ScanCarPackOrders(user *models.Usertab, s err = lstDao.UpdateOne(itemInfo) if err != nil { session.Rollback() - return false, err + return false,IsClose, err } //查询最后一条的pos posInfo, err := dataDao.SelectLastPos(shipOrderId) if err != nil { session.Rollback() - return false, err + return false,IsClose, err } var pos int if posInfo == nil { @@ -628,14 +629,14 @@ func (impl *ShipOrderServiceImplement) ScanCarPackOrders(user *models.Usertab, s err = dataDao.InsertOne(datalst) if err != nil { session.Rollback() - return false, err + return false,IsClose, err } shipInfo.ActualQty = (shipInfo.ActualQty + actQty) shipInfo.Status = basmodel.SHIP_ORDER_STATUS_RUNNING err = dao.UpdateOne(shipInfo) if err != nil { session.Rollback() - return false, err + return false,IsClose, err } } else if itemInfo.PlanQty == (itemInfo.ActualQty + actQty) { //满足关闭该项条件 @@ -644,14 +645,14 @@ func (impl *ShipOrderServiceImplement) ScanCarPackOrders(user *models.Usertab, s err = lstDao.UpdateOne(itemInfo) if err != nil { session.Rollback() - return false, err + return false,IsClose, err } //查询最后一条的pos posInfo, err := dataDao.SelectLastPos(shipOrderId) if err != nil { session.Rollback() - return false, err + return false,IsClose, err } var pos int if posInfo == nil { @@ -672,7 +673,7 @@ func (impl *ShipOrderServiceImplement) ScanCarPackOrders(user *models.Usertab, s err = dataDao.InsertOne(datalst) if err != nil { session.Rollback() - return false, err + return false,IsClose, err } //判断是否已经全部扫描完毕,如果全部完毕,那么可以关闭发运单 items, err := lstDao.Select([]grmi.Predicate{ @@ -686,21 +687,22 @@ func (impl *ShipOrderServiceImplement) ScanCarPackOrders(user *models.Usertab, s err = dao.UpdateOne(shipInfo) if err != nil { session.Rollback() - return false, err + return false,"doing", err } + IsClose = "success" } else { shipInfo.ActualQty = (shipInfo.ActualQty + actQty) shipInfo.Status = basmodel.SHIP_ORDER_STATUS_RUNNING err = dao.UpdateOne(shipInfo) if err != nil { session.Rollback() - return false, err + return false,IsClose, err } } } else { session.Rollback() - return true, grmi.NewBusinessError("该包装单零件数量大于需求零件!") + return true,IsClose, grmi.NewBusinessError("该包装单零件数量大于需求零件!") } session.Commit() - return true, nil + return true,IsClose, nil } diff --git a/services/qm/implments/ReclinerReclst.service.impl.go b/services/qm/implments/ReclinerReclst.service.impl.go index 3303e51..bc41768 100644 --- a/services/qm/implments/ReclinerReclst.service.impl.go +++ b/services/qm/implments/ReclinerReclst.service.impl.go @@ -232,7 +232,7 @@ func (impl *ReclinerReclstServiceImplement) AddPrinterInfo(user *models.Usertab, dateStr := utils.TimeFormat(orderInfo.PlanStartTime.Restore(), "yyyy/MM/dd") detail.VariableValue = dateStr } else if detail.VariableName == "$CUSTID$" { - detail.VariableValue = artInfo.CustArtId + detail.VariableValue = artInfo.AlternativeArtId } else if detail.VariableName == "$ORDERID$" { detail.VariableValue = entity.SerialOrderId } diff --git a/web/controllers/jit/ShipOrder.rest.go b/web/controllers/jit/ShipOrder.rest.go index 16ca5e8..91d7fd4 100644 --- a/web/controllers/jit/ShipOrder.rest.go +++ b/web/controllers/jit/ShipOrder.rest.go @@ -419,7 +419,7 @@ func RegisterUpdateShipOrder(party router.Party, path string, method func(*model * @Date : 2021-10-25 13:36:01 * ******************************************************************************/ -func RegisterScanCarPackOrders(party router.Party, path string, method func(*models.Usertab, string, string) (bool, error)) { +func RegisterScanCarPackOrders(party router.Party, path string, method func(*models.Usertab, string, string) (bool, string, error)) { party.Get(path, func(ctx iris.Context) { user, ok := jwts.ParseToken(ctx) @@ -429,15 +429,15 @@ func RegisterScanCarPackOrders(party router.Party, path string, method func(*mod } shipOrderId := ctx.URLParam("shipOrderId") packOrderId := ctx.URLParam("packOrderId") - ok, err := method(user, shipOrderId, packOrderId) + ok, isClose, err := method(user, shipOrderId, packOrderId) if err != nil && !ok { - supports.Error(ctx, iris.StatusBadRequest, err.Error(), nil) + supports.Error(ctx, iris.StatusBadRequest, err.Error(), isClose) return } if err != nil && ok { - supports.Error(ctx, iris.StatusAccepted, err.Error(), nil) + supports.Error(ctx, iris.StatusAccepted, err.Error(), isClose) return } - supports.Ok(ctx, "请扫描下一个待发运零件!", "") + supports.Ok(ctx, "请扫描下一个待发运零件!", isClose) }) }