提交 32758962 authored 作者: zjm's avatar zjm

修改添加任务的bug

上级 c017024d
流水线 #43 已失败 于阶段
...@@ -76,7 +76,7 @@ public class Work { ...@@ -76,7 +76,7 @@ public class Work {
*/ */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@ApiModelProperty(value = "更新时间", example = "yyyy-MM-dd HH:mm:ss") @ApiModelProperty(value = "更新时间", example = "yyyy-MM-dd HH:mm:ss")
private Date updateTime; private Date updateTime=new Date();
/*相关用户 同一个人不能同时担任多种职位*/ /*相关用户 同一个人不能同时担任多种职位*/
/** /**
* 发布者id * 发布者id
...@@ -94,7 +94,6 @@ public class Work { ...@@ -94,7 +94,6 @@ public class Work {
/** /**
* 组员id集合 * 组员id集合
*/ */
@NotNull
@ApiModelProperty(value = "组原id集合.", example = "[\"id\",\"id\"]") @ApiModelProperty(value = "组原id集合.", example = "[\"id\",\"id\"]")
private List<String> crewList; private List<String> crewList;
...@@ -135,20 +134,21 @@ public class Work { ...@@ -135,20 +134,21 @@ public class Work {
/** /**
* 考评系数 * 考评系数
*/ */
@NotNull
@ApiModelProperty(value = "考评系数",example = "0.8") @ApiModelProperty(value = "考评系数",example = "0.8")
private int workCoefficient; private int workCoefficient=0;
/** /**
* 是否记录个人工作量 * 是否记录个人工作量
*/ */
@ApiModelProperty(value = "是否记录个人工作量",example = "1.是记录0.不记录") @ApiModelProperty(value = "是否记录个人工作量",example = "1.是记录0.不记录")
@NotNull
private int pWorkload=1; private int pWorkload=1;
/** /**
* 是否记录任务工作量 * 是否记录任务工作量
*/ */
@ApiModelProperty(value = "是否记录任务工作量",example = "1.是记录0.不记录") @ApiModelProperty(value = "是否记录任务工作量",example = "1.是记录0.不记录")
@NotNull
private int workloadCount=1; private int workloadCount=1;
......
package com.zjty.tynotes.job.status.service; //package com.zjty.tynotes.job.status.service;
//
import com.zjty.tynotes.job.status.entity.EsListSum; //import com.zjty.tynotes.job.status.entity.EsListSum;
//
/** ///**
* @author zjm // * @author zjm
*/ // */
public interface WorkShowSeeService { //public interface WorkShowSeeService {
//
/** // /**
* 根据人员id查看我的任务列表 // * 根据人员id查看我的任务列表
* @param id 人员id // * @param id 人员id
* @param page 第几页 // * @param page 第几页
* @param size 条数 // * @param size 条数
* @return 数据集合 // * @return 数据集合
*/ // */
EsListSum selectMeWork(String id, int page, int size); // EsListSum selectMeWork(String id, int page, int size);
//
/** // /**
* 根据人员id查看我接收的任务列表 // * 根据人员id查看我接收的任务列表
* @param id 人员id // * @param id 人员id
* @param page 第几页 // * @param page 第几页
* @param size 条数 // * @param size 条数
* @return 数据集合 // * @return 数据集合
*/ // */
EsListSum selectMeReceiveWork(String id, int page, int size); // EsListSum selectMeReceiveWork(String id, int page, int size);
/** // /**
*根据人员id查看我分解的任务列表 // *根据人员id查看我分解的任务列表
* @param id 人员id // * @param id 人员id
* @param page 第几页 // * @param page 第几页
* @param size 条数 // * @param size 条数
* @return 数据集合 // * @return 数据集合
*/ // */
EsListSum selectMeResolveWork(String id, int page, int size); // EsListSum selectMeResolveWork(String id, int page, int size);
/** // /**
*根据人员id查看我发布的任务列表 // *根据人员id查看我发布的任务列表
* @param id 人员id // * @param id 人员id
* @param page 第几页 // * @param page 第几页
* @param size 条数 // * @param size 条数
* @return 数据集合 // * @return 数据集合
*/ // */
EsListSum selectMeReleaseWork(String id, int page, int size); // EsListSum selectMeReleaseWork(String id, int page, int size);
//
/** // /**
* 标题查询 // * 标题查询
* // *
* @param id  人员id // * @param id  人员id
* @param page  页码 // * @param page  页码
* @param size  每页显示的条数 // * @param size  每页显示的条数
* @param title 事件的标题 // * @param title 事件的标题
* @return 给前端对象集合 和条数 // * @return 给前端对象集合 和条数
*/ // */
EsListSum titleSelect(String id, int page, int size, String title); // EsListSum titleSelect(String id, int page, int size, String title);
//
//
} //}
...@@ -87,7 +87,7 @@ public class TestSeeServiceImpl implements TestSeeService { ...@@ -87,7 +87,7 @@ public class TestSeeServiceImpl implements TestSeeService {
private RedisListSum listSum(List<RedisPersonalWork> list,int size,int page){ private RedisListSum listSum(List<RedisPersonalWork> list,int size,int page){
int count=list.size(); int count=list.size();
if (size<count){ if (size>count){
return new RedisListSum(count,list); return new RedisListSum(count,list);
} }
int countPage=count/size; int countPage=count/size;
......
...@@ -65,7 +65,7 @@ public class TestServiceImpl implements TestService { ...@@ -65,7 +65,7 @@ public class TestServiceImpl implements TestService {
RedisPersonalWork personalWork=new RedisPersonalWork(work.getId(),time,work.getTitle(),work.getStatus(),releaseName,executorName,1,WorkAttribution.ME_WORK,latestNews,work.getSuperiorId(),new ArrayList<>(),0); RedisPersonalWork personalWork=new RedisPersonalWork(work.getId(),time,work.getTitle(),work.getStatus(),releaseName,executorName,1,WorkAttribution.ME_WORK,latestNews,work.getSuperiorId(),new ArrayList<>(),0);
//发布人 //发布人
if (work.getSuperiorId()==null){ if (work.getSuperiorId()==null){
personalWork.setWorkAttribution(WorkAttribution.ME_RELEASE_WORK); personalWork.setWorkAttribution(WorkAttribution1.ME_RELEASE_WORK);
personalWork.setReadState(0); personalWork.setReadState(0);
redisTemplate.opsForList().leftPush(Constants.REDIS_EVENT+work.getPublisher(),personalWork); redisTemplate.opsForList().leftPush(Constants.REDIS_EVENT+work.getPublisher(),personalWork);
......
package com.zjty.tynotes.job.status.service.impl; //package com.zjty.tynotes.job.status.service.impl;
//
import com.fasterxml.jackson.core.type.TypeReference; //import com.fasterxml.jackson.core.type.TypeReference;
import com.zjty.tynotes.job.common.Constants; //import com.zjty.tynotes.job.common.Constants;
import com.zjty.tynotes.job.status.entity.EsListSum; //import com.zjty.tynotes.job.status.entity.EsListSum;
import com.zjty.tynotes.job.status.entity.RedisPersonalWork; //import com.zjty.tynotes.job.status.entity.RedisPersonalWork;
import com.zjty.tynotes.job.status.service.WorkShowSeeService; //import com.zjty.tynotes.job.status.service.WorkShowSeeService;
import com.zjty.tynotes.job.status.utils.JacksonUtil; //import com.zjty.tynotes.job.status.utils.JacksonUtil;
import com.zjty.tynotes.search.subject.entity.CollectionRs; //import com.zjty.tynotes.search.subject.entity.CollectionRs;
import com.zjty.tynotes.search.subject.entity.EsSearchArg; //import com.zjty.tynotes.search.subject.entity.EsSearchArg;
import com.zjty.tynotes.search.subject.service.EsUtil; //import com.zjty.tynotes.search.subject.service.EsUtil;
import lombok.extern.slf4j.Slf4j; //import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; //import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate; //import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service; //import org.springframework.stereotype.Service;
//
import java.util.*; //import java.util.*;
//
@Service //@Service
@Slf4j //@Slf4j
public class WorkShowSeeServiceImpl implements WorkShowSeeService { //public class WorkShowSeeServiceImpl implements WorkShowSeeService {
@Autowired // @Autowired
EsUtil esUtil; // EsUtil esUtil;
//
@Autowired // @Autowired
RedisTemplate<String,Object> redisTemplate; // RedisTemplate<String,Object> redisTemplate;
@Override // @Override
public EsListSum selectMeWork(String id, int page, int size) { // public EsListSum selectMeWork(String id, int page, int size) {
List<Object> objectList=redisTemplate.opsForList().range(Constants.REDIS_EVENT+id,0,-1); // List<Object> objectList=redisTemplate.opsForList().range(Constants.REDIS_EVENT+id,0,-1);
CollectionRs collection=esUtil.getMeTask(id,new EsSearchArg.Builder().page(page).size(size).build()); // CollectionRs collection=esUtil.getMeTask(id,new EsSearchArg.Builder().page(page).size(size).build());
assert objectList != null; // assert objectList != null;
List<RedisPersonalWork> list=redisToEs(objectList,collection.getSource()); // List<RedisPersonalWork> list=redisToEs(objectList,collection.getSource());
list.sort(Comparator.comparing(RedisPersonalWork::getTime).reversed()); // list.sort(Comparator.comparing(RedisPersonalWork::getTime).reversed());
return new EsListSum(collection.getTotal(),list); // return new EsListSum(collection.getTotal(),list);
} // }
//
@Override // @Override
public EsListSum selectMeReceiveWork(String id, int page, int size) { // public EsListSum selectMeReceiveWork(String id, int page, int size) {
List<Object> objectList=redisTemplate.opsForList().range(Constants.REDIS_EVENT+id,0,-1); // List<Object> objectList=redisTemplate.opsForList().range(Constants.REDIS_EVENT+id,0,-1);
//
//分解任务中的子任务 // //分解任务中的子任务
List<String> list=new ArrayList<>(); // List<String> list=new ArrayList<>();
//没有子任务的分解任务 // //没有子任务的分解任务
List<String> list1=new ArrayList<>(); // List<String> list1=new ArrayList<>();
List<RedisPersonalWork> redisPersonalWorks=new ArrayList<>(); // List<RedisPersonalWork> redisPersonalWorks=new ArrayList<>();
for (Object object:objectList){ // for (Object object:objectList){
RedisPersonalWork redisPersonalWork=(RedisPersonalWork) object; // RedisPersonalWork redisPersonalWork=(RedisPersonalWork) object;
if (redisPersonalWork.getSubtaskIds()!=null){ // if (redisPersonalWork.getSubtaskIds()!=null){
list.addAll(redisPersonalWork.getSubtaskIds()); // list.addAll(redisPersonalWork.getSubtaskIds());
}else { // }else {
list1.add(redisPersonalWork.getWorkId()); // list1.add(redisPersonalWork.getWorkId());
} // }
} // }
list1.removeAll(list); // list1.removeAll(list);
//
for (Object object:objectList){ // for (Object object:objectList){
RedisPersonalWork redisPersonalWork=(RedisPersonalWork) object; // RedisPersonalWork redisPersonalWork=(RedisPersonalWork) object;
for (String ids:list1){ // for (String ids:list1){
if (redisPersonalWork.getWorkId().equals(ids)){ // if (redisPersonalWork.getWorkId().equals(ids)){
redisPersonalWorks.add(redisPersonalWork); // redisPersonalWorks.add(redisPersonalWork);
} // }
} // }
} // }
//
//
return new EsListSum((long) redisPersonalWorks.size(),redisPersonalWorks); // return new EsListSum((long) redisPersonalWorks.size(),redisPersonalWorks);
} // }
//
@Override // @Override
public EsListSum selectMeResolveWork(String id, int page, int size) { // public EsListSum selectMeResolveWork(String id, int page, int size) {
List<Object> objectList=redisTemplate.opsForList().range(Constants.REDIS_EVENT+id,0,-1); // List<Object> objectList=redisTemplate.opsForList().range(Constants.REDIS_EVENT+id,0,-1);
CollectionRs collection=esUtil.getMeResolveTask(id,new EsSearchArg.Builder().page(page).size(size).build()); // CollectionRs collection=esUtil.getMeResolveTask(id,new EsSearchArg.Builder().page(page).size(size).build());
assert objectList != null; // assert objectList != null;
List<RedisPersonalWork> list=redisToEs(objectList,collection.getSource()); // List<RedisPersonalWork> list=redisToEs(objectList,collection.getSource());
list.sort(Comparator.comparing(RedisPersonalWork::getTime).reversed()); // list.sort(Comparator.comparing(RedisPersonalWork::getTime).reversed());
return new EsListSum(collection.getTotal(),list); // return new EsListSum(collection.getTotal(),list);
} // }
//
@Override // @Override
public EsListSum selectMeReleaseWork(String id, int page, int size) { // public EsListSum selectMeReleaseWork(String id, int page, int size) {
//
List<Object> objectList=redisTemplate.opsForList().range(Constants.REDIS_EVENT+id,0,-1); // List<Object> objectList=redisTemplate.opsForList().range(Constants.REDIS_EVENT+id,0,-1);
CollectionRs collection=esUtil.getMeReleaseTask(id,new EsSearchArg.Builder().page(page).size(size).build()); // CollectionRs collection=esUtil.getMeReleaseTask(id,new EsSearchArg.Builder().page(page).size(size).build());
assert objectList != null; // assert objectList != null;
List<RedisPersonalWork> list=redisToEs(objectList,collection.getSource()); // List<RedisPersonalWork> list=redisToEs(objectList,collection.getSource());
list.sort(Comparator.comparing(RedisPersonalWork::getTime).reversed()); // list.sort(Comparator.comparing(RedisPersonalWork::getTime).reversed());
return new EsListSum(collection.getTotal(),list); // return new EsListSum(collection.getTotal(),list);
} // }
//
@Override // @Override
public EsListSum titleSelect(String id, int page, int size, String title) { // public EsListSum titleSelect(String id, int page, int size, String title) {
CollectionRs collection=esUtil.getTaskByTitle(id,title,page,size); // CollectionRs collection=esUtil.getTaskByTitle(id,title,page,size);
String s = JacksonUtil.toJSon(collection.getSource()); // String s = JacksonUtil.toJSon(collection.getSource());
List<RedisPersonalWork> eventTitles = JacksonUtil.readValue(s, new TypeReference<List<RedisPersonalWork>>() { // List<RedisPersonalWork> eventTitles = JacksonUtil.readValue(s, new TypeReference<List<RedisPersonalWork>>() {
}); // });
assert eventTitles != null; // assert eventTitles != null;
eventTitles.sort(Comparator.comparing(RedisPersonalWork::getTime).reversed()); // eventTitles.sort(Comparator.comparing(RedisPersonalWork::getTime).reversed());
return new EsListSum(collection.getTotal(),eventTitles); // return new EsListSum(collection.getTotal(),eventTitles);
} // }
//
//
private List<RedisPersonalWork> redisToEs(List<Object> objectList, List<Map<String,Object>> esList){ // private List<RedisPersonalWork> redisToEs(List<Object> objectList, List<Map<String,Object>> esList){
List<RedisPersonalWork> eventTitles=new ArrayList<>(); // List<RedisPersonalWork> eventTitles=new ArrayList<>();
for (Object obj:objectList){ // for (Object obj:objectList){
RedisPersonalWork eventTitle=(RedisPersonalWork)obj; // RedisPersonalWork eventTitle=(RedisPersonalWork)obj;
for (Map<String,Object> map:esList){ // for (Map<String,Object> map:esList){
if (eventTitle.getWorkId().equals(map.get("workId"))){ // if (eventTitle.getWorkId().equals(map.get("workId"))){
eventTitles.add(eventTitle); // eventTitles.add(eventTitle);
} // }
} // }
} // }
return eventTitles; // return eventTitles;
} // }
//
//
//
} //}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论