From 3154d80303294d32672ca2402159bf0b1cccafb0 Mon Sep 17 00:00:00 2001
From: cjl <276999030@qq.com>
Date: Tue, 26 Sep 2023 13:49:00 +0800
Subject: [PATCH] feat:延期申请完善

---
 screen-api/src/main/java/com/moral/api/pojo/ext/allocationextension/AllocationExtensionExt.java   |   48 ++++++++++++
 screen-api/src/main/java/com/moral/api/pojo/vo/allocationextension/AllocationExtensionPageVo.java |    4 +
 screen-api/src/main/java/com/moral/api/pojo/vo/allocationextension/AllocationExtensionVo.java     |   54 ++++++++++++-
 screen-api/src/main/java/com/moral/api/service/AllocationExtensionService.java                    |    1 
 screen-api/src/main/java/com/moral/api/pojo/enums/AllocationExtensionApproveEnum.java             |    4 
 screen-api/src/main/java/com/moral/api/service/AllocationService.java                             |    2 
 screen-api/src/main/java/com/moral/api/service/impl/AllocationServiceImpl.java                    |    3 
 screen-api/src/main/java/com/moral/api/pojo/vo/allocation/AllocationVo.java                       |    6 +
 screen-api/src/main/java/com/moral/api/controller/AllocationExtensionController.java              |   11 ++
 screen-api/src/main/java/com/moral/api/pojo/vo/allocation/AllocationPageVo.java                   |    5 +
 screen-api/src/main/java/com/moral/api/service/impl/AllocationExtensionServiceImpl.java           |   53 ++++++++++++
 screen-api/src/main/resources/mapper/AllocationExtensionMapper.xml                                |    2 
 screen-api/src/main/java/com/moral/api/pojo/vo/approvetable/ApproveTableListVo.java               |    2 
 13 files changed, 183 insertions(+), 12 deletions(-)

diff --git a/screen-api/src/main/java/com/moral/api/controller/AllocationExtensionController.java b/screen-api/src/main/java/com/moral/api/controller/AllocationExtensionController.java
index 2fff658..f972e7a 100644
--- a/screen-api/src/main/java/com/moral/api/controller/AllocationExtensionController.java
+++ b/screen-api/src/main/java/com/moral/api/controller/AllocationExtensionController.java
@@ -10,7 +10,9 @@
 import com.moral.api.service.AllocationExtensionService;
 import com.moral.constant.PageResult;
 import com.moral.constant.ResultMessage;
+import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
 import org.springframework.web.bind.annotation.*;
 
 import javax.validation.Valid;
@@ -25,6 +27,7 @@
  */
 @RestController
 @RequestMapping("/allocationExtension")
+@Api(tags = {"������������"})
 public class AllocationExtensionController {
 
     private final AllocationExtensionService allocationExtensionService;
@@ -50,4 +53,12 @@
         return ResultMessage.ok(result);
     }
 
+    @GetMapping("check")
+    @ApiOperation("������")
+    public ResultMessage check(@RequestParam @ApiParam(value = "id",name = "������id") Integer id,
+                                       @RequestParam @ApiParam(value = "sate",name = "������") Integer sate){
+        allocationExtensionService.check(id,sate);
+        return ResultMessage.ok();
+    }
+
 }
diff --git a/screen-api/src/main/java/com/moral/api/pojo/enums/AllocationExtensionApproveEnum.java b/screen-api/src/main/java/com/moral/api/pojo/enums/AllocationExtensionApproveEnum.java
index 6cd94b9..18a3f15 100644
--- a/screen-api/src/main/java/com/moral/api/pojo/enums/AllocationExtensionApproveEnum.java
+++ b/screen-api/src/main/java/com/moral/api/pojo/enums/AllocationExtensionApproveEnum.java
@@ -23,11 +23,11 @@
     /**
      *���������
      */
-    NOT_AAPPROVE(10, "���������"),
+    NOT_AAPPROVE(10, "���������"),
     /**
      *���������
      */
-    APPLYING(30, "���������"),
+    APPLYING(30, "���������"),
     /**
      *������
      */
diff --git a/screen-api/src/main/java/com/moral/api/pojo/ext/allocationextension/AllocationExtensionExt.java b/screen-api/src/main/java/com/moral/api/pojo/ext/allocationextension/AllocationExtensionExt.java
index 3e42f53..c1c6561 100644
--- a/screen-api/src/main/java/com/moral/api/pojo/ext/allocationextension/AllocationExtensionExt.java
+++ b/screen-api/src/main/java/com/moral/api/pojo/ext/allocationextension/AllocationExtensionExt.java
@@ -1,9 +1,15 @@
 package com.moral.api.pojo.ext.allocationextension;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
 import com.moral.api.entity.AllocationExtension;
