fix aps kyc通知调整

master
Todking 5 years ago
parent 7de14ec9a6
commit b60707d7ac

@ -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);

@ -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);
}

@ -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<JSONObject> getApsNoticeClients(String id, PageBounds pageBounds) {
return apsNoticeClientRepository.getApsNoticeClients(id, pageBounds);
PageList<JSONObject> 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;
}
}

@ -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);
}
}

@ -29,7 +29,7 @@ public class ApsNoticeRepositoryImpl implements ApsNoticeRepository {
}
@Override
public void updateApsNotice(ApsNotice apsNotice) {
public void updateApsNotice(JSONObject apsNotice) {
mapper.updateApsNotice(apsNotice);
}

@ -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<JSONObject> 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"));
}
/**
*
*

@ -21,7 +21,7 @@ public interface ApsNoticeMapper {
ApsNotice getApsNoticesById(String id);
@AutoSql(SqlType.UPDATE)
void updateApsNotice(ApsNotice apsNotice);
void updateApsNotice(JSONObject apsNotice);
List<JSONObject> getApsNotice(String id);
}

@ -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());

@ -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) {

@ -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;
}
</style>

@ -32,14 +32,13 @@
</tr>
</thead>
<tbody>
<tr ng-repeat="(index,item) in apply">
<tr ng-repeat="(index,item) in apply" ng-click="getNoticeClients(item.title,item.id,1,index)">
<td ng-style="{'background-color':selectIndex==index?'#f06101 ':''}">{{ item.createTime }}
</td>
<td ng-style="{'background-color':selectIndex==index?'#f06101 ':''}">{{ item.title }}</td>
<td ng-style="{'background-color':selectIndex==index?'#f06101 ':''}">{{ item.clientsNum }}
<td ng-style="{'background-color':selectIndex==index?'#f06101 ':''}">
<a href="" type="button">
<i class="fa fa-bars" aria-hidden="true"
ng-click="getNoticeClients(item.title,item.id,1,index)"></i>
{{ item.clientsNum }}
</a>
</td>
<td ng-style="{'background-color':selectIndex==index?'#f06101 ':''}">{{ item.noRead }}</td>
@ -56,7 +55,11 @@
</a>
<span>&nbsp;|&nbsp; </span>
<a href="" type="button">
<i class="fa fa-file-text-o" ng-click="catNotice(item.id)">&nbsp;详情</i>
<i class="fa fa-file-text-o" ng-click="updateNotice(item.id)">&nbsp;编辑</i>
</a>
<span>&nbsp;|&nbsp; </span>
<a href="" type="button">
<i class="fa fa-eye" ng-click="catNotice(item.id)">&nbsp;预览</i>
</a>
</td>
</tr>
@ -93,8 +96,8 @@
<thead>
<tr>
<th>商户名称</th>
<th style="text-align: center">用户状态</th>
<th style="text-align: center">运营操作</th>
<th style="text-align: center">商户操作状态</th>
<th style="text-align: center">运营操作状态</th>
<th style="text-align: center">操作</th>
</tr>
</thead>
@ -103,20 +106,27 @@
<td>{{item.partner_code}}</td>
<td style="text-align: center">
<span ng-if="item.status == 0" style="color: black">未读</span>
<span ng-if="item.status == 1" style="color: #c09d03">已读({{ item.read_time }})</span>
<span ng-if="item.status == 2" style="color: #00a65a">同意({{ item.status_time }})</span>
<span ng-if="item.status == 3" style="color: red">拒绝({{ item.status_time }})</span>
<span ng-if="item.status == 1" style="color: #c09d03">已读({{item.user_name}} {{ item.read_time
}})</span>
<span ng-if="item.status == 2" style="color: #00a65a">同意({{item.user_name}} {{ item.status_time
}})</span>
<span ng-if="item.status == 3" style="color: red">拒绝({{item.user_name}} {{ item.status_time
}})</span>
</td>
<td style="text-align: center">
<a href="" type="button"><span ng-if="item.handle == 0">未处理 | <i class="fa fa-check"
aria-hidden="true"
ng-click="setHandle(item.notice_id,item.id)"></i></span></a>
<span ng-if="item.handle == 1" style="color: #00a65a">已处理({{ item.modify_time }})</span>
<a href="" type="button"><span ng-if="item.handle == 0">未处理</span></a>
<span ng-if="item.handle == 1"
style="color: #00a65a">已处理({{ item.modifier_name }} {{ item.modify_time }})</span>
</td>
<td style="text-align: center">
<a href="" type="button">
<i ng-if="item.is_valid == 0" class="fa fa-times" style="color: red"
<a href="" type="button" ng-if="item.is_valid == 0">
<i class="fa fa-times" style="color: red"
ng-click="stopNoticeClient(item.notice_id,item.id)">禁用</i>
<span ng-if="item.status == 2">&nbsp;|&nbsp; </span>
<i class="fa fa-check"
aria-hidden="true"
ng-if="item.status == 2"
ng-click="setHandle(item.notice_id,item.id)">处理</i>
</a>
<i ng-if="item.is_valid == 1" readonly class="fa fa-times"
style="color: #727272">已禁用</i>

@ -17,8 +17,11 @@
<br/>
<br/>
<div>
<hr>
<div>已通知商户:</div>
<textarea
readonly
disabled
rows="3"
style="width: 100%;resize:none;"
ng-model="noticeDetail.partnerCodes"></textarea>

@ -21,7 +21,8 @@
<div class="modal-footer">
<div style="display: flex;justify-content: space-between">
<div>
<button style="text-align: right" class="btn btn-warning" ng-click="updateApsKyc(1)" type="button">忽略</button>
<button style="text-align: right" class="btn btn-warning" ng-click="updateApsKyc(1)" type="button">关闭
</button>
</div>
<div>
<button class="btn btn-danger" ng-click="updateApsKyc(3)" type="button">拒绝</button>

Loading…
Cancel
Save