Merge branch 'develop'

master
luoyang 5 years ago
commit 3d397c7f7e

@ -9,7 +9,7 @@
</parent> </parent>
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<artifactId>manage</artifactId> <artifactId>manage</artifactId>
<version>1.3.93</version> <version>1.3.94</version>
<properties> <properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<jib-maven-plugin.version>1.8.0</jib-maven-plugin.version> <jib-maven-plugin.version>1.8.0</jib-maven-plugin.version>

@ -1156,7 +1156,8 @@ public class CleanServiceImpl implements CleanService, ManagerTodoNoticeProvider
Context ctx = new Context(); Context ctx = new Context();
ctx.setVariable("date", DateFormatUtils.format(date, "dd-MM-yyyy")); ctx.setVariable("date", DateFormatUtils.format(date, "dd-MM-yyyy"));
ctx.setVariable("abaFiles", abaFileList); ctx.setVariable("abaFiles", abaFileList);
ctx.setVariable("totalAmount", abaFileList.stream().map(ABAFile::getTotalSettleAmount).reduce(BigDecimal::add)); BigDecimal total = abaFileList.stream().map(ABAFile::getTotalSettleAmount).reduce(BigDecimal::add).orElse(BigDecimal.ZERO);
ctx.setVariable("totalAmount", total.setScale(2, RoundingMode.DOWN).toPlainString());
final String content = thymeleaf.process("mail/settlement_mail", ctx); final String content = thymeleaf.process("mail/settlement_mail", ctx);
// 测试用地址 // 测试用地址
// String mailId = mailService.sendEmail(title, "164851225@qq.com", "1029811920@qq.com", content, // String mailId = mailService.sendEmail(title, "164851225@qq.com", "1029811920@qq.com", content,

