|
@@ -3,14 +3,8 @@ package com.huyi.service.creditLine.controller;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
-import com.huyi.service.base.entity.ZcFinanceContract;
|
|
|
-import com.huyi.service.base.entity.ZcFinanceInf;
|
|
|
-import com.huyi.service.base.entity.ZcFinanceProComRel;
|
|
|
-import com.huyi.service.base.entity.ZcFinanceQuotaConRel;
|
|
|
-import com.huyi.service.base.service.IZcFinanceContractService;
|
|
|
-import com.huyi.service.base.service.IZcFinanceInfService;
|
|
|
-import com.huyi.service.base.service.IZcFinanceProComRelService;
|
|
|
-import com.huyi.service.base.service.IZcFinanceQuotaConRelService;
|
|
|
+import com.huyi.service.base.entity.*;
|
|
|
+import com.huyi.service.base.service.*;
|
|
|
import com.huyi.service.creditLine.service.CreditLineService;
|
|
|
import com.keao.tianhu.starter.mybatis.plus.entity.QueryRequest;
|
|
|
import com.tianhu.common.core.constant.SalaryConstants;
|
|
@@ -57,7 +51,8 @@ public class CreditLineController extends BaseController {
|
|
|
private IZcFinanceQuotaConRelService iZcFinanceQuotaConRelService;
|
|
|
@Autowired
|
|
|
private IZcFinanceContractService iZcFinanceContractService;
|
|
|
-
|
|
|
+ @Autowired
|
|
|
+ private IZcFinanceSupplierQuotaService iZcFinanceSupplierQuotaService;
|
|
|
public final static String REGEX = "^\\d\\.([0-9]{1,2}|[0-9][0-9])$|^[0-9]\\d{0,1}(\\.\\d{1,2}){0,1}$|^100(\\.0{1,2}){0,1}$";
|
|
|
|
|
|
/**
|
|
@@ -65,8 +60,8 @@ public class CreditLineController extends BaseController {
|
|
|
*/
|
|
|
@PreAuthorize(hasPermi = "credit:line:list")
|
|
|
@GetMapping("/list")
|
|
|
- public R list(//企业名称
|
|
|
- @RequestParam(required=false) String scyName,
|
|
|
+ public R list(//资金方名称
|
|
|
+ @RequestParam(required=false) String rzScyName,
|
|
|
//授信额度范围
|
|
|
@RequestParam (required=false) String AmountA,
|
|
|
//授信额度范围
|
|
@@ -78,7 +73,9 @@ public class CreditLineController extends BaseController {
|
|
|
//结束日期
|
|
|
@RequestParam (required = false) Map endTime,
|
|
|
//授信类型(融资产品类型)
|
|
|
- @RequestParam (required = false) String zfpType,QueryRequest request) {
|
|
|
+ @RequestParam (required = false) String zfpType,
|
|
|
+ //融资产品
|
|
|
+ @RequestParam (required = false) String zfpName,QueryRequest request) {
|
|
|
//查询当前操作员
|
|
|
LoginUser userInfo = tokenService.getLoginUser();
|
|
|
SysUser user = userInfo.getSysUser();
|
|
@@ -93,7 +90,7 @@ public class CreditLineController extends BaseController {
|
|
|
//企业类型
|
|
|
map.put("companyType",companyType);
|
|
|
//企业名称
|
|
|
- map.put("scyName",scyName);
|
|
|
+ map.put("rzScyName",rzScyName);
|
|
|
//授信额度范围
|
|
|
if (CommonUtil.isNotEmpty(AmountA)) {
|
|
|
map.put("AmountA", CommonUtil.objToBigDecimal(AmountA));
|
|
@@ -111,39 +108,84 @@ public class CreditLineController extends BaseController {
|
|
|
map.put("endTimeB",endTime.get("endTime[1]"));
|
|
|
//授信类型(融资产品类型)
|
|
|
map.put("zfpType",zfpType);
|
|
|
- IPage<Map> list = creditLineService.selectCreditLineList(map, request);
|
|
|
- List listAll = list.getRecords();
|
|
|
- for (int j = 0; j < listAll.size(); j++) {
|
|
|
- Map<String,String> m = (Map<String, String>) listAll.get(j);
|
|
|
- //授信额度
|
|
|
- String zfpcrAmount = m.get("zfpcrAmount");
|
|
|
- //授信id
|
|
|
- String zfpcrId = m.get("zfpcrId");
|
|
|
- //融资产品
|
|
|
- String zfpcrProductId = m.get("zfpcrProductId");
|
|
|
- //通过融资产品查询融信表申请金额
|
|
|
- QueryWrapper<ZcFinanceInf> queryWrapper = new QueryWrapper<>();
|
|
|
- //融资产品id
|
|
|
- queryWrapper.in("zfi_core_quota_id",zfpcrId);
|
|
|
- //状态(00:待确权 01:待签收 02:已生效 03:已失效 04:融资中 05:已融资)
|
|
|
- queryWrapper.and(i -> i.ne("zfi_status","00").or().ne("zfi_status","03"));
|
|
|
- queryWrapper.select("IFNULL(CAST(ROUND(SUM(zfi_amount),2)AS CHAR),'0.00') AS zfiAmount");
|
|
|
- ZcFinanceInf zcFinanceInf = zcFinanceInfService.getOne(queryWrapper);
|
|
|
- //申请金额(已用)
|
|
|
- String zfiAmount = "0.00";
|
|
|
- if (zcFinanceInf != null){
|
|
|
- zfiAmount = zcFinanceInf.getZfiAmount();
|
|
|
+ //融资产品类型
|
|
|
+ map.put("zfpName",zfpName);
|
|
|
+ if ("02".equals(companyType)){
|
|
|
+ IPage<Map> list = creditLineService.selectSupplierCreditList(map, request);
|
|
|
+ List listAll = list.getRecords();
|
|
|
+ for (int j = 0; j < listAll.size(); j++) {
|
|
|
+ Map<String, String> m = (Map<String, String>) listAll.get(j);
|
|
|
+ //授信额度
|
|
|
+ String zfsqAmount = m.get("zfsqAmount");
|
|
|
+ //授信id
|
|
|
+ String zfsqId = m.get("zfsqId");
|
|
|
+ //通过融资产品查询融信表申请金额
|
|
|
+ QueryWrapper<ZcFinanceInf> queryWrapper = new QueryWrapper<>();
|
|
|
+ //授信id
|
|
|
+ queryWrapper.in("zfi_supplier_quota_id", zfsqId);
|
|
|
+ //状态(00:待确权 01:待签收 02:已生效 03:已失效 04:融资中 05:已融资)
|
|
|
+ queryWrapper.and(i -> i.ne("zfi_status", "00").or().ne("zfi_status", "03"));
|
|
|
+ queryWrapper.select("IFNULL(CAST(ROUND(SUM(zfi_amount),2)AS CHAR),'0.00') AS zfiAmount");
|
|
|
+ ZcFinanceInf zcFinanceInf = zcFinanceInfService.getOne(queryWrapper);
|
|
|
+ //申请金额(已用)
|
|
|
+ String zfiAmount = "0.00";
|
|
|
+ if (zcFinanceInf != null) {
|
|
|
+ zfiAmount = zcFinanceInf.getZfiAmount();
|
|
|
+ }
|
|
|
+ //可用额度(授信额度 - 申请金额)
|
|
|
+ String usableAmount = AmtUtil.subtract(zfsqAmount, zfiAmount, 2);
|
|
|
+ //已使用额度
|
|
|
+ m.put("zfiAmount", zfiAmount);
|
|
|
+ //可用额度
|
|
|
+ m.put("usableAmount", usableAmount);
|
|
|
+ //企业类型
|
|
|
+ m.put("companyType", companyType);
|
|
|
}
|
|
|
- //可用额度(授信额度 - 申请金额)
|
|
|
- String usableAmount = AmtUtil.subtract(zfpcrAmount,zfiAmount,2);
|
|
|
- //已使用额度
|
|
|
- m.put("zfiAmount",zfiAmount);
|
|
|
- //可用额度
|
|
|
- m.put("usableAmount",usableAmount);
|
|
|
- //企业类型
|
|
|
- m.put("companyType",companyType);
|
|
|
- }
|
|
|
- return R.ok(list);
|
|
|
+ return R.ok(list);
|
|
|
+ }else {
|
|
|
+ IPage<Map> list = creditLineService.selectCreditLineList(map, request);
|
|
|
+ List listAll = list.getRecords();
|
|
|
+ for (int j = 0; j < listAll.size(); j++) {
|
|
|
+ Map<String, String> m = (Map<String, String>) listAll.get(j);
|
|
|
+ //授信额度
|
|
|
+ String zfpcrAmount = m.get("zfpcrAmount");
|
|
|
+ //授信id
|
|
|
+ String zfpcrId = m.get("zfpcrId");
|
|
|
+ //融资产品
|
|
|
+ String zfpcrProductId = m.get("zfpcrProductId");
|
|
|
+ //通过融资产品查询融信表申请金额
|
|
|
+ QueryWrapper<ZcFinanceInf> queryWrapper = new QueryWrapper<>();
|
|
|
+ //授信id
|
|
|
+ queryWrapper.in("zfi_core_quota_id", zfpcrId);
|
|
|
+ //状态(00:待确权 01:待签收 02:已生效 03:已失效 04:融资中 05:已融资)
|
|
|
+ queryWrapper.and(i -> i.ne("zfi_status", "00").or().ne("zfi_status", "03"));
|
|
|
+ queryWrapper.select("IFNULL(CAST(ROUND(SUM(zfi_amount),2)AS CHAR),'0.00') AS zfiAmount");
|
|
|
+ ZcFinanceInf zcFinanceInf = zcFinanceInfService.getOne(queryWrapper);
|
|
|
+ //申请金额(已用)
|
|
|
+ String zfiAmount = "0.00";
|
|
|
+ if (zcFinanceInf != null) {
|
|
|
+ zfiAmount = zcFinanceInf.getZfiAmount();
|
|
|
+ }
|
|
|
+ //可用额度(授信额度 - 申请金额)
|
|
|
+ String usableAmount = AmtUtil.subtract(zfpcrAmount, zfiAmount, 2);
|
|
|
+ //查询核心企业授信额度ID下的供应商授信额度总和
|
|
|
+ QueryWrapper<ZcFinanceSupplierQuota> supplierQueryWrapper = new QueryWrapper<>();
|
|
|
+ supplierQueryWrapper.eq("zfsq_core_quota_id", zfpcrId);
|
|
|
+ supplierQueryWrapper.select("IFNULL(CAST(ROUND(SUM(zfsq_amount),2)AS CHAR),'0.00') AS zfsqAmount");
|
|
|
+ ZcFinanceSupplierQuota supplierQuota = iZcFinanceSupplierQuotaService.getOne(supplierQueryWrapper);
|
|
|
+ //供应商已使用额度总和
|
|
|
+ String totalAmount = supplierQuota.getZfsqAmount();
|
|
|
+ //已使用额度
|
|
|
+ m.put("zfiAmount", zfiAmount);
|
|
|
+ //可用额度
|
|
|
+ m.put("usableAmount", usableAmount);
|
|
|
+ //企业类型
|
|
|
+ m.put("companyType", companyType);
|
|
|
+ //供应商授信额度
|
|
|
+ m.put("supplierAmount", totalAmount);
|
|
|
+ }
|
|
|
+ return R.ok(list);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
/**
|