PlantUML+EA描述《分析模式》第6章存货和会计(5)

发布时间:2026/7/23 15:20:47

PlantUML+EA描述《分析模式》第6章存货和会计(5) 《GJJ-004 分析模式及实现》umlchina.com/url/video.html原图6.17EA绘制图6.17 用后向链式触发请求明细账户要它的分录。PlantUMLstartumlstart:更新账户;:返回分录;stopenduml原图6.18EA绘制图6.18 更新账户的方法。在正在处理的账户的每个输入账户上递归调用更新账户的操作。PlantUMLstartumlstartrepeat:查找将自己作为输出的过账规则;- 每个过账规则;:查找触发的账户;:比较并更新账户集合;backward:更新账户;repeat while (有新出现账户):执行过账规则;stopenduml目前PlantUML的活动图语法还不能完整表示书中原图以及EA版UML图的内容原图6.19EA绘制图6.19 基于账户触发来更新账户的交互图PlantUMLstartumltitle账户被要求使其自身达到最新状态它找到所有以它作为输出的过账规则它找到作为这些过账规则触发者的所有账户它使每个这样的账户达到最新状态(递归)它执行所有以它作为输出的过账规则end titleparticipant :账户participant :过账规则participant 触发者账户: 账户[- :账户 : 更新()activate :账户:账户 - :账户 : 取以自己为输出\n的过账规则()activate :账户deactivate :账户loop 所有符合条件的过账规则:账户 - :过账规则 : 取触发者()activate :过账规则deactivate :过账规则loop 所有触发者账户:账户 - 触发者账户: 账户 : 更新()activate 触发者账户: 账户deactivate 触发者账户: 账户endendloop 所有符合条件的过账规则:账户 - :过账规则 : 执行()activate :过账规则deactivate :过账规则enddeactivate :账户enduml原图6.20EA绘制图6.20 使用账户类型。这引入了一个可以在上面定义过账规则的知识级。PlantUMLstartumlskinparam nodesep 140skinparam ranksep 100class 账户类型class 过账规则class 雇员账户class 雇员账户类型 1\n-触发者 -- 0..* 过账规则账户类型 1\n-输出 -- 0..* 过账规则账户类型 1 -- 0..* 雇员账户雇员账户 0..* -- 1 雇员enduml

相关新闻