本日来搞个进销存试试水,实际上我也没做过,有不对的地方欢迎各位大佬补充纠正。
建表进销存,正所谓进货销货库存。
个中最主要的便是货,没货哪来的销货库存。
我们先建一个产品表,你问我为啥要加一个pis前缀?
当前是用于区分这个是进销存啦,万一后面又做了个啥东东,结果也是产品表,那不是乱套了。
CREATE TABLE `pis_product` (
`id` bigint NOT NULL COMMENT '主键',
`name` varchar(120) NOT NULL COMMENT '产品名称',
`unit` varchar(20) DEFAULT NULL COMMENT '产品单位',
`price` decimal(10,2) NOT NULL COMMENT '产品价格',
`category_id` bigint NOT NULL COMMENT '产品分类',
`describe` varchar(255) DEFAULT NULL COMMENT '产品描述',
`create_by` bigint NOT NULL COMMENT '创建者',
`create_time` datetime NOT NULL COMMENT '创建韶光',
`update_by` bigint NOT NULL COMMENT '更新者',
`update_time` datetime NOT NULL COMMENT '更新韶光',
`deleted` tinyint NOT NULL DEFAULT '0' COMMENT '删除标识(1删除,0未删除)',
`status` int DEFAULT NULL COMMENT '产品状态',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='进销存-产品表';
代码天生启动我们的若依项目,点击代码天生,点击导入。
导入后开始编辑我们须要天生的产品表代码信息。
当然你也可以不编辑,不过你天生的代码可能会看着有点奇怪。
先到菜单管理新建一个进销存的菜单目录,为啥要新建?
啊?难道你的进销存要放到系统目录?
我这里已经新建好了,直接贴图。
开始编辑代码天生的表信息。
紧张便是这三块,末了一张图选择刚才新建的菜单目录,其他信息当然是写你自己的啦蠢人。
然后点击提交保存。
点击天生代码,会下载一个压缩包文件,上面可以配置,你也可以自己选择路径。
下载后压缩包解压的内容该当如下图所示:
.sql文件直接去运行,不清楚的童鞋可以看往期文章。
紧张是用于添加菜单的语句。
vue包下面有两个东西:一个是api一个是views,一个是要求接口的,一个是页面展示的。
分别把里面的目录文件粘贴到ruoyi-ui项目中。
详细如下图所示:
然后是main目录,这个后真个代码。
同样的操作复制到pis模块下,不知道新建模块?
看看下面。
以上便是创建模块的步骤,紧张便是在ruoyi模块下面建一个新的模块。
是不是已经忍不住想要重动身序看看效果了?
答案是不可以的,这时候你重启会创造啥也看不到。
为啥?
后台管理模块,没有引用进销存模块的话,你启动当然看不到啦。
现在重启看看?
彷佛还不错,一些细节不要深究啦,一会逐步改便是。
有童鞋说看不到菜单?
噢噢,那你得刷新一下网页,还是没有?那只有逼迫刷新了,这下该当能看到了。
不知道怎么逼迫刷新?
Ctrl+Shift+R快捷键刷新。
修修边幅代码天生的页面彷佛还行,不过有一些细节我们得自己去处理一下。
这个东西,得轻微调度一下。
这时候有童鞋就要说了。
代码天生的时候你可以自己去指定啊!
哎呀我这猪脑筋。
不过来都来了,自己改一下吧。
总算是改好了。
改的过程中很痛楚,相信童鞋们都创造了。
这白花花的都是啥呀,跟记事本有什么差异?
虽然用一些插件可以支持,不过我自己更方向于利用vscode。
用idea终极版的童鞋是体会不到社区版的痛楚的。
vscode优雅的前端开拓工具安装下载地址:https://code.visualstudio.com/
如图所示,详细安装过程不再赘述。
相信大家都已经得心应手。
这些是我装的一些插件。
须要中文的话,安装下面这个插件即可。
Chinese (Simplified) (简体中文) Language Pack for Visual Studio Code
现在打开项目。
舒畅了。
紧张是这三个插件,如果没有自动安装的童鞋可以手动安装一下。
测试天生代码的功能刚测试一下新增,岂可修,竟然报错了。让我瞅瞅啥情形。
语法缺点,我的天,这竟然是关键字,挖坑了。
ALTER TABLE pis_product
CHANGE `describe` `prod_desc` VARCHAR(50);
关键字修正一下,代码也修正一下,作者劳碌修正中....
这些是部分截图,数量过多不便展示。
添加hutool工具包。
在通用模块里面引用。
首先为什么要引入hutool包?是由于方便吗?
看了下若依的主键id,是通过自增的办法,但我们明显不是。
于是,我引入hutool是为了它里面的一个id天生工具包。
封装一下。
在新增时调用设置id。
如果提示找不到类,那就须要升级hutool版本,5.8.0会报此缺点,我利用的是5.8.25。
不要踩坑噢。
为啥要保存id?我是通过用户id记录的,当然也可以利用用户名记录。
轻微完善一下代码。
保存重启。
保存成功!
这时候又挖坑了,雪花id,导致精度失落精。
这时候更新删除、根据id查询都会失落败。
归根结底还是数据库表的设计不符合若依的规范。
既然知道了缘故原由,那么我们就可以办理了。
到底是修正表设计还是通过通用配置调度。
最好的便是去设计一个符合若依的规范的表设计,或者修正若依框架的核心根本。
做一个符合我们设计的框架,但事情量会很大。
以是我选择实现一个通用的序列化配置,虽然整体上花费了部分性能,但不影响我们学习。
好了现在我们的配置完成,也成功显示了。
这里还有须要把稳的点是,删除标识,是我们用于逻辑删除的,不同于物理删除。
而且我们前端显示的时候也不应该显示这个删除标识。
还有一些其他的把稳点。
那么下期再见,纯挚通过文章描述实现一个别系,事情量还是很大的只能分步一步一步的来。
逐步的完善。
也欢迎大家互换谈论学习。