From 489ef78c97e3abe1f4b034532c8d3f829aa05790 Mon Sep 17 00:00:00 2001 From: zy_Java <654600784@qq.com> Date: Sun, 25 Apr 2021 14:08:54 +0800 Subject: [PATCH 01/13] v --- tall/src/main/java/com/ccsens/tall/bean/vo/TaskVo.java | 6 ++++++ tall/src/main/resources/application.yml | 4 ++-- util/src/main/java/com/ccsens/util/wx/WxXcxUtil.java | 7 +++++++ 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/tall/src/main/java/com/ccsens/tall/bean/vo/TaskVo.java b/tall/src/main/java/com/ccsens/tall/bean/vo/TaskVo.java index ef73c024..33fd1b2e 100644 --- a/tall/src/main/java/com/ccsens/tall/bean/vo/TaskVo.java +++ b/tall/src/main/java/com/ccsens/tall/bean/vo/TaskVo.java @@ -73,6 +73,8 @@ public class TaskVo { private Byte routineLocation; @ApiModelProperty("入参") private String importParam; + @ApiModelProperty("任务配置") + private ProTaskShow proTaskConfig = new ProTaskShow(); public Long getDuration(){ if(ObjectUtil.isNotNull(beginTime) && ObjectUtil.isNotNull(endTime)) { return endTime - beginTime; @@ -101,6 +103,10 @@ public class TaskVo { private Long executorRole; @ApiModelProperty("负责人名称") private String executorRoleName; + @ApiModelProperty("检查人Id") + private Long checkerRole; + @ApiModelProperty("检查人名称") + private String checkerRoleName; @ApiModelProperty("开始时间") private Long beginTime; @ApiModelProperty("结束时间") diff --git a/tall/src/main/resources/application.yml b/tall/src/main/resources/application.yml index b5408a3a..e75cc2c3 100644 --- a/tall/src/main/resources/application.yml +++ b/tall/src/main/resources/application.yml @@ -1,5 +1,5 @@ spring: profiles: - active: dev - include: util-dev,common + active: prod + include: util-prod,common diff --git a/util/src/main/java/com/ccsens/util/wx/WxXcxUtil.java b/util/src/main/java/com/ccsens/util/wx/WxXcxUtil.java index b115c96b..74a499ed 100644 --- a/util/src/main/java/com/ccsens/util/wx/WxXcxUtil.java +++ b/util/src/main/java/com/ccsens/util/wx/WxXcxUtil.java @@ -171,6 +171,9 @@ public class WxXcxUtil { private static final String appid_health = "wx2f9ef33e08053bbf"; private static final String secret_health = "af90801c26bc177681b2c39a603605b9"; + private static final String appid_enterprise = "wx808fa75921bd8f22"; + private static final String secret_enterprise = "8d2e95462bfeab363ee84776bc807859"; + private static final String mchid = ""; private static final String key = ""; @@ -184,6 +187,8 @@ public class WxXcxUtil { return appid_bh; case "health": return appid_health; + case "enterprise": + return appid_enterprise; default: return appid; } @@ -199,6 +204,8 @@ public class WxXcxUtil { return secret_bh; case "health": return secret_health; + case "enterprise": + return secret_enterprise; default: return secret; } From 1029aff5e89e3c0351c6b676cdd248fa98101c31 Mon Sep 17 00:00:00 2001 From: zy_Java <654600784@qq.com> Date: Sun, 25 Apr 2021 14:44:35 +0800 Subject: [PATCH 02/13] v1.3 --- tall/src/main/resources/application.yml | 4 ++-- tall/src/main/resources/mapper_dao/SysOperationDao.xml | 2 ++ tall/src/main/resources/mapper_dao/SysProjectDao.xml | 8 +++++--- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/tall/src/main/resources/application.yml b/tall/src/main/resources/application.yml index e75cc2c3..b5408a3a 100644 --- a/tall/src/main/resources/application.yml +++ b/tall/src/main/resources/application.yml @@ -1,5 +1,5 @@ spring: profiles: - active: prod - include: util-prod,common + active: dev + include: util-dev,common diff --git a/tall/src/main/resources/mapper_dao/SysOperationDao.xml b/tall/src/main/resources/mapper_dao/SysOperationDao.xml index 6aeae11f..aaf74a30 100644 --- a/tall/src/main/resources/mapper_dao/SysOperationDao.xml +++ b/tall/src/main/resources/mapper_dao/SysOperationDao.xml @@ -85,10 +85,12 @@ t_sys_operation o WHERE o.rec_status = 0 + and o.project_id in #{id} + \ No newline at end of file From 29ac84e27d9a6a7cb6c0891391acae9b2140183d Mon Sep 17 00:00:00 2001 From: zy_Java <654600784@qq.com> Date: Sun, 25 Apr 2021 17:50:32 +0800 Subject: [PATCH 03/13] v1.5 --- tall/src/main/resources/mapper_dao/TaskDetailDao.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tall/src/main/resources/mapper_dao/TaskDetailDao.xml b/tall/src/main/resources/mapper_dao/TaskDetailDao.xml index e8cdbddd..c6cfef4e 100644 --- a/tall/src/main/resources/mapper_dao/TaskDetailDao.xml +++ b/tall/src/main/resources/mapper_dao/TaskDetailDao.xml @@ -22,6 +22,7 @@ + @@ -74,6 +75,7 @@ d.project_id as tProjectId, d.description as tDescription, d.executor_role as tExecutorRole, + d.checker_role as checkerRole, s.begin_time as tBeginTime, s.end_time as tEndTime, d.cycle as tCycle, From 5814d787ae40634f1a4e1f36889ea8074689b754 Mon Sep 17 00:00:00 2001 From: ma <1062634917@qq.com> Date: Sun, 25 Apr 2021 19:25:54 +0800 Subject: [PATCH 04/13] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=8E=86=E5=8F=B2?= =?UTF-8?q?=E8=AE=B0=E5=BD=95=E7=BC=BA=E9=99=B7,=E7=94=9F=E4=BA=A7?= =?UTF-8?q?=E5=BE=AE=E4=BF=A1=E7=99=BB=E5=BD=95=E9=97=AE=E9=A2=98,?= =?UTF-8?q?=E4=BA=A4=E4=BB=98=E7=89=A9=E9=BB=98=E8=AE=A4=E6=A3=80=E6=9F=A5?= =?UTF-8?q?=E4=BA=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tall/persist/dao/TaskDeliverDao.java | 7 ++++ .../tall/persist/dao/TaskDetailDao.java | 8 +++-- .../ccsens/tall/service/InputDocService.java | 6 +++- .../ccsens/tall/service/ProRoleService.java | 2 +- .../tall/service/ProTaskDetailService.java | 33 ++++++++++++------ .../tall/service/TaskDeliverService.java | 16 ++++++++- tall/src/main/resources/application-dev.yml | 2 ++ tall/src/main/resources/application.yml | 4 +-- .../main/resources/mapper_dao/DeliverDao.xml | 34 +++++++++++++++++++ .../mapper_dao/ProDeliverHistoryRecordDao.xml | 9 +++-- .../resources/mapper_dao/TaskDetailDao.xml | 28 ++++++++++++++- .../main/java/com/ccsens/util/PropUtil.java | 5 +++ .../java/com/ccsens/util/WebConstant.java | 2 +- .../java/com/ccsens/util/wx/WxGzhUtil.java | 19 +++++++---- 14 files changed, 148 insertions(+), 27 deletions(-) diff --git a/tall/src/main/java/com/ccsens/tall/persist/dao/TaskDeliverDao.java b/tall/src/main/java/com/ccsens/tall/persist/dao/TaskDeliverDao.java index a453054a..42342ca2 100644 --- a/tall/src/main/java/com/ccsens/tall/persist/dao/TaskDeliverDao.java +++ b/tall/src/main/java/com/ccsens/tall/persist/dao/TaskDeliverDao.java @@ -40,4 +40,11 @@ public interface TaskDeliverDao extends ProTaskDeliverMapper{ * @return */ List selectOutputDocByTaskId(Long taskId); + + /** + * 根据交付物id 查询出当前项目的项目经理 + * @param deliverId 交付物id + * @return 项目经理的id + */ + List selectPMIdByDeliverId(Long deliverId); } diff --git a/tall/src/main/java/com/ccsens/tall/persist/dao/TaskDetailDao.java b/tall/src/main/java/com/ccsens/tall/persist/dao/TaskDetailDao.java index c104d575..b451322d 100644 --- a/tall/src/main/java/com/ccsens/tall/persist/dao/TaskDetailDao.java +++ b/tall/src/main/java/com/ccsens/tall/persist/dao/TaskDetailDao.java @@ -72,6 +72,10 @@ public interface TaskDetailDao extends ProTaskDetailMapper { */ List queryLwbsByProjectId(@Param("projectId")Long projectId, @Param("startTime")Long startTime, @Param("endTime")Long endTime, @Param("userId")Long userId); - - + /** + * 通过任务详情id查询项目下的经理角色id + * @param id 任务详情id + * @return 项目经理id + */ + Long selectPmByTaskId(Long id); } diff --git a/tall/src/main/java/com/ccsens/tall/service/InputDocService.java b/tall/src/main/java/com/ccsens/tall/service/InputDocService.java index 7215d756..23b17604 100644 --- a/tall/src/main/java/com/ccsens/tall/service/InputDocService.java +++ b/tall/src/main/java/com/ccsens/tall/service/InputDocService.java @@ -59,6 +59,8 @@ public class InputDocService implements IInputDocService { private ProDeliverHistoryRecordDao deliverHistoryRecordDao; @Resource private IProMemberService iProMemberService; + @Resource + private TaskDeliverService taskDeliverService; // @@ -222,8 +224,10 @@ public class InputDocService implements IInputDocService { */ @Override public List findDocByTask(InputDocDto.FindDocByTask param) { + //判断传入的是任务详情id还是分解id,返回分解id + Long taskId = taskDeliverService.isTaskOrSubTime(param.getTaskId()); //查询任务分解后 - ProTaskSubTime proTaskSubTime = taskSubTimeDao.selectByPrimaryKey(param.getTaskId()); + ProTaskSubTime proTaskSubTime = taskSubTimeDao.selectByPrimaryKey(taskId); if(ObjectUtil.isNull(proTaskSubTime)){ throw new BaseException(CodeEnum.NOT_TASK); } diff --git a/tall/src/main/java/com/ccsens/tall/service/ProRoleService.java b/tall/src/main/java/com/ccsens/tall/service/ProRoleService.java index 0b3a440c..07071b49 100644 --- a/tall/src/main/java/com/ccsens/tall/service/ProRoleService.java +++ b/tall/src/main/java/com/ccsens/tall/service/ProRoleService.java @@ -1012,7 +1012,7 @@ public class ProRoleService implements IProRoleService { */ @Override public void upRoleShowsOrder(QueryDto param) { - if(ObjectUtil.isNull(param.getParam().getRoleIds()) || param.getParam().getRoleIds().size()<=1){ + if(ObjectUtil.isNull(param.getParam().getRoleIds())){ throw new BaseException(CodeEnum.ZUISHAOCHUANLIANGE); } diff --git a/tall/src/main/java/com/ccsens/tall/service/ProTaskDetailService.java b/tall/src/main/java/com/ccsens/tall/service/ProTaskDetailService.java index 0cb77114..9e5e32b9 100644 --- a/tall/src/main/java/com/ccsens/tall/service/ProTaskDetailService.java +++ b/tall/src/main/java/com/ccsens/tall/service/ProTaskDetailService.java @@ -784,17 +784,30 @@ public class ProTaskDetailService implements IProTaskDetailService { taskDetail.setSecondTasks(new ArrayList<>()); taskDetail.getSecondTasks().addAll(groupTaskList); } + //查询此任务下的输入文档 + List inputDocInfos = proTaskInputDocDao.selectDocByTaskId(taskDetail.getDetailId()); + if (CollectionUtil.isNotEmpty(inputDocInfos)){ + taskDetail.setInputDoc(inputDocInfos); + } + //查询此任务下的输出文档 + List outputDocInfos = taskDeliverDao.selectOutputDocByTaskId(taskDetail.getDetailId()); + if (CollectionUtil.isNotEmpty(outputDocInfos)){ + taskDetail.setOutputDoc(outputDocInfos); + } + //设置检查人 + ProRole checkRole = proRoleDao.selectByPrimaryKey(task.getCheckerRole()); + if (ObjectUtil.isNotNull(checkRole)){ + taskDetail.setCheckerRole(checkRole.getId()); + taskDetail.setCheckerRoleName(checkRole.getName()); + }else{ + //根据任务id查询项目下项目经理 + Long pmId = taskDetailDao.selectPmByTaskId(task.getId()); + ProRole proRole = proRoleDao.selectByPrimaryKey(pmId); + taskDetail.setCheckerRole(proRole.getId()); + taskDetail.setCheckerRoleName(proRole.getName()); + } } - //查询此任务下的输入文档 - List inputDocInfos = proTaskInputDocDao.selectDocByTaskId(taskDetail.getDetailId()); - if (CollectionUtil.isNotEmpty(inputDocInfos)){ - taskDetail.setInputDoc(inputDocInfos); - } - //查询此任务下的输出文档 - List outputDocInfos = taskDeliverDao.selectOutputDocByTaskId(taskDetail.getDetailId()); - if (CollectionUtil.isNotEmpty(outputDocInfos)){ - taskDetail.setOutputDoc(outputDocInfos); - } + return taskDetail; } diff --git a/tall/src/main/java/com/ccsens/tall/service/TaskDeliverService.java b/tall/src/main/java/com/ccsens/tall/service/TaskDeliverService.java index fb10ea91..13c6de2b 100644 --- a/tall/src/main/java/com/ccsens/tall/service/TaskDeliverService.java +++ b/tall/src/main/java/com/ccsens/tall/service/TaskDeliverService.java @@ -248,6 +248,19 @@ public class TaskDeliverService implements ITaskDeliverService { postLogCheckerDao.insertSelective(postLogChecker); } } else { + //不选择检查人,检查人默认为项目经理 + //查找此项目下的项目经理 +// List pmIds = taskDeliverDao.selectPMIdByDeliverId(uploadDeliver.getDeliverId()); +// if (CollectionUtil.isNotEmpty(pmIds)){ +// for (Long pmId : pmIds) { +// ProTaskDeliverPostLogChecker postLogChecker=new ProTaskDeliverPostLogChecker(); +// postLogChecker.setId(snowflake.nextId()); +// postLogChecker.setDeliverPostLogId(deliverPostLog.getId()); +// postLogChecker.setCheckerId(pmId); +// //将经理id放入检查人list中,发送消息 +// uploadDeliver.getCheckerIdList().add(pmId); +// } +// } throw new BaseException(CodeEnum.NOT_CHECKER); } //修改交付物状态 @@ -1105,8 +1118,9 @@ public class TaskDeliverService implements ITaskDeliverService { */ @Override public List queryDeliverByTaskId(Long currentUserId, Long taskId) { + Long taskOrSubTime = isTaskOrSubTime(taskId); //查询分解后的任务 - ProTaskSubTime taskSubTime = taskSubTimeDao.selectByPrimaryKey(taskId); + ProTaskSubTime taskSubTime = taskSubTimeDao.selectByPrimaryKey(taskOrSubTime); if(ObjectUtil.isNull(taskSubTime)){ throw new BaseException(CodeEnum.NOT_TASK); } diff --git a/tall/src/main/resources/application-dev.yml b/tall/src/main/resources/application-dev.yml index 162cf7f7..e8f64049 100644 --- a/tall/src/main/resources/application-dev.yml +++ b/tall/src/main/resources/application-dev.yml @@ -47,4 +47,6 @@ project: redisUpdate: 0 redisUpdateUrl: http://localhost:8001/constant/updateAll/ filedeal: https://test.tall.wiki/filedeal/file/query + # 0测试 1生产 + wx_h5: 0 diff --git a/tall/src/main/resources/application.yml b/tall/src/main/resources/application.yml index b5408a3a..ebc544af 100644 --- a/tall/src/main/resources/application.yml +++ b/tall/src/main/resources/application.yml @@ -1,5 +1,5 @@ spring: profiles: - active: dev - include: util-dev,common + active: test + include: util-test,common diff --git a/tall/src/main/resources/mapper_dao/DeliverDao.xml b/tall/src/main/resources/mapper_dao/DeliverDao.xml index f7aa0c79..c075bad6 100644 --- a/tall/src/main/resources/mapper_dao/DeliverDao.xml +++ b/tall/src/main/resources/mapper_dao/DeliverDao.xml @@ -300,4 +300,38 @@ WHERE ptd.task_detail_id = #{taskId} + + \ No newline at end of file diff --git a/tall/src/main/resources/mapper_dao/ProDeliverHistoryRecordDao.xml b/tall/src/main/resources/mapper_dao/ProDeliverHistoryRecordDao.xml index a621ce5c..d175f149 100644 --- a/tall/src/main/resources/mapper_dao/ProDeliverHistoryRecordDao.xml +++ b/tall/src/main/resources/mapper_dao/ProDeliverHistoryRecordDao.xml @@ -14,12 +14,14 @@ pdhr.content AS content, pm.id AS memberId, pm.nickname AS memberName, - pdhr.history_remark AS historyRemark + pdhr.history_remark AS historyRemark, + tid.name AS deliverName FROM t_pro_deliver_history_record AS pdhr LEFT JOIN t_pro_role AS pr ON pdhr.role_id = pr.id and pr.rec_status = 0 LEFT JOIN t_pro_task_input_record AS ptir ON ptir.id = pdhr.deliver_record_id LEFT JOIN t_pro_member AS pm ON pm.id = pdhr.member_id and pm.rec_status = 0 + LEFT JOIN t_pro_task_input_doc AS tid ON tid.id = pdhr.deliver_id WHERE pdhr.deliver_id = #{deliverId} and pdhr.rec_status = 0 @@ -37,12 +39,15 @@ pdhr.created_at AS createAt, pdhr.content AS content, pm.id AS memberId, - pm.nickname AS memberName + pm.nickname AS memberName, + pdhr.history_remark AS historyRemark, + tid.name AS deliverName FROM t_pro_deliver_history_record AS pdhr LEFT JOIN t_pro_role AS pr ON pdhr.role_id = pr.id and pr.rec_status = 0 LEFT JOIN t_pro_task_deliver_post_log AS ptdpl ON ptdpl.id = pdhr.deliver_record_id LEFT JOIN t_pro_member AS pm ON pm.id = pdhr.member_id and pm.rec_status = 0 + LEFT JOIN t_pro_task_deliver AS tid ON tid.id = pdhr.deliver_id WHERE pdhr.deliver_id = #{deliverId} and pdhr.rec_status = 0 diff --git a/tall/src/main/resources/mapper_dao/TaskDetailDao.xml b/tall/src/main/resources/mapper_dao/TaskDetailDao.xml index c6cfef4e..9ba713c6 100644 --- a/tall/src/main/resources/mapper_dao/TaskDetailDao.xml +++ b/tall/src/main/resources/mapper_dao/TaskDetailDao.xml @@ -539,7 +539,8 @@ t.executor_role as executorRole, (SELECT `name` FROM t_pro_role WHERE id = t.executor_role) as executorRoleName, d.id as deliverId, - d.`name` as deliverName + d.`name` as deliverName, + t.priority AS priority FROM t_pro_task_detail t LEFT JOIN t_pro_task_deliver d on t.id = d.task_detail_id @@ -727,4 +728,29 @@ + \ No newline at end of file diff --git a/util/src/main/java/com/ccsens/util/PropUtil.java b/util/src/main/java/com/ccsens/util/PropUtil.java index 8d89990f..9c68111c 100644 --- a/util/src/main/java/com/ccsens/util/PropUtil.java +++ b/util/src/main/java/com/ccsens/util/PropUtil.java @@ -30,6 +30,7 @@ public class PropUtil { public static String getWpsFilePath; public static String accessPath; public static String filedeal; + public static String wxH5; /**redis是否需要更新*/ public static String redisUpdate; public static String redisUpdateUrl; @@ -121,4 +122,8 @@ public class PropUtil { public void setRedisUpdateUrl(String redisUpdateUrl) { PropUtil.redisUpdateUrl = redisUpdateUrl; } + @Value("${project.wx_h5:}") + public static void setWxH5(String wxH5) { + PropUtil.wxH5 = wxH5; + } } diff --git a/util/src/main/java/com/ccsens/util/WebConstant.java b/util/src/main/java/com/ccsens/util/WebConstant.java index 930c663b..8a0fde3f 100644 --- a/util/src/main/java/com/ccsens/util/WebConstant.java +++ b/util/src/main/java/com/ccsens/util/WebConstant.java @@ -353,7 +353,7 @@ public class WebConstant { , Email(2,"Email"), Account(3,"账号") ,OAUTH2_Wx(4,"微信公众号网页授权登录"),Wx_H5(5,"网页微信登陆") ,OAUTH2_WeiBo(6,"微博"),WxEnterprise(7, "企业微信"), - OFFICIAL_ACCOUNT_WX(9,"微信公众号登录"); + OFFICIAL_ACCOUNT_WX(9,"微信公众号登录"),Wx_H5_TEST(10,"网页微信登陆测试"); // 钉钉是8 public int value; diff --git a/util/src/main/java/com/ccsens/util/wx/WxGzhUtil.java b/util/src/main/java/com/ccsens/util/wx/WxGzhUtil.java index a4a4cada..19e91f20 100644 --- a/util/src/main/java/com/ccsens/util/wx/WxGzhUtil.java +++ b/util/src/main/java/com/ccsens/util/wx/WxGzhUtil.java @@ -4,10 +4,7 @@ import cn.hutool.core.util.StrUtil; import cn.hutool.http.HttpRequest; import com.alibaba.fastjson.JSONException; import com.alibaba.fastjson.JSONObject; -import com.ccsens.util.DateUtil; -import com.ccsens.util.JacksonUtil; -import com.ccsens.util.RedisUtil; -import com.ccsens.util.WebConstant; +import com.ccsens.util.*; import com.ccsens.util.bean.wx.po.WxAccessToken; import com.ccsens.util.bean.wx.po.WxOauth2AccessToken; import com.ccsens.util.bean.wx.po.WxOauth2UserInfo; @@ -83,8 +80,11 @@ public class WxGzhUtil { private static final String APPID = "wx7af1bf1e14facf82"; private static final String SECRET = "a6613fae11b497639c0224b820aaf6d9"; - private static final String APPID_H5 = "wxd1842e073e0e6d91"; - private static final String SECRET_H5 = "96d69b79039caf92a2abafa999880cad"; + private static final String APPID_H5_TEST = "wxd1842e073e0e6d91"; + private static final String SECRET_H5_TEST = "96d69b79039caf92a2abafa999880cad"; + + private static final String APPID_H5 = "wxb842be1cf4c5cf78"; + private static final String SECRET_H5 = "ae9ec99c4fbbc7042b90698c3d05e21b"; private static final String appid_health = "wx2f9ef33e08053bbf"; private static final String secret_health = "af90801c26bc177681b2c39a603605b9"; @@ -129,6 +129,8 @@ public class WxGzhUtil { switch (identifyType){ case Wx_H5: return APPID_H5; + case Wx_H5_TEST: + return APPID_H5_TEST; case OAUTH2_Wx: default: return APPID; @@ -139,6 +141,8 @@ public class WxGzhUtil { switch (identifyType){ case Wx_H5: return SECRET_H5; + case Wx_H5_TEST: + return SECRET_H5_TEST; case OAUTH2_Wx: default: return SECRET; @@ -347,6 +351,9 @@ public class WxGzhUtil { * @throws BaseException 异常 */ public static WxOauth2UserInfo getOauth2UserInfo(WebConstant.IDENTIFY_TYPE identifyType,String code) throws BaseException { + if (StrUtil.isNotBlank(PropUtil.wxH5) && PropUtil.wxH5.equals("0")){ + identifyType = WebConstant.IDENTIFY_TYPE.Wx_H5_TEST; + } WxOauth2AccessToken wxOauth2AccessToken = getOauth2AccessToken(identifyType,code); return getOauth2UserInfo(wxOauth2AccessToken.getAccessToken(),wxOauth2AccessToken.getOpenId()); } From 52d272b970e039d2caa503e256696f21491ab0e3 Mon Sep 17 00:00:00 2001 From: hyy-alt <1041001226@qq.com> Date: Mon, 26 Apr 2021 09:21:36 +0800 Subject: [PATCH 05/13] 4.26 --- tall/src/main/resources/application.yml | 4 ++-- tall/src/main/resources/mapper_raw/ProRoleMapper.xml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/tall/src/main/resources/application.yml b/tall/src/main/resources/application.yml index ebc544af..b5408a3a 100644 --- a/tall/src/main/resources/application.yml +++ b/tall/src/main/resources/application.yml @@ -1,5 +1,5 @@ spring: profiles: - active: test - include: util-test,common + active: dev + include: util-dev,common diff --git a/tall/src/main/resources/mapper_raw/ProRoleMapper.xml b/tall/src/main/resources/mapper_raw/ProRoleMapper.xml index 489aa8c5..b3775227 100644 --- a/tall/src/main/resources/mapper_raw/ProRoleMapper.xml +++ b/tall/src/main/resources/mapper_raw/ProRoleMapper.xml @@ -86,8 +86,8 @@ - order by ${orderByClause} - + order by ${orderByClause} + select - pr.id as rId, - pr.name as rName, - pr.parent_id as parentId, - m.id as mId, - m.nickname as mName, - m.phone as mPhone, - m.user_id as mUserId, - m.stakeholder_id as stakeholderId, - if((SELECT `name` FROM t_pro_role WHERE id = pr.parent_id) = 'ProjectVirtualRole',1,0) as projectRole, - pr.relevance_project_id as relevanceProjectId, - (SELECT `name` FROM t_sys_project WHERE id = pr.relevance_project_id) as relevanceProjectName - from - t_pro_role pr LEFT JOIN t_pro_member_role mr ON mr.role_id = pr.id - LEFT JOIN t_pro_member m ON mr.member_id = m.id + pr.id as rId, + pr.name as rName, + pr.parent_id as parentId, + m.id as mId, + m.nickname as mName, + m.phone as mPhone, + m.user_id as mUserId, + m.stakeholder_id as stakeholderId, + if((SELECT `name` FROM t_pro_role WHERE id = pr.parent_id) = 'ProjectVirtualRole',1,0) as projectRole, + pr.relevance_project_id as relevanceProjectId, + (SELECT `name` FROM t_sys_project WHERE id = pr.relevance_project_id) as relevanceProjectName + from t_pro_role pr + LEFT JOIN t_pro_member_role mr ON mr.role_id = pr.id + LEFT JOIN t_pro_member m ON mr.member_id = m.id where - pr.project_id = #{projectId} + pr.project_id = #{projectId} and - (SELECT name FROM t_pro_role r WHERE pr.parent_id = r.id) in ('PM','Member','ProjectVirtualRole') + (SELECT name FROM t_pro_role r WHERE pr.parent_id = r.id) in ('PM','Member','ProjectVirtualRole') AND - pr.name not IN ('全体成员','观众','MVP') + pr.name not IN ('全体成员','观众','MVP') AND - pr.rec_status = 0 + pr.rec_status = 0 AND (mr.rec_status = 0 or mr.rec_status is null) AND (m.rec_status = 0 or m.rec_status is null) @@ -445,4 +445,23 @@ pmr.role_id = #{roleId} AND pmr.rec_status = 0 + + \ No newline at end of file diff --git a/tall/src/main/resources/mapper_raw/ProShowMapper.xml b/tall/src/main/resources/mapper_raw/ProShowMapper.xml index dd83eae0..06e24aca 100644 --- a/tall/src/main/resources/mapper_raw/ProShowMapper.xml +++ b/tall/src/main/resources/mapper_raw/ProShowMapper.xml @@ -21,6 +21,7 @@ + @@ -83,7 +84,7 @@ id, project_id, slide, filter, is_show_mvp, style, create_task, time_show, duration, show_shortcuts, select_task_type, detail_path, pims_nav_type, share_change, share_change_code, - created_at, updated_at, rec_status, role_belong + created_at, updated_at, rec_status, role_belong, milestone_subtask @@ -318,6 +325,9 @@ role_belong = #{record.roleBelong,jdbcType=TINYINT}, + + milestone_subtask = #{record.milestoneSubtask,jdbcType=TINYINT}, + @@ -343,7 +353,8 @@ created_at = #{record.createdAt,jdbcType=TIMESTAMP}, updated_at = #{record.updatedAt,jdbcType=TIMESTAMP}, rec_status = #{record.recStatus,jdbcType=TINYINT}, - role_belong = #{record.roleBelong,jdbcType=TINYINT} + role_belong = #{record.roleBelong,jdbcType=TINYINT}, + milestone_subtask = #{record.milestoneSubtask,jdbcType=TINYINT} @@ -405,6 +416,9 @@ role_belong = #{roleBelong,jdbcType=TINYINT}, + + milestone_subtask = #{milestoneSubtask,jdbcType=TINYINT}, + where id = #{id,jdbcType=BIGINT} @@ -427,7 +441,8 @@ created_at = #{createdAt,jdbcType=TIMESTAMP}, updated_at = #{updatedAt,jdbcType=TIMESTAMP}, rec_status = #{recStatus,jdbcType=TINYINT}, - role_belong = #{roleBelong,jdbcType=TINYINT} + role_belong = #{roleBelong,jdbcType=TINYINT}, + milestone_subtask = #{milestoneSubtask,jdbcType=TINYINT} where id = #{id,jdbcType=BIGINT} \ No newline at end of file From aa3f854b0705af38a049f62c1f6b39f09c540f50 Mon Sep 17 00:00:00 2001 From: ma <1062634917@qq.com> Date: Mon, 26 Apr 2021 15:27:50 +0800 Subject: [PATCH 09/13] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E8=A7=92=E8=89=B2?= =?UTF-8?q?=E7=AE=A1=E7=90=86:=E4=BF=AE=E6=94=B9=E5=AF=B9=E8=B0=81?= =?UTF-8?q?=E4=B8=8D=E5=8F=AF=E8=A7=81=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ccsens/tall/bean/dto/RoleDto.java | 9 ++++ .../ccsens/tall/service/IProRoleService.java | 7 ++++ .../ccsens/tall/service/ProRoleService.java | 41 +++++++++++++++++++ .../com/ccsens/tall/web/RoleController.java | 9 ++++ 4 files changed, 66 insertions(+) diff --git a/tall/src/main/java/com/ccsens/tall/bean/dto/RoleDto.java b/tall/src/main/java/com/ccsens/tall/bean/dto/RoleDto.java index 64b7caea..57ccc427 100644 --- a/tall/src/main/java/com/ccsens/tall/bean/dto/RoleDto.java +++ b/tall/src/main/java/com/ccsens/tall/bean/dto/RoleDto.java @@ -105,4 +105,13 @@ public class RoleDto { @ApiModelProperty("角色id") private Long roleId; } + + @Data + @ApiModel("对谁不可见") + public static class RoleOfNoLook { + @ApiModelProperty("角色id") + private Long roleId; + @ApiModelProperty("不可见角色id(数组)") + private List noRoleId; + } } diff --git a/tall/src/main/java/com/ccsens/tall/service/IProRoleService.java b/tall/src/main/java/com/ccsens/tall/service/IProRoleService.java index eb634833..a6fd520a 100644 --- a/tall/src/main/java/com/ccsens/tall/service/IProRoleService.java +++ b/tall/src/main/java/com/ccsens/tall/service/IProRoleService.java @@ -79,4 +79,11 @@ public interface IProRoleService { void queryRoleIsShows(QueryDto param); void upRoleShowsOrder(QueryDto param); + + /** + * 角色管理:修改对谁不可见 + * @param param 参数 + * @param userId 当前用户id + */ + void upRoleWhoNoLook(RoleDto.RoleOfNoLook param, Long userId); } diff --git a/tall/src/main/java/com/ccsens/tall/service/ProRoleService.java b/tall/src/main/java/com/ccsens/tall/service/ProRoleService.java index 468ce041..96d660d6 100644 --- a/tall/src/main/java/com/ccsens/tall/service/ProRoleService.java +++ b/tall/src/main/java/com/ccsens/tall/service/ProRoleService.java @@ -1135,4 +1135,45 @@ public class ProRoleService implements IProRoleService { } return memberId; } + + /** + * 修改对谁不可见 + * @param param 参数 + * @param userId 当前用户id + */ + @Override + public void upRoleWhoNoLook(RoleDto.RoleOfNoLook param, Long userId) { + ProRole proRole = proRoleDao.selectByPrimaryKey(param.getRoleId()); + if (ObjectUtil.isNotNull(proRole)){ + //用户在项目中的最高权限 + int power = selectPowerByRoleName(userId, proRole.getProjectId()); + if (2 < power){ + //删除之前的记录 + ProRoleExcludeExample excludeExample = new ProRoleExcludeExample(); + excludeExample.createCriteria().andRoleIdEqualTo(param.getRoleId()).andRecStatusEqualTo((byte)0); + List proRoleExcludes = proRoleExcludeMapper.selectByExample(excludeExample); + if (CollectionUtil.isNotEmpty(proRoleExcludes)){ + for (ProRoleExclude proRoleExclude : proRoleExcludes) { + ProRoleExclude oldExclude = new ProRoleExclude(); + oldExclude.setId(proRoleExclude.getId()); + oldExclude.setRecStatus((byte)2); + proRoleExcludeMapper.updateByExampleSelective(oldExclude,excludeExample); + } + } + + //添加新数据 + for (Long noRoleId : param.getNoRoleId()) { + ProRoleExclude roleExclude = new ProRoleExclude(); + roleExclude.setId(snowflake.nextId()); + roleExclude.setRoleId(param.getRoleId()); + roleExclude.setOtherRoleId(noRoleId); + proRoleExcludeMapper.insertSelective(roleExclude); + } + }else{ + throw new BaseException(CodeEnum.NOT_POWER); + } + } + + } + } diff --git a/tall/src/main/java/com/ccsens/tall/web/RoleController.java b/tall/src/main/java/com/ccsens/tall/web/RoleController.java index dba40607..e2b7c9ee 100644 --- a/tall/src/main/java/com/ccsens/tall/web/RoleController.java +++ b/tall/src/main/java/com/ccsens/tall/web/RoleController.java @@ -163,4 +163,13 @@ public class RoleController { List roleInfoList = proRoleService.getRolesByProjectIdAndUserId(projectId, currentUserId,imitation,queryType); return JsonResponse.newInstance().ok(roleInfoList); } + + @MustLoginTall + @ApiOperation(value = "角色管理:修改对谁不可见",notes = "") + @RequestMapping(value = "/upRoleWhoNoLook", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse upRoleWhoNoLook(@ApiParam @Validated @RequestBody QueryDto params){ + log.info("传入参数:{}", params); + proRoleService.upRoleWhoNoLook(params.getParam(),params.getUserId()); + return JsonResponse.newInstance().ok(); + } } From 39580d174a58fefc4447cda84614354e621f8ac3 Mon Sep 17 00:00:00 2001 From: hyy-alt <1041001226@qq.com> Date: Mon, 26 Apr 2021 16:07:29 +0800 Subject: [PATCH 10/13] =?UTF-8?q?=E7=94=A8=E6=88=B7=E6=98=B5=E7=A7=B0?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=90=8E=E6=97=A0=E6=B3=95=E6=94=B9=E5=9B=9E?= =?UTF-8?q?=E6=9D=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tall/service/ProTaskDetailService.java | 26 ++++++++++++++++--- .../ccsens/tall/service/UserInfoService.java | 1 + tall/src/main/resources/application.yml | 4 +-- 3 files changed, 25 insertions(+), 6 deletions(-) diff --git a/tall/src/main/java/com/ccsens/tall/service/ProTaskDetailService.java b/tall/src/main/java/com/ccsens/tall/service/ProTaskDetailService.java index aba905a0..6b0e682e 100644 --- a/tall/src/main/java/com/ccsens/tall/service/ProTaskDetailService.java +++ b/tall/src/main/java/com/ccsens/tall/service/ProTaskDetailService.java @@ -348,6 +348,19 @@ public class ProTaskDetailService implements IProTaskDetailService { if (CollectionUtil.isNotEmpty(secondTaskVoList)) { for (TaskVo.NormalTask normalTask : secondTaskVoList) { + + //通过角色id查找 负责人名称 检查人名称 + Long executorRole = normalTask.getExecutorRole(); + ProRole executor = proRoleDao.selectByPrimaryKey(executorRole); + if(ObjectUtil.isNotNull(executor)){ + normalTask.setExecutorRoleName(executor.getName()); + } + Long checkerRole = normalTask.getCheckerRole(); + ProRole checker = proRoleDao.selectByPrimaryKey(checkerRole); + if(ObjectUtil.isNotNull(checker)){ + normalTask.setCheckerRoleName(checker.getName()); + } + //处理插件 managePlugin(currentUserId, roleId, normalTask, imitation); //任务完成状态 @@ -420,11 +433,16 @@ public class ProTaskDetailService implements IProTaskDetailService { // } //通过角色id查找 负责人名称 检查人名称 Long executorRole = normalTask.getExecutorRole(); - ProRole proRole = proRoleDao.selectByPrimaryKey(executorRole); - normalTask.setExecutorRoleName(proRole.getName()); + ProRole executor = proRoleDao.selectByPrimaryKey(executorRole); + if(ObjectUtil.isNotNull(executor)){ + normalTask.setExecutorRoleName(executor.getName()); + } Long checkerRole = normalTask.getCheckerRole(); - ProRole proRole1 = proRoleDao.selectByPrimaryKey(checkerRole); - normalTask.setCheckerRoleName(proRole1.getName()); + ProRole checker = proRoleDao.selectByPrimaryKey(checkerRole); + if(ObjectUtil.isNotNull(checker)){ + normalTask.setCheckerRoleName(checker.getName()); + } + //处理插件 managePlugin(currentUserId, roleId, normalTask, imitation); diff --git a/tall/src/main/java/com/ccsens/tall/service/UserInfoService.java b/tall/src/main/java/com/ccsens/tall/service/UserInfoService.java index dda619fb..61855606 100644 --- a/tall/src/main/java/com/ccsens/tall/service/UserInfoService.java +++ b/tall/src/main/java/com/ccsens/tall/service/UserInfoService.java @@ -126,6 +126,7 @@ public class UserInfoService implements IUserInfoService{ sysUserExample.createCriteria().andNicknameEqualTo(updateNickname.getNickname()); List userList = sysUserDao.selectByExample(sysUserExample); if(CollectionUtil.isNotEmpty(userList)){ + redisUtil.del(nicknameKey); throw new BaseException(CodeEnum.NICKNAME_REPEAT); } SysUser user = sysUserDao.selectByPrimaryKey(userId); diff --git a/tall/src/main/resources/application.yml b/tall/src/main/resources/application.yml index ebc544af..b5408a3a 100644 --- a/tall/src/main/resources/application.yml +++ b/tall/src/main/resources/application.yml @@ -1,5 +1,5 @@ spring: profiles: - active: test - include: util-test,common + active: dev + include: util-dev,common From 43ccb3075eaf52accfc27d26708afe16ac6e8e98 Mon Sep 17 00:00:00 2001 From: zy_Java <654600784@qq.com> Date: Mon, 26 Apr 2021 16:17:49 +0800 Subject: [PATCH 11/13] 20210426v1.3 --- .../ccsens/tall/service/ProTaskDetailService.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/tall/src/main/java/com/ccsens/tall/service/ProTaskDetailService.java b/tall/src/main/java/com/ccsens/tall/service/ProTaskDetailService.java index aba905a0..526c70e3 100644 --- a/tall/src/main/java/com/ccsens/tall/service/ProTaskDetailService.java +++ b/tall/src/main/java/com/ccsens/tall/service/ProTaskDetailService.java @@ -420,11 +420,15 @@ public class ProTaskDetailService implements IProTaskDetailService { // } //通过角色id查找 负责人名称 检查人名称 Long executorRole = normalTask.getExecutorRole(); - ProRole proRole = proRoleDao.selectByPrimaryKey(executorRole); - normalTask.setExecutorRoleName(proRole.getName()); + ProRole executor = proRoleDao.selectByPrimaryKey(executorRole); + if(ObjectUtil.isNotNull(executor)) { + normalTask.setExecutorRoleName(executor.getName()); + } Long checkerRole = normalTask.getCheckerRole(); - ProRole proRole1 = proRoleDao.selectByPrimaryKey(checkerRole); - normalTask.setCheckerRoleName(proRole1.getName()); + ProRole checker = proRoleDao.selectByPrimaryKey(checkerRole); + if(ObjectUtil.isNotNull(checker)) { + normalTask.setExecutorRoleName(checker.getName()); + } //处理插件 managePlugin(currentUserId, roleId, normalTask, imitation); From 1008fa8790bfd8f57eb26e94ae24333fdfbee3b1 Mon Sep 17 00:00:00 2001 From: ma <1062634917@qq.com> Date: Mon, 26 Apr 2021 16:18:07 +0800 Subject: [PATCH 12/13] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=9F=A5=E6=89=BE?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E8=AF=A6=E7=BB=86=E4=BF=A1=E6=81=AF=E8=BF=94?= =?UTF-8?q?=E5=9B=9E=E6=A0=BC=E5=BC=8F=E5=92=8C=E7=99=BB=E5=BD=95=E8=BF=94?= =?UTF-8?q?=E5=9B=9E=E7=94=A8=E6=88=B7=E4=BF=A1=E6=81=AF=E7=9A=84=E6=A0=BC?= =?UTF-8?q?=E5=BC=8F=E4=B8=8D=E4=B8=80=E6=A0=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/ccsens/tall/bean/vo/UserVo.java | 2 ++ .../com/ccsens/tall/persist/dao/SysUserDao.java | 7 +++++++ .../com/ccsens/tall/service/UserInfoService.java | 3 +++ tall/src/main/resources/mapper_dao/SysUserDao.xml | 15 +++++++++++++++ 4 files changed, 27 insertions(+) diff --git a/tall/src/main/java/com/ccsens/tall/bean/vo/UserVo.java b/tall/src/main/java/com/ccsens/tall/bean/vo/UserVo.java index d2ed5e45..ce1f6005 100644 --- a/tall/src/main/java/com/ccsens/tall/bean/vo/UserVo.java +++ b/tall/src/main/java/com/ccsens/tall/bean/vo/UserVo.java @@ -144,6 +144,8 @@ public class UserVo { private Date createdAt; @ApiModelProperty("空间使用情况") private Interspace interspace; + @ApiModelProperty("WxInfo") + private WxInfo wxInfo; @ApiModelProperty("标签信息") private List labelList; } diff --git a/tall/src/main/java/com/ccsens/tall/persist/dao/SysUserDao.java b/tall/src/main/java/com/ccsens/tall/persist/dao/SysUserDao.java index 344526b9..c6b688e7 100644 --- a/tall/src/main/java/com/ccsens/tall/persist/dao/SysUserDao.java +++ b/tall/src/main/java/com/ccsens/tall/persist/dao/SysUserDao.java @@ -61,4 +61,11 @@ public interface SysUserDao extends SysUserMapper { * @return */ UserVo.TokenBean getTokenBeanByUserId(Long userId); + + /** + * 查找用户wxInfo中的信息 + * @param currentUserId 当前用户id + * @return UserVo.WxInfo + */ + UserVo.WxInfo selectWxInfo(@Param("userId") Long currentUserId); } diff --git a/tall/src/main/java/com/ccsens/tall/service/UserInfoService.java b/tall/src/main/java/com/ccsens/tall/service/UserInfoService.java index 61855606..1cd54e20 100644 --- a/tall/src/main/java/com/ccsens/tall/service/UserInfoService.java +++ b/tall/src/main/java/com/ccsens/tall/service/UserInfoService.java @@ -195,6 +195,9 @@ public class UserInfoService implements IUserInfoService{ //获取空间使用信息 UserVo.Interspace interspace = sysUserDao.selectInterspace(currentUserId); selectUserInfo.setInterspace(interspace); + //封装wxInfo + UserVo.WxInfo wxInfo = sysUserDao.selectWxInfo(currentUserId); + selectUserInfo.setWxInfo(wxInfo); } return selectUserInfo; diff --git a/tall/src/main/resources/mapper_dao/SysUserDao.xml b/tall/src/main/resources/mapper_dao/SysUserDao.xml index d917ade3..c884fb86 100644 --- a/tall/src/main/resources/mapper_dao/SysUserDao.xml +++ b/tall/src/main/resources/mapper_dao/SysUserDao.xml @@ -198,4 +198,19 @@ AND rec_status = 0 + + \ No newline at end of file From 2aecfdf2a326f1a529b246ca37adab6f8943ea65 Mon Sep 17 00:00:00 2001 From: zy_Java <654600784@qq.com> Date: Mon, 26 Apr 2021 17:46:27 +0800 Subject: [PATCH 13/13] 20210424v1.5 --- .../main/java/com/ccsens/tall/service/TaskDeliverService.java | 4 ++-- tall/src/main/resources/application.yml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/tall/src/main/java/com/ccsens/tall/service/TaskDeliverService.java b/tall/src/main/java/com/ccsens/tall/service/TaskDeliverService.java index 13c6de2b..fd1b7ff2 100644 --- a/tall/src/main/java/com/ccsens/tall/service/TaskDeliverService.java +++ b/tall/src/main/java/com/ccsens/tall/service/TaskDeliverService.java @@ -321,7 +321,7 @@ public class TaskDeliverService implements ITaskDeliverService { data.setDeliverId(taskDeliver.getId()); data.setDeliverName(taskDeliver.getName()); data.setRoleId(roleId); - data.setTaskId(taskDetail.getId()); + data.setTaskId(uploadDeliver.getTaskId()); data.setUploader(currentUserId); data.setUploadTime(now); data.setFile(uploadDeliver.getFileInfo()); @@ -811,7 +811,7 @@ public class TaskDeliverService implements ITaskDeliverService { } else { checkerDtoData.setRoleId(task.getExecutorRole()); } - checkerDtoData.setTaskId(task.getId()); + checkerDtoData.setTaskId(checkDeliver.getTaskId()); checkerDtoData.setDeliverId(deliver.getId()); checkerDtoData.setDeliverName(deliver.getName()); if(ObjectUtil.isNotNull(checkRole)) { diff --git a/tall/src/main/resources/application.yml b/tall/src/main/resources/application.yml index b5408a3a..ebc544af 100644 --- a/tall/src/main/resources/application.yml +++ b/tall/src/main/resources/application.yml @@ -1,5 +1,5 @@ spring: profiles: - active: dev - include: util-dev,common + active: test + include: util-test,common