From c6e651446bf356eb44197053e3d57bf5a0d9a50c Mon Sep 17 00:00:00 2001
From: 李彤 <litong@prec-tech.com>
Date: 星期三, 14 九月 2022 15:14:24 +0800
Subject: [PATCH] XLIU-CHY4KW

---
 force-app/main/default/classes/NewQuoteIraiControllerTest.cls |  182 +++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 165 insertions(+), 17 deletions(-)

diff --git a/force-app/main/default/classes/NewQuoteIraiControllerTest.cls b/force-app/main/default/classes/NewQuoteIraiControllerTest.cls
index 5400331..6f804fe 100644
--- a/force-app/main/default/classes/NewQuoteIraiControllerTest.cls
+++ b/force-app/main/default/classes/NewQuoteIraiControllerTest.cls
@@ -57,6 +57,7 @@
         product1.Intra_Trade_Cost_RMB_1__c=10;
         product1.Intra_Trade_Cost_RMB_2__c=10;
         product1.SFDA_Expiration_Date__c= Date.today();
+        product1.LastbuyProductFLG__c = true;
         //CHAN-BHNBX6 2019/11/25 START
         // product1.Intra_Trade_Service_RMB__c = 2150;
         // product1.Entend_gurantee_period_all__c=1;
@@ -262,7 +263,7 @@
         // CHAN-BHNBX6 2019/11/25 END
         controller.Save();
         
-        QuoteIrai__c[] irais = [select Id, Name, IraiUser__c, LastIraiUser__c, IraiSubject__c, CurrencyIsoCode from QuoteIrai__c where IraiSubject__c = '銉嗐偣銉�01'];
+        QuoteIrai__c[] irais = [select Id, Name,Note__c, IraiUser__c, LastIraiUser__c, IraiSubject__c, CurrencyIsoCode from QuoteIrai__c where IraiSubject__c = '銉嗐偣銉�01'];
         // CHAN-BHNBX6 2019/11/25 START
         QuoteIraiLineItem__c[] items = [select Id, Asset_Model_No__c, SFDA_Status__c, Name__c,Quantity__c, ListPrice__c, ProductCode__c,Product2__c,ServicePrice__c,GuaranteePeriod__c from QuoteIraiLineItem__c where QuoteIrai__c = :irais[0].Id order by Item_Order__c];
         // CHAN-BHNBX6 2019/11/25 END
@@ -308,7 +309,7 @@
         
         controller.quoteIrai();
         
-        QuoteIrai__c[] irais2 = [select Id, Name, IraiUser__c, LastIraiUser__c, IraiSubject__c, CurrencyIsoCode from QuoteIrai__c where IraiSubject__c = '銉嗐偣銉�01'];
+        QuoteIrai__c[] irais2 = [select Id,Note__c, Name, IraiUser__c, LastIraiUser__c, IraiSubject__c, CurrencyIsoCode from QuoteIrai__c where IraiSubject__c = '銉嗐偣銉�01'];
         //System.assertEquals('_銈点兂銉栥儶銉冦偢 銇�', irais2[0].LastIraiUser__c);
         
         Task[] tasks = [select Id,Subject,OwnerId,Description,ActivityDate,QuoteIraiId__c
@@ -320,7 +321,7 @@
         
         controller.activities[0].pageObject.Quantity__c = 1;
         controller.Save();
-        QuoteIrai__c[] irais3 = [select Id, Name, IraiUser__c, LastIraiUser__c, IraiSubject__c, CurrencyIsoCode from QuoteIrai__c where IraiSubject__c = '銉嗐偣銉�01'];
+        QuoteIrai__c[] irais3 = [select Id,Note__c, Name, IraiUser__c, LastIraiUser__c, IraiSubject__c, CurrencyIsoCode from QuoteIrai__c where IraiSubject__c = '銉嗐偣銉�01'];
         //System.assertEquals(null, irais3[0].LastIraiUser__c);
     }
     
@@ -341,7 +342,7 @@
         insert myAccount1;
         Product2 product1 = new Product2();
         product1.Name = '00107:楂橀鐢垫瀬锛屾寜閽舰锛�4Fr.锛岃蒋鎬�';
