|
|
|
@ -1,5 +1,7 @@
|
|
|
|
|
package com.ibeetl.jlw.service;
|
|
|
|
|
|
|
|
|
|
import cn.hutool.core.collection.CollUtil;
|
|
|
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
|
|
import cn.jlw.util.ToolUtils;
|
|
|
|
|
import com.alibaba.fastjson.JSON;
|
|
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
|
@ -9,6 +11,7 @@ import com.ibeetl.admin.core.web.JsonResult;
|
|
|
|
|
import com.ibeetl.admin.core.web.JsonReturnCode;
|
|
|
|
|
import com.ibeetl.jlw.dao.HandsOnAchievementDao;
|
|
|
|
|
import com.ibeetl.jlw.entity.HandsOnAchievement;
|
|
|
|
|
import com.ibeetl.jlw.enums.HandsOnTaskEnum;
|
|
|
|
|
import com.ibeetl.jlw.web.query.HandsOnAchievementQuery;
|
|
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
|
|
import org.beetl.sql.core.SqlId;
|
|
|
|
@ -17,7 +20,9 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
|
|
|
import java.util.ArrayList;
|
|
|
|
|
import java.util.Date;
|
|
|
|
|
import java.util.List;
|
|
|
|
|
import java.util.Map;
|
|
|
|
|
|
|
|
|
@ -28,34 +33,35 @@ import java.util.Map;
|
|
|
|
|
|
|
|
|
|
@Service
|
|
|
|
|
@Transactional
|
|
|
|
|
public class HandsOnAchievementService extends CoreBaseService<HandsOnAchievement>{
|
|
|
|
|
public class HandsOnAchievementService extends CoreBaseService<HandsOnAchievement> {
|
|
|
|
|
|
|
|
|
|
@Autowired private HandsOnAchievementDao handsOnAchievementDao;
|
|
|
|
|
@Autowired
|
|
|
|
|
private HandsOnAchievementDao handsOnAchievementDao;
|
|
|
|
|
|
|
|
|
|
public PageQuery<HandsOnAchievement>queryByCondition(PageQuery query){
|
|
|
|
|
PageQuery ret = handsOnAchievementDao.queryByCondition(query);
|
|
|
|
|
public PageQuery<HandsOnAchievement> queryByCondition(PageQuery query) {
|
|
|
|
|
PageQuery ret = handsOnAchievementDao.queryByCondition(query);
|
|
|
|
|
queryListAfter(ret.getList());
|
|
|
|
|
return ret;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public PageQuery<HandsOnAchievement>queryByConditionQuery(PageQuery query){
|
|
|
|
|
PageQuery ret = handsOnAchievementDao.queryByConditionQuery(query);
|
|
|
|
|
public PageQuery<HandsOnAchievement> queryByConditionQuery(PageQuery query) {
|
|
|
|
|
PageQuery ret = handsOnAchievementDao.queryByConditionQuery(query);
|
|
|
|
|
queryListAfter(ret.getList());
|
|
|
|
|
return ret;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void deleteByList(List list){
|
|
|
|
|
public void deleteByList(List list) {
|
|
|
|
|
String ids = "";
|
|
|
|
|
ToolUtils.deleteNullList(list);
|
|
|
|
|
for(int i=0;null != list && i<list.size();i++){
|
|
|
|
|
ids += list.get(i).toString()+(i==list.size()-1?"":",");
|
|
|
|
|
for (int i = 0; null != list && i < list.size(); i++) {
|
|
|
|
|
ids += list.get(i).toString() + (i == list.size() - 1 ? "" : ",");
|
|
|
|
|
}
|
|
|
|
|
if(StringUtils.isNotBlank(ids)){
|
|
|
|
|
if (StringUtils.isNotBlank(ids)) {
|
|
|
|
|
handsOnAchievementDao.deleteByIds(ids);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void deleteHandsOnAchievement(String ids){
|
|
|
|
|
public void deleteHandsOnAchievement(String ids) {
|
|
|
|
|
try {
|
|
|
|
|
handsOnAchievementDao.deleteHandsOnAchievementByIds(ids);
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
@ -63,7 +69,7 @@ public class HandsOnAchievementService extends CoreBaseService<HandsOnAchievemen
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public String addAll(HandsOnAchievementQuery handsOnAchievementQuery){
|
|
|
|
|
public String addAll(HandsOnAchievementQuery handsOnAchievementQuery) {
|
|
|
|
|
String msg = "";
|
|
|
|
|
List<HandsOnAchievement> handsOnAchievementList = new ArrayList<>();
|
|
|
|
|
try {
|
|
|
|
@ -71,11 +77,12 @@ public class HandsOnAchievementService extends CoreBaseService<HandsOnAchievemen
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
try {
|
|
|
|
|
handsOnAchievementList.add(JSONObject.parseObject(handsOnAchievementQuery.getHandsOnAchievementJsonStr(), HandsOnAchievement.class));
|
|
|
|
|
} catch (Exception e1) {}
|
|
|
|
|
} catch (Exception e1) {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
ToolUtils.deleteNullList(handsOnAchievementList);
|
|
|
|
|
if(null != handsOnAchievementList && handsOnAchievementList.size()>0){
|
|
|
|
|
for(int i=0;i<handsOnAchievementList.size();i++){
|
|
|
|
|
if (null != handsOnAchievementList && handsOnAchievementList.size() > 0) {
|
|
|
|
|
for (int i = 0; i < handsOnAchievementList.size(); i++) {
|
|
|
|
|
HandsOnAchievement handsOnAchievement = handsOnAchievementList.get(i);
|
|
|
|
|
handsOnAchievement.setUserId(handsOnAchievementQuery.getUserId());
|
|
|
|
|
handsOnAchievement.setOrgId(handsOnAchievementQuery.getOrgId());
|
|
|
|
@ -85,7 +92,7 @@ public class HandsOnAchievementService extends CoreBaseService<HandsOnAchievemen
|
|
|
|
|
return msg;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public JsonResult add(HandsOnAchievementQuery handsOnAchievementQuery){
|
|
|
|
|
public JsonResult add(HandsOnAchievementQuery handsOnAchievementQuery) {
|
|
|
|
|
String msg = "";
|
|
|
|
|
HandsOnAchievement handsOnAchievement = handsOnAchievementQuery.pojo();
|
|
|
|
|
handsOnAchievementDao.insert(handsOnAchievement);
|
|
|
|
@ -97,51 +104,51 @@ public class HandsOnAchievementService extends CoreBaseService<HandsOnAchievemen
|
|
|
|
|
return jsonResult;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public String edit(HandsOnAchievementQuery handsOnAchievementQuery){
|
|
|
|
|
public String edit(HandsOnAchievementQuery handsOnAchievementQuery) {
|
|
|
|
|
String msg = "";
|
|
|
|
|
HandsOnAchievement handsOnAchievement = handsOnAchievementQuery.pojo();
|
|
|
|
|
handsOnAchievementDao.updateTemplateById(handsOnAchievement);
|
|
|
|
|
return msg;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public String updateGivenByIds(HandsOnAchievementQuery handsOnAchievementQuery){
|
|
|
|
|
public String updateGivenByIds(HandsOnAchievementQuery handsOnAchievementQuery) {
|
|
|
|
|
String msg = "";
|
|
|
|
|
if(StringUtils.isNotBlank(handsOnAchievementQuery.get_given())){
|
|
|
|
|
if (StringUtils.isNotBlank(handsOnAchievementQuery.get_given())) {
|
|
|
|
|
boolean flag = handsOnAchievementDao.updateGivenByIds(handsOnAchievementQuery) > 0;
|
|
|
|
|
if(!flag){
|
|
|
|
|
if (!flag) {
|
|
|
|
|
msg = "更新指定参数失败";
|
|
|
|
|
}
|
|
|
|
|
}else{
|
|
|
|
|
} else {
|
|
|
|
|
msg = "指定参数为空";
|
|
|
|
|
}
|
|
|
|
|
return msg;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public List<HandsOnAchievement> getValues (Object paras){
|
|
|
|
|
public List<HandsOnAchievement> getValues(Object paras) {
|
|
|
|
|
return sqlManager.select(SqlId.of("jlw.handsOnAchievement.getHandsOnAchievementValues"), HandsOnAchievement.class, paras);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public List<HandsOnAchievement> getValuesByQuery (HandsOnAchievementQuery handsOnAchievementQuery){
|
|
|
|
|
public List<HandsOnAchievement> getValuesByQuery(HandsOnAchievementQuery handsOnAchievementQuery) {
|
|
|
|
|
return handsOnAchievementDao.getValuesByQuery(handsOnAchievementQuery);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public HandsOnAchievement getInfo (Long handOnAchievementId){
|
|
|
|
|
public HandsOnAchievement getInfo(Long handOnAchievementId) {
|
|
|
|
|
HandsOnAchievementQuery handsOnAchievementQuery = new HandsOnAchievementQuery();
|
|
|
|
|
handsOnAchievementQuery.setHandOnAchievementId(handOnAchievementId);
|
|
|
|
|
handsOnAchievementQuery.setHandOnAchievementStatusPlural("1,2");//需要根据实际情况来
|
|
|
|
|
List<HandsOnAchievement> list = handsOnAchievementDao.getValuesByQuery(handsOnAchievementQuery);
|
|
|
|
|
if(null != list && list.size()>0){
|
|
|
|
|
if (null != list && list.size() > 0) {
|
|
|
|
|
return list.get(0);
|
|
|
|
|
}else{
|
|
|
|
|
} else {
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public HandsOnAchievement getInfo (HandsOnAchievementQuery handsOnAchievementQuery){
|
|
|
|
|
public HandsOnAchievement getInfo(HandsOnAchievementQuery handsOnAchievementQuery) {
|
|
|
|
|
List<HandsOnAchievement> list = handsOnAchievementDao.getValuesByQuery(handsOnAchievementQuery);
|
|
|
|
|
if(null != list && list.size()>0){
|
|
|
|
|
if (null != list && list.size() > 0) {
|
|
|
|
|
return list.get(0);
|
|
|
|
|
}else{
|
|
|
|
|
} else {
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -152,6 +159,69 @@ public class HandsOnAchievementService extends CoreBaseService<HandsOnAchievemen
|
|
|
|
|
|
|
|
|
|
public List<Map<String, Object>> getExcelValues(HandsOnAchievementQuery handsOnAchievementQuery) {
|
|
|
|
|
return handsOnAchievementDao.getExcelValues(handsOnAchievementQuery);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void setHandsOnAchievement(HandsOnAchievement handsOnAchievement, HandsOnTaskEnum handsOnTaskEnum) {
|
|
|
|
|
if (handsOnAchievement.getStudentId() == null || handsOnAchievement.getHandOnId() == null || handsOnAchievement.getClassId() == null || handsOnTaskEnum == null) {
|
|
|
|
|
throw new PlatformException("参数不完整");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
List<HandsOnAchievement> res = handsOnAchievementDao.createLambdaQuery()
|
|
|
|
|
.andEq(HandsOnAchievement::getStudentId, handsOnAchievement.getStudentId())
|
|
|
|
|
.andEq(HandsOnAchievement::getClassId, handsOnAchievement.getClassId())
|
|
|
|
|
.andEq(HandsOnAchievement::getHandOnId, handsOnAchievement.getHandOnId())
|
|
|
|
|
.andEq(HandsOnAchievement::getHandOnAchievementStatus, 1).select();
|
|
|
|
|
|
|
|
|
|
if (CollUtil.isEmpty(res)) {
|
|
|
|
|
handsOnAchievement.setAddTime(new Date());
|
|
|
|
|
handsOnAchievement.setHandOnAchievementStatus(1);
|
|
|
|
|
handsOnAchievement.setTotalScore(calTotalScore(handsOnAchievement).toPlainString());
|
|
|
|
|
handsOnAchievementDao.insert(handsOnAchievement);
|
|
|
|
|
} else {
|
|
|
|
|
HandsOnAchievement last = res.get(0);
|
|
|
|
|
|
|
|
|
|
switch (handsOnTaskEnum) {
|
|
|
|
|
case TASK_PPT:
|
|
|
|
|
last.setPptScore(handsOnAchievement.getPptScore());
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
case TASK_VIDEO:
|
|
|
|
|
last.setVideoScore(handsOnAchievement.getVideoScore());
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
case TASK_THEORY:
|
|
|
|
|
last.setTheoryScore(handsOnAchievement.getTheoryScore());
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
case TASK_REPORT_WRITING:
|
|
|
|
|
last.setReportWritingScore(handsOnAchievement.getReportWritingScore());
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
case TASK_PRACTICAL_TRAINING:
|
|
|
|
|
last.setPracticalTrainingScore(handsOnAchievement.getPracticalTrainingScore());
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
default:
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
last.setTotalScore(calTotalScore(last).toPlainString());
|
|
|
|
|
handsOnAchievementDao.updateTemplateById(last);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private BigDecimal calTotalScore(HandsOnAchievement handsOnAchievement) {
|
|
|
|
|
if (handsOnAchievement == null) {
|
|
|
|
|
throw new PlatformException("参数不完整");
|
|
|
|
|
}
|
|
|
|
|
BigDecimal pptScore = new BigDecimal(ObjectUtil.defaultIfNull(handsOnAchievement.getPptScore(), "0"));
|
|
|
|
|
BigDecimal theoryScore = new BigDecimal(ObjectUtil.defaultIfNull(handsOnAchievement.getTheoryScore(), "0"));
|
|
|
|
|
BigDecimal videoScore = new BigDecimal(ObjectUtil.defaultIfNull(handsOnAchievement.getVideoScore(), "0"));
|
|
|
|
|
BigDecimal reportWritingScore = new BigDecimal(ObjectUtil.defaultIfNull(handsOnAchievement.getReportWritingScore(), "0"));
|
|
|
|
|
BigDecimal practicalTrainingScore = new BigDecimal(ObjectUtil.defaultIfNull(handsOnAchievement.getPracticalTrainingScore(), "0"));
|
|
|
|
|
return pptScore.add(theoryScore).add(videoScore).add(reportWritingScore).add(practicalTrainingScore);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|