Commit ea9c380d authored by 赵啸非's avatar 赵啸非

添加材料数量统计

parent 9b7e96d7
...@@ -11,7 +11,6 @@ package com.mortals.xhx.base.system.task.dao.ibatis; ...@@ -11,7 +11,6 @@ package com.mortals.xhx.base.system.task.dao.ibatis;
import com.mortals.framework.dao.ibatis.BaseCRUDDaoMybatis; import com.mortals.framework.dao.ibatis.BaseCRUDDaoMybatis;
import com.mortals.xhx.base.system.task.dao.TaskDao; import com.mortals.xhx.base.system.task.dao.TaskDao;
import com.mortals.xhx.base.system.task.model.TaskEntity; import com.mortals.xhx.base.system.task.model.TaskEntity;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
/** /**
* <p>Title: 任务信息</p> * <p>Title: 任务信息</p>
......
...@@ -8,11 +8,11 @@ ...@@ -8,11 +8,11 @@
package com.mortals.xhx.base.system.task.model; package com.mortals.xhx.base.system.task.model;
import java.util.Date;
import com.mortals.framework.model.BaseEntityLong; import com.mortals.framework.model.BaseEntityLong;
import com.mortals.framework.service.ITask; import com.mortals.framework.service.ITask;
import java.util.Date;
/** /**
* <p>Title: 任务信息</p> * <p>Title: 任务信息</p>
* <p>Description: TaskEntity </p> * <p>Description: TaskEntity </p>
......
...@@ -4,17 +4,6 @@ ...@@ -4,17 +4,6 @@
package com.mortals.xhx.base.system.task.service.impl; package com.mortals.xhx.base.system.task.service.impl;
import java.util.Calendar;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.mortals.framework.ap.GlobalSysInfo; import com.mortals.framework.ap.GlobalSysInfo;
import com.mortals.framework.common.code.ExcuteStatus; import com.mortals.framework.common.code.ExcuteStatus;
import com.mortals.framework.common.code.TaskExcuteStrategy; import com.mortals.framework.common.code.TaskExcuteStrategy;
...@@ -30,6 +19,12 @@ import com.mortals.xhx.base.system.task.dao.TaskDao; ...@@ -30,6 +19,12 @@ import com.mortals.xhx.base.system.task.dao.TaskDao;
import com.mortals.xhx.base.system.task.model.TaskEntity; import com.mortals.xhx.base.system.task.model.TaskEntity;
import com.mortals.xhx.base.system.task.model.TaskQuery; import com.mortals.xhx.base.system.task.model.TaskQuery;
import com.mortals.xhx.base.system.task.service.TaskService; import com.mortals.xhx.base.system.task.service.TaskService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.*;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
/** /**
* <p> * <p>
...@@ -62,7 +57,7 @@ public class TaskServiceImpl extends AbstractCRUDServiceImpl<TaskDao, TaskEntity ...@@ -62,7 +57,7 @@ public class TaskServiceImpl extends AbstractCRUDServiceImpl<TaskDao, TaskEntity
private Thread thread = null; private Thread thread = null;
/** 日志打印时间,key:任务ID,value:最后一次打印日志时间 */ /** 日志打印时间,key:任务ID,value:最后一次打印日志时间 */
private Map<Long, Long> printLogTime = new HashMap<Long, Long>(); private Map<Long, Long> printLogTime = new HashMap<>();
@Autowired(required=false) @Autowired(required=false)
private TaskService taskService; private TaskService taskService;
...@@ -216,17 +211,17 @@ public class TaskServiceImpl extends AbstractCRUDServiceImpl<TaskDao, TaskEntity ...@@ -216,17 +211,17 @@ public class TaskServiceImpl extends AbstractCRUDServiceImpl<TaskDao, TaskEntity
} }
if (interimExcuteStatus != TaskInterimExcuteStatus.UNUSE.getValue() // 启用立即执行 if (interimExcuteStatus != TaskInterimExcuteStatus.UNUSE.getValue() // 启用立即执行
|| ((strategy == TaskExcuteStrategy.DAY.getValue() // 按天 || ((strategy == TaskExcuteStrategy.DAY.getValue() // 按天
|| (strategy == TaskExcuteStrategy.WEEK.getValue() || (strategy == TaskExcuteStrategy.WEEK.getValue()
&& week == excuteDate) && week == excuteDate)
// 按周 // 按周
|| (strategy == TaskExcuteStrategy.MONTH.getValue() || (strategy == TaskExcuteStrategy.MONTH.getValue()
&& (day == excuteDate && (day == excuteDate
|| (excuteDate > maxDay && day == maxDay))))// 按月 || (excuteDate > maxDay && day == maxDay))))// 按月
&& (excuteTime == currTime && (excuteTime == currTime
&& !lastExcuteTimeStr.equals(currDateTimeStr)) // 执行间隔最少为一天 && !lastExcuteTimeStr.equals(currDateTimeStr)) // 执行间隔最少为一天
) || (strategy == TaskExcuteStrategy.INTERVAL.getValue() // 按间隔时间 ) || (strategy == TaskExcuteStrategy.INTERVAL.getValue() // 按间隔时间
&& (lastExcuteTime == null || lastExcuteTime.getTime() && (lastExcuteTime == null || lastExcuteTime.getTime()
+ excuteDate * 1000 <= currDateTime.getTime()))) { + excuteDate * 1000 <= currDateTime.getTime()))) {
final boolean printLog = checkPrintLog(task); final boolean printLog = checkPrintLog(task);
Object excuteBean = GlobalSysInfo.getBeanByName(task.getExcuteService()); Object excuteBean = GlobalSysInfo.getBeanByName(task.getExcuteService());
if (excuteBean == null || !(excuteBean instanceof ITaskExcuteService)) { if (excuteBean == null || !(excuteBean instanceof ITaskExcuteService)) {
...@@ -261,7 +256,7 @@ public class TaskServiceImpl extends AbstractCRUDServiceImpl<TaskDao, TaskEntity ...@@ -261,7 +256,7 @@ public class TaskServiceImpl extends AbstractCRUDServiceImpl<TaskDao, TaskEntity
log.error("执行任务失败-->" + excuteTask, e); log.error("执行任务失败-->" + excuteTask, e);
} }
if (strategy == TaskExcuteStrategy.INTERVAL.getValue()) { if (strategy == TaskExcuteStrategy.INTERVAL.getValue()) {
// 按间隔时间,更新执行时间,避免一直重复执行 // 按间隔时间,更新执行时间,避免一直重复执行
excuteTask.setLastExcuteTime(currDateTime); excuteTask.setLastExcuteTime(currDateTime);
} }
} finally { } finally {
...@@ -297,7 +292,7 @@ public class TaskServiceImpl extends AbstractCRUDServiceImpl<TaskDao, TaskEntity ...@@ -297,7 +292,7 @@ public class TaskServiceImpl extends AbstractCRUDServiceImpl<TaskDao, TaskEntity
executorService.shutdown(); executorService.shutdown();
log.info("任务执行线程退出!"); log.info("任务执行线程退出!");
}); });
// thread.start(); thread.start();
} }
@Override @Override
......
/**
* 文件:TaskController.java
* 版本:1.0.0
* 日期:
* Copyright &reg;
* All right reserved.
*/
package com.mortals.xhx.base.system.task.web; package com.mortals.xhx.base.system.task.web;
import java.util.HashMap;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.mortals.framework.ap.GlobalSysInfo; import com.mortals.framework.ap.GlobalSysInfo;
import com.mortals.framework.exception.AppException; import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context; import com.mortals.framework.model.Context;
import com.mortals.framework.service.ITaskExcuteService; import com.mortals.framework.service.ITaskExcuteService;
import com.mortals.framework.web.BaseCRUDJsonMappingController; import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.task.model.TaskEntity; import com.mortals.xhx.base.system.task.model.TaskEntity;
import com.mortals.xhx.base.system.task.model.TaskQuery;
import com.mortals.xhx.base.system.task.service.TaskService; import com.mortals.xhx.base.system.task.service.TaskService;
import com.mortals.xhx.common.code.DataSatusEnum; import com.mortals.xhx.common.code.DataSatusEnum;
import com.mortals.xhx.common.code.TaskExcuteStatusEnum; import com.mortals.xhx.common.code.TaskExcuteStatusEnum;
import com.mortals.xhx.common.code.TaskExcuteStrategyEnum; import com.mortals.xhx.common.code.TaskExcuteStrategyEnum;
import com.mortals.xhx.common.code.TaskInterimExcuteStatusEnum; import com.mortals.xhx.common.code.TaskInterimExcuteStatusEnum;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.HashMap;
import java.util.Map;
/** /**
* <p>Title: 任务信息</p> * 任务信息
* <p>Description: TaskController </p> *
* <p>Copyright: Copyright &reg; </p> * @author: zxfei
* <p>Company: </p> * @date: 2022/5/7 15:39
* @author
* @version 1.0.0
*/ */
@RestController @RestController
@RequestMapping("task") @RequestMapping("task")
public class TaskController extends BaseCRUDJsonMappingController<TaskService, TaskForm, TaskEntity, Long> { public class TaskController extends BaseCRUDJsonBodyMappingController<TaskService, TaskEntity, Long> {
public TaskController() { public TaskController() {
super.setFormClass(TaskForm.class); super.setFormClass(TaskForm.class);
...@@ -50,8 +37,7 @@ public class TaskController extends BaseCRUDJsonMappingController<TaskService, T ...@@ -50,8 +37,7 @@ public class TaskController extends BaseCRUDJsonMappingController<TaskService, T
@Override @Override
protected void init(HttpServletRequest request, HttpServletResponse response, TaskForm form, protected void init(Map<String, Object> model, Context context) {
Map<String, Object> model, Context context) {
Map<String, Object> status = new HashMap<String, Object>(); Map<String, Object> status = new HashMap<String, Object>();
status.put("status", TaskExcuteStatusEnum.getEnumMap()); status.put("status", TaskExcuteStatusEnum.getEnumMap());
status.put("excuteStrategy", TaskExcuteStrategyEnum.getEnumMap()); status.put("excuteStrategy", TaskExcuteStrategyEnum.getEnumMap());
...@@ -71,60 +57,30 @@ public class TaskController extends BaseCRUDJsonMappingController<TaskService, T ...@@ -71,60 +57,30 @@ public class TaskController extends BaseCRUDJsonMappingController<TaskService, T
} }
model.put("excuteService", serviceList); model.put("excuteService", serviceList);
model.put(KEY_RESULT_DICT, status); model.put(KEY_RESULT_DICT, status);
super.init(request, response, form, model, context);
}
/**
* @param request
* @param response
* @param form
* @param model
* @param context
* @throws AppException
* @Description: TODO
*/
@Override
protected void saveBefore(HttpServletRequest request, HttpServletResponse response, TaskForm form,
Map<String, Object> model, Context context) throws AppException {
if (null == form.getEntity().getExcuteService()) {
}
// TaskEntity condition = new TaskEntity();
// condition.setExcuteService(form.getEntity().getExcuteService());
// List<TaskEntity> datas = this.service.find(condition, context);
// if (null != datas && datas.size() > 0) {
// for (TaskEntity entity : datas) {
// if (entity.getId().longValue() != form.getEntity().getId().longValue()) {
// throw new AppException("任务已存在,请勿重复配置");
// }
// }
// }
super.saveBefore(request, response, form, model, context);
} }
/** /**
* 改变状态 * 改变状态
*/ */
@RequestMapping(value = "change/status") @RequestMapping(value = "change/status")
public String changeStatus(HttpServletRequest request, HttpServletResponse response, TaskForm form) { public String changeStatus(TaskQuery query) {
JSONObject ret = new JSONObject(); JSONObject ret = new JSONObject();
Context context = getContext(); Context context = getContext();
try { try {
TaskEntity entity = this.service.get(form.getEntity().getId(), context);// .doSubmitAudit(form.getEntity(), TaskEntity entity = this.service.get(query.getId(), context);// .doSubmitAudit(form.getEntity(),
// context); // context);
if (null == entity) { if (null == entity) {
throw new AppException("任务不存在!"); throw new AppException("任务不存在!");
} }
if (null == form.getEntity().getStatus()) { if (null == query.getStatus()) {
throw new AppException("任务状态不能为空!"); throw new AppException("任务状态不能为空!");
} }
if (form.getEntity().getStatus() != DataSatusEnum.ENABLE.getValue() if (query.getStatus() != DataSatusEnum.ENABLE.getValue()
&& form.getEntity().getStatus() != DataSatusEnum.DISENABLE.getValue()) { && query.getStatus() != DataSatusEnum.DISENABLE.getValue()) {
throw new AppException("非法任务状态!"); throw new AppException("非法任务状态!");
} }
String busiDesc = DataSatusEnum.getByValue(form.getEntity().getStatus()).getDesc(); String busiDesc = DataSatusEnum.getByValue(query.getStatus()).getDesc();
entity.setStatus(form.getEntity().getStatus()); entity.setStatus(query.getStatus());
this.service.update(entity, context); this.service.update(entity, context);
ret.put(KEY_RESULT_CODE, VALUE_RESULT_SUCCESS); ret.put(KEY_RESULT_CODE, VALUE_RESULT_SUCCESS);
ret.put(KEY_RESULT_MSG, busiDesc + "成功"); ret.put(KEY_RESULT_MSG, busiDesc + "成功");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment