Commit 8eb19886 authored by chenhao's avatar chenhao

添加对于检查级别设计的数据权限的筛选

parent 31aadb6f
package com.yeejoin.amos.supervision.business.controller; package com.yeejoin.amos.supervision.business.controller;
import static org.hamcrest.CoreMatchers.nullValue;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map;import java.util.stream.Collector;
import java.util.stream.Collectors;
import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel; import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.privilege.model.GroupModel;
import com.yeejoin.amos.supervision.common.enums.CheckTypeSuEnum; import com.yeejoin.amos.supervision.common.enums.CheckTypeSuEnum;
import com.yeejoin.amos.supervision.common.enums.DangerCheckTypeLevelEnum; import com.yeejoin.amos.supervision.common.enums.DangerCheckTypeLevelEnum;
import com.yeejoin.amos.supervision.common.enums.PlanStatusEnum; import com.yeejoin.amos.supervision.common.enums.PlanStatusEnum;
...@@ -13,12 +19,14 @@ import com.yeejoin.amos.supervision.core.framework.PersonIdentify; ...@@ -13,12 +19,14 @@ import com.yeejoin.amos.supervision.core.framework.PersonIdentify;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.domain.Page; import org.springframework.data.domain.Page;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.typroject.tyboot.core.foundation.enumeration.UserType; import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.restful.doc.TycloudOperation; import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams; import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.supervision.business.param.PlanInfoPageParam; import com.yeejoin.amos.supervision.business.param.PlanInfoPageParam;
import com.yeejoin.amos.supervision.business.service.intfc.IPlanService; import com.yeejoin.amos.supervision.business.service.intfc.IPlanService;
import com.yeejoin.amos.supervision.business.util.CommonResponse; import com.yeejoin.amos.supervision.business.util.CommonResponse;
...@@ -38,211 +46,243 @@ import org.typroject.tyboot.core.restful.utils.ResponseModel; ...@@ -38,211 +46,243 @@ import org.typroject.tyboot.core.restful.utils.ResponseModel;
@RequestMapping(value = "/api/plan") @RequestMapping(value = "/api/plan")
@Api(tags = "巡检计划api") @Api(tags = "巡检计划api")
public class PlanController extends AbstractBaseController { public class PlanController extends AbstractBaseController {
private final Logger log = LoggerFactory.getLogger(PlanController.class); private final Logger log = LoggerFactory.getLogger(PlanController.class);
@Autowired @Autowired
private IPlanService planService; private IPlanService planService;
/** @Value("${supervision.role.isIncludOrgAirRoleId}")
* 巡检计划查询 private Long isIncludOrgAirRoleId;
*
* @param @Value("${supervision.role.includOrgCompanyRoleId}")
* @param private Long includOrgCompanyRoleId;
* @return
*/ /**
@TycloudOperation(ApiLevel = UserType.AGENCY) * 巡检计划查询
@ApiOperation(value = "巡检计划查询", notes = "巡检计划查询") *
@RequestMapping(value = "/list", produces = "application/json;charset=UTF-8", method = RequestMethod.POST) * @param
@PersonIdentify * @param
public CommonResponse qryCheckInfoPage(@ApiParam(value = "查询条件", required = false) @RequestBody(required = false) List<CommonRequest> queryRequests, * @return
@ApiParam(value = "分页参数", required = true) CommonPageable commonPageable) { */
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(value = "巡检计划查询", notes = "巡检计划查询")
@RequestMapping(value = "/list", produces = "application/json;charset=UTF-8", method = RequestMethod.POST)
@PersonIdentify
public CommonResponse qryCheckInfoPage(
@ApiParam(value = "查询条件", required = false) @RequestBody(required = false) List<CommonRequest> queryRequests,
@ApiParam(value = "分页参数", required = true) CommonPageable commonPageable) {
// ReginParams reginParams = getSelectedOrgInfo(); // ReginParams reginParams = getSelectedOrgInfo();
// String loginOrgCode = getOrgCode(reginParams); // String loginOrgCode = getOrgCode(reginParams);
// HashMap<String, Object> paramMap = buildMybatisCriterias(loginOrgCode, null); // HashMap<String, Object> paramMap = buildMybatisCriterias(loginOrgCode, null);
// buildRequestCxt(); // buildRequestCxt();
PlanInfoPageParam param = PlanPageParamUtil.fillPlanInfoParam(queryRequests, commonPageable, new HashMap<>()); PlanInfoPageParam param = PlanPageParamUtil.fillPlanInfoParam(queryRequests, commonPageable, new HashMap<>());
Page<HashMap<String, Object>> list = planService.getPlanInfo(param); Page<HashMap<String, Object>> list = planService.getPlanInfo(param);
return CommonResponseUtil.success(list); return CommonResponseUtil.success(list);
} }
/** /**
* 业主单位维保计划查询 * 业主单位维保计划查询
* *
* @param * @param
* @param * @param
* @return * @return
*/ */
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(value = "业主单位维保计划查询", notes = "业主单位维保计划查询") @ApiOperation(value = "业主单位维保计划查询", notes = "业主单位维保计划查询")
@RequestMapping(value = "/owner/list", produces = "application/json;charset=UTF-8", method = RequestMethod.POST) @RequestMapping(value = "/owner/list", produces = "application/json;charset=UTF-8", method = RequestMethod.POST)
public CommonResponse queryInfoPage(@ApiParam(value = "查询条件", required = false) @RequestBody(required = false) List<CommonRequest> queryRequests, public CommonResponse queryInfoPage(
@ApiParam(value = "分页参数", required = true) CommonPageable commonPageable) { @ApiParam(value = "查询条件", required = false) @RequestBody(required = false) List<CommonRequest> queryRequests,
HashMap<String, Object> paramMap = buildMybatisCriterias(null, null); @ApiParam(value = "分页参数", required = true) CommonPageable commonPageable) {
HashMap<String, Object> paramMap = buildMybatisCriterias(null, null);
// buildRequestCxt(); // buildRequestCxt();
PlanInfoPageParam param = PlanPageParamUtil.fillPlanInfoParam(queryRequests, commonPageable, paramMap); PlanInfoPageParam param = PlanPageParamUtil.fillPlanInfoParam(queryRequests, commonPageable, paramMap);
Page<HashMap<String, Object>> list = planService.getPlanInfo(param); Page<HashMap<String, Object>> list = planService.getPlanInfo(param);
return CommonResponseUtil.success(list); return CommonResponseUtil.success(list);
} }
/** /**
* 巡检计划新增 * 巡检计划新增
* *
* @param param * @param param
* @return * @return
*/ */
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@PersonIdentify @PersonIdentify
@ApiOperation(value = "巡检计划新增及编辑", notes = "巡检计划新增及编辑") @ApiOperation(value = "巡检计划新增及编辑", notes = "巡检计划新增及编辑")
@RequestMapping(value = "/addPlan", produces = "application/json;charset=UTF-8", method = RequestMethod.POST) @RequestMapping(value = "/addPlan", produces = "application/json;charset=UTF-8", method = RequestMethod.POST)
public CommonResponse checkPlanAdd(@ApiParam(value = "巡检计划", required = true) @RequestBody AddPlanRequest param) { public CommonResponse checkPlanAdd(@ApiParam(value = "巡检计划", required = true) @RequestBody AddPlanRequest param) {
try { try {
AgencyUserModel user = getUserInfo(); AgencyUserModel user = getUserInfo();
ReginParams reginParams = getSelectedOrgInfo(); ReginParams reginParams = getSelectedOrgInfo();
String loginOrgCode = getOrgCode(reginParams); String loginOrgCode = getOrgCode(reginParams);
HashMap<String, Object> map = new HashMap<String, Object>(); HashMap<String, Object> map = new HashMap<String, Object>();
map.put("org_code", loginOrgCode); map.put("org_code", loginOrgCode);
map.put("user_id", user.getUserId()); map.put("user_id", user.getUserId());
map.put("user_name", user.getRealName()); map.put("user_name", user.getRealName());
map.put("param", param); map.put("param", param);
planService.addPlan(map,reginParams); planService.addPlan(map, reginParams);
return CommonResponseUtil.success(); return CommonResponseUtil.success();
} catch (Exception e) { } catch (Exception e) {
log.error(e.getMessage(), e); log.error(e.getMessage(), e);
return CommonResponseUtil.failure("巡检计划新增失败"); return CommonResponseUtil.failure("巡检计划新增失败");
} }
} }
/** /**
* 巡检计划删除(支持批量) * 巡检计划删除(支持批量)
* *
* @param param * @param param
* @return * @return
*/ */
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(value = "删除巡检计划", notes = "删除巡检计划") @ApiOperation(value = "删除巡检计划", notes = "删除巡检计划")
@RequestMapping(value = "/deletePlanById", produces = "application/json;charset=UTF-8", method = RequestMethod.POST) @RequestMapping(value = "/deletePlanById", produces = "application/json;charset=UTF-8", method = RequestMethod.POST)
public CommonResponse deletePlanById( public CommonResponse deletePlanById(@ApiParam(value = "巡检计划ID", required = true) @RequestBody String[] param) {
@ApiParam(value = "巡检计划ID", required = true) @RequestBody String[] param) { try {
try { planService.delPlanById(param);
planService.delPlanById(param); return CommonResponseUtil.success();
return CommonResponseUtil.success(); } catch (Exception e) {
} catch (Exception e) { log.error(e.getMessage(), e);
log.error(e.getMessage(), e); return CommonResponseUtil.failure("删除巡检计划失败" + ":" + e.getMessage());
return CommonResponseUtil.failure("删除巡检计划失败" + ":" + e.getMessage()); }
} }
}
/**
* 编辑巡检另存(支持批量)
/** *
* 编辑巡检另存(支持批量) * @param param
* * @return
* @param param */
* @return @TycloudOperation(ApiLevel = UserType.AGENCY)
*/ @ApiOperation(value = "另存巡检计划", notes = "另存巡检计划")
@TycloudOperation(ApiLevel = UserType.AGENCY) @RequestMapping(value = "/saveAs", produces = "application/json;charset=UTF-8", method = RequestMethod.POST)
@ApiOperation(value = "另存巡检计划", notes = "另存巡检计划") public CommonResponse planSaveAs(@ApiParam(value = "参数", required = true) @RequestBody String[] param) {
@RequestMapping(value = "/saveAs", produces = "application/json;charset=UTF-8", method = RequestMethod.POST) try {
public CommonResponse planSaveAs(@ApiParam(value = "参数", required = true) @RequestBody String[] param) { planService.planSaveAs(param);
try { return CommonResponseUtil.success();
planService.planSaveAs(param); } catch (Exception e) {
return CommonResponseUtil.success(); log.error(e.getMessage(), e);
} catch (Exception e) { return CommonResponseUtil.failure("另存巡检计划失败");
log.error(e.getMessage(), e); }
return CommonResponseUtil.failure("另存巡检计划失败"); }
}
} /**
* 根据id查询巡检计划
/** *
* 根据id查询巡检计划 * @param id
* * @return
* @param id */
* @return @TycloudOperation(ApiLevel = UserType.AGENCY)
*/ @ApiOperation(value = "查询巡检计划明细", notes = "查询巡检计划明细")
@TycloudOperation(ApiLevel = UserType.AGENCY) @RequestMapping(value = "/detail/{id}", produces = "application/json;charset=UTF-8", method = RequestMethod.GET)
@ApiOperation(value = "查询巡检计划明细", notes = "查询巡检计划明细") public CommonResponse queryPointById(
@RequestMapping(value = "/detail/{id}", produces = "application/json;charset=UTF-8", method = RequestMethod.GET) @ApiParam(value = "计划id", required = true) @PathVariable(name = "id") Long id) {
public CommonResponse queryPointById(@ApiParam(value = "计划id", required = true) @PathVariable(name = "id") Long id) {
Plan plan = planService.queryPlanById(id);
Plan plan = planService.queryPlanById(id); return CommonResponseUtil.success(plan);
return CommonResponseUtil.success(plan);
}
}
/**
/** * 巡检计划查询
* 巡检计划查询 *
* * @param
* @param * @param param
* @param param * @return
* @return */
*/ @TycloudOperation(ApiLevel = UserType.AGENCY)
@TycloudOperation(ApiLevel = UserType.AGENCY) @ApiOperation(value = "巡检计划查询", notes = "巡检计划查询")
@ApiOperation(value = "巡检计划查询", notes = "巡检计划查询") @RequestMapping(value = "/queryPlanByOrgCode", produces = "application/json;charset=UTF-8", method = RequestMethod.POST)
@RequestMapping(value = "/queryPlanByOrgCode", produces = "application/json;charset=UTF-8", method = RequestMethod.POST) public CommonResponse qryCheckInfo(
public CommonResponse qryCheckInfo(@ApiParam(value = "查询条件") @RequestBody(required = false) List<CommonRequest> queryRequests) { @ApiParam(value = "查询条件") @RequestBody(required = false) List<CommonRequest> queryRequests) {
ReginParams reginParams = getSelectedOrgInfo(); ReginParams reginParams = getSelectedOrgInfo();
String loginOrgCode = getOrgCode(reginParams); String loginOrgCode = getOrgCode(reginParams);
HashMap<String, Object> paramMap = buildMybatisCriterias(loginOrgCode, null); HashMap<String, Object> paramMap = buildMybatisCriterias(loginOrgCode, null);
PlanInfoPageParam param = PlanPageParamUtil.fillPlanInfoParam(queryRequests, null, paramMap); PlanInfoPageParam param = PlanPageParamUtil.fillPlanInfoParam(queryRequests, null, paramMap);
List<HashMap<String, Object>> list = planService.getPlanInfoNoPage(param); List<HashMap<String, Object>> list = planService.getPlanInfoNoPage(param);
return CommonResponseUtil.success(list); return CommonResponseUtil.success(list);
} }
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(value = "查询计划列表(<font color='blue'>手机app</font>)", notes = "查询计划列表(<font color='blue'>手机app</font>)") @ApiOperation(value = "查询计划列表(<font color='blue'>手机app</font>)", notes = "查询计划列表(<font color='blue'>手机app</font>)")
@RequestMapping(value = "/queryPlanList", produces = "application/json;charset=UTF-8", method = RequestMethod.GET) @RequestMapping(value = "/queryPlanList", produces = "application/json;charset=UTF-8", method = RequestMethod.GET)
public CommonResponse queryPlanList() { public CommonResponse queryPlanList() {
ReginParams reginParams = getSelectedOrgInfo(); ReginParams reginParams = getSelectedOrgInfo();
String loginOrgCode = getOrgCode(reginParams); String loginOrgCode = getOrgCode(reginParams);
List<HashMap<String, Object>> list = planService.queryPlanListByOrgCode(loginOrgCode); List<HashMap<String, Object>> list = planService.queryPlanListByOrgCode(loginOrgCode);
return CommonResponseUtil.success(list); return CommonResponseUtil.success(list);
} }
/** /**
* 计划启用停用 * 计划启用停用
* @param *
* @return * @param
*/ * @return
@TycloudOperation(ApiLevel = UserType.AGENCY) */
@ApiOperation(value = "计划启用停用", notes = "计划启用停用") @TycloudOperation(ApiLevel = UserType.AGENCY)
@RequestMapping(value = "/setPlanStatus", produces = "application/json;charset=UTF-8", method = RequestMethod.GET) @ApiOperation(value = "计划启用停用", notes = "计划启用停用")
public CommonResponse setPlanStatus( @RequestMapping(value = "/setPlanStatus", produces = "application/json;charset=UTF-8", method = RequestMethod.GET)
@ApiParam(value = "计划id") @RequestParam(value = "planId", required = false) Long planId, public CommonResponse setPlanStatus(
@ApiParam(value = "计划状态") @RequestParam(value = "status", required = false) Integer status ) { @ApiParam(value = "计划id") @RequestParam(value = "planId", required = false) Long planId,
planService.setplanstatus(planId, status); @ApiParam(value = "计划状态") @RequestParam(value = "status", required = false) Integer status) {
return CommonResponseUtil.success(); planService.setplanstatus(planId, status);
} return CommonResponseUtil.success();
}
/**
* 获取计划详情 /**
* @param * 获取计划详情
* @return *
*/ * @param
@TycloudOperation(ApiLevel = UserType.AGENCY) * @return
@ApiOperation(value = "计划启用停用", notes = "计划启用停用") */
@RequestMapping(value = "/getPlanDetails", produces = "application/json;charset=UTF-8", method = RequestMethod.GET) @TycloudOperation(ApiLevel = UserType.AGENCY)
public CommonResponse getPlanDetails( @ApiOperation(value = "计划启用停用", notes = "计划启用停用")
@ApiParam(value = "计划id") @RequestParam(value = "planId", required = false) Long planId ) { @RequestMapping(value = "/getPlanDetails", produces = "application/json;charset=UTF-8", method = RequestMethod.GET)
PlanPointRespone planRequest = planService.getplandetails(planId); public CommonResponse getPlanDetails(
return CommonResponseUtil.success(planRequest); @ApiParam(value = "计划id") @RequestParam(value = "planId", required = false) Long planId) {
} PlanPointRespone planRequest = planService.getplandetails(planId);
return CommonResponseUtil.success(planRequest);
@TycloudOperation(ApiLevel = UserType.AGENCY) }
@ApiOperation(httpMethod = "GET", value = "计划状态", notes = "计划状态")
@RequestMapping(value = "/planStatus/list", method = RequestMethod.GET) @TycloudOperation(ApiLevel = UserType.AGENCY)
public ResponseModel getPlanStatusList() { @ApiOperation(httpMethod = "GET", value = "计划状态", notes = "计划状态")
return ResponseHelper.buildResponse(PlanStatusEnum.getEnumList()); @RequestMapping(value = "/planStatus/list", method = RequestMethod.GET)
} public ResponseModel getPlanStatusList() {
return ResponseHelper.buildResponse(PlanStatusEnum.getEnumList());
@TycloudOperation(ApiLevel = UserType.AGENCY) }
@ApiOperation(httpMethod = "GET", value = "计划检查类型", notes = "计划检查类型")
@RequestMapping(value = "/checkTypeSuEnum/list", method = RequestMethod.GET) @TycloudOperation(ApiLevel = UserType.AGENCY)
public ResponseModel getCheckTypeSuEnumList() { @ApiOperation(httpMethod = "GET", value = "计划检查类型", notes = "计划检查类型")
return ResponseHelper.buildResponse(CheckTypeSuEnum.getEnumList()); @RequestMapping(value = "/checkTypeSuEnum/list", method = RequestMethod.GET)
} public ResponseModel getCheckTypeSuEnumList() {
return ResponseHelper.buildResponse(CheckTypeSuEnum.getEnumList());
@TycloudOperation(ApiLevel = UserType.AGENCY) }
@ApiOperation(httpMethod = "GET", value = "检查级别", notes = "检查级别")
@RequestMapping(value = "/checkTypeLevelEnum/list", method = RequestMethod.GET) @TycloudOperation(ApiLevel = UserType.AGENCY)
public ResponseModel getCheckTypeLevelEnumList() { @ApiOperation(httpMethod = "GET", value = "检查级别", notes = "检查级别")
return ResponseHelper.buildResponse(DangerCheckTypeLevelEnum.getEnumList()); @RequestMapping(value = "/checkTypeLevelEnum/list", method = RequestMethod.GET)
} public ResponseModel getCheckTypeLevelEnumList() {
boolean includOrgAirRole = false;
boolean includOrgCompanyRole = false;
ReginParams reginParams = getSelectedOrgInfo();
String userId = reginParams.getUserModel().getUserId();
FeignClientResult<List<GroupModel>> groupList = Privilege.groupClient.queryByUserId(userId);
List<GroupModel> list = groupList.getResult();
for (GroupModel groupModel : list) {
if (groupModel.getSequenceNbr().equals(includOrgCompanyRoleId)) {// 单位管理员的对应主键值
includOrgCompanyRole = true;
}
if (groupModel.getSequenceNbr().equals(isIncludOrgAirRoleId)) {// 机场管理员的对应主键值
includOrgAirRole = true;
}
}
List<Map<String, Object>> getEnumList = DangerCheckTypeLevelEnum.getEnumList();
List<Map<String, Object>> resultList=null;
if (!includOrgAirRole && includOrgCompanyRole) {
resultList = getEnumList.stream().filter(i -> i.get("code").toString().equals("1")).collect(Collectors.toList());
return ResponseHelper.buildResponse(resultList);
}
return ResponseHelper.buildResponse(getEnumList);
}
} }
...@@ -53,4 +53,9 @@ emqx.max-inflight=1000 ...@@ -53,4 +53,9 @@ emqx.max-inflight=1000
rule.definition.localIp=172.16.3.89 rule.definition.localIp=172.16.3.89
file.url=http://39.98.45.134:9000/ file.url=http://39.98.45.134:9000/
supervision.person.charger.role=Person_charge_unit_fire_protection_supervision_inspection supervision.person.charger.role=Person_charge_unit_fire_protection_supervision_inspection
\ No newline at end of file
#隐患治理模块用于对多角色判断时,在缺少唯一充足的判断下使用当前角色的主键id作为判断条件,
supervision.role.isIncludOrgAirRoleId=1476527279111151618
supervision.role.includOrgCompanyRoleId=1476527581793099777
...@@ -25,7 +25,7 @@ ...@@ -25,7 +25,7 @@
<springcloud.version>Hoxton.SR8</springcloud.version> <springcloud.version>Hoxton.SR8</springcloud.version>
<maven-jar-plugin.version>3.1.1</maven-jar-plugin.version> <maven-jar-plugin.version>3.1.1</maven-jar-plugin.version>
<tyboot-version>1.1.20</tyboot-version> <tyboot-version>1.1.20</tyboot-version>
<amos.version>1.6.6</amos.version> <amos.version>1.7.1</amos.version>
<itext.version>7.1.1</itext.version> <itext.version>7.1.1</itext.version>
</properties> </properties>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment