测试
This commit is contained in:
@@ -327,5 +327,20 @@ public class ZtStoryDTO implements Serializable {
|
||||
|
||||
@ExcelIgnore
|
||||
private ZtStoryCaseDTO caseInfo;
|
||||
/**
|
||||
* 开发完成时间
|
||||
*/
|
||||
@ExcelIgnore
|
||||
private Date developedDate;
|
||||
/**
|
||||
* 开发预计完成时间
|
||||
*/
|
||||
@ExcelIgnore
|
||||
private Date develPlanEndTime;
|
||||
/**
|
||||
* 测试预计完成时间
|
||||
*/
|
||||
@ExcelIgnore
|
||||
private Date testPlanEndTime;
|
||||
|
||||
}
|
||||
|
||||
@@ -36,8 +36,8 @@ public class ZtTaskDTO implements Serializable {
|
||||
private String approvalRemark;
|
||||
|
||||
|
||||
private Integer project;
|
||||
|
||||
private Integer project;
|
||||
private Integer parent;
|
||||
|
||||
private Integer execution;
|
||||
|
||||
@@ -186,6 +186,8 @@ public class ZtStory implements Serializable {
|
||||
private Date planEndDate;
|
||||
//开始日期 开发开始
|
||||
private Date startDate;
|
||||
//开发完毕日期
|
||||
private Date developedDate;
|
||||
//结束日期 测试结束
|
||||
private Date endDate;
|
||||
|
||||
@@ -194,8 +196,7 @@ public class ZtStory implements Serializable {
|
||||
private Integer ysFlag;
|
||||
|
||||
private String ysRemark;
|
||||
//开发完毕日期
|
||||
private Date developedDate;
|
||||
|
||||
|
||||
@TableField(updateStrategy = FieldStrategy.IGNORED)
|
||||
private Integer userStory;
|
||||
@@ -206,6 +207,15 @@ public class ZtStory implements Serializable {
|
||||
//验收时间
|
||||
|
||||
private Date ysDate;
|
||||
/**
|
||||
* 开发预计完成时间
|
||||
*/
|
||||
private Date develPlanEndTime;
|
||||
/**
|
||||
* 测试预计完成时间
|
||||
*/
|
||||
private Date testPlanEndTime;
|
||||
|
||||
// //开发完成时间
|
||||
// private Date develDate;
|
||||
// //测试完成时间
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.sa.zentao.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
||||
import com.github.pagehelper.Page;
|
||||
import com.github.pagehelper.PageHelper;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
@@ -647,6 +648,16 @@ public class ZtTaskServiceImpl extends ServiceImpl<ZtTaskMapper, ZtTask> impleme
|
||||
throw new BusinessException("当前环境异常请联系管理员");
|
||||
}
|
||||
this.baseMapper.insert(ztTask);
|
||||
if(ztTask.getDeadline()!=null&&ztTask.getStory()!=null&&ztTask.getStory()!=0){
|
||||
ZtStory ztStory = this.storyService.getById(ztTask.getStory());
|
||||
if(ztTask.getType().equals("devel")&&(ztStory.getDevelPlanEndTime()==null||ztTask.getDeadline().after(ztStory.getDevelPlanEndTime()))){
|
||||
ztStory.setDevelPlanEndTime(ztTask.getDeadline());
|
||||
}
|
||||
if(ztTask.getType().equals("test")&&(ztStory.getTestPlanEndTime()==null||ztTask.getDeadline().after(ztStory.getTestPlanEndTime()))){
|
||||
ztStory.setTestPlanEndTime(ztTask.getDeadline());
|
||||
}
|
||||
this.storyService.updateById(ztStory);
|
||||
}
|
||||
if ("wait".equals(ztTask.getStatus())) {
|
||||
this.storyService.taskFinishChangeStatus(ztTask.getStory(), null, TaskType.transferType(ztTask.getType()), false);
|
||||
}
|
||||
@@ -999,6 +1010,41 @@ public class ZtTaskServiceImpl extends ServiceImpl<ZtTaskMapper, ZtTask> impleme
|
||||
ztTask.setLasteditedby(RiskUserThreadLocal.get().getName());
|
||||
ztTask.setLastediteddate(new Date());
|
||||
this.baseMapper.updateById(ztTask);
|
||||
|
||||
if(ztTask.getDeadline()!=null&&ztTask.getStory()!=null&&ztTask.getStory()!=0){
|
||||
ZtStory ztStory = this.storyService.getById(ztTask.getStory());
|
||||
if(ztTask.getType().equals("devel")&&ztStory.getDevelPlanEndTime()!=null){
|
||||
//查找最大时间那个
|
||||
ztStory.setDevelPlanEndTime(ztTask.getDeadline());
|
||||
List<ZtTask> ztTasks = this.baseMapper.selectList(new QueryWrapper<ZtTask>().lambda()
|
||||
.select(ZtTask::getDeadline)
|
||||
.isNotNull(ZtTask::getDeadline)
|
||||
.eq(ZtTask::getType, "devel")
|
||||
.ne(ZtTask::getId, ztTask.getId())
|
||||
.in(ZtTask::getStatus, "pause", "done", "wait", "reviewing", "doing", "draft")
|
||||
.eq(ZtTask::getStory, ztTask.getStory()).orderByDesc(ZtTask::getDeadline));
|
||||
this.storyService.update(new UpdateWrapper<ZtStory>().lambda()
|
||||
.eq(ZtStory::getId, ztTask.getStory())
|
||||
.set(ZtStory::getDevelPlanEndTime,CollectionUtils.isEmpty(ztTasks)?null:DateUtils.getDayLast(ztTasks.get(0).getDeadline())));
|
||||
}
|
||||
if(ztTask.getType().equals("test")&&ztStory.getTestPlanEndTime()!=null){
|
||||
//查找最大时间那个
|
||||
ztStory.setDevelPlanEndTime(ztTask.getDeadline());
|
||||
List<ZtTask> ztTasks = this.baseMapper.selectList(new QueryWrapper<ZtTask>().lambda()
|
||||
.select(ZtTask::getDeadline)
|
||||
.isNotNull(ZtTask::getDeadline)
|
||||
.eq(ZtTask::getType, "test")
|
||||
.ne(ZtTask::getId, ztTask.getId())
|
||||
.in(ZtTask::getStatus, "pause", "done", "wait", "reviewing", "doing", "draft")
|
||||
.eq(ZtTask::getStory, ztTask.getStory()).orderByDesc(ZtTask::getDeadline));
|
||||
this.storyService.update(new UpdateWrapper<ZtStory>().lambda()
|
||||
.eq(ZtStory::getId, ztTask.getStory())
|
||||
.set(ZtStory::getTestPlanEndTime,CollectionUtils.isEmpty(ztTasks)?null:DateUtils.getDayLast(ztTasks.get(0).getDeadline())));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
ZtProjectproduct projectproduct = projectproductService.getOne(new QueryWrapper<ZtProjectproduct>().lambda().eq(ZtProjectproduct::getProject, ztTask.getProject()));
|
||||
|
||||
//添加action
|
||||
@@ -1018,8 +1064,6 @@ public class ZtTaskServiceImpl extends ServiceImpl<ZtTaskMapper, ZtTask> impleme
|
||||
}
|
||||
}
|
||||
this.storyService.taskFinishChangeStatus(ztTask.getStory(), null, TaskType.transferType(ztTask.getType()), true);
|
||||
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -1046,7 +1090,37 @@ public class ZtTaskServiceImpl extends ServiceImpl<ZtTaskMapper, ZtTask> impleme
|
||||
//添加action
|
||||
actionService.addAction(ActionType.RW, ActionStatus.QX, dto.getId(), projectproduct == null ? null : projectproduct.getProduct().toString(), ztTask.getProject(), ztTask.getExecution(),
|
||||
RiskUserThreadLocal.get().getName(), dto.getDesc(), null);
|
||||
|
||||
if(ztTask.getDeadline()!=null&&ztTask.getStory()!=null&&ztTask.getStory()!=0){
|
||||
ZtStory ztStory = this.storyService.getById(ztTask.getStory());
|
||||
if(ztTask.getType().equals("devel")&&ztStory.getDevelPlanEndTime()!=null){
|
||||
//查找最大时间那个
|
||||
ztStory.setDevelPlanEndTime(ztTask.getDeadline());
|
||||
List<ZtTask> ztTasks = this.baseMapper.selectList(new QueryWrapper<ZtTask>().lambda()
|
||||
.select(ZtTask::getDeadline)
|
||||
.isNotNull(ZtTask::getDeadline)
|
||||
.eq(ZtTask::getType, "devel")
|
||||
.ne(ZtTask::getId, ztTask.getId())
|
||||
.in(ZtTask::getStatus, "pause", "done", "wait", "reviewing", "doing", "draft")
|
||||
.eq(ZtTask::getStory, ztTask.getStory()).orderByDesc(ZtTask::getDeadline));
|
||||
this.storyService.update(new UpdateWrapper<ZtStory>().lambda()
|
||||
.eq(ZtStory::getId, ztTask.getStory())
|
||||
.set(ZtStory::getDevelPlanEndTime,CollectionUtils.isEmpty(ztTasks)?null:DateUtils.getDayLast(ztTasks.get(0).getDeadline())));
|
||||
}
|
||||
if(ztTask.getType().equals("test")&&ztStory.getTestPlanEndTime()!=null){
|
||||
//查找最大时间那个
|
||||
ztStory.setDevelPlanEndTime(ztTask.getDeadline());
|
||||
List<ZtTask> ztTasks = this.baseMapper.selectList(new QueryWrapper<ZtTask>().lambda()
|
||||
.select(ZtTask::getDeadline)
|
||||
.isNotNull(ZtTask::getDeadline)
|
||||
.eq(ZtTask::getType, "test")
|
||||
.ne(ZtTask::getId, ztTask.getId())
|
||||
.in(ZtTask::getStatus, "pause", "done", "wait", "reviewing", "doing", "draft")
|
||||
.eq(ZtTask::getStory, ztTask.getStory()).orderByDesc(ZtTask::getDeadline));
|
||||
this.storyService.update(new UpdateWrapper<ZtStory>().lambda()
|
||||
.eq(ZtStory::getId, ztTask.getStory())
|
||||
.set(ZtStory::getTestPlanEndTime,CollectionUtils.isEmpty(ztTasks)?null:DateUtils.getDayLast(ztTasks.get(0).getDeadline())));
|
||||
}
|
||||
}
|
||||
if (ztTask.getExecution() != null && ztTask.getExecution() != 0) {
|
||||
if (StringUtils.isEmpty(dto.getTabType())) {
|
||||
|
||||
@@ -1138,6 +1212,18 @@ public class ZtTaskServiceImpl extends ServiceImpl<ZtTaskMapper, ZtTask> impleme
|
||||
ztTask.setProduct(ztProjectproduct.getProduct());
|
||||
}
|
||||
saveList.add(ztTask);
|
||||
|
||||
if(ztTask.getDeadline()!=null&&ztTask.getStory()!=null&&ztTask.getStory()!=0){
|
||||
ZtStory ztStory = this.storyService.getById(ztTask.getStory());
|
||||
if(ztTask.getType().equals("devel")&&(ztStory.getDevelPlanEndTime()==null||ztTask.getDeadline().getTime()>=ztStory.getDevelPlanEndTime().getTime()
|
||||
)){
|
||||
ztStory.setDevelPlanEndTime(ztTask.getDeadline());
|
||||
}
|
||||
if(ztTask.getType().equals("test")&&(ztStory.getTestPlanEndTime()==null||ztTask.getDeadline().getTime()>=ztStory.getTestPlanEndTime().getTime())){
|
||||
ztStory.setTestPlanEndTime(ztTask.getDeadline());
|
||||
}
|
||||
this.storyService.updateById(ztStory);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -140,8 +140,9 @@
|
||||
su.id userStoryId,
|
||||
ps.title parentName,
|
||||
su.openedDate userStoryCreateTime,
|
||||
su.openedBy userStoryCreateUser
|
||||
|
||||
su.openedBy userStoryCreateUser,
|
||||
s.devel_plan_end_time,
|
||||
s.test_plan_end_time
|
||||
|
||||
from zt_story s
|
||||
left join zt_story_user su on s.user_story = su.id
|
||||
@@ -360,7 +361,8 @@
|
||||
s.ys_user,
|
||||
s.task_count,
|
||||
s.ys_date,
|
||||
|
||||
s.devel_plan_end_time,
|
||||
s.test_plan_end_time,
|
||||
pt.name productName
|
||||
from zt_story s
|
||||
|
||||
@@ -865,6 +867,8 @@
|
||||
s.user_story,
|
||||
s.ys_user,
|
||||
s.task_count,
|
||||
s.devel_plan_end_time,
|
||||
s.test_plan_end_time,
|
||||
s.ys_date
|
||||
|
||||
,pt.name productName
|
||||
|
||||
Reference in New Issue
Block a user