فهرست منبع

Merge branch 'feature-bieao' of lift-manager/lift-server into develop

bieao 5 سال پیش
والد
کامیت
a6c72b7345

+ 1 - 1
lift-business-service/src/main/java/cn/com/ty/lift/business/capital/controller/CapitalRepairController.java

@@ -221,7 +221,7 @@ public class CapitalRepairController {
     @PostMapping("userList")
     @Validation(fields = {"id", "mtCompanyId"})
     public RestResponse userList(@Val @RequestBody CapitalRepairRequest request){
-        List<ProjectUserResponse> userList = projectUserService.getCapitalUserList(request.getId(), request.getMtCompanyId());
+        List<ProjectUserResponse> userList = projectUserService.userList(request.getId(), request.getMtCompanyId());
         return RestResponse.success(userList, MessageUtils.get("msg.query.success"));
     }
 

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

@@ -87,6 +87,12 @@ public class MaintenanceRecordRequest extends PageRequest {
      */
     private String currentRoleCode;
 
+
+    /**
+     * 是否能查看到项目组其他维保工的任务
+     */
+    private String look;
+
     /**
      * 期数 1-24
      */

+ 1 - 1
lift-business-service/src/main/java/cn/com/ty/lift/business/project/controller/ProjectUserController.java

@@ -37,7 +37,7 @@ public class ProjectUserController {
     @PostMapping("user/list")
     @Validation(fields = {"mtCompanyId", "id"})
     public RestResponse userList(@Val @RequestBody ProjectRequest request) {
-        List<ProjectUserResponse> userList = projectUserService.userList(request);
+        List<ProjectUserResponse> userList = projectUserService.userList(request.getProjectId(),request.getMtCompanyId());
         if (CollUtil.isEmpty(userList)) {
             return RestResponse.success();
         }

+ 24 - 0
lift-business-service/src/main/java/cn/com/ty/lift/business/project/service/ProjectAppService.java

@@ -20,11 +20,13 @@ import cn.com.ty.lift.business.project.dao.entity.model.response.ProjectLiftResp
 import cn.com.ty.lift.business.project.dao.entity.model.response.ProjectUserResponse;
 import cn.com.ty.lift.business.project.dao.mapper.ProjectMapper;
 import cn.com.ty.lift.business.project.dao.mapper.ProjectUserMapper;
+import cn.com.ty.lift.common.constants.ApiConstants;
 import cn.com.xwy.boot.web.dto.RestResponse;
 import cn.hutool.core.collection.CollUtil;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.extern.slf4j.Slf4j;
+import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -63,6 +65,9 @@ public class ProjectAppService extends ServiceImpl<ProjectMapper, Project> {
     @Resource
     private CapitalRepairLiftRelevanceMapper capitalRepairLiftRelevanceMapper;
 
+    @Resource
+    private RedisTemplate redisTemplate;
+
     /**
      * @param request 公司id
      * @return RestResponse 项目列表
@@ -171,6 +176,16 @@ public class ProjectAppService extends ServiceImpl<ProjectMapper, Project> {
         if (Objects.nonNull(request.getBeginTime())) {
             request.setEndTime(request.getBeginTime().with(TemporalAdjusters.lastDayOfMonth()));
         }
+        request.setCurrentRoleCode(DefaultRole.REGION_DIRECTOR.getCode());
+        if (DefaultRole.MTWORK.getCode().equals(request.getCurrentRoleCode())) {
+            Object obj = redisTemplate.opsForHash().get(request.getMtCompanyId() + "_globalSet", ApiConstants.GlobalSetConstants.WORK_LIFT);
+            //维保工不能查看到项目组其他维保工的任务
+            if (Objects.equals("0", obj)) {
+                request.setLook("0");
+            } else {
+                request.setLook("1");
+            }
+        }
         //总经理查询所有保养任务
         if (DefaultRole.HIGH_DIRECTOR.getCode().equals(request.getCurrentRoleCode())) {
             request.setUserId(null);
@@ -215,6 +230,15 @@ public class ProjectAppService extends ServiceImpl<ProjectMapper, Project> {
         if (Objects.nonNull(request.getBeginTime())) {
             request.setEndTime(request.getBeginTime().with(TemporalAdjusters.lastDayOfMonth()));
         }
+        if (DefaultRole.MTWORK.getCode().equals(request.getCurrentRoleCode())) {
+            Object obj = redisTemplate.opsForHash().get(request.getMtCompanyId() + "_globalSet", ApiConstants.GlobalSetConstants.WORK_LIFT);
+            //维保工不能查看到项目组其他维保工的任务
+            if (Objects.equals("0", obj)) {
+                request.setLook("0");
+            } else {
+                request.setLook("1");
+            }
+        }
         //总经理查询所有保养任务
         if (DefaultRole.HIGH_DIRECTOR.getCode().equals(request.getCurrentRoleCode())) {
             request.setUserId(null);

+ 4 - 11
lift-business-service/src/main/java/cn/com/ty/lift/business/project/service/ProjectUserService.java

@@ -32,22 +32,15 @@ public class ProjectUserService extends ServiceImpl<ProjectUserMapper, ProjectUs
         return baseMapper.findUserListById(projectId, mtCompanyId);
     }
 
-    public List<ProjectUserResponse> getCapitalUserList(Long projectId, Long mtCompanyId) {
-        List<ProjectUserResponse> userList = baseMapper.findUserListById(projectId, mtCompanyId);
-        return userList.stream().filter(user -> (
-                CommonEnum.DefaultRole.MTWORK.getCode().equals(user.getUserRole())
-                || CommonEnum.DefaultRole.REGION_DIRECTOR.getCode().equals(user.getUserRole())
-        )).sorted(Comparator.comparing(ProjectUserResponse::getUserRole)).collect(Collectors.toList());
-    }
-
     /**
-     * @param request 项目ID、公司ID
+     * @param projectId 项目ID
+     * @param mtCompanyId 公司ID
      * @return List<ProjectUser> userList项目组成员列表
      * @description 查询项目组成员
      * @date 2019/12/13 2:40 PM
      */
-    public List<ProjectUserResponse> userList(ProjectRequest request) {
-        List<ProjectUserResponse> userList = getUserList(request.getId(), request.getMtCompanyId());
+    public List<ProjectUserResponse> userList(Long projectId, Long mtCompanyId) {
+        List<ProjectUserResponse> userList = getUserList(projectId, mtCompanyId);
         return userList.stream().filter(user -> (
                 CommonEnum.DefaultRole.MTWORK.getCode().equals(user.getUserRole())
                         || CommonEnum.DefaultRole.REGION_DIRECTOR.getCode().equals(user.getUserRole())

+ 1 - 0
lift-business-service/src/main/resources/mapper/lift/LiftMapper.xml

@@ -76,6 +76,7 @@
         lb.name                  AS liftBrand,
         pclr.lift_company_status AS liftStatus,
         plr.first_time           AS firstMaintenanceTime,
+        l.annual_inspection_date AS annualInspectionDate,
         p.project_name           AS projectName,
         p.id                     AS projectId,
         plr.lift_locked          AS liftLocked,

+ 4 - 4
lift-business-service/src/main/resources/mapper/maintenance/MaintenancePlanMapper.xml

@@ -150,14 +150,14 @@
 		       mp.status           AS status
 		FROM maintenance_plan mp
 				 LEFT JOIN project p ON mp.project_id = p.id
-				<if test="request.currentRoleCode == 'REGION_DIRECTOR' ">
+				<if test="(request.currentRoleCode == 'REGION_DIRECTOR') or (request.currentRoleCode == 'ROLEMTWORK' and request.look == 1) ">
 					LEFT JOIN project_user pu ON p.id = pu.project_id
 				</if>
 				 LEFT JOIN lift l ON mp.lift_id = l.id
 				 LEFT JOIN user_info ui ON mp.worker_id = ui.user_id
 		 WHERE mp.mt_company_id = #{request.mtCompanyId,jdbcType=BIGINT}
 		  <choose>
-			  <when test="request.userId > 0 and request.currentRoleCode == 'REGION_DIRECTOR' ">
+			  <when test="(request.currentRoleCode == 'REGION_DIRECTOR') or (request.currentRoleCode == 'ROLEMTWORK' and request.look == 1) ">
 				  AND pu.user_id = #{request.userId,jdbcType=BIGINT}
 			  </when>
 		      <when test="request.userId !=null">
@@ -191,14 +191,14 @@
 				  count(1) total
 		FROM maintenance_plan mp
 				LEFT JOIN project p ON mp.project_id = p.id
-				<if test="request.currentRoleCode == 'REGION_DIRECTOR' ">
+				<if test="(request.currentRoleCode == 'REGION_DIRECTOR') or (request.currentRoleCode == 'ROLEMTWORK' and request.look == 1) ">
 					LEFT JOIN project_user pu ON p.id = pu.project_id
 				</if>
 				LEFT JOIN lift l ON mp.lift_id = l.id
 				LEFT JOIN user_info ui ON mp.worker_id = ui.user_id
 		WHERE mp.mt_company_id = #{request.mtCompanyId,jdbcType=BIGINT}
 		<choose>
-			<when test="request.userId > 0 and request.currentRoleCode == 'REGION_DIRECTOR' ">
+			<when test="(request.currentRoleCode == 'REGION_DIRECTOR') or (request.currentRoleCode == 'ROLEMTWORK' and request.look == 1) ">
 				AND pu.user_id = #{request.userId,jdbcType=BIGINT}
 			</when>
 			<when test="request.userId !=null">

+ 4 - 4
lift-business-service/src/main/resources/mapper/maintenance/MaintenanceRecordMapper.xml

@@ -121,14 +121,14 @@
 		    mr.has_evaluate     AS hasEvaluate
 		FROM maintenance_record mr
 		LEFT JOIN project p ON mr.project_id = p.id
-        <if test="request.currentRoleCode == 'REGION_DIRECTOR' ">
+        <if test="(request.currentRoleCode == 'REGION_DIRECTOR') or (request.currentRoleCode == 'ROLEMTWORK' and request.look == 1) ">
             LEFT JOIN project_user pu ON p.id = pu.project_id
         </if>
 		LEFT JOIN lift l ON mr.lift_id = l.id
 		LEFT JOIN user_info ui ON mr.worker_id = ui.user_id
 		WHERE mr.mt_company_id = #{request.mtCompanyId,jdbcType=BIGINT}
         <choose>
-            <when test="request.userId > 0 and request.currentRoleCode == 'REGION_DIRECTOR' ">
+            <when test="(request.currentRoleCode == 'REGION_DIRECTOR') or (request.currentRoleCode == 'ROLEMTWORK' and request.look == 1) ">
                 AND pu.user_id = #{request.userId,jdbcType=BIGINT}
             </when>
             <when test="request.userId !=null">
@@ -162,14 +162,14 @@
                  count(1) total
         FROM maintenance_record mr
                 LEFT JOIN project p ON mr.project_id = p.id
-                <if test="request.currentRoleCode == 'REGION_DIRECTOR' ">
+                <if test="(request.currentRoleCode == 'REGION_DIRECTOR') or (request.currentRoleCode == 'ROLEMTWORK' and request.look == 1) ">
                     LEFT JOIN project_user pu ON p.id = pu.project_id
                 </if>
                 LEFT JOIN lift l ON mr.lift_id = l.id
                 LEFT JOIN user_info ui ON mr.worker_id = ui.user_id
         WHERE mr.mt_company_id = #{request.mtCompanyId,jdbcType=BIGINT}
         <choose>
-            <when test="request.userId > 0 and request.currentRoleCode == 'REGION_DIRECTOR' ">
+            <when test="(request.currentRoleCode == 'REGION_DIRECTOR') or (request.currentRoleCode == 'ROLEMTWORK' and request.look == 1) ">
                 AND pu.user_id = #{request.userId,jdbcType=BIGINT}
             </when>
             <when test="request.userId !=null">

+ 1 - 1
lift-business-service/src/main/resources/mapper/project/ProjectMapper.xml

@@ -52,7 +52,7 @@
         p.district      AS district,
 		p.district_code AS districtCode,
         p.num           AS num,
-        p.actual_num    AS actualNum,
+        plr.actualNum   AS actualNum,
         p.address       AS address,
         p.start_date    AS startDate,
         p.end_date      AS endDate,