lfx před 1 rokem
rodič
revize
bc634e7a81

+ 7 - 2
mjava-pake/src/main/java/com/malk/pake/config/StartupRunner.java

@@ -1,6 +1,8 @@
-package com.malk.pake.config;
+package com.malk.mc.config;
 
 import com.malk.core.McProject;
+import com.malk.mc.service.McProjectService;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.ApplicationArguments;
 import org.springframework.boot.ApplicationRunner;
 import org.springframework.stereotype.Component;
@@ -8,9 +10,12 @@ import org.springframework.stereotype.Component;
 @Component
 public class StartupRunner implements ApplicationRunner {
 
+    @Autowired
+    private McProjectService mcProjectService;
+
     @Override
     public void run(ApplicationArguments args) throws Exception {
-        McProject.addYida("1001","APP_FTJYB2MKWHXQAFBCZB47,K7D66L91A44LPGKP70LJ8DY05VJT262JR47WLQ8C".split(","));
+        mcProjectService.init();
 //        System.out.println("项目启动完毕,可以根据启动参数执行相应操作!");
 //        args.getOptionNames().forEach(System.out::println); // 打印所有选项参数名
     }

+ 45 - 0
mjava-mc/src/main/java/com/malk/mc/controller/McProjectController.java

@@ -0,0 +1,45 @@
+package com.malk.mc.controller;
+
+import com.alibaba.fastjson.JSONObject;
+import com.malk.core.McProject;
+import com.malk.mc.service.McProjectService;
+import com.malk.server.common.McR;
+import com.malk.utils.PublicUtil;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+@RestController
+@RequestMapping("/project/")
+public class McProjectController {
+
+    @Autowired
+    private McProjectService mcProjectService;
+
+    @PostMapping("add")
+    public McR add(@RequestBody JSONObject param){
+        if(PublicUtil.isNull(param,"projectId","appType","systemToken")){
+            return McR.errorNullPointer();
+        }
+        McProject.addYida(param.getString("projectId"),new String[]{param.getString("appType"),param.getString("systemToken")});
+        return McR.success(McProject.getYida(param.getString("projectId")));
+    }
+
+    @GetMapping("queryAll")
+    public McR queryAll(){
+        return McR.success(McProject.getYida());
+    }
+
+    @GetMapping("clear")
+    public McR clear(){
+        McProject.clearYida();
+        return McR.success(McProject.getYida());
+    }
+
+    @GetMapping("init")
+    public McR init(){
+        mcProjectService.init();
+        return McR.success(McProject.getYida());
+    }
+
+
+}

+ 7 - 0
mjava-mc/src/main/java/com/malk/mc/service/McProjectService.java

@@ -0,0 +1,7 @@
+package com.malk.mc.service;
+
+public interface McProjectService {
+
+    void init();
+
+}

+ 49 - 0
mjava-mc/src/main/java/com/malk/mc/service/impl/McProjectServiceImpl.java

@@ -0,0 +1,49 @@
+package com.malk.mc.service.impl;
+
+import com.alibaba.fastjson.JSONObject;
+import com.malk.core.McProject;
+import com.malk.mc.service.McProjectService;
+import com.malk.server.aliwork.YDConf;
+import com.malk.server.aliwork.YDParam;
+import com.malk.server.dingtalk.DDR_New;
+import com.malk.service.aliwork.YDClient;
+import com.malk.utils.UtilMap;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+@Slf4j
+@Service
+public class McProjectServiceImpl implements McProjectService {
+
+    @Autowired
+    private YDClient ydClient;
+
+    @Override
+    public void init() {
+        int i=0;
+        int t=1;
+        Map<String, String[]> data = new HashMap();
+        do {
+            i++;
+            DDR_New projectData = ydClient.queryData(YDParam.builder()
+                    .formUuid("FORM-7ACBE9705A034ED2B19397A883781175LQWH")
+                    .pageNumber(i)
+                    .build(), YDConf.FORM_QUERY.retrieve_list);
+            if(i==1){
+                t=Integer.parseInt(String.valueOf((projectData.getTotalCount()/YDConf.PAGE_SIZE_LIMIT)))+1;
+            }
+            List<Map> dataList = (List<Map>) projectData.getData();
+            for (Map map:dataList){
+                Map formData=UtilMap.getMap(map,"formData");
+                data.put(UtilMap.getString(formData,"serialNumberField_lxlfw7nn"),new String[]{UtilMap.getString(formData,"textField_lxlfw7no"),UtilMap.getString(formData,"textField_lxlfw7np")});
+            }
+        }while (i<t);
+        McProject.insertYida(data);
+        log.info("项目加载完毕:{}",data.keySet());
+    }
+}