2013-11-27 53 views
0

我是JBOSS DROOLS的新手, 我需要在DROOLS規則下面僞代碼。 讓我知道任何聰明的方式進入DROOLS規則。聰明的方式來實現JBOSS DROOLS規則

if(Prod_of_Interest == "Signature Card" || Prod_nm == "001") 
    seg= '5555' 
else if(Prod_of_Interest == "SBI Platinum Card" || Prod_nm == "002") 
    seg= '6666' 
else if(Prod_of_Interest ==SBI Platinum Card == "SBI Gold & More Card" || Prod_nm == "003") 
    seg= '7777' 
else if(Prod_of_Interest ==SBI Platinum Card == "Yatra SBI Card" || Prod_nm == "004") 
    seg= '8888' 
else if(Prod_of_Interest ==SBI Platinum Card == "SpiceJet SBI Card" || Prod_nm == "005") 
    seg= '9999' 
else if(Prod_of_Interest ==SBI Platinum Card == "SBI Maruti Card" || Prod_nm == "006") 
    seg= '1111' 
else if(Prod_of_Interest ==SBI Platinum Card == "TATA Card" || Prod_nm == "007") 
    seg= '2222' 
else if(Prod_of_Interest ==SBI Platinum Card == "SBI Oriental Bank of Commerce Platinum Card" || Prod_nm == "008") 
    seg= '3333' 

口水排除

rule "Card1" 
    when 
     CARD(Prod_of_Interest == Signature Car || Prod_nm : 001) 
    then 
     Response s= new Response() 
     s.setSeg("5555");  
end 
+0

如果預計這種風格的規則集會增加(即更多卡片和產品),您可能希望查看決策表或模板,以避免自己編寫單獨的規則。但是,您編寫該規則的方式非常有效,但您需要有一個「insertLogical(s)」將響應對象放入工作內存以供檢索或在其他規則中使用。我想你可能需要提供更多關於你想要做什麼的信息。 – Steve

+0

Prod_of_Interest == SBI白金卡==「SBI黃金及更多卡」 有和&&或和||那麼呢? – Narkha

回答

0

注意:如果不等同於一組反映這些條件的規則的級聯。除非採取反制措施,否則規則將相互匹配並獨立開火。

這不是一個真正的答案 - 請遵循Steve的建議並提供更多信息。