From b60707d7ac6a895e442f5e9f2a0f9e33974a616a Mon Sep 17 00:00:00 2001 From: Todking Date: Thu, 9 Dec 2021 11:46:22 +0800 Subject: [PATCH] =?UTF-8?q?fix=20aps=20kyc=E9=80=9A=E7=9F=A5=E8=B0=83?= =?UTF-8?q?=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../repository/ApsNoticeRepository.java | 3 +- .../domain/service/ApsNoticeService.java | 4 +- .../Impl/ApsNoticeClientsServiceImpl.java | 30 ++++++++++++- .../service/Impl/ApsNoticeServiceImpl.java | 19 ++++---- .../repository/ApsNoticeRepositoryImpl.java | 2 +- .../apsKYC/web/RestApsKYCController.java | 24 +++++------ .../mappers/apskyc/ApsNoticeMapper.java | 2 +- .../core/impls/ClientManagerImpl.java | 2 +- src/main/ui/static/apsKYC/aps_kyc.js | 43 ++++++++++++++++++- .../apsKYC/templates/add_aps_notice.html | 7 +++ .../ui/static/apsKYC/templates/aps_kyc.html | 42 +++++++++++------- .../apsKYC/templates/cat_aps_notice.html | 3 ++ .../payment/partner/templates/aps_kyc.html | 3 +- 13 files changed, 136 insertions(+), 48 deletions(-) diff --git a/src/main/java/au/com/royalpay/payment/manage/apsKYC/domain/repository/ApsNoticeRepository.java b/src/main/java/au/com/royalpay/payment/manage/apsKYC/domain/repository/ApsNoticeRepository.java index 57598444d..39bca95bd 100644 --- a/src/main/java/au/com/royalpay/payment/manage/apsKYC/domain/repository/ApsNoticeRepository.java +++ b/src/main/java/au/com/royalpay/payment/manage/apsKYC/domain/repository/ApsNoticeRepository.java @@ -1,7 +1,6 @@ package au.com.royalpay.payment.manage.apsKYC.domain.repository; import au.com.royalpay.payment.manage.apsKYC.domain.entity.ApsNotice; -import au.com.royalpay.payment.manage.apsKYC.web.command.AddNoticeCommand; import com.alibaba.fastjson.JSONObject; import com.github.miemiedev.mybatis.paginator.domain.PageBounds; import com.github.miemiedev.mybatis.paginator.domain.PageList; @@ -13,7 +12,7 @@ public interface ApsNoticeRepository { ApsNotice saveApsNotice(ApsNotice apsNotice); - void updateApsNotice(ApsNotice apsNotice); + void updateApsNotice(JSONObject apsNotice); ApsNotice getApsNoticesById(String id); diff --git a/src/main/java/au/com/royalpay/payment/manage/apsKYC/domain/service/ApsNoticeService.java b/src/main/java/au/com/royalpay/payment/manage/apsKYC/domain/service/ApsNoticeService.java index 627b703f8..29dd36714 100644 --- a/src/main/java/au/com/royalpay/payment/manage/apsKYC/domain/service/ApsNoticeService.java +++ b/src/main/java/au/com/royalpay/payment/manage/apsKYC/domain/service/ApsNoticeService.java @@ -11,9 +11,9 @@ public interface ApsNoticeService { void saveApsNotice(JSONObject manager, AddNoticeCommand addNoticeCommand); - void stopApsNotice(JSONObject manager, String id); - void updateApsNoticeClient(JSONObject manager, ApsNoticeClient apsNoticeClient); AddNoticeCommand getApsNotice(String id); + + void updateApsNotice(JSONObject manager, JSONObject apsNotice); } diff --git a/src/main/java/au/com/royalpay/payment/manage/apsKYC/domain/service/Impl/ApsNoticeClientsServiceImpl.java b/src/main/java/au/com/royalpay/payment/manage/apsKYC/domain/service/Impl/ApsNoticeClientsServiceImpl.java index e04688421..b2199054e 100644 --- a/src/main/java/au/com/royalpay/payment/manage/apsKYC/domain/service/Impl/ApsNoticeClientsServiceImpl.java +++ b/src/main/java/au/com/royalpay/payment/manage/apsKYC/domain/service/Impl/ApsNoticeClientsServiceImpl.java @@ -2,9 +2,12 @@ package au.com.royalpay.payment.manage.apsKYC.domain.service.Impl; import au.com.royalpay.payment.manage.apsKYC.domain.repository.ApsNoticeClientRepository; import au.com.royalpay.payment.manage.apsKYC.domain.service.ApsNoticeClientsService; +import au.com.royalpay.payment.manage.mappers.system.ClientAccountMapper; +import au.com.royalpay.payment.manage.mappers.system.ManagerMapper; import com.alibaba.fastjson.JSONObject; import com.github.miemiedev.mybatis.paginator.domain.PageBounds; import com.github.miemiedev.mybatis.paginator.domain.PageList; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -14,8 +17,33 @@ public class ApsNoticeClientsServiceImpl implements ApsNoticeClientsService { @Autowired private ApsNoticeClientRepository apsNoticeClientRepository; + @Autowired + private ManagerMapper managerMapper; + + @Autowired + private ClientAccountMapper clientAccountMapper; + @Override public PageList getApsNoticeClients(String id, PageBounds pageBounds) { - return apsNoticeClientRepository.getApsNoticeClients(id, pageBounds); + PageList apsNoticeClients = apsNoticeClientRepository.getApsNoticeClients(id, pageBounds); + for (JSONObject apsNoticeClient : apsNoticeClients) { + if (apsNoticeClient.containsKey("modifier") && StringUtils.isNotBlank(apsNoticeClient.getString("modifier"))) { + JSONObject modifier = managerMapper.findDetail(apsNoticeClient.getString("modifier")); + if (modifier != null) { + apsNoticeClient.put("modifier_name", modifier.getString("username")); + } + } + if (apsNoticeClient.containsKey("user_id") && StringUtils.isNotBlank(apsNoticeClient.getString("user_id"))) { + if (apsNoticeClient.getString("user_id").equals("0")) { + apsNoticeClient.put("user_name", "未知"); + } else { + JSONObject user = clientAccountMapper.findDetail(apsNoticeClient.getString("user_id")); + if (user != null) { + apsNoticeClient.put("user_name", user.getString("username")); + } + } + } + } + return apsNoticeClients; } } diff --git a/src/main/java/au/com/royalpay/payment/manage/apsKYC/domain/service/Impl/ApsNoticeServiceImpl.java b/src/main/java/au/com/royalpay/payment/manage/apsKYC/domain/service/Impl/ApsNoticeServiceImpl.java index 690a99db7..2b5a3f3b8 100644 --- a/src/main/java/au/com/royalpay/payment/manage/apsKYC/domain/service/Impl/ApsNoticeServiceImpl.java +++ b/src/main/java/au/com/royalpay/payment/manage/apsKYC/domain/service/Impl/ApsNoticeServiceImpl.java @@ -9,6 +9,7 @@ import au.com.royalpay.payment.manage.apsKYC.web.command.AddNoticeCommand; import com.alibaba.fastjson.JSONObject; import com.github.miemiedev.mybatis.paginator.domain.PageBounds; import com.github.miemiedev.mybatis.paginator.domain.PageList; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -36,7 +37,7 @@ public class ApsNoticeServiceImpl implements ApsNoticeService { ApsNotice saveApsNotice = addNoticeCommand.saveApsNotice(addNoticeCommand, manager); ApsNotice apsNotice = apsNoticeRepository.saveApsNotice(saveApsNotice); for (String partnerCode : addNoticeCommand.getPartnerCodes()) { - if (partnerCode != "" || partnerCode != null) { + if (StringUtils.isNotBlank(partnerCode)) { apsNoticeClientRepository.updateApsNoticeClientByPartnerCode(new Date(), manager.getString("manager_id"), partnerCode); ApsNoticeClient apsNoticeClient = addNoticeCommand.saveApsNoticeClient(partnerCode, manager, apsNotice.getId()); apsNoticeClientRepository.saveApsNoticeClient(apsNoticeClient); @@ -44,15 +45,6 @@ public class ApsNoticeServiceImpl implements ApsNoticeService { } } - @Override - public void stopApsNotice(JSONObject manager, String id) { - ApsNotice apsNotice = apsNoticeRepository.getApsNoticesById(id); - apsNotice.setStatus(1) - .setModifier(manager.getString("manager_id")) - .setModifyTime(new Date()); - apsNoticeRepository.updateApsNotice(apsNotice); - } - @Override public void updateApsNoticeClient(JSONObject manager, ApsNoticeClient apsNoticeClient) { ApsNoticeClient apsNoticeClientById = apsNoticeClientRepository.getApsNoticeClientById(apsNoticeClient.getId()); @@ -81,4 +73,11 @@ public class ApsNoticeServiceImpl implements ApsNoticeService { addNoticeCommand.setPartnerCodes(codes.toArray(new String[codes.size()])); return addNoticeCommand; } + + @Override + public void updateApsNotice(JSONObject manager, JSONObject apsNotice) { + apsNotice.put("modifier", manager.getString("manager_id")); + apsNotice.put("modify_time", new Date()); + apsNoticeRepository.updateApsNotice(apsNotice); + } } diff --git a/src/main/java/au/com/royalpay/payment/manage/apsKYC/infrastructure/repository/ApsNoticeRepositoryImpl.java b/src/main/java/au/com/royalpay/payment/manage/apsKYC/infrastructure/repository/ApsNoticeRepositoryImpl.java index 6cb46ceac..ceaab3928 100644 --- a/src/main/java/au/com/royalpay/payment/manage/apsKYC/infrastructure/repository/ApsNoticeRepositoryImpl.java +++ b/src/main/java/au/com/royalpay/payment/manage/apsKYC/infrastructure/repository/ApsNoticeRepositoryImpl.java @@ -29,7 +29,7 @@ public class ApsNoticeRepositoryImpl implements ApsNoticeRepository { } @Override - public void updateApsNotice(ApsNotice apsNotice) { + public void updateApsNotice(JSONObject apsNotice) { mapper.updateApsNotice(apsNotice); } diff --git a/src/main/java/au/com/royalpay/payment/manage/apsKYC/web/RestApsKYCController.java b/src/main/java/au/com/royalpay/payment/manage/apsKYC/web/RestApsKYCController.java index c4f16424b..c9ceab6e5 100644 --- a/src/main/java/au/com/royalpay/payment/manage/apsKYC/web/RestApsKYCController.java +++ b/src/main/java/au/com/royalpay/payment/manage/apsKYC/web/RestApsKYCController.java @@ -52,6 +52,17 @@ public class RestApsKYCController { return apsNoticeService.getApsNotice(id); } + /** + * 修改消息 + * + * @param manager + * @param apsNotice + */ + @ManagerMapping(value = "/notice", method = RequestMethod.PUT, role = {ManagerRole.ADMIN, ManagerRole.OPERATOR, ManagerRole.SALES_MANAGER}) + public void updateApsNotice(@ModelAttribute(CommonConsts.MANAGER_STATUS) JSONObject manager, @RequestBody JSONObject apsNotice) { + apsNoticeService.updateApsNotice(manager, apsNotice); + } + /** * 获取消息通知商户列表 * @@ -62,7 +73,7 @@ public class RestApsKYCController { */ @ManagerMapping(value = "/notice/clients", method = RequestMethod.GET, role = {ManagerRole.ADMIN, ManagerRole.SALES_MANAGER}) public JSONObject getApsNoticeClients(@RequestParam(value = "page", defaultValue = "1") int page, - @RequestParam(value = "pageSize", defaultValue = "10") int pageSize, + @RequestParam(value = "pageSize", defaultValue = "20") int pageSize, @RequestParam String id) { PageBounds pageBounds = new PageBounds(page, pageSize); PageList apply = apsNoticeClientsService.getApsNoticeClients(id, pageBounds); @@ -80,17 +91,6 @@ public class RestApsKYCController { apsNoticeService.saveApsNotice(manager, addNoticeCommand); } - /** - * 禁用消息 - * - * @param manager 运营用户 - * @param item 消息数据 - */ - @ManagerMapping(value = "/notice", method = RequestMethod.PUT, role = {ManagerRole.ADMIN, ManagerRole.OPERATOR, ManagerRole.SALES_MANAGER}) - public void stopApsNotice(@ModelAttribute(CommonConsts.MANAGER_STATUS) JSONObject manager, @RequestBody JSONObject item) { - apsNoticeService.stopApsNotice(manager, item.getString("id")); - } - /** * 修改商户数据 * diff --git a/src/main/java/au/com/royalpay/payment/manage/mappers/apskyc/ApsNoticeMapper.java b/src/main/java/au/com/royalpay/payment/manage/mappers/apskyc/ApsNoticeMapper.java index 30b83d756..28788e3bc 100644 --- a/src/main/java/au/com/royalpay/payment/manage/mappers/apskyc/ApsNoticeMapper.java +++ b/src/main/java/au/com/royalpay/payment/manage/mappers/apskyc/ApsNoticeMapper.java @@ -21,7 +21,7 @@ public interface ApsNoticeMapper { ApsNotice getApsNoticesById(String id); @AutoSql(SqlType.UPDATE) - void updateApsNotice(ApsNotice apsNotice); + void updateApsNotice(JSONObject apsNotice); List getApsNotice(String id); } diff --git a/src/main/java/au/com/royalpay/payment/manage/merchants/core/impls/ClientManagerImpl.java b/src/main/java/au/com/royalpay/payment/manage/merchants/core/impls/ClientManagerImpl.java index 526c06c30..dc59319bb 100644 --- a/src/main/java/au/com/royalpay/payment/manage/merchants/core/impls/ClientManagerImpl.java +++ b/src/main/java/au/com/royalpay/payment/manage/merchants/core/impls/ClientManagerImpl.java @@ -7169,7 +7169,7 @@ public class ClientManagerImpl implements ClientManager, ManagerTodoNoticeProvid @Override public void updateApsKycClient(JSONObject account, JSONObject item) { ApsNoticeClient apsNoticeClientById = apsNoticeClientMapper.getApsNoticeClientById(item.getString("id")); - if (item.getIntValue("status") == 1 && apsNoticeClientById.getReadTime() == null) { + if (apsNoticeClientById.getReadTime() == null) { item.put("read_time", new Date()); } item.put("status_time", new Date()); diff --git a/src/main/ui/static/apsKYC/aps_kyc.js b/src/main/ui/static/apsKYC/aps_kyc.js index 73ea91b22..9f32a5102 100644 --- a/src/main/ui/static/apsKYC/aps_kyc.js +++ b/src/main/ui/static/apsKYC/aps_kyc.js @@ -34,6 +34,7 @@ define(['angular', 'uiBootstrap', 'uiRouter'], function (angular) { }).then(function () { var item = {}; item.id = id; + item.status = 1; $http.put('/aps/kyc/notice', item).then(function () { that.loadApsNotice(); }); @@ -85,10 +86,49 @@ define(['angular', 'uiBootstrap', 'uiRouter'], function (angular) { }], }); }; + that.updateNotice = function (id) { + var params = angular.copy(that.params); + params.id = id; + $uibModal + .open({ + templateUrl: '/static/apsKYC/templates/add_aps_notice.html', + backdrop: false, + size: 'lg', + resolve: { + noticeId: function () { + return id; + } + }, + controller: ['$scope', '$http', 'noticeId', function ($scope, $http, noticeId) { + $http.get('/aps/kyc/notice', {params: params}).then(function (resp) { + $scope.saveNoticeData = resp.data; + $scope.isUpdate = true; + }); + $scope.saveNotice = function (form) { + if (form.$invalid) { + angular.forEach(form, function (item, key) { + if (key.indexOf('$') < 0) { + item.$dirty = true; + } + }); + return; + } + var item = {}; + item.id = noticeId; + item.title = $scope.saveNoticeData.title + item.content = $scope.saveNoticeData.content + $http.put('/aps/kyc/notice', item).then(function () { + alert("修改成功"); + $scope.$close(); + }); + }; + }], + }); + }; that.setHandle = function (noticeId, id) { commonDialog.confirm({ title: 'Confirm', - content: '你确定已经帮助商户支持Alipay+支付?' + content: '你确定已帮商户开通A+支付?' }).then(function () { that.item = {}; that.item.id = id; @@ -116,6 +156,7 @@ define(['angular', 'uiBootstrap', 'uiRouter'], function (angular) { }]); app.controller('addApsNoticeCtrl', ['$scope', '$http', function ($scope, $http) { var that = $scope + $scope.isUpdate = false; that.saveNoticeData = {} that.saveNotice = function (form) { if (form.$invalid) { diff --git a/src/main/ui/static/apsKYC/templates/add_aps_notice.html b/src/main/ui/static/apsKYC/templates/add_aps_notice.html index 70eee1ed6..44950327f 100644 --- a/src/main/ui/static/apsKYC/templates/add_aps_notice.html +++ b/src/main/ui/static/apsKYC/templates/add_aps_notice.html @@ -15,6 +15,8 @@ rows="5" style="width: 100%;resize:none;" required + ng-readonly="isUpdate" + ng-disabled="isUpdate" name="partner_code" placeholder="请输入商户编码(逗号隔开)" ng-model="saveNoticeData.partnerCodes"> @@ -94,6 +96,11 @@ border-radius: 4px; width: 100% !important; } + + .edui-default .edui-editor-iframeholder { + width: 100% !important; + position: relative; + } diff --git a/src/main/ui/static/apsKYC/templates/aps_kyc.html b/src/main/ui/static/apsKYC/templates/aps_kyc.html index 79a9d7511..f12378304 100644 --- a/src/main/ui/static/apsKYC/templates/aps_kyc.html +++ b/src/main/ui/static/apsKYC/templates/aps_kyc.html @@ -32,14 +32,13 @@ - + {{ item.createTime }} {{ item.title }} - {{ item.clientsNum }} + - + {{ item.clientsNum }} {{ item.noRead }} @@ -56,7 +55,11 @@  |  -  详情 +  编辑 + +  |  + +  预览 @@ -93,8 +96,8 @@ 商户名称 - 用户状态 - 运营操作 + 商户操作状态 + 运营操作状态 操作 @@ -103,20 +106,27 @@ {{item.partner_code}} 未读 - 已读({{ item.read_time }}) - 同意({{ item.status_time }}) - 拒绝({{ item.status_time }}) + 已读({{item.user_name}} {{ item.read_time + }}) + 同意({{item.user_name}} {{ item.status_time + }}) + 拒绝({{item.user_name}} {{ item.status_time + }}) - 未处理 | - 已处理({{ item.modify_time }}) + 未处理 + 已处理({{ item.modifier_name }} {{ item.modify_time }}) - - + 禁用 +  |  + 已禁用 diff --git a/src/main/ui/static/apsKYC/templates/cat_aps_notice.html b/src/main/ui/static/apsKYC/templates/cat_aps_notice.html index 045f001ee..8172376c1 100644 --- a/src/main/ui/static/apsKYC/templates/cat_aps_notice.html +++ b/src/main/ui/static/apsKYC/templates/cat_aps_notice.html @@ -17,8 +17,11 @@

+
已通知商户:
diff --git a/src/main/ui/static/payment/partner/templates/aps_kyc.html b/src/main/ui/static/payment/partner/templates/aps_kyc.html index bbed03234..16cf59adf 100644 --- a/src/main/ui/static/payment/partner/templates/aps_kyc.html +++ b/src/main/ui/static/payment/partner/templates/aps_kyc.html @@ -21,7 +21,8 @@