diff --git a/src/main/java/com/ccsens/ptccsens/api/DeliverController.java b/src/main/java/com/ccsens/ptccsens/api/DeliverController.java index 44343f7..02e6d6c 100644 --- a/src/main/java/com/ccsens/ptccsens/api/DeliverController.java +++ b/src/main/java/com/ccsens/ptccsens/api/DeliverController.java @@ -33,7 +33,7 @@ public class DeliverController { @Resource private IDeliverService deliverService; - @MustLogin +// @MustLogin @ApiOperation(value = "查询所有成员", notes = "") @RequestMapping(value = "/queryChecker", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) public JsonResponse> queryChecker(@ApiParam @Validated @RequestBody QueryDto params) throws Exception{ diff --git a/src/main/java/com/ccsens/ptccsens/aspect/MustLoginAspect.java b/src/main/java/com/ccsens/ptccsens/aspect/MustLoginAspect.java index a1cac48..edfd757 100644 --- a/src/main/java/com/ccsens/ptccsens/aspect/MustLoginAspect.java +++ b/src/main/java/com/ccsens/ptccsens/aspect/MustLoginAspect.java @@ -5,6 +5,7 @@ import cn.hutool.core.util.StrUtil; import com.ccsens.ptccsens.annotation.MustLogin; import com.ccsens.ptccsens.bean.po.ProUser; import com.ccsens.ptccsens.persist.dao.UserDao; +import com.ccsens.ptccsens.util.BasicsCodeError; import com.ccsens.ptccsens.util.Constant; import com.ccsens.util.CodeEnum; import com.ccsens.util.JsonResponse; @@ -84,8 +85,8 @@ public class MustLoginAspect { fillSpecial(dto, mustLoginAnnotation); //必须登录,未登录直接返回未登录相关信息 - if (user == null) { - return JsonResponse.newInstance().ok(CodeEnum.NOT_LOGIN); + if (ObjectUtil.isNull(user)) { + return JsonResponse.newInstance().ok(BasicsCodeError.NOT_USER_SERVER); } // JSONObject json = JSONObject.parseObject(JSON.toJSONString(response.getData())); // Long userId = json.getLong("id"); diff --git a/src/main/java/com/ccsens/ptccsens/bean/vo/DeliverVo.java b/src/main/java/com/ccsens/ptccsens/bean/vo/DeliverVo.java index 2b641ea..b391d0c 100644 --- a/src/main/java/com/ccsens/ptccsens/bean/vo/DeliverVo.java +++ b/src/main/java/com/ccsens/ptccsens/bean/vo/DeliverVo.java @@ -21,13 +21,13 @@ public class DeliverVo { @ApiModelProperty("交付物名字") private String deliverName; @ApiModelProperty("交付物提交记录id") - private Long deliverRecordId; + private String deliverRecordId; @ApiModelProperty("文件路径") private List details; @ApiModelProperty("提交时间") private Long submitTime; @ApiModelProperty("提交人Id") - private Long submitMemberId; + private String submitMemberId; @ApiModelProperty("提交人名称") private String submitMemberName; @ApiModelProperty("检查人列表") @@ -38,13 +38,13 @@ public class DeliverVo { @ApiModel("检查人信息") public static class CheckerInfo{ @ApiModelProperty("检查记录id") - private Long checkId; + private String checkId; @ApiModelProperty("检查人id") - private Long checkerId; + private String checkerId; @ApiModelProperty("检查人名字") private String checkerName; @ApiModelProperty("检查状态(0-未审核,1-通过,2-驳回)") - private Byte status; + private Byte status = 0; @ApiModelProperty("分数") private BigDecimal score; @ApiModelProperty("备注") diff --git a/src/main/java/com/ccsens/ptccsens/persist/dao/ProTaskPluginDao.java b/src/main/java/com/ccsens/ptccsens/persist/dao/ProTaskPluginDao.java index ac3cf15..60ed99e 100644 --- a/src/main/java/com/ccsens/ptccsens/persist/dao/ProTaskPluginDao.java +++ b/src/main/java/com/ccsens/ptccsens/persist/dao/ProTaskPluginDao.java @@ -15,12 +15,13 @@ import java.util.List; public interface ProTaskPluginDao extends ProTaskPluginMapper { /** * 根据任务id查询已配置的插件 - * @param detailTaskId 任务详情id + * @param subId 任务分解id * @return 插件列表 */ - List queryTaskOfPlugin(@Param("detailTaskId") Long detailTaskId); + List queryTaskOfPlugin(@Param("subId") Long subId); void insertReplace(ProTaskPlugin proTaskPlugin); + // /** // * 根据任务id列表查询任务插件 // * @param oldTaskIdList 任务id列表 diff --git a/src/main/java/com/ccsens/ptccsens/service/DeliverService.java b/src/main/java/com/ccsens/ptccsens/service/DeliverService.java index b69f2ce..fe25103 100644 --- a/src/main/java/com/ccsens/ptccsens/service/DeliverService.java +++ b/src/main/java/com/ccsens/ptccsens/service/DeliverService.java @@ -156,12 +156,12 @@ public class DeliverService implements IDeliverService { //查询当前任务的交付物插件id Long pluginId = proTaskDetailDao.getDeliverPluginIdBySubTaskId(pluDeliver.getTaskSubId()); if(CollectionUtil.isNotEmpty(roleIdList)){ - roleIdList.forEach(roleId -> { - //生成消息内容 - RemindMessageDto remindMessageDto = new RemindMessageDto(param.getProjectId(),roleId,pluDeliver.getTaskSubId(),pluginId,taskType,"提交交付物"); +// roleIdList.forEach(roleId -> { +// //生成消息内容 + RemindMessageDto remindMessageDto = new RemindMessageDto(param.getProjectId(),roleIdList.get(0),pluDeliver.getTaskSubId(),pluginId,taskType,"提交交付物"); //TODO 发送消息 MessageUtil.sendToUser(phoneList,null,remindMessageDto,MessageConstant.DomainType.User,null); - }); +// }); } } diff --git a/src/main/java/com/ccsens/ptccsens/service/ExportService.java b/src/main/java/com/ccsens/ptccsens/service/ExportService.java index ccfa7f4..bd866d1 100644 --- a/src/main/java/com/ccsens/ptccsens/service/ExportService.java +++ b/src/main/java/com/ccsens/ptccsens/service/ExportService.java @@ -30,11 +30,9 @@ public class ExportService implements IExportService { public String exportWbs(TallWbsVo.WbsProjectInfo wbsProjectInfo, List wbsTaskInfo, TallWbsVo.WbsRoleInfo wbsRoleInfo) throws Exception { Workbook wb = new XSSFWorkbook(); //生成wbs表的数据 - List> wbs = generateWbs(wbsProjectInfo,wbsTaskInfo); + generateWbs(wb,wbsProjectInfo,wbsTaskInfo); //生成项目成员表的数据 List> member = generateMember(wbsRoleInfo); - //写入数据 - PoiUtil.exportWB("WBS", wbs, wb); PoiUtil.exportWB("项目成员表", member, wb); //生成文件 String fileName = "exportWbs/" + DateUtil.today() + "/" + System.currentTimeMillis() + ".xlsx"; @@ -53,13 +51,14 @@ public class ExportService implements IExportService { /** * 生成wbs表的数据 */ - private List> generateWbs(TallWbsVo.WbsProjectInfo wbsProjectInfo, List wbsTaskInfo) { - List> wbs = new ArrayList<>(); + private void generateWbs(Workbook wb, TallWbsVo.WbsProjectInfo wbsProjectInfo, List wbsTaskInfo) { + List> projectWbs = new ArrayList<>(); //项目标题 - generateWbsProject(wbs,wbsProjectInfo); + generateWbsProject(projectWbs,wbsProjectInfo); + PoiUtil.exportWB("WBS", projectWbs, wb); //任务 - generateWbsTask(wbs,wbsTaskInfo); - return wbs; + List> taskWbs = new ArrayList<>(); + generateWbsTask(wb, taskWbs,wbsTaskInfo,projectWbs.size()); } /** @@ -95,7 +94,7 @@ public class ExportService implements IExportService { /** * 生成任务数据 */ - private void generateWbsTask(List> wbs, List wbsTaskInfo) { + private void generateWbsTask(Workbook wb, List> wbs, List wbsTaskInfo,int rowIndex) { //任务标题 List taskHeader = new ArrayList<>(); taskHeader.add(new PoiUtil.PoiUtilCell("项目任务分解(PWBS)",15,1)); @@ -192,9 +191,16 @@ public class ExportService implements IExportService { taskRow.add(new PoiUtil.PoiUtilCell(secondTask.getPluginThreeName(),secondTask.getPluginThreeId(),1,1)); } wbs.add(taskRow); + if(wbs.size() >= 10){ + //写入数据 + PoiUtil.exportWB("WBS", rowIndex, wbs, wb); + rowIndex += 10; + wbs.clear(); + } } } - + //写入数据 + PoiUtil.exportWB("WBS", rowIndex, wbs, wb); } /** diff --git a/src/main/java/com/ccsens/ptccsens/service/TallService.java b/src/main/java/com/ccsens/ptccsens/service/TallService.java index 3437928..216e7fc 100644 --- a/src/main/java/com/ccsens/ptccsens/service/TallService.java +++ b/src/main/java/com/ccsens/ptccsens/service/TallService.java @@ -89,16 +89,17 @@ public class TallService implements ITallService { if(ObjectUtil.isNull(userByToken)){ throw new BaseException(CodeEnum.NOT_LOGIN); } + log.info("token获取的用户信息:{}", userByToken); //通过手机号获取用户在服务内的userId - ProUser user = new ProUser(); + ProUser user = null; if(ObjectUtil.isNotNull(userByToken) && StrUtil.isNotBlank(userByToken.getPhone())){ user = userDao.getUserIdByPhone(userByToken.getPhone()); } - if(user == null){ - throw new BaseException(CodeEnum.NOT_LOGIN); + log.info("本服务下的用户信息:{}", user); + if(ObjectUtil.isNull(user)){ + throw new BaseException(BasicsCodeError.NOT_USER_SERVER); } - String ext = FileUtil.extName(params.getOriginalFilename()); if(StrUtil.isEmpty(ext) || !Constant.WbsExcel.WBS_FILE_FORMAT.contains(ext)){ throw new BaseException(BasicsCodeError.FILE_FORMAT_ERROR); @@ -294,13 +295,13 @@ public class TallService implements ITallService { throw new BaseException(CodeEnum.NOT_LOGIN); } //通过手机号获取用户在服务内的userId - ProUser user = new ProUser(); + ProUser user = null; if(ObjectUtil.isNotNull(userByToken) && StrUtil.isNotBlank(userByToken.getPhone())){ user = userDao.getUserIdByPhone(userByToken.getPhone()); } - if(user == null){ - throw new BaseException(CodeEnum.NOT_LOGIN); - } +// if(ObjectUtil.isNull(user)){ +// throw new BaseException(BasicsCodeError.NOT_USER_SERVER); +// } List roleIds = new ArrayList<>(); roleIds.add(param.getRoleId()); @@ -312,7 +313,7 @@ public class TallService implements ITallService { queryCheckerOfTask(permanentGlobalTask); //TODO 查询插件展示信息 - queryPluginShow(permanentGlobalTask,user.getId()); + queryPluginShow(permanentGlobalTask,user == null ? null : user.getId()); return permanentGlobalTask; } @@ -323,13 +324,13 @@ public class TallService implements ITallService { throw new BaseException(CodeEnum.NOT_LOGIN); } //通过手机号获取用户在服务内的userId - ProUser user = new ProUser(); + ProUser user = null; if(ObjectUtil.isNotNull(userByToken) && StrUtil.isNotBlank(userByToken.getPhone())){ user = userDao.getUserIdByPhone(userByToken.getPhone()); } - if(user == null){ - throw new BaseException(CodeEnum.NOT_LOGIN); - } +// if(ObjectUtil.isNull(user)){ +// throw new BaseException(BasicsCodeError.NOT_USER_SERVER); +// } List roleIds = new ArrayList<>(); roleIds.add(param.getRoleId()); @@ -340,7 +341,7 @@ public class TallService implements ITallService { queryCheckerOfTask(globalTask); //TODO 查询插件展示信息 - queryPluginShow(globalTask,user.getId()); + queryPluginShow(globalTask,user == null ? null : user.getId()); return globalTask; } @@ -453,15 +454,15 @@ public class TallService implements ITallService { //创建任务面板的二维数组 createSecondPanel(plugins, panelRow, panelCol); //将插件放入二维数组对应的位置中 - List taskPluginInfoList = taskPluginDao.queryTaskOfPlugin(queryTask.getDetailId()); + List taskPluginInfoList = taskPluginDao.queryTaskOfPlugin(queryTask.getId()); putDateInList(taskPluginInfoList, plugins, queryTask); } else { //根据插件最大的行和列创建二维数组 - createPanelByPlugin(queryTask.getDetailId(), plugins, queryTask); + createPanelByPlugin(plugins, queryTask); } } else { //根据插件最大的行和列创建二维数组 - createPanelByPlugin(queryTask.getDetailId(), plugins, queryTask); + createPanelByPlugin(plugins, queryTask); } } } @@ -516,12 +517,11 @@ public class TallService implements ITallService { /** * 根据插件的最大行列创建面板 * - * @param taskDetailId 任务详情id * @param plugins 插件列表 * @param queryTask 任务 */ - public void createPanelByPlugin(Long taskDetailId, List> plugins, TallTaskVo.QueryTask queryTask) { - List taskPluginInfoList = taskPluginDao.queryTaskOfPlugin(taskDetailId); + public void createPanelByPlugin(List> plugins, TallTaskVo.QueryTask queryTask) { + List taskPluginInfoList = taskPluginDao.queryTaskOfPlugin(queryTask.getId()); if (CollectionUtil.isNotEmpty(taskPluginInfoList)) { List col = taskPluginInfoList.stream().map(TallTaskVo.TaskPluginInfo::getCol).collect(Collectors.toList()); List row = taskPluginInfoList.stream().map(TallTaskVo.TaskPluginInfo::getRow).collect(Collectors.toList()); @@ -549,13 +549,13 @@ public class TallService implements ITallService { throw new BaseException(CodeEnum.NOT_LOGIN); } //通过手机号获取用户在服务内的userId - ProUser user = new ProUser(); + ProUser user = null; if(ObjectUtil.isNotNull(userByToken) && StrUtil.isNotBlank(userByToken.getPhone())){ user = userDao.getUserIdByPhone(userByToken.getPhone()); } - if(user == null){ - throw new BaseException(CodeEnum.NOT_LOGIN); - } +// if(ObjectUtil.isNull(user)){ +// throw new BaseException(BasicsCodeError.NOT_USER_SERVER); +// } //查找类型:0向上查找,1向下查找(默认),下查包含自己,上查不包含 //根据参数配置sql语句 @@ -594,7 +594,7 @@ public class TallService implements ITallService { //查询任务下的检查人 queryCheckerOfTask(replenishTask); //TODO 查询插件展示信息 - queryPluginShow(regularTask,user.getId()); + queryPluginShow(regularTask,user == null ? null : user.getId()); return replenishTask; } queryPluginForTask(regularTask); @@ -602,7 +602,7 @@ public class TallService implements ITallService { queryCheckerOfTask(regularTask); //TODO 查询插件展示信息 - queryPluginShow(regularTask,user.getId()); + queryPluginShow(regularTask,user == null ? null : user.getId()); return regularTask; } @@ -613,9 +613,11 @@ public class TallService implements ITallService { } for (TallTaskVo.QueryTask queryTask : regularTask) { if(CollectionUtil.isNotEmpty(queryTask.getPlugins())){ - queryTask.getPlugins().forEach(pluginInfos -> { - if(CollectionUtil.isNotEmpty(pluginInfos)){ - pluginInfos.forEach(plugin ->{ + + for (List plugins : queryTask.getPlugins()) { + if(CollectionUtil.isNotEmpty(plugins)){ + for (TallTaskVo.TaskPluginInfo plugin : plugins) { + System.out.println("====" + plugin); //TODO 判断插件类型,暂时一个个的判断,之后应该是统一的接口 Long pluginId = plugin.getPluginId(); if (pluginId == 15L) { @@ -627,9 +629,26 @@ public class TallService implements ITallService { FinanceVo.FinanceItem byTask = financeService.getByTask(new FinanceDto.TaskId(queryTask.getDetailId())); plugin.setData(JSON.toJSONString(byTask)); } - }); + } } - }); + } +// queryTask.getPlugins().forEach(pluginInfos -> { +// if(CollectionUtil.isNotEmpty(pluginInfos)){ +// pluginInfos.forEach(plugin ->{ +// //TODO 判断插件类型,暂时一个个的判断,之后应该是统一的接口 +// Long pluginId = plugin.getPluginId(); +// if (pluginId == 15L) { +// //TODO 查找交付物的信息 +// DeliverVo.DeliverOfTask deliverByTask = pluDeliverDao.getDeliverByTask(queryTask.getId(), userId); +// plugin.setData(JSON.toJSONString(deliverByTask)); +// } else if (pluginId == 18L) { +// //TODO 查找财务条的信息 +// FinanceVo.FinanceItem byTask = financeService.getByTask(new FinanceDto.TaskId(queryTask.getDetailId())); +// plugin.setData(JSON.toJSONString(byTask)); +// } +// }); +// } +// }); } } } @@ -642,13 +661,13 @@ public class TallService implements ITallService { throw new BaseException(CodeEnum.NOT_LOGIN); } //通过手机号获取用户在服务内的userId - ProUser user = new ProUser(); + ProUser user = null; if(ObjectUtil.isNotNull(userByToken) && StrUtil.isNotBlank(userByToken.getPhone())){ user = userDao.getUserIdByPhone(userByToken.getPhone()); } - if(user == null){ - throw new BaseException(CodeEnum.NOT_LOGIN); - } +// if(ObjectUtil.isNull(user)){ +// throw new BaseException(BasicsCodeError.NOT_USER_SERVER); +// } //查询用的时间 Long queryTime = System.currentTimeMillis(); @@ -692,7 +711,7 @@ public class TallService implements ITallService { //查询任务下的检查人 queryCheckerOfTask(queryTaskPageInfo.getList()); //TODO 查询插件展示信息 - queryPluginShow(queryTaskPageInfo.getList(),user.getId()); + queryPluginShow(queryTaskPageInfo.getList(),user == null ? null : user.getId()); } return queryTaskPageInfo; diff --git a/src/main/java/com/ccsens/ptccsens/util/BasicsCodeError.java b/src/main/java/com/ccsens/ptccsens/util/BasicsCodeError.java index 2aeddc8..30b1028 100644 --- a/src/main/java/com/ccsens/ptccsens/util/BasicsCodeError.java +++ b/src/main/java/com/ccsens/ptccsens/util/BasicsCodeError.java @@ -7,6 +7,8 @@ import com.ccsens.util.CodeError; */ public class BasicsCodeError extends CodeError { + public static final Code NOT_USER_SERVER = new Code(407,"您不属于该服务的成员", true); + public static final Code NOT_WBS_SHEET = new Code(501,"找不到wbs表",true); public static final Code NOT_MEMBER_SHEET = new Code(502,"找不到项目成员表",true); public static final Code WSB_NOT_PROJECT_HEADER = new Code(503,"读取项目信息异常",true); @@ -53,4 +55,6 @@ public class BasicsCodeError extends CodeError { public static final Code NOT_CLOCKING_IN = new Code(536,"打卡记录不存在", true); public static final Code NOT_CLOCKING_IN_REMARK = new Code(537,"请填写补卡原因", true); + + } diff --git a/src/main/resources/mapper_dao/ProTaskPluginDao.xml b/src/main/resources/mapper_dao/ProTaskPluginDao.xml index 389a68d..7624014 100644 --- a/src/main/resources/mapper_dao/ProTaskPluginDao.xml +++ b/src/main/resources/mapper_dao/ProTaskPluginDao.xml @@ -120,24 +120,25 @@ - - + diff --git a/src/main/resources/mybatis/mybatis-config.xml b/src/main/resources/mybatis/mybatis-config.xml index e5a218d..14617fe 100644 --- a/src/main/resources/mybatis/mybatis-config.xml +++ b/src/main/resources/mybatis/mybatis-config.xml @@ -9,7 +9,7 @@ - +