var p1 = _g().parameterEl.getWidgetByName("fgs").getValue(); var p2 = _g().parameterEl.getWidgetByName("start_date").getValue(); var p3 = _g().parameterEl.getWidgetByName("end_date").getValue(); //alert(p2); var url = '${servletURL}?viewlet=SJKSH/sjks_jira/SJKS-221/SJKS651_exxkqbb-fgs.cpt&fgs=' + p1 + '&start_date=' + p2+'&end_date='+p3+ '&format=excel&extype=simple'; //alert(url); //alert(REPORT_URL); /*var form = $("<form>"); form.attr('style', 'display:none'); form.attr('target', ''); form.attr('method', 'post'); form.attr('action', REPORT_URL) $('body').append(form); form.submit();*/ if(p2.length==0){ alert("请选择统计年月!"); return; } if(p3.length==0){ alert("请选择截止日期!"); return; } var p4=p2+"01"; if(p4>p3){ alert("统计年月不能大于截止日期!"); return; } var reg = /^(20|19){1}[0-9]{2}(((0){1}[1-9]{1})|((1){1}(0|1|2){1}))$/; if (!reg.test(p2)) { alert("统计年月格式有误!"); return; } var re = /^([\d]{4}((((0[13578]|1[02])((0[1-9])|([12][0-9])|(3[01])))|(((0[469])|11)((0[1-9])|([12][0-9])|30))|(02((0[1-9])|(1[0-9])|(2[0-8])))))|((((([02468][048])|([13579][26]))00)|([0-9]{2}(([02468][048])|([13579][26]))))(((0[13578]|1[02])((0[1-9])|([12][0-9])|(3[01])))|(((0[469])|11)((0[1-9])|([12][0-9])|30))|(02((0[1-9])|(1[0-9])|(2[0-9]))))){4})$/; if (!re.test(p3)) { alert("截止日期格式有误!"); return; } var exportName='E衔训考勤报表-分公司汇总表'; FR.Msg.alert("提示","正在导出,请稍等......"); $("#popup_container .fr-core-btn.ui-state-enabled.fr-core-btn-style-blue").hide();//隐藏确定 $("#popup_close").hide();//隐藏X let xhr = new XMLHttpRequest() xhr.open('GET', encodeURI(url),true) // 这部至关重要,命令xhr返回给你的时blob(二进制大对象)类型的数据 xhr.responseType = 'blob' xhr.send() xhr.onreadystatechange = function () { if (xhr.readyState === 4 && xhr.status === 200) { const aTag = document.createElement('a'); aTag.href = URL.createObjectURL(this.response); aTag.download = exportName+'.xlsx'; aTag.click(); FR.Msg.alert("提示","导出完成!"); } else { FR.Msg.alert("提示","导出失败!"); } } |