|
16 | 16 | // under the License. |
17 | 17 | package com.cloud.user.dao; |
18 | 18 |
|
| 19 | +import java.util.List; |
| 20 | + |
19 | 21 | import com.cloud.user.UserDataVO; |
20 | 22 | import com.cloud.utils.db.GenericDaoBase; |
| 23 | +import com.cloud.utils.db.GenericSearchBuilder; |
21 | 24 | import com.cloud.utils.db.SearchBuilder; |
22 | 25 | import com.cloud.utils.db.SearchCriteria; |
| 26 | + |
| 27 | +import org.apache.commons.collections.CollectionUtils; |
23 | 28 | import org.springframework.stereotype.Component; |
24 | 29 |
|
25 | 30 | @Component |
@@ -65,9 +70,26 @@ public UserDataVO findByName(long accountId, long domainId, String name) { |
65 | 70 | } |
66 | 71 |
|
67 | 72 | @Override |
68 | | - public int removeByAccountId(long accountId) { |
69 | | - SearchCriteria<UserDataVO> sc = userdataSearch.create(); |
| 73 | + public List<Long> listIdsByAccountId(long accountId) { |
| 74 | + GenericSearchBuilder<UserDataVO, Long> sb = createSearchBuilder(Long.class); |
| 75 | + sb.selectFields(sb.entity().getId()); |
| 76 | + sb.and("accountId", sb.entity().getAccountId(), SearchCriteria.Op.EQ); |
| 77 | + sb.done(); |
| 78 | + SearchCriteria<Long> sc = sb.create(); |
70 | 79 | sc.setParameters("accountId", accountId); |
| 80 | + return customSearch(sc, null); |
| 81 | + } |
| 82 | + |
| 83 | + @Override |
| 84 | + public int removeAllIds(List<Long> ids) { |
| 85 | + if (CollectionUtils.isEmpty(ids)) { |
| 86 | + return 0; |
| 87 | + } |
| 88 | + SearchBuilder<UserDataVO> sb = createSearchBuilder(); |
| 89 | + sb.and("idIn", sb.entity().getId(), SearchCriteria.Op.IN); |
| 90 | + sb.done(); |
| 91 | + SearchCriteria<UserDataVO> sc = sb.create(); |
| 92 | + sc.setParameters("idIn", ids.toArray()); |
71 | 93 | return remove(sc); |
72 | 94 | } |
73 | 95 | } |
0 commit comments