Browse Source

20201014_1.0

tiaosheng
zy_Java 5 years ago
parent
commit
f8eb192fed
  1. 4
      mt/src/main/java/com/ccsens/mt/bean/vo/CompeteVo.java
  2. 4
      mt/src/main/resources/application.yml
  3. 6
      mt/src/main/resources/mapper_dao/CompeteTeamDao.xml
  4. 6
      tall/src/main/java/com/ccsens/tall/bean/dto/PluginDto.java
  5. 9
      tall/src/main/java/com/ccsens/tall/bean/dto/RoleDto.java
  6. 2
      tall/src/main/java/com/ccsens/tall/persist/dao/SysPluginDao.java
  7. 4
      tall/src/main/java/com/ccsens/tall/persist/dao/TaskDetailDao.java
  8. 16
      tall/src/main/java/com/ccsens/tall/service/IProRoleService.java
  9. 44
      tall/src/main/java/com/ccsens/tall/service/ProRoleService.java
  10. 31
      tall/src/main/java/com/ccsens/tall/service/ProTaskDetailService.java
  11. 2
      tall/src/main/java/com/ccsens/tall/web/PluginController.java
  12. 33
      tall/src/main/java/com/ccsens/tall/web/RoleController.java
  13. 4
      tall/src/main/resources/application.yml
  14. 1
      tall/src/main/resources/mapper_dao/SysPluginDao.xml
  15. 27
      tall/src/main/resources/mapper_dao/TaskDetailDao.xml

4
mt/src/main/java/com/ccsens/mt/bean/vo/CompeteVo.java

@ -116,6 +116,8 @@ public class CompeteVo {
private String secondProjectName;
@ApiModelProperty("是否通级 0否 1是")
private byte certificate;
@ApiModelProperty("组别名")
private String groupName;
}
@Data
@ -141,6 +143,8 @@ public class CompeteVo {
private int memberNums;
@ApiModelProperty("二维码信息")
private String qrCode;
@ApiModelProperty("组别名")
private String groupName;
@ApiModelProperty("团队内的成员")
private List<CompeteTeamProjectMember> members;

4
mt/src/main/resources/application.yml

@ -1,4 +1,4 @@
spring:
profiles:
active: dev
include: common, util-dev
active: test
include: common, util-test

6
mt/src/main/resources/mapper_dao/CompeteTeamDao.xml

@ -112,7 +112,8 @@
p2.type,
p2.name as secondProjectName,
p1.name as parentProjectName,
pp.certificate
pp.certificate,
(select group_name from t_compete_group where id = pp.compete_group_id) as groupName
FROM
t_compete_player p,
t_compete_project_player pp,
@ -140,7 +141,8 @@
p2.member_max as memberMax,
t.certificate,
m.captain as creator,
if (m.captain = 1, t.qr_code, '') as qrCode
if (m.captain = 1, t.qr_code, '') as qrCode,
(select group_name from t_compete_group where id = t.compete_group_id) as groupName
FROM
t_compete_player p,
t_compete_team_member m,

6
tall/src/main/java/com/ccsens/tall/bean/dto/PluginDto.java

@ -10,6 +10,9 @@ import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.util.List;
/**
* @author
*/
@Data
public class PluginDto {
@Data
@ -92,6 +95,9 @@ public class PluginDto {
private Byte placeLocation;
@ApiModelProperty("程序位置 0:tall内部,1外部")
private Byte routineLocation;
public UpdatePluginConfig() {
}
}
}

9
tall/src/main/java/com/ccsens/tall/bean/dto/RoleDto.java

@ -50,4 +50,13 @@ public class RoleDto {
@ApiModelProperty("角色id")
private Long roleId;
}
@Data
@ApiModel("点击项目角色查询一级任务及里程碑")
public static class ProjectId{
@NotNull(message = "项目Id")
@ApiModelProperty("项目Id")
private Long projectId;
}
}

