BI汇总层,增加授信额度使用率功能
This commit is contained in:
parent
f2b56f4653
commit
4cefda4987
@ -277,7 +277,8 @@ public class SaleCountDimensionImpl implements DataSummaryService {
|
||||
receivableMap.put(xszz, map);
|
||||
}
|
||||
}
|
||||
|
||||
//先查询区域公司授信额度维护表
|
||||
List<BO> sxedList = SDK.getBOAPI().query("BO_EU_DATALINKUP_QYGSED").orderBy("QYGS").desc().list();
|
||||
// 合并数据并创建BO对象
|
||||
for (RowMap receivable : receivableMaps) {
|
||||
String xszz = receivable.getString("XSZZ");
|
||||
@ -320,6 +321,8 @@ public class SaleCountDimensionImpl implements DataSummaryService {
|
||||
bo.set("LJHK", receivable.getString("LJHK"));
|
||||
bo.set("LJXS", receivable.getString("LJXS"));
|
||||
bo.set("HKL", receivable.getString("HKL"));
|
||||
//增加额度使用率情况
|
||||
bo.set("EDSYL", SaleUtil.calculateResult(sxedList,bkgs,receivable.getString("QYGS"),yszk));
|
||||
bos.add(bo);
|
||||
}
|
||||
|
||||
@ -386,7 +389,7 @@ public class SaleCountDimensionImpl implements DataSummaryService {
|
||||
} else {
|
||||
ArrayList<BO> bos = new ArrayList<>();
|
||||
// 循环外先获取下公装家装、基材面材类别
|
||||
List<BO> gzjzList = SDK.getBOAPI().query("BO_EU_DATALINKUP_CPJZGZJCMC").list();
|
||||
List<BO> gzjzList = SDK.getBOAPI().query("BO_EU_DATALINKUP_CPJZGZJCMC").orderBy("CPLB_L2").desc().list();
|
||||
for (RowMap map : maps) {
|
||||
String gc = map.getString("KCZZ");
|
||||
String yearmonth = map.getString("YEARMONTH");
|
||||
|
||||
@ -29,4 +29,38 @@ public class SaleUtil {
|
||||
}
|
||||
return new String[]{defaultJzgz, defaultJcmc,defaultProdCat};
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据BKGS和QYGS匹配sxedList中的元素并计算结果
|
||||
* @param sxedList 待匹配的列表
|
||||
* @param bkgs 传入的BKGS参数
|
||||
* @param qygs 传入的QYGS参数
|
||||
* @param yszk 传入的YSZK参数
|
||||
* @return 匹配成功返回YSZK/SXED,否则返回0
|
||||
*/
|
||||
public static double calculateResult(List<BO> sxedList, String bkgs, String qygs, double yszk) {
|
||||
// 遍历列表中的每个元素
|
||||
for (BO bo : sxedList) {
|
||||
// 获取当前元素的BKGS和QYGS
|
||||
String boBkgs = bo.getString("BKGS");
|
||||
String boQygs = bo.getString("QYGS");
|
||||
// 同时匹配BKGS和QYGS
|
||||
if (bkgs.equals(boBkgs) && qygs.equals(boQygs)) {
|
||||
// 匹配成功,获取SXED值
|
||||
String sxedStr = bo.getString("SXED");
|
||||
try {
|
||||
// 将SXED转换为数值并计算结果
|
||||
double sxed = Double.parseDouble(sxedStr);
|
||||
// 避免除以0的情况
|
||||
return sxed != 0 ? yszk / sxed : 0;
|
||||
} catch (NumberFormatException e) {
|
||||
// 如果SXED无法转换为数值,返回0
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
// 没有匹配到任何元素,返回0
|
||||
return 0;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user