Browse Source

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

wanghaicheng 5 years ago
parent
commit
cd470e5187

+ 9 - 2
lift-business-service/src/main/java/cn/com/ty/lift/business/annualinspection/controller/AnnualInspectionController.java

@@ -107,10 +107,10 @@ public class AnnualInspectionController {
     public RestResponse page(@Val @RequestBody InspectionRequest request) {
         //计划与执行: 按年检时间由近及远排序,已完成: 按年检完成时间由近及远排序
         if(Objects.equals(request.getStatus(), ValuePool.INSPECTION_STATUS_TO_DO)){
-            request.addDesc("plan_date");
+            request.addAsc("plan_date");
         }
         if(Objects.equals(request.getStatus(), ValuePool.INSPECTION_STATUS_COMPLETE)){
-            request.addDesc("finish_time");
+            request.addAsc("finish_time");
         }
         IPage<InspectionResponse> pages = annualInspectionService.pageByCondition(request);
         long count = annualInspectionService.countByCondition(request);
@@ -126,6 +126,13 @@ public class AnnualInspectionController {
     @PostMapping("pageWorker")
     @Validation(fields = {"workerId"})
     public RestResponse pageWorker(@Val @RequestBody InspectionRequest request) {
+        //计划与执行: 按年检时间由近及远排序,已完成: 按年检完成时间由近及远排序
+        if (Objects.equals(request.getStatus(), ValuePool.INSPECTION_STATUS_TO_DO)) {
+            request.addAsc("plan_date");
+        }
+        if (Objects.equals(request.getStatus(), ValuePool.INSPECTION_STATUS_COMPLETE)) {
+            request.addAsc("finish_time");
+        }
         IPage<InspectionResponse> pages = annualInspectionService.pageByCondition(request);
         return RestResponse.success(pages);
     }

+ 5 - 0
lift-business-service/src/main/java/cn/com/ty/lift/business/library/dao/entity/PlatformCompanyLiftRelevance.java

@@ -35,4 +35,9 @@ public class PlatformCompanyLiftRelevance extends BaseEntity {
      * 电梯公司状态 1:停保,2:正常,3:保养中 4:维修中,5:年检中,6:大修中
      */
     private String liftCompanyStatus;
+
+    /**
+     * 删除标识
+     */
+    private String deleteFlag;
 }

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

@@ -394,6 +394,8 @@ public class LiftService extends ServiceImpl<LiftMapper, Lift> {
             if (!ret)
                 return RestResponse.fail(MessageUtils.get("msg.longitude.error"));
         }
+        LocalDate lastDay = lift.getAnnualInspectionDate().with(TemporalAdjusters.lastDayOfMonth());
+        lift.setAnnualInspectionDate(lastDay);
         boolean result = updateById(lift);
         if (!result)
             return RestResponse.fail(MessageUtils.get("msg.modify.fail"));

+ 2 - 0
lift-business-service/src/main/java/cn/com/ty/lift/business/library/service/PlatformCompanyLiftRelevanceService.java

@@ -158,6 +158,8 @@ public class PlatformCompanyLiftRelevanceService extends ServiceImpl<PlatformCom
         QueryWrapper<PlatformCompanyLiftRelevance> queryWrapper = new QueryWrapper<>();
         LambdaQueryWrapper<PlatformCompanyLiftRelevance> lambdaQueryWrapper = queryWrapper.lambda();
         lambdaQueryWrapper.eq(PlatformCompanyLiftRelevance::getMtCompanyId, mtCompanyId);
+        lambdaQueryWrapper.ne(PlatformCompanyLiftRelevance::getLiftCompanyStatus, CommonEnum.LiftStatus.STOP_INSURANCE.getCode());
+        lambdaQueryWrapper.eq(PlatformCompanyLiftRelevance::getDeleteFlag, '0');
         return count(lambdaQueryWrapper);
     }
 

+ 4 - 2
lift-business-service/src/main/resources/mapper/annualinspection/AnnualInspectionMapper.xml

@@ -85,6 +85,7 @@
     <!--多条件分页查询年检记录-->
 	<select id="pageByCondition" resultMap="BaseResultMap" parameterType="cn.com.ty.lift.business.annualinspection.dto.InspectionRequest" >
         SELECT
+            DISTINCT
             t.*,
             ui.name AS worker_name
         FROM
@@ -100,13 +101,15 @@
                 plr.worker_id
             FROM
                 annual_inspection ai
+            LEFT JOIN platform_company_lift_relevance pclr
+            ON ai.mt_company_id = pclr.mt_company_id AND ai.lift_id = pclr.lift_id
             LEFT JOIN project_lift_relevance plr ON ai.lift_id = plr.lift_id AND ai.mt_company_id = plr.mt_company_id
             LEFT JOIN project_user pu ON pu.project_id = plr.project_id AND pu.mt_company_id = ai.mt_company_id
             LEFT JOIN lift li ON ai.lift_id = li.id
             LEFT JOIN project pr ON pr.id = plr.project_id
             LEFT JOIN region re ON pr.region_id = re.id
             LEFT JOIN user_info ui ON ui.user_id = re.user_id
-            <where>
+            WHERE plr.delete_flag = '0' AND pclr.lift_company_status != '1'
                 <if test="cond.status != null">
                     AND ai.status = #{cond.status}
                 </if>
@@ -128,7 +131,6 @@
                 <if test="cond.workerId != null and cond.workerId > 0">
                     AND pu.user_id = #{cond.workerId}
                 </if>
-            </where>
             ) t
         LEFT JOIN user_info ui ON ui.user_id = t.worker_id
 	</select>

+ 3 - 2
lift-business-service/src/main/resources/mapper/lift/LiftMapper.xml

@@ -239,11 +239,12 @@
             li.annual_inspection_date AS plan_date
         FROM lift li
         LEFT JOIN project_lift_relevance plr ON li.id = plr.lift_id
-        LEFT JOIN project_user pu ON pu.project_id = plr.project_id AND pu.mt_company_id = ai.mt_company_id
+        LEFT JOIN project_user pu ON pu.project_id = plr.project_id
         LEFT JOIN project pr ON plr.project_id = pr.id
         LEFT JOIN region re ON re.id = pr.region_id
         LEFT JOIN user_info ui ON re.user_id = ui.user_id
         LEFT JOIN annual_inspection ai ON ai.lift_id = li.id AND ai.mt_company_id = plr.mt_company_id AND ai.plan_date = li.annual_inspection_date
+        AND pu.mt_company_id = ai.mt_company_id
         WHERE
             li.annual_inspection_date &lt;= date_add(curdate(), INTERVAL #{days} DAY)
         AND li.annual_inspection_date &gt;= curdate() AND isnull(ai.id)
@@ -251,7 +252,7 @@
             AND plr.mt_company_id = #{mtCompanyId}
         </if>
         <if test="userId != null and userId > 0">
-            AND pu.userId = #{userId}
+            AND pu.user_id = #{userId}
         </if>
     </select>
     <select id="groupByRegistrationCode" resultType="cn.com.ty.lift.business.library.dao.entity.Lift">

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

@@ -101,6 +101,7 @@
 		<if test="request.registrationCode!=null and request.registrationCode!=''">
 			AND l.registration_code LIKE #{request.registrationCode,jdbcType=VARCHAR}
 		</if>
+		ORDER BY plan_date
 	</select>
 
 	<select id="queryPlanListByIds" parameterType="java.util.Map" resultMap="BaseResultMap">
@@ -135,13 +136,20 @@
 		       mp.status           AS status
 		FROM maintenance_plan mp
 				 LEFT JOIN project p ON mp.project_id = p.id
-		         LEFT JOIN project_user pu ON p.id = pu.project_id
+				<if test="request.currentRoleCode == 'REGION_DIRECTOR' ">
+					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}
-		<if test="request.userId!=null">
-			AND pu.user_id = #{request.userId,jdbcType=BIGINT}
-		</if>
+		 WHERE mp.mt_company_id = #{request.mtCompanyId,jdbcType=BIGINT}
+		  <choose>
+			  <when test="request.userId > 0 and request.currentRoleCode == 'REGION_DIRECTOR' ">
+				  AND pu.user_id = #{request.userId,jdbcType=BIGINT}
+			  </when>
+		      <otherwise>
+				  AND mp.worker_id = #{request.userId,jdbcType=BIGINT}
+			  </otherwise>
+		  </choose>
 		<if test="request.status!=null and request.status!=''">
 			AND mp.status = #{request.status,jdbcType=VARCHAR}
 		</if>
@@ -168,13 +176,20 @@
 				  count(1) total
 		FROM maintenance_plan mp
 				LEFT JOIN project p ON mp.project_id = p.id
-				LEFT JOIN project_user pu ON p.id = pu.project_id
+				<if test="request.currentRoleCode == 'REGION_DIRECTOR' ">
+					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}
-		<if test="request.userId!=null">
-			AND pu.user_id = #{request.userId,jdbcType=BIGINT}
-		</if>
+		<choose>
+			<when test="request.userId > 0 and request.currentRoleCode == 'REGION_DIRECTOR' ">
+				AND pu.user_id = #{request.userId,jdbcType=BIGINT}
+			</when>
+			<otherwise>
+				AND mp.worker_id = #{request.userId,jdbcType=BIGINT}
+			</otherwise>
+		</choose>
 		<if test="request.beginTime!=null">
 			AND <![CDATA[ mp.plan_date >= #{request.beginTime}]]>
 		</if>