Browse Source

查询任务,查询角色

test
ma 4 years ago
parent
commit
ab96523bb3
  1. 8
      src/main/java/com/ccsens/carbasics/api/TaskController.java
  2. 19
      src/main/java/com/ccsens/carbasics/persist/dao/MenuPluginDao.java
  3. 11
      src/main/java/com/ccsens/carbasics/persist/dao/OrganizationMemberPositionDao.java
  4. 22
      src/main/java/com/ccsens/carbasics/persist/dao/PositionPowerDao.java
  5. 17
      src/main/java/com/ccsens/carbasics/service/IPositionPowerService.java
  6. 46
      src/main/java/com/ccsens/carbasics/service/PositionPowerService.java
  7. 60
      src/main/java/com/ccsens/carbasics/service/QuestionnaireService.java
  8. 2
      src/main/java/com/ccsens/carbasics/service/RoleCarService.java
  9. 22
      src/main/resources/mapper_dao/MenuPluginDao.xml
  10. 17
      src/main/resources/mapper_dao/OrganizationMemberPositionDao.xml
  11. 51
      src/main/resources/mapper_dao/PositionPowerDao.xml

8
src/main/java/com/ccsens/carbasics/api/TaskController.java

@ -1,5 +1,6 @@
package com.ccsens.carbasics.api;
import com.ccsens.carbasics.service.IPositionPowerService;
import com.ccsens.cloudutil.annotation.MustLogin;
import com.ccsens.common.bean.dto.CPluginDto;
import com.ccsens.common.bean.dto.CTaskDto;
@ -33,12 +34,17 @@ public class TaskController {
private ITaskService taskService;
@Resource
private IPluginService pluginService;
@Resource
private IPositionPowerService positionPowerService;
@MustLogin
@ApiOperation(value = "查找永久日常任务", notes = "")
@RequestMapping(value = "/permanent", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<List<CTaskVo.QueryTask>> queryPermanentGlobalTask(@ApiParam @Validated @RequestBody QueryDto<CTaskDto.QueryPermanentGlobalTask> params) {
List<CTaskVo.QueryTask> queryTasks = taskService.queryPermanentGlobalTask(params.getParam(), params.getUserId());
// List<CTaskVo.QueryTask> queryTasks = taskService.queryPermanentGlobalTask(params.getParam(), params.getUserId());
log.info("查找永久日常任务开始:{}",params);
List<CTaskVo.QueryTask> queryTasks = positionPowerService.queryPermanentGlobalTask(params.getParam(), params.getUserId());
log.info("查找永久日常任务结束:{}",params);
return JsonResponse.newInstance().ok(queryTasks);
}

19
src/main/java/com/ccsens/carbasics/persist/dao/MenuPluginDao.java

@ -0,0 +1,19 @@
package com.ccsens.carbasics.persist.dao;
import com.ccsens.carbasics.persist.mapper.MenuPluginMapper;
import com.ccsens.common.bean.vo.CTaskVo;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.List;
@Repository
public interface MenuPluginDao extends MenuPluginMapper {
/**
* 查询菜单关联的插件
* @param menuId 菜单id
* @return 菜单关联的插件列表
*/
List<CTaskVo.TaskPluginInfo> queryPluginByMenuId(@Param("menuId") Long menuId);
}

11
src/main/java/com/ccsens/carbasics/persist/dao/OrganizationMemberPositionDao.java

@ -1,9 +1,12 @@
package com.ccsens.carbasics.persist.dao;
import com.ccsens.carbasics.persist.mapper.OrganizationMemberPositionMapper;
import com.ccsens.common.bean.po.ProRole;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.List;
@Repository
public interface OrganizationMemberPositionDao extends OrganizationMemberPositionMapper {
/**
@ -14,4 +17,12 @@ public interface OrganizationMemberPositionDao extends OrganizationMemberPositio
* @return 0 不存在
*/
Long queryByExistByMember(@Param("memberId") Long memberId,@Param("positonId") Long positionId,@Param("departmentId") Long departmentId);
/**
* 查询用户在机构下的职位(角色)
* @param oid 机构id
* @param userId 用户id
* @return 用户在机构下的职位(角色)
*/
List<ProRole> queryRole(@Param("oid") Long oid,@Param("uid") Long userId);
}

22
src/main/java/com/ccsens/carbasics/persist/dao/PositionPowerDao.java

@ -0,0 +1,22 @@
package com.ccsens.carbasics.persist.dao;
import com.ccsens.carbasics.persist.mapper.PositionPowerMapper;
import com.ccsens.common.bean.vo.CTaskVo;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* @author AUSU
*/
@Repository
public interface PositionPowerDao extends PositionPowerMapper {
/**
*查询角色的菜单与插件
* @param roleId 角色id
* @return 角色的菜单与插件
*/
List<CTaskVo.QueryTask> queryRoleMenu(@Param("roleId") Long roleId);
}

17
src/main/java/com/ccsens/carbasics/service/IPositionPowerService.java

@ -0,0 +1,17 @@
package com.ccsens.carbasics.service;
import com.ccsens.common.bean.dto.CTaskDto;
import com.ccsens.common.bean.vo.CTaskVo;
import java.util.List;
public interface IPositionPowerService {
/**
* 查询职位的权限与绑定的插件
* @param param 角色id
* @param userId 用户id
* @return 职位的权限与绑定的插件
*/
List<CTaskVo.QueryTask> queryPermanentGlobalTask(CTaskDto.QueryPermanentGlobalTask param, Long userId);
}

46
src/main/java/com/ccsens/carbasics/service/PositionPowerService.java

@ -0,0 +1,46 @@
package com.ccsens.carbasics.service;
import cn.hutool.core.collection.CollectionUtil;
import com.ccsens.carbasics.bean.po.MenuPlugin;
import com.ccsens.carbasics.bean.po.PositionPower;
import com.ccsens.carbasics.persist.dao.MenuPluginDao;
import com.ccsens.carbasics.persist.dao.PositionPowerDao;
import com.ccsens.carbasics.persist.mapper.PositionPowerMapper;
import com.ccsens.common.bean.dto.CTaskDto;
import com.ccsens.common.bean.vo.CTaskVo;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
@Slf4j
@Service
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public class PositionPowerService implements IPositionPowerService {
@Resource
private PositionPowerDao positionPowerDao;
@Resource
private MenuPluginDao menuPluginDao;
@Override
public List<CTaskVo.QueryTask> queryPermanentGlobalTask(CTaskDto.QueryPermanentGlobalTask param, Long userId) {
List<CTaskVo.QueryTask> taskList = positionPowerDao.queryRoleMenu(param.getRoleId());
//为功能添加插件
if (CollectionUtil.isNotEmpty(taskList)) {
for (CTaskVo.QueryTask queryTask : taskList) {
List<List<CTaskVo.TaskPluginInfo>> listArrayList = new ArrayList<>();
List<CTaskVo.TaskPluginInfo> pluginInfoList = menuPluginDao.queryPluginByMenuId(queryTask.getDetailId());
listArrayList.add(pluginInfoList);
queryTask.setPlugins(listArrayList);
}
}
return taskList;
}
}

60
src/main/java/com/ccsens/carbasics/service/QuestionnaireService.java

@ -594,36 +594,36 @@ public class QuestionnaireService implements IQuestionnaireService{
public String queryRole(Long positionId){
OrganizationPosition position = positionDao.selectByPrimaryKey(positionId);
if (position.getCode().equals(Constant.PositionIdAndRole.CuZhongZhongXinBanGongShiZhuRen.positionCode)){
return Constant.PositionIdAndRole.CuZhongZhongXinBanGongShiZhuRen.roleName;
}
if (position.getCode().equals(Constant.PositionIdAndRole.CuZhongZhongXinZhuRen.positionCode)){
return Constant.PositionIdAndRole.CuZhongZhongXinZhuRen.roleName;
}
if (position.getCode().equals(Constant.PositionIdAndRole.HuSHi.positionCode)){
return Constant.PositionIdAndRole.HuSHi.roleName;
}
if (position.getCode().equals(Constant.PositionIdAndRole.YiSheng.positionCode)){
return Constant.PositionIdAndRole.YiSheng.roleName;
}
if (position.getCode().equals(Constant.PositionIdAndRole.ZhiKong.positionCode)){
return Constant.PositionIdAndRole.ZhiKong.roleName;
}
if (position.getCode().equals(Constant.PositionIdAndRole.MiShu.positionCode)){
return Constant.PositionIdAndRole.MiShu.roleName;
}
if (position.getCode().equals(Constant.PositionIdAndRole.KeZhuRen.positionCode)){
return Constant.PositionIdAndRole.KeZhuRen.roleName;
}
if (position.getCode().equals(Constant.PositionIdAndRole.FuZhuRen.positionCode)){
return Constant.PositionIdAndRole.FuZhuRen.roleName;
}
if (position.getCode().equals(Constant.PositionIdAndRole.WeiJianWei.positionCode)){
return Constant.PositionIdAndRole.WeiJianWei.roleName;
}
if (position.getCode().equals(Constant.PositionIdAndRole.HuShiZhang.positionCode)){
return Constant.PositionIdAndRole.HuShiZhang.roleName;
}
// if (position.getCode().equals(Constant.PositionIdAndRole.CuZhongZhongXinBanGongShiZhuRen.positionCode)){
// return Constant.PositionIdAndRole.CuZhongZhongXinBanGongShiZhuRen.roleName;
// }
// if (position.getCode().equals(Constant.PositionIdAndRole.CuZhongZhongXinZhuRen.positionCode)){
// return Constant.PositionIdAndRole.CuZhongZhongXinZhuRen.roleName;
// }
// if (position.getCode().equals(Constant.PositionIdAndRole.HuSHi.positionCode)){
// return Constant.PositionIdAndRole.HuSHi.roleName;
// }
// if (position.getCode().equals(Constant.PositionIdAndRole.YiSheng.positionCode)){
// return Constant.PositionIdAndRole.YiSheng.roleName;
// }
// if (position.getCode().equals(Constant.PositionIdAndRole.ZhiKong.positionCode)){
// return Constant.PositionIdAndRole.ZhiKong.roleName;
// }
// if (position.getCode().equals(Constant.PositionIdAndRole.MiShu.positionCode)){
// return Constant.PositionIdAndRole.MiShu.roleName;
// }
// if (position.getCode().equals(Constant.PositionIdAndRole.KeZhuRen.positionCode)){
// return Constant.PositionIdAndRole.KeZhuRen.roleName;
// }
// if (position.getCode().equals(Constant.PositionIdAndRole.FuZhuRen.positionCode)){
// return Constant.PositionIdAndRole.FuZhuRen.roleName;
// }
// if (position.getCode().equals(Constant.PositionIdAndRole.WeiJianWei.positionCode)){
// return Constant.PositionIdAndRole.WeiJianWei.roleName;
// }
// if (position.getCode().equals(Constant.PositionIdAndRole.HuShiZhang.positionCode)){
// return Constant.PositionIdAndRole.HuShiZhang.roleName;
// }
return "";
}
}

2
src/main/java/com/ccsens/carbasics/service/RoleCarService.java

@ -54,7 +54,7 @@ public class RoleCarService implements IRoleCarService {
List<CRoleVo.RoleInfo> invisibleList = new ArrayList<>();
//查询当前用户在项目下的角色,没有则算作关注者
// List<ProRole> userRoleList = proRoleDao.queryRoleByUserId(param.getProjectId(),userId);
List<ProRole> userRoleList = proRoleDao.queryRoleByUserId(param.getProjectId(),userId);
List<ProRole> userRoleList = memberPositionDao.queryRole(param.getProjectId(),userId);
//查询平车角色
CRoleVo.RoleInfo carRole = proRoleDao.queryByName(Constant.CAR_ROLE_NAME, param.getProjectId());
if (CollectionUtil.isNotEmpty(userRoleList)) {

22
src/main/resources/mapper_dao/MenuPluginDao.xml

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ccsens.carbasics.persist.dao.MenuPluginDao">
<select id="queryPluginByMenuId" resultType="com.ccsens.common.bean.vo.CTaskVo$TaskPluginInfo">
SELECT
mp.id AS pluginTaskId,
mpp.plugin_id,
mp.url AS param,
1 AS row,
1 AS col,
1 AS rowspan,
1 AS colspan
FROM
t_qcp_menu_power AS mp
LEFT JOIN t_qcp_menu_plugin AS mpp ON mp.id = mpp.power_id
WHERE mp.rec_status = 0 AND mpp.rec_status = 0
AND mp.id = #{menuId}
</select>
</mapper>

17
src/main/resources/mapper_dao/OrganizationMemberPositionDao.xml

@ -15,4 +15,21 @@
AND department_id = #{departmentId}
</select>
<select id="queryRole" resultType="com.ccsens.common.bean.po.ProRole">
SELECT
op.id,
op.`name`,
o.id AS projectId
FROM
`t_organization_member_position` AS omp
LEFT JOIN t_organization_department AS od ON omp.department_id = od.id
LEFT JOIN t_organization AS o ON o.id = od.organization_id
LEFT JOIN t_organization_position AS op ON omp.position_id = op.id
LEFT JOIN t_organization_member AS om ON omp.member_id = om.id
WHERE
omp.rec_status = 0 AND od.rec_status = 0 AND o.rec_status = 0 AND op.rec_status = 0 AND om.rec_status = 0
AND om.user_id = #{uid}
AND o.id = #{oid}
</select>
</mapper>

51
src/main/resources/mapper_dao/PositionPowerDao.xml

@ -0,0 +1,51 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ccsens.carbasics.persist.dao.PositionPowerDao">
<resultMap id="queryTask" type="com.ccsens.common.bean.vo.CTaskVo$QueryTask">
<id column="id" property="id"/>
<result column="detailId" property="detailId"/>
<result column="name" property="name"/>
<result column="description" property="description"/>
<result column="planStart" property="planStart"/>
<result column="plan_duration" property="planDuration"/>
<result column="plan_end_time" property="planEnd"/>
<result column="realStart" property="realStart"/>
<result column="real_duration" property="realDuration"/>
<result column="real_end_time" property="realEnd"/>
<result column="process" property="process"/>
<result column="skip" property="skip"/>
<result column="skipTaskId" property="skipTaskId"/>
<collection property="panel" ofType="com.ccsens.common.bean.vo.CTaskVo$PanelInfo">
<result column="backgroundColor" property="backgroundColor"/>
<result column="borderRadius" property="borderRadius"/>
<result column="border" property="border"/>
<result column="shadow" property="shadow"/>
<result column="width" property="width"/>
<result column="height" property="height"/>
<result column="row" property="row"/>
<result column="col" property="col"/>
</collection>
</resultMap>
<select id="queryRoleMenu" resultMap="queryTask">
SELECT
mp.id AS id,
mp.id AS detailId,
mp.`name` AS `name`
FROM
t_organization_position AS op
LEFT JOIN t_organization_position_type_relation AS ptr ON op.id = ptr.position_id
LEFT JOIN t_organization_position_type AS opt ON opt.id = ptr.position_type_id
LEFT JOIN t_qcp_position_power AS pp ON opt.id = pp.position_type_id
LEFT JOIN t_qcp_menu_power AS mp ON mp.id = pp.power_id
AND op.rec_status = 0
AND ptr.rec_status = 0
AND opt.rec_status = 0
AND pp.rec_status = 0
AND mp.rec_status = 0
AND op.id = #{roleId}
</select>
</mapper>
Loading…
Cancel
Save