Browse Source

平台核心企业统计接口优化

dudm 3 năm trước cách đây
mục cha
commit
7dcfe5f4d4

+ 522 - 0
sc-service/src/main/java/com/huyi/service/common/report/controller/ReportCompanyController.java

@@ -0,0 +1,522 @@
+package com.huyi.service.common.report.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.huyi.service.common.report.service.ReportCompanyService;
+import com.huyi.service.common.report.service.ReportCreditService;
+import com.keao.tianhu.starter.mybatis.plus.entity.QueryRequest;
+import com.tianhu.common.core.utils.AmtUtil;
+import com.tianhu.common.core.utils.CommonUtil;
+import com.tianhu.common.core.utils.DateUtils;
+import com.tianhu.common.core.web.controller.BaseController;
+import com.tianhu.common.core.web.domain.AjaxResult;
+import com.tianhu.common.security.service.TokenService;
+import com.tianhu.system.api.domain.SysUser;
+import com.tianhu.system.api.model.LoginUser;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.*;
+
+
+/**
+ * 统计管理 -- 入驻企业
+ * @author dudm@minpay.cc
+ * 2021-08-30
+ */
+@RestController
+@RequestMapping("/report/company")
+public class ReportCompanyController extends BaseController {
+    @Autowired
+    private TokenService tokenService;
+    @Autowired
+    private ReportCreditService reportCreditService;
+    @Autowired
+    private ReportCompanyService reportCompanyService;
+
+    /**
+     * 企业类型 00平台
+     */
+    private static String COMPANYTYPE_TERRACE = "00";
+
+    /**
+     * 时间维度类型 00周
+     */
+    private static String DATE_WEEK = "00";
+
+    /**
+     * 时间维度类型 01月
+     */
+    private static String DATE_MONTH = "01";
+
+    /**
+     * 时间维度类型 02季度
+     */
+    private static String DATE_QUARTER = "02";
+
+    /**
+     * 时间维度类型 03半年
+     */
+    private static String DATE_HALF = "03";
+
+    /**
+     * 时间维度类型 04年
+     */
+    private static String DATE_YEAR = "04";
+
+    /**
+     * 类型 00注册数量
+     */
+    private static String TYPE_REGISTER = "00";
+
+    /**
+     * 类型 01入驻企业数量
+     */
+    private static String TYPE_COMPANY = "01";
+
+    /**
+     * 类型 02入驻供应商数量
+     */
+    private static String TYPE_COMPANY_SUPPLIER = "02";
+
+    /**
+     * 类型 03融资供应商数量
+     */
+    private static String TYPE_FINANCE_SUPPLIER = "03";
+
+    /**
+     * 类型 04融资供应商数量
+     */
+    private static String TYPE_COMPANY_CORE = "04";
+
+    /**
+     * 类型 05融资供应商数量
+     */
+    private static String TYPE_FINANCE_CORE = "05";
+
+    /**
+     * 类型 06授信额度
+     */
+    private static String TYPE_CREDIT_AMOUNT = "06";
+
+    /**
+     * 类型 07融资产品数量
+     */
+    private static String TYPE_PRODUCT_NUM = "07";
+
+    /**
+     * 类型 08融资开立数量
+     */
+    private static String TYPE_LOAN_NUM = "08";
+
+    /**
+     * 类型 09融资开立金额
+     */
+    private static String TYPE_LOAN_AMOUNT = "09";
+
+    /**
+     * 类型 10融信融资次数
+     */
+    private static String TYPE_FINANCE_NUM = "10";
+
+    /**
+     * 类型 10融信融资金额
+     */
+    private static String TYPE_FINANCE_AMOUNT = "11";
+
+    /**
+     * 查询注册数量
+     * @return
+     */
+    @GetMapping("/getRegisterNum")
+    public AjaxResult getRegisterNum()
+    {
+        //获取当前企业的编号
+        LoginUser userInfo = tokenService.getLoginUser();
+        SysUser use = userInfo.getSysUser();
+        Map<String,String> map = new HashMap<>();
+        //获取企业
+        String companyId = use.getCompanyId();
+        //获取企业类型
+        String type = use.getCompanyType();
+        //数量
+        String num = "0";
+        if(COMPANYTYPE_TERRACE.equals(type)){
+            //平台
+            num =  reportCompanyService.getRegisterNum(map);
+        }
+        Map m = new HashMap();
+        m.put("num",num);
+        return AjaxResult.success(m);
+    }
+
+    /**
+     * 查询入驻企业数量
+     * @param type  企业类型
+     * @return
+     */
+    @GetMapping("/getCompanyNum")
+    public AjaxResult getCompanyNum(String type)
+    {
+        //获取当前企业的编号
+        LoginUser userInfo = tokenService.getLoginUser();
+        SysUser use = userInfo.getSysUser();
+        Map<String,String> map = new HashMap<>();
+        //获取企业
+        String companyId = use.getCompanyId();
+        //获取企业类型
+        String companyType = use.getCompanyType();
+        //数量
+        String num = "0";
+        if(COMPANYTYPE_TERRACE.equals(companyType)){
+            //平台
+            //企业类型
+            map.put("type",type);
+            num =  reportCompanyService.getCompanyNum(map);
+        }
+        Map m = new HashMap();
+        m.put("num",num);
+        return AjaxResult.success(m);
+    }
+
+    /**
+     * 查询已融资供应商数量
+     * @return
+     */
+    @GetMapping("/getFinanceSupplier")
+    public AjaxResult getFinanceSupplier()
+    {
+        //获取当前企业的编号
+        LoginUser userInfo = tokenService.getLoginUser();
+        SysUser use = userInfo.getSysUser();
+        Map<String,String> map = new HashMap<>();
+        //获取企业
+        String companyId = use.getCompanyId();
+        //获取企业类型
+        String type = use.getCompanyType();
+        //数量
+        String num = "0";
+        if(COMPANYTYPE_TERRACE.equals(type)){
+            //平台
+            num =  reportCompanyService.getFinanceSupplier(map);
+        }
+        Map m = new HashMap();
+        m.put("num",num);
+        return AjaxResult.success(m);
+    }
+
+    /**
+     * 查询已签发业务核心企业数量
+     * @return
+     */
+    @GetMapping("/getFinanceCore")
+    public AjaxResult getFinanceCore()
+    {
+        //获取当前企业的编号
+        LoginUser userInfo = tokenService.getLoginUser();
+        SysUser use = userInfo.getSysUser();
+        Map<String,String> map = new HashMap<>();
+        //获取企业
+        String companyId = use.getCompanyId();
+        //获取企业类型
+        String type = use.getCompanyType();
+        //数量
+        String num = "0";
+        if(COMPANYTYPE_TERRACE.equals(type)){
+            //平台
+            num =  reportCompanyService.getFinanceCore(map);
+        }
+        Map m = new HashMap();
+        m.put("num",num);
+        return AjaxResult.success(m);
+    }
+
+    /**
+     * 查询融信开立数量
+     * @return
+     */
+    @GetMapping("/getFinanceRecordNum")
+    public AjaxResult getFinanceRecordNum()
+    {
+        //获取当前企业的编号
+        LoginUser userInfo = tokenService.getLoginUser();
+        SysUser use = userInfo.getSysUser();
+        Map<String,String> map = new HashMap<>();
+        //获取企业
+        String companyId = use.getCompanyId();
+        //获取企业类型
+        String type = use.getCompanyType();
+        //数量
+        String num = "0";
+        if(COMPANYTYPE_TERRACE.equals(type)){
+            //平台
+            num =  reportCompanyService.getFinanceRecordNum(map);
+        }
+        Map m = new HashMap();
+        m.put("num",num);
+        return AjaxResult.success(m);
+    }
+
+    /**
+     * 融资产品数量
+     * @return
+     */
+    @GetMapping("/getFinanceProductNum")
+    public AjaxResult getFinanceProductNum()
+    {
+        //获取当前企业的编号
+        LoginUser userInfo = tokenService.getLoginUser();
+        SysUser use = userInfo.getSysUser();
+        Map<String,String> map = new HashMap<>();
+        //获取企业
+        String companyId = use.getCompanyId();
+        //获取企业类型
+        String type = use.getCompanyType();
+        //数量
+        String num = "0";
+        if(COMPANYTYPE_TERRACE.equals(type)){
+            //平台
+            num =  reportCompanyService.getFinanceProductNum(map);
+        }
+        Map m = new HashMap();
+        m.put("num",num);
+        return AjaxResult.success(m);
+    }
+
+    /**
+     * 融资数量
+     * @return
+     */
+    @GetMapping("/getFinanceNum")
+    public AjaxResult getFinanceNum()
+    {
+        //获取当前企业的编号
+        LoginUser userInfo = tokenService.getLoginUser();
+        SysUser use = userInfo.getSysUser();
+        Map<String,String> map = new HashMap<>();
+        //获取企业
+        String companyId = use.getCompanyId();
+        //获取企业类型
+        String type = use.getCompanyType();
+        //数量
+        String num = "0";
+        if(COMPANYTYPE_TERRACE.equals(type)){
+            //平台
+            num =  reportCompanyService.getFinanceNum(map);
+        }
+        Map m = new HashMap();
+        m.put("num",num);
+        return AjaxResult.success(m);
+    }
+
+    /**
+     * 用户数据统计 -- 柱状图
+     * @param type      数据类型
+     * @param dateType  时间维度类型
+     * @param dates     时间范围
+     * @return
+     */
+    @GetMapping("/getCompanyReport")
+    public AjaxResult getCompanyReport(String type,String dateType,List dates)
+    {
+        //获取当前企业的编号
+        LoginUser userInfo = tokenService.getLoginUser();
+        SysUser use = userInfo.getSysUser();
+        Map<String,String> map = new HashMap<>();
+        //获取企业
+        String companyId = use.getCompanyId();
+        //获取企业类型
+        String companyType = use.getCompanyType();
+        //平台
+        if(!COMPANYTYPE_TERRACE.equals(companyType)){
+            return AjaxResult.success();
+        }
+        //月份集合
+        List<String> dateList = getMonth();
+        if(DATE_WEEK.equals(dateType)){
+            //周
+
+        }else if(DATE_MONTH.equals(dateType)){
+            //月
+
+        }else if(DATE_QUARTER.equals(dateType)){
+            //季度
+
+        }else if(DATE_HALF.equals(dateType)){
+            //半年
+
+        }else if(DATE_YEAR.equals(dateType)){
+            //年
+
+        }
+        //数据集合
+        List<Map> dataList = new ArrayList<>();
+        //数量集合
+        List<String> data = new ArrayList<>();
+        for (String date : dateList) {
+            //数量
+            String num = "0";
+            if(TYPE_REGISTER.equals(type)){
+                //平台注册
+                num =  reportCompanyService.getRegisterNum(map);
+            }else if(TYPE_COMPANY.equals(type)){
+                //入驻企业
+                num =  reportCompanyService.getCompanyNum(map);
+            }else if(TYPE_COMPANY_SUPPLIER.equals(type)){
+                map.put("type","02");
+                //入住供应商
+                num =  reportCompanyService.getCompanyNum(map);
+            }else if(TYPE_FINANCE_SUPPLIER.equals(type)){
+                //融资供应商
+                num =  reportCompanyService.getFinanceSupplier(map);
+            }else if(TYPE_COMPANY_CORE.equals(type)){
+                map.put("type","01");
+                //入住核心企业
+                num =  reportCompanyService.getCompanyNum(map);
+            }else if(TYPE_FINANCE_CORE.equals(type)){
+                //签立业务核心企业
+                num =  reportCompanyService.getFinanceCore(map);
+            }
+            data.add(num);
+        }
+        //开立额度数据对象
+        Map dataMap = new HashMap();
+        dataMap.put("name","数量");
+        dataMap.put("data",data);
+        dataList.add(dataMap);
+        Map result = new HashMap();
+        result.put("dataList",dataList);
+        result.put("dateList",dateList);
+        return AjaxResult.success(result);
+    }
+
+    /**
+     * 业务数据统计 -- 柱状图
+     * @param type          数据类型
+     * @param dateType      时间维度类型
+     * @param dates         时间范围
+     * @param companyId     资方
+     * @param productId     融资产品
+     * @return
+     */
+    @GetMapping("/getFinanceReport")
+    public AjaxResult getFinanceReport(String type,String dateType,List dates,String companyId,String productId)
+    {
+        //获取当前企业的编号
+        LoginUser userInfo = tokenService.getLoginUser();
+        SysUser use = userInfo.getSysUser();
+        Map<String,String> map = new HashMap<>();
+        //资方
+        map.put("managementCompanyId",companyId);
+        //融资产品
+        map.put("productId",productId);
+        //获取企业类型
+        String companyType = use.getCompanyType();
+        //平台
+        if(!COMPANYTYPE_TERRACE.equals(companyType)){
+            return AjaxResult.success();
+        }
+        //月份集合
+        List<String> dateList = getMonth();
+        if(DATE_WEEK.equals(dateType)){
+            //周
+
+        }else if(DATE_MONTH.equals(dateType)){
+            //月
+
+        }else if(DATE_QUARTER.equals(dateType)){
+            //季度
+
+        }else if(DATE_HALF.equals(dateType)){
+            //半年
+
+        }else if(DATE_YEAR.equals(dateType)){
+            //年
+
+        }
+        //数据集合
+        List<Map> dataList = new ArrayList<>();
+        //数量集合
+        List<String> data = new ArrayList<>();
+        for (String date : dateList) {
+            //数量
+            String num = "0";
+            if(TYPE_CREDIT_AMOUNT.equals(type)){
+                //授信额度
+                num =  reportCreditService.getCreditLineAll(map);
+            }else if(TYPE_PRODUCT_NUM.equals(type)){
+                //融资产品数量
+                num =  reportCompanyService.getFinanceProductNum(map);
+            }else if(TYPE_LOAN_NUM.equals(type)){
+                //融资开立数量
+                num =  reportCompanyService.getFinanceRecordNum(map);
+            }else if(TYPE_LOAN_AMOUNT.equals(type)){
+                //融资开立金额
+                num =  reportCreditService.financeRecordMonth(map);
+            }else if(TYPE_FINANCE_NUM.equals(type)){
+                //融信融资次数
+                num =  reportCompanyService.getFinanceNum(map);
+            }else if(TYPE_FINANCE_AMOUNT.equals(type)){
+                //融信融资金额
+                num =  reportCreditService.getFinancedBalance(map);
+            }
+            data.add(num);
+        }
+        //开立额度数据对象
+        Map dataMap = new HashMap();
+        dataMap.put("name","数量");
+        dataMap.put("data",data);
+        dataList.add(dataMap);
+        Map result = new HashMap();
+        result.put("dataList",dataList);
+        result.put("dateList",dateList);
+        return AjaxResult.success(result);
+    }
+
+    /**
+     * 获取月份集合
+     * @return
+     */
+    public List<String> getMonth(){
+        List<String> dateList = new ArrayList<>();
+        //循环添加所有月份
+        for(int i = 1; i < 13; i++){
+            dateList.add(i + "月");
+        }
+        return dateList;
+    }
+
+    /**
+     * 获取某时间段内的每一天
+     * @param begintTime 	开始日期
+     * @param endTime 		结束日期
+     * @return
+     * @throws ParseException
+     */
+    public static List<String> findDaysStr(String begintTime, String endTime) {
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+        Date dBegin = null;
+        Date dEnd = null;
+        try {
+            dBegin = sdf.parse(begintTime);
+            dEnd = sdf.parse(endTime);
+        } catch (ParseException e) {
+            e.printStackTrace();
+        }
+        List<String> daysStrList = new ArrayList<String>();
+        daysStrList.add(sdf.format(dBegin));
+        Calendar calBegin = Calendar.getInstance();
+        calBegin.setTime(dBegin);
+        Calendar calEnd = Calendar.getInstance();
+        calEnd.setTime(dEnd);
+        while (dEnd.after(calBegin.getTime())) {
+            calBegin.add(Calendar.DAY_OF_MONTH, 1);
+            String dayStr = sdf.format(calBegin.getTime());
+            daysStrList.add(dayStr);
+        }
+        return daysStrList;
+    }
+}

