Selaa lähdekoodia

融资管理 授信管理

peixh 3 vuotta sitten
vanhempi
commit
e25fa92190

+ 10 - 5
sc-service/src/main/java/com/huyi/service/common/companyAcc/controller/companyAccController.java

@@ -34,21 +34,26 @@ public class companyAccController extends BaseController {
     @Autowired
     private CompanyAccService companyAccService;
 
+
     /**
      * 查询核心企业还款账户
+     * @param zfpcrAccount 银行卡号
+     * @param scyId        企业id
      * @return
      */
-    @GetMapping("/list/{zfpcrAccount}")
-    public AjaxResult list(@PathVariable String zfpcrAccount) {
+    @GetMapping("/list/{zfpcrAccount}/{scyId}")
+    public AjaxResult list(@PathVariable String zfpcrAccount,@PathVariable String scyId) {
         //查询当前操作员
         LoginUser userInfo = tokenService.getLoginUser();
         SysUser use = userInfo.getSysUser();
         //获取企业
         String companyId = use.getCompanyId();
         Map map = new HashMap();
-        if (!SalaryConstants.OPEX.equals(companyId)) {
-            map.put("companyId", companyId);
-        }
+//        if (!SalaryConstants.OPEX.equals(companyId)) {
+//            map.put("companyId", companyId);
+//        }
+        //企业id
+        map.put("companyId", scyId);
         if (CommonUtil.isNotEmpty(zfpcrAccount)) {
             map.put("zfpcrAccount", zfpcrAccount);
         }

+ 6 - 1
sc-service/src/main/java/com/huyi/service/common/financeInf/controller/FinanceInfController.java

@@ -47,7 +47,8 @@ public class FinanceInfController extends BaseController {
     private IZcFinanceInfService iZcFinanceInfService;
     @Autowired
     private FinanceInfService financeInfService;
-
+    //金额
+    private static  final  String AMOUNT = "10000";
     /**
      * 查询融信 (融资用
      * @param zfrFinanceId 融信id
@@ -64,6 +65,10 @@ public class FinanceInfController extends BaseController {
         map.put("companyId",companyId);
         map.put("zfiId",zfrFinanceId);
         List<Map> list = financeInfService.selectFinanceInfList(map);
+        for (Map map1 : list){
+            String zfiAmount = CommonUtil.objToString(map1.get("zfiAmount"));
+            map1.put("zfiAmount",AmtUtil.divide(zfiAmount,AMOUNT,2));
+        }
 //        LambdaQueryWrapper<ZcFinanceInf> queryWrapper = new LambdaQueryWrapper<>();
 //        queryWrapper.eq(ZcFinanceInf::getZfiSupplierId,companyId);
 //        queryWrapper.eq(ZcFinanceInf::getZfiStatus,"02");

+ 26 - 4
sc-service/src/main/java/com/huyi/service/creditLine/controller/CreditLineController.java

@@ -59,6 +59,9 @@ public class CreditLineController extends BaseController {
     private IZcFinanceContractService iZcFinanceContractService;
 
     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}$";
+    //金额
+    private static  final  String AMOUNT = "10000";
+
      /**
      * 查询授信额度列表
      */
@@ -78,13 +81,17 @@ public class CreditLineController extends BaseController {
                   @RequestParam (required = false) Map endTime,QueryRequest request) {
         //查询当前操作员
         LoginUser userInfo = tokenService.getLoginUser();
-        SysUser use = userInfo.getSysUser();
+        SysUser user = userInfo.getSysUser();
         //获取企业
-        String companyId = use.getCompanyId();
+        String companyId = user.getCompanyId();
+        //获取企业类型
+        String companyType = user.getCompanyType();
         Map map = new HashMap();
         if (!SalaryConstants.OPEX.equals(companyId)) {
             map.put("companyId", companyId);
         }
+        //企业类型
+        map.put("companyType",companyType);
         //企业名称
         map.put("scyName",scyName);
         //授信额度范围
@@ -122,9 +129,11 @@ public class CreditLineController extends BaseController {
             //可用额度(授信额度 - 申请金额)
             String usableAmount = AmtUtil.subtract(zfpcrAmount,zfiAmount,2);
             //已使用额度
-            m.put("zfiAmount",zfiAmount);
+            m.put("zfiAmount",AmtUtil.divide(zfiAmount,AMOUNT,2));
             //可用额度
-            m.put("usableAmount",usableAmount);
+            m.put("usableAmount",AmtUtil.divide(usableAmount,AMOUNT,2));
+            //授信额度
+            m.put("zfpcrAmount",AmtUtil.divide(zfpcrAmount,AMOUNT,2));
         }
         return R.ok(list);
     }
@@ -141,6 +150,12 @@ public class CreditLineController extends BaseController {
         Map map = new HashMap();
         map.put("zfpcrId",zfpcrId);
         List<Map> list = creditLineService.selectCreditLineDetail(map);
+        for (Map map1 : list) {
+            String zfpcrAmount = map1.get("zfpcrAmount")+"";
+            String zfpcrOldAmount = CommonUtil.objToString(map.get("zfpcrOldAmount"));
+            map1.put("zfpcrAmount",AmtUtil.multiply(zfpcrAmount,AMOUNT,2));
+            map1.put("zfpcrOldAmount",AmtUtil.multiply(zfpcrOldAmount,AMOUNT,2));
+        }
         //授信合同信息关联表
         LambdaQueryWrapper<ZcFinanceQuotaConRel> queryWrapper = new LambdaQueryWrapper<>();
         queryWrapper.eq(ZcFinanceQuotaConRel::getZfqcrCreditId,zfpcrId);
@@ -183,6 +198,7 @@ public class CreditLineController extends BaseController {
         String zfpcrCompanyId = CommonUtil.objToString(map.get("zfpcrCompanyId"));
         //授信额度
         String zfpcrAmount = CommonUtil.objToString(map.get("zfpcrAmount"));
+        zfpcrAmount = AmtUtil.multiply(zfpcrAmount,AMOUNT,2);
         //利率
         String zfpcrRate =  CommonUtil.objToString(map.get("zfpcrRate"));
         //有效期
@@ -325,6 +341,8 @@ public class CreditLineController extends BaseController {
         zcFinanceProComRel.setZfpcrChargeRate(zfpcrChargeRate);
         //核心企业还款账户账号
         zcFinanceProComRel.setZfpcrAccount(zfpcrAccount);
+        //核心企业还款账户开户行
+        zcFinanceProComRel.setZfpcrAccountBank(zfpcrAccountBank);
         //融资放款方式
         zcFinanceProComRel.setZfpcrLoanType(zfpcrLoanType);
         //记账簿托管方式
@@ -375,8 +393,10 @@ public class CreditLineController extends BaseController {
         String zfpcrCompanyId = CommonUtil.objToString(map.get("zfpcrCompanyId"));
         //授信额度
         String zfpcrAmount = CommonUtil.objToString(map.get("zfpcrAmount"));
+        zfpcrAmount = AmtUtil.multiply(zfpcrAmount,AMOUNT,2);
         //原授信额度
         String zfpcrOldAmount = CommonUtil.objToString(map.get("zfpcrOldAmount"));
+        zfpcrOldAmount = AmtUtil.multiply(zfpcrOldAmount,AMOUNT,2);
         //利率
         String zfpcrRate =  CommonUtil.objToString(map.get("zfpcrRate"));
         //有效期
@@ -520,6 +540,8 @@ public class CreditLineController extends BaseController {
         zcFinanceProComRel.setZfpcrChargeRate(zfpcrChargeRate);
         //核心企业还款账户账号
         zcFinanceProComRel.setZfpcrAccount(zfpcrAccount);
+        //核心企业还款账户开户行
+        zcFinanceProComRel.setZfpcrAccountBank(zfpcrAccountBank);
         //融资放款方式
         zcFinanceProComRel.setZfpcrLoanType(zfpcrLoanType);
         //记账簿托管方式

+ 53 - 20
sc-service/src/main/java/com/huyi/service/financeRecord/controller/FinanceRecordController.java

@@ -101,6 +101,8 @@ public class FinanceRecordController extends BaseController {
 
     //正整数正则
     private static final String REGEX =  "^[0-9]*[1-9][0-9]*$";
+    //金额
+    private static  final  String AMOUNT = "10000";
 
      /**
      * 查询融资管理列表
@@ -113,13 +115,17 @@ public class FinanceRecordController extends BaseController {
                   @RequestParam (required = false) String zfrStatus,QueryRequest request) {
         //查询当前操作员
         LoginUser userInfo = tokenService.getLoginUser();
-        SysUser use = userInfo.getSysUser();
+        SysUser user = userInfo.getSysUser();
         //获取企业
-        String companyId = use.getCompanyId();
+        String companyId = user.getCompanyId();
+        //获取企业类型
+        String companyType = user.getCompanyType();
         Map map = new HashMap();
-//        if (!SalaryConstants.OPEX.equals(companyId)) {
-//            map.put("companyId", companyId);
-//        }
+        if (!SalaryConstants.OPEX.equals(companyId)) {
+            map.put("companyId", companyId);
+        }
+        //企业类型
+        map.put("companyType",companyType);
         map.put("zfrStatus",zfrStatus);
         //00:我签收的   01:我开立的
         if ("00".equals(zfrTypes)){
@@ -138,6 +144,18 @@ public class FinanceRecordController extends BaseController {
             map.put("zfrRate", zfrValue);
         }
         IPage<Map> list = financeRecordService.selectFinanceRecordList(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 zfrAmount = m.get("zfrAmount");
+            zfrAmount = AmtUtil.divide(zfrAmount,AMOUNT,2);
+            //实际放款金额
+            String zfrLoanAmount = m.get("zfrLoanAmount");
+            zfrLoanAmount = AmtUtil.divide(zfrLoanAmount,AMOUNT,2);
+            m.put("zfrAmount",zfrAmount);
+            m.put("zfrLoanAmount",zfrLoanAmount);
+        }
         return R.ok(list);
     }
 
@@ -182,7 +200,8 @@ public class FinanceRecordController extends BaseController {
             zfpcrChargeRate = AmtUtil.divide(zfpcrChargeRate,"100",4);
             needPay = AmtUtil.multiply(zfrAmount,zfpcrChargeRate,2);
         }
-        map.put("needPay",needPay);
+        map.put("needPay",AmtUtil.multiply(needPay,AMOUNT,2));
+        map.put("zfrAmount",AmtUtil.divide(zfrAmount,AMOUNT,2));
         return AjaxResult.success(map);
     }
 
@@ -221,6 +240,7 @@ public class FinanceRecordController extends BaseController {
         String zfrFinanceId = CommonUtil.objToString(map.get("zfrFinanceId"));
         //融资金额
         String zfrAmount = CommonUtil.objToString(map.get("zfrAmount"));
+        zfrAmount = AmtUtil.multiply(zfrAmount,AMOUNT,2);
         //融资收款账号
         String zfrCollectionAccount = CommonUtil.objToString(map.get("zfrCollectionAccount"));
         //融资利率
@@ -318,19 +338,26 @@ public class FinanceRecordController extends BaseController {
         //创建时间
         zcFinanceRecord.setCreateTime(createTime);
         /*-------------新增费用表--------*/
-        ZcChargeInf zcChargeInf = new ZcChargeInf();
-        //主键
-        zcChargeInf.setZciId(IdUtils.fastSimpleUUID());
-        //融资id
-        zcChargeInf.setZciFinanceId(zfrId);
-        //手续费
-        String zciAmount = AmtUtil.divide(zfpcrChargeRate,"100",4);
-        zciAmount = AmtUtil.subtract(zfrAmount,zciAmount,2);
-        zcChargeInf.setZciAmount(zciAmount);
-        //创建人
-        zcChargeInf.setCreateBy(userId);
-        //创建时间
-        zcChargeInf.setCreateTime(DateUtils.getNowDate());
+        //查询此融资是否已存在
+        LambdaQueryWrapper<ZcChargeInf> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.eq(ZcChargeInf::getZciFinanceId,zfrFinanceId);
+        int count = iZcChargeInfService.count(queryWrapper);
+        if (count == 0) {
+            ZcChargeInf zcChargeInf = new ZcChargeInf();
+            //主键
+            zcChargeInf.setZciId(IdUtils.fastSimpleUUID());
+            //融资id
+            zcChargeInf.setZciFinanceId(zfrId);
+            //手续费
+            String zciAmount = AmtUtil.divide(zfpcrChargeRate, "100", 4);
+            zciAmount = AmtUtil.subtract(zfrAmount, zciAmount, 2);
+            zcChargeInf.setZciAmount(zciAmount);
+            //创建人
+            zcChargeInf.setCreateBy(userId);
+            //创建时间
+            zcChargeInf.setCreateTime(DateUtils.getNowDate());
+            iZcChargeInfService.createZcChargeInf(zcChargeInf);
+        }
         /*----------修改融信表状态---------------*/
         ZcFinanceInf zcFinanceInf = new ZcFinanceInf();
         //融信id
@@ -342,7 +369,7 @@ public class FinanceRecordController extends BaseController {
         //修改时间
         zcFinanceInf.setUpdateTime(DateUtils.getNowDate());
         iZcFinanceInfService.updateZcFinanceInf(zcFinanceInf);
-        iZcChargeInfService.createZcChargeInf(zcChargeInf);
+
         iZcFinanceRecordService.createZcFinanceRecord(zcFinanceRecord);
         return AjaxResult.success();
     }
@@ -367,8 +394,10 @@ public class FinanceRecordController extends BaseController {
         String userId = user.getUserId() + "";
         //放款金额
         String zfrLoanAmount = CommonUtil.objToString(map.get("zfrLoanAmount"));
+        zfrLoanAmount = AmtUtil.multiply(zfrLoanAmount,AMOUNT,2);
         //融资金额
         String zfrAmount = CommonUtil.objToString(map.get("zfrAmount"));
+        zfrAmount = AmtUtil.multiply(zfrAmount,AMOUNT,2);
         //融信id
         String zfrFinanceId = CommonUtil.objToString(map.get("zfrFinanceId"));
         //授信额度
@@ -449,6 +478,10 @@ public class FinanceRecordController extends BaseController {
             map.put("billIdList",CommonUtil.listToStr4InSql(billIdList));
         }
         List<Map> list = financeRecordService.selectBillInfList(map);
+        for (Map map1 : list){
+            String zbiAmount = CommonUtil.objToString(map1.get("zbiAmount"));
+            map1.put("zbiAmount",AmtUtil.divide(zbiAmount,AMOUNT,2));
+        }
         return AjaxResult.success(list);
     }
 

+ 18 - 3
sc-service/src/main/java/com/huyi/service/financeRecord/controller/RecordSealController.java

@@ -668,8 +668,8 @@ public class RecordSealController extends BaseController {
         return AjaxResult.success();
     }
 
-    @PostMapping("/updateChargeStatus/{zfrId}")
-    public AjaxResult updateChargeStatus(@PathVariable String zfrId) throws Exception {
+    @GetMapping("/listChargeStatus/{zfrId}")
+    public AjaxResult listChargeStatus(@PathVariable("zfrId") String zfrId){
         //融资信息
         ZcFinanceRecord zcFinanceRecord = iZcFinanceRecordService.getById(zfrId);
         //融信id
@@ -682,9 +682,24 @@ public class RecordSealController extends BaseController {
         ZcFinanceProComRel zcFinanceProComRel  = iZcFinanceProComRelService.getById(coreQuotaId);
         //融资放款方式
         String loanType = zcFinanceProComRel.getZfpcrLoanType();
-        if ("1".equals(loanType) || "2".equals(loanType)){
 
+        List<ZcChargeInf> list = new ArrayList<>();
+        if ("1".equals(loanType) || "2".equals(loanType)){
+            LambdaQueryWrapper<ZcChargeInf> queryWrapper = new LambdaQueryWrapper<>();
+            queryWrapper.eq(ZcChargeInf::getZciFinanceId,zfrId);
+            list = iZcChargeInfService.findZcChargeInfs(queryWrapper);
         }
+        return AjaxResult.success(list);
+    }
+    /**
+     * 缴费状态修改
+     * @param zfrId 融资id
+     * @return
+     * @throws Exception
+     */
+    @PostMapping("/updateChargeStatus/{zfrId}")
+    public AjaxResult updateChargeStatus(@PathVariable String zfrId) throws Exception {
+
         LambdaQueryWrapper<ZcChargeInf> queryWrapper = new LambdaQueryWrapper<>();
         queryWrapper.eq(ZcChargeInf::getZciFinanceId,zfrId);
         ZcChargeInf zcChargeInf = new ZcChargeInf();

+ 1 - 1
sc-service/src/main/resources/mapper/common/FinanceInfMapper.xml

@@ -28,7 +28,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         zfi_cfca_supplier_no                          'zfiCfcaSupplierNo',
         zfi_status                                    'zfiStatus',
         zfpcr_rate 		                              'zfpcrRate',
-        zfpcr_loan_type 	                          'zfpcrLoantype',
+        zfpcr_loan_type 	                          'zfpcrLoanType',
         zfpcr_charge_rate                             'zfpcrChargeRate'
         FROM
         zc_finance_inf

+ 4 - 1
sc-service/src/main/resources/mapper/creditLine/CreditLineMapper.xml

@@ -29,9 +29,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         LEFT JOIN sys_company c
         ON c.scy_id = r.`zfpcr_company_id`
         WHERE 1=1
-        <if test="paramMap.companyId != null  and paramMap.companyId != ''">
+        <if test="paramMap.companyType == 01">
             and r.zfpcr_company_id =  #{paramMap.companyId}
         </if>
+        <if test="paramMap.companyType == 03">
+            and p.zfp_management_id =  #{paramMap.companyId}
+        </if>
         <if test="paramMap.scyName != null  and paramMap.scyName != ''">
             and c.scy_name like concat('%', #{paramMap.scyName}, '%')
         </if>

+ 17 - 5
sc-service/src/main/resources/mapper/financeRecord/FinanceRecordMapper.xml

@@ -18,6 +18,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             r.zfr_status          'zfrStatus',
             r.zfr_finance_id      'zfrFinanceId',
             r.zfr_approve_stt     'zfrApproveStt',
+            r.zfr_loan_amount     'zfrLoanAmount',
             i.zfi_id              'zfiId',
             i.zfi_number          'zfiNumner',
             i.zfi_core_id         'zfiCoreId',
@@ -31,16 +32,27 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         FROM
         zc_finance_record r
         LEFT JOIN zc_finance_inf i
-        ON i.zfi_id = r.zfr_finance_id
+            ON i.zfi_id = r.zfr_finance_id
         LEFT JOIN zc_finance_pro_com_rel p
-        ON i.zfi_core_quota_id =  p.zfpcr_id
+            ON i.zfi_core_quota_id =  p.zfpcr_id
+        LEFT JOIN zc_finance_product f
+            ON f.zfp_id = p.zfpcr_product_id
         LEFT JOIN sys_company s
-        ON i.zfi_core_id = s.scy_id
+            ON i.zfi_core_id = s.scy_id
         LEFT JOIN sys_company c
-        ON i.zfi_supplier_id = c.scy_id
+            ON i.zfi_supplier_id = c.scy_id
         left join sys_user u
-        on r.zfr_handler = u.user_id
+            ON r.zfr_handler = u.user_id
         WHERE 1 = 1
+        <if test="paramMap.companyType == 01">
+            and i.zfi_core_id = #{paramMap.companyId}
+        </if>
+        <if test="paramMap.companyType == 02">
+            and i.zfi_supplier_id = #{paramMap.companyId}
+        </if>
+        <if test="paramMap.companyType == 03">
+            and f.zfp_management_id = #{paramMap.companyId}
+        </if>
         <if test="paramMap.zfrStatus != null  and paramMap.zfrStatus != ''">
             and r.zfr_status = #{paramMap.zfrStatus}
         </if>