+import com.moral.api.pojo.vo.file.FileVo;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
+
+import java.util.Date;
+import java.util.List;
 
 /**
  * <p>
@@ -18,4 +24,46 @@
 @Accessors(chain = true)
 public class AllocationExtensionExt extends AllocationExtension {
 
+    @ApiModelProperty(value = "������������")
+    private String allocationNum;
+
+
+    @ApiModelProperty(value = "������������")
+    private Date escalationTime;
+
+
+    @ApiModelProperty(value = "������������")
+    private String pollutePosition;
+
+    @ApiModelProperty(value = "������������id")
+    private Integer unitId;
+
+    @ApiModelProperty(value = "������������id")
+    private Integer polluteType;
+
+    @ApiModelProperty(value = "������������id")
+    private Integer changeType;
+
+    @ApiModelProperty(value = "������������")
+    private Integer changeDay;
+
+    @ApiModelProperty(value = "������������id")
+    private Integer escalationUnitId;
+
+    @ApiModelProperty(value = "���������")
+    private String escalationName;
+
+    @ApiModelProperty(value = "������������id")
+    private Integer investigationType;
+
+    @ApiModelProperty(value = "������������")
+    private String problemDescribe;
+
+
+
+    @ApiModelProperty(value = "������������")
+    private List<FileVo> fileBaseList;
+
+    @ApiModelProperty(value = "������������")
+    private List<FileVo> fileList;
 }
diff --git a/screen-api/src/main/java/com/moral/api/pojo/vo/allocation/AllocationPageVo.java b/screen-api/src/main/java/com/moral/api/pojo/vo/allocation/AllocationPageVo.java
index 7755185..3264fd6 100644
--- a/screen-api/src/main/java/com/moral/api/pojo/vo/allocation/AllocationPageVo.java
+++ b/screen-api/src/main/java/com/moral/api/pojo/vo/allocation/AllocationPageVo.java
@@ -1,5 +1,6 @@
 package com.moral.api.pojo.vo.allocation;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
 import com.moral.api.pojo.enums.AllocationApproveEnum;
 import com.moral.api.pojo.ext.allocation.AllocationPageExt;
 import com.moral.api.utils.BeanConverts;
@@ -14,6 +15,7 @@
 import java.util.Date;
 import java.util.List;
 import java.util.Objects;
+import java.util.regex.Pattern;
 import java.util.stream.Collectors;
 
 /**
@@ -38,6 +40,7 @@
     private String allocationNum;
 
     @ApiModelProperty(value = "������������")
+    @JsonFormat(pattern="yyyy-MM-dd")
     private Date escalationTime;
 
     @ApiModelProperty(value = "������������id")
@@ -77,6 +80,7 @@
     private String createName;
 
     @ApiModelProperty(value = "������������")
+    @JsonFormat(pattern="yyyy-MM-dd HH:mm", timezone = "GMT+8")
     private Date createTime;
 
     @ApiModelProperty(value = "���������id")
@@ -86,6 +90,7 @@
     private String updateName;
 
     @ApiModelProperty(value = "������������")
+    @JsonFormat(pattern="yyyy-MM-dd HH:mm", timezone = "GMT+8")
     private Date updateTime;
 
     @ApiModelProperty(value = "������������������")
diff --git a/screen-api/src/main/java/com/moral/api/pojo/vo/allocation/AllocationVo.java b/screen-api/src/main/java/com/moral/api/pojo/vo/allocation/AllocationVo.java
index 39c463d..5dfca31 100644
--- a/screen-api/src/main/java/com/moral/api/pojo/vo/allocation/AllocationVo.java
+++ b/screen-api/src/main/java/com/moral/api/pojo/vo/allocation/AllocationVo.java
@@ -1,5 +1,6 @@
 package com.moral.api.pojo.vo.allocation;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
 import com.moral.api.pojo.ext.allocation.AllocationExt;
 import com.moral.api.pojo.vo.approvetable.ApproveTableListVo;
 import com.moral.api.pojo.vo.file.FileVo;
@@ -37,6 +38,7 @@
 
 
     @ApiModelProperty(value = "������������")
+    @JsonFormat(pattern="yyyy-MM-dd")
     private Date escalationTime;
 
     @ApiModelProperty(value = "������������")
@@ -76,6 +78,7 @@
     private String changeName;
 
     @ApiModelProperty(value = "������������")
+    @JsonFormat(pattern="yyyy-MM-dd")
     private Date changeTime;
 
     @ApiModelProperty(value = "������������")
@@ -88,6 +91,7 @@
     private String checkName;
 
     @ApiModelProperty(value = "������������")
+    @JsonFormat(pattern="yyyy-MM-dd HH:mm", timezone = "GMT+8")
     private Date checkTime;
 
     @ApiModelProperty(value = "������")
@@ -106,6 +110,7 @@
     private String createName;
 
     @ApiModelProperty(value = "������������")
+    @JsonFormat(pattern="yyyy-MM-dd HH:mm", timezone = "GMT+8")
     private Date createTime;
 
     @ApiModelProperty(value = "���������id")
@@ -115,6 +120,7 @@
     private String updateName;
 
     @ApiModelProperty(value = "������������")
+    @JsonFormat(pattern="yyyy-MM-dd HH:mm", timezone = "GMT+8")
     private Date updateTime;
 
     @ApiModelProperty(value = "������������")
diff --git a/screen-api/src/main/java/com/moral/api/pojo/vo/allocationextension/AllocationExtensionPageVo.java b/screen-api/src/main/java/com/moral/api/pojo/vo/allocationextension/AllocationExtensionPageVo.java
index 1747e09..f9915bc 100644
--- a/screen-api/src/main/java/com/moral/api/pojo/vo/allocationextension/AllocationExtensionPageVo.java
+++ b/screen-api/src/main/java/com/moral/api/pojo/vo/allocationextension/AllocationExtensionPageVo.java
@@ -1,5 +1,6 @@
 package com.moral.api.pojo.vo.allocationextension;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
 import com.moral.api.pojo.ext.allocationextension.AllocationExtensionPageExt;
 import com.moral.api.utils.BeanConverts;
 import io.swagger.annotations.ApiModel;
@@ -35,6 +36,7 @@
     private String allocationNum;
 
     @ApiModelProperty(value = "������������")
+    @JsonFormat(pattern="yyyy-MM-dd")
     private Date escalationTime;
     @ApiModelProperty(value = "������������id")
     private Integer unitId;
@@ -68,6 +70,7 @@
     private String createName;
 
     @ApiModelProperty(value = "������������")
+    @JsonFormat(pattern="yyyy-MM-dd HH:mm", timezone = "GMT+8")
     private Date createTime;
 
     @ApiModelProperty(value = "���������id")
@@ -77,6 +80,7 @@
     private String updateName;
 
     @ApiModelProperty(value = "������������")
+    @JsonFormat(pattern="yyyy-MM-dd HH:mm", timezone = "GMT+8")
     private Date updateTime;
 
 
diff --git a/screen-api/src/main/java/com/moral/api/pojo/vo/allocationextension/AllocationExtensionVo.java b/screen-api/src/main/java/com/moral/api/pojo/vo/allocationextension/AllocationExtensionVo.java
index 81e50d4..c93ad27 100644
--- a/screen-api/src/main/java/com/moral/api/pojo/vo/allocationextension/AllocationExtensionVo.java
+++ b/screen-api/src/main/java/com/moral/api/pojo/vo/allocationextension/AllocationExtensionVo.java
@@ -1,6 +1,8 @@
 package com.moral.api.pojo.vo.allocationextension;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
 import com.moral.api.pojo.ext.allocationextension.AllocationExtensionExt;
+import com.moral.api.pojo.vo.file.FileVo;
 import com.moral.api.utils.BeanConverts;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
@@ -10,6 +12,7 @@
 
 import java.io.Serializable;
 import java.util.Date;
+import java.util.List;
 
 /**
  * <p>
@@ -29,8 +32,50 @@
     @ApiModelProperty(value = "������id")
     private Integer id;
 
-    @ApiModelProperty(value = "���������id")
-    private Integer allocationId;
+    @ApiModelProperty(value = "������������")
+    private String allocationNum;
+
+
+    @ApiModelProperty(value = "������������")
+    @JsonFormat(pattern="yyyy-MM-dd")
+    private Date escalationTime;
+
+
+    @ApiModelProperty(value = "������������")
+    private String pollutePosition;
+
+    @ApiModelProperty(value = "������������id")
+    private Integer unitId;
+
+    @ApiModelProperty(value = "������������id")
+    private Integer polluteType;
+
+    @ApiModelProperty(value = "������������id")
+    private Integer changeType;
+
+    @ApiModelProperty(value = "������������")
+    private Integer changeDay;
+
+    @ApiModelProperty(value = "������������id")
+    private Integer escalationUnitId;
+
+    @ApiModelProperty(value = "���������")
+    private String escalationName;
+
+    @ApiModelProperty(value = "������������id")
+    private Integer investigationType;
+
+    @ApiModelProperty(value = "������������")
+    private String problemDescribe;
+
+
+
+    @ApiModelProperty(value = "������������")
+    private List<FileVo> fileBaseList;
+
+    @ApiModelProperty(value = "������������")
+    private List<FileVo> fileList;
+
 
     @ApiModelProperty(value = "������������")
     private Integer extensionNum;
@@ -40,9 +85,6 @@
 
     @ApiModelProperty(value = "������")
     private Integer state;
-
-    @ApiModelProperty(value = "������������")
-    private Integer isDel;
 
     @ApiModelProperty(value = "������������")
     private Integer isInvalid;
@@ -57,6 +99,7 @@
     private String createName;
 
     @ApiModelProperty(value = "������������")
+    @JsonFormat(pattern="yyyy-MM-dd HH:mm", timezone = "GMT+8")
     private Date createTime;
 
     @ApiModelProperty(value = "���������id")
@@ -66,6 +109,7 @@
     private String updateName;
 
     @ApiModelProperty(value = "������������")
+    @JsonFormat(pattern="yyyy-MM-dd HH:mm", timezone = "GMT+8")
     private Date updateTime;
 
 
diff --git a/screen-api/src/main/java/com/moral/api/pojo/vo/approvetable/ApproveTableListVo.java b/screen-api/src/main/java/com/moral/api/pojo/vo/approvetable/ApproveTableListVo.java
index c1ebf31..1317d7e 100644
--- a/screen-api/src/main/java/com/moral/api/pojo/vo/approvetable/ApproveTableListVo.java
+++ b/screen-api/src/main/java/com/moral/api/pojo/vo/approvetable/ApproveTableListVo.java
@@ -1,5 +1,6 @@
 package com.moral.api.pojo.vo.approvetable;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
@@ -40,6 +41,7 @@
     private String createName;
 
     @ApiModelProperty(value = "������������")
+    @JsonFormat(pattern="yyyy-MM-dd HH:mm", timezone = "GMT+8")
     private Date createTime;
 
 }
diff --git a/screen-api/src/main/java/com/moral/api/service/AllocationExtensionService.java b/screen-api/src/main/java/com/moral/api/service/AllocationExtensionService.java
index 1ac6fc4..3c163b9 100644
--- a/screen-api/src/main/java/com/moral/api/service/AllocationExtensionService.java
+++ b/screen-api/src/main/java/com/moral/api/service/AllocationExtensionService.java
@@ -39,5 +39,6 @@
     */
     boolean save(AllocationExtensionAddCond allocationExtensionAddCond);
 
