同步操作将从 mmdz/报工系统 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
创作背景:
公司需要一个记录人员日常工时情况;
开发背景:
该系统以 ruoyi 为基础框架做出的二次开发,主要是以人员报工填报为主(以项目维度和非项目的部门维度报工),最终输出不同维度的报表;
Gitee:
https://gitee.com/mmdz/Work-Vue
?>Ruoyi 的创作文档与项目说明 http://doc.ruoyi.vip/ruoyi-vue/
?>后端结构
com.ruoyi
├── common // 工具类
│ └── annotation // 自定义注解
│ └── config // 全局配置
│ └── constant // 通用常量
│ └── core // 核心控制
│ └── enums // 通用枚举
│ └── exception // 通用异常
│ └── filter // 过滤器处理
│ └── utils // 通用类处理
├── framework // 框架核心
│ └── aspectj // 注解实现
│ └── config // 系统配置
│ └── datasource // 数据权限
│ └── interceptor // 拦截器
│ └── manager // 异步处理
│ └── security // 权限控制
│ └── web // 前端控制
├── ruoyi-generator // 代码生成(可移除)
├── ruoyi-quartz // 定时任务(可移除)
├── ruoyi-system // 系统代码
├── ruoyi-admin // 后台服务
├── ruoyi-work // 报工模块
├── ruoyi-recruit // 招聘模块
?>前端结构
├── build // 构建相关
├── bin // 执行脚本
├── public // 公共文件
│ ├── favicon.ico // favicon图标
│ └── index.html // html模板
│ └── robots.txt // 反爬虫
├── src // 源代码
│ ├── api // 所有请求
│ ├── assets // 主题 字体等静态资源
│ ├── components // 全局公用组件
│ ├── directive // 全局指令
│ ├── layout // 布局
│ ├── router // 路由
│ ├── store // 全局 store管理
│ ├── utils // 全局公用方法
│ ├── views // view
│ ├── App.vue // 入口页面
│ ├── main.js // 入口 加载组件 初始化等
│ ├── permission.js // 权限管理
│ └── settings.js // 系统配置
├── .editorconfig // 编码格式
├── .env.development // 开发环境配置
├── .env.production // 生产环境配置
├── .env.staging // 测试环境配置
├── .eslintignore // 忽略语法检查
├── .eslintrc.js // eslint 配置项
├── .gitignore // git 忽略项
├── babel.config.js // babel.config.js
├── package.json // package.json
└── vue.config.js // vue.config.js
?>报工配置:
项目、人员、成本等基础配置情况
?>任务查询:
人员工时填报、填报回退处理、人员工时审核、填报情况查询等功能,以填报工时和推广填报进度为主
?>统计报表:
汇总合计、部门合计、日期合计、项目合计、阶段合计等报表呈现方式主要作用:
1) 提供数据明细,便于各类目的的加工处理; | 2) 各部门的人力负荷饱和度 ; | 3) 所有项目工作量 | 4) 从项目维度看人力工时投入 ...
!>提示:
需要一个招聘系统,但是又不想走流程(太繁琐),只能做一些简单的功能(顺便放在报工里)
招聘管理目前只有人才信息储备,人才资料上传、下载、预览,面试结果追踪等功能。
后续可以做面试岗位分析等功能报表
注意:文件在线预览使用的是 kkfileview 插件,kkfileview官方文档
!>提示:
因为本项目是前后端完全分离的,所以需要前后端都单独部署好,才能进行访问。
服务器(有JDK环境)中需要准备 ngnix、redis、mysql、kkfileview(在线文件预览)
# ngnix启动
切换路径: cd /usr/local/nginx/sbin/
启动命令: ./nginx
# ngnix重启
切换路径: cd /usr/local/nginx/sbin/
启动命令: ./nginx -s reload
# ngnix进程
ps -ef|grep nginx
# 杀死进程
kill -QUIT 3905
# 快速停止
kill -TERM 3905
# 或者
kill -INT 3905
# 强制停止
pkill -9 nginx
# Redis启动
切换路径: cd /usr/local/bin
启动命令: redis-server redis.conf
# 关闭Redis服务
shutdown
# 查看redis进程
ps -ef|grep redis
kkFileView v4.0.0 安装、启动教程(在线文件预览)
安装 LibreOffice7.1
# 安装 LibreOffice7.1 ### 原因:https://gitee.com/kekingcn/file-online-preview/releases 上说,v4.0.0对应LibreOffice7.1(v4.0.0版本发布,LibreOffice7.1底层,兼容性更强,预览效果更好) ### 步骤 wget https://kkfileview.keking.cn/LibreOffice_7.1.4_Linux_x86-64_rpm.tar.gz tar -zxvf LibreOffice_7.1.4_Linux_x86-64_rpm.tar.gz yum install -y LibreOffice_7.1.4.2_Linux_x86-64_rpm/RPMS/*.rpm /opt/libreoffice7.1/program/soffice --version ### 会显示版本号↓ LibreOffice 7.1.4.2 a529a4fab45b75fefc5b6226684193eb000654f6安装 kkFileView(官网下载)
# 安装 kkFileView wget https://kkfileview.keking.cn/kkFileView-4.0.0.tar.gz tar -zxvf kkFileView-4.0.0.tar.gz ### 解压出一份目录叫 kkFileView-4.0.0 ├── bin // 目录 │ └──install.sh 安装脚本,startup.sh会调的,但是有问题,安不了Libreoffice │ └──kkFileView-4.0.0.jar 主程序,SpringBoot的fat jar │ └──showlog.sh 这个就是打开一下log目录的kkFileView.log日志 │ └──shutdown.sh 用这个停止,但是每次只停一个实例,不如自己杀 │ └──startup.sh 用这个启动 ├── config // 目录 │ └──application.properties 配置文件,参考官网配置说明,也可以直接打开看,都有注释 ├── file // 启动后出现,文件资源路径(默认为打包根路径下的file目录下) ├── log // 目录 │ └──kkFileView.log 程序日志修改配置
# 修改配置 vi kkFileView-4.0.0/config/application.properties ### 把office.home改成自己安装的libreoffice7.1 office.home = /opt/libreoffice7.1 ### 如果你本来就有其他版本,可以配了试试,比如 office.home = /opt/libreoffice7.3 ### LibreOffice端口想改的话改这个 ## office转换服务的进程数,默认开启两个进程 office.plugin.server.ports = 2001,2002启动
# 注意!启动前需要杀掉已启动的libreoffice,下面提供一些指令 ### 查出所有office进程 ps -ef|grep office kill -9 {pid} ### 进入kkFileView-4.0.0/config/目录,执行启动脚本 sh startup.sh ### 查看日志 sh showlog.sh ### 日志不报很大一段错才是成功,并且会告诉你预览地址 kkFileView 服务启动完成,耗时:3.951797266s,演示页请访问: http://127.0.0.1:8012问题
# 启动起不来,报 Caused by: java.lang.IllegalStateException: process with acceptString 'socket,host=127.0.0.1,port=2001' started but its pid could not be found at org.artofsolving.jodconverter.office.OfficeProcess.start(OfficeProcess.java:90) ~[office-plugin-4.0.0.jar!/:na] at org.artofsolving.jodconverter.office.OfficeProcess.start(OfficeProcess.java:54) ~[office-plugin-4.0.0.jar!/:na] at org.artofsolving.jodconverter.office.ManagedOfficeProcess.doStartProcessAndConnect(ManagedOfficeProcess.java:113) ~[office-plugin-4.0.0.jar!/:na] ... 7 common frames omitted ### 把你连接工具的X11功能关掉
## 在ruoyi项目的bin目录下执行package.bat打包Web工程,生成war/jar包文件。然后会在项目下生成target文件夹包含war或jar
## 1、jar部署方式
执行脚本:ruoyi/bin/package.bat (target文件夹包含jar)
## 2、war部署方式
ruoyi/pom.xml中的packaging修改为war,放入tomcat服务器webapps
# 打包正式环境
npm run build:prod
# 打包预发布环境
npm run build:stage
# 构建打包成功之后,会在根目录生成 dist 文件夹,里面就是构建打包好的文件,通常是 ***.js 、***.css、index.html 等静态文件。
# 通常情况下 dist 文件夹的静态文件发布到你的 nginx 或者静态服务器即可,其中的 index.html 是后台服务的入口页面。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。