Selaa lähdekoodia

每月月初发起风控绩效流程

fyz 9 kuukautta sitten
vanhempi
commit
afbd0ab964

+ 9 - 0
mjava-lanyun/src/main/java/com/malk/lanyun/schedule/ScheduleTask.java

@@ -39,4 +39,13 @@ public class ScheduleTask {
         timerService.updateBigOut();
         log.info("定时方法执行时间 :" + new Date());
     }
+
+    /**
+     * 每月1日上午7点自动发起风控绩效流程
+     */
+    @Scheduled(cron = "0 0 7 1 * ?")
+    public void monthRiskMerits() {
+        timerService.monthRiskMerits();
+        log.info("定时方法执行时间 :" + new Date());
+    }
 }

+ 2 - 0
mjava-lanyun/src/main/java/com/malk/lanyun/service/TimerService.java

@@ -15,4 +15,6 @@ public interface TimerService {
 
     void fresh();
     void execlExport(Map data, HttpServletResponse response, HttpServletRequest request);
+
+    void monthRiskMerits();
 }

+ 46 - 0
mjava-lanyun/src/main/java/com/malk/lanyun/service/impl/TimerServiceImpl.java

@@ -3,6 +3,8 @@ package com.malk.lanyun.service.impl;
 import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.util.ObjectUtil;
 import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
 import com.malk.lanyun.service.TimerService;
 import com.malk.server.aliwork.YDConf;
 import com.malk.server.aliwork.YDParam;
@@ -258,4 +260,48 @@ public class TimerServiceImpl implements TimerService {
 
         UtilExcel.exportMapAndListByTemplate(response, dataMain, dataList, Map.class, fileName, "Template.xlsx");
     }
+
+    @Override
+    public void monthRiskMerits() {
+        // 获取月初日期
+        long beginTime = DateUtil.beginOfMonth(new Date()).getTime();
+        List<Map> dataList = ydService.queryFormData_all(YDParam.builder()
+                .appType("APP_ERBDTFS82HOVBPL3NFH0")
+                .systemToken("RRB66F91T97H1WN89QZYC47PKLZO2ZQOUMOQLP")
+                .formUuid("FORM-0536AD7797894C94BCAC4BAC0BBBE86BUQE1")
+//                .searchFieldJson(JSON.toJSONString(UtilMap.map("selectField_lrnd0lxr", "小业主")))
+                .build());
+        dataList.forEach(e->{
+            log.info(e.toString());
+            String department = e.get("departmentSelectField_ls2tx0tf_id").toString();
+            log.info("部门:{}",department);
+            String header = e.get("employeeField_ls2tx0tg_id").toString();
+            log.info("负责人:{}",header);
+            List<Map> tableList = (List<Map>) e.get("tableField_ls2tx0tl");
+            if (tableList.size()>0) {
+                tableList.forEach(f->{
+                    f.forEach((k,v)->{
+                        if (k.toString().equals("textField_ls2tx0tn")){
+                            f.put("textField_ls2u8mc7",v);
+                            f.remove(k);
+                        }
+                    });
+                });
+            }
+            /*关联表单控件*/
+            JSONArray jsonArray = new JSONArray();
+            Map<String, Object> jsonMap = UtilMap.map("appType, formUuid, formType, instanceId, title",
+                    "APP_ERBDTFS82HOVBPL3NFH0","FORM-61BB66CD45D44ACA9DAAC23CB8147A18AZQS","receipt",e.get("instanceId"),e.get("textField_ls2upvtq"));
+            JSONObject jsonObject = new JSONObject(jsonMap);
+            jsonArray.add(jsonObject);
+            /*发起流程*/
+            ydClient.operateData(YDParam.builder()
+                    .appType("APP_ERBDTFS82HOVBPL3NFH0")
+                    .systemToken("RRB66F91T97H1WN89QZYC47PKLZO2ZQOUMOQLP")
+                    .formUuid("FORM-A4B37CFEB8524947939C00523373532BT3TH")
+                    .formDataJson(JSON.toJSONString(UtilMap.map("dateField_ls2u8mbv, departmentSelectField_ls2u8mbw, employeeField_ls2u8mbx, tableField_ls2u8mc6, associationFormField_ls2u8mcb, dateField_ls1ky8c5, employeeField_ls1ky8c3",
+                            beginTime,department,header,tableList,jsonArray,beginTime,YDConf.PUB_ACCOUNT)))
+                    .build(), YDConf.FORM_OPERATION.start);
+        });
+    }
 }

+ 1 - 3
mjava-lanyun/src/test/java/test.java

@@ -17,8 +17,6 @@ public class test {
 
     @Test
     public void testt(){
-        HttpServletRequest httpServletRequest = null;
-        HttpServletResponse httpServletResponse = null;
-//        timerService.execlExport(httpServletResponse, httpServletRequest);
+        timerService.monthRiskMerits();
     }
 }