修改实验实训提交接口算分逻辑

master
xiaoCJ 4 months ago
parent d93d0d6fdc
commit e9d38039d8

@ -1248,18 +1248,22 @@ public class CaseServiceImpl implements CaseService {
CaseRiskIndexExample caseRiskIndexExample = new CaseRiskIndexExample(); CaseRiskIndexExample caseRiskIndexExample = new CaseRiskIndexExample();
caseRiskIndexExample.createCriteria().andIsAnswerEqualTo("学生答案").andUseridEqualTo(stuRiskIndex.getUserid()).andCaseidEqualTo(stuRiskIndex.getCaseid()); caseRiskIndexExample.createCriteria().andIsAnswerEqualTo("学生答案").andUseridEqualTo(stuRiskIndex.getUserid()).andCaseidEqualTo(stuRiskIndex.getCaseid());
List<CaseRiskIndex> caseRiskIndices = caseRiskIndexMapper.selectByExample(caseRiskIndexExample); List<CaseRiskIndex> caseRiskIndices = caseRiskIndexMapper.selectByExample(caseRiskIndexExample);
//有数据,只删除原数据 修改学生答案 不算分
if (!caseRiskIndices.isEmpty()) { if (!caseRiskIndices.isEmpty()) {
for (CaseRiskIndex caseRiskIndex : caseRiskIndices) { for (CaseRiskIndex caseRiskIndex : caseRiskIndices) {
caseRiskIndexMapper.deleteByPrimaryKey(caseRiskIndex.getCaseRiskIndexId()); caseRiskIndexMapper.deleteByPrimaryKey(caseRiskIndex.getCaseRiskIndexId());
} }
} else { //没数据 算分
//比较正确答案
wrongCount = getRiskIndexWrongCount(wrongCount, stuRiskIndex);
setCount(stuTrainingWithBLOBs, wrongCount);
} }
//新增对象
stuRiskIndex.setCaseRiskIndexId(IdUtil.randomUUID()); stuRiskIndex.setCaseRiskIndexId(IdUtil.randomUUID());
stuRiskIndex.setUpdateDate(new Date()); stuRiskIndex.setUpdateDate(new Date());
caseRiskIndexMapper.insert(stuRiskIndex); caseRiskIndexMapper.insert(stuRiskIndex);
//比较正确答案
wrongCount = getRiskIndexWrongCount(wrongCount, stuRiskIndex);
} }
if (type.equals("财务分析-资产负债表")) { if (type.equals("财务分析-资产负债表")) {
@ -1272,13 +1276,13 @@ public class CaseServiceImpl implements CaseService {
for (CaseFinanceLiability caseFinanceLiability : caseFinanceLiabilities) { for (CaseFinanceLiability caseFinanceLiability : caseFinanceLiabilities) {
caseFinanceLiabilityMapper.deleteByPrimaryKey(caseFinanceLiability.getCaseFinanceLiabilityId()); caseFinanceLiabilityMapper.deleteByPrimaryKey(caseFinanceLiability.getCaseFinanceLiabilityId());
} }
} else { //没数据 算分
//比较正确答案
wrongCount = getCaseFinanceLiabilityWrongCount(wrongCount, stuData);
setCount(stuTrainingWithBLOBs, wrongCount);
} }
stuData.setCaseFinanceLiabilityId(IdUtil.randomUUID()); stuData.setCaseFinanceLiabilityId(IdUtil.randomUUID());
caseFinanceLiabilityMapper.insert(stuData); caseFinanceLiabilityMapper.insert(stuData);
//比较正确答案
wrongCount = getCaseFinanceLiabilityWrongCount(wrongCount, stuData);
} }
if (type.equals("财务分析-收支储蓄表")) { if (type.equals("财务分析-收支储蓄表")) {
@ -1291,13 +1295,13 @@ public class CaseServiceImpl implements CaseService {
for (CaseIncomeAndExpenses caseIncomeAndExpenses : caseFinanceLiabilities) { for (CaseIncomeAndExpenses caseIncomeAndExpenses : caseFinanceLiabilities) {
caseIncomeAndExpensesMapper.deleteByPrimaryKey(caseIncomeAndExpenses.getCaseIncomeAndExpensesId()); caseIncomeAndExpensesMapper.deleteByPrimaryKey(caseIncomeAndExpenses.getCaseIncomeAndExpensesId());
} }
} else { //没数据 算分
wrongCount = getCaseIncomeAndExpensesWrongCount(wrongCount, stuData);
//比较正确答案
setCount(stuTrainingWithBLOBs, wrongCount);
} }
stuData.setCaseIncomeAndExpensesId(IdUtil.randomUUID()); stuData.setCaseIncomeAndExpensesId(IdUtil.randomUUID());
caseIncomeAndExpensesMapper.insert(stuData); caseIncomeAndExpensesMapper.insert(stuData);
//比较正确答案
wrongCount = getCaseIncomeAndExpensesWrongCount(wrongCount, stuData);
} }
if (type.equals("财务分析-现金流量表")) { if (type.equals("财务分析-现金流量表")) {
@ -1310,13 +1314,14 @@ public class CaseServiceImpl implements CaseService {
for (CaseCashFlow caseCashFlow : caseCashFlows) { for (CaseCashFlow caseCashFlow : caseCashFlows) {
caseCashFlowMapper.deleteByPrimaryKey(caseCashFlow.getCaseCashFlowId()); caseCashFlowMapper.deleteByPrimaryKey(caseCashFlow.getCaseCashFlowId());
} }
} } else { //没数据 算分
//比较正确答案
wrongCount = getCaseCashFlowWrongCount(wrongCount, stuData);
setCount(stuTrainingWithBLOBs, wrongCount);
}
stuData.setCaseCashFlowId(IdUtil.randomUUID()); stuData.setCaseCashFlowId(IdUtil.randomUUID());
caseCashFlowMapper.insert(stuData); caseCashFlowMapper.insert(stuData);
//比较正确答案
wrongCount = getCaseCashFlowWrongCount(wrongCount, stuData);
} }
if (type.equals("财务分析-财务比例分析")) { if (type.equals("财务分析-财务比例分析")) {
@ -1346,13 +1351,14 @@ public class CaseServiceImpl implements CaseService {
for (CaseCashPlan caseCashPlan : caseCashFlows) { for (CaseCashPlan caseCashPlan : caseCashFlows) {
caseCashPlanMapper.deleteByPrimaryKey(caseCashPlan.getCaseCashPlanId()); caseCashPlanMapper.deleteByPrimaryKey(caseCashPlan.getCaseCashPlanId());
} }
} else { //没数据 算分
//比较正确答案
wrongCount = getCaseCashPlanWrongCount(wrongCount, stuData);
setCount(stuTrainingWithBLOBs, wrongCount);
} }
stuData.setCaseCashPlanId(IdUtil.randomUUID()); stuData.setCaseCashPlanId(IdUtil.randomUUID());
caseCashPlanMapper.insert(stuData); caseCashPlanMapper.insert(stuData);
//比较正确答案
wrongCount = getCaseCashPlanWrongCount(wrongCount, stuData);
} }
if (type.equals("生涯规划-教育规划")) { if (type.equals("生涯规划-教育规划")) {
@ -1365,13 +1371,14 @@ public class CaseServiceImpl implements CaseService {
for (CaseLifeEducationPlan caseLifeEducationPlan : caseLifeEducationPlans) { for (CaseLifeEducationPlan caseLifeEducationPlan : caseLifeEducationPlans) {
caseLifeEducationPlanMapper.deleteByPrimaryKey(caseLifeEducationPlan.getCaseLifeEducationPlanId()); caseLifeEducationPlanMapper.deleteByPrimaryKey(caseLifeEducationPlan.getCaseLifeEducationPlanId());
} }
} } else { //没数据 算分
//比较正确答案
wrongCount = getCaseLifeEducationPlanWrongCount(wrongCount, stuData);
setCount(stuTrainingWithBLOBs, wrongCount);
}
stuData.setCaseLifeEducationPlanId(IdUtil.randomUUID()); stuData.setCaseLifeEducationPlanId(IdUtil.randomUUID());
caseLifeEducationPlanMapper.insert(stuData); caseLifeEducationPlanMapper.insert(stuData);
//比较正确答案
wrongCount = getCaseLifeEducationPlanWrongCount(wrongCount, stuData);
} }
if (type.equals("生涯规划-消费规划")) { if (type.equals("生涯规划-消费规划")) {
@ -1384,13 +1391,14 @@ public class CaseServiceImpl implements CaseService {
for (CaseConsumptionPlan caseConsumptionPlan : caseConsumptionPlans) { for (CaseConsumptionPlan caseConsumptionPlan : caseConsumptionPlans) {
caseConsumptionPlanMapper.deleteByPrimaryKey(caseConsumptionPlan.getCaseConsumptionPlanId()); caseConsumptionPlanMapper.deleteByPrimaryKey(caseConsumptionPlan.getCaseConsumptionPlanId());
} }
} } else { //没数据 算分
//比较正确答案
wrongCount = getCaseConsumptionPlanWrongCount(wrongCount, stuData);
setCount(stuTrainingWithBLOBs, wrongCount);
}
stuData.setCaseConsumptionPlanId(IdUtil.randomUUID()); stuData.setCaseConsumptionPlanId(IdUtil.randomUUID());
caseConsumptionPlanMapper.insert(stuData); caseConsumptionPlanMapper.insert(stuData);
//比较正确答案
wrongCount = getCaseConsumptionPlanWrongCount(wrongCount, stuData);
} }
if (type.equals("生涯规划-创业规划")) { if (type.equals("生涯规划-创业规划")) {
@ -1403,13 +1411,13 @@ public class CaseServiceImpl implements CaseService {
for (CaseStartAnUndertakingPlan caseStartAnUndertakingPlan : caseLifeEducationPlans) { for (CaseStartAnUndertakingPlan caseStartAnUndertakingPlan : caseLifeEducationPlans) {
caseStartAnUndertakingPlanMapper.deleteByPrimaryKey(caseStartAnUndertakingPlan.getCaseStartAnUndertakingPlanId()); caseStartAnUndertakingPlanMapper.deleteByPrimaryKey(caseStartAnUndertakingPlan.getCaseStartAnUndertakingPlanId());
} }
} else { //没数据 算分
//比较正确答案
wrongCount = getCaseStartAnUndertakingPlanWrongCount(wrongCount, stuData);
setCount(stuTrainingWithBLOBs, wrongCount);
} }
stuData.setCaseStartAnUndertakingPlanId(IdUtil.randomUUID()); stuData.setCaseStartAnUndertakingPlanId(IdUtil.randomUUID());
caseStartAnUndertakingPlanMapper.insert(stuData); caseStartAnUndertakingPlanMapper.insert(stuData);
//比较正确答案
wrongCount = getCaseStartAnUndertakingPlanWrongCount(wrongCount, stuData);
} }
if (type.equals("生涯规划-退休规划")) { if (type.equals("生涯规划-退休规划")) {
@ -1422,13 +1430,13 @@ public class CaseServiceImpl implements CaseService {
for (CaseRetirementPlan caseRetirementPlan : caseRetirementPlans) { for (CaseRetirementPlan caseRetirementPlan : caseRetirementPlans) {
caseRetirementPlanMapper.deleteByPrimaryKey(caseRetirementPlan.getCaseRetirementPlanId()); caseRetirementPlanMapper.deleteByPrimaryKey(caseRetirementPlan.getCaseRetirementPlanId());
} }
} else { //没数据 算分
//比较正确答案
wrongCount = getCaseRetirementPlanWrongCount(wrongCount, stuData);
setCount(stuTrainingWithBLOBs, wrongCount);
} }
stuData.setCaseRetirementPlanId(IdUtil.randomUUID()); stuData.setCaseRetirementPlanId(IdUtil.randomUUID());
caseRetirementPlanMapper.insert(stuData); caseRetirementPlanMapper.insert(stuData);
//比较正确答案
wrongCount = getCaseRetirementPlanWrongCount(wrongCount, stuData);
} }
if (type.equals("生涯规划-保险规划")) { if (type.equals("生涯规划-保险规划")) {
@ -1441,33 +1449,16 @@ public class CaseServiceImpl implements CaseService {
for (CaseInsurancePlan caseInsurancePlan : caseRetirementPlans) { for (CaseInsurancePlan caseInsurancePlan : caseRetirementPlans) {
caseInsurancePlanMapper.deleteByPrimaryKey(caseInsurancePlan.getCaseInsurancePlanId()); caseInsurancePlanMapper.deleteByPrimaryKey(caseInsurancePlan.getCaseInsurancePlanId());
} }
} } else { //没数据 算分
//比较正确答案
wrongCount = getCaseInsurancePlanWrongCount(wrongCount, stuData);
setCount(stuTrainingWithBLOBs, wrongCount);
}
stuData.setCaseInsurancePlanId(IdUtil.randomUUID()); stuData.setCaseInsurancePlanId(IdUtil.randomUUID());
caseInsurancePlanMapper.insert(stuData); 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<CaseInvestmentPlan> 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("投资规划")) { if (type.equals("投资规划")) {
CaseInvestmentPlanDto caseInvestmentPlanDto = gson.fromJson(json, CaseInvestmentPlanDto.class); CaseInvestmentPlanDto caseInvestmentPlanDto = gson.fromJson(json, CaseInvestmentPlanDto.class);
@ -1498,6 +1489,11 @@ public class CaseServiceImpl implements CaseService {
investmentPlanRealGoldProductInfoMapper.deleteByPrimaryKey(productSelectId); investmentPlanRealGoldProductInfoMapper.deleteByPrimaryKey(productSelectId);
} }
investmentPlanMapper.deleteByPrimaryKey(caseInvestmentPlan.getCaseInvestmentPlanId()); 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("税务筹划")) { if (type.equals("税务筹划")) {
@ -1610,13 +1604,13 @@ public class CaseServiceImpl implements CaseService {
for (CaseTaxPlan caseTaxPlan : caseTaxPlans) { for (CaseTaxPlan caseTaxPlan : caseTaxPlans) {
caseTaxPlanMapper.deleteByPrimaryKey(caseTaxPlan.getCaseTaxPlanId()); caseTaxPlanMapper.deleteByPrimaryKey(caseTaxPlan.getCaseTaxPlanId());
} }
} else { //没数据 算分
//比较正确答案
wrongCount = getCaseTaxPlanWrongCount(wrongCount, stuData);
setCount(stuTrainingWithBLOBs, wrongCount);
} }
stuData.setCaseTaxPlanId(IdUtil.randomUUID()); stuData.setCaseTaxPlanId(IdUtil.randomUUID());
caseTaxPlanMapper.insert(stuData); caseTaxPlanMapper.insert(stuData);
//比较正确答案
wrongCount = getCaseTaxPlanWrongCount(wrongCount, stuData);
} }
if (type.equals("财产分配")) { if (type.equals("财产分配")) {
@ -1652,7 +1646,6 @@ public class CaseServiceImpl implements CaseService {
if (type.equals("财产传承")) { if (type.equals("财产传承")) {
CaseHeritageWithBLOBs stuData = gson.fromJson(json, CaseHeritageWithBLOBs.class); CaseHeritageWithBLOBs stuData = gson.fromJson(json, CaseHeritageWithBLOBs.class);
stuData.setCaseHeritageId(IdUtil.randomUUID());
CaseHeritageExample caseHeritageExample = new CaseHeritageExample(); CaseHeritageExample caseHeritageExample = new CaseHeritageExample();
caseHeritageExample.createCriteria().andIsAnswerEqualTo("学生答案").andUserIdEqualTo(stuData.getUserId()).andCaseidEqualTo(stuData.getCaseid()); caseHeritageExample.createCriteria().andIsAnswerEqualTo("学生答案").andUserIdEqualTo(stuData.getUserId()).andCaseidEqualTo(stuData.getCaseid());
@ -1661,11 +1654,13 @@ public class CaseServiceImpl implements CaseService {
for (CaseHeritageWithBLOBs distributionOfPropertyWithBLOBs : caseHeritageWithBLOBs) { for (CaseHeritageWithBLOBs distributionOfPropertyWithBLOBs : caseHeritageWithBLOBs) {
caseHeritageMapper.deleteByPrimaryKey(distributionOfPropertyWithBLOBs.getCaseHeritageId()); caseHeritageMapper.deleteByPrimaryKey(distributionOfPropertyWithBLOBs.getCaseHeritageId());
} }
} else { //没数据 算分
//比较正确答案
wrongCount = getCaseHeritageWrongCount(wrongCount, stuData);
setCount(stuTrainingWithBLOBs, wrongCount);
} }
stuData.setCaseHeritageId(IdUtil.randomUUID());
caseHeritageMapper.insert(stuData); caseHeritageMapper.insert(stuData);
//比较正确答案
wrongCount = getCaseHeritageWrongCount(wrongCount, stuData);
} }
} }
} catch ( } catch (
@ -1673,13 +1668,17 @@ public class CaseServiceImpl implements CaseService {
e.printStackTrace(); e.printStackTrace();
throw new RuntimeException("实训提交失败"); throw new RuntimeException("实训提交失败");
} }
}
//第一次添加时设置值 重新实训不提交 private void setCount(StuTrainingWithBLOBs stuTrainingWithBLOBs, int wrongCount) {
if (stuTrainingWithBLOBs.getExpTrainingCompleteStatus() == null) { if (stuTrainingWithBLOBs.getExpTrainingCompleteStatus() == null) {
stuTrainingWithBLOBs.setExpTrainingCompleteStatus(wrongCount); 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) { private int getCaseInvestmentPlan(int wrongCount, CaseInvestmentPlan stuInvestmentPlan) {
@ -2786,7 +2785,8 @@ public class CaseServiceImpl implements CaseService {
return caseCashPlans.get(0); 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 example = new CaseFinancialRatiosExample();
CaseFinancialRatiosExample.Criteria criteria = example.createCriteria().andCaseidEqualTo(caseID).andIsAnswerEqualTo(isAnswer); CaseFinancialRatiosExample.Criteria criteria = example.createCriteria().andCaseidEqualTo(caseID).andIsAnswerEqualTo(isAnswer);
if (StringUtils.isBlank(userId)) { if (StringUtils.isBlank(userId)) {

Loading…
Cancel
Save