Commit 8570a381 authored by zhouleilei's avatar zhouleilei

Merge remote-tracking branch 'origin/master'

parents 3bfac417 ade4699b
......@@ -10,8 +10,10 @@ import net.wanji.common.framework.i18n.I18nResourceBundle;
import net.wanji.common.framework.rest.JsonViewObject;
import net.wanji.common.framework.rest.Page;
import net.wanji.common.framework.rest.ValidationGroups;
import net.wanji.common.utils.tool.StringUtils;
import net.wanji.databus.dao.entity.GreenwaveInfoPO;
import net.wanji.databus.dao.mapper.GreenwaveInfoMapper;
import net.wanji.opt.dao.mapper.induce.GreenwaveInducesMapper;
import net.wanji.opt.dto.induce.GreenwaveDTO;
import net.wanji.opt.dto.induce.GreenwaveInducesDTO;
import net.wanji.opt.dto.induce.InduceDTO;
......@@ -50,7 +52,11 @@ public class GreenwaveInducesController {
private GreenwaveInducesService greenwaveInducesService;
@Resource
private InduceTemplateService induceTemplateService;
private GreenwaveInducesMapper greenwaveInducesMapper;
// @Resource
// private InduceTemplateService induceTemplateService;
@Resource
private DeviceInducesService deviceInducesService;
......@@ -74,7 +80,7 @@ public class GreenwaveInducesController {
try {
// List<GreenwaveInduces> list = this.greenwaveInducesService.list();
List<InduceTemplate> induceTemplateList = induceTemplateService.list();
// List<InduceTemplate> induceTemplateList = induceTemplateService.list();
List<DeviceInduces> deviceInducesList = deviceInducesService.list();
List<GreenwaveInfoPO> greenwaveInfoPOList = greenwaveInfoMapper.selectAll();
......@@ -114,7 +120,7 @@ public class GreenwaveInducesController {
});
induceDTO.setGreenwaveList(greenwaveList);
//获取关联模板信息
induceDTO.setInduceTemplateList(induceTemplateList.stream().filter(z -> Objects.nonNull(z.getEquipCode()) && z.getEquipCode().equals(o.getEquipCode())).collect(Collectors.toList()));
//induceDTO.setInduceTemplateList(induceTemplateList.stream().filter(z -> Objects.isNull(z.getEquipCode()) || z.getEquipCode().equals(o.getEquipCode())).collect(Collectors.toList()));
list.add(induceDTO);
});
jsonView.success(list);
......@@ -142,8 +148,10 @@ public class GreenwaveInducesController {
try {
//参数校验过程中修改,兼容实现,restful入参不用map,便于进行参数逐个校验
Map params = JSONObject.parseObject(JSONObject.toJSONString(GreenwaveInduces), Map.class);
List<GreenwaveInduces> greenwaveInducesList = this.greenwaveInducesService.listByMap(params);
List<InduceTemplate> induceTemplateList = induceTemplateService.list();
// Map<String, Object> params = new HashMap<>();
// JSONObject.parseObject(JSONObject.toJSONString(GreenwaveInduces), Map.class).forEach((k,v) -> params.put(StringUtils.camelToCapital(k.toString()).toLowerCase(), v));
List<GreenwaveInduces> greenwaveInducesList = this.greenwaveInducesMapper.findByMap(params);
// List<InduceTemplate> induceTemplateList = induceTemplateService.list();
List<DeviceInduces> deviceInducesList = deviceInducesService.list();
List<GreenwaveInfoPO> greenwaveInfoPOList = greenwaveInfoMapper.selectAll();
......@@ -182,7 +190,7 @@ public class GreenwaveInducesController {
});
induceDTO.setGreenwaveList(greenwaveList);
//获取关联模板信息
induceDTO.setInduceTemplateList(induceTemplateList.stream().filter(z -> Objects.nonNull(z.getEquipCode()) && z.getEquipCode().equals(o.getEquipCode())).collect(Collectors.toList()));
//induceDTO.setInduceTemplateList(induceTemplateList.stream().filter(z -> Objects.isNull(z.getEquipCode()) || z.getEquipCode().equals(o.getEquipCode())).collect(Collectors.toList()));
list.add(induceDTO);
});
......
......@@ -10,8 +10,10 @@ import net.wanji.common.framework.i18n.I18nResourceBundle;
import net.wanji.common.framework.rest.JsonViewObject;
import net.wanji.common.framework.rest.Page;
import net.wanji.common.framework.rest.ValidationGroups;
import net.wanji.common.utils.tool.StringUtils;
import net.wanji.databus.dao.entity.GreenwaveInfoPO;
import net.wanji.databus.dao.mapper.GreenwaveInfoMapper;
import net.wanji.opt.dao.mapper.induce.GreenwaveInducesHistMapper;
import net.wanji.opt.dto.induce.GreenwaveInducesDTO;
import net.wanji.opt.dto.induce.InduceDTO;
import net.wanji.opt.entity.DeviceInduces;
......@@ -52,14 +54,17 @@ public class GreenwaveInducesHistController {
@Resource
private GreenwaveInducesHistService greenwaveInducesHistService;
@Resource
private GreenwaveInducesHistMapper greenwaveInducesHistMapper;
@Resource
private GreenwaveInducesService greenwaveInducesService;
@Resource
private GreenwaveInfoMapper greenwaveInfoMapper;
@Resource
private InduceTemplateService induceTemplateService;
// @Resource
// private InduceTemplateService induceTemplateService;
@Resource
private DeviceInducesService deviceInducesService;
......@@ -78,9 +83,8 @@ public class GreenwaveInducesHistController {
List<GreenwaveInducesDTO> list = new ArrayList<>();
List<GreenwaveInfoPO> greenwaveInfoPOList = greenwaveInfoMapper.selectAll();
List<GreenwaveInduces> greenwaveInducesList = greenwaveInducesService.list();
List<InduceTemplate> induceTemplateList = induceTemplateService.list();
// List<InduceTemplate> induceTemplateList = induceTemplateService.list();
List<DeviceInduces> deviceInducesList = deviceInducesService.list();
this.greenwaveInducesHistService.list().stream().forEach(o -> {
GreenwaveInducesDTO greenwaveInducesDTO = new GreenwaveInducesDTO();
greenwaveInducesDTO.setGreenId(o.getGreenId());
......@@ -113,9 +117,8 @@ public class GreenwaveInducesHistController {
induceDTO.setResolutionHeight(deviceInduces.get(0).getResolutionHeight());//
induceDTO.setWkt(deviceInduces.get(0).getWkt());
}
//关联模板信息
induceDTO.setInduceTemplateList(induceTemplateList.stream().filter(x->Objects.nonNull(x.getEquipCode()) && x.getEquipCode().equals(n.getEquipCode())).collect(Collectors.toList()));
//induceDTO.setInduceTemplateList(induceTemplateList.stream().filter(x->Objects.isNull(x.getEquipCode()) || x.getEquipCode().equals(n.getEquipCode())).collect(Collectors.toList()));
induceDTOList.add(induceDTO);
});
greenwaveInducesDTO.setInduceList(induceDTOList);
......@@ -147,13 +150,14 @@ public class GreenwaveInducesHistController {
try {
//参数校验过程中修改,兼容实现,restful入参不用map,便于进行参数逐个校验
Map params = JSONObject.parseObject(JSONObject.toJSONString(GreenwaveInducesHist), Map.class);
// Map<String, Object> params = new HashMap<>();
// JSONObject.parseObject(JSONObject.toJSONString(GreenwaveInducesHist), Map.class).forEach((k,v) -> params.put(StringUtils.camelToCapital(k.toString()).toLowerCase(), v));
List<GreenwaveInducesDTO> list = new ArrayList<>();
List<GreenwaveInducesHist> greenwaveInducesHistList = this.greenwaveInducesHistService.listByMap(params);
List<GreenwaveInducesHist> greenwaveInducesHistList = this.greenwaveInducesHistMapper.findByMap(params);
List<GreenwaveInfoPO> greenwaveInfoPOList = greenwaveInfoMapper.selectAll();
List<GreenwaveInduces> greenwaveInducesList = greenwaveInducesService.list();
List<InduceTemplate> induceTemplateList = induceTemplateService.list();
// List<InduceTemplate> induceTemplateList = induceTemplateService.list();
List<DeviceInduces> deviceInducesList = deviceInducesService.list();
greenwaveInducesHistList.stream().forEach(o -> {
GreenwaveInducesDTO greenwaveInducesDTO = new GreenwaveInducesDTO();
greenwaveInducesDTO.setGreenId(o.getGreenId());
......@@ -186,9 +190,8 @@ public class GreenwaveInducesHistController {
induceDTO.setResolutionHeight(deviceInduces.get(0).getResolutionHeight());//
induceDTO.setWkt(deviceInduces.get(0).getWkt());
}
//关联模板信息
induceDTO.setInduceTemplateList(induceTemplateList.stream().filter(x -> Objects.nonNull(x.getEquipCode()) && x.getEquipCode().equals(n.getEquipCode())).collect(Collectors.toList()));
//induceDTO.setInduceTemplateList(induceTemplateList.stream().filter(x -> Objects.isNull(x.getEquipCode()) || x.getEquipCode().equals(n.getEquipCode())).collect(Collectors.toList()));
induceDTOList.add(induceDTO);
});
greenwaveInducesDTO.setInduceList(induceDTOList);
......@@ -199,7 +202,6 @@ public class GreenwaveInducesHistController {
} catch (Exception e) {
jsonView.fail(I18nResourceBundle.getConstants("GET_FAILED_MSG"));
log.error("{} getByWhere error,jsonStr:{}", this.getClass().getSimpleName(), jsonStr, e);
}
return jsonView;
}
......@@ -215,7 +217,6 @@ public class GreenwaveInducesHistController {
JsonViewObject getById(@ApiParam(value = "记录的id", required = true, example = "1") @PathVariable("id") @NotBlank(message = "查询id不能为空") String id){
JsonViewObject jsonView = JsonViewObject.newInstance();
long start=System.currentTimeMillis();
try {
GreenwaveInducesHist GreenwaveInducesHist = this.greenwaveInducesHistService.getById(id);
jsonView.success(GreenwaveInducesHist);
......
......@@ -10,6 +10,7 @@ import net.wanji.common.framework.i18n.I18nResourceBundle;
import net.wanji.common.framework.rest.JsonViewObject;
import net.wanji.common.framework.rest.Page;
import net.wanji.common.framework.rest.ValidationGroups;
import net.wanji.common.utils.tool.StringUtils;
import net.wanji.opt.dto.induce.InduceDTO;
import net.wanji.opt.entity.InduceHist;
import net.wanji.opt.service.induce.InduceHistService;
......@@ -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.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.*;
/**
* <p>
......@@ -78,7 +76,10 @@ public class InduceHistController {
String jsonStr = JSON.toJSONString(InduceHist);
try {
//参数校验过程中修改,兼容实现,restful入参不用map,便于进行参数逐个校验
Map params = JSONObject.parseObject(JSONObject.toJSONString(InduceHist), Map.class);
// Map params = JSONObject.parseObject(JSONObject.toJSONString(InduceHist), Map.class);
Map<String, Object> params = new HashMap<>();
JSONObject.parseObject(JSONObject.toJSONString(InduceHist), Map.class).forEach((k,v) -> params.put(StringUtils.camelToCapital(k.toString()).toLowerCase(), v));
List list = this.induceHistService.listByMap(params);
jsonView.success(list);
} catch (Exception e) {
......
......@@ -10,6 +10,7 @@ import net.wanji.common.framework.i18n.I18nResourceBundle;
import net.wanji.common.framework.rest.JsonViewObject;
import net.wanji.common.framework.rest.Page;
import net.wanji.common.framework.rest.ValidationGroups;
import net.wanji.common.utils.tool.StringUtils;
import net.wanji.opt.entity.InduceTemplate;
import net.wanji.opt.service.induce.InduceTemplateService;
import org.springframework.validation.annotation.Validated;
......@@ -20,6 +21,7 @@ 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;
......@@ -77,7 +79,10 @@ public class InduceTemplateController {
String jsonStr = JSON.toJSONString(InduceTemplate);
try {
//参数校验过程中修改,兼容实现,restful入参不用map,便于进行参数逐个校验
Map params = JSONObject.parseObject(JSONObject.toJSONString(InduceTemplate), Map.class);
// Map params = JSONObject.parseObject(JSONObject.toJSONString(InduceTemplate), Map.class);
Map<String, Object> params = new HashMap<>();
JSONObject.parseObject(JSONObject.toJSONString(InduceTemplate), Map.class).forEach((k,v) -> params.put(StringUtils.camelToCapital(k.toString()).toLowerCase(), v));
List list = this.induceTemplateService.listByMap(params);
jsonView.success(list);
} catch (Exception e) {
......
......@@ -17,9 +17,6 @@ import java.util.Map;
*/
public interface GreenwaveInducesHistMapper extends BaseMapper<GreenwaveInducesHist> {
//
//
// List<GreenwaveInducesHist> findByPage(Map<String, Object> map);
List<GreenwaveInducesHist> findByMap(Map<String, Object> map);
}
......@@ -17,9 +17,6 @@ import java.util.Map;
*/
public interface GreenwaveInducesMapper extends BaseMapper<GreenwaveInduces> {
//
//
// List<GreenwaveInduces> findByPage(Map<String, Object> map);
List<GreenwaveInduces> findByMap(Map<String, Object> map);
}
......@@ -40,6 +40,6 @@ public class InduceDTO {
private List<GreenwaveDTO> greenwaveList;
@ApiModelProperty(name = "关联模板信息")
private List<InduceTemplate> induceTemplateList;
// @ApiModelProperty(name = "关联模板信息")
// private List<InduceTemplate> induceTemplateList;
}
......@@ -100,5 +100,11 @@ public class GreenwaveInduces implements Serializable {
@TableField("gmt_modified")
private Date gmtModified;
/**
* 模糊查询关键字
*/
@TableField(exist = false)
private String keyword;
}
......@@ -105,7 +105,11 @@ public class GreenwaveInducesHist implements Serializable {
@TableField("control_opt_times")
private String controlOptTimes;
/**
* 模糊查询关键字
*/
@TableField(exist = false)
private String keyword;
}
......@@ -47,8 +47,8 @@ public class StrategyGreenBeltController {
@ApiResponses({
@ApiResponse(code = 200, message = "OK", response = GreenBeltInfoVO.class),
})
public JsonViewObject greenBeltChart(Integer greenId, Date date) throws Exception {
GreenBeltChartVO greenBeltChartVO = strategyGreenBeltService.selectChart(greenId, date);
public JsonViewObject greenBeltChart(Integer greenId) throws Exception {
GreenBeltChartVO greenBeltChartVO = strategyGreenBeltService.selectChart(greenId, null);
return JsonViewObject.newInstance().success(greenBeltChartVO);
}
......
......@@ -37,8 +37,8 @@ public class StrategyGreenBeltServiceImpl implements StrategyGreenBeltService {
}
ObjectMapper mapper = JacksonUtils.getInstance();
QueryWrapper<StrategyGreenOptHistEntity> queryWrapper = new QueryWrapper<>();
String customOrderBy = "ABS(DATEDIFF(control_time, '" + queryDate + "'))";
queryWrapper.orderByAsc(true, customOrderBy);
queryWrapper.eq("green_id", greenId);
queryWrapper.orderByDesc("control_time");
queryWrapper.last("LIMIT 2");
List<StrategyGreenOptHistEntity> entities = strategyGreenOptHistMapper.selectList(queryWrapper);
if (!CollectionUtils.isEmpty(entities)) {
......@@ -54,7 +54,6 @@ public class StrategyGreenBeltServiceImpl implements StrategyGreenBeltService {
setBeltInfo(mapper, entities, greenBeltInfoVO, dirGreenDetails);
}
greenBeltInfoVO.setDirGreenDetails(dirGreenDetails);
System.err.println(greenBeltInfoVO);
GreenBeltChartVO greenBeltChartVO = calGreenChart(greenBeltInfoVO);
return greenBeltChartVO;
}
......@@ -96,6 +95,9 @@ public class StrategyGreenBeltServiceImpl implements StrategyGreenBeltService {
Map<String, Double> crossGreenStartMap = new TreeMap<>();
Map<String, Double> backCrossGreenStartMap = new TreeMap<>();
Map<String, Double> distanceMap = new TreeMap<>();
Map<String, Double> backDistanceMap = new TreeMap<>();
String decideSpeed = "";
String backDecideSpeed = "";
// 处理绿波时序图数据
List<GreenBeltInfoVO.DirGreenDetail> dirGreenDetails = greenBeltInfoVO.getDirGreenDetails();
Double greenWidthTime = 0.0;
......@@ -108,12 +110,14 @@ public class StrategyGreenBeltServiceImpl implements StrategyGreenBeltService {
greenWidthTime = dirGreenDetail.getGreenWidthTime();
List<GreenBeltInfoVO.CrossGreenDetail> list = dirGreenDetail.getCrossGreenDetailList();
getaDouble(crossRedTimesMap, crossGreenStartMap, distanceMap, cycle, list);
decideSpeed = String.join("~", String.valueOf(dirGreenDetail.getMinSpeed()), String.valueOf(dirGreenDetail.getMaxSpeed()));
}
if (dirType == 0) {
backDecideSpeed = String.join("~", String.valueOf(dirGreenDetail.getMinSpeed()), String.valueOf(dirGreenDetail.getMaxSpeed()));
backGreenWidthTime = dirGreenDetail.getGreenWidthTime();
List<GreenBeltInfoVO.CrossGreenDetail> list = dirGreenDetail.getCrossGreenDetailList();
Collections.reverse(list);
getaDouble(backCrossRedTimesMap, backCrossGreenStartMap, distanceMap, cycle, list);
getaDouble(backCrossRedTimesMap, backCrossGreenStartMap, backDistanceMap, cycle, list);
}
}
......@@ -126,6 +130,8 @@ public class StrategyGreenBeltServiceImpl implements StrategyGreenBeltService {
greenBeltChartVO.setGreenStartMap(mapper.writeValueAsString(crossGreenStartMap));
greenBeltChartVO.setBackGreenStartMap(mapper.writeValueAsString(backCrossGreenStartMap));
greenBeltChartVO.setDistanceMap(mapper.writeValueAsString(distanceMap));
greenBeltChartVO.setDecideSpeed(decideSpeed.concat("km/h"));
greenBeltChartVO.setBackDecideSpeed(backDecideSpeed.concat("km/h"));
return greenBeltChartVO;
}
......
......@@ -41,6 +41,8 @@ public class GreenBeltChartVO {
private Double greenWidthTime;
@ApiModelProperty("反向绿波带宽")
private Double BackGreenWidthTime;
private String decideSpeed;
private String backDecideSpeed;
@JsonCreator
public GreenBeltChartVO(){
......
......@@ -2,4 +2,41 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="net.wanji.opt.dao.mapper.induce.GreenwaveInducesHistMapper">
<select id="findByMap" resultType="net.wanji.opt.entity.GreenwaveInducesHist" parameterType="java.util.Map">
SELECT h.* FROM `t_greenwave_induces_hist` h LEFT JOIN `t_greenwave_info` t ON t.`id`=h.`green_id` WHERE 1=1
<include refid="sql_query"/>
<if test="keyword != null and keyword != ''">
AND ( locate(#{keyword,jdbcType=VARCHAR}, t.`name`)>0 )
</if>
</select>
<sql id="sql_query">
<if test="greenId != null ">
<![CDATA[ and h.`green_id` = #{greenId} ]]>
</if>
<if test="strategyName != null and strategyName != ''">
<![CDATA[ and h.`strategy_name` =#{strategyName} ]]>
</if>
<if test="type != null ">
<![CDATA[ and h.`type` =#{type} ]]>
</if>
<if test="dir != null ">
<![CDATA[ and h.`dir` =#{dir} ]]>
</if>
<if test="maxSpeed != null">
<![CDATA[ and h.`max_speed` =#{maxSpeed} ]]>
</if>
<if test="minSpeed != null">
<![CDATA[ and h.`min_speed` =#{minSpeed} ]]>
</if>
<if test="strategyId != null">
<![CDATA[ and h.`strategy_id` =#{strategyId} ]]>
</if>
<if test="status != null">
<![CDATA[ and h.`status` =#{status} ]]>
</if>
<if test="controlOptTimes != null">
<![CDATA[ and h.`control_opt_times` =#{controlOptTimes} ]]>
</if>
</sql>
</mapper>
......@@ -2,4 +2,40 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="net.wanji.opt.dao.mapper.induce.GreenwaveInducesMapper">
<select id="findByMap" resultType="net.wanji.opt.entity.GreenwaveInduces" parameterType="java.util.Map">
SELECT i.* FROM `t_greenwave_induces` i LEFT JOIN `t_device_induces` t ON t.`equip_code`=i.`equip_code` WHERE 1=1
<include refid="sql_query"/>
<if test="keyword != null and keyword != ''">
AND ( locate(#{keyword,jdbcType=VARCHAR}, t.`equip_name`)>0 )
</if>
</select>
<sql id="sql_query">
<if test="greenId != null ">
<![CDATA[ and i.green_id = #{greenId} ]]>
</if>
<if test="equipCode != null and equipCode != ''">
<![CDATA[ and i.equip_code =#{equipCode} ]]>
</if>
<if test="dir != null ">
<![CDATA[ and i.dir =#{dir} ]]>
</if>
<if test="sort != null ">
<![CDATA[ and i.sort =#{sort} ]]>
</if>
<if test="sourceId != null and sourceId != ''">
<![CDATA[ and i.source_id =#{sourceId} ]]>
</if>
<if test="playorder != null ">
<![CDATA[ and i.playorder =#{playorder} ]]>
</if>
<if test="duration != null ">
<![CDATA[ and i.duration =#{duration} ]]>
</if>
<if test="status != null and status != ''">
<![CDATA[ and i.status =#{status} ]]>
</if>
</sql>
</mapper>
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