From 5328c044328a3491316e946c30b480cb70cdc21a Mon Sep 17 00:00:00 2001 From: liyongde <1419499670@qq.com> Date: Wed, 15 Mar 2023 15:39:56 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=A1=E6=81=AF=E9=80=9A=E7=9F=A5=E5=89=8D?= =?UTF-8?q?=E7=AB=AF=E3=80=81=E5=90=8E=E7=AB=AF=E4=BB=A3=E7=A0=81=E3=80=81?= =?UTF-8?q?websocket(el-admin=E7=89=88=E6=9C=AC)=E3=80=81=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0sys=5Fdict=E5=88=B0excel?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/nl/common/websocket/MsgType.java | 31 ++ .../org/nl/common/websocket/SocketMsg.java | 18 ++ .../nl/common/websocket/WebSocketServer.java | 138 +++++++++ .../org/nl/config/mybatis/CodeGenerator.java | 100 +++++++ .../controller/notice/NoticeController.java | 104 +++++++ .../system/service/notice/NoticeService.java | 103 +++++++ .../system/service/notice/dto/NoticeDto.java | 43 +++ .../notice/impl/NoticeServiceImpl.java | 217 ++++++++++++++ .../service/notice/wql/QUERY_NOTICE.wql | 64 +++++ .../src/main/java/org/nl/wms/pdm/wql/pdm.xls | Bin 203776 -> 211968 bytes mes/qd/package.json | 3 +- mes/qd/src/layout/components/Navbar.vue | 6 + mes/qd/src/main.js | 3 + mes/qd/src/views/system/notice/NoticeIcon.vue | 125 ++++++++ .../views/system/notice/NoticeIconReader.vue | 122 ++++++++ mes/qd/src/views/system/notice/api/notice.js | 94 ++++++ .../views/system/notice/code/VueBaseCode.js | 15 + mes/qd/src/views/system/notice/index.vue | 270 ++++++++++++++++++ 18 files changed, 1455 insertions(+), 1 deletion(-) create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/common/websocket/MsgType.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/common/websocket/SocketMsg.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/common/websocket/WebSocketServer.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/config/mybatis/CodeGenerator.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/system/controller/notice/NoticeController.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/system/service/notice/NoticeService.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/system/service/notice/dto/NoticeDto.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/system/service/notice/impl/NoticeServiceImpl.java create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/system/service/notice/wql/QUERY_NOTICE.wql create mode 100644 mes/qd/src/views/system/notice/NoticeIcon.vue create mode 100644 mes/qd/src/views/system/notice/NoticeIconReader.vue create mode 100644 mes/qd/src/views/system/notice/api/notice.js create mode 100644 mes/qd/src/views/system/notice/code/VueBaseCode.js create mode 100644 mes/qd/src/views/system/notice/index.vue diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/common/websocket/MsgType.java b/mes/hd/nladmin-system/src/main/java/org/nl/common/websocket/MsgType.java new file mode 100644 index 00000000..bf431697 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/common/websocket/MsgType.java @@ -0,0 +1,31 @@ +package org.nl.common.websocket; +/* + * Copyright 2019-2020 Zheng Jie + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @author ZhangHouYing + * @date 2019-08-10 9:56 + */ +public enum MsgType { + /** 连接 */ + CONNECT, + /** 关闭 */ + CLOSE, + /** 信息 */ + INFO, + /** 错误 */ + ERROR +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/common/websocket/SocketMsg.java b/mes/hd/nladmin-system/src/main/java/org/nl/common/websocket/SocketMsg.java new file mode 100644 index 00000000..1b9ad946 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/common/websocket/SocketMsg.java @@ -0,0 +1,18 @@ +package org.nl.common.websocket; + +import lombok.Data; + +/** + * @author ZhangHouYing + * @date 2019-08-10 9:55 + */ +@Data +public class SocketMsg { + private Object msg; + private MsgType msgType; + + public SocketMsg(Object msg, MsgType msgType) { + this.msg = msg; + this.msgType = msgType; + } +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/common/websocket/WebSocketServer.java b/mes/hd/nladmin-system/src/main/java/org/nl/common/websocket/WebSocketServer.java new file mode 100644 index 00000000..bd759cc3 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/common/websocket/WebSocketServer.java @@ -0,0 +1,138 @@ +/* + * Copyright 2019-2020 Zheng Jie + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.nl.common.websocket; +import com.alibaba.fastjson.JSONObject; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Component; + +import javax.websocket.*; +import javax.websocket.server.PathParam; +import javax.websocket.server.ServerEndpoint; +import java.io.IOException; +import java.util.Objects; +import java.util.concurrent.CopyOnWriteArraySet; +/** + * @author ZhangHouYing + * @date 2019-08-10 15:46 + */ +@ServerEndpoint("/webSocket/{sid}") +@Slf4j +@Component +public class WebSocketServer { + + /** + * concurrent包的线程安全Set,用来存放每个客户端对应的MyWebSocket对象。 + */ + private static CopyOnWriteArraySet webSocketSet = new CopyOnWriteArraySet(); + + /** + * 与某个客户端的连接会话,需要通过它来给客户端发送数据 + */ + private Session session; + + /** + * 接收sid + */ + private String sid=""; + /** + * 连接建立成功调用的方法 + * */ + @OnOpen + public void onOpen(Session session,@PathParam("sid") String sid) { + this.session = session; + //如果存在就先删除一个,防止重复推送消息 + for (WebSocketServer webSocket:webSocketSet) { + if (webSocket.sid.equals(sid)) { + webSocketSet.remove(webSocket); + } + } + webSocketSet.add(this); + this.sid=sid; + } + + /** + * 连接关闭调用的方法 + */ + @OnClose + public void onClose() { + webSocketSet.remove(this); + } + + /** + * 收到客户端消息后调用的方法 + * @param message 客户端发送过来的消息*/ + @OnMessage + public void onMessage(String message, Session session) { + log.info("收到来"+sid+"的信息:"+message); + //群发消息 + for (WebSocketServer item : webSocketSet) { + try { + item.sendMessage(message); + } catch (IOException e) { + log.error(e.getMessage(),e); + } + } + } + + @OnError + public void onError(Session session, Throwable error) { + log.error("发生错误"); + error.printStackTrace(); + } + /** + * 实现服务器主动推送 + */ + private void sendMessage(String message) throws IOException { + this.session.getBasicRemote().sendText(message); + } + + + /** + * 群发自定义消息 + * */ + public static void sendInfo(SocketMsg socketMsg,@PathParam("sid") String sid) throws IOException { + String message = JSONObject.toJSONString(socketMsg); + log.info("推送消息到"+sid+",推送内容:"+message); + for (WebSocketServer item : webSocketSet) { + try { + //这里可以设定只推送给这个sid的,为null则全部推送 + if(sid==null) { + item.sendMessage(message); + }else if(item.sid.equals(sid)){ + item.sendMessage(message); + } + } catch (IOException ignored) { } + } + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + WebSocketServer that = (WebSocketServer) o; + return Objects.equals(session, that.session) && + Objects.equals(sid, that.sid); + } + + @Override + public int hashCode() { + return Objects.hash(session, sid); + } +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/config/mybatis/CodeGenerator.java b/mes/hd/nladmin-system/src/main/java/org/nl/config/mybatis/CodeGenerator.java new file mode 100644 index 00000000..521de5de --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/config/mybatis/CodeGenerator.java @@ -0,0 +1,100 @@ +package org.nl.config.mybatis; + +import com.baomidou.mybatisplus.core.exceptions.MybatisPlusException; +import com.baomidou.mybatisplus.generator.AutoGenerator; +import com.baomidou.mybatisplus.generator.InjectionConfig; +import com.baomidou.mybatisplus.generator.config.DataSourceConfig; +import com.baomidou.mybatisplus.generator.config.GlobalConfig; +import com.baomidou.mybatisplus.generator.config.PackageConfig; +import com.baomidou.mybatisplus.generator.config.StrategyConfig; +import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy; +import org.springframework.util.StringUtils; + +import java.util.Scanner; + +public class CodeGenerator { + + /** + *

+ * 读取控制台内容 + *

+ */ + public static String scanner(String tip) { + Scanner scanner = new Scanner(System.in); + StringBuilder help = new StringBuilder(); + help.append("请输入" + tip + ":"); + System.out.println(help.toString()); + if (scanner.hasNext()) { + String ipt = scanner.next(); + if (!StringUtils.isEmpty(ipt)) { + return ipt; + } + } + throw new MybatisPlusException("请输入正确的" + tip + "!"); + } + + + public static void main(String[] args) { + String menusName = scanner("请输入对应菜单名称"); + String moduleName = scanner("请输入模块名称"); + // Mybatis代码生成器 + AutoGenerator mpg = new AutoGenerator(); + + // 全局配置 + GlobalConfig gc = new GlobalConfig(); + // 默认不覆盖 + gc.setFileOverride(false); + String projectPath = System.getProperty("user.dir"); + gc.setOutputDir(projectPath + "/src/main/java/"); + gc.setAuthor("generator"); + gc.setOpen(false); +// gc.setSwagger2(true); + gc.setEntityName("%s"); + gc.setServiceName("I%sService"); + gc.setServiceImplName("%sServiceImpl"); + mpg.setGlobalConfig(gc); + // 数据源配置 + DataSourceConfig dsc = new DataSourceConfig(); + dsc.setUrl("jdbc:mysql://192.168.81.252:3306/hl_one_mes?setUnicode=true&characterEncoding=utf8"); + dsc.setDriverName("com.mysql.cj.jdbc.Driver"); + dsc.setUsername("root"); + dsc.setPassword("Root.123456"); + mpg.setDataSource(dsc); + // 包配置 + PackageConfig pc = new PackageConfig(); +// pc.setModuleName(""); + pc.setParent("org.nl."+menusName); + pc.setController("controller." + moduleName); + pc.setMapper("service."+moduleName+".dao.mapper"); + pc.setService("service." + moduleName); + pc.setServiceImpl("service." + moduleName + ".impl"); + pc.setEntity("service." + moduleName + ".dao"); + pc.setXml("service." + moduleName + ".dao.mapper"); + mpg.setPackageInfo(pc); +// // 自定义配置 + InjectionConfig cfg = new InjectionConfig() { + @Override + public void initMap() { + } + }; + mpg.setCfg(cfg); + // 策略配置 + StrategyConfig strategy = new StrategyConfig(); + strategy.setNaming(NamingStrategy.underline_to_camel); + strategy.setColumnNaming(NamingStrategy.underline_to_camel); +// strategy.setSuperEntityClass("你自己的父类实体,没有就不用设置!"); + strategy.setEntityLombokModel(true); + strategy.setRestControllerStyle(true); + // 公共父类 +// strategy.setSuperControllerClass("你自己的父类控制器,没有就不用设置!"); + // 写于父类中的公共字段 +// strategy.setSuperEntityColumns("id"); + strategy.setInclude(scanner("表名,多个英文逗号分割").split(",")); + strategy.setControllerMappingHyphenStyle(false); +// strategy.setTablePrefix("sys_"); + mpg.setStrategy(strategy); +// mpg.setTemplateEngine(new FreemarkerTemplateEngine()); + mpg.execute(); + } + +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/system/controller/notice/NoticeController.java b/mes/hd/nladmin-system/src/main/java/org/nl/system/controller/notice/NoticeController.java new file mode 100644 index 00000000..63961ac9 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/system/controller/notice/NoticeController.java @@ -0,0 +1,104 @@ +package org.nl.system.controller.notice; + +import com.alibaba.fastjson.JSONObject; +import org.nl.common.anno.Log; +import org.nl.system.service.notice.NoticeService; +import org.nl.system.service.notice.dto.NoticeDto; +import org.springframework.data.domain.Pageable; +import lombok.RequiredArgsConstructor; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; +import io.swagger.annotations.*; +import java.util.Map; +import lombok.extern.slf4j.Slf4j; + +/** + * @author lyd + * @date 2023-03-10 + **/ +@RestController +@RequiredArgsConstructor +@Api(tags = "消息通知管理") +@RequestMapping("/api/notice") +@Slf4j +public class NoticeController { + + private final NoticeService noticeService; + + @GetMapping + @Log("查询消息通知") + @ApiOperation("查询消息通知") + //@SaCheckPermission("@el.check('notice:list')") + public ResponseEntity query(@RequestParam Map whereJson, Pageable page){ + return new ResponseEntity<>(noticeService.queryAll(whereJson,page),HttpStatus.OK); + } + + @PostMapping + @Log("新增消息通知") + @ApiOperation("新增消息通知") + //@SaCheckPermission("@el.check('notice:add')") + public ResponseEntity create(@Validated @RequestBody NoticeDto dto){ + noticeService.create(dto); + return new ResponseEntity<>(HttpStatus.CREATED); + } + + @PutMapping + @Log("修改消息通知") + @ApiOperation("修改消息通知") + //@SaCheckPermission("@el.check('notice:edit')") + public ResponseEntity update(@Validated @RequestBody NoticeDto dto){ + noticeService.update(dto); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } + + @Log("删除消息通知") + @ApiOperation("删除消息通知") + //@SaCheckPermission("@el.check('notice:del')") + @DeleteMapping + public ResponseEntity delete(@RequestBody Long[] ids) { + noticeService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } + + @Log("获取未读的接收消息条数") + @GetMapping("/countByReceiveNotRead") + public ResponseEntity countByReceiveNotRead(){ + return new ResponseEntity<>(noticeService.countByReceiveNotRead(), HttpStatus.OK); + } + + @Log("接收消息分页") + @GetMapping("/pageByReceive") + public ResponseEntity pageByReceive(){ + return new ResponseEntity<>(noticeService.pageByReceive(), HttpStatus.OK); + } + + @Log("标为已读") + @PostMapping("/read") + public ResponseEntity read(@RequestBody String id){ + noticeService.read(id); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } + + @Log("消息详情") + @PostMapping("/findById") + public ResponseEntity findById(@RequestBody String id){ + return new ResponseEntity<>(noticeService.selectById(id), HttpStatus.OK); + } + + @Log("修改已处理") + @PostMapping("/deal") + public ResponseEntity deal(@RequestBody String id){ + noticeService.deal(id); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } + + @Log("批量已读") + @PostMapping("/changeRead") + @ApiOperation("批量已读") + public ResponseEntity changeRead(@RequestBody JSONObject jsonObject) { + noticeService.changeRead(jsonObject); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/system/service/notice/NoticeService.java b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/notice/NoticeService.java new file mode 100644 index 00000000..79b503ed --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/notice/NoticeService.java @@ -0,0 +1,103 @@ +package org.nl.system.service.notice; + +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import org.nl.system.service.notice.dto.NoticeDto; +import org.springframework.data.domain.Pageable; +import java.util.Map; +import java.util.List; + +/** + * @description 服务接口 + * @author lyd + * @date 2023-03-10 + **/ +public interface NoticeService { + + /** + * 查询数据分页 + * @param whereJson 条件 + * @param page 分页参数 + * @return Map + */ + Map queryAll(Map whereJson, Pageable page); + + /** + * 查询所有数据不分页 + * @param whereJson 条件参数 + * @return List + */ + List queryAll(Map whereJson); + + /** + * 根据ID查询 + * @param notice_id ID + * @return Notice + */ + NoticeDto findById(String notice_id); + + /** + * 根据编码查询 + * @param code code + * @return Notice + */ + NoticeDto findByCode(String code); + + + /** + * 创建 + * @param dto / + */ + void create(NoticeDto dto); + + /** + * 编辑 + * @param dto / + */ + void update(NoticeDto dto); + + /** + * 多选删除 + * @param ids / + */ + void deleteAll(Long[] ids); + + void createNotice(String msg, String title, String type); + + /** + * 获取未读的接收消息条数 + */ + Integer countByReceiveNotRead(); + + /** + * 获取未读数据 + * @return + */ + JSONArray pageByReceive(); + + /** + * 修改成已读 + * @param id + */ + void read(String id); + + /** + * 根据id获取消息 + * @param id + * @return + */ + JSONObject selectById(String id); + + /** + * 修改已处理 + * @param id + * @return + */ + void deal(String id); + + /** + * 批量已读 + * @param jsonObject + */ + void changeRead(JSONObject jsonObject); +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/system/service/notice/dto/NoticeDto.java b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/notice/dto/NoticeDto.java new file mode 100644 index 00000000..17933c7a --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/notice/dto/NoticeDto.java @@ -0,0 +1,43 @@ +package org.nl.system.service.notice.dto; + +import lombok.Builder; +import lombok.Data; +import java.io.Serializable; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; + +/** + * @description / + * @author lyd + * @date 2023-03-10 + **/ +@Data +@Builder +public class NoticeDto implements Serializable { + + /** 信息标识 */ + /** 防止精度丢失 */ + @JsonSerialize(using= ToStringSerializer.class) + private Long notice_id; + + /** 信息标题 */ + private String notice_title; + + /** 信息内容 */ + private String notice_content; + + /** 信息类型 */ + private String notice_type; + + /** 读取状态 */ + private String have_read; + + /** 读取时间 */ + private String read_time; + + /** 处理状态 */ + private String deal_status; + + /** 创建时间 */ + private String create_time; +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/system/service/notice/impl/NoticeServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/notice/impl/NoticeServiceImpl.java new file mode 100644 index 00000000..afe31c7e --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/notice/impl/NoticeServiceImpl.java @@ -0,0 +1,217 @@ +package org.nl.system.service.notice.impl; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.IdUtil; +import cn.hutool.core.util.ObjectUtil; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.nl.common.websocket.MsgType; +import org.nl.common.websocket.SocketMsg; +import org.nl.common.websocket.WebSocketServer; +import org.nl.modules.common.exception.BadRequestException; +import org.nl.modules.wql.WQL; +import org.nl.modules.wql.core.bean.WQLObject; +import org.nl.modules.wql.util.WqlUtil; +import org.nl.system.service.notice.NoticeService; +import org.nl.system.service.notice.dto.NoticeDto; +import org.springframework.data.domain.Pageable; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.io.IOException; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * @description 服务实现 + * @author lyd + * @date 2023-03-10 + **/ +@Service +@RequiredArgsConstructor +@Slf4j +public class NoticeServiceImpl implements NoticeService { + + private final WebSocketServer webSocketServer; + + @Override + public Map queryAll(Map whereJson, Pageable page){ +// WQLObject wo = WQLObject.getWQLObject("sys_notice"); +// ResultBean rb = wo.pagequery(WqlUtil.getHttpContext(page), "1=1", "have_read, create_time desc"); +// final JSONObject json = rb.pageResult(); +// return json; + Map param = new HashMap(); + param.put("flag", "1"); + param.put("notice_title", ObjectUtil.isNotEmpty(whereJson.get("notice_title"))?whereJson.get("notice_title"):""); + param.put("deal_status", ObjectUtil.isNotEmpty(whereJson.get("deal_status"))?whereJson.get("deal_status"):""); + param.put("notice_type", ObjectUtil.isNotEmpty(whereJson.get("notice_type"))?whereJson.get("notice_type"):""); + param.put("have_read", ObjectUtil.isNotEmpty(whereJson.get("have_read"))?whereJson.get("have_read"):""); + JSONObject queryNotice = WQL.getWO("QUERY_NOTICE").addParamMap(param).pageQuery(WqlUtil.getHttpContext(page), "have_read, create_time desc"); + return queryNotice; + } + + @Override + public List queryAll(Map whereJson){ + WQLObject wo = WQLObject.getWQLObject("sys_notice"); + JSONArray arr = wo.query().getResultJSONArray(0); + if (ObjectUtil.isNotEmpty(arr)) return arr.toJavaList(NoticeDto.class); + return null; + } + + @Override + public NoticeDto findById(String notice_id) { + WQLObject wo = WQLObject.getWQLObject("sys_notice"); + JSONObject json = wo.query("notice_id = '" + notice_id + "'").uniqueResult(0); + if (ObjectUtil.isNotEmpty(json)){ + return json.toJavaObject( NoticeDto.class); + } + return null; + } + + @Override + public NoticeDto findByCode(String code) { + WQLObject wo = WQLObject.getWQLObject("sys_notice"); + JSONObject json = wo.query("code ='" + code + "'").uniqueResult(0); + if (ObjectUtil.isNotEmpty(json)){ + return json.toJavaObject( NoticeDto.class); + } + return null; + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void create(NoticeDto dto) { + String now = DateUtil.now(); + + dto.setNotice_id(IdUtil.getSnowflake(1, 1).nextId()); + dto.setCreate_time(now); + + WQLObject wo = WQLObject.getWQLObject("sys_notice"); + JSONObject json = JSONObject.parseObject(JSON.toJSONString(dto)); + wo.insert(json); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(NoticeDto dto) { + NoticeDto entity = this.findById(String.valueOf(dto.getNotice_id())); + if (entity == null) throw new BadRequestException("被删除或无权限,操作失败!"); + + WQLObject wo = WQLObject.getWQLObject("sys_notice"); + JSONObject json = JSONObject.parseObject(JSON.toJSONString(dto)); + wo.update(json); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void deleteAll(Long[] ids) { + WQLObject wo = WQLObject.getWQLObject("sys_notice"); + for (Long notice_id: ids) { + wo.delete("notice_id = '" + notice_id + "'"); + } + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void createNotice(String msg, String title, String type) { + WQLObject sysNotice = WQLObject.getWQLObject("sys_notice"); + JSONObject jsonObject = sysNotice.query("notice_title = '" + title + "' AND have_read = '1'").uniqueResult(0); + if (ObjectUtil.isNotEmpty(jsonObject)) return; + NoticeDto noticeDto = NoticeDto.builder() + .notice_id(IdUtil.getSnowflake(1,1).nextId()) + .notice_type(type) + .notice_title(title) + .notice_content(msg) + .deal_status("1") + .have_read("1") + .create_time(DateUtil.now()) + .build(); + JSONObject json = JSONObject.parseObject(JSON.toJSONString(noticeDto)); + sysNotice.insert(json); + JSONObject res = new JSONObject(); + res.put("data", "notice_message_update"); + SocketMsg messageInfo = new SocketMsg(res, MsgType.INFO); + try { + webSocketServer.sendInfo(messageInfo, "messageInfo"); + } catch (IOException e) { + throw new BadRequestException("消息发送失败"); + } + } + + @Override + public Integer countByReceiveNotRead() { + WQLObject sysNotice = WQLObject.getWQLObject("sys_notice"); + JSONArray objects = sysNotice.query("have_read = '1'").getResultJSONArray(0); + return ObjectUtil.isEmpty(objects) ? 0 : objects.size(); + } + + @Override + public JSONArray pageByReceive() { + WQLObject sysNotice = WQLObject.getWQLObject("sys_notice"); + WQLObject dict = WQLObject.getWQLObject("sys_dict"); + JSONArray res = new JSONArray(); + JSONArray dicts = dict.query("code = 'notice_type'", "value").getResultJSONArray(0); + for (int i = 0; i < dicts.size(); i++) { + JSONObject dictsJSONObject = dicts.getJSONObject(i); + JSONArray resultJSONArray = sysNotice.query("notice_type = '" + + dictsJSONObject.getString("value") + "' AND have_read = '1' limit 0,3").getResultJSONArray(0); + res.add(resultJSONArray); + } + return res; + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void read(String id) { + WQLObject sysNotice = WQLObject.getWQLObject("sys_notice"); + JSONObject object = sysNotice.query("notice_id = '" + id + "'").uniqueResult(0); + if (ObjectUtil.isEmpty(object)) throw new BadRequestException("该信息不存在!"); + object.put("have_read", "2"); + object.put("read_time", DateUtil.now()); + sysNotice.update(object); + } + + @Override + public JSONObject selectById(String id) { + WQLObject sysNotice = WQLObject.getWQLObject("sys_notice"); + JSONObject object = sysNotice.query("notice_id = '" + id + "'").uniqueResult(0); + if (ObjectUtil.isEmpty(object)) throw new BadRequestException("该信息不存在!"); + return object; + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void deal(String id) { + WQLObject sysNotice = WQLObject.getWQLObject("sys_notice"); + JSONObject object = this.selectById(id); + if (ObjectUtil.isEmpty(object)) throw new BadRequestException("该信息不存在!"); + // 标记已修改 + object.put("deal_status", "2"); + // 判断是否读取 + if (object.getString("have_read").equals("1")) { + object.put("have_read", "2"); + object.put("read_time", DateUtil.now()); + } + sysNotice.update(object); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void changeRead(JSONObject jsonObject) { + WQLObject sysNotice = WQLObject.getWQLObject("sys_notice"); + JSONArray data = jsonObject.getJSONArray("data"); + String haveRead = jsonObject.getString("have_read"); + for (int i = 0; i < data.size(); i++) { + JSONObject jsonObject1 = data.getJSONObject(i); + if (jsonObject1.getString("have_read").equals(haveRead)) continue; + jsonObject1.put("have_read", haveRead); + jsonObject1.put("read_time", DateUtil.now()); + sysNotice.update(jsonObject1); + } + } + +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/system/service/notice/wql/QUERY_NOTICE.wql b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/notice/wql/QUERY_NOTICE.wql new file mode 100644 index 00000000..27c3d9b2 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/system/service/notice/wql/QUERY_NOTICE.wql @@ -0,0 +1,64 @@ +[交易说明] + 交易名: 通知查询 + 所属模块: + 功能简述: + 版权所有: + 表引用: + 版本经历: + +[数据库] + --指定数据库,为空采用默认值,默认为db.properties中列出的第一个库 + +[IO定义] + ################################################# + ## 表字段对应输入参数 + ################################################# + 输入.flag TYPEAS s_string + 输入.notice_title TYPEAS s_string + 输入.deal_status TYPEAS s_string + 输入.notice_type TYPEAS s_string + 输入.have_read TYPEAS s_string + +[临时表] + --这边列出来的临时表就会在运行期动态创建 + +[临时变量] + --所有中间过程变量均可在此处定义 + +[业务过程] + + ########################################## + # 1、输入输出检查 # + ########################################## + + + ########################################## + # 2、主过程前处理 # + ########################################## + + + ########################################## + # 3、业务主过程 # + ########################################## + + IF 输入.flag = "1" + PAGEQUERY + SELECT * + FROM sys_notice + WHERE + 1 = 1 + OPTION 输入.notice_title <> "" + notice_title like "%" 输入.notice_title "%" + ENDOPTION + OPTION 输入.deal_status <> "" + deal_status = 输入.deal_status + ENDOPTION + OPTION 输入.notice_type <> "" + notice_type = 输入.notice_type + ENDOPTION + OPTION 输入.have_read <> "" + have_read = 输入.have_read + ENDOPTION + ENDSELECT + ENDPAGEQUERY + ENDIF diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pdm/wql/pdm.xls b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pdm/wql/pdm.xls index 7b1e96fc78b400ef93eabbe56b8d99f77b659df5..f7301796c960388773e43976b6be78c2b4eb991c 100644 GIT binary patch literal 211968 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%0AJRePXQa6GbM=K2gd(7Wr`O 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%0Di5wPCi$P8_nlM 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ⅆ?%n|VeEh!V#K6ktF^l{p>$AT*6wXWa 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 MH@@Am{7?44pF@uz761SM diff --git a/mes/qd/package.json b/mes/qd/package.json index 5fce6884..8741287f 100644 --- a/mes/qd/package.json +++ b/mes/qd/package.json @@ -33,7 +33,6 @@ "url": "https://github.com/elunez/eladmin/issues" }, "dependencies": { - "vue-color": "^2.8.1", "@logicflow/core": "^1.1.22", "@logicflow/extension": "^1.1.22", "@riophae/vue-treeselect": "0.4.0", @@ -62,6 +61,8 @@ "screenfull": "4.2.0", "sortablejs": "1.8.4", "vue": "2.6.10", + "vue-bus": "^1.2.1", + "vue-color": "^2.8.1", "vue-count-to": "1.0.13", "vue-cropper": "0.4.9", "vue-echarts": "^5.0.0-beta.0", diff --git a/mes/qd/src/layout/components/Navbar.vue b/mes/qd/src/layout/components/Navbar.vue index f2345afd..1568d7d5 100644 --- a/mes/qd/src/layout/components/Navbar.vue +++ b/mes/qd/src/layout/components/Navbar.vue @@ -15,6 +15,8 @@ + + @@ -58,9 +60,13 @@ import Screenfull from '@/components/Screenfull' import SizeSelect from '@/components/SizeSelect' import Search from '@/components/HeaderSearch' import Avatar from '@/assets/images/avatar.png' +import NoticeIcon from "@/views/system/notice/NoticeIcon.vue"; +import NoticeIconReader from "@/views/system/notice/NoticeIconReader.vue"; export default { components: { + NoticeIconReader, + NoticeIcon, Breadcrumb, Hamburger, Screenfull, diff --git a/mes/qd/src/main.js b/mes/qd/src/main.js index efb26d34..ce679a61 100644 --- a/mes/qd/src/main.js +++ b/mes/qd/src/main.js @@ -40,6 +40,8 @@ import { getValueByCode } from '@/api/system/param' import 'jquery' +// 安装总线 +import VueBus from 'vue-bus' Vue.use(scroll) Vue.use(AFTableColumn) @@ -48,6 +50,7 @@ Vue.use(VueHighlightJS) Vue.use(mavonEditor) Vue.use(permission) Vue.use(dict) +Vue.use(VueBus) // 全局设置控件样式https://codeantenna.com/a/0IN5FMJk5h Element.Table.props.border = { type: Boolean, default: true } diff --git a/mes/qd/src/views/system/notice/NoticeIcon.vue b/mes/qd/src/views/system/notice/NoticeIcon.vue new file mode 100644 index 00000000..343f341f --- /dev/null +++ b/mes/qd/src/views/system/notice/NoticeIcon.vue @@ -0,0 +1,125 @@ + + + + + diff --git a/mes/qd/src/views/system/notice/NoticeIconReader.vue b/mes/qd/src/views/system/notice/NoticeIconReader.vue new file mode 100644 index 00000000..d61d9c6a --- /dev/null +++ b/mes/qd/src/views/system/notice/NoticeIconReader.vue @@ -0,0 +1,122 @@ + + + + + diff --git a/mes/qd/src/views/system/notice/api/notice.js b/mes/qd/src/views/system/notice/api/notice.js new file mode 100644 index 00000000..a83b6880 --- /dev/null +++ b/mes/qd/src/views/system/notice/api/notice.js @@ -0,0 +1,94 @@ +import request from '@/utils/request' + +/** + * 获取未读信息 + * @returns {AxiosPromise} + */ +export function pageByReceive() { + return request({ + url: '/api/notice/pageByReceive', + method: 'get' + }) +} + +/** + * 未读消息数量 + */ +export function countByReceiveNotRead() { + return request({ + url: '/api/notice/countByReceiveNotRead', + method: 'GET' + }) +} + +/** + * 标记为已读 + */ +export function read(id) { + return request({ + url: '/api/notice/read', + method: 'post', + data: id + }) +} + +/** + * 标记为已修改 + */ +export function deal(id) { + return request({ + url: '/api/notice/deal', + method: 'post', + data: id + }) +} + +/** + * 批量已读 + * @param data + * @returns {*} + */ +export function changeRead(data) { + return request({ + url: 'api/notice/changeRead', + method: 'post', + data: data + }) +} + +/** + * 查看消息 + */ +export function findById(id) { + return request({ + url: '/api/notice/findById', + method: 'post', + data: id + }) +} + +export function add(data) { + return request({ + url: 'api/notice', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/notice/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/notice', + method: 'put', + data + }) +} + +export default { add, edit, del, pageByReceive, countByReceiveNotRead, read, findById, deal, changeRead } diff --git a/mes/qd/src/views/system/notice/code/VueBaseCode.js b/mes/qd/src/views/system/notice/code/VueBaseCode.js new file mode 100644 index 00000000..9190b143 --- /dev/null +++ b/mes/qd/src/views/system/notice/code/VueBaseCode.js @@ -0,0 +1,15 @@ +/* 消息服务 */ +/** + * 显示站内信消息 + */ +export const NOTICE_SHOW_MESSAGE = 'notice_show_message' +/** + * 通知消息发生消息更新 主要是 未读数量更新 + */ +export const NOTICE_MESSAGE_UPDATE = 'notice_message_update' + +/* 其他 */ +/** + * ws测试事件 + */ +export const EVENT_TEST_WEBSOCKET = 'event_test_websocket' diff --git a/mes/qd/src/views/system/notice/index.vue b/mes/qd/src/views/system/notice/index.vue new file mode 100644 index 00000000..ed97cb5a --- /dev/null +++ b/mes/qd/src/views/system/notice/index.vue @@ -0,0 +1,270 @@ + + + + +