Browse Source

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

wanghaicheng 5 years ago
parent
commit
2ff3a749fc
15 changed files with 79 additions and 43 deletions
  1. 1 1
      lift-business-service/src/main/java/cn/com/ty/lift/business/capital/controller/CapitalRepairController.java
  2. 2 2
      lift-business-service/src/main/java/cn/com/ty/lift/business/contract/service/PaymentService.java
  3. 2 1
      lift-business-service/src/main/java/cn/com/ty/lift/business/emergency/controller/EmergencyRepairController.java
  4. 16 2
      lift-business-service/src/main/java/cn/com/ty/lift/business/library/service/LiftService.java
  5. 6 0
      lift-business-service/src/main/java/cn/com/ty/lift/business/maintenance/dao/entity/model/request/MaintenanceRecordRequest.java
  6. 1 1
      lift-business-service/src/main/java/cn/com/ty/lift/business/project/controller/ProjectUserController.java
  7. 2 2
      lift-business-service/src/main/java/cn/com/ty/lift/business/project/dao/entity/model/response/ProjectResponse.java
  8. 24 0
      lift-business-service/src/main/java/cn/com/ty/lift/business/project/service/ProjectAppService.java
  9. 4 11
      lift-business-service/src/main/java/cn/com/ty/lift/business/project/service/ProjectUserService.java
  10. 1 0
      lift-business-service/src/main/resources/locale/response.properties
  11. 6 14
      lift-business-service/src/main/resources/mapper/contract/PaymentMapper.xml
  12. 1 0
      lift-business-service/src/main/resources/mapper/lift/LiftMapper.xml
  13. 4 4
      lift-business-service/src/main/resources/mapper/maintenance/MaintenancePlanMapper.xml
  14. 4 4
      lift-business-service/src/main/resources/mapper/maintenance/MaintenanceRecordMapper.xml
  15. 5 1
      lift-business-service/src/main/resources/mapper/project/ProjectMapper.xml

+ 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"));
     }
 

+ 2 - 2
lift-business-service/src/main/java/cn/com/ty/lift/business/contract/service/PaymentService.java

