Browse Source

考评周期、考评等级

wangyangyang 3 years ago
parent
commit
00f98d2187

+ 1 - 1
operation_manager/src/main/java/com/huaxu/evaluation/controller/EvaluationGradeController.java

@@ -46,7 +46,7 @@ public class EvaluationGradeController {
             ) {
         IPage<EvaluationGradeEntity> iPage = new Page<>(pageNum, pageSize);
         EvaluationGradeEntity entity = new EvaluationGradeEntity();
-        if (grade != null)
+        if (grade != null && grade.trim() != "")
             entity.setEvaluationGrade(Long.valueOf(grade));
         if (companyOrgId != null)
             entity.setCompanyOrgId(companyOrgId.intValue());

+ 10 - 8
operation_manager/src/main/java/com/huaxu/evaluation/dao/EvaluationItemValueMapper.java

@@ -17,18 +17,20 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 @Mapper
 public interface EvaluationItemValueMapper extends BaseMapper<EvaluationItemValueEntity> {
 
-	/**
+    /**
      * 自定义分页查询
-     * @param  page 
-     * @param  evaluationItemValueEntity 实体类
+     *
+     * @param page
+     * @param evaluationItemValueEntity 实体类
      */
-     Page<EvaluationItemValueEntity> findPage(IPage<EvaluationItemValueEntity> page,
-                                       @Param("evaluationItemValue") EvaluationItemValueEntity evaluationItemValueEntity);
+    Page<EvaluationItemValueEntity> findPage(IPage<EvaluationItemValueEntity> page,
+                                             @Param("evaluationItemValue") EvaluationItemValueEntity evaluationItemValueEntity);
 
-     EvaluationItemValueEntity findEvaluationItemValueById(Serializable id);
+    EvaluationItemValueEntity findEvaluationItemValueById(Serializable id);
 
 
-     List<EvaluationItemValueEntity> findList(EvaluationItemValueEntity evaluationItemValueEntity);
+    List<EvaluationItemValueEntity> findList(EvaluationItemValueEntity evaluationItemValueEntity);
 
-     /**删除相关方法  使用mybatis-plus集成的 **/
+    boolean updateByItemId(@Param("id") Long id);
+    /**删除相关方法  使用mybatis-plus集成的 **/
 }

+ 4 - 0
operation_manager/src/main/java/com/huaxu/evaluation/entity/EvaluationItemEntity.java

@@ -58,6 +58,10 @@ public class EvaluationItemEntity extends BaseEntity {
     @ApiModelProperty(value = "评分标准")
     private String remarks;
 
+    @ApiModelProperty(value ="考评项分值")
+    @TableField(exist = false)
+    List<EvaluationItemValueEntity> itemValues;
+
     @ApiModelProperty(value ="权限",hidden = true)
     @TableField(exist = false)
     @JsonIgnore

+ 5 - 0
operation_manager/src/main/java/com/huaxu/evaluation/service/EvaluationItemValueService.java

@@ -4,6 +4,7 @@ package com.huaxu.evaluation.service;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.huaxu.evaluation.entity.EvaluationItemEntity;
 import com.huaxu.evaluation.entity.EvaluationItemValueEntity;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.Map;
 import java.util.List;
@@ -35,6 +36,10 @@ public interface EvaluationItemValueService {
      * 单个删除
      */
     public boolean delEvaluationItemValueById(Long id);
+    /**
+     * 修改状态为删除
+     */
+    public boolean updateByItemId(@Param("id") Long id);
     /**
      * 保存
      */

+ 40 - 9
operation_manager/src/main/java/com/huaxu/evaluation/service/impl/EvaluationItemServiceImpl.java

@@ -1,6 +1,7 @@
 package com.huaxu.evaluation.service.impl;
 
 
+import cn.hutool.core.date.DateTime;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -9,7 +10,9 @@ import com.huaxu.evaluation.dao.EvaluationItemMapper;
 import com.huaxu.evaluation.entity.EvaluationCycleEntity;
 import com.huaxu.evaluation.entity.EvaluationGradeEntity;
 import com.huaxu.evaluation.entity.EvaluationItemEntity;
+import com.huaxu.evaluation.entity.EvaluationItemValueEntity;
 import com.huaxu.evaluation.service.EvaluationItemService;
+import com.huaxu.evaluation.service.EvaluationItemValueService;
 import com.huaxu.model.LoginUser;
 import com.huaxu.org.OrgInfoUtil;
 import com.huaxu.util.UserUtil;
@@ -18,9 +21,7 @@ import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
-import java.util.Arrays;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 /**
  * 考评项Service接口
@@ -34,24 +35,30 @@ public class EvaluationItemServiceImpl extends ServiceImpl<EvaluationItemMapper,
     @Resource
     private EvaluationItemMapper evaluationItemMapper;
     @Autowired
+    private EvaluationItemValueService evaluationItemValueService;
+    @Autowired
     private OrgInfoUtil orgInfoUtil;
     /**
      * 自定义分页查询,含关联实体对像
      */
     public IPage<EvaluationItemEntity> findPage(IPage<EvaluationItemEntity> page, EvaluationItemEntity evaluationItemEntity) {
         LoginUser currentUser = UserUtil.getCurrentUser();
-        if(currentUser!=null) {
+        if (currentUser != null) {
             evaluationItemEntity.setTenantId(currentUser.getTenantId());
             evaluationItemEntity.setProgramItems(currentUser.getProgramItemList());
             evaluationItemEntity.setUserType(currentUser.getType());
             //1是公司,2是公司及以下,3部门,4部门及以下,5自定义
             evaluationItemEntity.setPermissonType(currentUser.getPermissonType());
         }
-        Page<EvaluationItemEntity> iPage = evaluationItemMapper.findPage(page,evaluationItemEntity);
-        for(EvaluationItemEntity item:iPage.getRecords())
-        {
+        Page<EvaluationItemEntity> iPage = evaluationItemMapper.findPage(page, evaluationItemEntity);
+        for (EvaluationItemEntity item : iPage.getRecords()) {
             item.setCompanyOrgName(orgInfoUtil.getOrgName(item.getCompanyOrgId()));
             item.setDeptOrgName(orgInfoUtil.getOrgName(item.getDeptOrgId()));
+            //查询考评项分支
+            EvaluationItemValueEntity entity = new EvaluationItemValueEntity();
+            entity.setEvaluationItemId(item.getId());
+            entity.setTenantId(currentUser.getTenantId());
+            item.setItemValues(evaluationItemValueService.findList(entity));
         }
         return iPage;
     }
@@ -82,14 +89,32 @@ public class EvaluationItemServiceImpl extends ServiceImpl<EvaluationItemMapper,
      * 单个删除
      */
     public boolean delEvaluationItemById(Long id) {
-        return this.removeById(id);
+        boolean result = this.removeById(id);
+        if (result) {
+            evaluationItemValueService.updateByItemId(id);
+        }
+        return result;
     }
 
     /**
      * 保存
      */
     public boolean addEvaluationItem(EvaluationItemEntity evaluationItem) {
+        LoginUser currentUser = UserUtil.getCurrentUser();
         if (this.save(evaluationItem)) {
+            Long id = evaluationItem.getId();
+            for (EvaluationItemValueEntity item : evaluationItem.getItemValues()) {
+                if (currentUser != null) {
+                    item.setTenantId(currentUser.getTenantId());
+                    item.setCreateBy(currentUser.getUsername());
+                    item.setUpdateBy(currentUser.getUsername());
+                }
+                item.setEvaluationItemId(id);
+                item.setStatus(1);
+                item.setDateUpdate(new Date());
+                item.setDateCreate(new Date());
+                evaluationItemValueService.addEvaluationItemValue(item);
+            }
             return true;
         }
         return false;
@@ -109,6 +134,12 @@ public class EvaluationItemServiceImpl extends ServiceImpl<EvaluationItemMapper,
      * 根居ID获取对象
      */
     public EvaluationItemEntity findEvaluationItemById(Long id) {
-        return evaluationItemMapper.findEvaluationItemById(id);
+        LoginUser currentUser = UserUtil.getCurrentUser();
+        EvaluationItemEntity entity = evaluationItemMapper.findEvaluationItemById(id);
+        EvaluationItemValueEntity itemValueEntity = new EvaluationItemValueEntity();
+        itemValueEntity.setEvaluationItemId(id);
+        itemValueEntity.setTenantId(currentUser.getTenantId());
+        entity.setItemValues(evaluationItemValueService.findList(itemValueEntity));
+        return entity;
     }
 }

+ 7 - 0
operation_manager/src/main/java/com/huaxu/evaluation/service/impl/EvaluationItemValueServiceImpl.java

@@ -11,6 +11,7 @@ import com.huaxu.evaluation.entity.EvaluationItemValueEntity;
 import com.huaxu.evaluation.service.EvaluationItemValueService;
 import com.huaxu.model.LoginUser;
 import com.huaxu.util.UserUtil;
+import org.apache.ibatis.annotations.Param;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -95,4 +96,10 @@ public class EvaluationItemValueServiceImpl extends ServiceImpl<EvaluationItemVa
     public EvaluationItemValueEntity findEvaluationItemValueById(Long id) {
         return evaluationItemValueMapper.findEvaluationItemValueById(id);
     }
+    /**
+     * 修改状态为删除
+     */
+    public boolean updateByItemId(Long id) {
+        return evaluationItemValueMapper.updateByItemId(id);
+    }
 }

+ 3 - 0
operation_manager/src/main/resources/mapper/evaluation/EvaluationItemValueMapper.xml

@@ -74,4 +74,7 @@
             and a.status=1
         </where>
     </select>
+    <update id="updateByItemId">
+        update sc_evaluation_item_value set status=0 where evaluation_item_id = #{id}
+    </update>
 </mapper>