fast()指标预警,滑窗规则设定
parent
8ec657dd1a
commit
8f305f5ddc
|
@ -0,0 +1,61 @@
|
|||
package com.business.common.dev;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class DataSpecificationDev {
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
private Long id;
|
||||
/**
|
||||
* 车辆标识
|
||||
*/
|
||||
private String vin;
|
||||
/**
|
||||
* 编码
|
||||
*/
|
||||
private String dataCode;
|
||||
/**
|
||||
* 标签
|
||||
*/
|
||||
private String label;
|
||||
/**
|
||||
* 标准数据
|
||||
*/
|
||||
private String standardData;
|
||||
/**
|
||||
*编码id
|
||||
*/
|
||||
private Long dateTypeId;
|
||||
/**
|
||||
* 滑窗范围id
|
||||
*/
|
||||
private Long radiusId;
|
||||
/**
|
||||
* 滑窗范围
|
||||
*/
|
||||
private String radius;
|
||||
/**
|
||||
* 滑窗定义
|
||||
*/
|
||||
private String radiusName;
|
||||
/**
|
||||
* 滑动长度id
|
||||
*/
|
||||
private Long lengthId;
|
||||
/**
|
||||
* 滑动定义
|
||||
*/
|
||||
private String lengthName;
|
||||
/**
|
||||
* 滑动长度
|
||||
*/
|
||||
private String length;
|
||||
}
|
|
@ -0,0 +1,45 @@
|
|||
package com.business.common.domain.event;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class DataSpecification {
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
private Long id;
|
||||
/**
|
||||
* 车辆标识
|
||||
*/
|
||||
private String vin;
|
||||
/**
|
||||
* 编码
|
||||
*/
|
||||
private String dataCode;
|
||||
/**
|
||||
* 标签
|
||||
*/
|
||||
private String label;
|
||||
/**
|
||||
* 标准数据
|
||||
*/
|
||||
private String standardData;
|
||||
/**
|
||||
*编码id
|
||||
*/
|
||||
private Long dateTypeId;
|
||||
/**
|
||||
* 滑窗范围id
|
||||
*/
|
||||
private Long radiusId;
|
||||
/**
|
||||
* 滑窗长度id
|
||||
*/
|
||||
private Long lengthId;
|
||||
}
|
|
@ -0,0 +1,25 @@
|
|||
package com.business.common.domain.event;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class DateType {
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
private Long dateTypeId;
|
||||
/**
|
||||
* 编码
|
||||
*/
|
||||
private String dataCode;
|
||||
/**
|
||||
* 标签
|
||||
*/
|
||||
private String label;
|
||||
}
|
|
@ -11,6 +11,7 @@ import lombok.NoArgsConstructor;
|
|||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class Length {
|
||||
private Long lengthId;
|
||||
/**
|
||||
* 长度定义
|
||||
*/
|
||||
|
|
|
@ -10,6 +10,7 @@ import lombok.NoArgsConstructor;
|
|||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class Radius {
|
||||
private Long radiusId;
|
||||
/**
|
||||
* 范围定义
|
||||
*/
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
package com.muyu.goods.controller;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
import com.business.common.dev.LongitudeAndLatitude;
|
||||
|
@ -148,7 +149,7 @@ public class CarController extends BaseController
|
|||
* @return
|
||||
*/
|
||||
@PostMapping("read")
|
||||
public Result<VehicleInfo> read() {
|
||||
public Result<Map<String,String>> read() {
|
||||
return success(carService.read());
|
||||
}
|
||||
|
||||
|
|
|
@ -1,11 +1,13 @@
|
|||
package com.muyu.goods.controller;
|
||||
|
||||
import com.business.common.dev.DataFormatDev;
|
||||
import com.business.common.dev.DataSpecificationDev;
|
||||
import com.business.common.domain.DataFormat;
|
||||
import com.business.common.domain.event.Window;
|
||||
import com.business.common.domain.event.*;
|
||||
import com.dtflys.forest.annotation.Post;
|
||||
import com.muyu.common.core.domain.Result;
|
||||
import com.muyu.common.core.web.controller.BaseController;
|
||||
import com.muyu.common.log.annotation.Log;
|
||||
import com.muyu.common.security.utils.SecurityUtils;
|
||||
import com.muyu.common.system.domain.LoginUser;
|
||||
import com.muyu.goods.Domain.WindowDonain;
|
||||
|
@ -24,8 +26,8 @@ public class ForewarnController extends BaseController {
|
|||
@Autowired
|
||||
private IForewarnService forewarnService;
|
||||
|
||||
@PostMapping("list")
|
||||
public Result<List<Window>> list() {
|
||||
@PostMapping("listDataSpecificationDev")
|
||||
public Result<List<DataSpecificationDev>> list() {
|
||||
return success(forewarnService.list());
|
||||
}
|
||||
//全部报文
|
||||
|
@ -48,4 +50,102 @@ public class ForewarnController extends BaseController {
|
|||
public Result deleteDataFormatById(@PathVariable String vin) {
|
||||
return success(forewarnService.deleteDataFormatById(vin));
|
||||
}
|
||||
|
||||
/**
|
||||
* 导入redis
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("redisDataDormById")
|
||||
public Result redisDataDormById() {
|
||||
return success(forewarnService.redisDataDormById());
|
||||
}
|
||||
|
||||
/**
|
||||
* 滑动长度
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("listLength")
|
||||
public Result<List<Length>> listLength() {
|
||||
return success(forewarnService.listLength());
|
||||
}
|
||||
|
||||
/**
|
||||
* 滑动范围
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("listRadius")
|
||||
public Result<List<Radius>> listRadius() {
|
||||
return success(forewarnService.listRadius());
|
||||
}
|
||||
|
||||
/**
|
||||
* 查看车辆具体滑窗
|
||||
* @param vin
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("selectDataSpecificationDev")
|
||||
public Result<List<DataSpecificationDev>> selectDataSpecificationDev(@RequestParam String vin) {
|
||||
return success(forewarnService.selectDataSpecificationDev(vin));
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加新滑动
|
||||
* @param dataSpecification
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("indexDataSpecification")
|
||||
public Result indexDataSpecification(@RequestBody DataSpecification dataSpecification,@RequestParam String vin) {
|
||||
return success(forewarnService.indexDataSpecification(dataSpecification,vin));
|
||||
}
|
||||
|
||||
/**
|
||||
* 查看单个滑窗详情
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("selectDataSpecificationById/{id}")
|
||||
public Result<DataSpecification> selectDataSpecificationById(@PathVariable Long id) {
|
||||
return success(forewarnService.selectDataSpecificationById(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改滑动
|
||||
* @param dataSpecification
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("updataDataSpecification")
|
||||
public Result updataDataSpecification(@RequestBody DataSpecification dataSpecification) {
|
||||
return success(forewarnService.updataDataSpecification(dataSpecification));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除滑动
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("deleteDataSpecification")
|
||||
public Result deleteDataSpecification(@RequestParam Long id){
|
||||
return success(forewarnService.deleteDataSpecification(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取相应的编码
|
||||
* @param vin
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("listDateType")
|
||||
public Result<List<DateType>> listDateType(@RequestParam String vin) {
|
||||
return success(forewarnService.listDateType(vin));
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取相应的编码
|
||||
* @param
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("selectDateType")
|
||||
public Result<List<DateType>> selectDateType() {
|
||||
return success(forewarnService.selectDateType());
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -25,4 +25,8 @@ public class Producer {
|
|||
String jsonString = JSONObject.toJSONString(faultInfo);
|
||||
rabbitTemplate.convertAndSend("fault.message","end",jsonString);
|
||||
}
|
||||
|
||||
public void redis_cache(String vin) {
|
||||
rabbitTemplate.convertAndSend("data_format_renewal",vin);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,14 +1,15 @@
|
|||
package com.muyu.goods.mapper;
|
||||
|
||||
import com.business.common.dev.DataFormatDev;
|
||||
import com.business.common.dev.DataSpecificationDev;
|
||||
import com.business.common.domain.DataFormat;
|
||||
import com.business.common.domain.event.Window;
|
||||
import com.business.common.domain.event.*;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface ForewarnMapper {
|
||||
List<Window> list();
|
||||
List<DataSpecificationDev> list();
|
||||
|
||||
List<DataFormatDev> listDataFormat();
|
||||
|
||||
|
@ -17,4 +18,21 @@ public interface ForewarnMapper {
|
|||
Integer deleteDataFormatById(@Param("vin") String vin);
|
||||
|
||||
List<DataFormat> selectDataFormatById(@Param("vin") String vin);
|
||||
|
||||
List<Length> listLength();
|
||||
|
||||
List<Radius> listRadius();
|
||||
|
||||
List<DataSpecificationDev> selectDataSpecificationDev();
|
||||
|
||||
int indexDataSpecification(DataSpecification dataSpecification);
|
||||
|
||||
int updataDataSpecification(DataSpecification dataSpecification);
|
||||
|
||||
Integer deleteDataSpecification(@Param("id") Long id);
|
||||
|
||||
|
||||
List<DateType> listDateType();
|
||||
|
||||
DataSpecification selectDataSpecificationById(@Param("id") Long id);
|
||||
}
|
||||
|
|
|
@ -5,6 +5,7 @@ import com.business.common.domain.Car;
|
|||
import com.business.common.domain.VehicleInfo;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 车辆信息Service接口
|
||||
|
@ -69,7 +70,7 @@ public interface ICarService
|
|||
|
||||
Car query(Long carId);
|
||||
|
||||
VehicleInfo read();
|
||||
Map<String,String> read();
|
||||
|
||||
void open();
|
||||
|
||||
|
|
|
@ -1,13 +1,15 @@
|
|||
package com.muyu.goods.service;
|
||||
|
||||
import com.business.common.dev.DataFormatDev;
|
||||
import com.business.common.dev.DataSpecificationDev;
|
||||
import com.business.common.domain.DataFormat;
|
||||
import com.business.common.domain.event.Window;
|
||||
import com.business.common.domain.event.*;
|
||||
import com.muyu.common.core.domain.Result;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface IForewarnService {
|
||||
List<Window> list();
|
||||
List<DataSpecificationDev> list();
|
||||
|
||||
/**
|
||||
* 全部报文
|
||||
|
@ -34,4 +36,61 @@ public interface IForewarnService {
|
|||
*/
|
||||
Integer deleteDataFormatById(String vin);
|
||||
|
||||
/**
|
||||
* 导入redis
|
||||
* @return
|
||||
*/
|
||||
String redisDataDormById();
|
||||
|
||||
/**
|
||||
* 查看滑动长度
|
||||
* @return
|
||||
*/
|
||||
List<Length> listLength();
|
||||
|
||||
/**
|
||||
* 查看滑窗范围
|
||||
* @return
|
||||
*/
|
||||
List<Radius> listRadius();
|
||||
|
||||
/**
|
||||
* 查看车辆滑窗
|
||||
* @param vin
|
||||
* @return
|
||||
*/
|
||||
List<DataSpecificationDev> selectDataSpecificationDev(String vin);
|
||||
|
||||
/**
|
||||
* 添加滑窗
|
||||
* @param dataSpecification
|
||||
* @return
|
||||
*/
|
||||
Integer indexDataSpecification(DataSpecification dataSpecification,String vin);
|
||||
|
||||
/**
|
||||
* 修改滑窗
|
||||
* @param dataSpecification
|
||||
* @return
|
||||
*/
|
||||
Integer updataDataSpecification(DataSpecification dataSpecification);
|
||||
|
||||
/**
|
||||
* 删除滑窗
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
Integer deleteDataSpecification(Long id);
|
||||
|
||||
/**
|
||||
* 查看具体编程
|
||||
* @param vin
|
||||
* @return
|
||||
*/
|
||||
List<DateType> listDateType(String vin);
|
||||
|
||||
List<DateType> selectDateType();
|
||||
|
||||
DataSpecification selectDataSpecificationById(Long id);
|
||||
|
||||
}
|
||||
|
|
|
@ -1,6 +1,8 @@
|
|||
package com.muyu.goods.service.impl;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import java.util.Map;
|
||||
import java.util.UUID;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.stream.Collectors;
|
||||
|
@ -21,6 +23,8 @@ import org.springframework.stereotype.Service;
|
|||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
import static com.fasterxml.jackson.databind.type.LogicalType.Map;
|
||||
|
||||
/**
|
||||
* 车辆信息Service业务层处理
|
||||
*
|
||||
|
@ -157,7 +161,7 @@ public class CarServiceImpl implements ICarService
|
|||
private Timer timer;
|
||||
|
||||
@Override
|
||||
public VehicleInfo read() {
|
||||
public Map<String,String> read() {
|
||||
String rightPopAndLeftPush = null;
|
||||
try {
|
||||
rightPopAndLeftPush = redisTemplate.opsForList().leftPop("event_handler:realtime_data:JAV0VJUJYOTOK9KSY"
|
||||
|
@ -170,8 +174,7 @@ public class CarServiceImpl implements ICarService
|
|||
}
|
||||
if (rightPopAndLeftPush != null){
|
||||
String parse = JSON.parse(rightPopAndLeftPush).toString();
|
||||
VehicleInfo vehicleInfo = JSON.parseObject(parse, VehicleInfo.class);
|
||||
return vehicleInfo;
|
||||
return JSON.parseObject(parse, java.util.Map.class);
|
||||
}else{
|
||||
return null;
|
||||
}
|
||||
|
|
|
@ -1,12 +1,16 @@
|
|||
package com.muyu.goods.service.impl;
|
||||
|
||||
import com.business.common.dev.DataFormatDev;
|
||||
import com.business.common.dev.DataSpecificationDev;
|
||||
import com.business.common.domain.DataFormat;
|
||||
import com.business.common.domain.event.Window;
|
||||
import com.business.common.domain.event.*;
|
||||
import com.muyu.common.core.domain.Result;
|
||||
import com.muyu.common.security.utils.SecurityUtils;
|
||||
import com.muyu.goods.incident.mq.Producer;
|
||||
import com.muyu.goods.mapper.ForewarnMapper;
|
||||
import com.muyu.goods.service.IForewarnService;
|
||||
import org.apache.kafka.common.protocol.types.Field;
|
||||
import org.apache.xmlbeans.GDateSpecification;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.data.redis.core.RedisTemplate;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
@ -24,9 +28,11 @@ public class ForewarnService implements IForewarnService {
|
|||
private ForewarnMapper forewarnMapper;
|
||||
@Autowired
|
||||
private RedisTemplate<String,String> redisTemplate;
|
||||
@Autowired
|
||||
private Producer producer;
|
||||
|
||||
@Override
|
||||
public List<Window> list() {
|
||||
public List<DataSpecificationDev> list() {
|
||||
return forewarnMapper.list();
|
||||
}
|
||||
|
||||
|
@ -86,8 +92,16 @@ public class ForewarnService implements IForewarnService {
|
|||
list.add(dataFormatDev);
|
||||
}
|
||||
//再添加新报文
|
||||
|
||||
return forewarnMapper.indexDataFormat(list);
|
||||
int i = forewarnMapper.indexDataFormat(list);
|
||||
if (i > 0){
|
||||
listDataFormat();
|
||||
Boolean b = redisTemplate.opsForHash().hasKey("load_center:go_live", vin);
|
||||
if (b){
|
||||
System.out.println(vin);
|
||||
producer.redis_cache(vin);
|
||||
}
|
||||
}
|
||||
return i;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -99,5 +113,130 @@ public class ForewarnService implements IForewarnService {
|
|||
return forewarnMapper.deleteDataFormatById(vin);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String redisDataDormById() {
|
||||
List<DataSpecificationDev> dataSpecificationDevs = selectDataSpecificationDev(null);
|
||||
//进行分组
|
||||
Map<String, String> map = new HashMap<>();
|
||||
Map<String, String> map2 = new HashMap<>();
|
||||
Map<String, List<DataSpecificationDev>> collect = dataSpecificationDevs.stream().collect(Collectors.groupingBy(DataSpecificationDev::getVin));
|
||||
// 给每组数据改成字符串格式
|
||||
collect.forEach((a,b) -> {
|
||||
String name = "";
|
||||
String code = "";
|
||||
//编辑字符串
|
||||
for (DataSpecificationDev dataSpecificationDev : b) {
|
||||
name += dataSpecificationDev.getDataCode() + "-" + dataSpecificationDev.getLabel() + "-"
|
||||
+ dataSpecificationDev.getRadius() + "-" + dataSpecificationDev.getLength() + "-" + dataSpecificationDev.getStandardData() + ",";
|
||||
code += dataSpecificationDev.getDataCode() + ",";
|
||||
}
|
||||
name = name.substring(0,name.length()-1);
|
||||
code = code.substring(0,code.length()-1);
|
||||
//存入map中
|
||||
map.put(a,name);
|
||||
map2.put(a,code);
|
||||
});
|
||||
//map数据导入redis
|
||||
map.forEach((key,val) -> {
|
||||
redisTemplate.opsForHash().put("event_handler:indicator_warning:execute_info:",key,val);
|
||||
});
|
||||
map2.forEach((key,val) -> {
|
||||
redisTemplate.opsForHash().put("event_handler:indicator_warning:warning_data:",key,val);
|
||||
});
|
||||
return dataSpecificationDevs.toString();
|
||||
}
|
||||
|
||||
/**
|
||||
* 滑动长度
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<Length> listLength() {
|
||||
return forewarnMapper.listLength();
|
||||
}
|
||||
|
||||
/**
|
||||
* 滑窗范围
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<Radius> listRadius() {
|
||||
return forewarnMapper.listRadius();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<DataSpecificationDev> selectDataSpecificationDev(String vin) {
|
||||
List<DataSpecificationDev> list = forewarnMapper.selectDataSpecificationDev();
|
||||
if (vin!=null){
|
||||
List<DataSpecificationDev> collect = list.stream().filter(dataSpecificationDev -> dataSpecificationDev.getVin().equals(vin)).collect(Collectors.toList());
|
||||
return collect;
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加滑窗
|
||||
* @param dataSpecification
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public Integer indexDataSpecification(DataSpecification dataSpecification, String vin) {
|
||||
DateType dateType1 = selectDateType().stream().filter(dateType -> dataSpecification.getDateTypeId() == dateType.getDateTypeId()).collect(Collectors.toList()).get(0);
|
||||
dataSpecification.setDataCode(dateType1.getDataCode());
|
||||
dataSpecification.setLabel(dateType1.getLabel());
|
||||
dataSpecification.setVin(vin);
|
||||
int i = forewarnMapper.indexDataSpecification(dataSpecification);
|
||||
return i;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改滑窗
|
||||
* @param dataSpecification
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public Integer updataDataSpecification(DataSpecification dataSpecification) {
|
||||
int i = forewarnMapper.updataDataSpecification(dataSpecification);
|
||||
return i;
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除滑窗
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public Integer deleteDataSpecification(Long id) {
|
||||
return forewarnMapper.deleteDataSpecification(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<DateType> listDateType(String vin) {
|
||||
List<DateType> dateTypeList = selectDateType();
|
||||
List<DataFormat> dataFormats = selectDataFormatById(vin);
|
||||
//取重复的值
|
||||
//创建一个集合类
|
||||
List<String> dataCode = dataFormats.stream().map(DataFormat::getDataCode).collect(Collectors.toList());
|
||||
//开始区分
|
||||
List<DateType> dateTypes = dateTypeList.stream().filter(dateType -> dataCode.contains(dateType.getDataCode())).collect(Collectors.toList());
|
||||
//取没有重复值
|
||||
List<DataSpecificationDev> dataSpecificationDevs = selectDataSpecificationDev(vin);
|
||||
//拉取集合类
|
||||
List<String> collect = dataSpecificationDevs.stream().map(DataSpecificationDev::getDataCode).collect(Collectors.toList());
|
||||
//过滤提取没有重复的值
|
||||
List<DateType> typeList = dateTypes.stream().filter(dateType -> !collect.contains(dateType.getDataCode())).collect(Collectors.toList());
|
||||
return typeList;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<DateType> selectDateType() {
|
||||
return forewarnMapper.listDateType();
|
||||
}
|
||||
|
||||
@Override
|
||||
public DataSpecification selectDataSpecificationById(Long id) {
|
||||
return forewarnMapper.selectDataSpecificationById(id);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -4,14 +4,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.muyu.goods.mapper.ForewarnMapper">
|
||||
|
||||
<resultMap type="com.business.common.domain.event.Window" id="WindowResult">
|
||||
<resultMap type="com.business.common.dev.DataSpecificationDev" id="DataSpecificationDevResult">
|
||||
<result property="id" column="id" />
|
||||
<result property="vin" column="vin" />
|
||||
<result property="point" column="point" />
|
||||
<result property="standard" column="standard" />
|
||||
<result property="windowStartTime" column="window_start_time" />
|
||||
<result property="windowEndTime" column="window_end_time" />
|
||||
<result property="result" column="result" />
|
||||
<result property="dataCode" column="data_code" />
|
||||
<result property="label" column="label" />
|
||||
<result property="standardData" column="standard_data" />
|
||||
<result property="dateTypeId" column="date_type_id" />
|
||||
<result property="radiusId" column="radius_id" />
|
||||
<result property="lengthId" column="length_id" />
|
||||
</resultMap>
|
||||
|
||||
<resultMap id="RadiusResult" type="com.business.common.domain.event.Radius">
|
||||
|
@ -31,8 +32,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<result property="end" column="end"></result>
|
||||
</resultMap>
|
||||
|
||||
<sql id="selectWindowVo">
|
||||
select id, vin, point, standard, window_start_time, window_end_time, result from window
|
||||
<sql id="selectDataSpecificationVo">
|
||||
select d.id,d.vin,d.data_code,d.label,d.standard_data,d.date_type_id,d.radius_id,d.length_id,
|
||||
r.radius_name, r.radius, l.length_name, l.length
|
||||
from data_specification d left join radius r on d.radius_id = r.radius_id
|
||||
left join length l on l.length_id = d.length_id
|
||||
</sql>
|
||||
<sql id="selectDataFormat">
|
||||
select data_code, label, start,end from data_format
|
||||
|
@ -41,17 +45,52 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
insert into data_format
|
||||
values
|
||||
<foreach collection="dataFormat" item="list" separator=",">
|
||||
(#{list.vin},#{list.dataCode},#{list.label},#{list.start},#{list.end})
|
||||
(0,#{list.vin},#{list.dataCode},#{list.label},#{list.start},#{list.end})
|
||||
</foreach>
|
||||
</insert>
|
||||
<insert id="indexDataSpecification" useGeneratedKeys="true" keyProperty="id">
|
||||
insert into data_specification
|
||||
<trim prefix="(" suffix=")" suffixOverrides=",">
|
||||
<if test="vin != null">vin,</if>
|
||||
<if test="dataCode != null">data_code,</if>
|
||||
<if test="label != null">label,</if>
|
||||
<if test="standardData != null">standard_data,</if>
|
||||
<if test="dateTypeId != null">date_type_id,</if>
|
||||
<if test="radiusId != null">radius_id,</if>
|
||||
<if test="lengthId != null">length_id,</if>
|
||||
</trim>
|
||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||
<if test="vin != null">#{vin},</if>
|
||||
<if test="dataCode != null">#{dataCode},</if>
|
||||
<if test="label != null">#{label},</if>
|
||||
<if test="standardData != null">#{standardData},</if>
|
||||
<if test="dateTypeId != null">#{dateTypeId},</if>
|
||||
<if test="radiusId != null">#{radiusId},</if>
|
||||
<if test="lengthId != null">#{lengthId},</if>
|
||||
</trim>
|
||||
</insert>
|
||||
<update id="updataDataSpecification">
|
||||
update data_specification
|
||||
<trim prefix="SET" suffixOverrides=",">
|
||||
<if test="dataCode != null">data_code = #{dataCode},</if>
|
||||
<if test="label != null">label = #{label},</if>
|
||||
<if test="standardData != null">standard_data = #{standardData},</if>
|
||||
<if test="dateTypeId != null">date_type_id = #{dateTypeId},</if>
|
||||
<if test="radiusId != null">radius_id = #{radiusId},</if>
|
||||
<if test="lengthId != null">length_id = #{lengthId},</if>
|
||||
</trim>
|
||||
where id = #{id}
|
||||
</update>
|
||||
<delete id="deleteDataFormatById">
|
||||
delete
|
||||
from data_format
|
||||
where vin = #{vin};
|
||||
</delete>
|
||||
<select id="list" resultType="com.business.common.domain.event.Window">
|
||||
<include refid="selectWindowVo"></include>
|
||||
</select>
|
||||
<delete id="deleteDataSpecification">
|
||||
delete
|
||||
from data_specification
|
||||
where id = #{id};
|
||||
</delete>
|
||||
<select id="listDataFormat" resultType="com.business.common.dev.DataFormatDev">
|
||||
select * from data_format
|
||||
</select>
|
||||
|
@ -59,6 +98,27 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<include refid="selectDataFormat"></include>
|
||||
where vin = #{vin}
|
||||
</select>
|
||||
<select id="list" resultType="com.business.common.dev.DataSpecificationDev">
|
||||
<include refid="selectDataSpecificationVo"></include>
|
||||
</select>
|
||||
<select id="listLength" resultType="com.business.common.domain.event.Length">
|
||||
select *
|
||||
from length
|
||||
</select>
|
||||
<select id="listRadius" resultType="com.business.common.domain.event.Radius">
|
||||
select *
|
||||
from radius
|
||||
</select>
|
||||
<select id="selectDataSpecificationDev" resultType="com.business.common.dev.DataSpecificationDev">
|
||||
<include refid="selectDataSpecificationVo"></include>
|
||||
</select>
|
||||
<select id="listDateType" resultType="com.business.common.domain.event.DateType">
|
||||
select *
|
||||
from date_type
|
||||
</select>
|
||||
<select id="selectDataSpecificationById" resultType="com.business.common.domain.event.DataSpecification">
|
||||
select * from data_specification where id = #{id};
|
||||
</select>
|
||||
|
||||
|
||||
</mapper>
|
||||
|
|
Loading…
Reference in New Issue