Commit 21a0af50 authored by xukaiqiang's avatar xukaiqiang

1

parent e7fc3d0d
......@@ -68,6 +68,9 @@ public class Fmea extends BasicEntity {
@Column(name = "risk_source_id")
private Long riskSourceId;
@Column(name = "risk_level_id")
private Long riskLevelId;
private BigDecimal rpni;
@Lob
......@@ -76,16 +79,16 @@ public class Fmea extends BasicEntity {
private RiskSource riskSource;
@Column(name = "company_leader")
private Integer companyLeader;
private Long companyLeader;
@Column(name = "department_leader")
private Integer departmentLeader;
private Long departmentLeader;
@Column(name = "group_leader")
private Integer groupLeader;
private Long groupLeader;
@Column(name = "person_leader")
private Integer personLeader;
private Long personLeader;
@Column(name = "identify_user")
private Integer identifyUser;
......@@ -263,35 +266,35 @@ public class Fmea extends BasicEntity {
this.rpn = rpn;
}
public Integer getCompanyLeader() {
public Long getCompanyLeader() {
return companyLeader;
}
public void setCompanyLeader(Integer companyLeader) {
public void setCompanyLeader(Long companyLeader) {
this.companyLeader = companyLeader;
}
public Integer getDepartmentLeader() {
public Long getDepartmentLeader() {
return departmentLeader;
}
public void setDepartmentLeader(Integer departmentLeader) {
public void setDepartmentLeader(Long departmentLeader) {
this.departmentLeader = departmentLeader;
}
public Integer getGroupLeader() {
public Long getGroupLeader() {
return groupLeader;
}
public void setGroupLeader(Integer groupLeader) {
public void setGroupLeader(Long groupLeader) {
this.groupLeader = groupLeader;
}
public Integer getPersonLeader() {
public Long getPersonLeader() {
return personLeader;
}
public void setPersonLeader(Integer personLeader) {
public void setPersonLeader(Long personLeader) {
this.personLeader = personLeader;
}
......@@ -310,4 +313,12 @@ public class Fmea extends BasicEntity {
public void setIdentifyMethod(String identifyMethod) {
this.identifyMethod = identifyMethod;
}
public Long getRiskLevelId() {
return riskLevelId;
}
public void setRiskLevelId(Long riskLevelId) {
this.riskLevelId = riskLevelId;
}
}
\ No newline at end of file
......@@ -27,6 +27,8 @@ public class FmeaPointInputitem extends BasicEntity {
private Long inputItemId;
private Long riskSourceId;
public Long getPointInputitemId() {
return PointInputitemId;
}
......@@ -59,4 +61,13 @@ public class FmeaPointInputitem extends BasicEntity {
public Long getInputItemId() {
return inputItemId;
}
@Transient
public Long getRiskSourceId() {
return riskSourceId;
}
public void setRiskSourceId(Long riskSourceId) {
this.riskSourceId = riskSourceId;
}
}
\ No newline at end of file
package com.yeejoin.amos.fas.business.controller;
import java.util.HashMap;
import java.util.List;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import com.yeejoin.amos.fas.business.param.CommonPageInfoParam;
import com.yeejoin.amos.fas.business.service.intfc.IRiskFactorService;
import com.yeejoin.amos.fas.business.util.CommonPageParamUtil;
......@@ -21,89 +9,90 @@ import com.yeejoin.amos.fas.dao.entity.RiskFactor;
import com.yeejoin.amos.op.core.common.response.CommonResponse;
import com.yeejoin.amos.op.core.util.CommonResponseUtil;
import com.yeejoin.amos.security.entity.User;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import java.util.HashMap;
import java.util.List;
@RestController
@RequestMapping("/api/riskFactor")
@Api("危险因素api")
public class RiskFactorController extends BaseController {
private final Logger log = LoggerFactory.getLogger(RiskFactorController.class);
@Autowired
IRiskFactorService iRiskFactorService;
/**
* 危险因素分页查询
*
* @param id
* @return
*/
@ApiOperation(httpMethod = "POST",value = "危险因素查询", notes = "危险因素查询")
@RequestMapping(value = "/pagelist", produces = "application/json;charset=UTF-8", method = RequestMethod.POST)
public CommonResponse queryRiskFactorPage(@ApiParam(value = "查询条件", required = false) @RequestBody(required = false) List<CommonRequest> queryRequests,
@ApiParam(value = "分页参数", required = true) CommonPageable commonPageable) {
CommonPageInfoParam param = CommonPageParamUtil.fillCommonPageInfoParam(queryRequests, commonPageable);
Page<HashMap<String, Object>> list = iRiskFactorService.queryRiskFactorPage(param);
return CommonResponseUtil.success(list);
}
/**
* 危险因素查询,不分页
*
* @param id
* @return
*/
@ApiOperation(httpMethod = "GET",value = "危险因素查询不分页", notes = "危险因素查询不分页")
@RequestMapping(value = "/all-list", produces = "application/json;charset=UTF-8", method = RequestMethod.GET)
public CommonResponse queryRiskFactor() {
List<RiskFactor> list = iRiskFactorService.queryRiskFactor();
return CommonResponseUtil.success(list);
}
/**
* 危险因素新增及维护
* @param param
* @return
*/
@ApiOperation(httpMethod = "POST", value = "危险因素新增及维护", notes = "危险因素新增及维护")
@RequestMapping(value = "/editRiskFactor", produces = "application/json;charset=UTF-8", method = RequestMethod.POST)
public CommonResponse checkPlanAdd(@ApiParam(value = "危险因素对象", required = true) @RequestBody RiskFactor param) {
try {
Long count = iRiskFactorService.countRepeatData(param);
if (count > 0) {
return CommonResponseUtil.failure("危险因素名称重复:" + param.getName());
}
User user = getUserInfo();
HashMap<String,Object> map = new HashMap<String,Object>();
map.put("org_code", user.getCompany().getCompCode());
map.put("user_id", user.getId());
map.put("dept_id", user.getDepartment() == null ?"0":user.getDepartment().getId());
map.put("param", param);
iRiskFactorService.editRiskFactor(map);
return CommonResponseUtil.success();
} catch (Exception e) {
log.error(e.getMessage(),e);
return CommonResponseUtil.failure("危险因素编辑失败:"+e.getMessage());
}
}
/**
* 危险因素删除(支持批量)
* @param param
* @return
*/
@ApiOperation(httpMethod = "POST", value = "删除危险因素", notes = "删除危险因素")
@RequestMapping(value = "/deleteRiskFactorById", produces = "application/json;charset=UTF-8", method = RequestMethod.POST)
public CommonResponse deleteRiskFactorById(@ApiParam(value = "危险因素ID", required = true) @RequestBody Long[] param) {
try {
iRiskFactorService.detRiskFactor(param);
return CommonResponseUtil.success();
} catch (Exception e) {
log.error(e.getMessage(),e);
return CommonResponseUtil.failure(e.getMessage()+",危险因素删除失败");
}
}
private final Logger log = LoggerFactory.getLogger(RiskFactorController.class);
@Autowired
IRiskFactorService iRiskFactorService;
/**
* 危险因素分页查询
*/
@ApiOperation(httpMethod = "POST", value = "危险因素查询", notes = "危险因素查询")
@RequestMapping(value = "/pagelist", produces = "application/json;charset=UTF-8", method = RequestMethod.POST)
public CommonResponse queryRiskFactorPage(@ApiParam(value = "查询条件", required = false) @RequestBody(required = false) List<CommonRequest> queryRequests,
@ApiParam(value = "分页参数", required = true) CommonPageable commonPageable) {
CommonPageInfoParam param = CommonPageParamUtil.fillCommonPageInfoParam(queryRequests, commonPageable);
Page<HashMap<String, Object>> list = iRiskFactorService.queryRiskFactorPage(param);
return CommonResponseUtil.success(list);
}
/**
* 危险因素查询,不分页
*/
@ApiOperation(httpMethod = "GET", value = "危险因素查询不分页", notes = "危险因素查询不分页")
@RequestMapping(value = "/all-list", produces = "application/json;charset=UTF-8", method = RequestMethod.GET)
public CommonResponse queryRiskFactor() {
List<RiskFactor> list = iRiskFactorService.queryRiskFactor();
return CommonResponseUtil.success(list);
}
/**
* 危险因素新增及维护
*/
@ApiOperation(httpMethod = "POST", value = "危险因素新增及维护", notes = "危险因素新增及维护")
@RequestMapping(value = "/editRiskFactor", produces = "application/json;charset=UTF-8", method = RequestMethod.POST)
public CommonResponse checkPlanAdd(@ApiParam(value = "危险因素对象", required = true) @RequestBody RiskFactor param) {
try {
Long count = iRiskFactorService.countRepeatData(param);
if (count > 0) {
return CommonResponseUtil.failure("危险因素名称重复:" + param.getName());
}
User user = getUserInfo();
HashMap<String, Object> map = new HashMap<>();
map.put("org_code", user.getCompany().getCompCode());
map.put("user_id", user.getId());
map.put("dept_id", user.getDepartment() == null ? "0" : user.getDepartment().getId());
map.put("param", param);
iRiskFactorService.editRiskFactor(map);
return CommonResponseUtil.success();
} catch (Exception e) {
log.error(e.getMessage(), e);
return CommonResponseUtil.failure("危险因素编辑失败:" + e.getMessage());
}
}
/**
* 危险因素删除(支持批量)
*/
@ApiOperation(httpMethod = "POST", value = "删除危险因素", notes = "删除危险因素")
@RequestMapping(value = "/deleteRiskFactorById", produces = "application/json;charset=UTF-8", method = RequestMethod.POST)
public CommonResponse deleteRiskFactorById(@ApiParam(value = "危险因素ID", required = true) @RequestBody Long[] param) {
try {
iRiskFactorService.detRiskFactor(param);
return CommonResponseUtil.success();
} catch (Exception e) {
log.error(e.getMessage(), e);
return CommonResponseUtil.failure(e.getMessage() + ",危险因素删除失败");
}
}
}
package com.yeejoin.amos.fas.business.controller;
import java.util.HashMap;
import java.util.List;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.yeejoin.amos.fas.business.param.CommonPageInfoParam;
import com.yeejoin.amos.fas.business.service.intfc.IRiskLevelService;
import com.yeejoin.amos.fas.business.util.CommonPageParamUtil;
......@@ -22,88 +9,92 @@ import com.yeejoin.amos.fas.dao.entity.RiskLevel;
import com.yeejoin.amos.op.core.common.response.CommonResponse;
import com.yeejoin.amos.op.core.util.CommonResponseUtil;
import com.yeejoin.amos.security.entity.User;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.HashMap;
import java.util.List;
@RestController
@RequestMapping("/api/riskLevel")
@Api("风险等级api")
public class RiskLevelController extends BaseController {
private final Logger log = LoggerFactory.getLogger(RiskLevelController.class);
@Autowired
IRiskLevelService iRiskLevelService;
/**
* 风险等级分页查询
*
* @param id
* @return
*/
@ApiOperation(httpMethod = "POST",value = "风险等级查询", notes = "风险等级查询")
@RequestMapping(value = "/pagelist", produces = "application/json;charset=UTF-8", method = RequestMethod.POST)
public CommonResponse queryRiskLevelPage(@ApiParam(value = "查询条件", required = false) @RequestBody(required = false) List<CommonRequest> queryRequests,
@ApiParam(value = "分页参数", required = true) CommonPageable commonPageable) {
CommonPageInfoParam param = CommonPageParamUtil.fillCommonPageInfoParam(queryRequests, commonPageable);
Page<HashMap<String, Object>> list = iRiskLevelService.queryRiskLevelPage(param);
return CommonResponseUtil.success(list);
}
/**
* 风险等级查询,不分页
*
* @param id
* @return
*/
@ApiOperation(httpMethod = "GET",value = "风险等级查询不分页", notes = "风险等级查询不分页")
@RequestMapping(value = "/all-list", produces = "application/json;charset=UTF-8", method = RequestMethod.GET)
public CommonResponse queryRiskLevel(@ApiParam(value = "模型id", required = false) @RequestParam(required = false) Long id ) {
List<RiskLevel> list = iRiskLevelService.queryRiskLevel(id);
return CommonResponseUtil.success(list);
}
/**
* 风险等级新增及维护
* @param param
* @return
*/
@ApiOperation(httpMethod = "POST", value = "风险等级新增及维护", notes = "风险等级新增及维护")
@RequestMapping(value = "/editRiskLevel", produces = "application/json;charset=UTF-8", method = RequestMethod.POST)
public CommonResponse checkPlanAdd(@ApiParam(value = "风险等级对象", required = true) @RequestBody RiskLevel param) {
try {
Long count = iRiskLevelService.countRepeatData(param);
if (count > 0) {
return CommonResponseUtil.failure("风险等级重复:" + param.getLevel() + "级");
}
User user = getUserInfo();
HashMap<String,Object> map = new HashMap<String,Object>();
map.put("org_code", user.getCompany().getCompCode());
map.put("user_id", user.getId());
map.put("param", param);
iRiskLevelService.editRiskLevel(map);
return CommonResponseUtil.success();
} catch (Exception e) {
log.error(e.getMessage(),e);
return CommonResponseUtil.failure("风险等级编辑失败:"+e.getMessage());
}
}
/**
* 风险等级删除(支持批量)
* @param param
* @return
*/
@ApiOperation(httpMethod = "POST", value = "删除风险等级", notes = "删除风险等级")
@RequestMapping(value = "/deleteRiskLevelById", produces = "application/json;charset=UTF-8", method = RequestMethod.POST)
public CommonResponse deletePlanById(@ApiParam(value = "风险等级ID", required = true) @RequestBody Long[] param) {
try {
iRiskLevelService.detRiskLevel(param);
return CommonResponseUtil.success();
} catch (Exception e) {
log.error(e.getMessage(),e);
return CommonResponseUtil.failure(e.getMessage()+",风险等级删除失败");
}
}
private final Logger log = LoggerFactory.getLogger(RiskLevelController.class);
@Autowired
IRiskLevelService iRiskLevelService;
/**
* 风险等级分页查询
*/
@ApiOperation(httpMethod = "POST", value = "风险等级查询", notes = "风险等级查询")
@RequestMapping(value = "/pagelist", produces = "application/json;charset=UTF-8", method = RequestMethod.POST)
public CommonResponse queryRiskLevelPage(@ApiParam(value = "查询条件") @RequestBody(required = false) List<CommonRequest> queryRequests,
@ApiParam(value = "分页参数", required = true) CommonPageable commonPageable) {
CommonPageInfoParam param = CommonPageParamUtil.fillCommonPageInfoParam(queryRequests, commonPageable);
Page<HashMap<String, Object>> list = iRiskLevelService.queryRiskLevelPage(param);
return CommonResponseUtil.success(list);
}
/**
* 风险等级查询,不分页
*/
@ApiOperation(httpMethod = "GET", value = "风险等级查询不分页", notes = "风险等级查询不分页")
@RequestMapping(value = "/all-list", produces = "application/json;charset=UTF-8", method = RequestMethod.GET)
public CommonResponse queryRiskLevel(@ApiParam(value = "模型id") @RequestParam(required = false) Long id) {
List<RiskLevel> list = iRiskLevelService.queryRiskLevel(id);
return CommonResponseUtil.success(list);
}
/**
* 风险等级新增及维护
*/
@ApiOperation(httpMethod = "POST", value = "风险等级新增及维护", notes = "风险等级新增及维护")
@RequestMapping(value = "/editRiskLevel", produces = "application/json;charset=UTF-8", method = RequestMethod.POST)
public CommonResponse checkPlanAdd(@ApiParam(value = "风险等级对象", required = true) @RequestBody RiskLevel param) {
try {
Long count = iRiskLevelService.countRepeatData(param);
if (count > 0) {
return CommonResponseUtil.failure("风险等级重复:" + param.getLevel() + "级");
}
User user = getUserInfo();
HashMap<String, Object> map = new HashMap<>();
map.put("org_code", user.getCompany().getCompCode());
map.put("user_id", user.getId());
map.put("param", param);
iRiskLevelService.editRiskLevel(map);
return CommonResponseUtil.success();
} catch (Exception e) {
log.error(e.getMessage(), e);
return CommonResponseUtil.failure("风险等级编辑失败:" + e.getMessage());
}
}
/**
* 风险等级删除(支持批量)
*/
@ApiOperation(httpMethod = "POST", value = "删除风险等级", notes = "删除风险等级")
@RequestMapping(value = "/deleteRiskLevelById", produces = "application/json;charset=UTF-8", method = RequestMethod.POST)
public CommonResponse deletePlanById(@ApiParam(value = "风险等级ID", required = true) @RequestBody Long[] param) {
try {
iRiskLevelService.detRiskLevel(param);
return CommonResponseUtil.success();
} catch (Exception e) {
log.error(e.getMessage(), e);
return CommonResponseUtil.failure(e.getMessage() + ",风险等级删除失败");
}
}
}
......@@ -569,7 +569,8 @@ public class RiskSourceController extends BaseController {
@ApiOperation(httpMethod = "PUT", value = "上传巡检数据", notes = "上传巡检数据")
@RequestMapping(value = "/data/patroldata", produces = "application/json;charset=UTF-8", method = RequestMethod.PUT)
public CommonResponse postPatrolData(@RequestBody ProtalDataRo protalData) throws Exception {
return CommonResponseUtil.success(riskSourceService.processProtalData(protalData));
riskSourceService.processProtalData(protalData);
return CommonResponseUtil.success();
}
@Authorization(ingore = true)
......
......@@ -2,24 +2,26 @@ package com.yeejoin.amos.fas.business.feign;
import com.yeejoin.amos.fas.business.service.model.BasicsRo;
import com.yeejoin.amos.fas.business.service.model.ContingencyDeviceStatus;
import com.yeejoin.amos.op.core.common.response.CommonResponse;
import com.yeejoin.amos.fas.business.service.model.RiskSourceRuleRo;
import com.yeejoin.amos.op.core.util.ApplicationConfig;
import com.yeejoin.amos.op.core.util.Constants;
import com.yeejoin.amos.op.core.util.JSONUtil;
import org.codehaus.jackson.JsonParseException;
import org.codehaus.jackson.map.JsonMappingException;
import org.codehaus.jackson.map.ObjectMapper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.*;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpMethod;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service;
import org.springframework.web.client.RestTemplate;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
/**
*
* <pre>
* 规则模型系统远程调用
* </pre>
......@@ -28,72 +30,66 @@ import java.util.Map;
* @version $Id: RemoteRuleServer.java, v 0.1 2019年5月7日 下午5:52:21 amos Exp $
*/
@Service("remoteRuleServer")
public class RemoteRuleServer
{
public class RemoteRuleServer {
@Autowired
private ApplicationConfig applicationConfig;
private final RestTemplate restTemplate;
private final Logger log = LoggerFactory.getLogger(RemoteRuleServer.class);
private ObjectMapper objectMapper = new ObjectMapper();
public RemoteRuleServer()
{
public RemoteRuleServer() {
this.restTemplate = new RestTemplate();
}
/**
*
* <pre>
* 触发规则
* </pre>
*
* @param resFact 触发规则对象
* @param packageId 规范规则包
* @return
* 触发风险点规则
*/
public Object fireRule(BasicsRo resFact, String packageId) throws Exception
{
Map<String, String> map = new HashMap<String, String>();
map.put("resFact", JSONUtil.toJson(resFact));
public Object fireRule(RiskSourceRuleRo riskSourceRuleRo, String packageId) throws Exception {
Map<String, String> map = new HashMap<>();
String data = JSONUtil.toJson(riskSourceRuleRo);
map.put("resFact", data);
map.put("packageId", packageId);
map.put("className", resFact.getClass().getName());
map.put("className", riskSourceRuleRo.getClass().getName());
String url = applicationConfig.getParamValueStr("params.remoteRuleUrl");
HttpHeaders headers = new HttpHeaders();
MediaType type = MediaType
.parseMediaType("application/json; charset=UTF-8");
MediaType type = MediaType.parseMediaType("application/json; charset=UTF-8");
headers.setContentType(type);
headers.add("Accept", MediaType.APPLICATION_JSON.toString());
HttpEntity<Map<String, String>> formEntity = new HttpEntity<Map<String, String>>(map, headers);
HttpEntity<Map<String, String>> formEntity = new HttpEntity<>(map, headers);
ResponseEntity responseEntity = restTemplate.exchange(url + "urule/rule/fireRule",
HttpMethod.POST, formEntity, String.class);
responseEntity.getBody();
Map commonResponse = objectMapper.readValue(responseEntity.getBody().toString(),Map.class);
if (commonResponse != null && commonResponse.get("result").equals(Constants.RESULT_SUCCESS) )
{
Map commonResponse = objectMapper.readValue(responseEntity.getBody().toString(), Map.class);
if (commonResponse != null && commonResponse.get("result").equals(Constants.RESULT_SUCCESS)) {
log.info("调用规则服务成功,请求参数:" + formEntity.toString());
return commonResponse.get("dataList");
}
return null;
}
/**
*
* <pre>
* 触发规则流
* </pre>
*
* @param resFact 触发规则对象
* @param resFact 触发规则对象
* @param packageId 规范规则包
* @param processId 规则流id
* @return
*/
public Object fireRuleFlow(BasicsRo resFact, String packageId, String processId)throws Exception
{
public Object fireRuleFlow(BasicsRo resFact, String packageId, String processId) throws Exception {
Map<String, String> map = new HashMap<String, String>();
map.put("resFact", JSONUtil.toJson(resFact));
map.put("packageId", packageId);
map.put("processId", processId);
map.put("className", resFact.getClass().getName());
String url = applicationConfig.getParamValueStr("params.remoteRuleUrl");
HttpHeaders headers = new HttpHeaders();
MediaType type = MediaType
.parseMediaType("application/json; charset=UTF-8");
......@@ -105,18 +101,16 @@ public class RemoteRuleServer
HttpMethod.POST, formEntity, String.class);
Map commonResponse = objectMapper.readValue(responseEntity.getBody().toString(),Map.class);
if (commonResponse != null && commonResponse.get("result").equals(Constants.RESULT_SUCCESS) )
{
Map commonResponse = objectMapper.readValue(responseEntity.getBody().toString(), Map.class);
if (commonResponse != null && commonResponse.get("result").equals(Constants.RESULT_SUCCESS)) {
return commonResponse.get("dataList");
}
return null;
}
public Object autoProcessContingency(ContingencyDeviceStatus contingencyDeviceStatus) throws Exception {
Map<String, String> map = new HashMap<String, String>();
public Object autoProcessContingency(ContingencyDeviceStatus contingencyDeviceStatus) throws Exception {
Map<String, String> map = new HashMap<String, String>();
String url = applicationConfig.getParamValueStr("params.remoteRuleUrl");
// String url = "http://172.16.10.70:8080/";
......@@ -128,20 +122,19 @@ public class RemoteRuleServer
HttpEntity<Map<String, String>> formEntity = new HttpEntity<Map<String, String>>(map, headers);
String urlParams = "batchNo=%s&stepCode=%s&buttonCode=%s&confirm=%s&contingencyPlanId=%s&stepState=%s";
String.format(urlParams,
contingencyDeviceStatus.getButtonCode(),
contingencyDeviceStatus.getStepCode(),
contingencyDeviceStatus.getConfirm(),
contingencyDeviceStatus.getContingencyPlanId(),
contingencyDeviceStatus.getStepState());
contingencyDeviceStatus.getButtonCode(),
contingencyDeviceStatus.getStepCode(),
contingencyDeviceStatus.getConfirm(),
contingencyDeviceStatus.getContingencyPlanId(),
contingencyDeviceStatus.getStepState());
ResponseEntity responseEntity = restTemplate.exchange(url + "/api/timeline/fire?" + urlParams,
HttpMethod.PUT, formEntity, String.class);
Map commonResponse = objectMapper.readValue(responseEntity.getBody().toString(),Map.class);
if (commonResponse != null && commonResponse.get("result").equals(Constants.RESULT_SUCCESS) )
{
Map commonResponse = objectMapper.readValue(responseEntity.getBody().toString(), Map.class);
if (commonResponse != null && commonResponse.get("result").equals(Constants.RESULT_SUCCESS)) {
return commonResponse.get("dataList");
}
return null;
}
}
}
\ No newline at end of file
package com.yeejoin.amos.fas.business.jpush;
import cn.jpush.api.JPushClient;
import cn.jpush.api.push.model.Platform;
import cn.jpush.api.push.model.PushPayload;
import cn.jpush.api.push.model.audience.Audience;
import cn.jpush.api.push.model.notification.Notification;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class AppMessagePushService {
protected static final Logger log = LoggerFactory.getLogger(AppMessagePushService.class);
@Value("${params.isPush}")
private String isPush;
private static final String APP_KEY = "1b3f7b961200f4b236811dfe";
private static final String MASTER_SECRET = "8b650e645fb3a43c96be02b2";
private static JPushClient jpushClient = new JPushClient(MASTER_SECRET, APP_KEY);
public void sendMessage(List<PushMsgParam> responses) {
try {
if (responses != null && "true".equals(isPush)) {
for (PushMsgParam response : responses) {
PushPayload payload = buildPushPayload(response);
jpushClient.sendPush(payload);
}
}
} catch (Exception e) {
log.error("极光推送异常", e);
}
}
private PushPayload buildPushPayload(PushMsgParam response) {
if (JPushTypeEnum.ALL.getCode().equals(response.getType())) {
return PushPayload.newBuilder()
.setPlatform(Platform.android())
.setAudience(Audience.all())
.setNotification(Notification.android(response.getContent(), response.getSubject(), response.getExtras()))
.build();
} else if (JPushTypeEnum.TAG.getCode().equals(response.getType())) {
return PushPayload.newBuilder()
.setPlatform(Platform.android())
.setAudience(Audience.tag(response.getRecivers()))
.setNotification(Notification.android(response.getContent(), response.getSubject(), response.getExtras()))
.build();
} else {
return PushPayload.newBuilder()
.setPlatform(Platform.android())
.setAudience(Audience.alias(response.getRecivers()))
.setNotification(Notification.android(response.getContent(), response.getSubject(), response.getExtras()))
.build();
}
}
public void sendMessage(PushMsgParam response) {
try {
if (null != response && "true".equals(isPush)) {
PushPayload payload = PushPayload.newBuilder().setPlatform(Platform.android())
.setAudience(Audience.all())
.setNotification(Notification.android(response.getContent(), response.getSubject(), response.getExtras()))
.build();
jpushClient.sendPush(payload);
}
} catch (Exception e) {
log.error("极光推送异常", e);
}
}
}
package com.yeejoin.amos.fas.business.jpush;
/**
* JPush 推送类型
* @author maoying
*
*/
public enum JPushTypeEnum {
ALL("广播","1"),
TAG("标签","2" ),
ALIAS("别名", "3");
/**
* 名称,描述
*/
private String name;
/**
* 编码
*/
private String code;
private JPushTypeEnum(String name, String code){
this.name = name;
this.code = code;
}
public static JPushTypeEnum getEnum(String code) {
JPushTypeEnum jPushTypeEnum = null;
for(JPushTypeEnum type: JPushTypeEnum.values()) {
if (type.getCode().equals(code)) {
jPushTypeEnum = type;
break;
}
}
return jPushTypeEnum;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
}
package com.yeejoin.amos.fas.business.jpush;
import java.util.List;
import java.util.Map;
public class PushMsgParam {
/**
* 标题
*/
private String subject;
/**
* 消息内容
*/
private String content;
/**
* 邮件地址
*/
private String[] emails;
/**
* jpush接收人
*/
private List<String> recivers;
//
/**
* jpush参数传递
*/
Map<String, String> extras;
/**
* jpush发送类型:1:广播;2:标签;3:别名
*/
private String type = "3";
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public List<String> getRecivers() {
return recivers;
}
public void setRecivers(List<String> recivers) {
this.recivers = recivers;
}
public Map<String, String> getExtras() {
return extras;
}
public void setExtras(Map<String, String> extras) {
this.extras = extras;
}
public String getSubject() {
return subject;
}
public void setSubject(String subject) {
this.subject = subject;
}
public String[] getEmails() {
return emails;
}
public void setEmails(String[] emails) {
this.emails = emails;
}
}
......@@ -89,25 +89,25 @@ public class FmeaServiceImpl implements IFmeaService {
}
public void updateRpniInfo(Long riskSourceId) {
new Thread(() ->
{
String batchNo = UUID.randomUUID().toString();
List<RiskSource> riskSources = new ArrayList<>();
RiskSource riskSource = this.iRiskSourceDao.findById(riskSourceId);
riskSources.add(riskSource);
try {
asymbleWithParent(batchNo, riskSources, RiskFactor.class.getSimpleName());
} catch (Exception e) {
e.printStackTrace();
}
}).start();
}
// public void updateRpniInfo(Long riskSourceId) {
//
//
// new Thread(() ->
// {
// String batchNo = UUID.randomUUID().toString();
//
// List<RiskSource> riskSources = new ArrayList<>();
//
// RiskSource riskSource = this.iRiskSourceDao.findById(riskSourceId);
// riskSources.add(riskSource);
// try {
// asymbleWithParent(batchNo, riskSources, RiskFactor.class.getSimpleName());
// } catch (Exception e) {
// e.printStackTrace();
// }
// }).start();
//
// }
@Override
public int queryControlObjCount(String[] ids) {
......@@ -119,47 +119,47 @@ public class FmeaServiceImpl implements IFmeaService {
return 0;//没有关联对象
}
private boolean asymbleWithParent(String bacthNo, List<RiskSource> riskSourceList, String from) throws Exception {
if (!CollectionUtils.isEmpty(riskSourceList)) {
for (RiskSource riskSource : riskSourceList) {
//当前规则
RiskSourceRo riskSourceRo = this.transfer(bacthNo, riskSource, from, new BigDecimal(0));
Object result = remoteRuleServer.fireRule(riskSourceRo, "风险管控/riskFactor");
BigDecimal RPNi = updateRpn(result, riskSource, null);
//处理返回结果
//反查 父级风险点,取得处于第二级的父级风险点
findParent(bacthNo, riskSource, RPNi);
}
}
return true;
}
/**
* 查询父节点风险点
*
* @param riskSource
* @param RPNi
* @return
*/
private BigDecimal findParent(String bacthNo, RiskSource riskSource,
BigDecimal RPNi) throws Exception {
if (riskSource != null && riskSource.getId() != 0 && RPNi.doubleValue() != 0) {
RiskSource parent = this.iRiskSourceDao.findOne(riskSource.getParentId());
if (null != parent) {
RiskSourceRo parentRiskResource = this.transfer(bacthNo, parent, "child", RPNi);
Object result = remoteRuleServer.fireRule(parentRiskResource, "风险管控/riskFactorParent");
updateRpn(result, parent, RPNi);
if (parent.getParentId() != 0)
this.findParent(bacthNo, parent, RPNi);
}
}
return RPNi;
}
// private boolean asymbleWithParent(String bacthNo, List<RiskSource> riskSourceList, String from) throws Exception {
// if (!CollectionUtils.isEmpty(riskSourceList)) {
// for (RiskSource riskSource : riskSourceList) {
// //当前规则
// RiskSourceRo riskSourceRo = this.transfer(bacthNo, riskSource, from, new BigDecimal(0));
//
// Object result = remoteRuleServer.fireRule(riskSourceRo, "风险管控/riskFactor");
// BigDecimal RPNi = updateRpn(result, riskSource, null);
// //处理返回结果
//
// //反查 父级风险点,取得处于第二级的父级风险点
// findParent(bacthNo, riskSource, RPNi);
// }
// }
// return true;
// }
// /**
// * 查询父节点风险点
// *
// * @param riskSource
// * @param RPNi
// * @return
// */
// private BigDecimal findParent(String bacthNo, RiskSource riskSource,
// BigDecimal RPNi) throws Exception {
// if (riskSource != null && riskSource.getId() != 0 && RPNi.doubleValue() != 0) {
// RiskSource parent = this.iRiskSourceDao.findOne(riskSource.getParentId());
// if (null != parent) {
// RiskSourceRo parentRiskResource = this.transfer(bacthNo, parent, "child", RPNi);
// Object result = remoteRuleServer.fireRule(parentRiskResource, "风险管控/riskFactorParent");
// updateRpn(result, parent, RPNi);
//
// if (parent.getParentId() != 0)
// this.findParent(bacthNo, parent, RPNi);
// }
// }
//
// return RPNi;
// }
private RiskSourceRo transfer(String bacthNo, RiskSource riskSource, String from, BigDecimal rpni) {
......
package com.yeejoin.amos.fas.business.service.intfc;
import java.util.HashMap;
import java.util.List;
import com.yeejoin.amos.fas.business.param.CommonPageInfoParam;
import org.springframework.data.domain.Page;
import com.yeejoin.amos.fas.business.param.CommonPageInfoParam;
import com.yeejoin.amos.fas.core.common.request.CommonPageable;
import com.yeejoin.amos.fas.dao.entity.Fmea;
import com.yeejoin.amos.op.core.common.query.DaoCriteria;
import java.util.HashMap;
public interface IFmeaService {
/**
* 维护Fmea模型
*
* @param map
* @return
*/
void editFmea(HashMap<String, Object> map);
/**
* 根据ID删除Fmea
*
* @param fmeaIds
*/
void deleteFmea(Long[] fmeaIds);
/**
* 分页查询Fmea
*
* @param criterias
* @param commonPageable
* @return
*/
Page<HashMap<String, Object>> queryFmeaList(CommonPageInfoParam param);
void updateRpniInfo(Long riskSourceId);
/**
* 查询关联的关联对象个数
*
* @param ids
* @return count 关联对象个数
*/
/**
* 维护Fmea模型
*/
void editFmea(HashMap<String, Object> map);
/**
* 根据ID删除Fmea
*/
void deleteFmea(Long[] fmeaIds);
/**
* 分页查询Fmea
*/
Page<HashMap<String, Object>> queryFmeaList(CommonPageInfoParam param);
//
// void updateRpniInfo(Long riskSourceId);
/**
* 查询关联的关联对象个数
*/
int queryControlObjCount(String[] ids);
}
......@@ -72,7 +72,7 @@ public interface IRiskSourceService {
boolean processTaskData(ProtalDataRo taskData) throws Exception;
boolean processProtalData(ProtalDataRo protalData) throws Exception;
void processProtalData(ProtalDataRo protalData) throws Exception;
RiskSourceTreeResponse queryRiskSourceDetailById(Long id);
......@@ -107,9 +107,9 @@ public interface IRiskSourceService {
Integer getChildTypeByPid(Long riskSourceId);
void notifyFmeaFromAbnormal(Long fmeaId);
void notifyFmeaFromAbnormal(Long fmeaId, String notifyType);
void notifyFmeaFromUpdate(Long fmeaId);
void notifyFmeaFromUpdate(Long fmeaId, String nofityType);
void notifyRiskSource(Long riskSourceId);
void notifyRiskSource(Long riskSourceId, String notifyType, String jpushTarget);
}
......@@ -70,6 +70,13 @@ public class RiskSourceRo extends BasicsRo {
private String riskState;//风险点状态
private BigDecimal rg;
/**
* up、down、no
*/
private String levelChangeType;
public String getRiskState() {
return riskState;
......
package com.yeejoin.amos.fas.business.service.model;
import java.math.BigDecimal;
public class RiskSourceRuleRo extends BasicsRo {
/**
* patrol、equipment、update、delete
*/
private String notifyType;
private Long id;
private BigDecimal rpnr;
private BigDecimal rpni;
/**
* up、down、no
*/
private String levelChangeType;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public BigDecimal getRpnr() {
return rpnr;
}
public void setRpnr(BigDecimal rpnr) {
this.rpnr = rpnr;
}
public BigDecimal getRpni() {
return rpni;
}
public void setRpni(BigDecimal rpni) {
this.rpni = rpni;
}
public String getLevelChangeType() {
return levelChangeType;
}
public void setLevelChangeType(String levelChangeType) {
this.levelChangeType = levelChangeType;
}
public String getNotifyType() {
return notifyType;
}
public void setNotifyType(String notifyType) {
this.notifyType = notifyType;
}
}
......@@ -52,8 +52,12 @@ public class RsDataQueue {
blockingQueue.add(new FmeaMessage(fmeaId, "update"));
}
public void addAbnormalMessage(Long fmeaId) {
blockingQueue.add(new FmeaMessage(fmeaId, "abnormal"));
public void addPatrolMessage(Long fmeaId) {
blockingQueue.add(new FmeaMessage(fmeaId, "patrol"));
}
public void addEquipmentMessage(Long fmeaId) {
blockingQueue.add(new FmeaMessage(fmeaId, "equipment"));
}
public void addDeleteMessage(Long riskSourceId) {
......@@ -68,12 +72,14 @@ public class RsDataQueue {
if (riskSourceService != null) {
String from = fmeaMessage.getNorifyFrom();
Long handId = fmeaMessage.getHandId();
if (from.equals("abnormal")) {
riskSourceService.notifyFmeaFromAbnormal(handId);
if (from.equals("patrol")) {
riskSourceService.notifyFmeaFromAbnormal(handId, from);
} else if (from.equals("equipment")) {
riskSourceService.notifyFmeaFromAbnormal(handId, from);
} else if (from.equals("update")) {
riskSourceService.notifyFmeaFromUpdate(handId);
riskSourceService.notifyFmeaFromUpdate(handId, from);
} else if (from.equals("delete")) {
riskSourceService.notifyRiskSource(handId);
riskSourceService.notifyRiskSource(handId, from, null);
}
}
} catch (Exception e) {
......
......@@ -80,7 +80,7 @@ params.xssSecurity = false
#rule
#params.remoteRuleUrl=http://172.16.3.3:8080/
params.remoteRuleUrl=http://172.16.10.91:8080/
params.remoteRuleUrl=http://magintursh.xicp.net:18080/
params.remoteWebsocketUrl=http://172.16.10.91:10600/
#redis database index
......@@ -103,3 +103,4 @@ linux.img.path = /
file.uploadUrl=D:\\upload\\files\\
#picture read
file.readUrl=http://172.16.3.89:8083/file/getFile?in=
params.isPush=true
......@@ -102,6 +102,66 @@
</sql>
</changeSet>
<changeSet author="xukaiqiang" id="1557134646002-8">
<preConditions onFail="MARK_RAN">
<not>
<columnExists tableName="f_fmea" columnName="risk_level_id"/>
</not>
</preConditions>
<comment>f_fmea add column risk_level_id</comment>
<sql>
ALTER TABLE `f_fmea` ADD COLUMN `risk_level_id` bigint(20) DEFAULT NULL COMMENT '风险等级id';
</sql>
</changeSet>
<changeSet author="xukaiqiang" id="1557134646002-9">
<preConditions onFail="MARK_RAN">
<not>
<columnExists tableName="f_fmea" columnName="company_leader"/>
</not>
</preConditions>
<comment>f_fmea add column company_leader</comment>
<sql>
ALTER TABLE `f_fmea` ADD COLUMN `company_leader` bigint(20) DEFAULT NULL COMMENT '公司负责人';
</sql>
</changeSet>
<changeSet author="xukaiqiang" id="1557134646002-10">
<preConditions onFail="MARK_RAN">
<not>
<columnExists tableName="f_fmea" columnName="department_leader"/>
</not>
</preConditions>
<comment>f_fmea add column department_leader</comment>
<sql>
ALTER TABLE `f_fmea` ADD COLUMN `department_leader` bigint(20) DEFAULT NULL COMMENT '部门负责人';
</sql>
</changeSet>
<changeSet author="xukaiqiang" id="1557134646002-11">
<preConditions onFail="MARK_RAN">
<not>
<columnExists tableName="f_fmea" columnName="group_leader"/>
</not>
</preConditions>
<comment>f_fmea add column group_leader</comment>
<sql>
ALTER TABLE `f_fmea` ADD COLUMN `group_leader` bigint(20) DEFAULT NULL COMMENT '班组负责人';
</sql>
</changeSet>
<changeSet author="xukaiqiang" id="1557134646002-12">
<preConditions onFail="MARK_RAN">
<not>
<columnExists tableName="f_fmea" columnName="person_leader"/>
</not>
</preConditions>
<comment>f_fmea add column person_leader</comment>
<sql>
ALTER TABLE `f_fmea` ADD COLUMN `person_leader` bigint(20) DEFAULT NULL COMMENT '个人负责人';
</sql>
</changeSet>
<changeSet author="tianbo" id="1582104676000-1">
<preConditions onFail="MARK_RAN">
<not>
......
......@@ -176,7 +176,7 @@ CREATE TABLE `f_fmea` (
`create_date` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '创建时间',
`create_by` int(11) DEFAULT '0' COMMENT '创建者',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='FEMA表';
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='FMEA表';
-- ----------------------------
-- Table structure for f_preplan_picture
......
......@@ -98,6 +98,10 @@
a.evaluation_oid as evaluationOid,
a.evaluation_did as evaluationDid,
a.new_evaluation_oid as newEvaluationOid,
a.company_leader as companyLeader,
a.department_leader as departmentLeader,
a.person_leader as personLeader,
a.group_leader as groupLeader,
a.rpni,
a.rpn,
(select coefficient from f_evaluation_model where id = a.evaluation_sid) as sidValue,
......
......@@ -102,11 +102,14 @@
a.fmea_id as fmeaId,
a.point_inputitem_id as pointInputitemId,
a.state,
b.input_item_id as inputItemId
b.input_item_id as inputItemId,
c.risk_source_id
from
f_fmea_point_inputitem as a
left join
p_point_inputitem as b on a.point_inputitem_id = b.id
left join
f_fmea as c on a.fmea_id = c.id
where
b.point_id = #{pointId}
and
......
......@@ -375,7 +375,7 @@
FROM
f_risk_source rs
WHERE
EXISTS (
id in (
SELECT
pi.risk_source_id
FROM
......
......@@ -220,6 +220,11 @@
<artifactId>commons-jexl</artifactId>
<version>2.1.1</version>
</dependency>
<dependency>
<groupId>cn.jpush.api</groupId>
<artifactId>jpush-client</artifactId>
<version>3.3.10</version>
</dependency>
</dependencies>
<dependencyManagement>
......
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