————工程师知识管理系统
Demo ——基于engineercms的设代资料管理平台(真实应用环境)
# 克隆源码
# git clone https://github.com/3xxx/engineercms.git
# go mod vendor
# go mod init
# go包自动安装
# 设置go代理
# go env -w GO111MODULE=on
# go env -w GOPROXY=https://goproxy.cn,direct
# 关闭——这个看情况,go mod vendor时,提示Get https://sum.golang.org/lookup/xxxxxx: dial tcp 216.58.200.49:443: i/o timeout
# go env -w GOSUMDB=off
# go mod tidy
go run main.go
# 编译(sqlite需要CGO支持)
go build -ldflags "-w"
# 数据库初始化(此步骤执行之前,需配置`conf/app.conf`)
# ./engineercms install
# 执行
# $ nohup ./engineercms &
# beego 2.0.0 升级指南
# 获取最新版本的 bee 工具 go get -u github.com/beego/bee/v2
# 更新 beego 框架 go get -u github.com/beego/beego/v2
# 然后进入项目,执行: bee fix -t 2
# 需要注意的是,如果你是 windows 用户,那么你需要在 WSL 内部运行该命令。
# 在项目文件夹下鼠标右键——Git Bash Here
这里需要导入的包是
github.com/beego/beego/v2/server/web/context
而不是
~ github.com/beego/beego/v2/adapter/context ~
目前来说因为你所有的包都切换过去了beego/beego/v2,所以你对应的context要使用beego/beego/v2/server/web/context下的这个。
我教你一个小技巧。当你发现依赖找不到的时候,你把import里面对应的东西删掉,IDE会帮你补全,或者给你提示。如果你用的GOLANG IDE,那么会自动帮你把对应依赖引入。
记住一个核心原则:如果你用的是adapter的包,那么所有的包都应该是adapter的;如果你用的是beego/beego/v2(非adapter),那么所有的都应该是beego/beego/v2下的。
https://www.cnblogs.com/cqlb/p/13396107.html
一、创建标签
在Git中打标签非常简单,首先,切换到需要打标签的分支上:
1 $ git branch
# 2 * dev
# 3 master
4 $ git checkout master
5 Switched to branch 'master'
git add .
git commit -m "update"
然后,敲命令git tag <name>就可以打一个新标签:
$ git tag v2.0.5
因为创建的标签都只存储在本地,不会自动推送到远程。所以,打错的标签可以在本地安全删除。
如果要推送某个标签到远程,使用命令
$ git push origin <tagname>
Administrator@DESK-20210217SN MINGW64 /d/engineercms (master|REBASE-i)
$ git push --delete origin v2.0.0
To https://github.com/3xxx/engineercms
- [deleted] v2.0.0
Administrator@DESK-20210217SN MINGW64 /d/engineercms (master|REBASE-i)
$ git push --delete origin v2.0.2
To https://github.com/3xxx/engineercms
- [deleted] v2.0.2
如果有人想知道如何一次删除多个标签,你可以用空格简单地列出它们,例如git push --delete origin tag1 tag2。本地标签删除git tag -d tag1 tag2同样有效。
一 特性:
二 应用案例:
我们做工程设计的,经常要做设代,现场服务,而且人员会更换比较频繁。拥有这样一个资料管理平台,是很多人的愿望,那么有没有简单免费开源的web应用呢?基于engineercms核心的系统,具有:
√参建单位各自自由建立自己的目录,共享资料,避免大家重复存储项目资料,比如会议纪要,法律法规。
√关键字检索和全文检索。
√图纸易得,能更好地控制工程质量——pdf设计文件参建单位都可以阅读,提高效率,减少障碍。
√基于“用户——角色——权限”的权限设置。独创的根据文件扩展名来进行权限管理。
√会议室和车辆的预定,用餐人数计划统计等常用功能。
√wiki技术讨论。
√工程大事记,工程进展时间轴等潮玩意儿。
√独创的pdf连续查阅;
√IPAD、手机移动端无障碍;
√设代日记图文并茂记录现场进度,支持视频格式;
√项目甘特图展示工作进度;
√硬盘中的资料存储与页面的目录保持一致;设代日志等文章中照片按月度存储;
√分享文章到微信。
√√√ONLYOFFICE实时文档协作支持。除了支持office的docx,xlsx及pptx格式外,还支持wps,et和dps格式。
√ONLYOFFICE中文档的历史版本对照功能。
√ONLYOFFICE中文档的格式转换功能,如word转pdf。
√ONLYOFFICE中文档协作的权限设置,采用casbin。
√在线预览dwg文件。
√手机端添加图片、视频发布文档;——已开发小程序“珠三角设代”应用中并开源。
√考勤登记,值班安排;
√小程序图纸查阅权限,用户注册设计;
√小程序打卡;
√小程序多人写同一天的设代日志;
√小程序公告,展示车辆、会议室的调度、占用;
√文档关联完善:编辑关联,关联打开链接;
√自定义业务流程:单线传递,并行传递;
√资料“购物车”,管理员批准后可下载资料;
√ websocket聊天室;
√全文检索,快速定位文档;
二 todo:
× 规范标准库编辑,爬虫;
× 读取文件属性——完成时间,作为月度统计依据,或提供选择,以上传时间为统计口径,生成某个目录下月度成果报表,与上个月对比柱状图;
× 项目目录编辑完善:ztree目录拖动;
× 多关键字检索;
× 项目合并和拆分:将2个项目目录合并起来,其中一个项目合并到另一个项目的子目录中,手动合并文件夹,自动修改数据库;
× 流媒体服务; × 图片服务;
在release标签中下载二进制文件和源码压缩包(不再提供最新编译文件,请到网盘下载)。https://github.com/3xxx/EngineerCMS/releases
将二进制文件放到源码文件夹下直接运行即可。
或者去百度网盘下载,直接运行。链接:https://pan.baidu.com/s/1MDJ-QfCmv_LiychDSLn8jw 提取码:nhar
Linux系统下请替换掉执行文件engineercms(linux)
不清楚的,可以加我QQ504284或者微信hotqin999聊,也可参考quickstart。
wiki。包括linux系统下的编译。linux系统下的部署参见网盘中的文档。
技术开发过程详见CSDN我的博客 系统简单使用见mindoc文档
参见quickstart快速开始。包括后台导入Excel用户,设置用户角色和权限。
linux系统上的部署参见网盘中的文档。
git submodule update --init
EngineerCMS source code is licensed under the Apache Licence, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0.html).
ONLYOFFICE实时文档协作效果——除了支持office的docx,xlsx及pptx格式外,还支持国产wps,et和dps格式。




在线直接预览dwg图纸文件:

手机端访问文章效果

微信小程序富文本编辑器添加文章:

IPAD移动端效果
项目进度展示
用户——角色——权限设置,树状目录权限,区分附件扩展名,基于casbin

froala富文本编辑器支持word图片自动上传,视频和附件

$ claude mcp add engineercms \
-- python -m otcore.mcp_server <graph>