| | |
| | | import com.whyc.constant.CMD_Constant; |
| | | import com.whyc.dto.DevalarmSet; |
| | | import com.whyc.dto.Response; |
| | | import com.whyc.mapper.CkpowerdevBattRsalarmSetMapper; |
| | | import com.whyc.mapper.CkpowerdevBattRtalarmSetMapper; |
| | | import com.whyc.pojo.db_ckpwrdev_data_rt.CKPowerDevAlmParam; |
| | | import com.whyc.pojo.db_ckpwrdev_data_rt.CkpowerdevBattRsalarmSet; |
| | | import com.whyc.mapper.*; |
| | | import com.whyc.pojo.db_ckpwrdev_data_rt.*; |
| | | import com.whyc.util.OpCmdUtil; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.Date; |
| | | import java.util.LinkedList; |
| | | import java.util.List; |
| | | import java.util.stream.Collectors; |
| | | |
| | | @Service |
| | | public class CkpowerdevBattRsalarmSetService { |
| | | @Autowired(required = false) |
| | | private CkpowerdevBattRsalarmSetMapper rsMapper; |
| | | private CkpowerdevBattRsalarmSetMapper rsalarmSetMapper; |
| | | |
| | | @Autowired(required = false) |
| | | private CkpowerdevBattRtalarmSetMapper rtMapper; |
| | | private CKPowerDevBattRtDataSetMapper rtDataSetMapper; |
| | | |
| | | //实时状态设置 |
| | | public Response setDevAlm(DevalarmSet almSet) { |
| | | rsMapper.update(almSet.getRsAlmSet(),null); |
| | | rtMapper.update(almSet.getRtAlmSet(),null); |
| | | @Autowired(required = false) |
| | | private CKPowerDevBattRtStateSetMapper rtStateSetMapper; |
| | | |
| | | @Autowired |
| | | private CKPowerDevBattRtDataService dataService; |
| | | |
| | | @Autowired |
| | | private CKPowerDevBattRtStateService stateService; |
| | | |
| | | @Autowired |
| | | private CKPowerDevBattRsAlarmService rsAlarmService; |
| | | |
| | | @Resource |
| | | private CkpowerdevBattRsalarmSetLogMapper setLogMapper; |
| | | |
| | | @Resource |
| | | private CkpowerdevBattRsalarmSetLogService setLogService; |
| | | |
| | | //核容终止时的告警设置 |
| | | public Response setDevAlmHrStop(DevalarmSet almSet) { |
| | | //List<CKPowerDevBattRtDataSet> dataSetList = almSet.getRtDataSetList(); |
| | | //Integer battIndex = dataSetList.get(0).getBattIndex(); |
| | | //1.刷新rsAlarmSet,rtdataSet,rtState告警实时数据<指定默认刷第一组数据> |
| | | updateDataFromDataAndStateAndRsAlarmToSetHrStop(); |
| | | //命令设置进去 |
| | | almSet.getRsAlmSet().setOpCmd(CMD_Constant.CMD_SetHRSTopAlm); |
| | | //修改rsAlarmSet |
| | | rsalarmSetMapper.update(almSet.getRsAlmSet(),null); |
| | | |
| | | //读取opCmd返回是否成功 |
| | | QueryWrapper<CKPowerDevAlmParam> query = Wrappers.query(); |
| | | return OpCmdUtil.getOpStatus(rsMapper,query, CMD_Constant.CMD_SetBattAlarm,20,null); |
| | | QueryWrapper<CkpowerdevBattRsalarmSet> query = Wrappers.query(); |
| | | Response opStatus = OpCmdUtil.getOpStatus(rsalarmSetMapper,query, CMD_Constant.CMD_SetHRSTopAlm,20,null); |
| | | if(opStatus.getData()!=null && (boolean)opStatus.getData()) { //成功 |
| | | //记录日志 |
| | | Date now = new Date(); |
| | | List<CkpowerdevBattRsalarmSetLog> logList = almSet.getLogList(); |
| | | //查询最大的操作编号 |
| | | String opNum=setLogMapper.getOpNum()!=null?setLogMapper.getOpNum():"0"; |
| | | logList.forEach(log->{ |
| | | log.setOpNum(String.valueOf(Integer.valueOf(opNum)+1)); |
| | | log.setCmdType(CMD_Constant.CMD_SetHRSTopAlm); |
| | | log.setCreateTime(now); |
| | | log.setCreateDay(now); |
| | | }); |
| | | setLogService.addBatch(logList); |
| | | } |
| | | return opStatus; |
| | | } |
| | | //1.刷新rsAlarmSet,rtdataSet,rtState告警实时数据<指定默认刷第一组数据> |
| | | public void updateDataFromDataAndStateAndRsAlarmToSetHrStop() { |
| | | //获取默认第一组单体数据刷新至第一组0 |
| | | List<CKPowerDevBattRtData> rtDataList = dataService.getDataList_index0(); |
| | | List<CKPowerDevBattRtDataSet> rtSetDataList = new LinkedList<>(); |
| | | CKPowerDevBattRtStateSet stateSet = new CKPowerDevBattRtStateSet(); |
| | | for (CKPowerDevBattRtData temp : rtDataList) { |
| | | CKPowerDevBattRtDataSet set = new CKPowerDevBattRtDataSet(); |
| | | BeanUtils.copyProperties(temp,set); |
| | | rtSetDataList.add(set); |
| | | } |
| | | rtDataSetMapper.updateBatch(rtSetDataList); |
| | | //获取rtState默认第一组0表数据更新到set表中 |
| | | CKPowerDevBattRtState state = stateService.getStateLsit_index0(0); |
| | | BeanUtils.copyProperties(state,stateSet); |
| | | updateStateSet(stateSet); |
| | | //获取rsalarm更新到set表中 |
| | | CkpowerdevBattRsalarm rsalarm=rsAlarmService.get(); |
| | | CkpowerdevBattRsalarmSet rsalarmSet=new CkpowerdevBattRsalarmSet(); |
| | | BeanUtils.copyProperties(rsalarm,rsalarmSet); |
| | | updateRsAlarmSet(rsalarmSet); |
| | | } |
| | | private void updateStateSet(CKPowerDevBattRtStateSet stateSet) { |
| | | UpdateWrapper<CKPowerDevBattRtStateSet> update = Wrappers.update(); |
| | | update.eq("batt_index",stateSet.getBattIndex()); |
| | | rtStateSetMapper.update(stateSet,update); |
| | | } |
| | | |
| | | private void updateRsAlarmSet(CkpowerdevBattRsalarmSet rsalarmSet) { |
| | | rsalarmSetMapper.update(rsalarmSet,null); |
| | | } |
| | | |
| | | public void update(CkpowerdevBattRsalarmSet rsAlarmSet) { |
| | | rsMapper.update(rsAlarmSet,null); |
| | | rsalarmSetMapper.update(rsAlarmSet,null); |
| | | } |
| | | |
| | | } |