diff --git a/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/ChannelController.java b/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/ChannelController.java index 39d85ff..5aec11d 100644 --- a/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/ChannelController.java +++ b/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/ChannelController.java @@ -5,12 +5,14 @@ import com.shxy.xymanager_common.base.BaseController; import com.shxy.xymanager_common.base.ResponseReult; import com.shxy.xymanager_common.bean.ServiceBody; import com.shxy.xymanager_common.bean.ServiceStatus; +import com.shxy.xymanager_common.model.DyLineTreeAndChannelListModel; import com.shxy.xymanager_common.model.TerminalChannelListModel; -import com.shxy.xymanager_common.model.TerminalChannelTreeListModel; -import com.shxy.xymanager_common.model.TerminalListModel; +import com.shxy.xymanager_common.model.TerminalChannelMapperListModel; +import com.shxy.xymanager_common.vo.TerminalChannelIdListVo; +import com.shxy.xymanager_common.vo.TerminalChannelVo; import com.shxy.xymanager_common.vo.TerminalIdVo; +import com.shxy.xymanager_common.vo.UpdateTerminalChannelVo; import com.shxy.xymanager_service.service.TerminalChannelService; -import com.shxy.xymanager_service.service.TerminalService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiResponse; @@ -31,12 +33,67 @@ public class ChannelController extends BaseController { @Autowired TerminalChannelService terminalChannelService; - @ApiOperation(value = "获取通道接口", notes = "获取通道列表接口", httpMethod = "POST") + + @ApiOperation(value = "获取所有通道列表", notes = "获取所有通道列表接口", httpMethod = "POST") @ApiResponses({@ApiResponse(code = 200, message = "请求成功"), @ApiResponse(code = 400, message = "请求参数没填好"), @ApiResponse(code = 404, message = "请求路径没有或页面跳转路径不对")}) @RequestMapping("/getChannelList") + @Log(title = "获取所有通道列表", type = "查询") + public ResponseReult getChannelList() { + ServiceBody serviceBody = terminalChannelService.getChannelList(); + if (serviceBody.getCode() == ServiceStatus.SUCCESS) { + return ResponseReult.success(serviceBody.getData()); + } else { + return ResponseReult.error(serviceBody.getCode(), serviceBody.getMsg()); + } + } + + @ApiOperation(value = "新增通道接口", notes = "新增通道接口", httpMethod = "POST") + @ApiResponses({@ApiResponse(code = 200, message = "请求成功"), @ApiResponse(code = 400, message = "请求参数没填好"), @ApiResponse(code = 404, message = "请求路径没有或页面跳转路径不对")}) + @RequestMapping("/addChannelList") + @Log(title = "新增通道接口", type = "新增") + public ResponseReult addChannelList(@RequestBody @Validated TerminalChannelVo vo) { + ServiceBody serviceBody = terminalChannelService.addChannelList(vo); + if (serviceBody.getCode() == ServiceStatus.SUCCESS) { + return ResponseReult.success(serviceBody.getData()); + } else { + return ResponseReult.error(serviceBody.getCode(), serviceBody.getMsg()); + } + } + + + @ApiOperation(value = "修改通道接口", notes = "获取通道列表接口", httpMethod = "POST") + @ApiResponses({@ApiResponse(code = 200, message = "请求成功"), @ApiResponse(code = 400, message = "请求参数没填好"), @ApiResponse(code = 404, message = "请求路径没有或页面跳转路径不对")}) + @RequestMapping("/updateChannelList") + @Log(title = "修改通道列表", type = "查询") + public ResponseReult updateChannelList(@RequestBody @Validated UpdateTerminalChannelVo vo) { + ServiceBody serviceBody = terminalChannelService.updateChannelList(vo); + if (serviceBody.getCode() == ServiceStatus.SUCCESS) { + return ResponseReult.success(serviceBody.getData()); + } else { + return ResponseReult.error(serviceBody.getCode(), serviceBody.getMsg()); + } + } + + @ApiOperation(value = "删除通道接口", notes = "获取通道列表接口", httpMethod = "POST") + @ApiResponses({@ApiResponse(code = 200, message = "请求成功"), @ApiResponse(code = 400, message = "请求参数没填好"), @ApiResponse(code = 404, message = "请求路径没有或页面跳转路径不对")}) + @RequestMapping("/deleteChannelList") @Log(title = "获取通道列表", type = "查询") - public ResponseReult getChannelList(@RequestBody @Validated TerminalIdVo vo) { - ServiceBody serviceBody = terminalChannelService.getChannelList(vo); + public ResponseReult deleteChannelList(@RequestBody @Validated TerminalChannelIdListVo vo) { + ServiceBody serviceBody = terminalChannelService.deleteChannelList(vo); + if (serviceBody.getCode() == ServiceStatus.SUCCESS) { + return ResponseReult.success(serviceBody.getData()); + } else { + return ResponseReult.error(serviceBody.getCode(), serviceBody.getMsg()); + } + } + + + @ApiOperation(value = "根据装置号获取通道接口", notes = "根据装置号获取通道接口", httpMethod = "POST") + @ApiResponses({@ApiResponse(code = 200, message = "请求成功"), @ApiResponse(code = 400, message = "请求参数没填好"), @ApiResponse(code = 404, message = "请求路径没有或页面跳转路径不对")}) + @RequestMapping("/getChannelByTermid") + @Log(title = "根据装置号获取通道接口", type = "查询") + public ResponseReult getChannelByTermid(@RequestBody @Validated TerminalIdVo vo) { + ServiceBody serviceBody = terminalChannelService.getChannelByTermid(vo); if (serviceBody.getCode() == ServiceStatus.SUCCESS) { return ResponseReult.success(serviceBody.getData()); } else { @@ -48,8 +105,8 @@ public class ChannelController extends BaseController { @ApiResponses({@ApiResponse(code = 200, message = "请求成功"), @ApiResponse(code = 400, message = "请求参数没填好"), @ApiResponse(code = 404, message = "请求路径没有或页面跳转路径不对")}) @RequestMapping("/getChannelTreeList") @Log(title = "获取所有通道树状列表", type = "查询") - public ResponseReult getChannelTreeList() { - ServiceBody serviceBody = terminalChannelService.getChannelTreeList(); + public ResponseReult getChannelTreeList(@RequestBody @Validated TerminalIdVo vo) { + ServiceBody serviceBody = terminalChannelService.getChannelTreeList(vo); if (serviceBody.getCode() == ServiceStatus.SUCCESS) { return ResponseReult.success(serviceBody.getData()); } else { diff --git a/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/TerminalPhotoController.java b/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/TerminalPhotoController.java index 26f6a54..28275d1 100644 --- a/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/TerminalPhotoController.java +++ b/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/TerminalPhotoController.java @@ -6,7 +6,7 @@ import com.shxy.xymanager_common.base.ResponseReult; import com.shxy.xymanager_common.bean.ServiceBody; import com.shxy.xymanager_common.bean.ServiceStatus; import com.shxy.xymanager_common.model.TerminalPhotoListModel; -import com.shxy.xymanager_common.vo.TerminalAndChannelIdVo; +import com.shxy.xymanager_common.vo.TerminalAndChannelIdAndTimeVo; import com.shxy.xymanager_service.service.TerminalPhotoService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -32,7 +32,7 @@ public class TerminalPhotoController extends BaseController { @ApiResponses({@ApiResponse(code = 200, message = "请求成功"), @ApiResponse(code = 400, message = "请求参数没填好"), @ApiResponse(code = 404, message = "请求路径没有或页面跳转路径不对")}) @RequestMapping("/getTerminalPhotoList") @Log(title = "获取设备列表", type = "查询") - public ResponseReult getTerminalPhotoList(@RequestBody @Validated TerminalAndChannelIdVo vo) { + public ResponseReult getTerminalPhotoList(@RequestBody @Validated TerminalAndChannelIdAndTimeVo vo) { ServiceBody serviceBody = terminalPhotoService.getTerminalPhotoList(vo); if (serviceBody.getCode() == ServiceStatus.SUCCESS) { return ResponseReult.success(serviceBody.getData()); diff --git a/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/TerminalScheduleRuleController.java b/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/TerminalScheduleRuleController.java index 0c39b6d..6ba77a0 100644 --- a/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/TerminalScheduleRuleController.java +++ b/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/TerminalScheduleRuleController.java @@ -7,6 +7,7 @@ import com.shxy.xymanager_common.bean.ServiceBody; import com.shxy.xymanager_common.bean.ServiceStatus; import com.shxy.xymanager_common.model.TerminalScheduleRuleListModel; import com.shxy.xymanager_common.model.TerminalScheduleRuleModel; +import com.shxy.xymanager_common.model.TerminalScheduleRuleTimeListModel; import com.shxy.xymanager_common.vo.*; import com.shxy.xymanager_service.service.TerminalScheduleRuleService; import io.swagger.annotations.Api; @@ -97,8 +98,8 @@ public class TerminalScheduleRuleController extends BaseController { @ApiOperation(value = "拍照任务规则关联设备", notes = "拍照任务规则关联设备接口", httpMethod = "POST") @ApiResponses({@ApiResponse(code = 200, message = "请求成功"), @ApiResponse(code = 400, message = "请求参数没填好"), @ApiResponse(code = 404, message = "请求路径没有或页面跳转路径不对")}) @RequestMapping("/relateSchelduleRule") - @Log(title = "删除任务规则", type = "修改") - public ResponseReult relateSchelduleRule(@RequestBody @Validated RelateTerminalRuleIdVo vo) { + @Log(title = "关联任务规则", type = "修改") + public ResponseReult relateSchelduleRule(@RequestBody @Validated RelateTerminalListRuleIdVo vo) { ServiceBody serviceBody = terminalScheduleRuleService.relateSchelduleRule(vo); if (serviceBody.getCode() == ServiceStatus.SUCCESS) { return ResponseReult.success(serviceBody.getData()); @@ -107,5 +108,17 @@ public class TerminalScheduleRuleController extends BaseController { } } + @ApiOperation(value = "根据通道和装置编号获取拍照时间表", notes = "根据通道和装置编号获取拍照时间表", httpMethod = "POST") + @ApiResponses({@ApiResponse(code = 200, message = "请求成功"), @ApiResponse(code = 400, message = "请求参数没填好"), @ApiResponse(code = 404, message = "请求路径没有或页面跳转路径不对")}) + @RequestMapping("/getChannelSchelduleRule") + @Log(title = "根据通道和装置编号获取拍照时间表", type = "修改") + public ResponseReult getChannelSchelduleRule(@RequestBody @Validated TerminalAndChannelIdVo vo) { + ServiceBody serviceBody = terminalScheduleRuleService.getChannelSchelduleRule(vo); + if (serviceBody.getCode() == ServiceStatus.SUCCESS) { + return ResponseReult.success(serviceBody.getData()); + } else { + return ResponseReult.error(serviceBody.getCode(), serviceBody.getMsg()); + } + } } diff --git a/xymanager_admin/src/test/java/com/shxy/xymanager_admin/XymanagerAdminApplicationTests.java b/xymanager_admin/src/test/java/com/shxy/xymanager_admin/XymanagerAdminApplicationTests.java index 174d210..daae94d 100644 --- a/xymanager_admin/src/test/java/com/shxy/xymanager_admin/XymanagerAdminApplicationTests.java +++ b/xymanager_admin/src/test/java/com/shxy/xymanager_admin/XymanagerAdminApplicationTests.java @@ -1,20 +1,30 @@ package com.shxy.xymanager_admin; +import cn.hutool.core.date.DateField; +import cn.hutool.core.date.DateTime; +import cn.hutool.core.date.DateUtil; import com.shxy.xymanager_common.entity.Lines; +import com.shxy.xymanager_common.entity.TerminalScheduleRule; import com.shxy.xymanager_common.entity.Terminals; +import com.shxy.xymanager_common.util.MyDateUtils; import com.shxy.xymanager_dao.dao.LinesDao; +import com.shxy.xymanager_dao.dao.TerminalScheduleRuleDao; import com.shxy.xymanager_dao.dao.TerminalsDao; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; +import java.sql.Time; import java.util.Date; +import java.util.List; @SpringBootTest class XymanagerAdminApplicationTests { @Autowired TerminalsDao terminalsDao; + @Autowired + TerminalScheduleRuleDao terminalScheduleRuleDao; @Autowired LinesDao linesDao; @@ -41,6 +51,15 @@ class XymanagerAdminApplicationTests { // int i = terminalsDao.insertSelective(terminals); // System.out.println(i +""); +// TerminalScheduleRule bean = terminalScheduleRuleDao.selectByPrimaryKey(1); +// Time startTime = bean.getStartTime(); +// Time endTime = bean.getEndTime(); +// Integer span = bean.getSpan(); +// List dateTimes = MyDateUtils.rangeToList(startTime, endTime, DateField.MINUTE, span); +// for (DateTime item : dateTimes) { +// String dateTime = DateUtil.formatTime(item); +// } +// System.out.println(dateTime.toString()); } diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/DyLineAndTerminalAndChannelDto.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/DyLineAndTerminalAndChannelDto.java new file mode 100644 index 0000000..162ee48 --- /dev/null +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/DyLineAndTerminalAndChannelDto.java @@ -0,0 +1,21 @@ +package com.shxy.xymanager_common.dto; + +import lombok.Data; + +import java.util.List; + +/** + * 线路电压和通道对象 + */ +@Data +public class DyLineAndTerminalAndChannelDto { + + private Integer id; + + private String name; + + private Integer dyValue; + + private List list; + +} diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/LineAndTerminalAndChannelDto.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/LineAndTerminalAndChannelDto.java new file mode 100644 index 0000000..af5084e --- /dev/null +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/LineAndTerminalAndChannelDto.java @@ -0,0 +1,18 @@ +package com.shxy.xymanager_common.dto; + +import lombok.Data; + +import java.util.List; + +@Data +public class LineAndTerminalAndChannelDto { + + private Integer id; + + private String name; + + private String bsManufacturer; + + private List list; + +} diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/TermChannelAndMapperDto.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/TermChannelAndMapperDto.java new file mode 100644 index 0000000..b355885 --- /dev/null +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/TermChannelAndMapperDto.java @@ -0,0 +1,25 @@ +package com.shxy.xymanager_common.dto; + +import lombok.Data; + +/** + * 装置通道关联和通道信息 + */ +@Data +public class TermChannelAndMapperDto { + + private Integer id; + + private Integer termid; + + private Integer channelid; + + private String channelname; + + private Integer status; + + private Integer maxResolutionWidth; + + private Integer maxResolutionHeight; + +} diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/TerminalChannelsDto.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/TerminalChannelsDto.java new file mode 100644 index 0000000..a07227a --- /dev/null +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/TerminalChannelsDto.java @@ -0,0 +1,15 @@ +package com.shxy.xymanager_common.dto; + +import lombok.Data; + +import java.io.Serializable; + +@Data +public class TerminalChannelsDto implements Serializable { + private Integer id; + + private String name; + + private static final long serialVersionUID = 1L; + +} \ No newline at end of file diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/TerminalsAndChannelDto.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/TerminalsAndChannelDto.java new file mode 100644 index 0000000..5bd4fd2 --- /dev/null +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/TerminalsAndChannelDto.java @@ -0,0 +1,22 @@ +package com.shxy.xymanager_common.dto; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +@Data +public class TerminalsAndChannelDto implements Serializable { + private Integer id; + + private Integer towerid; + + private String cmdid; + + private String name; + + private List list; + + private static final long serialVersionUID = 1L; + +} \ No newline at end of file diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/entity/TerminalChannelMapper.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/entity/TerminalChannelMapper.java new file mode 100644 index 0000000..941bf04 --- /dev/null +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/entity/TerminalChannelMapper.java @@ -0,0 +1,22 @@ +package com.shxy.xymanager_common.entity; + +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +@Data +public class TerminalChannelMapper implements Serializable { + private Integer id; + + private Integer termId; + + private Integer channelId; + + private Date createTime; + + private Date updateTime; + + private static final long serialVersionUID = 1L; + +} \ No newline at end of file diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/entity/TerminalChannels.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/entity/TerminalChannels.java index d7f47ca..4482120 100644 --- a/xymanager_common/src/main/java/com/shxy/xymanager_common/entity/TerminalChannels.java +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/entity/TerminalChannels.java @@ -3,21 +3,24 @@ package com.shxy.xymanager_common.entity; import lombok.Data; import java.io.Serializable; +import java.util.Date; @Data public class TerminalChannels implements Serializable { private Integer id; - private Integer termId; - - private Byte channelNo; - private String channelName; private Integer maxResolutionWidth; private Integer maxResolutionHeight; + private Integer status; + + private Date createTime; + + private Date updateTime; + private static final long serialVersionUID = 1L; } \ No newline at end of file diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/model/DyLineTreeAndChannelListModel.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/model/DyLineTreeAndChannelListModel.java new file mode 100644 index 0000000..8cfcc8b --- /dev/null +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/model/DyLineTreeAndChannelListModel.java @@ -0,0 +1,82 @@ +package com.shxy.xymanager_common.model; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * 电压线路和通道树状图列表 + */ +@Data +@ApiModel(value = "电压线路和通道树状图列表", description = "电压线路和通道树状图列表信息") +public class DyLineTreeAndChannelListModel implements Serializable { + @ApiModelProperty(value = "电压列表", example = "[]") + private List list; + + @Data + public static class DyListBean { + @ApiModelProperty(value = "电压编号", example = "123456") + private Integer id; + + @ApiModelProperty(value = "电压名称", example = "AAAA") + private String name; + + @ApiModelProperty(value = "电压大小", example = "AAAA") + private Integer dyValue; + + @ApiModelProperty(value = "线路列表", example = "[]") + private List list; + } + + @Data + public static class LineBean { + + @ApiModelProperty(value = "线路编号", example = "123456") + private Integer id; + + @ApiModelProperty(value = "线路名称", example = "AAAA") + private String name; + + @ApiModelProperty(value = "单位", example = "123456") + private String bsManufacturer; + + @ApiModelProperty(value = "装置信息", example = "123456") + private List list; + + } + + @Data + public static class TerminalBean { + + @ApiModelProperty(value = "装置编号", example = "123456") + private Integer id; + + @ApiModelProperty(value = "杆塔编号", example = "123456") + private Integer towerid; + + @ApiModelProperty(value = "图像监测装置 ID(17 位编码)", example = "12345678") + private String cmdid; + + @ApiModelProperty(value = "显示名", example = "名称名称") + private String name; + + @ApiModelProperty(value = "通道信息", example = "123456") + private List list; + + } + + @Data + public static class ChannelBean { + + @ApiModelProperty(value = "通道id", example = "12321") + private Integer id; + + @ApiModelProperty(value = "通道名称", example = "123456") + private String name; + + + } +} diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/model/TerminalChannelListModel.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/model/TerminalChannelListModel.java index 3a3fbb6..264f1cb 100644 --- a/xymanager_common/src/main/java/com/shxy/xymanager_common/model/TerminalChannelListModel.java +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/model/TerminalChannelListModel.java @@ -5,7 +5,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.io.Serializable; -import java.util.Date; import java.util.List; /** @@ -21,17 +20,14 @@ public class TerminalChannelListModel implements Serializable { @Data public static class ChannelBean { - @ApiModelProperty(value = "通道id", example = "12321") - private Integer id; - - @ApiModelProperty(value = "装置编号", example = "123456") - private Integer termId; - @ApiModelProperty(value = "通道编号", example = "123456") - private Byte channelNo; + private Integer id; @ApiModelProperty(value = "通道名称", example = "123456") - private String channelName; + private String channelname; + + @ApiModelProperty(value = "通道状态", example = "123456") + private Integer status; @ApiModelProperty(value = "分辨率W", example = "123456") private Integer maxResolutionWidth; diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/model/TerminalChannelMapperListModel.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/model/TerminalChannelMapperListModel.java new file mode 100644 index 0000000..08ad800 --- /dev/null +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/model/TerminalChannelMapperListModel.java @@ -0,0 +1,43 @@ +package com.shxy.xymanager_common.model; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; +import java.util.List; + +/** + * 通道关联表和通道列表 + */ +@Data +@ApiModel(value = "通道关联表和通道列表", description = "通道列表信息") +public class TerminalChannelMapperListModel implements Serializable { + + @ApiModelProperty(value = "通道关联表和通道列表对象", example = "[]") + private List list; + + @Data + public static class ChannelBean { + + @ApiModelProperty(value = "装置编号", example = "123456") + private Integer termId; + + @ApiModelProperty(value = "通道编号", example = "123456") + private Integer channelid; + + @ApiModelProperty(value = "通道名称", example = "123456") + private String channelname; + + @ApiModelProperty(value = "通道状态", example = "123456") + private Integer status; + + @ApiModelProperty(value = "分辨率W", example = "123456") + private Integer maxResolutionWidth; + + @ApiModelProperty(value = "分辨率H", example = "123456") + private Integer maxResolutionHeight; + + } +} diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/model/TerminalScheduleRuleTimeListModel.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/model/TerminalScheduleRuleTimeListModel.java new file mode 100644 index 0000000..0fc8be7 --- /dev/null +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/model/TerminalScheduleRuleTimeListModel.java @@ -0,0 +1,21 @@ +package com.shxy.xymanager_common.model; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; +import java.sql.Time; +import java.util.List; + +/** + * 时间任务详情 + */ +@Data +@ApiModel(value = "时间任务详情", description = "时间任务详情信息") +public class TerminalScheduleRuleTimeListModel implements Serializable { + + @ApiModelProperty(value = "任务名称", example = "123456") + private List list; + +} diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/util/MyDateUtils.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/util/MyDateUtils.java index 42f7712..d66feb9 100644 --- a/xymanager_common/src/main/java/com/shxy/xymanager_common/util/MyDateUtils.java +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/util/MyDateUtils.java @@ -1,7 +1,11 @@ package com.shxy.xymanager_common.util; +import ch.qos.logback.core.util.TimeUtil; +import cn.hutool.core.date.DateField; import cn.hutool.core.date.DatePattern; +import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUtil; +import cn.hutool.core.lang.Range; import org.apache.commons.lang3.time.DateFormatUtils; import java.lang.management.ManagementFactory; @@ -154,4 +158,11 @@ public class MyDateUtils extends DateUtil { // long sec = diff % nd % nh % nm / ns; return day + "天" + hour + "小时" + min + "分钟"; } + +// public static String dfdsa(Date start, Date end, DateField unit, int step, boolean isIncludeStart, boolean isIncludeEnd){ +// new Range(DateUtil.date(start), DateUtil.date(end), (current, end1, index) -> { +// DateTime dt = DateUtil.date(start).offsetNew(unit, (index + 1) * step); +// return dt.isAfter(end1) ? null : dt; +// }, isIncludeStart, isIncludeEnd); +// } } diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/RelateTerminalListRuleIdVo.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/RelateTerminalListRuleIdVo.java new file mode 100644 index 0000000..9a67f9d --- /dev/null +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/RelateTerminalListRuleIdVo.java @@ -0,0 +1,37 @@ +package com.shxy.xymanager_common.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.NotNull; +import java.util.List; + +/** + * 设备关联拍照时间任务规则 + */ +@Data +@ApiModel(value = "关联任务规则编号对象", description = "关联任务规则编号对象描述") +public class RelateTerminalListRuleIdVo { + + @NotNull(message = "规则编号不能缺少") + @ApiModelProperty(value = "规则编号", example = "123455") + private Integer ruleid; + + @NotNull(message = "装置列表不能缺少") + @ApiModelProperty(value = "装置通道编号列表", example = "123455") + private List list; + + @Data + public static class Item { + @NotNull(message = "装置编号") + @ApiModelProperty(value = "装置编号", example = "123455") + private Integer termid; + + @NotNull(message = "通道编号列表不能缺少") + @ApiModelProperty(value = "通道编号列表", example = "123455") + private List channelidlist; + } + +} diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/RelateTerminalRuleIdVo.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/RelateTerminalRuleIdVo.java deleted file mode 100644 index dbe3482..0000000 --- a/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/RelateTerminalRuleIdVo.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.shxy.xymanager_common.vo; - -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import javax.validation.constraints.NotNull; -import java.util.List; - -/** - * 设备关联拍照时间任务规则 - */ -@Data -@ApiModel(value = "关联任务规则编号对象", description = "关联任务规则编号对象描述") -public class RelateTerminalRuleIdVo { - - @NotNull(message = "规则编号不能缺少") - @ApiModelProperty(value = "规则编号", example = "123455") - private Integer ruleid; - - @NotNull(message = "通道编号列表不能缺少") - @ApiModelProperty(value = "通道编号列表", example = "123455") - private List channelidlist; - - @NotNull(message = "装置编号") - @ApiModelProperty(value = "装置编号", example = "123455") - private Integer termid; -} diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/TerminalAndChannelIdAndTimeVo.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/TerminalAndChannelIdAndTimeVo.java new file mode 100644 index 0000000..7b620ad --- /dev/null +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/TerminalAndChannelIdAndTimeVo.java @@ -0,0 +1,26 @@ +package com.shxy.xymanager_common.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.Min; +import javax.validation.constraints.NotNull; +import java.util.Date; + +@Data +@ApiModel(value = "装置和通道编号和查询时间", description = "装置和通道编号和查询时间描述") +public class TerminalAndChannelIdAndTimeVo { + + @NotNull(message = "装置编号不能缺少") + @ApiModelProperty(value = "装置编号", example = "123455") + private Integer terminalid; + + @NotNull(message = "通道编号不能缺少") + @ApiModelProperty(value = "通道编号", example = "123455") + private Integer channelid; + + @NotNull(message = "查询时间不能缺少") + @ApiModelProperty(value = "查询时间", example = "123455") + private Date time; +} diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/TerminalAndChannelIdVo.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/TerminalAndChannelIdVo.java index 9d30ce3..81600c7 100644 --- a/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/TerminalAndChannelIdVo.java +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/TerminalAndChannelIdVo.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.Min; import javax.validation.constraints.NotNull; import java.util.Date; @@ -20,7 +19,4 @@ public class TerminalAndChannelIdVo { @ApiModelProperty(value = "通道编号", example = "123455") private Integer channelid; - @NotNull(message = "查询时间不能缺少") - @ApiModelProperty(value = "查询时间", example = "123455") - private Date time; } diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/TerminalChannelIdListVo.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/TerminalChannelIdListVo.java new file mode 100644 index 0000000..a9b98c7 --- /dev/null +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/TerminalChannelIdListVo.java @@ -0,0 +1,16 @@ +package com.shxy.xymanager_common.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotEmpty; +import java.util.List; + +@Data +@ApiModel(value = "通道编号数组对象", description = "通道编号数组对象") +public class TerminalChannelIdListVo { + @NotEmpty(message = "不能传入空值") + @ApiModelProperty(value = "通道编号数组", required = true, example = "A0001") + private List list; +} diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/TerminalChannelVo.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/TerminalChannelVo.java new file mode 100644 index 0000000..fb3d323 --- /dev/null +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/TerminalChannelVo.java @@ -0,0 +1,34 @@ +package com.shxy.xymanager_common.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotNull; +import java.util.List; + +@Data +@ApiModel(value = "通道对象", description = "通道对象描述") +public class TerminalChannelVo { + + @NotNull(message = "装置列表不能缺少") + @ApiModelProperty(value = "装置通道编号列表", example = "123455") + private List list; + + @Data + public static class Item { + @NotNull(message = "通道编号") + @ApiModelProperty(value = "装置编号", example = "123455") + private Integer id; + + @NotNull(message = "通道编号不能缺少") + @ApiModelProperty(value = "通道编号", example = "123455") + private Integer channelname; + + @ApiModelProperty(value = "分辨率W", example = "123456") + private Integer maxResolutionWidth; + + @ApiModelProperty(value = "分辨率H", example = "123456") + private Integer maxResolutionHeight; + } +} diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/TerminalIdVo.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/TerminalIdVo.java index 5ec6aa2..fdbc712 100644 --- a/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/TerminalIdVo.java +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/TerminalIdVo.java @@ -12,7 +12,6 @@ import java.util.List; @ApiModel(value = "装置编号对象", description = "装置编号对象描述") public class TerminalIdVo { - @NotNull(message = "装置编号不能缺少") @ApiModelProperty(value = "装置编号", example = "123455") private Integer termid; } diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/UpdateTerminalChannelVo.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/UpdateTerminalChannelVo.java new file mode 100644 index 0000000..c97ff44 --- /dev/null +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/UpdateTerminalChannelVo.java @@ -0,0 +1,31 @@ +package com.shxy.xymanager_common.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotNull; +import java.util.List; + +@Data +@ApiModel(value = "通道对象", description = "通道对象描述") +public class UpdateTerminalChannelVo { + + @NotNull(message = "通道编号") + @ApiModelProperty(value = "装置编号", example = "123455") + private Integer id; + + @NotNull(message = "通道编号不能缺少") + @ApiModelProperty(value = "通道编号", example = "123455") + private Integer channelname; + + @NotNull(message = "通道编号状态") + @ApiModelProperty(value = "通道状态", example = "0---关闭 1--开启") + private Integer status; + + @ApiModelProperty(value = "分辨率W", example = "123456") + private Integer maxResolutionWidth; + + @ApiModelProperty(value = "分辨率H", example = "123456") + private Integer maxResolutionHeight; +} diff --git a/xymanager_dao/src/main/java/com/shxy/xymanager_dao/dao/TerminalChannelMapperDao.java b/xymanager_dao/src/main/java/com/shxy/xymanager_dao/dao/TerminalChannelMapperDao.java new file mode 100644 index 0000000..4cdccda --- /dev/null +++ b/xymanager_dao/src/main/java/com/shxy/xymanager_dao/dao/TerminalChannelMapperDao.java @@ -0,0 +1,21 @@ +package com.shxy.xymanager_dao.dao; + +import com.shxy.xymanager_common.entity.TerminalChannelMapper; + +import java.util.List; + +public interface TerminalChannelMapperDao { + int deleteByPrimaryKey(Integer id); + + int insert(TerminalChannelMapper record); + + int insertSelective(TerminalChannelMapper record); + + List selectByTermid(Integer id); + + TerminalChannelMapper selectByPrimaryKey(Integer id); + + int updateByPrimaryKeySelective(TerminalChannelMapper record); + + int updateByPrimaryKey(TerminalChannelMapper record); +} \ No newline at end of file diff --git a/xymanager_dao/src/main/java/com/shxy/xymanager_dao/dao/TerminalChannelsDao.java b/xymanager_dao/src/main/java/com/shxy/xymanager_dao/dao/TerminalChannelsDao.java index 7f19c68..bbe3899 100644 --- a/xymanager_dao/src/main/java/com/shxy/xymanager_dao/dao/TerminalChannelsDao.java +++ b/xymanager_dao/src/main/java/com/shxy/xymanager_dao/dao/TerminalChannelsDao.java @@ -1,19 +1,27 @@ package com.shxy.xymanager_dao.dao; +import com.shxy.xymanager_common.dto.DyLineAndTerminalAndChannelDto; +import com.shxy.xymanager_common.dto.TermChannelAndMapperDto; import com.shxy.xymanager_common.entity.TerminalChannels; +import com.shxy.xymanager_common.entity.TerminalScheduleMapper; +import org.apache.ibatis.annotations.Param; +import java.util.Date; import java.util.List; public interface TerminalChannelsDao { int deleteByPrimaryKey(Integer id); - int insert(TerminalChannels record); + int insertList(@Param("list") List record,@Param("status") Integer status, @Param("createat") Date create, @Param("updateat") Date update); - int insertSelective(TerminalChannels record); + List selectChannelList(); - List selectByTermid(Integer termid); + List selectByTermid(@Param("termid") Integer termid, @Param("status") Integer status); - int updateByPrimaryKeySelective(TerminalChannels record); + List selectAllAndChannelByTermid(@Param("termid") Integer termid, @Param("status") Integer status); + + int updateByPrimaryKeySelective(@Param("data") TerminalChannels record,@Param("updateat") Date update); + + int deleteList(@Param("list") List list,@Param("status") Integer status,@Param("updateat") Date update); - int updateByPrimaryKey(TerminalChannels record); } \ No newline at end of file diff --git a/xymanager_dao/src/main/java/com/shxy/xymanager_dao/dao/TerminalScheduleMapperDao.java b/xymanager_dao/src/main/java/com/shxy/xymanager_dao/dao/TerminalScheduleMapperDao.java index 99f0b93..75a2aca 100644 --- a/xymanager_dao/src/main/java/com/shxy/xymanager_dao/dao/TerminalScheduleMapperDao.java +++ b/xymanager_dao/src/main/java/com/shxy/xymanager_dao/dao/TerminalScheduleMapperDao.java @@ -1,13 +1,14 @@ package com.shxy.xymanager_dao.dao; import com.shxy.xymanager_common.entity.TerminalScheduleMapper; +import com.shxy.xymanager_common.vo.RelateTerminalListRuleIdVo; import org.apache.ibatis.annotations.Param; import java.util.Date; import java.util.List; public interface TerminalScheduleMapperDao { - int deleteByChannelId(@Param("list") List list, @Param("termid") Integer termid); + int deleteByChannelId(@Param("list") List list); int insert(TerminalScheduleMapper record); @@ -17,7 +18,9 @@ public interface TerminalScheduleMapperDao { TerminalScheduleMapper selectByPrimaryKey(Integer id); - List selectByChannelId(@Param("list") List list, @Param("termid") Integer termid); + TerminalScheduleMapper selectByChannelId(@Param("channelid") Integer list, @Param("termid") Integer termid); + + List selectByTerminalBean(@Param("list") List list); int updateByPrimaryKeySelective(TerminalScheduleMapper record); diff --git a/xymanager_dao/src/main/resources/generatorConfig.xml b/xymanager_dao/src/main/resources/generatorConfig.xml index 034a6c4..00315bd 100644 --- a/xymanager_dao/src/main/resources/generatorConfig.xml +++ b/xymanager_dao/src/main/resources/generatorConfig.xml @@ -128,9 +128,17 @@ - + + + + + + + +
diff --git a/xymanager_dao/src/main/resources/mappers/TerminalChannelMapperDao.xml b/xymanager_dao/src/main/resources/mappers/TerminalChannelMapperDao.xml new file mode 100644 index 0000000..6a8a813 --- /dev/null +++ b/xymanager_dao/src/main/resources/mappers/TerminalChannelMapperDao.xml @@ -0,0 +1,100 @@ + + + + + + + + + + + + id, term_id, channel_id, create_time, update_time + + + + + + delete from terminal_channel_mapper + where id = #{id,jdbcType=INTEGER} + + + insert into terminal_channel_mapper (id, term_id, channel_id, + create_time, update_time) + values (#{id,jdbcType=INTEGER}, #{termId,jdbcType=INTEGER}, #{channelId,jdbcType=INTEGER}, + #{createTime,jdbcType=TIMESTAMP}, #{updateTime,jdbcType=TIMESTAMP}) + + + insert into terminal_channel_mapper + + + id, + + + term_id, + + + channel_id, + + + create_time, + + + update_time, + + + + + #{id,jdbcType=INTEGER}, + + + #{termId,jdbcType=INTEGER}, + + + #{channelId,jdbcType=INTEGER}, + + + #{createTime,jdbcType=TIMESTAMP}, + + + #{updateTime,jdbcType=TIMESTAMP}, + + + + + update terminal_channel_mapper + + + term_id = #{termId,jdbcType=INTEGER}, + + + channel_id = #{channelId,jdbcType=INTEGER}, + + + create_time = #{createTime,jdbcType=TIMESTAMP}, + + + update_time = #{updateTime,jdbcType=TIMESTAMP}, + + + where id = #{id,jdbcType=INTEGER} + + + update terminal_channel_mapper + set term_id = #{termId,jdbcType=INTEGER}, + channel_id = #{channelId,jdbcType=INTEGER}, + create_time = #{createTime,jdbcType=TIMESTAMP}, + update_time = #{updateTime,jdbcType=TIMESTAMP} + where id = #{id,jdbcType=INTEGER} + + \ No newline at end of file diff --git a/xymanager_dao/src/main/resources/mappers/TerminalChannelsDao.xml b/xymanager_dao/src/main/resources/mappers/TerminalChannelsDao.xml index 8093ed2..fdce25d 100644 --- a/xymanager_dao/src/main/resources/mappers/TerminalChannelsDao.xml +++ b/xymanager_dao/src/main/resources/mappers/TerminalChannelsDao.xml @@ -3,35 +3,47 @@ - - + + + - + + + + + + + + + + + - + - - + - - - + + + + + - id, term_id, channel_no, channel_name, max_resolution_width, max_resolution_height + id, channel_name, max_resolution_width, max_resolution_height,status,create_time,update_time - - select from terminal_channels - where term_id = #{termid} - - select x.id as id, - x.name as name, + x.term_id as termid, + x.channel_id as channel_id, + y.channel_name as channel_name, + y.max_resolution_width as max_resolution_width, + y.max_resolution_height as max_resolution_height, + y.status as status + from terminal_channel_mapper x, + terminal_channels y + where x.channel_id = y.id and y.status = #{status} + + and x.term_id = #{termid} + + + @@ -115,34 +154,41 @@ - + update terminal_channels - - term_id = #{termId,jdbcType=INTEGER}, + + channel_name = #{data.channelName}, - - channel_no = #{channelNo,jdbcType=TINYINT}, + + max_resolution_width = #{data.maxResolutionWidth}, - - channel_name = #{channelName,jdbcType=VARCHAR}, + + max_resolution_height = #{data.maxResolutionHeight}, - - max_resolution_width = #{maxResolutionWidth,jdbcType=INTEGER}, + + status = #{data.status,jdbcType=INTEGER}, - - max_resolution_height = #{maxResolutionHeight,jdbcType=INTEGER}, + + update_time = #{updateat}, - where id = #{id,jdbcType=INTEGER} + where id = #{data.id} + + + + update terminal_channels + + + status = #{status,jdbcType=INTEGER}, + + + update_time = #{updateat}, + + + where + + #{id} + - - update terminal_channels - set term_id = #{termId,jdbcType=INTEGER}, - channel_no = #{channelNo,jdbcType=TINYINT}, - channel_name = #{channelName,jdbcType=VARCHAR}, - max_resolution_width = #{maxResolutionWidth,jdbcType=INTEGER}, - max_resolution_height = #{maxResolutionHeight,jdbcType=INTEGER} - where id = #{id,jdbcType=INTEGER} - \ No newline at end of file diff --git a/xymanager_dao/src/main/resources/mappers/TerminalScheduleMapperDao.xml b/xymanager_dao/src/main/resources/mappers/TerminalScheduleMapperDao.xml index 829a688..843b013 100644 --- a/xymanager_dao/src/main/resources/mappers/TerminalScheduleMapperDao.xml +++ b/xymanager_dao/src/main/resources/mappers/TerminalScheduleMapperDao.xml @@ -19,24 +19,33 @@ where id = #{id,jdbcType=INTEGER} - select from terminal_schedulemapper - where channel_id in - - #{id} - + where channel_id = #{channelid} and term_id = #{termid} + + delete from terminal_schedulemapper - where channel_id in - - #{id} + where + + term_id = #{item.termId} and channel_id = #{item.channelId} - and term_id = #{termid} diff --git a/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TerminalChannelServiceImpl.java b/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TerminalChannelServiceImpl.java index 5a2870d..ee60dfc 100644 --- a/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TerminalChannelServiceImpl.java +++ b/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TerminalChannelServiceImpl.java @@ -1,13 +1,21 @@ package com.shxy.xymanager_service.impl; import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.bean.copier.CopyOptions; import cn.hutool.core.collection.CollectionUtil; import com.shxy.xymanager_common.bean.ServiceBody; +import com.shxy.xymanager_common.dto.DyLineAndTerminalAndChannelDto; +import com.shxy.xymanager_common.dto.TermChannelAndMapperDto; import com.shxy.xymanager_common.entity.TerminalChannels; +import com.shxy.xymanager_common.enums.CommonStatus; import com.shxy.xymanager_common.exception.Asserts; +import com.shxy.xymanager_common.model.DyLineTreeAndChannelListModel; import com.shxy.xymanager_common.model.TerminalChannelListModel; -import com.shxy.xymanager_common.model.TerminalChannelTreeListModel; +import com.shxy.xymanager_common.model.TerminalChannelMapperListModel; +import com.shxy.xymanager_common.vo.TerminalChannelIdListVo; +import com.shxy.xymanager_common.vo.TerminalChannelVo; import com.shxy.xymanager_common.vo.TerminalIdVo; +import com.shxy.xymanager_common.vo.UpdateTerminalChannelVo; import com.shxy.xymanager_dao.dao.TerminalChannelsDao; import com.shxy.xymanager_service.service.TerminalChannelService; import lombok.extern.slf4j.Slf4j; @@ -15,11 +23,11 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.ArrayList; +import java.util.Date; import java.util.List; /** * 装置通道实现层 - * */ @Service @Slf4j @@ -29,19 +37,84 @@ public class TerminalChannelServiceImpl implements TerminalChannelService { TerminalChannelsDao terminalChannelsDao; /** - * 装置通道获取 + * 新增通道列表 + * + * @param vo + * @return + */ + @Override + public ServiceBody addChannelList(TerminalChannelVo vo) { + List list = BeanUtil.copyToList(vo.getList(), TerminalChannels.class, CopyOptions.create().ignoreCase()); + Date date = new Date(); + int i = terminalChannelsDao.insertList(list, CommonStatus.EFFECTIVE.value(), date, date); + if (i != 0) { + return Asserts.success("录入成功"); + } else { + return Asserts.error("录入失败"); + } + } + + /** + * 修改通道列表 + * * @param vo * @return */ @Override - public ServiceBody getChannelList(TerminalIdVo vo) { + public ServiceBody updateChannelList(UpdateTerminalChannelVo vo) { + TerminalChannels bean = BeanUtil.copyProperties(vo, TerminalChannels.class); + int i = terminalChannelsDao.updateByPrimaryKeySelective(bean, new Date()); + if (i != 0) { + return Asserts.success("修改成功"); + } else { + return Asserts.error("修改失败"); + } + } + + @Override + public ServiceBody deleteChannelList(TerminalChannelIdListVo vo) { + int i = terminalChannelsDao.deleteList(vo.getList(), CommonStatus.DELETE.value(), new Date()); + if (i != 0) { + return Asserts.success("删除成功"); + } else { + return Asserts.error("删除失败"); + } + } + + /** + * 所有装置通道获取 + * + * @return + */ + @Override + public ServiceBody getChannelList() { TerminalChannelListModel model = new TerminalChannelListModel(); - List list = terminalChannelsDao.selectByTermid(vo.getTermid()); + List list = terminalChannelsDao.selectChannelList(); + boolean empty = CollectionUtil.isEmpty(list); + if (empty) { + model.setList(new ArrayList<>()); + } else { + List channelBeans = BeanUtil.copyToList(list, TerminalChannelListModel.ChannelBean.class, CopyOptions.create().ignoreCase()); + model.setList(channelBeans); + } + return Asserts.success(model); + } + + /** + * 装置通道获取 + * + * @param vo + * @return + */ + @Override + public ServiceBody getChannelByTermid(TerminalIdVo vo) { + TerminalChannelMapperListModel model = new TerminalChannelMapperListModel(); + List list = terminalChannelsDao.selectByTermid(vo.getTermid(), CommonStatus.EFFECTIVE.value()); boolean empty = CollectionUtil.isEmpty(list); if (empty) { model.setList(new ArrayList<>()); } else { - List channelBeans = BeanUtil.copyToList(list, TerminalChannelListModel.ChannelBean.class); + List channelBeans = BeanUtil.copyToList(list, TerminalChannelMapperListModel.ChannelBean.class, CopyOptions.create().ignoreCase()); model.setList(channelBeans); } return Asserts.success(model); @@ -50,20 +123,21 @@ public class TerminalChannelServiceImpl implements TerminalChannelService { /** * 获取所有通道树状列表 + * * @return */ @Override - public ServiceBody getChannelTreeList() { - TerminalChannelListModel model = new TerminalChannelListModel(); - List list = terminalChannelsDao.selectByTermid(1); + public ServiceBody getChannelTreeList(TerminalIdVo vo) { + DyLineTreeAndChannelListModel model = new DyLineTreeAndChannelListModel(); + List list = terminalChannelsDao.selectAllAndChannelByTermid(vo.getTermid(), CommonStatus.EFFECTIVE.value()); boolean empty = CollectionUtil.isEmpty(list); if (empty) { model.setList(new ArrayList<>()); } else { - List channelBeans = BeanUtil.copyToList(list, TerminalChannelListModel.ChannelBean.class); + List channelBeans = BeanUtil.copyToList(list, DyLineTreeAndChannelListModel.DyListBean.class); model.setList(channelBeans); } - return null; + return Asserts.success(model); } } diff --git a/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TerminalPhotoServiceImpl.java b/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TerminalPhotoServiceImpl.java index 71525e6..ce20ff7 100644 --- a/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TerminalPhotoServiceImpl.java +++ b/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TerminalPhotoServiceImpl.java @@ -3,14 +3,11 @@ package com.shxy.xymanager_service.impl; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.copier.CopyOptions; import cn.hutool.core.collection.CollectionUtil; -import com.github.pagehelper.PageInfo; import com.shxy.xymanager_common.bean.ServiceBody; import com.shxy.xymanager_common.entity.TerminalPhoto; import com.shxy.xymanager_common.exception.Asserts; import com.shxy.xymanager_common.model.TerminalPhotoListModel; -import com.shxy.xymanager_common.page.PageUtils; -import com.shxy.xymanager_common.util.MyDateUtils; -import com.shxy.xymanager_common.vo.TerminalAndChannelIdVo; +import com.shxy.xymanager_common.vo.TerminalAndChannelIdAndTimeVo; import com.shxy.xymanager_dao.dao.TerminalPhotoDao; import com.shxy.xymanager_service.service.TerminalPhotoService; import lombok.extern.slf4j.Slf4j; @@ -37,7 +34,7 @@ public class TerminalPhotoServiceImpl implements TerminalPhotoService { * @return */ @Override - public ServiceBody getTerminalPhotoList(TerminalAndChannelIdVo vo) { + public ServiceBody getTerminalPhotoList(TerminalAndChannelIdAndTimeVo vo) { TerminalPhotoListModel model = new TerminalPhotoListModel(); List list = terminalPhotoDao.selectPhotoList(vo.getTerminalid(), vo.getChannelid(),vo.getTime()); boolean empty = CollectionUtil.isEmpty(list); diff --git a/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TerminalScheduleRuleServiceImpl.java b/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TerminalScheduleRuleServiceImpl.java index 1e3d305..8caa383 100644 --- a/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TerminalScheduleRuleServiceImpl.java +++ b/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TerminalScheduleRuleServiceImpl.java @@ -3,6 +3,9 @@ package com.shxy.xymanager_service.impl; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.copier.CopyOptions; 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 com.github.pagehelper.PageInfo; import com.shxy.xymanager_common.bean.ServiceBody; import com.shxy.xymanager_common.entity.TerminalScheduleMapper; @@ -11,6 +14,7 @@ import com.shxy.xymanager_common.enums.CommonStatus; import com.shxy.xymanager_common.exception.Asserts; import com.shxy.xymanager_common.model.TerminalScheduleRuleListModel; import com.shxy.xymanager_common.model.TerminalScheduleRuleModel; +import com.shxy.xymanager_common.model.TerminalScheduleRuleTimeListModel; import com.shxy.xymanager_common.page.PageUtils; import com.shxy.xymanager_common.util.MyDateUtils; import com.shxy.xymanager_common.vo.*; @@ -22,7 +26,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import javax.validation.constraints.NotNull; +import java.sql.Time; import java.util.ArrayList; import java.util.Date; import java.util.List; @@ -173,24 +177,25 @@ public class TerminalScheduleRuleServiceImpl implements TerminalScheduleRuleServ */ @Override @Transactional - public ServiceBody relateSchelduleRule(RelateTerminalRuleIdVo vo) { + public ServiceBody relateSchelduleRule(RelateTerminalListRuleIdVo vo) { ArrayList list = new ArrayList<>(); - List channelidlist = vo.getChannelidlist(); + List termBeanList = vo.getList(); Integer ruleid = vo.getRuleid(); - Integer termid = vo.getTermid(); - List mappers = terminalScheduleMapperDao.selectByChannelId(channelidlist, termid); + List mappers = terminalScheduleMapperDao.selectByTerminalBean(termBeanList); boolean empty = CollectionUtil.isEmpty(mappers); if (!empty) { - terminalScheduleMapperDao.deleteByChannelId(channelidlist, termid); + terminalScheduleMapperDao.deleteByChannelId(mappers); } - for (Integer item : channelidlist) { - TerminalScheduleMapper record = new TerminalScheduleMapper(); - record.setChannelId(item); - record.setScheduleId(ruleid); - record.setTermId(termid); - list.add(record); + for (RelateTerminalListRuleIdVo.Item item : termBeanList) { + for (Integer id : item.getChannelidlist()) { + TerminalScheduleMapper record = new TerminalScheduleMapper(); + record.setChannelId(id); + record.setScheduleId(ruleid); + record.setTermId(item.getTermid()); + list.add(record); + } } Date date = new Date(); int i = terminalScheduleMapperDao.insertList(list, date, date); @@ -199,7 +204,34 @@ public class TerminalScheduleRuleServiceImpl implements TerminalScheduleRuleServ } else { return Asserts.error("关联失败"); } + } + /** + * 获取通道的规则时间表 + * @param vo + * @return + */ + @Override + public ServiceBody getChannelSchelduleRule(TerminalAndChannelIdVo vo) { + TerminalScheduleRuleTimeListModel model = new TerminalScheduleRuleTimeListModel(); + TerminalScheduleMapper mapper = terminalScheduleMapperDao.selectByChannelId(vo.getChannelid(), vo.getTerminalid()); + if (mapper == null) { + model.setList(new ArrayList<>()); + }else { + Integer scheduleId = mapper.getScheduleId(); + TerminalScheduleRule bean = terminalScheduleRuleDao.selectByPrimaryKey(scheduleId); + Time startTime = bean.getStartTime(); + Time endTime = bean.getEndTime(); + Integer span = bean.getSpan(); + List dateTimes = MyDateUtils.rangeToList(startTime, endTime, DateField.MINUTE, span); + ArrayList timelist = new ArrayList<>(); + for (DateTime item : dateTimes) { + String dateTime = DateUtil.formatTime(item); + timelist.add(dateTime); + } + model.setList(timelist); + } + return Asserts.success(model); } } diff --git a/xymanager_service/src/main/java/com/shxy/xymanager_service/service/TerminalChannelService.java b/xymanager_service/src/main/java/com/shxy/xymanager_service/service/TerminalChannelService.java index ebd2928..ad37e6a 100644 --- a/xymanager_service/src/main/java/com/shxy/xymanager_service/service/TerminalChannelService.java +++ b/xymanager_service/src/main/java/com/shxy/xymanager_service/service/TerminalChannelService.java @@ -1,11 +1,13 @@ package com.shxy.xymanager_service.service; import com.shxy.xymanager_common.bean.ServiceBody; +import com.shxy.xymanager_common.model.DyLineTreeAndChannelListModel; import com.shxy.xymanager_common.model.TerminalChannelListModel; -import com.shxy.xymanager_common.model.TerminalChannelTreeListModel; -import com.shxy.xymanager_common.model.TerminalListModel; +import com.shxy.xymanager_common.model.TerminalChannelMapperListModel; +import com.shxy.xymanager_common.vo.TerminalChannelIdListVo; +import com.shxy.xymanager_common.vo.TerminalChannelVo; import com.shxy.xymanager_common.vo.TerminalIdVo; -import com.shxy.xymanager_common.vo.TerminalVo; +import com.shxy.xymanager_common.vo.UpdateTerminalChannelVo; /** * 通道接口 @@ -13,19 +15,47 @@ import com.shxy.xymanager_common.vo.TerminalVo; * @author 晶晶 */ public interface TerminalChannelService { + /** - * 获取通道 + * 新增通道列表 + * + * @return + */ + ServiceBody addChannelList(TerminalChannelVo vo); + + /** + * 修改通道列表 + * + * @return + */ + ServiceBody updateChannelList(UpdateTerminalChannelVo vo); + + /** + * 删除通道列表 * * @return */ - ServiceBody getChannelList(TerminalIdVo vo); + ServiceBody deleteChannelList(TerminalChannelIdListVo vo); /** + * 获取所有通道列表 * + * @return + */ + ServiceBody getChannelList(); + + /** + * 获取通道 + * + * @return + */ + ServiceBody getChannelByTermid(TerminalIdVo vo); + + /** * 获取所有通道树状列表 * * @return */ - ServiceBody getChannelTreeList(); + ServiceBody getChannelTreeList(TerminalIdVo vo); } diff --git a/xymanager_service/src/main/java/com/shxy/xymanager_service/service/TerminalPhotoService.java b/xymanager_service/src/main/java/com/shxy/xymanager_service/service/TerminalPhotoService.java index 2738174..08f83ce 100644 --- a/xymanager_service/src/main/java/com/shxy/xymanager_service/service/TerminalPhotoService.java +++ b/xymanager_service/src/main/java/com/shxy/xymanager_service/service/TerminalPhotoService.java @@ -2,7 +2,7 @@ package com.shxy.xymanager_service.service; import com.shxy.xymanager_common.bean.ServiceBody; import com.shxy.xymanager_common.model.TerminalPhotoListModel; -import com.shxy.xymanager_common.vo.TerminalAndChannelIdVo; +import com.shxy.xymanager_common.vo.TerminalAndChannelIdAndTimeVo; /** * 装置图片接口 @@ -15,6 +15,6 @@ public interface TerminalPhotoService { * * @return */ - ServiceBody getTerminalPhotoList(TerminalAndChannelIdVo vo); + ServiceBody getTerminalPhotoList(TerminalAndChannelIdAndTimeVo vo); } diff --git a/xymanager_service/src/main/java/com/shxy/xymanager_service/service/TerminalScheduleRuleService.java b/xymanager_service/src/main/java/com/shxy/xymanager_service/service/TerminalScheduleRuleService.java index 949b977..509f13f 100644 --- a/xymanager_service/src/main/java/com/shxy/xymanager_service/service/TerminalScheduleRuleService.java +++ b/xymanager_service/src/main/java/com/shxy/xymanager_service/service/TerminalScheduleRuleService.java @@ -3,6 +3,7 @@ package com.shxy.xymanager_service.service; import com.shxy.xymanager_common.bean.ServiceBody; import com.shxy.xymanager_common.model.TerminalScheduleRuleListModel; import com.shxy.xymanager_common.model.TerminalScheduleRuleModel; +import com.shxy.xymanager_common.model.TerminalScheduleRuleTimeListModel; import com.shxy.xymanager_common.vo.*; /** @@ -55,5 +56,12 @@ public interface TerminalScheduleRuleService { * @param vo * @return */ - ServiceBody relateSchelduleRule(RelateTerminalRuleIdVo vo); + ServiceBody relateSchelduleRule(RelateTerminalListRuleIdVo vo); + + /** + * 获取通道的规则时间表 + * @param vo + * @return + */ + ServiceBody getChannelSchelduleRule(TerminalAndChannelIdVo vo); }