yeepay sub init

master
james.zhao 6 years ago
parent 67f73d7f7c
commit 650e579f95

@ -3719,7 +3719,16 @@ public class ClientManagerImpl implements ClientManager, ManagerTodoNoticeProvid
merchantInfo.put("create_time",new Date());
merchantInfo.put("operator",manager.getString("display_name"));
merchantInfo.put("client_id",client.getIntValue("client_id"));
merchantInfo.put("vouchers",merchantInfo.getJSONObject("vouchers").toJSONString());
merchantInfo.put("client_id",merchantInfo.getString("client_id"));
// merchantInfo.put("vouchers",merchantInfo.getJSONObject("vouchers").toJSONString());
List<JSONObject> directorsAll = new ArrayList<>();
List<JSONObject> executivesAll = new ArrayList<>();
directorsAll.add(merchantInfo.getJSONObject("directors"));
executivesAll.add(merchantInfo.getJSONObject("executives"));
JSONObject extInfo = new JSONObject();
extInfo.put("directors",directorsAll);
extInfo.put("executives",executivesAll);
merchantInfo.put("extinfo",extInfo.toJSONString());
yeePayClientConfigMapper.saveMerchantConfig(merchantInfo);
JSONObject yeepayConfig = yeePayClientConfigMapper.findMerchantConfig(client.getIntValue("client_id"));
SubmerchantRegisterResult result = yeePayClient.registerMerchant(client,yeepayConfig);

