fix:报表国贸订单明细数据错误
This commit is contained in:
parent
03844240a0
commit
9a81a8781f
@ -34,35 +34,27 @@ public class ITCOrderDetailsReportPlugin extends AbstractReportListDataPlugin {
|
||||
@Override
|
||||
public DataSet query(ReportQueryParam param, Object o) throws Throwable {
|
||||
DataSet resDataSet;
|
||||
DataSet placeexamine = queryPlaceExamine(param);//已提交下单审批
|
||||
DataSet salesorder = querySalesOrder(param);//合同
|
||||
DataSet salesorderplanentry = querySalesOrderPlanEntry(param);//合同跟单任务明细
|
||||
DataSet storagetrans = queryStorageTrans(param);//订舱
|
||||
DataSet tracktaskconsole = queryTrackTaskConsole(param);//跟单任务控制台
|
||||
DataSet tracktaskconsoleprocentry = queryTrackTaskConsoleProcEntry(param);//跟单任务控制台 备料分录
|
||||
DataSet delivernotice = queryDeliverNotice(param);
|
||||
DataSet delivernotice_status = queryDeliverNoticeStatus(param);
|
||||
|
||||
|
||||
resDataSet = placeexamine.leftJoin(salesorder)
|
||||
.on("source_order_id_placeexamine_fk", "order_title_id")
|
||||
.select(RptUtil.getDataSetFiledAlias(placeexamine), RptUtil.getDataSetFiledAlias(salesorder))
|
||||
.finish();
|
||||
resDataSet = resDataSet.leftJoin(salesorderplanentry)
|
||||
.on("order_detail_id", "order_detail_id_plan_fk")
|
||||
.select(RptUtil.getDataSetFiledAlias(resDataSet), RptUtil.getDataSetFiledAlias(salesorderplanentry))
|
||||
.finish();
|
||||
resDataSet = resDataSet.leftJoin(storagetrans)
|
||||
resDataSet = salesorder.leftJoin(storagetrans)
|
||||
.on("yem_vehicleno", "storage_detail_vehicleno_fk")
|
||||
.select(RptUtil.getDataSetFiledAlias(resDataSet), RptUtil.getDataSetFiledAlias(storagetrans))
|
||||
.on("order_detail_id", "storage_detail_id_order_detail_fk")
|
||||
.select(RptUtil.getDataSetFiledAlias(salesorder), RptUtil.getDataSetFiledAlias(storagetrans))
|
||||
.finish();
|
||||
resDataSet = resDataSet.leftJoin(tracktaskconsole)
|
||||
.on("order_detail_id", "plan_detail_source_id")
|
||||
.on("yem_vehicleno", "plan_veh_fk")
|
||||
.select(RptUtil.getDataSetFiledAlias(resDataSet), RptUtil.getDataSetFiledAlias(tracktaskconsole))
|
||||
.finish();
|
||||
resDataSet = resDataSet.leftJoin(tracktaskconsoleprocentry)
|
||||
.on("plan_detail_id", "plan_proc_detail_fk")
|
||||
.select(RptUtil.getDataSetFiledAlias(resDataSet), RptUtil.getDataSetFiledAlias(tracktaskconsoleprocentry))
|
||||
resDataSet = resDataSet.leftJoin(salesorderplanentry)
|
||||
.on("order_detail_id", "order_detail_id_plan_fk")
|
||||
.on("plan_id", "plan_id_plan_fk")
|
||||
.select(RptUtil.getDataSetFiledAlias(resDataSet), RptUtil.getDataSetFiledAlias(salesorderplanentry))
|
||||
.finish();
|
||||
resDataSet = resDataSet.leftJoin(delivernotice)
|
||||
.on("order_detail_id", "core_order_id_delivernotice_fk")
|
||||
@ -130,7 +122,13 @@ public class ITCOrderDetailsReportPlugin extends AbstractReportListDataPlugin {
|
||||
private DataSet querySalesOrder(ReportQueryParam param) {
|
||||
QFilter qFilter = getBaseQFilter();
|
||||
|
||||
|
||||
DataSet placeExamine = queryPlaceExamine(param);
|
||||
List<Long> orderId = new ArrayList<>();
|
||||
DynamicObjectCollection collection = ORM.create().toPlainDynamicObjectCollection(placeExamine);
|
||||
for (DynamicObject d : collection) {
|
||||
orderId.add(d.getLong("source_order_id_placeexamine_fk"));
|
||||
}
|
||||
qFilter.and("id", "in", orderId);
|
||||
List<String> selectfields = new ArrayList<>();
|
||||
|
||||
selectfields.add("id order_title_id");
|
||||
@ -169,13 +167,14 @@ public class ITCOrderDetailsReportPlugin extends AbstractReportListDataPlugin {
|
||||
QFilter qFilter = getBaseQFilter();
|
||||
|
||||
List<String> selectfields = new ArrayList<>();
|
||||
selectfields.add("yem_shippingplan_entry.id order_plan_id");//跟单任务明细ID
|
||||
selectfields.add("yem_shippingplan_entry.yem_plan_date forderdate");//跟单任务.下单日期
|
||||
selectfields.add("yem_shippingplan_entry.yem_plandetail_entry.id order_plan_detail_id");//跟单任务明细子分录ID
|
||||
selectfields.add("yem_shippingplan_entry.yem_plandetail_entry.yem_srcentryid order_detail_id_plan_fk");
|
||||
selectfields.add("yem_shippingplan_entry.yem_plandetail_entry.yem_tracktaskconsoleid plan_id_plan_fk");
|
||||
|
||||
|
||||
return ORM.create().queryDataSet(algoKey, "yem_es_salesorder", String.join(",", selectfields), qFilter.toArray());
|
||||
|
||||
DataSet dataSet = ORM.create().queryDataSet(algoKey, "yem_es_salesorder", String.join(",", selectfields), qFilter.toArray()).distinct();
|
||||
return dataSet;
|
||||
}
|
||||
|
||||
private DataSet queryOrderProReqBill(ReportQueryParam param) {
|
||||
@ -202,6 +201,8 @@ public class ITCOrderDetailsReportPlugin extends AbstractReportListDataPlugin {
|
||||
selectfields.add("yem_boxvolume1 yem_boxvolume");//箱型箱量X
|
||||
selectfields.add("yem_contremark yem_sremark");//合同备注
|
||||
selectfields.add("yem_es_materialinfo.yem_es_salesorder_z.yem_vehicleno storage_detail_vehicleno_fk");//整机编码
|
||||
selectfields.add("yem_es_materialinfo.yem_coreentryid storage_detail_id_order_detail_fk");
|
||||
|
||||
|
||||
return ORM.create().queryDataSet(algoKey, "yem_es_storagetrans", String.join(",", selectfields), qFilter.toArray());
|
||||
}
|
||||
@ -213,19 +214,39 @@ public class ITCOrderDetailsReportPlugin extends AbstractReportListDataPlugin {
|
||||
*/
|
||||
private DataSet queryTrackTaskConsole(ReportQueryParam param) {
|
||||
|
||||
List<String> selectfields = new ArrayList<>();
|
||||
List<String> detail = new ArrayList<>();
|
||||
|
||||
selectfields.add("id plan_id");
|
||||
selectfields.add("yem_sourcebillid source_order_id");
|
||||
selectfields.add("TO_CHAR(yem_acshipdate, 'yyyy-MM-dd') yem_reqinventorydate");//预计需求入库时间
|
||||
selectfields.add("yem_es_materialinfo.id plan_detail_id");
|
||||
selectfields.add("yem_es_materialinfo.yem_sourceentryid plan_detail_source_id");
|
||||
// selectfields.add("yem_es_materialinfo.yem_ifreformg yem_ifreform");//是否改制
|
||||
selectfields.add("yem_es_materialinfo.yem_remarks yem_remark");//备注
|
||||
selectfields.add("yem_nameplatelogo.id yem_nameplatelogo");//铭牌标识
|
||||
selectfields.add("yem_nameplatetype yem_nameplatetype");//铭牌类型
|
||||
detail.add("id plan_id");
|
||||
detail.add("yem_sourcebillid source_order_id");
|
||||
detail.add("TO_CHAR(yem_acshipdate, 'yyyy-MM-dd') yem_reqinventorydate");//预计需求入库时间
|
||||
detail.add("yem_es_materialinfo.id plan_detail_id");
|
||||
detail.add("yem_es_materialinfo.yem_sourceentryid plan_detail_source_id");
|
||||
// detail.add("yem_es_materialinfo.yem_ifreformg yem_ifreform");//是否改制
|
||||
detail.add("yem_es_materialinfo.yem_remarks yem_remark");//备注
|
||||
detail.add("yem_nameplatelogo.id yem_nameplatelogo");//铭牌标识
|
||||
detail.add("yem_nameplatetype yem_nameplatetype");//铭牌类型
|
||||
|
||||
return ORM.create().queryDataSet(algoKey, "yem_tracktaskconsole", String.join(",", selectfields), null);
|
||||
DataSet detailSet = ORM.create().queryDataSet(algoKey, "yem_tracktaskconsole", String.join(",", detail), null);
|
||||
|
||||
List<String> comp = new ArrayList<>();
|
||||
comp.add("yem_es_salesorder_r.yem_es_salesorder_z.yem_vehicleno plan_veh_fk");
|
||||
comp.add("yem_es_salesorder_r.yem_entrtyid plan_product_id_fk");
|
||||
comp.add("yem_es_salesorder_r.id task_order_plan_id");
|
||||
comp.add("yem_es_salesorder_r.yem_entrtyid plan_proc_detail_fk");
|
||||
comp.add("yem_es_salesorder_r.yem_stockway yem_ifreform");
|
||||
comp.add("TO_CHAR(yem_es_salesorder_r.yem_yieldfactacdate, 'yyyy-MM-dd') yem_plancompdate");//实际完成时间
|
||||
DataSet productSet = ORM.create().queryDataSet(algoKey, "yem_tracktaskconsole", String.join(",", comp), null);
|
||||
DataSet proReqBill = queryOrderProReqBill(param);
|
||||
|
||||
DataSet res = detailSet.leftJoin(productSet)
|
||||
.on("plan_detail_id", "plan_product_id_fk")
|
||||
.select(RptUtil.getDataSetFiledAlias(detailSet), RptUtil.getDataSetFiledAlias(productSet))
|
||||
.finish();
|
||||
res = res.leftJoin(proReqBill)
|
||||
.on("task_order_plan_id", "order_req_main_detail_fk")
|
||||
.select(RptUtil.getDataSetFiledAlias(res), RptUtil.getDataSetFiledAlias(proReqBill))
|
||||
.finish();
|
||||
return res;
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
Reference in New Issue
Block a user