主页 > 超兔最新 > 超兔CRM仓库调拨单支持分批调拨

超兔CRM仓库调拨单支持分批调拨

调拨单执行遇到库存不够时,如何设计功能逻辑?从数据结构的角度看,常规思路是:计划+分批执行的方式,分别建立调拨计划表和实际调拨表。该思路数据结构清晰明确,开发逻辑也不复杂。很容易被认为是优选设计方案。
但是,当我们深入分析这个场景的出现概率时,会发现大多数或绝大多数调拨单都是一次性调拨,多次调拨的概率很低。那么对于低概率场景,多做一套表并不符合奥卡姆原则:除非必要、勿增实体。而且这种结构会让大概率的单次调拨产生冗余数据、冗余理解和操作。所以,我们应该继续去找更优化的设计方案。
这个优化的设计方案应该符合如下规则:1.单次调拨必须最简操作;2.多次调拨操作也需要足够简单;3.尽可能不新建数据表,简化数据结构。基于此三点,超兔CRM重新抽象设计的解决方案为:拆分调拨法。
超兔CCRM的拆分调拨,核心操作如下:
1)仓库调拨单确定好调拨明细,作为原单;
2)点击拆分调拨;
3)进入拆分调拨单,编辑拆分数量,保存。
该功能亮点:
① 保证单次调拨操作最简,多次调拨足够简单;
② 没有新表新概念的理解,容易上手;
③ 每次调拨都是出入对应,数据清晰明确;
④ 拆分日志方便回溯,准确可靠。