|
@@ -6,6 +6,8 @@ import com.malk.server.aliwork.YDConf;
|
|
|
import com.malk.server.aliwork.YDParam;
|
|
import com.malk.server.aliwork.YDParam;
|
|
|
import com.malk.service.aliwork.YDClient;
|
|
import com.malk.service.aliwork.YDClient;
|
|
|
import com.malk.service.aliwork.YDService;
|
|
import com.malk.service.aliwork.YDService;
|
|
|
|
|
+import com.malk.service.dingtalk.DDClient;
|
|
|
|
|
+import com.malk.service.dingtalk.DDClient_Notice;
|
|
|
import com.malk.utils.UtilDateTime;
|
|
import com.malk.utils.UtilDateTime;
|
|
|
import com.malk.utils.UtilList;
|
|
import com.malk.utils.UtilList;
|
|
|
import com.malk.utils.UtilMap;
|
|
import com.malk.utils.UtilMap;
|
|
@@ -26,10 +28,12 @@ public class FImplService implements FService {
|
|
|
private static final String[] BIG_UNITS = {"", "万", "亿", "兆"};
|
|
private static final String[] BIG_UNITS = {"", "万", "亿", "兆"};
|
|
|
@Autowired
|
|
@Autowired
|
|
|
private YDService ydService;
|
|
private YDService ydService;
|
|
|
-
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
|
+ private DDClient_Notice ddClientNotice;
|
|
|
@Autowired
|
|
@Autowired
|
|
|
private YDClient ydClient;
|
|
private YDClient ydClient;
|
|
|
-
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
|
+ private DDClient ddClient;
|
|
|
/**
|
|
/**
|
|
|
* 同步开票档案账龄表
|
|
* 同步开票档案账龄表
|
|
|
*/
|
|
*/
|
|
@@ -210,135 +214,147 @@ public class FImplService implements FService {
|
|
|
@Override
|
|
@Override
|
|
|
@SneakyThrows
|
|
@SneakyThrows
|
|
|
public void syncAgingSchedule() {
|
|
public void syncAgingSchedule() {
|
|
|
- List<Map> overList = ydService.queryFormData_all(_initLYParam()
|
|
|
|
|
- .formUuid("FORM-EC785A5AB2B9432C892062823EB7C62A9NTL")
|
|
|
|
|
- .searchFieldJson(JSON.toJSONString(UtilMap.map("radioField_m4qrz687", "是")))
|
|
|
|
|
- .build());
|
|
|
|
|
-
|
|
|
|
|
- Set<String> uuidSet = overList.stream()
|
|
|
|
|
- .map(m -> (String) m.get("textField_m5297e3q"))
|
|
|
|
|
- .filter(Objects::nonNull)
|
|
|
|
|
- .collect(Collectors.toSet());
|
|
|
|
|
-
|
|
|
|
|
- List<Map> dataList = ydService.queryFormData_all(_initLYParam()
|
|
|
|
|
- .formUuid("FORM-6603375ED27B4D059CBB919C2BEFA44BZVOL")
|
|
|
|
|
|
|
+ String msg = "";
|
|
|
|
|
+ try {
|
|
|
|
|
+ List<Map> overList = ydService.queryFormData_all(_initLYParam()
|
|
|
|
|
+ .formUuid("FORM-EC785A5AB2B9432C892062823EB7C62A9NTL")
|
|
|
|
|
+ .searchFieldJson(JSON.toJSONString(UtilMap.map("radioField_m4qrz687", "是")))
|
|
|
|
|
+ .build());
|
|
|
|
|
+
|
|
|
|
|
+ Set<String> uuidSet = overList.stream()
|
|
|
|
|
+ .map(m -> (String) m.get("textField_m5297e3q"))
|
|
|
|
|
+ .filter(Objects::nonNull)
|
|
|
|
|
+ .collect(Collectors.toSet());
|
|
|
|
|
+
|
|
|
|
|
+ List<Map> dataList = ydService.queryFormData_all(_initLYParam()
|
|
|
|
|
+ .formUuid("FORM-6603375ED27B4D059CBB919C2BEFA44BZVOL")
|
|
|
// .searchFieldJson(JSON.toJSONString(UtilMap.map("textField_lvdosccc", "KP_2025112402589")))
|
|
// .searchFieldJson(JSON.toJSONString(UtilMap.map("textField_lvdosccc", "KP_2025112402589")))
|
|
|
- .build());
|
|
|
|
|
-
|
|
|
|
|
- // 合同业务类型: 日保一次性与小业主一致
|
|
|
|
|
- Map compIds = UtilMap.map("大业主, 小业主, 工程订单, 日保一次性", "tableField_lvc9x4vt, tableField_lvdnme13, tableField_lvd8pp44, tableField_lvdnme13");
|
|
|
|
|
-
|
|
|
|
|
- // 账龄表主表: 1 开票档案, 合同业务类型, 开票编号
|
|
|
|
|
- Map compId_main = UtilMap.map("associationFormField_m25j5gxb, selectField_lvc9x4vn, textField_lvdosccc", "kpdh_gl, selectField_lvc9x4vn, textField_lvdosccc");
|
|
|
|
|
- // 账龄表主表: 2 开票公司, 公司编码, 开票类型,
|
|
|
|
|
- compId_main.putAll(UtilMap.map("selectField_lvc9x4vo, textField_m065jst5, selectField_lvc9x4vp", "selectField_lvc9x4vo, textField_m065jst5, selectField_lvc9x4vp"));
|
|
|
|
|
- // 账龄表主表: 3 项目点名称, 项目点编号, 收款协议
|
|
|
|
|
- compId_main.putAll(UtilMap.map("textField_lvdntzul, textField_m25j5gxk, selectField_lvc9x4vq", "textField_m4h15mt7, textField_lvdntzul, selectField_lvc9x4vq"));
|
|
|
|
|
- // 账龄表主表: 4 客户名称, 客户编号, 实际开票日期
|
|
|
|
|
- compId_main.putAll(UtilMap.map("selectField_lvdojfui, textField_lvdojfuj, dateField_lw5ud9bk, numberField_lvd8pp36", "selectField_lvdojfui, textField_lvdojfuj, dateField_lw5ud9bk, numberField_lvd8pp36"));
|
|
|
|
|
- // 账龄表主表: 5 实例ID, 发票号码, 发票状态, 是否往年退票重开
|
|
|
|
|
- compId_main.putAll(UtilMap.map("textField_m25j5gyi, textField_lvd8pp35, selectField_lvituew9, radioField_m883s9n6", "formInstanceId, textField_lvd8pp35, selectField_lvituew9, radioField_m883s9n6"));
|
|
|
|
|
-
|
|
|
|
|
- // 账龄表子表: 1 开票周期, 开票周期-文本, 开票内容, 含税单价, 数量, 税率
|
|
|
|
|
- List<String> compId_detail = UtilList.asList("dateField_m25j5gxu", "textField_m25j5gxv", "textField_lvdnme0u", "numberField_lvdnme0w", "numberField_lvdnme0x", "numberField_lvdnme0y");
|
|
|
|
|
- // 账龄表子表: 2 含税小计, 税额, 无税金额, 差异说明, 已回款金额, 回款周期, 回款周期-文本, 子表流水号, 物料名称
|
|
|
|
|
- compId_detail.addAll(Arrays.asList("numberField_lvdnme0z", "numberField_lvdnme10", "numberField_lvdnme11", "textareaField_m25j5gyc", "numberField_lvg084l9", "dateField_m0dp1g0e", "textField_m25j5gyh", "textField_m5297e3q", "textField_m5aes96o"));
|
|
|
|
|
- // 账龄表子表: 匹配来源数据表
|
|
|
|
|
- Map compIds_tab = UtilMap.map("tableField_lvc9x4vt, tableField_lvd8pp44, tableField_lvdnme13",
|
|
|
|
|
- // 大业主对应子表
|
|
|
|
|
- Arrays.asList("dateField_lw5uybgq", "dateField_lw5uybgq_wb", "textField_lvd8pp2t", "numberField_lvd8pp2v", "numberField_lvd8pp2w", "numberField_lvd8pp2x", "numberField_lvd8pp2y", "numberField_lvd8pp2z", "numberField_lvd8pp30", "textField_lvdnme0g", "numberField_lvg084lb", "dateField_m0f55roc", "dateField_m0f55roc_wb", "textField_lvdojfup", "associationFormField_lvynhq7p"),
|
|
|
|
|
- // 工程订单对应子表
|
|
|
|
|
- Arrays.asList("dateField_lvd8pp45", "ateField_lvd8pp45_wb", "textField_lvd8pp3w", "numberField_lvd8pp3y", "numberField_lvd8pp3z", "numberField_lvd8pp40", "numberField_lvd8pp41", "numberField_lvd8pp42", "numberField_lvd8pp43", "textField_lvdnme0h", "numberField_lvg084l9", "dateField_m0dp1g0e", "dateField_m0dp1g0e_wb", "textField_lvdojfur", "associationFormField_lvynrr6a"),
|
|
|
|
|
- // 小业主\日报一次性对应子表
|
|
|
|
|
- Arrays.asList("dateField_lvdnme0t", "dateField_lvdnme0t_wb", "textField_lvdnme0u", "numberField_lvdnme0w", "numberField_lvdnme0x", "numberField_lvdnme0y", "numberField_lvdnme0z", "numberField_lvdnme10", "numberField_lvdnme11", "textField_lvdnme12", "numberField_lvg084la", "dateField_m0f55roe", "dateField_m0f55roe_wb", "textField_lvdojfus", "associationFormField_lvynrr6c"));
|
|
|
|
|
-
|
|
|
|
|
- // 明细处理为主表记录, 以明细形式写入
|
|
|
|
|
- for (Map formData : dataList) {
|
|
|
|
|
- //子表唯一标识
|
|
|
|
|
- String compId_type = UtilMap.getString(compIds, UtilMap.getString(formData, "selectField_lvc9x4vn"));
|
|
|
|
|
- List<Map> details = UtilMap.getList(formData, compId_type);
|
|
|
|
|
- log.info("账龄表同步, {}, {}, {}", UtilMap.getString(formData, "selectField_lvc9x4vn"), formData.get("formInstanceId"), details.size());
|
|
|
|
|
- if (details.isEmpty()) {
|
|
|
|
|
- continue;
|
|
|
|
|
- }
|
|
|
|
|
- // 主表字段匹配 kpdh_gl
|
|
|
|
|
- Map dataForm = UtilMap.empty();
|
|
|
|
|
- for (Object key : compId_main.keySet()) {
|
|
|
|
|
- if ("kpdh_gl".equals(compId_main.get(key))) {
|
|
|
|
|
- dataForm.put(key, YDConf.associationForm("APP_ERBDTFS82HOVBPL3NFH0", "FORM-6603375ED27B4D059CBB919C2BEFA44BZVOL", UtilMap.getString(formData, "formInstanceId"), UtilMap.getString(formData, "textField_lvdosccc"), null, false));
|
|
|
|
|
- } else {
|
|
|
|
|
- dataForm.put(key, formData.get(compId_main.get(key)));
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- // 子表数据匹配 _wb
|
|
|
|
|
- for (Map detail : details) {
|
|
|
|
|
- // 唯一条件: 单据编号 + 业务类型 + 开票周期 + UUID + 物料名称 (ppExt: 同一个开票周期下, 会有不同物料名称) [作废重开编号不一样]
|
|
|
|
|
- String compId_date = (String) UtilMap.getList(compIds_tab, compId_type).get(0);
|
|
|
|
|
- long kpzq = UtilMap.getLong(detail, compId_date);
|
|
|
|
|
- if (kpzq == 0) {
|
|
|
|
|
|
|
+ .build());
|
|
|
|
|
+
|
|
|
|
|
+ // 合同业务类型: 日保一次性与小业主一致
|
|
|
|
|
+ Map compIds = UtilMap.map("大业主, 小业主, 工程订单, 日保一次性", "tableField_lvc9x4vt, tableField_lvdnme13, tableField_lvd8pp44, tableField_lvdnme13");
|
|
|
|
|
+
|
|
|
|
|
+ // 账龄表主表: 1 开票档案, 合同业务类型, 开票编号
|
|
|
|
|
+ Map compId_main = UtilMap.map("associationFormField_m25j5gxb, selectField_lvc9x4vn, textField_lvdosccc", "kpdh_gl, selectField_lvc9x4vn, textField_lvdosccc");
|
|
|
|
|
+ // 账龄表主表: 2 开票公司, 公司编码, 开票类型,
|
|
|
|
|
+ compId_main.putAll(UtilMap.map("selectField_lvc9x4vo, textField_m065jst5, selectField_lvc9x4vp", "selectField_lvc9x4vo, textField_m065jst5, selectField_lvc9x4vp"));
|
|
|
|
|
+ // 账龄表主表: 3 项目点名称, 项目点编号, 收款协议
|
|
|
|
|
+ compId_main.putAll(UtilMap.map("textField_lvdntzul, textField_m25j5gxk, selectField_lvc9x4vq", "textField_m4h15mt7, textField_lvdntzul, selectField_lvc9x4vq"));
|
|
|
|
|
+ // 账龄表主表: 4 客户名称, 客户编号, 实际开票日期
|
|
|
|
|
+ compId_main.putAll(UtilMap.map("selectField_lvdojfui, textField_lvdojfuj, dateField_lw5ud9bk, numberField_lvd8pp36", "selectField_lvdojfui, textField_lvdojfuj, dateField_lw5ud9bk, numberField_lvd8pp36"));
|
|
|
|
|
+ // 账龄表主表: 5 实例ID, 发票号码, 发票状态, 是否往年退票重开
|
|
|
|
|
+ compId_main.putAll(UtilMap.map("textField_m25j5gyi, textField_lvd8pp35, selectField_lvituew9, radioField_m883s9n6", "formInstanceId, textField_lvd8pp35, selectField_lvituew9, radioField_m883s9n6"));
|
|
|
|
|
+
|
|
|
|
|
+ // 账龄表子表: 1 开票周期, 开票周期-文本, 开票内容, 含税单价, 数量, 税率
|
|
|
|
|
+ List<String> compId_detail = UtilList.asList("dateField_m25j5gxu", "textField_m25j5gxv", "textField_lvdnme0u", "numberField_lvdnme0w", "numberField_lvdnme0x", "numberField_lvdnme0y");
|
|
|
|
|
+ // 账龄表子表: 2 含税小计, 税额, 无税金额, 差异说明, 已回款金额, 回款周期, 回款周期-文本, 子表流水号, 物料名称
|
|
|
|
|
+ compId_detail.addAll(Arrays.asList("numberField_lvdnme0z", "numberField_lvdnme10", "numberField_lvdnme11", "textareaField_m25j5gyc", "numberField_lvg084l9", "dateField_m0dp1g0e", "textField_m25j5gyh", "textField_m5297e3q", "textField_m5aes96o"));
|
|
|
|
|
+ // 账龄表子表: 匹配来源数据表
|
|
|
|
|
+ Map compIds_tab = UtilMap.map("tableField_lvc9x4vt, tableField_lvd8pp44, tableField_lvdnme13",
|
|
|
|
|
+ // 大业主对应子表
|
|
|
|
|
+ Arrays.asList("dateField_lw5uybgq", "dateField_lw5uybgq_wb", "textField_lvd8pp2t", "numberField_lvd8pp2v", "numberField_lvd8pp2w", "numberField_lvd8pp2x", "numberField_lvd8pp2y", "numberField_lvd8pp2z", "numberField_lvd8pp30", "textField_lvdnme0g", "numberField_lvg084lb", "dateField_m0f55roc", "dateField_m0f55roc_wb", "textField_lvdojfup", "associationFormField_lvynhq7p"),
|
|
|
|
|
+ // 工程订单对应子表
|
|
|
|
|
+ Arrays.asList("dateField_lvd8pp45", "ateField_lvd8pp45_wb", "textField_lvd8pp3w", "numberField_lvd8pp3y", "numberField_lvd8pp3z", "numberField_lvd8pp40", "numberField_lvd8pp41", "numberField_lvd8pp42", "numberField_lvd8pp43", "textField_lvdnme0h", "numberField_lvg084l9", "dateField_m0dp1g0e", "dateField_m0dp1g0e_wb", "textField_lvdojfur", "associationFormField_lvynrr6a"),
|
|
|
|
|
+ // 小业主\日报一次性对应子表
|
|
|
|
|
+ Arrays.asList("dateField_lvdnme0t", "dateField_lvdnme0t_wb", "textField_lvdnme0u", "numberField_lvdnme0w", "numberField_lvdnme0x", "numberField_lvdnme0y", "numberField_lvdnme0z", "numberField_lvdnme10", "numberField_lvdnme11", "textField_lvdnme12", "numberField_lvg084la", "dateField_m0f55roe", "dateField_m0f55roe_wb", "textField_lvdojfus", "associationFormField_lvynrr6c"));
|
|
|
|
|
+
|
|
|
|
|
+ // 明细处理为主表记录, 以明细形式写入
|
|
|
|
|
+ for (Map formData : dataList) {
|
|
|
|
|
+ //子表唯一标识
|
|
|
|
|
+ String compId_type = UtilMap.getString(compIds, UtilMap.getString(formData, "selectField_lvc9x4vn"));
|
|
|
|
|
+ List<Map> details = UtilMap.getList(formData, compId_type);
|
|
|
|
|
+ log.info("账龄表同步, {}, {}, {}", UtilMap.getString(formData, "selectField_lvc9x4vn"), formData.get("formInstanceId"), details.size());
|
|
|
|
|
+ if (details.isEmpty()) {
|
|
|
continue;
|
|
continue;
|
|
|
}
|
|
}
|
|
|
- String material = "", uuid = ""; // 物料取值关联表单, uuid为避免重复
|
|
|
|
|
- List<String> arrCompId = UtilMap.getList(compIds_tab, compId_type);
|
|
|
|
|
- for (int i = 0; i < arrCompId.size(); i++) {
|
|
|
|
|
- String key = compId_detail.get(i);
|
|
|
|
|
- if (key.equals("textField_m5aes96o")) {
|
|
|
|
|
- String cId = arrCompId.get(i) + "_id";
|
|
|
|
|
- if (!detail.containsKey(cId)) {
|
|
|
|
|
- continue;
|
|
|
|
|
- }
|
|
|
|
|
- List<Map> associations = (List<Map>) JSON.parse(String.valueOf(JSON.parse(UtilMap.getString(detail, cId))));
|
|
|
|
|
- material = UtilMap.getString(associations.get(0), "title");
|
|
|
|
|
- dataForm.put(key, material);
|
|
|
|
|
- } else if (arrCompId.get(i).contains("dateField_")) {
|
|
|
|
|
- String cId = arrCompId.get(i).replace("_wb", "");
|
|
|
|
|
- if (!detail.containsKey(cId)) {
|
|
|
|
|
- continue;
|
|
|
|
|
- }
|
|
|
|
|
- long tm = UtilMap.getLong(detail, cId);
|
|
|
|
|
- if (tm == 0) {
|
|
|
|
|
- continue;
|
|
|
|
|
- }
|
|
|
|
|
- if (arrCompId.get(i).contains("_wb")) {
|
|
|
|
|
- dataForm.put(key, UtilDateTime.format(new Date(tm), "yyyy-MM"));
|
|
|
|
|
|
|
+ // 主表字段匹配 kpdh_gl
|
|
|
|
|
+ Map dataForm = UtilMap.empty();
|
|
|
|
|
+ for (Object key : compId_main.keySet()) {
|
|
|
|
|
+ if ("kpdh_gl".equals(compId_main.get(key))) {
|
|
|
|
|
+ dataForm.put(key, YDConf.associationForm("APP_ERBDTFS82HOVBPL3NFH0", "FORM-6603375ED27B4D059CBB919C2BEFA44BZVOL", UtilMap.getString(formData, "formInstanceId"), UtilMap.getString(formData, "textField_lvdosccc"), null, false));
|
|
|
|
|
+ } else {
|
|
|
|
|
+ dataForm.put(key, formData.get(compId_main.get(key)));
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ // 子表数据匹配 _wb
|
|
|
|
|
+ for (Map detail : details) {
|
|
|
|
|
+ // 唯一条件: 单据编号 + 业务类型 + 开票周期 + UUID + 物料名称 (ppExt: 同一个开票周期下, 会有不同物料名称) [作废重开编号不一样]
|
|
|
|
|
+ String compId_date = (String) UtilMap.getList(compIds_tab, compId_type).get(0);
|
|
|
|
|
+ long kpzq = UtilMap.getLong(detail, compId_date);
|
|
|
|
|
+ if (kpzq == 0) {
|
|
|
|
|
+ continue;
|
|
|
|
|
+ }
|
|
|
|
|
+ String material = "", uuid = ""; // 物料取值关联表单, uuid为避免重复
|
|
|
|
|
+ List<String> arrCompId = UtilMap.getList(compIds_tab, compId_type);
|
|
|
|
|
+ for (int i = 0; i < arrCompId.size(); i++) {
|
|
|
|
|
+ String key = compId_detail.get(i);
|
|
|
|
|
+ if (key.equals("textField_m5aes96o")) {
|
|
|
|
|
+ String cId = arrCompId.get(i) + "_id";
|
|
|
|
|
+ if (!detail.containsKey(cId)) {
|
|
|
|
|
+ continue;
|
|
|
|
|
+ }
|
|
|
|
|
+ List<Map> associations = (List<Map>) JSON.parse(String.valueOf(JSON.parse(UtilMap.getString(detail, cId))));
|
|
|
|
|
+ material = UtilMap.getString(associations.get(0), "title");
|
|
|
|
|
+ dataForm.put(key, material);
|
|
|
|
|
+ } else if (arrCompId.get(i).contains("dateField_")) {
|
|
|
|
|
+ String cId = arrCompId.get(i).replace("_wb", "");
|
|
|
|
|
+ if (!detail.containsKey(cId)) {
|
|
|
|
|
+ continue;
|
|
|
|
|
+ }
|
|
|
|
|
+ long tm = UtilMap.getLong(detail, cId);
|
|
|
|
|
+ if (tm == 0) {
|
|
|
|
|
+ continue;
|
|
|
|
|
+ }
|
|
|
|
|
+ if (arrCompId.get(i).contains("_wb")) {
|
|
|
|
|
+ dataForm.put(key, UtilDateTime.format(new Date(tm), "yyyy-MM"));
|
|
|
|
|
+ } else {
|
|
|
|
|
+ dataForm.put(key, tm);
|
|
|
|
|
+ }
|
|
|
} else {
|
|
} else {
|
|
|
- dataForm.put(key, tm);
|
|
|
|
|
|
|
+ if (key.equals("textField_m5297e3q")) {
|
|
|
|
|
+ uuid = UtilMap.getString(detail, arrCompId.get(i));
|
|
|
|
|
+ }
|
|
|
|
|
+ dataForm.put(key, detail.get(arrCompId.get(i)));
|
|
|
}
|
|
}
|
|
|
- } else {
|
|
|
|
|
- if (key.equals("textField_m5297e3q")) {
|
|
|
|
|
- uuid = UtilMap.getString(detail, arrCompId.get(i));
|
|
|
|
|
|
|
+ // 避免判断条件被覆盖, 如工程订单重复写入
|
|
|
|
|
+ if (key.equals("textField_m25j5gxv")) {
|
|
|
|
|
+ dataForm.put(key, UtilDateTime.format(new Date(kpzq), "yyyy-MM"));
|
|
|
}
|
|
}
|
|
|
- dataForm.put(key, detail.get(arrCompId.get(i)));
|
|
|
|
|
}
|
|
}
|
|
|
- // 避免判断条件被覆盖, 如工程订单重复写入
|
|
|
|
|
- if (key.equals("textField_m25j5gxv")) {
|
|
|
|
|
- dataForm.put(key, UtilDateTime.format(new Date(kpzq), "yyyy-MM"));
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- if (!uuidSet.contains(uuid)){
|
|
|
|
|
- String kpzq_wb = UtilDateTime.format(new Date(kpzq), "yyyy-MM");
|
|
|
|
|
- List<Map> searchCondition = new ArrayList<>();
|
|
|
|
|
- searchCondition.addAll(Arrays.asList(
|
|
|
|
|
- YDConf.searchCondition_TextFiled("textField_lvdosccc", UtilMap.getString(formData, "textField_lvdosccc"), "eq"),
|
|
|
|
|
- YDConf.searchCondition_TextFiled("selectField_lvc9x4vn", UtilMap.getString(formData, "selectField_lvc9x4vn"), "eq"),
|
|
|
|
|
- YDConf.searchCondition_TextFiled("textField_m25j5gxv", kpzq_wb, "eq"),
|
|
|
|
|
- YDConf.searchCondition_TextFiled("textField_m5aes96o", material, "eq"),
|
|
|
|
|
- YDConf.searchCondition_TextFiled("textField_m5297e3q", uuid, "eq")
|
|
|
|
|
- ));
|
|
|
|
|
- // 回款状态与未回款金额记录, 用于催款函查询
|
|
|
|
|
- BigDecimal figure = BigDecimal.valueOf(UtilMap.getDouble(dataForm, "numberField_lvdnme0z")).subtract(BigDecimal.valueOf(UtilMap.getDouble(dataForm, "numberField_lvg084l9")));
|
|
|
|
|
- dataForm.put("radioField_m4qrz687", BigDecimal.ZERO.compareTo(figure) == 0 ? "是" : "否");
|
|
|
|
|
- dataForm.put("numberField_m4qrz685", figure);
|
|
|
|
|
|
|
+ if (!uuidSet.contains(uuid)) {
|
|
|
|
|
+ String kpzq_wb = UtilDateTime.format(new Date(kpzq), "yyyy-MM");
|
|
|
|
|
+ List<Map> searchCondition = new ArrayList<>();
|
|
|
|
|
+ searchCondition.addAll(Arrays.asList(
|
|
|
|
|
+ YDConf.searchCondition_TextFiled("textField_lvdosccc", UtilMap.getString(formData, "textField_lvdosccc"), "eq"),
|
|
|
|
|
+ YDConf.searchCondition_TextFiled("selectField_lvc9x4vn", UtilMap.getString(formData, "selectField_lvc9x4vn"), "eq"),
|
|
|
|
|
+ YDConf.searchCondition_TextFiled("textField_m25j5gxv", kpzq_wb, "eq"),
|
|
|
|
|
+ YDConf.searchCondition_TextFiled("textField_m5aes96o", material, "eq"),
|
|
|
|
|
+ YDConf.searchCondition_TextFiled("textField_m5297e3q", uuid, "eq")
|
|
|
|
|
+ ));
|
|
|
|
|
+ // 回款状态与未回款金额记录, 用于催款函查询
|
|
|
|
|
+ BigDecimal figure = BigDecimal.valueOf(UtilMap.getDouble(dataForm, "numberField_lvdnme0z")).subtract(BigDecimal.valueOf(UtilMap.getDouble(dataForm, "numberField_lvg084l9")));
|
|
|
|
|
+ dataForm.put("radioField_m4qrz687", BigDecimal.ZERO.compareTo(figure) == 0 ? "是" : "否");
|
|
|
|
|
+ dataForm.put("numberField_m4qrz685", figure);
|
|
|
// Thread.sleep(30); // QPS上限 40
|
|
// Thread.sleep(30); // QPS上限 40
|
|
|
- ydClient.operateData(_initLYParam()
|
|
|
|
|
- .searchCondition(JSON.toJSONString(searchCondition))
|
|
|
|
|
- .formUuid("FORM-EC785A5AB2B9432C892062823EB7C62A9NTL")
|
|
|
|
|
- .formDataJson(JSON.toJSONString(dataForm))
|
|
|
|
|
- .useLatestVersion(true)
|
|
|
|
|
- .build(), YDConf.FORM_OPERATION.upsert_v2);
|
|
|
|
|
|
|
+ ydClient.operateData(_initLYParam()
|
|
|
|
|
+ .searchCondition(JSON.toJSONString(searchCondition))
|
|
|
|
|
+ .formUuid("FORM-EC785A5AB2B9432C892062823EB7C62A9NTL")
|
|
|
|
|
+ .formDataJson(JSON.toJSONString(dataForm))
|
|
|
|
|
+ .useLatestVersion(true)
|
|
|
|
|
+ .build(), YDConf.FORM_OPERATION.upsert_v2);
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
+ msg = "账龄表任务完成";
|
|
|
|
|
+ } catch (Exception e) {
|
|
|
|
|
+ msg = "账龄表任务失败";
|
|
|
|
|
+ e.printStackTrace();
|
|
|
}
|
|
}
|
|
|
|
|
+ Map<String, String> map = UtilMap.map("content", msg);
|
|
|
|
|
+ Map<String, Object> msgMap = new HashMap<>();
|
|
|
|
|
+ msgMap.put("msgtype","text");
|
|
|
|
|
+ msgMap.put("text",map);
|
|
|
|
|
+ ddClientNotice.sendNotification(ddClient.getAccessToken(), Arrays.asList("02155564613238652889","030758051930778037"),null,false,msgMap);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
public String numberToChinese(BigDecimal number) {
|
|
public String numberToChinese(BigDecimal number) {
|