diff --git a/api/version1/postseting/postpc/serpostconfig.go b/api/version1/postseting/postpc/serpostconfig.go index 186eceb..800f0d7 100644 --- a/api/version1/postseting/postpc/serpostconfig.go +++ b/api/version1/postseting/postpc/serpostconfig.go @@ -23,10 +23,10 @@ func (a *ApiMethod) SetEvaluationObjectives(c *gin.Context) { publicmethod.Result(1, err, c, "请填写年度") return } - if requestData.Group == "" { - publicmethod.Result(1, err, c, "请选择归属集团") - return - } + // if requestData.Group == "" { + // publicmethod.Result(1, err, c, "请选择归属集团") + // return + // } if requestData.DepartMent == "" { publicmethod.Result(1, err, c, "请选择归属行政组织") return @@ -71,9 +71,13 @@ func (a *ApiMethod) SetEvaluationObjectives(c *gin.Context) { publicmethod.Result(1, err, c, "请选择周期") return } + + orgId, _ := strconv.ParseInt(requestData.DepartMent, 10, 64) + _, companyId, departmentId, _, _ := publicmethod.GetOrgStructure(orgId) //公司部门 + var timecopy []int64 - gromDb := overall.CONSTANT_DB_KPI.Model(&modelskpi.QuanPostConfig{}).Select("Timecopy").Where("`group` = ? AND `org_id` = ? AND `post_id` = ? AND `dimension` = ? AND `target` = ? AND `year` = ? ", requestData.Group, requestData.DepartMent, requestData.PostId, requestData.Dimension, requestData.Target, requestData.Year) + gromDb := overall.CONSTANT_DB_KPI.Model(&modelskpi.QuanPostConfig{}).Select("Timecopy").Where("`group` = ? AND `org_id` = ? AND `post_id` = ? AND `dimension` = ? AND `target` = ? AND `year` = ? ", companyId, requestData.DepartMent, requestData.PostId, requestData.Dimension, requestData.Target, requestData.Year) judgeErr := gromDb.Find(&timecopy).Error @@ -90,9 +94,9 @@ func (a *ApiMethod) SetEvaluationObjectives(c *gin.Context) { if judgeErr != nil { var saveDataCont modelskpi.QuanPostConfig - orgId, _ := strconv.ParseInt(requestData.DepartMent, 10, 64) - _, saveDataCont.CompanyId, saveDataCont.DepartmentId, _, _ = publicmethod.GetOrgStructure(orgId) //公司部门 - saveDataCont.OrgId = orgId //行政组织 + saveDataCont.CompanyId = companyId + saveDataCont.DepartmentId = departmentId + saveDataCont.OrgId = orgId //行政组织 postIdInt, _ := strconv.ParseInt(requestData.PostId, 10, 64) saveDataCont.PostId = postIdInt //岗位 dimensionId, _ := strconv.ParseInt(requestData.Dimension, 10, 64) @@ -127,9 +131,11 @@ func (a *ApiMethod) SetEvaluationObjectives(c *gin.Context) { } else { if len(timecopy) <= 0 { var saveDataCont modelskpi.QuanPostConfig - orgId, _ := strconv.ParseInt(requestData.DepartMent, 10, 64) - _, saveDataCont.CompanyId, saveDataCont.DepartmentId, _, _ = publicmethod.GetOrgStructure(orgId) //公司部门 - saveDataCont.OrgId = orgId //行政组织 + // orgId, _ := strconv.ParseInt(requestData.DepartMent, 10, 64) + // _, saveDataCont.CompanyId, saveDataCont.DepartmentId, _, _ = publicmethod.GetOrgStructure(orgId) //公司部门 + saveDataCont.CompanyId = companyId + saveDataCont.DepartmentId = departmentId + saveDataCont.OrgId = orgId //行政组织 postIdInt, _ := strconv.ParseInt(requestData.PostId, 10, 64) saveDataCont.PostId = postIdInt //岗位 dimensionId, _ := strconv.ParseInt(requestData.Dimension, 10, 64) @@ -165,9 +171,11 @@ func (a *ApiMethod) SetEvaluationObjectives(c *gin.Context) { for _, s_v := range timecopy { if s_v != v.Id { var saveDataCont modelskpi.QuanPostConfig - orgId, _ := strconv.ParseInt(requestData.DepartMent, 10, 64) - _, saveDataCont.CompanyId, saveDataCont.DepartmentId, _, _ = publicmethod.GetOrgStructure(orgId) //公司部门 - saveDataCont.OrgId = orgId //行政组织 + // orgId, _ := strconv.ParseInt(requestData.DepartMent, 10, 64) + // _, saveDataCont.CompanyId, saveDataCont.DepartmentId, _, _ = publicmethod.GetOrgStructure(orgId) //公司部门 + saveDataCont.CompanyId = companyId + saveDataCont.DepartmentId = departmentId + saveDataCont.OrgId = orgId //行政组织 postIdInt, _ := strconv.ParseInt(requestData.PostId, 10, 64) saveDataCont.PostId = postIdInt //岗位 dimensionId, _ := strconv.ParseInt(requestData.Dimension, 10, 64) @@ -405,3 +413,104 @@ func (a *ApiMethod) DelQuantitativeConfig(c *gin.Context) { publicmethod.Result(0, err, c) } } + +// 查看定量岗位考核目标设定 +func (a *ApiMethod) LookPosttiveConfig(c *gin.Context) { + var requestData SelectQuantitativeConfig + err := c.ShouldBindJSON(&requestData) + if err != nil { + publicmethod.Result(1, err, c, "数据获取失败!") + return + } + // var qualConfigList []assessmentmodel.QuantitativeConfig + var qualConfigList []modelskpi.QuanPostConfigTarget + gormDb := overall.CONSTANT_DB_KPI + if requestData.GroupId != "" { + gormDb = gormDb.Where("`company_id` = ?", requestData.GroupId) + } + if requestData.DepartmentID != "" { + gormDb = gormDb.Where("`department_id` = ?", requestData.DepartmentID) + } + if requestData.PostId != "" { + gormDb = gormDb.Where("`org_id` = ?", requestData.PostId) + } + if requestData.Dimension != "" { + gormDb = gormDb.Where("`dimension` = ?", requestData.Dimension) + } + if requestData.Target != "" { + gormDb = gormDb.Where("`target` = ?", requestData.Target) + } + + switch requestData.Type { + case 1: + gormDb = gormDb.Where("`type` = ?", requestData.Type) + case 2: + gormDb = gormDb.Where("`type` = ?", requestData.Type) + if requestData.Class != 0 { + gormDb = gormDb.Where("`timecopy` = ?", requestData.Class) + } + case 3: + gormDb = gormDb.Where("`type` = ?", requestData.Type) + if requestData.Class != 0 { + gormDb = gormDb.Where("`timecopy` = ?", requestData.Class) + } + default: + } + if requestData.Year != 0 { + gormDb = gormDb.Where("`year` = ?", requestData.Year) + } + if requestData.State != 0 { + gormDb = gormDb.Where("`state` = ?", requestData.State) + } + if requestData.Title != "" { + gormDb = gormDb.Where("`title` LIKE ?", "%"+requestData.Title+"%") + } + // gormDb = gormDb.Order("group ASC,departmentid ASC,dimension ASC,target ASC,targetconfig ASC").Order("year DESC").Order("timecopy ASC,id ASC") + gormDb = gormDb.Order("`company_id` ASC").Order("`department_id` ASC").Order("`org_id` ASC").Order("`dimension` ASC").Order("`target` ASC").Order("`year` DESC").Order("`timecopy` ASC").Order("`id` ASC") + contErr := gormDb.Find(&qualConfigList).Error + if contErr != nil { + publicmethod.Result(1, err, c, "没有数据!") + return + } + var outList []OutQuantitativeConfig + for _, v := range qualConfigList { + var outCont OutQuantitativeConfig + outCont.Id = v.Id + outCont.DepartmentId = v.DepartmentId + outCont.CompanyId = v.CompanyId + outCont.Dimension = v.Dimension + outCont.PostId = v.PostId + outCont.Target = v.Target + outCont.Type = v.Type + outCont.Year = v.Year + outCont.Timecopy = v.Timecopy + outCont.Zeroprize = v.Zeroprize / 100 + outCont.Allprize = v.Allprize / 100 + outCont.Time = v.Time + outCont.State = v.State + outCont.DimensionId = strconv.FormatInt(v.Dimension, 10) + + var companyCont modelshr.AdministrativeOrganization + companyCont.GetCont(map[string]interface{}{"`id`": v.CompanyId}, "id", "name") + outCont.GroupTitle = companyCont.Name + + var departmenCont modelshr.AdministrativeOrganization + departmenCont.GetCont(map[string]interface{}{"`id`": v.DepartmentId}, "id", "name") + outCont.DepartmentTitle = departmenCont.Name + + var postCont modelshr.Position + postCont.GetCont(map[string]interface{}{"`id`": v.PostId}, "id", "name") + outCont.PostTitle = postCont.Name + + var dimensionCont modelskpi.DutyClass + dimensionCont.GetCont(map[string]interface{}{"`id`": v.Dimension}, "id", "title") + outCont.DimensionTitle = dimensionCont.Title + + outCont.TargetTitle = v.Title + + outCont.Capping = v.Capping + outCont.CappingVal = v.CappingVal / 100 + outList = append(outList, outCont) + } + publicmethod.Result(0, outList, c) +} diff --git a/apirouter/v1/postseting/pc.go b/apirouter/v1/postseting/pc.go index b09bff4..793fd29 100644 --- a/apirouter/v1/postseting/pc.go +++ b/apirouter/v1/postseting/pc.go @@ -24,6 +24,7 @@ func (a *ApiRouter) RouterGroupPc(router *gin.RouterGroup) { apiRouter.POST("post_config_list", methodBinding.PostConfigList) //岗位定量考核目标列表 apiRouter.POST("eite_quantitative_config", methodBinding.EiteQuantitativeConfig) //修改考核目标设置 apiRouter.POST("del_quantitative_config", methodBinding.DelQuantitativeConfig) //删除考核目标设置 + apiRouter.POST("lookposttiveconfig", methodBinding.LookPosttiveConfig) // 查看定量考核目标设定 /* 岗位定性指标 */