From e9d38039d888c36b047e80d78cd078eaa786164b Mon Sep 17 00:00:00 2001 From: xiaoCJ <406612557@qq.com> Date: Tue, 12 Nov 2024 17:37:38 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=AE=9E=E9=AA=8C=E5=AE=9E?= =?UTF-8?q?=E8=AE=AD=E6=8F=90=E4=BA=A4=E6=8E=A5=E5=8F=A3=E7=AE=97=E5=88=86?= =?UTF-8?q?=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/CaseServiceImpl.java | 142 +++++++++--------- 1 file changed, 71 insertions(+), 71 deletions(-) diff --git a/src/main/java/com/sztzjy/money_management/service/impl/CaseServiceImpl.java b/src/main/java/com/sztzjy/money_management/service/impl/CaseServiceImpl.java index 8ee92e8..97686b4 100644 --- a/src/main/java/com/sztzjy/money_management/service/impl/CaseServiceImpl.java +++ b/src/main/java/com/sztzjy/money_management/service/impl/CaseServiceImpl.java @@ -1248,18 +1248,22 @@ public class CaseServiceImpl implements CaseService { CaseRiskIndexExample caseRiskIndexExample = new CaseRiskIndexExample(); caseRiskIndexExample.createCriteria().andIsAnswerEqualTo("学生答案").andUseridEqualTo(stuRiskIndex.getUserid()).andCaseidEqualTo(stuRiskIndex.getCaseid()); List caseRiskIndices = caseRiskIndexMapper.selectByExample(caseRiskIndexExample); + + + //有数据,只删除原数据 修改学生答案 不算分 if (!caseRiskIndices.isEmpty()) { for (CaseRiskIndex caseRiskIndex : caseRiskIndices) { caseRiskIndexMapper.deleteByPrimaryKey(caseRiskIndex.getCaseRiskIndexId()); } + } else { //没数据 算分 + //比较正确答案 + wrongCount = getRiskIndexWrongCount(wrongCount, stuRiskIndex); + setCount(stuTrainingWithBLOBs, wrongCount); } - + //新增对象 stuRiskIndex.setCaseRiskIndexId(IdUtil.randomUUID()); stuRiskIndex.setUpdateDate(new Date()); caseRiskIndexMapper.insert(stuRiskIndex); - - //比较正确答案 - wrongCount = getRiskIndexWrongCount(wrongCount, stuRiskIndex); } if (type.equals("财务分析-资产负债表")) { @@ -1272,13 +1276,13 @@ public class CaseServiceImpl implements CaseService { for (CaseFinanceLiability caseFinanceLiability : caseFinanceLiabilities) { caseFinanceLiabilityMapper.deleteByPrimaryKey(caseFinanceLiability.getCaseFinanceLiabilityId()); } + } else { //没数据 算分 + //比较正确答案 + wrongCount = getCaseFinanceLiabilityWrongCount(wrongCount, stuData); + setCount(stuTrainingWithBLOBs, wrongCount); } - stuData.setCaseFinanceLiabilityId(IdUtil.randomUUID()); caseFinanceLiabilityMapper.insert(stuData); - - //比较正确答案 - wrongCount = getCaseFinanceLiabilityWrongCount(wrongCount, stuData); } if (type.equals("财务分析-收支储蓄表")) { @@ -1291,13 +1295,13 @@ public class CaseServiceImpl implements CaseService { for (CaseIncomeAndExpenses caseIncomeAndExpenses : caseFinanceLiabilities) { caseIncomeAndExpensesMapper.deleteByPrimaryKey(caseIncomeAndExpenses.getCaseIncomeAndExpensesId()); } + } else { //没数据 算分 + wrongCount = getCaseIncomeAndExpensesWrongCount(wrongCount, stuData); + //比较正确答案 + setCount(stuTrainingWithBLOBs, wrongCount); } - stuData.setCaseIncomeAndExpensesId(IdUtil.randomUUID()); caseIncomeAndExpensesMapper.insert(stuData); - - //比较正确答案 - wrongCount = getCaseIncomeAndExpensesWrongCount(wrongCount, stuData); } if (type.equals("财务分析-现金流量表")) { @@ -1310,13 +1314,14 @@ public class CaseServiceImpl implements CaseService { for (CaseCashFlow caseCashFlow : caseCashFlows) { caseCashFlowMapper.deleteByPrimaryKey(caseCashFlow.getCaseCashFlowId()); } - } + } else { //没数据 算分 + //比较正确答案 + wrongCount = getCaseCashFlowWrongCount(wrongCount, stuData); + setCount(stuTrainingWithBLOBs, wrongCount); + } stuData.setCaseCashFlowId(IdUtil.randomUUID()); caseCashFlowMapper.insert(stuData); - - //比较正确答案 - wrongCount = getCaseCashFlowWrongCount(wrongCount, stuData); } if (type.equals("财务分析-财务比例分析")) { @@ -1346,13 +1351,14 @@ public class CaseServiceImpl implements CaseService { for (CaseCashPlan caseCashPlan : caseCashFlows) { caseCashPlanMapper.deleteByPrimaryKey(caseCashPlan.getCaseCashPlanId()); } + } else { //没数据 算分 + //比较正确答案 + wrongCount = getCaseCashPlanWrongCount(wrongCount, stuData); + setCount(stuTrainingWithBLOBs, wrongCount); } stuData.setCaseCashPlanId(IdUtil.randomUUID()); caseCashPlanMapper.insert(stuData); - - //比较正确答案 - wrongCount = getCaseCashPlanWrongCount(wrongCount, stuData); } if (type.equals("生涯规划-教育规划")) { @@ -1365,13 +1371,14 @@ public class CaseServiceImpl implements CaseService { for (CaseLifeEducationPlan caseLifeEducationPlan : caseLifeEducationPlans) { caseLifeEducationPlanMapper.deleteByPrimaryKey(caseLifeEducationPlan.getCaseLifeEducationPlanId()); } - } + } else { //没数据 算分 + //比较正确答案 + wrongCount = getCaseLifeEducationPlanWrongCount(wrongCount, stuData); + setCount(stuTrainingWithBLOBs, wrongCount); + } stuData.setCaseLifeEducationPlanId(IdUtil.randomUUID()); caseLifeEducationPlanMapper.insert(stuData); - - //比较正确答案 - wrongCount = getCaseLifeEducationPlanWrongCount(wrongCount, stuData); } if (type.equals("生涯规划-消费规划")) { @@ -1384,13 +1391,14 @@ public class CaseServiceImpl implements CaseService { for (CaseConsumptionPlan caseConsumptionPlan : caseConsumptionPlans) { caseConsumptionPlanMapper.deleteByPrimaryKey(caseConsumptionPlan.getCaseConsumptionPlanId()); } - } + } else { //没数据 算分 + //比较正确答案 + wrongCount = getCaseConsumptionPlanWrongCount(wrongCount, stuData); + setCount(stuTrainingWithBLOBs, wrongCount); + } stuData.setCaseConsumptionPlanId(IdUtil.randomUUID()); caseConsumptionPlanMapper.insert(stuData); - - //比较正确答案 - wrongCount = getCaseConsumptionPlanWrongCount(wrongCount, stuData); } if (type.equals("生涯规划-创业规划")) { @@ -1403,13 +1411,13 @@ public class CaseServiceImpl implements CaseService { for (CaseStartAnUndertakingPlan caseStartAnUndertakingPlan : caseLifeEducationPlans) { caseStartAnUndertakingPlanMapper.deleteByPrimaryKey(caseStartAnUndertakingPlan.getCaseStartAnUndertakingPlanId()); } + } else { //没数据 算分 + //比较正确答案 + wrongCount = getCaseStartAnUndertakingPlanWrongCount(wrongCount, stuData); + setCount(stuTrainingWithBLOBs, wrongCount); } - stuData.setCaseStartAnUndertakingPlanId(IdUtil.randomUUID()); caseStartAnUndertakingPlanMapper.insert(stuData); - - //比较正确答案 - wrongCount = getCaseStartAnUndertakingPlanWrongCount(wrongCount, stuData); } if (type.equals("生涯规划-退休规划")) { @@ -1422,13 +1430,13 @@ public class CaseServiceImpl implements CaseService { for (CaseRetirementPlan caseRetirementPlan : caseRetirementPlans) { caseRetirementPlanMapper.deleteByPrimaryKey(caseRetirementPlan.getCaseRetirementPlanId()); } + } else { //没数据 算分 + //比较正确答案 + wrongCount = getCaseRetirementPlanWrongCount(wrongCount, stuData); + setCount(stuTrainingWithBLOBs, wrongCount); } - stuData.setCaseRetirementPlanId(IdUtil.randomUUID()); caseRetirementPlanMapper.insert(stuData); - - //比较正确答案 - wrongCount = getCaseRetirementPlanWrongCount(wrongCount, stuData); } if (type.equals("生涯规划-保险规划")) { @@ -1441,33 +1449,16 @@ public class CaseServiceImpl implements CaseService { for (CaseInsurancePlan caseInsurancePlan : caseRetirementPlans) { caseInsurancePlanMapper.deleteByPrimaryKey(caseInsurancePlan.getCaseInsurancePlanId()); } - } + } else { //没数据 算分 + //比较正确答案 + wrongCount = getCaseInsurancePlanWrongCount(wrongCount, stuData); + setCount(stuTrainingWithBLOBs, wrongCount); + } stuData.setCaseInsurancePlanId(IdUtil.randomUUID()); caseInsurancePlanMapper.insert(stuData); - - //比较正确答案 - wrongCount = getCaseInsurancePlanWrongCount(wrongCount, stuData); } -// if (type.equals("投资规划")) { -// CaseInvestmentPlan stuInvestmentPlan = gson.fromJson(json, CaseInvestmentPlan.class); -// CaseInvestmentPlanExample caseInvestmentPlanExample = new CaseInvestmentPlanExample(); -// caseInvestmentPlanExample.createCriteria().andIsAnswerEqualTo("学生答案").andUserIdEqualTo(stuInvestmentPlan.getUserId()).andCaseIdEqualTo(stuInvestmentPlan.getCaseId()); -// List caseInvestmentPlans = investmentPlanMapper.selectByExampleWithBLOBs(caseInvestmentPlanExample); -// if (!caseInvestmentPlans.isEmpty()) { -// for (CaseInvestmentPlan caseInvestmentPlan : caseInvestmentPlans) { -// investmentPlanMapper.deleteByPrimaryKey(caseInvestmentPlan.getCaseInvestmentPlanId()); -// } -// } -// stuInvestmentPlan.setCaseInvestmentPlanId(IdUtil.randomUUID()); -// investmentPlanMapper.insert(stuInvestmentPlan); -// -// //比较正确答案 -// wrongCount = getCaseInvestmentPlan(wrongCount, stuInvestmentPlan); -// } - - //先查询一次 if (type.equals("投资规划")) { CaseInvestmentPlanDto caseInvestmentPlanDto = gson.fromJson(json, CaseInvestmentPlanDto.class); @@ -1498,6 +1489,11 @@ public class CaseServiceImpl implements CaseService { investmentPlanRealGoldProductInfoMapper.deleteByPrimaryKey(productSelectId); } investmentPlanMapper.deleteByPrimaryKey(caseInvestmentPlan.getCaseInvestmentPlanId()); + } else { //没数据 算分 + + //比较正确答案 + wrongCount = getCaseInvestmentPlan(wrongCount, investmentPlan); + setCount(stuTrainingWithBLOBs, wrongCount); } //新增主表 @@ -1596,8 +1592,6 @@ public class CaseServiceImpl implements CaseService { } } } - //比较正确答案 - wrongCount = getCaseInvestmentPlan(wrongCount, investmentPlan); } if (type.equals("税务筹划")) { @@ -1610,13 +1604,13 @@ public class CaseServiceImpl implements CaseService { for (CaseTaxPlan caseTaxPlan : caseTaxPlans) { caseTaxPlanMapper.deleteByPrimaryKey(caseTaxPlan.getCaseTaxPlanId()); } + } else { //没数据 算分 + //比较正确答案 + wrongCount = getCaseTaxPlanWrongCount(wrongCount, stuData); + setCount(stuTrainingWithBLOBs, wrongCount); } - stuData.setCaseTaxPlanId(IdUtil.randomUUID()); caseTaxPlanMapper.insert(stuData); - - //比较正确答案 - wrongCount = getCaseTaxPlanWrongCount(wrongCount, stuData); } if (type.equals("财产分配")) { @@ -1652,7 +1646,6 @@ public class CaseServiceImpl implements CaseService { if (type.equals("财产传承")) { CaseHeritageWithBLOBs stuData = gson.fromJson(json, CaseHeritageWithBLOBs.class); - stuData.setCaseHeritageId(IdUtil.randomUUID()); CaseHeritageExample caseHeritageExample = new CaseHeritageExample(); caseHeritageExample.createCriteria().andIsAnswerEqualTo("学生答案").andUserIdEqualTo(stuData.getUserId()).andCaseidEqualTo(stuData.getCaseid()); @@ -1661,11 +1654,13 @@ public class CaseServiceImpl implements CaseService { for (CaseHeritageWithBLOBs distributionOfPropertyWithBLOBs : caseHeritageWithBLOBs) { caseHeritageMapper.deleteByPrimaryKey(distributionOfPropertyWithBLOBs.getCaseHeritageId()); } + } else { //没数据 算分 + //比较正确答案 + wrongCount = getCaseHeritageWrongCount(wrongCount, stuData); + setCount(stuTrainingWithBLOBs, wrongCount); } + stuData.setCaseHeritageId(IdUtil.randomUUID()); caseHeritageMapper.insert(stuData); - - //比较正确答案 - wrongCount = getCaseHeritageWrongCount(wrongCount, stuData); } } } catch ( @@ -1673,13 +1668,17 @@ public class CaseServiceImpl implements CaseService { e.printStackTrace(); throw new RuntimeException("实训提交失败"); } + } - //第一次添加时设置值 重新实训不提交 + private void setCount(StuTrainingWithBLOBs stuTrainingWithBLOBs, int wrongCount) { if (stuTrainingWithBLOBs.getExpTrainingCompleteStatus() == null) { stuTrainingWithBLOBs.setExpTrainingCompleteStatus(wrongCount); - stuTrainingMapper.updateByPrimaryKeySelective(stuTrainingWithBLOBs); + } else { + Integer expTrainingCompleteStatus = stuTrainingWithBLOBs.getExpTrainingCompleteStatus(); + expTrainingCompleteStatus += wrongCount; + stuTrainingWithBLOBs.setExpTrainingCompleteStatus(expTrainingCompleteStatus); } - + stuTrainingMapper.updateByPrimaryKeySelective(stuTrainingWithBLOBs); } private int getCaseInvestmentPlan(int wrongCount, CaseInvestmentPlan stuInvestmentPlan) { @@ -2786,7 +2785,8 @@ public class CaseServiceImpl implements CaseService { return caseCashPlans.get(0); } - private CaseFinancialRatiosWithBLOBs getCaseFinancialRatiosWithBLOBs(String caseID, String userId, String isAnswer) { + private CaseFinancialRatiosWithBLOBs getCaseFinancialRatiosWithBLOBs(String caseID, String userId, String + isAnswer) { CaseFinancialRatiosExample example = new CaseFinancialRatiosExample(); CaseFinancialRatiosExample.Criteria criteria = example.createCriteria().andCaseidEqualTo(caseID).andIsAnswerEqualTo(isAnswer); if (StringUtils.isBlank(userId)) {