2
tall/src/main/java/com/ccsens/tall/persist/dao/SysPluginDao.java

@ -22,5 +22,5 @@ public interface SysPluginDao extends SysPluginMapper{
List<WbsVo.PluginInfo> getPluginNameAndTaskName(@Param("projectId")Long projectId);
ProPluginConfig getPluginConfigByTaskPluginId(@Param("taskPluginId")String taskPluginId);
ProPluginConfig getPluginConfigByTaskPluginId(@Param("taskPluginId")String taskPluginId,@Param("taskDetailId")Long taskDetailId);
}

4
tall/src/main/java/com/ccsens/tall/persist/dao/TaskDetailDao.java

@ -48,9 +48,9 @@ public interface TaskDetailDao extends ProTaskDetailMapper {
*/
TaskVo.TaskListByProjectId getTaskById(@Param("detailTaskId")Long detailTaskId);
/**
* 通过任务id查看任务信息查看项目下所有任务时
* 通过任务id查看任务信息查看项目下所有任务时
* @param parentTaskId
* @return
*/
List<TaskVo.TaskListByProjectId> getTaskByParentId(@Param("parentTaskId")Long parentTaskId);
List<TaskVo.TaskListByProjectId> getTaskByParentId(@Param("parentTaskId")Long parentTaskId,@Param("milestone")Integer milestone);
}

16
tall/src/main/java/com/ccsens/tall/service/IProRoleService.java

@ -3,7 +3,6 @@ package com.ccsens.tall.service;
import com.ccsens.tall.bean.dto.RoleDto;
import com.ccsens.tall.bean.po.ProRole;
import com.ccsens.tall.bean.vo.ProjectVo;
import com.ccsens.tall.bean.vo.RoleVo;
import com.ccsens.tall.bean.vo.TaskVo;
import java.util.List;
@ -30,16 +29,23 @@ public interface IProRoleService {
void saveRole(Long currentUserId, RoleDto.SaveRole saveRole);
void updateRole(Long currentUserId, RoleDto.UpdateRole updateRole);
ProjectVo.RoleInfo updateRole(Long currentUserId, RoleDto.UpdateRole updateRole);
void saveMemberByRole(Long currentUserId, RoleDto.SaveMember saveMember);
void deleteMemberByRole(Long currentUserId, RoleDto.SaveMember saveMember);
/**
* 查找项目下的角色包含全体成员
* 点击项目角色查看一级任务和里程碑
* @param projectId 项目id
* @return
* @return 返回一级任务和里程碑
*/
RoleVo.RoleByProjectId queryRoleByProjectId(Long projectId);
List<TaskVo.TaskListByProjectId> queryByProjectVirtualRole(RoleDto.ProjectId projectId);
// /**
// * 查找项目下的角色包含“全体成员”
// * @param projectId 项目id
// * @return
// */
// RoleVo.RoleByProjectId queryRoleByProjectId(Long projectId);
}

44
tall/src/main/java/com/ccsens/tall/service/ProRoleService.java

