| | |
| | | import java.text.ParseException; |
| | | import java.text.SimpleDateFormat; |
| | | import java.util.*; |
| | | import java.util.stream.Collectors; |
| | | |
| | | @Service("interfaceService") |
| | | public class InterfaceServiceImpl implements InterfaceService { |
| | |
| | | private OpeUseFlowService opeUseFlowService; |
| | | @Resource |
| | | private SysWarningService sysWarningService; |
| | | |
| | | @Resource(name = "sysWarningDao") |
| | | SysWarningDao sysWarningDao; |
| | | @Resource(name = "sysWarehouseDao") |
| | | SysWarehouseDao sysWarehouseDao; |
| | | |
| | |
| | | // 人员违规预警接口 |
| | | @Override |
| | | public void delalarmperson(JSONObject jsonObject) throws Exception { |
| | | String containerCode = jsonObject.getString("containerCode"); |
| | | String warningId = jsonObject.getString("warningId"); |
| | | // 货柜条码 containerCode String ○ |
| | | // 报警类别 warningId Integer ○ |
| | | if (StringUtils.isBlank(containerCode) || StringUtils.isBlank(warningId)) { |
| | | throw new ApiException(ApiStatus.PARAM_NO_EXIST); |
| | | } |
| | | Map<String, String> metaMap = new HashMap<>(); |
| | | metaMap.put("groupId", "user_violate_type"); |
| | | metaMap.put("metaKey", warningId); |
| | | JSONArray dataArr = jsonObject.getJSONArray("data"); |
| | | Iterator<Object> dataIt = dataArr.iterator(); |
| | | while (dataIt.hasNext()) { |
| | | JSONObject dataJson = JSONObject.parseObject(dataIt.next().toString()); |
| | | // 货柜条码 containerCode String ○ |
| | | // 报警类别 warningId Integer ○ |
| | | if (!dataJson.containsKey("warningId") || !dataJson.containsKey("containerCode")) { |
| | | throw new ApiException(ApiStatus.PARAM_NO_EXIST); |
| | | } |
| | | String containerCode = dataJson.getString("containerCode"); |
| | | String warningId = dataJson.getString("warningId"); |
| | | List<String> warningList = Arrays.asList(warningId.split(",")); |
| | | List<String> warningList1 = new ArrayList<>(Arrays.asList("1","2","3","4","5","6")); |
| | | List<String> delWarnings = warningList1.stream().filter(o->!warningList.contains(o)).collect(Collectors.toList());//新的不在原有里面的 |
| | | |
| | | List<BaseMeta> baseMetaList = baseMetaDao.getBaseMetaList(metaMap); |
| | | if (baseMetaList == null || baseMetaList.size() != 1) { |
| | | throw new ApiException(ApiStatus.PARAM_ERR, ApiStatus.PARAM_ERR.getRetMsg() + "[warningId]"); |
| | | } |
| | | for (String warning : delWarnings){ |
| | | Map<String, String> metaMap = new HashMap<>(); |
| | | metaMap.put("groupId", "user_violate_type"); |
| | | metaMap.put("metaKey", warning); |
| | | |
| | | SysAlarmPerson sysAlarmPerson = new SysAlarmPerson(); |
| | | sysAlarmPerson.setContainerCode(containerCode); |
| | | sysAlarmPerson.setWarningId(baseMetaList.get(0).getId()); |
| | | |
| | | List<SysAlarmPerson> sysAlarmPersonList = sysAlarmPersonDao.selectByCode(containerCode, baseMetaList.get(0).getId()); |
| | | // 将人员违规预警记录保存到数据库表 |
| | | for (SysAlarmPerson sysAlarm : sysAlarmPersonList) { |
| | | if (!"".equals(alarmUrl) && StringUtils.isNotBlank(sysAlarm.getRefId()) && ("1".equals(warningId) || "2".equals(warningId))) { |
| | | SysWarning sysWarning = new SysWarning(); |
| | | sysWarning.setId(String.valueOf(sysAlarm.getId())); |
| | | sysWarning.setStatus(1); |
| | | sysWarning.setAlarmId(sysAlarm.getRefId()); |
| | | sysWarningService.updateSysWarning(sysWarning); |
| | | List<BaseMeta> baseMetaList = baseMetaDao.getBaseMetaList(metaMap); |
| | | if (baseMetaList == null || baseMetaList.size() != 1) { |
| | | throw new ApiException(ApiStatus.PARAM_ERR, ApiStatus.PARAM_ERR.getRetMsg() + "[warningId]"); |
| | | } |
| | | SysAlarmPerson sysAlarmPerson = new SysAlarmPerson(); |
| | | sysAlarmPerson.setContainerCode(containerCode); |
| | | sysAlarmPerson.setWarningId(baseMetaList.get(0).getId()); |
| | | List<SysAlarmPerson> sysAlarmPersonList = sysAlarmPersonDao.selectByCode(containerCode, baseMetaList.get(0).getId()); |
| | | for (SysAlarmPerson sysAlarm : sysAlarmPersonList) { |
| | | if (!"".equals(alarmUrl) && StringUtils.isNotBlank(sysAlarm.getRefId()) && ("1".equals(warning) || "2".equals(warning))) { |
| | | SysWarning sysWarning = new SysWarning(); |
| | | sysWarning.setId(String.valueOf(sysAlarm.getId())); |
| | | sysWarning.setStatus(1); |
| | | sysWarning.setAlarmId(sysAlarm.getRefId()); |
| | | sysWarningService.updateSysWarning(sysWarning); |
| | | }else { |
| | | Map<String,Object> params = new HashMap<>(); |
| | | params.put("status",1); |
| | | params.put("id", String.valueOf(sysAlarm.getId())); |
| | | sysWarningDao.updateSysWarning(params); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |