McProjectServiceImpl.java 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. package com.malk.mc.service.impl;
  2. import com.malk.core.McProject;
  3. import com.malk.mc.service.McProjectService;
  4. import com.malk.server.aliwork.YDConf;
  5. import com.malk.server.aliwork.YDParam;
  6. import com.malk.server.dingtalk.DDR_New;
  7. import com.malk.service.aliwork.YDClient;
  8. import com.malk.utils.PublicUtil;
  9. import com.malk.utils.UtilMap;
  10. import lombok.extern.slf4j.Slf4j;
  11. import org.springframework.beans.factory.annotation.Autowired;
  12. import org.springframework.stereotype.Service;
  13. import java.util.HashMap;
  14. import java.util.List;
  15. import java.util.Map;
  16. @Slf4j
  17. @Service
  18. public class McProjectServiceImpl implements McProjectService {
  19. @Autowired
  20. private YDClient ydClient;
  21. @Override
  22. public void init() {
  23. int i=0;
  24. int t=1;
  25. Map<String, String[]> ydData = new HashMap();
  26. Map<String, String[]> ddData = new HashMap();
  27. do {
  28. i++;
  29. DDR_New projectData = ydClient.queryData(YDParam.builder()
  30. .formUuid("FORM-7ACBE9705A034ED2B19397A883781175LQWH")
  31. .pageNumber(i)
  32. .build(), YDConf.FORM_QUERY.retrieve_list);
  33. if(i==1){
  34. t=Integer.parseInt(String.valueOf((projectData.getTotalCount()/YDConf.PAGE_SIZE_LIMIT)))+1;
  35. }
  36. List<Map> dataList = (List<Map>) projectData.getData();
  37. for (Map map:dataList){
  38. Map formData=UtilMap.getMap(map,"formData");
  39. ydData.put(UtilMap.getString(formData,"serialNumberField_lxlfw7nn"),new String[]{UtilMap.getString(formData,"textField_lxlfw7no"),UtilMap.getString(formData,"textField_lxlfw7np")});
  40. if(!PublicUtil.isNull(formData,"textField_m7abagvx","textField_m7abagvy")){
  41. ddData.put(UtilMap.getString(formData,"serialNumberField_lxlfw7nn"),new String[]{UtilMap.getString(formData,"textField_m7abagvx"),UtilMap.getString(formData,"textField_m7abagvy"),UtilMap.getString(formData,"textField_mbyfztyy")});
  42. }
  43. }
  44. }while (i<t);
  45. McProject.insertYida(ydData);
  46. McProject.insertDD(ddData);
  47. log.info("项目加载完毕:{} 钉钉:{}",ydData.keySet(),ddData.keySet());
  48. }
  49. public static void main(String[] args) {
  50. System.out.println(strFormat("\n优尚和越:表单的搭建\n未来节拍:根据客户的需求进行调整\n未来节拍:根据客户的需求进行调整\n未来节拍:根据客户的需求进行调整"));
  51. }
  52. private static String strFormat(String input){
  53. StringBuilder output = new StringBuilder(input);
  54. int count = 0;
  55. int index = 0;
  56. while ((index = output.indexOf("\n", index)) != -1) {
  57. count++; // 计数器增加
  58. output.insert(index + 1, "工作"+count); // 在 \n 后插入数字
  59. index += 2; // 跳过插入的数字,继续查找下一个 \n
  60. }
  61. return output.toString();
  62. }
  63. }