Browse Source

Merge branch 'develop' of http://132.232.206.88:3000/lift-manager/lift-server into feature-bieao

别傲 5 years ago
parent
commit
94fdcdd1b9

+ 17 - 6
lift-business-service/src/main/java/cn/com/ty/lift/business/maintenance/controller/PropertyMaintenanceController.java

@@ -1,9 +1,10 @@
 package cn.com.ty.lift.business.maintenance.controller;
 
 import cn.com.ty.lift.business.maintenance.dao.entity.model.request.PropertyMaintenanceVO;
+import cn.com.ty.lift.business.maintenance.dao.entity.model.request.PropertyVo;
 import cn.com.ty.lift.business.maintenance.dao.entity.model.response.DynamicMessageResponse;
 import cn.com.ty.lift.business.maintenance.dao.entity.model.response.PropertyMtResponse;
-import cn.com.ty.lift.business.maintenance.service.PropertyMaintenanceService;
+import cn.com.ty.lift.business.maintenance.service.PropertyService;
 import cn.com.xwy.boot.web.dto.RestResponse;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -17,28 +18,38 @@ import org.springframework.web.bind.annotation.RestController;
 @AllArgsConstructor
 @RequestMapping("property")
 public class PropertyMaintenanceController {
-    private final PropertyMaintenanceService propertyMaintenanceService;
+    private final PropertyService propertyService;
 
     @PostMapping("maintenance")
     public RestResponse<?> maintenance(@RequestBody PropertyMaintenanceVO propertyMaintenanceVO) {
         IPage<PropertyMtResponse> propertyMtResponsePage = new Page<>(propertyMaintenanceVO.getPageNum(), propertyMaintenanceVO.getPageSize());
-        return RestResponse.success(propertyMaintenanceService.propertyMtResponsePage(propertyMtResponsePage, propertyMaintenanceVO));
+        return RestResponse.success(propertyService.propertyMtResponsePage(propertyMtResponsePage, propertyMaintenanceVO));
     }
 
     @PostMapping("maintenance/num/month")
     public RestResponse<?> maintenanceNumForMonth(@RequestBody PropertyMaintenanceVO propertyMaintenanceVO) {
-        return propertyMaintenanceService.queryMaintenancePlanMonth(propertyMaintenanceVO);
+        return propertyService.queryMaintenancePlanMonth(propertyMaintenanceVO);
     }
 
     @PostMapping("repair/message")
     public RestResponse<?> repairMessage(@RequestBody PropertyMaintenanceVO propertyMaintenanceVO) {
         IPage<DynamicMessageResponse> dynamicMessageResponsePage = new Page<>(propertyMaintenanceVO.getPageNum(), propertyMaintenanceVO.getPageSize());
-        return propertyMaintenanceService.queryEmergencyRepairDynamicMessage(dynamicMessageResponsePage, propertyMaintenanceVO);
+        return propertyService.queryEmergencyRepairDynamicMessage(dynamicMessageResponsePage, propertyMaintenanceVO);
     }
 
     @PostMapping("maintenance/message")
     public RestResponse<?> maintenanceMessage(@RequestBody PropertyMaintenanceVO propertyMaintenanceVO) {
         IPage<DynamicMessageResponse> dynamicMessageResponsePage = new Page<>(propertyMaintenanceVO.getPageNum(), propertyMaintenanceVO.getPageSize());
-        return propertyMaintenanceService.queryMaintenanceSuccessDynamicMessage(dynamicMessageResponsePage, propertyMaintenanceVO);
+        return propertyService.queryMaintenanceSuccessDynamicMessage(dynamicMessageResponsePage, propertyMaintenanceVO);
+    }
+
+    @PostMapping("evaluate")
+    public RestResponse<?> evaluate(@RequestBody PropertyVo propertyVo) {
+        return propertyService.queryEvaluateAuth(propertyVo);
+    }
+
+    @PostMapping("project")
+    public RestResponse<?> project(@RequestBody PropertyVo propertyVo) {
+        return propertyService.queryJoinProjectList(propertyVo);
     }
 }

+ 11 - 0
lift-business-service/src/main/java/cn/com/ty/lift/business/maintenance/dao/entity/model/request/PropertyVo.java

@@ -0,0 +1,11 @@
+package cn.com.ty.lift.business.maintenance.dao.entity.model.request;
+
+import lombok.Data;
+
+@Data
+public class PropertyVo {
+    private Long userId;
+    private Long id;
+
+    private Integer type;
+}

+ 9 - 0
lift-business-service/src/main/java/cn/com/ty/lift/business/maintenance/dao/entity/model/response/PropertyEvaluateAuthResponse.java

@@ -0,0 +1,9 @@
+package cn.com.ty.lift.business.maintenance.dao.entity.model.response;
+
+import lombok.Data;
+
+@Data
+public class PropertyEvaluateAuthResponse {
+    private Long id;
+    private Integer userRole;
+}

+ 1 - 0
lift-business-service/src/main/java/cn/com/ty/lift/business/maintenance/dao/entity/model/response/PropertyMtResponse.java

