public without sharing class StartTradingController { /** リードID */ public String leadId{get;set;} /** リード */ public Lead lead{get;set;} /** リードOnwer */ public User leadOnwer{get; set;} public String staticResource {get; set;} /** コンストラクタ */ public StartTradingController(ApexPages.StandardController controller){ // リードID設定 this.leadId = system.currentPageReference().getParameters().get('leadId'); System.debug('this.leadId'+this.leadId); this.SI_Flg = false; staticResource = JSON.serialize(PIHelper.getPIIntegrationInfo('Contact')); } /** 引合ID */ public String oppID{get;set;} /** 診療科選択値 */ public String sltDep{get;set;} /** 診療科選択リスト */ public List depList{get;set;} /** 担当者Map */ public Map> conMap{get;set;} /** 担当者選択値 */ public String sltCon{get;set;} /** 担当者選択リスト */ public List conList{get;set;} /** SI引合*/ public Boolean SI_Flg{get;set;} /** 「なし」ラベル [Chinese:--无--] */ public static final String NONE = system.label.StartTrading_None; public static Boolean EscapeLeadUpdate = false; /** パラメータキー:病院 */ static final String P_HOSPITAL = system.label.StartTrading_P_Hospital; /** パラメータキー:戦略科室分類 */ static final String P_DEPT = system.label.StartTrading_P_Dept; /** パラメータキー:名称(診療科) */ static final String P_NAME = system.label.StartTrading_P_Name; /** パラメータキー:引合情報元 */ static final String P_LEADS = system.label.StartTrading_P_Leadsource; /** パラメータキー:その他学会 */ static final String P_SOCIETY = system.label.StartTrading_P_Society; /** パラメータキー:主キャンペーン */ static final String P_CAMPAIGN = system.label.StartTrading_P_Campaign; /** レコードタイプ:引合 */ static final String RC_OPP = '引合'; /** レコードタイプ:引合 */ private String Opptype = ''; /** エラーメッセージ:引合作成権限がない場合 **/ static final String ERROR_MSG_NONE_AUTHORITY = system.label.Error_Message26; /** 販売店から引合をConvertするフラグ **/ private Boolean isAgencyOpp = false; /** 初期処理 */ public PageReference init(){ // リード情報を取得 this.lead = [select id,SI_OppoLeadSec__c,owner_not_automatically_update__c, Hospital_Name__c, Contact_Name__c, Contact_Name__r.Name, Opportunity_stage__c,Hospital_Name__r.RecordType.DeveloperName, Hospital_Name__r.Parent.RecordType.DeveloperName, LastName, FirstName, LeadSource, Other_Society__c, Opp_Name__c, Purchase_Reason__c, Trade__c, Sales_Root__c, Campaign__c, Close_Forecasted_Date__c, Competitor__c, Hospital_Budget__c, Promise_Class__c, Dicision_Maker__c, Purchase_Type__c, Sales_Method__c, Fund_Basis__c, OwnerId, Wholesale_Price__c, Lead_No__c,Inquiry_Num__c,CreatedDate,CreatedById, Tender_information__c, Agency_Opportunity__c, SI_PromoteInquiry__c , Contact_Name__r.AccountId //2022-6-20 yjk 增加联系人的科室查询 ,ET_Check__c //SWAG-CKDATG fy 【委托】【OBSAP-报价委托】报价委托项目改善1 ,Hospital_Name__r.Parent.Parent.OCM_man_province_HP__c //20230329 lt DB202303246427 --青岛拆分 -- 根据询“省(客户)”赋值SAP上传省 add from Lead where id =: this.leadId]; this.SI_Flg = this.lead.SI_PromoteInquiry__c; // 診療科選択リストの取得(条件:病院=リード情報の病院名称) List departmentList = new List(); if (this.lead.Hospital_Name__r.RecordType.DeveloperName == 'HP') { departmentList = [select id, name from Account where Hospital__c =: this.lead.Hospital_Name__c]; } else if (this.lead.Hospital_Name__r.Parent.RecordType.DeveloperName == 'HP') { departmentList = [select id, name from Account where ParentId =: this.lead.Hospital_Name__c]; } /* // xudan 20140730 販売店を選択する場合、下の契約一覧を出す // TODO 契約状態を見る? else if (this.lead.Hospital_Name__r.RecordType.DeveloperName == 'Agency') { departmentList = [select id, name from Account where ParentId =: this.lead.Hospital_Name__c]; isAgencyOpp = true; } */ // xudan 20140730 契約を選択する場合、そのまま出す、フラグ設定 else if (this.lead.Hospital_Name__r.Parent.RecordType.DeveloperName == 'Agency') { departmentList = [select id, name from Account where Id =: this.lead.Hospital_Name__c]; isAgencyOpp = true; } else { departmentList = [select id, name from Account where Id =: this.lead.Hospital_Name__c]; } // 診療科選択リストの設定 this.depList = new List(); // 2022-04-13 ssm 紧急应对 科室和客户人员必填 start // this.depList.add(new SelectOption(NONE, NONE)); // 2022-04-13 ssm 紧急应对 科室和客户人员必填 end Set depIdList = new Set(); for(Account d : departmentList){ depIdList.add(d.id); this.depList.add(new SelectOption(String.valueOf(d.get('id')),String.valueOf(d.get('name')))); } // 2022-04-13 ssm 紧急应对 科室和客户人员必填 start // this.sltDep = NONE; this.sltDep = this.lead.Contact_Name__r.AccountId; // 2022-6-20 yjk 改为从联系人的科室赋值 原逻辑:this.lead.Hospital_Name__c; this.sltCon = this.lead.Contact_Name__c; // 2022-04-13 ssm 紧急应对 科室和客户人员必填 end // 担当者リスト(初期設定) this.conMap = new Map>(); List sltOptNasi = new List(); // 2022-04-13 ssm 紧急应对 科室和客户人员必填 start // sltOptNasi.add(new SelectOption(NONE, NONE)); //sltOptNasi.add(new SelectOption(this.lead.Contact_Name__c, this.lead.Contact_Name__r.Name));//SWAG-CEY8GZ 20220620 lt update //sltOptNasi.add(new SelectOption(String.isNotBlank(this.lead.Contact_Name__c) ? this.lead.Contact_Name__c : NONE, String.isNotBlank(this.lead.Contact_Name__c) ? this.lead.Contact_Name__r.Name : NONE));//SWAG-CEY8GZ 20220620 lt update // this.conMap.put(NONE, sltOptNasi); // 2022-04-13 ssm 紧急应对 科室和客户人员必填 end // this.conList = sltOptNasi; //SWAG-CEY8GZ 20220620 lt update // 担当者リストの取得 //SWAG-CEY8GZ 20220620 lt update // List contactList = [select id, name, AccountId from Contact where AccountId =: depIdList]; // for(Contact c : contactList){ // // 診療科ごとに「NONE」選択リストを設定 // List sltOptInit = new List(); // // 2022-04-13 ssm 紧急应对 科室和客户人员必填 start // // sltOptInit.add(new SelectOption(NONE, NONE)); // // 2022-04-13 ssm 紧急应对 科室和客户人员必填 end // this.conMap.put(c.AccountId,sltOptInit); // } // List conSltList = new List(); // for(Contact c : contactList){ // // 診療科ごとに選択リストを再設定 // conSltList = this.conMap.get(c.AccountId); // conSltList.add(new SelectOption(c.id, c.name)); // this.conMap.put(c.AccountId, conSltList); // } //SWAG-CEY8GZ 20220620 lt update // リード所有者の取得 this.leadOnwer = [select Province_Text__c from User where Id = :this.lead.OwnerId]; this.oppID = null; return start(); // return null; } /** 診療科選択リスト変更イベント */ public void depChange(){ // 診療科選択値によって、担当者選択リストを入れ替える this.conList = this.conMap.get(sltDep); } /** キャンセルボタン **/ public Pagereference cancel(){ return new Pagereference(URL.getSalesforceBaseUrl().toExternalForm() + '/' + this.leadId); } /** 取引の開始ボタン **/ public PageReference start(){ system.debug('进入start()'); // LHJ 20181012 CHAN-B5G6EZ 购买意向转询价报错 Start // try { // LHJ 20181012 CHAN-B5G6EZ 购买意向转询价报错 End // 商談作成権限のチェック // if(!Schema.Sobjecttype.Opportunity.isCreateable()){ // ApexPages.addMessage(new ApexPages.Message(ApexPages.severity.ERROR, ERROR_MSG_NONE_AUTHORITY)); // return null; // } // if(this.lead!=null){ // if(SI_Flg && this.lead.SI_OppoLeadSec__c==null){ // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '转SI询价需要填写询价副担当')); // return null; // } // } // 診療科未選択の場合、処理なし if (sltDep == NONE) { return null; } // 選択した診療科を取得 Account dept = null; // 担当者未選択の場合、リード担当者を登録 // if (sltCon == NONE) { // this.addContact(dept); // } //SWAG-CEY8GZ 20220620 lt update // Database.LeadConvertResult result = this.convertLead(); // this.oppID = result.getOpportunityId(); // ID conID = result.getContactId(); if(String.isNotBlank(this.lead.Contact_Name__c)){ dept = this.getDepartment(this.lead.Contact_Name__r.AccountId); this.updateContact(this.lead.Contact_Name__c, dept); } this.updateOpportunity(this.getDepartment(this.lead.Hospital_Name__c)); //SWAG-CEY8GZ 20220620 lt update // 引合の編集画面の初期値設定 //String uri = this.getUriOpportunity(dept); String uri = this.getUri(); // 引合の編集画面表示 //return new Pagereference(URL.getSalesforceBaseUrl().toExternalForm() + '/006/e?' + uri); return new Pagereference(URL.getSalesforceBaseUrl().toExternalForm() + '/' + this.oppID + '/e?' + uri); // LHJ 20181012 CHAN-B5G6EZ 购买意向转询价报错 Start // } catch (Exception ex) { // ApexPages.addMessages(ex); // return null; // } // LHJ 20181012 CHAN-B5G6EZ 购买意向转询价报错 End } /** * リードの取引開始 * */ public Database.LeadConvertResult convertLead(){ this.lead.Status = '確認済み'; // 時間ベースWorkflow解除のため EscapeLeadUpdate = true; update this.lead; Database.LeadConvert lc = new database.LeadConvert(); lc.setLeadId(this.lead.Id); lc.setAccountId(this.sltDep); if(this.sltCon != NONE){ lc.setContactId(this.sltCon); } LeadStatus convertstatus = [select Id, MasterLabel from LeadStatus where IsConverted=true limit 1]; lc.setConvertedStatus(convertStatus.MasterLabel); Database.LeadConvert[] lcArray = new Database.LeadConvert[] {lc}; Database.LeadConvertResult[] results = Database.convertLead(lcArray); return results[0]; } /** 取引先責任者の更新 * @param conID 取引先責任者ID * @param dept 診療科 */ public void updateContact(ID conID, Account dept){ Contact cont = [select ID,Strategic_dept_Class__c from Contact where Id=:conID]; cont.Strategic_dept_Class__c = dept.Department_Class__c; update cont; } /** 引合の更新 * @param dept 診療科 */ public String updateOpportunity(Account dept){ System.debug('dept:'+dept.Id + '|' + dept.Department_Class_Wd__c); //SWAG-CEY8GZ 20220620 lt update //Opportunity opp = [select ID, AccountId, Account.Department_Class_Wd__c, Opportunity_No__c, SAP_Province_CD__c, Opp_Number__c, Opp_Code__c from Opportunity where Id=:this.oppID]; Opportunity opp = new Opportunity(); opp.LeadSource = this.lead.LeadSource; opp.AccountId = dept.Id; //SWAG-CEY8GZ 20220620 lt update system.debug('cccccccccccccccccccc:'+opp.SAP_Province_CD__c); system.debug('cccccccccccccccccccc:'+opp.Opp_Number__c); system.debug('cccccccccccccccccccc:'+opp.Opp_Code__c); system.debug('cccccccccccccccccccc:'+opp.Opportunity_No__c); Opptype = SI_Flg==true?'SI询价':RC_OPP; RecordType rect = [select id from RecordType where IsActive = true and SobjectType = 'Opportunity' and Name =: Opptype limit 1]; opp.RecordTypeId = rect.id; // opp.Opportunity_Category__c = opp.Account.Department_Class_Wd__c; //SWAG-CKDATG fy 【委托】【OBSAP-报价委托】报价委托项目改善1 start // opp.Opportunity_Category__c = dept.Department_Class_Wd__c; opp.Opportunity_Category__c = this.lead.ET_Check__c ? 'ET' : dept.Department_Class_Wd__c; opp.Opp_order_Type__c = this.lead.ET_Check__c ? 'ET' : null; //SWAG-CKDATG fy 【委托】【OBSAP-报价委托】报价委托项目改善1 end System.debug('this.lead.Hospital_Name__c:'+this.lead.Hospital_Name__c); System.debug('this.lead.LeadSource:'+this.lead.LeadSource); System.debug('this.lead.Other_Society__c:'+this.lead.Other_Society__c); System.debug('this.lead.Purchase_Reason__c:'+this.lead.Purchase_Reason__c); System.debug('this.lead.Trade__c:'+this.lead.Trade__c); System.debug('this.lead.Sales_Root__c:'+this.lead.Sales_Root__c); System.debug('this.lead.Close_Forecasted_Date__c:'+this.lead.Close_Forecasted_Date__c); System.debug('this.lead.Competitor__c:'+this.lead.Competitor__c); System.debug('this.lead.Hospital_Budget__c:'+this.lead.Hospital_Budget__c); System.debug('this.lead.Promise_Class__c:'+this.lead.Promise_Class__c); System.debug('this.lead.Dicision_Maker__c:'+this.lead.Dicision_Maker__c); System.debug('this.lead.Purchase_Type__c:'+this.lead.Purchase_Type__c); System.debug('this.lead.Sales_Method__c:'+this.lead.Sales_Method__c); System.debug('this.lead.Fund_Basis__c:'+this.lead.Fund_Basis__c); if(this.lead.Opp_Name__c != null && this.lead.Opp_Name__c != ''){ opp.Name = this.lead.Opp_Name__c; } else{ opp.Name = '*'; } //20220412 SWAG-CBUB2W you start opp.Inquiry_Num__c = this.lead.Inquiry_Num__c; //20220412 SWAG-CBUB2W you end opp.From_Lead_TF__c = true; opp.Trade__c = (String.isBlank(this.lead.Trade__c)) ? '内貿' : this.lead.Trade__c; opp.StageName = '引合'; opp.owner_not_automatically_update__c = this.lead.owner_not_automatically_update__c; opp.Lead_Num__c = this.lead.Lead_No__c; opp.Lead_CreateBy__c = this.lead.CreatedById; opp.Lead_CreateDate__c = this.lead.CreatedDate; opp.CurrencyIsoCode = 'CNY'; opp.Purchase_Type__c = 'SI(手術室案件)'; system.debug('dddddddddddddddddddddd:'+this.lead.owner_not_automatically_update__c); Integer year = date.today().year(); Integer month = date.today().month(); Date nextMonthEndDay = date.newInstance(year, month, 1); Date thisMonthEndDay = nextMonthEndDay.addMonths(1); thisMonthEndDay = thisMonthEndDay.addDays(-1); nextMonthEndDay = nextMonthEndDay.addMonths(2); nextMonthEndDay = nextMonthEndDay.addDays(-1); opp.Close_Forecasted_Date__c = this.lead.Close_Forecasted_Date__c; opp.Close_Forecasted_Date__c = opp.Close_Forecasted_Date__c == null ? thisMonthEndDay : opp.Close_Forecasted_Date__c; if (nextMonthEndDay > opp.Close_Forecasted_Date__c) { opp.CloseDate = nextMonthEndDay; } else { opp.CloseDate = opp.Close_Forecasted_Date__c.addDays(30); } // xudan 20140730 販売店から引合をConvertする場合、Hospital__cをAccountIdを同じにする if (isAgencyOpp) { opp.Hospital__c = opp.AccountId; } else { opp.Hospital__c = dept.Hospital__c; opp.Department_Class__c = dept.Department_Class__c; } //2021-07-08 mzy SWAG-C4H99E 询价中的来源更改 start if('科室提案'.equals(this.lead.LeadSource) || 'OPD/SIS'.equals(this.lead.LeadSource) || '公共平台'.equals(this.lead.LeadSource) //测试环境 加的 对应的是 医拓网 || '电话'.equals(this.lead.LeadSource) || '医拓网'.equals(this.lead.LeadSource) ){ opp.LeadSource = '直接拜访'; }else { opp.LeadSource = this.lead.LeadSource; } //2021-07-08 mzy SWAG-C4H99E 询价中的来源更改 end opp.Other_Society__c = this.lead.Other_Society__c; opp.Purchase_Reason__c = this.lead.Purchase_Reason__c; opp.Trade__c = (String.isBlank(this.lead.Trade__c)) ? '内貿' : this.lead.Trade__c; // 增加默认值 opp.Sales_Root__c = String.isNotBlank(this.lead.Sales_Root__c) ? this.lead.Sales_Root__c : '販売店'; if (this.lead.Competitor__c != null && this.lead.Competitor__c != '') { opp.Competitor__c = this.lead.Competitor__c; } if (this.lead.Opportunity_stage__c != null && this.lead.Opportunity_stage__c != '') { opp.Opportunity_stage__c = this.lead.Opportunity_stage__c; } opp.Hospital_Budget__c = this.lead.Hospital_Budget__c; // 增加默认值 opp.Promise_Class__c = String.isNotBlank(this.lead.Promise_Class__c) ? this.lead.Promise_Class__c : '内貿'; opp.Dicision_Maker__c = this.lead.Dicision_Maker__c; //********************************************************************************** opp.Purchase_Type__c = SI_Flg==true?'SI(手術室案件)':this.lead.Purchase_Type__c; // 副担当自动设置 // User ownerUser = [select Id, ProfileId, State_Hospital__c, Salesdepartment_text__c from User where Id = :this.lead.OwnerId]; // switch on ownerUser.Salesdepartment_text__c { // when '1.华北' { // opp.Opportunity_sub_owner__c = '00510000001QAcO'; // } // when '2.东北' { // opp.Opportunity_sub_owner__c = '00510000007hBuy'; // } // when '3.西北' { // opp.Opportunity_sub_owner__c = '00510000005V2cA'; // } // when '4.西南' { // opp.Opportunity_sub_owner__c = '00510000007hBuy'; // } // when '5.华东' { // opp.Opportunity_sub_owner__c = '00510000001QRls'; // } // when '6.华南' { // opp.Opportunity_sub_owner__c = '00510000001OOQW'; // } // when else { // opp.Opportunity_sub_owner__c = this.lead.SI_OppoLeadSec__c; // } // } opp.Opportunity_sub_owner__c = this.lead.SI_OppoLeadSec__c; //********************************************************************************** opp.Sales_Method__c = this.lead.Sales_Method__c; opp.Fund_Basis__c = this.lead.Fund_Basis__c; //20230329 lt DB202303246427 --青岛拆分 -- 根据询“省(客户)”赋值SAP上传省 start // opp.SAP_Province__c = this.leadOnwer.Province_Text__c; System.debug('lt123---this.lead.Hospital_Name__r.Parent.Parent.OCM_man_province_HP__c:'+this.lead.Hospital_Name__r.Parent.Parent.OCM_man_province_HP__c); Map SAP_ProvinceMap = new Map(); SAP_ProvinceMap.put('宁夏','宁夏自治区'); SAP_ProvinceMap.put('新疆','新疆自治区'); SAP_ProvinceMap.put('黑龙江','黑龙江省'); SAP_ProvinceMap.put('广西','广西自治区'); SAP_ProvinceMap.put('大连','大连市'); SAP_ProvinceMap.put('沈阳','辽宁省'); //暂时辽宁 SAP_ProvinceMap.put('广东','广东省'); SAP_ProvinceMap.put('深圳','深圳市'); SAP_ProvinceMap.put('青岛','青岛市'); SAP_ProvinceMap.put('山东','山东省'); SAP_ProvinceMap.put('四川/西藏','四川省'); SAP_ProvinceMap.put('安徽','安徽省'); SAP_ProvinceMap.put('北京','北京市'); SAP_ProvinceMap.put('福建','福建省'); SAP_ProvinceMap.put('甘肃','甘肃省'); SAP_ProvinceMap.put('贵州','贵州省'); SAP_ProvinceMap.put('河北','河北省'); SAP_ProvinceMap.put('河南','河南省'); SAP_ProvinceMap.put('湖北','湖北省'); SAP_ProvinceMap.put('湖南','湖南省'); SAP_ProvinceMap.put('吉林','吉林省'); SAP_ProvinceMap.put('江苏','江苏省'); SAP_ProvinceMap.put('江西','江西省'); SAP_ProvinceMap.put('青海','青海省'); SAP_ProvinceMap.put('山西','山西省'); SAP_ProvinceMap.put('陕西','陕西省'); SAP_ProvinceMap.put('上海','上海市'); SAP_ProvinceMap.put('天津','天津市'); SAP_ProvinceMap.put('云南','云南省'); SAP_ProvinceMap.put('浙江','浙江省'); SAP_ProvinceMap.put('重庆','重庆市'); SAP_ProvinceMap.put('海南','海南省'); //内蒙古一致 String SAP_Province = this.lead.Hospital_Name__r.Parent.Parent.OCM_man_province_HP__c; if(SAP_ProvinceMap.containsKey(SAP_Province)){ SAP_Province = SAP_ProvinceMap.get(SAP_Province); } opp.SAP_Province__c = SAP_Province; //20230329 lt DB202303246427 --青岛拆分 -- 根据询“省(客户)”赋值SAP上传省 end opp.Owner_System__c = opp.OwnerId; if(this.lead.OwnerId != null ){ opp.Ownerid = this.lead.OwnerId ; } opp.Wholesale_Price__c = this.lead.Wholesale_Price__c; List leadcList = [Select (Select CampaignId From CampaignMembers order by CreatedDate desc) From Lead l where l.id =: this.leadId]; for(Lead leadc : leadcList){ List cmList = leadc.CampaignMembers; for (CampaignMember cm : cmList) { opp.CampaignId = cm.CampaignId; break; } } System.debug('opp.Hospital_Name__c:'+opp.Hospital__c); System.debug('dept12345:'+dept.Hospital__c); System.debug('opp.LeadSource:'+opp.LeadSource); System.debug('opp.Other_Society__c:'+opp.Other_Society__c); System.debug('opp.Purchase_Reason__c:'+opp.Purchase_Reason__c); System.debug('opp.Trade__c:'+opp.Trade__c); System.debug('opp.Sales_Root__c:'+opp.Sales_Root__c); System.debug('opp.Close_Forecasted_Date__c:'+opp.Close_Forecasted_Date__c); System.debug('opp.Competitor__c:'+opp.Competitor__c); System.debug('opp.Hospital_Budget__c:'+opp.Hospital_Budget__c); System.debug('opp.Promise_Class__c:'+opp.Promise_Class__c); System.debug('opp.Dicision_Maker__c:'+opp.Dicision_Maker__c); System.debug('opp.Purchase_Type__c:'+opp.Purchase_Type__c); System.debug('opp.Sales_Method__c:'+opp.Sales_Method__c); System.debug('opp.Fund_Basis__c:'+opp.Fund_Basis__c); System.debug('opp.SAP_Province__c:'+opp.SAP_Province__c); // 2022-04-15 OBSAP新增修改 start opp.CampaignId = this.lead.Campaign__c; System.debug('opp.CampaignId:'+opp.CampaignId); // 招标项目 if (String.isNotBlank(this.lead.Tender_information__c)) { opp.Bidding_Project_Name_Bid__c = this.lead.Tender_information__c; //SWAG-CEY8GZ 20220620 lt update // 新建link // Tender_Opportunity_Link__c link = new Tender_Opportunity_Link__c(); // link.Tender_information__c = this.lead.Tender_information__c; // link.Opportunity__c = opp.Id; // link.Tender_Opportunity_Uniq__c = String.valueOf(this.lead.Tender_information__c) + String.valueOf(opp.Id); // insert link; //SWAG-CEY8GZ 20220620 lt update } // 经销商询价 // 2022-05-20 调整经销商询价的更新顺序 ssm start //SWAG-CEY8GZ 20220620 lt update // Agency_Opportunity__c ao = null; if (String.isNotBlank(this.lead.Agency_Opportunity__c)) { opp.Agency_Opportunity__c = this.lead.Agency_Opportunity__c; // 经销商询价绑定询价 // ao = [select Id, Change_To_Opportunity__c from Agency_Opportunity__c where Id = :this.lead.Agency_Opportunity__c]; // ao.Change_To_Opportunity__c = opp.Id; } // 2022-04-15 OBSAP新增修改 end //update opp; insert opp; this.oppId = opp.ID; this.lead.Status = System.Label.StateChanges; this.lead.begin_opp_name__c = opp.Id; this.lead.begin_opp_date__c = Date.today(); update this.lead; // if (String.isNotBlank(this.lead.Tender_information__c)) { // // 新建link // Tender_Opportunity_Link__c link = new Tender_Opportunity_Link__c(); // link.Tender_information__c = this.lead.Tender_information__c; // link.Opportunity__c = opp.Id; // link.Tender_Opportunity_Uniq__c = String.valueOf(this.lead.Tender_information__c) + String.valueOf(opp.Id); // insert link; // } // if (ao != null && ao.Id != null) { // update ao; // } //SWAG-CEY8GZ 20220620 lt update // 2022-05-20 调整经销商询价的更新顺序 ssm end // //SWAG-CF589P【委托】【P:OBSAP】报价委托相关新需求评估 fy start List quoteir=[select id,Opportunity__c,Lead__c from QuoteIrai__c where Lead__c =:leadId]; List quoteirupdate = new List(); if(quoteir.size()>0){ for(QuoteIrai__c quo : quoteir){ if(quo.Opportunity__c==null||quo.Opportunity__c==''){ quo.Opportunity__c=opp.Id; quoteirupdate.add(quo); } } } System.debug('leadId++'+leadId); System.debug('quoteir++'+quoteir); System.debug('quoteirupdate++'+quoteirupdate); if(quoteirupdate.size()>0){ update quoteirupdate; } // //SWAG-CF589P【委托】【P:OBSAP】报价委托相关新需求评估 fy end return null; } /** 引合の編集画面のURI取得 * @return 引合編集画面初期値用URI */ public String getUri(){ // キャンセル時戻り画面 String uri = 'retURL=%2F' + this.oppID; // エントリ商談(引合) uri += '&ent=Opportunity'; return uri; } /** * 選択した診療科を取得 */ public Account getDepartment(String depId){ List deptList = [select Id, Hospital__c, Department_Class__c, Department_Class_Wd__c from Account where id =: depId]; // List deptList = [select Id, Hospital__c, Department_Class__c from Account where id =: this.sltDep]; Account dept = deptList[0]; return dept; } }