| | |
| | | ReservedPro(); |
| | | } |
| | | |
| | | protected override void afterDelete(){ |
| | | ReservedPro(); |
| | | } |
| | | |
| | | private void ReservedPro(){ |
| | | //1.新建或者更新产品后,若预留产品有效,“预留产品”标识为true |
| | | if(trigger.isInsert || trigger.isUpdate){ |
| | |
| | | //2.(1)"是否有效" 变为 false 检索产品主数据下的所有预留产品,全无效则把产品主数据的"预留产品"标识 变为 false |
| | | // (2)"产品" 预留产品 更改 产品主数据之前的产品 -- 检索产品主数据下的所有预留产品(没有/全无效) |
| | | // "预留产品"标识 变为 false |
| | | if(trigger.isUpdate){ |
| | | if(trigger.isUpdate || trigger.isDelete){ |
| | | //"是否有效" 变为 "否" 时 所对应的产品主数据Id &&预留产品 更改 产品主数据之前的产品 |
| | | List<Id> pfList = new List<Id>(); |
| | | |
| | | for(LastbuyProduct__c lbp1 : newList){ |
| | | LastbuyProduct__c oldLbp1 = oldMap.get(lbp1.Id); |
| | | if(oldLbp1.effectiveFLG__c != lbp1.effectiveFLG__c){ |
| | | if(lbp1.effectiveFLG__c == false){ |
| | | pfList.add(lbp1.ProductName__c); |
| | | if(trigger.isUpdate){ |
| | | for(LastbuyProduct__c lbp1 : newList){ |
| | | LastbuyProduct__c oldLbp1 = oldMap.get(lbp1.Id); |
| | | if(oldLbp1.effectiveFLG__c != lbp1.effectiveFLG__c){ |
| | | if(lbp1.effectiveFLG__c == false){ |
| | | pfList.add(lbp1.ProductName__c); |
| | | } |
| | | } |
| | | //产品发生变化时,检索两个产品的标识 |
| | | if(oldLbp1.ProductName__c != lbp1.ProductName__c){ |
| | | pfList.add(oldLbp1.ProductName__c); |
| | | } |
| | | } |
| | | //产品发生变化时,检索两个产品的标识 |
| | | if(oldLbp1.ProductName__c != lbp1.ProductName__c){ |
| | | pfList.add(oldLbp1.ProductName__c); |
| | | } |
| | | else if(trigger.isDelete){ |
| | | for(LastbuyProduct__c lbp2 : oldList){ |
| | | pfList.add(lbp2.ProductName__c); |
| | | } |
| | | } |
| | | |
| | | |
| | | System.debug('lt123需检索所有预留产品的产品ID-pfList'+pfList); |
| | | |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | | } |