DdTest.java 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264
  1. package com.malk.pake;
  2. import cn.hutool.core.io.FileUtil;
  3. import com.alibaba.fastjson.JSONArray;
  4. import com.alibaba.fastjson.JSONObject;
  5. import com.malk.server.aliwork.YDConf;
  6. import com.malk.server.aliwork.YDParam;
  7. import com.malk.service.aliwork.YDClient;
  8. import com.malk.service.dingtalk.DDClient;
  9. import com.malk.utils.PublicUtil;
  10. import com.malk.utils.UtilMap;
  11. import lombok.extern.slf4j.Slf4j;
  12. import org.checkerframework.checker.units.qual.A;
  13. import org.junit.Test;
  14. import org.junit.runner.RunWith;
  15. import org.springframework.beans.factory.annotation.Autowired;
  16. import org.springframework.boot.test.context.SpringBootTest;
  17. import org.springframework.test.context.junit4.SpringRunner;
  18. import java.time.LocalDate;
  19. import java.time.LocalDateTime;
  20. import java.time.ZoneOffset;
  21. import java.util.HashMap;
  22. import java.util.List;
  23. import java.util.Map;
  24. @Slf4j
  25. @SpringBootTest
  26. @RunWith(SpringRunner.class)
  27. public class DdTest {
  28. @Autowired
  29. private YDClient ydClient;
  30. @Test
  31. public void nullData(){
  32. List<String> list=FileUtil.readLines("/home/ids.txt","utf-8");
  33. for (int i = 0; i < list.size(); i++) {
  34. log.info("处理进度:{}/{}",i+1,list.size());
  35. String[] str=list.get(i).split("###");
  36. String month=str[0].split("-")[1];
  37. String id=str[1];
  38. Long date=LocalDate.of(2024,Integer.parseInt(month),1).atStartOfDay().toInstant(ZoneOffset.ofHours(8)).toEpochMilli();
  39. ydClient.operateData(YDParam.builder()
  40. .formInstanceId(id)
  41. .updateFormDataJson(JSONObject.toJSONString(UtilMap.map("dateField_ls2x7t40", date)))
  42. .build(), YDConf.FORM_OPERATION.update);
  43. }
  44. }
  45. // 处理数据
  46. @Test
  47. public void test3(){
  48. List<String> list=FileUtil.readLines("/home/ids.txt","utf-8");
  49. int i=1;
  50. for (String id:list){
  51. log.info("处理进度:{}/{}",i,list.size());
  52. i++;
  53. Map formData =ydClient.queryData(YDParam.builder()
  54. .formInstanceId(id)
  55. .build(), YDConf.FORM_QUERY.retrieve_id).getFormData();
  56. Map mainData=new HashMap();
  57. mainData.put("textField_lvw66i56",id);
  58. mainData.put("selectField_lvw57eo9","成都慧享工时");
  59. mainData.put("departmentSelectField_ls2x7t47",formData.get("departmentSelectField_ls2x7t47_id"));
  60. mainData.put("employeeField_ls2x7t46",formData.get("employeeField_ls2x7t46_id"));
  61. mainData.put("dateField_ls2x7t40",formData.get("dateField_ls2x7t40"));// 月份
  62. mainData.put("dateField_lvw40y8e","");// 日期
  63. // 项目
  64. List<Map> list1=UtilMap.getList(formData,"tableField_ls30qr4f");
  65. for (Map map:list1){
  66. if(PublicUtil.isNull(map,"textField_ls30qr4a")){
  67. continue;
  68. }
  69. Map data=new HashMap(mainData);
  70. data.put("selectField_lvw57eo7","项目");
  71. data.put("textField_lrpt148q",map.get("textField_ls30qr4a"));
  72. data.put("selectField_lrhiklat",map.get("selectField_luwcwjak"));
  73. data.put("numberField_lrhiklas",map.get("numberField_ltqveodc"));
  74. saveData(data);
  75. }
  76. // 商机
  77. List<Map> list2=UtilMap.getList(formData,"tableField_lts9jusn");
  78. for (Map map:list2){
  79. if(PublicUtil.isNull(map,"textField_lts9jush")){
  80. continue;
  81. }
  82. Map data=new HashMap(mainData);
  83. data.put("selectField_lvw57eo7","商机");
  84. data.put("textField_lrpt148q",map.get("textField_lts9jush"));
  85. data.put("selectField_lrhiklat",map.get("selectField_luwcwjal"));
  86. data.put("numberField_lrhiklas",map.get("numberField_lts9jusl"));
  87. saveData(data);
  88. }
  89. // 产品
  90. List<Map> list3=UtilMap.getList(formData,"tableField_lvvpxztg");
  91. for (Map map:list3){
  92. if(PublicUtil.isNull(map,"textField_lvvpxzt9")){
  93. continue;
  94. }
  95. Map data=new HashMap(mainData);
  96. data.put("selectField_lvw57eo7","产品");
  97. data.put("textField_lrpt148q",map.get("textField_lvvpxzt9"));
  98. data.put("selectField_lrhiklat",map.get("selectField_lvvpxztb"));
  99. data.put("numberField_lrhiklas",map.get("numberField_lvvpxzte"));
  100. saveData(data);
  101. }
  102. // 其他
  103. List<Map> list4=UtilMap.getList(formData,"tableField_ls30qr4m");
  104. for (Map map:list4){
  105. if(PublicUtil.isNull(map,"textField_luwcwjap")){
  106. continue;
  107. }
  108. Map data=new HashMap(mainData);
  109. data.put("selectField_lvw57eo7","其他");
  110. data.put("textField_lrpt148q",map.get("textField_luwcwjap"));
  111. data.put("selectField_lrhiklat",map.get("selectField_luwcwjao"));
  112. data.put("numberField_lrhiklas",map.get("numberField_ltqveodd"));
  113. saveData(data);
  114. }
  115. }
  116. }
  117. // 处理数据
  118. @Test
  119. public void test2(){
  120. List<String> list=FileUtil.readLines("/home/ids.txt","utf-8");
  121. int i=1;
  122. for (String id:list){
  123. log.info("处理进度:{}/{}",i,list.size());
  124. i++;
  125. Map formData =ydClient.queryData(YDParam.builder()
  126. .formInstanceId(id)
  127. .build(), YDConf.FORM_QUERY.retrieve_id).getFormData();
  128. Map mainData=new HashMap();
  129. mainData.put("textField_lvw66i56",id);
  130. mainData.put("selectField_lvw57eo9","运营相关工时");
  131. mainData.put("departmentSelectField_ls2x7t47",formData.get("departmentSelectField_ls2x7t47_id"));
  132. mainData.put("employeeField_ls2x7t46",formData.get("employeeField_ls2x7t46_id"));
  133. mainData.put("dateField_ls2x7t40",formData.get("dateField_ls2x7t40"));// 月份
  134. mainData.put("dateField_lvw40y8e","");// 日期
  135. // 项目
  136. List<Map> list1=UtilMap.getList(formData,"tableField_ls30qr4f");
  137. for (Map map:list1){
  138. if(PublicUtil.isNull(map,"textField_ls30qr4a")){
  139. continue;
  140. }
  141. Map data=new HashMap(mainData);
  142. data.put("selectField_lvw57eo7","项目");
  143. data.put("textField_lrpt148q",map.get("textField_ls30qr4a"));
  144. data.put("selectField_lrhiklat","");
  145. data.put("numberField_lrhiklas",map.get("numberField_lt6zyzpg"));
  146. saveData(data);
  147. }
  148. // 其他
  149. List<Map> list3=UtilMap.getList(formData,"tableField_ls30qr4m");
  150. for (Map map:list3){
  151. if(PublicUtil.isNull(map,"textField_lrsvczk1")){
  152. continue;
  153. }
  154. Map data=new HashMap(mainData);
  155. data.put("selectField_lvw57eo7","其他");
  156. data.put("textField_lrpt148q","");
  157. data.put("selectField_lrhiklat","");
  158. data.put("numberField_lrhiklas",map.get("numberField_lt6zyzph"));
  159. saveData(data);
  160. }
  161. // 计费点
  162. List<Map> list4=UtilMap.getList(formData,"tableField_ls2x7t4g");
  163. for (Map map:list4){
  164. if(PublicUtil.isNull(map,"textField_ls2x7t4a")){
  165. continue;
  166. }
  167. Map data=new HashMap(mainData);
  168. data.put("selectField_lvw57eo7","计费点");
  169. data.put("textField_lrpt148q",map.get("textField_ls2x7t4a"));
  170. data.put("selectField_lrhiklat","");
  171. data.put("numberField_lrhiklas",map.get("numberField_lt6zyzpf"));
  172. saveData(data);
  173. }
  174. }
  175. }
  176. @Test
  177. public void test1(){
  178. List<String> list=FileUtil.readLines("/home/ids.txt","utf-8");
  179. int i=1;
  180. for (String id:list){
  181. log.info("处理进度:{}/{}",i,list.size());
  182. i++;
  183. Map formData =ydClient.queryData(YDParam.builder()
  184. .formInstanceId(id)
  185. .build(), YDConf.FORM_QUERY.retrieve_id).getFormData();
  186. Map mainData=new HashMap();
  187. mainData.put("textField_lvw66i56",id);
  188. mainData.put("selectField_lvw57eo9","项目/研发/产品/运维工时");
  189. mainData.put("departmentSelectField_ls2x7t47",formData.get("departmentSelectField_lrhjd0ep_id"));
  190. mainData.put("employeeField_ls2x7t46",formData.get("employeeField_lrhjd0eq_id"));
  191. mainData.put("dateField_ls2x7t40",formData.get("dateField_luuynvj8"));// 月份
  192. mainData.put("dateField_lvw40y8e",formData.get("dateField_lrhl6dm1"));// 日期
  193. // 项目
  194. List<Map> list1=UtilMap.getList(formData,"tableField_lrhiklaq");
  195. for (Map map:list1){
  196. if(PublicUtil.isNull(map,"textField_lrpt148q")){
  197. continue;
  198. }
  199. Map data=new HashMap(mainData);
  200. data.put("selectField_lvw57eo7","项目");
  201. data.put("textField_lrpt148q",map.get("textField_lrpt148q"));
  202. data.put("selectField_lrhiklat",map.get("selectField_lrhiklat"));
  203. data.put("numberField_lrhiklas",map.get("numberField_lrhiklas"));
  204. saveData(data);
  205. }
  206. // 产品
  207. List<Map> list2=UtilMap.getList(formData,"tableField_lrhjxup8");
  208. for (Map map:list2){
  209. if(PublicUtil.isNull(map,"textField_lrpt148r")){
  210. continue;
  211. }
  212. Map data=new HashMap(mainData);
  213. data.put("selectField_lvw57eo7","产品");
  214. data.put("textField_lrpt148q",map.get("textField_lrpt148r"));
  215. data.put("selectField_lrhiklat",map.get("selectField_lrhjxup6"));
  216. data.put("numberField_lrhiklas",map.get("numberField_lrhjxup5"));
  217. saveData(data);
  218. }
  219. // 其他
  220. List<Map> list3=UtilMap.getList(formData,"tableField_lrhjxupf");
  221. for (Map map:list3){
  222. if(PublicUtil.isNull(map,"textField_lrsvczk1")){
  223. continue;
  224. }
  225. Map data=new HashMap(mainData);
  226. data.put("selectField_lvw57eo7","其他");
  227. data.put("textField_lrpt148q",map.get("textField_lrsvczk1"));
  228. data.put("selectField_lrhiklat",map.get("selectField_lrhjxupd"));
  229. data.put("numberField_lrhiklas",map.get("numberField_lrhjxupc"));
  230. saveData(data);
  231. }
  232. // 计费点
  233. List<Map> list4=UtilMap.getList(formData,"tableField_lrhjxupm");
  234. for (Map map:list4){
  235. if(PublicUtil.isNull(map,"textField_lrpt148s")){
  236. continue;
  237. }
  238. Map data=new HashMap(mainData);
  239. data.put("selectField_lvw57eo7","计费点");
  240. data.put("textField_lrpt148q",map.get("textField_lrpt148s"));
  241. data.put("selectField_lrhiklat",map.get("selectField_lrhjxupk"));
  242. data.put("numberField_lrhiklas",map.get("numberField_lrhjxupj"));
  243. saveData(data);
  244. }
  245. }
  246. }
  247. private void saveData(Map data){
  248. ydClient.operateData(YDParam.builder()
  249. .formUuid("FORM-223E89E230F3488885A7BEB44352A9C06HZ5")
  250. .formDataJson(JSONObject.toJSONString(data))
  251. .userId(String.valueOf(UtilMap.getList(data,"employeeField_ls2x7t46").get(0)))
  252. .build(), YDConf.FORM_OPERATION.create);
  253. }
  254. }