gpt4 book ai didi

mysql - 单一月度发票交付时付款的规范化表(含全部应付余额)

转载 作者:行者123 更新时间:2023-11-29 20:56:53 25 4
gpt4 key购买 nike

我正在尝试以正确的方式为计费政策设计表格,客户可以在每次交付完成时付款,或者他们可以收到包含全部应付余额的每月发票。这是我已经拥有的一小部分......

Delivery Request Tables

我不知道该去哪里...我应该创建一个完整的付款表和月度报表并将它们与发票表关联起来...或者我应该将它们与付款表关联起来...还是我我到处都是......

最佳答案

这比你想象的要复杂得多。您还必须考虑部分付款、超额付款、账户付款、退款和其他现实世界的复杂情况。

解决这个问题的唯一方法实际上反射(reflect)了现实世界的丑陋,是将个人费用视为一件事(您的交货),将摘要文件(每月发票/报表)视为另一件事,将付款/退款视为另一件事东西。

从那里,您需要将这三个独立的事物通过关系连接在一起。人们很想将每月发票直接加入到付款中,但这将是一个错误。至少,它会让你的生活变得比需要的更加复杂。

费用和发票之间的关系相对简单。如果您的客户收到每月发票,那么该月的所有包裹都将指向该发票。这使得从包到发票建立了多对一的关系。

更复杂的部分是付款和收费之间的关系。为此,您需要一个新表Payment_Application,它是费用(套餐)和付款之间的多对多交集。该交叉实体还将具有为每个包裹支付的金额。这很重要,因为您可以在此处记录支付的金额是过多、过少还是正确的金额。

如果您想变得更复杂,您可以标准化付款信息,以便您拥有付款标题和详细信息。这样您就可以将收到的付款信息与您选择如何应用该付款的信息分开保存。

考虑以下因素:

ERD

这里有一个(可选)发票抬头和一个发票详细信息(包)以及一个付款抬头和一个(可选)付款详细信息,它们可能与发票详细信息相关,也可能不相关。这样的安排将涵盖当您需要跟踪金钱交易时发生的各种丑陋的事情。

关于mysql - 单一月度发票交付时付款的规范化表(含全部应付余额),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37555356/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com