chenyuehu 3 years ago
parent
commit
76423b45ee

+ 32 - 25
platform-dao/src/main/java/com/platform/dao/dto/repair/RepairFeeDTO.java

@@ -2,12 +2,15 @@ package com.platform.dao.dto.repair;
 
 
 import com.platform.common.bean.BaseDTO;
 import com.platform.common.bean.BaseDTO;
 import com.platform.common.validation.group.UpdateGroup;
 import com.platform.common.validation.group.UpdateGroup;
+import com.platform.dao.entity.upms.SysFile;
 import lombok.Data;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
 import lombok.experimental.Accessors;
+
 import javax.validation.constraints.*;
 import javax.validation.constraints.*;
 import java.io.Serializable;
 import java.io.Serializable;
 import java.time.LocalDateTime;
 import java.time.LocalDateTime;
+import java.util.List;
 
 
 /**
 /**
  * @Description 维修费用单DTO
  * @Description 维修费用单DTO
@@ -21,64 +24,68 @@ import java.time.LocalDateTime;
 public class RepairFeeDTO extends BaseDTO implements Serializable {
 public class RepairFeeDTO extends BaseDTO implements Serializable {
 
 
     /**
     /**
-   * 主键
-   */
+     * 主键
+     */
     @NotNull(groups = {UpdateGroup.class}, message = "ID不能为空")
     @NotNull(groups = {UpdateGroup.class}, message = "ID不能为空")
     private String id;
     private String id;
 
 
     /**
     /**
-   * 维修单id
-   */
+     * 维修单id
+     */
     private String repairId;
     private String repairId;
 
 
     /**
     /**
-   * 费用金额
-   */
+     * 费用金额
+     */
     private Double fee;
     private Double fee;
 
 
     /**
     /**
-   * 费用类别
-   */
+     * 费用类别
+     */
     private Integer type;
     private Integer type;
 
 
     /**
     /**
-   * 费用原因
-   */
+     * 费用原因
+     */
     private String reason;
     private String reason;
 
 
     /**
     /**
-   * 费用描述
-   */
+     * 费用描述
+     */
     private String descripition;
     private String descripition;
 
 
     /**
     /**
-   * 备注
-   */
+     * 备注
+     */
     private String remark;
     private String remark;
 
 
     /**
     /**
-   * 创建日期
-   */
+     * 创建日期
+     */
     private LocalDateTime createdTime;
     private LocalDateTime createdTime;
 
 
     /**
     /**
-   * 更新日期
-   */
+     * 更新日期
+     */
     private LocalDateTime updateTime;
     private LocalDateTime updateTime;
 
 
     /**
     /**
-   * 创建人
-   */
+     * 创建人
+     */
     private String createdUserId;
     private String createdUserId;
 
 
     /**
     /**
-   * 更新人
-   */
+     * 更新人
+     */
     private String updateUserId;
     private String updateUserId;
 
 
     /**
     /**
-   * 关键字
-   */
-  private String keyword;
+     * 关键字
+     */
+    private String keyword;
+
+    private List<SysFile> imageList;
+
+    private List<SysFile> fileList;
 
 
 }
 }

+ 8 - 0
platform-dao/src/main/java/com/platform/dao/entity/repair/RepairFee.java

@@ -1,11 +1,13 @@
 package com.platform.dao.entity.repair;
 package com.platform.dao.entity.repair;
 
 
+import com.platform.dao.entity.upms.SysFile;
 import lombok.Data;
 import lombok.Data;
 
 
 import javax.persistence.Id;
 import javax.persistence.Id;
 import javax.persistence.Table;
 import javax.persistence.Table;
 import java.io.Serializable;
 import java.io.Serializable;
 import java.time.LocalDateTime;
 import java.time.LocalDateTime;
+import java.util.List;
 
 
 import com.platform.common.bean.DataScope;
 import com.platform.common.bean.DataScope;
 
 
