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

修改添加任务的bug

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