package personnelapi import ( "hr_server/models" "hr_server/overall/overallhandle" "time" "github.com/gin-gonic/gin" ) /* * @ 作者: 秦东 @ 时间: 2022-11-30 14:05:01 @ 功能:编辑人员行政组织关系 @ 参数 # @ 返回值 # @ 方法原型 # */ func (s *StaffApi) EditManOrgCont(c *gin.Context) { var requestData EditOrgPeople err := c.ShouldBindJSON(&requestData) if err != nil { overallhandle.Result(1, err, c, "数据格式错误!") return } if requestData.Id == "" { overallhandle.Result(1, requestData, c, "参数错误!请检查后重新提交!") return } if requestData.OrgId <= 0 { overallhandle.Result(1, requestData, c, "请选择归属行政组织!") return } if requestData.Position == 0 { overallhandle.Result(1, requestData, c, "请选择归属岗位!") return } if requestData.JobId == 0 { overallhandle.Result(1, requestData, c, "请选择职务!") return } if requestData.TeamId == 0 { overallhandle.Result(1, requestData, c, "请选择班组!") return } if requestData.JobLeve == 0 { requestData.JobLeve = 3 } wher := map[string]interface{}{"`id`": requestData.Id} var myCont models.PersonArchives err = myCont.GetCont(wher, "`id`", "`admin_org`", "`position`", "`job_id`", "`job_leve`", "`teamid`") if err != nil { overallhandle.Result(1, err, c, "没有该人员信息!") return } saveData := overallhandle.MapOut() if requestData.OrgId != myCont.AdminOrg { _, companyId, departmentId, sunDepartId, _ := overallhandle.GetOrgStructure(requestData.OrgId) if companyId != 0 { saveData["company"] = companyId } if departmentId != 0 { saveData["maindeparment"] = departmentId } if sunDepartId != 0 { saveData["sun_main_deparment"] = sunDepartId } saveData["admin_org"] = requestData.OrgId } if requestData.Position != myCont.Position { saveData["position"] = requestData.Position } if requestData.JobId != myCont.JobId { var jobCont models.DutiesClassLeve jobCont.GetCont(map[string]interface{}{"`d_id`": requestData.Id}, "`c_id`") saveData["job_class"] = jobCont.ClassId saveData["job_id"] = requestData.JobId } if requestData.JobLeve != myCont.JobLeve { saveData["job_leve"] = requestData.JobLeve } if requestData.TeamId != myCont.TeamId { saveData["teamid"] = requestData.TeamId } if len(saveData) < 1 { overallhandle.Result(0, saveData, c) return } saveData["eite_time"] = time.Now().Unix() err = myCont.EiteCont(wher, saveData) if err != nil { overallhandle.Result(106, err, c) return } overallhandle.Result(0, err, c) }