package branchfactorygroup import ( "strconv" "time" "gin_server_admin/commonus" "gin_server_admin/global" "gin_server_admin/model/common/response" "gin_server_admin/model/testpage" "github.com/gin-gonic/gin" ) // 入口 func (t *TeamApi) Index(c *gin.Context) { outPut := commonus.MapOut() response.Result(0, outPut, "班组基础设定入口", c) } // 获取班组列表 func (t *TeamApi) TeamApiList(c *gin.Context) { var requestData TeamList c.ShouldBindJSON(&requestData) gormDb := global.GVA_DB_Master if requestData.State != 0 { gormDb = gormDb.Where("`tm_set` = ?", requestData.State) } if requestData.Shifts != 0 { gormDb = gormDb.Where("`tm_long` = ?", requestData.Shifts) } if requestData.Title != "" { gormDb = gormDb.Where("(`tm_name` LIKE ?)", "%"+requestData.Title+"%") } var systemRoleList []testpage.Teaming systemRoleListerr := gormDb.Order("tm_id desc").Find(&systemRoleList).Error if systemRoleListerr != nil { response.Result(102, systemRoleListerr, "数据获取失败!", c) return } response.Result(0, systemRoleList, "数据获取成功!", c) } // 获取班组详细内容 func (t *TeamApi) GetTeamContApi(c *gin.Context) { var requestData commonus.SetIds err := c.ShouldBindJSON(&requestData) if err != nil { response.Result(102, requestData, "数据获取失败!", c) return } if requestData.Id == 0 && requestData.OutId == "" { response.Result(102, err, "参数错误!请重新提交!", c) return } if requestData.OutId != "" { idInt, inIntErr := strconv.ParseInt(requestData.OutId, 10, 64) if inIntErr == nil { requestData.Id = idInt } } var systemBFCont testpage.Teaming contErr := global.GVA_DB_Master.Where("`tm_id` = ?", requestData.Id).First(&systemBFCont).Error if contErr != nil { response.Result(102, err, "数据获取失败!", c) return } response.Result(0, systemBFCont, "数据获取成功!", c) } // 添加班组 func (t *TeamApi) AddTeamContApi(c *gin.Context) { var requestData AddTeam err := c.ShouldBindJSON(&requestData) if err != nil { response.Result(102, requestData, "数据获取失败!", c) return } if requestData.Title == "" { response.Result(102, requestData, "请输入班组名称!", c) return } if requestData.Shifts == 0 { requestData.Shifts = 1 } //判断该班组是否已经存在 juadgeMap := commonus.MapOut() juadgeBfErr := global.GVA_DB_Master.Model(&testpage.Teaming{}).Select("tm_name").Where("`tm_name` = ? AND `tm_set` = 1", requestData.Title).First(&juadgeMap).Error if juadgeBfErr == nil { response.Result(107, juadgeMap, "该班组已经存在!请不要重复添加!", c) return } var addTeamCont testpage.Teaming addTeamCont.Name = requestData.Title addTeamCont.Time = time.Now().Unix() addTeamCont.Set = 1 addTeamCont.Long = requestData.Shifts addErr := global.GVA_DB_Master.Create(&addTeamCont).Error if addErr != nil { response.Result(105, requestData, "添加失败!", c) } else { response.Result(0, addTeamCont, "添加成功!", c) } } // 编辑班组数据处理 func eiteTeamInfoes(saveId int64, saveData map[string]interface{}) (isTrue bool, infoErr error) { isTrue = false infoErr = global.GVA_DB_Master.Model(&testpage.Teaming{}).Where("`tm_id` = ?", saveId).Updates(saveData).Error if infoErr != nil { return } isTrue = true return } // 修改班组 func (t *TeamApi) EiteTeamContApi(c *gin.Context) { var requestData EiteTeam err := c.ShouldBindJSON(&requestData) if err != nil { response.Result(102, requestData, "数据获取失败!", c) return } if requestData.Id == 0 && requestData.OutId == "" { response.Result(102, err, "参数错误!请重新提交!", c) return } if requestData.OutId != "" { idInt, inIntErr := strconv.ParseInt(requestData.OutId, 10, 64) if inIntErr == nil { requestData.Id = idInt } } if requestData.Title == "" { response.Result(103, err, "请输入班组名称!", c) return } saveData := commonus.MapOut() saveData["tm_time"] = time.Now().Unix() var oldWorkCont testpage.Teaming contErr := global.GVA_DB_Master.Where("`tm_id` = ?", requestData.Id).First(&oldWorkCont).Error if contErr != nil { response.Result(103, contErr, "数据获取失败!", c) return } if requestData.Title != "" && requestData.Title != oldWorkCont.Name { juadgeMaps := commonus.MapOut() contErr := global.GVA_DB_Master.Model(&testpage.Teaming{}).Where("`tm_name` = ? AND `tm_set` = 1", requestData.Title).First(&juadgeMaps).Error if contErr == nil { response.Result(104, juadgeMaps, "已经存在此班组!请不要重复添加!", c) return } else { saveData["tm_name"] = requestData.Title } } if requestData.Shifts != 0 && requestData.Shifts != oldWorkCont.Long { saveData["tm_long"] = requestData.Shifts } roleIsTrue, roleErr := eiteTeamInfoes(requestData.Id, saveData) if roleIsTrue != true { response.Result(106, roleErr, "编辑失败!", c) } else { response.Result(0, saveData, "编辑成功!", c) } } // 删除版主内容 func (w *TeamApi) DelTeamCont(c *gin.Context) { var requestData delBFType err := c.ShouldBindJSON(&requestData) if err != nil { response.Result(101, requestData, "数据获取失败!", c) return } if requestData.Id == 0 && requestData.OutId == "" { response.Result(102, err, "参数错误!请重新提交!", c) return } if requestData.OutId != "" { idInt, inIntErr := strconv.ParseInt(requestData.OutId, 10, 64) if inIntErr == nil { requestData.Id = idInt } } if requestData.State == 0 { requestData.State = 1 } saveData := commonus.MapOut() saveData["tm_set"] = requestData.State saveData["tm_time"] = time.Now().Unix() if requestData.IsDel != 1 { roleIsTrue, roleErr := eiteTeamInfoes(requestData.Id, saveData) if roleIsTrue != true { response.Result(103, roleErr, "修改失败!", c) return } response.Result(0, requestData, "修改成功!", c) } else { if requestData.State == 3 { roleErr := global.GVA_DB_Master.Where("tm_id = ?", requestData.Id).Delete(&testpage.Teaming{}).Error if roleErr != nil { response.Result(104, saveData, "删除失败!", c) return } response.Result(0, saveData, "删除成功!", c) } else { roleIsTrue, roleErr := eiteTeamInfoes(requestData.Id, saveData) if roleIsTrue != true { response.Result(103, roleErr, "修改失败!", c) return } response.Result(0, requestData, "修改成功!", c) } } }