Revert "wip:出口报关明细报表"

This reverts commit 3f669694c9.
This commit is contained in:
zzs01@yunemao.com 2024-09-04 18:53:23 +08:00
parent ca485cb29d
commit 714b6f8ce7
2 changed files with 9 additions and 58 deletions

View File

@ -14,12 +14,14 @@ import kd.bos.entity.report.FilterInfo;
import kd.bos.entity.report.ReportQueryParam;
import kd.bos.orm.ORM;
import kd.bos.orm.query.QFilter;
import kd.bos.servicehelper.BusinessDataServiceHelper;
import org.apache.commons.compress.utils.Lists;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.*;
import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import static com.yem.rf.utils.RFUtils.getBaseQFilter;
@ -37,28 +39,12 @@ public class ExportDeclarationDetailsReportPlugin extends AbstractReportListData
@Override
public DataSet query(ReportQueryParam param, Object o) throws Throwable {
FilterInfo filter = param.getFilter();
Date fshipdate_start = filter.getDate("yem_fshipdate_start");//发货日期
Date fshipdate_end = filter.getDate("yem_fshipdate_end");//发货日期
Date fexportdate_start = filter.getDate("yem_fexportdate_start");//出口日期
Date fexportdate_end = filter.getDate("yem_fexportdate_end");//出口日期
String fcontactno = filter.getString("yem_fcontactno");//合同号
Long fcustomer = filter.getLong("yem_fcustomer");//客户
String fladingno = filter.getString("yem_fladingno");//提单号
DataSet declaredocx = queryDeclareDocx(param);
DataSet declaredocx_relation = queryDeclareDocx_Relation(param);
DataSet exportinvoice = queryExportInvoice(param);
DataSet salesorder_info = querySalesOrder_Info(param);
DataSet dataSet;
dataSet = declaredocx.leftJoin(declaredocx_relation)
@ -71,11 +57,6 @@ public class ExportDeclarationDetailsReportPlugin extends AbstractReportListData
.select(RptUtil.getDataSetFiledAlias(dataSet), RptUtil.getDataSetFiledAlias(exportinvoice))
.finish();
dataSet = dataSet.leftJoin(salesorder_info)
.on("main_id", "detail_id_info_fk")
.select(RptUtil.getDataSetFiledAlias(dataSet), RptUtil.getDataSetFiledAlias(salesorder_info))
.finish();
dataSet = dataSet.select(String.join(",", RptUtil.getDataSetFiledAlias(dataSet)) + "," +
//原币离岸价
"yem_amount - tmp_reightamtend - tmp_premiumamtcy yem_basefobamt");
@ -87,17 +68,13 @@ public class ExportDeclarationDetailsReportPlugin extends AbstractReportListData
"yem_cnyfobamt - yem_cnyinvoiced yem_fobsubinvoiced");
dataSet = dataSet.select(String.join(",", RptUtil.getDataSetFiledAlias(dataSet)) + "," +
//美元离岸价
"CASE WHEN yem_usdrate > 0 THEN yem_cnyfobamt / yem_usdrate ELSE 0.0 END yem_usdfobamt");
"yem_cnyfobamt / yem_usdrate yem_usdfobamt");
dataSet = dataSet.select(String.join(",", RptUtil.getDataSetFiledAlias(dataSet)) + "," +
//出口创汇
"yem_usdfobamt + usd_sea_amt + usd_pmamt_amt yem_earning");
dataSet = dataSet.select(String.join(",", RptUtil.getDataSetFiledAlias(dataSet)) + "," +
//应退税额
"yem_cnyfobamt * yem_degrate / 100 yem_refundabletax");
StringBuilder sb = new StringBuilder();
return dataSet;
}
@ -152,9 +129,9 @@ public class ExportDeclarationDetailsReportPlugin extends AbstractReportListData
dataSet = dataSet.select(String.join(",", RptUtil.getDataSetFiledAlias(dataSet)) + "," +
// 2海运费美元=海运费本位币/美元汇率
"CASE WHEN yem_usdrate > 0 THEN yem_reightamtbase / yem_usdrate ELSE 0.0 END usd_sea_amt, " +
"yem_reightamtbase / yem_usdrate usd_sea_amt, " +
// 3运保费美元=运保费本位币/美元汇率
"CASE WHEN yem_usdrate > 0 THEN yem_premiumamtbase / yem_usdrate ELSE 0.0 END usd_pmamt_amt, " +
"yem_premiumamtbase / yem_usdrate usd_pmamt_amt, " +
// 美元汇率
"yem_usdrate * 100 yem_usdratehund");
@ -182,19 +159,6 @@ public class ExportDeclarationDetailsReportPlugin extends AbstractReportListData
dataSet = dataSet.addField("0.0", "yem_usdpremiumamt");//美元保险费
dataSet = dataSet.addField("0.0", "tmp_reightamtend");//海运费结算币别
dataSet = dataSet.addField("0.0", "tmp_premiumamtcy");//保费结算币别
dataSet = dataSet.addField("0", "yem_cnycurrency");//人民币币别
dataSet = dataSet.addField("0", "yem_usdcurrency");//美元币别
DynamicObject cny = BusinessDataServiceHelper.loadSingle("bd_currency", "id", new QFilter[]{new QFilter("number", "=", "CNY")});
long cnyId = 0L;
if (YEM.isNotEmpty(cny)) {
cnyId = cny.getLong("id");
}
DynamicObject usd = BusinessDataServiceHelper.loadSingle("bd_currency", "id", new QFilter[]{new QFilter("number", "=", "USD")});
long usdId = 0L;
if (YEM.isNotEmpty(usd)) {
usdId = usd.getLong("id");
}
dataSet = RptUtil.zeroNullNums(dataSet);
DynamicObjectCollection collection = ORM.create().toPlainDynamicObjectCollection(dataSet.copy());
Map<String, List<DynamicObject>> map = new LinkedHashMap<>();
@ -286,8 +250,6 @@ public class ExportDeclarationDetailsReportPlugin extends AbstractReportListData
d.set("tmp_premiumamtcy", tmp_premiumamtcy);//保费结算币别
}
d.set("yem_cnycurrency", cnyId);
d.set("yem_usdcurrency", usdId);
dc.add(d);
}
}
@ -347,9 +309,8 @@ public class ExportDeclarationDetailsReportPlugin extends AbstractReportListData
DataSet infoDataSet2 = dataSet.copy().groupBy(new String[]{"rl_merged_seq"})
.agg(new GroupTopOneFunction(), "yem_declarationele", "yem_declarationele")
.agg(new GroupTopOneFunction(), "rl_detail_id", "rl_detail_id")
.agg(new GroupTopOneFunction(), "main_id", "main_id")
.finish()
.select("rl_merged_seq rl_merged_seq_2, yem_declarationele, rl_detail_id, main_id");
.select("rl_merged_seq rl_merged_seq_2, yem_declarationele, rl_detail_id");
dataSet = infoDataSet1.leftJoin(infoDataSet2)
.on("rl_merged_seq_1", "rl_merged_seq_2")
@ -442,16 +403,6 @@ public class ExportDeclarationDetailsReportPlugin extends AbstractReportListData
return dataSet;
}
private DataSet querySalesOrder_Info(ReportQueryParam param) {
QFilter qFilter = getBaseQFilter();
ArrayList<String> selectfields = Lists.newArrayList();
selectfields.add("yem_es_materialinfo.id detail_id_info_fk");
selectfields.add("yem_operator yem_salesman");
return ORM.create().queryDataSet(algoKey, "yem_es_salesorder", String.join(",", selectfields), qFilter.toArray());
}
public QFilter getCommonDeclareDocxFilter(ReportQueryParam param) {
FilterInfo filter = param.getFilter();
String fdeclaredocxno = filter.getString("yem_fdeclaredocxno");

View File

@ -91,7 +91,7 @@ public class SalesCommissionReportPlugin extends AbstractReportListDataPlugin {
if (resourceno > 0) {
where.append(" AND yem_resourcescode = ").append(resourceno);
}
if (YEM.isNotEmpty(start)) {
if (YEM.isNotEmpty(start)) {
where.append(" AND TO_DATE(yem_ladingdatetext,'yyyy-MM-dd') >= ").append(String.format("TO_DATE('%s','yyyy-MM-dd')", formatDate(start)));
}
if (YEM.isNotEmpty(end)) {