diff --git a/src/main/java/au/com/royalpay/payment/manage/openim/OpenimController.java b/src/main/java/au/com/royalpay/payment/manage/openim/OpenimController.java index 156bd473c..834775740 100644 --- a/src/main/java/au/com/royalpay/payment/manage/openim/OpenimController.java +++ b/src/main/java/au/com/royalpay/payment/manage/openim/OpenimController.java @@ -59,9 +59,15 @@ public class OpenimController { } @ManagerMapping(value = "/servant/{manager_id}/onoff", method = RequestMethod.PUT,role = {ManagerRole.ADMIN}) - public void listServants(@ModelAttribute(CommonConsts.MANAGER_STATUS) JSONObject loginManager,@PathVariable String manager_id, @RequestBody JSONObject param) { + public void onoff(@ModelAttribute(CommonConsts.MANAGER_STATUS) JSONObject loginManager,@PathVariable String manager_id, @RequestBody JSONObject param) { param.put("manager_id",manager_id); customerServiceService.onoff(param); } + @ManagerMapping(value = "/servant/{manager_id}/nick", method = RequestMethod.PUT,role = {ManagerRole.ADMIN}) + public void changeNick(@ModelAttribute(CommonConsts.MANAGER_STATUS) JSONObject loginManager,@PathVariable String manager_id, @RequestBody JSONObject param) { + param.put("manager_id",manager_id); + customerServiceService.changeNick(param); + } + } diff --git a/src/main/java/au/com/royalpay/payment/manage/openim/core/CustomerServiceService.java b/src/main/java/au/com/royalpay/payment/manage/openim/core/CustomerServiceService.java index 0d571a954..4b6c769e0 100644 --- a/src/main/java/au/com/royalpay/payment/manage/openim/core/CustomerServiceService.java +++ b/src/main/java/au/com/royalpay/payment/manage/openim/core/CustomerServiceService.java @@ -22,6 +22,8 @@ public interface CustomerServiceService { void onoff(JSONObject param); + void changeNick(JSONObject param); + void addUnreadMsg(JSONObject params); void sendUnreadWxMsg(); diff --git a/src/main/java/au/com/royalpay/payment/manage/openim/core/impl/CustomerServiceServiceImpl.java b/src/main/java/au/com/royalpay/payment/manage/openim/core/impl/CustomerServiceServiceImpl.java index 5e90bd66c..acf6318dc 100644 --- a/src/main/java/au/com/royalpay/payment/manage/openim/core/impl/CustomerServiceServiceImpl.java +++ b/src/main/java/au/com/royalpay/payment/manage/openim/core/impl/CustomerServiceServiceImpl.java @@ -71,6 +71,7 @@ public class CustomerServiceServiceImpl implements CustomerServiceService { checkRecord.put("nick", userInfo.getString("username") + "_" + client.getString("client_moniker")); checkRecord.put("user_id", userInfo.getString("username")); checkRecord.put("password", DigestUtils.md5Hex("uid")); + checkRecord.put("icon_url",client.getString("logo_thumbnail")); openimApi.addUser(checkRecord); checkRecord.put("servants", sysCustomerServiceMapper.findOnline()); checkRecord.put("appkey", appkey); @@ -152,10 +153,12 @@ public class CustomerServiceServiceImpl implements CustomerServiceService { @Override public void onoff(JSONObject manager) { - JSONObject record = new JSONObject(); - record.put("manager_id", manager.getString("manager_id")); - record.put("onoff", manager.getBoolean("onoff")); - saveOrUpdate(record,false); + saveOrUpdate(manager,false); + } + + @Override + public void changeNick(JSONObject param) { + saveOrUpdate(param,true); } @Override diff --git a/src/main/java/au/com/royalpay/payment/manage/openim/core/impl/OpenimApiImpl.java b/src/main/java/au/com/royalpay/payment/manage/openim/core/impl/OpenimApiImpl.java index c2cae4802..44b7bd062 100644 --- a/src/main/java/au/com/royalpay/payment/manage/openim/core/impl/OpenimApiImpl.java +++ b/src/main/java/au/com/royalpay/payment/manage/openim/core/impl/OpenimApiImpl.java @@ -6,6 +6,7 @@ import au.com.royalpay.payment.manage.openim.core.OpenimClient; import com.alibaba.fastjson.JSONObject; import com.taobao.api.domain.Userinfos; +import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import java.util.ArrayList; @@ -34,6 +35,9 @@ public class OpenimApiImpl implements OpenimApi { record.setUserid(user.getString("user_id")); record.setNick(user.getString("nick")); record.setPassword(user.getString("password")); + if(StringUtils.isNotEmpty(user.getString("icon_url"))){ + record.setIconUrl(user.getString("icon_url")); + } saveList.add(record); openimClient.addUser(saveList); } diff --git a/src/main/java/au/com/royalpay/payment/manage/signin/core/impls/SignInAccountServiceImpl.java b/src/main/java/au/com/royalpay/payment/manage/signin/core/impls/SignInAccountServiceImpl.java index 18eba9c12..c6eabd65e 100644 --- a/src/main/java/au/com/royalpay/payment/manage/signin/core/impls/SignInAccountServiceImpl.java +++ b/src/main/java/au/com/royalpay/payment/manage/signin/core/impls/SignInAccountServiceImpl.java @@ -7,6 +7,7 @@ import au.com.royalpay.payment.manage.mappers.system.ClientAccountMapper; import au.com.royalpay.payment.manage.mappers.system.ClientMapper; import au.com.royalpay.payment.manage.mappers.system.ManagerMapper; import au.com.royalpay.payment.manage.mappers.system.OrgMapper; +import au.com.royalpay.payment.manage.mappers.system.SysCustomerServiceMapper; import au.com.royalpay.payment.manage.merchants.core.ClientConfigService; import au.com.royalpay.payment.manage.merchants.core.ClientManager; import au.com.royalpay.payment.manage.notice.core.MailService; @@ -22,6 +23,7 @@ import au.com.royalpay.payment.tools.env.RequestEnvironment; import au.com.royalpay.payment.tools.exceptions.BadRequestException; import au.com.royalpay.payment.tools.exceptions.ForbiddenException; import au.com.royalpay.payment.tools.locale.LocaleSupport; +import au.com.royalpay.payment.tools.permission.enums.ManagerRole; import au.com.royalpay.payment.tools.utils.PasswordUtils; import com.alibaba.fastjson.JSONObject; @@ -74,6 +76,8 @@ public class SignInAccountServiceImpl implements SignInAccountService, Applicati @Resource private ClientConfigService clientConfigService; @Resource + private SysCustomerServiceMapper sysCustomerServiceMapper; + @Resource private PermissionClientModulesService permissionClientModulesService; private ApplicationEventPublisher publisher; private static final List tags = new ArrayList<>(); @@ -114,6 +118,10 @@ public class SignInAccountServiceImpl implements SignInAccountService, Applicati manager.put("available_func_names", funcNames); manager.put("modules", modules.values()); manager.put("module_names", modules.keySet()); + if((manager.getIntValue("role")& ManagerRole.SERVANT.getMask())>0){ + JSONObject cs = sysCustomerServiceMapper.findByManagerId(accountId); + manager.put("onoff",cs.getBoolean("onoff")); + } return manager; } @@ -429,5 +437,4 @@ public class SignInAccountServiceImpl implements SignInAccountService, Applicati account.put("is_password_expired", 0); clientAccountMapper.update(account); } - } diff --git a/src/main/resources/au/com/royalpay/payment/manage/mappers/system/ManagerMapper.xml b/src/main/resources/au/com/royalpay/payment/manage/mappers/system/ManagerMapper.xml index 8016fd74a..07fec675e 100644 --- a/src/main/resources/au/com/royalpay/payment/manage/mappers/system/ManagerMapper.xml +++ b/src/main/resources/au/com/royalpay/payment/manage/mappers/system/ManagerMapper.xml @@ -97,7 +97,7 @@ +
+ +
+
+ +
+ + + + diff --git a/src/main/ui/static/config/sysconfigs/templates/sysconfig.html b/src/main/ui/static/config/sysconfigs/templates/sysconfig.html index 78162910a..e874852d6 100644 --- a/src/main/ui/static/config/sysconfigs/templates/sysconfig.html +++ b/src/main/ui/static/config/sysconfigs/templates/sysconfig.html @@ -30,7 +30,7 @@ Partner Permission Config - + Servants Config