From 3c68eda76f80ae7a566cc775b3f47574de9a0c6d Mon Sep 17 00:00:00 2001 From: zhangxin Date: Tue, 7 Sep 2021 09:29:52 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=BF=9D=E5=AD=98=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- services/base/PrintBasicRuleInfo.service.go | 19 +++++ .../PrintBasicRuleInfo.service.impl.go | 64 ++++++++++++++++ .../base/PrintBasicRuleInfo.rest.go | 75 +++++++++++++++++++ web/controllers/base/base.go | 6 +- 4 files changed, 162 insertions(+), 2 deletions(-) diff --git a/services/base/PrintBasicRuleInfo.service.go b/services/base/PrintBasicRuleInfo.service.go index 36099c9..266cefc 100644 --- a/services/base/PrintBasicRuleInfo.service.go +++ b/services/base/PrintBasicRuleInfo.service.go @@ -181,6 +181,25 @@ type PrintBasicRuleInfoService interface { * ******************************************************************************/ Update(*models.Usertab, *[]model.PrintBasicRuleInfo) error + /****************************************************************************** + * + * @Function Name : Save + *----------------------------------------------------------------------------- + * + * @Description : 保存operation对应的单据打印规则 + * + * @Function Parameters : 当前访问人员信息 + * + * @Function Parameters : 需要插入的PrintBasicRuleInfo数据 + * + * @Return Value : 执行时发生的错误 + * + * @Author : zhangxin + * + * @Date : 2021-09-03 + * + ******************************************************************************/ + Save(*models.Usertab, *model.PrintBasicRuleInfoData) error } /****************************************************************************** diff --git a/services/base/implments/PrintBasicRuleInfo.service.impl.go b/services/base/implments/PrintBasicRuleInfo.service.impl.go index 4d2ab8b..dc0b59f 100644 --- a/services/base/implments/PrintBasicRuleInfo.service.impl.go +++ b/services/base/implments/PrintBasicRuleInfo.service.impl.go @@ -316,3 +316,67 @@ func (impl *PrintBasicRuleInfoServiceImplement) Update(user *models.Usertab, ent } return nil } + + +/****************************************************************************** + * + * @Reference LAPP_LF_MOM_BACKEND/services/base/PrintBasicRuleInfoService.Save + * + ******************************************************************************/ +func (impl *PrintBasicRuleInfoServiceImplement) Save(user *models.Usertab, entity *model.PrintBasicRuleInfoData) error { + + grmi.Log(user, "/services/base/implments/PrintBasicRuleInfo.service.impl.go", "Save", "插入一个PrintBasicRuleInfo") + + engine := db.Eloquent.Master() + session := engine.NewSession() + defer session.Close() + if err := session.Begin(); err != nil { + return err + } + operationId := entity.OperationId + li := entity.PrintBasicRuleInfoLi + dao := dal.NewPrintBasicRuleInfoDAO(session, user.Pid, user.Userid) + operationDao := dal.NewOperationDAO(session, user.Pid, user.Userid) + operation, err := operationDao.SelectOne(operationId) + if err != nil { + _ = session.Rollback() + return err + } + if operation == nil { + _ = session.Rollback() + return grmi.NewBusinessError("不存在对应的工艺") + } + if operation.StepType != model.STEP_PRINT_RULE { + _ = session.Rollback() + return grmi.NewBusinessError("操作类型不符") + } + for index, rule := range li { + if rule.TemplateFile == "" { + _ = session.Rollback() + return grmi.NewBusinessError("数据不合规") + } + if rule.MainCodeName == "" { + _ = session.Rollback() + return grmi.NewBusinessError("数据不合规") + } + rule.ProjectId = operation.ProjectId + rule.PO = operation.PO + rule.StepDesc = operation.StepDesc + rule.StepNo = operation.StepNo + rule.OperationId = operationId + li[index] = rule + } + + err = dao.DeleteWhere([]grmi.Predicate{meta.PrintBasicRuleInfo_OperationId.NewPredicate(grmi.Equal, operationId)}) + if err != nil { + _ = session.Rollback() + return err + } + err = dao.Insert(&li) + if err != nil { + _ = session.Rollback() + return err + } + _ = session.Commit() + return nil +} \ No newline at end of file diff --git a/web/controllers/base/PrintBasicRuleInfo.rest.go b/web/controllers/base/PrintBasicRuleInfo.rest.go index 51f4e46..f30c3c6 100644 --- a/web/controllers/base/PrintBasicRuleInfo.rest.go +++ b/web/controllers/base/PrintBasicRuleInfo.rest.go @@ -374,3 +374,78 @@ func RegisterUpdatePrintBasicRuleInfo(party router.Party, path string, method fu RegisterMultiPrintBasicRuleInfo(party, "PUT", path, method) } + + +/****************************************************************************** + * + * @Function Name : RegisterSavePrintBasicRuleInfo + *----------------------------------------------------------------------------- + * + * @Description : 为一个保存operation对应的PrintBasicRuleInfo的方法注册路由 + * + * @Function Parameters : 路由分组 + * + * @Function Parameters : HTTP方法 + * + * @Function Parameters : 路径 + * + * @Function Parameters : 实际处理请求的方法 + * + * @Author : zhangxin + * + * @Date : 2021-09-03 + * + ******************************************************************************/ +func RegisterSavePrintBasicRuleInfo(party router.Party, httpMethod string, path string, method func(*models.Usertab, *model.PrintBasicRuleInfoData) error) { + + party.Handle(httpMethod, path, func(ctx iris.Context) { + user, ok := jwts.ParseToken(ctx) + if !ok { + supports.Error(ctx, iris.StatusBadRequest, supports.ParseParamsFailur, nil) + return + } + + var err error = nil + + entity := new(model.PrintBasicRuleInfoData) + if ctx.GetContentLength() > 0 { + err := ctx.ReadJSON(entity) + if err != nil { + supports.Error(ctx, iris.StatusBadRequest, err.Error(), nil) + return + } + } else { + entity = nil + } + + err = method(user, entity) + if err != nil { + supports.Error(ctx, iris.StatusBadRequest, err.Error(), nil) + return + } + supports.Ok(ctx, supports.OptionSuccess, nil) + }) +} + +/****************************************************************************** + * + * @Function Name : RegisterSavePrintBasicRuleInfoHandler + *----------------------------------------------------------------------------- + * + * @Description : 为一个保存operation对应的PrintBasicRuleInfo的方法注册路由 + * + * @Function Parameters : 路由分组 + * + * @Function Parameters : 路径 + * + * @Function Parameters : 实际处理请求的方法 + * + * @Author : zhangxin + * + * @Date : 2021-09-03 + * + ******************************************************************************/ +func RegisterSavePrintBasicRuleInfoHandler(party router.Party, path string, method func(*models.Usertab, *model.PrintBasicRuleInfoData) error) { + + RegisterSavePrintBasicRuleInfo(party, "POST", path, method) +} \ No newline at end of file diff --git a/web/controllers/base/base.go b/web/controllers/base/base.go index 503474a..4e7158b 100644 --- a/web/controllers/base/base.go +++ b/web/controllers/base/base.go @@ -1567,7 +1567,7 @@ func RegisterRoutes() { // ArtWorkLineLst的服务实例 var serviceOfArtWorkLineLst = svr.NewArtWorkLineLstService() // ArtWorkLineLst插入一条 - // RegisterInsertOneArtWorkLineLst(artworklinelst, "/insertone", serviceOfArtWorkLineLst.InsertOne) + // RegisterInsertOneArtWorkLineLst(artwporklinelst, "/insertone", serviceOfArtWorkLineLst.InsertOne) // ArtWorkLineLst插入多条 // RegisterInsertArtWorkLineLst(artworklinelst, "/insert", serviceOfArtWorkLineLst.Insert) // ArtWorkLineLst删除一条 @@ -1601,11 +1601,13 @@ func RegisterRoutes() { // PrintBasicRuleInfo查询多条 RegisterSelectPrintBasicRuleInfo(printbasicruleinfo, "/query", serviceOfPrintBasicRuleInfo.Select) // PrintBasicRuleInfo查询一条 - RegisterSelectOnePrintBasicRuleInfo(printbasicruleinfo, "/get", serviceOfPrintBasicRuleInfo.SelectOne) + //RegisterSelectOnePrintBasicRuleInfo(printbasicruleinfo, "/get", serviceOfPrintBasicRuleInfo.SelectOne) // PrintBasicRuleInfo修改一条 // RegisterUpdateOnePrintBasicRuleInfo(printbasicruleinfo, "/updateone", serviceOfPrintBasicRuleInfo.UpdateOne) // PrintBasicRuleInfo修改多条 // RegisterUpdatePrintBasicRuleInfo(printbasicruleinfo, "/update", serviceOfPrintBasicRuleInfo.Update) + // PrintBasicRuleInfo保存operation对应的规则 + RegisterSavePrintBasicRuleInfoHandler(printbasicruleinfo, "/save", serviceOfPrintBasicRuleInfo.Save) }) }