buli
2023-07-14 e6068da47c1bef5517c9e5fdc8c726766867ad4e
force-app/main/default/classes/LexUpAccountProLimitControllerTest.cls
@@ -1,164 +1,106 @@
@isTest
private class LexUpAccountProLimitControllerTest {
  @isTest
  static void proLimitTest() {
    List<RecordType> rectCo = [
      SELECT Id
      FROM RecordType
      WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '販売店'
    ];
    if (rectCo.size() == 0) {
      return;
    @isTest
    static void proLimitTest() {
        List<RecordType> rectCo = [SELECT Id FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '販売店'];
        if (rectCo.size() == 0) {
            return;
        }
        Profile prof = [SELECT Id FROM Profile WHERE Name = '901_经销商社区普通权限_2重验证(ET)'];
        Product2 prod01 = new Product2(
            Name = 'Test01',
            ProductCode = 'Test01',
            Asset_Model_No__c = 'Test01',
            SFDA_Status__c = '有効',
            Dealer_special_Object__c = true
        );
        Product2 prod02 = new Product2(
            Name = 'Test02',
            ProductCode = 'Test02',
            Asset_Model_No__c = 'Test02',
            SFDA_Status__c = '有効',
            Dealer_special_Object__c = true
        );
        insert new List<Product2>{ prod01, prod02 };
        Product2__c pro1 = new Product2__c(Name = 'Pro001', OT_CODE_Text__c = 'Test001', Product2__c = prod01.Id);
        Product2__c pro2 = new Product2__c(Name = 'Pro002', OT_CODE_Text__c = 'Test002', Product2__c = prod02.Id);
        insert new List<Product2__c>{ pro1, pro2 };
        Account myAccount2 = new Account(
            Name = 'Testaccount002',
            Dealer_discount__c = 20,
            RecordTypeId = rectCo[0].Id,
            Product_Limit_Date__c = 'Test01|2|4'
        );
        insert myAccount2;
        String productLimit = 'Test01|2|4,Test02|3|5';
        String resultText = UpAccountProLimit.upAccount(myAccount2.Id, productLimit, 'ET');
        List<Account> accountre = [SELECT Id, Product_Limit_Date__c FROM Account WHERE Id = :myAccount2.Id];
        LexUpAccountProLimit.upAccount(myAccount2.Id, productLimit, 'ENG');
        LexUpAccountProLimit.upAccount(myAccount2.Id, productLimit, '');
        LexUpAccountProLimit.upAccount('1000', productLimit, 'ENG');
        // System.assertEquals('Test01|2|4,Test02|3|5', accountre[0].Product_Limit_Date__c);
    }
    Profile prof = [
      SELECT Id
      FROM Profile
      WHERE Name = '901_经销商社区普通权限_2重验证(ET)'
    ];
    Product2 prod01 = new Product2(
      Name = 'Test01',
      ProductCode = 'Test01',
      Asset_Model_No__c = 'Test01',
      SFDA_Status__c = '有効',
      Dealer_special_Object__c = true
    );
    Product2 prod02 = new Product2(
      Name = 'Test02',
      ProductCode = 'Test02',
      Asset_Model_No__c = 'Test02',
      SFDA_Status__c = '有効',
      Dealer_special_Object__c = true
    );
    insert new List<Product2>{ prod01, prod02 };
    Product2__c pro1 = new Product2__c(
      Name = 'Pro001',
      OT_CODE_Text__c = 'Test001',
      Product2__c = prod01.Id
    );
    Product2__c pro2 = new Product2__c(
      Name = 'Pro002',
      OT_CODE_Text__c = 'Test002',
      Product2__c = prod02.Id
    );
    insert new List<Product2__c>{ pro1, pro2 };
    @isTest
    static void proLimitTest1() {
        List<RecordType> rectCo = [SELECT Id FROM RecordType WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '販売店'];
        if (rectCo.size() == 0) {
            return;
        }
        Profile prof = [SELECT Id FROM Profile WHERE Name = '901_经销商社区普通权限_2重验证(ET)'];
        Product2 prod01 = new Product2(
            Name = 'Test01',
            ProductCode = 'Test01',
            Asset_Model_No__c = 'Test01',
            SFDA_Status__c = '不要',
            Dealer_special_Object__c = true
        );
        Product2 prod02 = new Product2(
            Name = 'Test02',
            ProductCode = 'Test02',
            Asset_Model_No__c = 'Test02',
            SFDA_Status__c = '準備中',
            Dealer_special_Object__c = true
        );
        insert new List<Product2>{ prod01, prod02 };
        Product2__c pro1 = new Product2__c(Name = 'Pro001', OT_CODE_Text__c = 'Test001', Product2__c = prod01.Id);
        Product2__c pro2 = new Product2__c(Name = 'Pro002', OT_CODE_Text__c = 'Test002', Product2__c = prod02.Id);
        insert new List<Product2__c>{ pro1, pro2 };
        System.debug('pro1===>' + pro1);
        System.debug('pro2===>' + pro2);
    Account myAccount2 = new Account(
      Name = 'Testaccount002',
      Dealer_discount__c = 20,
      RecordTypeId = rectCo[0].Id,
      Product_Limit_Date__c = 'Test01|2|4'
    );
    insert myAccount2;
    String productLimit = 'Test01|2|4,Test02|3|5';
    String resultText = UpAccountProLimit.upAccount(
      myAccount2.Id,
      productLimit,
      'ET'
    );
    List<Account> accountre = [
      SELECT Id, Product_Limit_Date__c
      FROM Account
      WHERE Id = :myAccount2.Id
    ];
    LexUpAccountProLimit.upAccount(myAccount2.Id, productLimit, 'ENG');
    LexUpAccountProLimit.upAccount(myAccount2.Id, productLimit, '');
    LexUpAccountProLimit.upAccount('1000', productLimit, 'ENG');
    // System.assertEquals('Test01|2|4,Test02|3|5', accountre[0].Product_Limit_Date__c);
  }
  @isTest
  static void proLimitTest1() {
    List<RecordType> rectCo = [
      SELECT Id
      FROM RecordType
      WHERE IsActive = TRUE AND SobjectType = 'Account' AND Name = '販売店'
    ];
    if (rectCo.size() == 0) {
      return;
        List<Product2__c> roduct2List1 = [
            SELECT Id, Asset_Model_No__c, Estimation_Entry_Possibility__c, Product_Type__c
            FROM Product2__c
            WHERE id = :pro2.Id
        ];
        List<Product2__c> roduct2List2 = [
            SELECT Id, Asset_Model_No__c, Estimation_Entry_Possibility__c, Product_Type__c
            FROM Product2__c
            WHERE id = :pro1.Id
        ];
        System.debug('roduct2List2===>' + roduct2List2);
        List<Product2__c> roduct2List = [
            SELECT Asset_Model_No__c, Estimation_Entry_Possibility__c
            FROM Product2__c
            WHERE Product_Type__c LIKE '%ENG%' AND Estimation_Entry_Possibility__c = '○'
        ];
        System.debug('roduct2List' + roduct2List);
        Account myAccount2 = new Account(
            Name = 'Testaccount002',
            Dealer_discount__c = 20,
            RecordTypeId = rectCo[0].Id,
            Product_Limit_Date__c = 'Test01|2|4'
        );
        insert myAccount2;
        String productLimit = 'Test01|2|4,Test02|3|5';
        String productLimit1 = 'Test01|2|4';
        String resultText = UpAccountProLimit.upAccount(myAccount2.Id, productLimit, 'ENG');
        List<Account> accountre = [SELECT Id, Product_Limit_Date__c FROM Account WHERE Id = :myAccount2.Id];
        // LexUpAccountProLimit.upAccount(myAccount2.Id,productLimit,'');
        LexUpAccountProLimit.upAccount(myAccount2.Id, productLimit1, 'ET');
        // System.assertEquals('Test01|2|4,Test02|3|5', accountre[0].Product_Limit_Date__c);
    }
    Profile prof = [
      SELECT Id
      FROM Profile
      WHERE Name = '901_经销商社区普通权限_2重验证(ET)'
    ];
    Product2 prod01 = new Product2(
      Name = 'Test01',
      ProductCode = 'Test01',
      Asset_Model_No__c = 'Test01',
      SFDA_Status__c = '不要',
      Dealer_special_Object__c = true
    );
    Product2 prod02 = new Product2(
      Name = 'Test02',
      ProductCode = 'Test02',
      Asset_Model_No__c = 'Test02',
      SFDA_Status__c = '準備中',
      Dealer_special_Object__c = true
    );
    insert new List<Product2>{ prod01, prod02 };
    Product2__c pro1 = new Product2__c(
      Name = 'Pro001',
      OT_CODE_Text__c = 'Test001',
      Product2__c = prod01.Id
    );
    Product2__c pro2 = new Product2__c(
      Name = 'Pro002',
      OT_CODE_Text__c = 'Test002',
      Product2__c = prod02.Id
    );
    insert new List<Product2__c>{ pro1, pro2 };
    System.debug('pro1===>' + pro1);
    System.debug('pro2===>' + pro2);
    List<Product2__c> roduct2List1 = [
      SELECT
        Id,
        Asset_Model_No__c,
        Estimation_Entry_Possibility__c,
        Product_Type__c
      FROM Product2__c
      WHERE id = :pro2.Id
    ];
    List<Product2__c> roduct2List2 = [
      SELECT
        Id,
        Asset_Model_No__c,
        Estimation_Entry_Possibility__c,
        Product_Type__c
      FROM Product2__c
      WHERE id = :pro1.Id
    ];
    System.debug('roduct2List2===>' + roduct2List2);
    List<Product2__c> roduct2List = [
      SELECT Asset_Model_No__c, Estimation_Entry_Possibility__c
      FROM Product2__c
      WHERE
        Product_Type__c LIKE '%ENG%'
        AND Estimation_Entry_Possibility__c = '○'
    ];
    System.debug('roduct2List' + roduct2List);
    Account myAccount2 = new Account(
      Name = 'Testaccount002',
      Dealer_discount__c = 20,
      RecordTypeId = rectCo[0].Id,
      Product_Limit_Date__c = 'Test01|2|4'
    );
    insert myAccount2;
    String productLimit = 'Test01|2|4,Test02|3|5';
    String productLimit1 = 'Test01|2|4';
    String resultText = UpAccountProLimit.upAccount(
      myAccount2.Id,
      productLimit,
      'ENG'
    );
    List<Account> accountre = [
      SELECT Id, Product_Limit_Date__c
      FROM Account
      WHERE Id = :myAccount2.Id
    ];
    // LexUpAccountProLimit.upAccount(myAccount2.Id,productLimit,'');
    LexUpAccountProLimit.upAccount(myAccount2.Id, productLimit1, 'ET');
    // System.assertEquals('Test01|2|4,Test02|3|5', accountre[0].Product_Limit_Date__c);
  }
}