@@ -43,7 +43,7 @@ public class PaymentService extends ServiceImpl<PaymentMapper, Payment> {
      * @date 2020/2/20 3:10 下午
      */
     public IPage<PaymentListResponse> maintenanceList(PaymentRequest request) {
-        request.addDesc("work_date");
+        request.addDesc("c.end_date");
         return baseMapper.findProjectByCondition(request.getPage(), request);
     }
 
@@ -54,7 +54,7 @@ public class PaymentService extends ServiceImpl<PaymentMapper, Payment> {
      * @date 2020/4/27 11:15 上午
      */
     public IPage<PaymentListResponse> capitalList(PaymentRequest request) {
-        request.addDesc("work_date");
+        request.addDesc("c.end_date");
         return baseMapper.findCapitalByCondition(request.getPage(), request);
     }
 

+ 2 - 1
lift-business-service/src/main/java/cn/com/ty/lift/business/emergency/controller/EmergencyRepairController.java

@@ -114,7 +114,8 @@ public class EmergencyRepairController {
             //急修图片
             result.setErRecordImgs(erRecordImgService.listByErRecordId(id));
             //评价
-            result.setEvaluation(evaluationService.findByRecord(id, ValuePool.EVALUATE_SOURCE_EMERGENCY));
+            Evaluation byRecord = evaluationService.findByRecord(id, ValuePool.EVALUATE_SOURCE_EMERGENCY);
+            if (Objects.nonNull(byRecord)) result.setEvaluation(byRecord);
             //故障信息
             fillFault(result);
         }

+ 16 - 2
lift-business-service/src/main/java/cn/com/ty/lift/business/library/service/LiftService.java

@@ -271,8 +271,6 @@ public class LiftService extends ServiceImpl<LiftMapper, Lift> {
         //公司id
         Long mtCompanyId = request.getMtCompanyId();
         Lift lift = request.getLift();
-        if (maintenanceService.judge(mtCompanyId))
-            return RestResponse.fail(ApiConstants.RESULT_ERROR, MessageUtils.get("msg.limit.num"));
         RestResponse response = preJudgment(mtCompanyId, lift.getRegistrationCode());
         if (ApiConstants.RESULT_ERROR.equals(response.getStatusCode())) return response;
         //新增标记 (0:新增,1:查询后带入)
@@ -297,10 +295,26 @@ public class LiftService extends ServiceImpl<LiftMapper, Lift> {
         switch (source) {
             //电梯管理入口
             case "0":
+                if (maintenanceService.judge(mtCompanyId))
+                    return RestResponse.fail(MessageUtils.get("msg.limit.num"));
                 saveCompanyLiftInfo(id, mtCompanyId);
                 break;
             //项目管理入口
             case "1":
+                Long projectId = request.getProjectId();
+                Optional<Project> optional = projectService.getOne(projectId);
+                int num = 0;
+                if (optional.isPresent()) {
+                    Project project = optional.get();
+                    num = project.getNum();
+                }
+                //获取该公司企业电梯关联表的实际电梯台量
+                int currentNum = platformService.countLiftNum(mtCompanyId);
+                if (currentNum >= num) {
+                    return RestResponse.fail(MessageUtils.get("msg.project.limit.num"));
+                }
+                if (maintenanceService.judge(mtCompanyId))
+                    return RestResponse.fail(MessageUtils.get("msg.limit.num"));
                 //新增企业电梯关联表
                 PlatformCompanyLiftRelevance companyLiftEntry = platformService.save(id, mtCompanyId);
                 if (ObjectUtil.isEmpty(companyLiftEntry)) {

+ 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();
         }

+ 2 - 2
lift-business-service/src/main/java/cn/com/ty/lift/business/project/dao/entity/model/response/ProjectResponse.java

@@ -40,11 +40,11 @@ public class ProjectResponse {
     /**
      * 台量
      */
-    private Integer num;
+    private int num;
     /**
      * 系统台量(实际台量)
      */
-    private Integer actualNum;
+    private int actualNum;
     /**
      * 项目地址
      */

+ 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/locale/response.properties

@@ -12,6 +12,7 @@ msg.modify.batch.success=\u6279\u91CF\u4FEE\u6539\u6210\u529F
 msg.modify.batch.fail=\u6279\u91CF\u4FEE\u6539\u5931\u8D25
 msg.delete.batch.fail=\u6279\u91CF\u5220\u9664\u5931\u8D25
 msg.limit.num=\u5F53\u524D\u7535\u68AF\u53F0\u91CF\u5927\u4E8E\u4F01\u4E1A\u8BBE\u7F6E\u7535\u68AF\u53F0\u91CF
+msg.project.limit.num=\u5F53\u524D\u7535\u68AF\u53F0\u91CF\u5927\u4E8E\u9879\u76EE\u53F0\u91CF
 msg.param.empty=\u53C2\u6570\u4E0D\u80FD\u4E3A\u7A7A
 msg.lift.exist=\u516C\u53F8\u4E0B\u5DF2\u6709\u6B64\u7535\u68AF\uFF0C\u4E0D\u80FD\u91CD\u590D\u6DFB\u52A0
 msg.lift.company.exist=\u5176\u4ED6\u516C\u53F8\u5DF2\u6709\u6B64\u7535\u68AF\uFF0C\u8FD4\u56DE\u7535\u68AF\u4FE1\u606F

+ 6 - 14
lift-business-service/src/main/resources/mapper/contract/PaymentMapper.xml

@@ -39,19 +39,15 @@
 		       c.id                            AS contractId,
 		       c.code                          AS contractCode,
 			   p.project_name                  AS projectName,
-			   pa.code                         AS paymentCode,
 			   c.plan_money_total              AS planMoney,
 			   c.work_money_total              AS workMoney,
-		       pa.plan_date                    AS planDate,
-		       pa.work_date                    AS workDate,
 		       c.end_date                      AS endDate,
 		       ui.name                         AS cashierUser
 		FROM contracts c
-				 LEFT JOIN payment pa ON c.id = pa.contracts_id
 				 LEFT JOIN project p ON c.project_id = p.id
-		         LEFT JOIN user_info ui on pa.cashier_user = ui.user_id
+		         LEFT JOIN user_info ui on c.update_id = ui.user_id
 		WHERE c.mt_company_id = #{request.mtCompanyId,jdbcType=BIGINT}
-		AND pa.type in('1','2','3','4')
+		AND c.type in('1','2','3','4')
 		<if test="request.projectName!=null and request.projectName!=''">
 			AND p.project_name LIKE CONCAT('%',#{request.projectName,jdbcType=VARCHAR},'%')
 		</if>
@@ -64,19 +60,15 @@
 			c.id                            AS contractId,
 			c.code                          AS contractCode,
 			cr.project_name                 AS projectName,
-			pa.code                         AS paymentCode,
-			pa.plan_money                   AS planMoney,
-			pa.work_money                   AS workMoney,
-			pa.plan_date                    AS planDate,
-			pa.work_date                    AS workDate,
+			c.plan_money_total              AS planMoney,
+			c.work_money_total              AS workMoney,
 			c.end_date                      AS endDate,
 			ui.name                         AS cashierUser
 		FROM contracts c
-			LEFT JOIN payment pa ON c.id = pa.contracts_id
 			LEFT JOIN capital_repair cr ON c.project_id = cr.id
-		    LEFT JOIN user_info ui on pa.cashier_user = ui.user_id
+		    LEFT JOIN user_info ui on c.update_id = ui.user_id
 		WHERE c.mt_company_id = #{request.mtCompanyId,jdbcType=BIGINT}
-		AND pa.type = '5'
+		AND c.type = '5'
 		<if test="request.projectName!=null and request.projectName!=''">
 			AND cr.project_name LIKE CONCAT('%',#{request.projectName,jdbcType=VARCHAR},'%')
 		</if>

+ 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">

+ 5 - 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,
@@ -73,7 +73,11 @@
 		LEFT JOIN contracts c ON p.id = c.project_id
 		LEFT JOIN (SELECT count(1) AS actualNum, project_id
 					FROM project_lift_relevance plr
+					LEFT JOIN platform_company_lift_relevance pclr
+					ON plr.lift_id = pclr.lift_id AND pclr.mt_company_id = plr.mt_company_id
 					WHERE plr.mt_company_id = #{request.mtCompanyId,jdbcType=BIGINT}
+					AND pclr.lift_company_status != '1'
+					AND pclr.delete_flag = '0'
 					GROUP BY project_id) plr ON plr.project_id = p.id
         WHERE p.mt_company_id = #{request.mtCompanyId,jdbcType=BIGINT}
 		<if test="request.provinceCode!=null and request.provinceCode!=''">