当前位置: 首页 > news >正文

品牌建设文案宁波优化网站排名软件

品牌建设文案,宁波优化网站排名软件,沧州网站建设的集成商,彩票网站的推荐怎么做更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码: https://gitee.com/nbacheng/ruoyi-nbcio 演示地址:RuoYi-Nbcio后台管理系统 1、数据库表方面 在原来sys_notice修改基础上增加一个表叫sys_notice_send 表结构如下: DROP …

更多ruoyi-nbcio功能请看演示系统

gitee源代码地址

前后端代码: https://gitee.com/nbacheng/ruoyi-nbcio

演示地址:RuoYi-Nbcio后台管理系统

 1、数据库表方面

   在原来sys_notice修改基础上增加一个表叫sys_notice_send

 表结构如下:

DROP TABLE IF EXISTS `sys_notice`;
CREATE TABLE `sys_notice` (
  `notice_id` bigint(20) NOT NULL COMMENT '公告ID',
  `notice_title` varchar(50) NOT NULL COMMENT '公告标题',
  `notice_type` char(1) NOT NULL COMMENT '公告类型(1通知 2公告 3待办)',
  `notice_content` longblob COMMENT '公告内容',
  `status` char(1) DEFAULT '0' COMMENT '公告状态(0正常 1关闭)',
  `sender` bigint(20) DEFAULT NULL COMMENT '发布人',
  `priority` varchar(50) DEFAULT NULL COMMENT '优先级(L低,M中,H高)',
  `msg_type` varchar(10) DEFAULT NULL COMMENT '通告对象类型(USER:指定用户,ALL:全体用户)',
  `send_status` varchar(10) DEFAULT NULL COMMENT '发布状态(0未发布,1已发布,2已撤销)',
  `send_time` datetime DEFAULT NULL COMMENT '发布时间',
  `cancel_time` datetime DEFAULT NULL COMMENT '撤销时间',
  `create_by` varchar(64) DEFAULT '' COMMENT '创建者',
  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
  `update_by` varchar(64) DEFAULT '' COMMENT '更新者',
  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
  `remark` varchar(255) DEFAULT NULL COMMENT '备注',
  PRIMARY KEY (`notice_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='通知公告表';

DROP TABLE IF EXISTS `sys_notice_send`;
CREATE TABLE `sys_notice_send` (
  `send_id` bigint(20) NOT NULL COMMENT '公告发送ID',
  `notice_id` bigint(20) NOT NULL COMMENT '公告ID',
  `user_id` bigint(20) NOT NULL COMMENT '用户id',
  `read_flag` varchar(10) DEFAULT NULL COMMENT '阅读状态(0未读,1已读)',
  `read_time` datetime DEFAULT NULL COMMENT '阅读时间',
  `create_by` varchar(64) DEFAULT NULL COMMENT '创建人',
  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
  `update_by` varchar(64) DEFAULT NULL COMMENT '更新人',
  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
  PRIMARY KEY (`send_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT='用户公告阅读标记表';

2、通过上面的数据导入,用系统提供的代码生成,生成前端与后端代码。

3、在common模块里增加一个公共的接口服务,以后一些公共需要各个模块使用的,都可以放在这里。

  目前先提供下面一些接口服务

package com.ruoyi.common.core.service;import com.ruoyi.common.core.domain.dto.MessageDTO;
import com.ruoyi.common.core.domain.model.LoginUser;/*** 通用 公共服务** @author nbacheng* @date 2023-09-21*/
public interface CommonService {/*** 1发送系统消息* @param message 使用构造器赋值参数 如果不设置category(消息类型)则默认为2 发送系统消息*/void sendSysNotice(MessageDTO message);/*** 发消息* @param fromUser* @param toUser* @param title* @param msgContent* @param setMsgCategory*/void sendSysNotice(String fromUser, String toUser, String title, String msgContent, String setMsgCategory);/*** 获取流程发送消息基地址* @return*/String getBaseUrl();/*** 获取当前登录用户** @return 当前登录用户信息*/public LoginUser getLoginUser();
}

4、common接口服务实现如下:

package com.ruoyi.system.service.impl;import java.util.Date;import javax.annotation.Resource;import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;import com.alibaba.fastjson.JSONObject;
import com.ruoyi.common.constant.Constants;
import com.ruoyi.common.constant.WebsocketConst;
import com.ruoyi.common.core.domain.dto.MessageDTO;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.core.domain.model.LoginUser;
import com.ruoyi.common.websocket.WebSocketServer;
import com.ruoyi.system.domain.SysNotice;
import com.ruoyi.system.domain.SysNoticeSend;
import com.ruoyi.system.mapper.SysNoticeMapper;
import com.ruoyi.system.mapper.SysNoticeSendMapper;
import com.ruoyi.system.mapper.SysUserMapper;
import com.ruoyi.common.core.service.CommonService;
import com.ruoyi.common.helper.LoginHelper;import cn.hutool.core.util.ObjectUtil;
import lombok.RequiredArgsConstructor;@RequiredArgsConstructor
@Service
public class SysCommServiceImple implements CommonService {@Value("${flowable.message-base-url}")private String msgBaseUrl;@Resourceprivate SysUserMapper userMapper;@ResourceSysNoticeMapper sysNoticeMapper;@Resourceprivate WebSocketServer webSocket;@Resourceprivate SysNoticeSendMapper sysNoticeSendMapper;@Overridepublic void sendSysNotice(MessageDTO message) {this.sendSysNotice(message.getFromUser(),message.getToUser(),message.getTitle(),message.getContent(),message.getCategory());		}/*** 发消息* @param fromUser* @param toUser* @param title* @param msgContent* @param setMsgCategory*/@Override@Transactional(rollbackFor = Exception.class)public void sendSysNotice(String fromUser, String toUser, String title, String msgContent, String setMsgCategory) {SysNotice notice = new SysNotice();notice.setNoticeTitle(title);notice.setNoticeContent(msgContent);notice.setNoticeType(setMsgCategory);notice.setSender(Long.valueOf(fromUser));notice.setPriority(Constants.PRIORITY_M);notice.setMsgType(Constants.MSG_TYPE_UESR);notice.setSendStatus(Constants.HAS_SEND);notice.setSendTime(new Date());notice.setMsgType(Constants.MSG_TYPE_UESR);notice.setStatus("0");sysNoticeMapper.insert(notice);// 2.插入用户通告阅读标记表记录String userId = toUser;String[] userIds = userId.split(",");Long noticeId = notice.getNoticeId();for(int i=0;i<userIds.length;i++) {if(ObjectUtil.isNotEmpty(userIds[i])) {SysUser sysUser = userMapper.selectUserById(Long.valueOf(userIds[i]));if(sysUser==null) {continue;}SysNoticeSend noticeSend = new SysNoticeSend();noticeSend.setNoticeId(noticeId);noticeSend.setUserId(sysUser.getUserId());noticeSend.setReadFlag(Constants.NO_READ_FLAG);sysNoticeSendMapper.insert(noticeSend);JSONObject obj = new JSONObject();obj.put(WebsocketConst.MSG_CMD, WebsocketConst.CMD_USER);obj.put(WebsocketConst.MSG_USER_ID, sysUser.getUserName());obj.put(WebsocketConst.MSG_ID, notice.getNoticeId());obj.put(WebsocketConst.MSG_TXT, notice.getNoticeTitle());webSocket.sendMessage(sysUser.getUserName(), obj.toJSONString());}}}@Overridepublic String getBaseUrl() {return msgBaseUrl;}@Overridepublic LoginUser getLoginUser() {LoginUser user = LoginHelper.getLoginUser();return user;}
}

http://www.khdw.cn/news/19138.html

相关文章:

  • b2b网站系统开发需要多久谷歌搜索引擎入口2021
  • 单位如何做网站宣传十大免费网站推广
  • 自己网站做第三方支付seo咨询解决方案
  • 阿根廷网站后缀什么平台可以发广告引流
  • 网站制作与免费网站建设怎样打百度人工客服热线
  • 网站里宣传视频怎么做信息流广告的特点
  • 做文件的网站北京关键词seo
  • 国外域名网站推荐郑州厉害的seo顾问公司
  • 宣讲家网站支部建设河南it渠道网
  • 大型科技网站建设品牌策划方案
  • 网络推广方案的主要步骤西安关键词排名优化
  • 云南网站制作需求杭州seo泽成
  • 黑河网站建设资源平台
  • 中国建设银行员工网站seo公司
  • 教你做面食的网站网站搜索优化
  • 建站宝盒源码微信拓客的最新方法
  • 大的网站建设公司好聊城seo
  • 学网站建设需要什么工具新品上市怎么推广词
  • 免费网站建设自带后台管理程序整合营销策划
  • 网站添加微信全渠道营销成功案例
  • 设计网站大全有哪些站长seo工具
  • 现在都用什么软件做网站百度云网盘资源
  • sem与seo的区别网络seo软件
  • 个人做公司网站百度推广产品
  • 做网站只用php不用html网络营销的方式
  • 做网站seo优化总结刷关键词排名seo软件
  • 网站开发公司 重庆seo搜索引擎优化价格
  • 辽宁建设信息网站百度seo关键词优化软件
  • dreamweaver有没有手机版seo计费系统登录
  • seo 网站分析建站系统哪个比较好