Compare commits
3 Commits
a6691b4d9b
...
afc3b08ce2
Author | SHA1 | Date | |
---|---|---|---|
![]() |
afc3b08ce2 | ||
![]() |
c026971b54 | ||
![]() |
021d5560d6 |
@ -52,6 +52,7 @@ public class ExportDeclarationDetailsReportPlugin extends AbstractReportListData
|
|||||||
|
|
||||||
dataSet = declaredocx.leftJoin(declaredocx_relation)
|
dataSet = declaredocx.leftJoin(declaredocx_relation)
|
||||||
.on("merged_seq", "rl_merged_seq")
|
.on("merged_seq", "rl_merged_seq")
|
||||||
|
.on("declaredocx_id", "declare_id_gp_fk")
|
||||||
.select(RptUtil.getDataSetFiledAlias(declaredocx), RptUtil.getDataSetFiledAlias(declaredocx_relation))
|
.select(RptUtil.getDataSetFiledAlias(declaredocx), RptUtil.getDataSetFiledAlias(declaredocx_relation))
|
||||||
.finish();
|
.finish();
|
||||||
|
|
||||||
@ -326,11 +327,12 @@ public class ExportDeclarationDetailsReportPlugin extends AbstractReportListData
|
|||||||
|
|
||||||
ArrayList<String> selectfields = Lists.newArrayList();
|
ArrayList<String> selectfields = Lists.newArrayList();
|
||||||
|
|
||||||
|
selectfields.add("id declare_id_gp_fk");
|
||||||
selectfields.add("yem_es_declare_ecd.yem_fgseq rl_detail_seq");//商品明细序号
|
selectfields.add("yem_es_declare_ecd.yem_fgseq rl_detail_seq");//商品明细序号
|
||||||
selectfields.add("yem_es_declare_ecd.yem_decsourceentryidtext rl_detail_id");//商品明细分录行id
|
selectfields.add("yem_es_declare_ecd.yem_decsourceentryidtext rl_detail_id");//商品明细分录行id
|
||||||
selectfields.add("yem_es_declare_ecd.yem_decgoodsseq rl_merged_seq");//报关商品序号
|
selectfields.add("yem_es_declare_ecd.yem_decgoodsseq rl_merged_seq");//报关商品序号
|
||||||
DataSet dataSet = ORM.create().queryDataSet(algoKey, "yem_es_declaredocx", String.join(",", selectfields), qFilter.toArray());
|
DataSet dataSet = ORM.create().queryDataSet(algoKey, "yem_es_declaredocx", String.join(",", selectfields), qFilter.toArray());
|
||||||
dataSet = dataSet.select("CAST(rl_detail_seq as Integer) rl_detail_seq, CAST(rl_detail_id as Long) rl_detail_id, CAST(rl_merged_seq as Integer) rl_merged_seq");
|
dataSet = dataSet.select("CAST(rl_detail_seq as Integer) rl_detail_seq, CAST(rl_detail_id as Long) rl_detail_id, CAST(rl_merged_seq as Integer) rl_merged_seq, declare_id_gp_fk");
|
||||||
|
|
||||||
DataSet declaredocx_detail = queryDeclareDocx_Detail(param);
|
DataSet declaredocx_detail = queryDeclareDocx_Detail(param);
|
||||||
|
|
||||||
@ -353,25 +355,28 @@ public class ExportDeclarationDetailsReportPlugin extends AbstractReportListData
|
|||||||
.select(RptUtil.getDataSetFiledAlias(dataSet), RptUtil.getDataSetFiledAlias(salesorder))
|
.select(RptUtil.getDataSetFiledAlias(dataSet), RptUtil.getDataSetFiledAlias(salesorder))
|
||||||
.finish();
|
.finish();
|
||||||
|
|
||||||
DataSet infoDataSet1 = dataSet.copy().groupBy(new String[]{"rl_merged_seq"})
|
DataSet infoDataSet1 = dataSet.copy().groupBy(new String[]{"declare_id_gp_fk", "rl_merged_seq"})
|
||||||
.agg(new GroupConcatFunctionByComma(), "yem_bizdate", "yem_shipdate")
|
.agg(new GroupConcatFunctionByComma(), "yem_bizdate", "yem_shipdate")
|
||||||
.agg(new GroupConcatFunctionByComma(), "yem_contactno", "yem_contactno")
|
.agg(new GroupConcatFunctionByComma(), "yem_contactno", "yem_contactno")
|
||||||
.finish()
|
.finish()
|
||||||
.select("rl_merged_seq rl_merged_seq_1, yem_shipdate, yem_contactno");
|
.select("declare_id_gp_fk declare_id_gp_fk_1, rl_merged_seq rl_merged_seq_1, yem_shipdate, yem_contactno");
|
||||||
|
|
||||||
DataSet infoDataSet2 = dataSet.copy().groupBy(new String[]{"rl_merged_seq"})
|
DataSet infoDataSet2 = dataSet.copy().groupBy(new String[]{"declare_id_gp_fk", "rl_merged_seq"})
|
||||||
.agg(new GroupTopOneFunction(), "yem_declarationele", "yem_declarationele")
|
.agg(new GroupTopOneFunction(), "yem_declarationele", "yem_declarationele")
|
||||||
.agg(new GroupTopOneFunction(), "rl_detail_id", "rl_detail_id")
|
.agg(new GroupTopOneFunction(), "rl_detail_id", "rl_detail_id")
|
||||||
.agg(new GroupTopOneFunction(), "main_id", "main_id")
|
.agg(new GroupTopOneFunction(), "main_id", "main_id")
|
||||||
|
.agg(new GroupTopOneFunction(), "yem_orderno", "yem_orderno")
|
||||||
|
.agg(new GroupTopOneFunction(), "rl_merged_seq", "rl_merged_seq")
|
||||||
.finish()
|
.finish()
|
||||||
.select("rl_merged_seq rl_merged_seq_2, yem_declarationele, rl_detail_id, main_id");
|
.select("declare_id_gp_fk declare_id_gp_fk_2, rl_merged_seq rl_merged_seq_2, yem_declarationele, rl_detail_id, main_id, yem_orderno, rl_merged_seq");
|
||||||
|
|
||||||
dataSet = infoDataSet1.leftJoin(infoDataSet2)
|
dataSet = infoDataSet1.leftJoin(infoDataSet2)
|
||||||
|
.on("declare_id_gp_fk_1", "declare_id_gp_fk_2")
|
||||||
.on("rl_merged_seq_1", "rl_merged_seq_2")
|
.on("rl_merged_seq_1", "rl_merged_seq_2")
|
||||||
.select(RptUtil.getDataSetFiledAlias(infoDataSet1), RptUtil.getDataSetFiledAlias(infoDataSet2))
|
.select(RptUtil.getDataSetFiledAlias(infoDataSet1), RptUtil.getDataSetFiledAlias(infoDataSet2))
|
||||||
.finish();
|
.finish();
|
||||||
|
|
||||||
dataSet = dataSet.select(String.join(",", RptUtil.getDataSetFiledAlias(dataSet)) + ", rl_merged_seq_1 rl_merged_seq");
|
dataSet = dataSet.select(String.join(",", RptUtil.getDataSetFiledAlias(dataSet)) + ", declare_id_gp_fk_1 declare_id_gp_fk");
|
||||||
|
|
||||||
return dataSet;
|
return dataSet;
|
||||||
}
|
}
|
||||||
@ -409,7 +414,11 @@ public class ExportDeclarationDetailsReportPlugin extends AbstractReportListData
|
|||||||
selectfields.add("yem_bizdate");//业务日期
|
selectfields.add("yem_bizdate");//业务日期
|
||||||
|
|
||||||
DataSet dataSet = ORM.create().queryDataSet(algoKey, "yem_es_delivernotice", String.join(",", selectfields), qFilter.toArray());
|
DataSet dataSet = ORM.create().queryDataSet(algoKey, "yem_es_delivernotice", String.join(",", selectfields), qFilter.toArray());
|
||||||
return dataSet.select("dn_main_id_fk, TO_CHAR(yem_bizdate, 'yyyy-MM-dd') yem_bizdate");
|
dataSet = dataSet.select("dn_main_id_fk, TO_CHAR(yem_bizdate, 'yyyy-MM-dd') yem_bizdate");
|
||||||
|
dataSet = dataSet.groupBy(new String[]{"dn_main_id_fk"})
|
||||||
|
.agg(new GroupConcatFunctionByComma(), "yem_bizdate", "yem_bizdate")
|
||||||
|
.finish();
|
||||||
|
return dataSet;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -0,0 +1,53 @@
|
|||||||
|
package com.yem.rf.task;
|
||||||
|
|
||||||
|
import com.yem.wm.utils.ContactSignUtils;
|
||||||
|
import com.yem.wm.utils.DynamicObjectUtil;
|
||||||
|
import kd.bos.context.RequestContext;
|
||||||
|
import kd.bos.dataentity.entity.DynamicObject;
|
||||||
|
import kd.bos.dataentity.entity.DynamicObjectCollection;
|
||||||
|
import kd.bos.exception.KDException;
|
||||||
|
import kd.bos.schedule.executor.AbstractTask;
|
||||||
|
import kd.bos.servicehelper.BusinessDataServiceHelper;
|
||||||
|
import kd.bos.servicehelper.operation.SaveServiceHelper;
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Description: TODO
|
||||||
|
* @Date: 2024/9/5 9:38
|
||||||
|
* @Created: by ZZSLL
|
||||||
|
*/
|
||||||
|
|
||||||
|
public class ExportDeclarationDataFIxTask extends AbstractTask {
|
||||||
|
|
||||||
|
private static final Logger logger = LoggerFactory.getLogger(ExportDeclarationDataFIxTask.class);
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void execute(RequestContext requestContext, Map<String, Object> map) throws KDException {
|
||||||
|
String selectfields = DynamicObjectUtil.getSelectfields("yem_es_declaredocx");
|
||||||
|
selectfields = DynamicObjectUtil.getEntrySelectfields(selectfields, "yem_es_declaredocx", "yem_es_materialinfo");
|
||||||
|
selectfields = DynamicObjectUtil.getEntrySelectfields(selectfields, "yem_es_declaredocx", "yem_es_declare_ecd");
|
||||||
|
DynamicObject[] load = BusinessDataServiceHelper.load("yem_es_declaredocx", selectfields, null);
|
||||||
|
for (DynamicObject b : load) {
|
||||||
|
DynamicObjectCollection relation = b.getDynamicObjectCollection("yem_es_declare_ecd");
|
||||||
|
DynamicObjectCollection m = b.getDynamicObjectCollection("yem_es_materialinfo");
|
||||||
|
for (DynamicObject r : relation) {
|
||||||
|
int i = relation.indexOf(r);
|
||||||
|
String decsourceentryidtext = r.getString("yem_decsourceentryidtext");
|
||||||
|
if ("0".equals(decsourceentryidtext)) {
|
||||||
|
logger.info("修复-{}-{}行", b.getString("billno"), i);
|
||||||
|
int fgseq = r.getInt("yem_fgseq");
|
||||||
|
if (fgseq - 1 <= m.size()) {
|
||||||
|
DynamicObject detail = m.get(fgseq - 1);
|
||||||
|
long id = detail.getLong("id");
|
||||||
|
r.set("yem_decsourceentryidtext", String.valueOf(id));
|
||||||
|
logger.info("new Id: {}", id);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
SaveServiceHelper.save(load);
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user