Merge branch 'develop'

master
yixian 4 years ago
commit a407c2244e

@ -85,6 +85,8 @@ public class NewSubMerchantIdApply {
@JSONField(name = "business_type") @JSONField(name = "business_type")
private String business_type; private String business_type;
private String sub_mch_id;
public JSONObject insertObject(JSONObject client) { public JSONObject insertObject(JSONObject client) {
JSONObject params = new JSONObject(); JSONObject params = new JSONObject();
if(StringUtils.isNotEmpty(merchant_name)){ if(StringUtils.isNotEmpty(merchant_name)){
@ -139,6 +141,10 @@ public class NewSubMerchantIdApply {
params.put("merchant_country_code","036");//固定值036-澳大利亚国家编码 params.put("merchant_country_code","036");//固定值036-澳大利亚国家编码
params.put("merchant_remark",client.getString("client_moniker")); params.put("merchant_remark",client.getString("client_moniker"));
if(StringUtils.isNotEmpty(sub_mch_id)) {
params.put("sub_mch_id", sub_mch_id);
}
return params; return params;
} }
@ -163,6 +169,7 @@ public class NewSubMerchantIdApply {
put("principal_name",subMerchantApplyInfo.getString("principal_name")); put("principal_name",subMerchantApplyInfo.getString("principal_name"));
put("principal_id_number",subMerchantApplyInfo.getString("principal_id_number")); put("principal_id_number",subMerchantApplyInfo.getString("principal_id_number"));
put("business_type",subMerchantApplyInfo.getString("business_type")); put("business_type",subMerchantApplyInfo.getString("business_type"));
put("sub_merchant_id",subMerchantApplyInfo.getString("sub_merchant_id"));
}}; }};
} }
@ -320,4 +327,12 @@ public class NewSubMerchantIdApply {
public void setBusiness_type(String business_type) { public void setBusiness_type(String business_type) {
this.business_type = business_type; this.business_type = business_type;
} }
public String getSub_mch_id() {
return sub_mch_id;
}
public void setSub_mch_id(String sub_mch_id) {
this.sub_mch_id = sub_mch_id;
}
} }

@ -110,6 +110,7 @@ import org.apache.commons.lang3.RandomStringUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.time.DateFormatUtils; import org.apache.commons.lang3.time.DateFormatUtils;
import org.apache.commons.lang3.time.DateUtils; import org.apache.commons.lang3.time.DateUtils;
import org.apache.http.util.TextUtils;
import org.apache.poi.hssf.usermodel.*; import org.apache.poi.hssf.usermodel.*;
import org.apache.poi.hssf.util.HSSFColor; import org.apache.poi.hssf.util.HSSFColor;
import org.apache.poi.ss.usermodel.CellStyle; import org.apache.poi.ss.usermodel.CellStyle;
@ -880,7 +881,7 @@ public class ClientManagerImpl implements ClientManager, ManagerTodoNoticeProvid
private void saveWechatMcc(JSONObject partner){ private void saveWechatMcc(JSONObject partner){
JSONObject wxGoodMcc = paymentChannelMccGoodMapper.findWechatPayMccByClientId(partner.getIntValue("client_id")); JSONObject wxGoodMcc = paymentChannelMccGoodMapper.findWechatPayMccByClientId(partner.getIntValue("client_id"));
if (wxGoodMcc == null || wxGoodMcc.isEmpty()) { if ((wxGoodMcc == null || wxGoodMcc.isEmpty())&& !TextUtils.isEmpty(partner.getString("mc_code"))) {
wxGoodMcc = new JSONObject(); wxGoodMcc = new JSONObject();
wxGoodMcc.put("client_id",partner.getIntValue("client_id")); wxGoodMcc.put("client_id",partner.getIntValue("client_id"));
wxGoodMcc.put("mc_code",partner.getString("mc_code")); wxGoodMcc.put("mc_code",partner.getString("mc_code"));
@ -890,8 +891,10 @@ public class ClientManagerImpl implements ClientManager, ManagerTodoNoticeProvid
paymentChannelMccGoodMapper.save(wxGoodMcc); paymentChannelMccGoodMapper.save(wxGoodMcc);
return; return;
} }
wxGoodMcc.put("mc_code",partner.getString("mc_code")); if(!TextUtils.isEmpty(partner.getString("mc_code"))) {
paymentChannelMccGoodMapper.update(wxGoodMcc); wxGoodMcc.put("mc_code", partner.getString("mc_code"));
paymentChannelMccGoodMapper.update(wxGoodMcc);
}
} }
@ -5751,7 +5754,6 @@ public class ClientManagerImpl implements ClientManager, ManagerTodoNoticeProvid
params.put("operator", manager.getString("display_name")); params.put("operator", manager.getString("display_name"));
sysWxMerchantApplyMapper.updateSubMerchantInfoByMerchantAppId(params);
Element elem = wxPayClient.modfiySubMerchant(subMerchantIdApply.getMerchant_id(), subMerchantInfo); Element elem = wxPayClient.modfiySubMerchant(subMerchantIdApply.getMerchant_id(), subMerchantInfo);
String sub_merchant_id = elem.elementText("sub_mch_id"); String sub_merchant_id = elem.elementText("sub_mch_id");

