|
@@ -1,5 +1,6 @@
|
|
|
package com.malk.lanyun.service.impl;
|
|
|
|
|
|
+import cn.hutool.core.util.ObjectUtil;
|
|
|
import com.alibaba.fastjson.JSON;
|
|
|
import com.malk.lanyun.service.FService;
|
|
|
import com.malk.server.aliwork.YDConf;
|
|
@@ -143,20 +144,20 @@ private YDService ydService;
|
|
|
|
|
|
// 账龄表子表: 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"));
|
|
|
+ // 账龄表子表: 2 含税小计, 税额, 无税金额, 差异说明, 已回款金额, 回款周期, 回款周期-文本, 子表流水号
|
|
|
+ compId_detail.addAll(Arrays.asList("numberField_lvdnme0z", "numberField_lvdnme10", "numberField_lvdnme11", "textareaField_m25j5gyc", "numberField_lvg084l9", "dateField_m0dp1g0e", "textField_m25j5gyh", "textField_m5297e3q"));
|
|
|
// 账龄表子表: 匹配来源数据表
|
|
|
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"),
|
|
|
+ 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"),
|
|
|
// 工程订单对应子表
|
|
|
- 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"),
|
|
|
+ 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"),
|
|
|
// 小业主\日报一次性对应子表
|
|
|
- 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"));
|
|
|
+ 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"));
|
|
|
|
|
|
// 明细处理为主表记录, 以明细形式写入
|
|
|
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());
|
|
@@ -176,7 +177,9 @@ private YDService ydService;
|
|
|
for (Map detail : details) {
|
|
|
// 唯一条件: 单据编号 + 业务类型 + 开票周期
|
|
|
String compId_date = (String) UtilMap.getList(compIds_tab, compId_type).get(0);
|
|
|
+ String uuid_filed = (String) UtilMap.getList(compIds_tab, compId_type).get(13);
|
|
|
long kpzq = UtilMap.getLong(detail, compId_date);
|
|
|
+ String uuid = UtilMap.getString(detail, uuid_filed);
|
|
|
if (kpzq == 0) {
|
|
|
continue;
|
|
|
}
|
|
@@ -202,9 +205,15 @@ private YDService ydService;
|
|
|
}
|
|
|
}
|
|
|
String kpzq_wb = UtilDateTime.format(new Date(kpzq), "yyyy-MM");
|
|
|
- List<Map> searchCondition = Arrays.asList(YDConf.searchCondition_TextFiled("textField_lvdosccc", UtilMap.getString(formData, "textField_lvdosccc"), "eq"),
|
|
|
+ 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_m25j5gxv", kpzq_wb, "eq")
|
|
|
+ ));
|
|
|
+ if (ObjectUtil.isNotNull(uuid)){
|
|
|
+ searchCondition.add(YDConf.searchCondition_TextFiled("textField_m5297e3q", uuid, "eq"));
|
|
|
+ }
|
|
|
// 回款状态与未回款金额记录, 用于催款函查询
|
|
|
float figure = UtilMap.getFloat(dataForm, "numberField_lvdnme0z") - UtilMap.getFloat(dataForm, "numberField_lvg084l9");
|
|
|
dataForm.put("radioField_m4qrz687", figure == 0 ? "是" : "否");
|