-        product1.SFDA_Status__c = '鏈夊姽';
+        product1.SFDA_Status__c = '澶卞姽锛堝啀鐢宠珛涓級';
         product1.Manual_Entry__c = false;
         product1.Asset_Model_No__c = '00107';
         product1.ProductCode = '00107';
@@ -359,13 +360,14 @@
         product1.Foreign_Trade_Cost_US_End_Date2__c=Date.today().addDays(1);
         product1.Foreign_Trade_Cost_US_1__c=10;
         product1.Foreign_Trade_Cost_US_2__c=10;
+        // product1.LastbuyProductFLG__c = true;
         // CHAN-BHNBX6 2019/11/25 START
         //product1.Entend_gurantee_period_all__c=1;
         // CHAN-BHNBX6 2019/11/25 END
         
         Product2 product2 = new Product2();
         product2.Name = '00103:杞鎺ュご';
-        product2.SFDA_Status__c = '鏈夊姽';
+        product2.SFDA_Status__c = '澶卞姽锛堝啀鐢宠珛涓級';
         product2.Manual_Entry__c = false;
         product2.Asset_Model_No__c = '00103';
         product2.ProductCode = '00103';
@@ -388,7 +390,7 @@
         // CHAN-BHNBX6 2019/11/25 END
         Product2 product3 = new Product2();
         product3.Name = '00102.1:鏃嬮榾锛屽厤缁存姢';
-        product3.SFDA_Status__c = '鏈夊姽';
+        product3.SFDA_Status__c = '澶卞姽锛堝啀鐢宠珛涓級';
         product3.Manual_Entry__c = false;
         product3.Asset_Model_No__c = '00102.1';
         product3.ProductCode = '00102.1';
@@ -568,7 +570,7 @@
         
         controller.OppReflection();
         
-        QuoteIrai__c[] irais = [select Id, Name, IraiUser__c, IraiSubject__c, CurrencyIsoCode from QuoteIrai__c where IraiSubject__c = '銉嗐偣銉�02'];
+        QuoteIrai__c[] irais = [select Id,Note__c, Name, IraiUser__c, IraiSubject__c, CurrencyIsoCode from QuoteIrai__c where IraiSubject__c = '銉嗐偣銉�02'];
         QuoteIraiLineItem__c[] items = [select Id, Asset_Model_No__c, SFDA_Status__c, Name__c,Quantity__c, ListPrice__c, ProductCode__c,Product2__c,ServicePrice__c,GuaranteePeriod__c from QuoteIraiLineItem__c where QuoteIrai__c = :irais[0].Id order by Item_Order__c];
         
         // System.assertEquals('銉嗐偣銉�02', irais[0].IraiSubject__c);
@@ -667,6 +669,7 @@
         product1.Intra_Trade_Cost_RMB_End_Date2__c=Date.today().addDays(1);
         product1.Intra_Trade_Cost_RMB_1__c=10;
         product1.Intra_Trade_Cost_RMB_2__c=10;
+        // product1.LastbuyProductFLG__c = true;
         // CHAN-BHNBX6 2019/11/25 START
         //product1.Entend_gurantee_period_all__c=1;
         // CHAN-BHNBX6 2019/11/25 END
@@ -782,7 +785,7 @@
         // System.assertEquals('浣犻�夋嫨浜嗕笉鍙姤浠风殑浜у搧銆備骇鍝佸凡缁忔洿鏂颁负鏈�鏂扮姸鎬侊紝璇峰啀娆$‘璁ゃ��', controller.errorMessage);
 
         
-        QuoteIrai__c[] irais = [select Id, Name, IraiUser__c, IraiSubject__c, CurrencyIsoCode from QuoteIrai__c order where IraiSubject__c = '濮旀墭02'];
+        QuoteIrai__c[] irais = [select Id,Note__c, Name, IraiUser__c, IraiSubject__c, CurrencyIsoCode from QuoteIrai__c order where IraiSubject__c = '濮旀墭02'];
         QuoteIraiLineItem__c[] items = [select Id, Asset_Model_No__c, SFDA_Status__c, Name__c,Quantity__c, ListPrice__c, ProductCode__c,Product2__c,ServicePrice__c,GuaranteePeriod__c from QuoteIraiLineItem__c where QuoteIrai__c = :irais[0].Id order by Item_Order__c];
         
         // System.assertEquals('濮旀墭02', irais[0].IraiSubject__c);
