日期:2014-05-19  浏览次数:20436 次

一个需求不知道怎么实现,请教各位(游泳的鱼大人乱入)
实现网上合同审批功能,
合同表contract     [ID(int),totalamount(double金额),client(String   客户),belong(int   所属合同模板)]
审批链表   workflow     [ID(int),belong(int   所属合同模板),totalamount(double),client(String   客户)]
合同模板表   contractKind       [ID(int),name(String)]
就是一个合同属于一个合同模板,一个合同模板可能包含多条审批链
1.具体走哪条审批链有金额与客户种类决定比如某个审批链是小于40万的新客户,同时也由属于哪个合同模板决定.(因为审批链是属于合同模板的)
2.条件需要动态定义,也就是说如果我把totalamount与client客户字段写到审批链表中的话,那就不能实现动态定义了.(如果是这样的情况的话我就只能select   *   from   contract,workflow   where   workflow.totalamount> contract.totalamount   and   workflow.client=contract.client)但是这样的话,如果我想不只想用totalamount而不用client的话,就不行了,或者我需要totalamount在40和500之间或者totalamount=1000的话就无法实现,因此需要动态定义审批链workflow的条件,请问这样需要怎么建库?

谢谢大家指教,解决立即给分

------解决方案--------------------
有沒有買workflow簽核引擎啊?
還是自己設計的?
若買了,就不成問題,否則自己設計會比較麻煩
------解决方案--------------------
需求不是太明确,
"如果我想不只想用totalamount而不用client的话,就不行了, "\*非常人才能理解啊*\
或者我需要totalamount在40和500之间或者totalamount=1000的话就无法实现

a) 合同表-> 合同模板表 1:1 or n:1 --?
b) 合同模板表-> 审批链表 1:n

如果a)为1:1 好象没必要搞这么复杂啊
如果a)为n:1 设置client列可以为null那不就解决问题


------解决方案--------------------
需求不太明确,看看工作流之类的文档