mirror of
https://github.com/weizhiqiang1995/erp-pro.git
synced 2025-03-03 19:03:11 +08:00
Merge branch 'company_server' of https://gitee.com/doc_wei01/skyeye into company_server
This commit is contained in:
commit
5b8da4931f
41 changed files with 580 additions and 211 deletions
|
@ -376,8 +376,25 @@ public class ActivitiProcessServiceImpl implements ActivitiProcessService {
|
|||
list.add(userMation);
|
||||
}
|
||||
}
|
||||
|
||||
return list.stream().collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(p -> String.valueOf(p.get("id"))))), ArrayList::new));
|
||||
// 使用 Stream API 进行过滤、排序并最终收集到 ArrayList 中
|
||||
List<Map<String, Object>> resultList = list.stream()
|
||||
.filter(Objects::nonNull) // 确保 item 不是 null
|
||||
.map(item -> item.entrySet().stream()
|
||||
.filter(entry -> entry != null && entry.getKey() != null &&
|
||||
entry.getValue() != null && !"".equals(entry.getValue()))
|
||||
.collect(Collectors.toMap(
|
||||
Map.Entry::getKey,
|
||||
Map.Entry::getValue,
|
||||
(existing, replacement) -> existing, // 解决重复键的问题
|
||||
LinkedHashMap::new)) // 保持插入顺序
|
||||
)
|
||||
.filter(Objects::nonNull) // 确保转换后的 map 不是 null
|
||||
.sorted(Comparator.comparing(p -> String.valueOf(p.get("id")), Comparator.nullsLast(Comparator.naturalOrder())))
|
||||
.collect(Collectors.collectingAndThen(
|
||||
Collectors.toCollection(ArrayList::new),
|
||||
ArrayList::new
|
||||
));
|
||||
return resultList;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -13,6 +13,7 @@ import com.skyeye.annotation.api.ApiModelProperty;
|
|||
import com.skyeye.annotation.api.Property;
|
||||
import com.skyeye.common.entity.features.OperatorUserInfo;
|
||||
import com.skyeye.dsform.entity.DsFormPage;
|
||||
import com.skyeye.operate.classenum.MenuPageType;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Map;
|
||||
|
@ -43,7 +44,7 @@ public class OperateOpenPage extends OperatorUserInfo {
|
|||
private String name;
|
||||
|
||||
@TableField("`type`")
|
||||
@ApiModelProperty(value = "页面类型,参考#MenuPageType", required = "required")
|
||||
@ApiModelProperty(value = "页面类型", required = "required", enumClass = MenuPageType.class)
|
||||
private Integer type;
|
||||
|
||||
@TableField("page_url")
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
|
||||
package com.skyeye.eve.service.impl;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.skyeye.common.client.ExecuteFeignClient;
|
||||
import com.skyeye.common.constans.QuartzConstants;
|
||||
|
@ -62,7 +63,11 @@ public class SysQuartzServiceImpl implements SysQuartzService {
|
|||
private XxlJobInfo getXxlJobInfo(String objectId, String groupId, String delayedTime, String jobDesc, String taskType, String userId) {
|
||||
XxlJobInfo xxlJobInfo = new XxlJobInfo();
|
||||
Map<String, Object> user = iAuthUserService.queryDataMationById(userId);
|
||||
xxlJobInfo.setAuthor(user.get("name").toString());
|
||||
String author = "商城用户";
|
||||
if (CollectionUtil.isNotEmpty(user)) {
|
||||
author = user.get("name").toString();
|
||||
}
|
||||
xxlJobInfo.setAuthor(author);
|
||||
xxlJobInfo.setJobGroup(Integer.parseInt(groupId));
|
||||
xxlJobInfo.setJobDesc(QuartzConstants.QuartzMateMationJobType.getRemarkPrefixByTaskType(taskType, jobDesc));
|
||||
xxlJobInfo.setScheduleType("CRON");
|
||||
|
|
|
@ -7,7 +7,9 @@
|
|||
a.code_id id,
|
||||
IFNULL(a.parent_code_id, '0') pId,
|
||||
a.`name`,
|
||||
false lay_is_open
|
||||
false lay_is_open,
|
||||
a.level,
|
||||
a.code_id codeId
|
||||
FROM
|
||||
t_area a
|
||||
<where>
|
||||
|
|
|
@ -22,6 +22,8 @@ public interface QuestionService extends SkyeyeBusinessService<Question> {
|
|||
|
||||
void copyQuestionListMation(Question question);
|
||||
|
||||
List<Question> queryQuestionMationCopyById(String surveyCopyId);
|
||||
|
||||
// String saveQuestion(Question question, String id, String userId);
|
||||
|
||||
}
|
||||
|
|
|
@ -4,9 +4,11 @@
|
|||
|
||||
package com.skyeye.eve.Examquestion.service.impl;
|
||||
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.skyeye.annotation.service.SkyeyeService;
|
||||
import com.skyeye.base.business.service.impl.SkyeyeBusinessServiceImpl;
|
||||
import com.skyeye.common.constans.CommonNumConstants;
|
||||
import com.skyeye.common.entity.search.CommonPageInfo;
|
||||
import com.skyeye.common.object.InputObject;
|
||||
import com.skyeye.common.util.DateUtil;
|
||||
|
@ -16,22 +18,18 @@ import com.skyeye.common.util.question.QuType;
|
|||
import com.skyeye.eve.Examquestion.dao.QuestionDao;
|
||||
import com.skyeye.eve.Examquestion.entity.Question;
|
||||
import com.skyeye.eve.Examquestion.service.QuestionService;
|
||||
import com.skyeye.exam.examquchckbox.dao.ExamQuCheckboxDao;
|
||||
import com.skyeye.exam.examquchckbox.entity.ExamQuCheckbox;
|
||||
import com.skyeye.exam.examquchckbox.service.ExamQuCheckboxService;
|
||||
import com.skyeye.exam.examquchencolumn.dao.ExamQuChenColumnDao;
|
||||
import com.skyeye.exam.examquchencolumn.entity.ExamQuChenColumn;
|
||||
import com.skyeye.exam.examquchencolumn.service.ExamQuChenColumnService;
|
||||
import com.skyeye.exam.examquchenrow.dao.ExamQuChenRowDao;
|
||||
import com.skyeye.exam.examquchenrow.entity.ExamQuChenRow;
|
||||
import com.skyeye.exam.examquchenrow.service.ExamQuChenRowService;
|
||||
import com.skyeye.exam.examquestionlogic.entity.ExamQuestionLogic;
|
||||
import com.skyeye.exam.examquestionlogic.service.ExamQuestionLogicService;
|
||||
import com.skyeye.exam.examqumultfillblank.dao.ExamQuMultiFillblankDao;
|
||||
import com.skyeye.exam.examqumultfillblank.entity.ExamQuMultiFillblank;
|
||||
import com.skyeye.exam.examqumultfillblank.service.ExamQuMultiFillblankService;
|
||||
import com.skyeye.exam.examquorderby.entity.ExamQuOrderby;
|
||||
import com.skyeye.exam.examquorderby.service.ExamQuOrderbyService;
|
||||
import com.skyeye.exam.examquradio.dao.ExamQuRadioDao;
|
||||
import com.skyeye.exam.examquradio.entity.ExamQuRadio;
|
||||
import com.skyeye.exam.examquradio.service.ExamQuRadioService;
|
||||
import com.skyeye.exam.examquscore.entity.ExamQuScore;
|
||||
|
@ -40,7 +38,6 @@ import com.skyeye.exception.CustomException;
|
|||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
|
@ -73,9 +70,15 @@ public class QuestionServiceImpl extends SkyeyeBusinessServiceImpl<QuestionDao,
|
|||
@Autowired
|
||||
private ExamQuChenColumnService examQuChenColumnService;
|
||||
|
||||
@Autowired
|
||||
private ExamQuChenRowService examQuChenRowService;
|
||||
|
||||
@Autowired
|
||||
private ExamQuestionLogicService examQuestionLogicService;
|
||||
|
||||
@Autowired
|
||||
private ExamQuScoreService examQuScoreService;
|
||||
|
||||
@Override
|
||||
public void createPostpose(Question entity, String userId) {
|
||||
entity.setQuTag(1);
|
||||
|
@ -192,67 +195,90 @@ public class QuestionServiceImpl extends SkyeyeBusinessServiceImpl<QuestionDao,
|
|||
return questionList;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
private ExamQuRadioDao examQuRadioDao;
|
||||
@Autowired
|
||||
private ExamQuCheckboxDao examQuCheckboxDao;
|
||||
@Autowired
|
||||
private ExamQuMultiFillblankDao examQuMultiFillblankDao;
|
||||
@Autowired
|
||||
private ExamQuChenRowDao examQuChenRowDao;
|
||||
@Autowired
|
||||
private ExamQuChenColumnDao examQuChenColumnDao;
|
||||
@Override
|
||||
public void copyQuestionListMation(Question question) {
|
||||
String quType = QuType.getActionName(Integer.parseInt(question.getQuType().toString()));
|
||||
if (quType.equals(QuType.RADIO.getActionName()) || quType.equals(QuType.COMPRADIO.getActionName())) {
|
||||
ExamQuRadio examQuRadio = examQuRadioService.selectById(question.getCopyFromId());
|
||||
List<ExamQuRadio> examQuRadioList = examQuRadioService.selectQuRadio(question.getCopyFromId());
|
||||
for (ExamQuRadio examQuRadio : examQuRadioList) {
|
||||
examQuRadio.setId(ToolUtil.getSurFaceId());
|
||||
examQuRadio.setCreateTime(DateUtil.getTimeAndToString());
|
||||
examQuRadio.setQuId(question.getId());
|
||||
if (examQuRadio != null) {
|
||||
examQuRadioDao.insert(examQuRadio);
|
||||
}
|
||||
if (!examQuRadioList.isEmpty()) {
|
||||
examQuRadioService.createEntity(examQuRadioList, StrUtil.EMPTY);
|
||||
}
|
||||
else if (quType.equals(QuType.CHECKBOX.getActionName()) || quType.equals(QuType.COMPCHECKBOX.getActionName())){
|
||||
ExamQuCheckbox examQuCheckbox = examQuCheckboxDao.selectById(question.getCopyFromId());
|
||||
} else if (quType.equals(QuType.CHECKBOX.getActionName()) || quType.equals(QuType.COMPCHECKBOX.getActionName())) {
|
||||
List<ExamQuCheckbox> examQuCheckboxList = examQuCheckboxService.selectQuChenbox(question.getCopyFromId());
|
||||
for (ExamQuCheckbox examQuCheckbox : examQuCheckboxList) {
|
||||
examQuCheckbox.setId(ToolUtil.getSurFaceId());
|
||||
examQuCheckbox.setCreateTime(DateUtil.getTimeAndToString());
|
||||
examQuCheckbox.setQuId(question.getId());
|
||||
if (examQuCheckbox != null) {
|
||||
examQuCheckboxDao.insert(examQuCheckbox);
|
||||
}
|
||||
if (!examQuCheckboxList.isEmpty()) {
|
||||
examQuCheckboxService.createEntity(examQuCheckboxList, StrUtil.EMPTY);
|
||||
}
|
||||
else if (quType.equals(QuType.MULTIFILLBLANK.getActionName())){
|
||||
ExamQuMultiFillblank examQuMultiFillblank = examQuMultiFillblankDao.selectById(question.getCopyFromId());
|
||||
} else if (quType.equals(QuType.MULTIFILLBLANK.getActionName())) {
|
||||
List<ExamQuMultiFillblank> multiFillblanksList = examQuMultiFillblankService.selectQuMultiFillblank(question.getCopyFromId());
|
||||
for (ExamQuMultiFillblank examQuMultiFillblank : multiFillblanksList) {
|
||||
examQuMultiFillblank.setId(ToolUtil.getSurFaceId());
|
||||
examQuMultiFillblank.setCreateTime(DateUtil.getTimeAndToString());
|
||||
examQuMultiFillblank.setQuId(question.getId());
|
||||
if (examQuMultiFillblank != null) {
|
||||
examQuMultiFillblankDao.insert(examQuMultiFillblank);
|
||||
}
|
||||
if (!multiFillblanksList.isEmpty()) {
|
||||
examQuMultiFillblankService.createEntity(multiFillblanksList, StrUtil.EMPTY);
|
||||
}
|
||||
else if (quType.equals(QuType.BIGQU.getActionName())){
|
||||
}
|
||||
else if (quType.equals(QuType.CHENRADIO.getActionName()) || quType.equals(QuType.CHENCHECKBOX.getActionName()) || quType.equals(QuType.CHENSCORE.getActionName())
|
||||
} else if (quType.equals(QuType.BIGQU.getActionName())) {
|
||||
} else if (quType.equals(QuType.CHENRADIO.getActionName()) || quType.equals(QuType.CHENCHECKBOX.getActionName()) || quType.equals(QuType.CHENSCORE.getActionName())
|
||||
|| quType.equals(QuType.CHENFBK.getActionName()) || quType.equals(QuType.COMPCHENRADIO.getActionName())) {
|
||||
ExamQuChenRow examQuChenRow = examQuChenRowDao.selectById(question.getCopyFromId());
|
||||
ExamQuChenColumn examQuChenColumn = examQuChenColumnDao.selectById(question.getCopyFromId());
|
||||
List<ExamQuChenRow> examQuChenRowList = examQuChenRowService.selectQuChenRow(question.getCopyFromId());
|
||||
List<ExamQuChenColumn> examQuChenColumnList = examQuChenColumnService.selectQuChenColumn(question.getCopyFromId());
|
||||
for (ExamQuChenRow examQuChenRow : examQuChenRowList) {
|
||||
examQuChenRow.setId(ToolUtil.getSurFaceId());
|
||||
examQuChenRow.setCreateTime(DateUtil.getTimeAndToString());
|
||||
examQuChenRow.setQuId(question.getId());
|
||||
}
|
||||
if (!examQuChenRowList.isEmpty()) {
|
||||
examQuChenRowService.createEntity(examQuChenRowList, StrUtil.EMPTY);
|
||||
}
|
||||
for (ExamQuChenColumn examQuChenColumn : examQuChenColumnList) {
|
||||
examQuChenColumn.setId(ToolUtil.getSurFaceId());
|
||||
examQuChenColumn.setCreateTime(DateUtil.getTimeAndToString());
|
||||
examQuChenColumn.setQuId(question.getId());
|
||||
if (examQuChenRow != null) {
|
||||
examQuChenRowDao.insert(examQuChenRow);
|
||||
}
|
||||
if (examQuChenColumn != null) {
|
||||
examQuChenColumnDao.insert(examQuChenColumn);
|
||||
if (!examQuChenColumnList.isEmpty()) {
|
||||
examQuChenColumnService.createEntity(examQuChenColumnList, StrUtil.EMPTY);
|
||||
}
|
||||
} else if (quType.equals(QuType.SCORE.getActionName())) {
|
||||
List<ExamQuScore> examQuScoreList = examQuScoreService.selectQuScore(question.getCopyFromId());
|
||||
for (ExamQuScore examQuScore : examQuScoreList) {
|
||||
examQuScore.setId(ToolUtil.getSurFaceId());
|
||||
examQuScore.setCreateTime(DateUtil.getTimeAndToString());
|
||||
examQuScore.setQuId(question.getId());
|
||||
}
|
||||
if (!examQuScoreList.isEmpty()) {
|
||||
examQuScoreService.createEntity(examQuScoreList, StrUtil.EMPTY);
|
||||
}
|
||||
} else if (quType.equals(QuType.ORDERQU.getActionName())) {
|
||||
List<ExamQuOrderby> examQuOrderbyList = examQuOrderbyService.selectQuOrderby(question.getCopyFromId());
|
||||
for (ExamQuOrderby examQuOrderby : examQuOrderbyList) {
|
||||
examQuOrderby.setId(ToolUtil.getSurFaceId());
|
||||
examQuOrderby.setCreateTime(DateUtil.getTimeAndToString());
|
||||
examQuOrderby.setQuId(question.getId());
|
||||
}
|
||||
if (!examQuOrderbyList.isEmpty()) {
|
||||
examQuOrderbyService.createEntity(examQuOrderbyList, StrUtil.EMPTY);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Question> queryQuestionMationCopyById(String surveyCopyId) {
|
||||
QueryWrapper<Question> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq(MybatisPlusUtil.toColumns(Question::getBelongId), surveyCopyId);
|
||||
queryWrapper.eq(MybatisPlusUtil.toColumns(Question::getTag), CommonNumConstants.NUM_TWO);
|
||||
queryWrapper.ne(MybatisPlusUtil.toColumns(Question::getQuTag), CommonNumConstants.NUM_TWO);
|
||||
queryWrapper.eq(MybatisPlusUtil.toColumns(Question::getVisibility), CommonNumConstants.NUM_ONE);
|
||||
return list(queryWrapper);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -130,6 +130,7 @@ public class ExamServiceImpl implements ExamService {
|
|||
}
|
||||
}
|
||||
*/
|
||||
|
||||
/**
|
||||
* 获取试卷题目信息
|
||||
*
|
||||
|
@ -1018,7 +1019,6 @@ public class ExamServiceImpl implements ExamService {
|
|||
getQuestionOptionListMation(question);
|
||||
getQuestionOptionReportListMation(question);
|
||||
}
|
||||
|
||||
outputObject.setBean(surveyMation);
|
||||
outputObject.setBeans(questions);
|
||||
outputObject.settotal(1);
|
||||
|
@ -2484,7 +2484,7 @@ public class ExamServiceImpl implements ExamService {
|
|||
}
|
||||
}
|
||||
for (Map<String, Object> question : questions) {
|
||||
question.put("pageNo", pageNo);
|
||||
question.put("F", pageNo);
|
||||
getQuestionOptionListMation(question);
|
||||
// 知识点数量回显
|
||||
String knowledgeIds = question.containsKey("knowledgeIds") ? question.get("knowledgeIds").toString() : ",";
|
||||
|
|
|
@ -14,5 +14,7 @@ public interface ExamQuCheckboxService extends SkyeyeBusinessService<ExamQuCheck
|
|||
|
||||
void removeByQuId(String quId);
|
||||
|
||||
List<ExamQuCheckbox> selectQuChenbox(String copyFromId);
|
||||
|
||||
// void queryExamQuCheckboxListById(InputObject inputObject, OutputObject outputObject);
|
||||
}
|
||||
|
|
|
@ -103,4 +103,12 @@ public class ExamQuCheckboxServiceImpl extends SkyeyeBusinessServiceImpl<ExamQuC
|
|||
updateWrapper.eq(MybatisPlusUtil.toColumns(ExamQuCheckbox::getQuId),quId);
|
||||
remove(updateWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ExamQuCheckbox> selectQuChenbox(String copyFromId) {
|
||||
QueryWrapper<ExamQuCheckbox> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq(MybatisPlusUtil.toColumns(ExamQuCheckbox::getQuId),copyFromId);
|
||||
queryWrapper.eq(MybatisPlusUtil.toColumns(ExamQuCheckbox::getVisibility),CommonNumConstants.NUM_ONE);
|
||||
return list(queryWrapper);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -15,4 +15,6 @@ public interface ExamQuChenColumnService extends SkyeyeBusinessService<ExamQuChe
|
|||
void changeVisibility(InputObject inputObject, OutputObject outputObject);
|
||||
|
||||
void removeByQuId(String quId);
|
||||
|
||||
List<ExamQuChenColumn> selectQuChenColumn(String copyFromId);
|
||||
}
|
||||
|
|
|
@ -129,4 +129,12 @@ public class ExamQuChenColumnServiceImpl extends SkyeyeBusinessServiceImpl<ExamQ
|
|||
updateWrapper.eq(MybatisPlusUtil.toColumns(ExamQuChenColumn::getQuId), quId);
|
||||
update(updateWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ExamQuChenColumn> selectQuChenColumn(String copyFromId) {
|
||||
QueryWrapper<ExamQuChenColumn> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq(MybatisPlusUtil.toColumns(ExamQuChenColumn::getQuId), copyFromId);
|
||||
queryWrapper.eq(MybatisPlusUtil.toColumns(ExamQuChenColumn::getVisibility), CommonNumConstants.NUM_ONE);
|
||||
return list(queryWrapper);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -19,4 +19,6 @@ public interface ExamQuChenRowService extends SkyeyeBusinessService<ExamQuChenRo
|
|||
void changeVisibility(String quId, String createId);
|
||||
|
||||
void removeByQuId(String quId);
|
||||
|
||||
List<ExamQuChenRow> selectQuChenRow(String copyFromId);
|
||||
}
|
||||
|
|
|
@ -9,7 +9,6 @@ import com.skyeye.common.util.mybatisplus.MybatisPlusUtil;
|
|||
import com.skyeye.exam.examquchenrow.dao.ExamQuChenRowDao;
|
||||
import com.skyeye.exam.examquchenrow.entity.ExamQuChenRow;
|
||||
import com.skyeye.exam.examquchenrow.service.ExamQuChenRowService;
|
||||
import org.apache.ibatis.annotations.Update;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
|
@ -21,6 +20,7 @@ public class ExamQuChenRowServiceImpl extends SkyeyeBusinessServiceImpl<ExamQuCh
|
|||
|
||||
@Autowired
|
||||
private ExamQuChenRowService examQuChenRowService;
|
||||
|
||||
@Override
|
||||
public void saveRowEntity(List<ExamQuChenRow> quRow, String userId) {
|
||||
createEntity(quRow, userId);
|
||||
|
@ -63,4 +63,12 @@ public class ExamQuChenRowServiceImpl extends SkyeyeBusinessServiceImpl<ExamQuCh
|
|||
updateWrapper.eq(MybatisPlusUtil.toColumns(ExamQuChenRow::getQuId), quId);
|
||||
remove(updateWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ExamQuChenRow> selectQuChenRow(String copyFromId) {
|
||||
QueryWrapper<ExamQuChenRow> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq(MybatisPlusUtil.toColumns(ExamQuChenRow::getQuId), copyFromId);
|
||||
queryWrapper.eq(MybatisPlusUtil.toColumns(ExamQuChenRow::getVisibility), CommonNumConstants.NUM_ONE);
|
||||
return list(queryWrapper);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -14,4 +14,6 @@ public interface ExamQuMultiFillblankService extends SkyeyeBusinessService<ExamQ
|
|||
void changeVisibility(InputObject inputObject, OutputObject outputObject);
|
||||
|
||||
void removeByQuId(String quId);
|
||||
|
||||
List<ExamQuMultiFillblank> selectQuMultiFillblank(String copyFromId);
|
||||
}
|
||||
|
|
|
@ -89,4 +89,12 @@ public class ExamQuMultiFillblankControllerImpl extends SkyeyeBusinessServiceImp
|
|||
updateWrapper.eq(MybatisPlusUtil.toColumns(ExamQuMultiFillblank::getQuId),quId);
|
||||
remove(updateWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ExamQuMultiFillblank> selectQuMultiFillblank(String copyFromId) {
|
||||
QueryWrapper<ExamQuMultiFillblank> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq(MybatisPlusUtil.toColumns(ExamQuMultiFillblank::getQuId),copyFromId);
|
||||
queryWrapper.eq(MybatisPlusUtil.toColumns(ExamQuMultiFillblank::getVisibility),CommonNumConstants.NUM_ONE);
|
||||
return list(queryWrapper);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -14,4 +14,6 @@ public interface ExamQuOrderbyService extends SkyeyeBusinessService<ExamQuOrderb
|
|||
void changeVisibility(InputObject inputObject, OutputObject outputObject);
|
||||
|
||||
void removeByQuId(String quId);
|
||||
|
||||
List<ExamQuOrderby> selectQuOrderby(String copyFromId);
|
||||
}
|
||||
|
|
|
@ -89,4 +89,12 @@ public class ExamQuOrderbyServiceImpl extends SkyeyeBusinessServiceImpl<ExamQuOr
|
|||
updateWrapper.eq(MybatisPlusUtil.toColumns(ExamQuOrderby::getQuId), quId);
|
||||
remove(updateWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ExamQuOrderby> selectQuOrderby(String copyFromId) {
|
||||
QueryWrapper<ExamQuOrderby> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq(MybatisPlusUtil.toColumns(ExamQuOrderby::getQuId), copyFromId);
|
||||
queryWrapper.eq(MybatisPlusUtil.toColumns(ExamQuOrderby::getVisibility), CommonNumConstants.NUM_ONE);
|
||||
return list(queryWrapper);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -21,4 +21,6 @@ public interface ExamQuRadioService extends SkyeyeBusinessService<ExamQuRadio> {
|
|||
void changeVisibility(InputObject inputObject, OutputObject outputObject);
|
||||
|
||||
void removeByQuId(String quId);
|
||||
|
||||
List<ExamQuRadio> selectQuRadio(String copyFromId);
|
||||
}
|
||||
|
|
|
@ -106,5 +106,14 @@ public class ExamQuRadioServiceImpl extends SkyeyeBusinessServiceImpl<ExamQuRadi
|
|||
remove(updateWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ExamQuRadio> selectQuRadio(String copyFromId) {
|
||||
QueryWrapper<ExamQuRadio> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq(MybatisPlusUtil.toColumns(ExamQuRadio::getQuId),copyFromId);
|
||||
queryWrapper.eq(MybatisPlusUtil.toColumns(ExamQuRadio::getVisibility),CommonNumConstants.NUM_ONE);
|
||||
List<ExamQuRadio> examQuRadioList = list(queryWrapper);
|
||||
return examQuRadioList;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -19,5 +19,7 @@ public interface ExamQuScoreService extends SkyeyeBusinessService<ExamQuScore> {
|
|||
void saveList(List<ExamQuScore> list, String quId, String userId);
|
||||
|
||||
void changeVisibility(InputObject inputObject, OutputObject outputObject);
|
||||
|
||||
List<ExamQuScore> selectQuScore(String copyFromId);
|
||||
}
|
||||
|
||||
|
|
|
@ -91,4 +91,12 @@ public class ExamQuScoreServiceImpl extends SkyeyeBusinessServiceImpl<ExamQuScor
|
|||
update(updateWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ExamQuScore> selectQuScore(String copyFromId) {
|
||||
QueryWrapper<ExamQuScore> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq(MybatisPlusUtil.toColumns(ExamQuScore::getQuId), copyFromId);
|
||||
queryWrapper.eq(MybatisPlusUtil.toColumns(ExamQuScore::getVisibility), CommonNumConstants.NUM_ONE);
|
||||
return list(queryWrapper);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -5,6 +5,8 @@ import com.skyeye.common.object.InputObject;
|
|||
import com.skyeye.common.object.OutputObject;
|
||||
import com.skyeye.exam.examsurveyanswer.entity.ExamSurveyAnswer;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @ClassName: ExamSurveyAnswerService
|
||||
* @Description: 试卷回答信息表管理服务接口层
|
||||
|
@ -17,4 +19,6 @@ public interface ExamSurveyAnswerService extends SkyeyeBusinessService<ExamSurve
|
|||
void queryMySurveyAnswerList(InputObject inputObject, OutputObject outputObject);
|
||||
|
||||
ExamSurveyAnswer queryWhetherExamIngByStuId(String userId, String id);
|
||||
|
||||
List<ExamSurveyAnswer> querySurveyAnswer(String surveyId, String answerId, String userId);
|
||||
}
|
||||
|
|
|
@ -9,7 +9,6 @@ import com.skyeye.common.util.mybatisplus.MybatisPlusUtil;
|
|||
import com.skyeye.exam.examsurveyanswer.dao.ExamSurveyAnswerDao;
|
||||
import com.skyeye.exam.examsurveyanswer.entity.ExamSurveyAnswer;
|
||||
import com.skyeye.exam.examsurveyanswer.service.ExamSurveyAnswerService;
|
||||
import com.skyeye.exception.CustomException;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
@ -45,4 +44,13 @@ public class ExamSurveyAnswerServiceImpl extends SkyeyeBusinessServiceImpl<ExamS
|
|||
ExamSurveyAnswer answer = getOne(queryWrapper);
|
||||
return answer;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ExamSurveyAnswer> querySurveyAnswer(String surveyId, String answerId, String userId) {
|
||||
QueryWrapper<ExamSurveyAnswer> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq(MybatisPlusUtil.toColumns(ExamSurveyAnswer::getSurveyId), surveyId);
|
||||
queryWrapper.eq(MybatisPlusUtil.toColumns(ExamSurveyAnswer::getId), answerId);
|
||||
queryWrapper.eq(MybatisPlusUtil.toColumns(ExamSurveyAnswer::getCreateId), userId);
|
||||
return list(queryWrapper);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -121,4 +121,19 @@ public class ExamSurveyDirectoryController {
|
|||
public void takeExam(InputObject inputObject, OutputObject outputObject) {
|
||||
examSurveyDirectoryService.takeExam(inputObject, outputObject);
|
||||
}
|
||||
|
||||
/**
|
||||
* 手动结束试卷
|
||||
*
|
||||
* @param inputObject 入参以及用户信息等获取对象
|
||||
* @param outputObject 出参以及提示信息的返回值对象
|
||||
*/
|
||||
@ApiOperation(id = "updateExamMationEndById", value = "手动结束试卷", method = "POST", allUse = "1")
|
||||
@ApiImplicitParams({
|
||||
@ApiImplicitParam(id = "id", name = "id", value = "试卷id",required = "required")})
|
||||
@RequestMapping("/post/ExamSurveyDirectoryController/updateExamMationEndById")
|
||||
public void updateExamMationEndById(InputObject inputObject, OutputObject outputObject) {
|
||||
examSurveyDirectoryService.updateExamMationEndById(inputObject, outputObject);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -5,6 +5,8 @@ import com.skyeye.common.object.InputObject;
|
|||
import com.skyeye.common.object.OutputObject;
|
||||
import com.skyeye.exam.examsurveydirectory.entity.ExamSurveyDirectory;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @ClassName: ExamSurveyDirectoryService
|
||||
* @Description: 试卷管理服务接口层
|
||||
|
@ -22,4 +24,6 @@ public interface ExamSurveyDirectoryService extends SkyeyeBusinessService<ExamSu
|
|||
ExamSurveyDirectory takeExam(InputObject inputObject, OutputObject outputObject);
|
||||
|
||||
void copyExamDirectory(InputObject inputObject, OutputObject outputObject);
|
||||
|
||||
void updateExamMationEndById(InputObject inputObject, OutputObject outputObject);
|
||||
}
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
package com.skyeye.exam.examsurveydirectory.service.impl;
|
||||
|
||||
import cn.hutool.core.io.unit.DataUnit;
|
||||
import cn.hutool.core.util.ObjUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
||||
import com.skyeye.annotation.service.SkyeyeService;
|
||||
|
@ -12,6 +13,7 @@ import com.skyeye.common.object.OutputObject;
|
|||
import com.skyeye.common.util.DateUtil;
|
||||
import com.skyeye.common.util.ToolUtil;
|
||||
import com.skyeye.common.util.mybatisplus.MybatisPlusUtil;
|
||||
import com.skyeye.common.util.question.QuType;
|
||||
import com.skyeye.eve.Examquestion.dao.QuestionDao;
|
||||
import com.skyeye.eve.Examquestion.entity.Question;
|
||||
import com.skyeye.eve.Examquestion.service.QuestionService;
|
||||
|
@ -27,7 +29,6 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
|
@ -141,7 +142,7 @@ public class ExamSurveyDirectoryServiceImpl extends SkyeyeBusinessServiceImpl<Ex
|
|||
public void copyExamDirectory(InputObject inputObject, OutputObject outputObject) {
|
||||
ExamSurveyDirectory examSurveyDirectories = new ExamSurveyDirectory();
|
||||
Map<String, Object> map = inputObject.getParams();
|
||||
String quId = map.get("id").toString();//试卷id
|
||||
String examDirectoryId = map.get("id").toString();//试卷id
|
||||
String userId = InputObject.getLogParamsStatic().get("id").toString();
|
||||
String surveyId = ToolUtil.getSurFaceId();
|
||||
examSurveyDirectories.setId(surveyId);
|
||||
|
@ -149,17 +150,15 @@ public class ExamSurveyDirectoryServiceImpl extends SkyeyeBusinessServiceImpl<Ex
|
|||
examSurveyDirectories.setSurveyModel(1);
|
||||
examSurveyDirectories.setCreateId(userId);
|
||||
examSurveyDirectories.setCreateTime(DateUtil.getTimeAndToString());
|
||||
List<Question> questionList = Collections.singletonList(questionDao.selectById(quId));
|
||||
List<Question> questionList = questionService.queryQuestionMationCopyById(examDirectoryId);
|
||||
for (Question question : questionList) {
|
||||
question.setCopyFromId(quId);
|
||||
question.setCopyFromId(question.getId());
|
||||
question.setId(ToolUtil.getSurFaceId());
|
||||
question.setCreateTime(DateUtil.getTimeAndToString());
|
||||
question.setBelongId(surveyId);
|
||||
questionService.copyQuestionListMation(question);
|
||||
}
|
||||
// questionService.createEntity(questions, userId);
|
||||
|
||||
|
||||
questionService.createEntity(questionList, StrUtil.EMPTY);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -190,4 +189,26 @@ public class ExamSurveyDirectoryServiceImpl extends SkyeyeBusinessServiceImpl<Ex
|
|||
update(updateWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateExamMationEndById(InputObject inputObject, OutputObject outputObject) {
|
||||
Map<String, Object> map = inputObject.getParams();
|
||||
String examSurveyDirectoryId = map.get("id").toString();
|
||||
QueryWrapper<ExamSurveyDirectory> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq(MybatisPlusUtil.toColumns(ExamSurveyDirectory::getId), examSurveyDirectoryId);
|
||||
ExamSurveyDirectory examSurveyDirectory = getOne(queryWrapper);
|
||||
if (examSurveyDirectory != null && ObjUtil.isNotEmpty(examSurveyDirectory)) {
|
||||
if (examSurveyDirectory.getSurveyState().equals(CommonNumConstants.NUM_ONE)) {
|
||||
String realEndTime = DateUtil.getTimeAndToString();
|
||||
UpdateWrapper<ExamSurveyDirectory> updateWrapper = new UpdateWrapper<>();
|
||||
updateWrapper.eq(MybatisPlusUtil.toColumns(ExamSurveyDirectory::getId), examSurveyDirectoryId);
|
||||
updateWrapper.set(MybatisPlusUtil.toColumns(ExamSurveyDirectory::getRealEndTime), realEndTime);
|
||||
updateWrapper.set(MybatisPlusUtil.toColumns(ExamSurveyDirectory::getSurveyState), CommonNumConstants.NUM_TWO);
|
||||
updateWrapper.set(MybatisPlusUtil.toColumns(ExamSurveyDirectory::getEndType), CommonNumConstants.NUM_ONE);
|
||||
update(updateWrapper);
|
||||
}
|
||||
}
|
||||
else {
|
||||
throw new CustomException("该试卷信息不存在!");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -12,6 +12,11 @@ import com.skyeye.annotation.api.Property;
|
|||
import com.skyeye.annotation.cache.RedisCacheField;
|
||||
import com.skyeye.common.constans.RedisConstants;
|
||||
import com.skyeye.common.entity.features.BaseGeneralInfo;
|
||||
import com.skyeye.common.enumeration.EnableEnum;
|
||||
import com.skyeye.coupon.enums.CouponTakeType;
|
||||
import com.skyeye.coupon.enums.CouponValidityType;
|
||||
import com.skyeye.coupon.enums.PromotionDiscountType;
|
||||
import com.skyeye.coupon.enums.PromotionMaterialScope;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
@ -39,7 +44,7 @@ public class Coupon extends BaseGeneralInfo {
|
|||
private String templateId;
|
||||
|
||||
@TableField(value = "enabled")
|
||||
@ApiModelProperty(value = "状态,参考#EnableEnum", required = "required,num")
|
||||
@ApiModelProperty(value = "状态", required = "required,num", enumClass = EnableEnum.class)
|
||||
private Integer enabled;
|
||||
|
||||
@TableField(value = "total_count")
|
||||
|
@ -51,7 +56,7 @@ public class Coupon extends BaseGeneralInfo {
|
|||
private Integer takeLimitCount;
|
||||
|
||||
@TableField(value = "take_type")
|
||||
@ApiModelProperty(value = "领取方式,参考#CouponTakeType", required = "required,num")
|
||||
@ApiModelProperty(value = "领取方式", required = "required,num",enumClass = CouponTakeType.class)
|
||||
private Integer takeType;
|
||||
|
||||
@TableField(value = "use_price")
|
||||
|
@ -59,11 +64,11 @@ public class Coupon extends BaseGeneralInfo {
|
|||
private String usePrice;
|
||||
|
||||
@TableField(value = "product_scope")
|
||||
@ApiModelProperty(value = "商品范围,参考#PromotionMaterialScope", required = "required,num")
|
||||
@ApiModelProperty(value = "商品范围", required = "required,num", enumClass = PromotionMaterialScope.class)
|
||||
private Integer productScope;
|
||||
|
||||
@TableField(value = "validity_type")
|
||||
@ApiModelProperty(value = "生效日期类型,参考#CouponValidityType", required = "required,num")
|
||||
@ApiModelProperty(value = "生效日期类型", required = "required,num",enumClass = CouponValidityType.class)
|
||||
private Integer validityType;
|
||||
|
||||
@TableField(value = "valid_start_time")
|
||||
|
@ -83,7 +88,7 @@ public class Coupon extends BaseGeneralInfo {
|
|||
private Integer fixedEndTerm;
|
||||
|
||||
@TableField(value = "discount_type")
|
||||
@ApiModelProperty(value = "折扣类型,参考#PromotionDiscountType", required = "required,num")
|
||||
@ApiModelProperty(value = "折扣类型", required = "required,num",enumClass = PromotionDiscountType.class)
|
||||
private Integer discountType;
|
||||
|
||||
@TableField(value = "discount_percent")
|
||||
|
|
|
@ -11,6 +11,10 @@ import com.skyeye.annotation.api.ApiModel;
|
|||
import com.skyeye.annotation.api.ApiModelProperty;
|
||||
import com.skyeye.annotation.api.Property;
|
||||
import com.skyeye.common.entity.features.OperatorUserInfo;
|
||||
import com.skyeye.coupon.enums.CouponTakeType;
|
||||
import com.skyeye.coupon.enums.CouponUseState;
|
||||
import com.skyeye.coupon.enums.PromotionDiscountType;
|
||||
import com.skyeye.coupon.enums.PromotionMaterialScope;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
@ -42,11 +46,11 @@ public class CouponUse extends OperatorUserInfo {
|
|||
private Map<String, Object> couponMation;
|
||||
|
||||
@TableField(value = "state")
|
||||
@Property(value = "状态,参考#CouponUseState")
|
||||
@Property(value = "状态", enumClass = CouponUseState.class)
|
||||
private Integer state;
|
||||
|
||||
@TableField(value = "task_type")
|
||||
@ApiModelProperty(value = "领取类型", required = "required")
|
||||
@ApiModelProperty(value = "领取类型", required = "required", enumClass = CouponTakeType.class)
|
||||
private Integer taskType;
|
||||
|
||||
@TableField(value = "use_price")
|
||||
|
@ -54,7 +58,7 @@ public class CouponUse extends OperatorUserInfo {
|
|||
private String usePrice;
|
||||
|
||||
@TableField(value = "product_scope")
|
||||
@Property(value = "商品范围")
|
||||
@Property(value = "商品范围", enumClass = PromotionMaterialScope.class)
|
||||
private Integer productScope;
|
||||
|
||||
@TableField(value = "valid_start_time")
|
||||
|
@ -66,7 +70,7 @@ public class CouponUse extends OperatorUserInfo {
|
|||
private String validEndTime;
|
||||
|
||||
@TableField(value = "discount_type")
|
||||
@Property(value = "折扣类型")
|
||||
@Property(value = "折扣类型", enumClass = PromotionDiscountType.class)
|
||||
private Integer discountType;
|
||||
|
||||
@TableField(value = "discount_percent")
|
||||
|
|
|
@ -12,6 +12,7 @@ import com.skyeye.annotation.api.ApiModelProperty;
|
|||
import com.skyeye.annotation.api.Property;
|
||||
import com.skyeye.annotation.cache.RedisCacheField;
|
||||
import com.skyeye.common.entity.features.AreaInfo;
|
||||
import com.skyeye.order.enums.*;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
@ -40,11 +41,11 @@ public class Order extends AreaInfo {
|
|||
private String oddNumber;
|
||||
|
||||
@TableField("type")
|
||||
@ApiModelProperty(value = "订单类型,参考#ShopOrderType", required = "required")
|
||||
@ApiModelProperty(value = "订单类型", required = "required",enumClass = ShopOrderType.class)
|
||||
private Integer type;
|
||||
|
||||
@TableField("terminal")
|
||||
@ApiModelProperty(value = "订单来源,参考#ShopOrderTerminal", required = "required")
|
||||
@ApiModelProperty(value = "订单来源", required = "required", enumClass = ShopOrderTerminal.class)
|
||||
private Integer terminal;
|
||||
|
||||
@TableField("user_ip")
|
||||
|
@ -52,7 +53,7 @@ public class Order extends AreaInfo {
|
|||
private String userIp;
|
||||
|
||||
@TableField("state")
|
||||
@Property(value = "状态, 参考#ShopOrderState")
|
||||
@Property(value = "状态",enumClass = ShopOrderState.class)
|
||||
private Integer state;
|
||||
|
||||
@TableField("count")
|
||||
|
@ -68,11 +69,11 @@ public class Order extends AreaInfo {
|
|||
private String cancelTime;
|
||||
|
||||
@TableField("cancel_type")
|
||||
@Property(value = "取消类型,参考#ShopOrderCancelType")
|
||||
@Property(value = "取消类型",enumClass = ShopOrderCancelType.class)
|
||||
private Integer cancelType;
|
||||
|
||||
@TableField("comment_state")
|
||||
@Property(value = "是否评价,参考#ShopOrderCommentState")
|
||||
@Property(value = "是否评价", enumClass = ShopOrderCommentState.class)
|
||||
private Integer commentState;
|
||||
|
||||
@TableField("brokerage_user_id")
|
||||
|
@ -88,7 +89,7 @@ public class Order extends AreaInfo {
|
|||
private String payType;
|
||||
|
||||
@TableField("total_price")
|
||||
@Property(value = "商品总价,单位:分")
|
||||
@ApiModelProperty(value = "商品总价,单位:分",required = "required")
|
||||
private String totalPrice;
|
||||
|
||||
@TableField("discount_price")
|
||||
|
|
|
@ -15,6 +15,7 @@ import com.skyeye.common.enumeration.WhetherEnum;
|
|||
import com.skyeye.order.enums.OrderCommentType;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
|
@ -85,4 +86,12 @@ public class OrderComment extends OperatorUserInfo {
|
|||
@TableField(value = "context")
|
||||
@ApiModelProperty(value = "评价内容", required = "required")
|
||||
private String context;
|
||||
|
||||
@TableField(exist = false)
|
||||
@Property(value = "客户追评")
|
||||
private Map<String,Object> additionalReview;
|
||||
|
||||
@TableField(exist = false)
|
||||
@Property(value = "商家回复")
|
||||
private List<Map<String, Object>> merchantReply;
|
||||
}
|
||||
|
|
|
@ -11,6 +11,7 @@ import com.skyeye.annotation.api.ApiModel;
|
|||
import com.skyeye.annotation.api.ApiModelProperty;
|
||||
import com.skyeye.annotation.api.Property;
|
||||
import com.skyeye.common.entity.features.OperatorUserInfo;
|
||||
import com.skyeye.common.enumeration.WhetherEnum;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Map;
|
||||
|
@ -73,7 +74,7 @@ public class OrderItem extends OperatorUserInfo {
|
|||
private Integer count;
|
||||
|
||||
@TableField("comment_state")
|
||||
@Property(value = "是否评价")
|
||||
@Property(value = "是否评价",enumClass = WhetherEnum.class)
|
||||
private Integer commentState;
|
||||
|
||||
@TableField("price")
|
||||
|
|
|
@ -28,4 +28,6 @@ public interface OrderItemService extends SkyeyeBusinessService<OrderItem> {
|
|||
Map<String, List<OrderItem>> queryListByParentId(List<String> idList);
|
||||
|
||||
void setValueAndCreateEntity(Order order, String userId);
|
||||
|
||||
void updateCommentStateById(String id);
|
||||
}
|
||||
|
|
|
@ -35,4 +35,6 @@ public interface OrderService extends SkyeyeBusinessService<Order> {
|
|||
void changeOrderAdjustPrice(InputObject inputObject, OutputObject outputObject);
|
||||
|
||||
void updateOrderToPayState(InputObject inputObject, OutputObject outputObject);
|
||||
|
||||
void setOrderCancle(String orderId);
|
||||
}
|
||||
|
|
|
@ -15,6 +15,7 @@ import com.github.pagehelper.PageHelper;
|
|||
import com.skyeye.annotation.service.SkyeyeService;
|
||||
import com.skyeye.base.business.service.impl.SkyeyeBusinessServiceImpl;
|
||||
import com.skyeye.common.constans.CommonConstants;
|
||||
import com.skyeye.common.constans.CommonNumConstants;
|
||||
import com.skyeye.common.entity.search.CommonPageInfo;
|
||||
import com.skyeye.common.enumeration.WhetherEnum;
|
||||
import com.skyeye.common.object.InputObject;
|
||||
|
@ -36,8 +37,10 @@ import com.skyeye.store.service.ShopStoreService;
|
|||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @ClassName: OrderCommentServiceImpl
|
||||
|
@ -71,33 +74,66 @@ public class OrderCommentServiceImpl extends SkyeyeBusinessServiceImpl<OrderComm
|
|||
|
||||
@Override
|
||||
public void validatorEntity(OrderComment orderComment) {
|
||||
if (orderComment.getType() == OrderCommentType.MERCHANT.getKey() ||
|
||||
orderComment.getType() == OrderCommentType.CUSTOMERLATER.getKey()) {
|
||||
Integer commentType = orderComment.getType();
|
||||
if (commentType != OrderCommentType.MERCHANT.getKey()
|
||||
&& commentType != OrderCommentType.CUSTOMERLATER.getKey()
|
||||
&& commentType != OrderCommentType.CUSTOMERFiRST.getKey()) {
|
||||
throw new CustomException("type值非法");
|
||||
}
|
||||
if (commentType == OrderCommentType.MERCHANT.getKey() ||
|
||||
commentType == OrderCommentType.CUSTOMERLATER.getKey()) {
|
||||
if (StrUtil.isEmpty(orderComment.getParentId())) {
|
||||
throw new CustomException("商家回复评价和客户追评,父级评价id不能为空.");
|
||||
}
|
||||
}
|
||||
if (orderComment.getType() == OrderCommentType.CUSTOMERFiRST.getKey()) {
|
||||
if (commentType == OrderCommentType.CUSTOMERFiRST.getKey()) {
|
||||
if (StrUtil.isNotEmpty(orderComment.getParentId())) {
|
||||
throw new CustomException("客户的评价无需父级id");
|
||||
}
|
||||
}
|
||||
Integer start = orderComment.getStart();
|
||||
if (ObjectUtil.isNotEmpty(start)) {
|
||||
if (start < 0 || start > 5) {
|
||||
throw new CustomException("评价星级为1-5");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void createPrepose(OrderComment entity) {
|
||||
OrderItem orderItem = orderItemService.selectById(entity.getOrderItemId());
|
||||
// 客户评价判断
|
||||
if (orderItem.getCommentState() == WhetherEnum.DISABLE_USING.getKey()) {// 子订单未评价
|
||||
if (entity.getType() == OrderCommentType.CUSTOMERLATER.getKey()) {
|
||||
throw new CustomException("客户追评,需先进行首评。");
|
||||
}
|
||||
if (entity.getType() == OrderCommentType.CUSTOMERFiRST.getKey()) {// 客户首评
|
||||
Integer start = entity.getStart();
|
||||
if (ObjectUtil.isEmpty(entity.getStart())) {
|
||||
throw new CustomException("首评的星级不能为空");
|
||||
}
|
||||
if (start < 0 || start > 5) {
|
||||
throw new CustomException("评价星级为1-5");
|
||||
}
|
||||
}
|
||||
} else if (orderItem.getCommentState() == WhetherEnum.ENABLE_USING.getKey()) {// 子订单已评价
|
||||
if (entity.getType() == OrderCommentType.CUSTOMERFiRST.getKey()) {// 再次进行首评
|
||||
throw new CustomException("首评只能评价一次。");
|
||||
}
|
||||
if (entity.getType() == OrderCommentType.CUSTOMERLATER.getKey()) {// 追评
|
||||
QueryWrapper<OrderComment> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq(MybatisPlusUtil.toColumns(OrderComment::getOrderItemId), entity.getOrderItemId())
|
||||
.eq(MybatisPlusUtil.toColumns(OrderComment::getCreateId), InputObject.getLogParamsStatic().get("id").toString())
|
||||
.and(wrap -> {
|
||||
String parentId = MybatisPlusUtil.toColumns(OrderComment::getParentId);
|
||||
wrap.isNotNull(parentId).ne(parentId, StrUtil.EMPTY);
|
||||
});
|
||||
OrderComment one = getOne(queryWrapper);
|
||||
if (ObjectUtil.isNotEmpty(one)) {// 客户已追评
|
||||
throw new CustomException("追评只能追评一次");
|
||||
}
|
||||
entity.setStart(null);
|
||||
}
|
||||
}
|
||||
entity.setStoreId(ObjectUtil.isEmpty(orderItem) ? "" : orderItem.getStoreId());// 设置门店id
|
||||
if (entity.getType() == OrderCommentType.CUSTOMERFiRST.getKey() ||
|
||||
entity.getType() == OrderCommentType.CUSTOMERLATER.getKey()) {
|
||||
entity.getType() == OrderCommentType.CUSTOMERLATER.getKey()) {// 顾客新增的评价,商家均未回复
|
||||
entity.setIsComment(WhetherEnum.DISABLE_USING.getKey());
|
||||
}
|
||||
OrderItem orderItem = orderItemService.selectById(entity.getOrderItemId());
|
||||
entity.setStoreId(ObjectUtil.isEmpty(orderItem) ? "" : orderItem.getStoreId());// 设置门店id
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -108,6 +144,7 @@ public class OrderCommentServiceImpl extends SkyeyeBusinessServiceImpl<OrderComm
|
|||
} else {
|
||||
orderService.updateCommonState(orderComment.getOrderId(), ShopOrderCommentState.FINISHED.getKey());
|
||||
}
|
||||
orderItemService.updateCommentStateById(orderComment.getOrderItemId());
|
||||
if (orderComment.getType() == OrderCommentType.MERCHANT.getKey()) {// 商家回复时,修改客户评价状态为已评价
|
||||
UpdateWrapper<OrderComment> updateWrapper = new UpdateWrapper<>();
|
||||
updateWrapper.eq(CommonConstants.ID, orderComment.getParentId());
|
||||
|
@ -152,23 +189,53 @@ public class OrderCommentServiceImpl extends SkyeyeBusinessServiceImpl<OrderComm
|
|||
return queryWrapper;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void queryOrderCommentPageList(InputObject inputObject, OutputObject outputObject) {
|
||||
CommonPageInfo commonPageInfo = inputObject.getParams(CommonPageInfo.class);
|
||||
String typeId = commonPageInfo.getTypeId();
|
||||
Page pages = PageHelper.startPage(commonPageInfo.getPage(), commonPageInfo.getLimit());
|
||||
private List<OrderComment> getOrderCommentListByType(String typeId, Integer type) {
|
||||
QueryWrapper<OrderComment> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq(MybatisPlusUtil.toColumns(OrderComment::getCreateId), typeId)// 创建人id
|
||||
queryWrapper.eq(MybatisPlusUtil.toColumns(OrderComment::getType), type)
|
||||
.and(wrap -> {
|
||||
wrap.eq(MybatisPlusUtil.toColumns(OrderComment::getCreateId), typeId)// 创建人id
|
||||
.or().eq(MybatisPlusUtil.toColumns(OrderComment::getMaterialId), typeId) // 商品id
|
||||
.or().eq(MybatisPlusUtil.toColumns(OrderComment::getOrderItemId), typeId)// 订单子单id
|
||||
.or().eq(MybatisPlusUtil.toColumns(OrderComment::getOrderId), typeId);// 订单id
|
||||
});
|
||||
List<OrderComment> list = list(queryWrapper);
|
||||
iMaterialService.setDataMation(list, OrderComment::getMaterialId);
|
||||
iMaterialNormsService.setDataMation(list, OrderComment::getNormsId);
|
||||
memberService.setDataMation(list, OrderComment::getCreateId);
|
||||
shopStoreService.setDataMation(list, OrderComment::getStoreId);
|
||||
List<Map<String, Object>> mapList = JSONUtil.toList(JSONUtil.toJsonStr(list), null);
|
||||
return list;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void queryOrderCommentPageList(InputObject inputObject, OutputObject outputObject) {
|
||||
CommonPageInfo commonPageInfo = inputObject.getParams(CommonPageInfo.class);
|
||||
String typeId = commonPageInfo.getTypeId();
|
||||
Page pages = PageHelper.startPage(commonPageInfo.getPage(), commonPageInfo.getLimit());
|
||||
List<OrderComment> customerFirst = getOrderCommentListByType(typeId, OrderCommentType.CUSTOMERFiRST.getKey());
|
||||
List<OrderComment> customerLater = getOrderCommentListByType(typeId, OrderCommentType.CUSTOMERLATER.getKey());
|
||||
List<OrderComment> merchantReply = getOrderCommentListByType(typeId, OrderCommentType.MERCHANT.getKey());
|
||||
if (CollectionUtil.isEmpty(customerFirst)) {
|
||||
return;
|
||||
}
|
||||
List<OrderComment> beans = setAdditionalReviewAndMerchantReply(customerFirst, customerLater, merchantReply);// 区分客户追评和商家回复
|
||||
List<Map<String, Object>> mapList = JSONUtil.toList(JSONUtil.toJsonStr(beans), null);
|
||||
outputObject.setBeans(mapList);
|
||||
outputObject.settotal(pages.getTotal());
|
||||
}
|
||||
|
||||
private List<OrderComment> setAdditionalReviewAndMerchantReply(List<OrderComment> customerFirst, List<OrderComment> customerLater, List<OrderComment> merchantReply) {
|
||||
Map<String, OrderComment> customerTowMap = customerLater.stream()
|
||||
.filter(ObjectUtil::isEmpty).collect(Collectors.toMap(OrderComment::getParentId, o -> o));// 客户追评
|
||||
Map<String, List<OrderComment>> merchantReplyMapList = merchantReply.stream()
|
||||
.filter(ObjectUtil::isEmpty).collect(Collectors.groupingBy(OrderComment::getParentId));// 商家回复
|
||||
for (OrderComment item : customerFirst) {
|
||||
if (customerTowMap.containsKey(item.getId())) {
|
||||
item.setAdditionalReview(JSONUtil.toBean(JSONUtil.toJsonStr(customerTowMap.get(item.getId())), null));
|
||||
}
|
||||
if (merchantReplyMapList.containsKey(item.getId())) {
|
||||
item.setMerchantReply(JSONUtil.toBean(JSONUtil.toJsonStr(merchantReplyMapList.get(item.getId())), null));
|
||||
}
|
||||
}
|
||||
return customerFirst;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -7,8 +7,10 @@ package com.skyeye.order.service.impl;
|
|||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.json.JSONUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
||||
import com.skyeye.annotation.service.SkyeyeService;
|
||||
import com.skyeye.base.business.service.impl.SkyeyeBusinessServiceImpl;
|
||||
import com.skyeye.common.constans.CommonConstants;
|
||||
import com.skyeye.common.enumeration.WhetherEnum;
|
||||
import com.skyeye.common.util.mybatisplus.MybatisPlusUtil;
|
||||
import com.skyeye.erp.service.IMaterialNormsService;
|
||||
|
@ -112,4 +114,12 @@ public class OrderItemServiceImpl extends SkyeyeBusinessServiceImpl<OrderItemDao
|
|||
}
|
||||
super.createEntity(order.getOrderItemList(), userId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateCommentStateById(String id){
|
||||
UpdateWrapper<OrderItem> updateWrapper = new UpdateWrapper<>();
|
||||
updateWrapper.eq(CommonConstants.ID, id)
|
||||
.set(MybatisPlusUtil.toColumns(OrderItem::getCommentState), WhetherEnum.ENABLE_USING.getKey());
|
||||
update(updateWrapper);
|
||||
}
|
||||
}
|
|
@ -17,6 +17,7 @@ import com.skyeye.annotation.service.SkyeyeService;
|
|||
import com.skyeye.base.business.service.impl.SkyeyeBusinessServiceImpl;
|
||||
import com.skyeye.common.constans.CommonConstants;
|
||||
import com.skyeye.common.constans.CommonNumConstants;
|
||||
import com.skyeye.common.constans.QuartzConstants;
|
||||
import com.skyeye.common.entity.search.CommonPageInfo;
|
||||
import com.skyeye.common.object.InputObject;
|
||||
import com.skyeye.common.object.OutputObject;
|
||||
|
@ -31,12 +32,15 @@ import com.skyeye.coupon.service.CouponUseMaterialService;
|
|||
import com.skyeye.coupon.service.CouponUseService;
|
||||
import com.skyeye.erp.service.IMaterialNormsService;
|
||||
import com.skyeye.erp.service.IMaterialService;
|
||||
import com.skyeye.eve.rest.quartz.SysQuartzMation;
|
||||
import com.skyeye.eve.service.IAreaService;
|
||||
import com.skyeye.eve.service.IQuartzService;
|
||||
import com.skyeye.exception.CustomException;
|
||||
import com.skyeye.order.config.PayProperties;
|
||||
import com.skyeye.order.dao.OrderDao;
|
||||
import com.skyeye.order.entity.Order;
|
||||
import com.skyeye.order.entity.OrderItem;
|
||||
import com.skyeye.order.enums.ShopOrderCancelType;
|
||||
import com.skyeye.order.enums.ShopOrderCommentState;
|
||||
import com.skyeye.order.enums.ShopOrderState;
|
||||
import com.skyeye.order.service.OrderItemService;
|
||||
|
@ -49,6 +53,8 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.text.DateFormat;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
|
@ -91,6 +97,9 @@ public class OrderServiceImpl extends SkyeyeBusinessServiceImpl<OrderDao, Order>
|
|||
@Autowired
|
||||
private CouponUseMaterialService couponUseMaterialService;
|
||||
|
||||
@Autowired
|
||||
private IQuartzService iQuartzService;
|
||||
|
||||
@Override
|
||||
public void createPrepose(Order order) {
|
||||
// 订单编号
|
||||
|
@ -131,7 +140,6 @@ public class OrderServiceImpl extends SkyeyeBusinessServiceImpl<OrderDao, Order>
|
|||
// 设置商品信息、商品规格信息和优惠券信息
|
||||
iMaterialNormsService.setDataMation(orderItemList, OrderItem::getNormsId);
|
||||
iMaterialService.setDataMation(orderItemList, OrderItem::getMaterialId);
|
||||
// couponUseService.setDataMation(orderItemList, OrderItem::getCouponUseId);
|
||||
for (OrderItem orderItem : orderItemList) {
|
||||
// 获取子单单价 元 -> 分
|
||||
String salePrice = CalculationUtil.multiply(orderItem.getNormsMation().get("salePrice").toString(), "100");
|
||||
|
@ -140,8 +148,8 @@ public class OrderServiceImpl extends SkyeyeBusinessServiceImpl<OrderDao, Order>
|
|||
if (StrUtil.isEmpty(orderItem.getCouponUseId())) {// 没有优惠券
|
||||
orderItem.setPayPrice(orderItem.getPrice());
|
||||
orderItem.setDiscountPrice("0");
|
||||
setLastValue(order, orderItem);
|
||||
return;
|
||||
setLastValue(order, orderItem);// 总单商品数量、子单状态、总单原价、总单应付金额
|
||||
continue;
|
||||
}
|
||||
// 获取优惠券使用条件,即满多少金额可使用。
|
||||
String usePrice = orderItem.getCouponUseMation().get("usePrice").toString();
|
||||
|
@ -179,14 +187,14 @@ public class OrderServiceImpl extends SkyeyeBusinessServiceImpl<OrderDao, Order>
|
|||
orderItem.setCouponPrice(discountLimitPrice);
|
||||
}
|
||||
}
|
||||
setLastValue(order, orderItem);
|
||||
setLastValue(order, orderItem);// 总单商品数量、子单状态、总单原价、总单应付金额
|
||||
}
|
||||
}
|
||||
|
||||
public void setLastValue(Order order, OrderItem orderItem) {
|
||||
order.setCount(order.getCount() + orderItem.getCount());
|
||||
orderItem.setCommentState(ShopOrderCommentState.UNFINISHED.getKey());
|
||||
order.setTotalPrice(CalculationUtil.add(order.getTotalPrice(), orderItem.getPayPrice(), CommonNumConstants.NUM_SIX));
|
||||
order.setTotalPrice(CalculationUtil.add(order.getTotalPrice(), orderItem.getPrice(), CommonNumConstants.NUM_SIX));
|
||||
order.setPayPrice(CalculationUtil.add(order.getPayPrice(), orderItem.getPayPrice(), CommonNumConstants.NUM_SIX));
|
||||
}
|
||||
|
||||
|
@ -205,20 +213,33 @@ public class OrderServiceImpl extends SkyeyeBusinessServiceImpl<OrderDao, Order>
|
|||
}
|
||||
|
||||
private void checkCouponUseMaterial(Order order) {
|
||||
String couponUseId = order.getCouponUseId();
|
||||
if (StrUtil.isEmpty(couponUseId)) {
|
||||
String couponUseId = order.getCouponUseId();//优惠券id
|
||||
double totalPrice = Integer.parseInt(order.getTotalPrice());//总单原价
|
||||
if (StrUtil.isEmpty(couponUseId)) {//没有使用优惠券
|
||||
return;
|
||||
}
|
||||
List<OrderItem> orderItemList = order.getOrderItemList();
|
||||
CouponUse couponUse = couponUseService.selectById(couponUseId);
|
||||
OrderItem orderItem = null;
|
||||
List<OrderItem> orderItemList = order.getOrderItemList();//子单列表
|
||||
|
||||
CouponUse couponUse = couponUseService.selectById(couponUseId);//优惠券信息
|
||||
OrderItem orderItem = null;//优惠券使用商品
|
||||
if (Objects.equals(couponUse.getProductScope(), PromotionMaterialScope.ALL.getKey())) {// 全部商品
|
||||
if (Objects.equals(couponUse.getDiscountType(), PromotionDiscountType.PERCENT.getKey())) {// 百分比折扣
|
||||
orderItem = orderItemList.stream().max(Comparator.comparing(OrderItem::getPrice)).orElse(null);// 获取优惠券使用商品列表中,价格最高的商品
|
||||
} else {// 满减 将优惠券使用到第一个商品
|
||||
orderItemList.get(0).setCouponUseId(couponUseId);
|
||||
orderItemList.get(0).setCouponUseMation(JSONUtil.toBean(JSONUtil.toJsonStr(couponUse), null));// 设置mation方便后续计算价格
|
||||
//卢雨佳
|
||||
double usePrice = Integer.parseInt(couponUse.getUsePrice());//优惠券使用金额
|
||||
if (totalPrice>= usePrice) {//商品价格大于等于优惠券使用金额
|
||||
Optional<OrderItem> maxPriceItem = orderItemList.stream()
|
||||
.max(Comparator.comparing(OrderItem::getPrice));//获取优惠券使用商品列表中,价格最高的商品
|
||||
int index = maxPriceItem
|
||||
.map(item -> orderItemList.indexOf(item))
|
||||
.orElse(-1);//获取最高价格商品在子单列表中的索引
|
||||
orderItemList.get(index).setCouponUseId(couponUseId);
|
||||
orderItemList.get(index).setCouponUseMation(JSONUtil.toBean(JSONUtil.toJsonStr(couponUse), null));// 设置mation方便后续计算价格
|
||||
return;
|
||||
}else {
|
||||
throw new CustomException("商品价格不足以使用优惠券");
|
||||
}
|
||||
}
|
||||
} else if (Objects.equals(couponUse.getProductScope(), PromotionMaterialScope.SPU.getKey())) {// 指定商品
|
||||
List<String> couponUseMaterialIds = couponUseMaterialService.queryListByCouponIds(Collections.singletonList(couponUseId))
|
||||
|
@ -246,6 +267,22 @@ public class OrderServiceImpl extends SkyeyeBusinessServiceImpl<OrderDao, Order>
|
|||
public void createPostpose(Order order, String userId) {
|
||||
orderItemService.setValueAndCreateEntity(order, userId);
|
||||
couponUseService.updateState(order.getCouponUseId());// 更新用户领取的优惠券状态
|
||||
// startUpTaskQuartz(order.getId(), order.getOddNumber(), DateUtil.getTimeAndToString());
|
||||
}
|
||||
|
||||
private void startUpTaskQuartz(String name, String title, String delayedTime) {
|
||||
/// 处理日期 此处delayedTime为当前日期
|
||||
Date stringToDate = DateUtil.getPointTime(delayedTime, DateUtil.YYYY_MM_DD_HH_MM_SS);
|
||||
Date afterOneDay = DateUtil.getAfDate(stringToDate, 1, "d");
|
||||
DateFormat df = new SimpleDateFormat(DateUtil.YYYY_MM_DD_HH_MM_SS);
|
||||
String lastTime = df.format(afterOneDay);
|
||||
// 正式准备启动定时任务
|
||||
SysQuartzMation sysQuartzMation = new SysQuartzMation();
|
||||
sysQuartzMation.setName(name);
|
||||
sysQuartzMation.setTitle(title);
|
||||
sysQuartzMation.setDelayedTime(lastTime);
|
||||
sysQuartzMation.setGroupId(QuartzConstants.QuartzMateMationJobType.SHOP_ORDER_CREATE.getTaskType());
|
||||
iQuartzService.startUpTaskQuartz(sysQuartzMation);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -299,6 +336,7 @@ public class OrderServiceImpl extends SkyeyeBusinessServiceImpl<OrderDao, Order>
|
|||
Map<String, List<OrderItem>> mapByIds = orderItemService.queryListByParentId(idList);
|
||||
for (Order order : list) {
|
||||
order.setOrderItemList(mapByIds.containsKey(order.getId()) ? mapByIds.get(order.getId()) : new ArrayList<>());
|
||||
pennyToYuan(order);// 分 -> 元
|
||||
}
|
||||
iAreaService.setDataMation(list, Order::getProvinceId);
|
||||
iAreaService.setDataMation(list, Order::getCityId);
|
||||
|
@ -361,6 +399,7 @@ public class OrderServiceImpl extends SkyeyeBusinessServiceImpl<OrderDao, Order>
|
|||
Map<String, List<OrderItem>> mapByIds = orderItemService.queryListByParentId(idList);
|
||||
for (Order order : list) {
|
||||
order.setOrderItemList(mapByIds.containsKey(order.getId()) ? mapByIds.get(order.getId()) : new ArrayList<>());
|
||||
pennyToYuan(order);// 分 -> 元
|
||||
}
|
||||
iAreaService.setDataMation(list, Order::getProvinceId);
|
||||
iAreaService.setDataMation(list, Order::getCityId);
|
||||
|
@ -412,9 +451,34 @@ public class OrderServiceImpl extends SkyeyeBusinessServiceImpl<OrderDao, Order>
|
|||
iAreaService.setDataMation(order, Order::getAreaId);
|
||||
iAreaService.setDataMation(order, Order::getTownshipId);
|
||||
shopAddressService.setDataMation(order, Order::getAddressId);
|
||||
pennyToYuan(order);// 分 -> 元
|
||||
return order;
|
||||
}
|
||||
|
||||
private void pennyToYuan(Order order) {// 分 -> 元
|
||||
if (ObjectUtil.isEmpty(order)) {
|
||||
return;
|
||||
}
|
||||
order.setTotalPrice(StrUtil.isEmpty(order.getTotalPrice()) ? "0" : CalculationUtil.divide(order.getTotalPrice(), "100", CommonNumConstants.NUM_SIX));
|
||||
order.setDiscountPrice(StrUtil.isEmpty(order.getDiscountPrice()) ? "0" : CalculationUtil.divide(order.getDiscountPrice(), "100", CommonNumConstants.NUM_SIX));
|
||||
order.setDeliveryPrice(StrUtil.isEmpty(order.getDeliveryPrice()) ? "0" : CalculationUtil.divide(order.getDeliveryPrice(), "100", CommonNumConstants.NUM_SIX));
|
||||
order.setAdjustPrice(StrUtil.isEmpty(order.getAdjustPrice()) ? "0" : CalculationUtil.divide(order.getAdjustPrice(), "100", CommonNumConstants.NUM_SIX));
|
||||
order.setPayPrice(StrUtil.isEmpty(order.getPayPrice()) ? "0" : CalculationUtil.divide(order.getPayPrice(), "100", CommonNumConstants.NUM_SIX));
|
||||
order.setCouponPrice(StrUtil.isEmpty(order.getCouponPrice()) ? "0" : CalculationUtil.divide(order.getCouponPrice(), "100", CommonNumConstants.NUM_SIX));
|
||||
order.setPointPrice(StrUtil.isEmpty(order.getPointPrice()) ? "0" : CalculationUtil.divide(order.getPointPrice(), "100", CommonNumConstants.NUM_SIX));
|
||||
order.setVipPrice(StrUtil.isEmpty(order.getVipPrice()) ? "0" : CalculationUtil.divide(order.getVipPrice(), "100", CommonNumConstants.NUM_SIX));
|
||||
for (OrderItem orderItem : order.getOrderItemList()) {
|
||||
orderItem.setPrice(StrUtil.isEmpty(orderItem.getPrice()) ? "0" : CalculationUtil.divide(orderItem.getPrice(), "100", CommonNumConstants.NUM_SIX));
|
||||
orderItem.setDiscountPrice(StrUtil.isEmpty(orderItem.getDiscountPrice()) ? "0" : CalculationUtil.divide(orderItem.getDiscountPrice(), "100", CommonNumConstants.NUM_SIX));
|
||||
orderItem.setDeliveryPrice(StrUtil.isEmpty(orderItem.getDeliveryPrice()) ? "0" : CalculationUtil.divide(orderItem.getDeliveryPrice(), "100", CommonNumConstants.NUM_SIX));
|
||||
orderItem.setAdjustPrice(StrUtil.isEmpty(orderItem.getAdjustPrice()) ? "0" : CalculationUtil.divide(orderItem.getAdjustPrice(), "100", CommonNumConstants.NUM_SIX));
|
||||
orderItem.setPayPrice(StrUtil.isEmpty(orderItem.getPayPrice()) ? "0" : CalculationUtil.divide(orderItem.getPayPrice(), "100", CommonNumConstants.NUM_SIX));
|
||||
orderItem.setCouponPrice(StrUtil.isEmpty(orderItem.getCouponPrice()) ? "0" : CalculationUtil.divide(orderItem.getCouponPrice(), "100", CommonNumConstants.NUM_SIX));
|
||||
orderItem.setPointPrice(StrUtil.isEmpty(orderItem.getPointPrice()) ? "0" : CalculationUtil.divide(orderItem.getPointPrice(), "100", CommonNumConstants.NUM_SIX));
|
||||
orderItem.setVipPrice(StrUtil.isEmpty(orderItem.getVipPrice()) ? "0" : CalculationUtil.divide(order.getVipPrice(), "100", CommonNumConstants.NUM_SIX));
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void cancelOrder(InputObject inputObject, OutputObject outputObject) {
|
||||
Map<String, Object> params = inputObject.getParams();
|
||||
|
@ -488,6 +552,7 @@ public class OrderServiceImpl extends SkyeyeBusinessServiceImpl<OrderDao, Order>
|
|||
updateWrapper.set(MybatisPlusUtil.toColumns(Order::getExtensionNo), payOrderRespDTO.get("no").toString());
|
||||
update(updateWrapper);
|
||||
refreshCache(id);
|
||||
iQuartzService.stopAndDeleteTaskQuartz(id);// 删除定时任务
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -533,4 +598,15 @@ public class OrderServiceImpl extends SkyeyeBusinessServiceImpl<OrderDao, Order>
|
|||
outputObject.setBean(qrCodeResult);
|
||||
outputObject.settotal(CommonNumConstants.NUM_ONE);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setOrderCancle(String orderId) {
|
||||
UpdateWrapper<Order> updateWrapper = new UpdateWrapper<>();
|
||||
updateWrapper.eq(CommonConstants.ID, orderId);
|
||||
updateWrapper.set(MybatisPlusUtil.toColumns(Order::getState), ShopOrderState.CANCELED.getKey())
|
||||
.set(MybatisPlusUtil.toColumns(Order::getCancelType), ShopOrderCancelType.PAY_TIMEOUT.getKey())
|
||||
.set(MybatisPlusUtil.toColumns(Order::getCancelTime), DateUtil.getTimeAndToString());
|
||||
update(updateWrapper);
|
||||
refreshCache(orderId);
|
||||
}
|
||||
}
|
|
@ -13,6 +13,7 @@ import com.skyeye.annotation.api.Property;
|
|||
import com.skyeye.annotation.cache.RedisCacheField;
|
||||
import com.skyeye.common.constans.RedisConstants;
|
||||
import com.skyeye.common.entity.features.AreaInfo;
|
||||
import com.skyeye.common.enumeration.WhetherEnum;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Map;
|
||||
|
@ -52,6 +53,6 @@ public class ShopAddress extends AreaInfo {
|
|||
private Map<String, Object> labelMation;
|
||||
|
||||
@TableField("is_default")
|
||||
@ApiModelProperty(value = "是否是默认地址,参考#WhetherEnum", required = "required,num")
|
||||
@ApiModelProperty(value = "是否是默认地址", required = "required,num", enumClass = WhetherEnum.class)
|
||||
private Integer isDefault;
|
||||
}
|
|
@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.annotation.TableName;
|
|||
import com.skyeye.annotation.api.ApiModel;
|
||||
import com.skyeye.annotation.api.ApiModelProperty;
|
||||
import com.skyeye.common.entity.features.OperatorUserInfo;
|
||||
import com.skyeye.common.enumeration.WhetherEnum;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Map;
|
||||
|
@ -64,6 +65,6 @@ public class ShopTradeCart extends OperatorUserInfo {
|
|||
private Integer count;
|
||||
|
||||
@TableField("selected")
|
||||
@ApiModelProperty(value = "是否选中,参考#WhetherEnum", required = "required,num")
|
||||
@ApiModelProperty(value = "是否选中", required = "required,num",enumClass = WhetherEnum.class)
|
||||
private Integer selected;
|
||||
}
|
||||
|
|
|
@ -10,6 +10,7 @@ import com.skyeye.annotation.api.ApiModel;
|
|||
import com.skyeye.annotation.api.ApiModelProperty;
|
||||
import com.skyeye.annotation.api.Property;
|
||||
import com.skyeye.common.entity.features.BaseGeneralInfo;
|
||||
import com.skyeye.common.enumeration.WhetherEnum;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Map;
|
||||
|
@ -36,7 +37,7 @@ public class StoreType extends BaseGeneralInfo {
|
|||
private Integer orderBy;
|
||||
|
||||
@TableField("enabled")
|
||||
@ApiModelProperty(value = "启用状态1是0否,参考#WhetherEnum", required = "required")
|
||||
@ApiModelProperty(value = "启用状态1是0否", required = "required", enumClass = WhetherEnum.class)
|
||||
private Integer enabled;
|
||||
|
||||
@TableField(value = "store_id")
|
||||
|
|
|
@ -8,6 +8,7 @@ import cn.hutool.json.JSONUtil;
|
|||
import com.skyeye.coupon.service.CouponService;
|
||||
import com.skyeye.coupon.service.CouponUseService;
|
||||
import com.skyeye.eve.service.IQuartzService;
|
||||
import com.skyeye.order.service.OrderService;
|
||||
import com.xxl.job.core.context.XxlJobHelper;
|
||||
import com.xxl.job.core.handler.annotation.XxlJob;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
@ -32,6 +33,9 @@ public class ShopXxlJob {
|
|||
@Autowired
|
||||
private CouponUseService couponUseService;
|
||||
|
||||
@Autowired
|
||||
private OrderService orderService;
|
||||
|
||||
@Autowired
|
||||
private IQuartzService iQuartzService;
|
||||
|
||||
|
@ -54,4 +58,13 @@ public class ShopXxlJob {
|
|||
couponUseService.setCouponUseStateByTerm(userId, couponUseId);// 修改领取的优惠券的状态
|
||||
iQuartzService.stopAndDeleteTaskQuartz(couponUseId);// 删除任务
|
||||
}
|
||||
|
||||
@XxlJob("createOrderNotPay")
|
||||
public void createOrderNotPay() {
|
||||
String param = XxlJobHelper.getJobParam();
|
||||
Map<String, String> paramMap = JSONUtil.toBean(param, null);
|
||||
String orderId = paramMap.get("objectId");// 订单的主键id
|
||||
orderService.setOrderCancle(orderId);// 修改订单的状态为取消
|
||||
iQuartzService.stopAndDeleteTaskQuartz(orderId);// 删除任务
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue