public class infrastructureProjectRelatedOpController { public static List sortList = new List{'询价','注残','发货','完毕','失单','取消'}; @AuraEnabled //根据报价Id检索 public static Infrastructure_Project__c selectInfrastructureProjectById(String InfProId){ List InfrastructureProject = [ SELECT Id,Name,OCSM_Hospital__c,OCSM_Hospital__r.Name FROM Infrastructure_Project__c Where Id = :InfProId]; Infrastructure_Project__c InfProobj = new Infrastructure_Project__c(); if(InfrastructureProject.size()>0){ InfProobj = InfrastructureProject[0]; } return InfProobj; } @AuraEnabled //根据报价Id检索 public static List selectoppByAccountId(String OCSMHospital ){ Map> OppMap = new Map>(); List OppList = [ SELECT Id,Name,StageName__c,Opportunity_No__c,Opportunity_stage__c from Opportunity Where Hospital__c = :OCSMHospital and Infrastructure_Project__c =null and StageName__c != '目标' order by StageName__c asc,CreatedDate desc]; for (Opportunity Oppobj : OppList) { if(OppMap.containsKey(Oppobj.StageName__c)){ List oldopp = OppMap.get(Oppobj.StageName__c); oldopp.add(Oppobj); OppMap.put(Oppobj.StageName__c,oldopp); }else{ List newopp = new List(); newopp.add(Oppobj); OppMap.put(Oppobj.StageName__c,newopp); } } List sortOppList = new List(); for (String sortStr : sortList) { if(OppMap.containsKey(sortStr)){ sortOppList.addAll(OppMap.get(sortStr)); } } return sortOppList; } @AuraEnabled public static List selectoppByOpportunityNoc(String OCSMHospital,String OpportunityNoc){ System.debug('aa+'+OpportunityNoc); Map> OppMap = new Map>(); String searchSql = 'Select Id,Name,StageName__c,Opportunity_No__c,Opportunity_stage__c From Opportunity Where Infrastructure_Project__c =null and Hospital__c = \''+OCSMHospital+'\' and StageName__c != \'目标\' '; String whereSql = ''; if(OpportunityNoc != null && OpportunityNoc != ''){ whereSql += 'and (Opportunity_No__c Like ' + '\'%' + OpportunityNoc + '%\' or Name Like ' + '\'%' + OpportunityNoc + '%\') '; } whereSql += ' order by StageName__c asc,CreatedDate desc'; searchSql = searchSql + whereSql; System.debug('searchSql+'+searchSql); List OppList = Database.query(searchSql); for (Opportunity Oppobj : OppList) { if(OppMap.containsKey(Oppobj.StageName__c)){ List oldopp = OppMap.get(Oppobj.StageName__c); oldopp.add(Oppobj); OppMap.put(Oppobj.StageName__c,oldopp); }else{ List newopp = new List(); newopp.add(Oppobj); OppMap.put(Oppobj.StageName__c,newopp); } } List sortOppList = new List(); for (String sortStr : sortList) { if(OppMap.containsKey(sortStr)){ sortOppList.addAll(OppMap.get(sortStr)); } } return sortOppList; } @AuraEnabled public static String saveOppInfrastructureProject(String saveValuec){ Savepoint sp = Database.setSavepoint(); try { List oppList = (List)JSON.deserialize(saveValuec,List.class); StaticParameter.EscapeOppandStaTrigger = true; update oppList; StaticParameter.EscapeOppandStaTrigger = false; return 'success'; } catch (Exception e) { Database.rollback(sp); return ''+e; } } }