@@ -886,6 +889,7 @@
         product1.Intra_Trade_Cost_RMB_End_Date2__c=Date.today().addDays(1);
         product1.Intra_Trade_Cost_RMB_1__c=10;
         product1.Intra_Trade_Cost_RMB_2__c=10;
+        product1.LastbuyProductFLG__c = true;
         // CHAN-BHNBX6 2019/11/25 START
         //product1.Entend_gurantee_period_all__c=1;
         // CHAN-BHNBX6 2019/11/25 END
@@ -1004,7 +1008,32 @@
         product2 pro = [select id,SFDA_Status_New__c from product2 where id = :Product1.Id];
         //System.assertEquals('鏈夊姽', pro.SFDA_Status_New__c);
         //CHAN-BHNBX6 2019/11/26 END
-        PageReference page = new PageReference('/apex/NewQuoteIrai?copyid=' + irai.Id);
+        StaticParameter.EscapeOppandStaTrigger = true;
+        Opportunity opp1 = new Opportunity();
+        opp1.Name = 'test';
+        opp1.StageName = '寮曞悎';
+        opp1.CloseDate = Date.today().adddays(1);
+        opp1.If_Account_Change__c = false;
+        insert opp1;
+
+        Opportunity opp2 = new Opportunity();
+        opp2.Name = 'test';
+        opp2.StageName = '寮曞悎';
+        opp2.CloseDate = Date.today().adddays(1);
+        opp2.If_Account_Change__c = false;
+        insert opp2;
+
+        System.test.startTest();
+
+        LastbuyProduct__c lp = new LastbuyProduct__c();
+        lp.InquiryCode__c = opp2.Id;
+        lp.ProductName__c = product1.Id;
+        lp.LastbuyQuantity__c = 10;
+        lp.Name = '*';
+        lp.effectiveFLG__c = true;
+        insert lp;
+
+        PageReference page = new PageReference('/apex/NewQuoteIrai?copyid=' + irai.Id + '&oppid=' + opp1.Id);
         System.Test.setCurrentPage(page);
         
         NewQuoteIraiController controller = new NewQuoteIraiController();
@@ -1048,8 +1077,8 @@
         
         controller.quoteIrai();
         
-        QuoteIrai__c[] irais = [select Id, Name, IraiUser__c, IraiSubject__c, CurrencyIsoCode from QuoteIrai__c order where IraiSubject__c = '濮旀墭99'];
-        QuoteIraiLineItem__c[] items = [select Id, Asset_Model_No__c, SFDA_Status__c, Name__c,Quantity__c, ListPrice__c, ProductCode__c,Product2__c,ServicePrice__c,GuaranteePeriod__c from QuoteIraiLineItem__c where QuoteIrai__c = :irais[0].Id order by Item_Order__c];
+        // QuoteIrai__c[] irais = [select Id,Note__c, Name, IraiUser__c, IraiSubject__c, CurrencyIsoCode from QuoteIrai__c order where IraiSubject__c = '濮旀墭99'];
+        // QuoteIraiLineItem__c[] items = [select Id, Asset_Model_No__c, SFDA_Status__c, Name__c,Quantity__c, ListPrice__c, ProductCode__c,Product2__c,ServicePrice__c,GuaranteePeriod__c from QuoteIraiLineItem__c where QuoteIrai__c = :irais[0].Id order by Item_Order__c];
         
         // System.assertEquals('濮旀墭99', irais[0].IraiSubject__c);
         // System.assertEquals(user.Id, irais[0].IraiUser__c);
@@ -1078,13 +1107,40 @@
         // // System.assertEquals(0,items[1].GuaranteePeriod__c);
         // // CHAN-BHNBX6 2019/11/25 END
         
