Laravel + Dcat admin 开发一个健壮的 erp 项目

码农天地 -
Laravel + Dcat admin 开发一个健壮的 erp 项目
背景

4个月前我写过一篇文章 dcat-admin 开源框架在 erp 项目中的应用 在几个月前我只是用其完成一些功能开发。但是在项目健壮,以及代码如 dcat 一些深度结合上做的还是不够完善。这个几个月我重新在已有的经验上,对其进行了一些深入的整合。包括在 sass 方面的结合。已经代码健壮性方面的加强。

常用的初始化

ERP 常用的单据实现在这几个月我把 erp 常用的单据做成了一个abstract class,只要继承 OrderController 并实现其中的几个抽象方法。便可以得到一张单据的编辑创建。里面会自动包含单据常用的审核,删除,批量增加等。抽象方法(我们业务逻辑只要展现数据,至于审核删除批量新增,我们封装好的进行统一管理比如审核的时候检测明细的业务数量是否为0,单据是否包含明细)

页面效果

新增

编辑

业务逻辑的梳理在进销存以及 erp 软件中,比如出入库的时候会扣减批次库存,产品库存,以及插入一条库存往来的记录。有的老程序员可能会用到数据库的触发器,存储过程等等。在这里我可以介绍下在 laravel 中如何拆分这些业务图示库存往来

分析:

我们入库的时候,首先明细在批次库存进行加减,然后产品库存也会加减,涉及加减的都会插入一条库存往来账。而库存往来账的表,包含了批次库存以及产品库存发生变化所需要的字段,我们可以通过监听出入库订单审核状态的变化,比如审核通过,然后插入库存往来帐。再通过监听库存往来帐。进行批次库存的加减。在进行监听批次库存的加减进行产品库存的加减。

采购入库单监听(PurchaseInOrderObserver)只要订单审核通过就插入一条库存往来账

库存往来账监听 (StockHistoryObserver) 根据单据类型进行批次库存扣减

批次库存监听 (SkuStockBatchObserver)当批次库存进行扣减的时候对产品库存进行扣减

好处

当我们有其他的业务要扣减库存的时候,比如客户销售单。我们只需要监听客户销售单的审核。无需在写一份库存扣减的业务逻辑。提升我们的业务健壮性。客户销售单






审核图标实现代码


使用
$form->reviewicon('字段', '审核状态');

结尾

传统的 erp 软件以 java c# 为主。但是结合我自己这几个月的摸索, 如果对 laravel,以及 Dcat,laravel-admin 底层有一定熟悉。我们可以依靠这些开源的项目快速构建起我们的 crud。同时合理规划好 laravel 的项目架构,业务层架构。代码维护起来还是蛮舒服的。如果大家有需要项目开发也可以联系我

特别申明:本文内容来源网络,版权归原作者所有,如有侵权请立即与我们联系(cy198701067573@163.com),我们将及时处理。

php介绍

PHP即“超文本预处理器”,是一种通用开源脚本语言。PHP是在服务器端执行的脚本语言,与C语言类似,是常用的网站编程语言。PHP独特的语法混合了C、Java、Perl以及 PHP 自创的语法。利于学习,使用广泛,主要适用于Web开发领域。

Tags 标签

phperp进销存系统laraveladmin-template

扩展阅读

加个好友,技术交流

1628738909466805.jpg