@@ -13,4 +13,5 @@ public class PropertyMtResponse {
     private Object category;
     private String workerName;
     private LocalDate planDate;
+    private Integer hasEvaluate;
 }

+ 10 - 0
lift-business-service/src/main/java/cn/com/ty/lift/business/maintenance/dao/entity/model/response/PropertyProjectListResponse.java

@@ -0,0 +1,10 @@
+package cn.com.ty.lift.business.maintenance.dao.entity.model.response;
+
+import lombok.Data;
+
+@Data
+public class PropertyProjectListResponse {
+    private Long projectId;
+    private String projectName;
+    private Long mtCompanyId;
+}

+ 10 - 2
lift-business-service/src/main/java/cn/com/ty/lift/business/maintenance/dao/mapper/PropertyMaintenanceMapper.java

@@ -2,7 +2,9 @@ package cn.com.ty.lift.business.maintenance.dao.mapper;
 
 import cn.com.ty.lift.business.maintenance.dao.entity.model.dto.MaintenancePlanMonthTaskNum;
 import cn.com.ty.lift.business.maintenance.dao.entity.model.response.DynamicMessageResponse;
+import cn.com.ty.lift.business.maintenance.dao.entity.model.response.PropertyEvaluateAuthResponse;
 import cn.com.ty.lift.business.maintenance.dao.entity.model.response.PropertyMtResponse;
+import cn.com.ty.lift.business.maintenance.dao.entity.model.response.PropertyProjectListResponse;
 import cn.com.ty.lift.common.constants.SqlConstants;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.apache.ibatis.annotations.Select;
@@ -21,8 +23,14 @@ public interface PropertyMaintenanceMapper {
     List<MaintenancePlanMonthTaskNum> queryMaintenancePlanMonth(Long userId, String yearMonth);
 
     @Select(SqlConstants.QUERY_EMERGENCY_REPAIR_DYNAMIC_MESSAGE)
-    List<DynamicMessageResponse> queryEmergencyRepairDynamicMessage(IPage<DynamicMessageResponse> page, Long userId);
+    IPage<DynamicMessageResponse> queryEmergencyRepairDynamicMessage(IPage<DynamicMessageResponse> page, Long userId);
 
     @Select(SqlConstants.QUERY_MAINTENANCE_SUCCESS_DYNAMIC_MESSAGE)
-    List<DynamicMessageResponse> queryMaintenanceSuccessDynamicMessage(IPage<DynamicMessageResponse> page, Long userId);
+    IPage<DynamicMessageResponse> queryMaintenanceSuccessDynamicMessage(IPage<DynamicMessageResponse> page, Long userId);
+
+    @Select(SqlConstants.QUERY_JOIN_PROJECT_LIST)
+    List<PropertyProjectListResponse> queryJoinProjectList(Long userId);
+
+    @Select(SqlConstants.QUERY_EVALUATE_AUTH)
+    List<PropertyEvaluateAuthResponse> queryEvaluateAuth(String table,Long userId);
 }

+ 27 - 1
lift-business-service/src/main/java/cn/com/ty/lift/business/maintenance/service/PropertyMaintenanceService.java

@@ -2,6 +2,7 @@ package cn.com.ty.lift.business.maintenance.service;
 
 import cn.com.ty.lift.business.maintenance.dao.entity.model.dto.MaintenancePlanMonthTaskNum;
 import cn.com.ty.lift.business.maintenance.dao.entity.model.request.PropertyMaintenanceVO;
+import cn.com.ty.lift.business.maintenance.dao.entity.model.request.PropertyVo;
 import cn.com.ty.lift.business.maintenance.dao.entity.model.response.DynamicMessageResponse;
 import cn.com.ty.lift.business.maintenance.dao.entity.model.response.PropertyCalendarResponse;
 import cn.com.ty.lift.business.maintenance.dao.entity.model.response.PropertyMtResponse;
@@ -19,7 +20,7 @@ import java.util.List;
 @Service
 @AllArgsConstructor
 @Slf4j