@ -746,6 +746,8 @@ public class ClientManagerImpl implements ClientManager, ManagerTodoNoticeProvid
checkOrgPermission(manager, superClient); checkOrgPermission(manager, superClient);
partner.put("parent_client_id", superClient.getIntValue("client_id")); partner.put("parent_client_id", superClient.getIntValue("client_id"));
} }
//如果level3商户为一级商户增加level3_mch_config=true
checkLevel3MchStatus(superClient);
} }
partner.put("create_time", new Date()); partner.put("create_time", new Date());
partner.put("ali_sub_merchant_id", registery.getClientMoniker()); partner.put("ali_sub_merchant_id", registery.getClientMoniker());
@ -2097,7 +2099,7 @@ public class ClientManagerImpl implements ClientManager, ManagerTodoNoticeProvid
if(mchConfig.getBooleanValue("hide_sub_mch")){ if(mchConfig.getBooleanValue("hide_sub_mch")){
return new ArrayList<>(); return new ArrayList<>();
} }
if (!mchConfig.getBooleanValue("disable_level3_mch") && listChildClients.size()<100) { if (mchConfig.getBooleanValue("level3_mch_config")) {
for (JSONObject partner : listChildClients) { for (JSONObject partner : listChildClients) {
List<JSONObject> clients = clientMapper.listChildClients(partner.getIntValue("client_id")); List<JSONObject> clients = clientMapper.listChildClients(partner.getIntValue("client_id"));
if (clients.size() > 0) { if (clients.size() > 0) {
@ -2128,6 +2130,8 @@ public class ClientManagerImpl implements ClientManager, ManagerTodoNoticeProvid
params.put("search_text", searchText); params.put("search_text", searchText);
} }
PageList<JSONObject> childClients = clientMapper.listChildClientsByPage(params, pageBounds); PageList<JSONObject> childClients = clientMapper.listChildClientsByPage(params, pageBounds);
JSONObject mchConfig = merchantInfoProvider.getMchExtParams(client.getIntValue("client_id"));
if (mchConfig.getBooleanValue("level3_mch_config")) {
for (JSONObject partner : childClients) { for (JSONObject partner : childClients) {
List<JSONObject> clients = clientMapper.listChildClients(partner.getIntValue("client_id")); List<JSONObject> clients = clientMapper.listChildClients(partner.getIntValue("client_id"));
if (clients.size() > 0) { if (clients.size() > 0) {
@ -2137,6 +2141,7 @@ public class ClientManagerImpl implements ClientManager, ManagerTodoNoticeProvid
}); });
} }
} }
}
return PageListUtils.buildPageListResult(childClients); return PageListUtils.buildPageListResult(childClients);
} }
@ -6650,11 +6655,20 @@ public class ClientManagerImpl implements ClientManager, ManagerTodoNoticeProvid
} }
private String[] getChildClientIds(int clientId) { private String[] getChildClientIds(int clientId) {
JSONObject mchConfig = merchantInfoProvider.getMchExtParams(clientId);
List<String> clientIds = new ArrayList<>(); List<String> clientIds = new ArrayList<>();
List<JSONObject> childs = clientMapper.listChildClients(clientId); List<JSONObject> childs = clientMapper.listChildClients(clientId);
clientIds.add(String.valueOf(clientId)); clientIds.add(String.valueOf(clientId));
childs.forEach(p -> { childs.forEach(p -> {
clientIds.add(p.getString("client_id")); clientIds.add(p.getString("client_id"));
if (mchConfig.getBooleanValue("level3_mch_config")) {
List<JSONObject> clients = clientMapper.listChildClients(p.getIntValue("client_id"));
if (clients.size() > 0) {
clients.forEach(e -> {
clientIds.add(e.getString("client_id"));
});
}
}
}); });
return clientIds.toArray(new String[]{}); return clientIds.toArray(new String[]{});
} }
@ -6689,4 +6703,19 @@ public class ClientManagerImpl implements ClientManager, ManagerTodoNoticeProvid
} }
} }
private void checkLevel3MchStatus(JSONObject superClient) {
if (superClient.containsKey("parent_client_id") && superClient.getIntValue("parent_client_id") != 0) {
JSONObject superParentClient = getClientInfo(superClient.getIntValue("parent_client_id"));
if (superParentClient == null) {
throw new InvalidShortIdException();
}
JSONObject mchConfig = merchantInfoProvider.getMchExtParams(superParentClient.getIntValue("client_id"));
if (!mchConfig.getBooleanValue("level3_mch_config")) {
mchConfig.put("level3_mch_config", true);
superParentClient.put("ext_params", mchConfig.toJSONString());
clientMapper.update(superParentClient);
}
}
}
} }

@ -3,6 +3,7 @@
</div> </div>
<div class="modal-body" style="height: 300px"> <div class="modal-body" style="height: 300px">
<div class="text-center" > <div class="text-center" >
<div class="row">
<div class="col-sm-12"> <div class="col-sm-12">
<ul class="list-group"> <ul class="list-group">
<li class="list-group-item text-left" ng-repeat="log in settleLogs" ng-class="{'active':log.send}" ng-click="switchSendFlag(log)"> <li class="list-group-item text-left" ng-repeat="log in settleLogs" ng-class="{'active':log.send}" ng-click="switchSendFlag(log)">
@ -11,19 +12,26 @@
</li> </li>
</ul> </ul>
</div> </div>
</div>
<div class="row">
<div class="col-sm-12"> <div class="col-sm-12">
<label class="checkbox-inline"> <label class="checkbox-inline">
<input type="checkbox" name="mark_sent" ng-model="config.mark_sent" class="checkbox"> <input type="checkbox" name="mark_sent" ng-model="config.mark_sent" class="checkbox">
同时标记为已发送 同时标记为已发送
</label> </label>
</div> </div>
</div>
<div class="row">
<div class="col-sm-12"> <div class="col-sm-12">
<button type="button" class="btn btn-primary" style="width: 100%; margin-top: 30px" data-dismiss="modal" <button type="button" class="btn btn-primary" style="width: 100%; margin-top: 30px" data-dismiss="modal"
ng-click="sendSettlementMail()" ng-disabled="sendMailButton">发送清算邮件 ng-click="sendSettlementMail()" ng-disabled="sendMailButton">发送清算邮件
</button> </button>
</div> </div>
</div>
<div class="row">
<div class="error"> <div class="error">
<span ng-bind="error_msg"></span> <span ng-bind="error_msg"></span>
</div> </div>
</div> </div>
</div>
</div> </div>