+    boolean check(Integer id,Integer sate);
 
 }
diff --git a/screen-api/src/main/java/com/moral/api/service/AllocationService.java b/screen-api/src/main/java/com/moral/api/service/AllocationService.java
index 2d6b44d..680e161 100644
--- a/screen-api/src/main/java/com/moral/api/service/AllocationService.java
+++ b/screen-api/src/main/java/com/moral/api/service/AllocationService.java
@@ -37,6 +37,8 @@
      */
     AllocationExt extOne(Integer id);
 
+     AllocationExt oneAllocation(Integer id);
+
     void changeAllocation(AllocationChangeCond changeCond);
 
     void checkAllocation(AllocationCheckCond checkCond);
diff --git a/screen-api/src/main/java/com/moral/api/service/impl/AllocationExtensionServiceImpl.java b/screen-api/src/main/java/com/moral/api/service/impl/AllocationExtensionServiceImpl.java
index ca0b58c..998576e 100644
--- a/screen-api/src/main/java/com/moral/api/service/impl/AllocationExtensionServiceImpl.java
+++ b/screen-api/src/main/java/com/moral/api/service/impl/AllocationExtensionServiceImpl.java
@@ -2,14 +2,22 @@
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.moral.api.entity.Allocation;
 import com.moral.api.entity.AllocationExtension;
