星云ERP开发部署使用记录

星云ERP是一个完整度较高的开源ERP框架了。很值得我们学习。下面我就简单记录一下我的使用过程(瞎编心得)。

不过还是建议直接阅读官方文档库:https://doc.lframework.com/doc/1/  或者购买星云ERP开发手册,里面会有比较详细的介绍。(感叹一句:你说有钱多好,我要有钱我也这么玩)

演示环境地址

星云ERP平台地址:http://erp.lframework.com

一、下载源码

前往码云页面下载星云ERP源码(master版):https://gitee.com/lframework

包括 前端、后端、底层框架 三个代码。

二、启动项目

2.1 启动后端项目

打开 xingyun-master 项目,先通过 maven 引入依赖。

2.1.1 配置mysql、redis、rabbitmq

配置mysql

打开 xingyun-api 模块,我们需要初始化相应数据。即执行该模块下的 db 脚本。db脚本分为 platform 平台脚本 和 tenant 租户脚本。这两种脚本都有全量脚本和增量脚本之分。

从 application-dev.yml 中可以看到 默认的开发环境数据库链接的平台库地址是 127.0.0.1:3306/platform 。从 tenant.sql 中可以看到租户库默认连接的是 127.0.0.1:3306/xingyun。我们可以先建这两个数据库,然后分别执行对应脚本。

执行完平台库(platform)的全量sql+所有增量sql后最终应该有如下几张表:

同样的,执行完租户库(xingyun)的全量sql+所有增量sql后最终得到以下一些表:

TABLE_NAME    TABLE_ROWS  (默认情况下只有以下表有数据)
dic_city    3445
sys_menu    296
sys_generate_code    32
sys_data_permission_model_detail    17
sys_parameter    14
tbl_print_template_comp    12
tbl_print_template    8
base_data_pay_type    6
recursion_mapping    4
sys_dept    4
tbl_stock_adjust_reason    3
tbl_sale_config    1
sys_role    1
tbl_retail_config    1
sys_user    1

配置 redis

根据自己需要配置连接redis即可,注意修改密码。

配置 rabbitmq

根据自己需要配置连接rabbitmq即可,注意修改密码。(不配也能启动,只是会一直重试连接)

# 可以通过docker快速安装一个rabbitmq,并开启防火墙。(云服务器也要开)
docker run -d --name rabbitmq -p 5672:5672 -p 15672:15672 -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin123 rabbitmq:management

firewall-cmd --zone=public --list-ports
firewall-cmd --zone=public --add-port=5672/tcp --permanent
firewall-cmd --zone=public --add-port=15672/tcp --permanent
firewall-cmd --reload

2.2.2 启动项目

配置完并引入相关依赖后,在 com.lframework.xingyun.api.XingYunApiApplication 类中右键启动项目即可。启动成功后,可以打开文档进行查看:http://localhost:8080/doc.html

2.2 启动前端项目

​打开 xingyun-front-master 项目。

安装node 、npm、pnpm  

其中 pnpm 安装命令:npm install -g pnpm@9.7.1

可以通过 node -v  npm -v  pnpm -v 查看一下版本是否有问题。

然后使用 pnpm i 安装依赖

然后使用 pnpm run dev 启动项目,访问 5173端口即可。

-- 关闭验证码:

UPDATE `sys_parameter` SET `pm_value`='false' WHERE `pm_key`='login-captcha.enabled';

三、创建租户

我们假设有两个目标租户: 零售店张三、海鲜店李四

我们要给他们推荐这个ERP系统,那下面我们就要给 零售张三、和 海鲜李四 创建两个租户账号,并分别配置他们想要的功能。

3.1 创建租户基本库表数据

在新增租户前,就要先为该租户创建基本的数据库+管理用户+基本租户表。且要注意,此管理用户权限不能授予太大。仅能让其访问/操作自己的库即可。

如以下即为相应数据库+管理用户的基本SQL:

-- 新建数据库零售张三:lingshouzhangsan
CREATE DATABASE lingshouzhangsan CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

-- 创建用户 zhangsan_admin 且仅允许本机访问(不限制主机则为%), 密码 123456 
CREATE USER 'zhangsan_admin'@'localhost' IDENTIFIED BY '123456';
-- 授予基本的增删改查权限,且仅限 lingshouzhangsan 数据库
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, CREATE TEMPORARY TABLES 
ON lingshouzhangsan.* TO 'zhangsan_admin'@'localhost';
-- 刷新权限
FLUSH PRIVILEGES;

然后跟初始的默认租户库(xingyun)一样,在新租户库 lingshouzhangsan 也执行租户的全量sql+所有增量sql。

3.2 进入租户管理新增租户

搜索 租户管理,或者从 平台管理-租户管理 中直接进入租户管理页面,

如新增租户【零售张三】的数据库url:jdbc:mysql://127.0.0.1:3306/lingshouzhangsan

jdbc:mysql://127.0.0.1:3306/lingshouzhangsan?rewriteBatchedStatements=true&useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&useSSL=false&autoReconnect=true&failOverReadOnly=false&serverTimezone=GMT%2B8

//这里有个小优化点,新增时【是否平台用户】总要自己点一下才有值,
//在 xingyun-front-master\src\views\system\tenant\add.vue的 initFormData()中给一个默认值即可:
// 初始化表单数据
initFormData() {
	this.formData = {isPlatform: false};
}

然后我们要给张三老哥授权。由于张三老哥并没交什么钱,态度又不咋地,先随便给他开通几个满足他们店的基本需求的模块就行。并且仅授权一年。如果他用着觉得还行,随时加钱我们也随时可以授权其它功能。

授权完后,退出当前用户或打开无痕模式或者用其它浏览器(避免Cookie污染),就可以像登录默认的xingyun租户:测试租户 一样,将租户名称改为【零售张三】,即可进行登录。

登录后我们发现,【零售张三】租户下就只有我们刚才授权的几个模块而已。这时候就可以进入【系统管理】中,为当前【零售张三】租户创建部门、用户、角色等等数据了。

这里我们创建一个【张三老板】的用户,也赋予系统管理员权限。(然后让他自己去创建他们的部门、角色、用户等)

创建好相应数据后,对于老板张三和他的员工来说,就可以登录他们自己的账号来进行相应的操作了。

四、基本信息录入

对于每个租户,他们都有其各自的仓库、客户、供应商、会员信息。这些信息也是后续流程中必须存在的。

五、商品录入

基本信息录入后,就需要录入自家的商品信息。后面的流程也会都基于商品进行流转。

六、采购管理

以一般企业的 进货 -> 销售 -> 库存 的核心业务流程为例。进货这块的业务对应的功能就是 采购管理

  通过【新增采购订单】后,可以进行【采购收获】、【采购退货】。

七、其它功能模块

采购了商品之后。其它功能如销售、零售、库存、结算也是一样的。这样子基本就能把常见的业务给通过平台流转起来。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值