修改小班有多门课程时生成证书报错

This commit is contained in:
wuchunlei
2025-10-09 09:54:09 +08:00
parent cdc9bdb10c
commit f93dd496d6

View File

@@ -504,27 +504,21 @@ public class ClassController {
Map<String, Object> userScoreMap = userScoreList.get(i);
MyUserEntity user = (MyUserEntity)userScoreMap.get("user");
if (new BigDecimal(userScoreMap.get("userScore").toString()).compareTo(new BigDecimal(60))>=0){
UserCertificate userCertificate = new UserCertificate();
userCertificate.setTitle(classEntity.getTitle());
String type = "B";
//卡一下A证率普通小班A证率为的10%精英班A证率为20%
if (new BigDecimal(userScoreMap.get("userScore").toString()).compareTo(new BigDecimal(70))>=0&&
(classEntity.getTitle().contains("精英")?((i+1)<=(Math.round(userScoreList.size()*0.20))):(i+1)<=(Math.round(userScoreList.size()*0.10)))){
type = "A";
}
userCertificate.setType(type);
userCertificate.setLabelId(5);
userCertificate.setUserId(user.getId());
userCertificate.setClassId(classEntity.getId());
//查询小班下得课程信息
String noticeContent = "";
List<Map<String,Object>> classCourseInfoLlist = classEntityService.classCourseInfoClassId(classEntity.getId(),0);
for (Map<String,Object> classCourseInfo:classCourseInfoLlist){
if (StringUtils.isEmpty(noticeContent)){
noticeContent = classCourseInfo.get("courseTitle").toString();
}else {
noticeContent += ""+classCourseInfo.get("courseTitle").toString();
UserCertificate userCertificate = new UserCertificate();
userCertificate.setTitle(classEntity.getTitle());
String type = "B";
//卡一下A证率普通小班A证率为的10%精英班A证率为20%
if (new BigDecimal(userScoreMap.get("userScore").toString()).compareTo(new BigDecimal(70))>=0&&
(classEntity.getTitle().contains("精英")?((i+1)<=(Math.round(userScoreList.size()*0.20))):(i+1)<=(Math.round(userScoreList.size()*0.10)))){
type = "A";
}
userCertificate.setType(type);
userCertificate.setLabelId(5);
userCertificate.setUserId(user.getId());
userCertificate.setClassId(classEntity.getId());
if (StringUtils.isNotEmpty(classCourseInfo.get("titleAbbr").toString())
&&StringUtils.isNotEmpty(classCourseInfo.get("courseETitle").toString())){
String certificateNo = classEntityService.getNextCertificateNo(type,classCourseInfo.get("titleAbbr").toString());
@@ -554,17 +548,18 @@ public class ClassController {
}else {
R.error("课程未设置英文名或缩写");
}
SysNotice notice = new SysNotice();
notice.setUserId(user.getId());
String noticeContent = classCourseInfo.get("courseTitle").toString();
if ("A".equals(type)){
notice.setContent("您参与的"+classEntity.getTitle()+"小班,已顺利结课,恭喜您," +
"获得"+noticeContent+"课程的A证书在证书管理填写您的相关信息即可出证啦");
}else {
notice.setContent("您参与的"+classEntity.getTitle()+"小班,已顺利结课,恭喜您," +
"获得"+noticeContent+"课程的B证书在证书管理填写您的相关信息即可出证啦");
}
sysNoticeService.save(notice);
}
SysNotice notice = new SysNotice();
notice.setUserId(user.getId());
if ("A".equals(type)){
notice.setContent("您参与的"+classEntity.getTitle()+"小班,已顺利结课,恭喜您," +
"获得"+noticeContent+"课程的A证书在证书管理填写您的相关信息即可出证啦");
}else {
notice.setContent("您参与的"+classEntity.getTitle()+"小班,已顺利结课,恭喜您," +
"获得"+noticeContent+"课程的B证书在证书管理填写您的相关信息即可出证啦");
}
sysNoticeService.save(notice);
}else {
SysNotice notice = new SysNotice();
notice.setUserId(user.getId());