Merge remote-tracking branch 'origin/master' into dev

master
18616268358 2 years ago
commit c56a047e32

@ -19,6 +19,8 @@ public class TerminalSchedulesTemp implements Serializable {
private Integer status;
private Integer offset;
private Date createTime;
private Date updateTime;

@ -94,6 +94,9 @@
<if test="status != null">
status,
</if>
<if test="offset != null">
offset,
</if>
<if test="createTime != null">
create_time,
</if>
@ -117,6 +120,9 @@
<if test="status != null">
#{status},
</if>
<if test="offset != null">
#{offset},
</if>
<if test="createTime != null">
#{createTime,jdbcType=TIMESTAMP},
</if>

@ -150,7 +150,7 @@ public class LineServiceImpl implements LineService {
LineAndGtAndChannelListModel model = new LineAndGtAndChannelListModel();
Integer id = vo.getId();
Integer type = vo.getType();
if (id.intValue() == 0) {
if (id != null && id.intValue() == 0) {
id = null;
}
//查询所有

@ -6,6 +6,7 @@ import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.date.DateField;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.RandomUtil;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.github.pagehelper.PageInfo;
@ -38,6 +39,7 @@ import java.sql.Time;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Random;
/**
*
@ -249,43 +251,19 @@ public class TerminalScheduleRuleServiceImpl implements TerminalScheduleRuleServ
if (CollectionUtil.isEmpty(dtoList)) {
return Asserts.error("没有该拍照时间规则");
}
StringBuffer timestr = new StringBuffer();
int index = 1;
for (int j = 0; j < dtoList.size(); j++) {
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) {
span1 = (span / 60);
span2 = (span % 60);
} else if (span < 60) {
span1 = 0;
span2 = span;
}
int indexOri = index;
int indexAdd = indexOri + 1;
int indexAddT = indexAdd + 1;
String string = " --hour" + indexAddT + "=" + startHour + "\t" + "--min" + indexAddT + "=" + startMin + "\t" + "--preset" + indexAddT + "=255 --hour" + (indexAdd) + "=" + endTimeHour + "\t" + "--min" + (indexAdd) + "=" + endTimeMin + "\t"
+ "--preset" + (indexAdd) + "=255 --hour" + indexOri + "=" + span1 + "\t" + "--min" + indexOri + "=" + span2 + "\t" + "--preset" + indexOri + "=255";
timestr.append(string);
index = indexAddT+1;
}
ArrayList<GetScheduleRequestIdListModel.RequestBean> requestIdList = new ArrayList<>();
for (int x = 0; x < terminalsList.size(); x++) {
ChannelAndTermDto channelAndTermDto = terminalsList.get(x);
int requestId = Constants.REQUEST_ID.addAndGet(1);
String cmd = Constants.CMD + "schedule --group=" + dtoList.size()*3 + " --flag=1 --clientid=10 --cmdid="
int offset = RandomUtil.randomInt(10);
String timestr = relateTime(dtoList, offset);
String cmd = Constants.CMD + "schedule --group=" + dtoList.size() * 3 + " --flag=1 --clientid=10 --cmdid="
+ channelAndTermDto.getCmdid() + " --reqid=" + requestId + " --channel=" + channelAndTermDto.getChannelid() + " " +
timestr.toString();
timestr;
ProcessExecUtils.exec(cmd);
GetScheduleRequestIdListModel.RequestBean requestBean = new GetScheduleRequestIdListModel.RequestBean();
@ -301,6 +279,7 @@ public class TerminalScheduleRuleServiceImpl implements TerminalScheduleRuleServ
temp.setScheduleId(scheduleid);
temp.setRequestId(requestId);
temp.setStatus(CommonStatus.DELETE.value());
temp.setOffset(offset);
temp.setCreateTime(date);
temp.setUpdateTime(date);
terminalSchedulesTempDao.insertSelective(temp);
@ -309,6 +288,41 @@ public class TerminalScheduleRuleServiceImpl implements TerminalScheduleRuleServ
return Asserts.success(model);
}
private String relateTime(List<ScheduleRuleDto> dtoList, int offset) {
StringBuffer timestr = new StringBuffer();
int index = 1;
for (int j = 0; j < dtoList.size(); j++) {
Integer span = dtoList.get(j).getSpan();
Date startTime = dtoList.get(j).getStartTime();
DateTime startstr = MyDateUtils.offsetMinute(startTime, offset);
Short startHour = Short.parseShort(MyDateUtils.parseHourAndMinute(startstr).split("/")[0]);
Short startMin = Short.parseShort(MyDateUtils.parseHourAndMinute(startstr).split("/")[1]);
Date endTime = dtoList.get(j).getEndTime();
DateTime endstr = MyDateUtils.offsetMinute(endTime, offset);
Short endTimeHour = Short.parseShort(MyDateUtils.parseHourAndMinute(endstr).split("/")[0]);
Short endTimeMin = Short.parseShort(MyDateUtils.parseHourAndMinute(endstr).split("/")[1]);
Integer span1 = -1;
Integer span2 = -1;
if (span / 60 > 0) {
span1 = (span / 60);
span2 = (span % 60);
} else if (span < 60) {
span1 = 0;
span2 = span;
}
int indexOri = index;
int indexAdd = indexOri + 1;
int indexAddT = indexAdd + 1;
String string = " --hour" + indexAddT + "=" + startHour + "\t" + "--min" + indexAddT + "=" + startMin + "\t" + "--preset" + indexAddT + "=255 --hour" + (indexAdd) + "=" + endTimeHour + "\t" + "--min" + (indexAdd) + "=" + endTimeMin + "\t"
+ "--preset" + (indexAdd) + "=255 --hour" + indexOri + "=" + span1 + "\t" + "--min" + indexOri + "=" + span2 + "\t" + "--preset" + indexOri + "=255";
timestr.append(string);
index = indexAddT + 1;
}
return timestr.toString();
}
/**
*
@ -402,7 +416,7 @@ public class TerminalScheduleRuleServiceImpl implements TerminalScheduleRuleServ
terminalSchedules.add(record);
}
Date date = new Date();
if(CollectionUtil.isNotEmpty(terminalSchedules)) {
if (CollectionUtil.isNotEmpty(terminalSchedules)) {
terminalScheduleDao.insertOrUpdate(terminalSchedules, date, date);//将实际的拍照时间表规则从临时表更新到正式表中
}
ArrayList<Integer> distinct = CollectionUtil.distinct(scheduleidlist);
@ -423,7 +437,7 @@ public class TerminalScheduleRuleServiceImpl implements TerminalScheduleRuleServ
}
}
}
if(CollectionUtil.isNotEmpty(terminalSchedules)) {
if (CollectionUtil.isNotEmpty(terminalSchedules)) {
terminalScheduleDetailsDao.deleteByTermidAndChannelIdList(terminalSchedules);
}
terminalScheduleDetailsDao.insertList(terminalScheduleDetails, date, date);
@ -435,7 +449,6 @@ public class TerminalScheduleRuleServiceImpl implements TerminalScheduleRuleServ
}
}
/**
*
*
@ -491,7 +504,7 @@ public class TerminalScheduleRuleServiceImpl implements TerminalScheduleRuleServ
public ServiceBody<TerminalScheduleRuleTimeListModel> getCmaSchelduleDetials(RequestIdVo vo) {
TerminalScheduleRuleTimeListModel model = new TerminalScheduleRuleTimeListModel();
RequestResults results = requestResultsDao.selectByRequestId(vo.getRequestid());
if(null!=results) {
if (null != results) {
String resultsData = results.getData();
if (StringUtils.isNotBlank(resultsData)) {
JSONObject resultObj = JSONObject.parseObject(resultsData);
@ -523,7 +536,7 @@ public class TerminalScheduleRuleServiceImpl implements TerminalScheduleRuleServ
}
}
}
return Asserts.success(model);
return Asserts.success(model);
}
}

Loading…
Cancel
Save