@@ -82,6 +84,12 @@ public class RepairFee implements Serializable {
      */
      */
     @Transient
     @Transient
     private String repairNo;
     private String repairNo;
+
+    @Transient
+    private List<SysFile> imageList;
+
+    @Transient
+    private List<SysFile> fileList;
     /**
     /**
      * 数据权限
      * 数据权限
      */
      */

+ 2 - 0
platform-dao/src/main/java/com/platform/dao/enums/SysFileTypeEnum.java

@@ -26,6 +26,8 @@ public enum SysFileTypeEnum {
     REPAIR_REPAIR_IMGS(12, "维修-维修图片"),
     REPAIR_REPAIR_IMGS(12, "维修-维修图片"),
     REPAIR_CHECK_IMGS(13, "维修-验收图片"),
     REPAIR_CHECK_IMGS(13, "维修-验收图片"),
     SPARE_IMGS(14, "备件图片"),
     SPARE_IMGS(14, "备件图片"),
+    REPAIR_FEE_IMGS(18, "维修-费用图片"),
+    REPAIR_FEE_FILES(19, "维修-费用文件"),
     CHECK_STANDARD_IMGS(21, "保养图片"),
     CHECK_STANDARD_IMGS(21, "保养图片"),
     CHECK_STANDARD_FILES(22, "保养文件");
     CHECK_STANDARD_FILES(22, "保养文件");
     private Integer value;
     private Integer value;

+ 71 - 2
platform-service/src/main/java/com/platform/service/repair/impl/RepairFeeServiceImpl.java

@@ -1,17 +1,24 @@
 package com.platform.service.repair.impl;
 package com.platform.service.repair.impl;
 
 
+import cn.hutool.core.collection.CollectionUtil;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageHelper;
 import com.platform.common.bean.AbstractPageResultBean;
 import com.platform.common.bean.AbstractPageResultBean;
+import com.platform.common.util.IdGeneratorUtils;
+import com.platform.common.util.ListUtils;
 import com.platform.dao.bean.MyPage;
 import com.platform.dao.bean.MyPage;
 import com.platform.dao.dto.repair.RepairFeeDTO;
 import com.platform.dao.dto.repair.RepairFeeDTO;
 import com.platform.dao.entity.repair.RepairFee;
 import com.platform.dao.entity.repair.RepairFee;
+import com.platform.dao.entity.upms.SysFile;
+import com.platform.dao.enums.SysFileTypeEnum;
+import com.platform.dao.mapper.repair.RepairApplicationFormMapper;
 import com.platform.dao.mapper.repair.RepairFeeMapper;
 import com.platform.dao.mapper.repair.RepairFeeMapper;
+import com.platform.dao.mapper.upms.SysFileMapper;
+import com.platform.service.base.impl.BaseServiceImpl;
 import com.platform.service.repair.RepairFeeService;
 import com.platform.service.repair.RepairFeeService;
+import lombok.AllArgsConstructor;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
-import com.platform.service.base.impl.BaseServiceImpl;
 import tk.mybatis.mapper.weekend.Weekend;
 import tk.mybatis.mapper.weekend.Weekend;
 import tk.mybatis.mapper.weekend.WeekendCriteria;
 import tk.mybatis.mapper.weekend.WeekendCriteria;
-import lombok.AllArgsConstructor;
 
 
 import java.util.List;
 import java.util.List;
 
 
@@ -25,6 +32,10 @@ import java.util.List;
 @Service("repairFeeService")
 @Service("repairFeeService")
 public class RepairFeeServiceImpl extends BaseServiceImpl<RepairFeeMapper, RepairFee, RepairFeeDTO> implements RepairFeeService {
 public class RepairFeeServiceImpl extends BaseServiceImpl<RepairFeeMapper, RepairFee, RepairFeeDTO> implements RepairFeeService {
 
 
+    private final SysFileMapper sysFileMapper;
+
+    private final RepairApplicationFormMapper repairApplicationFormMapper;
+
     @Override
     @Override
     public int batchDelete(List<String> ids) {
     public int batchDelete(List<String> ids) {
         Weekend<RepairFee> weekend = new Weekend<>(RepairFee.class);
         Weekend<RepairFee> weekend = new Weekend<>(RepairFee.class);
@@ -41,9 +52,67 @@ public class RepairFeeServiceImpl extends BaseServiceImpl<RepairFeeMapper, Repai
         return pageInfo;
         return pageInfo;
     }
     }
 
 
+    @Override
+    public RepairFee saveModelByDTO(RepairFeeDTO model) {
+        RepairFee result = super.saveModelByDTO(model);
+        model.setId(result.getId());
+        this.saveFile(model);
+        return result;
+    }
+
+    @Override
+    public void modModelByDTO(RepairFeeDTO model) {
+        super.modModelByDTO(model);
+        this.saveFile(model);
+    }
+
+    private void saveFile(RepairFeeDTO model) {
+        Weekend<SysFile> weekend = new Weekend<>(SysFile.class);
+        weekend.weekendCriteria().andEqualTo(SysFile::getTargetId, model.getId());
+        sysFileMapper.deleteByExample(weekend);
+        List<SysFile> imgList = model.getImageList();
+        List<SysFile> fileList = model.getFileList();
+        List<SysFile> list = ListUtils.newArrayList();
+        if (CollectionUtil.isNotEmpty(imgList)) {
+            imgList.forEach(item -> {
+                item.setType(SysFileTypeEnum.REPAIR_FEE_IMGS.getValue());
+                item.setId(IdGeneratorUtils.getObjectId());
+                item.setTargetId(model.getId());
+                list.add(item);
+            });
+        }
+        if (CollectionUtil.isNotEmpty(fileList)) {
+            fileList.forEach(item -> {
+                item.setType(SysFileTypeEnum.REPAIR_FEE_FILES.getValue());
+                item.setId(IdGeneratorUtils.getObjectId());
+                item.setTargetId(model.getId());
+                list.add(item);
+            });
+        }
+        if (CollectionUtil.isNotEmpty(list)) {
+            sysFileMapper.insertListforComplex(list);
+        }
+    }
+
     @Override
     @Override
     public RepairFee getModelById(Object id) {
     public RepairFee getModelById(Object id) {
         RepairFee model = mapper.selectById(id);
         RepairFee model = mapper.selectById(id);
+        Weekend<SysFile> weekendFile = new Weekend<>(SysFile.class);
+        weekendFile.weekendCriteria().andEqualTo(SysFile::getTargetId, id);
+        List<SysFile> sysFiles = sysFileMapper.selectByExample(weekendFile);
+        List<SysFile> checkImgList = ListUtils.newArrayList();
+        List<SysFile> checkFileList = ListUtils.newArrayList();
+        sysFiles.forEach(item -> {
+            if (item.getType().equals(SysFileTypeEnum.REPAIR_FEE_IMGS.getValue())) {
+                checkImgList.add(item);
+            }
+            if (item.getType().equals(SysFileTypeEnum.REPAIR_FEE_FILES.getValue())) {
+                checkFileList.add(item);
+            }
+        });
+        model.setImageList(checkImgList);
+        model.setFileList(checkFileList);
+        model.setRepairNo(repairApplicationFormMapper.selectById(model.getRepairId()).getNo());
         return model;
         return model;
     }
     }
 }
 }