master
james.zhao 6 years ago
parent 2f3502b49d
commit 3ac82ce0e3

@ -3402,6 +3402,22 @@ define(['angular', 'decimal', 'static/commons/commons', 'uiBootstrap', 'uiRouter
$scope.loadSubMerchantInfos();
})
};
$scope.updateYeepaySubMerchantId = function (sub_merchant_id) {
$uibModal.open({
templateUrl: '/static/payment/partner/templates/update_yeepay_sub_merchant_id.html',
controller: 'updateYeepaySubMerchantIdCtrl',
resolve: {
subMerchantInfo: function () {
return $scope.partner;
},
yeepaySubMerchantId: function () {
return sub_merchant_id;
}
}
}).result.then(function () {
$scope.loadSubMerchantInfos();
})
};
$scope.loadSubMerchantInfos();
}]);
app.controller('applyWxSubMerchantIdCtrl', ['$scope', '$http', '$uibModal', '$state', 'subMerchantInfo', '$filter', 'merchantIds', 'commonDialog', function ($scope, $http, $uibModal, $state, subMerchantInfo, $filter, merchantIds, commonDialog) {
@ -3807,6 +3823,315 @@ define(['angular', 'decimal', 'static/commons/commons', 'uiBootstrap', 'uiRouter
}
}]);
app.controller('updateYeepaySubMerchantIdCtrl', ['$scope', '$http', '$uibModal', '$state','subMerchantInfo','yeepayIndustryMap','yeepayBusinessContentMap','$filter', 'commonDialog','Upload', function ($scope, $http, $uibModal, $state,subMerchantInfo,yeepayIndustryMap,yeepayBusinessContentMap,$filter, commonDialog,Upload) {
$scope.yeepay_industries = yeepayIndustryMap.configs();
$scope.yeepay_business_contents = yeepayBusinessContentMap.configs();
$scope.subMerchantInfo = angular.copy(subMerchantInfo);
var vouchers={};
$scope.directors={};
$scope.executives={};
$scope.industry = '';
$scope.business_content = '';
var merchantInfo = {};
var merchantId = '';
$scope.uploadLegalIDcardFront = function (file) {
if (file != null) {
if (file.size > 3 * 1024 * 1024) {
commonDialog.alert({title: 'Error', content: '文件大小不能超过3MB请压缩后重试', type: 'error'})
} else {
$scope.legalIDcardFrontProgress = {value: 0};
Upload.upload({
url: '/attachment/yeepayFiles',
data: {file: file}
}).then(function (resp) {
delete $scope.legalIDcardFrontProgress;
$scope.legalIDcardFront = resp.data.path;
vouchers['legalIDcardFront'] = resp.data.path;
merchantId = resp.data.merchantId;
commonDialog.alert({title: 'Upload Success', content: 'Upload Success', type: 'success'})
}, function (resp) {
delete $scope.legalIDcardFrontProgress;
commonDialog.alert({title: 'Upload Failed', content: resp.data.message, type: 'error'})
}, function (evt) {
$scope.legalIDcardFrontProgress.value = parseInt(100 * evt.loaded / evt.total);
})
}
}
};
$scope.uploadLegalIDcardBack = function (file) {
if (file != null) {
if (file.size > 3 * 1024 * 1024) {
commonDialog.alert({title: 'Error', content: '文件大小不能超过3MB请压缩后重试', type: 'error'})
} else {
$scope.legalIDcardBackProgress = {value: 0};
Upload.upload({
url: '/attachment/yeepayFiles',
data: {file: file}
}).then(function (resp) {
delete $scope.legalIDcardBackProgress;
$scope.legalIDcardBack = resp.data.path;
vouchers['legalIDcardBack'] = resp.data.path;
merchantId = resp.data.merchantId;
commonDialog.alert({title: 'Upload Success', content: 'Upload Success', type: 'success'})
}, function (resp) {
delete $scope.legalIDcardBackProgress;
commonDialog.alert({title: 'Upload Failed', content: resp.data.message, type: 'error'})
}, function (evt) {
$scope.legalIDcardBackProgress.value = parseInt(100 * evt.loaded / evt.total);
})
}
}
};
$scope.uploadBusinessLicence = function (file) {
if (file != null) {
if (file.size > 3 * 1024 * 1024) {
commonDialog.alert({title: 'Error', content: '文件大小不能超过3MB请压缩后重试', type: 'error'})
} else {
$scope.businessLicenceProgress = {value: 0};
Upload.upload({
url: '/attachment/yeepayFiles',
data: {file: file}
}).then(function (resp) {
delete $scope.businessLicenceProgress;
$scope.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) {
delete $scope.businessLicenceProgress;
commonDialog.alert({title: 'Upload Failed', content: resp.data.message, type: 'error'})
}, function (evt) {
$scope.businessLicenceProgress.value = parseInt(100 * evt.loaded / evt.total);
})
}
}
};
$scope.uploadTaxLevel = function (file) {
if (file != null) {
if (file.size > 3 * 1024 * 1024) {
commonDialog.alert({title: 'Error', content: '文件大小不能超过3MB请压缩后重试', type: 'error'})
} else {
$scope.taxLevelProgress = {value: 0};
Upload.upload({
url: '/attachment/yeepayFiles',
data: {file: file}
}).then(function (resp) {
delete $scope.taxLevelProgress;
$scope.taxLevel = resp.data.path;
vouchers['taxLevel'] = resp.data.path;
merchantId = resp.data.merchantId;
commonDialog.alert({title: 'Upload Success', content: 'Upload Success', type: 'success'})
}, function (resp) {
delete $scope.taxLevelProgress;
commonDialog.alert({title: 'Upload Failed', content: resp.data.message, type: 'error'})
}, function (evt) {
$scope.taxLevelProgress.value = parseInt(100 * evt.loaded / evt.total);
})
}
}
};
$scope.uploadBankAccountOpen = function (file) {
if (file != null) {
if (file.size > 3 * 1024 * 1024) {
commonDialog.alert({title: 'Error', content: '文件大小不能超过3MB请压缩后重试', type: 'error'})
} else {
$scope.bankAccountOpenProgress = {value: 0};
Upload.upload({
url: '/attachment/yeepayFiles',
data: {file: file}
}).then(function (resp) {
delete $scope.bankAccountOpenProgress;
$scope.bankAccountOpen = resp.data.path;
vouchers['bankAccountOpen'] = resp.data.path;
merchantId = resp.data.merchantId;
commonDialog.alert({title: 'Upload Success', content: 'Upload Success', type: 'success'})
}, function (resp) {
delete $scope.bankAccountOpenProgress;
commonDialog.alert({title: 'Upload Failed', content: resp.data.message, type: 'error'})
}, function (evt) {
$scope.bankAccountOpenProgress.value = parseInt(100 * evt.loaded / evt.total);
})
}
}
};
$scope.uploadOrgCode = function (file) {
if (file != null) {
if (file.size > 3 * 1024 * 1024) {
commonDialog.alert({title: 'Error', content: '文件大小不能超过3MB请压缩后重试', type: 'error'})
} else {
$scope.orgCodeProgress = {value: 0};
Upload.upload({
url: '/attachment/yeepayFiles',
data: {file: file}
}).then(function (resp) {
delete $scope.orgCodeProgress;
$scope.orgCode = resp.data.path;
vouchers['orgCode'] = resp.data.path;
merchantId = resp.data.merchantId;
commonDialog.alert({title: 'Upload Success', content: 'Upload Success', type: 'success'})
}, function (resp) {
delete $scope.orgCodeProgress;
commonDialog.alert({title: 'Upload Failed', content: resp.data.message, type: 'error'})
}, function (evt) {
$scope.orgCodeProgress.value = parseInt(100 * evt.loaded / evt.total);
})
}
}
};
$scope.uploadNonStanProtocol = function (file) {
if (file != null) {
if (file.size > 3 * 1024 * 1024) {
commonDialog.alert({title: 'Error', content: '文件大小不能超过3MB请压缩后重试', type: 'error'})
} else {
$scope.nonStanProtocolProgress = {value: 0};
Upload.upload({
url: '/attachment/yeepayFiles',
data: {file: file}
}).then(function (resp) {
delete $scope.nonStanProtocolProgress;
$scope.nonStanProtocol = resp.data.path;
vouchers['nonStanProtocol'] = resp.data.path;
merchantId = resp.data.merchantId;
commonDialog.alert({title: 'Upload Success', content: 'Upload Success', type: 'success'})
}, function (resp) {
delete $scope.nonStanProtocolProgress;
commonDialog.alert({title: 'Upload Failed', content: resp.data.message, type: 'error'})
}, function (evt) {
$scope.nonStanProtocolProgress.value = parseInt(100 * evt.loaded / evt.total);
})
}
}
};
$scope.uploadZipPath = function (file) {
if (file != null) {
if (file.size > 3 * 1024 * 1024) {
commonDialog.alert({title: 'Error', content: '文件大小不能超过3MB请压缩后重试', type: 'error'})
} else {
$scope.zipPathProgress = {value: 0};
Upload.upload({
url: '/attachment/yeepayFiles',
data: {file: file}
}).then(function (resp) {
delete $scope.zipPathProgress;
$scope.zipPath = resp.data.path;
vouchers['zipPath'] = resp.data.path;
merchantId = resp.data.merchantId;
commonDialog.alert({title: 'Upload Success', content: 'Upload Success', type: 'success'})
}, function (resp) {
delete $scope.zipPathProgress;
commonDialog.alert({title: 'Upload Failed', content: resp.data.message, type: 'error'})
}, function (evt) {
$scope.zipPathProgress.value = parseInt(100 * evt.loaded / evt.total);
})
}
}
};
$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) {
$scope.errmsg = null;
if (form.$invalid) {
angular.forEach(form, function (item, key) {
if (key.indexOf('$') < 0) {
item.$dirty = true;
}
});
return;
}
// 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['business_content'] = $scope.business_content;
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;
$scope.$close();
if (subMerchantInfo.yeepay_sub_merchant_id != null) {
commonDialog.alert({
title: 'Success',
content: 'Modify Yeepay Sub Merchant ID successfully',
type: 'success'
});
$state.reload();
}
}, function (resp) {
commonDialog.alert({
title: 'Error',
content: resp.data.message,
type: 'error'
});
})
}
}]);
app.controller('permissionClientCtrl', ['$scope', '$http', '$uibModal', '$state', '$filter', 'commonDialog', function ($scope, $http, $uibModal, $state, $filter, commonDialog) {
$scope.clientPermission = {client_moniker:$scope.partner.client_moniker};
$scope.loadPermissionList = function () {

@ -201,6 +201,10 @@
ng-click="useYeepaySubMerchantId(id_apply.sub_merchant_id)">
USE
</button>
<!--<button role="button" class="btn btn-info" title="use"-->
<!--ng-click="updateYeepaySubMerchantId(id_apply.sub_merchant_id)">-->
<!--UPDATE-->
<!--</button>-->
</div>
</div>
</div>

@ -0,0 +1,310 @@
<div class="content">
<form novalidate name="subForm">
<div class="row">
<div class="col-sm-12">
<div class="panel panel-default">
<div class="panel-heading">Update 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="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.industry.$invalid && subForm.industry.$dirty}">
<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="industry"
id="industry" required
ng-options="industry.value as industry.label for industry in yeepay_industries">
<option value="">Please Choose</option>
</select>
<div ng-messages="subForm.industry.$error" ng-if="subForm.industry.$dirty">
<p class="small text-danger" ng-message="required">Required Field</p>
</div>
</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" >* Business Licence</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>
</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>-->
<!--<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">
<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>
</div>
</div>
<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">
<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>
</div>
</div>
<div class="form-group">
<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="uploadDirectorPassport($file)"
accept="image/*">
<i class="fa fa-upload"></i> Upload Director Passport
</button>
</div>
<uib-progressbar value="directorPassportProgress.value"
ng-if="directorPassportProgress"></uib-progressbar>
<div ng-if="directorPassport">Url:{{directorPassport}}</div>
</div>
</div>
<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">
<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>
</div>
</div>
<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">
<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>
</div>
</div>
<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">
<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>
</div>
</div>
<div class="form-group">
<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="uploadExecutivePassport($file)"
accept="image/*">
<i class="fa fa-upload"></i> Upload Executive Passport
</button>
</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>
<div class="btn-group margin-bottom margin-top">
<button class="btn btn-success" type="button"
ng-click="saveYeepayApply(subForm)">Submit
</button>
</div>
</div>
</div>
</form>
</div>
Loading…
Cancel
Save