Browse Source

修改客户评级代码

main
likunming 9 months ago
parent
commit
b80c34a784
  1. 45
      irbs.cust.rating/src/main/java/irbs/cust/rating/controller/HomeController.java
  2. 17
      irbs.cust.rating/src/main/java/irbs/cust/rating/service/HomeService.java
  3. 52
      irbs.cust.rating/src/main/java/irbs/cust/rating/service/impl/HomeServiceImpl.java
  4. 2
      irbs.frontend/public/configure.js
  5. 128
      irbs.frontend/src/components/index.ts
  6. 4
      irbs.frontend/util-components-generator.cjs
  7. 2
      irbs.frontend/webpack.env.serve.cjs

45
irbs.cust.rating/src/main/java/irbs/cust/rating/controller/HomeController.java

@ -0,0 +1,45 @@
package irbs.cust.rating.controller;
import irbs.cust.rating.jpa.support.KeyValueWrapper;
import irbs.cust.rating.service.HomeService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* 首页控制器
* @author likunming
*/
@RestController
@RequestMapping("/api/irbs/home")
public class HomeController {
@Autowired
private HomeService homeService;
/**
* 首页敞口分布统计
*
* @throws Exception 异常
*/
@RequestMapping(value = "ratingModelExposure", method = RequestMethod.GET)
@ResponseBody
public List<KeyValueWrapper> ratingModelExposure() throws Exception {
return homeService.getRatingModelExposureList();
}
/**
* 首页评级分布统计
*
* @throws Exception 异常
*/
@RequestMapping(value = "ratingLevelExposure", method = RequestMethod.GET)
@ResponseBody
public List<KeyValueWrapper> ratingLevelExposureList() throws Exception {
return homeService.getRatingLevelExposureList();
}
}

17
irbs.cust.rating/src/main/java/irbs/cust/rating/service/HomeService.java

@ -0,0 +1,17 @@
package irbs.cust.rating.service;
import irbs.cust.rating.jpa.support.KeyValueWrapper;
import java.util.List;
/**
* 客户评级流程处理服务
* @author likunming
*
*/
public interface HomeService {
public List<KeyValueWrapper> getRatingModelExposureList() throws Exception;
public List<KeyValueWrapper> getRatingLevelExposureList() throws Exception;
}

52
irbs.cust.rating/src/main/java/irbs/cust/rating/service/impl/HomeServiceImpl.java

@ -0,0 +1,52 @@
package irbs.cust.rating.service.impl;
import irbs.cust.rating.jpa.support.KeyValueWrapper;
import irbs.cust.rating.service.HomeService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Map;
@Service
public class HomeServiceImpl implements HomeService {
@Autowired
NamedParameterJdbcTemplate namedParameterJdbcTemplate;
@Override
public List<KeyValueWrapper> getRatingModelExposureList() throws Exception {
String querySql = "select MODEL_NAME, count(*) MODEL_NUMBER from NS_COMPANY_RATING where MODEL_CODE IS NOT NULL ";
querySql += " group by MODEL_CODE, MODEL_NAME order by CAST(substr(MODEL_CODE,4) as DECIMAL) asc ";
List<KeyValueWrapper> query = namedParameterJdbcTemplate.query(querySql,
(rs, rowNum) -> {
KeyValueWrapper kv = new KeyValueWrapper();
kv.setKey(rs.getString("MODEL_NAME"));
kv.setValue(rs.getString("MODEL_NUMBER"));
return kv;
});
return query;
}
@Override
public List<KeyValueWrapper> getRatingLevelExposureList() throws Exception {
String querySql1 = "select p.FINAL_LEVEL,count(*) FINAL_NUMBER from (" +
"select distinct(cust_no) as cust_no,FINAL_LEVEL from NS_COMPANY_RATING " +
"WHERE cust_no is not null and FINAL_LEVEL IS NOT NULL AND RATING_STATUS = '010' ";
String querySql2 = "select 'D' FINAL_LEVEL, COUNT(*) FINAL_NUMBER from (" +
"select distinct(cust_no) as cust_no from P_IRS_DEFAULT_COGNIZANCE " +
"where ((VALID = '1' and DEFAULT_TYPE ='02') or (VALID <> '0' and DEFAULT_TYPE = '01')) and cust_no is not null ";
querySql1 += ") p GROUP BY p.FINAL_LEVEL";
querySql2 += ") q";
String querySql = querySql1 + " UNION ALL " + querySql2;
List<KeyValueWrapper> query = namedParameterJdbcTemplate.query(querySql,
(rs, rowNum) -> {
KeyValueWrapper kv = new KeyValueWrapper();
kv.setKey(rs.getString("FINAL_LEVEL"));
kv.setValue(rs.getString("FINAL_NUMBER"));
return kv;
});
return query;
}
}

