Commit d5c5a728 authored by KeYong's avatar KeYong

提交隐患处理接口

parent dd3002ec
......@@ -15,6 +15,7 @@ public enum DataRefreshTypeEum {
planTask("检查任务","planTask"),
check("巡检","check"),
trouble("设备故障","trouble"),
handleDanger("隐患治理","handleDanger"),
dutyChange("值班信息","dutyChange");
private String name;
......
......@@ -12,11 +12,11 @@ public enum View3dRefreshAreaEum {
* 3d页面数据区域(triggerBy枚举定义见DataRefreshTypeEum.java)
*/
all("全部区域", "all", "dateChange"),
today_safety_index("今日安全指数", "today_safety_index", "rpn,check,trouble"),
today_safety_index("今日安全指数", "today_safety_index", "rpn,check,trouble,handleDanger"),
fire_safety("消防安全执行", "fire_safety", "alarm,rpn,check,trouble"),
monitor_data("设备状态检测数据","monitor_data","monitor"),
error_status("异常区域", "error_status", "rpn,trouble"),
week_safety_index("一周安全指数趋势", "week_safety_index", "rpn"),
week_safety_index("一周安全指数趋势", "week_safety_index", "rpn,check,handleDanger"),
today_check_status("今日巡检情况", "today_check_status", "planTask,check"),
today_duty("今日值班", "today_duty", "dutyChange");
......
package com.yeejoin.amos.fas.business.bo;
import lombok.Data;
/**
* @author keyong
* @title: DangerResultBo
* <pre>
* @description: TODO
* </pre>
* @date 2021/2/1 20:19
*/
@Data
public class DangerResultBo {
private int state;
private String orgCode;
private String userName;
private Long inputItemId;
}
......@@ -3,6 +3,7 @@ package com.yeejoin.amos.fas.business.controller;
import com.alibaba.fastjson.JSONObject;
import com.yeejoin.amos.fas.business.action.model.FireEquimentDataRo;
import com.yeejoin.amos.fas.business.action.model.ProtalDataRo;
import com.yeejoin.amos.fas.business.bo.DangerResultBo;
import com.yeejoin.amos.fas.business.bo.RiskSourceSynBo;
import com.yeejoin.amos.fas.business.param.AlarmParam;
import com.yeejoin.amos.fas.business.param.FmeaBindParam;
......@@ -648,6 +649,14 @@ public class RiskSourceController extends BaseController {
return CommonResponseUtil.success();
}
@ApiOperation(httpMethod = "PUT", value = "隐患治理更新State、rpn值", notes = "隐患治理更新State、rpn值")
@RequestMapping(value = "/data/danger/state", produces = "application/json;charset=UTF-8", method = RequestMethod.PUT)
public CommonResponse processProtalDataFromDanger(@RequestBody DangerResultBo data) throws Exception {
log.info("隐患治理完成更新rpn值" + JSONObject.toJSONString(data));
riskSourceService.processProtalDataFromDanger(data);
return CommonResponseUtil.success();
}
@Permission
@ApiOperation(httpMethod = "PUT", value = "上传巡检任务数据", notes = "上传巡检任务数据")
@RequestMapping(value = "/data/task", produces = "application/json;charset=UTF-8", method = RequestMethod.PUT)
......
......@@ -30,4 +30,6 @@ public interface FmeaPointInputitemMapper extends BaseMapper {
void updateStateByIds(@Param("state") Integer state,
@Param("ids") List<Long> ids);
List<FmeaPointInputitem> listByPointInputItemId(@Param("pointInputItemId") Long pointInputItemId);
}
......@@ -4,6 +4,7 @@ package com.yeejoin.amos.fas.business.service.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
......@@ -747,6 +748,40 @@ public class RiskSourceServiceImpl implements IRiskSourceService {
webMqttComponent.publish(topicThree, JSON.toJSONString(view3dService.getStatisticsCheck(orgCode)));
}
/**
* <pre>
* @Description: 隐患治理更新State、rpn值
* </pre>
*
* @Throws
* @Author keyong
* @Date 2021/2/1 19:50
*/
@Override
public void processProtalDataFromDanger(DangerResultBo dangerResultBo) {
List<FmeaPointInputitem> fmeaPointInputitems = fmeaPointInputitemMapper.listByPointInputItemId(dangerResultBo.getInputItemId());
if (0 < fmeaPointInputitems.size()) {
Set<Long> fmeaIds = Sets.newHashSet();
List<Long> list = Lists.newArrayList();
fmeaPointInputitems.forEach(x -> {
list.add(x.getId());
fmeaIds.add(x.getFmeaId());
});
fmeaPointInputitemMapper.updateStateByIds(0, list);
RsDataQueue rsDataQueue = RsDataQueue.getInstance();
fmeaIds.forEach(fmeaId -> rsDataQueue.addPatrolMessage(fmeaId, dangerResultBo.getUserName(), null, "1"));
iDataRefreshService.refreshViewData(DataRefreshTypeEum.handleDanger.getCode());
// 今日安全
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
String dateString = formatter.format(new Date());
String topicOne = String.format("/%s/%s/%s/%s", serviceName, stationName, "data/refresh", "todaySafetyIndex");
webMqttComponent.publish(topicOne, JSON.toJSONString(view3dService.getSafetyIndexInfoByDate(dangerResultBo.getOrgCode(), dateString)));
// 一周安全趋势
String topicThree = String.format("/%s/%s/%s/%s", serviceName, stationName, "data/refresh", "weekSafetyIndex");
webMqttComponent.publish(topicThree, JSON.toJSONString(view3dService.getSafetyIndexWeek(dangerResultBo.getOrgCode())));
}
}
/**
* 巡检消息规则推送
......
......@@ -4,6 +4,7 @@ package com.yeejoin.amos.fas.business.service.intfc;
import com.yeejoin.amos.fas.business.action.model.FireEquimentDataRo;
import com.yeejoin.amos.fas.business.action.model.ProtalDataRo;
import com.yeejoin.amos.fas.business.bo.BindRegionBo;
import com.yeejoin.amos.fas.business.bo.DangerResultBo;
import com.yeejoin.amos.fas.business.bo.JpushMsgBo;
import com.yeejoin.amos.fas.business.bo.RiskSourceSynBo;
import com.yeejoin.amos.fas.business.param.AlarmParam;
......@@ -214,4 +215,6 @@ public interface IRiskSourceService {
Boolean removeBind(Long instanceId);
ReserveEnum startEquipReserve(Long id, String typeCode);
void processProtalDataFromDanger(DangerResultBo dangerResultBo) throws Exception;
}
......@@ -133,4 +133,12 @@
#{item}
</foreach>
</update>
<select id="listByPointInputItemId" resultType="com.yeejoin.amos.fas.dao.entity.FmeaPointInputitem">
SELECT
*
FROM
f_fmea_point_inputitem ffpi
WHERE ffpi.point_inputitem_id = #{pointInputItemId}
</select>
</mapper>
\ No newline at end of file
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