From a534352e013b8c501daf032c5a8d25ad005ffdc3 Mon Sep 17 00:00:00 2001 From: liuguijing <123456> Date: Mon, 11 Dec 2023 01:40:00 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=B6=E8=97=8F=E5=A4=B9=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/FavorController.java | 4 +- .../controller/TerminalController.java | 12 ++++++ .../dto/TerminalsWithHeart.java | 2 + .../xymanager_common/entity/TerminalFavs.java | 17 +++++++++ .../entity/TerminalFavs.java.1 | 38 +++++++++++++++++++ .../model/DyLineTreeListModel.java | 6 +++ .../com/shxy/xymanager_common/vo/FavorVo.java | 15 ++------ .../xymanager_dao/dao/TerminalFavsDao.java | 16 ++++++++ .../shxy/xymanager_dao/dao/TerminalsDao.java | 2 + .../src/main/resources/generatorConfig.xml | 14 +++++-- .../src/main/resources/mappers/DyLevelDao.xml | 2 + .../resources/mappers/TerminalFavsDao.xml | 34 +++++++++++++++++ .../main/resources/mappers/TerminalsDao.xml | 9 +++++ .../impl/DyLevelServiceImpl.java | 12 ++++-- .../impl/FavorServiceImpl.java | 34 +++++++++++++++-- .../impl/TerminalServiceImpl.java | 14 +++++++ .../service/FavorService.java | 2 +- .../service/TerminalService.java | 6 +++ 18 files changed, 214 insertions(+), 25 deletions(-) create mode 100644 xymanager_common/src/main/java/com/shxy/xymanager_common/entity/TerminalFavs.java create mode 100644 xymanager_common/src/main/java/com/shxy/xymanager_common/entity/TerminalFavs.java.1 create mode 100644 xymanager_dao/src/main/java/com/shxy/xymanager_dao/dao/TerminalFavsDao.java create mode 100644 xymanager_dao/src/main/resources/mappers/TerminalFavsDao.xml diff --git a/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/FavorController.java b/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/FavorController.java index 7a9bf1e..dab4fc1 100644 --- a/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/FavorController.java +++ b/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/FavorController.java @@ -39,8 +39,8 @@ public class FavorController extends BaseController { @ApiResponses({@ApiResponse(code = 200, message = "请求成功"), @ApiResponse(code = 400, message = "请求参数没填好"), @ApiResponse(code = 404, message = "请求路径没有或页面跳转路径不对")}) @RequestMapping("/addFavorList") @Log(title = "新增收藏夹接口", type = "新增") - public ResponseReult addFavorList( @RequestBody FavorVo vo) { - ServiceBody serviceBody = favorService.addFavorList(vo); + public ResponseReult addFavorList( @RequestBody FavorVo vo) { + ServiceBody serviceBody = favorService.addFavorList(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/TerminalController.java b/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/TerminalController.java index 30ed9a9..8f6ceda 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 @@ -276,4 +276,16 @@ public class TerminalController extends BaseController { EasyExcelUtil.createExcel(response,"设备在线表",serviceBody.getData(), TerminalAndLastPicListExcelModel.class); } + @ApiOperation(value = "新增收藏夹接口", notes = "新增收藏夹接口", httpMethod = "POST") + @ApiResponses({@ApiResponse(code = 200, message = "请求成功"), @ApiResponse(code = 400, message = "请求参数没填好"), @ApiResponse(code = 404, message = "请求路径没有或页面跳转路径不对")}) + @RequestMapping("/addFavorList") + @Log(title = "新增收藏夹接口", type = "新增") + public ResponseReult addFavorList( @RequestBody FavorVo vo) { + ServiceBody serviceBody = terminalService.addFavorList(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/TerminalsWithHeart.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/TerminalsWithHeart.java index 864e87d..b9e0bb0 100644 --- a/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/TerminalsWithHeart.java +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/TerminalsWithHeart.java @@ -50,6 +50,8 @@ public class TerminalsWithHeart implements Serializable { private Integer protocol; + private Integer isfavor; + private static final long serialVersionUID = 1L; diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/entity/TerminalFavs.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/entity/TerminalFavs.java new file mode 100644 index 0000000..ba4523b --- /dev/null +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/entity/TerminalFavs.java @@ -0,0 +1,17 @@ +package com.shxy.xymanager_common.entity; + +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +@Data +public class TerminalFavs implements Serializable { + + private Integer termId; + + private Date createTime; + + 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/TerminalFavs.java.1 b/xymanager_common/src/main/java/com/shxy/xymanager_common/entity/TerminalFavs.java.1 new file mode 100644 index 0000000..f3a3327 --- /dev/null +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/entity/TerminalFavs.java.1 @@ -0,0 +1,38 @@ +package com.shxy.xymanager_common.entity; + +import java.io.Serializable; +import java.util.Date; + +public class TerminalFavs implements Serializable { + private Integer userId; + + private Integer termId; + + private Date createTime; + + private static final long serialVersionUID = 1L; + + public Integer getUserId() { + return userId; + } + + public void setUserId(Integer userId) { + this.userId = userId; + } + + public Integer getTermId() { + return termId; + } + + public void setTermId(Integer termId) { + this.termId = termId; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } +} \ No newline at end of file diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/model/DyLineTreeListModel.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/model/DyLineTreeListModel.java index a01cdd6..157faeb 100644 --- a/xymanager_common/src/main/java/com/shxy/xymanager_common/model/DyLineTreeListModel.java +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/model/DyLineTreeListModel.java @@ -23,6 +23,9 @@ public class DyLineTreeListModel implements Serializable { @ApiModelProperty(value = "电压列表", example = "[]") private List list; + @ApiModelProperty(value = "收藏列表", example = "[]") + private List favorlist; + @Data public static class DyListBean { @ApiModelProperty(value = "电压编号", example = "123456") @@ -85,5 +88,8 @@ public class DyLineTreeListModel implements Serializable { @ApiModelProperty(value = "在线状态", example = "0--掉线1--在线") private Integer onlinestatus; + @ApiModelProperty(value = "是否收藏", example = "0--未收藏 1--已收藏") + private Integer isfavor; + } } diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/FavorVo.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/FavorVo.java index c553bdd..99c2fd7 100644 --- a/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/FavorVo.java +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/FavorVo.java @@ -15,18 +15,9 @@ public class FavorVo { @NotEmpty(message = "不能传入空值") @ApiModelProperty(value = "收藏对象数组", required = true, example = "A0001") - private List list; - - @Data - public static class TowerItem { - @ApiModelProperty(value = "装置编号", example = "123456") - @NotNull(message = "装置编号不能缺少") - private List termId; - - @ApiModelProperty(value = "是否收藏", example = "0--删除收藏 1--收藏") - private Integer type; - - } + private List list; + @ApiModelProperty(value = "是否收藏", example = "0--删除收藏 1--收藏") + private Integer type; } diff --git a/xymanager_dao/src/main/java/com/shxy/xymanager_dao/dao/TerminalFavsDao.java b/xymanager_dao/src/main/java/com/shxy/xymanager_dao/dao/TerminalFavsDao.java new file mode 100644 index 0000000..d21a9e7 --- /dev/null +++ b/xymanager_dao/src/main/java/com/shxy/xymanager_dao/dao/TerminalFavsDao.java @@ -0,0 +1,16 @@ +package com.shxy.xymanager_dao.dao; + +import com.shxy.xymanager_common.entity.TerminalFavs; +import org.apache.ibatis.annotations.Param; + +import java.util.Date; +import java.util.List; + +public interface TerminalFavsDao { + + List selectList(); + + int insertOrUpdateList(@Param("list") List list,@Param("createat") Date createat); + + int deleteList(@Param("list") List list); +} \ No newline at end of file diff --git a/xymanager_dao/src/main/java/com/shxy/xymanager_dao/dao/TerminalsDao.java b/xymanager_dao/src/main/java/com/shxy/xymanager_dao/dao/TerminalsDao.java index 53690a9..88591c1 100644 --- a/xymanager_dao/src/main/java/com/shxy/xymanager_dao/dao/TerminalsDao.java +++ b/xymanager_dao/src/main/java/com/shxy/xymanager_dao/dao/TerminalsDao.java @@ -48,4 +48,6 @@ public interface TerminalsDao { int updateCmd(TerminalIdUpdateVo vo); + int updateFavor(@Param("list") List list ,@Param("status") Integer status); + } \ No newline at end of file diff --git a/xymanager_dao/src/main/resources/generatorConfig.xml b/xymanager_dao/src/main/resources/generatorConfig.xml index b08d042..bdeabdc 100644 --- a/xymanager_dao/src/main/resources/generatorConfig.xml +++ b/xymanager_dao/src/main/resources/generatorConfig.xml @@ -245,9 +245,17 @@ - + + + + + + + +
diff --git a/xymanager_dao/src/main/resources/mappers/DyLevelDao.xml b/xymanager_dao/src/main/resources/mappers/DyLevelDao.xml index 9fc2f08..8d216f3 100644 --- a/xymanager_dao/src/main/resources/mappers/DyLevelDao.xml +++ b/xymanager_dao/src/main/resources/mappers/DyLevelDao.xml @@ -31,6 +31,7 @@ + @@ -195,6 +196,7 @@ d.model as model, d.protocol as protocol, d.has_pan as has_pan, + d.isfavor as isfavor, e.last_heartbeat as last_heartbeat from ((((dy_level a left join `lines` b on a.id = b.dy_level_id ) left join towers c on b.id = c.line_id ) diff --git a/xymanager_dao/src/main/resources/mappers/TerminalFavsDao.xml b/xymanager_dao/src/main/resources/mappers/TerminalFavsDao.xml new file mode 100644 index 0000000..b948a3a --- /dev/null +++ b/xymanager_dao/src/main/resources/mappers/TerminalFavsDao.xml @@ -0,0 +1,34 @@ + + + + + + + + + + + + insert into terminal_favs + (term_id,create_time) + VALUES + + (#{item},#{createat}}) + + ON DUPLICATE KEY UPDATE + term_id = values(term_id) + + + + delete from schedule_details + where term_id in + + #{item} + + + + \ No newline at end of file diff --git a/xymanager_dao/src/main/resources/mappers/TerminalsDao.xml b/xymanager_dao/src/main/resources/mappers/TerminalsDao.xml index 5d564e2..69ad604 100644 --- a/xymanager_dao/src/main/resources/mappers/TerminalsDao.xml +++ b/xymanager_dao/src/main/resources/mappers/TerminalsDao.xml @@ -648,4 +648,13 @@ set cmdid = #{newCmdId,jdbcType=VARCHAR} where cmdid = #{cmdId,jdbcType=VARCHAR} + + + update terminals + set isfavor = #{status} + where id in + + #{item} + + \ No newline at end of file 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 3f13108..bfdb954 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 @@ -16,10 +16,7 @@ import com.shxy.xymanager_common.page.PageUtils; import com.shxy.xymanager_common.util.MyDateUtils; import com.shxy.xymanager_common.util.xinyin.TerminalUtils; import com.shxy.xymanager_common.vo.LastTowerVo; -import com.shxy.xymanager_dao.dao.DyLevelDao; -import com.shxy.xymanager_dao.dao.TerminalChannelMapperDao; -import com.shxy.xymanager_dao.dao.TerminalImgAlarmsDao; -import com.shxy.xymanager_dao.dao.TerminalPhotoDao; +import com.shxy.xymanager_dao.dao.*; import com.shxy.xymanager_service.service.CacheService; import com.shxy.xymanager_service.service.DyLevelService; import lombok.extern.slf4j.Slf4j; @@ -62,6 +59,7 @@ public class DyLevelServiceImpl implements DyLevelService { @Override public ServiceBody getdyTreeList(Integer type) { DyLineTreeListModel model = new DyLineTreeListModel(); + ArrayList favorList = new ArrayList<>(); List list = dyLevelDao.selectTreeList(CommonStatus.EFFECTIVE.value()); boolean empty = CollectionUtil.isEmpty(list); if (empty) { @@ -106,6 +104,8 @@ public class DyLevelServiceImpl implements DyLevelService { bean.setModel(terminalsWithHeart.getModel()); bean.setName(terminalsWithHeart.getName()); bean.setTowerid(terminalsWithHeart.getTowerid()); + Integer isfavor = terminalsWithHeart.getIsfavor(); + bean.setIsfavor(isfavor); BigInteger lastheartbeat = terminalsWithHeart.getLastheartbeat(); boolean b = TerminalUtils.judgeTerminalStatus(lastheartbeat); if (type == null || type.intValue() == -1) {//查询全部 @@ -133,6 +133,9 @@ public class DyLevelServiceImpl implements DyLevelService { bean.setOnlinestatus(CommonStatus.DELETE.value()); } } + if (isfavor!=null && isfavor.intValue() == CommonStatus.EFFECTIVE.value()) { + favorList.add(bean); + } } lineBean.setList(beanlist); lineBeans.add(lineBean); @@ -143,6 +146,7 @@ public class DyLevelServiceImpl implements DyLevelService { model.setOnlineNum(onlinenum); model.setTotalNum(totalnum); model.setList(dyListBeans); + model.setFavorlist(favorList); } return Asserts.success(model); } diff --git a/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/FavorServiceImpl.java b/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/FavorServiceImpl.java index 9dba48a..ccec1a1 100644 --- a/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/FavorServiceImpl.java +++ b/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/FavorServiceImpl.java @@ -1,11 +1,22 @@ package com.shxy.xymanager_service.impl; +import cn.hutool.core.collection.CollectionUtil; import com.shxy.xymanager_common.bean.ServiceBody; +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.vo.FavorVo; +import com.shxy.xymanager_dao.dao.TerminalFavsDao; +import com.shxy.xymanager_dao.dao.TerminalsDao; import com.shxy.xymanager_service.service.FavorService; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.Assert; + +import java.util.Date; +import java.util.List; /** * 收藏夹实现层 @@ -15,10 +26,27 @@ import org.springframework.stereotype.Service; public class FavorServiceImpl implements FavorService { - @Override - public ServiceBody addFavorList(FavorVo vo) { + @Autowired + TerminalFavsDao terminalFavsDao; - return null; + @Autowired + TerminalsDao terminalsDao; + + @Override + @Transactional + public ServiceBody addFavorList(FavorVo vo) { + Integer type = vo.getType(); + List list = vo.getList(); + if (CollectionUtil.isEmpty(list)) { + if (type == null || type.intValue() == 0) { + int i = terminalFavsDao.deleteList(list); + terminalsDao.updateFavor(list, CommonStatus.DELETE.value()); + } else { + int i = terminalFavsDao.insertOrUpdateList(list,new Date()); + terminalsDao.updateFavor(list, CommonStatus.EFFECTIVE.value()); + } + } + return Asserts.success("修改成功"); } } 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 1b1d431..ee86c4e 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 @@ -681,6 +681,20 @@ public class TerminalServiceImpl implements TerminalService { return Asserts.success(modellist); } + @Override + public ServiceBody addFavorList(FavorVo vo) { + Integer type = vo.getType(); + List list = vo.getList(); + if (CollectionUtil.isEmpty(list)) { + if (type == null || type.intValue() == 0) { + terminalsDao.updateFavor(list, CommonStatus.DELETE.value()); + } else { + terminalsDao.updateFavor(list, CommonStatus.EFFECTIVE.value()); + } + } + return Asserts.success("修改成功"); + } + } diff --git a/xymanager_service/src/main/java/com/shxy/xymanager_service/service/FavorService.java b/xymanager_service/src/main/java/com/shxy/xymanager_service/service/FavorService.java index ef88fe0..2afd69a 100644 --- a/xymanager_service/src/main/java/com/shxy/xymanager_service/service/FavorService.java +++ b/xymanager_service/src/main/java/com/shxy/xymanager_service/service/FavorService.java @@ -18,7 +18,7 @@ public interface FavorService { * * @return */ - ServiceBody addFavorList(FavorVo vo); + ServiceBody addFavorList(FavorVo 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 a50357a..ae2fe70 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 @@ -130,4 +130,10 @@ public interface TerminalService { */ ServiceBody> getOnlineTerminalList(Integer type); + /** + * 新增收藏夹功能 + * @param vo + * @return + */ + ServiceBody addFavorList(FavorVo vo); }