From 3db0f83dcc0e9480b71ccdf94d3e1ae068e48217 Mon Sep 17 00:00:00 2001 From: TsMask <340112800@qq.com> Date: Wed, 17 Jul 2024 16:48:02 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E9=85=8D=E7=BD=AE=E5=BA=94=E7=94=A8?= =?UTF-8?q?=E7=9A=84=E6=95=B0=E6=8D=AE=E8=AF=BB=E5=8F=96=E6=94=AF=E6=8C=81?= =?UTF-8?q?=E5=BD=93=E5=89=8D=E6=93=8D=E4=BD=9C=E5=BA=94=E7=94=A8=E4=B8=8B?= =?UTF-8?q?=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/pt_ne_config_apply.go | 75 +++++++++++++++---- .../service/pt_ne_config_data.impl.go | 2 +- 2 files changed, 61 insertions(+), 16 deletions(-) diff --git a/src/modules/practical_training/controller/pt_ne_config_apply.go b/src/modules/practical_training/controller/pt_ne_config_apply.go index e1e2b508..ccad0959 100644 --- a/src/modules/practical_training/controller/pt_ne_config_apply.go +++ b/src/modules/practical_training/controller/pt_ne_config_apply.go @@ -1,6 +1,9 @@ package controller import ( + "fmt" + "strings" + "be.ems/src/framework/i18n" "be.ems/src/framework/utils/ctx" "be.ems/src/framework/vo/result" @@ -26,6 +29,16 @@ type PtNeConfigApplyController struct { ptNeConfigDataService service.IPtNeConfigDataService } +// 班级学生列表 (仅教师操作) +// +// GET /students +func (s *PtNeConfigApplyController) Students(c *gin.Context) { + userName, _ := c.GetQuery("userName") + loginUser, _ := ctx.LoginUser(c) + data := s.ptNeConfigApplyService.SelectListByClass(loginUser.DeptID, userName) + c.JSON(200, result.OkData(data)) +} + // 网元参数配置应用申请列表 // // GET /list @@ -66,7 +79,7 @@ func (s *PtNeConfigApplyController) Add(c *gin.Context) { } s.ptNeConfigApplyService.Insert(model.PtNeConfigApply{ CreateBy: currentUserName, - Status: "0", + Status: body.Status, NeType: body.NeType, }) c.JSON(200, result.OkMsg("Application Submission Complete!")) @@ -82,7 +95,7 @@ func (s *PtNeConfigApplyController) Add(c *gin.Context) { } for _, v := range applyInfos { v.UpdateBy = currentUserName - v.Status = "1" + v.Status = body.Status s.ptNeConfigApplyService.Update(v) } c.JSON(200, result.OkMsg("Application Revocable Complete!")) @@ -96,8 +109,9 @@ func (s *PtNeConfigApplyController) Add(c *gin.Context) { func (s *PtNeConfigApplyController) Edit(c *gin.Context) { language := ctx.AcceptLanguage(c) var body struct { - ApplyId string `json:"applyId" binding:"required"` // 申请ID - NeType string `json:"neType" binding:"required"` // 网元类型 + ApplyId string `json:"applyId"` // 申请ID + BackId string `json:"backId"` // 批量退回申请ID,号分隔 + NeType string `json:"neType"` // 网元类型 Status string `json:"status" binding:"required,oneof=2 3"` // 状态 2应用 3退回 BackInfo string `json:"backInfo"` // 退回信息 } @@ -107,32 +121,63 @@ func (s *PtNeConfigApplyController) Edit(c *gin.Context) { } currentUserName := ctx.LoginUserToUserName(c) - applyInfos := s.ptNeConfigApplyService.SelectById(body.ApplyId) - if applyInfos.ID != body.ApplyId || applyInfos.Status != "0" { + // 不指定申请直接应用 + if body.ApplyId == "" && body.NeType != "" && body.Status == "2" { + if err := s.ptNeConfigDataService.ApplyToNe(currentUserName, body.NeType); err != nil { + c.JSON(200, result.ErrMsg("Application Failed! "+err.Error())) + return + } + c.JSON(200, result.OkMsg("Application Appliance Complete!")) + return + } + + // 不指定申请直接应用而是退回 + if body.ApplyId == "" && body.BackId != "" && body.Status == "3" { + ids := strings.Split(body.BackId, ",") + num := 0 + for _, id := range ids { + applyInfo := s.ptNeConfigApplyService.SelectById(id) + if applyInfo.ID == "" || applyInfo.Status != "0" { + continue + } + applyInfo.UpdateBy = currentUserName + applyInfo.Status = body.Status + applyInfo.BackInfo = body.BackInfo + s.ptNeConfigApplyService.Update(applyInfo) + num++ + } + + c.JSON(200, result.OkMsg(fmt.Sprintf("Application Return %d Complete!", num))) + return + } + + applyInfo := s.ptNeConfigApplyService.SelectById(body.ApplyId) + if applyInfo.ID != body.ApplyId || applyInfo.Status != "0" { + // 申请信息不正确! c.JSON(200, result.ErrMsg("Application Information Is Incorrect!")) return } // 退回 if body.Status == "3" { - applyInfos.UpdateBy = currentUserName - applyInfos.Status = "3" - applyInfos.BackInfo = body.BackInfo - s.ptNeConfigApplyService.Update(applyInfos) + applyInfo.UpdateBy = currentUserName + applyInfo.Status = body.Status + applyInfo.BackInfo = body.BackInfo + s.ptNeConfigApplyService.Update(applyInfo) c.JSON(200, result.OkMsg("Application Return Complete!")) return } // 应用 if body.Status == "2" { - if err := s.ptNeConfigDataService.ApplyToNe(applyInfos.CreateBy, applyInfos.NeType); err != nil { + if err := s.ptNeConfigDataService.ApplyToNe(applyInfo.CreateBy, applyInfo.NeType); err != nil { c.JSON(200, result.ErrMsg("Application Failed! "+err.Error())) return } - applyInfos.UpdateBy = currentUserName - applyInfos.Status = "1" - applyInfos.BackInfo = "" - s.ptNeConfigApplyService.Update(applyInfos) + applyInfo.UpdateBy = currentUserName + applyInfo.Status = body.Status + applyInfo.BackInfo = "" + s.ptNeConfigApplyService.Update(applyInfo) c.JSON(200, result.OkMsg("Application Appliance Complete!")) return } diff --git a/src/modules/practical_training/service/pt_ne_config_data.impl.go b/src/modules/practical_training/service/pt_ne_config_data.impl.go index fd3c9205..5d03cc5e 100644 --- a/src/modules/practical_training/service/pt_ne_config_data.impl.go +++ b/src/modules/practical_training/service/pt_ne_config_data.impl.go @@ -210,7 +210,7 @@ func (r *PtNeConfigDataService) SelectByStubType(param model.PtNeConfigData) mod // ApplyToNe 参数应用到网元 func (r *PtNeConfigDataService) ApplyToNe(paramUser, neType string) error { - ptConfs := r.SelectList(model.PtNeConfigData{CreateBy: paramUser, StubType: "2", NeType: neType}) + ptConfs := r.SelectList(model.PtNeConfigData{CreateBy: paramUser, NeType: neType}) if len(ptConfs) == 0 { return fmt.Errorf("NeConfigData Not Found") }