业务申请信审复审对审批额度判断

This commit is contained in:
yjf 2023-09-14 09:11:59 +08:00
parent d2b7692f52
commit e62988389f

View File

@ -83,7 +83,7 @@ public class LBBusinessPrimary extends BaseBussiness {
String certIdJoin = certIdList.stream().collect(Collectors.joining("','", "'", "'"));
//所有合同金额
StringBuilder allContractSql = new StringBuilder("select sum(bc_money) as bcMoney from (select if(isnull(lri.income_corpus), CLEAN_LEASE_MONEY,CLEAN_LEASE_MONEY-lri.income_corpus) - ifnull(CAUTION_MONEY,0) as bc_money");
StringBuilder allContractSql = new StringBuilder("select ifnull(sum(bc_money),0) as bcMoney,group_concat(proj_id separator '\\',\\'') as proj_ids from (select lpi.id as proj_id,CLEAN_LEASE_MONEY-ifnull(CAUTION_MONEY,0) as bc_money");
allContractSql.append(" from lb_project_info lpi")
.append(" left join lc_proj_condition lpc on lpc.PROJECT_ID = lpi.id")
.append(" left join lb_contract_info lci on lci.PROJECT_ID = lpi.id")
@ -91,24 +91,34 @@ public class LBBusinessPrimary extends BaseBussiness {
.append(" left join customer_info ci on ci.customerid = lul.CUSTOMER_ID")
.append(" left join CUSTOMER_FAMILY cf on cf.PROJECT_ID = lpi.id and cf.Partner_ = 'Y'")
.append(" left join LB_GUARANTEE_UNIT lgu on lgu.PROJECT_ID = lpi.ID")
.append(" left join (select sum(CORPUS) as income_corpus, CONTRACT_ID from lc_rent_income group by CONTRACT_ID order by null) lri on lci.id = lri.CONTRACT_ID")
.append(" where lpi.PROJECT_STATUS = '13'")
.append(" and (ci.certid in ("+certIdJoin+") or cf.certid in ("+certIdJoin+") or lgu.CERTID in ("+certIdJoin+"))")
.append(" group by lpi.id) t");
ASResultSet rsAll = Sqlca.getASResultSet(new SqlObject(allContractSql.toString()));
BigDecimal allContractMoney = BigDecimal.ZERO;
String projIds = null;
if (rsAll.next()) {
allContractMoney = rsAll.getBigDecimal("bcMoney");
projIds = rsAll.getString("proj_ids");
}
//ÏîÄ¿ÏÂʵÊÕ½ðî
BigDecimal incomeMoney = BigDecimal.ZERO;
if (StringUtils.isNotBlank(projIds)) {
String incomeMoneySql = "select ifnull(sum(corpus),0) as all_income from lc_rent_income where PROJECT_ID in ('" + projIds + "')";
ASResultSet incomeMoneyRs = Sqlca.getASResultSet(new SqlObject(incomeMoneySql));
if (incomeMoneyRs.next()) {
incomeMoney = incomeMoneyRs.getBigDecimal("all_income");
}
}
//流程中金额获取 信审初审节点 (包含当前流程)
String InFlowSql = "select sum(_money) as inFlowMoney from ( select lcct.CLEAN_LEASE_MONEY - ifnull(lcct.CAUTION_MONEY, 0) as _money from flow_object fo join lc_calc_condition_temp lcct on fo.objectno = lcct.FLOWUNID left join customer_info_temp cit on cit.flowunid = fo.objectno left join customer_family_temp cft on cft.flowunid = fo.objectno and cft.Partner_ = 'Y' left join lb_guarantee_unit_temp lgut on lgut.FLOWUNID = fo.objectno where flowno = 'BusinessApplyFlow' and phaseno not in ('1000', '8000', '0010', '1020') and isnull(lcct.CLEAN_LEASE_MONEY) = 0"
String InFlowSql = "select ifnull(sum(_money),0) as inFlowMoney from ( select lcct.CLEAN_LEASE_MONEY - ifnull(lcct.CAUTION_MONEY, 0) as _money from flow_object fo join lc_calc_condition_temp lcct on fo.objectno = lcct.FLOWUNID left join customer_info_temp cit on cit.flowunid = fo.objectno left join customer_family_temp cft on cft.flowunid = fo.objectno and cft.Partner_ = 'Y' left join lb_guarantee_unit_temp lgut on lgut.FLOWUNID = fo.objectno where flowno = 'BusinessApplyFlow' and phaseno not in ('1000', '8000', '0010', '1020') and isnull(lcct.CLEAN_LEASE_MONEY) = 0"
+ " and (cit.certid in ("+certIdJoin+") or cft.certid in ("+certIdJoin+") or lgut.CERTID in ("+certIdJoin+")) group by fo.objectno) t";
ASResultSet rsIn = Sqlca.getASResultSet(new SqlObject(InFlowSql));
BigDecimal inFlowMoney = BigDecimal.valueOf(0);
if (rsIn.next()) {
inFlowMoney = rsIn.getBigDecimal("inFlowMoney");
}
return allContractMoney.add(inFlowMoney);
return allContractMoney.subtract(incomeMoney).add(inFlowMoney);
}
}