Browse Source

20220328移动项目

contest
zy_Java 3 years ago
parent
commit
32a92e7e57
  1. 208
      src/main/java/com/ccsens/ptccsens/service/TallService.java

208
src/main/java/com/ccsens/ptccsens/service/TallService.java

@ -155,9 +155,6 @@ public class TallService implements ITallService {
@SneakyThrows @SneakyThrows
@Override @Override
public TallWbsVo.WbsPath exportWbs(String token, TallProjectDto.ProjectById param) { public TallWbsVo.WbsPath exportWbs(String token, TallProjectDto.ProjectById param) {
//TODO 验证项目id是否正确
//TODO 暂时只查询二级任务,不管二级以下的子任务
//查询下项目信息 //查询下项目信息
TallWbsVo.WbsProjectInfo wbsProjectInfo = proProjectDao.getWbsProjectId(param.getProjectId()); TallWbsVo.WbsProjectInfo wbsProjectInfo = proProjectDao.getWbsProjectId(param.getProjectId());
if(ObjectUtil.isNull(wbsProjectInfo)){ if(ObjectUtil.isNull(wbsProjectInfo)){
@ -200,18 +197,8 @@ public class TallService implements ITallService {
@Override @Override
public List<TallProjectVo.ProjectInfo> queryProjectByUser(String token, TallProjectDto.QueryProjectDto param) { public List<TallProjectVo.ProjectInfo> queryProjectByUser(String token, TallProjectDto.QueryProjectDto param) {
// TallTokenVo.UserIdByToken userByToken = TokenUtil.getUserByToken(new TallTokenDto.GetUserByToken(token, Constant.APP_ID, Constant.APP_SECRET));
// if(ObjectUtil.isNull(userByToken)){
// return null;
// }
// //通过手机号获取用户在服务内的userId
// ProUser user = null;
// if(StrUtil.isNotBlank(userByToken.getPhone())){
// user = userDao.getUserIdByPhone(userByToken.getPhone());
// }
//TODO 暂时查询全部,无论是否查到user //TODO 暂时查询全部,无论是否查到user
// List<TallProjectVo.ProjectInfo> projectInfos = new ArrayList<>();
//查找所有没有上级的项目,作为MWBS //查找所有没有上级的项目,作为MWBS
List<TallProjectVo.ProjectInfo> mWbs = taskDetailDao.queryMwbs(param.getStartTime(),param.getEndTime(),null); List<TallProjectVo.ProjectInfo> mWbs = taskDetailDao.queryMwbs(param.getStartTime(),param.getEndTime(),null);
if(CollectionUtil.isNotEmpty(mWbs)){ if(CollectionUtil.isNotEmpty(mWbs)){
@ -398,44 +385,45 @@ public class TallService implements ITallService {
return regularTask; return regularTask;
} }
/** // /**
* 判断当前用户的角色是否被设置不可见(是否有权限查看任务) // * 判断当前用户的角色是否被设置不可见(是否有权限查看任务)
* // *
* @param roleId 查看的角色id // * @param roleId 查看的角色id
* @param userId 用户id // * @param userId 用户id
* @return 是否可见(true可见, false不可见) // * @return 是否可见(true可见, false不可见)
*/ // */
public Boolean queryRoleIsLook(Long roleId, Long userId) { // public Boolean queryRoleIsLook(Long roleId, Long userId) {
byte visitor = 0; // byte visitor = 0;
Long projectId = roleDao.findRoleOfProjectId(roleId); // Long projectId = roleDao.findRoleOfProjectId(roleId);
if (ObjectUtil.isNull(projectId)) { // if (ObjectUtil.isNull(projectId)) {
throw new BaseException(BasicsCodeError.ROLE_ERROR); // throw new BaseException(BasicsCodeError.ROLE_ERROR);
} // }
Long memberId = memberDao.findUserOfMemberId(projectId, userId); // Long memberId = memberDao.findUserOfMemberId(projectId, userId);
//不是项目成员则为游客 // //不是项目成员则为游客
if (ObjectUtil.isNull(memberId)) { // if (ObjectUtil.isNull(memberId)) {
visitor = 1; // visitor = 1;
} // }
//查看角色互斥表是否有对所属角色不可见 // //查看角色互斥表是否有对所属角色不可见
List<Long> repulsionRoleIds = roleRepulsionDao.findRepulsionByRoleId(roleId); // List<Long> repulsionRoleIds = roleRepulsionDao.findRepulsionByRoleId(roleId);
//如果为游客 // //如果为游客
if (1 == visitor) { // if (1 == visitor) {
return !CollectionUtil.isNotEmpty(repulsionRoleIds); // return !CollectionUtil.isNotEmpty(repulsionRoleIds);
} // }
//查找成员所属的所有角色 // //查找成员所属的所有角色
List<Long> roleIds = roleMemberDao.findMemberOfRoleIds(memberId); // List<Long> roleIds = roleMemberDao.findMemberOfRoleIds(memberId);
if (CollectionUtil.isEmpty(roleIds)) { // if (CollectionUtil.isEmpty(roleIds)) {
if (CollectionUtil.isNotEmpty(repulsionRoleIds)) { // if (CollectionUtil.isNotEmpty(repulsionRoleIds)) {
return false; // return false;
} // }
} // }
//排斥角色包含所有所属角色则不可见 // //排斥角色包含所有所属角色则不可见
if (CollectionUtil.isNotEmpty(repulsionRoleIds) && CollectionUtil.isNotEmpty(roleIds)) { // if (CollectionUtil.isNotEmpty(repulsionRoleIds) && CollectionUtil.isNotEmpty(roleIds)) {
boolean isLook = repulsionRoleIds.containsAll(roleIds); // boolean isLook = repulsionRoleIds.containsAll(roleIds);
return !isLook; // return !isLook;
} // }
return true; // return true;
} // }
/** /**
* 查询任务的插件相关信息 * 查询任务的插件相关信息
@ -535,65 +523,65 @@ public class TallService implements ITallService {
} }
/** // /**
* 查看定期任务和任务下的插件展示信息 // * 查看定期任务和任务下的插件展示信息
* @param token token // * @param token token
* @param param 查询条件 // * @param param 查询条件
* @return 返回任务列表和对应的插件展示信息 // * @return 返回任务列表和对应的插件展示信息
*/ // */
@Override // @Override
public List<TallTaskVo.QueryTask> queryRegularTaskAndPlugin(String token, TallTaskDto.QueryRegularTask param) { // public List<TallTaskVo.QueryTask> queryRegularTaskAndPlugin(String token, TallTaskDto.QueryRegularTask param) {
ProUser user = getUserByToken(token); // ProUser user = getUserByToken(token);
log.info("本服务下的用户信息:{}", user); // log.info("本服务下的用户信息:{}", user);
//
//查找类型:0向上查找,1向下查找(默认),下查包含自己,上查不包含 // //查找类型:0向上查找,1向下查找(默认),下查包含自己,上查不包含
//根据参数配置sql语句 // //根据参数配置sql语句
String query = ""; // String query = "";
String timeFormat = Constant.timeFormat.get(param.getTimeUnit()); // String timeFormat = Constant.timeFormat.get(param.getTimeUnit());
String unit = Constant.timeUnit.get(param.getTimeUnit()); // String unit = Constant.timeUnit.get(param.getTimeUnit());
if (0 == param.getQueryType()) { // if (0 == param.getQueryType()) {
query = "interval -" + param.getQueryNum() + " " + unit; // query = "interval -" + param.getQueryNum() + " " + unit;
} else { // } else {
query += "interval " + (param.getQueryNum() - 1) + " " + unit; // query += "interval " + (param.getQueryNum() - 1) + " " + unit;
} // }
//
List<Long> roleIds = new ArrayList<>(); // List<Long> roleIds = new ArrayList<>();
roleIds.add(param.getRoleId()); // roleIds.add(param.getRoleId());
//
List<TallTaskVo.QueryTask> regularTask = taskDetailDao.queryRegularTask(roleIds, param.getTimeUnit(), param.getTimeNode(), param.getQueryType(), query, timeFormat); // List<TallTaskVo.QueryTask> regularTask = taskDetailDao.queryRegularTask(roleIds, param.getTimeUnit(), param.getTimeNode(), param.getQueryType(), query, timeFormat);
//如果该时段没有任务向上或向下补充 // //如果该时段没有任务向上或向下补充
if (CollectionUtil.isEmpty(regularTask)) { // if (CollectionUtil.isEmpty(regularTask)) {
List<TallTaskVo.QueryTask> replenishTask = taskDetailDao.continueQueryTask(roleIds, param.getTimeUnit(), param.getTimeNode(), param.getQueryType(), query, timeFormat); // List<TallTaskVo.QueryTask> replenishTask = taskDetailDao.continueQueryTask(roleIds, param.getTimeUnit(), param.getTimeNode(), param.getQueryType(), query, timeFormat);
Map<String, List<TallTaskVo.QueryTask>> taskMap = replenishTask.stream().collect(Collectors.groupingBy(task -> new SimpleDateFormat("yyyy-MM-dd").format(new Date(task.getPlanStart())))); // Map<String, List<TallTaskVo.QueryTask>> taskMap = replenishTask.stream().collect(Collectors.groupingBy(task -> new SimpleDateFormat("yyyy-MM-dd").format(new Date(task.getPlanStart()))));
List<String> mapOfKey = new ArrayList<>(); // List<String> mapOfKey = new ArrayList<>();
taskMap.forEach((key, val) -> mapOfKey.add(key)); // taskMap.forEach((key, val) -> mapOfKey.add(key));
if (CollectionUtil.isNotEmpty(mapOfKey)) { // if (CollectionUtil.isNotEmpty(mapOfKey)) {
if (0 == param.getQueryType()) { // if (0 == param.getQueryType()) {
String max = Collections.max(mapOfKey); // String max = Collections.max(mapOfKey);
queryPluginForTask(taskMap.get(max)); // queryPluginForTask(taskMap.get(max));
return taskMap.get(max); // return taskMap.get(max);
} else { // } else {
String min = Collections.min(mapOfKey); // String min = Collections.min(mapOfKey);
queryPluginForTask(taskMap.get(min)); // queryPluginForTask(taskMap.get(min));
return taskMap.get(min); // return taskMap.get(min);
} // }
} // }
queryPluginForTask(replenishTask); // queryPluginForTask(replenishTask);
//查询任务下的检查人 // //查询任务下的检查人
queryCheckerOfTask(replenishTask); // queryCheckerOfTask(replenishTask);
//查询插件展示信息 // //查询插件展示信息
queryPluginShow(regularTask,user == null ? null : user.getId()); // queryPluginShow(regularTask,user == null ? null : user.getId());
return replenishTask; // return replenishTask;
} // }
queryPluginForTask(regularTask); // queryPluginForTask(regularTask);
//查询任务下的检查人 // //查询任务下的检查人
queryCheckerOfTask(regularTask); // queryCheckerOfTask(regularTask);
//
//查询插件展示信息 // //查询插件展示信息
queryPluginShow(regularTask,user == null ? null : user.getId()); // queryPluginShow(regularTask,user == null ? null : user.getId());
//
return regularTask; // return null;
} // }
private void queryPluginShow(List<TallTaskVo.QueryTask> regularTask,Long userId) { private void queryPluginShow(List<TallTaskVo.QueryTask> regularTask,Long userId) {
if(CollectionUtil.isEmpty(regularTask)){ if(CollectionUtil.isEmpty(regularTask)){

Loading…
Cancel
Save