From 7ee60910b65241c23574c02c79baa52d5edf9f6d Mon Sep 17 00:00:00 2001 From: "zhaoxingchang.sd" Date: Tue, 22 Oct 2024 11:23:38 +0800 Subject: [PATCH] =?UTF-8?q?fix:=E4=BF=AE=E6=94=B9=E9=82=AE=E7=AE=B1?= =?UTF-8?q?=E6=A0=BC=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- js/wxscaninvoice/writing.js | 62 ++++++++++++++++++++++++++++++------- 1 file changed, 51 insertions(+), 11 deletions(-) diff --git a/js/wxscaninvoice/writing.js b/js/wxscaninvoice/writing.js index 150b868..3e0dda3 100644 --- a/js/wxscaninvoice/writing.js +++ b/js/wxscaninvoice/writing.js @@ -300,10 +300,11 @@ function confirm_fplx_model(ele, typeMsg) { if ($ttType.val() === "个人") { setStorageMsg('lastFptt', $titleName.val()); //如果为全电票,购方名称需要特别说明以(个人)结尾, + const titleName = $.trim($titleName.val()); if (getFpzl() === "01" || getFpzl() === "02") { - $titleName.val("个人"); + $titleName.val(titleName + "(个人)"); }else{ - $titleName.val("个人"); + $titleName.val(titleName + "个人"); } //个人时调整文字示例,头部文字调整为"身份证号码",头部文字后的*不可见,input中的placeholder改为"请输入身份证号码", @@ -442,7 +443,6 @@ function getJSSDK(ele, num) { $titleName.val(nsrmc); $('#telephone').val(''); $('#email').val(''); - $ttType.val("个人"); $ttType.attr('data-id', "03"); $ttType.attr('data-value', "个人"); @@ -452,8 +452,6 @@ function getJSSDK(ele, num) { $('#taxpayerId').attr('placeholder', "请输入身份证号码"); } - - $ttType.attr('onclick', 'ttType(this)'); }); @@ -574,7 +572,6 @@ function nextStep() { $(".titleName").html(titleName); $titleName.val(titleName); } - } //如果确认框显示,需要设置税号对应的文字,个人时调整文字示例为"身份证号码" $('#confirm_nsrsbh').text("身份证号码"); @@ -589,6 +586,7 @@ function nextStep() { function sureStep(){ $(".seeCardMsg_shade").css("display", "none"); const titleName = $.trim($titleName.val()); + let taxpayerId = $.trim($taxpayerId.val()); let telephone = $.trim($("#telephone").val()); let email = $.trim($("#email").val()); @@ -657,6 +655,12 @@ function sureStep(){ pageOrderItemInfo.push(pageOrderItem); } } + if((getFpzl()==="01" || getFpzl()==="02") && mpbs ==="03"){ + if (!titleName.includes('(个人)')) { + alert_timing_open("抬头类型是个人时,发票抬头结尾必须包含(个人)"); + return false; + } + } const invoiceMes = { ghfqylx: mpbs, ghfMc: titleName, @@ -1098,11 +1102,16 @@ function titleOnblur() { } const fpzl = getFpzl(); const ttlx = $.trim($ttType.val()); - if(fpzl==="02" && ttlx ==="个人"){ - if (titleName.includes('(个人)')) { - alert_timing_open("抬头类型是个人时,发票抬头不能包含(个人)"); - return false; - } + + if((getFpzl()==="02" || getFpzl()==="01") && ttlx ==="个人"){ + console.log(titleName) + // if (titleName.includes('(个人)')) { + // // let name = titleName + "(个人)"; + // // $(".titleName").html(titleName); + // // $titleName.val(titleName); + // alert_timing_open("抬头类型是个人时,发票抬头必须包含(个人)"); + // return false; + // } } const length = checkLength(titleName); if (length > 100) { @@ -1191,6 +1200,10 @@ function emailOnblur() { return false; } } + if (!isValidEmail(email)) { + alert_timing_open("邮箱格式错误,请检查后重新提交"); + return false; + } if (length !== 0 && !regexEl.test(email)) { alert_timing_open("邮箱格式不对"); return false; @@ -1214,8 +1227,35 @@ function emailOnblur() { return false; } } + return true; } +function isValidEmail(email) { + // 定义不同的正则表达式 + // 定义用于匹配QQ邮箱地址的正则表达式 + const qqEmailRegex = /^[a-zA-Z0-9]+@qq\.com$/; + + // 定义用于匹配钉钉邮箱地址的正则表达式 + const dingtalkEmailRegex = /^[a-zA-Z0-9]+@dingtalk\.com$/; + + // 定义用于匹配网易邮箱地址的正则表达式,包括163.com, 126.com, yeah.net + const neteaseEmailRegex = /^[a-zA-Z0-9]+@(163\.com|126\.com|yeah\.net)$/; + + // 定义用于匹配阿里云邮箱地址的正则表达式 + const aliyunEmailRegex = /^[a-zA-Z0-9]+@aliyun\.com$/; + + // 定义用于匹配微软邮箱地址的正则表达式,包括outlook.com, hotmail.com, live.com + const microsoftEmailRegex = /^[a-zA-Z0-9]+@(outlook\.com|hotmail\.com|live\.com)$/; + + // 检查是否符合任一邮箱格式 + return ( + qqEmailRegex.test(email) || + dingtalkEmailRegex.test(email) || + neteaseEmailRegex.test(email) || + aliyunEmailRegex.test(email) || + microsoftEmailRegex.test(email) + ); +} /*验证发票类型*/ function fplxOnblur() {