让我在提出问题之前给出上下文。 我们开发发票系统,我们创建发票,验证它们并付款。依靠数据库中的一个字段
数据库架构包含以下表格:
发票
InvoiceItems
ReceivedItems。
所以我们验证每个发票项目的数量,并与收到的项目数量检查(这可能是相等的,或大或小 的过程是这样的:。
让的说发票项目数量为50
我们有所谓的信贷发票项目被记入在创建时的发票项目数量的字段。(说50数量有待验证)
我们收到来自各种来源的项目,我们更新收到物品时他们来了。 说我们最初有25件物品。 因此,我们将发票项目的贷方减少25,并将收到的项目标记为完成。 后来我们得到了其他25个,我们通过减少剩余的25个信用来验证。
所以信用现在是0. 这意味着发票已经完全验证。所以我们发送付款发票。
由于最近发生的错误事件发生后。
我们没有将发票项目的信用设置为发票项目数量。创建时其基本上为零。 所以我们的系统认为它的验证和付款。 我们在两个月后才意识到发票没有得到验证。
所以现在我们有多个检查拒绝而产生的发票,如果信用证为0
除了有多项检查,有什么办法可以解决高度依赖于一列的这个问题。 (这里发票项目上的信用为0,并且每张发票都未经验证支付)
我正在数据库(模式)级别或应用程序级别寻找任何类型的解决方案。