diff --git a/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/TermSetController.java b/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/TermSetController.java new file mode 100644 index 0000000..0c670aa --- /dev/null +++ b/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/TermSetController.java @@ -0,0 +1,47 @@ +package com.shxy.xymanager_admin.controller; + +import com.shxy.xymanager_common.annotation.Log; +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.TerminalAllChannelListModel; +import com.shxy.xymanager_common.model.TerminalChannelListModel; +import com.shxy.xymanager_common.model.TerminalChannelMapperListModel; +import com.shxy.xymanager_common.vo.*; +import com.shxy.xymanager_service.service.TermSetService; +import com.shxy.xymanager_service.service.TerminalChannelService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiResponse; +import io.swagger.annotations.ApiResponses; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + + +@Api(value = "装置cma控制", tags = "装置cma控制") +@RestController +@Slf4j +public class TermSetController extends BaseController { + + @Autowired + TermSetService termSetService; + + @ApiOperation(value = "装置cma控制", notes = "装置cma控制", httpMethod = "POST") + @ApiResponses({@ApiResponse(code = 200, message = "请求成功"), @ApiResponse(code = 400, message = "请求参数没填好"), @ApiResponse(code = 404, message = "请求路径没有或页面跳转路径不对")}) + @RequestMapping("/alarmMark") + @Log(title = "装置cma控制", type = "查询") + public ResponseReult alarmMark(@RequestBody @Validated TerminalIdVo vo) { + ServiceBody serviceBody = termSetService.alarmMark(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/main/java/com/shxy/xymanager_admin/controller/TerminalController.java b/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/TerminalController.java index 1162639..a2ccb0c 100644 --- a/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/TerminalController.java +++ b/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/TerminalController.java @@ -5,10 +5,7 @@ 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.TerminalListModel; -import com.shxy.xymanager_common.model.TerminalModel; -import com.shxy.xymanager_common.model.TerminalStatusGetModel; -import com.shxy.xymanager_common.model.TerminalUpdateModel; +import com.shxy.xymanager_common.model.*; import com.shxy.xymanager_common.vo.*; import com.shxy.xymanager_service.service.TerminalService; import io.swagger.annotations.Api; @@ -146,6 +143,19 @@ public class TerminalController extends BaseController { } } + @ApiOperation(value = "根据通道编号获取设备列表", notes = "根据通道编号获取设备列表", httpMethod = "POST") + @ApiResponses({@ApiResponse(code = 200, message = "请求成功"), @ApiResponse(code = 400, message = "请求参数没填好"), @ApiResponse(code = 404, message = "请求路径没有或页面跳转路径不对")}) + @RequestMapping("/getTermListByChannel") + @Log(title = "获取设备列表", type = "查询") + public ResponseReult getTermListByChannel(@RequestBody @Validated TerminalChannelIdVo vo) { + ServiceBody serviceBody = terminalService.getTermListByChannel(vo); + if (serviceBody.getCode() == ServiceStatus.SUCCESS) { + return ResponseReult.success(serviceBody.getData()); + } else { + return ResponseReult.error(serviceBody.getCode(), serviceBody.getMsg()); + } + } + } diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/DyLineAndTerminalDto.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/DyLineAndTerminalNoHeartDto.java similarity index 65% rename from xymanager_common/src/main/java/com/shxy/xymanager_common/dto/DyLineAndTerminalDto.java rename to xymanager_common/src/main/java/com/shxy/xymanager_common/dto/DyLineAndTerminalNoHeartDto.java index 955cf18..3328c0c 100644 --- a/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/DyLineAndTerminalDto.java +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/DyLineAndTerminalNoHeartDto.java @@ -5,7 +5,7 @@ import lombok.Data; import java.util.List; @Data -public class DyLineAndTerminalDto { +public class DyLineAndTerminalNoHeartDto { private Integer id; @@ -13,6 +13,6 @@ public class DyLineAndTerminalDto { private Integer dyValue; - private List list; + private List list; } diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/DyLineAndTerminalWithHeartDto.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/DyLineAndTerminalWithHeartDto.java new file mode 100644 index 0000000..1d43542 --- /dev/null +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/DyLineAndTerminalWithHeartDto.java @@ -0,0 +1,18 @@ +package com.shxy.xymanager_common.dto; + +import lombok.Data; + +import java.util.List; + +@Data +public class DyLineAndTerminalWithHeartDto { + + 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/LineAndTerminalDto.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/LineAndTerminalNoHeartDto.java similarity index 87% rename from xymanager_common/src/main/java/com/shxy/xymanager_common/dto/LineAndTerminalDto.java rename to xymanager_common/src/main/java/com/shxy/xymanager_common/dto/LineAndTerminalNoHeartDto.java index 9cba2b2..f81e201 100644 --- a/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/LineAndTerminalDto.java +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/LineAndTerminalNoHeartDto.java @@ -6,7 +6,7 @@ import lombok.Data; import java.util.List; @Data -public class LineAndTerminalDto { +public class LineAndTerminalNoHeartDto { private Integer id; diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/LineAndTerminalWithHeartDto.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/LineAndTerminalWithHeartDto.java new file mode 100644 index 0000000..2d98a41 --- /dev/null +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/LineAndTerminalWithHeartDto.java @@ -0,0 +1,22 @@ +package com.shxy.xymanager_common.dto; + +import com.shxy.xymanager_common.entity.Terminals; +import com.shxy.xymanager_common.entity.TerminalsWithHeart; +import lombok.Data; + +import java.util.List; + +@Data +public class LineAndTerminalWithHeartDto { + + private Integer id; + + private String name; + + private String bsManufacturer; + + private Integer dyLevel; + + private List list; + +} diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/entity/Terminals.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/entity/Terminals.java index 07f98c1..d7045c8 100644 --- a/xymanager_common/src/main/java/com/shxy/xymanager_common/entity/Terminals.java +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/entity/Terminals.java @@ -41,8 +41,6 @@ public class Terminals implements Serializable { private Date updateTime; - private Long lastheartbeat; - 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/TerminalsWithHeart.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/entity/TerminalsWithHeart.java new file mode 100644 index 0000000..1ba5094 --- /dev/null +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/entity/TerminalsWithHeart.java @@ -0,0 +1,48 @@ +package com.shxy.xymanager_common.entity; + +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +@Data +public class TerminalsWithHeart implements Serializable { + private Integer id; + + private Integer lineid; + + private Integer towerid; + + private String cmdid; + + private Short orgId; + + private String equipName; + + private String displayName; + + private String model; + + private String essentialInfoVersion; + + private Byte hasPan; + + private String bsManufacturer; + + private Date bsProductionDate; + + private String bsIdentifier; + + private Double latitude; + + private Double longitude; + + private Date createTime; + + private Date updateTime; + + private Long lastheartbeat; + + 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/DyLineAndTermModel.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/model/DyLineAndTermModel.java new file mode 100644 index 0000000..98e0874 --- /dev/null +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/model/DyLineAndTermModel.java @@ -0,0 +1,68 @@ +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 DyLineAndTermModel 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 displayName; + + } +} 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 index 8eecb87..de9287f 100644 --- 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 @@ -21,10 +21,10 @@ public class RelateTerminalListRuleIdVo { @NotNull(message = "装置列表不能缺少") @ApiModelProperty(value = "装置通道编号列表", example = "123455") - private List list; + private List list; @Data - public static class Item { + public static class Items { @NotNull(message = "装置编号") @ApiModelProperty(value = "装置编号", example = "123455") private Integer termid; diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/TerminalChannelIdVo.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/TerminalChannelIdVo.java new file mode 100644 index 0000000..fa15587 --- /dev/null +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/TerminalChannelIdVo.java @@ -0,0 +1,17 @@ +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 TerminalChannelIdVo { + @NotNull(message = "通道编号不能缺少") + @ApiModelProperty(value = "通道编号", example = "123") + private Integer id; +} diff --git a/xymanager_dao/src/main/java/com/shxy/xymanager_dao/dao/DyLevelDao.java b/xymanager_dao/src/main/java/com/shxy/xymanager_dao/dao/DyLevelDao.java index aab1ae1..a4f1977 100644 --- a/xymanager_dao/src/main/java/com/shxy/xymanager_dao/dao/DyLevelDao.java +++ b/xymanager_dao/src/main/java/com/shxy/xymanager_dao/dao/DyLevelDao.java @@ -1,6 +1,7 @@ package com.shxy.xymanager_dao.dao; -import com.shxy.xymanager_common.dto.DyLineAndTerminalDto; +import com.shxy.xymanager_common.dto.DyLineAndTerminalNoHeartDto; +import com.shxy.xymanager_common.dto.DyLineAndTerminalWithHeartDto; import com.shxy.xymanager_common.entity.DyLevel; import org.apache.ibatis.annotations.Param; @@ -17,7 +18,9 @@ public interface DyLevelDao { List selectAll(@Param("status") Integer status); - List selectTreeList(@Param("status") Integer status); + List selectTreeList(@Param("status") Integer status); + + List selectTreeListByChannelId(@Param("channelid") Integer channelid, @Param("status") Integer status); int updateByPrimaryKeySelective(DyLevel record); 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 75a2aca..e89e30a 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 @@ -20,7 +20,7 @@ public interface TerminalScheduleMapperDao { TerminalScheduleMapper selectByChannelId(@Param("channelid") Integer list, @Param("termid") Integer termid); - List selectByTerminalBean(@Param("list") List list); + List selectByTerminalBean(@Param("list") List list); int updateByPrimaryKeySelective(TerminalScheduleMapper record); diff --git a/xymanager_dao/src/main/resources/mappers/DyLevelDao.xml b/xymanager_dao/src/main/resources/mappers/DyLevelDao.xml index e64e785..fdbf6b2 100644 --- a/xymanager_dao/src/main/resources/mappers/DyLevelDao.xml +++ b/xymanager_dao/src/main/resources/mappers/DyLevelDao.xml @@ -10,16 +10,16 @@ - + - + - + @@ -31,6 +31,24 @@ + + + + + + + + + + + + + + + + + + id, name, dy_value, status, create_time, update_time @@ -69,6 +87,29 @@ left join terminal_status f on f.term_id = y.id) + + insert into dy_level (id, name, dy_value, status, create_time, update_time diff --git a/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/DyLevelServiceImpl.java b/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/DyLevelServiceImpl.java index be38406..3adf9ed 100644 --- a/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/DyLevelServiceImpl.java +++ b/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/DyLevelServiceImpl.java @@ -5,16 +5,15 @@ import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUnit; import com.shxy.xymanager_common.bean.ServiceBody; -import com.shxy.xymanager_common.dto.DyLineAndTerminalDto; +import com.shxy.xymanager_common.dto.DyLineAndTerminalWithHeartDto; import com.shxy.xymanager_common.entity.DyLevel; -import com.shxy.xymanager_common.entity.Lines; import com.shxy.xymanager_common.entity.Terminals; +import com.shxy.xymanager_common.entity.TerminalsWithHeart; import com.shxy.xymanager_common.enums.CommonStatus; import com.shxy.xymanager_common.exception.Asserts; import com.shxy.xymanager_common.model.DyLineTreeListModel; import com.shxy.xymanager_common.model.DyListModel; import com.shxy.xymanager_common.util.MyDateUtils; -import com.shxy.xymanager_common.vo.TerminalIdVo; import com.shxy.xymanager_common.vo.TestVo; import com.shxy.xymanager_dao.dao.DyLevelDao; import com.shxy.xymanager_service.service.DyLevelService; @@ -44,7 +43,7 @@ public class DyLevelServiceImpl implements DyLevelService { @Override public ServiceBody getdyTreeList() { DyLineTreeListModel model = new DyLineTreeListModel(); - List list = dyLevelDao.selectTreeList(CommonStatus.EFFECTIVE.value()); + List list = dyLevelDao.selectTreeList(CommonStatus.EFFECTIVE.value()); boolean empty = CollectionUtil.isEmpty(list); if (empty) { model.setList(new ArrayList<>()); @@ -54,9 +53,9 @@ public class DyLevelServiceImpl implements DyLevelService { for (int j = 0; j < beans.get(i).getList().size(); j++) { for (int k = 0; k < beans.get(i).getList().get(j).getList().size(); k++) { beans.get(i).getList().get(j).getList().get(k).setName(list.get(i).getList().get(j).getList().get(k).getDisplayName()); - Terminals terminals = list.get(i).getList().get(j).getList().get(k); - if (!BeanUtil.isEmpty(terminals)) { - Long lastheartbeat = terminals.getLastheartbeat(); + TerminalsWithHeart terminalsWithHeart = list.get(i).getList().get(j).getList().get(k); + if (!BeanUtil.isEmpty(terminalsWithHeart)) { + Long lastheartbeat = terminalsWithHeart.getLastheartbeat(); if (!BeanUtil.isEmpty(lastheartbeat)) { BigInteger time = MyDateUtils.TimeSecond2MillSecond(lastheartbeat); DateTime date = MyDateUtils.date(time.longValue()); diff --git a/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TermSetServiceImpl.java b/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TermSetServiceImpl.java new file mode 100644 index 0000000..ac9cfd3 --- /dev/null +++ b/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TermSetServiceImpl.java @@ -0,0 +1,41 @@ +package com.shxy.xymanager_service.impl; + +import com.shxy.xymanager_common.bean.ServiceBody; +import com.shxy.xymanager_common.constant.Constants; +import com.shxy.xymanager_common.exception.Asserts; +import com.shxy.xymanager_common.util.ProcessExecUtils; +import com.shxy.xymanager_common.vo.TerminalIdVo; +import com.shxy.xymanager_common.vo.TerminalReqPhotoTimeVo; +import com.shxy.xymanager_service.service.TermSetService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + + + +/** + * 装置通过Cma控制 + * + * @author 晶晶 + */ +@Slf4j +@Service +public class TermSetServiceImpl implements TermSetService { + + + @Override + public ServiceBody alarmMark(TerminalIdVo vo) { + + String cmd = "/usr/local/bin/xympadmn --server=127.0.0.1 --port=6891 --act=imgparams --cmdid="+vo.getCmdId()+ "\t" + "--reqid="+ Constants.REQUEST_ID+ "\t"+ "--clientid=10--flag=1 --rf=7"; + ProcessExecUtils.exec(cmd); + return Asserts.success(Integer.parseInt(Constants.REQUEST_ID.toString())); + } + + @Override + public ServiceBody selectPhotoTimeGet(TerminalIdVo vo) { + String cmd = "/usr/local/bin/xympadmn --server=127.0.0.1 --port=6891 --act=alarmMark --cmdid="+vo.getCmdId()+ "\t" + "--reqid="+Constants.REQUEST_ID+ "\t"+ "--clientid=10--flag=1 --rf=7"; + ProcessExecUtils.exec(cmd); + return Asserts.success(Integer.parseInt(Constants.REQUEST_ID.toString())); + } + +} + 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 14182b1..c505e77 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 @@ -464,7 +464,7 @@ public class TerminalPhotoServiceImpl implements TerminalPhotoService { @Override public ServiceBody selectPhotoTimeGet(TerminalReqPhotoTimeVo vo) { - String cmd = "/usr/local/bin/xympadmn --server=127.0.0.1 --port=6891 --act=imgparams --cmdid="+vo.getCmdId()+ "\t" + "--reqid="+Constants.REQUEST_ID+ "\t"+ "--clientid=10--flag=1 --rf=7"; + String cmd = "/usr/local/bin/xympadmn --server=127.0.0.1 --port=6891 --act=alarmMark --cmdid="+vo.getCmdId()+ "\t" + "--reqid="+Constants.REQUEST_ID+ "\t"+ "--clientid=10--flag=1 --rf=7"; ProcessExecUtils.exec(cmd); return Asserts.success(Integer.parseInt(Constants.REQUEST_ID.toString())); } 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 c1629c1..dfd1a2c 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 @@ -210,7 +210,7 @@ public class TerminalScheduleRuleServiceImpl implements TerminalScheduleRuleServ public ServiceBody relateSchelduleRule(RelateTerminalListRuleIdVo vo) { ArrayList list = new ArrayList<>(); - List termBeanList = vo.getList(); + List termBeanList = vo.getList(); Integer scheduleid = vo.getScheduleid(); List mappers = terminalScheduleMapperDao.selectByTerminalBean(termBeanList); @@ -218,7 +218,7 @@ public class TerminalScheduleRuleServiceImpl implements TerminalScheduleRuleServ if (!empty) { terminalScheduleMapperDao.deleteByChannelId(mappers); } - for (RelateTerminalListRuleIdVo.Item item : termBeanList) { + for (RelateTerminalListRuleIdVo.Items item : termBeanList) { for (Integer id : item.getChannelidlist()) { TerminalScheduleMapper record = new TerminalScheduleMapper(); record.setChannelId(id); diff --git a/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TerminalServiceImpl.java b/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TerminalServiceImpl.java index 2a5fd03..fa2313c 100644 --- a/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TerminalServiceImpl.java +++ b/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TerminalServiceImpl.java @@ -4,13 +4,12 @@ import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.copier.CopyOptions; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.date.DateTime; +import cn.hutool.core.date.DateUnit; import com.alibaba.fastjson.JSONObject; import com.github.pagehelper.PageInfo; import com.shxy.xymanager_common.bean.ServiceBody; import com.shxy.xymanager_common.constant.Constants; -import com.shxy.xymanager_common.dto.PhotoParamsDto; -import com.shxy.xymanager_common.dto.TerminalInfoDto; -import com.shxy.xymanager_common.dto.TerminalsAndLineAndChannelDto; +import com.shxy.xymanager_common.dto.*; import com.shxy.xymanager_common.entity.TerminalChannelMapper; import com.shxy.xymanager_common.entity.Terminals; import com.shxy.xymanager_common.enums.CommonStatus; @@ -58,6 +57,9 @@ public class TerminalServiceImpl implements TerminalService { @Autowired TerminalPhotoDao terminalPhotoDao; + @Autowired + DyLevelDao dyLevelDao; + /** * 获取所有设备列表 * @@ -203,10 +205,10 @@ public class TerminalServiceImpl implements TerminalService { public ServiceBody getTerminalStatus(Integer termId) { TerminalStatusGetModel model = new TerminalStatusGetModel(); String cmdId = terminalsDao.getCmdIdByTermId(termId); - String cmd = "/usr/local/bin/xympadmn --server=127.0.0.1 --act=runningstatus --clientid=10 --cmdid=" + cmdId+ "\t" + "--reqid=="+Constants.REQUEST_ID; + String cmd = "/usr/local/bin/xympadmn --server=127.0.0.1 --act=runningstatus --clientid=10 --cmdid=" + cmdId + "\t" + "--reqid==" + Constants.REQUEST_ID; ProcessExecUtils.exec(cmd); - /* TerminalModel model = new TerminalModel();*/ + /* TerminalModel model = new TerminalModel();*/ model.setRequestId(Constants.REQUEST_ID.addAndGet(1)); /* TerminalInfoDto dto = terminalsDao.getTerminalInfo(termId); if (null != dto) { @@ -224,13 +226,13 @@ public class TerminalServiceImpl implements TerminalService { public ServiceBody getLastedTerminalStatus(TerminalStatusVo vo) { String result = terminalPhotoDao.getRequestResult(vo.getRequestId()); TerminalModel model = new TerminalModel(); - if(StringUtils.isNotBlank(result)) { + if (StringUtils.isNotBlank(result)) { JSONObject resultObj = JSONObject.parseObject(result); model = JSONObject.parseObject(resultObj.get("groupData").toString(), TerminalModel.class); model.setIsNew(true); - }else{ + } else { TerminalInfoDto dto = terminalsDao.getTerminalInfo(vo.getTermId()); - if(dto!=null) { + if (dto != null) { BeanUtils.copyProperties(dto, model); } model.setWsUpdateTime(MyDateUtils.TimeSecond2MillSecond(dto.getWsUpdateTime().longValue())); @@ -241,22 +243,40 @@ public class TerminalServiceImpl implements TerminalService { @Override public ServiceBody updateTerminalId(TerminalIdUpdateVo vo) { TerminalUpdateModel model = new TerminalUpdateModel(); - String cmd = "/usr/local/bin/xympadmn --server=127.0.0.1 --act=termid --cmdid="+vo.getCmdId()+"\t"+"--reqid="+ Constants.REQUEST_ID +"\t"+"--newcmdid="+vo.getNewCmdId()+"\t"+"--newcmdid="+vo.getNewCmdId(); + String cmd = "/usr/local/bin/xympadmn --server=127.0.0.1 --act=termid --cmdid=" + vo.getCmdId() + "\t" + "--reqid=" + Constants.REQUEST_ID + "\t" + "--newcmdid=" + vo.getNewCmdId() + "\t" + "--newcmdid=" + vo.getNewCmdId(); Integer retCode = ProcessExecUtils.exec(cmd); model.setRequestId(Integer.parseInt(Constants.REQUEST_ID.toString())); model.setTermId(vo.getTermId()); Constants.REQUEST_ID.addAndGet(1); - if(retCode==0){ + if (retCode == 0) { int result = terminalsDao.updateCmd(vo); - if(result>0) { + if (result > 0) { return Asserts.success(model); } } - return Asserts.error("装置ID修改失败"); + return Asserts.error("装置ID修改失败"); } - - + /** + * 根据通道编号获取装置列表 + * + * @param vo + * @return + */ + @Override + public ServiceBody getTermListByChannel(TerminalChannelIdVo vo) { + Integer id = vo.getId(); + DyLineAndTermModel model = new DyLineAndTermModel(); + List list = dyLevelDao.selectTreeListByChannelId(id,CommonStatus.EFFECTIVE.value()); + boolean empty = CollectionUtil.isEmpty(list); + if (empty) { + model.setList(new ArrayList<>()); + } else { + List beans = BeanUtil.copyToList(list, DyLineAndTermModel.DyListBean.class,CopyOptions.create().ignoreCase()); + model.setList(beans); + } + return Asserts.success(model); + } } diff --git a/xymanager_service/src/main/java/com/shxy/xymanager_service/service/TermSetService.java b/xymanager_service/src/main/java/com/shxy/xymanager_service/service/TermSetService.java new file mode 100644 index 0000000..42bab6a --- /dev/null +++ b/xymanager_service/src/main/java/com/shxy/xymanager_service/service/TermSetService.java @@ -0,0 +1,27 @@ +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.TerminalAllChannelListModel; +import com.shxy.xymanager_common.model.TerminalChannelListModel; +import com.shxy.xymanager_common.model.TerminalChannelMapperListModel; +import com.shxy.xymanager_common.vo.*; + +/** + * 装置控制接口 + * + * @author 晶晶 + */ +public interface TermSetService { + + + /** + * 声光报警 + * + * @return + */ + ServiceBody alarmMark(TerminalIdVo vo); + + ServiceBody selectPhotoTimeGet(TerminalIdVo vo); + +} diff --git a/xymanager_service/src/main/java/com/shxy/xymanager_service/service/TerminalService.java b/xymanager_service/src/main/java/com/shxy/xymanager_service/service/TerminalService.java index f52ee29..b0d06b7 100644 --- a/xymanager_service/src/main/java/com/shxy/xymanager_service/service/TerminalService.java +++ b/xymanager_service/src/main/java/com/shxy/xymanager_service/service/TerminalService.java @@ -1,10 +1,7 @@ package com.shxy.xymanager_service.service; import com.shxy.xymanager_common.bean.ServiceBody; -import com.shxy.xymanager_common.model.TerminalListModel; -import com.shxy.xymanager_common.model.TerminalModel; -import com.shxy.xymanager_common.model.TerminalStatusGetModel; -import com.shxy.xymanager_common.model.TerminalUpdateModel; +import com.shxy.xymanager_common.model.*; import com.shxy.xymanager_common.vo.*; /** @@ -64,5 +61,13 @@ public interface TerminalService { */ ServiceBody updateTerminalId(TerminalIdUpdateVo vo); + /** + * 根据通道编号获取设备列表 + * + * @param vo + * @return + */ + ServiceBody getTermListByChannel(TerminalChannelIdVo vo); + }