Kaynağa Gözat

任务审批后日志,门户查看延期计划

qianxb 2 yıl önce
ebeveyn
işleme
cdcfe9213c

+ 14 - 0
blade-service/blade-control/src/main/java/org/springblade/control/controller/DepartmentMonthPlanController.java

@@ -127,4 +127,18 @@ public class DepartmentMonthPlanController {
         return R.data(planService.getDepartmentUserDict(departmentType));
 
     }
+
+    /**
+     * 查询项目下某个部门延期计划
+     */
+    @GetMapping("/getDepartmentTimeOutPlan")
+    @ApiOperationSupport(order = 7)
+    @ApiOperation(value = "查询项目下某个部门延期计划")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "projectId", value = "项目id", required = true),
+            @ApiImplicitParam(name = "costType", value = "费用分类", required = true),
+    })
+    public R<List<ProjectCostBudgetVO>> getDepartmentTimeOutPlan(Long projectId,Integer costType) {
+        return R.data(planService.getDepartmentTimeOutPlan(projectId,costType));
+    }
 }

+ 2 - 0
blade-service/blade-control/src/main/java/org/springblade/control/mapper/ProjectCostBudgetMapper.java

@@ -106,4 +106,6 @@ public interface ProjectCostBudgetMapper extends BaseMapper<ProjectCostBudget> {
     LocalDate getUserCreatTime(@Param("userId") Long userId);
 
     Integer getUserMonthLog(@Param("userId") Long userId,@Param("start") LocalDate start,@Param("end") LocalDate end);
+
+    List<ProjectCostBudgetVO> getDepartmentTimeOutPlan(@Param("costType") Integer costType,@Param("projectId") Long projectId);
 }

+ 17 - 0
blade-service/blade-control/src/main/java/org/springblade/control/mapper/ProjectCostBudgetMapper.xml

@@ -312,6 +312,23 @@
         select COUNT(1) from c_log_history_info
         WHERE user_id = #{userId} and DATE_FORMAT(create_time ,'%Y-%m-%d') BETWEEN #{start} and #{end}
     </select>
+    <select id="getDepartmentTimeOutPlan" resultType="org.springblade.control.vo.ProjectCostBudgetVO">
+        select pcb.*,
+               case pcb.status
+                   when 1 then '未开始'
+                   when 2 then '进行中'
+                   when 3 then '暂停'
+                   when 4 then '已完成'
+                   end  as statusValue,
+               (select cpi.name from c_control_project_info cpi WHERE cpi.id = pcb.project_id) as projectName,
+               (select di.dict_name from c_dict_info di where di.type = 1 and di.dict_value = pcb.budget_type and di.parent_id = 0) as budgetTypeValue,
+               (select di.dict_name from c_dict_info di where di.type = 1 and di.dict_value = pcb.task_detail and di.parent_id =
+                                                                                                                  (select di.id from c_dict_info di where di.type = 1 and di.dict_value = pcb.budget_type and di.parent_id = 0)) as taskDetailValue,
+               (select cpp.name from c_project_process cpp WHERE cpp.id = pcb.project_process) as projectProcessValue,
+               (select di.dict_name from c_dict_info di where di.type = 2 and di.id = pcb.plan_task_type) as planTaskTypeValue
+        from c_project_cost_budget pcb
+        WHERE pcb.cost_type = #{type} and pcb.is_deleted = 0
+    </select>
 
 
 </mapper>

+ 2 - 0
blade-service/blade-control/src/main/java/org/springblade/control/service/IDepartmentMonthPlanService.java

@@ -35,4 +35,6 @@ public interface IDepartmentMonthPlanService extends BaseService<DepartmentMonth
     List<BladeUser> getDepartmentUserDict(Integer departmentType);
 
     void deleteById(Long id);
+
+    List<ProjectCostBudgetVO> getDepartmentTimeOutPlan(Long projectId, Integer costType);
 }

+ 1 - 1
blade-service/blade-control/src/main/java/org/springblade/control/service/IPlanInformService.java

