提交 6d4715cf authored 作者: 邓砥奕's avatar 邓砥奕

更新task

上级 fab1fb26
......@@ -4,8 +4,17 @@ import com.tykj.dev.device.task.subject.domin.Task;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import java.util.List;
/**
* @author dengdiyi
*/
public interface TaskDao extends JpaRepository<Task, Integer>, JpaSpecificationExecutor<Task> {
/**
* @param billId 账单id
* @param businessType 业务类型
* 根据账单Id和业务类型查询task
*/
Task findByBillIdAndBusinessType(Integer billId, Integer businessType);
}
......@@ -78,16 +78,19 @@ public interface TaskService {
/**
* 新增Task
*/
Task add(TaskBto taskBto);
Task start(TaskBto taskBto);
/**
* 更新Task
*/
Task update(TaskBto taskBto);
/**
* 根据id获得Task
* 根据task id获得Task
*/
TaskBto get(Integer id);
TaskBto get(Integer taskId);
/**
* 根据billId和businessType获得Task
*/
TaskBto get(Integer billId,Integer businessType);
/**
* @param taskSelectVo
* 获取跟踪和待办业务列表
......
......@@ -4,7 +4,7 @@ import com.tykj.dev.device.task.repository.TaskDao;
import com.tykj.dev.device.task.service.TaskService;
import com.tykj.dev.device.task.subject.bto.TaskBto;
import com.tykj.dev.device.task.subject.common.StatusEnum;
import com.tykj.dev.device.task.subject.common.StatusMap;
import com.tykj.dev.device.task.subject.common.GlobalMap;
import com.tykj.dev.device.task.subject.domin.Task;
import com.tykj.dev.device.task.subject.vo.TaskSelectVo;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -28,7 +28,7 @@ public class TaskServiceImpl implements TaskService {
@Override
public TaskBto moveToNext(TaskBto taskBto) {
//status++
taskBto.setBillStatus(StatusMap.getHashMap().getOrDefault(taskBto.getBillStatus()+1, StatusEnum.END).id);
taskBto.setBillStatus(GlobalMap.getHashMap().getOrDefault(taskBto.getBillStatus()+1, StatusEnum.END).id);
//list add 0,point++
taskBto.getInvolveUserIdList().add(0);
taskBto.setCurrentPoint(taskBto.getCurrentPoint()+1);
......@@ -46,7 +46,7 @@ public class TaskServiceImpl implements TaskService {
@Override
public TaskBto moveToNext(TaskBto taskBto, String customInfo) {
//status++
taskBto.setBillStatus(StatusMap.getHashMap().getOrDefault(taskBto.getBillStatus()+1,StatusEnum.END).id);
taskBto.setBillStatus(GlobalMap.getHashMap().getOrDefault(taskBto.getBillStatus()+1,StatusEnum.END).id);
//list add 0,point++
taskBto.getInvolveUserIdList().add(0);
taskBto.setCurrentPoint(taskBto.getCurrentPoint()+1);
......@@ -65,7 +65,7 @@ public class TaskServiceImpl implements TaskService {
@Override
public TaskBto moveToNext(TaskBto taskBto, Integer userId) {
//status++
taskBto.setBillStatus(StatusMap.getHashMap().getOrDefault(taskBto.getBillStatus()+1,StatusEnum.END).id);
taskBto.setBillStatus(GlobalMap.getHashMap().getOrDefault(taskBto.getBillStatus()+1,StatusEnum.END).id);
//list add userId,point++
taskBto.getInvolveUserIdList().add(userId);
taskBto.setCurrentPoint(taskBto.getCurrentPoint()+1);
......@@ -84,7 +84,7 @@ public class TaskServiceImpl implements TaskService {
@Override
public TaskBto moveToNext(TaskBto taskBto, Integer userId, String customInfo) {
//status++
taskBto.setBillStatus(StatusMap.getHashMap().getOrDefault(taskBto.getBillStatus()+1,StatusEnum.END).id);
taskBto.setBillStatus(GlobalMap.getHashMap().getOrDefault(taskBto.getBillStatus()+1,StatusEnum.END).id);
//list add userId,point++
taskBto.getInvolveUserIdList().add(userId);
taskBto.setCurrentPoint(taskBto.getCurrentPoint()+1);
......@@ -197,7 +197,7 @@ public class TaskServiceImpl implements TaskService {
* 新增Task
*/
@Override
public Task add(TaskBto taskBto) {
public Task start(TaskBto taskBto) {
return taskDao.save(taskBto.toDo());
}
......@@ -222,6 +222,17 @@ public class TaskServiceImpl implements TaskService {
return task.map(Task::parse2Bto).orElse(null);
}
/**
* 根据billId和businessType获得Task
*
* @param billId
* @param businessType
*/
@Override
public TaskBto get(Integer billId, Integer businessType) {
return taskDao.findByBillIdAndBusinessType(billId,businessType).parse2Bto();
}
/**
* @param taskSelectVo 获取跟踪和待办业务列表
*/
......
package com.tykj.dev.device.task.subject.bto;
import com.tykj.dev.device.task.subject.domin.Task;
import com.tykj.dev.device.task.subject.vo.TaskUserVo;
import com.tykj.dev.misc.base.BeanHelper;
import com.tykj.dev.misc.utils.StringSplitUtil;
import io.swagger.annotations.ApiModelProperty;
......@@ -23,8 +24,6 @@ import java.util.List;
@AllArgsConstructor
public class TaskBto {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@ApiModelProperty(value = "主键id")
private Integer id;
......@@ -71,9 +70,24 @@ public class TaskBto {
//复制相同属性
ModelMapper modelMapper = BeanHelper.getUserMapper();
Task task = modelMapper.map(this,Task.class);
//set组合字段
task.setInvolveUsers(StringSplitUtil.idListToString(this.involveUserIdList));
task.setUserReadDetail(StringSplitUtil.idListToString(this.userReadDetailList));
task.setTopFlagDetail(StringSplitUtil.idListToString(this.topFlagDetailList));
return task;
}
/**
* bto类转化为vo类
*/
// public TaskUserVo toVo(){
// //复制相同属性
// ModelMapper modelMapper = BeanHelper.getUserMapper();
// Task task = modelMapper.map(this,Task.class);
// //set组合字段
// task.setInvolveUsers(StringSplitUtil.idListToString(this.involveUserIdList));
// task.setUserReadDetail(StringSplitUtil.idListToString(this.userReadDetailList));
// task.setTopFlagDetail(StringSplitUtil.idListToString(this.topFlagDetailList));
// return task;
// }
}
......@@ -8,7 +8,7 @@ import java.util.stream.Collectors;
/**
* @author dengdiyi
*/
public class StatusMap {
public class GlobalMap {
private static Map<Integer, StatusEnum> statusEnumMap;
......
......@@ -95,42 +95,6 @@ public class Task {
@ApiModelProperty(value = "工作涉及人员id(x作为分隔符),例如x1x2x,意为id为1,2的用户参与了该任务")
private String involveUsers;
@ApiModelProperty(value = "跟踪时间")
@Transient
private String userTime;
@ApiModelProperty(value = "跟踪时间日期")
@Transient
private Date userTimeDate;
@ApiModelProperty(value = "处理人")
@Transient
private String processingUser;
@ApiModelProperty(value = "待办时间")
@Transient
private String trackingTime;
@ApiModelProperty(value = "待办时间日期")
@Transient
private Date trackingTimeDate;
@ApiModelProperty(value = "发起单位")
@Transient
private String startUnit;
@ApiModelProperty(value = "是否阅读(0:未读,1:已读)")
@Transient
private Integer isRead = 0;
@ApiModelProperty(value = "是否置顶(0:是,1:不是)")
@Transient
private Integer isTop = 0;
@ApiModelProperty(value = "状态描述")
@Transient
private String status;
/**
* do类转化为bto类
*/
......
package com.tykj.dev.device.task.subject.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import javax.persistence.Transient;
import java.util.Date;
import java.util.List;
@Data
@NoArgsConstructor
@AllArgsConstructor
public class TaskUserVo {
@ApiModelProperty(value = "主键id")
private Integer id;
@ApiModelProperty(value = "任务状态")
private Integer billStatus;
@ApiModelProperty(value = "任务标题")
private String title;
@ApiModelProperty(value = "父任务主键id")
private Integer parentTaskId;
@ApiModelProperty(value = "所有节点任务id组合,例如.1.2.,意为从根节点到当前节点所经历的节点为1和2")
private String nodeIdDetail;
@ApiModelProperty(value = "对应账单ID")
private Integer billId;
@ApiModelProperty(value = "业务类型主键id")
private Integer businessType;
@ApiModelProperty(value = "所属单位")
private Integer ownUnit;
@ApiModelProperty(value = "数字类型,用于代表指针目前的下标")
private Integer currentPoint;
@ApiModelProperty(value = "自定义信息,针对不同业务需要保存一些自定信息")
private String customInfo;
@ApiModelProperty(value = "置顶用户id的List")
private List<Integer> topFlagDetailList;
@ApiModelProperty(value = "阅读过用户id的List")
private List<Integer> userReadDetailList;
@ApiModelProperty(value = "工作涉及人员id")
private List<Integer> involveUserIdList;
@ApiModelProperty(value = "跟踪时间")
@Transient
private String userTime;
@ApiModelProperty(value = "跟踪时间日期")
@Transient
private Date userTimeDate;
@ApiModelProperty(value = "处理人")
@Transient
private String processingUser;
@ApiModelProperty(value = "待办时间")
@Transient
private String trackingTime;
@ApiModelProperty(value = "待办时间日期")
@Transient
private Date trackingTimeDate;
@ApiModelProperty(value = "发起单位")
@Transient
private String startUnit;
@ApiModelProperty(value = "是否阅读(0:未读,1:已读)")
@Transient
private Integer isRead = 0;
@ApiModelProperty(value = "是否置顶(0:是,1:不是)")
@Transient
private Integer isTop = 0;
@ApiModelProperty(value = "状态描述")
private String status;
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论