-        Task[] tasks = [select Id,Subject,OwnerId,Description,ActivityDate,QuoteIraiId__c
-                        from Task where QuoteIraiId__c = :irais[0].Id];
+        // Task[] tasks = [select Id,Subject,OwnerId,Description,ActivityDate,QuoteIraiId__c
+        //                 from Task where QuoteIraiId__c = :irais[0].Id];
                         
         // System.assertEquals('鎶ヤ环濮旀墭锛氬鎵�99锛� 銉嗐偣銉�99锛� 銉嗐偣銉�99锛� 99.00%', tasks[0].Subject);
         // System.assertEquals(user.Id, tasks[0].OwnerId);
         // System.assertEquals(irais[0].Id, tasks[0].QuoteIraiId__c);
-                
+        // controller.Save();
+        
+        QuoteLineItem[] qlis = [select id,QuoteId,PricebookEntry.Product2Id from QuoteLineItem where PricebookEntry.Product2Id != :null limit 1];
+        String str = '';
+        if (qlis.size() > 0) {
+            str = qlis[0].QuoteId;
+        }
+        LastbuyProduct__c lst = new LastbuyProduct__c();
+        lst.InquiryCode__c= opp1.Id;
+        lst.ProductName__c = Product1.Id;
+        lst.LastbuyQuantity__c = 3;
+        lst.effectiveFLG__c = true;
+        insert lst;
+        PageReference page2 = new PageReference('/apex/NewQuoteIrai?oppid=' + opp1.Id + '&oppquoid=' + str);
+        System.Test.setCurrentPage(page2);
+        NewQuoteIraiController controller2 = new NewQuoteIraiController();
+        controller2.init();
+        LastbuyProduct__c lst2 = new LastbuyProduct__c();
+        lst2.InquiryCode__c= opp1.Id;
+        lst2.ProductName__c = Product2.Id;
+        lst2.LastbuyQuantity__c = 3;
+        lst2.effectiveFLG__c = true;
+        insert lst2;
+        PageReference page3 = new PageReference('/apex/NewQuoteIrai?oppid=' + opp1.Id + '&oppquoid=' + str);
+        System.Test.setCurrentPage(page3);
+        NewQuoteIraiController controller3 = new NewQuoteIraiController();
+        controller3.init();
+        System.test.stopTest();        
     }
 
     //鏂板缓鎶ヤ环濮旀墭锛宔xcel瀵煎叆鏄庣粏涓�鏉★紝淇濆瓨锛涘啀excel瀵煎叆鏄庣粏涓夋潯锛屽鎵�
@@ -1142,6 +1198,7 @@
         product1.Intra_Trade_Cost_RMB_End_Date2__c=Date.today().addDays(1);
         product1.Intra_Trade_Cost_RMB_1__c=10;
         product1.Intra_Trade_Cost_RMB_2__c=10;
+        product1.LastbuyProductFLG__c = true;
         // CHAN-BHNBX6 2019/11/25 START
         //product1.Entend_gurantee_period_all__c=1;
         // CHAN-BHNBX6 2019/11/25 END
@@ -1166,6 +1223,7 @@
         product2.Intra_Trade_Cost_RMB_End_Date2__c=Date.today().addDays(1);
         product2.Intra_Trade_Cost_RMB_1__c=10;
         product2.Intra_Trade_Cost_RMB_2__c=10;
+        product2.LastbuyProductFLG__c = true;
         // CHAN-BHNBX6 2019/11/25 START
         //product2.Entend_gurantee_period_all__c=2;
         // CHAN-BHNBX6 2019/11/25 END
@@ -1297,7 +1355,7 @@
         
         controller.Save();
         
