Selaa lähdekoodia

首页-待办

黄远 5 vuotta sitten
vanhempi
commit
1b707308c6

+ 1 - 0
lift-common/src/main/java/cn.com.ty.lift.common/constants/ApiConstants.java

@@ -1,3 +1,4 @@
+
 package cn.com.ty.lift.common.constants;
 
 /**

+ 2 - 2
lift-system-service/src/main/java/cn/com/ty/lift/system/constants/CommonConstants.java

@@ -100,7 +100,7 @@ public class CommonConstants {
         /**
          * 大修待办
          */
-        int BIG_FIX_TODO = 4;
+        int CAPITAL_REPAIR_TODO = 4;
 
         /**
          * 年检待办
@@ -114,7 +114,7 @@ public class CommonConstants {
                 ADMINISTRATIVE_TODO,
                 EMERGENCY_TODO,
                 MAINTENANCE_TODO,
-                BIG_FIX_TODO,
+                CAPITAL_REPAIR_TODO,
                 ANNUAL_INSPECTION_TODO
         };
     }

+ 3 - 2
lift-system-service/src/main/java/cn/com/ty/lift/system/homepage/controller/LiftDataController.java

@@ -3,6 +3,7 @@ package cn.com.ty.lift.system.homepage.controller;
 import cn.com.ty.lift.system.homepage.dao.dto.request.LiftDataRequest;
 import cn.com.ty.lift.system.homepage.service.LiftDataService;
 import cn.com.xwy.boot.web.dto.RestResponse;
+import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
@@ -27,7 +28,7 @@ public class LiftDataController {
      * @date 2020/2/14 1:02 下午
      */
     @RequestMapping("/liftNum")
