소스 검색

定时任务每每五分钟进行审定单和报告签章文件处理一次

user5 3 년 전
부모
커밋
d55be529f2

+ 17 - 13
src/main/java/com/jeeplus/modules/ruralprojectrecords/web/RuralProjectSignatureOldMessageDisposeController.java

@@ -18,6 +18,8 @@ import com.jeeplus.modules.workclientinfo.entity.WorkClientAttachment;
 import org.activiti.engine.HistoryService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 
@@ -31,8 +33,10 @@ import java.util.*;
  * @author 徐滕
  * @version 2021-11-04
  */
-@Controller
-@RequestMapping(value = "${adminPath}/ruralProject/signatureOldMessageDispose")
+/*@Controller
+@RequestMapping(value = "${adminPath}/ruralProject/signatureOldMessageDispose")*/
+@Service
+@Transactional(readOnly = true)
 public class RuralProjectSignatureOldMessageDisposeController extends BaseController {
 
 
@@ -62,9 +66,9 @@ public class RuralProjectSignatureOldMessageDisposeController extends BaseContro
      * @param response
      * @return
      */
-    @RequestMapping(value = "/ossUploading")
-    @ResponseBody
-    public Map<String,Object> ossUploading(@RequestParam("type") Integer type,@RequestParam("count")Integer count,HttpServletResponse response){
+    /*@RequestMapping(value = "/ossUploading")
+    @ResponseBody*/
+    public Map<String,Object> ossUploading(@RequestParam("type") Integer type,@RequestParam("count")Integer count){
         Map<String,Object> map = new HashMap<>();
         List<String> projectNumber = Lists.newArrayList();
         switch (type){
@@ -75,7 +79,7 @@ public class RuralProjectSignatureOldMessageDisposeController extends BaseContro
                 // count为处理的项目信息条数
                 List<ProjectReportData> projectReportDataList = projectReportDataService.getProjectReportDataSignatureByCount(count);
                 for (ProjectReportData info: projectReportDataList) {
-                    downLoadApprovalAttach(info.getSignatureContractId(),response);
+                    downLoadApprovalAttach(info.getSignatureContractId());
                     projectNumber.add(info.getNumber());
                 }
                 if(projectNumber.size()>0){
@@ -96,7 +100,7 @@ public class RuralProjectSignatureOldMessageDisposeController extends BaseContro
                 List<RuralProjectRecords> ruralProjectRecordsList = projectRecordsService.getProjectRecordsSignatureByCount(count);
                 for (RuralProjectRecords info: ruralProjectRecordsList) {
                     //进行文件处理
-                    downLoadReportAttach(info.getReportSignatureContractId(),response);
+                    downLoadReportAttach(info.getReportSignatureContractId());
                     projectNumber.add(info.getProjectReportNumber());
                 }
                 if(projectNumber.size()>0){
@@ -122,7 +126,7 @@ public class RuralProjectSignatureOldMessageDisposeController extends BaseContro
     /**
      * 下载审定单附件
      */
-    private void downLoadApprovalAttach(String contractId,HttpServletResponse response) {
+    private void downLoadApprovalAttach(String contractId) {
         //根据contractId查询对应的报告信息
         ProjectReportData projectReportData = projectReportDataService.getProjectReportDataByContractId(contractId);
         //根据contractId查询对应的报告信息
@@ -136,7 +140,7 @@ public class RuralProjectSignatureOldMessageDisposeController extends BaseContro
         requestHeaderMap.put("x-qys-accesstoken", apptoken);
         requestHeaderMap.put("x-qys-signature", signature);
         requestHeaderMap.put("x-qys-timestamp", "0");
-        Map<String, Object> map = SignaturePostUtil.downloadZipDesignated(HTTPTOP + "/contract/download?contractId="+contractId,requestHeaderMap,projectReportData.getSignatureFileName()+".zip","",response);
+        Map<String, Object> map = SignaturePostUtil.downloadZipDesignated(HTTPTOP + "/contract/download?contractId="+contractId,requestHeaderMap,projectReportData.getSignatureFileName()+".zip","");
         //获取处理结果,若为true 则进行文件上传阿里云操作并写入数据库,否则不进行处理
         Boolean bool = (Boolean) map.get("success");
         if(bool){
@@ -186,7 +190,7 @@ public class RuralProjectSignatureOldMessageDisposeController extends BaseContro
     /**
      * 下载报告附件
      */
-    private void downLoadReportAttach(String contractId,HttpServletResponse response) {
+    private void downLoadReportAttach(String contractId) {
         //根据contractId查询对应的报告信息
         RuralProjectRecords ruralProjectRecords = projectRecordsService.getProjectRecordsByContractId(contractId);
         if(null == ruralProjectRecords || StringUtils.isBlank(ruralProjectRecords.getReportSignatureContractId())){
@@ -198,7 +202,7 @@ public class RuralProjectSignatureOldMessageDisposeController extends BaseContro
         requestHeaderMap.put("x-qys-accesstoken", apptoken);
         requestHeaderMap.put("x-qys-signature", signature);
         requestHeaderMap.put("x-qys-timestamp", "0");
-        Map<String, Object> map = SignaturePostUtil.downloadZipDesignated(HTTPTOP + "/contract/download?contractId=" + contractId, requestHeaderMap, ruralProjectRecords.getReportSignatureFileName() + ".zip", "", response);
+        Map<String, Object> map = SignaturePostUtil.downloadZipDesignated(HTTPTOP + "/contract/download?contractId=" + contractId, requestHeaderMap, ruralProjectRecords.getReportSignatureFileName() + ".zip", "");
         //获取处理结果,若为true 则进行文件上传阿里云操作并写入数据库,否则不进行处理
         Boolean bool = (Boolean) map.get("success");
         if(bool){
@@ -305,7 +309,7 @@ public class RuralProjectSignatureOldMessageDisposeController extends BaseContro
     /**
      * 下载审定内附件
      */
-    private void downLoadJudgementAttach(String contractId,HttpServletResponse response) {
+    private void downLoadJudgementAttach(String contractId) {
         //根据contractId查询对应的报告信息
         RuralProjectRecords ruralProjectRecords = projectRecordsService.getJudgementProjectRecordsByContractId(contractId);
         if(null == ruralProjectRecords || StringUtils.isBlank(ruralProjectRecords.getQualitySignatureContractId())){
@@ -317,7 +321,7 @@ public class RuralProjectSignatureOldMessageDisposeController extends BaseContro
         requestHeaderMap.put("x-qys-accesstoken", apptoken);
         requestHeaderMap.put("x-qys-signature", signature);
         requestHeaderMap.put("x-qys-timestamp", "0");
-        Map<String, Object> map = SignaturePostUtil.downloadZipDesignated(HTTPTOP + "/contract/download?contractId="+contractId,requestHeaderMap,ruralProjectRecords.getQualitySignatureFileName()+".zip","",response);
+        Map<String, Object> map = SignaturePostUtil.downloadZipDesignated(HTTPTOP + "/contract/download?contractId="+contractId,requestHeaderMap,ruralProjectRecords.getQualitySignatureFileName()+".zip","");
     }
 
 }

+ 1 - 1
src/main/java/com/jeeplus/modules/tools/utils/SignaturePostUtil.java

@@ -167,7 +167,7 @@ public class SignaturePostUtil {
      * @param responseEncoding 响应编码
      * @return 页面响应html
      */
-    public static Map<String,Object> downloadZipDesignated(String requestUrl, Map<String, String> requestHeader, String fileName, String responseEncoding, HttpServletResponse response) {
+    public static Map<String,Object> downloadZipDesignated(String requestUrl, Map<String, String> requestHeader, String fileName, String responseEncoding) {
         Map<String,Object> map = new HashMap<>();
         BufferedReader reader = null;
         try {

+ 24 - 6
src/main/java/com/jeeplus/modules/workcalendar/service/WorkCalendarTaskService.java

@@ -7,6 +7,7 @@ import com.jeeplus.common.utils.DateUtils;
 import com.jeeplus.modules.ruralprojectrecords.dao.RuralProjectRecordsDao;
 import com.jeeplus.modules.ruralprojectrecords.entity.RuralProjectRecords;
 import com.jeeplus.modules.ruralprojectrecords.service.RuralProjectRecordsService;
+import com.jeeplus.modules.ruralprojectrecords.web.RuralProjectSignatureOldMessageDisposeController;
 import com.jeeplus.modules.sys.entity.MainDictDetail;
 import com.jeeplus.modules.sys.utils.DictUtils;
 import com.jeeplus.modules.workcalendar.dao.WorkCalendarDao;
@@ -19,6 +20,7 @@ import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import javax.servlet.http.HttpServletResponse;
 import java.util.*;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
@@ -40,6 +42,8 @@ public class WorkCalendarTaskService  {
     private WorkCalendarService workCalendarService;
     @Autowired
     private RuralProjectRecordsService projectRecordsService;
+    @Autowired
+    private RuralProjectSignatureOldMessageDisposeController ruralProjectSignatureOldMessageDispose;
 
     @Scheduled(cron= "0 0/1 * * * ?")
     public void notifyTask() {
@@ -122,10 +126,24 @@ public class WorkCalendarTaskService  {
         logger.info("------------项目超期未归档定时任务结束(电子归档)------------------");
     }
 
+    /**
+     * 每五分钟对签章文件进行文件位置转移处理
+     */
+    @Scheduled(cron= "0 0/5 * * * ?")
+    @Transactional(readOnly = false)
+    public void getProjectSignatureOldMessageDispose() {
+        logger.info("--------------处理审定单签章文件(开始)---------------");
+        ruralProjectSignatureOldMessageDispose.ossUploading(1,1);
+        logger.info("--------------处理审定单签章文件(结束)---------------");
+        logger.info("--------------处理报告签章文件(开始)---------------");
+        ruralProjectSignatureOldMessageDispose.ossUploading(2,1);
+        logger.info("--------------处理报告签章文件(结束)---------------");
+    }
+
 
     /**
      * 月度报表
-     */
+     *//*
     //每个月最后一天晚上23点推送
     //@Scheduled(cron= "0 0 23 L * ?")
     @Scheduled(cron= "0 0 23 28-31 * ?")
@@ -163,9 +181,9 @@ public class WorkCalendarTaskService  {
 
     }
 
-    /**
+    *//**
      * 季度报表
-     */
+     *//*
     //每个季度最后一天晚上23点推送
     //@Scheduled(cron= "0 0 23 L 3,6,9,12 ?")
     @Scheduled(cron= "0 0 23 28-31 3,6,9,12 ?")
@@ -202,9 +220,9 @@ public class WorkCalendarTaskService  {
         }
     }
 
-    /**
+    *//**
      * 年度报表
-     */
+     *//*
     //每年最后一天晚上23点推送
     @Scheduled(cron= "0 0 23 31 12 ?")
     public void getStatementCompanyComprehensiveOnYear() {
@@ -234,6 +252,6 @@ public class WorkCalendarTaskService  {
         logger.info("-----------部门级—合同年度报表(开始)------------------");
         projectRecordsService.saveProjectRecordListByAdvent();
         logger.info("------------部门级—合同年度报表(结束)------------------");
-    }
+    }*/
 
 }