提交 88520e71ab6a92df0a596f7588fd6394b35b63a2

作者 pangy
1 个父辈 49628dc8

非居民信息:证照类型逻辑 、国籍、居民、时间、二证、出生、二名、地址

1 var format = require('../../../../utils/util.js'); 1 var format = require('../../../../utils/util.js');
2 var app = getApp(); 2 var app = getApp();
3 var baseUrl = app.globalData.baseUrl; 3 var baseUrl = app.globalData.baseUrl;
  4 +// var countryInfo = require('../../../../utils/country.js');
  5 +const cardTypeArray = ['居民身份证', '中国护照', '港澳居民来往内地通行证', '港澳居民居住证', '台湾居民来往大陆通行证', '台湾居民居住证', '外国护照', '外国人永久居留身份证', '外国人工作许可证(A类)', '外国人工作许可证(B类)', '外国人工作许可证(C类)'];
  6 +const cardTypeDicts = [{ 'code': '1', 'name': '居民身份证' }, { 'code': '2', 'name': '中国护照' }, { 'code': '3', 'name': '港澳居民来往内地通行证' }, { 'code': '4', 'name': '港澳居民居住证' }, { 'code': '5', 'name': '台湾居民来往大陆通行证' }, { 'code': '6', 'name': '台湾居民居住证' }, { 'code': '7', 'name': '外国护照' }, { 'code': '8', 'name': '外国人永久居留身份证' }, { 'code': '9', 'name': '外国人工作许可证(A类)' }, { 'code': '10', 'name': '外国人工作许可证(B类)' }, { 'code': '11', 'name': '外国人工作许可证(C类)'}];