2
irbs.frontend/public/configure.js

@ -6,7 +6,7 @@ window.APP.configure ={
webContextPath: '[(@{/})]'.startsWith('[')? '/' : '[(@{/})]',
// 默认后端 API 请求的服务地址前缀
apiContextPaths: {
DEFAULT: '[(@{/})]'.startsWith('[')? 'http://localhost:8081/' : '[(@{/})]',
DEFAULT: '[(@{/})]'.startsWith('[')? 'http://localhost:8080/' : '[(@{/})]',
},
// 是否启用本地 mock
enableLocalMock : false,

128
irbs.frontend/src/components/index.ts

@ -2,72 +2,72 @@
* ,
*/
import home from '@/views/IrbsHome.vue';
import irbsHome from '@/views/IrbsHome.vue';
import todoTask from '@/views/workbench/TodoTask.vue';
import doneTask from '@/views/workbench/DoneTask.vue';
import endTask from '@/views/workbench/EndTask.vue';
import custRating from '@/views/custRating/CustRating.vue';
import custSeparateRating from '@/views/custRating/CustSeparateRating.vue';
import financialRating from '@/views/custRating/FinancialRating.vue';
import cognizanceApply from '@/views/default/CognizanceApply.vue';
import rebirthApply from '@/views/default/RebirthApply.vue';
import lgdQuery from '@/views/debtRating/LgdQuery.vue';
import riskExposureApply from '@/views/riskExposure/RiskExposureApply.vue';
import riskExposureApproval from '@/views/riskExposure/RiskExposureApproval.vue';
import custRatingHist from '@/views/query/CustRatingHist.vue';
import defaultHist from '@/views/query/DefaultHist.vue';
import riskExposureHist from '@/views/query/RiskExposureHist.vue';
import custInfo from '@/views/query/CustInfo.vue';
import resultQuery from '@/views/model/ResultQuery.vue';
import pressureTest from '@/views/model/PressureTest.vue';
import ratingAdjustment from '@/views/config/RatingAdjustment.vue';
import debtFactors from '@/views/config/DebtFactors.vue';
import rptRatingDistribution from '@/views/report/RptRatingDistribution.vue';
import rptRatingModelFocusDist from '@/views/report/RptRatingModelFocusDist.vue';
import rptRatingOrgFocusDist from '@/views/report/RptRatingOrgFocusDist.vue';
import rptRatingNumberMigrate from '@/views/report/RptRatingNumberMigrate.vue';
import rptRatingLoanBalanceMigrate from '@/views/report/RptRatingLoanBalanceMigrate.vue';
import rptRatingIndustryFocusDist from '@/views/report/RptRatingIndustryFocusDist.vue';
import rptModelMonitorDiff from '@/views/report/RptModelMonitorDiff.vue';
import rptModelMonitorStable from '@/views/report/RptModelMonitorStable.vue';
import rptRatingOverturn from '@/views/report/RptRatingOverturn.vue';
import rptRatingAdjust from '@/views/report/RptRatingAdjust.vue';
import rptModelMonitorBinomialCheck from '@/views/report/RptModelMonitorBinomialCheck.vue';
import irbs_home from '@/views/IrbsHome.vue';
import irbs_irbsHome from '@/views/IrbsHome.vue';
import irbs_todoTask from '@/views/workbench/TodoTask.vue';
import irbs_doneTask from '@/views/workbench/DoneTask.vue';
import irbs_endTask from '@/views/workbench/EndTask.vue';
import irbs_custRating from '@/views/custRating/CustRating.vue';
import irbs_custSeparateRating from '@/views/custRating/CustSeparateRating.vue';
import irbs_financialRating from '@/views/custRating/FinancialRating.vue';
import irbs_cognizanceApply from '@/views/default/CognizanceApply.vue';
import irbs_rebirthApply from '@/views/default/RebirthApply.vue';
import irbs_lgdQuery from '@/views/debtRating/LgdQuery.vue';
import irbs_riskExposureApply from '@/views/riskExposure/RiskExposureApply.vue';
import irbs_riskExposureApproval from '@/views/riskExposure/RiskExposureApproval.vue';
import irbs_custRatingHist from '@/views/query/CustRatingHist.vue';
import irbs_defaultHist from '@/views/query/DefaultHist.vue';
import irbs_riskExposureHist from '@/views/query/RiskExposureHist.vue';
import irbs_custInfo from '@/views/query/CustInfo.vue';
import irbs_resultQuery from '@/views/model/ResultQuery.vue';
import irbs_pressureTest from '@/views/model/PressureTest.vue';
import irbs_ratingAdjustment from '@/views/config/RatingAdjustment.vue';
import irbs_debtFactors from '@/views/config/DebtFactors.vue';
import irbs_report_rptRatingDistribution from '@/views/report/RptRatingDistribution.vue';
import irbs_report_rptRatingModelFocusDist from '@/views/report/RptRatingModelFocusDist.vue';
import irbs_report_rptRatingOrgFocusDist from '@/views/report/RptRatingOrgFocusDist.vue';
import irbs_report_rptRatingNumberMigrate from '@/views/report/RptRatingNumberMigrate.vue';
import irbs_report_rptRatingLoanBalanceMigrate from '@/views/report/RptRatingLoanBalanceMigrate.vue';
import irbs_report_rptRatingIndustryFocusDist from '@/views/report/RptRatingIndustryFocusDist.vue';
import irbs_report_rptModelMonitorDiff from '@/views/report/RptModelMonitorDiff.vue';
import irbs_report_rptModelMonitorStable from '@/views/report/RptModelMonitorStable.vue';
import irbs_report_rptRatingOverturn from '@/views/report/RptRatingOverturn.vue';
import irbs_report_rptRatingAdjust from '@/views/report/RptRatingAdjust.vue';
import irbs_report_rptModelMonitorBinomialCheck from '@/views/report/RptModelMonitorBinomialCheck.vue';
const localComponents = {
'irbs.home': home,
'irbs.irbsHome': irbsHome,
'irbs.todoTask': todoTask,
'irbs.doneTask': doneTask,
'irbs.endTask': endTask,
'irbs.custRating': custRating,
'irbs.custSeparateRating': custSeparateRating,
'irbs.financialRating': financialRating,
'irbs.cognizanceApply': cognizanceApply,
'irbs.rebirthApply': rebirthApply,
'irbs.lgdQuery': lgdQuery,
'irbs.riskExposureApply': riskExposureApply,
'irbs.riskExposureApproval': riskExposureApproval,
'irbs.custRatingHist': custRatingHist,
'irbs.defaultHist': defaultHist,
'irbs.riskExposureHist': riskExposureHist,
'irbs.custInfo': custInfo,
'irbs.resultQuery': resultQuery,
'irbs.pressureTest': pressureTest,
'irbs.ratingAdjustment': ratingAdjustment,
'irbs.debtFactors': debtFactors,
'irbs.report.rptRatingDistribution': rptRatingDistribution,
'irbs.report.rptRatingModelFocusDist': rptRatingModelFocusDist,
'irbs.report.rptRatingOrgFocusDist': rptRatingOrgFocusDist,
'irbs.report.rptRatingNumberMigrate': rptRatingNumberMigrate,
'irbs.report.rptRatingLoanBalanceMigrate': rptRatingLoanBalanceMigrate,
'irbs.report.rptRatingIndustryFocusDist': rptRatingIndustryFocusDist,
'irbs.report.rptModelMonitorDiff': rptModelMonitorDiff,
'irbs.report.rptModelMonitorStable': rptModelMonitorStable,
'irbs.report.rptRatingOverturn': rptRatingOverturn,
'irbs.report.rptRatingAdjust': rptRatingAdjust,
'irbs.report.rptModelMonitorBinomialCheck': rptModelMonitorBinomialCheck,
'irbs.home': irbs_home,
'irbs.irbsHome': irbs_irbsHome,
'irbs.todoTask': irbs_todoTask,
'irbs.doneTask': irbs_doneTask,
'irbs.endTask': irbs_endTask,
'irbs.custRating': irbs_custRating,
'irbs.custSeparateRating': irbs_custSeparateRating,
'irbs.financialRating': irbs_financialRating,
'irbs.cognizanceApply': irbs_cognizanceApply,
'irbs.rebirthApply': irbs_rebirthApply,
'irbs.lgdQuery': irbs_lgdQuery,
'irbs.riskExposureApply': irbs_riskExposureApply,
'irbs.riskExposureApproval': irbs_riskExposureApproval,
'irbs.custRatingHist': irbs_custRatingHist,
'irbs.defaultHist': irbs_defaultHist,
'irbs.riskExposureHist': irbs_riskExposureHist,
'irbs.custInfo': irbs_custInfo,
'irbs.resultQuery': irbs_resultQuery,
'irbs.pressureTest': irbs_pressureTest,
'irbs.ratingAdjustment': irbs_ratingAdjustment,
'irbs.debtFactors': irbs_debtFactors,
'irbs.report.rptRatingDistribution': irbs_report_rptRatingDistribution,
'irbs.report.rptRatingModelFocusDist': irbs_report_rptRatingModelFocusDist,
'irbs.report.rptRatingOrgFocusDist': irbs_report_rptRatingOrgFocusDist,
'irbs.report.rptRatingNumberMigrate': irbs_report_rptRatingNumberMigrate,
'irbs.report.rptRatingLoanBalanceMigrate': irbs_report_rptRatingLoanBalanceMigrate,
'irbs.report.rptRatingIndustryFocusDist': irbs_report_rptRatingIndustryFocusDist,
'irbs.report.rptModelMonitorDiff': irbs_report_rptModelMonitorDiff,
'irbs.report.rptModelMonitorStable': irbs_report_rptModelMonitorStable,
'irbs.report.rptRatingOverturn': irbs_report_rptRatingOverturn,
'irbs.report.rptRatingAdjust': irbs_report_rptRatingAdjust,
'irbs.report.rptModelMonitorBinomialCheck': irbs_report_rptModelMonitorBinomialCheck,
};
export default localComponents;

4
irbs.frontend/util-components-generator.cjs

@ -13,7 +13,7 @@ content +='/**\n';
content +=' * 此文件为自动生成文件,请勿修改\n';
content +=' */\n\n';
for(const route of routesJson){
const componentName =route.component.substring(route.component.lastIndexOf('.')+1);
const componentName =route.component.replaceAll('.','_');
const componentPath =route.componentPath;
content +=`import ${componentName} from '${componentPath}';\n`;
}
@ -21,7 +21,7 @@ for(const route of routesJson){
content +='\n';
content +='const localComponents = { \n';
for(const route of routesJson){
const componentName =route.component.substring(route.component.lastIndexOf('.')+1);
const componentName =route.component.replaceAll('.','_');
content +=`'${route.component}': ${componentName},\n`;
}
content +='}\n\n';

2
irbs.frontend/webpack.env.serve.cjs

@ -19,7 +19,7 @@ module.exports = (env)=> merge(common, mf,{
directory: path.join(__dirname, 'public'),
},
compress: false,
port: 3001,
port: 3000,
hot: true,
// 保证在出现 404 错误时,能够导航到 index.html
historyApiFallback: true,

Loading…
Cancel
Save