评分修改
This commit is contained in:
@@ -333,15 +333,13 @@ public class ClassController {
|
|||||||
//心得评分
|
//心得评分
|
||||||
@RequestMapping("/editTaskScore")
|
@RequestMapping("/editTaskScore")
|
||||||
public R editTaskScore(@RequestBody Map<String,Object> params){
|
public R editTaskScore(@RequestBody Map<String,Object> params){
|
||||||
classEntityService.editTaskScore(params);
|
return classEntityService.editTaskScore(params);
|
||||||
return R.ok();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//打分
|
//打分
|
||||||
@RequestMapping("/editScore")
|
@RequestMapping("/editScore")
|
||||||
public R editScore(@RequestBody Map<String,Object> params){
|
public R editScore(@RequestBody Map<String,Object> params){
|
||||||
classEntityService.editScore(params);
|
return classEntityService.editScore(params);
|
||||||
return R.ok();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//编辑作业
|
//编辑作业
|
||||||
|
|||||||
@@ -77,9 +77,9 @@ public interface ClassEntityService extends IService<ClassEntity> {
|
|||||||
|
|
||||||
Page getReplyListByTaskIdStudent(Map<String ,Object> params);
|
Page getReplyListByTaskIdStudent(Map<String ,Object> params);
|
||||||
|
|
||||||
void editTaskScore(Map<String,Object> params);
|
R editTaskScore(Map<String,Object> params);
|
||||||
|
|
||||||
void editScore(Map<String,Object> params);
|
R editScore(Map<String,Object> params);
|
||||||
|
|
||||||
void editClassTaskAndQuesReply(ClassTaskAndQuesReply classTaskAndQuesReply);
|
void editClassTaskAndQuesReply(ClassTaskAndQuesReply classTaskAndQuesReply);
|
||||||
|
|
||||||
|
|||||||
@@ -962,49 +962,62 @@ public class ClassEntityServiceImpl extends ServiceImpl<ClassEntityDao, ClassEnt
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void editTaskScore(Map<String, Object> params) {
|
public R editTaskScore(Map<String, Object> params) {
|
||||||
ClassTask classTask = classTaskDao.selectById(params.get("taskId").toString());
|
ClassTask classTask = classTaskDao.selectById(params.get("taskId").toString());
|
||||||
classTask.setScoreSuccess(classTask.getScoreSuccess()+1);
|
ClassEntity classEntity = this.baseMapper.selectById(classTask.getClassId());
|
||||||
classTask.setScore(Double.parseDouble(params.get("score").toString()));
|
if ("1".equals(classEntity.getState())||"3".equals(classEntity.getState())){
|
||||||
classTaskDao.updateById(classTask);
|
classTask.setScoreSuccess(classTask.getScoreSuccess()+1);
|
||||||
|
classTask.setScore(Double.parseDouble(params.get("score").toString()));
|
||||||
|
classTaskDao.updateById(classTask);
|
||||||
|
}else {
|
||||||
|
return R.error("此班级状态不能评分");
|
||||||
|
}
|
||||||
|
return R.ok();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void editScore(Map<String, Object> params) {
|
@Transactional
|
||||||
|
public R editScore(Map<String, Object> params) {
|
||||||
ClassTaskAndQuesReply classTaskAndQuesReply = classTaskAndQuesReplyDao.selectById(params.get("replyId").toString());
|
ClassTaskAndQuesReply classTaskAndQuesReply = classTaskAndQuesReplyDao.selectById(params.get("replyId").toString());
|
||||||
String score = params.get("score").toString();
|
ClassEntity classEntity = this.baseMapper.selectById(classTaskAndQuesReply.getClassId());
|
||||||
String scoreInfo = "";
|
if ("1".equals(classEntity.getState())||"3".equals(classEntity.getState())){
|
||||||
Map<String,Object> userIdAndScore = new HashMap<>();
|
String score = params.get("score").toString();
|
||||||
if (StringUtils.isNotEmpty(classTaskAndQuesReply.getScoreInfo())){
|
String scoreInfo = "";
|
||||||
boolean flag = true;
|
Map<String,Object> userIdAndScore = new HashMap<>();
|
||||||
userIdAndScore = JSON.parseObject(classTaskAndQuesReply.getScoreInfo());
|
if (StringUtils.isNotEmpty(classTaskAndQuesReply.getScoreInfo())){
|
||||||
for (Map.Entry<String,Object> key : userIdAndScore.entrySet()) {
|
boolean flag = true;
|
||||||
if (key.equals(ShiroUtils.getUId().toString())){
|
userIdAndScore = JSON.parseObject(classTaskAndQuesReply.getScoreInfo());
|
||||||
flag = false;
|
for (Map.Entry<String,Object> key : userIdAndScore.entrySet()) {
|
||||||
key.setValue(score);
|
if (key.equals(ShiroUtils.getUId().toString())){
|
||||||
|
flag = false;
|
||||||
|
key.setValue(score);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
if (flag) {
|
||||||
if (flag) {
|
userIdAndScore.put(""+ShiroUtils.getUId(),score);
|
||||||
|
}
|
||||||
|
}else {
|
||||||
userIdAndScore.put(""+ShiroUtils.getUId(),score);
|
userIdAndScore.put(""+ShiroUtils.getUId(),score);
|
||||||
}
|
}
|
||||||
|
scoreInfo = JSON.toJSONString(userIdAndScore);
|
||||||
|
classTaskAndQuesReply.setScoreInfo(scoreInfo);
|
||||||
|
classTaskAndQuesReplyDao.updateById(classTaskAndQuesReply);
|
||||||
|
//生成成绩
|
||||||
|
Map<String,Object> userIdScore = JSON.parseObject(classTaskAndQuesReply.getScoreInfo());
|
||||||
|
double socre = 0;
|
||||||
|
for (Map.Entry<String,Object> key : userIdScore.entrySet()) {
|
||||||
|
socre = socre + Double.valueOf(key.getValue().toString());
|
||||||
|
}
|
||||||
|
socre = socre/userIdScore.size();
|
||||||
|
BigDecimal socre2 = new BigDecimal(socre);
|
||||||
|
socre2 = socre2.setScale(2,RoundingMode.HALF_UP);
|
||||||
|
classTaskAndQuesReply.setScoreSuccess(classTaskAndQuesReply.getScoreSuccess()+1);
|
||||||
|
classTaskAndQuesReply.setScore(socre2.doubleValue());
|
||||||
|
classTaskAndQuesReplyDao.updateById(classTaskAndQuesReply);
|
||||||
}else {
|
}else {
|
||||||
userIdAndScore.put(""+ShiroUtils.getUId(),score);
|
return R.error("此班级状态不能评分");
|
||||||
}
|
}
|
||||||
scoreInfo = JSON.toJSONString(userIdAndScore);
|
return R.ok();
|
||||||
classTaskAndQuesReply.setScoreInfo(scoreInfo);
|
|
||||||
classTaskAndQuesReplyDao.updateById(classTaskAndQuesReply);
|
|
||||||
//生成成绩
|
|
||||||
Map<String,Object> userIdScore = JSON.parseObject(classTaskAndQuesReply.getScoreInfo());
|
|
||||||
double socre = 0;
|
|
||||||
for (Map.Entry<String,Object> key : userIdScore.entrySet()) {
|
|
||||||
socre = socre + Double.valueOf(key.getValue().toString());
|
|
||||||
}
|
|
||||||
socre = socre/userIdScore.size();
|
|
||||||
BigDecimal socre2 = new BigDecimal(socre);
|
|
||||||
socre2 = socre2.setScale(2,RoundingMode.HALF_UP);
|
|
||||||
classTaskAndQuesReply.setScoreSuccess(classTaskAndQuesReply.getScoreSuccess()+1);
|
|
||||||
classTaskAndQuesReply.setScore(socre2.doubleValue());
|
|
||||||
classTaskAndQuesReplyDao.updateById(classTaskAndQuesReply);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
Reference in New Issue
Block a user