From 89004333bfecfcae4b916091ecf3d8d48832bc8d Mon Sep 17 00:00:00 2001 From: "@t2652009480" <2652009480@qq.com> Date: Wed, 19 Mar 2025 09:20:00 +0800 Subject: [PATCH] =?UTF-8?q?=E6=88=90=E7=BB=A9=E7=AE=A1=E7=90=86=E5=92=8C?= =?UTF-8?q?=E6=95=99=E5=B8=88=E7=AB=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../stu/ImportletterController.java | 21 + .../stu/StuGradeManagementController.java | 2 +- .../tch/TchSummaryGradesController.java | 65 +- .../bank/entity/BusinessGuaranteeInfo.java | 7 + .../sztzjy/bank/entity/LoanApplication.java | 7 + .../sztzjy/bank/entity/PaymentAcceptance.java | 221 +++ .../bank/entity/PaymentAcceptanceExample.java | 1470 +++++++++++++++++ .../bank/entity/PerLoanCustomerSurvey.java | 7 + .../bank/entity/StuGradeManagement.java | 11 + .../entity/StuGradeManagementExample.java | 70 + .../java/com/sztzjy/bank/entity/StuUser.java | 6 +- .../sztzjy/bank/entity/StuUserExample.java | 20 +- .../sztzjy/bank/entity/dto/CreditDataDTO.java | 3 + .../bank/entity/dto/LoanApplicationDTO.java | 3 + .../bank/entity/dto/PaymentAcceptanceDTO.java | 44 + .../bank/entity/dto/StuAcademicRecordDTO.java | 7 +- .../entity/dto/TchProjectAnalysisDTO.java | 29 + .../bank/mapper/PaymentAcceptanceMapper.java | 30 + .../bank/service/ImportletterService.java | 3 + .../service/StuGradeManagementService.java | 6 + .../bank/service/TchSummaryGradesService.java | 5 +- .../CorporateLoanBusinessServiceImpl.java | 29 +- .../service/impl/IUpdateScoreInfoImpl.java | 10 +- .../service/impl/ImportletterServiceImpl.java | 102 ++ .../service/impl/PersonalLoanServiceImpl.java | 205 ++- .../impl/StuGradeManagementServiceImpl.java | 123 +- .../impl/TchSummaryGradesServiceImpl.java | 236 ++- .../mappers/LoanApplicationMapper.xml | 26 +- .../mappers/PaymentAcceptanceMapper.xml | 434 +++++ .../mappers/StuGradeManagementMapper.xml | 27 +- src/main/resources/mappers/StuUserMapper.xml | 14 +- 31 files changed, 3088 insertions(+), 155 deletions(-) create mode 100644 src/main/java/com/sztzjy/bank/entity/PaymentAcceptance.java create mode 100644 src/main/java/com/sztzjy/bank/entity/PaymentAcceptanceExample.java create mode 100644 src/main/java/com/sztzjy/bank/entity/dto/PaymentAcceptanceDTO.java create mode 100644 src/main/java/com/sztzjy/bank/entity/dto/TchProjectAnalysisDTO.java create mode 100644 src/main/java/com/sztzjy/bank/mapper/PaymentAcceptanceMapper.java create mode 100644 src/main/resources/mappers/PaymentAcceptanceMapper.xml diff --git a/src/main/java/com/sztzjy/bank/controller/stu/ImportletterController.java b/src/main/java/com/sztzjy/bank/controller/stu/ImportletterController.java index 2930ab6..28ee488 100644 --- a/src/main/java/com/sztzjy/bank/controller/stu/ImportletterController.java +++ b/src/main/java/com/sztzjy/bank/controller/stu/ImportletterController.java @@ -198,4 +198,25 @@ public class ImportletterController { return new ResultEntity<>(importletterService.getCodeByNameAndAddress(userId,number,code)); } + + + @AnonymousAccess + @ApiOperation("付款/承兑-提交/保存") + @PostMapping("submitPaymentAcceptance") + public ResultEntity submitPaymentAcceptance(@Valid @RequestBody PaymentAcceptance paymentAcceptance) { + + Integer i = importletterService.submitPaymentAcceptance(paymentAcceptance); + + String type; + if(paymentAcceptance.getSubmitStatus()==1){ + type="提交"; + }else { + type="保存"; + } + if(i>0){ + return new ResultEntity<>(HttpStatus.OK,type+"成功"); + }else { + return new ResultEntity<>(HttpStatus.OK,type+"失败"); + } + } } diff --git a/src/main/java/com/sztzjy/bank/controller/stu/StuGradeManagementController.java b/src/main/java/com/sztzjy/bank/controller/stu/StuGradeManagementController.java index 4726e93..a7c8152 100644 --- a/src/main/java/com/sztzjy/bank/controller/stu/StuGradeManagementController.java +++ b/src/main/java/com/sztzjy/bank/controller/stu/StuGradeManagementController.java @@ -22,7 +22,7 @@ import java.util.List; * @author tz * @date 2025/3/14 11:25 */ -@Api(tags = "成绩管理/重新实训/案例展示") +@Api(tags = "成绩管理-重新实训-案例展示") @RequestMapping("api/gradeManagement") @RestController @Validated diff --git a/src/main/java/com/sztzjy/bank/controller/tch/TchSummaryGradesController.java b/src/main/java/com/sztzjy/bank/controller/tch/TchSummaryGradesController.java index 0c287af..cc7de83 100644 --- a/src/main/java/com/sztzjy/bank/controller/tch/TchSummaryGradesController.java +++ b/src/main/java/com/sztzjy/bank/controller/tch/TchSummaryGradesController.java @@ -1,27 +1,33 @@ package com.sztzjy.bank.controller.tch; +import com.github.pagehelper.PageInfo; import com.sztzjy.bank.annotation.AnonymousAccess; import com.sztzjy.bank.entity.StuUser; import com.sztzjy.bank.entity.dto.StuAcademicRecordDTO; +import com.sztzjy.bank.entity.dto.TchProjectAnalysisDTO; import com.sztzjy.bank.service.TchSummaryGradesService; import com.sztzjy.bank.util.ResultEntity; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; +import javax.servlet.http.HttpServletResponse; +import java.util.Arrays; import java.util.List; /** * @author tz * @date 2025/3/14 17:44 */ -@Api(tags ="教师端/业务模拟") -@RequestMapping("api/summaryGrades") +@Api(tags ="教师端-业务模拟") +@RequestMapping("api/businessSimulation") @RestController @Validated public class TchSummaryGradesController { @@ -29,11 +35,62 @@ public class TchSummaryGradesController { @Autowired TchSummaryGradesService summaryGradesService; + @AnonymousAccess @ApiOperation("成绩总览") @GetMapping("getSummaryGrades") - public ResultEntity> getSummaryGrades(@ApiParam("用户ID") String schoolId) { + public ResultEntity> getSummaryGrades(@ApiParam("学校ID") String schoolId, Integer index, Integer size, + @ApiParam("学号")@RequestParam(required = false) String studentId, + @ApiParam("姓名")@RequestParam(required = false) String userName, + @ApiParam("班级")@RequestParam(required = false) String className) { + + return new ResultEntity<>(summaryGradesService.getSummaryGrades(schoolId,index,size,studentId,userName,className)); + } + - return new ResultEntity<>(summaryGradesService.getSummaryGrades(schoolId)); + @AnonymousAccess + @ApiOperation("项目分析") + @GetMapping("getProjectAnalysis") + public ResultEntity> getProjectAnalysis(@ApiParam("学校ID") String schoolId) { + + return new ResultEntity<>(summaryGradesService.getProjectAnalysis(schoolId)); } + + +// @ApiOperation("成绩总览导出") +// @GetMapping("/export") +// @AnonymousAccess +// public void export(HttpServletResponse response, +// @ApiParam("用户ID") String schoolId) { +// +// +// //导出的表名 +// String title = "成绩总览"; +// +// String[] headers = {"学号", "姓名", "班级", "练习进度", "练习时长","练习成绩","排名"}; +// +// StuUser stuUser = stuUserMapper.selectByPrimaryKey(userId); +// +// StuScoreDetailsExample example=new StuScoreDetailsExample(); +// example.createCriteria().andUserIdEqualTo(userId); +// List stuScoreDetails = scoreDetailsMapper.selectByExample(example); +// +// +// //实际数据结果集 +// List proAchievementsList = recordService.getProAchievementsList(userId, stuUser.getSchoolId(), stuScoreDetails); +// +// +// if (!proAchievementsList.isEmpty()){ +// +// //具体需要写入excel需要哪些字段,这些字段取自UserReward类,也就是上面的实际数据结果集的泛型 +// List listColumn = Arrays.asList("number", "projectName", "score", "weight", "weightedScore"); +// try { +// FilePortUtil.exportExcel(response, title, headers, proAchievementsList, listColumn); +// } catch (Exception e) { +// e.printStackTrace(); +// } +// }else { +// throw new ServiceException(HttpStatus.ACCEPTED,"未查询到成绩信息,导出失败"); +// } +// } } diff --git a/src/main/java/com/sztzjy/bank/entity/BusinessGuaranteeInfo.java b/src/main/java/com/sztzjy/bank/entity/BusinessGuaranteeInfo.java index 0506203..87cde09 100644 --- a/src/main/java/com/sztzjy/bank/entity/BusinessGuaranteeInfo.java +++ b/src/main/java/com/sztzjy/bank/entity/BusinessGuaranteeInfo.java @@ -2,7 +2,10 @@ package com.sztzjy.bank.entity; import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModelProperty; +import org.springframework.format.annotation.DateTimeFormat; + /** * 业务担保信息 * @@ -71,9 +74,13 @@ public class BusinessGuaranteeInfo { private String userId; @ApiModelProperty(notes = "创建时间") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") private Date createTime; @ApiModelProperty(notes = "更新时间") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") private Date updateTime; @ApiModelProperty(notes = "保存状态(0未保存、1已保存)") diff --git a/src/main/java/com/sztzjy/bank/entity/LoanApplication.java b/src/main/java/com/sztzjy/bank/entity/LoanApplication.java index 90d22fa..e438e4b 100644 --- a/src/main/java/com/sztzjy/bank/entity/LoanApplication.java +++ b/src/main/java/com/sztzjy/bank/entity/LoanApplication.java @@ -2,7 +2,10 @@ package com.sztzjy.bank.entity; import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModelProperty; +import org.springframework.format.annotation.DateTimeFormat; + /** * 贷款申请 * @@ -71,9 +74,13 @@ public class LoanApplication { private String userId; @ApiModelProperty(notes = "创建时间") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") private Date createTime; @ApiModelProperty(notes = "更新时间") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") private Date updateTime; @ApiModelProperty(notes = "保存状态(0未保存、1已保存)") diff --git a/src/main/java/com/sztzjy/bank/entity/PaymentAcceptance.java b/src/main/java/com/sztzjy/bank/entity/PaymentAcceptance.java new file mode 100644 index 0000000..4ac4688 --- /dev/null +++ b/src/main/java/com/sztzjy/bank/entity/PaymentAcceptance.java @@ -0,0 +1,221 @@ +package com.sztzjy.bank.entity; + +import java.util.Date; + +import io.swagger.annotations.ApiModelProperty; +/** + * 付款/承兑 + * + * @author whb + * payment_acceptance + */ +public class PaymentAcceptance { + @ApiModelProperty(notes = "ID") + private String id; + + @ApiModelProperty(notes = "收款行代码") + private String receivingBankCode; + + @ApiModelProperty(notes = "收费方式") + private String chargingMethod; + + @ApiModelProperty(notes = "我行代码") + private String writeCode; + + @ApiModelProperty(notes = "电报费类型") + private String telegramFeeType; + + @ApiModelProperty(notes = "承兑币种") + private String acceptanceCurrency; + + @ApiModelProperty(notes = "承兑金额") + private String acceptanceAmount; + + @ApiModelProperty(notes = "受益人") + private String beneficiary; + + @ApiModelProperty(notes = "受益人结算账号") + private String benSettlementAccount; + + @ApiModelProperty(notes = "付款人结算账号") + private String payerSettlementAccount; + + @ApiModelProperty(notes = "付款人名称") + private String payerName; + + @ApiModelProperty(notes = "扣费账号") + private String deductionAccount; + + @ApiModelProperty(notes = "创建时间") + private Date createTime; + + @ApiModelProperty(notes = "更新时间") + private Date updateTime; + + @ApiModelProperty(notes = "保存状态(0未保存、1已保存)") + private Integer saveStatus; + + @ApiModelProperty(notes = "提交状态(0未提交、1已提交)") + private Integer submitStatus; + + @ApiModelProperty(notes = "用户ID") + private String userId; + + @ApiModelProperty(notes = "错误次数") + private Integer errorNumber; + + @ApiModelProperty(notes = "第几套案例(1、2、3)") + private Integer number; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id == null ? null : id.trim(); + } + + public String getReceivingBankCode() { + return receivingBankCode; + } + + public void setReceivingBankCode(String receivingBankCode) { + this.receivingBankCode = receivingBankCode == null ? null : receivingBankCode.trim(); + } + + public String getChargingMethod() { + return chargingMethod; + } + + public void setChargingMethod(String chargingMethod) { + this.chargingMethod = chargingMethod == null ? null : chargingMethod.trim(); + } + + public String getWriteCode() { + return writeCode; + } + + public void setWriteCode(String writeCode) { + this.writeCode = writeCode == null ? null : writeCode.trim(); + } + + public String getTelegramFeeType() { + return telegramFeeType; + } + + public void setTelegramFeeType(String telegramFeeType) { + this.telegramFeeType = telegramFeeType == null ? null : telegramFeeType.trim(); + } + + public String getAcceptanceCurrency() { + return acceptanceCurrency; + } + + public void setAcceptanceCurrency(String acceptanceCurrency) { + this.acceptanceCurrency = acceptanceCurrency == null ? null : acceptanceCurrency.trim(); + } + + public String getAcceptanceAmount() { + return acceptanceAmount; + } + + public void setAcceptanceAmount(String acceptanceAmount) { + this.acceptanceAmount = acceptanceAmount == null ? null : acceptanceAmount.trim(); + } + + public String getBeneficiary() { + return beneficiary; + } + + public void setBeneficiary(String beneficiary) { + this.beneficiary = beneficiary == null ? null : beneficiary.trim(); + } + + public String getBenSettlementAccount() { + return benSettlementAccount; + } + + public void setBenSettlementAccount(String benSettlementAccount) { + this.benSettlementAccount = benSettlementAccount == null ? null : benSettlementAccount.trim(); + } + + public String getPayerSettlementAccount() { + return payerSettlementAccount; + } + + public void setPayerSettlementAccount(String payerSettlementAccount) { + this.payerSettlementAccount = payerSettlementAccount == null ? null : payerSettlementAccount.trim(); + } + + public String getPayerName() { + return payerName; + } + + public void setPayerName(String payerName) { + this.payerName = payerName == null ? null : payerName.trim(); + } + + public String getDeductionAccount() { + return deductionAccount; + } + + public void setDeductionAccount(String deductionAccount) { + this.deductionAccount = deductionAccount == null ? null : deductionAccount.trim(); + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } + + public Integer getSaveStatus() { + return saveStatus; + } + + public void setSaveStatus(Integer saveStatus) { + this.saveStatus = saveStatus; + } + + public Integer getSubmitStatus() { + return submitStatus; + } + + public void setSubmitStatus(Integer submitStatus) { + this.submitStatus = submitStatus; + } + + public String getUserId() { + return userId; + } + + public void setUserId(String userId) { + this.userId = userId == null ? null : userId.trim(); + } + + public Integer getErrorNumber() { + return errorNumber; + } + + public void setErrorNumber(Integer errorNumber) { + this.errorNumber = errorNumber; + } + + public Integer getNumber() { + return number; + } + + public void setNumber(Integer number) { + this.number = number; + } +} \ No newline at end of file diff --git a/src/main/java/com/sztzjy/bank/entity/PaymentAcceptanceExample.java b/src/main/java/com/sztzjy/bank/entity/PaymentAcceptanceExample.java new file mode 100644 index 0000000..18d7020 --- /dev/null +++ b/src/main/java/com/sztzjy/bank/entity/PaymentAcceptanceExample.java @@ -0,0 +1,1470 @@ +package com.sztzjy.bank.entity; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +public class PaymentAcceptanceExample { + protected String orderByClause; + + protected boolean distinct; + + protected List oredCriteria; + + public PaymentAcceptanceExample() { + oredCriteria = new ArrayList<>(); + } + + public void setOrderByClause(String orderByClause) { + this.orderByClause = orderByClause; + } + + public String getOrderByClause() { + return orderByClause; + } + + public void setDistinct(boolean distinct) { + this.distinct = distinct; + } + + public boolean isDistinct() { + return distinct; + } + + public List getOredCriteria() { + return oredCriteria; + } + + public void or(Criteria criteria) { + oredCriteria.add(criteria); + } + + public Criteria or() { + Criteria criteria = createCriteriaInternal(); + oredCriteria.add(criteria); + return criteria; + } + + public Criteria createCriteria() { + Criteria criteria = createCriteriaInternal(); + if (oredCriteria.size() == 0) { + oredCriteria.add(criteria); + } + return criteria; + } + + protected Criteria createCriteriaInternal() { + Criteria criteria = new Criteria(); + return criteria; + } + + public void clear() { + oredCriteria.clear(); + orderByClause = null; + distinct = false; + } + + protected abstract static class GeneratedCriteria { + protected List criteria; + + protected GeneratedCriteria() { + super(); + criteria = new ArrayList<>(); + } + + public boolean isValid() { + return criteria.size() > 0; + } + + public List getAllCriteria() { + return criteria; + } + + public List getCriteria() { + return criteria; + } + + protected void addCriterion(String condition) { + if (condition == null) { + throw new RuntimeException("Value for condition cannot be null"); + } + criteria.add(new Criterion(condition)); + } + + protected void addCriterion(String condition, Object value, String property) { + if (value == null) { + throw new RuntimeException("Value for " + property + " cannot be null"); + } + criteria.add(new Criterion(condition, value)); + } + + protected void addCriterion(String condition, Object value1, Object value2, String property) { + if (value1 == null || value2 == null) { + throw new RuntimeException("Between values for " + property + " cannot be null"); + } + criteria.add(new Criterion(condition, value1, value2)); + } + + public Criteria andIdIsNull() { + addCriterion("id is null"); + return (Criteria) this; + } + + public Criteria andIdIsNotNull() { + addCriterion("id is not null"); + return (Criteria) this; + } + + public Criteria andIdEqualTo(String value) { + addCriterion("id =", value, "id"); + return (Criteria) this; + } + + public Criteria andIdNotEqualTo(String value) { + addCriterion("id <>", value, "id"); + return (Criteria) this; + } + + public Criteria andIdGreaterThan(String value) { + addCriterion("id >", value, "id"); + return (Criteria) this; + } + + public Criteria andIdGreaterThanOrEqualTo(String value) { + addCriterion("id >=", value, "id"); + return (Criteria) this; + } + + public Criteria andIdLessThan(String value) { + addCriterion("id <", value, "id"); + return (Criteria) this; + } + + public Criteria andIdLessThanOrEqualTo(String value) { + addCriterion("id <=", value, "id"); + return (Criteria) this; + } + + public Criteria andIdLike(String value) { + addCriterion("id like", value, "id"); + return (Criteria) this; + } + + public Criteria andIdNotLike(String value) { + addCriterion("id not like", value, "id"); + return (Criteria) this; + } + + public Criteria andIdIn(List values) { + addCriterion("id in", values, "id"); + return (Criteria) this; + } + + public Criteria andIdNotIn(List values) { + addCriterion("id not in", values, "id"); + return (Criteria) this; + } + + public Criteria andIdBetween(String value1, String value2) { + addCriterion("id between", value1, value2, "id"); + return (Criteria) this; + } + + public Criteria andIdNotBetween(String value1, String value2) { + addCriterion("id not between", value1, value2, "id"); + return (Criteria) this; + } + + public Criteria andReceivingBankCodeIsNull() { + addCriterion("receiving_bank_code is null"); + return (Criteria) this; + } + + public Criteria andReceivingBankCodeIsNotNull() { + addCriterion("receiving_bank_code is not null"); + return (Criteria) this; + } + + public Criteria andReceivingBankCodeEqualTo(String value) { + addCriterion("receiving_bank_code =", value, "receivingBankCode"); + return (Criteria) this; + } + + public Criteria andReceivingBankCodeNotEqualTo(String value) { + addCriterion("receiving_bank_code <>", value, "receivingBankCode"); + return (Criteria) this; + } + + public Criteria andReceivingBankCodeGreaterThan(String value) { + addCriterion("receiving_bank_code >", value, "receivingBankCode"); + return (Criteria) this; + } + + public Criteria andReceivingBankCodeGreaterThanOrEqualTo(String value) { + addCriterion("receiving_bank_code >=", value, "receivingBankCode"); + return (Criteria) this; + } + + public Criteria andReceivingBankCodeLessThan(String value) { + addCriterion("receiving_bank_code <", value, "receivingBankCode"); + return (Criteria) this; + } + + public Criteria andReceivingBankCodeLessThanOrEqualTo(String value) { + addCriterion("receiving_bank_code <=", value, "receivingBankCode"); + return (Criteria) this; + } + + public Criteria andReceivingBankCodeLike(String value) { + addCriterion("receiving_bank_code like", value, "receivingBankCode"); + return (Criteria) this; + } + + public Criteria andReceivingBankCodeNotLike(String value) { + addCriterion("receiving_bank_code not like", value, "receivingBankCode"); + return (Criteria) this; + } + + public Criteria andReceivingBankCodeIn(List values) { + addCriterion("receiving_bank_code in", values, "receivingBankCode"); + return (Criteria) this; + } + + public Criteria andReceivingBankCodeNotIn(List values) { + addCriterion("receiving_bank_code not in", values, "receivingBankCode"); + return (Criteria) this; + } + + public Criteria andReceivingBankCodeBetween(String value1, String value2) { + addCriterion("receiving_bank_code between", value1, value2, "receivingBankCode"); + return (Criteria) this; + } + + public Criteria andReceivingBankCodeNotBetween(String value1, String value2) { + addCriterion("receiving_bank_code not between", value1, value2, "receivingBankCode"); + return (Criteria) this; + } + + public Criteria andChargingMethodIsNull() { + addCriterion("charging_method is null"); + return (Criteria) this; + } + + public Criteria andChargingMethodIsNotNull() { + addCriterion("charging_method is not null"); + return (Criteria) this; + } + + public Criteria andChargingMethodEqualTo(String value) { + addCriterion("charging_method =", value, "chargingMethod"); + return (Criteria) this; + } + + public Criteria andChargingMethodNotEqualTo(String value) { + addCriterion("charging_method <>", value, "chargingMethod"); + return (Criteria) this; + } + + public Criteria andChargingMethodGreaterThan(String value) { + addCriterion("charging_method >", value, "chargingMethod"); + return (Criteria) this; + } + + public Criteria andChargingMethodGreaterThanOrEqualTo(String value) { + addCriterion("charging_method >=", value, "chargingMethod"); + return (Criteria) this; + } + + public Criteria andChargingMethodLessThan(String value) { + addCriterion("charging_method <", value, "chargingMethod"); + return (Criteria) this; + } + + public Criteria andChargingMethodLessThanOrEqualTo(String value) { + addCriterion("charging_method <=", value, "chargingMethod"); + return (Criteria) this; + } + + public Criteria andChargingMethodLike(String value) { + addCriterion("charging_method like", value, "chargingMethod"); + return (Criteria) this; + } + + public Criteria andChargingMethodNotLike(String value) { + addCriterion("charging_method not like", value, "chargingMethod"); + return (Criteria) this; + } + + public Criteria andChargingMethodIn(List values) { + addCriterion("charging_method in", values, "chargingMethod"); + return (Criteria) this; + } + + public Criteria andChargingMethodNotIn(List values) { + addCriterion("charging_method not in", values, "chargingMethod"); + return (Criteria) this; + } + + public Criteria andChargingMethodBetween(String value1, String value2) { + addCriterion("charging_method between", value1, value2, "chargingMethod"); + return (Criteria) this; + } + + public Criteria andChargingMethodNotBetween(String value1, String value2) { + addCriterion("charging_method not between", value1, value2, "chargingMethod"); + return (Criteria) this; + } + + public Criteria andWriteCodeIsNull() { + addCriterion("write_code is null"); + return (Criteria) this; + } + + public Criteria andWriteCodeIsNotNull() { + addCriterion("write_code is not null"); + return (Criteria) this; + } + + public Criteria andWriteCodeEqualTo(String value) { + addCriterion("write_code =", value, "writeCode"); + return (Criteria) this; + } + + public Criteria andWriteCodeNotEqualTo(String value) { + addCriterion("write_code <>", value, "writeCode"); + return (Criteria) this; + } + + public Criteria andWriteCodeGreaterThan(String value) { + addCriterion("write_code >", value, "writeCode"); + return (Criteria) this; + } + + public Criteria andWriteCodeGreaterThanOrEqualTo(String value) { + addCriterion("write_code >=", value, "writeCode"); + return (Criteria) this; + } + + public Criteria andWriteCodeLessThan(String value) { + addCriterion("write_code <", value, "writeCode"); + return (Criteria) this; + } + + public Criteria andWriteCodeLessThanOrEqualTo(String value) { + addCriterion("write_code <=", value, "writeCode"); + return (Criteria) this; + } + + public Criteria andWriteCodeLike(String value) { + addCriterion("write_code like", value, "writeCode"); + return (Criteria) this; + } + + public Criteria andWriteCodeNotLike(String value) { + addCriterion("write_code not like", value, "writeCode"); + return (Criteria) this; + } + + public Criteria andWriteCodeIn(List values) { + addCriterion("write_code in", values, "writeCode"); + return (Criteria) this; + } + + public Criteria andWriteCodeNotIn(List values) { + addCriterion("write_code not in", values, "writeCode"); + return (Criteria) this; + } + + public Criteria andWriteCodeBetween(String value1, String value2) { + addCriterion("write_code between", value1, value2, "writeCode"); + return (Criteria) this; + } + + public Criteria andWriteCodeNotBetween(String value1, String value2) { + addCriterion("write_code not between", value1, value2, "writeCode"); + return (Criteria) this; + } + + public Criteria andTelegramFeeTypeIsNull() { + addCriterion("telegram_fee_type is null"); + return (Criteria) this; + } + + public Criteria andTelegramFeeTypeIsNotNull() { + addCriterion("telegram_fee_type is not null"); + return (Criteria) this; + } + + public Criteria andTelegramFeeTypeEqualTo(String value) { + addCriterion("telegram_fee_type =", value, "telegramFeeType"); + return (Criteria) this; + } + + public Criteria andTelegramFeeTypeNotEqualTo(String value) { + addCriterion("telegram_fee_type <>", value, "telegramFeeType"); + return (Criteria) this; + } + + public Criteria andTelegramFeeTypeGreaterThan(String value) { + addCriterion("telegram_fee_type >", value, "telegramFeeType"); + return (Criteria) this; + } + + public Criteria andTelegramFeeTypeGreaterThanOrEqualTo(String value) { + addCriterion("telegram_fee_type >=", value, "telegramFeeType"); + return (Criteria) this; + } + + public Criteria andTelegramFeeTypeLessThan(String value) { + addCriterion("telegram_fee_type <", value, "telegramFeeType"); + return (Criteria) this; + } + + public Criteria andTelegramFeeTypeLessThanOrEqualTo(String value) { + addCriterion("telegram_fee_type <=", value, "telegramFeeType"); + return (Criteria) this; + } + + public Criteria andTelegramFeeTypeLike(String value) { + addCriterion("telegram_fee_type like", value, "telegramFeeType"); + return (Criteria) this; + } + + public Criteria andTelegramFeeTypeNotLike(String value) { + addCriterion("telegram_fee_type not like", value, "telegramFeeType"); + return (Criteria) this; + } + + public Criteria andTelegramFeeTypeIn(List values) { + addCriterion("telegram_fee_type in", values, "telegramFeeType"); + return (Criteria) this; + } + + public Criteria andTelegramFeeTypeNotIn(List values) { + addCriterion("telegram_fee_type not in", values, "telegramFeeType"); + return (Criteria) this; + } + + public Criteria andTelegramFeeTypeBetween(String value1, String value2) { + addCriterion("telegram_fee_type between", value1, value2, "telegramFeeType"); + return (Criteria) this; + } + + public Criteria andTelegramFeeTypeNotBetween(String value1, String value2) { + addCriterion("telegram_fee_type not between", value1, value2, "telegramFeeType"); + return (Criteria) this; + } + + public Criteria andAcceptanceCurrencyIsNull() { + addCriterion("acceptance_currency is null"); + return (Criteria) this; + } + + public Criteria andAcceptanceCurrencyIsNotNull() { + addCriterion("acceptance_currency is not null"); + return (Criteria) this; + } + + public Criteria andAcceptanceCurrencyEqualTo(String value) { + addCriterion("acceptance_currency =", value, "acceptanceCurrency"); + return (Criteria) this; + } + + public Criteria andAcceptanceCurrencyNotEqualTo(String value) { + addCriterion("acceptance_currency <>", value, "acceptanceCurrency"); + return (Criteria) this; + } + + public Criteria andAcceptanceCurrencyGreaterThan(String value) { + addCriterion("acceptance_currency >", value, "acceptanceCurrency"); + return (Criteria) this; + } + + public Criteria andAcceptanceCurrencyGreaterThanOrEqualTo(String value) { + addCriterion("acceptance_currency >=", value, "acceptanceCurrency"); + return (Criteria) this; + } + + public Criteria andAcceptanceCurrencyLessThan(String value) { + addCriterion("acceptance_currency <", value, "acceptanceCurrency"); + return (Criteria) this; + } + + public Criteria andAcceptanceCurrencyLessThanOrEqualTo(String value) { + addCriterion("acceptance_currency <=", value, "acceptanceCurrency"); + return (Criteria) this; + } + + public Criteria andAcceptanceCurrencyLike(String value) { + addCriterion("acceptance_currency like", value, "acceptanceCurrency"); + return (Criteria) this; + } + + public Criteria andAcceptanceCurrencyNotLike(String value) { + addCriterion("acceptance_currency not like", value, "acceptanceCurrency"); + return (Criteria) this; + } + + public Criteria andAcceptanceCurrencyIn(List values) { + addCriterion("acceptance_currency in", values, "acceptanceCurrency"); + return (Criteria) this; + } + + public Criteria andAcceptanceCurrencyNotIn(List values) { + addCriterion("acceptance_currency not in", values, "acceptanceCurrency"); + return (Criteria) this; + } + + public Criteria andAcceptanceCurrencyBetween(String value1, String value2) { + addCriterion("acceptance_currency between", value1, value2, "acceptanceCurrency"); + return (Criteria) this; + } + + public Criteria andAcceptanceCurrencyNotBetween(String value1, String value2) { + addCriterion("acceptance_currency not between", value1, value2, "acceptanceCurrency"); + return (Criteria) this; + } + + public Criteria andAcceptanceAmountIsNull() { + addCriterion("acceptance_amount is null"); + return (Criteria) this; + } + + public Criteria andAcceptanceAmountIsNotNull() { + addCriterion("acceptance_amount is not null"); + return (Criteria) this; + } + + public Criteria andAcceptanceAmountEqualTo(String value) { + addCriterion("acceptance_amount =", value, "acceptanceAmount"); + return (Criteria) this; + } + + public Criteria andAcceptanceAmountNotEqualTo(String value) { + addCriterion("acceptance_amount <>", value, "acceptanceAmount"); + return (Criteria) this; + } + + public Criteria andAcceptanceAmountGreaterThan(String value) { + addCriterion("acceptance_amount >", value, "acceptanceAmount"); + return (Criteria) this; + } + + public Criteria andAcceptanceAmountGreaterThanOrEqualTo(String value) { + addCriterion("acceptance_amount >=", value, "acceptanceAmount"); + return (Criteria) this; + } + + public Criteria andAcceptanceAmountLessThan(String value) { + addCriterion("acceptance_amount <", value, "acceptanceAmount"); + return (Criteria) this; + } + + public Criteria andAcceptanceAmountLessThanOrEqualTo(String value) { + addCriterion("acceptance_amount <=", value, "acceptanceAmount"); + return (Criteria) this; + } + + public Criteria andAcceptanceAmountLike(String value) { + addCriterion("acceptance_amount like", value, "acceptanceAmount"); + return (Criteria) this; + } + + public Criteria andAcceptanceAmountNotLike(String value) { + addCriterion("acceptance_amount not like", value, "acceptanceAmount"); + return (Criteria) this; + } + + public Criteria andAcceptanceAmountIn(List values) { + addCriterion("acceptance_amount in", values, "acceptanceAmount"); + return (Criteria) this; + } + + public Criteria andAcceptanceAmountNotIn(List values) { + addCriterion("acceptance_amount not in", values, "acceptanceAmount"); + return (Criteria) this; + } + + public Criteria andAcceptanceAmountBetween(String value1, String value2) { + addCriterion("acceptance_amount between", value1, value2, "acceptanceAmount"); + return (Criteria) this; + } + + public Criteria andAcceptanceAmountNotBetween(String value1, String value2) { + addCriterion("acceptance_amount not between", value1, value2, "acceptanceAmount"); + return (Criteria) this; + } + + public Criteria andBeneficiaryIsNull() { + addCriterion("beneficiary is null"); + return (Criteria) this; + } + + public Criteria andBeneficiaryIsNotNull() { + addCriterion("beneficiary is not null"); + return (Criteria) this; + } + + public Criteria andBeneficiaryEqualTo(String value) { + addCriterion("beneficiary =", value, "beneficiary"); + return (Criteria) this; + } + + public Criteria andBeneficiaryNotEqualTo(String value) { + addCriterion("beneficiary <>", value, "beneficiary"); + return (Criteria) this; + } + + public Criteria andBeneficiaryGreaterThan(String value) { + addCriterion("beneficiary >", value, "beneficiary"); + return (Criteria) this; + } + + public Criteria andBeneficiaryGreaterThanOrEqualTo(String value) { + addCriterion("beneficiary >=", value, "beneficiary"); + return (Criteria) this; + } + + public Criteria andBeneficiaryLessThan(String value) { + addCriterion("beneficiary <", value, "beneficiary"); + return (Criteria) this; + } + + public Criteria andBeneficiaryLessThanOrEqualTo(String value) { + addCriterion("beneficiary <=", value, "beneficiary"); + return (Criteria) this; + } + + public Criteria andBeneficiaryLike(String value) { + addCriterion("beneficiary like", value, "beneficiary"); + return (Criteria) this; + } + + public Criteria andBeneficiaryNotLike(String value) { + addCriterion("beneficiary not like", value, "beneficiary"); + return (Criteria) this; + } + + public Criteria andBeneficiaryIn(List values) { + addCriterion("beneficiary in", values, "beneficiary"); + return (Criteria) this; + } + + public Criteria andBeneficiaryNotIn(List values) { + addCriterion("beneficiary not in", values, "beneficiary"); + return (Criteria) this; + } + + public Criteria andBeneficiaryBetween(String value1, String value2) { + addCriterion("beneficiary between", value1, value2, "beneficiary"); + return (Criteria) this; + } + + public Criteria andBeneficiaryNotBetween(String value1, String value2) { + addCriterion("beneficiary not between", value1, value2, "beneficiary"); + return (Criteria) this; + } + + public Criteria andBenSettlementAccountIsNull() { + addCriterion("ben_settlement_account is null"); + return (Criteria) this; + } + + public Criteria andBenSettlementAccountIsNotNull() { + addCriterion("ben_settlement_account is not null"); + return (Criteria) this; + } + + public Criteria andBenSettlementAccountEqualTo(String value) { + addCriterion("ben_settlement_account =", value, "benSettlementAccount"); + return (Criteria) this; + } + + public Criteria andBenSettlementAccountNotEqualTo(String value) { + addCriterion("ben_settlement_account <>", value, "benSettlementAccount"); + return (Criteria) this; + } + + public Criteria andBenSettlementAccountGreaterThan(String value) { + addCriterion("ben_settlement_account >", value, "benSettlementAccount"); + return (Criteria) this; + } + + public Criteria andBenSettlementAccountGreaterThanOrEqualTo(String value) { + addCriterion("ben_settlement_account >=", value, "benSettlementAccount"); + return (Criteria) this; + } + + public Criteria andBenSettlementAccountLessThan(String value) { + addCriterion("ben_settlement_account <", value, "benSettlementAccount"); + return (Criteria) this; + } + + public Criteria andBenSettlementAccountLessThanOrEqualTo(String value) { + addCriterion("ben_settlement_account <=", value, "benSettlementAccount"); + return (Criteria) this; + } + + public Criteria andBenSettlementAccountLike(String value) { + addCriterion("ben_settlement_account like", value, "benSettlementAccount"); + return (Criteria) this; + } + + public Criteria andBenSettlementAccountNotLike(String value) { + addCriterion("ben_settlement_account not like", value, "benSettlementAccount"); + return (Criteria) this; + } + + public Criteria andBenSettlementAccountIn(List values) { + addCriterion("ben_settlement_account in", values, "benSettlementAccount"); + return (Criteria) this; + } + + public Criteria andBenSettlementAccountNotIn(List values) { + addCriterion("ben_settlement_account not in", values, "benSettlementAccount"); + return (Criteria) this; + } + + public Criteria andBenSettlementAccountBetween(String value1, String value2) { + addCriterion("ben_settlement_account between", value1, value2, "benSettlementAccount"); + return (Criteria) this; + } + + public Criteria andBenSettlementAccountNotBetween(String value1, String value2) { + addCriterion("ben_settlement_account not between", value1, value2, "benSettlementAccount"); + return (Criteria) this; + } + + public Criteria andPayerSettlementAccountIsNull() { + addCriterion("payer_settlement_account is null"); + return (Criteria) this; + } + + public Criteria andPayerSettlementAccountIsNotNull() { + addCriterion("payer_settlement_account is not null"); + return (Criteria) this; + } + + public Criteria andPayerSettlementAccountEqualTo(String value) { + addCriterion("payer_settlement_account =", value, "payerSettlementAccount"); + return (Criteria) this; + } + + public Criteria andPayerSettlementAccountNotEqualTo(String value) { + addCriterion("payer_settlement_account <>", value, "payerSettlementAccount"); + return (Criteria) this; + } + + public Criteria andPayerSettlementAccountGreaterThan(String value) { + addCriterion("payer_settlement_account >", value, "payerSettlementAccount"); + return (Criteria) this; + } + + public Criteria andPayerSettlementAccountGreaterThanOrEqualTo(String value) { + addCriterion("payer_settlement_account >=", value, "payerSettlementAccount"); + return (Criteria) this; + } + + public Criteria andPayerSettlementAccountLessThan(String value) { + addCriterion("payer_settlement_account <", value, "payerSettlementAccount"); + return (Criteria) this; + } + + public Criteria andPayerSettlementAccountLessThanOrEqualTo(String value) { + addCriterion("payer_settlement_account <=", value, "payerSettlementAccount"); + return (Criteria) this; + } + + public Criteria andPayerSettlementAccountLike(String value) { + addCriterion("payer_settlement_account like", value, "payerSettlementAccount"); + return (Criteria) this; + } + + public Criteria andPayerSettlementAccountNotLike(String value) { + addCriterion("payer_settlement_account not like", value, "payerSettlementAccount"); + return (Criteria) this; + } + + public Criteria andPayerSettlementAccountIn(List values) { + addCriterion("payer_settlement_account in", values, "payerSettlementAccount"); + return (Criteria) this; + } + + public Criteria andPayerSettlementAccountNotIn(List values) { + addCriterion("payer_settlement_account not in", values, "payerSettlementAccount"); + return (Criteria) this; + } + + public Criteria andPayerSettlementAccountBetween(String value1, String value2) { + addCriterion("payer_settlement_account between", value1, value2, "payerSettlementAccount"); + return (Criteria) this; + } + + public Criteria andPayerSettlementAccountNotBetween(String value1, String value2) { + addCriterion("payer_settlement_account not between", value1, value2, "payerSettlementAccount"); + return (Criteria) this; + } + + public Criteria andPayerNameIsNull() { + addCriterion("payer_name is null"); + return (Criteria) this; + } + + public Criteria andPayerNameIsNotNull() { + addCriterion("payer_name is not null"); + return (Criteria) this; + } + + public Criteria andPayerNameEqualTo(String value) { + addCriterion("payer_name =", value, "payerName"); + return (Criteria) this; + } + + public Criteria andPayerNameNotEqualTo(String value) { + addCriterion("payer_name <>", value, "payerName"); + return (Criteria) this; + } + + public Criteria andPayerNameGreaterThan(String value) { + addCriterion("payer_name >", value, "payerName"); + return (Criteria) this; + } + + public Criteria andPayerNameGreaterThanOrEqualTo(String value) { + addCriterion("payer_name >=", value, "payerName"); + return (Criteria) this; + } + + public Criteria andPayerNameLessThan(String value) { + addCriterion("payer_name <", value, "payerName"); + return (Criteria) this; + } + + public Criteria andPayerNameLessThanOrEqualTo(String value) { + addCriterion("payer_name <=", value, "payerName"); + return (Criteria) this; + } + + public Criteria andPayerNameLike(String value) { + addCriterion("payer_name like", value, "payerName"); + return (Criteria) this; + } + + public Criteria andPayerNameNotLike(String value) { + addCriterion("payer_name not like", value, "payerName"); + return (Criteria) this; + } + + public Criteria andPayerNameIn(List values) { + addCriterion("payer_name in", values, "payerName"); + return (Criteria) this; + } + + public Criteria andPayerNameNotIn(List values) { + addCriterion("payer_name not in", values, "payerName"); + return (Criteria) this; + } + + public Criteria andPayerNameBetween(String value1, String value2) { + addCriterion("payer_name between", value1, value2, "payerName"); + return (Criteria) this; + } + + public Criteria andPayerNameNotBetween(String value1, String value2) { + addCriterion("payer_name not between", value1, value2, "payerName"); + return (Criteria) this; + } + + public Criteria andDeductionAccountIsNull() { + addCriterion("deduction_account is null"); + return (Criteria) this; + } + + public Criteria andDeductionAccountIsNotNull() { + addCriterion("deduction_account is not null"); + return (Criteria) this; + } + + public Criteria andDeductionAccountEqualTo(String value) { + addCriterion("deduction_account =", value, "deductionAccount"); + return (Criteria) this; + } + + public Criteria andDeductionAccountNotEqualTo(String value) { + addCriterion("deduction_account <>", value, "deductionAccount"); + return (Criteria) this; + } + + public Criteria andDeductionAccountGreaterThan(String value) { + addCriterion("deduction_account >", value, "deductionAccount"); + return (Criteria) this; + } + + public Criteria andDeductionAccountGreaterThanOrEqualTo(String value) { + addCriterion("deduction_account >=", value, "deductionAccount"); + return (Criteria) this; + } + + public Criteria andDeductionAccountLessThan(String value) { + addCriterion("deduction_account <", value, "deductionAccount"); + return (Criteria) this; + } + + public Criteria andDeductionAccountLessThanOrEqualTo(String value) { + addCriterion("deduction_account <=", value, "deductionAccount"); + return (Criteria) this; + } + + public Criteria andDeductionAccountLike(String value) { + addCriterion("deduction_account like", value, "deductionAccount"); + return (Criteria) this; + } + + public Criteria andDeductionAccountNotLike(String value) { + addCriterion("deduction_account not like", value, "deductionAccount"); + return (Criteria) this; + } + + public Criteria andDeductionAccountIn(List values) { + addCriterion("deduction_account in", values, "deductionAccount"); + return (Criteria) this; + } + + public Criteria andDeductionAccountNotIn(List values) { + addCriterion("deduction_account not in", values, "deductionAccount"); + return (Criteria) this; + } + + public Criteria andDeductionAccountBetween(String value1, String value2) { + addCriterion("deduction_account between", value1, value2, "deductionAccount"); + return (Criteria) this; + } + + public Criteria andDeductionAccountNotBetween(String value1, String value2) { + addCriterion("deduction_account not between", value1, value2, "deductionAccount"); + return (Criteria) this; + } + + public Criteria andCreateTimeIsNull() { + addCriterion("create_time is null"); + return (Criteria) this; + } + + public Criteria andCreateTimeIsNotNull() { + addCriterion("create_time is not null"); + return (Criteria) this; + } + + public Criteria andCreateTimeEqualTo(Date value) { + addCriterion("create_time =", value, "createTime"); + return (Criteria) this; + } + + public Criteria andCreateTimeNotEqualTo(Date value) { + addCriterion("create_time <>", value, "createTime"); + return (Criteria) this; + } + + public Criteria andCreateTimeGreaterThan(Date value) { + addCriterion("create_time >", value, "createTime"); + return (Criteria) this; + } + + public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) { + addCriterion("create_time >=", value, "createTime"); + return (Criteria) this; + } + + public Criteria andCreateTimeLessThan(Date value) { + addCriterion("create_time <", value, "createTime"); + return (Criteria) this; + } + + public Criteria andCreateTimeLessThanOrEqualTo(Date value) { + addCriterion("create_time <=", value, "createTime"); + return (Criteria) this; + } + + public Criteria andCreateTimeIn(List values) { + addCriterion("create_time in", values, "createTime"); + return (Criteria) this; + } + + public Criteria andCreateTimeNotIn(List values) { + addCriterion("create_time not in", values, "createTime"); + return (Criteria) this; + } + + public Criteria andCreateTimeBetween(Date value1, Date value2) { + addCriterion("create_time between", value1, value2, "createTime"); + return (Criteria) this; + } + + public Criteria andCreateTimeNotBetween(Date value1, Date value2) { + addCriterion("create_time not between", value1, value2, "createTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeIsNull() { + addCriterion("update_time is null"); + return (Criteria) this; + } + + public Criteria andUpdateTimeIsNotNull() { + addCriterion("update_time is not null"); + return (Criteria) this; + } + + public Criteria andUpdateTimeEqualTo(Date value) { + addCriterion("update_time =", value, "updateTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeNotEqualTo(Date value) { + addCriterion("update_time <>", value, "updateTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeGreaterThan(Date value) { + addCriterion("update_time >", value, "updateTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) { + addCriterion("update_time >=", value, "updateTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeLessThan(Date value) { + addCriterion("update_time <", value, "updateTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeLessThanOrEqualTo(Date value) { + addCriterion("update_time <=", value, "updateTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeIn(List values) { + addCriterion("update_time in", values, "updateTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeNotIn(List values) { + addCriterion("update_time not in", values, "updateTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeBetween(Date value1, Date value2) { + addCriterion("update_time between", value1, value2, "updateTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeNotBetween(Date value1, Date value2) { + addCriterion("update_time not between", value1, value2, "updateTime"); + return (Criteria) this; + } + + public Criteria andSaveStatusIsNull() { + addCriterion("save_status is null"); + return (Criteria) this; + } + + public Criteria andSaveStatusIsNotNull() { + addCriterion("save_status is not null"); + return (Criteria) this; + } + + public Criteria andSaveStatusEqualTo(Integer value) { + addCriterion("save_status =", value, "saveStatus"); + return (Criteria) this; + } + + public Criteria andSaveStatusNotEqualTo(Integer value) { + addCriterion("save_status <>", value, "saveStatus"); + return (Criteria) this; + } + + public Criteria andSaveStatusGreaterThan(Integer value) { + addCriterion("save_status >", value, "saveStatus"); + return (Criteria) this; + } + + public Criteria andSaveStatusGreaterThanOrEqualTo(Integer value) { + addCriterion("save_status >=", value, "saveStatus"); + return (Criteria) this; + } + + public Criteria andSaveStatusLessThan(Integer value) { + addCriterion("save_status <", value, "saveStatus"); + return (Criteria) this; + } + + public Criteria andSaveStatusLessThanOrEqualTo(Integer value) { + addCriterion("save_status <=", value, "saveStatus"); + return (Criteria) this; + } + + public Criteria andSaveStatusIn(List values) { + addCriterion("save_status in", values, "saveStatus"); + return (Criteria) this; + } + + public Criteria andSaveStatusNotIn(List values) { + addCriterion("save_status not in", values, "saveStatus"); + return (Criteria) this; + } + + public Criteria andSaveStatusBetween(Integer value1, Integer value2) { + addCriterion("save_status between", value1, value2, "saveStatus"); + return (Criteria) this; + } + + public Criteria andSaveStatusNotBetween(Integer value1, Integer value2) { + addCriterion("save_status not between", value1, value2, "saveStatus"); + return (Criteria) this; + } + + public Criteria andSubmitStatusIsNull() { + addCriterion("submit_status is null"); + return (Criteria) this; + } + + public Criteria andSubmitStatusIsNotNull() { + addCriterion("submit_status is not null"); + return (Criteria) this; + } + + public Criteria andSubmitStatusEqualTo(Integer value) { + addCriterion("submit_status =", value, "submitStatus"); + return (Criteria) this; + } + + public Criteria andSubmitStatusNotEqualTo(Integer value) { + addCriterion("submit_status <>", value, "submitStatus"); + return (Criteria) this; + } + + public Criteria andSubmitStatusGreaterThan(Integer value) { + addCriterion("submit_status >", value, "submitStatus"); + return (Criteria) this; + } + + public Criteria andSubmitStatusGreaterThanOrEqualTo(Integer value) { + addCriterion("submit_status >=", value, "submitStatus"); + return (Criteria) this; + } + + public Criteria andSubmitStatusLessThan(Integer value) { + addCriterion("submit_status <", value, "submitStatus"); + return (Criteria) this; + } + + public Criteria andSubmitStatusLessThanOrEqualTo(Integer value) { + addCriterion("submit_status <=", value, "submitStatus"); + return (Criteria) this; + } + + public Criteria andSubmitStatusIn(List values) { + addCriterion("submit_status in", values, "submitStatus"); + return (Criteria) this; + } + + public Criteria andSubmitStatusNotIn(List values) { + addCriterion("submit_status not in", values, "submitStatus"); + return (Criteria) this; + } + + public Criteria andSubmitStatusBetween(Integer value1, Integer value2) { + addCriterion("submit_status between", value1, value2, "submitStatus"); + return (Criteria) this; + } + + public Criteria andSubmitStatusNotBetween(Integer value1, Integer value2) { + addCriterion("submit_status not between", value1, value2, "submitStatus"); + return (Criteria) this; + } + + public Criteria andUserIdIsNull() { + addCriterion("user_id is null"); + return (Criteria) this; + } + + public Criteria andUserIdIsNotNull() { + addCriterion("user_id is not null"); + return (Criteria) this; + } + + public Criteria andUserIdEqualTo(String value) { + addCriterion("user_id =", value, "userId"); + return (Criteria) this; + } + + public Criteria andUserIdNotEqualTo(String value) { + addCriterion("user_id <>", value, "userId"); + return (Criteria) this; + } + + public Criteria andUserIdGreaterThan(String value) { + addCriterion("user_id >", value, "userId"); + return (Criteria) this; + } + + public Criteria andUserIdGreaterThanOrEqualTo(String value) { + addCriterion("user_id >=", value, "userId"); + return (Criteria) this; + } + + public Criteria andUserIdLessThan(String value) { + addCriterion("user_id <", value, "userId"); + return (Criteria) this; + } + + public Criteria andUserIdLessThanOrEqualTo(String value) { + addCriterion("user_id <=", value, "userId"); + return (Criteria) this; + } + + public Criteria andUserIdLike(String value) { + addCriterion("user_id like", value, "userId"); + return (Criteria) this; + } + + public Criteria andUserIdNotLike(String value) { + addCriterion("user_id not like", value, "userId"); + return (Criteria) this; + } + + public Criteria andUserIdIn(List values) { + addCriterion("user_id in", values, "userId"); + return (Criteria) this; + } + + public Criteria andUserIdNotIn(List values) { + addCriterion("user_id not in", values, "userId"); + return (Criteria) this; + } + + public Criteria andUserIdBetween(String value1, String value2) { + addCriterion("user_id between", value1, value2, "userId"); + return (Criteria) this; + } + + public Criteria andUserIdNotBetween(String value1, String value2) { + addCriterion("user_id not between", value1, value2, "userId"); + return (Criteria) this; + } + + public Criteria andErrorNumberIsNull() { + addCriterion("error_number is null"); + return (Criteria) this; + } + + public Criteria andErrorNumberIsNotNull() { + addCriterion("error_number is not null"); + return (Criteria) this; + } + + public Criteria andErrorNumberEqualTo(Integer value) { + addCriterion("error_number =", value, "errorNumber"); + return (Criteria) this; + } + + public Criteria andErrorNumberNotEqualTo(Integer value) { + addCriterion("error_number <>", value, "errorNumber"); + return (Criteria) this; + } + + public Criteria andErrorNumberGreaterThan(Integer value) { + addCriterion("error_number >", value, "errorNumber"); + return (Criteria) this; + } + + public Criteria andErrorNumberGreaterThanOrEqualTo(Integer value) { + addCriterion("error_number >=", value, "errorNumber"); + return (Criteria) this; + } + + public Criteria andErrorNumberLessThan(Integer value) { + addCriterion("error_number <", value, "errorNumber"); + return (Criteria) this; + } + + public Criteria andErrorNumberLessThanOrEqualTo(Integer value) { + addCriterion("error_number <=", value, "errorNumber"); + return (Criteria) this; + } + + public Criteria andErrorNumberIn(List values) { + addCriterion("error_number in", values, "errorNumber"); + return (Criteria) this; + } + + public Criteria andErrorNumberNotIn(List values) { + addCriterion("error_number not in", values, "errorNumber"); + return (Criteria) this; + } + + public Criteria andErrorNumberBetween(Integer value1, Integer value2) { + addCriterion("error_number between", value1, value2, "errorNumber"); + return (Criteria) this; + } + + public Criteria andErrorNumberNotBetween(Integer value1, Integer value2) { + addCriterion("error_number not between", value1, value2, "errorNumber"); + return (Criteria) this; + } + + public Criteria andNumberIsNull() { + addCriterion("number is null"); + return (Criteria) this; + } + + public Criteria andNumberIsNotNull() { + addCriterion("number is not null"); + return (Criteria) this; + } + + public Criteria andNumberEqualTo(Integer value) { + addCriterion("number =", value, "number"); + return (Criteria) this; + } + + public Criteria andNumberNotEqualTo(Integer value) { + addCriterion("number <>", value, "number"); + return (Criteria) this; + } + + public Criteria andNumberGreaterThan(Integer value) { + addCriterion("number >", value, "number"); + return (Criteria) this; + } + + public Criteria andNumberGreaterThanOrEqualTo(Integer value) { + addCriterion("number >=", value, "number"); + return (Criteria) this; + } + + public Criteria andNumberLessThan(Integer value) { + addCriterion("number <", value, "number"); + return (Criteria) this; + } + + public Criteria andNumberLessThanOrEqualTo(Integer value) { + addCriterion("number <=", value, "number"); + return (Criteria) this; + } + + public Criteria andNumberIn(List values) { + addCriterion("number in", values, "number"); + return (Criteria) this; + } + + public Criteria andNumberNotIn(List values) { + addCriterion("number not in", values, "number"); + return (Criteria) this; + } + + public Criteria andNumberBetween(Integer value1, Integer value2) { + addCriterion("number between", value1, value2, "number"); + return (Criteria) this; + } + + public Criteria andNumberNotBetween(Integer value1, Integer value2) { + addCriterion("number not between", value1, value2, "number"); + return (Criteria) this; + } + } + + public static class Criteria extends GeneratedCriteria { + protected Criteria() { + super(); + } + } + + public static class Criterion { + private String condition; + + private Object value; + + private Object secondValue; + + private boolean noValue; + + private boolean singleValue; + + private boolean betweenValue; + + private boolean listValue; + + private String typeHandler; + + public String getCondition() { + return condition; + } + + public Object getValue() { + return value; + } + + public Object getSecondValue() { + return secondValue; + } + + public boolean isNoValue() { + return noValue; + } + + public boolean isSingleValue() { + return singleValue; + } + + public boolean isBetweenValue() { + return betweenValue; + } + + public boolean isListValue() { + return listValue; + } + + public String getTypeHandler() { + return typeHandler; + } + + protected Criterion(String condition) { + super(); + this.condition = condition; + this.typeHandler = null; + this.noValue = true; + } + + protected Criterion(String condition, Object value, String typeHandler) { + super(); + this.condition = condition; + this.value = value; + this.typeHandler = typeHandler; + if (value instanceof List) { + this.listValue = true; + } else { + this.singleValue = true; + } + } + + protected Criterion(String condition, Object value) { + this(condition, value, null); + } + + protected Criterion(String condition, Object value, Object secondValue, String typeHandler) { + super(); + this.condition = condition; + this.value = value; + this.secondValue = secondValue; + this.typeHandler = typeHandler; + this.betweenValue = true; + } + + protected Criterion(String condition, Object value, Object secondValue) { + this(condition, value, secondValue, null); + } + } +} \ No newline at end of file diff --git a/src/main/java/com/sztzjy/bank/entity/PerLoanCustomerSurvey.java b/src/main/java/com/sztzjy/bank/entity/PerLoanCustomerSurvey.java index 61b9c9e..31c53e8 100644 --- a/src/main/java/com/sztzjy/bank/entity/PerLoanCustomerSurvey.java +++ b/src/main/java/com/sztzjy/bank/entity/PerLoanCustomerSurvey.java @@ -2,7 +2,10 @@ package com.sztzjy.bank.entity; import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModelProperty; +import org.springframework.format.annotation.DateTimeFormat; + /** * 贷前客户调查 * @@ -26,9 +29,13 @@ public class PerLoanCustomerSurvey { private String userId; @ApiModelProperty(notes = "创建时间") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") private Date createTime; @ApiModelProperty(notes = "更新时间") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") private Date updateTime; @ApiModelProperty(notes = "保存状态(0未保存、1已保存)") diff --git a/src/main/java/com/sztzjy/bank/entity/StuGradeManagement.java b/src/main/java/com/sztzjy/bank/entity/StuGradeManagement.java index 4d6ab8c..5be1ce2 100644 --- a/src/main/java/com/sztzjy/bank/entity/StuGradeManagement.java +++ b/src/main/java/com/sztzjy/bank/entity/StuGradeManagement.java @@ -44,6 +44,9 @@ public class StuGradeManagement { @ApiModelProperty(notes = "更新时间") private Date updateTime; + @ApiModelProperty(notes = "学校ID") + private String schoolId; + public String getId() { return id; } @@ -131,4 +134,12 @@ public class StuGradeManagement { public void setUpdateTime(Date updateTime) { this.updateTime = updateTime; } + + public String getSchoolId() { + return schoolId; + } + + public void setSchoolId(String schoolId) { + this.schoolId = schoolId == null ? null : schoolId.trim(); + } } \ No newline at end of file diff --git a/src/main/java/com/sztzjy/bank/entity/StuGradeManagementExample.java b/src/main/java/com/sztzjy/bank/entity/StuGradeManagementExample.java index e193e0b..4a3f59a 100644 --- a/src/main/java/com/sztzjy/bank/entity/StuGradeManagementExample.java +++ b/src/main/java/com/sztzjy/bank/entity/StuGradeManagementExample.java @@ -805,6 +805,76 @@ public class StuGradeManagementExample { addCriterion("update_time not between", value1, value2, "updateTime"); return (Criteria) this; } + + public Criteria andSchoolIdIsNull() { + addCriterion("school_id is null"); + return (Criteria) this; + } + + public Criteria andSchoolIdIsNotNull() { + addCriterion("school_id is not null"); + return (Criteria) this; + } + + public Criteria andSchoolIdEqualTo(String value) { + addCriterion("school_id =", value, "schoolId"); + return (Criteria) this; + } + + public Criteria andSchoolIdNotEqualTo(String value) { + addCriterion("school_id <>", value, "schoolId"); + return (Criteria) this; + } + + public Criteria andSchoolIdGreaterThan(String value) { + addCriterion("school_id >", value, "schoolId"); + return (Criteria) this; + } + + public Criteria andSchoolIdGreaterThanOrEqualTo(String value) { + addCriterion("school_id >=", value, "schoolId"); + return (Criteria) this; + } + + public Criteria andSchoolIdLessThan(String value) { + addCriterion("school_id <", value, "schoolId"); + return (Criteria) this; + } + + public Criteria andSchoolIdLessThanOrEqualTo(String value) { + addCriterion("school_id <=", value, "schoolId"); + return (Criteria) this; + } + + public Criteria andSchoolIdLike(String value) { + addCriterion("school_id like", value, "schoolId"); + return (Criteria) this; + } + + public Criteria andSchoolIdNotLike(String value) { + addCriterion("school_id not like", value, "schoolId"); + return (Criteria) this; + } + + public Criteria andSchoolIdIn(List values) { + addCriterion("school_id in", values, "schoolId"); + return (Criteria) this; + } + + public Criteria andSchoolIdNotIn(List values) { + addCriterion("school_id not in", values, "schoolId"); + return (Criteria) this; + } + + public Criteria andSchoolIdBetween(String value1, String value2) { + addCriterion("school_id between", value1, value2, "schoolId"); + return (Criteria) this; + } + + public Criteria andSchoolIdNotBetween(String value1, String value2) { + addCriterion("school_id not between", value1, value2, "schoolId"); + return (Criteria) this; + } } public static class Criteria extends GeneratedCriteria { diff --git a/src/main/java/com/sztzjy/bank/entity/StuUser.java b/src/main/java/com/sztzjy/bank/entity/StuUser.java index f443a26..c967b7d 100644 --- a/src/main/java/com/sztzjy/bank/entity/StuUser.java +++ b/src/main/java/com/sztzjy/bank/entity/StuUser.java @@ -60,7 +60,7 @@ public class StuUser { private Double practiceProgress; @ApiModelProperty(notes = "练习时长(单位分钟)") - private Integer practiceDuration; + private Double practiceDuration; @ApiModelProperty(notes = "练习成绩") private BigDecimal practiceResults; @@ -196,11 +196,11 @@ public class StuUser { this.practiceProgress = practiceProgress; } - public Integer getPracticeDuration() { + public Double getPracticeDuration() { return practiceDuration; } - public void setPracticeDuration(Integer practiceDuration) { + public void setPracticeDuration(Double practiceDuration) { this.practiceDuration = practiceDuration; } diff --git a/src/main/java/com/sztzjy/bank/entity/StuUserExample.java b/src/main/java/com/sztzjy/bank/entity/StuUserExample.java index a871c6a..d6721af 100644 --- a/src/main/java/com/sztzjy/bank/entity/StuUserExample.java +++ b/src/main/java/com/sztzjy/bank/entity/StuUserExample.java @@ -1166,52 +1166,52 @@ public class StuUserExample { return (Criteria) this; } - public Criteria andPracticeDurationEqualTo(Integer value) { + public Criteria andPracticeDurationEqualTo(Double value) { addCriterion("practice_duration =", value, "practiceDuration"); return (Criteria) this; } - public Criteria andPracticeDurationNotEqualTo(Integer value) { + public Criteria andPracticeDurationNotEqualTo(Double value) { addCriterion("practice_duration <>", value, "practiceDuration"); return (Criteria) this; } - public Criteria andPracticeDurationGreaterThan(Integer value) { + public Criteria andPracticeDurationGreaterThan(Double value) { addCriterion("practice_duration >", value, "practiceDuration"); return (Criteria) this; } - public Criteria andPracticeDurationGreaterThanOrEqualTo(Integer value) { + public Criteria andPracticeDurationGreaterThanOrEqualTo(Double value) { addCriterion("practice_duration >=", value, "practiceDuration"); return (Criteria) this; } - public Criteria andPracticeDurationLessThan(Integer value) { + public Criteria andPracticeDurationLessThan(Double value) { addCriterion("practice_duration <", value, "practiceDuration"); return (Criteria) this; } - public Criteria andPracticeDurationLessThanOrEqualTo(Integer value) { + public Criteria andPracticeDurationLessThanOrEqualTo(Double value) { addCriterion("practice_duration <=", value, "practiceDuration"); return (Criteria) this; } - public Criteria andPracticeDurationIn(List values) { + public Criteria andPracticeDurationIn(List values) { addCriterion("practice_duration in", values, "practiceDuration"); return (Criteria) this; } - public Criteria andPracticeDurationNotIn(List values) { + public Criteria andPracticeDurationNotIn(List values) { addCriterion("practice_duration not in", values, "practiceDuration"); return (Criteria) this; } - public Criteria andPracticeDurationBetween(Integer value1, Integer value2) { + public Criteria andPracticeDurationBetween(Double value1, Double value2) { addCriterion("practice_duration between", value1, value2, "practiceDuration"); return (Criteria) this; } - public Criteria andPracticeDurationNotBetween(Integer value1, Integer value2) { + public Criteria andPracticeDurationNotBetween(Double value1, Double value2) { addCriterion("practice_duration not between", value1, value2, "practiceDuration"); return (Criteria) this; } diff --git a/src/main/java/com/sztzjy/bank/entity/dto/CreditDataDTO.java b/src/main/java/com/sztzjy/bank/entity/dto/CreditDataDTO.java index 4a8f5c0..cfcccb5 100644 --- a/src/main/java/com/sztzjy/bank/entity/dto/CreditDataDTO.java +++ b/src/main/java/com/sztzjy/bank/entity/dto/CreditDataDTO.java @@ -41,4 +41,7 @@ public class CreditDataDTO { @ApiModelProperty(notes = "第几套案例(1、2、3)") private Integer number; + + @ApiModelProperty(notes = "总错误次数") + private Integer errorNumber; } diff --git a/src/main/java/com/sztzjy/bank/entity/dto/LoanApplicationDTO.java b/src/main/java/com/sztzjy/bank/entity/dto/LoanApplicationDTO.java index 08cac75..8f1477e 100644 --- a/src/main/java/com/sztzjy/bank/entity/dto/LoanApplicationDTO.java +++ b/src/main/java/com/sztzjy/bank/entity/dto/LoanApplicationDTO.java @@ -32,4 +32,7 @@ public class LoanApplicationDTO { @ApiModelProperty(notes = "大模块(如:个人银行卡业务、个人存取款业务等)") private String largeModule; + + @ApiModelProperty(notes = "总错误次数") + private Integer errorNumber; } diff --git a/src/main/java/com/sztzjy/bank/entity/dto/PaymentAcceptanceDTO.java b/src/main/java/com/sztzjy/bank/entity/dto/PaymentAcceptanceDTO.java new file mode 100644 index 0000000..6c77b40 --- /dev/null +++ b/src/main/java/com/sztzjy/bank/entity/dto/PaymentAcceptanceDTO.java @@ -0,0 +1,44 @@ +package com.sztzjy.bank.entity.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author tz + * @date 2025/3/19 9:13 + */ +@Data +public class PaymentAcceptanceDTO { + @ApiModelProperty(notes = "收款行代码") + private String receivingBankCode; + + @ApiModelProperty(notes = "收费方式") + private String chargingMethod; + + @ApiModelProperty(notes = "我行代码") + private String writeCode; + + @ApiModelProperty(notes = "电报费类型") + private String telegramFeeType; + + @ApiModelProperty(notes = "承兑币种") + private String acceptanceCurrency; + + @ApiModelProperty(notes = "承兑金额") + private String acceptanceAmount; + + @ApiModelProperty(notes = "受益人") + private String beneficiary; + + @ApiModelProperty(notes = "受益人结算账号") + private String benSettlementAccount; + + @ApiModelProperty(notes = "付款人结算账号") + private String payerSettlementAccount; + + @ApiModelProperty(notes = "付款人名称") + private String payerName; + + @ApiModelProperty(notes = "扣费账号") + private String deductionAccount; +} diff --git a/src/main/java/com/sztzjy/bank/entity/dto/StuAcademicRecordDTO.java b/src/main/java/com/sztzjy/bank/entity/dto/StuAcademicRecordDTO.java index 47d5241..d8675d6 100644 --- a/src/main/java/com/sztzjy/bank/entity/dto/StuAcademicRecordDTO.java +++ b/src/main/java/com/sztzjy/bank/entity/dto/StuAcademicRecordDTO.java @@ -21,13 +21,13 @@ public class StuAcademicRecordDTO { private String businessName; @ApiModelProperty(notes = "练习进度") - private Double practiceProgress; + private double practiceProgress; @ApiModelProperty(notes = "练习次数") private Integer practiceFrequency; @ApiModelProperty(notes = "练习时长") - private String practiceDuration; + private double practiceDuration; @ApiModelProperty(notes = "练习成绩") private BigDecimal practiceResults; @@ -38,4 +38,7 @@ public class StuAcademicRecordDTO { @ApiModelProperty(notes = "加权得分") private BigDecimal score; + @ApiModelProperty(notes = "错误次数") + private double errorsNumber; + } diff --git a/src/main/java/com/sztzjy/bank/entity/dto/TchProjectAnalysisDTO.java b/src/main/java/com/sztzjy/bank/entity/dto/TchProjectAnalysisDTO.java new file mode 100644 index 0000000..75fc030 --- /dev/null +++ b/src/main/java/com/sztzjy/bank/entity/dto/TchProjectAnalysisDTO.java @@ -0,0 +1,29 @@ +package com.sztzjy.bank.entity.dto; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; + +/** + * @author tz + * @date 2025/3/18 10:36 + */ +@Data +public class TchProjectAnalysisDTO { + @ApiModelProperty(notes = "业务名称") + private String businessName; + + @ApiModelProperty(notes = "平均练习进度") + private double practiceProgress; + + @ApiModelProperty(notes = "平均练习时长") + private double practiceDuration; + + @ApiModelProperty(notes = "平均练习成绩") + private BigDecimal practiceResults; + + @ApiModelProperty(notes = "平均错误次数") + private double AverageErrorsNumber; + +} diff --git a/src/main/java/com/sztzjy/bank/mapper/PaymentAcceptanceMapper.java b/src/main/java/com/sztzjy/bank/mapper/PaymentAcceptanceMapper.java new file mode 100644 index 0000000..bd6bff8 --- /dev/null +++ b/src/main/java/com/sztzjy/bank/mapper/PaymentAcceptanceMapper.java @@ -0,0 +1,30 @@ +package com.sztzjy.bank.mapper; + +import com.sztzjy.bank.entity.PaymentAcceptance; +import com.sztzjy.bank.entity.PaymentAcceptanceExample; +import java.util.List; +import org.apache.ibatis.annotations.Param; + +public interface PaymentAcceptanceMapper { + long countByExample(PaymentAcceptanceExample example); + + int deleteByExample(PaymentAcceptanceExample example); + + int deleteByPrimaryKey(String id); + + int insert(PaymentAcceptance record); + + int insertSelective(PaymentAcceptance record); + + List selectByExample(PaymentAcceptanceExample example); + + PaymentAcceptance selectByPrimaryKey(String id); + + int updateByExampleSelective(@Param("record") PaymentAcceptance record, @Param("example") PaymentAcceptanceExample example); + + int updateByExample(@Param("record") PaymentAcceptance record, @Param("example") PaymentAcceptanceExample example); + + int updateByPrimaryKeySelective(PaymentAcceptance record); + + int updateByPrimaryKey(PaymentAcceptance record); +} \ No newline at end of file diff --git a/src/main/java/com/sztzjy/bank/service/ImportletterService.java b/src/main/java/com/sztzjy/bank/service/ImportletterService.java index 4e6e76f..6aeab1e 100644 --- a/src/main/java/com/sztzjy/bank/service/ImportletterService.java +++ b/src/main/java/com/sztzjy/bank/service/ImportletterService.java @@ -41,4 +41,7 @@ public interface ImportletterService { RegistrationDTO getOrderRegistration(String userId, Integer number, String module); String getCodeByNameAndAddress(String userId, Integer number, String code); + + Integer submitPaymentAcceptance(PaymentAcceptance paymentAcceptance); + } diff --git a/src/main/java/com/sztzjy/bank/service/StuGradeManagementService.java b/src/main/java/com/sztzjy/bank/service/StuGradeManagementService.java index 3a16643..18cc4a8 100644 --- a/src/main/java/com/sztzjy/bank/service/StuGradeManagementService.java +++ b/src/main/java/com/sztzjy/bank/service/StuGradeManagementService.java @@ -1,5 +1,7 @@ package com.sztzjy.bank.service; +import com.sztzjy.bank.entity.StuGradeManagement; +import com.sztzjy.bank.entity.TchScoreWeight; import com.sztzjy.bank.entity.dto.CaseInfoDTO; import com.sztzjy.bank.entity.dto.StuAcademicRecordDTO; @@ -15,4 +17,8 @@ public interface StuGradeManagementService { CaseInfoDTO getCaseInfo(String userId, String largeModule, String module); void reTraining(String userId, String largeModule, String module); + + + //成绩信息统计 + List getAcademicRecordDTO(List stuGradeManagements, TchScoreWeight tchScoreWeight,String userId); } diff --git a/src/main/java/com/sztzjy/bank/service/TchSummaryGradesService.java b/src/main/java/com/sztzjy/bank/service/TchSummaryGradesService.java index 9d75de6..d8d109f 100644 --- a/src/main/java/com/sztzjy/bank/service/TchSummaryGradesService.java +++ b/src/main/java/com/sztzjy/bank/service/TchSummaryGradesService.java @@ -1,6 +1,8 @@ package com.sztzjy.bank.service; +import com.github.pagehelper.PageInfo; import com.sztzjy.bank.entity.StuUser; +import com.sztzjy.bank.entity.dto.TchProjectAnalysisDTO; import java.util.List; @@ -9,6 +11,7 @@ import java.util.List; * @date 2025/3/14 17:49 */ public interface TchSummaryGradesService { - List getSummaryGrades(String schoolId); + PageInfo getSummaryGrades(String schoolId, Integer index, Integer size,String studentId,String userName,String className); + List getProjectAnalysis(String schoolId); } diff --git a/src/main/java/com/sztzjy/bank/service/impl/CorporateLoanBusinessServiceImpl.java b/src/main/java/com/sztzjy/bank/service/impl/CorporateLoanBusinessServiceImpl.java index 336ca31..d066f90 100644 --- a/src/main/java/com/sztzjy/bank/service/impl/CorporateLoanBusinessServiceImpl.java +++ b/src/main/java/com/sztzjy/bank/service/impl/CorporateLoanBusinessServiceImpl.java @@ -7,6 +7,7 @@ import com.sztzjy.bank.entity.*; import com.sztzjy.bank.entity.dto.*; import com.sztzjy.bank.mapper.*; import com.sztzjy.bank.service.CorporateLoanBusinessService; +import com.sztzjy.bank.service.IUpdateScoreInfo; import com.sztzjy.bank.service.PersonalLoanService; import com.sztzjy.bank.util.ConvertUtil; import com.sztzjy.bank.util.RedisUtil; @@ -59,6 +60,8 @@ public class CorporateLoanBusinessServiceImpl implements CorporateLoanBusinessSe LoanApplicationMapper loanApplicationMapper; @Autowired PostLoanInvestigationMapper loanInvestigationMapper; + @Autowired + IUpdateScoreInfo updateScoreInfo; @Override public Integer submitCompanyCustomerInfo(CompanyCustomerInformation customerInformation) { CompanyCustomerInformationExample customerInformationExample=new CompanyCustomerInformationExample(); @@ -74,7 +77,7 @@ public class CorporateLoanBusinessServiceImpl implements CorporateLoanBusinessSe if(customerInformation.getSubmitStatus()==1){ //提交则计算错误次数 //判断用户是否完成上一个流程,并更新操作步骤序号 - if(!personalLoanService.ProcessJudgment(1,customerInformation.getUserId(),"对公贷款业务")){ + if(!personalLoanService.ProcessJudgment(1,customerInformation.getUserId(),"公司抵押贷款业务")){ throw new ServiceException(HttpStatus.ACCEPTED,"请先完成上一流程"); } @@ -82,6 +85,9 @@ public class CorporateLoanBusinessServiceImpl implements CorporateLoanBusinessSe //计算错误次数 customerInformation = countByCCompanyCustomerInfo(customerInformation); + //更新成绩表 + updateScoreInfo.UpdateScoreInfo(customerInformation.getUserId(),"对公贷款业务","公司抵押贷款业务",customerInformation.getErrorNumber(),1); + //生成唯一的九位数的客户号,去重 int random; List customerInformationList; @@ -116,7 +122,7 @@ public class CorporateLoanBusinessServiceImpl implements CorporateLoanBusinessSe if(customerInformation.getSubmitStatus()==1){ //提交则计算错误次数 //判断用户是否完成上一个流程,并更新操作步骤序号 - if(!personalLoanService.ProcessJudgment(1,customerInformation.getUserId(),"对公贷款业务")){ + if(!personalLoanService.ProcessJudgment(1,customerInformation.getUserId(),"公司抵押贷款业务")){ throw new ServiceException(HttpStatus.ACCEPTED,"请先完成上一流程"); } @@ -124,6 +130,9 @@ public class CorporateLoanBusinessServiceImpl implements CorporateLoanBusinessSe //计算错误次数 customerInformation = countByCCompanyCustomerInfo(customerInformation); + //更新成绩表 + updateScoreInfo.UpdateScoreInfo(customerInformation.getUserId(),"对公贷款业务","公司抵押贷款业务",customerInformation.getErrorNumber(),1); + //生成唯一的九位数的客户号,去重 int random; List customerInformationList; @@ -176,7 +185,7 @@ public class CorporateLoanBusinessServiceImpl implements CorporateLoanBusinessSe if(accountOpening.getSubmitStatus()==1){ //提交则计算错误次数 //判断用户是否完成上一个流程,并更新操作步骤序号 - if(!personalLoanService.ProcessJudgment(2,accountOpening.getUserId(),"对公贷款业务")){ + if(!personalLoanService.ProcessJudgment(2,accountOpening.getUserId(),"公司抵押贷款业务")){ throw new ServiceException(HttpStatus.ACCEPTED,"请先完成上一流程"); } @@ -184,6 +193,9 @@ public class CorporateLoanBusinessServiceImpl implements CorporateLoanBusinessSe //计算错误次数 accountOpening = countByAccountOpening(accountOpening); + //更新成绩表 + updateScoreInfo.UpdateScoreInfo(accountOpening.getUserId(),"对公贷款业务","公司抵押贷款业务",accountOpening.getErrorNumber(),2); + //生成唯一的15位数的对公账号,去重 int random; List accountOpeningList; @@ -218,7 +230,7 @@ public class CorporateLoanBusinessServiceImpl implements CorporateLoanBusinessSe if(accountOpening.getSubmitStatus()==1){ //提交则计算错误次数 //判断用户是否完成上一个流程,并更新操作步骤序号 - if(!personalLoanService.ProcessJudgment(2,accountOpening.getUserId(),"对公贷款业务")){ + if(!personalLoanService.ProcessJudgment(2,accountOpening.getUserId(),"公司抵押贷款业务")){ throw new ServiceException(HttpStatus.ACCEPTED,"请先完成上一流程"); } @@ -226,6 +238,9 @@ public class CorporateLoanBusinessServiceImpl implements CorporateLoanBusinessSe //计算错误次数 accountOpening = countByAccountOpening(accountOpening); + //更新成绩表 + updateScoreInfo.UpdateScoreInfo(accountOpening.getUserId(),"对公贷款业务","公司抵押贷款业务",accountOpening.getErrorNumber(),2); + //生成唯一的15位数的对公账号,去重 int random; List accountOpeningList; @@ -291,6 +306,9 @@ public class CorporateLoanBusinessServiceImpl implements CorporateLoanBusinessSe //计算错误次数 dataArchiving = countByCreditDataArchiving(dataArchiving); + //更新成绩表 + updateScoreInfo.UpdateScoreInfo(dataArchiving.getUserId(),"对公贷款业务","公司抵押贷款业务",dataArchiving.getErrorNumber(),3); + } @@ -317,6 +335,9 @@ public class CorporateLoanBusinessServiceImpl implements CorporateLoanBusinessSe //计算错误次数 dataArchiving = countByCreditDataArchiving(dataArchiving); + + //更新成绩表 + updateScoreInfo.UpdateScoreInfo(dataArchiving.getUserId(),"对公贷款业务","公司抵押贷款业务",dataArchiving.getErrorNumber(),3); } } diff --git a/src/main/java/com/sztzjy/bank/service/impl/IUpdateScoreInfoImpl.java b/src/main/java/com/sztzjy/bank/service/impl/IUpdateScoreInfoImpl.java index 24fde57..4de6f74 100644 --- a/src/main/java/com/sztzjy/bank/service/impl/IUpdateScoreInfoImpl.java +++ b/src/main/java/com/sztzjy/bank/service/impl/IUpdateScoreInfoImpl.java @@ -1,11 +1,9 @@ package com.sztzjy.bank.service.impl; import cn.hutool.core.util.IdUtil; -import com.sztzjy.bank.entity.StuGradeManagement; -import com.sztzjy.bank.entity.StuGradeManagementExample; -import com.sztzjy.bank.entity.TotalNumberInfo; -import com.sztzjy.bank.entity.TotalNumberInfoExample; +import com.sztzjy.bank.entity.*; import com.sztzjy.bank.mapper.StuGradeManagementMapper; +import com.sztzjy.bank.mapper.StuUserMapper; import com.sztzjy.bank.mapper.TotalNumberInfoMapper; import com.sztzjy.bank.service.IUpdateScoreInfo; import com.sztzjy.bank.util.BigDecimalUtils; @@ -31,6 +29,8 @@ public class IUpdateScoreInfoImpl implements IUpdateScoreInfo { StuGradeManagementMapper gradeManagementMapper; @Autowired BigDecimalUtils bigDecimalUtils; + @Autowired + StuUserMapper stuUserMapper; @Override public void UpdateScoreInfo(String userId,String largeModule, String module, Integer errorsNumber, Integer processNumber) { @@ -40,6 +40,7 @@ public class IUpdateScoreInfoImpl implements IUpdateScoreInfo { .andModuleEqualTo(module); List totalNumberInfos = numberInfoMapper.selectByExample(numberInfoExample); + StuUser stuUser = stuUserMapper.selectByPrimaryKey(userId); if(!CollectionUtils.isEmpty(totalNumberInfos)){ Integer totalNumber = totalNumberInfos.get(0).getTotalNumber(); //总步骤数 @@ -63,6 +64,7 @@ public class IUpdateScoreInfoImpl implements IUpdateScoreInfo { stuGradeManagement.setPracticeProgress(format); stuGradeManagement.setPracticeFrequency(1); stuGradeManagement.setPracticeDuration(0); + stuGradeManagement.setSchoolId(stuUser.getSchoolId()); //练习成绩计算 (100-错误次数)*进度 double score=bigDecimalUtils.mul(bigDecimalUtils.sub(100.0, Double.valueOf(errorsNumber)),format,2); stuGradeManagement.setPracticeResults(BigDecimal.valueOf(score)); diff --git a/src/main/java/com/sztzjy/bank/service/impl/ImportletterServiceImpl.java b/src/main/java/com/sztzjy/bank/service/impl/ImportletterServiceImpl.java index e982fef..91a5dbf 100644 --- a/src/main/java/com/sztzjy/bank/service/impl/ImportletterServiceImpl.java +++ b/src/main/java/com/sztzjy/bank/service/impl/ImportletterServiceImpl.java @@ -54,6 +54,8 @@ public class ImportletterServiceImpl implements ImportletterService { ImportBillAdvanceMapper importBillAdvanceMapper; @Autowired OrderRegistrationMapper orderRegistrationMapper; + @Autowired + PaymentAcceptanceMapper paymentAcceptanceMapper; //进口信用证业务-签署合同-提交保存 @@ -722,6 +724,64 @@ public class ImportletterServiceImpl implements ImportletterService { return null; } + @Override + public Integer submitPaymentAcceptance(PaymentAcceptance paymentAcceptance) { + PaymentAcceptanceExample acceptanceExample = new PaymentAcceptanceExample(); + acceptanceExample.createCriteria().andUserIdEqualTo(paymentAcceptance.getUserId()) + .andNumberEqualTo(paymentAcceptance.getNumber()); + + List acceptances = paymentAcceptanceMapper.selectByExample(acceptanceExample); + if (CollectionUtils.isEmpty(acceptances)) { //添加数据 + paymentAcceptance.setId(IdUtil.simpleUUID()); + paymentAcceptance.setCreateTime(new Date()); + + //检验是提交还是保存 + if (paymentAcceptance.getSubmitStatus() == 1) { //提交则计算错误次数 + + + //判断用户是否完成上一个流程,并更新操作步骤序号 + if (!personalLoanService.ProcessJudgment(7, paymentAcceptance.getUserId(), "进口信用证业务")) { + throw new ServiceException(HttpStatus.ACCEPTED, "请先完成上一流程"); + } + + + //计算错误次数 + paymentAcceptance = countByPaymentAcceptance(paymentAcceptance); + + } + + + //否则保存不计算,直接添加 + return paymentAcceptanceMapper.insertSelective(paymentAcceptance); + + } else { //已有操作记录 + PaymentAcceptance acceptance = acceptances.get(0); + //取出id,以防被覆盖 + String id = acceptance.getId(); + + //判断是否已经提交,已提交保存记录不计分,未提交保存记录并计分 + if (paymentAcceptance.getSubmitStatus() != 1) { + + //判断用户是否完成上一个流程,并更新操作步骤序号 + if (!personalLoanService.ProcessJudgment(7, paymentAcceptance.getUserId(), "进口信用证业务")) { + throw new ServiceException(HttpStatus.ACCEPTED, "请先完成上一流程"); + } + + + //计算错误次数 + paymentAcceptance = countByPaymentAcceptance(paymentAcceptance); + + } + + + paymentAcceptance.setId(id); + paymentAcceptance.setUpdateTime(new Date()); + + return paymentAcceptanceMapper.updateByPrimaryKeySelective(paymentAcceptance); + } + } + + //开证申请计算 private ApplicationOpeningLetterCredit countByPostLoanInvestigation(ApplicationOpeningLetterCredit openingLetterCredit,int i) { @@ -890,4 +950,46 @@ public class ImportletterServiceImpl implements ImportletterService { } } + + + //付款/承兑计算 + private PaymentAcceptance countByPaymentAcceptance(PaymentAcceptance paymentAcceptance) { + + String answer = redisUtil.get("bank" + "-进口信用证业务" + "-付款"); + if (answer == null) { + CaseInfoExample caseInfoExample = new CaseInfoExample(); + caseInfoExample.createCriteria().andLargeModuleEqualTo("进口信用证业务").andModuleEqualTo("付款") + .andNumberEqualTo(paymentAcceptance.getNumber()); + List caseInfoList = caseInfoMapper.selectByExampleWithBLOBs(caseInfoExample); + if (!CollectionUtils.isEmpty(caseInfoList)) { + CaseInfo caseInfo = caseInfoList.get(0); + CaseAnswerInfoExample caseAnswerInfoExample = new CaseAnswerInfoExample(); + caseAnswerInfoExample.createCriteria().andCaseIdEqualTo(caseInfo.getCaseId()); + List answerInfoList = caseAnswerInfoMapper.selectByExampleWithBLOBs(caseAnswerInfoExample); + if (!CollectionUtils.isEmpty(answerInfoList)) { + String info = answerInfoList.get(0).getAnswer(); + redisUtil.set("bank" + "-进口信用证业务" + "-付款",info,3600); + answer=redisUtil.get("bank" + "-进口信用证业务" + "-付款"); + } + } + } + + // 解析 JSON 字符串 + PaymentAcceptance acceptance= JSON.parseObject(answer, PaymentAcceptance.class); + PaymentAcceptanceDTO answerDTO= convertUtil.entityToDTO(acceptance, PaymentAcceptanceDTO.class); + + PaymentAcceptanceDTO acceptanceDTO = convertUtil.entityToDTO(paymentAcceptance, PaymentAcceptanceDTO.class); + + try { + int update = ObjectComparatorUtil.countDifferences(answerDTO, acceptanceDTO); + + //错误次数 + paymentAcceptance.setErrorNumber(update); + + return paymentAcceptance; + } catch (IllegalAccessException e) { + throw new RuntimeException(e); + } + + } } diff --git a/src/main/java/com/sztzjy/bank/service/impl/PersonalLoanServiceImpl.java b/src/main/java/com/sztzjy/bank/service/impl/PersonalLoanServiceImpl.java index 6e022fb..7af052b 100644 --- a/src/main/java/com/sztzjy/bank/service/impl/PersonalLoanServiceImpl.java +++ b/src/main/java/com/sztzjy/bank/service/impl/PersonalLoanServiceImpl.java @@ -7,6 +7,7 @@ import com.sztzjy.bank.config.exception.handler.ServiceException; import com.sztzjy.bank.entity.*; import com.sztzjy.bank.entity.dto.*; import com.sztzjy.bank.mapper.*; +import com.sztzjy.bank.service.IUpdateScoreInfo; import com.sztzjy.bank.service.PersonalLoanService; import com.sztzjy.bank.util.BigDecimalUtils; import com.sztzjy.bank.util.ConvertUtil; @@ -80,6 +81,8 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { BigDecimalUtils bigDecimalUtils; @Autowired PostLoanTrackingMapper postLoanTrackingMapper; + @Autowired + IUpdateScoreInfo updateScoreInfo; @Override public Integer submitCustomerInfo(PerConsumerLoanCustomerInfo loanCustomerInfo) { PerConsumerLoanCustomerInfoExample loanCustomerInfoExample=new PerConsumerLoanCustomerInfoExample(); @@ -103,6 +106,9 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { //计算错误次数 loanCustomerInfo = submitByCustomerInfoCaculate(loanCustomerInfo); + //更新成绩表 + updateScoreInfo.UpdateScoreInfo(loanCustomerInfo.getUserId(),"个人贷款业务","个人消费贷款业务",loanCustomerInfo.getErrorNumber(),1); + //生成唯一的九位数的客户号,去重 int random; List loanCustomerInfoList; @@ -144,6 +150,9 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { //计算错误次数 loanCustomerInfo = submitByCustomerInfoCaculate(loanCustomerInfo); + //更新成绩表 + updateScoreInfo.UpdateScoreInfo(loanCustomerInfo.getUserId(),"个人贷款业务","个人消费贷款业务",loanCustomerInfo.getErrorNumber(),1); + //生成唯一的九位数的客户号,去重 int random; List loanCustomerInfoList; @@ -214,6 +223,9 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { //计算错误次数 currentAccount = submitByCurrentAccountCaculate(currentAccount); + //更新成绩表 + updateScoreInfo.UpdateScoreInfo(currentAccount.getUserId(),"个人贷款业务","个人消费贷款业务",currentAccount.getErrorNumber(),2); + //生成银行账号 Random random = new Random(); @@ -249,6 +261,9 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { //计算错误次数 currentAccount = submitByCurrentAccountCaculate(currentAccount); + //更新成绩表 + updateScoreInfo.UpdateScoreInfo(currentAccount.getUserId(),"个人贷款业务","个人消费贷款业务",currentAccount.getErrorNumber(),2); + //生成银行账号 Random random = new Random(); @@ -404,6 +419,13 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { //计算错误次数 creditDataDTO = submitCreditCardCollectionAndCalculation(creditDataDTO); + + //统计错误次数 + + + //更新成绩表 + updateScoreInfo.UpdateScoreInfo(creditDataDTO.getUserId(),"个人贷款业务","个人消费贷款业务",creditDataDTO.getErrorNumber(),3); + //修改提交状态 for (CreditCardCollectionInfo cardCollectionInfo:creditDataDTO.getCardCollectionInfos()) { cardCollectionInfo.setSubmitStatus(1); @@ -575,6 +597,9 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { //计算错误次数 creditDataDTO = submitCreditCardCollectionAndCalculation(creditDataDTO); + //更新成绩表 + updateScoreInfo.UpdateScoreInfo(creditDataDTO.getUserId(),"个人贷款业务","个人消费贷款业务",creditDataDTO.getErrorNumber(),3); + //修改提交状态 for (CreditCardCollectionInfo cardCollectionInfo:creditDataDTO.getCardCollectionInfos()) { cardCollectionInfo.setSubmitStatus(1); @@ -741,6 +766,9 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { //计算错误次数 creditReview = submitByCreditReview(creditReview); + //更新成绩表 + updateScoreInfo.UpdateScoreInfo(creditReview.getUserId(),"个人贷款业务","个人消费贷款业务",creditReview.getErrorNumber(),4); + } @@ -766,6 +794,9 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { //计算错误次数 creditReview = submitByCreditReview(creditReview); + + //更新成绩表 + updateScoreInfo.UpdateScoreInfo(creditReview.getUserId(),"个人贷款业务","个人消费贷款业务",creditReview.getErrorNumber(),4); } } @@ -799,36 +830,31 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { if(CollectionUtils.isEmpty(customerSurveys)){ //添加数据 //贷前客户调查 - if(loanApplicationDTO.getCustomerSurvey()==null){ - throw new ServiceException(HttpStatus.ACCEPTED,"必选项未填写"); - }else { - loanApplicationDTO.getCustomerSurvey().setId(IdUtil.simpleUUID()); - loanApplicationDTO.getCustomerSurvey().setCreateTime(new Date()); - loanApplicationDTO.getCustomerSurvey().setUserId(loanApplicationDTO.getUserId()); - loanApplicationDTO.getCustomerSurvey().setNumber(loanApplicationDTO.getNumber()); - } + loanApplicationDTO.getCustomerSurvey().setId(IdUtil.simpleUUID()); + loanApplicationDTO.getCustomerSurvey().setCreateTime(new Date()); + loanApplicationDTO.getCustomerSurvey().setUserId(loanApplicationDTO.getUserId()); + loanApplicationDTO.getCustomerSurvey().setNumber(loanApplicationDTO.getNumber()); + loanApplicationDTO.getCustomerSurvey().setSubmitStatus(loanApplicationDTO.getStatus()); + //业务担保信息 - if(loanApplicationDTO.getGuaranteeInfo()==null){ - throw new ServiceException(HttpStatus.ACCEPTED,"必选项未填写"); - }else { - loanApplicationDTO.getGuaranteeInfo().setId(IdUtil.simpleUUID()); - loanApplicationDTO.getGuaranteeInfo().setCreateTime(new Date()); - loanApplicationDTO.getGuaranteeInfo().setUserId(loanApplicationDTO.getUserId()); - loanApplicationDTO.getGuaranteeInfo().setNumber(loanApplicationDTO.getNumber()); - } + loanApplicationDTO.getGuaranteeInfo().setId(IdUtil.simpleUUID()); + loanApplicationDTO.getGuaranteeInfo().setCreateTime(new Date()); + loanApplicationDTO.getGuaranteeInfo().setUserId(loanApplicationDTO.getUserId()); + loanApplicationDTO.getGuaranteeInfo().setNumber(loanApplicationDTO.getNumber()); + loanApplicationDTO.getGuaranteeInfo().setSubmitStatus(loanApplicationDTO.getStatus()); + + //贷款申请 - if(loanApplicationDTO.getLoanApplication()==null){ - throw new ServiceException(HttpStatus.ACCEPTED,"必选项未填写"); - }else { - loanApplicationDTO.getLoanApplication().setId(IdUtil.simpleUUID()); - loanApplicationDTO.getLoanApplication().setCreateTime(new Date()); - loanApplicationDTO.getLoanApplication().setUserId(loanApplicationDTO.getUserId()); - loanApplicationDTO.getLoanApplication().setNumber(loanApplicationDTO.getNumber()); - } + loanApplicationDTO.getLoanApplication().setId(IdUtil.simpleUUID()); + loanApplicationDTO.getLoanApplication().setCreateTime(new Date()); + loanApplicationDTO.getLoanApplication().setUserId(loanApplicationDTO.getUserId()); + loanApplicationDTO.getLoanApplication().setNumber(loanApplicationDTO.getNumber()); + loanApplicationDTO.getLoanApplication().setLargeModule(loanApplicationDTO.getLargeModule()); + loanApplicationDTO.getLoanApplication().setSubmitStatus(loanApplicationDTO.getStatus()); //检验是提交还是保存 if(loanApplicationDTO.getStatus()==1){ //提交则计算错误次数 @@ -841,6 +867,9 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { //计算错误次数 loanApplicationDTO = computeloanApplication(loanApplicationDTO); + //更新成绩表 + updateScoreInfo.UpdateScoreInfo(loanApplicationDTO.getUserId(),"个人贷款业务","个人消费贷款业务",loanApplicationDTO.getErrorNumber(),5); + //修改提交状态 loanApplicationDTO.getCustomerSurvey().setSubmitStatus(1); loanApplicationDTO.getGuaranteeInfo().setSubmitStatus(1); @@ -883,6 +912,9 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { //计算错误次数 loanApplicationDTO = computeloanApplication(loanApplicationDTO); + //更新成绩表 + updateScoreInfo.UpdateScoreInfo(loanApplicationDTO.getUserId(),"个人贷款业务","个人消费贷款业务",loanApplicationDTO.getErrorNumber(),5); + //修改提交状态 loanApplicationDTO.getCustomerSurvey().setSubmitStatus(1); @@ -965,7 +997,7 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { LoanApplicationExample loanApplicationExample=new LoanApplicationExample(); loanApplicationExample.createCriteria().andUserIdEqualTo(signLoanContract.getUserId()) .andNumberEqualTo(signLoanContract.getNumber()) - .andLargeModuleEqualTo(signLoanContract.getLargeModule()); + .andLargeModuleEqualTo(signLoanContract.getLargeModule()).andSubmitStatusEqualTo(1); List loanApplications = loanApplicationMapper.selectByExample(loanApplicationExample); int i=0; //错误次数 @@ -995,7 +1027,7 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { BusinessGuaranteeInfoExample guaranteeInfoExample=new BusinessGuaranteeInfoExample(); guaranteeInfoExample.createCriteria().andUserIdEqualTo(signLoanContract.getUserId()) .andNumberEqualTo(signLoanContract.getNumber()) - .andLargeModuleEqualTo(signLoanContract.getLargeModule()); + .andLargeModuleEqualTo(signLoanContract.getLargeModule()).andSubmitStatusEqualTo(1); List businessGuaranteeInfos = guaranteeInfoMapper.selectByExample(guaranteeInfoExample); if(!CollectionUtils.isEmpty(businessGuaranteeInfos)){ //到期时间<=担保结束日期 @@ -1020,14 +1052,14 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { //检验是提交还是保存 if(signLoanContract.getSubmitStatus()==1){ //提交则计算错误次数 - if(signLoanContract.getLargeModule().equals("个人消费贷款业务")){ + if(signLoanContract.getLargeModule().equals("个人贷款业务")){ //判断用户是否完成上一个流程,并更新操作步骤序号 if(!ProcessJudgment(6,signLoanContract.getUserId(),"个人消费贷款业务")){ throw new ServiceException(HttpStatus.ACCEPTED,"请先完成上一流程"); } } - if(signLoanContract.getLargeModule().equals("公司抵押贷款业务")){ + if(signLoanContract.getLargeModule().equals("对公贷款业务")){ //判断用户是否完成上一个流程,并更新操作步骤序号 if(!ProcessJudgment(10,signLoanContract.getUserId(),"公司抵押贷款业务")){ throw new ServiceException(HttpStatus.ACCEPTED,"请先完成上一流程"); @@ -1037,6 +1069,18 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { //计算错误次数 signLoanContract = computeSignLoanContract(signLoanContract,i); + if(signLoanContract.getLargeModule().equals("个人贷款业务")){ + //更新成绩表 + updateScoreInfo.UpdateScoreInfo(signLoanContract.getUserId(),"个人贷款业务","个人消费贷款业务",signLoanContract.getErrorNumber(),6); + + } + + if(signLoanContract.getLargeModule().equals("对公贷款业务")){ + //更新成绩表 + updateScoreInfo.UpdateScoreInfo(signLoanContract.getUserId(),"对公贷款业务","公司抵押贷款业务",signLoanContract.getErrorNumber(),10); + } + + //生成唯一的13位数的合同编号,去重 int random; List signLoanContractList; @@ -1087,6 +1131,17 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { //计算错误次数 signLoanContract = computeSignLoanContract(signLoanContract,i); + if(signLoanContract.getLargeModule().equals("个人贷款业务")){ + //更新成绩表 + updateScoreInfo.UpdateScoreInfo(signLoanContract.getUserId(),"个人贷款业务","个人消费贷款业务",signLoanContract.getErrorNumber(),6); + + } + + if(signLoanContract.getLargeModule().equals("对公贷款业务")){ + //更新成绩表 + updateScoreInfo.UpdateScoreInfo(signLoanContract.getUserId(),"对公贷款业务","公司抵押贷款业务",signLoanContract.getErrorNumber(),10); + } + //生成唯一的13位数的合同编号,去重 int random; List signLoanContractList; @@ -1145,18 +1200,7 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { @Override public Integer submitNormalRepayment(NormalRepayment normalRepayment) { - //参数校验 - int i = 0; //错误次数 - //还款金额<=贷款余额与利息和 - double sum = Double.parseDouble(normalRepayment.getLoanBalance()) + Double.parseDouble(normalRepayment.getInterest()); //贷款余额与利息和 - if (Double.parseDouble(normalRepayment.getRepaymentAmount()) > sum) { - i++; - } - //还款日期>贷款日期 - if (normalRepayment.getRepaymentDate().compareTo(normalRepayment.getStartingTime()) <= 0) { - i++; - } NormalRepaymentExample normalRepaymentExample= new NormalRepaymentExample(); @@ -1174,23 +1218,47 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { //检验是提交还是保存 if (normalRepayment.getSubmitStatus() == 1) { //提交则计算错误次数 - if(normalRepayment.getLargeModule().equals("个人消费贷款业务")){ + if(normalRepayment.getLargeModule().equals("个人贷款业务")){ //判断用户是否完成上一个流程,并更新操作步骤序号 if (!ProcessJudgment(7, normalRepayment.getUserId(),"个人消费贷款业务")) { throw new ServiceException(HttpStatus.ACCEPTED, "请先完成上一流程"); } } - if(normalRepayment.getLargeModule().equals("公司抵押贷款业务")){ + if(normalRepayment.getLargeModule().equals("对公贷款业务")){ //判断用户是否完成上一个流程,并更新操作步骤序号 if(!ProcessJudgment(11,normalRepayment.getUserId(),"公司抵押贷款业务")){ throw new ServiceException(HttpStatus.ACCEPTED,"请先完成上一流程"); } } + //参数校验 + int i = 0; //错误次数 + //还款金额<=贷款余额与利息和 + double sum = Double.parseDouble(normalRepayment.getLoanBalance()) + Double.parseDouble(normalRepayment.getInterest()); //贷款余额与利息和 + if (Double.parseDouble(normalRepayment.getRepaymentAmount()) > sum) { + i++; + } + + //还款日期>贷款日期 + if (normalRepayment.getRepaymentDate().compareTo(normalRepayment.getStartingTime()) <= 0) { + i++; + } + //计算错误次数 normalRepayment.setErrorNumber(i); + if(normalRepayment.getLargeModule().equals("个人贷款业务")){ + //更新成绩表 + updateScoreInfo.UpdateScoreInfo(normalRepayment.getUserId(),"个人贷款业务","个人消费贷款业务",normalRepayment.getErrorNumber(),7); + + } + + if(normalRepayment.getLargeModule().equals("对公贷款业务")){ + //更新成绩表 + updateScoreInfo.UpdateScoreInfo(normalRepayment.getUserId(),"对公贷款业务","公司抵押贷款业务",normalRepayment.getErrorNumber(),11); + } + //贷款余额减少 贷款余额=贷款余额-还款金额 最少为0 BigDecimal sub = bigDecimalUtils.sub(normalRepayment.getLoanBalance(), normalRepayment.getRepaymentAmount()); if(sub.compareTo(BigDecimal.ZERO)<0){ @@ -1215,22 +1283,46 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { //检验本次是提交还是保存 if (normalRepayment.getSubmitStatus() == 1) { //提交则计算错误次数 - if(normalRepayment.getLargeModule().equals("个人消费贷款业务")){ + if(normalRepayment.getLargeModule().equals("个人贷款业务")){ //判断用户是否完成上一个流程,并更新操作步骤序号 if (!ProcessJudgment(7, normalRepayment.getUserId(),"个人消费贷款业务")) { throw new ServiceException(HttpStatus.ACCEPTED, "请先完成上一流程"); } } - if(normalRepayment.getLargeModule().equals("公司抵押贷款业务")){ + if(normalRepayment.getLargeModule().equals("对公贷款业务")){ //判断用户是否完成上一个流程,并更新操作步骤序号 if(!ProcessJudgment(11,normalRepayment.getUserId(),"公司抵押贷款业务")){ throw new ServiceException(HttpStatus.ACCEPTED,"请先完成上一流程"); } } + //参数校验 + int i = 0; //错误次数 + //还款金额<=贷款余额与利息和 + double sum = Double.parseDouble(normalRepayment.getLoanBalance()) + Double.parseDouble(normalRepayment.getInterest()); //贷款余额与利息和 + if (Double.parseDouble(normalRepayment.getRepaymentAmount()) > sum) { + i++; + } + + //还款日期>贷款日期 + if (normalRepayment.getRepaymentDate().compareTo(normalRepayment.getStartingTime()) <= 0) { + i++; + } + //计算错误次数 normalRepayment.setErrorNumber(i); + if(normalRepayment.getLargeModule().equals("个人贷款业务")){ + //更新成绩表 + updateScoreInfo.UpdateScoreInfo(normalRepayment.getUserId(),"个人贷款业务","个人消费贷款业务",normalRepayment.getErrorNumber(),7); + + } + + if(normalRepayment.getLargeModule().equals("对公贷款业务")){ + //更新成绩表 + updateScoreInfo.UpdateScoreInfo(normalRepayment.getUserId(),"对公贷款业务","公司抵押贷款业务",normalRepayment.getErrorNumber(),11); + } + //贷款余额减少 贷款余额=贷款余额-还款金额 最少为0 BigDecimal sub = bigDecimalUtils.sub(normalRepayment.getLoanBalance(), normalRepayment.getRepaymentAmount()); if(sub.compareTo(BigDecimal.ZERO)<0){ @@ -1259,7 +1351,7 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { //查询客户信息获取客户姓名和客户号 PerConsumerLoanCustomerInfoExample customerInfoExample=new PerConsumerLoanCustomerInfoExample(); - customerInfoExample.createCriteria().andUserIdEqualTo(userId).andNumberEqualTo(number); + customerInfoExample.createCriteria().andUserIdEqualTo(userId).andNumberEqualTo(number).andSubmitStatusEqualTo(1); List perConsumerLoanCustomerInfos = loanCustomerInfoMapper.selectByExample(customerInfoExample); if(!CollectionUtils.isEmpty(perConsumerLoanCustomerInfos)){ PerConsumerLoanCustomerInfo perConsumerLoanCustomerInfo = perConsumerLoanCustomerInfos.get(0); @@ -1271,7 +1363,7 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { //查询签订贷款合同信息 SignLoanContractExample loanContractExample = new SignLoanContractExample(); loanContractExample.createCriteria().andUserIdEqualTo(userId).andNumberEqualTo(number) - .andLargeModuleEqualTo(largeModule); + .andLargeModuleEqualTo(largeModule).andSubmitStatusEqualTo(1); List signLoanContracts = signLoanContractMapper.selectByExample(loanContractExample); if (!CollectionUtils.isEmpty(signLoanContracts)) { SignLoanContract loanContract = signLoanContracts.get(0); @@ -1345,6 +1437,9 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { //计算错误次数 postLoanTracking=computePostLoanTracking(postLoanTracking); + //更新成绩表 + updateScoreInfo.UpdateScoreInfo(postLoanTracking.getUserId(),"个人贷款业务","个人消费贷款业务",postLoanTracking.getErrorNumber(),8); + } @@ -1369,6 +1464,9 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { //计算错误次数 postLoanTracking=computePostLoanTracking(postLoanTracking); + + //更新成绩表 + updateScoreInfo.UpdateScoreInfo(postLoanTracking.getUserId(),"个人贷款业务","个人消费贷款业务",postLoanTracking.getErrorNumber(),8); } } postLoanTracking.setId(id); @@ -1416,6 +1514,10 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { //判断填写是否正确 Integer i = computeLoanClassification(number, rating); loanTracking.setErrorNumber(loanTracking.getErrorNumber()+i); + + //更新成绩表 + updateScoreInfo.UpdateScoreInfo(userId,"个人贷款业务","个人消费贷款业务",i,9); + loanTracking.setSaveStatus(1); } //否则直接更新客户评级 @@ -1536,6 +1638,8 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { //取出数据采集结果分别计算错误次数 if (dataDTO != null) { + int errorNumber=0; //用户统计错误次数 + //信用卡采集计算错误次数 //正确答案 List cardCollectionInfos = dataDTO.getCardCollectionInfos(); @@ -1557,6 +1661,7 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { int card1 = ObjectComparatorUtil.countDifferences(creditCardCollectionInfoDTO, creditCardCollectionInfoDTOS1); cardCollectionInfo.setErrorNumber(card1); + errorNumber=errorNumber+card1; } } } @@ -1584,6 +1689,7 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { int card1 = ObjectComparatorUtil.countDifferences(housingLoanInformationDTO, housingLoanInformationDTO1); housingLoanInformation.setErrorNumber(card1); + errorNumber=errorNumber+card1; } } } @@ -1610,6 +1716,7 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { int card1 = ObjectComparatorUtil.countDifferences(housingLoanInformationDTO, housingLoanInformationDTO1); housingLoanInformation.setErrorNumber(card1); + errorNumber=errorNumber+card1; } } } @@ -1638,6 +1745,7 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { int card1 = ObjectComparatorUtil.countDifferences(guaranteeSituationInfoDTO, guaranteeSituationInfoDTO1); guaranteeSituationInfo.setErrorNumber(card1); + errorNumber=errorNumber+card1; } } } @@ -1666,6 +1774,7 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { int card1 = ObjectComparatorUtil.countDifferences(taxArrearsRecordsDTO, taxArrearsRecordsDTO1); taxArrearsRecords.setErrorNumber(card1); + errorNumber=errorNumber+card1; } } } @@ -1695,6 +1804,7 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { int card1 = ObjectComparatorUtil.countDifferences(judgmentInformationDTO, judgmentInformationDTO1); judgmentInformation.setErrorNumber(card1); + errorNumber=errorNumber+card1; } } } @@ -1727,11 +1837,13 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { int card1 = ObjectComparatorUtil.countDifferences(penaltyInformationDTO, penaltyInformationDTO1); penaltyInformation.setErrorNumber(card1); + errorNumber=errorNumber+card1; } } } } + creditDataDTO.setErrorNumber(errorNumber); return creditDataDTO; }else { @@ -1812,6 +1924,7 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { try { if (dto != null) { + //贷前客户调查正确答案 PerLoanCustomerSurvey customerSurvey = dto.getCustomerSurvey(); PerLoanCustomerSurveyDTO perLoanCustomerSurveyDTO = convertUtil.entityToDTO(customerSurvey, PerLoanCustomerSurveyDTO.class); @@ -1839,6 +1952,8 @@ public class PersonalLoanServiceImpl implements PersonalLoanService { int loan = ObjectComparatorUtil.countDifferences(loanDTO, loanDTO1); //贷款申请错误次数 loanApplication1.setErrorNumber(loan); + loanApplicationDTO.setErrorNumber(customer+guarantee+loan); + return loanApplicationDTO; }else { diff --git a/src/main/java/com/sztzjy/bank/service/impl/StuGradeManagementServiceImpl.java b/src/main/java/com/sztzjy/bank/service/impl/StuGradeManagementServiceImpl.java index c77109f..fbfa831 100644 --- a/src/main/java/com/sztzjy/bank/service/impl/StuGradeManagementServiceImpl.java +++ b/src/main/java/com/sztzjy/bank/service/impl/StuGradeManagementServiceImpl.java @@ -59,70 +59,14 @@ public class StuGradeManagementServiceImpl implements StuGradeManagementService TchScoreWeight tchScoreWeight = tchScoreWeights.get(0); - List list=new ArrayList<>(); //封装对象,统一返回格式 - for (int i = 0; i < 7; i++) { - StuAcademicRecordDTO dto=new StuAcademicRecordDTO(); - dto.setUserId(userId); - dto.setBusinessName(Constant.strings[i]); - dto.setPracticeProgress(0.0); - dto.setPracticeFrequency(0); - dto.setPracticeDuration("0"); - dto.setPracticeResults(BigDecimal.ZERO); - dto=getScoreWeight(dto,tchScoreWeight); - list.add(dto); - } //对象赋值 StuGradeManagementExample gradeManagementExample=new StuGradeManagementExample(); gradeManagementExample.createCriteria().andUserIdEqualTo(userId); List stuGradeManagements = gradeManagementMapper.selectByExample(gradeManagementExample); - if(!stuGradeManagements.isEmpty()){ - for (StuAcademicRecordDTO dto:list) { - - double progress=0.0; //进度累加 - Integer practiceFrequency=0; //练习次数累加 - Integer practiceDuration=0; //练习时长累加 - BigDecimal practiceResults=BigDecimal.ZERO; //练习成绩平均值累加 - - for (int i = 0; i < stuGradeManagements.size(); i++) { - StuGradeManagement stuGradeManagement = stuGradeManagements.get(i); - if(dto.getBusinessName().equals(stuGradeManagement.getBusinessName())){ - //计算总实训进度 - progress=progress+stuGradeManagement.getPracticeProgress(); - - //计算总练习次数 - practiceFrequency=practiceFrequency+stuGradeManagement.getPracticeFrequency(); - - //计算总练习时长 - practiceDuration=practiceDuration+stuGradeManagement.getPracticeDuration(); - - - //计算总练习成绩 - practiceResults=practiceResults.add(stuGradeManagement.getPracticeResults()); - } - - //查询每个大模块下有几个小模块,总练习进度/小模块数=平均练习进度 - TotalNumberInfoExample numberInfoExample=new TotalNumberInfoExample(); - numberInfoExample.createCriteria().andLargeModuleEqualTo(dto.getBusinessName()); - List totalNumberInfos = numberInfoMapper.selectByExample(numberInfoExample); - - dto.setPracticeProgress(bigDecimalUtils.div(progress,totalNumberInfos.size(),2)); - - dto.setPracticeFrequency(practiceFrequency); - //将秒种格式化返回 - dto.setPracticeDuration(formatSeconds(practiceDuration)); - - //总练习成绩/小模块数=平均练习成绩 - dto.setPracticeResults(BigDecimal.valueOf(bigDecimalUtils.div(Double.parseDouble(practiceResults.toString()),totalNumberInfos.size(),2))); - - //赋值权重和加权后得分 - dto=getScoreWeight(dto,tchScoreWeight); - } - } - } - return list; + return this.getAcademicRecordDTO(stuGradeManagements,tchScoreWeight,userId); } @Override @@ -278,4 +222,69 @@ public class StuGradeManagementServiceImpl implements StuGradeManagementService return dto; } + + + public List getAcademicRecordDTO(List stuGradeManagements,TchScoreWeight tchScoreWeight,String userId){ + List list=new ArrayList<>(); //封装对象,统一返回格式 + for (int i = 0; i < 7; i++) { + StuAcademicRecordDTO dto=new StuAcademicRecordDTO(); + dto.setUserId(userId); + dto.setBusinessName(Constant.strings[i]); + dto.setPracticeProgress(0.0); + dto.setPracticeFrequency(0); + dto.setPracticeDuration(0); + dto.setPracticeResults(BigDecimal.ZERO); + + dto=getScoreWeight(dto,tchScoreWeight); + list.add(dto); + } + + + if(!stuGradeManagements.isEmpty()){ + for (StuAcademicRecordDTO dto:list) { + + double progress=0.0; //进度累加 + Integer practiceFrequency=0; //练习次数累加 + Integer practiceDuration=0; //练习时长累加 + BigDecimal practiceResults=BigDecimal.ZERO; //练习成绩平均值累加 + + for (int i = 0; i < stuGradeManagements.size(); i++) { + StuGradeManagement stuGradeManagement = stuGradeManagements.get(i); + + if(dto.getBusinessName().equals(stuGradeManagement.getBusinessName())){ + //计算总实训进度 + progress=progress+stuGradeManagement.getPracticeProgress(); + + //计算总练习次数 + practiceFrequency=practiceFrequency+stuGradeManagement.getPracticeFrequency(); + + //计算总练习时长 + practiceDuration=practiceDuration+stuGradeManagement.getPracticeDuration(); + + + //计算总练习成绩 + practiceResults=practiceResults.add(stuGradeManagement.getPracticeResults()); + } + + //查询每个大模块下有几个小模块,总练习进度/小模块数=平均练习进度 + TotalNumberInfoExample numberInfoExample=new TotalNumberInfoExample(); + numberInfoExample.createCriteria().andLargeModuleEqualTo(dto.getBusinessName()); + List totalNumberInfos = numberInfoMapper.selectByExample(numberInfoExample); + + dto.setPracticeProgress(bigDecimalUtils.div(progress,totalNumberInfos.size(),2)); + + dto.setPracticeFrequency(practiceFrequency); + //将秒种格式化返回 + dto.setPracticeDuration(bigDecimalUtils.div(practiceDuration,60,1)); + + //总练习成绩/小模块数=平均练习成绩 + dto.setPracticeResults(BigDecimal.valueOf(bigDecimalUtils.div(Double.parseDouble(practiceResults.toString()),totalNumberInfos.size(),2))); + + //赋值权重和加权后得分 + dto=getScoreWeight(dto,tchScoreWeight); + } + } + } + return list; + } } diff --git a/src/main/java/com/sztzjy/bank/service/impl/TchSummaryGradesServiceImpl.java b/src/main/java/com/sztzjy/bank/service/impl/TchSummaryGradesServiceImpl.java index 833a8cc..1ebfed7 100644 --- a/src/main/java/com/sztzjy/bank/service/impl/TchSummaryGradesServiceImpl.java +++ b/src/main/java/com/sztzjy/bank/service/impl/TchSummaryGradesServiceImpl.java @@ -1,17 +1,26 @@ package com.sztzjy.bank.service.impl; -import com.sztzjy.bank.entity.StuUser; -import com.sztzjy.bank.entity.StuUserExample; -import com.sztzjy.bank.entity.TchScoreWeight; -import com.sztzjy.bank.entity.TchScoreWeightExample; +import com.github.pagehelper.PageInfo; +import com.sztzjy.bank.config.Constant; +import com.sztzjy.bank.entity.*; +import com.sztzjy.bank.entity.dto.StuAcademicRecordDTO; +import com.sztzjy.bank.entity.dto.TchProjectAnalysisDTO; +import com.sztzjy.bank.mapper.StuGradeManagementMapper; import com.sztzjy.bank.mapper.StuUserMapper; import com.sztzjy.bank.mapper.TchScoreWeightMapper; +import com.sztzjy.bank.mapper.TotalNumberInfoMapper; import com.sztzjy.bank.service.StuGradeManagementService; import com.sztzjy.bank.service.TchSummaryGradesService; +import com.sztzjy.bank.util.BigDecimalUtils; +import com.sztzjy.bank.util.PageUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.math.BigDecimal; +import java.util.ArrayList; import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; /** * @author tz @@ -25,10 +34,31 @@ public class TchSummaryGradesServiceImpl implements TchSummaryGradesService { StuGradeManagementService managementService; @Autowired TchScoreWeightMapper scoreWeightMapper; + @Autowired + StuGradeManagementMapper gradeManagementMapper; + @Autowired + BigDecimalUtils bigDecimalUtils; + @Autowired + TotalNumberInfoMapper numberInfoMapper; @Override - public List getSummaryGrades(String schoolId) { + public PageInfo getSummaryGrades(String schoolId, Integer index, Integer size,String studentId,String userName,String className) { + StuUserExample stuUserExample=new StuUserExample(); - stuUserExample.createCriteria().andSchoolIdEqualTo(schoolId); + StuUserExample.Criteria criteria = stuUserExample.createCriteria(); + criteria.andSchoolIdEqualTo(schoolId).andDelStateEqualTo(0); + + if (studentId!=null && !studentId.isEmpty()){ + criteria.andStudentIdEqualTo(studentId); + } + + if (userName!=null && !userName.isEmpty()){ + criteria.andNameEqualTo(userName); + } + + if (className!=null && !className.isEmpty()){ + criteria.andClassNameEqualTo(className); + } + List stuUsers = stuUserMapper.selectByExample(stuUserExample); @@ -42,6 +72,198 @@ public class TchSummaryGradesServiceImpl implements TchSummaryGradesService { } TchScoreWeight tchScoreWeight = tchScoreWeights.get(0); - return null; + + //根据学校ID查询该校所有学生成绩信息 + StuGradeManagementExample managementExample=new StuGradeManagementExample(); + managementExample.createCriteria().andSchoolIdEqualTo(schoolId); + List stuGradeManagements = gradeManagementMapper.selectByExample(managementExample); + + // 根据 userId 分组 + Map> groupedByUserId = stuGradeManagements.stream() + .collect(Collectors.groupingBy(StuGradeManagement::getUserId)); + + for (StuUser stUser: stuUsers) { + + double practiceProgress=0.0; //练习进度 + double practiceDuration=0; //练习时长 + BigDecimal practiceResults=BigDecimal.ZERO; //练习成绩 + + // 遍历分组后的 Map + for(Map.Entry> entry : groupedByUserId.entrySet()) { + + if(stUser.getUserId().equals(entry.getKey())){ + List academicRecord = managementService.getAcademicRecordDTO(entry.getValue(),tchScoreWeight,stUser.getUserId()); + + for (int i = 0; i < academicRecord.size(); i++) { + StuAcademicRecordDTO stuAcademicRecordDTO = academicRecord.get(i); + //练习进度取平均数 + practiceProgress=practiceProgress+stuAcademicRecordDTO.getPracticeProgress(); + + //练习时长取累计数 + practiceDuration=practiceDuration+stuAcademicRecordDTO.getPracticeDuration(); + + //练习成绩取合计数 + practiceResults=practiceResults.add(stuAcademicRecordDTO.getScore()); + } + } + } + + + //赋值 + stUser.setPracticeProgress(bigDecimalUtils.div(practiceProgress,7,2)); + stUser.setPracticeDuration(practiceDuration); + stUser.setPracticeResults(practiceResults); + } + + return PageUtil.pageHelper(stuUsers,index,size); } + + @Override + public List getProjectAnalysis(String schoolId) { + List list=new ArrayList<>(); //封装对象,统一返回格式 + for (int i = 0; i < 7; i++) { + TchProjectAnalysisDTO dto=new TchProjectAnalysisDTO(); + dto.setBusinessName(Constant.strings[i]); + dto.setPracticeProgress(0.0); + dto.setPracticeDuration(0); + dto.setPracticeResults(BigDecimal.ZERO); + dto.setAverageErrorsNumber(0); + + list.add(dto); + } + + +// TchScoreWeightExample weightExample=new TchScoreWeightExample(); +// weightExample.createCriteria().andSchoolIdEqualTo(schoolId); +// List tchScoreWeights = scoreWeightMapper.selectByExample(weightExample); +// if(tchScoreWeights.isEmpty()){ +// TchScoreWeight tchScoreWeight=new TchScoreWeight(schoolId); +// tchScoreWeights.add(tchScoreWeight); +// scoreWeightMapper.insert(tchScoreWeight); +// } +// +// TchScoreWeight tchScoreWeight = tchScoreWeights.get(0); + + //根据学校ID查询该校所有学生成绩信息 + StuGradeManagementExample managementExample=new StuGradeManagementExample(); + managementExample.createCriteria().andSchoolIdEqualTo(schoolId); + List stuGradeManagements = gradeManagementMapper.selectByExample(managementExample); + + + // TODO: 2025/3/18 1、先根据userId分组,统计每个学生每个小模块成绩信息 + // 根据 userId 分组 + Map> groupedByUserId = stuGradeManagements.stream() + .collect(Collectors.groupingBy(StuGradeManagement::getUserId)); + + List dto=new ArrayList<>(); + + + // 遍历分组后的 Map + for(Map.Entry> entry : groupedByUserId.entrySet()) { + + + for (String businessName:Constant.strings) { + double practiceProgress=0.0; //练习进度 + double practiceDuration=0; //练习时长 + BigDecimal practiceResults=BigDecimal.ZERO; //练习成绩 + double errorsNumber=0.0; //错误次数 + + StuAcademicRecordDTO stuAcademicRecordDTO=new StuAcademicRecordDTO(); + + for (int i = 0; i < entry.getValue().size(); i++) { + StuGradeManagement stuGradeManagement = entry.getValue().get(i); + + if(businessName.equals(stuGradeManagement.getBusinessName())){ + //计算总实训进度 + practiceProgress=practiceProgress+stuGradeManagement.getPracticeProgress(); + + //计算总练习时长 + practiceDuration=practiceDuration+stuGradeManagement.getPracticeDuration(); + + + //计算总练习成绩 + practiceResults=practiceResults.add(stuGradeManagement.getPracticeResults()); + + //总错误次数=错误次数/练习次数 再累加 + Double div = bigDecimalUtils.div(stuGradeManagement.getErrorCount(), stuGradeManagement.getPracticeFrequency()); + errorsNumber=errorsNumber+div; + + } + + } + + //查询每个大模块下有几个小模块,总练习进度/小模块数=平均练习进度 + TotalNumberInfoExample numberInfoExample=new TotalNumberInfoExample(); + numberInfoExample.createCriteria().andLargeModuleEqualTo(businessName); + List totalNumberInfos = numberInfoMapper.selectByExample(numberInfoExample); + + stuAcademicRecordDTO.setPracticeProgress(bigDecimalUtils.div(practiceProgress,totalNumberInfos.size(),2)); + + //将秒种格式化返回 + stuAcademicRecordDTO.setPracticeDuration(bigDecimalUtils.div(practiceDuration,60,1)); + + //总练习成绩/小模块数=平均练习成绩 + stuAcademicRecordDTO.setPracticeResults(BigDecimal.valueOf(bigDecimalUtils.div(Double.parseDouble(practiceResults.toString()),totalNumberInfos.size(),2))); + + //总错误次数 + stuAcademicRecordDTO.setErrorsNumber(errorsNumber); + stuAcademicRecordDTO.setBusinessName(businessName); + + dto.add(stuAcademicRecordDTO); + } + } + + + + + + // TODO: 2025/3/18 2、根据大模块分组,统计所有学生每个大模块下的成绩信息 + // 根据 businessName 分组 + Map> groupedByBusinessName = dto.stream() + .collect(Collectors.groupingBy(StuAcademicRecordDTO::getBusinessName)); + + + for (TchProjectAnalysisDTO tchProjectAnalysisDTO:list){ + + double practiceProgress=0.0; //练习进度 + double practiceDuration=0; //练习时长 + BigDecimal practiceResults=BigDecimal.ZERO; //练习成绩 + double errorsNumber=0.0; //错误次数 + + + // 遍历分组后的 Map + for(Map.Entry> entry : groupedByBusinessName.entrySet()){ + + if(tchProjectAnalysisDTO.getBusinessName().equals(entry.getKey())){ + + for (int i = 0; i < entry.getValue().size(); i++) { + StuAcademicRecordDTO stuAcademicRecordDTO = entry.getValue().get(i); + //练习进度累加 + practiceProgress=practiceProgress+stuAcademicRecordDTO.getPracticeProgress(); + + //练习时长取累计数 + practiceDuration=practiceDuration+stuAcademicRecordDTO.getPracticeDuration(); + + //练习成绩取合计数 + practiceResults=practiceResults.add(stuAcademicRecordDTO.getPracticeResults()); + + //错误次数累加 + errorsNumber=errorsNumber+stuAcademicRecordDTO.getErrorsNumber(); + } + } + + //分别计算平均数,再赋值 + tchProjectAnalysisDTO.setPracticeProgress(bigDecimalUtils.div(practiceProgress,entry.getValue().size())); + tchProjectAnalysisDTO.setPracticeDuration(bigDecimalUtils.div(practiceDuration,entry.getValue().size())); + tchProjectAnalysisDTO.setPracticeResults(BigDecimal.valueOf(bigDecimalUtils.div(Double.parseDouble(practiceResults.toString()),entry.getValue().size()))); + tchProjectAnalysisDTO.setAverageErrorsNumber(bigDecimalUtils.div(errorsNumber,entry.getValue().size())); + + } + + } + + return list; + } + + } diff --git a/src/main/resources/mappers/LoanApplicationMapper.xml b/src/main/resources/mappers/LoanApplicationMapper.xml index c401f19..f5f1c4b 100644 --- a/src/main/resources/mappers/LoanApplicationMapper.xml +++ b/src/main/resources/mappers/LoanApplicationMapper.xml @@ -28,6 +28,7 @@ + @@ -92,7 +93,8 @@ interest_calculation_method, benchmark_interest_rate, interest_rate_fluctuation_method, interest_floating_ratio, strike_rate, overdue_interest_rate, repayment_method, main_guarantee_method, guarantee_amount, credit_amount, source_of_repayment_funds, application_for_loan_purpose, - user_id, create_time, update_time, save_status, submit_status, error_number, number + user_id, create_time, update_time, save_status, submit_status, error_number, number, + large_module @@ -396,6 +404,9 @@ number = #{record.number,jdbcType=INTEGER}, + + large_module = #{record.largeModule,jdbcType=VARCHAR}, + @@ -428,7 +439,8 @@ save_status = #{record.saveStatus,jdbcType=INTEGER}, submit_status = #{record.submitStatus,jdbcType=INTEGER}, error_number = #{record.errorNumber,jdbcType=INTEGER}, - number = #{record.number,jdbcType=INTEGER} + number = #{record.number,jdbcType=INTEGER}, + large_module = #{record.largeModule,jdbcType=VARCHAR} @@ -511,6 +523,9 @@ number = #{number,jdbcType=INTEGER}, + + large_module = #{largeModule,jdbcType=VARCHAR}, + where id = #{id,jdbcType=VARCHAR} @@ -540,7 +555,8 @@ save_status = #{saveStatus,jdbcType=INTEGER}, submit_status = #{submitStatus,jdbcType=INTEGER}, error_number = #{errorNumber,jdbcType=INTEGER}, - number = #{number,jdbcType=INTEGER} + number = #{number,jdbcType=INTEGER}, + large_module = #{largeModule,jdbcType=VARCHAR} where id = #{id,jdbcType=VARCHAR} \ No newline at end of file diff --git a/src/main/resources/mappers/PaymentAcceptanceMapper.xml b/src/main/resources/mappers/PaymentAcceptanceMapper.xml new file mode 100644 index 0000000..3503f87 --- /dev/null +++ b/src/main/resources/mappers/PaymentAcceptanceMapper.xml @@ -0,0 +1,434 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + and ${criterion.condition} + + + and ${criterion.condition} #{criterion.value} + + + and ${criterion.condition} #{criterion.value} and #{criterion.secondValue} + + + and ${criterion.condition} + + #{listItem} + + + + + + + + + + + + + + + + + + and ${criterion.condition} + + + and ${criterion.condition} #{criterion.value} + + + and ${criterion.condition} #{criterion.value} and #{criterion.secondValue} + + + and ${criterion.condition} + + #{listItem} + + + + + + + + + + + id, receiving_bank_code, charging_method, write_code, telegram_fee_type, acceptance_currency, + acceptance_amount, beneficiary, ben_settlement_account, payer_settlement_account, + payer_name, deduction_account, create_time, update_time, save_status, submit_status, + user_id, error_number, number + + + + + delete from payment_acceptance + where id = #{id,jdbcType=VARCHAR} + + + delete from payment_acceptance + + + + + + insert into payment_acceptance (id, receiving_bank_code, charging_method, + write_code, telegram_fee_type, acceptance_currency, + acceptance_amount, beneficiary, ben_settlement_account, + payer_settlement_account, payer_name, deduction_account, + create_time, update_time, save_status, + submit_status, user_id, error_number, + number) + values (#{id,jdbcType=VARCHAR}, #{receivingBankCode,jdbcType=VARCHAR}, #{chargingMethod,jdbcType=VARCHAR}, + #{writeCode,jdbcType=VARCHAR}, #{telegramFeeType,jdbcType=VARCHAR}, #{acceptanceCurrency,jdbcType=VARCHAR}, + #{acceptanceAmount,jdbcType=VARCHAR}, #{beneficiary,jdbcType=VARCHAR}, #{benSettlementAccount,jdbcType=VARCHAR}, + #{payerSettlementAccount,jdbcType=VARCHAR}, #{payerName,jdbcType=VARCHAR}, #{deductionAccount,jdbcType=VARCHAR}, + #{createTime,jdbcType=TIMESTAMP}, #{updateTime,jdbcType=TIMESTAMP}, #{saveStatus,jdbcType=INTEGER}, + #{submitStatus,jdbcType=INTEGER}, #{userId,jdbcType=VARCHAR}, #{errorNumber,jdbcType=INTEGER}, + #{number,jdbcType=INTEGER}) + + + insert into payment_acceptance + + + id, + + + receiving_bank_code, + + + charging_method, + + + write_code, + + + telegram_fee_type, + + + acceptance_currency, + + + acceptance_amount, + + + beneficiary, + + + ben_settlement_account, + + + payer_settlement_account, + + + payer_name, + + + deduction_account, + + + create_time, + + + update_time, + + + save_status, + + + submit_status, + + + user_id, + + + error_number, + + + number, + + + + + #{id,jdbcType=VARCHAR}, + + + #{receivingBankCode,jdbcType=VARCHAR}, + + + #{chargingMethod,jdbcType=VARCHAR}, + + + #{writeCode,jdbcType=VARCHAR}, + + + #{telegramFeeType,jdbcType=VARCHAR}, + + + #{acceptanceCurrency,jdbcType=VARCHAR}, + + + #{acceptanceAmount,jdbcType=VARCHAR}, + + + #{beneficiary,jdbcType=VARCHAR}, + + + #{benSettlementAccount,jdbcType=VARCHAR}, + + + #{payerSettlementAccount,jdbcType=VARCHAR}, + + + #{payerName,jdbcType=VARCHAR}, + + + #{deductionAccount,jdbcType=VARCHAR}, + + + #{createTime,jdbcType=TIMESTAMP}, + + + #{updateTime,jdbcType=TIMESTAMP}, + + + #{saveStatus,jdbcType=INTEGER}, + + + #{submitStatus,jdbcType=INTEGER}, + + + #{userId,jdbcType=VARCHAR}, + + + #{errorNumber,jdbcType=INTEGER}, + + + #{number,jdbcType=INTEGER}, + + + + + + update payment_acceptance + + + id = #{record.id,jdbcType=VARCHAR}, + + + receiving_bank_code = #{record.receivingBankCode,jdbcType=VARCHAR}, + + + charging_method = #{record.chargingMethod,jdbcType=VARCHAR}, + + + write_code = #{record.writeCode,jdbcType=VARCHAR}, + + + telegram_fee_type = #{record.telegramFeeType,jdbcType=VARCHAR}, + + + acceptance_currency = #{record.acceptanceCurrency,jdbcType=VARCHAR}, + + + acceptance_amount = #{record.acceptanceAmount,jdbcType=VARCHAR}, + + + beneficiary = #{record.beneficiary,jdbcType=VARCHAR}, + + + ben_settlement_account = #{record.benSettlementAccount,jdbcType=VARCHAR}, + + + payer_settlement_account = #{record.payerSettlementAccount,jdbcType=VARCHAR}, + + + payer_name = #{record.payerName,jdbcType=VARCHAR}, + + + deduction_account = #{record.deductionAccount,jdbcType=VARCHAR}, + + + create_time = #{record.createTime,jdbcType=TIMESTAMP}, + + + update_time = #{record.updateTime,jdbcType=TIMESTAMP}, + + + save_status = #{record.saveStatus,jdbcType=INTEGER}, + + + submit_status = #{record.submitStatus,jdbcType=INTEGER}, + + + user_id = #{record.userId,jdbcType=VARCHAR}, + + + error_number = #{record.errorNumber,jdbcType=INTEGER}, + + + number = #{record.number,jdbcType=INTEGER}, + + + + + + + + update payment_acceptance + set id = #{record.id,jdbcType=VARCHAR}, + receiving_bank_code = #{record.receivingBankCode,jdbcType=VARCHAR}, + charging_method = #{record.chargingMethod,jdbcType=VARCHAR}, + write_code = #{record.writeCode,jdbcType=VARCHAR}, + telegram_fee_type = #{record.telegramFeeType,jdbcType=VARCHAR}, + acceptance_currency = #{record.acceptanceCurrency,jdbcType=VARCHAR}, + acceptance_amount = #{record.acceptanceAmount,jdbcType=VARCHAR}, + beneficiary = #{record.beneficiary,jdbcType=VARCHAR}, + ben_settlement_account = #{record.benSettlementAccount,jdbcType=VARCHAR}, + payer_settlement_account = #{record.payerSettlementAccount,jdbcType=VARCHAR}, + payer_name = #{record.payerName,jdbcType=VARCHAR}, + deduction_account = #{record.deductionAccount,jdbcType=VARCHAR}, + create_time = #{record.createTime,jdbcType=TIMESTAMP}, + update_time = #{record.updateTime,jdbcType=TIMESTAMP}, + save_status = #{record.saveStatus,jdbcType=INTEGER}, + submit_status = #{record.submitStatus,jdbcType=INTEGER}, + user_id = #{record.userId,jdbcType=VARCHAR}, + error_number = #{record.errorNumber,jdbcType=INTEGER}, + number = #{record.number,jdbcType=INTEGER} + + + + + + update payment_acceptance + + + receiving_bank_code = #{receivingBankCode,jdbcType=VARCHAR}, + + + charging_method = #{chargingMethod,jdbcType=VARCHAR}, + + + write_code = #{writeCode,jdbcType=VARCHAR}, + + + telegram_fee_type = #{telegramFeeType,jdbcType=VARCHAR}, + + + acceptance_currency = #{acceptanceCurrency,jdbcType=VARCHAR}, + + + acceptance_amount = #{acceptanceAmount,jdbcType=VARCHAR}, + + + beneficiary = #{beneficiary,jdbcType=VARCHAR}, + + + ben_settlement_account = #{benSettlementAccount,jdbcType=VARCHAR}, + + + payer_settlement_account = #{payerSettlementAccount,jdbcType=VARCHAR}, + + + payer_name = #{payerName,jdbcType=VARCHAR}, + + + deduction_account = #{deductionAccount,jdbcType=VARCHAR}, + + + create_time = #{createTime,jdbcType=TIMESTAMP}, + + + update_time = #{updateTime,jdbcType=TIMESTAMP}, + + + save_status = #{saveStatus,jdbcType=INTEGER}, + + + submit_status = #{submitStatus,jdbcType=INTEGER}, + + + user_id = #{userId,jdbcType=VARCHAR}, + + + error_number = #{errorNumber,jdbcType=INTEGER}, + + + number = #{number,jdbcType=INTEGER}, + + + where id = #{id,jdbcType=VARCHAR} + + + update payment_acceptance + set receiving_bank_code = #{receivingBankCode,jdbcType=VARCHAR}, + charging_method = #{chargingMethod,jdbcType=VARCHAR}, + write_code = #{writeCode,jdbcType=VARCHAR}, + telegram_fee_type = #{telegramFeeType,jdbcType=VARCHAR}, + acceptance_currency = #{acceptanceCurrency,jdbcType=VARCHAR}, + acceptance_amount = #{acceptanceAmount,jdbcType=VARCHAR}, + beneficiary = #{beneficiary,jdbcType=VARCHAR}, + ben_settlement_account = #{benSettlementAccount,jdbcType=VARCHAR}, + payer_settlement_account = #{payerSettlementAccount,jdbcType=VARCHAR}, + payer_name = #{payerName,jdbcType=VARCHAR}, + deduction_account = #{deductionAccount,jdbcType=VARCHAR}, + create_time = #{createTime,jdbcType=TIMESTAMP}, + update_time = #{updateTime,jdbcType=TIMESTAMP}, + save_status = #{saveStatus,jdbcType=INTEGER}, + submit_status = #{submitStatus,jdbcType=INTEGER}, + user_id = #{userId,jdbcType=VARCHAR}, + error_number = #{errorNumber,jdbcType=INTEGER}, + number = #{number,jdbcType=INTEGER} + where id = #{id,jdbcType=VARCHAR} + + \ No newline at end of file diff --git a/src/main/resources/mappers/StuGradeManagementMapper.xml b/src/main/resources/mappers/StuGradeManagementMapper.xml index 7b28436..e1d34fc 100644 --- a/src/main/resources/mappers/StuGradeManagementMapper.xml +++ b/src/main/resources/mappers/StuGradeManagementMapper.xml @@ -13,6 +13,7 @@ + @@ -74,7 +75,7 @@ id, user_id, business_name, module, practice_progress, practice_frequency, practice_duration, - practice_results, error_count, create_time, update_time + practice_results, error_count, create_time, update_time, school_id @@ -231,6 +240,9 @@ update_time = #{record.updateTime,jdbcType=TIMESTAMP}, + + school_id = #{record.schoolId,jdbcType=VARCHAR}, + @@ -248,7 +260,8 @@ practice_results = #{record.practiceResults,jdbcType=DECIMAL}, error_count = #{record.errorCount,jdbcType=INTEGER}, create_time = #{record.createTime,jdbcType=TIMESTAMP}, - update_time = #{record.updateTime,jdbcType=TIMESTAMP} + update_time = #{record.updateTime,jdbcType=TIMESTAMP}, + school_id = #{record.schoolId,jdbcType=VARCHAR} @@ -286,6 +299,9 @@ update_time = #{updateTime,jdbcType=TIMESTAMP}, + + school_id = #{schoolId,jdbcType=VARCHAR}, + where id = #{id,jdbcType=VARCHAR} @@ -300,7 +316,8 @@ practice_results = #{practiceResults,jdbcType=DECIMAL}, error_count = #{errorCount,jdbcType=INTEGER}, create_time = #{createTime,jdbcType=TIMESTAMP}, - update_time = #{updateTime,jdbcType=TIMESTAMP} + update_time = #{updateTime,jdbcType=TIMESTAMP}, + school_id = #{schoolId,jdbcType=VARCHAR} where id = #{id,jdbcType=VARCHAR} \ No newline at end of file diff --git a/src/main/resources/mappers/StuUserMapper.xml b/src/main/resources/mappers/StuUserMapper.xml index 0eb7367..f5bdbd5 100644 --- a/src/main/resources/mappers/StuUserMapper.xml +++ b/src/main/resources/mappers/StuUserMapper.xml @@ -18,7 +18,7 @@ - + @@ -128,7 +128,7 @@ #{className,jdbcType=VARCHAR}, #{major,jdbcType=VARCHAR}, #{schoolId,jdbcType=VARCHAR}, #{schoolName,jdbcType=VARCHAR}, #{totalRank,jdbcType=INTEGER}, #{totalScore,jdbcType=DECIMAL}, #{createTime,jdbcType=TIMESTAMP}, #{delState,jdbcType=INTEGER}, #{updateTime,jdbcType=TIMESTAMP}, - #{practiceProgress,jdbcType=DOUBLE}, #{practiceDuration,jdbcType=INTEGER}, #{practiceResults,jdbcType=DECIMAL}, + #{practiceProgress,jdbcType=DOUBLE}, #{practiceDuration,jdbcType=DOUBLE}, #{practiceResults,jdbcType=DECIMAL}, #{ranking,jdbcType=INTEGER}) @@ -242,7 +242,7 @@ #{practiceProgress,jdbcType=DOUBLE}, - #{practiceDuration,jdbcType=INTEGER}, + #{practiceDuration,jdbcType=DOUBLE}, #{practiceResults,jdbcType=DECIMAL}, @@ -310,7 +310,7 @@ practice_progress = #{record.practiceProgress,jdbcType=DOUBLE}, - practice_duration = #{record.practiceDuration,jdbcType=INTEGER}, + practice_duration = #{record.practiceDuration,jdbcType=DOUBLE}, practice_results = #{record.practiceResults,jdbcType=DECIMAL}, @@ -341,7 +341,7 @@ del_state = #{record.delState,jdbcType=INTEGER}, update_time = #{record.updateTime,jdbcType=TIMESTAMP}, practice_progress = #{record.practiceProgress,jdbcType=DOUBLE}, - practice_duration = #{record.practiceDuration,jdbcType=INTEGER}, + practice_duration = #{record.practiceDuration,jdbcType=DOUBLE}, practice_results = #{record.practiceResults,jdbcType=DECIMAL}, ranking = #{record.ranking,jdbcType=INTEGER} @@ -397,7 +397,7 @@ practice_progress = #{practiceProgress,jdbcType=DOUBLE}, - practice_duration = #{practiceDuration,jdbcType=INTEGER}, + practice_duration = #{practiceDuration,jdbcType=DOUBLE}, practice_results = #{practiceResults,jdbcType=DECIMAL}, @@ -425,7 +425,7 @@ del_state = #{delState,jdbcType=INTEGER}, update_time = #{updateTime,jdbcType=TIMESTAMP}, practice_progress = #{practiceProgress,jdbcType=DOUBLE}, - practice_duration = #{practiceDuration,jdbcType=INTEGER}, + practice_duration = #{practiceDuration,jdbcType=DOUBLE}, practice_results = #{practiceResults,jdbcType=DECIMAL}, ranking = #{ranking,jdbcType=INTEGER} where user_id = #{userId,jdbcType=VARCHAR}