返回顶部
首页 > 资讯 > 数据库 >基于jeecgboot的OA日程安排开发(一)
  • 215
分享到

基于jeecgboot的OA日程安排开发(一)

数据库mysqljava 2023-09-30 19:09:23 215人浏览 八月长安
摘要

日程安排也是OA里的一项重要功能,所以基于jeecgboot开发这个日程安排。  日程安排主要涉及以下几个方面: 数据库方面,主要是分日历与日程      日历可以分个人日历与工作日历,一般情况下,个人日历只给自己查看,当然也可以考虑把个人

日程安排也是OA里的一项重要功能,所以基于jeecgboot开发这个日程安排。

 日程安排主要涉及以下几个方面:

数据库方面,主要是分日历与日程

     日历可以分个人日历与工作日历,一般情况下,个人日历只给自己查看,当然也可以考虑把个人日历分享给其它人员查看,工作日历可以让多人分享查看或管理,同时为了区分,可以通过颜色进行区分,不输入所有者与参与者,默认自己就是所有者与参与者。

    通过上面建的日历来建日程,相应的拥所有者或参与者默认就从上面日历继承过来,颜色也一样。

  提醒级别分为1-重要/紧急,2-重要/不紧急,3-不重要/紧急,4-不重要/不紧急。

   提醒时间分为不提醒,提前5分钟,10分钟,15分钟,30分钟,1小时,2小时7种。

    提醒方式分为消息提醒,邮件提醒,短信提醒,微信提醒等4种。

数据库结构如下:

SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------
-- Table structure for oa_calendar
-- ----------------------------
DROP TABLE IF EXISTS `oa_calendar`;
CREATE TABLE `oa_calendar` (
  `id` varchar(36) NOT NULL COMMENT 'id',
  `name` varchar(100) NOT NULL COMMENT '名称',
  `remark` text COMMENT '备注',
  `color` varchar(15) NOT NULL COMMENT '颜色',
  `create_by` varchar(50) DEFAULT NULL COMMENT '创建人',
  `create_time` datetime DEFAULT NULL COMMENT '创建日期',
  `update_by` varchar(50) DEFAULT NULL COMMENT '更新人',
  `update_time` datetime DEFAULT NULL COMMENT '更新日期',
  `sys_org_code` varchar(64) DEFAULT NULL COMMENT '所属部门',
  `type` int(10) NOT NULL COMMENT '日历类型',
  `owner` text COMMENT '所属人',
  `taker` text COMMENT '参与人',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

-- ----------------------------
-- Table structure for oa_schedule
-- ----------------------------
DROP TABLE IF EXISTS `oa_schedule`;
CREATE TABLE `oa_schedule` (
  `id` varchar(36) NOT NULL COMMENT 'id',
  `title` varchar(100) DEFAULT NULL COMMENT '标题',
  `content` text COMMENT '内容',
  `start_time` datetime DEFAULT NULL COMMENT '开始时间',
  `end_time` datetime DEFAULT NULL COMMENT '结束时间',
  `owner` text COMMENT '所属人',
  `taker` text COMMENT '参与人',
  `remind` int(10) DEFAULT NULL COMMENT '提前提醒时间',
  `address` varchar(100) DEFAULT NULL COMMENT '地点',
  `color` varchar(15) DEFAULT NULL COMMENT '颜色',
  `source` varchar(50) DEFAULT NULL COMMENT '来源',
  `level` int(10) DEFAULT NULL COMMENT '优先级',
  `create_by` varchar(50) DEFAULT NULL COMMENT '创建人',
  `create_time` datetime DEFAULT NULL COMMENT '创建日期',
  `update_by` varchar(50) DEFAULT NULL COMMENT '更新人',
  `update_time` datetime DEFAULT NULL COMMENT '更新日期',
  `sys_org_code` varchar(64) DEFAULT NULL COMMENT '所属部门',
  `url` varchar(200) DEFAULT NULL COMMENT '链接',
  `cal_id` varchar(36) DEFAULT NULL COMMENT '日历类型',
  `remind_type` varchar(30) DEFAULT NULL COMMENT '提醒方式',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
 

前端组件采用 FullCalendar

     FullCalendar提供了丰富的属性设置和方法调用,开发者可以根据FullCalendar提供的api快速完成一个日历日程的开发。

在package.JSON增加下面组件

    "@fullcalendar/core": "^5.11.3",
    "@fullcalendar/daygrid": "^5.11.3",
    "@fullcalendar/interaction": "^5.11.3",
    "@fullcalendar/list": "^5.11.3",
    "@fullcalendar/moment": "^5.11.3",
    "@fullcalendar/resource-timeline": "^5.11.3",
    "@fullcalendar/scrollgrid": "^5.11.3",
    "@fullcalendar/timegrid": "^5.11.3",
    "@fullcalendar/Vue": "^5.11.2",

考虑到中国农历问题,增加下面组件

"solarday2lunarday": "^1.12.1",

主要使用如下:


编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作