Commit 544716de authored by 董国亮's avatar 董国亮

优化诱导屏模板,增加默认下发模板设置

parent 2dbbce32
......@@ -3,6 +3,7 @@ package net.wanji.opt.controller.induce;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.google.common.collect.Maps;
import io.swagger.annotations.*;
import lombok.extern.slf4j.Slf4j;
......@@ -20,10 +21,7 @@ import javax.annotation.Resource;
import javax.validation.constraints.NotBlank;
import javax.ws.rs.QueryParam;
import javax.ws.rs.core.MediaType;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.*;
/**
* <p>
......@@ -175,12 +173,30 @@ public class InduceTemplateController {
*/
@ApiOperation(value = "修改记录", notes = "修改记录", response = JsonViewObject.class, produces = MediaType.APPLICATION_JSON, consumes = MediaType.APPLICATION_JSON)
@PostMapping(value = "/updating", produces = MediaType.APPLICATION_JSON, consumes = MediaType.APPLICATION_JSON)
JsonViewObject update(@ApiParam(value = "记录的JSON格式字符串", required = true) @RequestBody @Validated({ValidationGroups.Update.class}) InduceTemplate induceTemplate){
JsonViewObject update(@ApiParam(value = "记录的JSON格式字符串", required = true) @RequestBody @Validated({ValidationGroups.Update.class}) InduceTemplate induceTemplate) {
JsonViewObject jsonView = JsonViewObject.newInstance();
long start=System.currentTimeMillis();
long start = System.currentTimeMillis();
try {
if (induceTemplate != null) {
jsonView = this.induceTemplateService.saveOrUpdate(induceTemplate)?jsonView.success():jsonView.fail();
//更新默认模板
if (Objects.nonNull(induceTemplate.getEquipCode())) {
LambdaQueryWrapper<InduceTemplate> induceTemplateQueryWrapper = new LambdaQueryWrapper<>();
induceTemplateQueryWrapper.eq(InduceTemplate::getEquipCode, induceTemplate.getEquipCode());
induceTemplateQueryWrapper.eq(InduceTemplate::getDefaultTemplate, 1);//筛选默认模板进行自动发送,目前屏幕轮播参数无效
List<InduceTemplate> induceTemplateList = this.induceTemplateService.list(induceTemplateQueryWrapper);
induceTemplateList.stream().forEach(o -> {
if (!o.getId().equals(induceTemplate.getId())) {
o.setDefaultTemplate(0);
}
});
try {
this.induceTemplateService.saveOrUpdateBatch(induceTemplateList);
} catch (Exception ex) {
log.error("default template batch update error, jsonStr:{}", JSON.toJSONString(induceTemplate), ex);
}
}
induceTemplate.setDefaultTemplate(1);//设为默认模板
jsonView = this.induceTemplateService.saveOrUpdate(induceTemplate) ? jsonView.success() : jsonView.fail();
}
} catch (Exception e) {
jsonView.fail(I18nResourceBundle.getConstants("UPDATE_FAILED_MSG"));
......
......@@ -79,6 +79,12 @@ public class InduceTemplate implements Serializable {
@TableField("text_sign")
private Boolean textSign;
/**
* 是否默认模板 0:否 1:是
*/
@TableField("default_template")
private Integer defaultTemplate=0;
/**
* 创建时间
*/
......
......@@ -230,12 +230,13 @@ public class InducesMonitorTask {
for(GreenwaveInduces greenwaveCross :greenwaveInducesList){
LambdaQueryWrapper<InduceTemplate> induceTemplateQueryWrapper = new LambdaQueryWrapper<>();
induceTemplateQueryWrapper.eq(InduceTemplate::getEquipCode, greenwaveCross.getEquipCode());
induceTemplateQueryWrapper.eq(InduceTemplate::getDefaultTemplate, 1);//筛选默认模板进行自动发送,目前屏幕轮播参数无效
List<InduceTemplate> induceTemplateList=induceTemplateService.list(induceTemplateQueryWrapper);
for(InduceTemplate induceTemplate:induceTemplateList) {
messageParam.setTemplateId(induceTemplate.getId());
messageParam.setInduceId(greenwaveCross.getId());
messageParam.setEquipCode(greenwaveCross.getEquipCode());
messageParam.setPlayorder(induceTemplateList.size());
messageParam.setPlayorder(1);//induceTemplateList.size()
messageParam.setDuration(greenwaveCross.getDuration());
if ( greenwaveInducesHist.getControlOptTimes().split("\\|").length > 0 && DateUtil.isBetween(new Date(), DateUtil.parse(greenwaveInducesHist.getControlOptTimes().split("\\|")[0], Constants.DATE_FORMAT.E_DATE_FORMAT_SECOND), DateUtil.parse(greenwaveInducesHist.getControlOptTimes().split("\\|")[1], Constants.DATE_FORMAT.E_DATE_FORMAT_SECOND))) {
messageParam.setStartTime(greenwaveInducesHist.getControlOptTimes().split("\\|")[0]);
......
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