buli
2022-05-13 2f4492ee18f90274582fcc2bb06f5e9bf64136e8
force-app/main/default/classes/SBG027Controller.cls
@@ -107,7 +107,7 @@
                                                Opportunity.SalesChannel__c, Opportunity.ExpectedDeliveryDate__c, Opportunity.DealerId__c,Opportunity.DealerSalesStaffName__c,OlympusContractPricesD__c,SpecialDeliveryContact_D__c,Opportunity.SpecialDeliveryContact_D__r.ManagementCode_F__c,
                                                Opportunity.ForeignTradeCompany__c, Opportunity.SpecialDeliveryAddress__c,PaymentTerms__c,SpecialDeliveryContact__c,PDF_Sp_Shipment_Term__c,PDF_Sp_ShippingTerms__c,
                                                ForeignTradeCompany_D__r.ManagementCode_F__c, SpecialDeliveryAccount_D__r.ManagementCode_F__c, SpecialDeliveryContact2_D__r.ManagementCode_F__c,Opportunity.Dealer__r.DummyDealer__c,ContractPriceTotal__c,
                                                If_Supervise__c,CrossCooperativeDealerCode__c,SplitRatio__c,CrossCooperativeProject__c,Level_Category__c,DealerSalesStaffNameA__c,Dealer_A__r.ManagementCode_Ext__c,Dealer_B__r.ManagementCode_F__c
                                                If_Supervise__c,CrossCooperativeDealerCode__c,SplitRatio__c,CrossCooperativeProject__c,Level_Category__c
                                             from order where Id IN :ordIds ];
            //List<order> ordList = [select Id,Name,Opportunity.Name, Opportunity.CurrencyIsoCode,OrderNumber,Opportunity.ForeignTradeCompany__r.ManagementCode_F__c,CustomerContractPriceD__c,SpecialCondition_text__c,SalesChannel__c,
            //                                    Owner.Name,Opportunity.AccountId__c,Opportunity.InquiryNumber__c,Opportunity.SpecialDeliveryAddress__r.ManagementCode_F__c, ServiceFee_D__c,Opportunity.SpecialDeliveryAddress_D__c,Opportunity.SpecialDeliveryAddress_D__r.ManagementCode_F__c,
@@ -189,9 +189,14 @@
                
                //CBPR
                if (ord.Opportunity.Dealer__r.DummyDealer__c == true || ord.Opportunity.SalesChannel__c == 'direct'){
                quotation.DealerCode          = ord.Opportunity.Account.ManagementCode_F__c;
                quotation.SalesAccountCode                   = ord.SpecialDeliveryAccount_D__r.ManagementCode_F__c;
                }
                    quotation.DealerCode          = ord.Opportunity.Account.ManagementCode_F__c;
                        if (ord.Opportunity.TradeType__c == 'Tax Exemption' && ord.Opportunity.SalesChannel__c == 'direct') {
                            quotation.SalesAccountCode = ord.Opportunity.Account.ManagementCode_F__c;
                        }else {
                            quotation.SalesAccountCode = ord.SpecialDeliveryAccount_D__r.ManagementCode_F__c;
                        }
                    }
                else{
                quotation.DealerCode          = ord.Opportunity.Dealer__r.ManagementCode_Ext__c;
                quotation.SalesAccountCode                   = ord.Opportunity.Account.ManagementCode_F__c;
@@ -200,13 +205,13 @@
                quotations.GeData.add(quotation);
                quotation.OrderCode                      = ord.OrderNumber;
                quotation.OpportunityCode                = ord.Opportunity.InquiryNumber__c;
//                //quotation.SalesAccountCode                   = ord.Opportunity.Account.ManagementCode_F__c;
//                quotation.SalesAccountCode                   = ord.Opportunity.Account.ManagementCode_F__c;
                quotation.ProductSegment              = ord.Opportunity.ProductSegment__c;
                quotation.TradeType              = ord.Opportunity.TradeType__c;
                quotation.MachineParts                   = ord.Opportunity.Machine_Parts__c;
                quotation.SalesChannel   =                 ord.Opportunity.Machine_Parts__c == 'Parts' ? '40' : ord.Opportunity.SalesChannel__c == 'dealer' ?  '41' : '42';
                quotation.DeliveryDate          = NFMUtil.formatDate2Str(ord.Opportunity.ExpectedDeliveryDate__c);
//               // quotation.DealerCode          = ord.Opportunity.Dealer__r.ManagementCode_Ext__c;
//                quotation.DealerCode          = ord.Opportunity.Dealer__r.ManagementCode_Ext__c;
                quotation.DealerSalesStaffName         = ord.Opportunity.DealerSalesStaffName__c;
                quotation.ForeignTradeCompany                   = ord.ForeignTradeCompany_D__r.ManagementCode_F__c;
                quotation.PaymentCondition                  = ord.PaymentTerms__c;
@@ -241,9 +246,7 @@
                quotation.CoopAgent = '';
                quotation.CoopAgentPCT = '';
                if (ord.CrossCooperativeProject__c) {//跨省份合作项目
                    quotation.CoopAgent = ord.Dealer_B__r.ManagementCode_F__c;//合作区域代理商Code
                    quotation.DealerCode         = ord.Dealer_A__r.ManagementCode_Ext__c;
                    quotation.DealerSalesStaffName = ord.DealerSalesStaffNameA__c;
                    quotation.CoopAgent = ord.CrossCooperativeDealerCode__c;//合作区域代理商Code
                    String splitRatio = ord.SplitRatio__c;
                    if (String.isNotBlank(splitRatio) && splitRatio.indexof(':') > 0) {
                        Integer pct = Integer.valueOf(splitRatio.split(':')[1].trim())*10;