4 Page({ 7 Page({
5 8
6 /** 9 /**
@@ -10,6 +13,7 @@ Page({ @@ -10,6 +13,7 @@ Page({
10 isshow01: false, 13 isshow01: false,
11 isshow02: false, 14 isshow02: false,
12 isshow03: false, 15 isshow03: false,
  16 + hasOtherCard:false,
13 taxInfo: {}, 17 taxInfo: {},
14 proffessionlist: {}, 18 proffessionlist: {},
15 banklist: {}, 19 banklist: {},
@@ -44,21 +48,54 @@ Page({ @@ -44,21 +48,54 @@ Page({
44 }, 48 },
45 cardtypeData: { 49 cardtypeData: {
46 isrequre: true, 50 isrequre: true,
47 - disabled: true,  
48 label: '证照类型', 51 label: '证照类型',
49 bindtype: 'cardtype', 52 bindtype: 'cardtype',
50 - placeholder: '居民身份证', 53 + placeholder: '请选择证照类型',
51 selected: '', 54 selected: '',
52 - values: ["居民身份证", "军官证", '士兵证', '武警警官证', '港澳居民来往内地通行证', '外交官证', '中国护照',  
53 - '外国护照', '香港永久性居民身份证', '澳门特别行政区永久性居民身份证', '台湾身份证', '台湾居民来往大陆通行证', '外国人永久居留证'  
54 - ], 55 + values: cardTypeDicts,
  56 + range_key:'name',
  57 + // values: ["居民身份证", "军官证", '士兵证', '武警警官证', '港澳居民来往内地通行证', '外交官证', '中国护照',
  58 + // '外国护照', '香港永久性居民身份证', '澳门特别行政区永久性居民身份证', '台湾身份证', '台湾居民来往大陆通行证', '外国人永久居留证'
  59 + // ],
55 onChange: 'onPickerSelect' 60 onChange: 'onPickerSelect'
56 -}, 61 + },
  62 + otherCardtypeData: {
  63 + label: '其他证照类型',
  64 + bindtype: 'other_cardtype',
  65 + placeholder: '请选择证照类型',
  66 + selected: '',
  67 + values: [],
  68 + range_key: 'name',
  69 + onChange: 'onPickerSelect'
  70 + },
  71 + countryData: {
  72 + label: '国籍',
  73 + bindtype: 'country',
  74 + isrequre: true,
  75 + selected: '',
  76 + // range_key:'name',
  77 + placeholder: '请选择国籍',
  78 + onChange: 'onPickerSelect',
  79 + },
  80 + birthCountryData: {
  81 + label: '出生国家(地区)',
  82 + bindtype: 'brith_country',
  83 + placeholder: '请选择国籍',
  84 + onChange: 'onPickerSelect',
  85 + },
  86 + taxpayerTypeData: {
  87 + isrequre: true,
  88 + label: '纳税人类型',
  89 + bindtype: 'taxpayerType',
  90 + placeholder: '请选择纳税人类型',
  91 + values: ["居民", "非居民"],
  92 + onChange: 'onPickerSelect'
  93 + },
57 forignerInfo: { 94 forignerInfo: {
58 isrequre: true, 95 isrequre: true,
59 label: '是否境外人员', 96 label: '是否境外人员',
60 bindtype: 'forigner', 97 bindtype: 'forigner',
61 - placeholder: '', 98 + placeholder: '请选择',
62 disabled: true, 99 disabled: true,
63 values: ["否", "是"], 100 values: ["否", "是"],
64 onChange: 'onPickerSelect' 101 onChange: 'onPickerSelect'
@@ -74,7 +111,7 @@ Page({ @@ -74,7 +111,7 @@ Page({
74 genderData: { 111 genderData: {
75 label: '性别', 112 label: '性别',
76 bindtype: 'gender', 113 bindtype: 'gender',
77 - disabled: true, 114 + // disabled: true,
78 placeholder: '性别', 115 placeholder: '性别',
79 values: ["男", "女"], 116 values: ["男", "女"],
80 selected: '', 117 selected: '',
@@ -160,13 +197,14 @@ Page({ @@ -160,13 +197,14 @@ Page({
160 // 时间picker 197 // 时间picker
161 birthDate: { 198 birthDate: {
162 label: '出生年月', 199 label: '出生年月',
163 - disabled:true, 200 + // disabled:true,
164 bindtype: 'birthday', 201 bindtype: 'birthday',
165 placeholder: '出生日期', 202 placeholder: '出生日期',
166 selected: '', 203 selected: '',
167 mode: "date", 204 mode: "date",
168 fields: "day", 205 fields: "day",
169 start: '1949-01-01', 206 start: '1949-01-01',
  207 + end: format.formatTime_date(new Date()),
170 onChange: 'birthdayChange', 208 onChange: 'birthdayChange',
171 }, 209 },
172 startDate: { 210 startDate: {
@@ -189,10 +227,32 @@ Page({ @@ -189,10 +227,32 @@ Page({
189 start: '2010-01-01', 227 start: '2010-01-01',
190 onChange: 'endChange', 228 onChange: 'endChange',
191 }, 229 },
  230 +
  231 + firstEntryDate: {
  232 + label: '首次入境时间',
  233 + isrequre: true,
  234 + bindtype: 'entry_date',
  235 + placeholder: '出生日期',
  236 + selected: '',
  237 + mode: "date",
  238 + fields: "day",
  239 + onChange: 'onPickerSelect',
  240 + },
  241 + predictLeaveDate: {
  242 + label: '预计离境时间',
  243 + isrequre: true,
  244 + bindtype: 'leave_date',
  245 + placeholder: '出生日期',
  246 + selected: '',
  247 + mode: "date",
  248 + fields: "day",
  249 + onChange: 'onPickerSelect',
  250 + },
192 // 地址选择器 251 // 地址选择器
193 contactaddressInfo: { 252 contactaddressInfo: {
194 label: '联系地址', 253 label: '联系地址',
195 mode: 'region', 254 mode: 'region',
  255 + maxWidth: 490,
196 address_code: ['', '', ''], 256 address_code: ['', '', ''],
197 address_value: ['', '', ''], 257 address_value: ['', '', ''],
198 selected: '', 258 selected: '',
@@ -227,7 +287,7 @@ Page({ @@ -227,7 +287,7 @@ Page({
227 * 生命周期函数--监听页面加载 287 * 生命周期函数--监听页面加载
228 */ 288 */
229 onLoad: function(options) { 289 onLoad: function(options) {
230 - 290 +
231 console.log('options.id', options.id) 291 console.log('options.id', options.id)
232 if (options.id && options.id.length > 0) { 292 if (options.id && options.id.length > 0) {
233 this.setData({ 293 this.setData({
@@ -237,7 +297,44 @@ Page({ @@ -237,7 +297,44 @@ Page({
237 } 297 }
238 this.getproffessiondata() 298 this.getproffessiondata()
239 this.getbanklist() 299 this.getbanklist()
  300 + this.getCountry()
240 }, 301 },
  302 +//****************获取国籍数据************/
  303 + getCountry: function () {
  304 + var that = this
  305 + wx.showLoading({
  306 + title: '',
  307 + })
  308 + var Authorization = app.globalData.Authorization;
  309 + wx.request({
  310 + url: baseUrl + 'persontax/v1/nation-list',
  311 + method: "GET",
  312 + header: {
  313 + 'content-type': 'application/json', // 默认值
  314 + "Authorization": Authorization
  315 + },
  316 + success: function (res) {
  317 + console.log('country', res)
  318 + var countryData = that.data.countryData
  319 + countryData.values = res.data.countrys
  320 + var birthCountryData = that.data.birthCountryData
  321 + birthCountryData.values = res.data.countrys
  322 + that.countrys = res.data.countrys
  323 + that.setData({
  324 + countryData: countryData,
  325 + birthCountryData: birthCountryData
  326 + })
  327 + },
  328 + fail(res) {
  329 + wx.hideLoading()
  330 + },
  331 + complete() {
  332 + wx.hideLoading()
  333 + }
  334 + })
  335 + },
  336 +
  337 +
241 //****************获取自然人数据************/ 338 //****************获取自然人数据************/
242 getpersonalTax: function(id) { 339 getpersonalTax: function(id) {
243 var that = this 340 var that = this
@@ -276,8 +373,10 @@ Page({ @@ -276,8 +373,10 @@ Page({
276 //todo 373 //todo
277 var curdate = format.curDateTime() 374 var curdate = format.curDateTime()
278 console.log('curdate', curdate) 375 console.log('curdate', curdate)
  376 + this.dealCardType(tax_info.id_card_type)//为防止干扰其他字段,需要先执行
279 377
280 this.data.name = tax_info.name 378 this.data.name = tax_info.name
  379 + this.data.other_name = tax_info.other_name
281 if (tax_info.certification_status == 'active' && tax_info.id_card_no.length) {//已通过拍摄身份证认证过,不能修改 380 if (tax_info.certification_status == 'active' && tax_info.id_card_no.length) {//已通过拍摄身份证认证过,不能修改
282 this.data.genderData.disabled = true 381 this.data.genderData.disabled = true
283 this.data.birthDate.disabled = true 382 this.data.birthDate.disabled = true
@@ -285,10 +384,19 @@ Page({ @@ -285,10 +384,19 @@ Page({
285 } 384 }
286 385
287 this.data.personstatusData.selected = tax_info.taxpayer_status 386 this.data.personstatusData.selected = tax_info.taxpayer_status
288 -  
289 - this.data.cardtypeData.selected = tax_info.id_card_type  
290 - console.log('cardtypeData', this.data.cardtypeData) 387 + this.data.cardtypeData.selected = cardTypeArray[parseInt(tax_info.id_card_type)-1]
  388 + this.data.cardtypeData.selected_code = tax_info.id_card_type
291 this.data.card_number = tax_info.id_card_no 389 this.data.card_number = tax_info.id_card_no
  390 +
  391 + this.data.otherCardtypeData.selected = cardTypeArray[parseInt(tax_info.other_id_card_type)-1]
  392 + this.data.otherCardtypeData.selected_code = tax_info.other_id_card_type
  393 +
  394 + this.data.other_card_number = tax_info.other_id_card_no
  395 + this.data.overseas = tax_info.is_overseas_personnel
  396 + this.data.countryData.selected = tax_info.native
  397 + this.data.birthCountryData.selected = tax_info.brith_native
  398 + this.data.taxpayerTypeData.selected = tax_info.taxpayer_type
  399 +
292 this.data.mobile = tax_info.mobile 400 this.data.mobile = tax_info.mobile
293 this.data.investInfo.selected = tax_info.is_investor 401 this.data.investInfo.selected = tax_info.is_investor
294 this.data.specificIndustryInfo.selected = tax_info.is_specific_profession 402 this.data.specificIndustryInfo.selected = tax_info.is_specific_profession
@@ -309,6 +417,10 @@ Page({ @@ -309,6 +417,10 @@ Page({
309 if (tax_info.separate_date > 1000) { 417 if (tax_info.separate_date > 1000) {
310 this.data.endDate.selected = format.formatTime_date(tax_info.separate_date) 418 this.data.endDate.selected = format.formatTime_date(tax_info.separate_date)
311 } 419 }
  420 + const firstEntryDate = format.formatTime_date(tax_info.first_entry_date)
  421 + const predictLeaveDate = format.formatTime_date(tax_info.predict_leave_date)
  422 + this.data.firstEntryDate.selected = (firstEntryDate.indexOf("NaN") == -1) ? firstEntryDate:''
  423 + this.data.predictLeaveDate.selected = (predictLeaveDate.indexOf("NaN") == -1) ? predictLeaveDate : ''
312 424
313 this.data.professionData.selected = tax_info.profession.three_level_name 425 this.data.professionData.selected = tax_info.profession.three_level_name
314 426
@@ -320,16 +432,18 @@ Page({ @@ -320,16 +432,18 @@ Page({
320 this.data.lieshuInfo.selected = tax_info.is_martyr_family 432 this.data.lieshuInfo.selected = tax_info.is_martyr_family
321 this.data.lonelyolderInfo.selected = tax_info.is_lonely_man 433 this.data.lonelyolderInfo.selected = tax_info.is_lonely_man
322 this.data.bankInfo.selected = tax_info.bank 434 this.data.bankInfo.selected = tax_info.bank
323 - // this.data.contactaddressInfo.selected = tax_info.contact_address.province + tax_info.contact_address.city + tax_info.contact_address.district 435 + this.data.contactaddressInfo.selected = tax_info.contact_address.province + tax_info.contact_address.city + tax_info.contact_address.district
324 this.data.currentaddressInfo.selected = tax_info.current_address.province + tax_info.current_address.city + tax_info.current_address.district 436 this.data.currentaddressInfo.selected = tax_info.current_address.province + tax_info.current_address.city + tax_info.current_address.district
325 this.data.birthaddressInfo.selected = (tax_info.huji_address.province + tax_info.huji_address.city + tax_info.huji_address.district).replace(/(^\s*)|(\s*$)/g, "") 437 this.data.birthaddressInfo.selected = (tax_info.huji_address.province + tax_info.huji_address.city + tax_info.huji_address.district).replace(/(^\s*)|(\s*$)/g, "")
326 this.data.employeeInfo.selected = tax_info.is_employee 438 this.data.employeeInfo.selected = tax_info.is_employee
327 this.data.investpersonalInfo.selected = tax_info.is_business_angel 439 this.data.investpersonalInfo.selected = tax_info.is_business_angel
328 this.setData({ 440 this.setData({
329 - huji_address_detail: tax_info.huji_address_detail.replace(/(^\s*)|(\s*$)/g, ""), 441 + // huji_address_detail: tax_info.huji_address_detail.replace(/(^\s*)|(\s*$)/g, ""),
330 name: this.data.name, 442 name: this.data.name,
  443 + other_name: this.data.other_name,
331 personstatusData: this.data.personstatusData, 444 personstatusData: this.data.personstatusData,
332 cardtypeData: this.data.cardtypeData, 445 cardtypeData: this.data.cardtypeData,
  446 + otherCardtypeData: this.data.otherCardtypeData,
333 mobile: this.data.mobile, 447 mobile: this.data.mobile,
334 investInfo: this.data.investInfo, 448 investInfo: this.data.investInfo,
335 specificIndustryInfo: this.data.specificIndustryInfo, 449 specificIndustryInfo: this.data.specificIndustryInfo,
@@ -355,9 +469,15 @@ Page({ @@ -355,9 +469,15 @@ Page({
355 startDate: this.data.startDate, 469 startDate: this.data.startDate,
356 long_end_date: tax_info.separate_date ? tax_info.separate_date : 0, 470 long_end_date: tax_info.separate_date ? tax_info.separate_date : 0,
357 endDate: this.data.endDate, 471 endDate: this.data.endDate,
  472 + firstEntryDate: this.data.firstEntryDate,
  473 + predictLeaveDate: this.data.predictLeaveDate,
358 isIdCard: '居民身份证' == tax_info.id_card_type ? true : false, 474 isIdCard: '居民身份证' == tax_info.id_card_type ? true : false,
359 - card_number: this.data.card_number  
360 - 475 + card_number: this.data.card_number,
  476 + other_card_number: this.data.other_card_number,
  477 + countryData: this.data.countryData,
  478 + birthCountryData: this.data.birthCountryData,
  479 + overseas: this.data.overseas,
  480 + taxpayerTypeData: this.data.taxpayerTypeData
361 }) 481 })
362 482
363 }, 483 },
@@ -512,8 +632,9 @@ Page({ @@ -512,8 +632,9 @@ Page({
512 birth_day = id_info.birthday.year + '-0' + id_info.birthday.month + '-0' + id_info.birthday.day; 632 birth_day = id_info.birthday.year + '-0' + id_info.birthday.month + '-0' + id_info.birthday.day;
513 } 633 }
514 634
515 - var cardtype_Data = that.data.cardtypeData  
516 - cardtype_Data.selected = '居民身份证' 635 + var cardtypeData = that.data.cardtypeData
  636 + cardtypeData.selected = '居民身份证'
  637 + cardtypeData.selected_code = '1'
517 var gender_Data = that.data.genderData 638 var gender_Data = that.data.genderData
518 gender_Data.selected = id_info.gender 639 gender_Data.selected = id_info.gender
519 640
@@ -535,7 +656,7 @@ Page({ @@ -535,7 +656,7 @@ Page({
535 idInfoData: id_info, 656 idInfoData: id_info,
536 name: id_info.name, 657 name: id_info.name,
537 birthday: birth_day, 658 birthday: birth_day,
538 - cardtypeData: cardtype_Data, 659 + cardtypeData: cardtypeData,
539 genderData: gender_Data, 660 genderData: gender_Data,
540 long_birth_date: Date.parse(new Date(birth_day)) / 1000, 661 long_birth_date: Date.parse(new Date(birth_day)) / 1000,
541 birthDate: that.data.birthDate, 662 birthDate: that.data.birthDate,
@@ -572,6 +693,81 @@ Page({ @@ -572,6 +693,81 @@ Page({
572 693
573 }, 694 },
574 695
  696 + dealCardType: function (new_type_code){
  697 + console.log('cardtype_code', new_type_code)
  698 + var is_idcard = this.data.isIdCard
  699 + const new_type = cardTypeArray[parseInt(new_type_code)-1]
  700 + this.data.cardtypeData.selected_code = new_type_code
  701 + this.data.cardtypeData.selected = new_type
  702 +
  703 + if ('居民身份证' == new_type) {
  704 + is_idcard = true
  705 + this.data.genderData.disabled = true
  706 + this.data.birthDate.disabled = true
  707 + } else {
  708 + is_idcard = false
  709 + this.data.genderData.disabled = false
  710 + this.data.birthDate.disabled = false
  711 + }
  712 + this.data.hasOtherCard = true
  713 + this.data.overseas = '否'
  714 + this.data.taxpayerTypeData.disabled = false
  715 + this.data.taxpayerTypeData.selected = ''
  716 + if ('居民身份证' == new_type || '中国护照' == new_type) {
  717 + this.data.countryData.selected = '中国'
  718 + this.data.countryData.disabled = true
  719 + this.data.hasOtherCard = false
  720 + this.data.taxpayerTypeData.selected = '居民'
  721 + this.data.taxpayerTypeData.disabled = true
  722 + } else if (new_type.indexOf("港澳") != -1) {
  723 + this.data.countryData.values = ['中国香港', '中国澳门']
  724 + this.data.countryData.selected = ''
  725 + this.data.countryData.disabled = false
  726 + this.data.nameText = '英文名'
  727 + if (new_type.indexOf('通行证') != -1){
  728 + this.data.otherCardtypeData.values = [{ 'code': '4', 'name': '港澳居民居住证'}];
  729 + }else{
  730 + this.data.otherCardtypeData.values = [{ 'code': '3', 'name': '港澳居民来往内地通行证'}];
  731 + }
  732 + } else if (new_type.indexOf("台湾") != -1) {
  733 + this.data.countryData.selected = '中国台湾'
  734 + this.data.countryData.disabled = true
  735 + this.data.nameText = '英文名'
  736 + if (new_type.indexOf('通行证') != -1) {
  737 + this.data.otherCardtypeData.values = [{ 'code': '6', 'name': '台湾居民居住证' }];
  738 + } else {
  739 + this.data.otherCardtypeData.values = [{ 'code': '5', 'name': '台湾居民来往大陆通行证' }];
  740 + }
  741 +
  742 + } else {
  743 + this.data.overseas = '是'
  744 + this.data.countryData.selected = ''
  745 + this.data.countryData.values = this.countrys ? this.countrys : []
  746 + this.data.countryData.disabled = false
  747 + this.data.nameText = '中文名'
  748 + if (new_type.indexOf("外国护照") != -1) {
  749 + this.data.otherCardtypeData.values = [{ 'code': '8', 'name': '外国人永久居留身份证' }, { 'code': '9', 'name': '外国人工作许可证(A类)' }, { 'code': '10', 'name': '外国人工作许可证(B类)' }, { 'code': '11', 'name': '外国人工作许可证(C类)' }];
  750 + } else {
  751 + this.data.otherCardtypeData.values = [{ 'code': '7', 'name': '外国护照' }];
  752 + }
  753 + }
  754 + this.setData({
  755 + isIdCard: is_idcard,
  756 + hasOtherCard: this.data.hasOtherCard,
  757 + genderData: this.data.genderData,
  758 + birthDate: this.data.birthDate,
  759 + countryData: this.data.countryData,
  760 + cardtypeData: this.data.cardtypeData,
  761 + otherCardtypeData: this.data.otherCardtypeData,
  762 + nameText: this.data.nameText,
  763 + overseas: this.data.overseas,
  764 + taxpayerTypeData: this.data.taxpayerTypeData
  765 + })
  766 +
  767 +
  768 + },
  769 +
  770 +
575 onPickerSelect: function(e) { 771 onPickerSelect: function(e) {
576 console.log('picker发送选择改变,携带值为', e) 772 console.log('picker发送选择改变,携带值为', e)
577 switch (e.currentTarget.id) { 773 switch (e.currentTarget.id) {
@@ -583,24 +779,57 @@ Page({ @@ -583,24 +779,57 @@ Page({
583 }) 779 })
584 break; 780 break;
585 case 'cardtype': 781 case 'cardtype':
586 - var cardtype_data = this.data.cardtypeData  
587 - var new_type = cardtype_data.values[e.detail.value]  
588 - console.log('cardtype', cardtype_data.values[e.detail.value])  
589 - if (new_type != this.data.cardtypeData.selected) {  
590 - var is_idcard = this.data.isIdCard  
591 - cardtype_data.selected = cardtype_data.values[e.detail.value]  
592 - if (0 == e.detail.value) {  
593 - is_idcard = true  
594 - } else {  
595 - is_idcard = false  
596 - } 782 + var cardtypeData = this.data.cardtypeData
  783 + var new_type = cardtypeData.values[e.detail.value]['name']
  784 + var new_type_code = cardtypeData.values[e.detail.value]['code']
  785 + if (new_type != cardtypeData.selected) {
  786 + this.dealCardType(new_type_code)
  787 + this.setData({
  788 + card_number: ""
  789 + })
  790 + }
  791 + break;
  792 + case 'other_cardtype':
  793 + var otherCardtypeData = this.data.otherCardtypeData
  794 + var new_type = otherCardtypeData.values[e.detail.value]['name']
  795 + var new_type_code = otherCardtypeData.values[e.detail.value]['code']
  796 +
  797 + if (new_type != otherCardtypeData.selected) {
  798 + otherCardtypeData.selected = new_type
  799 + otherCardtypeData.selected_code = new_type_code
  800 + this.setData({
  801 + other_card_number: "",
  802 + otherCardtypeData: this.data.otherCardtypeData
  803 + })
  804 + }
  805 + break;
  806 + case 'country':
  807 + var countryData = this.data.countryData
  808 + var new_country = countryData.values[e.detail.value]
  809 + if (new_country != countryData.selected) {
  810 + countryData.selected = new_country
  811 + this.setData({
  812 + countryData: countryData
  813 + })
  814 + }
  815 + break;
  816 + case 'brith_country':
  817 + var birthCountryData = this.data.birthCountryData
  818 + var new_country = birthCountryData.values[e.detail.value]
  819 + if (new_country != birthCountryData.selected) {
  820 + birthCountryData.selected = new_country
597 this.setData({ 821 this.setData({
598 - card_number:"",  
599 - isIdCard: is_idcard,  
600 - cardtypeData: cardtype_data 822 + birthCountryData: birthCountryData
601 }) 823 })
602 } 824 }
603 break; 825 break;
  826 + case 'taxpayerType':
  827 + var taxpayerTypeData = this.data.taxpayerTypeData
  828 + taxpayerTypeData.selected = taxpayerTypeData.values[e.detail.value]
  829 + this.setData({
  830 + taxpayerTypeData: taxpayerTypeData
  831 + })
  832 + break;
604 case 'forigner': 833 case 'forigner':
605 var forigner_data = this.data.forignerInfo 834 var forigner_data = this.data.forignerInfo
606 forigner_data.selected = forigner_data.values[e.detail.value] 835 forigner_data.selected = forigner_data.values[e.detail.value]
@@ -689,6 +918,25 @@ Page({ @@ -689,6 +918,25 @@ Page({
689 investpersonalInfo: investpersonal_data 918 investpersonalInfo: investpersonal_data
690 }) 919 })
691 break; 920 break;
  921 + case 'entry_date':
  922 + this.data.firstEntryDate.selected = e.detail.value
  923 + this.data.firstEntryDate.datelong = Date.parse(new Date(e.detail.value)) / 1000
  924 + this.data.predictLeaveDate.start = e.detail.value
  925 + if (this.data.firstEntryDate.datelong>this.data.predictLeaveDate.datelong){
  926 + this.data.predictLeaveDate.selected = ''
  927 + }
  928 + this.setData({
  929 + firstEntryDate: this.data.firstEntryDate,
  930 + predictLeaveDate: this.data.predictLeaveDate
  931 + })
  932 + break;
  933 + case 'leave_date':
  934 + this.data.predictLeaveDate.selected = e.detail.value
  935 + this.data.predictLeaveDate.datelong = Date.parse(new Date(e.detail.value)) / 1000
  936 + this.setData({
  937 + predictLeaveDate: this.data.predictLeaveDate
  938 + })
  939 + break;
692 } 940 }
693 941
694 }, 942 },
@@ -786,12 +1034,19 @@ Page({ @@ -786,12 +1034,19 @@ Page({
786 name: e.detail.value 1034 name: e.detail.value
787 }) 1035 })
788 }, 1036 },
789 - 1037 + bindOtherName: function(e) {
  1038 + this.setData({
  1039 + other_name: e.detail.value
  1040 + })
  1041 + },
790 idcardblur: function (e) { 1042 idcardblur: function (e) {
791 var idCardNo = e.detail.value 1043 var idCardNo = e.detail.value
792 this.setData({ 1044 this.setData({
793 card_number: idCardNo 1045 card_number: idCardNo
794 }) 1046 })
  1047 + if (!this.data.isIdCard) {
  1048 + return;
  1049 + }
795 if (!idCardNo.length) { 1050 if (!idCardNo.length) {
796 wx.showToast({ 1051 wx.showToast({
797 image: "../../../../images/warn.png", 1052 image: "../../../../images/warn.png",
@@ -812,6 +1067,9 @@ Page({ @@ -812,6 +1067,9 @@ Page({
812 this.setData({ 1067 this.setData({
813 card_number: idCardNo 1068 card_number: idCardNo
814 }) 1069 })
  1070 + if (!this.data.isIdCard) {
  1071 + return;
  1072 + }
815 if (e.detail.value.length == 18) { 1073 if (e.detail.value.length == 18) {
816 if (!format.isIDCardNum(idCardNo)) { 1074 if (!format.isIDCardNum(idCardNo)) {
817 wx.showToast({ 1075 wx.showToast({
@@ -858,7 +1116,6 @@ Page({ @@ -858,7 +1116,6 @@ Page({
858 }, 1116 },
859 1117
860 formSubmit: function(e) { 1118 formSubmit: function(e) {
861 - console.log("date", Date.parse(new Date(this.data.birthday)) / 1000)  
862 var regEmail = new RegExp("^[a-z0-9]+([._\\-]*[a-z0-9])*@([a-z0-9]+[-a-z0-9]*[a-z0-9]+.){1,20}[a-z0-9]+$"); 1119 var regEmail = new RegExp("^[a-z0-9]+([._\\-]*[a-z0-9])*@([a-z0-9]+[-a-z0-9]*[a-z0-9]+.){1,20}[a-z0-9]+$");
863 var regMobile = /^(13[0-9]|14[5-9]|15[012356789]|166|17[0-8]|18[0-9]|19[8-9])[0-9]{8}$/; 1120 var regMobile = /^(13[0-9]|14[5-9]|15[012356789]|166|17[0-8]|18[0-9]|19[8-9])[0-9]{8}$/;
864 var regname = /^[\u4E00-\u9FA5\uf900-\ufa2d·s]{2,20}$/; 1121 var regname = /^[\u4E00-\u9FA5\uf900-\ufa2d·s]{2,20}$/;
@@ -880,6 +1137,19 @@ Page({ @@ -880,6 +1137,19 @@ Page({
880 this.showtoast('请输入正确姓名'); 1137 this.showtoast('请输入正确姓名');
881 return 1138 return
882 } 1139 }
  1140 + if (this.data.countryData.selected.length < 1) {
  1141 + this.showtoast('请选择国籍');
  1142 + return
  1143 + }
  1144 + if (this.data.hasOtherCard && !this.data.firstEntryDate.datelong) {
  1145 + this.showtoast('请选择首次入境时间');
  1146 + return
  1147 + }
  1148 + if (this.data.hasOtherCard && !this.data.predictLeaveDate.datelong) {
  1149 + this.showtoast('请选择预计离境时间');
  1150 + return
  1151 + }
  1152 +
883 if (this.data.mobile.length < 1) { 1153 if (this.data.mobile.length < 1) {
884 this.showtoast('请输入手机号码'); 1154 this.showtoast('请输入手机号码');
885 return 1155 return
@@ -899,11 +1169,16 @@ Page({ @@ -899,11 +1169,16 @@ Page({
899 return 1169 return
900 } 1170 }
901 } 1171 }
902 -  
903 - // if (formdata.email && formdata.email.length > 0 && !regEmail.test(formdata.email)) {  
904 - // this.showtoast('邮箱格式有误');  
905 - // return  
906 - // } 1172 + if (this.data.contactAddress_haschanged || this.data.taxInfo.contact_address.province_code) {//选择了地址
  1173 + if (formdata.contact_address_detail.length < 1) {
  1174 + this.showtoast('请填写详细联系地址');
  1175 + return
  1176 + }
  1177 + }
  1178 + if (formdata.email && formdata.email.length > 0 && !regEmail.test(formdata.email)) {
  1179 + this.showtoast('邮箱格式有误');
  1180 + return
  1181 + }
907 // if (formdata.email && formdata.email.length > 0 && !format.checkEmail(formdata.email)) { 1182 // if (formdata.email && formdata.email.length > 0 && !format.checkEmail(formdata.email)) {
908 // this.showtoast('邮箱格式有误'); 1183 // this.showtoast('邮箱格式有误');
909 // return 1184 // return
@@ -988,15 +1263,19 @@ Page({ @@ -988,15 +1263,19 @@ Page({
988 data: { 1263 data: {
989 'certification_status': that.getCertifyStatus(formdata), 1264 'certification_status': that.getCertifyStatus(formdata),
990 "name": that.data.name, 1265 "name": that.data.name,
  1266 + "other_name": that.data.other_name,
991 "family_ties": '本人',//that.data.relativeData.selected, 1267 "family_ties": '本人',//that.data.relativeData.selected,
992 - "native": "中国",  
993 - "taxpayer_type":"居民",  
994 - "is_overseas_personnel": "否",  
995 - "id_card_type": that.data.cardtypeData.selected, 1268 + "native": that.data.countryData.selected,
  1269 + "taxpayer_type": that.data.taxpayerTypeData.selected,
  1270 + "is_overseas_personnel": that.data.overseas,
  1271 + "id_card_type": ''+that.data.cardtypeData.selected_code,
996 "id_card_no": that.data.card_number, 1272 "id_card_no": that.data.card_number,
  1273 + "other_id_card_type": that.data.otherCardtypeData.selected_code,
  1274 + "other_id_card_no": that.data.other_card_number,
997 "gender": that.data.genderData.selected, 1275 "gender": that.data.genderData.selected,
998 "birth_date": that.data.long_birth_date, 1276 "birth_date": that.data.long_birth_date,
999 - 1277 + "first_entry_date": that.data.firstEntryDate.datelong,
  1278 + "predict_leave_date": that.data.predictLeaveDate.datelong,
1000 "mobile": that.data.mobile, 1279 "mobile": that.data.mobile,
1001 "current_address": request_current_address, 1280 "current_address": request_current_address,
1002 "current_address_detail": formdata.current_address_detail, 1281 "current_address_detail": formdata.current_address_detail,
@@ -1017,8 +1296,8 @@ Page({ @@ -1017,8 +1296,8 @@ Page({
1017 "is_lonely_man": that.data.lonelyolderInfo.selected, 1296 "is_lonely_man": that.data.lonelyolderInfo.selected,
1018 "comment": formdata.comment, 1297 "comment": formdata.comment,
1019 1298
1020 - // "contact_address": request_contact_address ? request_contact_address : that.data.taxInfo.contact_address_detail,  
1021 - // "contact_address_detail": formdata.contact_address_detail.length > 0 ? formdata.contact_address_detail : that.data.taxInfo.contact_address_detail, 1299 + "contact_address": request_contact_address,
  1300 + "contact_address_detail": formdata.contact_address_detail,
1022 1301
1023 // "join_date": that.data.startDate.selected.length > 0 ? Date.parse(new Date(that.data.startDate.selected)) / 1000 : this.data.taxInfo.join_date, 1302 // "join_date": that.data.startDate.selected.length > 0 ? Date.parse(new Date(that.data.startDate.selected)) / 1000 : this.data.taxInfo.join_date,
1024 // "separate_date": that.data.endDate.selected.length > 0 ? Date.parse(new Date(that.data.endDate.selected)) / 1000 : this.data.taxInfo.separate_date, 1303 // "separate_date": that.data.endDate.selected.length > 0 ? Date.parse(new Date(that.data.endDate.selected)) / 1000 : this.data.taxInfo.separate_date,
@@ -29,7 +29,7 @@ @@ -29,7 +29,7 @@
29 <text class='text_777_30 float_left' style='line-height: 90rpx'>证照号码</text> 29 <text class='text_777_30 float_left' style='line-height: 90rpx'>证照号码</text>
30 <view> 30 <view>
31 <image wx:if="{{isIdCard}}" class='image_camera float_right' src='/images/camera.png' bindtap='getIdInfo' hidden="{{taxInfo.certification_status=='active' && taxInfo.id_card_no.length>0}}"></image> 31 <image wx:if="{{isIdCard}}" class='image_camera float_right' src='/images/camera.png' bindtap='getIdInfo' hidden="{{taxInfo.certification_status=='active' && taxInfo.id_card_no.length>0}}"></image>
32 - <input class='input_wrap' disabled="{{taxInfo.certification_status=='active' && taxInfo.id_card_no.length>0}}" placeholder="请输入证照号码" value="{{card_number}}" name='id_card_no' maxlength='18' bindblur='idcardblur' bindinput = 'bindinputcardnum' type='idcard'></input> 32 + <input class='input_wrap' disabled="{{taxInfo.certification_status=='active' && taxInfo.id_card_no.length>0}}" placeholder="请输入证照号码" value="{{card_number}}" name='id_card_no' maxlength='30' bindblur='idcardblur' bindinput = 'bindinputcardnum' type="{{isIdCard?'idcard':''}}"></input>
33 <!-- <input class='input_wrap' hidden="{{taxInfo.certification_status=='active'}}" placeholder="请输入证照号码" value='{{card_number}}' name='id_card_no' maxlength='18' bindblur='idcardblur' bindinput = 'bindinputcardnum'></input> 33 <!-- <input class='input_wrap' hidden="{{taxInfo.certification_status=='active'}}" placeholder="请输入证照号码" value='{{card_number}}' name='id_card_no' maxlength='18' bindblur='idcardblur' bindinput = 'bindinputcardnum'></input>
34 <input class='input_wrap' hidden="{{taxInfo.certification_status!='active'}}" placeholder="{{card_number?card_number:'身份证号获取失败'}}" name='id_card_no' disabled='true'></input> --> 34 <input class='input_wrap' hidden="{{taxInfo.certification_status!='active'}}" placeholder="{{card_number?card_number:'身份证号获取失败'}}" name='id_card_no' disabled='true'></input> -->
35 </view> 35 </view>
@@ -42,27 +42,53 @@ @@ -42,27 +42,53 @@
42 <input hidden="{{taxInfo.certification_status!='active'}}" class='input_wrap' placeholder="{{name}}" disabled="true" bindblur='bindinputname' style='line-height: 90rpx'></input> --> 42 <input hidden="{{taxInfo.certification_status!='active'}}" class='input_wrap' placeholder="{{name}}" disabled="true" bindblur='bindinputname' style='line-height: 90rpx'></input> -->
43 </view> 43 </view>
44 <view class="divide_line_30"></view> 44 <view class="divide_line_30"></view>
  45 + <template is="picker_cell_normal" data="{{...countryData}}" />
45 46
46 - <view class='item_body'> 47 + <!-- <view class='item_body'>
47 <text class='red_star_right_10'>*</text> 48 <text class='red_star_right_10'>*</text>
48 <text class='text_777_30 float_left' style='line-height: 90rpx'>国籍</text> 49 <text class='text_777_30 float_left' style='line-height: 90rpx'>国籍</text>
49 <text class='text_black_30 float_right' style='line-height: 90rpx'>中国</text> 50 <text class='text_black_30 float_right' style='line-height: 90rpx'>中国</text>
50 - </view> 51 + </view> -->
51 <view class="divide_line_30"></view> 52 <view class="divide_line_30"></view>
52 - <view class='item_body'> 53 + <template is="picker_cell_normal" data="{{...taxpayerTypeData}}" />
  54 + <!-- <view class='item_body'>
53 <text class='red_star_right_10'>*</text> 55 <text class='red_star_right_10'>*</text>
54 <text class='text_777_30 float_left' style='line-height: 90rpx'>纳税人类型</text> 56 <text class='text_777_30 float_left' style='line-height: 90rpx'>纳税人类型</text>
55 <text class='text_black_30 float_right' style='line-height: 90rpx'>居民</text> 57 <text class='text_black_30 float_right' style='line-height: 90rpx'>居民</text>
56 - </view> 58 + </view> -->
57 <view class="divide_line_30"></view> 59 <view class="divide_line_30"></view>
58 <view class='item_body'> 60 <view class='item_body'>
59 <text class='red_star_right_10'>*</text> 61 <text class='red_star_right_10'>*</text>
60 <text class='text_777_30 float_left' style='line-height: 90rpx'>是否境外人员</text> 62 <text class='text_777_30 float_left' style='line-height: 90rpx'>是否境外人员</text>
61 - <text class='text_black_30 float_right' style='line-height: 90rpx'>否</text>  
62 - </view>  
63 - <view class="divide_line_30"></view>  
64 - 63 + <text class='text_black_30 float_right' style='line-height: 90rpx'>{{overseas}}</text>
  64 + </view>
  65 + <view wx:if='{{hasOtherCard}}'>
  66 + <view class="divide_line_30"></view>
  67 + <template is="picker_cell_normal" data="{{...firstEntryDate}}" />
  68 + <view class="divide_line_30"></view>
  69 + <template is="picker_cell_normal" data="{{...predictLeaveDate}}" />
  70 + </view>
65 <view hidden='{{!isshow01}}'> 71 <view hidden='{{!isshow01}}'>
  72 + <view wx:if='{{hasOtherCard}}'>
  73 + <view class="divide_line_30"></view>
  74 + <template is="picker_cell_normal" data="{{...otherCardtypeData}}" />
  75 + <view class="divide_line_30"></view>
  76 + <view class='item_body'>
  77 + <!-- <text class='red_star_right_10'>*</text> -->
  78 + <text class='text_777_30 float_left head_in' style='line-height: 90rpx'>其他证照号码</text>
  79 + <view>
  80 + <input class='input_wrap' placeholder="请输入证照号码" value="{{other_card_number}}" name='other_id_card_no' maxlength='30'></input>
  81 + </view>
  82 + </view>
  83 + <view class="divide_line_30"></view>
  84 + <template is="picker_cell_normal" data="{{...birthCountryData}}" />
  85 + <view class="divide_line_30"></view>
  86 + <view class='item_body'>
  87 + <text class='text_777_30 float_left head_in' style='line-height: 90rpx'>{{nameText}}</text>
  88 + <input class='input_wrap' placeholder="请输入{{nameText}}" value='{{other_name}}' bindblur='bindOtherName' style='line-height: 90rpx'></input>
  89 + </view>
  90 +
  91 + </view>
66 <view class="divide_line_30"></view> 92 <view class="divide_line_30"></view>
67 <template is="picker_cell_normal" data="{{...genderData}}" /> 93 <template is="picker_cell_normal" data="{{...genderData}}" />
68 <view class="divide_line_30"></view> 94 <view class="divide_line_30"></view>
@@ -108,10 +134,19 @@ @@ -108,10 +134,19 @@
108 <view class="divide_line_30"></view> 134 <view class="divide_line_30"></view>
109 <view class='item_body '> 135 <view class='item_body '>
110 <text class='text_666_30 float_left head_in' style='line-height: 90rpx'>详细地址</text> 136 <text class='text_666_30 float_left head_in' style='line-height: 90rpx'>详细地址</text>
111 - <input class='input_wrap ' name='huji_address_detail' placeholder-class='text_999_30' placeholder='请输入详细户籍地址' value='{{huji_address_detail}}'></input> 137 + <input class='input_wrap ' name='huji_address_detail' placeholder-class='text_999_30' placeholder='请输入详细户籍地址' value='{{taxInfo.huji_address_detail}}'></input>
112 </view> 138 </view>
113 <view class="divide_line_30"></view> 139 <view class="divide_line_30"></view>
114 - 140 + <view wx:if='{{hasOtherCard}}' >
  141 + <template is="picker_cell_normal" data="{{...contactaddressInfo}}" />
  142 + <view class="divide_line_30"></view>
  143 + <view class='item_body '>
  144 + <text class='text_666_30 float_left head_in' style='line-height: 90rpx'>详细地址</text>
  145 + <input class='input_wrap ' name='contact_address_detail' placeholder-class='text_999_30' placeholder='请输入详细联系地址' value='{{taxInfo.contact_address_detail}}'></input>
  146 + </view>
  147 + <view class="divide_line_30"></view>
  148 + </view>
  149 +
115 <view class='item_body'> 150 <view class='item_body'>
116 <text class='text_666_30 float_left head_in' style='line-height: 90rpx'>电子邮箱</text> 151 <text class='text_666_30 float_left head_in' style='line-height: 90rpx'>电子邮箱</text>
117 <input class='input_wrap' name='email' value='{{taxInfo.email}}' placeholder='请输入电子邮箱' placeholder-class='text_999_30' maxlength='32'></input> 152 <input class='input_wrap' name='email' value='{{taxInfo.email}}' placeholder='请输入电子邮箱' placeholder-class='text_999_30' maxlength='32'></input>
注册登录 后发表评论