-        QuoteIrai__c[] irais = [select Id, Name, IraiUser__c, IraiSubject__c, CurrencyIsoCode from QuoteIrai__c where IraiSubject__c = '銉嗐偣銉�05'];
+        QuoteIrai__c[] irais = [select Id,Note__c, Name, IraiUser__c, IraiSubject__c, CurrencyIsoCode from QuoteIrai__c where IraiSubject__c = '銉嗐偣銉�05'];
         QuoteIraiLineItem__c[] items = [select Id, Asset_Model_No__c, SFDA_Status__c, Name__c,Quantity__c, ListPrice__c, ProductCode__c,Product2__c,ServicePrice__c,GuaranteePeriod__c from QuoteIraiLineItem__c where QuoteIrai__c = :irais[0].Id order by Item_Order__c];
         
         // System.assertEquals('銉嗐偣銉�05', irais[0].IraiSubject__c);
@@ -1361,7 +1419,7 @@
         
         controller.quoteIrai();
 
-        QuoteIrai__c[] irais2 = [select Id, Name, IraiUser__c, IraiSubject__c, CurrencyIsoCode from QuoteIrai__c where IraiSubject__c = '銉嗐偣銉�05'];
+        QuoteIrai__c[] irais2 = [select Id, Note__c,Name, IraiUser__c, IraiSubject__c, CurrencyIsoCode from QuoteIrai__c where IraiSubject__c = '銉嗐偣銉�05'];
         QuoteIraiLineItem__c[] items2 = [select Id, Asset_Model_No__c, SFDA_Status__c, Name__c,Quantity__c, ListPrice__c, ProductCode__c,Product2__c,ServicePrice__c,GuaranteePeriod__c from QuoteIraiLineItem__c where QuoteIrai__c = :irais2[0].Id order by Item_Order__c];
         
         // System.assertEquals('銉嗐偣銉�05', irais2[0].IraiSubject__c);
@@ -1426,7 +1484,38 @@
         update p2;
         
         controller.Save();
+        StaticParameter.EscapeOppandStaTrigger = true;
+        Opportunity opp1 = new Opportunity();
+        opp1.Name = 'test';
+        opp1.StageName = '寮曞悎';
+        opp1.CloseDate = Date.today().adddays(1);
+        insert opp1;
         
+        QuoteLineItem[] qlis = [select id,QuoteId,PricebookEntry.Product2Id from QuoteLineItem where PricebookEntry.Product2Id != :null limit 1];
+        String str = '';
+        if (qlis.size() > 0) {
+            str = qlis[0].QuoteId;
+        }
+        LastbuyProduct__c lst = new LastbuyProduct__c();
+        lst.InquiryCode__c= opp1.Id;
+        lst.ProductName__c = Product1.Id;
+        lst.LastbuyQuantity__c = 3;
+        lst.effectiveFLG__c = true;
+        insert lst;
+        PageReference page2 = new PageReference('/apex/NewQuoteIrai?oppid=' + opp1.Id + '&oppquoid=' + str);
+        System.Test.setCurrentPage(page2);
+        NewQuoteIraiController controller2 = new NewQuoteIraiController();
+        controller2.init();
+        LastbuyProduct__c lst2 = new LastbuyProduct__c();
+        lst2.InquiryCode__c= opp1.Id;
+        lst2.ProductName__c = Product2.Id;
+        lst2.LastbuyQuantity__c = 3;
+        lst2.effectiveFLG__c = true;
+        insert lst2;
+        PageReference page3 = new PageReference('/apex/NewQuoteIrai?oppid=' + opp1.Id + '&oppquoid=' + str);
+        System.Test.setCurrentPage(page3);
+        NewQuoteIraiController controller3 = new NewQuoteIraiController();
+        controller3.init();
         // System.assertEquals(true, controller.errorflg);
         // System.assertEquals('鍋滄', controller.activities[0].pageObject.SFDA_Status__c);
         // System.assertEquals('00103:杞鎺ュご123', controller.activities[0].pageObject.Name__c);