+import com.moral.api.exception.BusinessException;
 import com.moral.api.mapper.AllocationExtensionMapper;
+import com.moral.api.pojo.enums.AllocationExtensionApproveEnum;
+import com.moral.api.pojo.enums.FileTableEnum;
+import com.moral.api.pojo.ext.allocation.AllocationExt;
 import com.moral.api.pojo.ext.allocationextension.AllocationExtensionExt;
 import com.moral.api.pojo.ext.allocationextension.AllocationExtensionPageExt;
 import com.moral.api.pojo.query.allocationextension.AllocationExtensionAddCond;
 import com.moral.api.pojo.query.allocationextension.AllocationExtensionPageCond;
 import com.moral.api.service.AllocationExtensionService;
+import com.moral.api.service.AllocationService;
+import com.moral.api.service.FileTableService;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 /**
  * <p>
@@ -22,12 +30,33 @@
 @Service
 public class AllocationExtensionServiceImpl extends ServiceImpl<AllocationExtensionMapper, AllocationExtension> implements AllocationExtensionService {
 
-   // private final All
+    private final AllocationService allocationService;
+    private final FileTableService fileTableService;
+
+    public AllocationExtensionServiceImpl(AllocationService allocationService, FileTableService fileTableService) {
+        this.allocationService = allocationService;
+        this.fileTableService = fileTableService;
+    }
 
 
     @Override
     public AllocationExtensionExt extOne(Integer id) {
-        return this.baseMapper.extOne(id);
+        AllocationExtensionExt extensionExt = this.baseMapper.extOne(id);
+        AllocationExt extOne = allocationService.oneAllocation(extensionExt.getAllocationId());
+        extensionExt.setAllocationNum(extOne.getAllocationNum())
+                    .setEscalationTime(extOne.getEscalationTime())
+                    .setPollutePosition(extOne.getPollutePosition())
+                    .setUnitId(extOne.getUnitId())
+                    .setPolluteType(extOne.getPolluteType())
+                    .setChangeType(extOne.getChangeType())
+                    .setChangeDay(extOne.getChangeDay())
+                    .setEscalationName(extOne.getEscalationName())
+                    .setInvestigationType(extOne.getInvestigationType())
+                    .setProblemDescribe(extOne.getProblemDescribe())
+                    .setEscalationUnitId(extOne.getEscalationUnitId());
+        extensionExt.setFileBaseList(fileTableService.list(extensionExt.getAllocationId(), FileTableEnum.ALLOCATION_FOUNDATION.value));
+        extensionExt.setFileList(fileTableService.list(id, FileTableEnum.ALLOCATION_EXTENSION.value));
+        return extensionExt;
     }
 
 
@@ -42,5 +71,23 @@
         return this.save(allocationExtensionAddCond.convert());
     }
 
-
+    @Override
+    @Transactional
+    public boolean check(Integer id, Integer sate) {
+        AllocationExtensionExt extensionExt = this.baseMapper.extOne(id);
+        if(!AllocationExtensionApproveEnum.APPLYING.value.equals(extensionExt.getState())){
+            throw new BusinessException("������������������������������");
+        }
+        AllocationExtension allocationExtension = new AllocationExtension();
+        allocationExtension.setId(id);
+        allocationExtension.setState(sate);
+        this.baseMapper.updateById(allocationExtension);
+        if(AllocationExtensionApproveEnum.PASS.value.equals(sate)){
+            Allocation allocation = new Allocation();
+            allocation.setAllocationId(extensionExt.getAllocationId());
+            allocation.setChangeDay(extensionExt.getChangeDay()+extensionExt.getExtensionNum());
+            allocationService.updateById(allocation);
+        }
+        return true;
+    }
 }
diff --git a/screen-api/src/main/java/com/moral/api/service/impl/AllocationServiceImpl.java b/screen-api/src/main/java/com/moral/api/service/impl/AllocationServiceImpl.java
index 8fcf46e..1272b6e 100644
--- a/screen-api/src/main/java/com/moral/api/service/impl/AllocationServiceImpl.java
+++ b/screen-api/src/main/java/com/moral/api/service/impl/AllocationServiceImpl.java
@@ -274,7 +274,8 @@
         return allocationExt;
     }
 
-    private AllocationExt oneAllocation(Integer id){
+    @Override
+    public AllocationExt oneAllocation(Integer id){
         return this.baseMapper.extOne(id);
     }
 
diff --git a/screen-api/src/main/resources/mapper/AllocationExtensionMapper.xml b/screen-api/src/main/resources/mapper/AllocationExtensionMapper.xml
index 5df5bbf..ee948ea 100644
--- a/screen-api/src/main/resources/mapper/AllocationExtensionMapper.xml
+++ b/screen-api/src/main/resources/mapper/AllocationExtensionMapper.xml
@@ -27,7 +27,7 @@
         SELECT
         <include refid="AllocationExtension_Column_List"/>
         FROM allocation_extension allocationextension
-        where allocationextension.id = #{id}
+        where allocationextension.id = #{id} and allocationextension.is_del = 0
     </select>
 
 

--
Gitblit v1.8.0