|
|
|
@ -219,57 +219,37 @@ public class TerminalScheduleRuleServiceImpl implements TerminalScheduleRuleServ
|
|
|
|
|
*/
|
|
|
|
|
@Override
|
|
|
|
|
@Transactional
|
|
|
|
|
public ServiceBody<GetModel> relateSchelduleRule(RelateTerminalListRuleIdVo vo) {
|
|
|
|
|
|
|
|
|
|
GetModel model = new GetModel();
|
|
|
|
|
public ServiceBody<GetListModel> relateSchelduleRule(RelateTerminalListRuleIdVo vo) {
|
|
|
|
|
GetListModel model = new GetListModel();
|
|
|
|
|
List<TerminalSchedulesTemp> list = terminalSchedulesTempDao.selectByTermAndChannel(vo.getList(), CommonStatus.DELETE.value());
|
|
|
|
|
if (CollectionUtil.isNotEmpty(list)) {
|
|
|
|
|
|
|
|
|
|
return Asserts.error("有装置时间尚未下发成功");
|
|
|
|
|
}
|
|
|
|
|
List<RelateTerminalListRuleIdVo.Items> termlist = vo.getList();
|
|
|
|
|
|
|
|
|
|
Integer scheduleid = vo.getScheduleid();
|
|
|
|
|
List<TerminalSchedulesTemp> temps = new ArrayList<>();
|
|
|
|
|
List<Integer> termidlist = new ArrayList<>();
|
|
|
|
|
for (RelateTerminalListRuleIdVo.Items item : termlist) {
|
|
|
|
|
termidlist.add(item.getTermid());
|
|
|
|
|
List<Integer> channelidlist = item.getChannelidlist();
|
|
|
|
|
for (Integer it : channelidlist) {
|
|
|
|
|
TerminalSchedulesTemp temp = new TerminalSchedulesTemp();
|
|
|
|
|
temp.setTermId(item.getTermid());
|
|
|
|
|
temp.setScheduleId(scheduleid);
|
|
|
|
|
temp.setChannelId(it);
|
|
|
|
|
temps.add(temp);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
Date date = new Date();
|
|
|
|
|
int i = terminalSchedulesTempDao.insertList(temps, CommonStatus.EFFECTIVE.value(), date, date);
|
|
|
|
|
|
|
|
|
|
List<ChannelAndTermDto> terminalsList = terminalsDao.selectByIdList(vo.getList(), CommonStatus.EFFECTIVE.value());
|
|
|
|
|
|
|
|
|
|
if (CollectionUtil.isEmpty(termidlist)) {
|
|
|
|
|
List<ChannelAndTermDto> terminalsList = terminalsDao.selectByIdList(termlist, CommonStatus.EFFECTIVE.value());
|
|
|
|
|
if (CollectionUtil.isEmpty(terminalsList)) {
|
|
|
|
|
return Asserts.error("没有该装置");
|
|
|
|
|
}
|
|
|
|
|
ScheduleAndRuleDto dto = schedulesDao.selectSingle(scheduleid, CommonStatus.EFFECTIVE.value());
|
|
|
|
|
if (BeanUtil.isEmpty(dto)) {
|
|
|
|
|
return Asserts.error("没有该拍照时间规则");
|
|
|
|
|
}
|
|
|
|
|
List<ScheduleRuleDto> dtoList = dto.getList();
|
|
|
|
|
if (CollectionUtil.isEmpty(dtoList)) {
|
|
|
|
|
return Asserts.error("没有该拍照时间规则");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
StringBuffer timestr = new StringBuffer();
|
|
|
|
|
for (int j = 0; j < dtoList.size(); j++) {
|
|
|
|
|
TerminalPhotosTimeModel.PhotosTimeBean bean = new TerminalPhotosTimeModel.PhotosTimeBean();
|
|
|
|
|
Integer span = dtoList.get(j).getSpan();
|
|
|
|
|
Date startTime = dtoList.get(j).getStartTime();
|
|
|
|
|
Short startHour = Short.parseShort(MyDateUtils.parseHourAndMinute(startTime).split("/")[0]);
|
|
|
|
|
Short startMin = Short.parseShort(MyDateUtils.parseHourAndMinute(startTime).split("/")[1]);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Date endTime = dtoList.get(j).getEndTime();
|
|
|
|
|
Short endTimeHour = Short.parseShort(MyDateUtils.parseHourAndMinute(endTime).split("/")[0]);
|
|
|
|
|
Short endTimeMin = Short.parseShort(MyDateUtils.parseHourAndMinute(endTime).split("/")[1]);
|
|
|
|
|
|
|
|
|
|
Integer span1 = -1;
|
|
|
|
|
Integer span2 = -1;
|
|
|
|
|
if (span / 60 > 0) {
|
|
|
|
@ -283,19 +263,29 @@ public class TerminalScheduleRuleServiceImpl implements TerminalScheduleRuleServ
|
|
|
|
|
+ "--preset2=255 --hour3=" + span1 + "\t" + "--min3=" + span2 + "\t" + "--preset3=255";
|
|
|
|
|
timestr.append(string);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ArrayList<Integer> requestIdList = new ArrayList<>();
|
|
|
|
|
for (int x = 0; x < terminalsList.size(); x++) {
|
|
|
|
|
ChannelAndTermDto channelAndTermDto = terminalsList.get(x);
|
|
|
|
|
String cmd = Constants.CMD + "schedule --flag=1 --cmdid=" + channelAndTermDto.getCmdid() + "\t" + "--channel=" + channelAndTermDto.getChannelid() + "\t" +
|
|
|
|
|
timestr.toString();
|
|
|
|
|
ProcessExecUtils.exec(cmd);
|
|
|
|
|
}
|
|
|
|
|
model.setRequestId(Integer.parseInt(Constants.REQUEST_ID.toString()));
|
|
|
|
|
Constants.REQUEST_ID.addAndGet(1);
|
|
|
|
|
if (i != 0) {
|
|
|
|
|
return Asserts.success(model);
|
|
|
|
|
} else {
|
|
|
|
|
return Asserts.error("关联失败");
|
|
|
|
|
// ProcessExecUtils.exec(cmd);
|
|
|
|
|
int requestId = Integer.parseInt(Constants.REQUEST_ID.toString());
|
|
|
|
|
Constants.REQUEST_ID.addAndGet(1);
|
|
|
|
|
requestIdList.add(requestId);
|
|
|
|
|
Date date = new Date();
|
|
|
|
|
TerminalSchedulesTemp temp = new TerminalSchedulesTemp();
|
|
|
|
|
temp.setTermId(channelAndTermDto.getTermid());
|
|
|
|
|
temp.setChannelId(channelAndTermDto.getChannelid());
|
|
|
|
|
temp.setScheduleId(scheduleid);
|
|
|
|
|
temp.setRequestId(requestId);
|
|
|
|
|
temp.setStatus(CommonStatus.DELETE.value());
|
|
|
|
|
temp.setCreateTime(date);
|
|
|
|
|
temp.setUpdateTime(date);
|
|
|
|
|
terminalSchedulesTempDao.insertSelective(temp);
|
|
|
|
|
}
|
|
|
|
|
model.setList(requestIdList);
|
|
|
|
|
return Asserts.success(model);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -358,13 +348,8 @@ public class TerminalScheduleRuleServiceImpl implements TerminalScheduleRuleServ
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
terminalScheduleDetailsDao.deleteByTermidAndChannelIdList(terminalSchedules);
|
|
|
|
|
terminalScheduleDetailsDao.insertList(terminalScheduleDetails);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
int i = requestResultsDao.updateByPrimaryKey(new RequestResults());//根据requestid将结果表中的状态修改为已下发
|
|
|
|
|
//end
|
|
|
|
|
|
|
|
|
|
terminalScheduleDetailsDao.insertList(terminalScheduleDetails, date, date);
|
|
|
|
|
int i = requestResultsDao.updateByRequestIdList(requestidlist, CommonStatus.EFFECTIVE.value());//根据requestid将结果表中的状态修改为已下发
|
|
|
|
|
if (i != 0) {
|
|
|
|
|
return Asserts.success("下发成功");
|
|
|
|
|
} else {
|
|
|
|
@ -372,7 +357,6 @@ public class TerminalScheduleRuleServiceImpl implements TerminalScheduleRuleServ
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 根据装置和通道编号查询拍照时间表
|
|
|
|
|
*
|
|
|
|
@ -381,10 +365,10 @@ public class TerminalScheduleRuleServiceImpl implements TerminalScheduleRuleServ
|
|
|
|
|
*/
|
|
|
|
|
@Transactional
|
|
|
|
|
public ServiceBody<GetModel> getSchedule(RelateTerminalListRuleIdVo vo) {
|
|
|
|
|
// GetModel model = new GetModel();
|
|
|
|
|
// Integer requestid = 0;
|
|
|
|
|
// ArrayList<Integer> intlist = new ArrayList<>();
|
|
|
|
|
// RequestResults results = requestResultsDao.selectByRequestId(1);
|
|
|
|
|
GetModel model = new GetModel();
|
|
|
|
|
Integer requestid = 0;
|
|
|
|
|
ArrayList<Integer> intlist = new ArrayList<>();
|
|
|
|
|
RequestResults results = requestResultsDao.selectByRequestId(1);
|
|
|
|
|
// /*
|
|
|
|
|
// * 如果下发成功
|
|
|
|
|
// * 1,将临时表中的数据状态改成1下发成功状态
|
|
|
|
|