高章伟
2022-02-18 8b5f4c6c281cfa548f92de52c8021e37aa81901e
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
global without sharing class AccountWebService {
    
    // 無効のAccountの所有者をBatch Userにする
    WebService static String toBatchOwner(String hpid) {
        
        List<Account> accList = [select Id from Account
                                 where (Id = :hpid or ParentId = :hpid or Parent.ParentId = :hpid)
                                 and Is_Active_Formula__c = '无效'];
        
        if (accList.size() > 0) {
            try {
                // 所有者更新
                for (Account acc : accList) {
                    acc.OwnerId = '00510000000fSYI';
                }
                update accList;
                
                // チームメンバー削除
                List<AccountTeamMember> atm = [select Id from AccountTeamMember where AccountId in :accList];
                if (atm.size() > 0) delete atm;
                
            } catch (Exception e) {
                return e.getMessage();
            }
        }
        
        return 'OK';
    }
    
}