@@ -16,5 +16,5 @@ public interface IPlanInformService extends BaseService<PlanInform> {
     List<PlanInform> getUserInform();
 
     //任务完成,传入任务名称.任务人和审批人
-    void taskFinishedInform(String taskName,Long taskUser,String appUser);
+    void taskFinishedInform(String taskName,Long taskUser,String appUser,Integer status);
 }

+ 4 - 0
blade-service/blade-control/src/main/java/org/springblade/control/service/IProjectCostBudgetService.java

@@ -42,6 +42,10 @@ public interface IProjectCostBudgetService extends BaseService<ProjectCostBudget
     void updatePlan(ProjectCostBudgetVO vo);
     //根据部门类型和日期查询计划
     List<ProjectCostBudgetVO> getDepartmentPlan(Integer type,String date);
+
+    //根据项目id,部门id查询延期计划
+    List<ProjectCostBudgetVO> getDepartmentTimeOutPlan(Integer costType,Long projectId);
+
     //根据id修改状态
     void updateStatus(Long id, int status);
 

+ 21 - 0
blade-service/blade-control/src/main/java/org/springblade/control/service/impl/DepartmentMonthPlanServiceImpl.java

@@ -173,4 +173,25 @@ public class DepartmentMonthPlanServiceImpl extends BaseServiceImpl<DepartmentMo
     public void deleteById(Long id) {
         baseMapper.deleteById2(id);
     }
+
+    /**
+     * 查询项目下某个部门延期计划
+     * @param projectId
+     * @param costType
+     * @return
+     */
+    @Override
+    public List<ProjectCostBudgetVO> getDepartmentTimeOutPlan(Long projectId, Integer costType) {
+        //查询项目下某个部门延期计划,返回
+        List<ProjectCostBudgetVO> voList = new ArrayList<>();
+        if (costType != 5) {
+            voList = budgetService.getDepartmentTimeOutPlan(costType, projectId);
+        } else {
+            voList.addAll(budgetService.getDepartmentTimeOutPlan(5, projectId));
+            voList.addAll(budgetService.getDepartmentTimeOutPlan(6, projectId));
+        }
+        return voList;
+    }
+
+
 }

+ 9 - 3
blade-service/blade-control/src/main/java/org/springblade/control/service/impl/PlanInformServiceImpl.java

@@ -54,12 +54,18 @@ public class PlanInformServiceImpl extends BaseServiceImpl<PlanInformMapper, Pla
      * @param taskName 任务名称
      * @param taskUser 任务人Id
      * @param appUserName 审批人名称
+     * @param status 审批状态 0=未上报 1=待审批 2=已审批 3=已驳回
      */
     @Override
-    public void taskFinishedInform(String taskName, Long taskUser, String appUserName) {
-        String str = "《"+taskName+"》"+"已被"+"【"+appUserName+"】"+"变成为已完成状态";
+    public void taskFinishedInform(String taskName, Long taskUser, String appUserName,Integer status) {
+        StringBuilder str = new StringBuilder();
+        if(status == 2) {
+            str.append("《" + taskName + "》" + "已被" + "【" + appUserName + "】" + "变成为已完成状态");
+        }else if (status == 3){
+            str.append("《" + taskName + "》" + "已被" + "【" + appUserName + "】" + "驳回");
+        }
         PlanInform inform = new PlanInform();
-        inform.setInformDetails(str);
+        inform.setInformDetails(str.toString());
         inform.setInformUser(taskUser);
         inform.setInformDate(LocalDateTime.now());
         baseMapper.insert(inform);

+ 11 - 0
blade-service/blade-control/src/main/java/org/springblade/control/service/impl/ProjectCostBudgetServiceImpl.java

@@ -525,6 +525,17 @@ public class ProjectCostBudgetServiceImpl extends BaseServiceImpl<ProjectCostBud
         return departmentPlan;
     }
 
+    /**
+     * 根据项目id,部门id查询延期计划
+     * @param costType
+     * @param projectId
+     * @return
+     */
+    @Override
+    public List<ProjectCostBudgetVO> getDepartmentTimeOutPlan(Integer costType, Long projectId) {
+        return baseMapper.getDepartmentTimeOutPlan(costType,projectId);
+    }
+
     /**
      * 根据id修改状态
      * @param id