@ -3505,6 +3505,11 @@ define(['angular', 'decimal', 'static/commons/commons', 'uiBootstrap', 'uiRouter
$scope.subMerchantInfo = angular.copy(subMerchantInfo);
var vouchers={};
$scope.directors={};
$scope.executives={};
$scope.industry = '';
var merchantInfo = {};
var merchantId = '';
@ -3570,7 +3575,7 @@ define(['angular', 'decimal', 'static/commons/commons', 'uiBootstrap', 'uiRouter
}).then(function (resp) {
delete $scope.businessLicenceProgress;
$scope.businessLicence = resp.data.path;
vouchers['businessLicence'] = resp.data.path;
merchantInfo['business_licence'] = resp.data.path;
merchantId = resp.data.merchantId;
commonDialog.alert({title: 'Upload Success', content: 'Upload Success', type: 'success'})
}, function (resp) {
@ -3708,8 +3713,57 @@ define(['angular', 'decimal', 'static/commons/commons', 'uiBootstrap', 'uiRouter
}
};
$scope.uploadDirectorPassport = function (file) {
if (file != null) {
if (file.size > 3 * 1024 * 1024) {
commonDialog.alert({title: 'Error', content: '文件大小不能超过3MB请压缩后重试', type: 'error'})
} else {
$scope.directorPassportProgress = {value: 0};
Upload.upload({
url: '/attachment/yeepayFiles',
data: {file: file}
}).then(function (resp) {
delete $scope.directorPassportProgress;
$scope.directorPassport = resp.data.path;
$scope.directors.filePath = resp.data.path;
merchantId = resp.data.merchantId;
commonDialog.alert({title: 'Upload Success', content: 'Upload Success', type: 'success'})
}, function (resp) {
delete $scope.directorPassportProgress;
commonDialog.alert({title: 'Upload Failed', content: resp.data.message, type: 'error'})
}, function (evt) {
$scope.directorPassportProgress.value = parseInt(100 * evt.loaded / evt.total);
})
}
}
};
$scope.uploadExecutivePassport = function (file) {
if (file != null) {
if (file.size > 3 * 1024 * 1024) {
commonDialog.alert({title: 'Error', content: '文件大小不能超过3MB请压缩后重试', type: 'error'})
} else {
$scope.executivePassportProgress = {value: 0};
Upload.upload({
url: '/attachment/yeepayFiles',
data: {file: file}
}).then(function (resp) {
delete $scope.executivePassportProgress;
$scope.executivePassport = resp.data.path;
$scope.executives.filePath = resp.data.path;
merchantId = resp.data.merchantId;
commonDialog.alert({title: 'Upload Success', content: 'Upload Success', type: 'success'})
}, function (resp) {
delete $scope.executivePassportProgress;
commonDialog.alert({title: 'Upload Failed', content: resp.data.message, type: 'error'})
}, function (evt) {
$scope.executivePassportProgress.value = parseInt(100 * evt.loaded / evt.total);
})
}
}
};
$scope.saveYeepayApply = function (form) {
var merchantInfo = {};
$scope.errmsg = null;
if (form.$invalid) {
angular.forEach(form, function (item, key) {
@ -3719,14 +3773,16 @@ define(['angular', 'decimal', 'static/commons/commons', 'uiBootstrap', 'uiRouter
});
return;
}
angular.forEach(form, function (item, key) {
if(item !=null) {
if(item.$name !=null) {
merchantInfo[key] = item.$modelValue;
}
}
});
merchantInfo['vouchers'] = vouchers;
// angular.forEach(form, function (item, key) {
// if(item !=null) {
// if(item.$name !=null) {
// merchantInfo[key] = item.$modelValue;
// }
// }
// });
merchantInfo['executives'] = $scope.executives;
merchantInfo['directors'] = $scope.directors;
merchantInfo['industry'] = $scope.industry;
merchantInfo['merchantId'] = merchantId;
$http.post('/sys/partners/' + $scope.subMerchantInfo.client_moniker + '/registYeepaySubMerchantId', merchantInfo).then(function (resp) {
$scope.apply_sub_merchant_id = resp.data;

@ -6,21 +6,21 @@
<div class="panel-heading">Apply Yeepay Sub Merchant Id</div>
<div class="panel-body">
<div class="form-horizontal">
<div class="form-group"
ng-class="{'has-error':subForm.business_content.$invalid && subForm.business_content.$dirty}">
<label class="control-label col-sm-3" for="business_content">* Business Content</label>
<div class="col-sm-8">
<select class="form-control" name="business_content"
ng-model="subMerchantInfo.business_content"
id="business_content" required
ng-options="business_content.value as business_content.label for business_content in yeepay_business_contents">
<option value="">Please Choose</option>
</select>
<div ng-messages="subForm.business_content.$error" ng-if="subForm.business_content.$dirty">
<p class="small text-danger" ng-message="required">Required Field</p>
</div>
</div>
</div>
<!--<div class="form-group"-->
<!--ng-class="{'has-error':subForm.business_content.$invalid && subForm.business_content.$dirty}">-->
<!--<label class="control-label col-sm-3" for="business_content">* Business Content</label>-->
<!--<div class="col-sm-8">-->
<!--<select class="form-control" name="business_content"-->
<!--ng-model="subMerchantInfo.business_content"-->
<!--id="business_content" required-->
<!--ng-options="business_content.value as business_content.label for business_content in yeepay_business_contents">-->
<!--<option value="">Please Choose</option>-->
<!--</select>-->
<!--<div ng-messages="subForm.business_content.$error" ng-if="subForm.business_content.$dirty">-->
<!--<p class="small text-danger" ng-message="required">Required Field</p>-->
<!--</div>-->
<!--</div>-->
<!--</div>-->
<div class="form-group"
@ -28,7 +28,7 @@
<label class="control-label col-sm-3" for="industry">* Business Category</label>
<div class="col-sm-8">
<select class="form-control" name="industry"
ng-model="subMerchantInfo.industry"
ng-model="industry"
id="industry" required
ng-options="industry.value as industry.label for industry in yeepay_industries">
<option value="">Please Choose</option>
@ -39,134 +39,263 @@
</div>
</div>
<!--<div class="form-group">-->
<!--<label class="control-label col-sm-3" >* Corporate ID Card Front</label>-->
<!--<div class="col-sm-8">-->
<!--<div class="form-control-static">-->
<!--<button class="btn btn-success" type="button"-->
<!--ngf-select="uploadLegalIDcardFront($file)"-->
<!--accept="image/*">-->
<!--<i class="fa fa-upload"></i> Upload Corporate ID Card Front-->
<!--</button>-->
<!--</div>-->
<!--<uib-progressbar value="legalIDcardFrontProgress.value"-->
<!--ng-if="legalIDcardFrontProgress"></uib-progressbar>-->
<!--<div ng-if="legalIDcardFront">Url:{{legalIDcardFront}}</div>-->
<!--</div>-->
<!--</div>-->
<!--<div class="form-group">-->
<!--<label class="control-label col-sm-3" >* Corporate ID Card Back</label>-->
<!--<div class="col-sm-8">-->
<!--<div class="form-control-static">-->
<!--<button class="btn btn-success" type="button"-->
<!--ngf-select="uploadLegalIDcardBack($file)"-->
<!--accept="image/*">-->
<!--<i class="fa fa-upload"></i> Upload Corporate ID Card Back-->
<!--</button>-->
<!--</div>-->
<!--<uib-progressbar value="legalIDcardBackProgress.value"-->
<!--ng-if="legalIDcardBackProgress"></uib-progressbar>-->
<!--<div ng-if="legalIDcardBack">Url:{{legalIDcardBack}}</div>-->
<!--</div>-->
<!--</div>-->
<div class="form-group">
<label class="control-label col-sm-3" >* Corporate ID Card Front</label>
<label class="control-label col-sm-3" >* Business Licence</label>
<div class="col-sm-8">
<div class="form-control-static">
<button class="btn btn-success" type="button"
ngf-select="uploadLegalIDcardFront($file)"
ngf-select="uploadBusinessLicence($file)"
accept="image/*">
<i class="fa fa-upload"></i> Upload Corporate ID Card Front
<i class="fa fa-upload"></i> Upload Business Licence
</button>
</div>
<uib-progressbar value="legalIDcardFrontProgress.value"
ng-if="legalIDcardFrontProgress"></uib-progressbar>
<div ng-if="legalIDcardFront">Url:{{legalIDcardFront}}</div>
<uib-progressbar value="businessLicenceProgress.value"
ng-if="businessLicenceProgress"></uib-progressbar>
<div ng-if="businessLicence">Url:{{businessLicence}}</div>
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-3" >* Corporate ID Card Back</label>
<!--<div class="form-group">-->
<!--<label class="control-label col-sm-3" >* Tax Level</label>-->
<!--<div class="col-sm-8">-->
<!--<div class="form-control-static">-->
<!--<button class="btn btn-success" type="button"-->
<!--ngf-select="uploadTaxLevel($file)"-->
<!--accept="image/*">-->
<!--<i class="fa fa-upload"></i> Upload Tax Level-->
<!--</button>-->
<!--</div>-->
<!--<uib-progressbar value="taxLevelProgress.value"-->
<!--ng-if="taxLevelProgress"></uib-progressbar>-->
<!--<div ng-if="taxLevel">Url:{{taxLevel}}</div>-->
<!--</div>-->
<!--</div>-->
<!--<div class="form-group">-->
<!--<label class="control-label col-sm-3" >* Bank Account Opening Permit</label>-->
<!--<div class="col-sm-8">-->
<!--<div class="form-control-static">-->
<!--<button class="btn btn-success" type="button"-->
<!--ngf-select="uploadBankAccountOpen($file)"-->
<!--accept="image/*">-->
<!--<i class="fa fa-upload"></i> Upload Bank Account Opening Permit-->
<!--</button>-->
<!--</div>-->
<!--<uib-progressbar value="bankAccountOpenProgress.value"-->
<!--ng-if="bankAccountOpenProgress"></uib-progressbar>-->
<!--<div ng-if="bankAccountOpen">Url:{{bankAccountOpen}}</div>-->
<!--</div>-->
<!--</div>-->
<!--<div class="form-group">-->
<!--<label class="control-label col-sm-3" >* Organization Code Proof</label>-->
<!--<div class="col-sm-8">-->
<!--<div class="form-control-static">-->
<!--<button class="btn btn-success" type="button"-->
<!--ngf-select="uploadOrgCode($file)"-->
<!--accept="image/*">-->
<!--<i class="fa fa-upload"></i> Upload Organization Code Proof-->
<!--</button>-->
<!--</div>-->
<!--<uib-progressbar value="orgCodeProgress.value"-->
<!--ng-if="orgCodeProgress"></uib-progressbar>-->
<!--<div ng-if="orgCode">Url:{{orgCode}}</div>-->
<!--</div>-->
<!--</div>-->
<!--<div class="form-group">-->
<!--<label class="control-label col-sm-3" >Non-standard Protocol File</label>-->
<!--<div class="col-sm-8">-->
<!--<div class="form-control-static">-->
<!--<button class="btn btn-success" type="button"-->
<!--ngf-select="uploadNonStanProtocol($file)"-->
<!--accept="image/*">-->
<!--<i class="fa fa-upload"></i> Upload Non-standard Protocol File-->
<!--</button>-->
<!--</div>-->
<!--<uib-progressbar value="nonStanProtocolProgress.value"-->
<!--ng-if="nonStanProtocolProgress"></uib-progressbar>-->
<!--<div ng-if="nonStanProtocol">Url:{{nonStanProtocol}}</div>-->
<!--</div>-->
<!--</div>-->
<!--<div class="form-group">-->
<!--<label class="control-label col-sm-3" >Other Zip File</label>-->
<!--<div class="col-sm-8">-->
<!--<div class="form-control-static">-->
<!--<button class="btn btn-success" type="button"-->
<!--ngf-select="uploadZipPath($file)"-->
<!--accept="image/*">-->
<!--<i class="fa fa-upload"></i> Upload Other Zip File-->
<!--</button>-->
<!--</div>-->
<!--<uib-progressbar value="zipPathProgress.value"-->
<!--ng-if="zipPathProgress"></uib-progressbar>-->
<!--<div ng-if="zipPath">Url:{{zipPath}}</div>-->
<!--</div>-->
<!--</div>-->
<div class="form-group"
ng-class="{'has-error':subForm.directorLastName.$invalid && subForm.directorLastName.$dirty}">
<label class="control-label col-sm-3" for="executiveLastName_input">* Director Last Name</label>
<div class="col-sm-8">
<div class="form-control-static">
<button class="btn btn-success" type="button"
ngf-select="uploadLegalIDcardBack($file)"
accept="image/*">
<i class="fa fa-upload"></i> Upload Corporate ID Card Back
</button>
<input class="form-control" ng-model="directors.directorLastName"
type="text" name="directorLastName" id="directorLastName_input" required maxlength="50">
<div ng-messages="subForm.directorLastName.$error" ng-if="subForm.directorLastName.$dirty">
<p class="small text-danger" ng-message="required">Required Field</p>
<p class="small text-danger" ng-message="maxlength">Length is more than 50</p>
</div>
<uib-progressbar value="legalIDcardBackProgress.value"
ng-if="legalIDcardBackProgress"></uib-progressbar>
<div ng-if="legalIDcardBack">Url:{{legalIDcardBack}}</div>
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-3" >* Business Licence</label>
<div class="form-group"
ng-class="{'has-error':subForm.directorFirstName.$invalid && subForm.directorFirstName.$dirty}">
<label class="control-label col-sm-3" for="directorFirstName_input">* Director Fist Name</label>
<div class="col-sm-8">
<div class="form-control-static">
<button class="btn btn-success" type="button"
ngf-select="uploadBusinessLicence($file)"
accept="image/*">
<i class="fa fa-upload"></i> Upload Business Licence
</button>
<input class="form-control" ng-model="directors.directorFirstName"
type="text" name="directorFirstName" id="directorFirstName_input" required maxlength="50">
<div ng-messages="subForm.directorFirstName.$error" ng-if="subForm.directorFirstName.$dirty">
<p class="small text-danger" ng-message="required">Required Field</p>
<p class="small text-danger" ng-message="maxlength">Length is more than 50</p>
</div>
<uib-progressbar value="businessLicenceProgress.value"
ng-if="businessLicenceProgress"></uib-progressbar>
<div ng-if="businessLicence">Url:{{businessLicence}}</div>
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-3" >* Tax Level</label>
<label class="control-label col-sm-3" >* Director Passport</label>
<div class="col-sm-8">
<div class="form-control-static">
<button class="btn btn-success" type="button"
ngf-select="uploadTaxLevel($file)"
ngf-select="uploadDirectorPassport($file)"
accept="image/*">
<i class="fa fa-upload"></i> Upload Tax Level
<i class="fa fa-upload"></i> Upload Director Passport
</button>
</div>
<uib-progressbar value="taxLevelProgress.value"
ng-if="taxLevelProgress"></uib-progressbar>
<div ng-if="taxLevel">Url:{{taxLevel}}</div>
<uib-progressbar value="directorPassportProgress.value"
ng-if="directorPassportProgress"></uib-progressbar>
<div ng-if="directorPassport">Url:{{directorPassport}}</div>
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-3" >* Bank Account Opening Permit</label>
<div class="form-group"
ng-class="{'has-error':subForm.directorPassPort.$invalid && subForm.directorPassPort.$dirty}">
<label class="control-label col-sm-3" for="executivePassPort_input">* Director Passport Number</label>
<div class="col-sm-8">
<div class="form-control-static">
<button class="btn btn-success" type="button"
ngf-select="uploadBankAccountOpen($file)"
accept="image/*">
<i class="fa fa-upload"></i> Upload Bank Account Opening Permit
</button>
<input class="form-control" ng-model="directors.directorPassPort"
type="text" name="directorPassPort" id="directorPassPort_input" required maxlength="50">
<div ng-messages="subForm.directorPassPort.$error" ng-if="subForm.directorPassPort.$dirty">
<p class="small text-danger" ng-message="required">Required Field</p>
<p class="small text-danger" ng-message="maxlength">Length is more than 50</p>
</div>
<uib-progressbar value="bankAccountOpenProgress.value"
ng-if="bankAccountOpenProgress"></uib-progressbar>
<div ng-if="bankAccountOpen">Url:{{bankAccountOpen}}</div>
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-3" >* Organization Code Proof</label>
<div class="form-group"
ng-class="{'has-error':subForm.executiveLastName.$invalid && subForm.executiveLastName.$dirty}">
<label class="control-label col-sm-3" for="executiveLastName_input">* Executive Last Name</label>
<div class="col-sm-8">
<div class="form-control-static">
<button class="btn btn-success" type="button"
ngf-select="uploadOrgCode($file)"
accept="image/*">
<i class="fa fa-upload"></i> Upload Organization Code Proof
</button>
<input class="form-control" ng-model="executives.executiveLastName"
type="text" name="executiveLastName" id="executiveLastName_input" required maxlength="50">
<div ng-messages="subForm.executiveLastName.$error" ng-if="subForm.executiveLastName.$dirty">
<p class="small text-danger" ng-message="required">Required Field</p>
<p class="small text-danger" ng-message="maxlength">Length is more than 50</p>
</div>
<uib-progressbar value="orgCodeProgress.value"
ng-if="orgCodeProgress"></uib-progressbar>
<div ng-if="orgCode">Url:{{orgCode}}</div>
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-3" >Non-standard Protocol File</label>
<div class="form-group"
ng-class="{'has-error':subForm.executiveFirstName.$invalid && subForm.executiveFirstName.$dirty}">
<label class="control-label col-sm-3" for="executiveFirstName_input">* Executive Fist Name</label>
<div class="col-sm-8">
<div class="form-control-static">
<button class="btn btn-success" type="button"
ngf-select="uploadNonStanProtocol($file)"
accept="image/*">
<i class="fa fa-upload"></i> Upload Non-standard Protocol File
</button>
<input class="form-control" ng-model="executives.executiveFirstName"
type="text" name="executiveFirstName" id="executiveFirstName_input" required maxlength="50">
<div ng-messages="subForm.executiveFirstName.$error" ng-if="subForm.executiveFirstName.$dirty">
<p class="small text-danger" ng-message="required">Required Field</p>
<p class="small text-danger" ng-message="maxlength">Length is more than 50</p>
</div>
</div>
</div>
<div class="form-group"
ng-class="{'has-error':subForm.industry.$invalid && subForm.industry.$dirty}">
<label class="control-label col-sm-3" for="industry">* Executive Level</label>
<div class="col-sm-8">
<select class="form-control" name="executiveLevel"
ng-model="executives.executiveLevel"
required
>
<option value="">Please Choose</option>
<option value="CEO">CEO</option>
<option value="CTO">CTO</option>
<option value="COO">COO</option>
<option value="CFO">CFO</option>
<option value="CCO">CCO</option>
</select>
<div ng-messages="subForm.executiveLevel.$error" ng-if="subForm.executiveLevel.$dirty">
<p class="small text-danger" ng-message="required">Required Field</p>
</div>
<uib-progressbar value="nonStanProtocolProgress.value"
ng-if="nonStanProtocolProgress"></uib-progressbar>
<div ng-if="nonStanProtocol">Url:{{nonStanProtocol}}</div>
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-3" >Other Zip File</label>
<label class="control-label col-sm-3" >* Executive Passport</label>
<div class="col-sm-8">
<div class="form-control-static">
<button class="btn btn-success" type="button"
ngf-select="uploadZipPath($file)"
ngf-select="uploadExecutivePassport($file)"
accept="image/*">
<i class="fa fa-upload"></i> Upload Other Zip File
<i class="fa fa-upload"></i> Upload Executive Passport
</button>
</div>
<uib-progressbar value="zipPathProgress.value"
ng-if="zipPathProgress"></uib-progressbar>
<div ng-if="zipPath">Url:{{zipPath}}</div>
<uib-progressbar value="executivePassportProgress.value"
ng-if="executivePassportProgress"></uib-progressbar>
<div ng-if="executivePassport">Url:{{executivePassport}}</div>
</div>
</div>
<div class="form-group"
ng-class="{'has-error':subForm.executivePassPort.$invalid && subForm.executivePassPort.$dirty}">
<label class="control-label col-sm-3" for="executivePassPort_input">* Executive Passport Number</label>
<div class="col-sm-8">
<input class="form-control" ng-model="executives.executivePassPort"
type="text" name="executivePassPort" id="executivePassPort_input" required maxlength="50">
<div ng-messages="subForm.executivePassPort.$error" ng-if="subForm.executivePassPort.$dirty">
<p class="small text-danger" ng-message="required">Required Field</p>
<p class="small text-danger" ng-message="maxlength">Length is more than 50</p>
</div>
</div>
</div>
</div>
</div>
</div>

@ -182,10 +182,10 @@
Apply Time
<span style="float: right" ng-bind="id_apply.create_time"></span>
</li>
<li class="list-group-item list-group-item-success">
Business Content
<span style="float:right;">{{id_apply.business_content | yeepayBusinessContent}}</span>
</li>
<!--<li class="list-group-item list-group-item-success">-->
<!--Business Content-->
<!--<span style="float:right;">{{id_apply.business_content | yeepayBusinessContent}}</span>-->
<!--</li>-->
<li class="list-group-item list-group-item-success">
Business Category
<span style="float: right">{{id_apply.industry | yeepayIndustry}}</span>

Loading…
Cancel
Save