+ 238 - 33
sc-service/src/main/java/com/huyi/service/common/report/controller/ReportCreditController.java

@@ -59,7 +59,7 @@ public class ReportCreditController extends BaseController {
      * @return
      * @return
      */
      */
     @GetMapping("/getCreditLineAll")
     @GetMapping("/getCreditLineAll")
-    public AjaxResult getCreditLineAll()
+    public AjaxResult getCreditLineAll(String zfpType)
     {
     {
         //获取当前企业的编号
         //获取当前企业的编号
         LoginUser userInfo = tokenService.getLoginUser();
         LoginUser userInfo = tokenService.getLoginUser();
@@ -69,6 +69,10 @@ public class ReportCreditController extends BaseController {
         String companyId = use.getCompanyId();
         String companyId = use.getCompanyId();
         //获取企业类型
         //获取企业类型
         String type = use.getCompanyType();
         String type = use.getCompanyType();
+        //默认反向
+        if(CommonUtil.isEmpty(zfpType)){
+            zfpType = "1";
+        }
         //融信额度
         //融信额度
         String allAmount = "0";
         String allAmount = "0";
         if(COMPANYTYPE_TERRACE.equals(type)){
         if(COMPANYTYPE_TERRACE.equals(type)){
@@ -77,9 +81,11 @@ public class ReportCreditController extends BaseController {
         }else if(COMPANYTYPE_CORE.equals(type)){
         }else if(COMPANYTYPE_CORE.equals(type)){
             //核心企业
             //核心企业
             map.put("coreCompanyId", companyId);
             map.put("coreCompanyId", companyId);
+            map.put("zfpType", zfpType);
             allAmount =  reportCreditService.getCreditLineAll(map);
             allAmount =  reportCreditService.getCreditLineAll(map);
         }else if(COMPANYTYPE_SUPPLIER.equals(type)){
         }else if(COMPANYTYPE_SUPPLIER.equals(type)){
             //供应商
             //供应商
+            map.put("zfpType", zfpType);
             map.put("supplierCompanyId", companyId);
             map.put("supplierCompanyId", companyId);
             allAmount =  reportCreditService.getSupplierCreditLineAll(map);
             allAmount =  reportCreditService.getSupplierCreditLineAll(map);
         }else if(COMPANYTYPE_MANAGEMENT.equals(type)){
         }else if(COMPANYTYPE_MANAGEMENT.equals(type)){
@@ -97,7 +103,7 @@ public class ReportCreditController extends BaseController {
      * @return
      * @return
      */
      */
     @GetMapping("/getAvailableBalance")
     @GetMapping("/getAvailableBalance")
-    public AjaxResult getAvailableBalance()
+    public AjaxResult getAvailableBalance(String zfpType)
     {
     {
         //获取当前企业的编号
         //获取当前企业的编号
         LoginUser userInfo = tokenService.getLoginUser();
         LoginUser userInfo = tokenService.getLoginUser();
@@ -105,6 +111,11 @@ public class ReportCreditController extends BaseController {
         Map<String,String> map = new HashMap<>();
         Map<String,String> map = new HashMap<>();
         //获取企业
         //获取企业
         String companyId = use.getCompanyId();
         String companyId = use.getCompanyId();
+        //默认反向
+        if(CommonUtil.isEmpty(zfpType)){
+            zfpType = "1";
+        }
+        map.put("zfpType", zfpType);
         //获取企业类型
         //获取企业类型
         String type = use.getCompanyType();
         String type = use.getCompanyType();
         if(COMPANYTYPE_CORE.equals(type)){
         if(COMPANYTYPE_CORE.equals(type)){
@@ -124,6 +135,228 @@ public class ReportCreditController extends BaseController {
     }
     }
 
 
     /**
     /**
+     * 企业生效中额度
+     * @return
+     */
+    @GetMapping("/getEffectBalance")
+    public AjaxResult getEffectBalance(String zfpType)
+    {
+        //获取当前企业的编号
+        LoginUser userInfo = tokenService.getLoginUser();
+        SysUser use = userInfo.getSysUser();
+        Map<String,String> map = new HashMap<>();
+        //获取企业
+        String companyId = use.getCompanyId();
+        //默认反向
+        if(CommonUtil.isEmpty(zfpType)){
+            zfpType = "1";
+        }
+        map.put("zfpType", zfpType);
+        //获取企业类型
+        String type = use.getCompanyType();
+        if(COMPANYTYPE_CORE.equals(type)){
+            //核心企业
+            map.put("coreCompanyId", companyId);
+        }else if(COMPANYTYPE_SUPPLIER.equals(type)){
+            //供应商
+            map.put("supplierCompanyId", companyId);
+        }else if(COMPANYTYPE_MANAGEMENT.equals(type)){
+            //资金方
+            map.put("managementCompanyId", companyId);
+        }
+        String allAmount =  reportCreditService.getEffectBalance(map);
+        Map m = new HashMap();
+        m.put("allAmount",allAmount);
+        return AjaxResult.success(m);
+    }
+
+    /**
+     * 企业已放款额度
+     * @return
+     */
+    @GetMapping("/getLoanBalance")
+    public AjaxResult getLoanBalance(String zfpType)
+    {
+        //获取当前企业的编号
+        LoginUser userInfo = tokenService.getLoginUser();
+        SysUser use = userInfo.getSysUser();
+        Map<String,String> map = new HashMap<>();
+        //获取企业
+        String companyId = use.getCompanyId();
+        //默认反向
+        if(CommonUtil.isEmpty(zfpType)){
+            zfpType = "1";
+        }
+        map.put("zfpType", zfpType);
+        //获取企业类型
+        String type = use.getCompanyType();
+        if(COMPANYTYPE_CORE.equals(type)){
+            //核心企业
+            map.put("coreCompanyId", companyId);
+        }else if(COMPANYTYPE_SUPPLIER.equals(type)){
+            //供应商
+            map.put("supplierCompanyId", companyId);
+        }else if(COMPANYTYPE_MANAGEMENT.equals(type)){
+            //资金方
+            map.put("managementCompanyId", companyId);
+        }
+        String allAmount =  reportCreditService.getLoanBalance(map);
+        Map m = new HashMap();
+        m.put("allAmount",allAmount);
+        return AjaxResult.success(m);
+    }
+
+    /**
+     * 企业已还款额度
+     * @return
+     */
+    @GetMapping("/getReturnBalance")
+    public AjaxResult getReturnBalance(String zfpType)
+    {
+        //获取当前企业的编号
+        LoginUser userInfo = tokenService.getLoginUser();
+        SysUser use = userInfo.getSysUser();
+        Map<String,String> map = new HashMap<>();
+        //获取企业
+        String companyId = use.getCompanyId();
+        //默认反向
+        if(CommonUtil.isEmpty(zfpType)){
+            zfpType = "1";
+        }
+        map.put("zfpType", zfpType);
+        //获取企业类型
+        String type = use.getCompanyType();
+        if(COMPANYTYPE_CORE.equals(type)){
+            //核心企业
+            map.put("coreCompanyId", companyId);
+        }else if(COMPANYTYPE_SUPPLIER.equals(type)){
+            //供应商
+            map.put("supplierCompanyId", companyId);
+        }else if(COMPANYTYPE_MANAGEMENT.equals(type)){
+            //资金方
+            map.put("managementCompanyId", companyId);
+        }
+        String allAmount =  reportCreditService.getReturnBalance(map);
+        Map m = new HashMap();
+        m.put("allAmount",allAmount);
+        return AjaxResult.success(m);
+    }
+
+    /**
+     * 查询平台资金 -- 饼图
+     * @return
+     */
+    @GetMapping("/getFinanceAmount")
+    public AjaxResult getFinanceAmount()
+    {
+        //获取当前企业的编号
+        LoginUser userInfo = tokenService.getLoginUser();
+        SysUser use = userInfo.getSysUser();
+        Map<String,String> map = new HashMap<>();
+        //获取企业
+        String companyId = use.getCompanyId();
+        //获取企业类型
+        String type = use.getCompanyType();
+        if(COMPANYTYPE_CORE.equals(type)){
+            //核心企业
+            map.put("coreCompanyId", companyId);
+        }
+        //融信总额度
+        String allAmount =  reportCreditService.getCreditLineAll(map);
+        //融资中额度
+        String availableAmount =  reportCreditService.getAvailableBalance(map);
+        //生效中额度
+        String effectBalance =  reportCreditService.getEffectBalance(map);
+        //已放款额度
+        String loanBalance =  reportCreditService.getLoanBalance(map);
+        //可用融信
+        String subAmount = AmtUtil.subtract(allAmount,AmtUtil.add(AmtUtil.add(availableAmount,effectBalance),loanBalance));
+        //返回图形数组
+        List list = new ArrayList();
+        //融资中额度图形对象
+        Map availableMap = new HashMap();
+        availableMap.put("name","融资中额度");
+        availableMap.put("value",availableAmount);
+        list.add(availableMap);
+        //生效中额度图形对象
+        Map effectMap = new HashMap();
+        effectMap.put("name","生效中额度");
+        effectMap.put("value",effectBalance);
+        list.add(effectMap);
+        //已放款额度图形对象
+        Map loanMap = new HashMap();
+        loanMap.put("name","已放款额度");
+        loanMap.put("value",loanBalance);
+        list.add(loanMap);
+        //可用额度图形对象
+        Map subMap = new HashMap();
+        subMap.put("name","剩余额度");
+        subMap.put("value",subAmount);
+        list.add(subMap);
+        return AjaxResult.success(list);
+    }
+
+    /**
+     * 核心企业额度比例 -- 柱状图
+     * @return
+     */
+    @GetMapping("/getFinanceAmountAll")
+    public AjaxResult getFinanceAmountAll(QueryRequest request)
+    {
+        //获取当前企业的编号
+        LoginUser userInfo = tokenService.getLoginUser();
+        SysUser use = userInfo.getSysUser();
+        Map map = new HashMap<>();
+        //融信总额度
+        IPage<Map> list =  reportCreditService.getFinanceAmountAll(map,request);
+        //企业集合
+        List<String> dateList = new ArrayList<>();
+        //已用额度
+        List<String> data = new ArrayList<>();
+        //可用额度
+        List<String> subData = new ArrayList<>();
+        for (Map dataMap : list.getRecords()) {
+            //总额度
+            String allAmount = dataMap.get("allAmount").toString();
+            //企业名称
+            String coreCompanyName = dataMap.get("coreCompanyName").toString();
+            //企业id
+            String coreCompanyId = dataMap.get("coreCompanyId").toString();
+            //核心企业
+            map.put("coreCompanyId", coreCompanyId);
+            //融资中额度
+            String availableAmount =  reportCreditService.getAvailableBalance(map);
+            //生效中额度
+            String effectBalance =  reportCreditService.getEffectBalance(map);
+            //已放款额度
+            String loanBalance =  reportCreditService.getLoanBalance(map);
+            //已用额度
+            String addAmount = AmtUtil.add(AmtUtil.add(availableAmount,effectBalance),loanBalance);
+            //可用融信
+            String subAmount = AmtUtil.subtract(allAmount,addAmount);
+            dateList.add(coreCompanyName);
+            data.add(addAmount);
+            subData.add(subAmount);
+        }
+        //数据集合
+        List<Map> dataList = new ArrayList<>();
+        //开立额度数据对象
+        Map addMap = new HashMap();
+        addMap.put("name","已用额度");
+        addMap.put("data",data);
+        dataList.add(addMap);
+        //开立额度数据对象
+        Map subMap = new HashMap();
+        subMap.put("name","可用额度");
+        subMap.put("data",subData);
+        dataList.add(subMap);
+        Map result = new HashMap();
+        result.put("dataList",dataList);
+        result.put("dateList",dateList);
+        return AjaxResult.success(list);
+    }
+
+    /**
      * 企业已融资额度
      * 企业已融资额度
      * @return
      * @return
      */
      */
@@ -213,10 +446,6 @@ public class ReportCreditController extends BaseController {
         String companyId = use.getCompanyId();
         String companyId = use.getCompanyId();
         //获取企业类型
         //获取企业类型
         String type = use.getCompanyType();
         String type = use.getCompanyType();
-//        //融信额度
-//        String allAmount = "0";
-//        //已用融信
-//        String availableAmount = "0";
         if(COMPANYTYPE_CORE.equals(type)){
         if(COMPANYTYPE_CORE.equals(type)){
             //核心企业
             //核心企业
             map.put("coreCompanyId", companyId);
             map.put("coreCompanyId", companyId);
@@ -271,7 +500,7 @@ public class ReportCreditController extends BaseController {
             Map availableMap = new HashMap();
             Map availableMap = new HashMap();
             map.put("managementCompanyId", managementCompanyId);
             map.put("managementCompanyId", managementCompanyId);
             //总额度
             //总额度
-            String allAmount =  reportCreditService.getCreditLineGroup(map);
+            String allAmount =  reportCreditService.getCreditLineAll(map);
             map1.put("allAmount",allAmount);
             map1.put("allAmount",allAmount);
             //可用融信
             //可用融信
             String subAmount = AmtUtil.subtract(allAmount,availableAmount);
             String subAmount = AmtUtil.subtract(allAmount,availableAmount);
@@ -331,7 +560,7 @@ public class ReportCreditController extends BaseController {
                 //核心企业
                 //核心企业
                 map.put("coreCompanyId", companyId);
                 map.put("coreCompanyId", companyId);
             }
             }
-            map.put("date",date);
+            map.put("month",date);
             //报销所含项目
             //报销所含项目
             String amt = reportCreditService.financeRecordMonth(map);
             String amt = reportCreditService.financeRecordMonth(map);
             data.add(amt);
             data.add(amt);
@@ -350,7 +579,7 @@ public class ReportCreditController extends BaseController {
                 //核心企业
                 //核心企业
                 map.put("coreCompanyId", companyId);
                 map.put("coreCompanyId", companyId);
             }
             }
-            map.put("returnDate",date);
+            map.put("month",date);
             map.put("applyStatus","01");
             map.put("applyStatus","01");
             //报销所含项目
             //报销所含项目
             String amt = reportCreditService.financeRecordMonth(map);
             String amt = reportCreditService.financeRecordMonth(map);
@@ -422,25 +651,6 @@ public class ReportCreditController extends BaseController {
         returnDataMap.put("name","还款额度");
         returnDataMap.put("name","还款额度");
         returnDataMap.put("data",returnData);
         returnDataMap.put("data",returnData);
         dataList.add(returnDataMap);
         dataList.add(returnDataMap);
-        //未开立额度
-        List<String> closeData = new ArrayList<>();
-        for (String date : dateList) {
-            Map map = new HashMap();
-            if(COMPANYTYPE_CORE.equals(type)){
-                //核心企业
-                map.put("coreCompanyId", companyId);
-            }
-            map.put("returnDate",date);
-            map.put("status","00");
-            //报销所含项目
-            String amt = reportCreditService.financeRecordMonth(map);
-            closeData.add(amt);
-        }
-        //未开立额度数据对象
-        Map closeDataMap = new HashMap();
-        closeDataMap.put("name","未开立额度");
-        closeDataMap.put("data",closeData);
-        dataList.add(closeDataMap);
         Map result = new HashMap();
         Map result = new HashMap();
         result.put("dataList",dataList);
         result.put("dataList",dataList);
         result.put("dateList",dateList);
         result.put("dateList",dateList);
@@ -490,9 +700,4 @@ public class ReportCreditController extends BaseController {
         }
         }
         return daysStrList;
         return daysStrList;
     }
     }
-
-    public static void main(String[] args) {
-
-        System.out.println(findDaysStr(DateUtils.getPastDate(30),DateUtils.dateTimeNow("yyyy-MM-dd")));
-    }
 }
 }

+ 59 - 0
sc-service/src/main/java/com/huyi/service/common/report/mapper/ReportCompanyMapper.java

@@ -0,0 +1,59 @@
+package com.huyi.service.common.report.mapper;
+
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.Map;
+
+@Mapper
+public interface ReportCompanyMapper {
+
+    /**
+     * 查询注册数量
+     * @param map
+     * @return
+     */
+    String getRegisterNum(Map map);
+
+    /**
+     * 查询入驻企业数量
+     * @param map
+     * @return
+     */
+    String getCompanyNum(Map map);
+
+    /**
+     * 查询已融资供应商数量
+     * @param map
+     * @return
+     */
+    String getFinanceSupplier(Map map);
+
+    /**
+     * 查询已签发业务核心企业数量
+     * @param map
+     * @return
+     */
+    String getFinanceCore(Map map);
+
+    /**
+     * 查询融信开立数量
+     * @param map
+     * @return
+     */
+    String getFinanceRecordNum(Map map);
+
+    /**
+     * 融资产品数量
+     * @param map
+     * @return
+     */
+    String getFinanceProductNum(Map map);
+
+    /**
+     * 融资数量
+     * @param map
+     * @return
+     */
+    String getFinanceNum(Map map);
+
+}

+ 29 - 7
sc-service/src/main/java/com/huyi/service/common/report/mapper/ReportCreditMapper.java

@@ -33,6 +33,27 @@ public interface ReportCreditMapper {
     String getAvailableBalance(Map map);
     String getAvailableBalance(Map map);
 
 
     /**
     /**
+     * 查询企业生效中额度
+     * @param map
+     * @return
+     */
+    String getEffectBalance(Map map);
+
+    /**
+     * 查询企业已放款额度
+     * @param map
+     * @return
+     */
+    String getLoanBalance(Map map);
+
+    /**
+     * 查询企业已还款额度
+     * @param map
+     * @return
+     */
+    String getReturnBalance(Map map);
+
+    /**
      * 查询企业已融资额度
      * 查询企业已融资额度
      * @param map
      * @param map
      * @return
      * @return
@@ -55,13 +76,6 @@ public interface ReportCreditMapper {
     public IPage<Map> getCreditLineList(Page<Map> page, @Param("paramMap") Map map);
     public IPage<Map> getCreditLineList(Page<Map> page, @Param("paramMap") Map map);
 
 
     /**
     /**
-     * 企业渠道融信总额度
-     * @param map
-     * @return
-     */
-    String getCreditLineGroup(Map map);
-
-    /**
      * 企业渠道融信开立数量
      * 企业渠道融信开立数量
      * @param page
      * @param page
      * @param map
      * @param map
@@ -76,4 +90,12 @@ public interface ReportCreditMapper {
      */
      */
     String financeRecordMonth(Map map);
     String financeRecordMonth(Map map);
 
 
+    /**
+     * 核心企业额度比例
+     * @param page
+     * @param map
+     * @return
+     */
+    public IPage<Map> getFinanceAmountAll(Page<Map> page, @Param("paramMap") Map map);
+
 }
 }

+ 57 - 0
sc-service/src/main/java/com/huyi/service/common/report/service/ReportCompanyService.java

@@ -0,0 +1,57 @@
+package com.huyi.service.common.report.service;
+
+import java.util.Map;
+
+public interface ReportCompanyService {
+
+
+    /**
+     * 查询注册数量
+     * @param map
+     * @return
+     */
+    String getRegisterNum(Map map);
+
+    /**
+     * 查询入驻企业数量
+     * @param map
+     * @return
+     */
+    String getCompanyNum(Map map);
+
+    /**
+     * 查询已融资供应商数量
+     * @param map
+     * @return
+     */
+    String getFinanceSupplier(Map map);
+
+    /**
+     * 查询已签发业务核心企业数量
+     * @param map
+     * @return
+     */
+    String getFinanceCore(Map map);
+
+    /**
+     * 查询融信开立数量
+     * @param map
+     * @return
+     */
+    String getFinanceRecordNum(Map map);
+
+    /**
+     * 融资产品数量
+     * @param map
+     * @return
+     */
+    String getFinanceProductNum(Map map);
+
+    /**
+     * 融资数量
+     * @param map
+     * @return
+     */
+    String getFinanceNum(Map map);
+
+}

+ 29 - 7
sc-service/src/main/java/com/huyi/service/common/report/service/ReportCreditService.java

@@ -31,6 +31,27 @@ public interface ReportCreditService {
     String getAvailableBalance(Map map);
     String getAvailableBalance(Map map);
 
 
     /**
     /**
+     * 查询企业生效中额度
+     * @param map
+     * @return
+     */
+    String getEffectBalance(Map map);
+
+    /**
+     * 查询企业已放款额度
+     * @param map
+     * @return
+     */
+    String getLoanBalance(Map map);
+
+    /**
+     * 查询企业已还款额度
+     * @param map
+     * @return
+     */
+    String getReturnBalance(Map map);
+
+    /**
      * 获取企业已融资额度
      * 获取企业已融资额度
      * @param map
      * @param map
      * @return
      * @return
@@ -53,13 +74,6 @@ public interface ReportCreditService {
     public IPage<Map> getCreditLineList(Map map, QueryRequest request);
     public IPage<Map> getCreditLineList(Map map, QueryRequest request);
 
 
     /**
     /**
-     * 企业渠道融信总额度
-     * @param map
-     * @return
-     */
-    String getCreditLineGroup(Map map);
-
-    /**
      * 企业渠道融信开立数量
      * 企业渠道融信开立数量
      * @param map
      * @param map
      * @param request
      * @param request
@@ -74,4 +88,12 @@ public interface ReportCreditService {
      */
      */
     String financeRecordMonth(Map map);
     String financeRecordMonth(Map map);
 
 
+    /**
+     * 核心企业额度比例
+     * @param map
+     * @param request
+     * @return
+     */
+    public IPage<Map> getFinanceAmountAll(Map map, QueryRequest request);
+
 }
 }

+ 50 - 0
sc-service/src/main/java/com/huyi/service/common/report/service/impl/ReportCompanyServiceImpl.java

@@ -0,0 +1,50 @@
+package com.huyi.service.common.report.service.impl;
+
+import com.huyi.service.common.report.mapper.ReportCompanyMapper;
+import com.huyi.service.common.report.service.ReportCompanyService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.Map;
+
+@Service
+public class ReportCompanyServiceImpl implements ReportCompanyService {
+    @Autowired
+    private ReportCompanyMapper reportCompanyMapper;
+
+
+    @Override
+    public String getRegisterNum(Map map) {
+        return reportCompanyMapper.getRegisterNum(map);
+    }
+
+    @Override
+    public String getCompanyNum(Map map) {
+        return reportCompanyMapper.getCompanyNum(map);
+    }
+
+    @Override
+    public String getFinanceSupplier(Map map) {
+        return reportCompanyMapper.getFinanceSupplier(map);
+    }
+
+    @Override
+    public String getFinanceCore(Map map) {
+        return reportCompanyMapper.getFinanceCore(map);
+    }
+
+    @Override
+    public String getFinanceRecordNum(Map map) {
+        return reportCompanyMapper.getFinanceRecordNum(map);
+    }
+
+    @Override
+    public String getFinanceProductNum(Map map) {
+        return reportCompanyMapper.getFinanceProductNum(map);
+    }
+
+    @Override
+    public String getFinanceNum(Map map) {
+        return reportCompanyMapper.getFinanceNum(map);
+    }
+}

+ 21 - 5
sc-service/src/main/java/com/huyi/service/common/report/service/impl/ReportCreditServiceImpl.java

@@ -35,6 +35,21 @@ public class ReportCreditServiceImpl implements ReportCreditService {
     }
     }
 
 
     @Override
     @Override
+    public String getEffectBalance(Map map) {
+        return reportCreditMapper.getEffectBalance(map);
+    }
+
+    @Override
+    public String getLoanBalance(Map map) {
+        return reportCreditMapper.getLoanBalance(map);
+    }
+
+    @Override
+    public String getReturnBalance(Map map) {
+        return reportCreditMapper.getReturnBalance(map);
+    }
+
+    @Override
     public String getFinancedBalance(Map map) {
     public String getFinancedBalance(Map map) {
         return reportCreditMapper.getFinancedBalance(map);
         return reportCreditMapper.getFinancedBalance(map);
     }
     }
@@ -51,11 +66,6 @@ public class ReportCreditServiceImpl implements ReportCreditService {
     }
     }
 
 
     @Override
     @Override
-    public String getCreditLineGroup(Map map) {
-        return reportCreditMapper.getCreditLineGroup(map);
-    }
-
-    @Override
     public IPage<Map> getCreditLineNumList(Map map, QueryRequest request) {
     public IPage<Map> getCreditLineNumList(Map map, QueryRequest request) {
         Page page = new Page<>(request.getPageNum(), request.getPageSize());
         Page page = new Page<>(request.getPageNum(), request.getPageSize());
         return reportCreditMapper.getCreditLineNumList(page, map);
         return reportCreditMapper.getCreditLineNumList(page, map);
@@ -65,4 +75,10 @@ public class ReportCreditServiceImpl implements ReportCreditService {
     public String financeRecordMonth(Map map) {
     public String financeRecordMonth(Map map) {
         return reportCreditMapper.financeRecordMonth(map);
         return reportCreditMapper.financeRecordMonth(map);
     }
     }
+
+    @Override
+    public IPage<Map> getFinanceAmountAll(Map map, QueryRequest request) {
+        Page page = new Page<>(request.getPageNum(), request.getPageSize());
+        return reportCreditMapper.getFinanceAmountAll(page, map);
+    }
 }
 }

+ 98 - 0
sc-service/src/main/resources/mapper/common/ReportCompanyMapper.xml

@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.huyi.service.common.report.mapper.ReportCompanyMapper">
+
+
+    <!---注册数量-->
+    <select id="getRegisterNum" parameterType="map" resultType="java.lang.String">
+        SELECT
+          COUNT(user_id)	'num'
+        FROM
+          sys_user
+        WHERE del_flag != '2'
+        AND user_id != '1'
+    </select>
+
+    <!--入驻企业数量-->
+    <select id="getCompanyNum" parameterType="map" resultType="java.lang.String">
+        SELECT
+          COUNT(scy_id)	'num'
+        FROM
+          sys_company
+        WHERE scy_status = '00'
+        AND scy_id != '000000'
+        <if test="type != null  and type != ''">
+            AND scy_type = #{type}
+        </if>
+    </select>
+
+    <!--已融资供应商数量-->
+    <select id="getFinanceSupplier" parameterType="map" resultType="java.lang.String">
+        SELECT
+          COUNT(DISTINCT zfsq_company_id)	'num'
+        FROM
+          zc_finance_supplier_quota
+        WHERE zfsq_status != '99'
+    </select>
+
+    <!--已签发业务核心企业数量-->
+    <select id="getFinanceCore" parameterType="map" resultType="java.lang.String">
+        SELECT
+          COUNT(DISTINCT zfi_core_id)	'num'
+        FROM
+          zc_finance_inf
+        WHERE zfi_status IN ('02','04','05','07')
+    </select>
+
+    <!--融信开立数量-->
+    <select id="getFinanceRecordNum" parameterType="map" resultType="java.lang.String">
+        SELECT
+            COUNT(zfr_id) 'num'
+        FROM
+            zc_finance_record
+        LEFT JOIN zc_finance_inf
+        ON zfi_id = zfr_finance_id
+        LEFT JOIN zc_finance_product
+        ON zfp_id = zfi_product_id
+        WHERE zfr_approve_stt = '01'
+        AND zfr_status IN ('01','03')
+        <if test="managementCompanyId != null  and managementCompanyId != ''">
+            AND zfp_management_id = #{managementCompanyId}
+        </if>
+        <if test="productId != null  and productId != ''">
+            AND zfi_product_id = #{productId}
+        </if>
+    </select>
+
+    <!--融资产品数量-->
+    <select id="getFinanceProductNum" parameterType="map" resultType="map">
+        SELECT
+            COUNT(zfp_id) 'num'
+        FROM
+        zc_finance_product
+        where 1=1
+        <if test="managementCompanyId != null  and managementCompanyId != ''">
+            AND zfp_management_id = #{managementCompanyId}
+        </if>
+    </select>
+
+    <!--融资数量-->
+    <select id="getFinanceNum" parameterType="map" resultType="java.lang.String">
+        SELECT
+            COUNT(zfi_id) 'num'
+        FROM
+            zc_finance_inf
+        LEFT JOIN zc_finance_product
+        ON zfp_id = zfi_product_id
+        WHERE zfi_status IN ('02','04','05','07')
+        <if test="productId != null  and productId != ''">
+            AND zfi_product_id = #{productId}
+        </if>
+        <if test="managementCompanyId != null  and managementCompanyId != ''">
+            AND zfp_management_id = #{managementCompanyId}
+        </if>
+    </select>
+
+</mapper>

+ 158 - 51
sc-service/src/main/resources/mapper/common/ReportCreditMapper.xml

@@ -5,7 +5,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 <mapper namespace="com.huyi.service.common.report.mapper.ReportCreditMapper">
 <mapper namespace="com.huyi.service.common.report.mapper.ReportCreditMapper">
 
 
 
 
-    <!---核心企业持有额度-->
+    <!---核心企业授权总额度-->
     <select id="getCreditLineAll" parameterType="map" resultType="java.lang.String">
     <select id="getCreditLineAll" parameterType="map" resultType="java.lang.String">
         SELECT
         SELECT
             CAST(
             CAST(
@@ -25,6 +25,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <if test="startDate != null  and startDate != ''">
         <if test="startDate != null  and startDate != ''">
             AND zfpcr_end_date BETWEEN #{startDate} AND #{endDate}
             AND zfpcr_end_date BETWEEN #{startDate} AND #{endDate}
         </if>
         </if>
+        <if test="productId != null  and productId != ''">
+            AND zfpcr_product_id = #{productId}
+        </if>
+        <if test="zfpType != null  and zfpType != ''">
+            AND zfp_type = #{zfpType}
+        </if>
     </select>
     </select>
 
 
     <!--供应商持有额度-->
     <!--供应商持有额度-->
@@ -56,10 +62,108 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         ROUND(IFNULL(SUM(zfi_amount), 0), 2) AS CHAR
         ROUND(IFNULL(SUM(zfi_amount), 0), 2) AS CHAR
         ) 'allAmount'
         ) 'allAmount'
         FROM
         FROM
+        zc_finance_record
+        LEFT JOIN zc_finance_inf
+        ON zfi_id = zfr_finance_id
+        LEFT JOIN zc_finance_product
+        ON zfp_id = zfi_product_id
+        WHERE zfi_status IN ('04','05')
+        AND zfr_approve_stt = '01'
+        AND zfr_status = '00'
+        <if test="coreCompanyId != null  and coreCompanyId != ''">
+            AND zfi_core_id = #{coreCompanyId}
+        </if>
+        <if test="supplierCompanyId != null  and supplierCompanyId != ''">
+            AND zfi_supplier_id = #{supplierCompanyId}
+        </if>
+        <if test="managementCompanyId != null  and managementCompanyId != ''">
+            AND zfp_management_id = #{managementCompanyId}
+        </if>
+        <if test="zfpcrId != null  and zfpcrId != ''">
+            AND zfi_core_quota_id = #{zfpcrId}
+        </if>
+        <if test="zfpType != null  and zfpType != ''">
+            AND zfp_type = #{zfpType}
+        </if>
+
+    </select>
+
+    <!--企业生效中额度-->
+    <select id="getEffectBalance" parameterType="map" resultType="java.lang.String">
+        SELECT
+        CAST(
+        ROUND(IFNULL(SUM(zfi_amount), 0), 2) AS CHAR
+        ) 'allAmount'
+        FROM
         zc_finance_inf
         zc_finance_inf
         LEFT JOIN zc_finance_product
         LEFT JOIN zc_finance_product
         ON zfp_id = zfi_product_id
         ON zfp_id = zfi_product_id
-        WHERE zfi_status IN ('02','04')
+        WHERE zfi_status = '02'
+        <if test="coreCompanyId != null  and coreCompanyId != ''">
+            AND zfi_core_id = #{coreCompanyId}
+        </if>
+        <if test="supplierCompanyId != null  and supplierCompanyId != ''">
+            AND zfi_supplier_id = #{supplierCompanyId}
+        </if>
+        <if test="managementCompanyId != null  and managementCompanyId != ''">
+            AND zfp_management_id = #{managementCompanyId}
+        </if>
+        <if test="productId != null  and productId != ''">
+            AND zfi_product_id = #{productId}
+        </if>
+        <if test="zfpType != null  and zfpType != ''">
+            AND zfp_type = #{zfpType}
+        </if>
+
+    </select>
+
+    <!--企业已放款额度-->
+    <select id="getLoanBalance" parameterType="map" resultType="java.lang.String">
+        SELECT
+        CAST(
+        ROUND(IFNULL(SUM(zfi_amount), 0), 2) AS CHAR
+        ) 'allAmount'
+        FROM
+        zc_finance_record
+        LEFT JOIN zc_finance_inf
+        ON zfi_id = zfr_finance_id
+        LEFT JOIN zc_finance_product
+        ON zfp_id = zfi_product_id
+        WHERE zfi_status IN ('04','05')
+        AND zfr_approve_stt = '01'
+        AND zfr_status = '01'
+        <if test="coreCompanyId != null  and coreCompanyId != ''">
+            AND zfi_core_id = #{coreCompanyId}
+        </if>
+        <if test="supplierCompanyId != null  and supplierCompanyId != ''">
+            AND zfi_supplier_id = #{supplierCompanyId}
+        </if>
+        <if test="managementCompanyId != null  and managementCompanyId != ''">
+            AND zfp_management_id = #{managementCompanyId}
+        </if>
+        <if test="zfpcrId != null  and zfpcrId != ''">
+            AND zfi_core_quota_id = #{zfpcrId}
+        </if>
+        <if test="zfpType != null  and zfpType != ''">
+            AND zfp_type = #{zfpType}
+        </if>
+
+    </select>
+
+    <!--企业已还款额度-->
+    <select id="getReturnBalance" parameterType="map" resultType="java.lang.String">
+        SELECT
+        CAST(
+        ROUND(IFNULL(SUM(zfi_amount), 0), 2) AS CHAR
+        ) 'allAmount'
+        FROM
+        zc_finance_record
+        LEFT JOIN zc_finance_inf
+        ON zfi_id = zfr_finance_id
+        LEFT JOIN zc_finance_product
+        ON zfp_id = zfi_product_id
+        WHERE zfr_approve_stt = '01'
+        AND zfr_apply_status = '01'
         <if test="coreCompanyId != null  and coreCompanyId != ''">
         <if test="coreCompanyId != null  and coreCompanyId != ''">
             AND zfi_core_id = #{coreCompanyId}
             AND zfi_core_id = #{coreCompanyId}
         </if>
         </if>
@@ -72,6 +176,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <if test="zfpcrId != null  and zfpcrId != ''">
         <if test="zfpcrId != null  and zfpcrId != ''">
             AND zfi_core_quota_id = #{zfpcrId}
             AND zfi_core_quota_id = #{zfpcrId}
         </if>
         </if>
+        <if test="zfpType != null  and zfpType != ''">
+            AND zfp_type = #{zfpType}
+        </if>
 
 
     </select>
     </select>
 
 
@@ -85,7 +192,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         zc_finance_inf
         zc_finance_inf
         LEFT JOIN zc_finance_product
         LEFT JOIN zc_finance_product
         ON zfp_id = zfi_product_id
         ON zfp_id = zfi_product_id
-        WHERE zfi_status IN ('02','03','04','05')
+        WHERE zfi_status IN ('02','04','05','07')
         <if test="coreCompanyId != null  and coreCompanyId != ''">
         <if test="coreCompanyId != null  and coreCompanyId != ''">
             AND zfi_core_id = #{coreCompanyId}
             AND zfi_core_id = #{coreCompanyId}
         </if>
         </if>
@@ -95,6 +202,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <if test="managementCompanyId != null  and managementCompanyId != ''">
         <if test="managementCompanyId != null  and managementCompanyId != ''">
             AND zfp_management_id = #{managementCompanyId}
             AND zfp_management_id = #{managementCompanyId}
         </if>
         </if>
+        <if test="productId != null  and productId != ''">
+            AND zfi_product_id = #{productId}
+        </if>
+        <if test="zfpType != null  and zfpType != ''">
+            AND zfp_type = #{zfpType}
+        </if>
 
 
     </select>
     </select>
 
 
@@ -108,7 +221,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         zc_finance_inf
         zc_finance_inf
         LEFT JOIN zc_finance_product
         LEFT JOIN zc_finance_product
         ON zfp_id = zfi_product_id
         ON zfp_id = zfi_product_id
-        WHERE zfi_status IN ('02','03','04','05')
+        WHERE zfi_status IN ('02','04','05','07')
         <if test="coreCompanyId != null  and coreCompanyId != ''">
         <if test="coreCompanyId != null  and coreCompanyId != ''">
             AND zfi_core_id = #{coreCompanyId}
             AND zfi_core_id = #{coreCompanyId}
         </if>
         </if>
@@ -134,7 +247,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         zc_finance_pro_com_rel
         zc_finance_pro_com_rel
         LEFT JOIN zc_finance_inf
         LEFT JOIN zc_finance_inf
         ON zfpcr_id = zfi_core_quota_id
         ON zfpcr_id = zfi_core_quota_id
-        AND zfi_status IN ('02','04')
+        AND zfi_status IN ('02','04','05')
         LEFT JOIN zc_finance_product
         LEFT JOIN zc_finance_product
         ON zfp_id = zfpcr_product_id
         ON zfp_id = zfpcr_product_id
         LEFT JOIN sys_company
         LEFT JOIN sys_company
@@ -143,26 +256,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <if test="paramMap.coreCompanyId != null  and paramMap.coreCompanyId != ''">
         <if test="paramMap.coreCompanyId != null  and paramMap.coreCompanyId != ''">
             AND zfi_core_id = #{paramMap.coreCompanyId}
             AND zfi_core_id = #{paramMap.coreCompanyId}
         </if>
         </if>
-        GROUP BY zfp_management_id
-    </select>
-
-    <!--企业渠道融信总额度-->
-    <select id="getCreditLineGroup" parameterType="map" resultType="java.lang.String">
-        SELECT
-        CAST(
-        ROUND(IFNULL(SUM(zfpcr_amount), 0), 2) AS CHAR
-        ) 'allAmount'
-        FROM
-        zc_finance_pro_com_rel
-        LEFT JOIN zc_finance_product
-        ON zfp_id = zfpcr_product_id
-        WHERE zfpcr_status = '00'
-        <if test="coreCompanyId != null  and coreCompanyId != ''">
-            AND zfi_core_id = #{coreCompanyId}
-        </if>
-        <if test="managementCompanyId != null  and managementCompanyId != ''">
-            AND zfp_management_id = #{managementCompanyId}
+        <if test="zfpType != null  and zfpType != ''">
+            AND zfp_type = #{zfpType}
         </if>
         </if>
+        GROUP BY zfp_management_id
     </select>
     </select>
 
 
     <!--企业渠道融信开立统计-->
     <!--企业渠道融信开立统计-->
@@ -179,7 +276,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         zc_finance_pro_com_rel
         zc_finance_pro_com_rel
         LEFT JOIN zc_finance_inf
         LEFT JOIN zc_finance_inf
         ON zfpcr_id = zfi_core_quota_id
         ON zfpcr_id = zfi_core_quota_id
-        AND zfi_status IN ('02','03','04','05')
+        AND zfi_status IN ('02','04','05','07')
         LEFT JOIN zc_finance_product
         LEFT JOIN zc_finance_product
         ON zfp_id = zfpcr_product_id
         ON zfp_id = zfpcr_product_id
         LEFT JOIN sys_company
         LEFT JOIN sys_company
@@ -201,45 +298,55 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         zc_finance_record
         zc_finance_record
         LEFT JOIN zc_finance_inf
         LEFT JOIN zc_finance_inf
         ON zfi_id = zfr_finance_id
         ON zfi_id = zfr_finance_id
-        WHERE zfr_approve_stt = '02'
+        LEFT JOIN zc_finance_product
+        ON zfp_id = zfi_product_id
+        WHERE zfr_approve_stt = '01'
         AND zfr_status IN ('01','03')
         AND zfr_status IN ('01','03')
         <if test="coreCompanyId != null  and coreCompanyId != ''">
         <if test="coreCompanyId != null  and coreCompanyId != ''">
             AND zfi_core_id = #{coreCompanyId}
             AND zfi_core_id = #{coreCompanyId}
         </if>
         </if>
+        <if test="status != null  and status != ''">
+            AND zfr_status = #{status}
+        </if>
         <if test="applyStatus != null  and applyStatus != ''">
         <if test="applyStatus != null  and applyStatus != ''">
             AND zfr_apply_status = #{applyStatus}
             AND zfr_apply_status = #{applyStatus}
         </if>
         </if>
-        <if test="date != null  and date != ''">
-            AND DATE_FORMAT(zfr_loan_date, '%Y-%c') = #{date}
+        <if test="month != null  and month != ''">
+            AND DATE_FORMAT(zfi_sign_date, '%Y-%c') = #{month}
         </if>
         </if>
         <if test="returnDate != null  and returnDate != ''">
         <if test="returnDate != null  and returnDate != ''">
-            AND DATE_FORMAT(zfr_pay_date, '%Y-%c') = #{returnDate}
+            AND DATE_FORMAT(zfr_pay_date, '%Y-%m-%d') = #{returnDate}
+        </if>
+        <if test="date != null  and date != ''">
+            AND DATE_FORMAT(zfi_sign_date, '%Y-%m-%d') = #{date}
+        </if>
+        <if test="managementCompanyId != null  and managementCompanyId != ''">
+            AND zfp_management_id = #{managementCompanyId}
+        </if>
+        <if test="productId != null  and productId != ''">
+            AND zfi_product_id = #{productId}
         </if>
         </if>
     </select>
     </select>
 
 
-    <!--融资开立时间段统计-->
-    <select id="financeRecord" parameterType="map" resultType="String">
+    <!--核心企业额度比例-->
+    <select id="getFinanceAmountAll" parameterType="map" resultType="map">
         SELECT
         SELECT
-        CAST(
-        ROUND(IFNULL(SUM(zfr_loan_amount), 0), 2) AS CHAR
-        ) 'allAmount'
+          CAST(
+            ROUND(IFNULL(SUM(zfpcr_amount), 0), 2) AS CHAR
+          )                 'allAmount',
+          zfpcr_company_id  'coreCompanyId',
+          scy_name          'coreCompanyName'
         FROM
         FROM
-        zc_finance_record
-        LEFT JOIN zc_finance_inf
-        ON zfi_id = zfr_finance_id
-        WHERE zfr_approve_stt = '02'
-        AND zfr_status IN ('01','03')
-        <if test="coreCompanyId != null  and coreCompanyId != ''">
-            AND zfi_core_id = #{coreCompanyId}
-        </if>
-        <if test="status != null  and status != ''">
-            AND zfr_status = #{status}
-        </if>
-        <if test="applyStatus != null  and applyStatus != ''">
-            AND zfr_apply_status = #{applyStatus}
-        </if>
-        <if test="date != null  and date != ''">
-            AND DATE_FORMAT(zfr_loan_date, '%Y-%m-%d') = #{date}
-        </if>
+          zc_finance_pro_com_rel
+          LEFT JOIN zc_finance_product
+            ON zfp_id = zfpcr_product_id
+          LEFT JOIN sys_company
+            ON scy_id = zfpcr_company_id
+        WHERE zfpcr_status = '00'
+        GROUP BY zfpcr_company_id
+        ORDER BY CAST(
+            ROUND(IFNULL(SUM(zfpcr_amount), 0), 2) AS CHAR
+          ) + 0
     </select>
     </select>
+
 </mapper>
 </mapper>