| | |
| | | robj.Cancel_Select__c = false; |
| | | robj.Cancel_Reason__c = ''; |
| | | robj.Rental_Start_Date__c = RentalStartDateMap.containsKey(esd.tempOldRaesIdSub)?RentalStartDateMap.get(esd.tempOldRaesIdSub):craes.Rental_Start_Date__c ; |
| | | switch on parentObj.demo_purpose2__c{ |
| | | when '试用(无询价)','试用(有询价)','新产品评价','其他','协议借用' { |
| | | robj.Rental_End_Date__c = robj.Rental_Start_Date__c + intValueOf(parentObj.Hope_Lonaer_date_Num__c); |
| | | } |
| | | when '一般用户','保修用户','市场多年保修','再修理','索赔QIS','已购待货','故障排查' { |
| | | robj.Rental_End_Date__c = robj.Rental_Start_Date__c + 30; |
| | | } |
| | | when '学会展会' { |
| | | robj.Rental_End_Date__c = parentObj.Campaign_EndDate_F__c + 5; |
| | | } |
| | | } |
| | | robj.Rental_End_Date__c = setRentalEndDate(robj.Rental_Start_Date__c, parentObj); |
| | | |
| | | //robj.Rental_End_Date__c = robj.Rental_Start_Date__c + Integer.valueOf(craes.Test_Day__c); |
| | | // 新记录 Canceled__c & Canceled_Id__c 为选中一览的Id |
| | | robj.Canceled__c = craes.canDelete__c?craes.Canceled__c:craes.Id; |
| | |
| | | if(!isRaStatusOK()) { |
| | | return; |
| | | } |
| | | |
| | | Id userId = Userinfo.getUserId(); // 20210624 ljh add SFDC-C448GR |
| | | Datetime now = System.now(); |
| | | if(isSameCity) { |
| | |
| | | if(raesd.Is_Body__c) { |
| | | mainIdList.add(raesd.Asset__c); |
| | | raesIdSet.add(esd.rec.Rental_Apply_Equipment_Set__c); |
| | | |
| | | // add lc 20220927 SFDC-CJ48VE 备品预计出库日逻辑调整 start |
| | | // 备品预计出库日应该等于今天,否则不能发货 |
| | | if( esd.rec.Rental_Apply_Equipment_Set__r.Rental_Start_Date__c != Date.today() ){ |
| | | ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, '备品预计出货日应该等于今天,否则不能发货!')); |
| | | return; |
| | | } |
| | | // add lc 20220927 SFDC-CJ48VE 备品预计出库日逻辑调整 end |
| | | } |
| | | |
| | | // 分配时临时取消的在发货后彻底取消 |
| | | if(raesd.AgencyTempCancel__c) { |
| | | raesd.Cancel_Select__c = true; |
| | |
| | | // 同城时自动收货 |
| | | if(isSameCity && !raesIdSet.isEmpty()) { |
| | | List<Rental_Apply_Equipment_Set__c> raesList = new List<Rental_Apply_Equipment_Set__c>(); |
| | | Date rentalEndDate = setRentalEndDate(Date.today(), parentObj); |
| | | for(Id raesId:raesIdSet) { |
| | | raesList.add(new Rental_Apply_Equipment_Set__c(Id=raesId, Received_Confirm__c = 'OK')); |
| | | raesList.add(new Rental_Apply_Equipment_Set__c(Id=raesId, Received_Confirm__c = 'OK', Rental_Start_Date__c = Date.today(), Rental_End_Date__c = rentalEndDate)); |
| | | } |
| | | FixtureUtil.withoutUpdate(raesList); |
| | | } |
| | |
| | | } |
| | | } |
| | | |
| | | public Date setRentalEndDate(Date startDate, Rental_Apply__c rentalApplyObj) { |
| | | Date endDate = null; |
| | | switch on rentalApplyObj.demo_purpose2__c{ |
| | | when '试用(无询价)','试用(有询价)','新产品评价','其他','协议借用' { |
| | | endDate = startDate + intValueOf(rentalApplyObj.Hope_Lonaer_date_Num__c); |
| | | } |
| | | when '一般用户','保修用户','市场多年保修','再修理','索赔QIS','已购待货','故障排查' { |
| | | endDate = startDate + 30; |
| | | } |
| | | when '学会展会' { |
| | | endDate = rentalApplyObj.Campaign_EndDate_F__c + 5; |
| | | } |
| | | } |
| | | |
| | | return endDate; |
| | | } |
| | | |
| | | |
| | | public class EsdInfo { |
| | | public Rental_Apply_Equipment_Set_Detail__c rec { get; set; } |
| | | public Boolean checked {get;set;} |