Browse Source

Merge branch 'wanghaicheng' of lift-manager/lift-server into develop

wanghaicheng 5 years ago
parent
commit
c62d124578

+ 34 - 18
lift-business-service/src/main/java/cn/com/ty/lift/business/maintenance/controller/ScanRecordController.java

@@ -1,16 +1,15 @@
 package cn.com.ty.lift.business.maintenance.controller;
 
-import cn.com.ty.lift.business.framework.util.MessageUtils;
 import cn.com.ty.lift.business.library.dao.entity.model.request.LiftRequest;
-import cn.com.ty.lift.business.maintenance.dao.entity.MaintenanceRecord;
+import cn.com.ty.lift.business.maintenance.dao.entity.MaintenanceOption;
 import cn.com.ty.lift.business.maintenance.dao.entity.ScanRecord;
+import cn.com.ty.lift.business.maintenance.dao.entity.model.request.MtRecordRequest;
 import cn.com.ty.lift.business.maintenance.dao.entity.model.request.ScanRecordRequest;
 import cn.com.ty.lift.business.maintenance.dao.entity.model.response.ScanMaintenanceRecordResponse;
 import cn.com.ty.lift.business.maintenance.dao.mapper.ScanRecordMapper;
-import cn.com.ty.lift.business.maintenance.service.MaintenanceRecordService;
+import cn.com.ty.lift.business.maintenance.service.MaintenanceOptionService;
 import cn.com.ty.lift.business.maintenance.service.ScanRecordService;
 import cn.com.xwy.boot.web.dto.RestResponse;
-import cn.hutool.core.util.ObjectUtil;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -27,9 +26,10 @@ import org.springframework.web.bind.annotation.RestController;
 @RequestMapping("scan")
 @AllArgsConstructor
 public class ScanRecordController {
-    private final MaintenanceRecordService maintenanceRecordService;
     private final ScanRecordService scanRecordService;
     private final ScanRecordMapper scanRecordMapper;
+    private final MaintenanceRecordController maintenanceRecordController;
+    private final MaintenanceOptionService maintenanceOptionService;
 
     /**
      * 根据电梯id查询电梯信息
@@ -55,19 +55,35 @@ public class ScanRecordController {
         return RestResponse.success(record);
     }
 
-    /**
-     * 维保详情记录
-     *
-     * @param request recordId
-     * @return 维保记录详情
-     */
-    @PostMapping("maintenance/record/detail")
-    public RestResponse detail(@RequestBody ScanRecordRequest request) {
-        MaintenanceRecord record = maintenanceRecordService.detail(request.getRecordId());
-        if (ObjectUtil.isEmpty(record)) {
-            return RestResponse.success();
+    //维保list结构
+    @PostMapping("maintenance/option/list")
+    public RestResponse<?> listOptions(@RequestBody ScanRecordRequest request) {
+        String sort;
+        switch (request.getLiftType()) {
+            case 1:
+                sort = "1,2,3,4,5";
+                break;
+            case 2:
+                sort = "-1";
+                break;
+            default:
+                sort = null;
         }
-        return RestResponse.success(record, MessageUtils.get("msg.query.detail.success"));
+        return RestResponse.success(maintenanceOptionService.list(Wrappers.<MaintenanceOption>query().eq(sort != null, "sort", sort)));
+    }
+
+    //查看保养单
+    @PostMapping("maintenance/detail")
+    public RestResponse<?> detail(@RequestBody ScanRecordRequest scanRecordRequest) {
+        MtRecordRequest request = new MtRecordRequest();
+        request.setId(scanRecordRequest.getRecordId());
+        return maintenanceRecordController.one(request);
+    }
+
+    //查看保养图片
+    @PostMapping("maintenance/images")
+    public RestResponse<?> images(@RequestBody MtRecordRequest request) {
+        return maintenanceRecordController.images(request);
     }
 
     /**
@@ -77,7 +93,7 @@ public class ScanRecordController {
      * @return 扫码记录
      */
     @PostMapping("record/list")
-    public RestResponse list(@RequestBody ScanRecordRequest record) {
+    public RestResponse<?> list(@RequestBody ScanRecordRequest record) {
         Page<ScanRecord> scanRecordPage = new Page<>(record.getPageNum(), record.getPageNum());
         IPage<ScanRecord> page = scanRecordService.page(scanRecordPage, Wrappers
                 .<ScanRecord>query()

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

@@ -0,0 +1,10 @@
+package cn.com.ty.lift.business.maintenance.dao.entity.model.dto;
+
+import lombok.Data;
+
+@Data
+public class MaintenancePlanMonthTaskNum {
+    private Integer month;
+    private Integer status;
+    private Integer count;
+}

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

@@ -15,4 +15,7 @@ public class ScanRecordRequest extends ScanRecord {
     private long pageSize = 10;
 
     private Long recordId;
+
+    private Integer liftType;
+
 }

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

@@ -14,4 +14,5 @@ public class ScanMaintenanceRecordResponse {
     private String consumerAdvice;
     private Integer status;
     private Long liftId;
+    private Integer liftType;
 }

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

@@ -1,16 +1,21 @@
 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.PropertyMtResponse;
 import cn.com.ty.lift.common.constants.ApiConstants;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import org.apache.ibatis.annotations.Select;
 
 import java.time.LocalDateTime;
+import java.util.List;
 
 public interface PropertyMaintenanceMapper {
     @Select(ApiConstants.SQL.QUERY_MAINTENANCE_PLAN_EVERYDAY)
     Page<PropertyMtResponse> queryMaintenancePlanEveryDay(Page<PropertyMtResponse> page, Integer status, LocalDateTime planDate, Long userId);
 
+    @Select(ApiConstants.SQL.QUERY_MAINTENANCE_PLAN_MONTH_TASK_NUM)
+    List<MaintenancePlanMonthTaskNum> queryMaintenancePlanMonth(Long userId, String yearMonth);
+
     @Select(ApiConstants.SQL.SELECT_COUNT_FROM_TABLE)
     Integer selectCount(String table, String condition);
 }

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

@@ -206,6 +206,7 @@
 			</when>
 			<otherwise/>
 		</choose>
+			WHERE mp.plan_date &lt; date_format(now(),'%Y-%m-%d') AND mp.work_date IS NULL
 		<if test="request.beginTime!=null">
 			AND <![CDATA[ mp.plan_date >= #{request.beginTime}]]>
 		</if>

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

@@ -381,6 +381,7 @@ public class ApiConstants {
                         "        where DATE_FORMAT(mp.plan_date, '%Y%m') = DATE_FORMAT(CURDATE(), '%Y%m')" +
                         "  and mp.status = '1' order by mp.plan_date";
 
+        //扫码,查询电梯信息
         String QUERY_LIFT_INFO_BY_LIFT_ID =
                 "<script>" +
                         "select l.id                id," +
@@ -399,6 +400,7 @@ public class ApiConstants {
                         "  and p.project_status = '2'" +
                         "</script>";
 
+        //扫码,查询维保记录列表
         String QUERY_MAINTENANCE_RECORD_BY_LIFT_ID =
                 "select mr.id                 recordId," +
                         "       mr.plan_date          planDate," +
@@ -408,10 +410,19 @@ public class ApiConstants {
                         "       e.advice              consumerAdvice," +
                         "       mr.status             status," +
                         "       mr.lift_id            liftId" +
+                        "       mr.lift_type          liftType," +
                         "   from maintenance_record mr" +
                         "         left join user_info ui on mr.worker_id = ui.user_id" +
                         "         left join evaluation e on mr.id = e.record_id and e.source = '1'" +
                         "   where mr.lift_id = #{liftId}" +
                         "   order by mr.work_date desc";
+
+        //物管,根据用户id和月份,查询那一月每天的(待保养/保养中/已完成/计划超期/法规超期)的数量
+        String QUERY_MAINTENANCE_PLAN_MONTH_TASK_NUM =
+                "select DATE_FORMAT(plan_date, '%m') month, status, count(status) count" +
+                        "from maintenance_plan" +
+                        "where project_id in (select project_id from project_user where user_id = #{userId})" +
+                        "  and DATE_FORMAT(plan_date, '%Y%m') = #{yearMonth}" +
+                        "group by plan_date, status";
     }
 }

+ 2 - 2
lift-enterprise-service/src/main/java/cn/com/ty/lift/enterprise/custom/service/impl/PropertyCompanyServiceImpl.java

@@ -45,14 +45,14 @@ public class PropertyCompanyServiceImpl extends ServiceImpl<PropertyCompanyMappe
                         .select("id", "mt_company_id", "name", "mailing_address", "status")
                         .eq(request.getMtCompanyId() != null, "mt_company_id", request.getMtCompanyId())
                         .ne("status", 0)
-                        .and(request.getInfo() != null, companyQueryWrapper ->
+                        .and(request.getInfo() != null && !request.getInfo().equals(""), companyQueryWrapper ->
                                 companyQueryWrapper
                                         .like("name", request.getInfo())
                                         .or()
                                         .like("address", request.getInfo())
                                         .or()
                                         .like("mailing_address", request.getInfo()))
-                        .orderByAsc("name"));
+                        .orderByAsc("CONVERT(name using gbk)"));
         records.getRecords().forEach(propertyCompany -> {
             if (propertyCompany.getMailingAddress() == null) {
                 propertyCompany.setMailingAddress("未设置地址");