@ -249,15 +249,17 @@ define(['angular', '../../analysis/bd/analysis-bd'], function (angular) {
}; };
$scope.getBDLevels(); $scope.getBDLevels();
$scope.chooseLastConfig = function (mon) { $scope.chooseLastConfig = function (mon) {
var index = $scope.months.indexOf(mon); let year = new Date(mon).getFullYear();
let month = new Date(mon).getMonth();
if(index == 0){ if(index == 0){
var year = new Date().getFullYear();
year--; year--;
mon = year + '-12'; month = year + '-12';
}else if(month <= 9){
month = year + '-0' + month;
}else { }else {
mon = $scope.months[index-1]; month = year + '-' + month;
} }
$http.get('/sys/bd_prize/commission/le_ma/' + mon).then(function (resp) { $http.get('/sys/bd_prize/commission/le_ma/' + month).then(function (resp) {
$scope.bdlm = []; $scope.bdlm = [];
angular.forEach(resp.data,function (e) { angular.forEach(resp.data,function (e) {
var bdC = {}; var bdC = {};

@ -246,11 +246,11 @@ define(['angular', 'decimal', 'static/commons/commons', 'uiBootstrap', 'uiRouter
}); });
return; return;
} }
if (!$scope.partner.business_structure||$scope.partner.business_structure == '') { if ($scope.partner.enable_cross_payment&&(!$scope.partner.business_structure||$scope.partner.business_structure == '')) {
alert('Please select the business structure'); alert('Please select the business structure');
return; return;
} }
if ($scope.partner.business_structure!='Registered body(Sole Trader)') { if ($scope.partner.business_structure&&$scope.partner.business_structure!='Registered body(Sole Trader)') {
if ($scope.partner.certificat_expire_date_d) { if ($scope.partner.certificat_expire_date_d) {
$scope.partner.certificat_expire_date = $filter('dateConversionStr')($scope.partner.certificat_expire_date_d) $scope.partner.certificat_expire_date = $filter('dateConversionStr')($scope.partner.certificat_expire_date_d)
} else if ($scope.partner.certificat_expire_date_premanent) { } else if ($scope.partner.certificat_expire_date_premanent) {
@ -728,7 +728,7 @@ define(['angular', 'decimal', 'static/commons/commons', 'uiBootstrap', 'uiRouter
alert('Please select the business structure'); alert('Please select the business structure');
return; return;
} }
if ($scope.partner.business_structure!='Registered body(Sole Trader)') { if ($scope.partner.business_structure&&$scope.partner.business_structure!='Registered body(Sole Trader)') {
if ($scope.partner.certificat_expire_date_d) { if ($scope.partner.certificat_expire_date_d) {
$scope.partner.certificat_expire_date = $filter('dateConversionStr')($scope.partner.certificat_expire_date_d) $scope.partner.certificat_expire_date = $filter('dateConversionStr')($scope.partner.certificat_expire_date_d)
} else if ($scope.partner.certificat_expire_date_premanent) { } else if ($scope.partner.certificat_expire_date_premanent) {

@ -5689,23 +5689,23 @@ define(['angular', 'decimal', 'static/commons/commons', 'uiBootstrap', 'uiRouter
// $scope.hideMerchantInfo = function () { // $scope.hideMerchantInfo = function () {
// $scope.showMoreMerchantInfo = !$scope.showMoreMerchantInfo; // $scope.showMoreMerchantInfo = !$scope.showMoreMerchantInfo;
// }; // };
// $scope.updateSubMerchantId = function (merchant_app_id) { $scope.updateSubMerchantId = function (merchant_app_id) {
// $uibModal.open({ $uibModal.open({
// templateUrl: '/static/payment/partner/templates/update_apply_wx_sub_merchant_id.html', templateUrl: '/static/payment/partner/templates/update_apply_wx_sub_merchant_id.html',
// controller: 'updateApplyWxSubMerchantIdCtrl', controller: 'updateApplyWxSubMerchantIdCtrl',
// resolve: { resolve: {
// merchantInfo: $scope.partner, merchantInfo: $scope.partner,
// merchantIds: ['$http', '$stateParams', function ($http) { merchantIds: ['$http', '$stateParams', function ($http) {
// return $http.get('/sys/partners/' + $scope.partner.client_moniker + '/get_merchant_ids'); return $http.get('/sys/partners/' + $scope.partner.client_moniker + '/get_merchant_ids');
// }], }],
// subMerchantInfo: ['$http', '$stateParams', function ($http) { subMerchantInfo: ['$http', '$stateParams', function ($http) {
// return $http.get('/sys/partners/' + $scope.partner.client_moniker + '/get_merchant_ids/' + merchant_app_id); return $http.get('/sys/partners/' + $scope.partner.client_moniker + '/get_merchant_ids/' + merchant_app_id);
// }] }]
// } }
// }).result.then(function () { }).result.then(function () {
// $scope.loadSubMerchantInfos(); $scope.loadSubMerchantInfos();
// }) })
// } }
// $scope.useRpaySubMerchantId = function (sub_merchant_id) { // $scope.useRpaySubMerchantId = function (sub_merchant_id) {
// $http.put('/sys/partners/' + $scope.partner.client_moniker + '/rpay_payment_config', { rpay_enterprise_id: sub_merchant_id }).then(function (resp) { // $http.put('/sys/partners/' + $scope.partner.client_moniker + '/rpay_payment_config', { rpay_enterprise_id: sub_merchant_id }).then(function (resp) {
// commonDialog.alert({ // commonDialog.alert({
@ -6037,21 +6037,50 @@ define(['angular', 'decimal', 'static/commons/commons', 'uiBootstrap', 'uiRouter
$scope.merchantInfo = angular.copy(merchantInfo); $scope.merchantInfo = angular.copy(merchantInfo);
$scope.wechatMccIndustries = wechatGoodMcc.configs(); $scope.wechatMccIndustries = wechatGoodMcc.configs();
$scope.merchantIds = merchantIds.data; $scope.merchantIds = merchantIds.data;
$scope.businessTypesMap = businessTypesMap.configs(); $scope.businessTypesMap=businessTypesMap.configs();
if ($scope.subMerchantInfo.business_structure) { if($scope.subMerchantInfo.extra_merchant_type ){
$scope.subMerchantInfo.merchant_type = $scope.subMerchantInfo.business_structure != 'Registered body(Sole Trader)' ? "ENTERPRISE" : "INDIVIDUAL"; $scope.subMerchantInfo.merchant_type=$scope.subMerchantInfo.extra_merchant_type;
} }
if ($scope.subMerchantInfo.industry) { if($scope.subMerchantInfo.industry) {
$scope.subMerchantInfo.industry = $filter('newWxMerchantsFilter')($scope.subMerchantInfo.industry); $scope.subMerchantInfo.industry = $filter('newWxMerchantsFilter')($scope.subMerchantInfo.industry);
} }
if ($scope.subMerchantInfo.mcc_code) { if($scope.subMerchantInfo.mcc_code ){
$scope.subMerchantInfo.mcc_code = parseInt($scope.subMerchantInfo.mcc_code); $scope.subMerchantInfo.mcc_code=parseInt($scope.subMerchantInfo.mcc_code);
} }
if ($scope.subMerchantInfo.certificat_expire_date) { // if($scope.subMerchantInfo.certificat_expire_date) {
// var datestr = subMerchantInfo.certificat_expire_date.replace(/-/g, '/'); // // var datestr = subMerchantInfo.certificat_expire_date.replace(/-/g, '/');
$scope.subMerchantInfo.certificat_expire_date = new Date($scope.subMerchantInfo.certificat_expire_date); // $scope.subMerchantInfo.certificat_expire_date=new Date($scope.subMerchantInfo.certificat_expire_date);
// }
if($scope.subMerchantInfo.certificat_expire_date) {
if( $scope.subMerchantInfo.certificat_expire_date=="PERMANENT"){
$scope.subMerchantInfo.certificat_expire_date_premanent=true;
}else if( $scope.subMerchantInfo.certificat_expire_date=="N/A"){
$scope.subMerchantInfo.certificat_expire_date_NA=true;
}else {
var datestr = $scope.subMerchantInfo.certificat_expire_date.replace(/-/g, '/');
$scope.subMerchantInfo.certificat_expire_date_d = new Date(datestr);
}
}
$scope.checkExpriedate=function (value) {
if(value){
$scope.subMerchantInfo.certificat_expire_date_premanent=false;
$scope.subMerchantInfo.certificat_expire_date_NA=false;
}
}
$scope.checkExpriedateOther=function (value) {
if(value=='PERMANENT'){
if($scope.subMerchantInfo.certificat_expire_date_premanent){
$scope.subMerchantInfo.certificat_expire_date_NA=false;
$scope.subMerchantInfo.certificat_expire_date_d=null;
}
}else if(value=='N/A'){
if($scope.subMerchantInfo.certificat_expire_date_NA){
$scope.subMerchantInfo.certificat_expire_date_premanent=false;
$scope.subMerchantInfo.certificat_expire_date_d=null;
}
}
} }
$scope.updateApply = function (form) { $scope.updateApply = function (form) {
$scope.errmsg = null; $scope.errmsg = null;
@ -6064,44 +6093,61 @@ define(['angular', 'decimal', 'static/commons/commons', 'uiBootstrap', 'uiRouter
return; return;
} }
var params = { var params = {
company_name: $scope.subMerchantInfo.company_name, company_name : $scope.subMerchantInfo.company_name,
merchant_id: $scope.subMerchantInfo.merchant_id, merchant_id : $scope.subMerchantInfo.merchant_id,
short_name: $scope.subMerchantInfo.short_name, short_name : $scope.subMerchantInfo.short_name,
office_phone: $scope.subMerchantInfo.office_phone, office_phone : $scope.subMerchantInfo.office_phone,
contact_person: $scope.subMerchantInfo.contact_person, contact_person : $scope.subMerchantInfo.contact_person,
contact_phone: $scope.subMerchantInfo.contact_phone, contact_phone : $scope.subMerchantInfo.contact_phone,
company_phone: $scope.subMerchantInfo.company_phone, company_phone : $scope.subMerchantInfo.company_phone,
contact_email: $scope.subMerchantInfo.contact_email, contact_email : $scope.subMerchantInfo.contact_email,
industry: $scope.subMerchantInfo.industry, industry : $scope.subMerchantInfo.industry,
company_website: $scope.subMerchantInfo.company_website, company_website : $scope.subMerchantInfo.company_website,
merchant_type: $scope.subMerchantInfo.merchant_type, merchant_type: $scope.subMerchantInfo.merchant_type,
mcc_code: $scope.subMerchantInfo.mcc_code, mcc_code : $scope.subMerchantInfo.mcc_code,
address: $scope.subMerchantInfo.address, address: $scope.subMerchantInfo.address,
business_type: $scope.subMerchantInfo.business_type business_type:$scope.subMerchantInfo.business_type,
sub_mch_id:$scope.subMerchantInfo.sub_merchant_id,
}; };
if (params.business_type == 'ONLINE') { if(params.business_type=='ONLINE'){
params.address = null; params.address=null;
} }
else if (params.business_type == 'OFFLINE') { else if(params.business_type=='OFFLINE'){
params.company_website = null; params.company_website=null;
} }
if ($scope.subMerchantInfo.merchant_type == 'ENTERPRISE') { // if($scope.subMerchantInfo.merchant_type == 'ENTERPRISE'){
params.director_name = $scope.subMerchantInfo.director_name; // params.director_name = $scope.subMerchantInfo.director_name;
params.director_id_number = $scope.subMerchantInfo.director_id_number; // params.director_id_number = $scope.subMerchantInfo.director_id_number;
// params.company_register_no = $scope.subMerchantInfo.company_register_no;
// params.certificat_expire_date = $scope.subMerchantInfo.certificat_expire_date;
// if($scope.subMerchantInfo.certificat_expire_date) {
// params.certificat_expire_date = $filter('dateConversionStr')($scope.subMerchantInfo.certificat_expire_date)
// }
// }else{
// params.principal_name = $scope.subMerchantInfo.principal_name;
// params.principal_id_number = $scope.subMerchantInfo.principal_id_number;
// }
if(params.merchant_type == 'ENTERPRISE'){
params.company_register_no = $scope.subMerchantInfo.company_register_no; params.company_register_no = $scope.subMerchantInfo.company_register_no;
params.certificat_expire_date = $scope.subMerchantInfo.certificat_expire_date; params.certificat_expire_date = $scope.subMerchantInfo.certificat_expire_date;
if ($scope.subMerchantInfo.certificat_expire_date) { if($scope.subMerchantInfo.certificat_expire_date_d) {
params.certificat_expire_date = $filter('dateConversionStr')($scope.subMerchantInfo.certificat_expire_date) params.certificat_expire_date = $filter('dateConversionStr')($scope.subMerchantInfo.certificat_expire_date_d)
}else if($scope.subMerchantInfo.certificat_expire_date_premanent){
params.certificat_expire_date="PERMANENT";
}
else if($scope.subMerchantInfo.certificat_expire_date_NA){
params.certificat_expire_date="N/A";
}else{
alert("Certificate expiration time is required");
return;
} }
} else {
params.principal_name = $scope.subMerchantInfo.principal_name;
params.principal_id_number = $scope.subMerchantInfo.principal_id_number;
} }
$http.put('/sys/partners/' + $scope.merchantInfo.client_moniker + '/get_merchant_ids/'+$scope.subMerchantInfo.merchant_app_id, params).then(function (resp) {
$http.put('/sys/partners/' + $scope.merchantInfo.client_moniker + '/get_merchant_ids/' + $scope.subMerchantInfo.merchant_app_id, params).then(function (resp) {
$scope.apply_sub_merchant_id = resp.data; $scope.apply_sub_merchant_id = resp.data;
$scope.$close(); $scope.$close();
commonDialog.confirm({ title: 'Confirm', content: '微信商户进件已修改成功!' }) commonDialog.confirm({title: 'Confirm', content: 'Successfully modified'})
}, function (resp) {
commonDialog.alert({title: 'Error', content: resp.data.message, type: 'error'})
}); });
} }
}]); }]);

@ -40,7 +40,7 @@
<div class="form-group" <div class="form-group"
ng-class="{'has-error':subForm.merchant_storename.$invalid && subForm.merchant_storename.$dirty}"> ng-class="{'has-error':subForm.merchant_storename.$invalid && subForm.merchant_storename.$dirty}">
<label class="control-label col-sm-3" for="merchant_storename_input">* Merchant Store Name</label> <label class="control-label col-sm-3" for="merchant_storename_input">* Merchant Short Name</label>
<div class="col-sm-8"> <div class="col-sm-8">
<input class="form-control" ng-model="subMerchantInfo.short_name" <input class="form-control" ng-model="subMerchantInfo.short_name"
type="text" name="merchant_storename" id="merchant_storename_input" required maxlength="50"> type="text" name="merchant_storename" id="merchant_storename_input" required maxlength="50">

@ -93,9 +93,9 @@
ng-click="queryWechatSubMerchantIdStatus()"> ng-click="queryWechatSubMerchantIdStatus()">
<i class="fa fa-search"></i> Result <i class="fa fa-search"></i> Result
</button> </button>
<button role="button" class="btn btn-info" title="modify Sub Merchant Id" disabled> <!--<button role="button" class="btn btn-info" title="modify Sub Merchant Id" disabled>-->
Modify <!--Modify-->
</button> <!--</button>-->
</div> </div>
</div> </div>
</div> </div>
@ -135,9 +135,11 @@
class="text-red">(当前使用)</small> class="text-red">(当前使用)</small>
</b> </b>
<span> <span>
<a role="button" ng-click="useSubMerchantId(id_apply.sub_merchant_id)">use</a> <a role="button" ng-click="useSubMerchantId(id_apply.sub_merchant_id)">Use</a>
<a role="button" style="margin-left: 10px;"
ng-click="checkDetail(id_apply,'Wechat')">Detail</a>
<a role="button" style="margin-left: 10px;" <a role="button" style="margin-left: 10px;"
ng-click="checkDetail(id_apply,'Wechat')">detail</a> ng-click="updateSubMerchantId(id_apply.merchant_app_id)">Modify</a>
</span> </span>
</li> </li>
</ul> </ul>

@ -10,7 +10,7 @@
ng-class="{'has-error':subForm.merchant_name.$invalid && subForm.merchant_name.$dirty}"> ng-class="{'has-error':subForm.merchant_name.$invalid && subForm.merchant_name.$dirty}">
<label class="control-label col-sm-3" for="merchant_name_input">* Merchant Name</label> <label class="control-label col-sm-3" for="merchant_name_input">* Merchant Name</label>
<div class="col-sm-8"> <div class="col-sm-8">
<input class="form-control" ng-model="subMerchantInfo.company_name" <input class="form-control" ng-model="subMerchantInfo.company_name" disabled="disabled"
type="text" name="merchant_name" id="merchant_name_input" required maxlength="50"> type="text" name="merchant_name" id="merchant_name_input" required maxlength="50">
<div ng-messages="subForm.merchant_name.$error" ng-if="subForm.merchant_name.$dirty"> <div ng-messages="subForm.merchant_name.$error" ng-if="subForm.merchant_name.$dirty">
<p class="small text-danger" ng-message="required">Required Field</p> <p class="small text-danger" ng-message="required">Required Field</p>
@ -26,7 +26,7 @@
<select class="form-control" name="merchant_id" <select class="form-control" name="merchant_id"
ng-model="subMerchantInfo.merchant_id" ng-model="subMerchantInfo.merchant_id"
id="merchant_id_input" required id="merchant_id_input" required
ng-options="merchant_id.merchant_id as merchant_id.merchant_id for merchant_id in merchantIds"> ng-options="merchant_id.merchant_id as merchant_id.merchant_id for merchant_id in merchantIds" disabled>
<option value="">Please Choose</option> <option value="">Please Choose</option>
</select> </select>
<div ng-messages="subForm.merchant_id.$error" ng-if="subForm.merchant_id.$dirty"> <div ng-messages="subForm.merchant_id.$error" ng-if="subForm.merchant_id.$dirty">
@ -40,13 +40,13 @@
<div class="form-group" <div class="form-group"
ng-class="{'has-error':subForm.merchant_storename.$invalid && subForm.merchant_storename.$dirty}"> ng-class="{'has-error':subForm.merchant_storename.$invalid && subForm.merchant_storename.$dirty}">
<label class="control-label col-sm-3" for="merchant_storename_input">* Merchant Store Name</label> <label class="control-label col-sm-3" for="merchant_storename_input">* Merchant Short Name</label>
<div class="col-sm-8"> <div class="col-sm-8">
<input class="form-control" ng-model="subMerchantInfo.short_name" <input class="form-control" ng-model="subMerchantInfo.short_name"
type="text" name="merchant_storename" id="merchant_storename_input" required maxlength="50"> type="text" name="merchant_storename" id="merchant_storename_input" required maxlength="20">
<div ng-messages="subForm.merchant_storename.$error" ng-if="subForm.merchant_storename.$dirty"> <div ng-messages="subForm.merchant_storename.$error" ng-if="subForm.merchant_storename.$dirty">
<p class="small text-danger" ng-message="required">Required Field</p> <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> <p class="small text-danger" ng-message="maxlength">Length is more than 20</p>
</div> </div>
</div> </div>
</div> </div>
@ -95,6 +95,7 @@
<div class="col-sm-8"> <div class="col-sm-8">
<input class="form-control" ng-model="subMerchantInfo.company_website" <input class="form-control" ng-model="subMerchantInfo.company_website"
type="url" name="website" id="website_input" required maxlength="128"> type="url" name="website" id="website_input" required maxlength="128">
<p class="small " >(Not required when business type is Offline scenario)</p>
<div ng-messages="subForm.company_website.$error" ng-if="subForm.company_website.$dirty"> <div ng-messages="subForm.company_website.$error" ng-if="subForm.company_website.$dirty">
<p class="small text-danger" ng-message="required">Required Field</p> <p class="small text-danger" ng-message="required">Required Field</p>
</div> </div>
@ -108,6 +109,7 @@
<div class="col-sm-8"> <div class="col-sm-8">
<input class="form-control" ng-model="subMerchantInfo.address" <input class="form-control" ng-model="subMerchantInfo.address"
type="text" name="address" id="address_input" required maxlength="128"> type="text" name="address" id="address_input" required maxlength="128">
<p class="small " >(Not required when business type is Online scenario)</p>
<div ng-messages="subForm.address.$error" ng-if="subForm.address.$dirty"> <div ng-messages="subForm.address.$error" ng-if="subForm.address.$dirty">
<p class="small text-danger" ng-message="required">Required Field</p> <p class="small text-danger" ng-message="required">Required Field</p>
<p class="small text-danger" ng-message="maxlength">Length is more than 128</p> <p class="small text-danger" ng-message="maxlength">Length is more than 128</p>
@ -119,17 +121,18 @@
ng-class="{'has-error':subForm.office_phone.$invalid && subForm.office_phone.$dirty}"> ng-class="{'has-error':subForm.office_phone.$invalid && subForm.office_phone.$dirty}">
<label class="control-label col-sm-3" for="office_phone_input">* Office Phone</label> <label class="control-label col-sm-3" for="office_phone_input">* Office Phone</label>
<div class="col-sm-8"> <div class="col-sm-8">
<input class="form-control" ng-model="subMerchantInfo.company_phone" <input class="form-control" ng-model="subMerchantInfo.company_phone" maxlength="20"
type="tel" name="office_phone" id="office_phone_input" required> type="tel" name="office_phone" id="office_phone_input" required>
<div ng-messages="subForm.office_phone.$error" ng-if="subForm.office_phone.$dirty"> <div ng-messages="subForm.office_phone.$error" ng-if="subForm.office_phone.$dirty">
<p class="small text-danger" ng-message="required">Required Field</p> <p class="small text-danger" ng-message="required">Required Field</p>
<p class="small text-danger" ng-message="maxlength">Length is more than 20</p>
</div> </div>
</div> </div>
</div> </div>
<div class="form-group" <div class="form-group"
ng-class="{'has-error':subForm.contact_name.$invalid && subForm.contact_person.$dirty}"> ng-class="{'has-error':subForm.contact_name.$invalid && subForm.contact_person.$dirty}">
<label class="control-label col-sm-3" for="contact_name_input">* Contact Name</label> <label class="control-label col-sm-3" for="contact_name_input">* Contact Name</label>
<div class="col-sm-8"> <div class="col-sm-8">
<input class="form-control" ng-model="subMerchantInfo.contact_person" <input class="form-control" ng-model="subMerchantInfo.contact_person"
@ -187,18 +190,18 @@
</div> </div>
<!-- store address 店铺地址 --> <!-- store address 店铺地址 -->
<div class="form-group" <!--<div class="form-group"-->
ng-class="{'has-error':subForm.address.$invalid && subForm.address.$dirty}"> <!--ng-class="{'has-error':subForm.address.$invalid && subForm.address.$dirty}">-->
<label class="control-label col-sm-3" for="address_input">* Store Address</label> <!--<label class="control-label col-sm-3" for="address_input">* Store Address</label>-->
<div class="col-sm-8"> <!--<div class="col-sm-8">-->
<input class="form-control" ng-model="subMerchantInfo.address" <!--<input class="form-control" ng-model="subMerchantInfo.address"-->
type="text" name="address" id="address_input" required maxlength="128"> <!--type="text" name="address" id="address_input" required maxlength="128">-->
<div ng-messages="subForm.address.$error" ng-if="subForm.address.$dirty"> <!--<div ng-messages="subForm.address.$error" ng-if="subForm.address.$dirty">-->
<p class="small text-danger" ng-message="required">Required Field</p> <!--<p class="small text-danger" ng-message="required">Required Field</p>-->
<p class="small text-danger" ng-message="maxlength">Length is more than 128</p> <!--<p class="small text-danger" ng-message="maxlength">Length is more than 128</p>-->
</div> <!--</div>-->
</div> <!--</div>-->
</div> <!--</div>-->
<div class="form-group" <div class="form-group"
@ -209,7 +212,7 @@
<select class="form-control" ng-model="subMerchantInfo.merchant_type" <select class="form-control" ng-model="subMerchantInfo.merchant_type"
id="merchant_type_select" id="merchant_type_select"
name="merchant_type" > name="merchant_type" required>
<option value="">Please Choose</option> <option value="">Please Choose</option>
<option value="ENTERPRISE" >ENTERPRISE</option> <option value="ENTERPRISE" >ENTERPRISE</option>
<option value="INDIVIDUAL">INDIVIDUAL</option> <option value="INDIVIDUAL">INDIVIDUAL</option>
@ -222,7 +225,7 @@
<!-- 公司注册号 --> <!-- 公司注册号 -->
<div class="form-group" ng-if="subMerchantInfo.merchant_type == 'ENTERPRISE'" <div class="form-group" ng-if="subMerchantInfo.merchant_type == 'ENTERPRISE'"
ng-class="{'has-error':subForm.company_register_no.$invalid && subForm.company_register_no.$dirty}"> ng-class="{'has-error':subForm.company_register_no.$invalid && subForm.company_register_no.$dirty}">
<label class="control-label col-sm-3" for="company_register_no_input">* Company registration document No</label> <label class="control-label col-sm-3" for="company_register_no_input">* Company registration document No </label>
<div class="col-sm-8"> <div class="col-sm-8">
<input class="form-control" ng-model="subMerchantInfo.company_register_no" <input class="form-control" ng-model="subMerchantInfo.company_register_no"
type="text" name="company_register_no" id="company_register_no_input" required maxlength="50"> type="text" name="company_register_no" id="company_register_no_input" required maxlength="50">
@ -233,80 +236,110 @@
</div> </div>
</div> </div>
<!-- 注册证书过期时间 -->
<!--<div class="form-group" ng-if="subMerchantInfo.merchant_type == 'ENTERPRISE'"-->
<!--ng-class="{'has-error':subForm.certificat_expire_date.$invalid && subForm.certificat_expire_date.$dirty}">-->
<!--<label class="control-label col-sm-3" for="certificat_expire_date_input">* {{'apply_sub_merchant_id.certificat_expire_date'|translate}}</label>-->
<!--<div class="col-sm-8">-->
<!--<input class="form-control" id="certificat_expire_date_input"-->
<!--ng-model="subMerchantInfo.certificat_expire_date"-->
<!--uib-datepicker-popup size="10"-->
<!--name="certificat_expire_date"-->
<!--is-open="certificat_expire_date.open"-->
<!--ng-click="certificat_expire_date.open=true"-->
<!--&gt;-->
<!--<div ng-messages="subForm.certificat_expire_date.$error" ng-if="subForm.certificat_expire_date.$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-if="subMerchantInfo.merchant_type == 'ENTERPRISE'" <div class="form-group" ng-if="subMerchantInfo.merchant_type == 'ENTERPRISE'"
ng-class="{'has-error':subForm.certificat_expire_date.$invalid && subForm.certificat_expire_date.$dirty}"> ng-class="{'has-error':subForm.certificat_expire_date.$invalid && subForm.certificat_expire_date.$dirty}">
<label class="control-label col-sm-3" for="certificat_expire_date_input">* Expiration Date of Registration Certificat</label> <label class="control-label col-sm-3" for="certificat_expire_date_input">* Expiration Date of Registration Certificat</label>
<div class="col-sm-8"> <div class="col-sm-8">
<input class="form-control" id="certificat_expire_date_input" <input class="control-label col-sm-4" id="certificat_expire_date_input"
ng-model="subMerchantInfo.certificat_expire_date" ng-model="subMerchantInfo.certificat_expire_date_d"
uib-datepicker-popup size="10" uib-datepicker-popup size="10"
required ng-change="checkExpriedate(subMerchantInfo.certificat_expire_date_d)"
name="certificat_expire_date" name="certificat_expire_date"
is-open="certificat_expire_date.open" is-open="certificat_expire_date.open"
ng-click="certificat_expire_date.open=true" ng-click="certificat_expire_date.open=true"
> >
<div ng-messages="subForm.certificat_expire_date.$error" ng-if="subForm.certificat_expire_date.$dirty"> &nbsp;
<p class="small text-danger" ng-message="required">Required Field</p> <span class="checkbox-inline">
<p class="small text-danger" ng-message="maxlength">Length is more than 50</p>
</div> <input type="checkbox" ng-change="checkExpriedateOther('PERMANENT')" ng-model="subMerchantInfo.certificat_expire_date_premanent"> <p>PERMANENT</p>
</span>
<span class="checkbox-inline">
<input type="checkbox" ng-change="checkExpriedateOther('N/A')" ng-model="subMerchantInfo.certificat_expire_date_NA"><p>N/A</p>
</span>
<!--<div ng-messages="subForm.certificat_expire_date.$error" ng-if="subForm.certificat_expire_date.$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>
<!-- director name 法人姓名 --> <!-- director name 法人姓名 -->
<!--<div class="form-group" ng-if="subMerchantInfo.merchant_type == 'ENTERPRISE'"--> <!--<div class="form-group" ng-if="subMerchantInfo.merchant_type == 'ENTERPRISE'"-->
<!--ng-class="{'has-error':subForm.director_name.$invalid && subForm.director_name.$dirty}">--> <!--ng-class="{'has-error':subForm.director_name.$invalid && subForm.director_name.$dirty}">-->
<!--<label class="control-label col-sm-3" for="director_name_input">Director Name</label>--> <!--<label class="control-label col-sm-3" for="director_name_input">{{'apply_sub_merchant_id.director_name'|translate}}(Not mandatory)</label>-->
<!--<div class="col-sm-8">--> <!--<div class="col-sm-8">-->
<!--<input class="form-control" ng-model="subMerchantInfo.director_name" maxlength="128"--> <!--<input class="form-control" ng-model="subMerchantInfo.director_name" maxlength="128"-->
<!--type="text" name="director_name" id="director_name_input">--> <!--type="text" name="director_name" id="director_name_input">-->
<!--<div ng-messages="subForm.director_name.$error" ng-if="subForm.director_name.$dirty">--> <!--<div ng-messages="subForm.director_name.$error" ng-if="subForm.director_name.$dirty">-->
<!--<p class="small text-danger" ng-message="required">Required Field</p>--> <!--<p class="small text-danger" ng-message="required">Required Field</p>-->
<!--<p class="small text-danger" ng-message="maxlength">Length is more than 128</p>--> <!--<p class="small text-danger" ng-message="maxlength">Length is more than 128</p>-->
<!--</div>--> <!--</div>-->
<!--</div>--> <!--</div>-->
<!--</div>--> <!--</div>-->
<!--&lt;!&ndash; director id number 法人身份证号&ndash;&gt;--> <!--&lt;!&ndash; director id number 法人身份证号&ndash;&gt;-->
<!--<div class="form-group" ng-if="subMerchantInfo.merchant_type == 'ENTERPRISE'"--> <!--<div class="form-group" ng-if="subMerchantInfo.merchant_type == 'ENTERPRISE'"-->
<!--ng-class="{'has-error':subForm.director_id_number.$invalid && subForm.director_id_number.$dirty}">--> <!--ng-class="{'has-error':subForm.director_id_number.$invalid && subForm.director_id_number.$dirty}">-->
<!--<label class="control-label col-sm-3" for="director_id_number_input">Director Id</label>--> <!--<label class="control-label col-sm-3" for="director_id_number_input">{{'apply_sub_merchant_id.director_id'|translate}}(Not mandatory)</label>-->
<!--<div class="col-sm-8">--> <!--<div class="col-sm-8">-->
<!--<input class="form-control" ng-model="subMerchantInfo.director_id_number" maxlength="128"--> <!--<input class="form-control" ng-model="subMerchantInfo.director_id_number" maxlength="128"-->
<!--type="text" name="director_id_number" id="director_id_number_input">--> <!--type="text" name="director_id_number" id="director_id_number_input">-->
<!--<div ng-messages="subForm.director_id_number.$error" ng-if="subForm.director_id_number.$dirty">--> <!--<div ng-messages="subForm.director_id_number.$error" ng-if="subForm.director_id_number.$dirty">-->
<!--<p class="small text-danger" ng-message="required">Required Field</p>--> <!--<p class="small text-danger" ng-message="required">Required Field</p>-->
<!--<p class="small text-danger" ng-message="maxlength">Length is more than 128</p>--> <!--<p class="small text-danger" ng-message="maxlength">Length is more than 128</p>-->
<!--</div>--> <!--</div>-->
<!--</div>--> <!--</div>-->
<!--</div>--> <!--</div>-->
<!--&lt;!&ndash; principal name 负责人姓名 &ndash;&gt;--> <!--&lt;!&ndash; principal name 负责人姓名 &ndash;&gt;-->
<!--<div class="form-group" ng-if="subMerchantInfo.merchant_type != 'ENTERPRISE'"--> <!--<div class="form-group" ng-if="subMerchantInfo.merchant_type != 'ENTERPRISE'"-->
<!--ng-class="{'has-error':subForm.principal_name.$invalid && subForm.principal_name.$dirty}">--> <!--ng-class="{'has-error':subForm.principal_name.$invalid && subForm.principal_name.$dirty}">-->
<!--<label class="control-label col-sm-3" for="principal_name_input">Principal Name</label>--> <!--<label class="control-label col-sm-3" for="principal_name_input">{{'apply_sub_merchant_id.principal_name'|translate}}(Not mandatory)</label>-->
<!--<div class="col-sm-8">--> <!--<div class="col-sm-8">-->
<!--<input class="form-control" ng-model="subMerchantInfo.principal_name" maxlength="128"--> <!--<input class="form-control" ng-model="subMerchantInfo.principal_name" maxlength="128"-->
<!--type="text" name="principal_name" id="principal_name_input">--> <!--type="text" name="principal_name" id="principal_name_input">-->
<!--<div ng-messages="subForm.principal_name.$error" ng-if="subForm.principal_name.$dirty">--> <!--<div ng-messages="subForm.principal_name.$error" ng-if="subForm.principal_name.$dirty">-->
<!--<p class="small text-danger" ng-message="required">Required Field</p>--> <!--<p class="small text-danger" ng-message="required">Required Field</p>-->
<!--<p class="small text-danger" ng-message="maxlength">Length is more than 128</p>--> <!--<p class="small text-danger" ng-message="maxlength">Length is more than 128</p>-->
<!--</div>--> <!--</div>-->
<!--</div>--> <!--</div>-->
<!--</div>--> <!--</div>-->
<!--&lt;!&ndash; principal id number 负责人身份证号 &ndash;&gt;--> <!--&lt;!&ndash; principal id number 负责人身份证号 &ndash;&gt;-->
<!--<div class="form-group" ng-if="subMerchantInfo.merchant_type != 'ENTERPRISE'"--> <!--<div class="form-group" ng-if="subMerchantInfo.merchant_type != 'ENTERPRISE'"-->
<!--ng-class="{'has-error':subForm.principal_id_number.$invalid && subForm.principal_id_number.$dirty}">--> <!--ng-class="{'has-error':subForm.principal_id_number.$invalid && subForm.principal_id_number.$dirty}">-->
<!--<label class="control-label col-sm-3" for="principal_id_number_input">Principal ID Number</label>--> <!--<label class="control-label col-sm-3" for="principal_id_number_input">{{'apply_sub_merchant_id.principal_id'|translate}}(Not mandatory)</label>-->
<!--<div class="col-sm-8">--> <!--<div class="col-sm-8">-->
<!--<input class="form-control" ng-model="subMerchantInfo.principal_id_number" maxlength="128"--> <!--<input class="form-control" ng-model="subMerchantInfo.principal_id_number" maxlength="128"-->
<!--type="text" name="principal_id_number_number" id="principal_id_number_input">--> <!--type="text" name="principal_id_number_number" id="principal_id_number_input">-->
<!--<div ng-messages="subForm.principal_id_number.$error" ng-if="subForm.principal_id_number.$dirty">--> <!--<div ng-messages="subForm.principal_id_number.$error" ng-if="subForm.principal_id_number.$dirty">-->
<!--<p class="small text-danger" ng-message="required">Required Field</p>--> <!--<p class="small text-danger" ng-message="required">Required Field</p>-->
<!--<p class="small text-danger" ng-message="maxlength">Length is more than 128</p>--> <!--<p class="small text-danger" ng-message="maxlength">Length is more than 128</p>-->
<!--</div>--> <!--</div>-->
<!--</div>--> <!--</div>-->
<!--</div>--> <!--</div>-->
</div> </div>
</div> </div>

Loading…
Cancel
Save