[R] APP端接口调整

master
liuxinxin 7 years ago
parent b35e33fc0a
commit 7b0e172c50

@ -17,6 +17,7 @@ import au.com.royalpay.payment.manage.customers.core.CouponValidateService;
import au.com.royalpay.payment.manage.device.core.DeviceManager;
import au.com.royalpay.payment.manage.fund.core.impls.XPlanFundConfigServiceImpl;
import au.com.royalpay.payment.manage.kyc.core.KycService;
import au.com.royalpay.payment.manage.kyc.enums.FilesAuthStatusEnum;
import au.com.royalpay.payment.manage.kyc.enums.FilesAuthTypeEnum;
import au.com.royalpay.payment.manage.management.clearing.core.CleanService;
import au.com.royalpay.payment.manage.mappers.client.AuthAppMessageMapper;
@ -224,6 +225,8 @@ public class RetailAppServiceImp implements RetailAppService {
@Resource
private ClientFilesMapper clientFilesMapper;
@Resource
private RetailAppService retailAppService;
@Resource
private DeviceManager deviceManager;
private final String CBBANK_AGGREGATE_FILE = "https://file.royalpay.com.au/open/2019/08/05/1564972204689_uwZvpTBjtLUMcN8c540xcZvux1Rd3O.pdf";
private final String IMG_AGGREGATE_FILE = "https://file.royalpay.com.au/open/2019/10/22/1571723034726_5xK6A0FGv5aQPbMIDJzXJrUPKHFutv.pdf";
@ -2524,6 +2527,8 @@ public class RetailAppServiceImp implements RetailAppService {
return null;
}
if(complianceFilesNotice != null){
JSONObject complianceStatus = retailAppService.getClientAuthFileStatus(device);
complianceFilesNotice.putAll(complianceStatus);
supplement_array.add(complianceFilesNotice);
}
if(kycFilesNotice != null){
@ -2546,6 +2551,9 @@ public class RetailAppServiceImp implements RetailAppService {
JSONObject file = checkKycFileStatusForApp(client);
JSONObject compliance = clientComplianceCompanyMapper.findKycFileByClientId(device.getIntValue("client_id"));
file.put("file_company", compliance);
if(compliance != null){
file.put("id_type", compliance.getString("id_type"));
}
return file;
}
@ -2562,7 +2570,8 @@ public class RetailAppServiceImp implements RetailAppService {
result.put("help_success", messageSource.getMessage("client.auth.file.help_success", null, RequestEnvironment.getLocale()));
result.put("client_less_file", lessKycFiles);
if (lessKycFiles) {
JSONObject compliance = clientComplianceCompanyMapper.findKycFileByClientId(client.getIntValue("client_id"));
if (lessKycFiles || compliance != null) {
List<JSONObject> kycFiles = new ArrayList<>();
kycFiles = clientFilesMapper.findKycClientFileByClient(client.getIntValue("client_id"));
for (JSONObject file : kycFiles) {
@ -2593,19 +2602,22 @@ public class RetailAppServiceImp implements RetailAppService {
JSONObject complianceFilesNotice = new JSONObject();
JSONObject complianceFileStatus = signInAccountService.checkAuthFileStatus(client);
if(!complianceFileStatus.getBoolean("client_less_file")){
/*if(!complianceFileStatus.getBoolean("client_less_file")){
return null;
}
}*/
JSONObject compliance = clientComplianceCompanyMapper.findFileByClientId(account.getIntValue("client_id"));
complianceFilesNotice.put("auth_type",FilesAuthTypeEnum.COMPLIANCE.getAuthType());
complianceFilesNotice.put("type", messageSource.getMessage("client.auth.file.compliance.type", null, RequestEnvironment.getLocale()));
complianceFilesNotice.put("deadline","2020-01-31");
/* complianceFilesNotice.put("root_url","111");*/
/*complianceFilesNotice.put("deadline","2020-01-31");*/
/*complianceFilesNotice.put("root_url","111");*/
complianceFilesNotice.put("client_less_file",complianceFileStatus.getBoolean("client_less_file"));
if(compliance != null){
complianceFilesNotice.put("refused_reason",compliance.getString("description"));
complianceFilesNotice.put("client_refuse_reason",compliance.getString("description"));
complianceFilesNotice.put("status",compliance.getString("status"));
complianceFilesNotice.put( "status_type", FilesAuthStatusEnum.STATUS.getAuthStatus(compliance.getIntValue("status")) );
}else{
complianceFilesNotice.put( "status_type", FilesAuthStatusEnum.STATUS.getAuthStatus(-1) );
}
return complianceFilesNotice;
@ -2616,18 +2628,21 @@ public class RetailAppServiceImp implements RetailAppService {
JSONObject kycFileStatus = signInAccountService.checkKycFileStatusForApp(client,account);
JSONObject compliance = clientComplianceCompanyMapper.findKycFileByClientId(account.getIntValue("client_id"));
if(!kycFileStatus.getBoolean("client_less_file")){
/* if(!kycFileStatus.getBoolean("client_less_file")){
return null;
}
}*/
kycFilesNotice.put("auth_type",FilesAuthTypeEnum.KYC.getAuthType());
kycFilesNotice.put("type", messageSource.getMessage("client.auth.file.kyc.type", null, RequestEnvironment.getLocale()));
kycFilesNotice.put("deadline", "2020-01-31");
/* kycFilesNotice.put("deadline", "2020-01-31");*/
/* kycFilesNotice.put("root_url","111");*/
kycFilesNotice.put("client_less_file",kycFileStatus.getBoolean("client_less_file"));
if(compliance != null){
kycFilesNotice.put("refused_reason",compliance.getString("description"));
kycFilesNotice.put("client_refuse_reason",compliance.getString("description"));
kycFilesNotice.put("status",compliance.getString("status"));
kycFilesNotice.put( "status_type", FilesAuthStatusEnum.STATUS.getAuthStatus(compliance.getIntValue("status")) );
}else{
kycFilesNotice.put( "status_type", FilesAuthStatusEnum.STATUS.getAuthStatus(-1) );
}
return kycFilesNotice;
}

@ -137,7 +137,7 @@ public class ClientComplianceApplyImpl implements ClientComplianceApply
FilesAuthEnum.PASS_OPR.getAfterStatus(),
FilesAuthEnum.PASS_OPR.getBeforeStatus(),
FilesAuthEnum.PASS_OPR.getAuthType("kyc"));
String[] unrepeatFiles = {"client_bank_file","client_id_file"};
String[] unrepeatFiles = {"client_company_file","client_id_file"};
for(String fileName : unrepeatFiles){
clientFilesMapper.updateRepeatFilesAfterCommit(clientId,fileName);
}

@ -226,10 +226,10 @@ public class KycServiceImpl implements KycService {
if (clientAllAuthFiles == null || clientAllAuthFiles.size() == 0) {
throw new BadRequestException("Please check the information is uploaded completely");
}
String[] fileKeys = {"client_bank_file", "client_id_file"};
String[] fileKeys = {"client_company_file", "client_id_file"};
String[] fileNames = {"ASIC File", "ID"};
if(StringUtils.equalsIgnoreCase("passport",account.getString("id_type")) ){
String[] fileKeysPassport = {"client_bank_file", "kyc_utility_bill_file", "client_id_file"};
String[] fileKeysPassport = {"client_company_file", "kyc_utility_bill_file", "client_id_file"};
String[] fileNamesPassport = {"ASIC File", "Utility Bill Files", "ID"};
fileKeys = fileKeysPassport;
fileNames = fileNamesPassport;

@ -30,7 +30,7 @@ package au.com.royalpay.payment.manage.kyc.enums;
public String[] getAuthType(String type) {
switch (type) {
case "kyc":
return new String[]{"client_bank_file","client_id_file","kyc_utility_bill_file"};
return new String[]{"client_company_file","client_id_file","kyc_utility_bill_file"};
case "compliance":
return new String[]{"client_bank_file","client_id_file","client_agree_file","client_company_file"};
default:

@ -0,0 +1,39 @@
package au.com.royalpay.payment.manage.kyc.enums;
/**
* @Author: liuxinxin
* @Date: 2019-12-25
*/
public enum FilesAuthStatusEnum {
STATUS(0);
private final int TYPE;
public int getTYPE() {
return TYPE;
}
FilesAuthStatusEnum(int TYPE) {
this.TYPE = TYPE;
}
public String getAuthStatus(int status) {
switch (status) {
case 0:
return "WAIT_AUTH";
case 1:
return "PASSED";
case 2:
return "REFUSED";
case 9:
return "BD_HELP";
case -1:
return "NOT_SUBMITTED";
default:
return null;
}
}
}

@ -7,7 +7,7 @@ import com.alibaba.fastjson.JSONObject;
*/
public class ClientKycFilesInfo {
private String file_bank_info;
private String file_company_info;
private String file_id_info;
@ -19,12 +19,12 @@ public class ClientKycFilesInfo {
return (JSONObject)JSONObject.toJSON(this);
}
public String getFile_bank_info() {
return file_bank_info;
public String getFile_company_info() {
return file_company_info;
}
public void setFile_bank_info(String file_bank_info) {
this.file_bank_info = file_bank_info;
public void setFile_company_info(String file_company_info) {
this.file_company_info = file_company_info;
}
public String getFile_id_info() {

@ -3452,7 +3452,7 @@ public class ClientManagerImpl implements ClientManager, ManagerTodoNoticeProvid
@Override
public JSONObject getAllKycFiles(JSONObject manager, String clientMoniker) {
JSONObject client = getClientInfoByMoniker(clientMoniker);
String[] fileKeys = {"client_bank_file", "kyc_utility_bill_file", "client_id_file"};
String[] fileKeys = {"client_company_file", "kyc_utility_bill_file", "client_id_file"};
if (client == null) {
throw new InvalidShortIdException();
}
@ -3563,7 +3563,7 @@ public class ClientManagerImpl implements ClientManager, ManagerTodoNoticeProvid
}
int clientId = client.getIntValue("client_id");
try {
updateSysClientFiles(manager, clientId, CLIENT_BANK_FILE, filesInfo.getFile_bank_info());
updateSysClientFiles(manager, clientId, CLIENT_COMPANY_FILE, filesInfo.getFile_company_info());
updateSysClientFiles(manager, clientId, CLIENT_ID_FILE, filesInfo.getFile_id_info());
updateSysClientFiles(manager, clientId, KYC_UTILITY_BILL_FILE, filesInfo.getUtility_bill_info());
} catch (Exception e) {
@ -3603,7 +3603,7 @@ public class ClientManagerImpl implements ClientManager, ManagerTodoNoticeProvid
}
int clientId = client.getIntValue("client_id");
try {
updateFilesForWaitAuditWithoutRepeat(manager, clientId, CLIENT_BANK_FILE, filesInfo.getFile_bank_info(),fileResult);
updateFilesForWaitAuditWithoutRepeat(manager, clientId, CLIENT_COMPANY_FILE, filesInfo.getFile_company_info(),fileResult);
updateFilesForWaitAuditWithoutRepeat(manager, clientId, CLIENT_ID_FILE, filesInfo.getFile_id_info(),fileResult);
updateSysClientFilesForWaitCompliance(manager, clientId, KYC_UTILITY_BILL_FILE, filesInfo.getUtility_bill_info(),fileResult);
} catch (Exception e) {

@ -757,7 +757,8 @@ public class SignInAccountServiceImpl implements SignInAccountService, Applicati
lessKycFiles = false;
}
result.put("client_less_file", lessKycFiles);
if (lessKycFiles || account.containsKey("manager_id")) {
JSONObject compliance = clientComplianceCompanyMapper.findKycFileByClientId(account.getIntValue("client_id"));
if (lessKycFiles || account.containsKey("manager_id") || compliance != null) {
List<JSONObject> kycFiles = new ArrayList<>();
if ("client".equals(sourceType.toLowerCase())) {
kycFiles = clientFilesMapper.findKycClientFileByClient(client.getIntValue("client_id"));

@ -46,13 +46,13 @@
<select id="findKycClientFileByClient" resultType="com.alibaba.fastjson.JSONObject">
select * from sys_files where is_valid = 1
and client_id = #{client_id}
and (status = 0 or status = 1 or status = 3) and file_name in ('client_bank_file','client_id_file','kyc_utility_bill_file')
and (status = 0 or status = 1 or status = 2 or status = 3) and file_name in ('client_company_file','client_id_file','kyc_utility_bill_file')
order by last_update_date asc
</select>
<select id="findKycClientFileByAudit" resultType="com.alibaba.fastjson.JSONObject">
select * from sys_files where is_valid = 1
and client_id = #{client_id}
and (status = 1 or status = 2 or status = 3) and file_name in ('client_bank_file','client_id_file','kyc_utility_bill_file')
and (status = 1 or status = 2 or status = 3) and file_name in ('client_company_file','client_id_file','kyc_utility_bill_file')
order by last_update_date asc
</select>
<update id="confirmAgreeFile">

@ -117,8 +117,7 @@ sys.mondelay.cancel.waring=Are you sure to quit this activity?
client.auth.file.title=RoyalPay is committed to providing a secure and safe platform for Chinese payments. As a part of this we regularly participate in communication with Austrac and China's Foreign Exchange Regulator. To ensure your business is fully compliant, we require certain documents from you by the 31st of October. If you believe you may not be able to submit these documents on time please get in touch with us as soon as possible.
client.auth.file.aggregate.title=Notice Of Supplementary Files
client.auth.file.compliance.type=Compliance Files
client.auth.file.kyc.type=KYC Files
client.auth.file.aggregate.deadline=Deadline 2020-1-20
client.auth.file.compliance.type=2019-10 KYC Certification Information Supplement(1)
client.auth.file.kyc.type=2020-01 KYC Certification Information Supplement(2)
client.auth.file.help_confirm=Please confirm whether you need help from customer service ?
client.auth.file.help_success=Successful notification, please wait for customer service to contact you.

@ -110,8 +110,7 @@ sys.mondelay.cancel.waring=是否确认退出活动
client.auth.file.title=应澳洲政府反洗钱监管机构Austrac和中国外汇监管相关要求需要您配合补充完善基本资料以完成合规流程截止时间2019年10月31日前超期未提交将可能会影响您的正常交易谢谢您的配合。
client.auth.file.aggregate.title=补充材料通知
client.auth.file.compliance.type=合规材料
client.auth.file.kyc.type=KYC材料
client.auth.file.aggregate.deadline=截止时间 2020-1-20
client.auth.file.compliance.type=2019-10月KYC材料认证补充(1)
client.auth.file.kyc.type=2020-01月KYC材料认证补充(2)
client.auth.file.help_confirm=请确认您是否需要客服的帮助?
client.auth.file.help_success=通知成功,请等待客服与您联系。

@ -151,7 +151,7 @@ define(['angular', 'static/commons/commons', 'uiBootstrap', 'uiRouter', 'ngBootS
sessionStorage.setItem($scope.file.client.client_moniker+'_idType',idType);
}
$scope.uploadBankFile = function (file) {
$scope.uploadCompanyFile = function (file) {
if (file != null) {
if (file.size > 3 * 1024 * 1024) {
commonDialog.alert({title: 'Error', content: '文件大小不能超过3MB请压缩后重试', type: 'error'})
@ -162,12 +162,12 @@ define(['angular', 'static/commons/commons', 'uiBootstrap', 'uiRouter', 'ngBootS
data: {file: file}
}).then(function (resp) {
delete $scope.bankFileProgress;
$scope.file.file_bank_info = resp.data.url;
$scope.file.file_company_info = resp.data.url;
$scope.updateFile();
if ($scope.file.file_bank_info.endsWith('pdf')) {
$scope.bankIsImage = false;
if ($scope.file.file_company_info.endsWith('pdf')) {
$scope.companyIsImage = false;
} else {
$scope.bankIsImage = true;
$scope.companyIsImage = true;
}
}, function (resp) {
delete $scope.bankFileProgress;
@ -205,7 +205,8 @@ define(['angular', 'static/commons/commons', 'uiBootstrap', 'uiRouter', 'ngBootS
}
}
};
$scope.uploadCompanyFile = function (file) {
$scope.uploadBillFile = function (file) {
if (file != null) {
if (file.size > 3 * 1024 * 1024) {
commonDialog.alert({title: 'Error', content: '文件大小不能超过3MB请压缩后重试', type: 'error'})
@ -263,8 +264,8 @@ define(['angular', 'static/commons/commons', 'uiBootstrap', 'uiRouter', 'ngBootS
})
};
$scope.clientComplianceViewCommit = function () {
if (!$scope.file.file.client_bank_file && !$scope.file.file_company.bd_handle) {
commonDialog.alert({title: 'Error', content: '请提交* ASIC File', type: 'error'});
if (!$scope.file.file.client_company_file && !$scope.file.file_company.bd_handle) {
commonDialog.alert({title: 'Error', content: '请提交* Certificate of Registration(ASIC File)', type: 'error'});
return;
}
if (!$scope.file.file.client_id_file && !$scope.file.file_company.bd_handle) {

@ -31,7 +31,7 @@ define(['angular', 'static/commons/commons', 'uiBootstrap', 'uiRouter', 'ngBootS
}
//audit files
$scope.uploadBankFile = function (file) {
$scope.uploadCompanyFile = function (file) {
if (file != null) {
if (file.size > 3 * 1024 * 1024) {
commonDialog.alert({title: 'Error', content: '文件大小不能超过3MB请压缩后重试', type: 'error'})
@ -42,12 +42,12 @@ define(['angular', 'static/commons/commons', 'uiBootstrap', 'uiRouter', 'ngBootS
data: {file: file}
}).then(function (resp) {
delete $scope.bankFileProgress;
$scope.file.file_bank_info = resp.data.url;
$scope.file.file_company_info = resp.data.url;
$scope.updateFile();
if ($scope.file.file_bank_info.endsWith('pdf')) {
$scope.bankIsImage = false;
if ($scope.file.file_company_info.endsWith('pdf')) {
$scope.companyIsImage = false;
} else {
$scope.bankIsImage = true;
$scope.companyIsImage = true;
}
}, function (resp) {
delete $scope.bankFileProgress;
@ -89,7 +89,7 @@ define(['angular', 'static/commons/commons', 'uiBootstrap', 'uiRouter', 'ngBootS
};
//上传账单流水
$scope.uploadCompanyFile = function (file) {
$scope.uploadBillFile = function (file) {
if (file != null) {
if (file.size > 3 * 1024 * 1024) {
commonDialog.alert({title: 'Error', content: '文件大小不能超过3MB请压缩后重试', type: 'error'})
@ -117,16 +117,16 @@ define(['angular', 'static/commons/commons', 'uiBootstrap', 'uiRouter', 'ngBootS
}
};
$scope.bankIsImage = true;
if ($scope.file.file_bank_info && $scope.file.file_bank_info.endsWith('pdf')) {
$scope.bankIsImage = false;
$scope.companyIsImage = true;
if ($scope.file.file_company_info && $scope.file.file_company_info.endsWith('pdf')) {
$scope.companyIsImage = false;
}
$scope.idIsImage = true;
if ($scope.file.file_id_info && $scope.file.file_id_info.endsWith('pdf')) {
$scope.idIsImage = false;
}
$scope.billIsImage = true;
if ($scope.file.file_company_info && $scope.file.file_company_info.endsWith('pdf')) {
if ($scope.file.utility_bill_info && $scope.file.utility_bill_info.endsWith('pdf')) {
$scope.billIsImage = false;
}
@ -161,8 +161,8 @@ define(['angular', 'static/commons/commons', 'uiBootstrap', 'uiRouter', 'ngBootS
})
};
$scope.clientComplianceViewCommit = function () {
if (!$scope.file.client_bank_file) {
commonDialog.alert({title: 'Error', content: '请提交* ASIC File', type: 'error'});
if (!$scope.file.client_company_file) {
commonDialog.alert({title: 'Error', content: '请提交* Certificate of Registration(ASIC File)', type: 'error'});
return;
}
if (!$scope.file.client_id_file) {

@ -61,17 +61,17 @@
<div class="panel-body">
<div class="form-horizontal">
<div class="form-group">
<label class="control-label col-sm-3">* ASIC File</label>
<label class="control-label col-sm-3">* Certificate of Registration(ASIC File)</label>
<div class="col-sm-3">
<div class="form-control-static">
<button class="btn btn-primary" type="button"
ngf-select="uploadBankFile($file)">
ngf-select="uploadCompanyFile($file)">
<i class="fa fa-upload"></i> Upload
</button>
</div>
<uib-progressbar value="bankFileProgress.value" ng-if="bankFileProgress"></uib-progressbar>
<a target="_blank" ng-href="{{file.file.client_bank_file}}">
<img class="col-sm-6" style="border: 1px solid #ddd" ng-src="{{file.file.client_bank_file}}"
<a target="_blank" ng-href="{{file.file.client_company_file}}">
<img class="col-sm-6" style="border: 1px solid #ddd" ng-src="{{file.file.client_company_file}}"
class="col-sm-8"
onerror="this.src='/static/images/file_close.png'"></a>
</div>
@ -140,7 +140,7 @@
<div class="col-sm-3">
<div class="form-control-static">
<button class="btn btn-primary" type="button"
ngf-select="uploadCompanyFile($file)">
ngf-select="uploadBillFile($file)">
<i class="fa fa-upload"></i> Upload
</button>
</div>

@ -27,18 +27,19 @@
<div class="panel-body box box-warning ng-scope" style="margin-top: 20px;">
<div class="form-horizontal">
<div class="form-group">
<label class="control-label col-sm-3">* ASIC File</label>
<label class="control-label col-sm-3">* Certificate of Registration(ASIC File)</label>
<div class="col-sm-3">
<div class="form-control-static">
<button class="btn btn-primary" type="button"
ngf-select="uploadBankFile($file)">
ng-if="currentUser.lessKycFiles"
ngf-select="uploadCompanyFile($file)">
<i class="fa fa-upload"></i> Upload
</button>
</div>
<uib-progressbar value="bankFileProgress.value" ng-if="bankFileProgress"></uib-progressbar>
<a ng-if="bankIsImage" target="_blank" ng-href="{{file.client_bank_file}}">
<img ng-if="file.client_bank_file"
class="col-sm-6" style="border: 1px solid #ddd" ng-src="{{file.client_bank_file}}"
<a ng-if="companyIsImage" target="_blank" ng-href="{{file.client_company_file}}">
<img ng-if="file.client_company_file"
class="col-sm-6" style="border: 1px solid #ddd" ng-src="{{file.client_company_file}}"
class="col-sm-8"
onerror="this.src='/static/images/file_close.png'"></a>
</div>
@ -56,11 +57,17 @@
<label class="control-label col-sm-3">* Choose ID Type </label>
<div class="col-sm-5">
<div class="form-control-static">
<select class="form-control" ng-model="file.id_type" style="width: 250px" ng-change="setSession(file.id_type)">
<select class="form-control"
ng-if="currentUser.lessKycFiles"
ng-model="file.id_type" style="width: 250px" ng-change="setSession(file.id_type)">
<option value="">Please Choose</option>
<option value="passport" >Passport</option>
<option value="driver_license">Driver's license</option>
</select>
<div ng-if="!currentUser.lessKycFiles">
<p ng-if="file.id_type == 'passport'" >Passport</p>
<p ng-if="file.id_type == 'driver_license' ">Driver's license</p>
</div>
<p class="text-info">
<i class="fa fa-info"></i> Please select the file type for uploading the ID.<br>
<i class="fa fa-info"></i> Uploading your passport file requires you to upload your utility bill file. <br>
@ -78,12 +85,13 @@
<div class="col-sm-3">
<div class="form-control-static">
<button class="btn btn-primary" type="button"
ng-if="currentUser.lessKycFiles"
ngf-select="uploadIDFile($file)">
<i class="fa fa-upload"></i> Upload
</button>
</div>
<uib-progressbar value="idFileProgress.value" ng-if="idFileProgress"></uib-progressbar>
<a ng-if="bankIsImage" target="_blank" ng-href="{{file.client_id_file}}">
<a ng-if="idIsImage" target="_blank" ng-href="{{file.client_id_file}}">
<img ng-if="file.client_id_file"
class="col-sm-6" style="border: 1px solid #ddd" ng-src="{{file.client_id_file}}"
class="col-sm-8"
@ -108,7 +116,8 @@
<div class="col-sm-3">
<div class="form-control-static">
<button class="btn btn-primary" type="button"
ngf-select="uploadCompanyFile($file)">
ng-if="currentUser.lessKycFiles"
ngf-select="uploadBillFile($file)">
<i class="fa fa-upload"></i> Upload
</button>
</div>
@ -122,6 +131,7 @@
onerror="this.src='/static/images/file_close.png'">
</a>
<button class="btn btn-danger" type="button"
ng-if="currentUser.lessKycFiles"
ng-click="deleteComplianceFiles(file_src.file_id)">
X
</button>
@ -150,9 +160,11 @@
<div class="row" style="text-align: center">
<button style="width: 30%;height: 50px;font-size: 20px;margin-top: 40px;margin-bottom: 20px;" class="btn-group btn btn-success" type="button"
ng-if="currentUser.lessKycFiles"
ng-click="clientComplianceViewCommit()">Submit Files
</button>
<button style="width: 10%;height: 50px;font-size: 15px;margin-top: 40px;margin-bottom: 20px;" class="btn-group btn btn-warning" type="button"
ng-if="currentUser.lessKycFiles"
ng-click="needBDIntervention()">Need help?
</button>
</div>

@ -19,7 +19,7 @@
<div class="panel-body">
<div class="form-horizontal">
<div class="form-group">
<label class="control-label col-sm-2">* ASIC File</label>
<label class="control-label col-sm-2">* Certificate of Registration(ASIC File)</label>
<div class="col-sm-4">
<div class="form-control-static" ng-if="role =='compliance'">
<button class="btn btn-primary" type="button"
@ -29,14 +29,11 @@
<i class="fa fa-check-square-o check-i" aria-hidden="true" style="float: none" ng-if="$root.complianceCheck.authFile"></i>
</div>
<uib-progressbar value="bankFileProgress.value" ng-if="bankFileProgress"></uib-progressbar>
<!-- <a ng-if="bankIsImage" target="_blank" ng-repeat="src in file.client_bank_file" ng-href="{{src}}">
<img ng-src="{{src}}" class="col-sm-8">
</a>-->
<table>
<tbody>
<tr ng-repeat="file_src in file.client_bank_file track by $index">
<tr ng-repeat="file_src in file.client_company_file track by $index">
<td ng-bind="$index+1+'.'" ALIGN="left" VALIGN="top" class="btn">1</td>
<td><a ng-if="bankIsImage" target="_blank" ng-href="{{file_src.file_value}}">
<td><a ng-if="companyIsImage" target="_blank" ng-href="{{file_src.file_value}}">
<img ng-src="{{file_src.file_value}}"class="col-sm-6" style="border: 1px solid #ddd" onerror="this.src='/static/images/file_close.png'">
</a>
<button class="btn btn-danger" type="button" ng-click="deleteComplianceFiles(file_src.file_id)">X</button>
@ -85,7 +82,7 @@
<tbody>
<tr ng-repeat="file_src in file.client_id_file track by $index">
<td ng-bind="$index+1+'.'" class="btn">1</td>
<td><a ng-if="bankIsImage" target="_blank" ng-href="{{file_src.file_value}}">
<td><a ng-if="idIsImage" target="_blank" ng-href="{{file_src.file_value}}">
<img ng-src="{{file_src.file_value}}" class="col-sm-6" style="border: 1px solid #ddd" onerror="this.src='/static/images/file_close.png'">
</a>
<button class="btn btn-danger" type="button" ng-click="deleteComplianceFiles(file_src.file_id)">X</button>
@ -116,7 +113,7 @@
<div class="col-sm-4">
<div class="form-control-static" ng-if="role =='compliance'">
<button class="btn btn-primary" type="button"
ngf-select="uploadCompanyFile($file)">
ngf-select="uploadBillFile($file)">
<i class="fa fa-upload"></i> Upload
</button>
</div>
@ -168,4 +165,3 @@
</div>
</div>
</div>

@ -4058,7 +4058,7 @@ define(['angular', 'decimal', 'static/commons/commons', 'uiBootstrap', 'uiRouter
$scope.file = file.data || {};
//kyc files
$scope.uploadBankFile = function (file) {
$scope.uploadCompanyFile = function (file) {
if (file != null) {
if (file.size > 3 * 1024 * 1024) {
commonDialog.alert({title: 'Error', content: '文件大小不能超过3MB请压缩后重试', type: 'error'})
@ -4069,12 +4069,12 @@ define(['angular', 'decimal', 'static/commons/commons', 'uiBootstrap', 'uiRouter
data: {file: file}
}).then(function (resp) {
delete $scope.bankFileProgress;
$scope.file.file_bank_info = resp.data.url;
$scope.file.file_company_info = resp.data.url;
$scope.updateFile();
if ($scope.file.file_bank_info.endsWith('pdf')) {
$scope.bankIsImage = false;
if ($scope.file.file_company_info.endsWith('pdf')) {
$scope.companyIsImage = false;
} else {
$scope.bankIsImage = true;
$scope.companyIsImage = true;
}
}, function (resp) {
delete $scope.bankFileProgress;
@ -4086,10 +4086,11 @@ define(['angular', 'decimal', 'static/commons/commons', 'uiBootstrap', 'uiRouter
}
};
$scope.bankIsImage = true;
if ($scope.file.file_bank_info && $scope.file.file_bank_info.endsWith('pdf')) {
$scope.bankIsImage = false;
$scope.companyIsImage = true;
if ($scope.file.file_company_info && $scope.file.file_company_info.endsWith('pdf')) {
$scope.companyIsImage = false;
}
$scope.idIsImage = true;
if ($scope.file.file_id_info && $scope.file.file_id_info.endsWith('pdf')) {
$scope.idIsImage = false;
@ -4129,7 +4130,7 @@ define(['angular', 'decimal', 'static/commons/commons', 'uiBootstrap', 'uiRouter
};
//上传账单流水
$scope.uploadCompanyFile = function (file) {
$scope.uploadBillFile = function (file) {
if (file != null) {
if (file.size > 3 * 1024 * 1024) {
commonDialog.alert({title: 'Error', content: '文件大小不能超过3MB请压缩后重试', type: 'error'})

@ -62,18 +62,29 @@
<div class="panel-body">
<div class="form-horizontal">
<div class="form-group">
<label class="control-label col-sm-4" style="text-align: center;">bank statement
<label class="control-label col-sm-4" style="text-align: center;">Certificate of Registration(ASIC File)
<span ng-if="file.file_company.status==0" class="small text-danger">(待审核)</span>
<span ng-if="file.file_company.status==1" class="small text-success">(已通过)</span>
<span ng-if="file.file_company.status==2" class="small text-danger">(已驳回)</span>
</label>
<div class="col-sm-6">
<a target="_blank" ng-href="{{file.file.client_bank_file}}">
<img class="col-sm-6" style="border: 1px solid #ddd" ng-src="{{file.file.client_bank_file}}" class="col-sm-8" onerror="this.src='/static/images/file_close.png'">
<a target="_blank" ng-href="{{file.file.client_company_file}}">
<img class="col-sm-6" style="border: 1px solid #ddd" ng-src="{{file.file.client_company_file}}" class="col-sm-8" onerror="this.src='/static/images/file_close.png'">
</a>
</div>
</div>
<div class="form-group" ng-if="file.file_company">
<label class="control-label col-sm-4" style="text-align: center;"> ID Type </label>
<div class="col-sm-6">
<div class="form-control-static">
<p ng-if="file.file_company.id_type == 'passport'" >Passport</p>
<p ng-if="file.file_company.id_type == 'driver_license' ">Driver's license</p>
</select>
</div>
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-4" style="text-align: center;">ID
<span ng-if="file.file_company.status==0" class="small text-danger">(待审核)</span>

@ -13,16 +13,7 @@
<div class="row">
<div class="col-xs-12">
<div class="form-horizontal">
<!--<div class="form-group">-->
<!--&lt;!&ndash;<label class="control-label col-xs-3">Title</label>&ndash;&gt;-->
<!--<div class="col-xs-12">-->
<!--<p class="form-control-static">-->
<!--{{notice.title}}-->
<!--</p>-->
<!--</div>-->
<!--</div>-->
<div class="form-group">
<!--<label class="control-label col-xs-3">Content</label>-->
<div class="col-xs-12">
<a><h5 style="text-align: right"><span ng-click="changeLanguage('en')" ng-class="{'selectedLanguage':adviceLanguage == 'en'}"style="cursor: pointer;">EN</span> | <span ng-click="changeLanguage('zh')" ng-class="{'selectedLanguage':adviceLanguage == 'zh'}" style="cursor: pointer;">中文</span></h5></a>
<div ng-if="adviceLanguage == 'en'">
@ -73,39 +64,54 @@
<tr><th colspan="4" style="text-align: center">List Of Information To Be Supplemented</th></tr>
<tr>
<th>Supplement Type</th>
<th>Deadline</th>
<th>Status</th>
<th>Operation</th>
</tr>
</thead>
<tbody>
<tr ng-if="file.client_less_file">
<td>Supplement Compliance File</td>
<td>2020-01-31</td>
<tr>
<td>2019-10 KYC Certification Information Supplement(1)</td>
<td>
<p ng-if="file.file_company" style="color: red">
<span ng-if="file.file_company.status == 2">Refused</span>
<p ng-if="file.file_company && file.file_company.status == 2" style="color: red">
<span >Refused</span>
<span ng-if="file.file_company.description">({{file.file_company.description}})</span>
</p>
<p ng-if="file.file_company && file.file_company.status == 0">
<span>Pending examination and approval</span>
</p>
<p ng-if="file.file_company && file.file_company.status == 1" style="color: green">
<span>Done</span>
</p>
<p ng-if=" !file.file_company">
<span>Not Submitted</span>
</p>
</td>
<td><p><a ui-sref="compliance_to_perfect" ng-click="$dismiss()">Go to replenish>></a></p></td>
<td>
<p ng-if="file.client_less_file"><a ui-sref="compliance_to_perfect" ng-click="$dismiss()">Go to replenish>></a></p>
<p ng-if="!file.client_less_file"><a ui-sref="compliance_to_perfect" ng-click="$dismiss()">View>></a></p>
</td>
</tr>
<tr ng-if="kycFile.client_less_file">
<td>KYC Certification Information Supplement</td>
<td>2020-01-31</td>
<tr >
<td>2020-01 KYC Certification Information Supplement(2)</td>
<td>
<p ng-if="kycFile.file_company" style="color: red">
<span ng-if="kycFile.file_company.status == 2">Refused</span>
<p ng-if="kycFile.file_company && kycFile.file_company.status == 2" style="color: red">
<span>Refused</span>
<span ng-if="kycFile.file_company.description">({{kycFile.file_company.description}})</span>
</p>
<p ng-if="kycFile.file_company && kycFile.file_company.status == 0">
<span>Pending examination and approval</span>
</p>
<p ng-if="kycFile.file_company && kycFile.file_company.status == 1" style="color: green">
<span>Done</span>
</p>
<p ng-if=" !kycFile.file_company">
<span>Not Submitted</span>
</p>
</td>
<td><p><a ui-sref="kyc_files_perfect" ng-click="$dismiss()">Go to replenish>></a></p></td>
<td>
<p ng-if="kycFile.client_less_file"><a ui-sref="kyc_files_perfect" ng-click="$dismiss()">Go to replenish>></a></p>
<p ng-if="!kycFile.client_less_file"><a ui-sref="kyc_files_perfect" ng-click="$dismiss()">View>></a></p>
</td>
</tr>
</tbody>
</table>
@ -118,39 +124,54 @@
<tr><th colspan="4" style="text-align: center">待补充资料列表</th></tr>
<tr>
<th>资料类型</th>
<th>截止时间</th>
<th>状态</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<tr ng-if="file.client_less_file">
<td>合规资料补充</td>
<td>2020-01-31</td>
<tr>
<td>2019-10月KYC材料认证补充(1)</td>
<td>
<p ng-if="file.file_company" style="color: red">
<span ng-if="file.file_company.status == 2">打回</span>
<p ng-if="file.file_company && file.file_company.status == 2" style="color: red">
<span>打回</span>
<span ng-if="file.file_company.description">({{file.file_company.description}})</span>
</p>
<p ng-if="file.file_company && file.file_company.status == 0">
<span>待审核</span>
</p>
<p ng-if="file.file_company && file.file_company.status == 1" style="color: green">
<span>已完成</span>
</p>
<p ng-if=" !file.file_company">
<span>未提交</span>
</p>
</td>
<td><p><a ui-sref="compliance_to_perfect" ng-click="$dismiss()">前往补充>></a></p></td>
<td>
<p ng-if="file.client_less_file"><a ui-sref="compliance_to_perfect" ng-click="$dismiss()">前往补充>></a></p>
<p ng-if="!file.client_less_file"><a ui-sref="compliance_to_perfect" ng-click="$dismiss()">查看>></a></p>
</td>
</tr>
<tr ng-if="kycFile.client_less_file">
<td>KYC认证资料补充</td>
<td>2020-01-31</td>
<tr>
<td>2020-01月KYC材料认证补充(2)</td>
<td>
<p ng-if="kycFile.file_company" style="color: red">
<span ng-if="kycFile.file_company.status == 2">打回</span>
<p ng-if="kycFile.file_company && kycFile.file_company.status == 2" style="color: red">
<span>打回</span>
<span ng-if="kycFile.file_company.description">({{kycFile.file_company.description}})</span>
</p>
<p ng-if="kycFile.file_company && kycFile.file_company.status == 0">
<span>待审核</span>
</p>
<p ng-if="kycFile.file_company && kycFile.file_company.status == 1" style="color: green">
<span>已完成</span>
</p>
<p ng-if=" !kycFile.file_company">
<span>未提交</span>
</p>
</td>
<td><p><a ui-sref="kyc_files_perfect" ng-click="$dismiss()">前往补充>></a></p></td>
<td>
<p ng-if="kycFile.client_less_file"><a ui-sref="kyc_files_perfect" ng-click="$dismiss()">前往补充>></a></p>
<p ng-if="!kycFile.client_less_file"><a ui-sref="kyc_files_perfect" ng-click="$dismiss()">查看>></a></p>
</td>
</tr>
</tbody>
</table>

Loading…
Cancel
Save