-    public RestResponse liftNum(LiftDataRequest liftDataRequest) {
+    public RestResponse liftNum(@RequestBody LiftDataRequest liftDataRequest) {
         return liftDataService.liftNum(liftDataRequest);
     }
 
@@ -38,7 +39,7 @@ public class LiftDataController {
      * @date 2020/2/14 1:07 下午
      */
     @RequestMapping("/liftDataList")
-    public RestResponse getLiftDataList(LiftDataRequest liftDataRequest) {
+    public RestResponse getLiftDataList(@RequestBody LiftDataRequest liftDataRequest) {
         return liftDataService.getLiftDataList(liftDataRequest);
     }
 

+ 8 - 7
lift-system-service/src/main/java/cn/com/ty/lift/system/homepage/controller/TodoController.java

@@ -3,6 +3,7 @@ package cn.com.ty.lift.system.homepage.controller;
 import cn.com.ty.lift.system.homepage.dao.dto.request.TodoRequest;
 import cn.com.ty.lift.system.homepage.service.TodoService;
 import cn.com.xwy.boot.web.dto.RestResponse;
+import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
@@ -27,7 +28,7 @@ public class TodoController {
      * @date 2020/2/14 10:55 上午
      */
     @RequestMapping("/todoNum")
-    public RestResponse todoNum(TodoRequest todoRequest) {
+    public RestResponse todoNum(@RequestBody TodoRequest todoRequest) {
         return todoService.todoNum(todoRequest);
     }
 
@@ -38,7 +39,7 @@ public class TodoController {
      * @date 2020/2/14 12:20 下午
      */
     @RequestMapping("/emergencyTodo")
-    public RestResponse getEmergencyTodo(TodoRequest todoRequest) {
+    public RestResponse getEmergencyTodo(@RequestBody TodoRequest todoRequest) {
         return todoService.getEmergencyTodo(todoRequest);
     }
 
@@ -49,7 +50,7 @@ public class TodoController {
      * @date 2020/2/14 12:21 下午
      */
     @RequestMapping("/maintenanceTodo")
-    public RestResponse getMaintenanceTodo(TodoRequest todoRequest) {
+    public RestResponse getMaintenanceTodo(@RequestBody TodoRequest todoRequest) {
         return todoService.getMaintenanceTodo(todoRequest);
     }
 
@@ -59,9 +60,9 @@ public class TodoController {
      * @description 获取大修待办
      * @date 2020/2/14 12:22 下午
      */
-    @RequestMapping("/bigFixTodo")
-    public RestResponse getBigFixTodo(TodoRequest todoRequest) {
-        return todoService.getBigFixTodo(todoRequest);
+    @RequestMapping("/capitalRepairTodo")
+    public RestResponse capitalRepairTodo(@RequestBody TodoRequest todoRequest) {
+        return todoService.getCapitalRepairTodo(todoRequest);
     }
 
     /**
@@ -71,7 +72,7 @@ public class TodoController {
      * @date 2020/2/14 12:24 下午
      */
     @RequestMapping("/annualInspectionTodo")
-    public RestResponse getAnnualInspectionTodo(TodoRequest todoRequest) {
+    public RestResponse getAnnualInspectionTodo(@RequestBody TodoRequest todoRequest) {
         return todoService.getAnnualInspectionTodo(todoRequest);
     }
 

+ 5 - 0
lift-system-service/src/main/java/cn/com/ty/lift/system/homepage/dao/dto/response/AnnualInspectionResponse.java

@@ -17,6 +17,11 @@ public class AnnualInspectionResponse {
      */
     private Long annualInspectionId;
 
+    /**
+     * 电梯id
+     */
+    private Long liftId;
+
     /**
      * 项目名称
      */

+ 0 - 28
lift-system-service/src/main/java/cn/com/ty/lift/system/homepage/dao/dto/response/BigFixResponse.java

@@ -1,28 +0,0 @@
-package cn.com.ty.lift.system.homepage.dao.dto.response;
-
-import lombok.Data;
-
-/**
- * @author huangyuan
- * @date 2020/2/14
- * @description 大修
- */
-@Data
-public class BigFixResponse {
-
-    /**
-     * 大修记录id
-     */
-    private Long bigFixId;
-
-    /**
-     * 项目名称
-     */
-    private String projectName;
-
-    /**
-     * 项目地址
-     */
-    private String projectAddress;
-
-}

+ 50 - 0
lift-system-service/src/main/java/cn/com/ty/lift/system/homepage/dao/dto/response/CapitalRepairResponse.java

@@ -0,0 +1,50 @@
+package cn.com.ty.lift.system.homepage.dao.dto.response;
+
+import lombok.Data;
+
+import java.time.LocalDate;
+
+/**
+ * @author huangyuan
+ * @date 2020/2/14
+ * @description 大修
+ */
+@Data
+public class CapitalRepairResponse {
+
+    /**
+     * 电梯id
+     */
+    private Long liftId;
+
+    /**
+     * 大修记录id
+     */
+    private Long capitalRepairId;
+
+    /**
+     * 项目名称
+     */
+    private String projectName;
+
+    /**
+     * 项目地址
+     */
+    private String projectAddress;
+
+    /**
+     * 开始时间
+     */
+    private LocalDate startDate;
+
+    /**
+     * 结束时间
+     */
+    private LocalDate endDate;
+
+    /**
+     * 是否开启消息推送 0否 1是
+     */
+    private String pushFlag;
+
+}

+ 6 - 1
lift-system-service/src/main/java/cn/com/ty/lift/system/homepage/dao/dto/response/EmergencyTodoResponse.java

@@ -8,12 +8,17 @@ import lombok.Data;
  * @description 急修待办相应信息
  */
 @Data
-public class EmergencyTodoResponse {
+public class EmergencyResponse {
     /**
      * 急修记录id
      */
     private Long emergencyId;
 
+    /**
+     * 电梯id
+     */
+    private Long liftId;
+
     /**
      * 电梯注册代码
      */

+ 5 - 0
lift-system-service/src/main/java/cn/com/ty/lift/system/homepage/dao/dto/response/MaintenanceTodoResponse.java

@@ -16,6 +16,11 @@ public class MaintenanceTodoResponse {
      */
     private Long mtPlanId;
 
+    /**
+     * 电梯id
+     */
+    private Long liftId;
+
     /**
      * 电梯注册代码
      */

+ 83 - 0
lift-system-service/src/main/java/cn/com/ty/lift/system/homepage/dao/mapper/TodoDataMapper.java

@@ -0,0 +1,83 @@
+package cn.com.ty.lift.system.homepage.dao.mapper;
+
+import cn.com.ty.lift.system.homepage.dao.dto.request.TodoRequest;
+import cn.com.ty.lift.system.homepage.dao.dto.response.AnnualInspectionResponse;
+import cn.com.ty.lift.system.homepage.dao.dto.response.CapitalRepairResponse;
+import cn.com.ty.lift.system.homepage.dao.dto.response.EmergencyResponse;
+import cn.com.ty.lift.system.homepage.dao.dto.response.MaintenanceTodoResponse;
+import cn.com.xwy.boot.mybatis.MyBatisMapper;
+
+import java.util.List;
+
+/**
+ * @author huangyuan
+ * @date 2020/2/21
+ * @description 待办
+ */
+@MyBatisMapper
+public interface TodoDataMapper {
+
+    /**
+     * @param
+     * @return
+     * @description 获取急修待办条数
+     * @date 2020/2/22 11:27 上午
+     */
+    Long getEmergencyTodoCount(TodoRequest todoRequest);
+
+    /**
+     * @param
+     * @return
+     * @description 获取维保待办条数
+     * @date 2020/2/22 11:30 上午
+     */
+    Long getMaintenanceTodoCount(TodoRequest todoRequest);
+
+    /**
+     * @param
+     * @return
+     * @description 获取大修待办条数
+     * @date 2020/2/22 11:31 上午
+     */
+    Long getCapitalTodoCount(TodoRequest todoRequest);
+
+    /**
+     * @param
+     * @return
+     * @description 获取年检待办条数
+     * @date 2020/2/22 11:33 上午
+     */
+    Long getAnnualTodoCount(TodoRequest todoRequest);
+
+    /**
+     * @param
+     * @return
+     * @description 获取急修待办数据
+     * @date 2020/2/21 5:05 下午
+     */
+    List<EmergencyResponse> getEmergencyTodoData(TodoRequest todoRequest);
+
+    /**
+     * @param
+     * @return
+     * @description 获取维保(计划)待办数据
+     * @date 2020/2/21 5:06 下午
+     */
+    List<MaintenanceTodoResponse> getMaintenanceTodoData(TodoRequest todoRequest);
+
+    /**
+     * @param
+     * @return
+     * @description 获取大修待办事项
+     * @date 2020/2/22 8:43 上午
+     */
+    List<CapitalRepairResponse> getCapitalRepairTodoData(TodoRequest todoRequest);
+
+    /**
+     * @param
+     * @return
+     * @description 获取年检待办数据
+     * @date 2020/2/22 8:37 上午
+     */
+    List<AnnualInspectionResponse> getAnnualInspectionTodoData(TodoRequest todoRequest);
+}

+ 45 - 13
lift-system-service/src/main/java/cn/com/ty/lift/system/homepage/service/TodoService.java

@@ -4,14 +4,19 @@ import cn.com.ty.lift.common.constants.ApiConstants;
 import cn.com.ty.lift.system.constants.CommonConstants;
 import cn.com.ty.lift.system.homepage.dao.dto.request.TodoRequest;
 import cn.com.ty.lift.system.homepage.dao.dto.response.AnnualInspectionResponse;
-import cn.com.ty.lift.system.homepage.dao.dto.response.BigFixResponse;
-import cn.com.ty.lift.system.homepage.dao.dto.response.EmergencyTodoResponse;
+import cn.com.ty.lift.system.homepage.dao.dto.response.CapitalRepairResponse;
+import cn.com.ty.lift.system.homepage.dao.dto.response.EmergencyResponse;
 import cn.com.ty.lift.system.homepage.dao.dto.response.MaintenanceTodoResponse;
+import cn.com.ty.lift.system.homepage.dao.mapper.TodoDataMapper;
+import cn.com.ty.lift.system.settings.dao.entity.MtCompanyAttestation;
+import cn.com.ty.lift.system.settings.service.IMtCompanyAttestationService;
+import cn.com.ty.lift.system.user.dao.entity.UserApplication;
+import cn.com.ty.lift.system.user.service.IUserApplicationService;
 import cn.com.xwy.boot.web.dto.RestResponse;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import org.springframework.stereotype.Service;
-import org.springframework.web.bind.annotation.RequestMapping;
 
-import java.util.ArrayList;
+import javax.annotation.Resource;
 import java.util.List;
 import java.util.Map;
 
@@ -23,6 +28,15 @@ import java.util.Map;
 @Service
 public class TodoService {
 
+    @Resource
+    private TodoDataMapper todoDataMapper;
+
+    @Resource
+    private IMtCompanyAttestationService mtCompanyAttestationService;
+
+    @Resource
+    private IUserApplicationService userApplicationService;
+
     /**
      * @param todoRequest 公司id
      * @return
@@ -32,10 +46,30 @@ public class TodoService {
     public RestResponse todoNum(TodoRequest todoRequest) {
         Map<Integer, Long> todoTypeToNum = CommonConstants.TODO_TYPE_TO_NUM;
         //1.设置行政待办事项数量
+        //团队成员申请待办
+        long administrativeTodoCount = userApplicationService.count(new QueryWrapper<UserApplication>()
+                .eq("status", ApiConstants.ApplicationConstants.APPLY_WAIT)
+        );
+        //公司申请待办,平台公司才能有公司申请待办
+        if(todoRequest.getMtCompanyId() == ApiConstants.PLATFORM_COMPANY_ID){
+            long platCompanyTodoCount = mtCompanyAttestationService.count(new QueryWrapper<MtCompanyAttestation>()
+                    .eq("is_certificated", ApiConstants.CompanyConstants.MAINTENANCE_WAIT_CERTIFICATE)
+            );
+            administrativeTodoCount = administrativeTodoCount + platCompanyTodoCount;
+        }
+        todoTypeToNum.put(CommonConstants.TodoConstants.ADMINISTRATIVE_TODO, administrativeTodoCount);
         //2.设置急修待办数量
+        long emergencyTodoCount = todoDataMapper.getEmergencyTodoCount(todoRequest);
+        todoTypeToNum.put(CommonConstants.TodoConstants.EMERGENCY_TODO, emergencyTodoCount);
         //3.设置维保待办数量
+        long maintenanceTodoCount = todoDataMapper.getMaintenanceTodoCount(todoRequest);
+        todoTypeToNum.put(CommonConstants.TodoConstants.MAINTENANCE_TODO, maintenanceTodoCount);
         //4.设置大修待办数量
+        long capitalRepairTodoCount = todoDataMapper.getCapitalTodoCount(todoRequest);
+        todoTypeToNum.put(CommonConstants.TodoConstants.CAPITAL_REPAIR_TODO, capitalRepairTodoCount);
         //5.设置年检待办数量
+        long annualTodoCount = todoDataMapper.getAnnualTodoCount(todoRequest);
+        todoTypeToNum.put(CommonConstants.TodoConstants.ANNUAL_INSPECTION_TODO, annualTodoCount);
         return RestResponse.success(todoTypeToNum, ApiConstants.RESULT_SUCCESS, "获取待办数据成功");
     }
 
@@ -46,7 +80,7 @@ public class TodoService {
      * @date 2020/2/14 12:20 下午
      */
     public RestResponse getEmergencyTodo(TodoRequest todoRequest) {
-        List<EmergencyTodoResponse> emergencyTodoResponseList = new ArrayList<>();
+        List<EmergencyResponse> emergencyTodoResponseList = todoDataMapper.getEmergencyTodoData(todoRequest);
         return RestResponse.success(emergencyTodoResponseList, ApiConstants.RESULT_SUCCESS, "获取待办数据成功");
     }
 
@@ -56,9 +90,8 @@ public class TodoService {
      * @description 获取维保待办
      * @date 2020/2/14 12:21 下午
      */
-    @RequestMapping("/maintenanceTodo")
     public RestResponse getMaintenanceTodo(TodoRequest todoRequest) {
-        List<MaintenanceTodoResponse> maintenanceTodoResponseList = new ArrayList<>();
+        List<MaintenanceTodoResponse> maintenanceTodoResponseList = todoDataMapper.getMaintenanceTodoData(todoRequest);
         return RestResponse.success(maintenanceTodoResponseList, ApiConstants.RESULT_SUCCESS, "获取待办数据成功");
     }
 
@@ -68,10 +101,9 @@ public class TodoService {
      * @description 获取大修待办
      * @date 2020/2/14 12:22 下午
      */
-    @RequestMapping("/bigFixTodo")
-    public RestResponse getBigFixTodo(TodoRequest todoRequest) {
-        List<BigFixResponse> bigFixResponseList = new ArrayList<>();
-        return RestResponse.success(bigFixResponseList, ApiConstants.RESULT_SUCCESS, "获取待办数据成功");
+    public RestResponse getCapitalRepairTodo(TodoRequest todoRequest) {
+        List<CapitalRepairResponse> capitalRepairResponseList = todoDataMapper.getCapitalRepairTodoData(todoRequest);
+        return RestResponse.success(capitalRepairResponseList, ApiConstants.RESULT_SUCCESS, "获取待办数据成功");
     }
 
     /**
@@ -80,9 +112,9 @@ public class TodoService {
      * @description 获取年检待办
      * @date 2020/2/14 12:24 下午
      */
-    @RequestMapping("/annualInspectionTodo")
     public RestResponse getAnnualInspectionTodo(TodoRequest todoRequest) {
-        List<AnnualInspectionResponse> annualInspectionResponseList = new ArrayList<>();
+        List<AnnualInspectionResponse> annualInspectionResponseList = todoDataMapper
+                .getAnnualInspectionTodoData(todoRequest);
         return RestResponse.success(annualInspectionResponseList, ApiConstants.RESULT_SUCCESS, "获取待办数据成功");
     }
 }

+ 185 - 0
lift-system-service/src/main/resources/mapper/TodoDataMapper.xml

@@ -0,0 +1,185 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
+<mapper namespace="cn.com.ty.lift.system.homepage.dao.mapper.TodoDataMapper">
+    <!-- 维保计划查询条件sql -->
+    <sql id="maintenanceTodoQuerySql">
+        where
+            mp.mt_company_id = #{mtCompanyId}
+    </sql>
+
+    <!-- 急修记录查询条件sql -->
+    <sql id="emergencyTodoQuerySql">
+        where
+            er.mt_company_id = #{mtCompanyId}
+    </sql>
+
+    <!-- 大修记录查询条件sql -->
+    <sql id="capitalTodoQuerySql">
+        where
+            cr.mt_company_id = #{mtCompanyId}
+    </sql>
+
+    <!-- 年检记录查询条件sql -->
+    <sql id="annualInspectionTodoSql">
+        where
+            ai.mt_company_id = #{mtCompanyId}
+    </sql>
+
+    <!-- 获取维保计划待办事项 -->
+    <select id="getMaintenanceTodoData"
+            parameterType="cn.com.ty.lift.system.homepage.dao.dto.request.TodoRequest"
+            resultType="cn.com.ty.lift.system.homepage.dao.dto.response.MaintenanceTodoResponse">
+        select
+            mp.id as mtPlanId,
+            mp.lift_id as liftId,
+            mp.plan_date as planDate,
+            l.registration_code as registrationCode,
+            l.use_company_code as userCompanyCode,
+            l.lift_type as liftType,
+            ui.name as workerName
+        from
+            maintenance_plan mp
+        left join
+            lift l
+        on
+            mp.lift_id = l.id
+        left join
+            user_info ui
+        on
+            mp.worker_id = ui.user_id
+        <include refid="maintenanceTodoQuerySql"></include>
+    </select>
+
+    <!-- 获取急修待办数据 -->
+    <select id="getEmergencyTodoData"
+            parameterType="cn.com.ty.lift.system.homepage.dao.dto.request.TodoRequest"
+            resultType="cn.com.ty.lift.system.homepage.dao.dto.response.EmergencyResponse">
+        select
+            er.id as emergencyId,
+            er.lift_id as liftId,
+            er.caller_name as callerName,
+            er.fault_reason as faultReason,
+            er.is_critical as isCritical,
+            er.is_trapped as isTrapped,
+            l.registration_code as registrationCode,
+            l.coordinate as coordinate,
+            p.project_name as projectName,
+            p.project_code as projectCode,
+            ui.name as workerName
+        from
+            emergency_repair er
+        left join
+            lift l
+        on
+            er.lift_id = l.id
+        left join
+            project p
+        on
+            er.project_id = p.id
+        left join
+            user_info ui
+        on
+            er.worker_id = ui.user_id
+        <include refid="emergencyTodoQuerySql"></include>
+    </select>
+
+    <!-- 获取大修待办事项 -->
+    <select id="getCapitalRepairTodoData"
+            parameterType="cn.com.ty.lift.system.homepage.dao.dto.request.TodoRequest"
+            resultType="cn.com.ty.lift.system.homepage.dao.dto.response.CapitalRepairResponse">
+        select
+            cr.id as capitalRepairId,
+            cr.project_name as projectName,
+            cr.project_address as projectAddress,
+            cr.start_date as startDate,
+            cr.end_date as endDate,
+            cr.push_flag as pushFlag
+        from
+            capital_repair cr
+        <include refid="capitalTodoQuerySql"></include>
+    </select>
+
+    <!-- 获取年检待办数据 -->
+    <select id="getAnnualInspectionTodoData"
+            parameterType="cn.com.ty.lift.system.homepage.dao.dto.request.TodoRequest"
+            resultType="cn.com.ty.lift.system.homepage.dao.dto.response.AnnualInspectionResponse">
+        select
+            ai.id as annualInspectionId,
+            ai.lift_id as liftId,
+            ai.plan_date as planDate,
+            p.project_name as projectName,
+            p.project_code as projectCode,
+            l.registration_code as registerationCode,
+            l.use_company_code as useCompanyCode,
+            l.lift_type as liftType,
+            ui.name as workerName
+        from
+            annual_inspection ai
+        left join
+            lift l
+        on
+            ai.lift_id = l.id
+        left join
+            project_lift_relevance plr
+        on
+            plr.lift_id = l.id
+        left join
+            project p
+        on
+            plr.project_id = p.id
+        left join
+            user_info ui
+        on
+            ui.user_id = plr.worker_id
+        <include refid="annualInspectionTodoSql"></include>
+    </select>
+
+    <!-- 获取急修待办条数 -->
+    <select id="getEmergencyTodoCount"
+            parameterType="cn.com.ty.lift.system.homepage.dao.dto.request.TodoRequest"
+            resultType="java.lang.Long">
+        select
+            count(1)
+        from
+            emergency_repair er
+        where
+        <include refid="emergencyTodoQuerySql"></include>
+    </select>
+
+    <!-- 获取维保待办条数 -->
+    <select id="getMaintenanceTodoCount"
+            parameterType="cn.com.ty.lift.system.homepage.dao.dto.request.TodoRequest"
+            resultType="java.lang.Long">
+        select
+            count(1)
+        from
+            maintenance_plan mp
+        where
+        <include refid="maintenanceTodoQuerySql"></include>
+    </select>
+
+    <!-- 获取大修待办条数 -->
+    <select id="getCapitalTodoCount"
+            parameterType="cn.com.ty.lift.system.homepage.dao.dto.request.TodoRequest"
+            resultType="java.lang.Long">
+        select
+            count(1)
+        from
+            capital_repair cr
+        where
+            cr.mt_company_id = #{mtCompanyId}
+        <include refid="capitalTodoQuerySql"></include>
+    </select>
+
+    <!-- 获取年检待办条数 -->
+    <select id="getAnnualTodoCount"
+            parameterType="cn.com.ty.lift.system.homepage.dao.dto.request.TodoRequest"
+            resultType="java.lang.Long">
+        select
+            count(1)
+        from
+            annual_inspection ai
+        <include refid="annualInspectionTodoSql"></include>
+    </select>
+
+</mapper>