From 4ee46a696fa725890e6481b4571776412239fa58 Mon Sep 17 00:00:00 2001 From: lecjy <565572696@qq.com> Date: Sun, 5 Nov 2023 11:24:02 +0800 Subject: [PATCH] fix #956 https://github.com/cskefu/cskefu/issues/956 Signed-off-by: lecjy <565572696@qq.com> --- .../controller/api/ApiContactsController.java | 4 +++- .../controller/apps/ContactsController.java | 24 +++++++++---------- .../resource/ContactsResourceController.java | 4 +++- .../repository/AgentUserRepository.java | 8 +++---- .../repository/ContactsRepository.java | 2 +- .../apps/agent/calloutcontact/add.pug | 1 - .../apps/agent/calloutcontact/edit.pug | 1 - .../templates/apps/cca/calloutcontact/add.pug | 1 - .../apps/cca/calloutcontact/edit.pug | 1 - .../resources/templates/apps/contacts/add.pug | 1 - .../templates/apps/contacts/edit.pug | 1 - .../templates/apps/contacts/embed/add.pug | 1 - .../templates/apps/contacts/embed/edit.pug | 1 - .../resources/templates/apps/customer/add.pug | 1 - .../templates/apps/customer/edit.pug | 1 - 15 files changed, 23 insertions(+), 29 deletions(-) diff --git a/contact-center/app/src/main/java/com/cskefu/cc/controller/api/ApiContactsController.java b/contact-center/app/src/main/java/com/cskefu/cc/controller/api/ApiContactsController.java index dbcb38bc..b28e4df7 100644 --- a/contact-center/app/src/main/java/com/cskefu/cc/controller/api/ApiContactsController.java +++ b/contact-center/app/src/main/java/com/cskefu/cc/controller/api/ApiContactsController.java @@ -46,6 +46,8 @@ import org.springframework.web.bind.annotation.RestController; import jakarta.servlet.http.HttpServletRequest; import jakarta.validation.Valid; + +import java.util.Arrays; import java.util.Date; import java.util.List; import java.util.Optional; @@ -84,7 +86,7 @@ public class ApiContactsController extends Handler { if (!StringUtils.isBlank(creater)) { User user = super.getUser(request); - contactsList = contactsRepository.findByCreaterAndSharesAndDatastatus(user.getId(), "all", false, + contactsList = contactsRepository.findByCreaterAndSharesInAndDatastatus(user.getId(), Arrays.asList(user.getId(),"all"), false, PageRequest.of( super.getP(request), super.getPs(request))); diff --git a/contact-center/app/src/main/java/com/cskefu/cc/controller/apps/ContactsController.java b/contact-center/app/src/main/java/com/cskefu/cc/controller/apps/ContactsController.java index ad9f4401..3e20ed57 100644 --- a/contact-center/app/src/main/java/com/cskefu/cc/controller/apps/ContactsController.java +++ b/contact-center/app/src/main/java/com/cskefu/cc/controller/apps/ContactsController.java @@ -143,8 +143,8 @@ public class ContactsController extends Handler { map.put("ckind", ckind); } - Page contacts = contactsRes.findByCreaterAndSharesAndDatastatus(logined.getId(), - logined.getId(), + Page contacts = contactsRes.findByCreaterAndSharesInAndDatastatus(logined.getId(), + Arrays.asList(logined.getId(),"all"), false, PageRequest.of( super.getP(request), @@ -177,8 +177,8 @@ public class ContactsController extends Handler { map.put("ckind", ckind); } - Page contacts = contactsRes.findByCreaterAndSharesAndDatastatus(logined.getId(), - logined.getId(), + Page contacts = contactsRes.findByCreaterAndSharesInAndDatastatus(logined.getId(), + Arrays.asList(logined.getId(),"all"), false, PageRequest.of( super.getP(request), @@ -211,8 +211,8 @@ public class ContactsController extends Handler { map.put("ckind", ckind); } - Page contacts = contactsRes.findByCreaterAndSharesAndDatastatus(logined.getId(), - logined.getId(), + Page contacts = contactsRes.findByCreaterAndSharesInAndDatastatus(logined.getId(), + Arrays.asList(logined.getId(),"all"), false, PageRequest.of( super.getP(request), @@ -478,8 +478,8 @@ public class ContactsController extends Handler { map.put("ckind", ckind); } - Iterable contactsList = contactsRes.findByCreaterAndSharesAndDatastatus( - logined.getId(), logined.getId(), false, PageRequest.of(super.getP(request), super.getPs(request))); + Iterable contactsList = contactsRes.findByCreaterAndSharesInAndDatastatus( + logined.getId(), Arrays.asList(logined.getId(),"all"),false, PageRequest.of(super.getP(request), super.getPs(request))); MetadataTable table = metadataRes.findByTablename("uk_contacts"); List> values = new ArrayList<>(); @@ -512,8 +512,8 @@ public class ContactsController extends Handler { map.put("ckind", ckind); } - Iterable contactsList = contactsRes.findByCreaterAndSharesAndDatastatus( - logined.getId(), logined.getId(), false, PageRequest.of(super.getP(request), super.getPs(request))); + Iterable contactsList = contactsRes.findByCreaterAndSharesInAndDatastatus( + logined.getId(), Arrays.asList(logined.getId(),"all"), false, PageRequest.of(super.getP(request), super.getPs(request))); MetadataTable table = metadataRes.findByTablename("uk_contacts"); List> values = new ArrayList<>(); for (Contacts contacts : contactsList) { @@ -552,8 +552,8 @@ public class ContactsController extends Handler { if (StringUtils.isNotBlank(agentserviceid)) { AgentService service = agentServiceRes.findById(agentserviceid).orElse(null); } - Page contactsList = contactsRes.findByCreaterAndSharesAndDatastatus( - logined.getId(), logined.getId(), false, + Page contactsList = contactsRes.findByCreaterAndSharesInAndDatastatus( + logined.getId(), Arrays.asList(logined.getId(),"all"), false, PageRequest.of(super.getP(request), super.getPs(request))); map.addAttribute("contactsList", contactsList); diff --git a/contact-center/app/src/main/java/com/cskefu/cc/controller/resource/ContactsResourceController.java b/contact-center/app/src/main/java/com/cskefu/cc/controller/resource/ContactsResourceController.java index 376e0c66..48a6f24c 100644 --- a/contact-center/app/src/main/java/com/cskefu/cc/controller/resource/ContactsResourceController.java +++ b/contact-center/app/src/main/java/com/cskefu/cc/controller/resource/ContactsResourceController.java @@ -31,6 +31,8 @@ import org.springframework.web.bind.annotation.ResponseBody; import jakarta.servlet.http.HttpServletRequest; import jakarta.validation.Valid; +import java.util.Arrays; + @Controller public class ContactsResourceController extends Handler { @@ -44,7 +46,7 @@ public class ContactsResourceController extends Handler { if (q == null) { q = ""; } - Page contactsList = contactsRes.findByCreaterAndSharesAndDatastatus(super.getUser(request).getId(), super.getUser(request).getId(), false, PageRequest.of(0, 10)); + Page contactsList = contactsRes.findByCreaterAndSharesInAndDatastatus(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()) { diff --git a/contact-center/app/src/main/java/com/cskefu/cc/persistence/repository/AgentUserRepository.java b/contact-center/app/src/main/java/com/cskefu/cc/persistence/repository/AgentUserRepository.java index 8ccc0a46..d5211362 100644 --- a/contact-center/app/src/main/java/com/cskefu/cc/persistence/repository/AgentUserRepository.java +++ b/contact-center/app/src/main/java/com/cskefu/cc/persistence/repository/AgentUserRepository.java @@ -69,26 +69,26 @@ public interface AgentUserRepository extends JpaRepository { AgentUser findOneByAgentnoAndStatus(String id, String status); - @Query(nativeQuery = true, value = "SELECT * FROM uk_agentuser AS u " + + @Query(nativeQuery = true, value = "SELECT u.* FROM uk_agentuser AS u " + "LEFT JOIN uk_agentuser_contacts AS c " + "ON u.userid = c.userid WHERE c.id = ?1 AND NOT u.status = ?2 LIMIT 1") AgentUser findOneByContactIdAndStatusNot(final String contactid, final String status); - @Query(nativeQuery = true, value = "SELECT * FROM uk_agentuser AS u " + + @Query(nativeQuery = true, value = "SELECT u.* FROM uk_agentuser AS u " + "LEFT JOIN uk_agentuser_contacts AS c " + "ON u.userid = c.userid WHERE c.contactsid = ?1 " + "AND c.channeltype = ?3 AND NOT u.status = ?2 " + "ORDER BY u.createtime DESC LIMIT 1") Optional findOneByContactIdAndStatusNotAndChanneltype(final String contactid, final String status, final String channeltype); - @Query(nativeQuery = true, value = "SELECT * FROM uk_agentuser AS u " + + @Query(nativeQuery = true, value = "SELECT u.* FROM uk_agentuser AS u " + "LEFT JOIN uk_agentuser_contacts AS c " + "ON u.userid = c.userid WHERE c.contactsid = ?1 " + "AND c.channeltype = ?2 " + "ORDER BY u.createtime DESC LIMIT 1") Optional findOneByContactIdAndChanneltype(final String contactid, final String channeltype); - @Query(nativeQuery = true, value = "SELECT * FROM uk_agentuser AS u " + + @Query(nativeQuery = true, value = "SELECT u.* FROM uk_agentuser AS u " + "WHERE u.userid = ?1 " + "AND u.channeltype = ?3 AND NOT u.status = ?2 " + "ORDER BY u.createtime DESC LIMIT 1") diff --git a/contact-center/app/src/main/java/com/cskefu/cc/persistence/repository/ContactsRepository.java b/contact-center/app/src/main/java/com/cskefu/cc/persistence/repository/ContactsRepository.java index dec00c22..1784968f 100644 --- a/contact-center/app/src/main/java/com/cskefu/cc/persistence/repository/ContactsRepository.java +++ b/contact-center/app/src/main/java/com/cskefu/cc/persistence/repository/ContactsRepository.java @@ -40,7 +40,7 @@ public interface ContactsRepository extends JpaRepository { @Query(nativeQuery = true, value = "SELECT * FROM uk_contacts WHERE id = ?1") Optional findOneById(final String id); - Page findByCreaterAndSharesAndDatastatus(String id, String shares, boolean datastatus, Pageable pageRequest); + Page findByCreaterAndSharesInAndDatastatus(String id, Collection shares, boolean datastatus, Pageable pageRequest); /** * 根据条件返回联系人,符合一下条件之一: diff --git a/contact-center/app/src/main/resources/templates/apps/agent/calloutcontact/add.pug b/contact-center/app/src/main/resources/templates/apps/agent/calloutcontact/add.pug index 52fb88e5..980b40e8 100644 --- a/contact-center/app/src/main/resources/templates/apps/agent/calloutcontact/add.pug +++ b/contact-center/app/src/main/resources/templates/apps/agent/calloutcontact/add.pug @@ -24,7 +24,6 @@ html h1.site-h1(style='background-color:#FFFFFF;') 新建联系人 form.layui-form(action='/agent/calloutcontact/save.html?agentuser=${curagentuser.id!\'\'}', method='post') input(hidden, name='calloutcontact') - input(type='hidden', name='shares', value='all') .layui-collapse .layui-colla-item h2.layui-colla-title 基本信息 diff --git a/contact-center/app/src/main/resources/templates/apps/agent/calloutcontact/edit.pug b/contact-center/app/src/main/resources/templates/apps/agent/calloutcontact/edit.pug index 69350948..ee892312 100644 --- a/contact-center/app/src/main/resources/templates/apps/agent/calloutcontact/edit.pug +++ b/contact-center/app/src/main/resources/templates/apps/agent/calloutcontact/edit.pug @@ -23,7 +23,6 @@ html h1.site-h1(style='background-color:#FFFFFF;') 编辑联系人 form.layui-form(action='/agent/calloutcontact/update.html', method='post') input(type='hidden', name='id', value='${contacts.id!\'\'}') - input(type='hidden', name='shares', value='all') .layui-collapse .layui-colla-item h2.layui-colla-title 基本信息 diff --git a/contact-center/app/src/main/resources/templates/apps/cca/calloutcontact/add.pug b/contact-center/app/src/main/resources/templates/apps/cca/calloutcontact/add.pug index c250265d..39ccad0e 100644 --- a/contact-center/app/src/main/resources/templates/apps/cca/calloutcontact/add.pug +++ b/contact-center/app/src/main/resources/templates/apps/cca/calloutcontact/add.pug @@ -23,7 +23,6 @@ html h1.site-h1(style='background-color:#FFFFFF;') 新建联系人 form.layui-form(action='/agent/calloutcontact/save.html?agentuser=${curagentuser.id!\'\'}', method='post') input(hidden, name='calloutcontact') - input(type='hidden', name='shares', value='all') .layui-collapse .layui-colla-item h2.layui-colla-title 基本信息 diff --git a/contact-center/app/src/main/resources/templates/apps/cca/calloutcontact/edit.pug b/contact-center/app/src/main/resources/templates/apps/cca/calloutcontact/edit.pug index 269b23d8..f7d4f1b3 100644 --- a/contact-center/app/src/main/resources/templates/apps/cca/calloutcontact/edit.pug +++ b/contact-center/app/src/main/resources/templates/apps/cca/calloutcontact/edit.pug @@ -23,7 +23,6 @@ html h1.site-h1(style='background-color:#FFFFFF;') 编辑联系人 form.layui-form(action='/agent/calloutcontact/update.html', method='post') input(type='hidden', name='id', value='${contacts.id!\'\'}') - input(type='hidden', name='shares', value='all') .layui-collapse .layui-colla-item h2.layui-colla-title 基本信息 diff --git a/contact-center/app/src/main/resources/templates/apps/contacts/add.pug b/contact-center/app/src/main/resources/templates/apps/contacts/add.pug index b4357527..c041480d 100644 --- a/contact-center/app/src/main/resources/templates/apps/contacts/add.pug +++ b/contact-center/app/src/main/resources/templates/apps/contacts/add.pug @@ -13,7 +13,6 @@ include /mixins/dic.mixin.pug .uk-layui-form form.layui-form(action='/apps/contacts/save.html', method='post') - input(type='hidden', name='shares', value='all') .layui-collapse .layui-colla-item h2.layui-colla-title 基本信息 diff --git a/contact-center/app/src/main/resources/templates/apps/contacts/edit.pug b/contact-center/app/src/main/resources/templates/apps/contacts/edit.pug index 272e9336..e489a671 100644 --- a/contact-center/app/src/main/resources/templates/apps/contacts/edit.pug +++ b/contact-center/app/src/main/resources/templates/apps/contacts/edit.pug @@ -21,7 +21,6 @@ include /mixins/dic.mixin.pug input(type='hidden', name='wlcompany_name', value=contacts.wlcompany_name) input(type='hidden', name='wlsid', value=contacts.wlsid) input(type='hidden', name='wlsystem_name', value=contacts.wlsystem_name) - input(type='hidden', name='shares', value='all') .layui-collapse .layui-colla-item h2.layui-colla-title 基本信息 diff --git a/contact-center/app/src/main/resources/templates/apps/contacts/embed/add.pug b/contact-center/app/src/main/resources/templates/apps/contacts/embed/add.pug index 54acad69..d717f2d3 100644 --- a/contact-center/app/src/main/resources/templates/apps/contacts/embed/add.pug +++ b/contact-center/app/src/main/resources/templates/apps/contacts/embed/add.pug @@ -13,7 +13,6 @@ include /mixins/dic.mixin.pug .uk-layui-form form.layui-form(action='/apps/contacts/embed/save.html', data-toggle='ajax-form', data-close='false', data-target='#mainajaxwin', method='post') input(type='hidden', name='agentserviceid', value=agentserviceid) - input(type='hidden', name='shares', value='all') .layui-collapse .layui-colla-item h2.layui-colla-title 基本信息 diff --git a/contact-center/app/src/main/resources/templates/apps/contacts/embed/edit.pug b/contact-center/app/src/main/resources/templates/apps/contacts/embed/edit.pug index 61c4f932..f05507e1 100644 --- a/contact-center/app/src/main/resources/templates/apps/contacts/embed/edit.pug +++ b/contact-center/app/src/main/resources/templates/apps/contacts/embed/edit.pug @@ -14,7 +14,6 @@ include /mixins/dic.mixin.pug form.layui-form(action='/apps/contacts/embed/update.html', data-toggle="ajax-form" data-close="false" data-target="#mainajaxwin" method="post") input(type='hidden', name='id', value=contacts.id) input(type='hidden', name='agentserviceid', value=agentserviceid) - input(type='hidden', name='shares', value='all') .layui-collapse .layui-colla-item h2.layui-colla-title 基本信息 diff --git a/contact-center/app/src/main/resources/templates/apps/customer/add.pug b/contact-center/app/src/main/resources/templates/apps/customer/add.pug index f74aeea6..432f9172 100644 --- a/contact-center/app/src/main/resources/templates/apps/customer/add.pug +++ b/contact-center/app/src/main/resources/templates/apps/customer/add.pug @@ -14,7 +14,6 @@ include /mixins/dic.mixin.pug .uk-layui-form form.layui-form(action="/apps/customer/save.html", method="post") input(type="hidden", name="entcustomer.shares", value="all") - input(type="hidden", name="contacts.shares", value="all") .layui-collapse .layui-colla-item h2.layui-colla-title 基本信息 diff --git a/contact-center/app/src/main/resources/templates/apps/customer/edit.pug b/contact-center/app/src/main/resources/templates/apps/customer/edit.pug index d9d61792..f5bdf42d 100644 --- a/contact-center/app/src/main/resources/templates/apps/customer/edit.pug +++ b/contact-center/app/src/main/resources/templates/apps/customer/edit.pug @@ -16,7 +16,6 @@ include /mixins/dic.mixin.pug input(type="hidden", name="entcustomer.id", value=account.id) input(type="hidden", name="ekindId", value=ekindId) input(type="hidden", name="entcustomer.shares", value="all") - input(type="hidden", name="contacts.shares", value="all") .layui-collapse .layui-colla-item h2.layui-colla-title 基本信息