Commit 310e5878 authored by 董国亮's avatar 董国亮

诱导下发代码优化

parent f708007b
...@@ -10,13 +10,11 @@ import net.wanji.common.framework.Constants; ...@@ -10,13 +10,11 @@ import net.wanji.common.framework.Constants;
import net.wanji.common.framework.rest.JsonViewObject; import net.wanji.common.framework.rest.JsonViewObject;
import net.wanji.common.utils.tool.DateUtil; import net.wanji.common.utils.tool.DateUtil;
import net.wanji.opt.entity.GreenwaveInduces; import net.wanji.opt.entity.GreenwaveInduces;
import net.wanji.opt.entity.GreenwaveInducesHist;
import net.wanji.opt.entity.InduceHist; import net.wanji.opt.entity.InduceHist;
import net.wanji.opt.entity.InduceTemplate; import net.wanji.opt.entity.InduceTemplate;
import net.wanji.opt.dto.induce.MessageParam; import net.wanji.opt.dto.induce.MessageParam;
import net.wanji.opt.service.induce.GreenwaveInducesService; import net.wanji.opt.service.induce.*;
import net.wanji.opt.service.induce.InduceHistService;
import net.wanji.opt.service.induce.InduceSendService;
import net.wanji.opt.service.induce.InduceTemplateService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpHeaders; import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpStatus; import org.springframework.http.HttpStatus;
...@@ -48,11 +46,26 @@ public class InduceSendController { ...@@ -48,11 +46,26 @@ public class InduceSendController {
@Autowired @Autowired
private GreenwaveInducesService greenwaveInducesService; private GreenwaveInducesService greenwaveInducesService;
@Autowired
private GreenwaveInducesHistService greenwaveInducesHistService;
@ApiOperation(value = "发送诱导信息", notes = "发送诱导信息", response = JsonViewObject.class, produces = MediaType.APPLICATION_JSON) @ApiOperation(value = "发送诱导信息", notes = "发送诱导信息", response = JsonViewObject.class, produces = MediaType.APPLICATION_JSON)
@PostMapping("/send") @PostMapping("/send")
public JsonViewObject send(@RequestBody MessageParam param) { public JsonViewObject send(@RequestBody MessageParam param) {
JsonViewObject jsonView = JsonViewObject.newInstance(); JsonViewObject jsonView = JsonViewObject.newInstance();
try { try {
if(Objects.nonNull(param.getGreenId())) {
LambdaQueryWrapper<GreenwaveInducesHist> greenwaveInducesHistQueryWrapper = new LambdaQueryWrapper<>();
greenwaveInducesHistQueryWrapper.eq(GreenwaveInducesHist::getGreenId, param.getGreenId());
List<GreenwaveInducesHist> greenwaveInducesHistList = greenwaveInducesHistService.list(greenwaveInducesHistQueryWrapper);
if (Objects.nonNull(greenwaveInducesHistList) && greenwaveInducesHistList.size() > 0 && Objects.nonNull(greenwaveInducesHistList.get(0).getControlOptTimes()) && greenwaveInducesHistList.get(0).getControlOptTimes().split("|").length > 0 && DateUtil.isBetween(new Date(), DateUtil.parse(greenwaveInducesHistList.get(0).getControlOptTimes().split("\\|")[0], Constants.DATE_FORMAT.E_DATE_FORMAT_SECOND), DateUtil.parse(greenwaveInducesHistList.get(0).getControlOptTimes().split("\\|")[1], Constants.DATE_FORMAT.E_DATE_FORMAT_SECOND))) {
param.setStartTime(greenwaveInducesHistList.get(0).getControlOptTimes().split("\\|")[0]);
param.setEndTime(greenwaveInducesHistList.get(0).getControlOptTimes().split("\\|")[1]);
} else {
param.setStartTime(DateUtil.format(new Date(), Constants.DATE_FORMAT.E_DATE_FORMAT_SECOND));
param.setEndTime(DateUtil.format(System.currentTimeMillis() + 1000 * 30, Constants.DATE_FORMAT.E_DATE_FORMAT_SECOND));
}
}
induceSendService.send(param); induceSendService.send(param);
return jsonView.success(); return jsonView.success();
} catch (Exception e) { } catch (Exception e) {
...@@ -70,6 +83,11 @@ public class InduceSendController { ...@@ -70,6 +83,11 @@ public class InduceSendController {
LambdaQueryWrapper<GreenwaveInduces> greenwaveInducesQueryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<GreenwaveInduces> greenwaveInducesQueryWrapper = new LambdaQueryWrapper<>();
greenwaveInducesQueryWrapper.eq(GreenwaveInduces::getGreenId, param.getGreenId()); greenwaveInducesQueryWrapper.eq(GreenwaveInduces::getGreenId, param.getGreenId());
List<GreenwaveInduces> greenwaveInducesList=greenwaveInducesService.list(greenwaveInducesQueryWrapper); List<GreenwaveInduces> greenwaveInducesList=greenwaveInducesService.list(greenwaveInducesQueryWrapper);
LambdaQueryWrapper<GreenwaveInducesHist> greenwaveInducesHistQueryWrapper = new LambdaQueryWrapper<>();
greenwaveInducesHistQueryWrapper.eq(GreenwaveInducesHist::getGreenId, param.getGreenId());
List<GreenwaveInducesHist> greenwaveInducesHistList=greenwaveInducesHistService.list(greenwaveInducesHistQueryWrapper);
for(GreenwaveInduces greenwaveInduces:greenwaveInducesList) for(GreenwaveInduces greenwaveInduces:greenwaveInducesList)
{ {
LambdaQueryWrapper<InduceTemplate> induceTemplateQueryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<InduceTemplate> induceTemplateQueryWrapper = new LambdaQueryWrapper<>();
...@@ -81,8 +99,13 @@ public class InduceSendController { ...@@ -81,8 +99,13 @@ public class InduceSendController {
param.setEquipCode(greenwaveInduces.getEquipCode()); param.setEquipCode(greenwaveInduces.getEquipCode());
param.setPlayorder(induceTemplateList.size()); param.setPlayorder(induceTemplateList.size());
param.setDuration(greenwaveInduces.getDuration()); param.setDuration(greenwaveInduces.getDuration());
if (Objects.nonNull(greenwaveInducesHistList) && greenwaveInducesHistList.size() > 0 && Objects.nonNull(greenwaveInducesHistList.get(0).getControlOptTimes()) && greenwaveInducesHistList.get(0).getControlOptTimes().split("|").length > 0 && DateUtil.isBetween(new Date(), DateUtil.parse(greenwaveInducesHistList.get(0).getControlOptTimes().split("\\|")[0], Constants.DATE_FORMAT.E_DATE_FORMAT_SECOND), DateUtil.parse(greenwaveInducesHistList.get(0).getControlOptTimes().split("\\|")[1], Constants.DATE_FORMAT.E_DATE_FORMAT_SECOND))) {
param.setStartTime(greenwaveInducesHistList.get(0).getControlOptTimes().split("\\|")[0]);
param.setEndTime(greenwaveInducesHistList.get(0).getControlOptTimes().split("\\|")[1]);
} else {
param.setStartTime(DateUtil.format(new Date(), Constants.DATE_FORMAT.E_DATE_FORMAT_SECOND)); param.setStartTime(DateUtil.format(new Date(), Constants.DATE_FORMAT.E_DATE_FORMAT_SECOND));
param.setEndTime(DateUtil.format(System.currentTimeMillis() + 1000 * 30, Constants.DATE_FORMAT.E_DATE_FORMAT_SECOND)); param.setEndTime(DateUtil.format(System.currentTimeMillis() + 1000 * 30, Constants.DATE_FORMAT.E_DATE_FORMAT_SECOND));
}
induceSendService.send(param); induceSendService.send(param);
} }
} }
......
...@@ -4,4 +4,8 @@ ...@@ -4,4 +4,8 @@
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="net.wanji.opt.dao.mapper.StrategyGreenOptHistMapper"> <mapper namespace="net.wanji.opt.dao.mapper.StrategyGreenOptHistMapper">
<select id="selectByGreenId" resultType="net.wanji.opt.po.StrategyGreenOptHistEntity" parameterType="String" >
select * from t_strategy_green_opt_hist where `green_id` = #{greenId} and TIMESTAMPDIFF(SECOND,`control_time`, now()) &lt; `control_duration` order by create_time desc limit 1;
</select>
</mapper> </mapper>
\ No newline at end of file
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