From d71049838adedb83b8383a134858506bc3655167 Mon Sep 17 00:00:00 2001 From: "@t2652009480" <2652009480@qq.com> Date: Tue, 2 Jul 2024 14:53:40 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=B0=E5=AD=97=E5=BE=81=E4=BF=A1--=E7=AC=AC?= =?UTF-8?q?=E4=BA=8C=E8=BD=AE=E6=B5=8B=E8=AF=95=E6=8F=90=E4=BA=A4(?= =?UTF-8?q?=E6=88=90=E7=BB=A9=E4=B8=AD=E5=BF=83=E5=B1=95=E7=A4=BA)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pom.xml | 0 .../java/util/convertPDF/PDFConvertUtil.java | 0 .../resources/lib/aspose-cells-20.7-crack.jar | Bin .../main/resources/lib/aspose-pdf-18.2.jar | Bin .../lib/aspose-words-18.10-jdk16.jar | Bin .../StuPersonalInfoEntryController.java | 21 +-- .../digital_credit/entity/StuScoreCenter.java | 9 ++ .../entity/dto/StuCreditScoreDTO.java | 143 ++++++++++++++++++ .../dto/StuPersonalCreditReminderInfoDTO.java | 58 +++++++ .../entity/dto/StuPersonalDefaultInfoDTO.java | 74 +++++++++ .../entity/dto/StuPersonalInfoDTO.java | 104 +++++++++++++ .../StuPersonalOutstandingLoansInfoDTO.java | 98 ++++++++++++ .../StuPersonalCreditReportingService.java | 11 +- .../impl/StuConceptBlockServiceImpl.java | 3 - .../impl/StuPersonalInfoEntryServiceImpl.java | 107 ++++++++----- .../impl/StuScoreCenterServiceImpl.java | 5 - 16 files changed, 570 insertions(+), 63 deletions(-) rename {src/main/java/com/sztzjy/admin-convert-pdf => admin-convert-pdf}/pom.xml (100%) rename {src/main/java/com/sztzjy/admin-convert-pdf => admin-convert-pdf}/src/main/java/util/convertPDF/PDFConvertUtil.java (100%) rename {src/main/java/com/sztzjy/admin-convert-pdf => admin-convert-pdf}/src/main/resources/lib/aspose-cells-20.7-crack.jar (100%) rename {src/main/java/com/sztzjy/admin-convert-pdf => admin-convert-pdf}/src/main/resources/lib/aspose-pdf-18.2.jar (100%) rename {src/main/java/com/sztzjy/admin-convert-pdf => admin-convert-pdf}/src/main/resources/lib/aspose-words-18.10-jdk16.jar (100%) create mode 100644 src/main/java/com/sztzjy/digital_credit/entity/dto/StuCreditScoreDTO.java create mode 100644 src/main/java/com/sztzjy/digital_credit/entity/dto/StuPersonalCreditReminderInfoDTO.java create mode 100644 src/main/java/com/sztzjy/digital_credit/entity/dto/StuPersonalDefaultInfoDTO.java create mode 100644 src/main/java/com/sztzjy/digital_credit/entity/dto/StuPersonalInfoDTO.java create mode 100644 src/main/java/com/sztzjy/digital_credit/entity/dto/StuPersonalOutstandingLoansInfoDTO.java diff --git a/src/main/java/com/sztzjy/admin-convert-pdf/pom.xml b/admin-convert-pdf/pom.xml similarity index 100% rename from src/main/java/com/sztzjy/admin-convert-pdf/pom.xml rename to admin-convert-pdf/pom.xml diff --git a/src/main/java/com/sztzjy/admin-convert-pdf/src/main/java/util/convertPDF/PDFConvertUtil.java b/admin-convert-pdf/src/main/java/util/convertPDF/PDFConvertUtil.java similarity index 100% rename from src/main/java/com/sztzjy/admin-convert-pdf/src/main/java/util/convertPDF/PDFConvertUtil.java rename to admin-convert-pdf/src/main/java/util/convertPDF/PDFConvertUtil.java diff --git a/src/main/java/com/sztzjy/admin-convert-pdf/src/main/resources/lib/aspose-cells-20.7-crack.jar b/admin-convert-pdf/src/main/resources/lib/aspose-cells-20.7-crack.jar similarity index 100% rename from src/main/java/com/sztzjy/admin-convert-pdf/src/main/resources/lib/aspose-cells-20.7-crack.jar rename to admin-convert-pdf/src/main/resources/lib/aspose-cells-20.7-crack.jar diff --git a/src/main/java/com/sztzjy/admin-convert-pdf/src/main/resources/lib/aspose-pdf-18.2.jar b/admin-convert-pdf/src/main/resources/lib/aspose-pdf-18.2.jar similarity index 100% rename from src/main/java/com/sztzjy/admin-convert-pdf/src/main/resources/lib/aspose-pdf-18.2.jar rename to admin-convert-pdf/src/main/resources/lib/aspose-pdf-18.2.jar diff --git a/src/main/java/com/sztzjy/admin-convert-pdf/src/main/resources/lib/aspose-words-18.10-jdk16.jar b/admin-convert-pdf/src/main/resources/lib/aspose-words-18.10-jdk16.jar similarity index 100% rename from src/main/java/com/sztzjy/admin-convert-pdf/src/main/resources/lib/aspose-words-18.10-jdk16.jar rename to admin-convert-pdf/src/main/resources/lib/aspose-words-18.10-jdk16.jar diff --git a/src/main/java/com/sztzjy/digital_credit/controller/StuPersonalInfoEntryController.java b/src/main/java/com/sztzjy/digital_credit/controller/StuPersonalInfoEntryController.java index 30fba27..1dd3ea6 100644 --- a/src/main/java/com/sztzjy/digital_credit/controller/StuPersonalInfoEntryController.java +++ b/src/main/java/com/sztzjy/digital_credit/controller/StuPersonalInfoEntryController.java @@ -4,6 +4,7 @@ import com.itextpdf.text.pdf.parser.PathConstructionRenderInfo; import com.sztzjy.digital_credit.annotation.AnonymousAccess; import com.sztzjy.digital_credit.config.Constant; import com.sztzjy.digital_credit.entity.*; +import com.sztzjy.digital_credit.entity.dto.*; import com.sztzjy.digital_credit.service.StuPersonalCreditReportingService; import com.sztzjy.digital_credit.service.StuRateService; import com.sztzjy.digital_credit.util.ResultEntity; @@ -60,8 +61,8 @@ public class StuPersonalInfoEntryController { @ApiOperation("个人信息--提交并计分(自动保存)") @AnonymousAccess @PostMapping("/submitPersonalInfo") - public ResultEntity submitPersonalInfo(@RequestBody StuPersonalInfo stuPersonalInfo,String module){ - reportingService.submitPersonalInfo(stuPersonalInfo,module); + public ResultEntity submitPersonalInfo(@RequestBody StuPersonalInfoDTO stuPersonalInfoDTO){ + reportingService.submitPersonalInfo(stuPersonalInfoDTO); return new ResultEntity<>(HttpStatus.OK,"提交成功"); } @@ -85,8 +86,8 @@ public class StuPersonalInfoEntryController { @ApiOperation("信用记录--信用提示提交并计分(自动保存)") @AnonymousAccess @PostMapping("/submitCreditReminder") - public ResultEntity submitCreditReminder(@RequestBody StuPersonalCreditReminderInfo creditReminderInfo,String module){ - reportingService.submitCreditReminder(creditReminderInfo,module); + public ResultEntity submitCreditReminder(@RequestBody StuPersonalCreditReminderInfoDTO creditReminderInfoDTO){ + reportingService.submitCreditReminder(creditReminderInfoDTO); return new ResultEntity<>(HttpStatus.OK,"提交成功"); } @@ -110,8 +111,8 @@ public class StuPersonalInfoEntryController { @ApiOperation("信用记录--逾期及违约信息提交并计分(自动保存)") @AnonymousAccess @PostMapping("/submitOverdueInfo") - public ResultEntity submitOverdueInfo(@RequestBody StuPersonalDefaultInfo stuPersonalDefaultInfo,String module){ - reportingService.submitOverdueInfo(stuPersonalDefaultInfo,module); + public ResultEntity submitOverdueInfo(@RequestBody StuPersonalDefaultInfoDTO defaultInfoDTO){ + reportingService.submitOverdueInfo(defaultInfoDTO); return new ResultEntity<>(HttpStatus.OK,"提交成功"); } @@ -135,8 +136,8 @@ public class StuPersonalInfoEntryController { @ApiOperation("信用记录--授信及负债信息概要提交并计分(自动保存)") @AnonymousAccess @PostMapping("/submitCreditGranting") - public ResultEntity submitCreditGranting(@RequestBody StuPersonalOutstandingLoansInfo stuPersonalOutstandingLoansInfo,String module){ - reportingService.submitCreditGranting(stuPersonalOutstandingLoansInfo,module); + public ResultEntity submitCreditGranting(@RequestBody StuPersonalOutstandingLoansInfoDTO loansInfoDTO){ + reportingService.submitCreditGranting(loansInfoDTO); return new ResultEntity<>(HttpStatus.OK,"提交成功"); } @@ -161,8 +162,8 @@ public class StuPersonalInfoEntryController { @ApiOperation("信用评分提交并计分(自动保存)") @AnonymousAccess @PostMapping("/submitCreditScore") - public ResultEntity submitCreditScore(@RequestBody StuCreditScore stuCreditScore,String module){ - reportingService.submitCreditScore(stuCreditScore,module); + public ResultEntity submitCreditScore(@RequestBody StuCreditScoreDTO stuCreditScoreDTO){ + reportingService.submitCreditScore(stuCreditScoreDTO); return new ResultEntity<>(HttpStatus.OK,"提交成功"); } diff --git a/src/main/java/com/sztzjy/digital_credit/entity/StuScoreCenter.java b/src/main/java/com/sztzjy/digital_credit/entity/StuScoreCenter.java index 12adddc..9baa69c 100644 --- a/src/main/java/com/sztzjy/digital_credit/entity/StuScoreCenter.java +++ b/src/main/java/com/sztzjy/digital_credit/entity/StuScoreCenter.java @@ -100,6 +100,15 @@ public class StuScoreCenter { this.scoreWeight=tchModuleWeith.getEntCreditRatingWeith(); } } + if(module.equals(Constant.USER_PROFILE)){ + this.scoreWeight=tchModuleWeith.getCaseUserProfileWeith(); + } + if(module.equals(Constant.PERSONAL_CREDIT)){ + this.scoreWeight=tchModuleWeith.getCasePersonalCreditWeith(); + } + if(module.equals(Constant.CORPORATE_CREDIT)){ + this.scoreWeight=tchModuleWeith.getCaseCorporateCreditWeith(); + } } diff --git a/src/main/java/com/sztzjy/digital_credit/entity/dto/StuCreditScoreDTO.java b/src/main/java/com/sztzjy/digital_credit/entity/dto/StuCreditScoreDTO.java new file mode 100644 index 0000000..8e924b1 --- /dev/null +++ b/src/main/java/com/sztzjy/digital_credit/entity/dto/StuCreditScoreDTO.java @@ -0,0 +1,143 @@ +package com.sztzjy.digital_credit.entity.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Date; + +/** + * @author tz + * @date 2024/7/1 18:33 + */ +@Data +public class StuCreditScoreDTO { + @ApiModelProperty("ID") + private Integer id; + + @ApiModelProperty("性别得分") + private String genderScore; + + @ApiModelProperty("年龄得分") + private String ageScore; + + @ApiModelProperty("婚姻状况得分") + private String maritalStatusScore; + + @ApiModelProperty("文化程度得分") + private String educationalLevelScore; + + @ApiModelProperty("驾龄得分") + private String drivingExperienceScore; + + @ApiModelProperty("健康状况得分") + private String healthConditionScore; + + @ApiModelProperty("在目前住址居住时间得分") + private String residenceTimeScore; + + @ApiModelProperty("自然情况总得分") + private String naturalConditionsScore; + + @ApiModelProperty("职业得分") + private String occupationScore; + + @ApiModelProperty("在现单位年限得分") + private String yearsInCurrentCompanyScore; + + @ApiModelProperty("职务得分") + private String postScore; + + @ApiModelProperty("技术职称得分") + private String technicalTitleScore; + + @ApiModelProperty("个人年收入得分") + private String personalAnnualIncomeScore; + + @ApiModelProperty("职业情况总得分") + private String occupationalSituationScore; + + @ApiModelProperty("住房情况得分") + private String housingSituationScore; + + @ApiModelProperty("净资产情况得分") + private String netAssetSituationScore; + + @ApiModelProperty("车辆情况得分") + private String vehicleConditionScore; + + @ApiModelProperty("家庭人均月收入得分") + private String monthlyIncomeScore; + + @ApiModelProperty("家庭人均月固定支出得分") + private String monthlyFixedScore; + + @ApiModelProperty("债务收入比得分") + private String debtToIncomeRatio; + + @ApiModelProperty("供养人数得分") + private String numberOfDependentsScore; + + @ApiModelProperty("保障支持总得分") + private String guaranteeSupportScore; + + @ApiModelProperty("贷款历史得分") + private String loanHistoryScore; + + @ApiModelProperty("持卡情况得分") + private String cardholderStatusScore; + + @ApiModelProperty("与银行关系总得分") + private String relationshipWithBanksScore; + + @ApiModelProperty("信用记录得分") + private String creditHistoryScore; + + @ApiModelProperty("个人不良声誉得分") + private String personalBadReputationScore; + + @ApiModelProperty("个人不良行为或记录得分") + private String personalMisconductOrRecordsScore; + + @ApiModelProperty("欠税记录得分") + private String taxArrearsRecordsScore; + + @ApiModelProperty("民事判决或强制执行记录得分") + private String civilJudgmentOrEnforcementScore; + + @ApiModelProperty("社保公积金缴费记录得分") + private String socialSecurityAndProvidentFundPaymentScore; + + @ApiModelProperty("公用事业缴费记录得分") + private String publicUtilityPaymentRecordsScore; + + @ApiModelProperty("执业资格证记录得分") + private String practiceQualificationCertificateScore; + + @ApiModelProperty("行政奖励记录得分") + private String administrativeRewardScore; + + @ApiModelProperty("调整项总得分") + private String adjustmentItemsScore; + + @ApiModelProperty("最终综合得分") + private String finalComprehensiveScore; + + @ApiModelProperty("最终综合等级") + private String finalComprehensiveLevel; + + @ApiModelProperty("用户ID") + private String userId; + + @ApiModelProperty("创建时间") + private Date creationTime; + + @ApiModelProperty("更新时间") + private Date updateTime; + + @ApiModelProperty("提交状态") + private Integer submitStatus; + + @ApiModelProperty("模块") + private String module; + +} diff --git a/src/main/java/com/sztzjy/digital_credit/entity/dto/StuPersonalCreditReminderInfoDTO.java b/src/main/java/com/sztzjy/digital_credit/entity/dto/StuPersonalCreditReminderInfoDTO.java new file mode 100644 index 0000000..4b1c4ae --- /dev/null +++ b/src/main/java/com/sztzjy/digital_credit/entity/dto/StuPersonalCreditReminderInfoDTO.java @@ -0,0 +1,58 @@ +package com.sztzjy.digital_credit.entity.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Date; + +/** + * @author tz + * @date 2024/7/1 18:26 + */ +@Data +public class StuPersonalCreditReminderInfoDTO { + @ApiModelProperty("ID") + private Integer id; + + @ApiModelProperty("住房贷款笔数") + private Integer numberOfHousingLoans; + + @ApiModelProperty("其他贷款笔数") + private Integer numberOfOtherLoans; + + @ApiModelProperty("首笔贷款发放月份") + private String firstLoanDisbursementMonth; + + @ApiModelProperty("贷记卡账户数") + private Integer numberOfCreditCardAccounts; + + @ApiModelProperty("首张贷记卡发卡月份") + private String firstCreditCardIssuanceMonth; + + @ApiModelProperty("准贷记卡账户数") + private Integer numberOfQuasiCreditCardAccounts; + + @ApiModelProperty("首张准贷记卡发卡月份") + private String firstQuasiCreditCardMonth; + + @ApiModelProperty("本人声明数目") + private Integer numberOfStatementsMadeByMyself; + + @ApiModelProperty("异议标注数目") + private Integer numberOfObjectionAnnotations; + + @ApiModelProperty("用户ID") + private String userId; + + @ApiModelProperty("创建时间") + private Date creationTime; + + @ApiModelProperty("更新时间") + private Date updateTime; + + @ApiModelProperty("提交状态") + private Integer submitStatus; + + @ApiModelProperty("模块") + private String module; +} diff --git a/src/main/java/com/sztzjy/digital_credit/entity/dto/StuPersonalDefaultInfoDTO.java b/src/main/java/com/sztzjy/digital_credit/entity/dto/StuPersonalDefaultInfoDTO.java new file mode 100644 index 0000000..d44ba32 --- /dev/null +++ b/src/main/java/com/sztzjy/digital_credit/entity/dto/StuPersonalDefaultInfoDTO.java @@ -0,0 +1,74 @@ +package com.sztzjy.digital_credit.entity.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * @author tz + * @date 2024/7/1 18:28 + */ +@Data +public class StuPersonalDefaultInfoDTO { + @ApiModelProperty("ID") + private Integer id; + + @ApiModelProperty("呆账信息-笔数") + private Integer badDebtInformationQuantity; + + @ApiModelProperty("呆账信息-余额") + private BigDecimal badDebtInformationBalance; + + @ApiModelProperty("资产处置信息-笔数") + private Integer assetDisposalInformationQuantity; + + @ApiModelProperty("资产处置信息-余额") + private BigDecimal assetDisposalInformationBalance; + + @ApiModelProperty("保证人代偿信息-笔数") + private Integer guarantorCompensationInformationQuantity; + + @ApiModelProperty("保证人代偿信息-余额") + private BigDecimal guarantorCompensationInformationBalance; + + @ApiModelProperty("用户ID") + private String userId; + + @ApiModelProperty("贷款逾期-笔数") + private Integer overdueQuantity; + + @ApiModelProperty("贷款逾期-月份数") + private Integer overdueNumberOfMonths; + + @ApiModelProperty("贷款逾期-单月最高逾期总额") + private BigDecimal overdueMaximumOverdueTotalAmountSingleMonth; + + @ApiModelProperty("贷款逾期-最长逾期月数") + private Integer overdueMaximumOverdueMonths; + + @ApiModelProperty("贷记卡逾期-账户数") + private Integer creditCardOverdueNumberOfAccounts; + + @ApiModelProperty("贷记卡逾期-月份数") + private Integer creditCardOverdueNumberOfMonths; + + @ApiModelProperty("贷记卡逾期-单月最高逾期总额") + private BigDecimal creditCardOverdueMaximumOverdueTotalAmountSingleMonth; + + @ApiModelProperty("贷记卡逾期-最长逾期月数") + private Integer creditCardOverdueMaximumOverdueMonths; + + @ApiModelProperty("创建时间") + private Date creationTime; + + @ApiModelProperty("更新时间") + private Date updateTime; + + @ApiModelProperty("提交状态") + private Integer submitStatus; + + @ApiModelProperty("模块") + private String module; +} diff --git a/src/main/java/com/sztzjy/digital_credit/entity/dto/StuPersonalInfoDTO.java b/src/main/java/com/sztzjy/digital_credit/entity/dto/StuPersonalInfoDTO.java new file mode 100644 index 0000000..a431774 --- /dev/null +++ b/src/main/java/com/sztzjy/digital_credit/entity/dto/StuPersonalInfoDTO.java @@ -0,0 +1,104 @@ +package com.sztzjy.digital_credit.entity.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * @author tz + * @date 2024/7/1 18:13 + */ +@Data +public class StuPersonalInfoDTO { + @ApiModelProperty("ID") + private Integer id; + + @ApiModelProperty("姓名") + private String name; + + @ApiModelProperty("性别") + private String gender; + + @ApiModelProperty("年龄") + private String age; + + @ApiModelProperty("出生日期") + private Date dateOfBirth; + + @ApiModelProperty("证件类型") + private String documentType; + + @ApiModelProperty("证件号码") + private String identificationNumber; + + @ApiModelProperty("婚姻状况(已婚、未婚、离异、其他)") + private String maritalStatus; + + @ApiModelProperty("手机号码") + private String phoneNumber; + + @ApiModelProperty("学历") + private String educationalBackground; + + @ApiModelProperty("学位") + private String degree; + + @ApiModelProperty("通讯地址") + private String mailingAddress; + + @ApiModelProperty("户籍地址") + private String registeredResidenceAddress; + + @ApiModelProperty("工作单位") + private String workUnit; + + @ApiModelProperty("职业") + private String occupation; + + @ApiModelProperty("行业") + private String industry; + + @ApiModelProperty("职称") + private String professionalTitle; + + @ApiModelProperty("年收入区间") + private String annualIncomeRange; + + @ApiModelProperty("资产合计") + private BigDecimal totalAssets; + + @ApiModelProperty("负债合计") + private BigDecimal totalLiabilities; + + @ApiModelProperty("净值合计") + private BigDecimal totalNetWorth; + + @ApiModelProperty("配偶姓名") + private String spouseName; + + @ApiModelProperty("配偶联系电话") + private String spouseIdentificationNumber; + + @ApiModelProperty("配偶职业") + private String spousePhoneNumber; + + @ApiModelProperty("配偶工作单位") + private String spouseWorkUnit; + + @ApiModelProperty("用户ID") + private String userId; + + @ApiModelProperty("创建时间") + private Date creationTime; + + @ApiModelProperty("更新时间") + private Date updateTime; + + @ApiModelProperty("提交状态") + private Integer submitStatus; + + @ApiModelProperty("模块") + private String module; +} diff --git a/src/main/java/com/sztzjy/digital_credit/entity/dto/StuPersonalOutstandingLoansInfoDTO.java b/src/main/java/com/sztzjy/digital_credit/entity/dto/StuPersonalOutstandingLoansInfoDTO.java new file mode 100644 index 0000000..433998e --- /dev/null +++ b/src/main/java/com/sztzjy/digital_credit/entity/dto/StuPersonalOutstandingLoansInfoDTO.java @@ -0,0 +1,98 @@ +package com.sztzjy.digital_credit.entity.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * @author tz + * @date 2024/7/1 18:30 + */ +@Data +public class StuPersonalOutstandingLoansInfoDTO { + @ApiModelProperty("ID") + private Integer id; + + @ApiModelProperty("未结清贷款-贷款机构数") + private Integer numberOfLoanInstitutions; + + @ApiModelProperty("未结清贷款-笔数") + private Integer numberOfTransactions; + + @ApiModelProperty("未结清贷款-合同总额") + private BigDecimal totalContractAmount; + + @ApiModelProperty("未结清贷款-余额") + private BigDecimal balance; + + @ApiModelProperty("未结清贷款最近6个月平均应还款") + private BigDecimal averageRepaymentDueRecentlySixMonths; + + @ApiModelProperty("未销户贷记卡-发卡机构数") + private Integer creditCardNumberOfIssuingInstitutions; + + @ApiModelProperty("未销户贷记卡-账户数") + private Integer creditCardNumberOfAccounts; + + @ApiModelProperty("未销户贷记卡-授信总额") + private BigDecimal creditCardTotalCreditAmount; + + @ApiModelProperty("未销户贷记卡-单家行最高授信额") + private BigDecimal creditCardMaximumCreditLimitBank; + + @ApiModelProperty("未销户贷记卡-单家行最低授信额") + private BigDecimal creditCardMinimumCreditLimitBank; + + @ApiModelProperty("未销户贷记卡-已用额度") + private BigDecimal creditCardUsedCreditLimit; + + @ApiModelProperty("未销户贷记卡-最近6个月平均使用额度") + private BigDecimal creditCardSixMonthsths; + + @ApiModelProperty("未销户准贷记卡-发卡机构数") + private Integer quasiCreditCardNumberOfIssuingInstitutions; + + @ApiModelProperty("未销户准贷记卡-账户数") + private Integer quasiCreditCardNumberOfAccounts; + + @ApiModelProperty("未销户准贷记卡-授信总额") + private BigDecimal quasiCreditCardTotalCreditAmount; + + @ApiModelProperty("未销户准贷记卡-单家行最高授信额") + private BigDecimal quasiCreditCardLimitForSingleBank; + + @ApiModelProperty("未销户准贷记卡-单家行最低授信额") + private BigDecimal quasiCreditCardMinimumCreditLimitForSingleBank; + + @ApiModelProperty("未销户准贷记卡-透支额度") + private BigDecimal quasiCreditCardLineOfCredit; + + @ApiModelProperty("未销户准贷记卡-最近6个月平均透支余额") + private BigDecimal quasiCreditCardSixMonths; + + @ApiModelProperty("对外担保信息-担保笔数") + private Integer guaranteeNumberOfGuarantees; + + @ApiModelProperty("对外担保信息-担保金额") + private BigDecimal guaranteeAmount; + + @ApiModelProperty("对外担保信息-担保本金余额") + private BigDecimal guaranteedPrincipalBalance; + + @ApiModelProperty("创建时间") + private Date creationTime; + + @ApiModelProperty("更新时间") + private Date updateTime; + + @ApiModelProperty("用户ID") + private String userId; + + @ApiModelProperty("提交状态") + private Integer submitStatus; + + @ApiModelProperty("模块") + private String module; +} diff --git a/src/main/java/com/sztzjy/digital_credit/service/StuPersonalCreditReportingService.java b/src/main/java/com/sztzjy/digital_credit/service/StuPersonalCreditReportingService.java index df64667..9034e03 100644 --- a/src/main/java/com/sztzjy/digital_credit/service/StuPersonalCreditReportingService.java +++ b/src/main/java/com/sztzjy/digital_credit/service/StuPersonalCreditReportingService.java @@ -2,6 +2,7 @@ package com.sztzjy.digital_credit.service; import com.itextpdf.text.pdf.parser.PathConstructionRenderInfo; import com.sztzjy.digital_credit.entity.*; +import com.sztzjy.digital_credit.entity.dto.*; /** * 个人征信信息录入业务层 @@ -15,7 +16,7 @@ public interface StuPersonalCreditReportingService { void servePersonalInfo(StuPersonalInfo stuPersonalInfo); - void submitPersonalInfo(StuPersonalInfo stuPersonalInfo,String module); + void submitPersonalInfo(StuPersonalInfoDTO stuPersonalInfoDTO); //--------------------------------------------------------------------- @@ -26,14 +27,14 @@ public interface StuPersonalCreditReportingService { void serveCreditReminder(StuPersonalCreditReminderInfo creditReminderInfo); - void submitCreditReminder(StuPersonalCreditReminderInfo creditReminderInfo,String module); + void submitCreditReminder(StuPersonalCreditReminderInfoDTO creditReminderInfoDTO); //逾期及违约信息概要 StuPersonalDefaultInfo getOverdueInfo(String userId); void serveOverdueInfo(StuPersonalDefaultInfo stuPersonalDefaultInfo); - void submitOverdueInfo(StuPersonalDefaultInfo stuPersonalDefaultInfo,String module); + void submitOverdueInfo(StuPersonalDefaultInfoDTO defaultInfoDTO); //授信及负债信息概要 StuPersonalOutstandingLoansInfo getCreditGranting(String userId); @@ -41,7 +42,7 @@ public interface StuPersonalCreditReportingService { void serveCreditGranting(StuPersonalOutstandingLoansInfo stuPersonalOutstandingLoansInfo); - void submitCreditGranting(StuPersonalOutstandingLoansInfo stuPersonalOutstandingLoansInfo,String module); + void submitCreditGranting(StuPersonalOutstandingLoansInfoDTO loansInfoDTO); //--------------------------------------------------------------------- @@ -52,7 +53,7 @@ public interface StuPersonalCreditReportingService { void serveCreditScore(StuCreditScore stuCreditScore); - void submitCreditScore(StuCreditScore stuCreditScore,String module); + void submitCreditScore(StuCreditScoreDTO stuCreditScoreDTO); //--------------------------------------------------------------------- diff --git a/src/main/java/com/sztzjy/digital_credit/service/impl/StuConceptBlockServiceImpl.java b/src/main/java/com/sztzjy/digital_credit/service/impl/StuConceptBlockServiceImpl.java index 681cf35..329b355 100644 --- a/src/main/java/com/sztzjy/digital_credit/service/impl/StuConceptBlockServiceImpl.java +++ b/src/main/java/com/sztzjy/digital_credit/service/impl/StuConceptBlockServiceImpl.java @@ -8,11 +8,8 @@ import com.sztzjy.digital_credit.entity.*; import com.sztzjy.digital_credit.entity.dto.StuBlockProductWithDTO; import com.sztzjy.digital_credit.mapper.*; import com.sztzjy.digital_credit.service.StuConceptBlockService; -import com.sztzjy.digital_credit.util.ConvertUtil; import com.sztzjy.digital_credit.util.PdfUtil; -import com.sztzjy.digital_credit.util.compute.ScoringUtil; import com.sztzjy.digital_credit.util.file.IFileUtil; -import com.sztzjy.digital_credit.util.file.LocalFileUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.mock.web.MockMultipartFile; diff --git a/src/main/java/com/sztzjy/digital_credit/service/impl/StuPersonalInfoEntryServiceImpl.java b/src/main/java/com/sztzjy/digital_credit/service/impl/StuPersonalInfoEntryServiceImpl.java index 113ef3a..47e0c13 100644 --- a/src/main/java/com/sztzjy/digital_credit/service/impl/StuPersonalInfoEntryServiceImpl.java +++ b/src/main/java/com/sztzjy/digital_credit/service/impl/StuPersonalInfoEntryServiceImpl.java @@ -1,13 +1,16 @@ package com.sztzjy.digital_credit.service.impl; +import cn.hutool.cache.CacheUtil; import com.itextpdf.text.DocumentException; import com.itextpdf.text.pdf.parser.PathConstructionRenderInfo; import com.sztzjy.digital_credit.config.exception.handler.DigitalEconomyxception; import com.sztzjy.digital_credit.entity.*; +import com.sztzjy.digital_credit.entity.dto.*; import com.sztzjy.digital_credit.mapper.*; import com.sztzjy.digital_credit.service.StuPersonalCreditReportingService; import com.sztzjy.digital_credit.service.StuPersonalCreditService; import com.sztzjy.digital_credit.util.BigDecimalUtils; +import com.sztzjy.digital_credit.util.ConvertUtil; import org.hibernate.service.spi.ServiceException; import org.springframework.beans.BeanUtils; import org.springframework.context.annotation.Lazy; @@ -48,6 +51,8 @@ public class StuPersonalInfoEntryServiceImpl implements StuPersonalCreditReporti BigDecimalUtils bigDecimalUtils; @Resource StuUserMapper stuUserMapper; + @Resource + ConvertUtil convertUtil; @Override public StuPersonalInfo getPersonalInfo(String userId) { StuPersonalInfoExample example=new StuPersonalInfoExample(); @@ -90,9 +95,9 @@ public class StuPersonalInfoEntryServiceImpl implements StuPersonalCreditReporti } @Override - public void submitPersonalInfo(StuPersonalInfo stuPersonalInfo,String module) { + public void submitPersonalInfo(StuPersonalInfoDTO stuPersonalInfoDTO) { StuPersonalInfoExample example=new StuPersonalInfoExample(); - example.createCriteria().andUserIdEqualTo(stuPersonalInfo.getUserId()); + example.createCriteria().andUserIdEqualTo(stuPersonalInfoDTO.getUserId()); List stuPersonalInfos = stuPersonalInfoMapper.selectByExample(example); //判断用户是否已提交 if(!stuPersonalInfos.isEmpty()){ @@ -104,7 +109,7 @@ public class StuPersonalInfoEntryServiceImpl implements StuPersonalCreditReporti return; }else { // TODO: 2024/4/15 自动保存并给用户计分并更新提交状态 - BeanUtils.copyProperties(stuPersonalInfo,personalInfo); + BeanUtils.copyProperties(stuPersonalInfoDTO,personalInfo); personalInfo.setUpdateTime(new Date()); personalInfo.setId(id); personalInfo.setSubmitStatus(1); @@ -113,13 +118,17 @@ public class StuPersonalInfoEntryServiceImpl implements StuPersonalCreditReporti }else { Integer uuid = UUID.randomUUID().toString().replaceAll("-", "").hashCode(); uuid = uuid < 0 ? -uuid : uuid;//String.hashCode() 值会为空 - stuPersonalInfo.setId(uuid); - stuPersonalInfo.setCreationTime(new Date()); - stuPersonalInfo.setSubmitStatus(1); - stuPersonalInfoMapper.insert(stuPersonalInfo); + stuPersonalInfoDTO.setId(uuid); + stuPersonalInfoDTO.setCreationTime(new Date()); + stuPersonalInfoDTO.setSubmitStatus(1); + + StuPersonalInfo personalInfo = convertUtil.DTOToEntity(stuPersonalInfoDTO, StuPersonalInfo.class); + stuPersonalInfoMapper.insert(personalInfo); } //计分 - stuPersonalCreditService.personalInfoScoring(stuPersonalInfo,module); + StuPersonalInfo personalInfo = convertUtil.DTOToEntity(stuPersonalInfoDTO, StuPersonalInfo.class); + String module = stuPersonalInfoDTO.getModule(); + stuPersonalCreditService.personalInfoScoring(personalInfo,module); } @Override @@ -164,9 +173,9 @@ public class StuPersonalInfoEntryServiceImpl implements StuPersonalCreditReporti } @Override - public void submitCreditReminder(StuPersonalCreditReminderInfo creditReminderInfo,String module) { + public void submitCreditReminder(StuPersonalCreditReminderInfoDTO creditReminderInfoDTO) { StuPersonalCreditReminderInfoExample example=new StuPersonalCreditReminderInfoExample(); - example.createCriteria().andUserIdEqualTo(creditReminderInfo.getUserId()); + example.createCriteria().andUserIdEqualTo(creditReminderInfoDTO.getUserId()); List stuPersonalCreditReminderInfos = stuPersonalCreditReminderInfoMapper.selectByExample(example); //判断用户是否已提交 if(!stuPersonalCreditReminderInfos.isEmpty()){ @@ -177,7 +186,7 @@ public class StuPersonalInfoEntryServiceImpl implements StuPersonalCreditReporti return; }else { // TODO: 2024/4/15 更新数据或自动保存并给用户计分并更新提交状态 - BeanUtils.copyProperties(creditReminderInfo,reminderInfo); + BeanUtils.copyProperties(creditReminderInfoDTO,reminderInfo); reminderInfo.setId(id); reminderInfo.setUpdateTime(new Date()); reminderInfo.setSubmitStatus(1); @@ -186,13 +195,17 @@ public class StuPersonalInfoEntryServiceImpl implements StuPersonalCreditReporti }else { Integer uuid = UUID.randomUUID().toString().replaceAll("-", "").hashCode(); uuid = uuid < 0 ? -uuid : uuid;//String.hashCode() 值会为空 - creditReminderInfo.setId(uuid); - creditReminderInfo.setCreationTime(new Date()); - creditReminderInfo.setSubmitStatus(1); - stuPersonalCreditReminderInfoMapper.insert(creditReminderInfo); + creditReminderInfoDTO.setId(uuid); + creditReminderInfoDTO.setCreationTime(new Date()); + creditReminderInfoDTO.setSubmitStatus(1); + + StuPersonalCreditReminderInfo reminderInfo = convertUtil.DTOToEntity(creditReminderInfoDTO, StuPersonalCreditReminderInfo.class); + stuPersonalCreditReminderInfoMapper.insert(reminderInfo); } + String module = creditReminderInfoDTO.getModule(); + StuPersonalCreditReminderInfo reminderInfo = convertUtil.DTOToEntity(creditReminderInfoDTO, StuPersonalCreditReminderInfo.class); //计分 - stuPersonalCreditService.creditReminderInfoScoring(creditReminderInfo,module); + stuPersonalCreditService.creditReminderInfoScoring(reminderInfo,module); } @Override @@ -237,9 +250,9 @@ public class StuPersonalInfoEntryServiceImpl implements StuPersonalCreditReporti } @Override - public void submitOverdueInfo(StuPersonalDefaultInfo stuPersonalDefaultInfo,String module) { + public void submitOverdueInfo(StuPersonalDefaultInfoDTO defaultInfoDTO) { StuPersonalDefaultInfoExample example=new StuPersonalDefaultInfoExample(); - example.createCriteria().andUserIdEqualTo(stuPersonalDefaultInfo.getUserId()); + example.createCriteria().andUserIdEqualTo(defaultInfoDTO.getUserId()); List stuPersonalDefaultInfos = stuPersonalDefaultInfoMapper.selectByExample(example); //判断用户是否已提交 if(!stuPersonalDefaultInfos.isEmpty()){ @@ -250,7 +263,7 @@ public class StuPersonalInfoEntryServiceImpl implements StuPersonalCreditReporti return; }else { // TODO: 2024/4/15 更新数据或自动保存并给用户计分并更新提交状态 - BeanUtils.copyProperties(stuPersonalDefaultInfo,personalDefaultInfo); + BeanUtils.copyProperties(defaultInfoDTO,personalDefaultInfo); personalDefaultInfo.setId(id); personalDefaultInfo.setUpdateTime(new Date()); personalDefaultInfo.setSubmitStatus(1); @@ -259,13 +272,18 @@ public class StuPersonalInfoEntryServiceImpl implements StuPersonalCreditReporti }else { Integer uuid = UUID.randomUUID().toString().replaceAll("-", "").hashCode(); uuid = uuid < 0 ? -uuid : uuid;//String.hashCode() 值会为空 - stuPersonalDefaultInfo.setId(uuid); - stuPersonalDefaultInfo.setCreationTime(new Date()); - stuPersonalDefaultInfo.setSubmitStatus(1); - stuPersonalDefaultInfoMapper.insert(stuPersonalDefaultInfo); + defaultInfoDTO.setId(uuid); + defaultInfoDTO.setCreationTime(new Date()); + defaultInfoDTO.setSubmitStatus(1); + + StuPersonalDefaultInfo personalDefaultInfo = convertUtil.DTOToEntity(defaultInfoDTO, StuPersonalDefaultInfo.class); + + stuPersonalDefaultInfoMapper.insert(personalDefaultInfo); } //计分 - stuPersonalCreditService.overdueInfoScoring(stuPersonalDefaultInfo,module); + String module = defaultInfoDTO.getModule(); + StuPersonalDefaultInfo personalDefaultInfo = convertUtil.DTOToEntity(defaultInfoDTO, StuPersonalDefaultInfo.class); + stuPersonalCreditService.overdueInfoScoring(personalDefaultInfo,module); } @Override @@ -310,9 +328,9 @@ public class StuPersonalInfoEntryServiceImpl implements StuPersonalCreditReporti } @Override - public void submitCreditGranting(StuPersonalOutstandingLoansInfo stuPersonalOutstandingLoansInfo,String module) { + public void submitCreditGranting(StuPersonalOutstandingLoansInfoDTO loansInfoDTO) { StuPersonalOutstandingLoansInfoExample example=new StuPersonalOutstandingLoansInfoExample(); - example.createCriteria().andUserIdEqualTo(stuPersonalOutstandingLoansInfo.getUserId()); + example.createCriteria().andUserIdEqualTo(loansInfoDTO.getUserId()); List stuPersonalOutstandingLoansInfos = stuPersonalOutstandingLoansInfoMapper.selectByExample(example); //判断用户是否已提交 if(!stuPersonalOutstandingLoansInfos.isEmpty()){ @@ -323,7 +341,7 @@ public class StuPersonalInfoEntryServiceImpl implements StuPersonalCreditReporti return; }else { // TODO: 2024/4/15 更新数据或自动保存并给用户计分并更新提交状态 - BeanUtils.copyProperties(stuPersonalOutstandingLoansInfo,personalOutstandingLoansInfo); + BeanUtils.copyProperties(loansInfoDTO,personalOutstandingLoansInfo); personalOutstandingLoansInfo.setId(id); personalOutstandingLoansInfo.setUpdateTime(new Date()); personalOutstandingLoansInfo.setSubmitStatus(1); @@ -332,13 +350,18 @@ public class StuPersonalInfoEntryServiceImpl implements StuPersonalCreditReporti }else { Integer uuid = UUID.randomUUID().toString().replaceAll("-", "").hashCode(); uuid = uuid < 0 ? -uuid : uuid;//String.hashCode() 值会为空 - stuPersonalOutstandingLoansInfo.setId(uuid); - stuPersonalOutstandingLoansInfo.setCreationTime(new Date()); - stuPersonalOutstandingLoansInfo.setSubmitStatus(1); - stuPersonalOutstandingLoansInfoMapper.insert(stuPersonalOutstandingLoansInfo); + loansInfoDTO.setId(uuid); + loansInfoDTO.setCreationTime(new Date()); + loansInfoDTO.setSubmitStatus(1); + + StuPersonalOutstandingLoansInfo personalOutstandingLoansInfo = convertUtil.DTOToEntity(loansInfoDTO, StuPersonalOutstandingLoansInfo.class); + + stuPersonalOutstandingLoansInfoMapper.insert(personalOutstandingLoansInfo); } //计分 - stuPersonalCreditService.creditGrantingScoring(stuPersonalOutstandingLoansInfo,module); + String module = loansInfoDTO.getModule(); + StuPersonalOutstandingLoansInfo personalOutstandingLoansInfo = convertUtil.DTOToEntity(loansInfoDTO, StuPersonalOutstandingLoansInfo.class); + stuPersonalCreditService.creditGrantingScoring(personalOutstandingLoansInfo,module); } @Override @@ -383,9 +406,9 @@ public class StuPersonalInfoEntryServiceImpl implements StuPersonalCreditReporti } @Override - public void submitCreditScore(StuCreditScore stuCreditScore,String module) { + public void submitCreditScore(StuCreditScoreDTO stuCreditScoreDTO) { StuCreditScoreExample example=new StuCreditScoreExample(); - example.createCriteria().andUserIdEqualTo(stuCreditScore.getUserId()); + example.createCriteria().andUserIdEqualTo(stuCreditScoreDTO.getUserId()); List stuCreditScores = stuCreditScoreMapper.selectByExample(example); //判断用户是否已提交 if(!stuCreditScores.isEmpty()){ @@ -396,7 +419,7 @@ public class StuPersonalInfoEntryServiceImpl implements StuPersonalCreditReporti return; }else { // TODO: 2024/4/15 更新数据或自动保存并给用户计分并更新提交状态 - BeanUtils.copyProperties(stuCreditScore,creditScore); + BeanUtils.copyProperties(stuCreditScoreDTO,creditScore); creditScore.setId(id); creditScore.setUpdateTime(new Date()); creditScore.setSubmitStatus(1); @@ -405,13 +428,17 @@ public class StuPersonalInfoEntryServiceImpl implements StuPersonalCreditReporti }else { Integer uuid = UUID.randomUUID().toString().replaceAll("-", "").hashCode(); uuid = uuid < 0 ? -uuid : uuid;//String.hashCode() 值会为空 - stuCreditScore.setId(uuid); - stuCreditScore.setCreationTime(new Date()); - stuCreditScore.setSubmitStatus(1); - stuCreditScoreMapper.insert(stuCreditScore); + stuCreditScoreDTO.setId(uuid); + stuCreditScoreDTO.setCreationTime(new Date()); + stuCreditScoreDTO.setSubmitStatus(1); + + StuCreditScore creditScore = convertUtil.DTOToEntity(stuCreditScoreDTO, StuCreditScore.class); + stuCreditScoreMapper.insert(creditScore); } //计分 - stuPersonalCreditService.creditScoreScoring(stuCreditScore,module); + String module = stuCreditScoreDTO.getModule(); + StuCreditScore creditScore = convertUtil.DTOToEntity(stuCreditScoreDTO, StuCreditScore.class); + stuPersonalCreditService.creditScoreScoring(creditScore,module); } @Override diff --git a/src/main/java/com/sztzjy/digital_credit/service/impl/StuScoreCenterServiceImpl.java b/src/main/java/com/sztzjy/digital_credit/service/impl/StuScoreCenterServiceImpl.java index 3d63076..71dab13 100644 --- a/src/main/java/com/sztzjy/digital_credit/service/impl/StuScoreCenterServiceImpl.java +++ b/src/main/java/com/sztzjy/digital_credit/service/impl/StuScoreCenterServiceImpl.java @@ -453,11 +453,6 @@ public class StuScoreCenterServiceImpl implements StuScoreCenterService { if(stuScoreCenter.getModule().equals(Constant.CORPORATE_CREDIT)){ stuScoreCenter.setScoreWeight(tchModuleWeith.getCaseCorporateCreditWeith()); } - if(stuScoreCenter.getModule().equals(Constant.CREDIT_PORTRAIT) || stuScoreCenter.getModule().equals(Constant.PERSONAL_CREDIT) - || stuScoreCenter.getModule().equals(Constant.CORPORATE_CREDIT) || stuScoreCenter.getModule().equals(Constant.COMPREHENSIVE_CASE)){ - stuScoreCenter.setScoreWeight(BigDecimal.valueOf(0.25)); - } - stuScoreCenterMapper.updateByPrimaryKey(stuScoreCenter); } }