@@ -1434,6 +1523,23 @@
     
     //鍏朵粬鍗曚綋鍑芥暟
     static testMethod void test06() {
+        User user = new User(Test_staff__c = true);
+        user.LastName = '_銈点兂銉栥儶銉冦偢';
+        user.FirstName = '銇�';
+        user.Alias = '銇�';
+        user.Email = 'olympustest03@sunbridge.com';
+        user.Username = 'olympustest03@sunbridge.com';
+        user.CommunityNickname = '銇�';
+        user.IsActive = true;
+        user.EmailEncodingKey = 'ISO-2022-JP';
+        user.TimeZoneSidKey = 'Asia/Tokyo';
+        user.LocaleSidKey = 'ja_JP';
+        user.LanguageLocaleKey = 'ja';
+        user.ProfileId = System.Label.ProfileId_SystemAdmin;
+        user.Job_Category__c = '閿�鍞帹骞�';
+        user.Province__c = '涓婃捣甯�';
+        user.Use_Start_Date__c = Date.today().addMonths(-6);
+        insert user;
         QuoteIrai__c irai = new QuoteIrai__c();
         irai.IraiSubject__c = '濮旀墭01';
         irai.IraiUser__c = null;
@@ -1448,10 +1554,30 @@
         controller.checkIraiUser();
         controller.Back();
         
+        //lt start
+        //缁忛攢鍟嗐�佽仈绯讳汉銆佺敤鎴蜂俊鎭�
+        List<RecordType> rectCo = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '璨╁2搴�'];
+        if (rectCo.size() == 0) {
+            return;
+        }
+
+        //缁忛攢鍟嗐�佽仈绯讳汉銆佺敤鎴蜂俊鎭�
+        Account myAccount1 = new Account(name='Testaccount001',
+                                        Dealer_discount__c =20,
+                                        Ban_On_Use_Date__c = Date.today().addDays(1),
+                                        Business_Paper_Expiration_Date__c = Date.today().addDays(1),
+                                        Tax_Practice_Expiration_Date__c = Date.today().addDays(1),
+                                        Medical_Equipment_Expiration_Date__c = Date.today().addDays(1),
+                                        RecordTypeId = rectCo[0].Id);
+        insert myAccount1;
+        //lt end
+
         // 浠庢綔鍦ㄥ鎴锋柊寤�
         Lead lead1 = new Lead();
         lead1.LastName = 'test';
         lead1.Company = 'test';
+        lead1.Hospital_Name__c = myAccount1.Id;   //lt
+
         insert lead1;
         
         PageReference page1 = new PageReference('/apex/NewQuoteIrai?leadid=' + lead1.Id);
@@ -1460,6 +1586,7 @@
         controller1.init();
         
         // 浠庝笟鍔℃満浼氭柊寤�
+        StaticParameter.EscapeOppandStaTrigger = true;
         Opportunity opp1 = new Opportunity();
         opp1.Name = 'test';
         opp1.StageName = '寮曞悎';
@@ -1471,8 +1598,13 @@
         if (qlis.size() > 0) {
             str = qlis[0].QuoteId;
         }
-        
+        // LastbuyProduct__c lst = new LastbuyProduct__c();
+        // lst.InquiryCode__c= opp1.Id;
+        // lst.ProductName__c = Product1.Id;
+        // lst.LastbuyQuantity__c = 3;
+        system.debug('opp1.Id+++'+opp1.Id);
         PageReference page2 = new PageReference('/apex/NewQuoteIrai?oppid=' + opp1.Id + '&oppquoid=' + str);
+        System.Test.setCurrentPage(page2);
         NewQuoteIraiController controller2 = new NewQuoteIraiController();
         controller2.init();
 
@@ -1485,5 +1617,21 @@
         System.Test.setCurrentPage(page3);
         NewQuoteIraiController controller3 = new NewQuoteIraiController();
         controller3.init();
+        controller3.Salesprofit1=0;
+        controller3.SalesCalculation1=0;
+        controller3.displayFlg=true;
+        controller3.filg=true;
+        controller3.flglastbuy=0;
+        controller3.errorProductmodel='a';
+        controller3.excel_text='a';
+        controller3.select_index=0;
+        controller3.Product_text='a';
+        controller3.setProduct_text='a';
+        controller3.displayCost=true;
+        controller3.total_ListPrice=0;
+        controller3.errorMessage='a';
+        controller3.Messageflg=true;
+        controller3.Message='a';
+        NewQuoteIraiController.UserSelect a = new NewQuoteIraiController.UserSelect(user);
     }
 }
\ No newline at end of file

--
Gitblit v1.9.1