瀏覽代碼

任务统计

qianxb 2 年之前
父節點
當前提交
bd62ebbb34

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

@@ -100,4 +100,10 @@ public interface ProjectCostBudgetMapper extends BaseMapper<ProjectCostBudget> {
     List<ProjectCostBudget> getAllMaintainPlan3(@Param("projectId")Long projectId,@Param("costType")Integer costType);
 
     void updateByBudgetId(@Param("budget") ProjectCostBudget budget);
+
+    Integer getChangePlanTotal(@Param("userId") Long userId, @Param("start") LocalDate startDate,@Param("end") LocalDate endDate);
+
+    LocalDate getUserCreatTime(@Param("userId") Long userId);
+
+    Integer getUserMonthLog(@Param("userId") Long userId,@Param("start") LocalDate start,@Param("end") LocalDate end);
 }

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

@@ -301,6 +301,17 @@
         from c_project_cost_budget
         WHERE project_id = #{projectId} and cost_type = #{costType} and plan_task_type > 0 and (SELECT dict_value from c_dict_info cdi WHERE id = plan_task_type) = 2
     </select>
+    <select id="getChangePlanTotal" resultType="java.lang.Integer">
+        select COUNT(1) from c_task_plan_update_status_info
+        WHERE start_transfer_object = #{userId} and completion_time BETWEEN #{start} and #{end}
+    </select>
+    <select id="getUserCreatTime" resultType="java.time.LocalDate">
+        SELECT create_time FROM blade_user WHERE id = #{userId}
+    </select>
+    <select id="getUserMonthLog" resultType="java.lang.Integer">
+        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>
 
 
 </mapper>

+ 36 - 2
blade-service/blade-control/src/main/java/org/springblade/control/service/impl/ProjectCostBudgetServiceImpl.java

@@ -558,7 +558,6 @@ public class ProjectCostBudgetServiceImpl extends BaseServiceImpl<ProjectCostBud
      */
     @Override
     public ProjectCostBudgetVO3 MonthPlanOverview(String planDate) {
-        //没有用户
         Long userId = SecureUtil.getUserId();
         //初始化时间段
         String[] split = planDate.split("-");
@@ -567,7 +566,7 @@ public class ProjectCostBudgetServiceImpl extends BaseServiceImpl<ProjectCostBud
         LocalDate startDate;
         LocalDate endDate;
         startDate =  LocalDate.of(year,month,1);
-        if (Arrays.asList("1,3,5,7,8,10,12".split(",")).contains(month)){
+        if (Arrays.asList("1,3,5,7,8,10,12".split(",")).contains(month+"")){
             endDate =  LocalDate.of(year,month,31);
         }else {
             if (month != 2) {
@@ -581,6 +580,41 @@ public class ProjectCostBudgetServiceImpl extends BaseServiceImpl<ProjectCostBud
             }
         }
         ProjectCostBudgetVO3 vo3 = baseMapper.MonthPlanOverview(userId, startDate, endDate);
+        //获取转移任务总数
+        Integer total = baseMapper.getChangePlanTotal(userId, startDate, endDate);
+        vo3.setTransferPlan(total);
+        //获取日志未填写总数,获取创建时间,从创建时间当天开始填写日志
+        LocalDate creatTime =baseMapper.getUserCreatTime(userId);
+        LocalDate start;
+        LocalDate end;
+        Integer days = 0;
+        if (startDate.isAfter(LocalDate.now())){
+            return vo3;
+        }
+        //如果创建时间大于查询结束时间,就不用计算日志
+        if (!creatTime.isAfter(endDate)){
+            //创建时间小于查询结束时间,则判断判断时间是否大于查询开始时间
+            if (creatTime.isAfter(startDate)){
+                //创建时间大于查询开始时间,则查询开始时间变成创建时间
+                start = creatTime;
+            }else {
+                //创建时间小于查询开始时间,则开始时间变成查询开始时间
+                start = startDate;
+            }
+            //如果查询结束时间大于今天,则今天为查询结束时间
+            if (endDate.isAfter(LocalDate.now())){
+                end = LocalDate.now();
+            }else {
+                //查询结束时间小于今天,则查询结束时间为结束时间
+                end = endDate;
+            }
+            //获取用户当月填写的日志
+            Integer logTotal = baseMapper.getUserMonthLog(userId,start,end);
+            //根据开始时间,结束时间获取工作日应该填写
+            days = CommonUtil.getWorkDays(start, end);
+            //计算 应该填写-实际填写
+            vo3.setNotFilledLog(days - logTotal);
+        }
         return vo3;
     }
 

+ 9 - 9
blade-service/blade-desk/src/main/java/org/springblade/desk/controller/LeaveController.java

@@ -54,14 +54,14 @@ public class LeaveController extends BladeController implements CacheNames {
         return R.data(detail);
     }
 
-    /**
-     * 新增或修改
-     *
-     * @param leave 请假信息
-     */
-    @PostMapping("start-process")
-    public R startProcess(@RequestBody ProcessLeave leave) {
-        return R.status(leaveService.startProcess(leave));
-    }
+//    /**
+//     * 新增或修改
+//     *
+//     * @param leave 请假信息
+//     */
+//    @PostMapping("start-process")
+//    public R startProcess(@RequestBody ProcessLeave leave) {
+//        return R.status(leaveService.startProcess(leave));
+//    }
 
 }