1
0
mirror of https://github.com/chatopera/cosin.git synced 2025-06-16 18:30:03 +08:00
Signed-off-by: lecjy <565572696@qq.com>
This commit is contained in:
lecjy 2023-12-09 18:50:23 +08:00
parent 9f536ec045
commit 9b142c8e29
4 changed files with 12 additions and 12 deletions

View File

@ -86,7 +86,7 @@ public class ApiContactsController extends Handler {
if (!StringUtils.isBlank(creater)) {
User user = super.getUser(request);
contactsList = contactsRepository.findByCreaterAndSharesInAndDatastatus(user.getId(), Arrays.asList(user.getId(),"all"), false,
contactsList = contactsRepository.findByCreaterAndSharesInOrSharesIsNullAndDatastatus(user.getId(), Arrays.asList(user.getId(),"all"), false,
PageRequest.of(
super.getP(request),
super.getPs(request)));

View File

@ -118,6 +118,7 @@ public class ContactsController extends Handler {
Page<Contacts> contacts = contactsRes.findByOrganInAndCkindAndSharesAllAndDatastatusFalse(
super.getMyCurrentAffiliatesFlat(logined),
Arrays.asList(logined.getId(), "all"),
ckind,
PageRequest.of(super.getP(request), super.getPs(request)));
@ -147,7 +148,7 @@ public class ContactsController extends Handler {
map.put("ckind", ckind);
}
Page<Contacts> contacts = contactsRes.findByCreaterAndSharesInAndDatastatus(logined.getId(),
Page<Contacts> contacts = contactsRes.findByCreaterAndSharesInOrSharesIsNullAndDatastatus(logined.getId(),
Arrays.asList(logined.getId(),"all"),
false,
PageRequest.of(
@ -181,7 +182,7 @@ public class ContactsController extends Handler {
map.put("ckind", ckind);
}
Page<Contacts> contacts = contactsRes.findByCreaterAndSharesInAndDatastatus(logined.getId(),
Page<Contacts> contacts = contactsRes.findByCreaterAndSharesInOrSharesIsNullAndDatastatus(logined.getId(),
Arrays.asList(logined.getId(),"all"),
false,
PageRequest.of(
@ -215,7 +216,7 @@ public class ContactsController extends Handler {
map.put("ckind", ckind);
}
Page<Contacts> contacts = contactsRes.findByCreaterAndSharesInAndDatastatus(logined.getId(),
Page<Contacts> contacts = contactsRes.findByCreaterAndSharesInOrSharesIsNullAndDatastatus(logined.getId(),
Arrays.asList(logined.getId(),"all"),
false,
PageRequest.of(
@ -485,7 +486,7 @@ public class ContactsController extends Handler {
map.put("ckind", ckind);
}
Iterable<Contacts> contactsList = contactsRes.findByCreaterAndSharesInAndDatastatus(
Iterable<Contacts> contactsList = contactsRes.findByCreaterAndSharesInOrSharesIsNullAndDatastatus(
logined.getId(), Arrays.asList(logined.getId(),"all"),false, PageRequest.of(super.getP(request), super.getPs(request)));
MetadataTable table = metadataRes.findByTablename("uk_contacts");
@ -519,7 +520,7 @@ public class ContactsController extends Handler {
map.put("ckind", ckind);
}
Iterable<Contacts> contactsList = contactsRes.findByCreaterAndSharesInAndDatastatus(
Iterable<Contacts> contactsList = contactsRes.findByCreaterAndSharesInOrSharesIsNullAndDatastatus(
logined.getId(), Arrays.asList(logined.getId(),"all"), false, PageRequest.of(super.getP(request), super.getPs(request)));
MetadataTable table = metadataRes.findByTablename("uk_contacts");
List<Map<String, Object>> values = new ArrayList<>();
@ -559,7 +560,7 @@ public class ContactsController extends Handler {
if (StringUtils.isNotBlank(agentserviceid)) {
AgentService service = agentServiceRes.findById(agentserviceid).orElse(null);
}
Page<Contacts> contactsList = contactsRes.findByCreaterAndSharesInAndDatastatus(
Page<Contacts> contactsList = contactsRes.findByCreaterAndSharesInOrSharesIsNullAndDatastatus(
logined.getId(), Arrays.asList(logined.getId(),"all"), false,
PageRequest.of(super.getP(request), super.getPs(request)));

View File

@ -46,7 +46,7 @@ public class ContactsResourceController extends Handler {
if (q == null) {
q = "";
}
Page<Contacts> contactsList = contactsRes.findByCreaterAndSharesInAndDatastatus(super.getUser(request).getId(), Arrays.asList(super.getUser(request).getId(),"all"),false, PageRequest.of(0, 10));
Page<Contacts> contactsList = contactsRes.findByCreaterAndSharesInOrSharesIsNullAndDatastatus(super.getUser(request).getId(), Arrays.asList(super.getUser(request).getId(),"all"),false, PageRequest.of(0, 10));
JSONArray result = new JSONArray();
for (Contacts contact : contactsList.getContent()) {

View File

@ -40,8 +40,7 @@ public interface ContactsRepository extends JpaRepository<Contacts, String> {
@Query(nativeQuery = true, value = "SELECT * FROM uk_contacts WHERE id = ?1")
Optional<Contacts> findOneById(final String id);
Page<Contacts> findByCreaterAndSharesInAndDatastatus(String id, Collection<String> shares, boolean datastatus, Pageable pageRequest);
Page<Contacts> findByCreaterAndSharesInOrSharesIsNullAndDatastatus(String id, Collection<String> shares, boolean datastatus, Pageable pageRequest);
/**
* 根据条件返回联系人符合一下条件之一
* 1. 联系人的 organ 字段在传入的 organs 列表中并且联系人的 shares 字段值是 all
@ -50,8 +49,8 @@ public interface ContactsRepository extends JpaRepository<Contacts, String> {
* @param pageRequest
* @return
*/
@Query("select c from Contacts c where c.organ IN :organs and (:ckind IS NULL OR c.ckind = :ckind) AND c.shares = 'all' AND c.datastatus = false")
Page<Contacts> findByOrganInAndCkindAndSharesAllAndDatastatusFalse(@Param("organs") Collection<String> organs, @Param("ckind") String ckind, Pageable pageRequest);
@Query("select c from Contacts c where c.organ IN :organs and (:ckind IS NULL OR c.ckind = :ckind) AND (c.shares in :shares or c.shares IS NULL) AND c.datastatus = false")
Page<Contacts> findByOrganInAndCkindAndSharesAllAndDatastatusFalse(@Param("organs") Collection<String> organs, @Param("shares") Collection<String> shares, @Param("ckind") String ckind, Pageable pageRequest);
Page<Contacts> findByDatastatus(boolean b, Pageable pageRequest);
}