-public class PropertyMaintenanceService {
+public class PropertyService {
     private final PropertyMaintenanceMapper propertyMaintenanceMapper;
 
     /**
@@ -149,4 +150,29 @@ public class PropertyMaintenanceService {
     public RestResponse<?> queryMaintenanceSuccessDynamicMessage(IPage<DynamicMessageResponse> dynamicMessageResponseIPage, PropertyMaintenanceVO propertyMaintenanceVO) {
         return RestResponse.success(propertyMaintenanceMapper.queryMaintenanceSuccessDynamicMessage(dynamicMessageResponseIPage, propertyMaintenanceVO.getUserId()));
     }
+
+    public RestResponse<?> queryJoinProjectList(PropertyVo propertyVo) {
+        return RestResponse.success(propertyMaintenanceMapper.queryJoinProjectList(propertyVo.getUserId()));
+    }
+
+    /**
+     * 查询用户是否拥有急修或维保评价的权限
+     *
+     * @param propertyVo type 1查询急修评价权限2查询维保评价权限,userId
+     * @return List<PropertyEvaluateAuthResponse>
+     */
+    public RestResponse<?> queryEvaluateAuth(PropertyVo propertyVo) {
+        String table;
+        switch (propertyVo.getType()) {
+            case ApiConstants.Property.QUERY_REPAIR_EVALUATE_AUTH:
+                table = "emergency_repair";
+                break;
+            case ApiConstants.Property.QUERY_MAINTENANCE_EVALUATE_AUTH:
+                table = "maintenance_plan";
+                break;
+            default:
+                throw new IllegalStateException("Unexpected value: " + propertyVo.getType());
+        }
+        return RestResponse.success(propertyMaintenanceMapper.queryEvaluateAuth(table, propertyVo.getUserId()));
+    }
 }

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

@@ -348,4 +348,9 @@ public class ApiConstants {
         Integer OVERDUE = -1;//超期
         Integer LAWS_STIPULATION_OVERDUE = 10;//自定义的法规超期,非数据库状态
     }
+
+    public interface Property {
+        int QUERY_REPAIR_EVALUATE_AUTH = 1;//查询急修评价权限
+        int QUERY_MAINTENANCE_EVALUATE_AUTH = 2;//查询维保评价权限
+    }
 }

+ 17 - 1
lift-common/src/main/java/cn.com.ty.lift.common/constants/SqlConstants.java

@@ -9,11 +9,13 @@ public interface SqlConstants {
                     "       l.lift_type liftType," +
                     "       l.category category," +
                     "       ui.name workerName," +
-                    "       mp.plan_date planDate" +
+                    "       mp.plan_date planDate," +
+                    "       mr.has_evaluate hasEvaluate" +
                     "          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" +
                     "           left join project p on mp.project_id = p.id" +
+                    "           left join maintenance_record mr on mr.mt_plan_id = mp.id" +
                     "       where mp.plan_date = #{planDate}" +
                     "             and mp.status = #{status}" +
                     "             and mp.project_id in (select project_id from project_user where user_id = #{userId})";
@@ -96,4 +98,18 @@ public interface SqlConstants {
                     "        left join lift l on mr.lift_id = l.id" +
                     "    where DATE_FORMAT(mr.recovery_date, '%Y%m%d')  = DATE_FORMAT(CURDATE(), '%Y%m%d')" +
                     "      and project_id in (select project_id from project_user where user_id = #{userId})";
+
+    //根据用户Id查询加入的项目列表
+    String QUERY_JOIN_PROJECT_LIST =
+            "select     id projectId, project_name projectName, mt_company_id mtCompanyId" +
+                    "    from project" +
+                    "   where id in (select project_id from project_user where user_id = #{userId})";
+
+    //查询急修/维保id是否有评价权限
+    String QUERY_EVALUATE_AUTH =
+            "select     temp.id id, pu.user_role userRole" +
+                    "   from ${table} temp" +
+                    "         left join project_user pu on pu.project_id = temp.project_id" +
+                    "   where user_role in (21, 22)" +
+                    "  and user_id =#{userId}";
 }

+ 1 - 1
lift-enterprise-service/src/main/java/cn/com/ty/lift/enterprise/option/controller/MaintenanceOptionController.java

@@ -46,7 +46,7 @@ public class MaintenanceOptionController {
                         .in(req.getType() != null, "type", type(req))
                         .eq(req.getLiftCategory() != null, "lift_category", req.getLiftCategory())
                         .eq(req.getStatus() != null, "status", req.getStatus())
-                        .orderByDesc("id"));
+                        .orderByAsc("id"));
         if (page.getRecords().isEmpty()) {
             return RestResponse.success();
         }

+ 2 - 2
lift-enterprise-service/src/main/java/cn/com/ty/lift/enterprise/option/dao/entity/MaintenanceOption.java

@@ -27,8 +27,8 @@ public class MaintenanceOption implements Serializable {
     /**
      * 保养项目ID
      */
-    @TableId(value = "id", type = IdType.ID_WORKER)
-    private Long id;
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
 
     /**
      * 维保公司id

+ 4 - 9
lift-enterprise-service/src/main/java/cn/com/ty/lift/enterprise/region/service/impl/RegionServiceImpl.java

@@ -47,20 +47,15 @@ public class RegionServiceImpl extends ServiceImpl<RegionMapper, Region> impleme
                                 , "user_id userId", "id")
                         .eq("mt_company_id", req.getMtCompanyId())
                         .orderByDesc("create_time"));
-        //如果没有区域
-        if (page.getRecords().isEmpty()) {
-            return RestResponse.success();
-        }
 
         List<Map<String, Object>> records = regions.getRecords();
+        //如果没有区域
+        if (records.isEmpty()) {
+            return RestResponse.success(page);
+        }
         List<Map<String, Object>> projects = baseMapper.selectProjects();
         List<Map<String, Object>> areaCodes = baseMapper.selectAreaCodes();
         List<Map<String, Object>> userInfos = baseMapper.selectUserInfo();
-
-        if (records.isEmpty()) {
-            return RestResponse.success();
-        }
-
         //遍历区域列表
         for (Map<String, Object> region : records) {
             //遍历用户列表,将user_id替换为name