ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

3. 哪里多了一分钱?描述实体

2020-02-29 17:01:33  阅读:290  来源: 互联网

标签:一分钱 互算 100% 实体 金额 比例 维度 时候 描述


一分钱

写到这个的时候,很多财务方面的人员就会站出来了。

每到月底的时候,核算的时候,五万的额度对不上不是问题,五千的也不是问题。但是碰到说,你还有一分钱账对不上哦。完了,心里一万只草泥马奔腾而来。
自己手工算账的时候,出现这样的问题,那只能怪自己不专业的行为。但是现在把这种专业的行为交给专业的ERP软件去进行核算,你还给我时不时出现,你这软件有没有问题哦。

应用与反思

今天碰到一个这样的业务问题。

业务员在做一张采购订单的付款计划的时候,要跟踪当前采购单据的付款进度,要根据多个维度来区分。有的合同签订的时候需要首先交付30%的预付款,剩下的70%才有入库后进行实付。那对于奇怪的总金额,计算的时候,按30%的比率掰扯以后,就出现的余额小数。

需求人员说,有的时候客户想填个金额,你也给我反算一下比例来吧。好,开发人员照办,给比例与金额加了个互算。这样就会成了一个循环,比例-金额-比例-金额.... 最后就形成了如图,明明五五开的一个付款条件,最后因为互算逻辑,导致了超过100%。

搞笑的是,需求人员认为,这个需要开发再继续控制,再填写最后一行的时候,应当采用用100% - 前面所有行之和,这样就能保证了比例100%的情况。

(大爷,你自己加的逻辑啊,要金额互算比例,那万一客户改了呢?治标不治本。)

说这么多,我觉得最开始就是设计存在一个问题。业务员应该更关心的是这张付款到了哪一步吧,是不是按照计划进行的,无论是按比例还是金额,业务关心的是一个维度吧。 比如按比例,财务付款单付了就回填金额,然后根据根据金额,显示比例计算就OK,就不用处理财务计算了。

ValueObject

也就是只用一个维度,另外个维度不做互运算。其实就是值对象中重要的,清除ValueObject之间的双向关联。

值类型是用来描述领域某个方面而本身没有概念标识的对象

它有几个特点:

  • 它是不可变的,不需要唯一标识;
  • 只关心是什么,不用关心它是谁;
  • 可以是一个集合,也可以是一个实体Entity;

我们在考虑值对象的时候,应该尽可能从它的几个特点出发,它是对实体的一个描述,并且减少双向关联,才能尽可能做到低耦合的特点。

标签:一分钱,互算,100%,实体,金额,比例,维度,时候,描述
来源: https://www.cnblogs.com/weilai1917/p/12383728.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有