@ -3301,6 +3301,8 @@ define(['angular', 'decimal', 'static/commons/commons', 'uiBootstrap', 'uiRouter
$scope.$close(); $scope.$close();
}, function (resp) { }, function (resp) {
$scope.errmsg = resp.data.message; $scope.errmsg = resp.data.message;
$scope.partner.client_pay_type = $scope.partner.client_pay_type.split(",");
$scope.partner.client_pay_desc = $scope.partner.client_pay_desc.split(",");
}) })
} }
$scope.uploadLogo = function (file) { $scope.uploadLogo = function (file) {
@ -3550,16 +3552,6 @@ define(['angular', 'decimal', 'static/commons/commons', 'uiBootstrap', 'uiRouter
} }
$scope.clients.push(client); $scope.clients.push(client);
}); });
$scope.clientIds = [];
$scope.clients.forEach(function (client) {
$scope.clientIds.push(client.client_id);
if (client.level3Clients) {
client.level3Clients.forEach(function (level3Client) {
$scope.clientIds.push(level3Client.client_id);
});
}
});
$scope.params.client_ids = angular.copy($scope.clientIds);
}); });
}; };
@ -4417,16 +4409,6 @@ define(['angular', 'decimal', 'static/commons/commons', 'uiBootstrap', 'uiRouter
} }
$scope.clients.push(client); $scope.clients.push(client);
}); });
$scope.clientIds = [];
$scope.clients.forEach(function (client) {
$scope.clientIds.push(client.client_id);
if (client.level3Clients) {
client.level3Clients.forEach(function (level3Client) {
$scope.clientIds.push(level3Client.client_id);
});
}
});
$scope.params.client_ids = angular.copy($scope.clientIds);
}); });
}; };
$scope.initClientInfo = function(){ $scope.initClientInfo = function(){

@ -50,16 +50,6 @@ define(['angular', 'uiBootstrap', 'uiRouter'], function (angular) {
} }
$scope.clients.push(client); $scope.clients.push(client);
}); });
$scope.clientIds = [];
$scope.clients.forEach(function (client) {
$scope.clientIds.push(client.client_id);
if (client.level3Clients) {
client.level3Clients.forEach(function (level3Client) {
$scope.clientIds.push(level3Client.client_id);
});
}
});
$scope.params.client_ids = angular.copy($scope.clientIds);
}); });
}; };
$scope.today = new Date(); $scope.today = new Date();

@ -313,16 +313,6 @@ define(['angular', 'uiBootstrap', 'uiRouter'], function (angular) {
} }
$scope.clients.push(client); $scope.clients.push(client);
}); });
$scope.clientIds = [];
$scope.clients.forEach(function (client) {
$scope.clientIds.push(client.client_id);
if (client.level3Clients) {
client.level3Clients.forEach(function (level3Client) {
$scope.clientIds.push(level3Client.client_id);
});
}
});
$scope.params.client_ids = angular.copy($scope.clientIds);
}); });
}; };

@ -138,16 +138,6 @@ define(['angular', 'uiBootstrap', 'uiRouter'], function (angular) {
} }
$scope.clients.push(client); $scope.clients.push(client);
}); });
$scope.clientIds = [];
$scope.clients.forEach(function (client) {
$scope.clientIds.push(client.client_id);
if (client.level3Clients) {
client.level3Clients.forEach(function (level3Client) {
$scope.clientIds.push(level3Client.client_id);
});
}
});
$scope.params.client_ids = angular.copy($scope.clientIds);
}); });
}; };

Loading…
Cancel
Save