From 665f960bef472912921e3be01bc04558e950f6fa Mon Sep 17 00:00:00 2001 From: zhangxin Date: Tue, 21 Jun 2022 08:45:58 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E6=89=93=E6=95=A3=E5=8A=9F?= =?UTF-8?q?=E8=83=BD=E5=92=8C=E5=9B=9E=E5=86=B2=E6=A0=87=E8=AF=86=EF=BC=8C?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=89=93=E5=8C=85=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dao/om/SerialOrder.dao.go | 1 + dao/om/SerialOrderOnlyBarcodeRecLst.dao.go | 279 ++++++++++++++ dao/om/implments/SerialOrder.dao.impl.go | 26 ++ .../SerialOrderOnlyBarcodeRecLst.dao.impl.go | 342 ++++++++++++++++++ meta/om/SerialOrder.meta.go | 4 +- meta/om/SerialOrderOnlyBarcodeRecLst.meta.go | 61 ++++ models/om/SerialOrder.model.go | 3 + .../om/SerialOrderOnlyBarcodeRecLst.model.go | 54 +++ .../jit/implments/PackOrder.service.impl.go | 25 +- .../implments/ReclinerReclst.service.impl.go | 2 + 10 files changed, 786 insertions(+), 11 deletions(-) create mode 100644 dao/om/SerialOrderOnlyBarcodeRecLst.dao.go create mode 100644 dao/om/implments/SerialOrderOnlyBarcodeRecLst.dao.impl.go create mode 100644 meta/om/SerialOrderOnlyBarcodeRecLst.meta.go create mode 100644 models/om/SerialOrderOnlyBarcodeRecLst.model.go diff --git a/dao/om/SerialOrder.dao.go b/dao/om/SerialOrder.dao.go index a222434..7660df7 100644 --- a/dao/om/SerialOrder.dao.go +++ b/dao/om/SerialOrder.dao.go @@ -401,6 +401,7 @@ type SerialOrderDAO interface { ******************************************************************************/ SelectSerialOrderIdBySyncKey(syncKeyLi []string) ([]string, error) UpdateBackFlushFlag(serialOrderIdLi []string) (int64, error) + UpdateShipBackFlushFlag(serialOrderIdLi []string) (int64, error) SelectTraceOrder(workLineId , serialOrderId , start, end string, status int, pageNumber int64, pageSize int64) (grmi.PagingResult, error) SelectUnOnGoingSerialOrder(custOrderId string) ([]model.VOmSerialorder, error) /****************************************************************************** diff --git a/dao/om/SerialOrderOnlyBarcodeRecLst.dao.go b/dao/om/SerialOrderOnlyBarcodeRecLst.dao.go new file mode 100644 index 0000000..eab153b --- /dev/null +++ b/dao/om/SerialOrderOnlyBarcodeRecLst.dao.go @@ -0,0 +1,279 @@ +// Copyright (c) Shenyang Leading Edge Intelligent Technology Co., Ltd. All rights reserved. + +package om + +import ( + "LAPP_ACURA_MOM_BACKEND/dao/om/implments" + "LAPP_ACURA_MOM_BACKEND/grmi" + model "LAPP_ACURA_MOM_BACKEND/models/om" + "github.com/go-xorm/xorm" +) + +/****************************************************************************** + * + * @Interface Name : SerialOrderOnlyBarcodeRecLstDAO + *----------------------------------------------------------------------------- + * + * @Description : SerialOrderOnlyBarcodeRecLst的数据访问对象接口 + * + * @Author : 代码生成器创建 + * + * @Date : 2022-06-20 09:20:27 + * + ******************************************************************************/ +type SerialOrderOnlyBarcodeRecLstDAO interface { + /****************************************************************************** + * + * @Function Name : InsertOne + *----------------------------------------------------------------------------- + * + * @Description : 插入一条SerialOrderOnlyBarcodeRecLst + * + * @Function Parameters : 需要插入的SerialOrderOnlyBarcodeRecLst + * + * @Return Value : 执行时发生的错误 + * + * @Author : 代码生成器创建 + * + * @Date : 2022-06-20 09:20:27 + * + ******************************************************************************/ + InsertOne(*model.SerialOrderOnlyBarcodeRecLst) error + /****************************************************************************** + * + * @Function Name : DeleteOne + *----------------------------------------------------------------------------- + * + * @Description : 删除指定键的SerialOrderOnlyBarcodeRecLst + * + * @Function Parameters : 主键 + * + * @Function Parameters : 主键 + * + * @Function Parameters : 主键 + * + * @Function Parameters : 主键 + * + * @Function Parameters : 主键 + * + * @Return Value : 执行时发生的错误 + * + * @Author : 代码生成器创建 + * + * @Date : 2022-06-20 09:20:27 + * + ******************************************************************************/ + DeleteOne(string, string, string, string, int) error + /****************************************************************************** + * + * @Function Name : SelectOne + *----------------------------------------------------------------------------- + * + * @Description : 查找指定键的SerialOrderOnlyBarcodeRecLst + * + * @Function Parameters : 主键 + * + * @Function Parameters : 主键 + * + * @Function Parameters : 主键 + * + * @Function Parameters : 主键 + * + * @Function Parameters : 主键 + * + * @Return Value : 查找到的SerialOrderOnlyBarcodeRecLst + * + * @Return Value : 执行时发生的错误 + * + * @Author : 代码生成器创建 + * + * @Date : 2022-06-20 09:20:27 + * + ******************************************************************************/ + SelectOne(string, string, string, string, int) (*model.SerialOrderOnlyBarcodeRecLst, error) + /****************************************************************************** + * + * @Function Name : UpdateOne + *----------------------------------------------------------------------------- + * + * @Description : 修改SerialOrderOnlyBarcodeRecLst + * + * @Function Parameters : 需要修改的SerialOrderOnlyBarcodeRecLst + * + * @Return Value : 执行时发生的错误 + * + * @Author : 代码生成器创建 + * + * @Date : 2022-06-20 09:20:27 + * + ******************************************************************************/ + UpdateOne(*model.SerialOrderOnlyBarcodeRecLst) error + /****************************************************************************** + * + * @Function Name : Insert + *----------------------------------------------------------------------------- + * + * @Description : 插入多条SerialOrderOnlyBarcodeRecLst + * + * @Function Parameters : 需要插入的SerialOrderOnlyBarcodeRecLst列表 + * + * @Return Value : 执行时发生的错误 + * + * @Author : 代码生成器创建 + * + * @Date : 2022-06-20 09:20:27 + * + ******************************************************************************/ + Insert(*[]model.SerialOrderOnlyBarcodeRecLst) error + /****************************************************************************** + * + * @Function Name : Delete + *----------------------------------------------------------------------------- + * + * @Description : 删除多条SerialOrderOnlyBarcodeRecLst + * + * @Function Parameters : 需要删除的SerialOrderOnlyBarcodeRecLst列表 + * + * @Return Value : 执行时发生的错误 + * + * @Author : 代码生成器创建 + * + * @Date : 2022-06-20 09:20:27 + * + ******************************************************************************/ + Delete(*[]model.SerialOrderOnlyBarcodeRecLst) error + /****************************************************************************** + * + * @Function Name : DeleteWhere + *----------------------------------------------------------------------------- + * + * @Description : 按条件删除SerialOrderOnlyBarcodeRecLst + * + * @Return Value : 执行时发生的错误 + * + * @Author : 代码生成器创建 + * + * @Date : 2022-06-20 09:20:27 + * + ******************************************************************************/ + DeleteWhere([]grmi.Predicate) error + /****************************************************************************** + * + * @Function Name : Select + *----------------------------------------------------------------------------- + * + * @Description : 按条件查询SerialOrderOnlyBarcodeRecLst + * + * @Function Parameters : 查询条件 + * + * @Function Parameters : 排序字段 + * + * @Return Value : 查询结果 + * + * @Return Value : 执行时发生的错误 + * + * @Author : 代码生成器创建 + * + * @Date : 2022-06-20 09:20:27 + * + ******************************************************************************/ + Select([]grmi.Predicate, []grmi.Field) ([]model.SerialOrderOnlyBarcodeRecLst, error) + /****************************************************************************** + * + * @Function Name : SelectCols + *----------------------------------------------------------------------------- + * + * @Description : 按条件查询SerialOrderOnlyBarcodeRecLst指定列 + * + * @Function Parameters : 查询条件 + * + * @Function Parameters : 排序字段 + * + * @Return Value : 查询结果 + * + * @Return Value : 执行时发生的错误 + * + * @Author : 代码生成器创建 + * + * @Date : 2022-06-20 09:20:27 + * + ******************************************************************************/ + SelectCols([]grmi.Predicate, []grmi.Field, []string) ([]map[string]interface{}, error) + /****************************************************************************** + * + * @Function Name : SelectAndPaging + *----------------------------------------------------------------------------- + * + * @Description : 按条件查询SerialOrderOnlyBarcodeRecLst并分页 + * + * @Function Parameters : 分页信息 + * + * @Function Parameters : 查询条件 + * + * @Function Parameters : 排序字段 + * + * @Return Value : 查询结果 + * + * @Return Value : 执行时发生的错误 + * + * @Author : 代码生成器创建 + * + * @Date : 2022-06-20 09:20:27 + * + ******************************************************************************/ + SelectAndPaging(*grmi.Paging, []grmi.Predicate, []grmi.Field) (grmi.PagingResult, error) + /****************************************************************************** + * + * @Function Name : Update + *----------------------------------------------------------------------------- + * + * @Description : 修改多条SerialOrderOnlyBarcodeRecLst + * + * @Function Parameters : 需要修改的SerialOrderOnlyBarcodeRecLst列表 + * + * @Return Value : 执行时发生的错误 + * + * @Author : 代码生成器创建 + * + * @Date : 2022-06-20 09:20:27 + * + ******************************************************************************/ + Update(*[]model.SerialOrderOnlyBarcodeRecLst) error + /****************************************************************************** + * + * @Function Name : UpdateWhere + *----------------------------------------------------------------------------- + * + * @Description : 按条件修改SerialOrderOnlyBarcodeRecLst + * + * @Return Value : 执行时发生的错误 + * + * @Author : 代码生成器创建 + * + * @Date : 2022-06-20 09:20:27 + * + ******************************************************************************/ + UpdateWhere([]grmi.Predicate, *model.SerialOrderOnlyBarcodeRecLst, ...string) error +} + +/****************************************************************************** + * + * @Function Name : NewSerialOrderOnlyBarcodeRecLstDAO + *----------------------------------------------------------------------------- + * + * @Description : 创建一个SerialOrderOnlyBarcodeRecLstDAO实例 + * + * @Function Parameters : xorm会话 + * + * @Function Parameters : 基本主键 + * + * @Return Value : SerialOrderOnlyBarcodeRecLstDAO实例 + * + * @Author : 代码生成器创建 + * + * @Date : 2022-06-20 09:20:27 + * + ******************************************************************************/ +func NewSerialOrderOnlyBarcodeRecLstDAO(session *xorm.Session, plantNr int, userid string) SerialOrderOnlyBarcodeRecLstDAO { + return implments.NewSerialOrderOnlyBarcodeRecLstDAOImplement(session, plantNr, userid) +} diff --git a/dao/om/implments/SerialOrder.dao.impl.go b/dao/om/implments/SerialOrder.dao.impl.go index 29fcb2b..e2e95f5 100644 --- a/dao/om/implments/SerialOrder.dao.impl.go +++ b/dao/om/implments/SerialOrder.dao.impl.go @@ -626,6 +626,32 @@ func (impl *SerialOrderDAOImplement) UpdateBackFlushFlag(serialOrderIdLi []strin return count, err } +/****************************************************************************** + * + * @Reference LAPP_ACURA_MOM_BACKEND/dao/om/SerialOrderDAO.UpdateBackFlushFlag + * + ******************************************************************************/ +func (impl *SerialOrderDAOImplement) UpdateShipBackFlushFlag(serialOrderIdLi []string) (int64, error) { + where := fmt.Sprintf("%s = ? and %s = ?", + meta.SerialOrder_PlantNr.ColumnName, + meta.SerialOrder_BackFlushFlag.ColumnName, + ) + parameters := []interface{}{impl.plantNr, 0} + inStr := fmt.Sprintf(" and %s in ( ", meta.SerialOrder_SerialOrderId.ColumnName) + for index, serialOrderId := range serialOrderIdLi { + if index != 0 { + inStr += "," + } + inStr += `'` + serialOrderId + `'` + } + inStr += " ) " + where += inStr + updateMap := make(map[string]bool) + updateMap[meta.SerialOrder_ShipBackFlush.Name] = true + count, err := impl.session.Table(impl.meta.TableName).Where(where, parameters...).Cols(meta.SerialOrder_ShipBackFlush.ColumnName).Update(&updateMap) + return count, err +} + // SelectTraceOrder 查询展示的工单 func (impl *SerialOrderDAOImplement) SelectTraceOrder(workLineId , serialOrderId , start, end string, status int, pageNumber int64, pageSize int64) (grmi.PagingResult, error) { parameters := []interface{}{impl.plantNr} diff --git a/dao/om/implments/SerialOrderOnlyBarcodeRecLst.dao.impl.go b/dao/om/implments/SerialOrderOnlyBarcodeRecLst.dao.impl.go new file mode 100644 index 0000000..edeee5b --- /dev/null +++ b/dao/om/implments/SerialOrderOnlyBarcodeRecLst.dao.impl.go @@ -0,0 +1,342 @@ +// Copyright (c) Shenyang Leading Edge Intelligent Technology Co., Ltd. All rights reserved. + +package implments + +import ( + "LAPP_ACURA_MOM_BACKEND/grmi" + meta "LAPP_ACURA_MOM_BACKEND/meta/om" + model "LAPP_ACURA_MOM_BACKEND/models/om" + "fmt" + "github.com/go-xorm/xorm" + "xorm.io/core" +) + +/****************************************************************************** + * + * @Struct Name : SerialOrderOnlyBarcodeRecLstDAOImplement + *----------------------------------------------------------------------------- + * + * @Description : SerialOrderOnlyBarcodeRecLst的数据访问对象实现 + * + * @Author : 代码生成器创建 + * + * @Date : 2022-06-20 09:20:27 + * + ******************************************************************************/ +type SerialOrderOnlyBarcodeRecLstDAOImplement struct { + session *xorm.Session + meta *grmi.Entity + plantNr int + userid string +} + +/****************************************************************************** + * + * @Function Name : NewSerialOrderOnlyBarcodeRecLstDAOImplement + *----------------------------------------------------------------------------- + * + * @Description : 创建一个SerialOrderOnlyBarcodeRecLstDAOImplement实例 + * + * @Function Parameters : xorm会话 + * + * @Function Parameters : 基本主键 + * + * @Return Value : SerialOrderOnlyBarcodeRecLstDAOImplement实例 + * + * @Author : 代码生成器创建 + * + * @Date : 2022-06-20 09:20:27 + * + ******************************************************************************/ +func NewSerialOrderOnlyBarcodeRecLstDAOImplement(session *xorm.Session, plantNr int, userid string) *SerialOrderOnlyBarcodeRecLstDAOImplement { + return &SerialOrderOnlyBarcodeRecLstDAOImplement{session, &meta.SerialOrderOnlyBarcodeRecLst, plantNr, userid} +} + +/****************************************************************************** + * + * @Reference LAPP_ACURA_MOM_BACKEND/dao/om/SerialOrderOnlyBarcodeRecLstDAO.InsertOne + * + ******************************************************************************/ +func (impl *SerialOrderOnlyBarcodeRecLstDAOImplement) InsertOne(entity *model.SerialOrderOnlyBarcodeRecLst) error { + entity.PlantNr = impl.plantNr + entity.LastUser = impl.userid + _, err := impl.session.Table(impl.meta.TableName).Insert(entity) + if err != nil { + return grmi.NewDataBaseError(err) + } + return nil +} + +/****************************************************************************** + * + * @Reference LAPP_ACURA_MOM_BACKEND/dao/om/SerialOrderOnlyBarcodeRecLstDAO.DeleteOne + * + ******************************************************************************/ +func (impl *SerialOrderOnlyBarcodeRecLstDAOImplement) DeleteOne(serialOrderId string, pO string, subArtId string, barcode string, status int) error { + _, err := impl.session.Table(impl.meta.TableName).ID(core.PK{impl.plantNr, serialOrderId, pO, subArtId, barcode, status}).Delete(impl.meta.Indicator) + if err != nil { + return grmi.NewDataBaseError(err) + } + + return nil +} + +/****************************************************************************** + * + * @Reference LAPP_ACURA_MOM_BACKEND/dao/om/SerialOrderOnlyBarcodeRecLstDAO.SelectOne + * + ******************************************************************************/ +func (impl *SerialOrderOnlyBarcodeRecLstDAOImplement) SelectOne(serialOrderId string, pO string, subArtId string, barcode string, status int) (*model.SerialOrderOnlyBarcodeRecLst, error) { + var data model.SerialOrderOnlyBarcodeRecLst + ok, err := impl.session.Table(impl.meta.TableName).ID(core.PK{impl.plantNr, serialOrderId, pO, subArtId, barcode, status}).Get(&data) + if err != nil { + return nil, grmi.NewDataBaseError(err) + } + if !ok { + return nil, nil + } + return &data, nil +} + +/****************************************************************************** + * + * @Reference LAPP_ACURA_MOM_BACKEND/dao/om/SerialOrderOnlyBarcodeRecLstDAO.UpdateOne + * + ******************************************************************************/ +func (impl *SerialOrderOnlyBarcodeRecLstDAOImplement) UpdateOne(entity *model.SerialOrderOnlyBarcodeRecLst) error { + entity.PlantNr = impl.plantNr + entity.LastUser = impl.userid + _, err := impl.session.Table(impl.meta.TableName).Cols(impl.meta.UpdatingMembers...).ID(entity.GetKey()).Update(entity) + if err != nil { + return grmi.NewDataBaseError(err) + } + return nil +} + +/****************************************************************************** + * + * @Reference LAPP_ACURA_MOM_BACKEND/dao/om/SerialOrderOnlyBarcodeRecLstDAO.Insert + * + ******************************************************************************/ +func (impl *SerialOrderOnlyBarcodeRecLstDAOImplement) Insert(entities *[]model.SerialOrderOnlyBarcodeRecLst) error { + for i := 0; i < len(*entities); i++ { + entity := &(*entities)[i] + entity.PlantNr = impl.plantNr + entity.LastUser = impl.userid + } + _, err := impl.session.Table(impl.meta.TableName).Insert(entities) + if err != nil { + return grmi.NewDataBaseError(err) + } + return nil +} + +/****************************************************************************** + * + * @Reference LAPP_ACURA_MOM_BACKEND/dao/om/SerialOrderOnlyBarcodeRecLstDAO.Delete + * + ******************************************************************************/ +func (impl *SerialOrderOnlyBarcodeRecLstDAOImplement) Delete(entities *[]model.SerialOrderOnlyBarcodeRecLst) error { + for _, entity := range *entities { + entity.PlantNr = impl.plantNr + _, err := impl.session.Table(impl.meta.TableName).ID(entity.GetKey()).Delete(impl.meta.Indicator) + if err != nil { + return grmi.NewDataBaseError(err) + } + } + return nil +} + +/****************************************************************************** + * + * @Reference LAPP_ACURA_MOM_BACKEND/dao/om/SerialOrderOnlyBarcodeRecLstDAO.DeleteWhere + * + ******************************************************************************/ +func (impl *SerialOrderOnlyBarcodeRecLstDAOImplement) DeleteWhere(predicates []grmi.Predicate) error { + + parameters := []interface{}{impl.plantNr} + where := fmt.Sprintf("%s = ?", meta.SerialOrderOnlyBarcodeRecLst_PlantNr.ColumnName) + + session := impl.session.Table(impl.meta.TableName) + if predicates != nil { + for _, predicate := range predicates { + where += predicate.Build() + parameters = append(parameters, predicate.Values...) + } + session = session.Where(where, parameters...) + } else { + session = session.Where(where, parameters...) + } + + _, err := session.Delete(impl.meta.Indicator) + if err != nil { + return grmi.NewDataBaseError(err) + } + return nil +} + +/****************************************************************************** + * + * @Reference LAPP_ACURA_MOM_BACKEND/dao/om/SerialOrderOnlyBarcodeRecLstDAO.Select + * + ******************************************************************************/ +func (impl *SerialOrderOnlyBarcodeRecLstDAOImplement) Select(predicates []grmi.Predicate, orderByFields []grmi.Field) ([]model.SerialOrderOnlyBarcodeRecLst, error) { + + parameters := []interface{}{impl.plantNr} + where := fmt.Sprintf("%s = ?", meta.SerialOrderOnlyBarcodeRecLst_PlantNr.ColumnName) + + session := impl.session.Table(impl.meta.TableName) + if predicates != nil { + for _, predicate := range predicates { + where += predicate.Build() + parameters = append(parameters, predicate.Values...) + } + session = session.Where(where, parameters...) + } else { + session = session.Where(where, parameters...) + } + + session = session.OrderBy(meta.SerialOrderOnlyBarcodeRecLst_PlantNr.ColumnName) + if orderByFields != nil { + for _, field := range orderByFields { + session = session.OrderBy(field.ColumnName) + } + } + + data := make([]model.SerialOrderOnlyBarcodeRecLst, 0, 10) + err := session.Find(&data) + if err != nil { + return nil, grmi.NewDataBaseError(err) + } + return data, nil +} + +/****************************************************************************** + * + * @Reference LAPP_ACURA_MOM_BACKEND/dao/om/SerialOrderOnlyBarcodeRecLstDAO.SelectCols + * + ******************************************************************************/ +func (impl *SerialOrderOnlyBarcodeRecLstDAOImplement) SelectCols(predicates []grmi.Predicate, orderByFields []grmi.Field, cloumns []string) ([]map[string]interface{}, error) { + + parameters := []interface{}{impl.plantNr} + where := fmt.Sprintf("%s = ?", meta.SerialOrderOnlyBarcodeRecLst_PlantNr.ColumnName) + + session := impl.session.Table(impl.meta.TableName) + if predicates != nil { + for _, predicate := range predicates { + where += predicate.Build() + parameters = append(parameters, predicate.Values...) + } + session = session.Where(where, parameters...) + } else { + session = session.Where(where, parameters...) + } + + session = session.OrderBy(meta.SerialOrderOnlyBarcodeRecLst_PlantNr.ColumnName) + if orderByFields != nil { + for _, field := range orderByFields { + session = session.OrderBy(field.ColumnName) + } + } + + data := make([]map[string]interface{}, 0, 10) + err := session.Cols(cloumns...).Find(&data) + if err != nil { + return nil, grmi.NewDataBaseError(err) + } + return data, nil +} + +/****************************************************************************** + * + * @Reference LAPP_ACURA_MOM_BACKEND/dao/om/SerialOrderOnlyBarcodeRecLstDAO.SelectAndPaging + * + ******************************************************************************/ +func (impl *SerialOrderOnlyBarcodeRecLstDAOImplement) SelectAndPaging(paging *grmi.Paging, predicates []grmi.Predicate, orderByFields []grmi.Field) (grmi.PagingResult, error) { + + parameters := []interface{}{impl.plantNr} + where := fmt.Sprintf("%s = ?", meta.SerialOrderOnlyBarcodeRecLst_PlantNr.ColumnName) + + session := impl.session.Table(impl.meta.TableName) + if predicates != nil { + for _, predicate := range predicates { + where += predicate.Build() + parameters = append(parameters, predicate.Values...) + } + session = session.Where(where, parameters...) + } else { + session = session.Where(where, parameters...) + } + + count, err := session.Count(impl.meta.Indicator) + if err != nil { + return grmi.EmptyPagingResult, err + } + + orderBy := " order by " + meta.SerialOrderOnlyBarcodeRecLst_PlantNr.ColumnName + if orderByFields != nil { + for _, field := range orderByFields { + if orderBy == " order by " { + orderBy += field.ColumnName + } else { + orderBy += ", " + field.ColumnName + } + } + } + parameters = append(parameters, paging.Offset(), paging.Size) + data := make([]model.SerialOrderOnlyBarcodeRecLst, 0, 10) + where = " where " + where + err = impl.session.Table(impl.meta.TableName).SQL("select * from ["+impl.meta.TableName+"]"+where+orderBy+" offset ? row fetch next ? row only", parameters...).Find(&data) + if err != nil { + return grmi.EmptyPagingResult, err + } + return grmi.PagingResult{Records: data, Count: count, PageNumber: paging.Number, PageSize: paging.Size}, nil +} + +/****************************************************************************** + * + * @Reference LAPP_ACURA_MOM_BACKEND/dao/om/SerialOrderOnlyBarcodeRecLstDAO.Update + * + ******************************************************************************/ +func (impl *SerialOrderOnlyBarcodeRecLstDAOImplement) Update(entities *[]model.SerialOrderOnlyBarcodeRecLst) error { + for i := 0; i < len(*entities); i++ { + entity := &(*entities)[i] + entity.PlantNr = impl.plantNr + entity.LastUser = impl.userid + _, err := impl.session.Table(impl.meta.TableName).Cols(impl.meta.UpdatingMembers...).ID(entity.GetKey()).Update(entity) + if err != nil { + return grmi.NewDataBaseError(err) + } + } + return nil +} + +/****************************************************************************** + * + * @Reference LAPP_ACURA_MOM_BACKEND/dao/om/SerialOrderOnlyBarcodeRecLstDAO.UpdateWhere + * + ******************************************************************************/ +func (impl *SerialOrderOnlyBarcodeRecLstDAOImplement) UpdateWhere(predicates []grmi.Predicate, entity *model.SerialOrderOnlyBarcodeRecLst, columns ...string) error { + + parameters := []interface{}{impl.plantNr} + where := fmt.Sprintf("%s = ?", meta.SerialOrderOnlyBarcodeRecLst_PlantNr.ColumnName) + + session := impl.session.Table(impl.meta.TableName) + if predicates != nil { + for _, predicate := range predicates { + where += predicate.Build() + parameters = append(parameters, predicate.Values...) + } + session = session.Where(where, parameters...) + } else { + session = session.Where(where, parameters...) + } + + columns = append(columns, meta.SerialOrderOnlyBarcodeRecLst_LastUser.Name) + entity.LastUser = impl.userid + _, err := impl.session.Table(impl.meta.TableName).Cols(columns...).Update(entity) + if err != nil { + return grmi.NewDataBaseError(err) + } + return nil +} diff --git a/meta/om/SerialOrder.meta.go b/meta/om/SerialOrder.meta.go index 48d3a8e..b14075d 100644 --- a/meta/om/SerialOrder.meta.go +++ b/meta/om/SerialOrder.meta.go @@ -49,6 +49,7 @@ var SerialOrder_PickingFlag = grmi.NewField("PickingFlag", "[OM_SerialOrder].Pic var SerialOrder_IsFirstPieceToggle = grmi.NewField("IsFirstPieceToggle", "[OM_SerialOrder].IsFirstPieceToggle", "isfirstpiecetoggle", grmi.TypeBool) var SerialOrder_SyncKey = grmi.NewField("SyncKey", "[OM_SerialOrder].SyncKey", "synckey", grmi.TypeString) var SerialOrder_BackFlushFlag = grmi.NewField("BackFlushFlag", "[OM_SerialOrder].BackFlushFlag", "backflushflag", grmi.TypeBool) +var SerialOrder_ShipBackFlush = grmi.NewField("ShipBackFlush", "[OM_SerialOrder].ShipBackFlush", "shipbackflush", grmi.TypeBool) var SerialOrder_GenerateFlag = grmi.NewField("GenerateFlag", "[OM_SerialOrder].GenerateFlag", "generateflag", grmi.TypeBool) var SerialOrder_RepairFlag = grmi.NewField("RepairFlag", "[OM_SerialOrder].RepairFlag", "repairflag", grmi.TypeBool) var SerialOrder_OriginSerialOrderId = grmi.NewField("OriginSerialOrderId", "[OM_SerialOrder].OriginSerialOrderId", "originserialorderid", grmi.TypeString) @@ -114,6 +115,7 @@ var SerialOrder = grmi.NewEntity( SerialOrder_IsFirstPieceToggle.Name: SerialOrder_IsFirstPieceToggle, SerialOrder_SyncKey.Name: SerialOrder_SyncKey, SerialOrder_BackFlushFlag.Name: SerialOrder_BackFlushFlag, + SerialOrder_ShipBackFlush.Name: SerialOrder_ShipBackFlush, SerialOrder_GenerateFlag.Name: SerialOrder_GenerateFlag, SerialOrder_RepairFlag.Name: SerialOrder_RepairFlag, SerialOrder_OriginSerialOrderId.Name: SerialOrder_OriginSerialOrderId, @@ -134,4 +136,4 @@ var SerialOrder = grmi.NewEntity( SerialOrder_CreateTime.Name: SerialOrder_CreateTime, }, []string{"PlantNr"}, - []string{"ArtId", "ProjectId", "LinkSerialOrderId", "QualityCheck", "GenerateFlag", "OriginSerialOrderId", "Descr", "WorkOrderId", "CustOrderId", "FirstPieceInBatch", "LastPieceInBatch", "PreSchedKey", "SchedKey", "Priority", "OrderType", "OrderType1", "OrderType2", "PlanResourceId", "UsedResourceId", "PlanQty", "QtyUomId", "OpTimePerItem", "TimeUomId", "PlanStartDate", "PlanEndDate", "SetupStartTime", "SetupEndTime", "PlanStartTime", "PlanEndTime", "ActStartTime", "ActEndTime", "PickingFlag", "IsFirstPieceToggle", "SyncKey", "BackFlushFlag", "RepairFlag", "QualityCheckTime", "MainOrderId", "EOLCheck", "SBRCheck", "CtrlPara1", "CtrlPara2", "CtrlStr1", "CtrlStr2", "CtrlTime1", "CtrlTime2", "LastUser"}) + []string{"ArtId", "ProjectId", "LinkSerialOrderId", "QualityCheck", "GenerateFlag", "ShipBackFlush", "OriginSerialOrderId", "Descr", "WorkOrderId", "CustOrderId", "FirstPieceInBatch", "LastPieceInBatch", "PreSchedKey", "SchedKey", "Priority", "OrderType", "OrderType1", "OrderType2", "PlanResourceId", "UsedResourceId", "PlanQty", "QtyUomId", "OpTimePerItem", "TimeUomId", "PlanStartDate", "PlanEndDate", "SetupStartTime", "SetupEndTime", "PlanStartTime", "PlanEndTime", "ActStartTime", "ActEndTime", "PickingFlag", "IsFirstPieceToggle", "SyncKey", "BackFlushFlag", "RepairFlag", "QualityCheckTime", "MainOrderId", "EOLCheck", "SBRCheck", "CtrlPara1", "CtrlPara2", "CtrlStr1", "CtrlStr2", "CtrlTime1", "CtrlTime2", "LastUser"}) diff --git a/meta/om/SerialOrderOnlyBarcodeRecLst.meta.go b/meta/om/SerialOrderOnlyBarcodeRecLst.meta.go new file mode 100644 index 0000000..5799ebd --- /dev/null +++ b/meta/om/SerialOrderOnlyBarcodeRecLst.meta.go @@ -0,0 +1,61 @@ +// Copyright (c) Shenyang Leading Edge Intelligent Technology Co., Ltd. All rights reserved. + +package om + +import ( + "LAPP_ACURA_MOM_BACKEND/grmi" + model "LAPP_ACURA_MOM_BACKEND/models/om" +) + +/****************************************************************************** + * + * @Description : SerialOrderOnlyBarcodeRecLst的字段元数据 + * + * @Author : 代码生成器创建 + * + * @Date : 2022-06-20 09:20:27 + * + ******************************************************************************/ +var SerialOrderOnlyBarcodeRecLst_PlantNr = grmi.NewField("PlantNr", "[OM_SerialOrderOnlyBarcodeRecLst].PlantNr", "plantnr", grmi.TypeInt) +var SerialOrderOnlyBarcodeRecLst_SerialOrderId = grmi.NewField("SerialOrderId", "[OM_SerialOrderOnlyBarcodeRecLst].SerialOrderId", "serialorderid", grmi.TypeString) +var SerialOrderOnlyBarcodeRecLst_PO = grmi.NewField("PO", "[OM_SerialOrderOnlyBarcodeRecLst].PO", "po", grmi.TypeString) +var SerialOrderOnlyBarcodeRecLst_SubArtId = grmi.NewField("SubArtId", "[OM_SerialOrderOnlyBarcodeRecLst].SubArtId", "subartid", grmi.TypeString) +var SerialOrderOnlyBarcodeRecLst_Barcode = grmi.NewField("Barcode", "[OM_SerialOrderOnlyBarcodeRecLst].Barcode", "barcode", grmi.TypeString) +var SerialOrderOnlyBarcodeRecLst_Status = grmi.NewField("Status", "[OM_SerialOrderOnlyBarcodeRecLst].Status", "status", grmi.TypeInt) +var SerialOrderOnlyBarcodeRecLst_DetailId = grmi.NewField("DetailId", "[OM_SerialOrderOnlyBarcodeRecLst].DetailId", "detailid", grmi.TypeInt64) +var SerialOrderOnlyBarcodeRecLst_WorkPlaceNr = grmi.NewField("WorkPlaceNr", "[OM_SerialOrderOnlyBarcodeRecLst].WorkPlaceNr", "workplacenr", grmi.TypeInt) +var SerialOrderOnlyBarcodeRecLst_Remark1 = grmi.NewField("Remark1", "[OM_SerialOrderOnlyBarcodeRecLst].Remark1", "remark1", grmi.TypeString) +var SerialOrderOnlyBarcodeRecLst_Remark2 = grmi.NewField("Remark2", "[OM_SerialOrderOnlyBarcodeRecLst].Remark2", "remark2", grmi.TypeString) +var SerialOrderOnlyBarcodeRecLst_LastModify = grmi.NewField("LastModify", "[OM_SerialOrderOnlyBarcodeRecLst].LastModify", "lastmodify", grmi.TypeDateTime) +var SerialOrderOnlyBarcodeRecLst_LastUser = grmi.NewField("LastUser", "[OM_SerialOrderOnlyBarcodeRecLst].LastUser", "lastuser", grmi.TypeString) +var SerialOrderOnlyBarcodeRecLst_CreateTime = grmi.NewField("CreateTime", "[OM_SerialOrderOnlyBarcodeRecLst].CreateTime", "createtime", grmi.TypeDateTime) + +/****************************************************************************** + * + * @Description : SerialOrderOnlyBarcodeRecLst的元数据 + * + * @Author : 代码生成器创建 + * + * @Date : 2022-06-20 09:20:27 + * + ******************************************************************************/ +var SerialOrderOnlyBarcodeRecLst = grmi.NewEntity( + "OM_SerialOrderOnlyBarcodeRecLst", + func() interface{} { return &model.SerialOrderOnlyBarcodeRecLst{} }, + map[string]grmi.Field{ + SerialOrderOnlyBarcodeRecLst_PlantNr.Name: SerialOrderOnlyBarcodeRecLst_PlantNr, + SerialOrderOnlyBarcodeRecLst_SerialOrderId.Name: SerialOrderOnlyBarcodeRecLst_SerialOrderId, + SerialOrderOnlyBarcodeRecLst_PO.Name: SerialOrderOnlyBarcodeRecLst_PO, + SerialOrderOnlyBarcodeRecLst_SubArtId.Name: SerialOrderOnlyBarcodeRecLst_SubArtId, + SerialOrderOnlyBarcodeRecLst_Barcode.Name: SerialOrderOnlyBarcodeRecLst_Barcode, + SerialOrderOnlyBarcodeRecLst_Status.Name: SerialOrderOnlyBarcodeRecLst_Status, + SerialOrderOnlyBarcodeRecLst_DetailId.Name: SerialOrderOnlyBarcodeRecLst_DetailId, + SerialOrderOnlyBarcodeRecLst_WorkPlaceNr.Name: SerialOrderOnlyBarcodeRecLst_WorkPlaceNr, + SerialOrderOnlyBarcodeRecLst_Remark1.Name: SerialOrderOnlyBarcodeRecLst_Remark1, + SerialOrderOnlyBarcodeRecLst_Remark2.Name: SerialOrderOnlyBarcodeRecLst_Remark2, + SerialOrderOnlyBarcodeRecLst_LastModify.Name: SerialOrderOnlyBarcodeRecLst_LastModify, + SerialOrderOnlyBarcodeRecLst_LastUser.Name: SerialOrderOnlyBarcodeRecLst_LastUser, + SerialOrderOnlyBarcodeRecLst_CreateTime.Name: SerialOrderOnlyBarcodeRecLst_CreateTime, + }, + []string{"PlantNr"}, + []string{"DetailId", "WorkPlaceNr", "Remark1", "Remark2", "LastUser"}) diff --git a/models/om/SerialOrder.model.go b/models/om/SerialOrder.model.go index a785747..f1a028c 100644 --- a/models/om/SerialOrder.model.go +++ b/models/om/SerialOrder.model.go @@ -52,7 +52,10 @@ type SerialOrder struct { ActEndTime grmi.DateTime `xorm:"datetime 'ActEndTime' not null" json:"OM_SerialOrder-ActEndTime"` PickingFlag string `xorm:"nvarchar(40) 'PickingFlag' not null" json:"OM_SerialOrder-PickingFlag"` IsFirstPieceToggle bool `xorm:"bit 'IsFirstPieceToggle' not null" json:"OM_SerialOrder-IsFirstPieceToggle"` + // 包装单回冲 BackFlushFlag bool `xorm:"bit 'BackFlushFlag' not null" json:"OM_SerialOrder-BackFlushFlag"` + // 发运单回冲 + ShipBackFlush bool `xorm:"bit 'ShipBackFlush' not null" json:"OM_SerialOrder-ShipBackFlush"` GenerateFlag bool `xorm:"bit 'GenerateFlag' not null" json:"OM_SerialOrder-GenerateFlag"` RepairFlag bool `xorm:"bit 'RepairFlag' not null" json:"OM_SerialOrder-RepairFlag"` OriginSerialOrderId string `xorm:"nvarchar(50) 'OriginSerialOrderId' not null" json:"OM_SerialOrder-OriginSerialOrderId"` diff --git a/models/om/SerialOrderOnlyBarcodeRecLst.model.go b/models/om/SerialOrderOnlyBarcodeRecLst.model.go new file mode 100644 index 0000000..1964ab6 --- /dev/null +++ b/models/om/SerialOrderOnlyBarcodeRecLst.model.go @@ -0,0 +1,54 @@ +// Copyright (c) Shenyang Leading Edge Intelligent Technology Co., Ltd. All rights reserved. + +package om + +import ( + "LAPP_ACURA_MOM_BACKEND/grmi" + "xorm.io/core" +) + +/****************************************************************************** + * + * @Struct Name : SerialOrderOnlyBarcodeRecLst + *----------------------------------------------------------------------------- + * + * @Description : SerialOrderOnlyBarcodeRecLst的实体映射 + * + * @Author : 代码生成器创建 + * + * @Date : 2022-06-20 09:20:27 + * + ******************************************************************************/ +type SerialOrderOnlyBarcodeRecLst struct { + PlantNr int `xorm:"pk int 'PlantNr'" json:"OM_SerialOrderOnlyBarcodeRecLst-PlantNr"` + SerialOrderId string `xorm:"pk nvarchar(100) 'SerialOrderId'" json:"OM_SerialOrderOnlyBarcodeRecLst-SerialOrderId"` + PO string `xorm:"pk nvarchar(40) 'PO'" json:"OM_SerialOrderOnlyBarcodeRecLst-PO"` + SubArtId string `xorm:"pk nvarchar(40) 'SubArtId'" json:"OM_SerialOrderOnlyBarcodeRecLst-SubArtId"` + Barcode string `xorm:"pk nvarchar(300) 'Barcode'" json:"OM_SerialOrderOnlyBarcodeRecLst-Barcode"` + Status int `xorm:"pk int 'Status'" json:"OM_SerialOrderOnlyBarcodeRecLst-Status"` + DetailId int64 `xorm:"bigint 'DetailId' not null autoincr" json:"OM_SerialOrderOnlyBarcodeRecLst-DetailId"` + WorkPlaceNr int `xorm:"int 'WorkPlaceNr' not null" json:"OM_SerialOrderOnlyBarcodeRecLst-WorkPlaceNr"` + Remark1 string `xorm:"nvarchar(100) 'Remark1' not null" json:"OM_SerialOrderOnlyBarcodeRecLst-Remark1"` + Remark2 string `xorm:"nvarchar(100) 'Remark2' not null" json:"OM_SerialOrderOnlyBarcodeRecLst-Remark2"` + LastModify grmi.DateTime `xorm:"datetime 'LastModify' not null updated" json:"OM_SerialOrderOnlyBarcodeRecLst-LastModify"` + LastUser string `xorm:"nvarchar(20) 'LastUser' not null" json:"OM_SerialOrderOnlyBarcodeRecLst-LastUser"` + CreateTime grmi.DateTime `xorm:"datetime 'CreateTime' not null created" json:"OM_SerialOrderOnlyBarcodeRecLst-CreateTime"` +} + +/****************************************************************************** + * + * @Function Name : GetKey + *----------------------------------------------------------------------------- + * + * @Description : 获取实体的主键 + * + * @Return Value : 实体的主键 + * + * @Author : 代码生成器创建 + * + * @Date : 2022-06-20 09:20:27 + * + ******************************************************************************/ +func (self *SerialOrderOnlyBarcodeRecLst) GetKey() core.PK { + return core.PK{self.PlantNr, self.SerialOrderId, self.PO, self.SubArtId, self.Barcode, self.Status} +} diff --git a/services/jit/implments/PackOrder.service.impl.go b/services/jit/implments/PackOrder.service.impl.go index 103d0b5..65c6618 100644 --- a/services/jit/implments/PackOrder.service.impl.go +++ b/services/jit/implments/PackOrder.service.impl.go @@ -516,18 +516,23 @@ func (impl *PackOrderServiceImplement) ScanBarcode(user *global.User, barcode st return nil, grmi.NewBusinessError("条码对应的工单状态不允许打包") } serialOrder := serialOrderLi[0] - if serialOrder.QualityCheck != baseModel.QualityCheck_STATUS_OK && serialOrder.QualityCheck != baseModel.QualityCheck_STATUS_FAIL { - return nil, grmi.NewBusinessError("工单未进行目检") - } - if serialOrderStatus != baseModel.WO_STATUS_FINISHED || serialOrder.QualityCheck != baseModel.QualityCheck_STATUS_OK { + if serialOrderStatus == baseModel.WO_STATUS_FINISHED || serialOrderStatus == baseModel.WO_STATUS_UNCHECKED { + //if serialOrder.QualityCheck != baseModel.QualityCheck_STATUS_OK && serialOrder.QualityCheck != baseModel.QualityCheck_STATUS_FAIL { + // return nil, grmi.NewBusinessError("工单未进行目检") + //} + if serialOrderStatus != baseModel.WO_STATUS_FINISHED || serialOrder.QualityCheck != baseModel.QualityCheck_STATUS_OK { + currentSerialOrderStatus = false + } + if serialOrder.EOLCheck == omModel.EOL_STATUS_NG { + currentSerialOrderStatus = false + } + if serialOrder.SBRCheck == omModel.EOL_STATUS_NG { + currentSerialOrderStatus = false + } + } else { currentSerialOrderStatus = false } - if serialOrder.EOLCheck == omModel.EOL_STATUS_NG { - return nil, grmi.NewBusinessError("工单电检不合格") - } - if serialOrder.SBRCheck == omModel.EOL_STATUS_NG { - return nil, grmi.NewBusinessError("工单SBR不合格给") - } + // 获取用户之前是否存在未关包的包装单 如果存在则使用之前的包装单ID 如果不存在则创建包装单 如果超过一个则报错 var packOrderId string packOrderLi, err := packOrderDao.SelectUserRunningPackOrder(user.UserId, model.PACK_LOCATION_ON_LINE) diff --git a/services/qm/implments/ReclinerReclst.service.impl.go b/services/qm/implments/ReclinerReclst.service.impl.go index 487ec47..4bc2fc5 100644 --- a/services/qm/implments/ReclinerReclst.service.impl.go +++ b/services/qm/implments/ReclinerReclst.service.impl.go @@ -784,6 +784,8 @@ func (impl *ReclinerReclstServiceImplement) CreateRecPrintInfo(entity model.Recl continue } detail.VariableValue = artInfo.ArtId[:7] + } else if detail.VariableName == "$OrderId$" { + detail.VariableValue = entity.ReclinerNr } err = detailDao.InsertOne(detail) if err != nil {