[問題] 不固定條件的設計方式?

看板OOAD作者 (.....)時間13年前 (2011/09/18 19:58), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
問題情節描述: 1.整個步驟如下: 查詢使用者資料-->keep在物件中-->受理流程-->受理完畢--> 產生XML 並傳送資料給外部系統 2. 現在在受理完畢 和 產生 XML 之間想要插入一個流程, 在某些條件下, 則不產生XML ( 即不傳送資料給外部系統 ) 3. 續2, 這個"某些條件" 不固定, 有可能是看使用者的電話號碼, 有可能是看身份證號, 甚至任何基於使用者資料的條件, ( 更進一步或許還有不基於使用者資料的條件 ) 目的: 要如何設計這個 某些條件 的管理, 當想新增條件時, 只需要設定即可達到目的, 而不需要每次都 hard code 在程式中 一種方式是建一個表格, 存放 SQL 和 consition 來當作條件filter, 例如今天的條件是 "使用者電話號碼若是 0988 開頭 則不產生資料給外部系統" 則在表格中就可設定類似 condition SQL exists select first 1 telno from telnum where telno like '0988%' 在程式中則依 condition 的分類去執行 SQL 條件, 在上例 condition 是 exists 因此只要 SQL 執行結果存在一筆資料以上就成立, 即不產生資料給外部系統... 不過類似這樣把SQL放在table中的設計方式 感覺跟 DB 綁很緊而且好像不是很OO.... 而且使用者資料在一開始都已經查出來keep住了 用SQL設定感覺又再重查一次 很沒有效率.... 不知道有什麼更好的設計方式? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.249.135.45
文章代碼(AID): #1ETTpZ5Z (OOAD)
文章代碼(AID): #1ETTpZ5Z (OOAD)