@ -8,7 +8,6 @@ import com.ccsens.tall.bean.dto.MemberRoleDto;
import com.ccsens.tall.bean.dto.RoleDto;
import com.ccsens.tall.bean.po.*;
import com.ccsens.tall.bean.vo.ProjectVo;
import com.ccsens.tall.bean.vo.RoleVo;
import com.ccsens.tall.bean.vo.TaskVo;
import com.ccsens.tall.persist.dao.*;
import com.ccsens.util.CodeEnum;
@ -48,6 +47,10 @@ public class ProRoleService implements IProRoleService {
private IUserService userService;
@Resource
private Snowflake snowflake;
@Resource
private SysProjectDao sysProjectDao;
@Resource
private TaskDetailDao taskDetailDao;
@Override
public void saveProRole(ProRole proRole) {
@ -367,7 +370,7 @@ public class ProRoleService implements IProRoleService {
}
@Override
public void updateRole(Long currentUserId, RoleDto.UpdateRole updateRole) {
public ProjectVo.RoleInfo updateRole(Long currentUserId, RoleDto.UpdateRole updateRole) {
//查找角色
ProRole proRole = proRoleDao.selectByPrimaryKey(updateRole.getRoleId());
if(ObjectUtil.isNull(proRole)){
@ -391,6 +394,8 @@ public class ProRoleService implements IProRoleService {
}
}
proRoleDao.updateByPrimaryKeySelective(proRole);
return null;
}
@Override
@ -443,7 +448,38 @@ public class ProRoleService implements IProRoleService {
}
@Override
public RoleVo.RoleByProjectId queryRoleByProjectId(Long projectId) {
return null;
public List<TaskVo.TaskListByProjectId> queryByProjectVirtualRole(RoleDto.ProjectId projectId) {
List<TaskVo.TaskListByProjectId> taskList = new ArrayList<>();
//查找项目
SysProject project = sysProjectDao.selectByPrimaryKey(projectId.getProjectId());
if (ObjectUtil.isNull(project)) {
throw new BaseException(CodeEnum.NOT_PROJECT);
}
//1、查找一级任务
ProTaskDetailExample proTaskDetailExample = new ProTaskDetailExample();
proTaskDetailExample.createCriteria().andProjectIdEqualTo(projectId.getProjectId()).andLevelEqualTo((byte) 1);
List<ProTaskDetail> firstTaskDetailList = taskDetailDao.selectByExample(proTaskDetailExample);
log.info("查找到一级任务:{}",firstTaskDetailList);
if (CollectionUtil.isNotEmpty(firstTaskDetailList)) {
firstTaskDetailList.forEach(firstTaskDetail -> {
TaskVo.TaskListByProjectId firstTask = taskDetailDao.getTaskById(firstTaskDetail.getId());
List<TaskVo.TaskListByProjectId> secondTaskList = taskDetailDao.getTaskByParentId(firstTaskDetail.getId(),1);
if(CollectionUtil.isNotEmpty(secondTaskList)){
secondTaskList.forEach(secondTask -> secondTask.setParentName(firstTaskDetail.getName()));
}
firstTask.setSecondTasks(secondTaskList);
taskList.add(firstTask);
});
}
return taskList;
}
private ProjectVo.RoleInfo getRoleInfoByRoleId(Long roleId){
}
// @Override
// public RoleVo.RoleByProjectId queryRoleByProjectId(Long projectId) {
// return null;
// }
}

31
tall/src/main/java/com/ccsens/tall/service/ProTaskDetailService.java

@ -78,6 +78,8 @@ public class ProTaskDetailService implements IProTaskDetailService {
private ProRemindDao proRemindDao;
@Resource
private TaskDeliverDao taskDeliverDao;
@Resource
private ProMemberRoleDao proMemberRoleDao;
@Override
public void saveTaskDetail(ProTaskDetail taskDetail) {
@ -462,7 +464,7 @@ public class ProTaskDetailService implements IProTaskDetailService {
plugin.setDescription(pluginDescription[i]);
plugin.setShowType(pluginShowType[i]);
//查找插件的配置信息
ProPluginConfig proPluginConfig = sysPluginDao.getPluginConfigByTaskPluginId(pluginIds[i]);
ProPluginConfig proPluginConfig = sysPluginDao.getPluginConfigByTaskPluginId(pluginIds[i],normalTask.getDetailId());
if(ObjectUtil.isNotNull(proPluginConfig)) {
plugin.setWebPath(proPluginConfig.getWebPath());
plugin.setRoutineLocation(proPluginConfig.getRoutineLocation());
@ -1117,8 +1119,25 @@ public class ProTaskDetailService implements IProTaskDetailService {
if(ObjectUtil.isNotNull(taskDetail)) {
SysProject project = sysProjectDao.selectByPrimaryKey(taskDetail.getProjectId());
if(ObjectUtil.isNotNull(project)) {
//查找权限
int power = proRoleService.selectPowerByRoleName(currentUserId, project.getId());
if (power > 1) {
//当前用户是否是此任务的负责人
boolean flag = false;
ProRole executorRole = proRoleDao.selectByPrimaryKey(taskDetail.getExecutorRole());
ProMemberExample memberExample = new ProMemberExample();
memberExample.createCriteria().andUserIdEqualTo(currentUserId).andProjectIdEqualTo(project.getId());
List<ProMember> memberList = proMemberDao.selectByExample(memberExample);
if(CollectionUtil.isNotEmpty(memberList)){
if(ObjectUtil.isNotNull(executorRole)){
ProMemberRoleExample memberRoleExample = new ProMemberRoleExample();
memberRoleExample.createCriteria().andRoleIdEqualTo(executorRole.getId()).andMemberIdEqualTo(memberList.get(0).getId());
if(proMemberRoleDao.countByExample(memberRoleExample) != 0){
flag = true;
}
}
}
if (power > 1 || flag) {
//任务名
if(StrUtil.isNotEmpty(updateTaskInfo.getName())){
taskDetail.setName(updateTaskInfo.getName());
@ -1425,7 +1444,7 @@ public class ProTaskDetailService implements IProTaskDetailService {
}
@Override
public List<TaskVo.TaskListByProjectId> queryAllTaskByProjectId(Long currentUserId, TaskDto.QueryAllTaskByProjectId projectIdDto) throws Exception {
public List<TaskVo.TaskListByProjectId> queryAllTaskByProjectId(Long currentUserId, TaskDto.QueryAllTaskByProjectId projectIdDto) {
List<TaskVo.TaskListByProjectId> taskList = new ArrayList<>();
//1、查找一级任务
SysProject project = sysProjectDao.selectByPrimaryKey(projectIdDto.getProjectId());
@ -1439,11 +1458,9 @@ public class ProTaskDetailService implements IProTaskDetailService {
if (CollectionUtil.isNotEmpty(firstTaskDetailList)) {
firstTaskDetailList.forEach(firstTaskDetail -> {
TaskVo.TaskListByProjectId firstTask = taskDetailDao.getTaskById(firstTaskDetail.getId());
List<TaskVo.TaskListByProjectId> secondTaskList = taskDetailDao.getTaskByParentId(firstTaskDetail.getId());
List<TaskVo.TaskListByProjectId> secondTaskList = taskDetailDao.getTaskByParentId(firstTaskDetail.getId(),null);
if(CollectionUtil.isNotEmpty(secondTaskList)){
secondTaskList.forEach(secondTask -> {
secondTask.setParentName(firstTaskDetail.getName());
});
secondTaskList.forEach(secondTask -> secondTask.setParentName(firstTaskDetail.getName()));
}
firstTask.setSecondTasks(secondTaskList);
taskList.add(firstTask);

2
tall/src/main/java/com/ccsens/tall/web/PluginController.java

@ -187,7 +187,7 @@ public class PluginController {
@ApiImplicitParams({
})
@RequestMapping(value = "/config", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse updatePluginConfig(@ApiParam @Validated @RequestBody PluginDto.UpdatePluginConfig updatePluginConfig) throws Exception {
public JsonResponse updatePluginConfig(HttpServletRequest request,@ApiParam @Validated @RequestBody PluginDto.UpdatePluginConfig updatePluginConfig) throws Exception {
taskPluginService.updatePluginConfig(updatePluginConfig);
return JsonResponse.newInstance().ok();
}

33
tall/src/main/java/com/ccsens/tall/web/RoleController.java

@ -1,7 +1,9 @@
package com.ccsens.tall.web;
import com.ccsens.tall.bean.dto.RoleDto;
import com.ccsens.tall.bean.vo.ProjectVo;
import com.ccsens.tall.bean.vo.RoleVo;
import com.ccsens.tall.bean.vo.TaskVo;
import com.ccsens.tall.service.IProRoleService;
import com.ccsens.util.JsonResponse;
import com.ccsens.util.WebConstant;
@ -12,6 +14,7 @@ import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
/**
* @author
@ -50,10 +53,10 @@ public class RoleController {
@ApiImplicitParams({
})
@RequestMapping(value = "/update", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse updateRole(HttpServletRequest request,
@ApiParam @Validated @RequestBody RoleDto.UpdateRole updateRole) throws Exception {
public JsonResponse<ProjectVo.RoleInfo> updateRole(HttpServletRequest request,
@ApiParam @Validated @RequestBody RoleDto.UpdateRole updateRole) throws Exception {
Long currentUserId = Long.valueOf(((Claims) request.getAttribute(WebConstant.REQUEST_KEY_CLAIMS)).getSubject());
proRoleService.updateRole(currentUserId,updateRole);
ProjectVo.RoleInfo roleInfo = proRoleService.updateRole(currentUserId,updateRole);
return JsonResponse.newInstance().ok();
}
@ -79,15 +82,27 @@ public class RoleController {
return JsonResponse.newInstance().ok();
}
@ApiOperation(value = "通过",notes = "")
// @ApiOperation(value = "通过",notes = "")
// @ApiImplicitParams({
// })
// @RequestMapping(value = "/deleteMember", method = RequestMethod.GET, produces = {"application/json;charset=UTF-8"})
// public JsonResponse<RoleVo.RoleByProjectId> queryRoleByProjectId(HttpServletRequest request,
// @RequestParam(required = true)Long projectId) throws Exception {
// Long currentUserId = Long.valueOf(((Claims) request.getAttribute(WebConstant.REQUEST_KEY_CLAIMS)).getSubject());
// RoleVo.RoleByProjectId roleInfo = proRoleService.queryRoleByProjectId(projectId);
// return JsonResponse.newInstance().ok(roleInfo);
// }
@ApiOperation(value = "点击项目角色查询一级任务及里程碑",notes = "")
@ApiImplicitParams({
})
@RequestMapping(value = "/deleteMember", method = RequestMethod.GET, produces = {"application/json;charset=UTF-8"})
public JsonResponse<RoleVo.RoleByProjectId> queryRoleByProjectId(HttpServletRequest request,
@RequestParam(required = true)Long projectId) throws Exception {
@RequestMapping(value = "/ProjectVirtualRole", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<List<TaskVo.TaskListByProjectId>> queryByProjectVirtualRole(HttpServletRequest request,
@ApiParam @Validated @RequestBody RoleDto.ProjectId projectId) throws Exception {
Long currentUserId = Long.valueOf(((Claims) request.getAttribute(WebConstant.REQUEST_KEY_CLAIMS)).getSubject());
RoleVo.RoleByProjectId roleInfo = proRoleService.queryRoleByProjectId(projectId);
return JsonResponse.newInstance().ok(roleInfo);
List<TaskVo.TaskListByProjectId> taskListByProjectIdList = proRoleService.queryByProjectVirtualRole(projectId);
return JsonResponse.newInstance().ok(taskListByProjectIdList);
}
}

4
tall/src/main/resources/application.yml

@ -1,4 +1,4 @@
spring:
profiles:
active: prod
include: util-prod,common
active: test
include: util-test,common

1
tall/src/main/resources/mapper_dao/SysPluginDao.xml

@ -105,6 +105,7 @@
t_pro_plugin_config pc LEFT JOIN t_pro_task_plugin tp on pc.plugin_id = tp.plugin_id
WHERE
tp.id = #{taskPluginId}
and pc.task_id = #{taskDetailId}
and pc.rec_status = 0
and tp.rec_status = 0
LIMIT 1

27
tall/src/main/resources/mapper_dao/TaskDetailDao.xml

@ -61,8 +61,8 @@
resultMap="secondTask">
SELECT
*,
GROUP_CONCAT(t.p_id ORDER BY t.p_id) as pId,
GROUP_CONCAT(t.spName ORDER BY t.p_id) as pName,
GROUP_CONCAT(t.p_id ORDER BY t.spid) as pId,
GROUP_CONCAT(t.spName ORDER BY t.spid) as pName,
GROUP_CONCAT(t.spDescription ORDER BY t.spid) as pDescription,
GROUP_CONCAT(t.spShowType ORDER BY t.spid) as pShowType
FROM
@ -147,8 +147,8 @@
resultMap="secondTask">
SELECT
*,
GROUP_CONCAT(t.p_id ORDER BY t.p_id) as pId,
GROUP_CONCAT(t.spName ORDER BY t.p_id) as pName,
GROUP_CONCAT(t.p_id ORDER BY t.spid) as pId,
GROUP_CONCAT(t.spName ORDER BY t.spid) as pName,
GROUP_CONCAT(t.spDescription ORDER BY t.spid) as pDescription,
GROUP_CONCAT(t.spShowType ORDER BY t.spid) as pShowType
FROM
@ -222,8 +222,8 @@
resultMap="secondTask">
SELECT
*,
GROUP_CONCAT(t.p_id ORDER BY t.p_id) as pId,
GROUP_CONCAT(t.spName ORDER BY t.p_id) as pName,
GROUP_CONCAT(t.p_id ORDER BY t.spid) as pId,
GROUP_CONCAT(t.spName ORDER BY t.spid) as pName,
GROUP_CONCAT(t.spDescription ORDER BY t.spid) as pDescription,
GROUP_CONCAT(t.spShowType ORDER BY t.spid) as pShowType
FROM
@ -246,9 +246,6 @@
d.virtual as tVirtual,
d.delay as tDelay,
d.has_group as tHasGroup,
c.web_path as webPath,
c.routine_location as routineLocation,
c.import_param as importParam,
sp.name as spName,
p.id as p_id,
sp.description as spDescription,
@ -265,7 +262,6 @@
p.id IS NULL
)
LEFT JOIN t_sys_plugin sp ON sp.id = p.plugin_id
left join t_pro_plugin_config c on d.id = c.task_id
WHERE
d.rec_status = 0
and
@ -282,8 +278,8 @@
resultMap="secondTask">
SELECT
*,
GROUP_CONCAT(t.p_id ORDER BY t.p_id) as pId,
GROUP_CONCAT(t.spName ORDER BY t.p_id) as pName,
GROUP_CONCAT(t.p_id ORDER BY t.spid) as pId,
GROUP_CONCAT(t.spName ORDER BY t.spid) as pName,
GROUP_CONCAT(t.spDescription ORDER BY t.spid) as pDescription,
GROUP_CONCAT(t.spShowType ORDER BY t.spid) as pShowType
FROM
@ -365,8 +361,8 @@
<select id="selectTaskByParentIdAndTime" parameterType="java.util.Map" resultMap="secondTask">
SELECT
*,
GROUP_CONCAT(t.p_id ORDER BY t.p_id) as pId,
GROUP_CONCAT(t.spName ORDER BY t.p_id) as pName,
GROUP_CONCAT(t.p_id ORDER BY t.spid) as pId,
GROUP_CONCAT(t.spName ORDER BY t.spid) as pName,
GROUP_CONCAT(t.spDescription ORDER BY t.spid) as pDescription,
GROUP_CONCAT(t.spShowType ORDER BY t.spid) as pShowType
FROM
@ -565,6 +561,9 @@
LEFT JOIN t_pro_task_deliver d on t.id = d.task_detail_id
WHERE
t.parent_id = #{parentTaskId}
<if test="milestone != null">
and t.milestone = #{milestone}
</if>
and t.rec_status = 0
</select>

Loading…
Cancel
Save