Bladeren bron

提交证明打印修改

zqy 1 maand geleden
bovenliggende
commit
c67775df2a

+ 239 - 0
GDYSL/js/deploy/easweb.ear/shr_web.war/addon/customer/web/js/CommonCertificationBillListEx.js

@@ -0,0 +1,239 @@
+shr.defineClass("shr.empcertification.CommonCertificationBillListEx", shr.empcertification.CommonCertificationBillList, {
+    pageStep: 3,
+    initalizeDOM: function () {
+
+        shr.empcertification.CommonCertificationBillListEx.superClass.initalizeDOM.call(this);
+    },
+    previewPrintAction : function () {
+        var _self = this;
+        var errorXhr = "";
+        var selectedIds = $("#grid").jqGrid("getSelectedRows");
+        var isSpecial = $('#grid').jqGrid("getCell", selectedIds[0], "isSpecial"); //是否其他模板
+        if (selectedIds == undefined || selectedIds.length==0) {
+            shr.showWarning({
+                message: jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_16,
+                hideAfter: null
+            });
+            return;
+        }
+        if(selectedIds.length>1){
+            shr.showWarning({
+                message: jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_19,
+                hideAfter: null
+            });
+            return;
+        }
+        if(isSpecial=="1"){//是否其他模板
+            shr.showWarning({
+                message: jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_11,
+                hideAfter: null
+            });
+            return false;
+        }
+        var rowData = $('#grid').jqGrid('getRowData', selectedIds);
+        var drawUpMode = rowData.drawUpMode; //开具形式 1.纸质 2.电子
+        if("2" == drawUpMode){
+            shr.customer.gtiit.CommonCertificationBillListEx.superClass.previewPrintAction.call(_self);
+        }else {
+            _self.previewPrintActionV2();
+        }
+    },
+    previewPrintActionV2 : function () {
+        var _self = this;
+        var errorXhr = "";
+        var selectedIds = $("#grid").jqGrid("getSelectedRows");
+        var isSpecial = $('#grid').jqGrid("getCell", selectedIds[0], "isSpecial"); //是否其他模板
+        if (selectedIds == undefined || selectedIds.length==0) {
+            shr.showWarning({
+                message: jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_16,
+                hideAfter: null
+            });
+            return;
+        }
+        if(selectedIds.length>1){
+            shr.showWarning({
+                message: jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_19,
+                hideAfter: null
+            });
+            return;
+        }
+        if(isSpecial=="1"){//是否其他模板
+            shr.showWarning({
+                message: jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_11,
+                hideAfter: null
+            });
+            return false;
+        }
+        _self.remoteCall({
+            method : "checkButtonDataPermission",
+            param : {
+                billId : selectedIds
+            },
+            async: false,
+            success : function(data){
+
+            },
+            error: function (xhr, data) {
+                errorXhr = xhr;
+                return;
+            }
+        });
+        if(errorXhr != undefined && errorXhr != null && errorXhr != ""){
+            if(errorXhr.result == "error"){
+                shr.showError({
+                    message: errorXhr.summary,
+                    hideAfter: null
+                });
+                return;
+            }
+        }
+        var rowData = $('#grid').jqGrid('getRowData', selectedIds);
+        var drawUpMode = rowData.drawUpMode; //开具形式 1.纸质 2.电子
+        var certificationStatus = rowData.certificationStatus; //证明状态
+        var isSign = rowData.isSign; // 是否已签署
+        var signNo = rowData.signNO;
+        var billId = rowData.id;
+        if("2" == drawUpMode && signNo != null && signNo != undefined && signNo != '' && "1" == isSign){//已签署
+            var _time1 = 0;
+            var showMsg = "";
+            var intervalID = setInterval(function() {
+                _time1++;
+                shr.callService({
+                    serviceName : 'electronicLaborRefreshLocalService',
+                    param : {
+                        contractNo : signNo,
+                        billId : billId,
+                        isDefault : "1"
+                    },
+                    async : false,
+                    success : function(response) {
+                        if(response&&response.code == 0){
+                            var pdfurl = '';
+                            pdfurl = response.data[0].sealInfo.previewOfPcUrl;
+
+                            var downloadUrl = response.data[0].sealInfo.downloadUrl;
+                            _self.convertPdfToWord(pdfurl,downloadUrl,"已盖章");
+                            shr.block.hide();
+                            // shr.openNew(pdfurl);
+                            clearInterval(intervalID);
+                        } else {
+                            if (msg != "") {
+                                showMsg = msg;
+                                return;
+                            } else {
+                                showMsg = jsBizMultLan.ssc_otherElectronicContractPreSignEdit_27063837_i18n_1;
+                                return;
+                            }
+                        }
+                    },
+                    error: function(xhr,data){
+
+                    }
+                });
+                if (_time1 > 10){
+                    clearInterval(intervalID);
+                    if (!showMsg || showMsg == "") {
+                        showMsg = jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_13
+                    }
+                    shr.block.hide();
+                    shr.showError({
+                        message: showMsg
+                    });
+                }
+            }, 500);
+            return;
+        }else{
+            var newDate = new Date();
+            var hourStr = newDate.getHours()<10?"0"+newDate.getHours().toString():newDate.getHours().toString();
+            var minuteStr = newDate.getMinutes()<10?"0"+newDate.getMinutes().toString():newDate.getMinutes().toString();
+            var secondStr = newDate.getSeconds()<10?"0"+newDate.getSeconds().toString():newDate.getSeconds().toString();
+            var nowTime = hourStr+minuteStr+secondStr;
+            var contractNo = rowData.number;
+            shr.block.show();
+            shr.callService({
+                serviceName : 'oldEmpCreateCertificationService',
+                param : {
+                    billId : billId,
+                    posNum : nowTime
+                },
+                async : false,
+                success : function(response) {
+                    console.log('createCertificationService success');
+                    var _time3 = 0;
+                    var showMsg = "";
+                    var intervalID = setInterval(function() {
+                        _time3++;
+                        shr.callService({
+                            serviceName : 'electronicLaborRefreshLocalService',
+                            param : {
+                                contractNo : contractNo+"-"+nowTime,
+                                billId : billId,
+                                isDefault : "1"
+                            },
+                            async : false,
+                            success : function(response) {
+                                if(response&&response.code == 0&&response.data[0]){
+                                    var pdfurl = '';
+                                    pdfurl = response.data[0].nosealInfo.previewOfPcUrl;
+                                    var downloadUrl = response.data[0].nosealInfo.downloadUrl;
+                                    _self.convertPdfToWord(pdfurl,downloadUrl,"未盖章");
+                                    shr.block.hide();
+                                    // shr.openNew(pdfurl);
+                                    clearInterval(intervalID);
+                                } else {
+                                    showMsg = response.msg;
+                                }
+                            },
+                            error: function(xhr,data){
+
+                            }
+                        });
+                        if (_time3 > 10){
+                            shr.customer.gtiit.CommonCertificationBillListEx.superClass.previewPrintAction.call(_self);
+                            shr.block.hide();
+                            if (showMsg == "") {
+                                showMsg = jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_13;
+                            }
+                            shr.showError({
+                                message: showMsg
+                            });
+                            clearInterval(intervalID);
+                        }
+                    }, 500);
+                },
+                error: function(xhr,data){
+                    shr.showError({
+                        message: jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_13
+                    });
+                    return;
+                }
+            });
+        }
+    },
+    convertPdfToWord: function(previewOfPcUrl, downloadUrl, isSign){
+        var _self = this;
+        previewOfPcUrl = decodeURIComponent(previewOfPcUrl);
+        const contractNo = _self.getContractParamsFromURL(previewOfPcUrl);
+        downloadUrl = encodeURIComponent(downloadUrl);
+        const date = new Date();
+        const year = date.getFullYear();
+        const month = (date.getMonth() + 1).toString().padStart(2, "0");
+        const day = date.getDate().toString().padStart(2, "0");
+        var currentDate = year+month+day;
+        var fileName = contractNo + isSign + "-" + currentDate + ".docx";
+
+        var urlinner = shr.getContextPath() + shr.dynamicURL + "?downloadUrl="+downloadUrl+"&fileName="+fileName+"&method=convertPdfToWord&handler=com.kingdee.shr.customer.gtiit.handler.HRcertificationbillListHandlerEx"+"&uipk="+shr.getUrlRequestParam('uipk');
+        var downloadLink = document.createElement('a');
+        downloadLink.href = urlinner;
+        document.body.appendChild(downloadLink);
+        downloadLink.click();
+        document.body.removeChild(downloadLink);
+    },
+    getContractParamsFromURL: function(url){
+        // 定义正则表达式
+        const regex = /[?&]contractNo(=([^&#]*)|&|#|$)/;
+        // 使用正则表达式获取参数值
+        const paramValue = decodeURIComponent(regex.exec(url)[2].replace(/\+/g, ' '));
+        return paramValue;
+    },
+});

+ 241 - 0
GDYSL/js/deploy/easweb.ear/shr_web.war/addon/customer/web/js/HRCertificationBillListEx.js

@@ -0,0 +1,241 @@
+/**
+ *HR人事证明单据列表js基类
+ */
+shr.defineClass("shr.customer.gtiit.HRCertificationBillListEx", shr.empCertification.HRCertificationBillList, {
+    initalizeDOM: function () {
+        shr.customer.gtiit.HRCertificationBillListEx.superClass.initalizeDOM.call(this);
+
+    },
+    previewPrintAction : function () {
+        var _self = this;
+        var errorXhr = "";
+        var selectedIds = $("#grid").jqGrid("getSelectedRows");
+        var isSpecial = $('#grid').jqGrid("getCell", selectedIds[0], "isSpecial"); //是否其他模板
+        if (selectedIds == undefined || selectedIds.length==0) {
+            shr.showWarning({
+                message: jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_16,
+                hideAfter: null
+            });
+            return;
+        }
+        if(selectedIds.length>1){
+            shr.showWarning({
+                message: jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_19,
+                hideAfter: null
+            });
+            return;
+        }
+        if(isSpecial=="1"){//是否其他模板
+            shr.showWarning({
+                message: jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_11,
+                hideAfter: null
+            });
+            return false;
+        }
+        var rowData = $('#grid').jqGrid('getRowData', selectedIds);
+        var drawUpMode = rowData.drawUpMode; //开具形式 1.纸质 2.电子
+        if("2" == drawUpMode){
+            shr.customer.gtiit.HRCertificationBillListEx.superClass.previewPrintAction.call(_self);
+        }else {
+            _self.previewPrintActionV2();
+        }
+    },
+    previewPrintActionV2 : function () {
+        var _self = this;
+        var errorXhr = "";
+        var selectedIds = $("#grid").jqGrid("getSelectedRows");
+        var isSpecial = $('#grid').jqGrid("getCell", selectedIds[0], "isSpecial"); //是否其他模板
+        if (selectedIds == undefined || selectedIds.length==0) {
+            shr.showWarning({
+                message: jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_16,
+                hideAfter: null
+            });
+            return;
+        }
+        if(selectedIds.length>1){
+            shr.showWarning({
+                message: jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_19,
+                hideAfter: null
+            });
+            return;
+        }
+        if(isSpecial=="1"){//是否其他模板
+            shr.showWarning({
+                message: jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_11,
+                hideAfter: null
+            });
+            return false;
+        }
+        _self.remoteCall({
+            method : "checkButtonDataPermission",
+            param : {
+                billId : selectedIds
+            },
+            async: false,
+            success : function(data){
+
+            },
+            error: function (xhr, data) {
+                errorXhr = xhr;
+                return;
+            }
+        });
+        if(errorXhr != undefined && errorXhr != null && errorXhr != ""){
+            if(errorXhr.result == "error"){
+                shr.showError({
+                    message: errorXhr.summary,
+                    hideAfter: null
+                });
+                return;
+            }
+        }
+        var rowData = $('#grid').jqGrid('getRowData', selectedIds);
+        var drawUpMode = rowData.drawUpMode; //开具形式 1.纸质 2.电子
+        var certificationStatus = rowData.certificationStatus; //证明状态
+        var isSign = rowData.isSign; // 是否已签署
+        var signNo = rowData.signNO;
+        var billId = rowData.id;
+        if("2" == drawUpMode && signNo != null && signNo != undefined && signNo != '' && "1" == isSign){//已签署
+            var _time1 = 0;
+            var showMsg = "";
+            var intervalID = setInterval(function() {
+                _time1++;
+                shr.callService({
+                    serviceName : 'electronicLaborRefreshLocalService',
+                    param : {
+                        contractNo : signNo,
+                        billId : billId,
+                        isDefault : "1"
+                    },
+                    async : false,
+                    success : function(response) {
+                        if(response&&response.code == 0){
+                            var pdfurl = '';
+                            pdfurl = response.data[0].sealInfo.previewOfPcUrl;
+
+                            var downloadUrl = response.data[0].sealInfo.downloadUrl;
+                            _self.convertPdfToWord(pdfurl,downloadUrl,"已盖章");
+                            shr.block.hide();
+                            // shr.openNew(pdfurl);
+                            clearInterval(intervalID);
+                        } else {
+                            if (msg != "") {
+                                showMsg = msg;
+                                return;
+                            } else {
+                                showMsg = jsBizMultLan.ssc_otherElectronicContractPreSignEdit_27063837_i18n_1;
+                                return;
+                            }
+                        }
+                    },
+                    error: function(xhr,data){
+
+                    }
+                });
+                if (_time1 > 10){
+                    clearInterval(intervalID);
+                    if (!showMsg || showMsg == "") {
+                        showMsg = jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_13
+                    }
+                    shr.block.hide();
+                    shr.showError({
+                        message: showMsg
+                    });
+                }
+            }, 500);
+            return;
+        }else{
+            var newDate = new Date();
+            var hourStr = newDate.getHours()<10?"0"+newDate.getHours().toString():newDate.getHours().toString();
+            var minuteStr = newDate.getMinutes()<10?"0"+newDate.getMinutes().toString():newDate.getMinutes().toString();
+            var secondStr = newDate.getSeconds()<10?"0"+newDate.getSeconds().toString():newDate.getSeconds().toString();
+            var nowTime = hourStr+minuteStr+secondStr;
+            var contractNo = rowData.number;
+            shr.block.show();
+            shr.callService({
+                serviceName : 'oldEmpCreateCertificationService',
+                param : {
+                    billId : billId,
+                    posNum : nowTime
+                },
+                async : false,
+                success : function(response) {
+                    console.log('createCertificationService success');
+                    var _time3 = 0;
+                    var showMsg = "";
+                    var intervalID = setInterval(function() {
+                        _time3++;
+                        shr.callService({
+                            serviceName : 'electronicLaborRefreshLocalService',
+                            param : {
+                                contractNo : contractNo+"-"+nowTime,
+                                billId : billId,
+                                isDefault : "1"
+                            },
+                            async : false,
+                            success : function(response) {
+                                if(response&&response.code == 0&&response.data[0]){
+                                    var pdfurl = '';
+                                    pdfurl = response.data[0].nosealInfo.previewOfPcUrl;
+                                    var downloadUrl = response.data[0].nosealInfo.downloadUrl;
+                                    _self.convertPdfToWord(pdfurl,downloadUrl,"未盖章");
+                                    shr.block.hide();
+                                    // shr.openNew(pdfurl);
+                                    clearInterval(intervalID);
+                                } else {
+                                    showMsg = response.msg;
+                                }
+                            },
+                            error: function(xhr,data){
+
+                            }
+                        });
+                        if (_time3 > 10){
+                            shr.customer.gtiit.HRCertificationBillListEx.superClass.previewPrintAction.call(_self);
+                            shr.block.hide();
+                            if (showMsg == "") {
+                                showMsg = jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_13;
+                            }
+                            shr.showError({
+                                message: showMsg
+                            });
+                            clearInterval(intervalID);
+                        }
+                    }, 500);
+                },
+                error: function(xhr,data){
+                    shr.showError({
+                        message: jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_13
+                    });
+                    return;
+                }
+            });
+        }
+    },
+    convertPdfToWord: function(previewOfPcUrl, downloadUrl, isSign){
+        var _self = this;
+        previewOfPcUrl = decodeURIComponent(previewOfPcUrl);
+        const contractNo = _self.getContractParamsFromURL(previewOfPcUrl);
+        downloadUrl = encodeURIComponent(downloadUrl);
+        const date = new Date();
+        const year = date.getFullYear();
+        const month = (date.getMonth() + 1).toString().padStart(2, "0");
+        const day = date.getDate().toString().padStart(2, "0");
+        var currentDate = year+month+day;
+        var fileName = contractNo + isSign + "-" + currentDate + ".docx";
+
+        var urlinner = shr.getContextPath() + shr.dynamicURL + "?downloadUrl="+downloadUrl+"&fileName="+fileName+"&method=convertPdfToWord&handler=com.kingdee.shr.customer.gtiit.handler.HRcertificationbillListHandlerEx"+"&uipk="+shr.getUrlRequestParam('uipk');
+        var downloadLink = document.createElement('a');
+        downloadLink.href = urlinner;
+        document.body.appendChild(downloadLink);
+        downloadLink.click();
+        document.body.removeChild(downloadLink);
+    },
+    getContractParamsFromURL: function(url){
+        // 定义正则表达式
+        const regex = /[?&]contractNo(=([^&#]*)|&|#|$)/;
+        // 使用正则表达式获取参数值
+        const paramValue = decodeURIComponent(regex.exec(url)[2].replace(/\+/g, ' '));
+        return paramValue;
+    },
+})

+ 239 - 0
GDYSL/js/deploy/easweb.ear/shr_web.war/addon/customer/web/js/HREmpCertificationBillHRListEx.js

@@ -0,0 +1,239 @@
+shr.defineClass("shr.empcertification.HREmpCertificationBillHRListEx", shr.empcertification.HREmpCertificationBillHRList, {
+    pageStep: 2,
+    initalizeDOM: function () {
+
+        shr.empcertification.HREmpCertificationBillHRListEx.superClass.initalizeDOM.call(this);
+    },
+    previewPrintAction : function () {
+        var _self = this;
+        var errorXhr = "";
+        var selectedIds = $("#grid").jqGrid("getSelectedRows");
+        var isSpecial = $('#grid').jqGrid("getCell", selectedIds[0], "isSpecial"); //是否其他模板
+        if (selectedIds == undefined || selectedIds.length==0) {
+            shr.showWarning({
+                message: jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_16,
+                hideAfter: null
+            });
+            return;
+        }
+        if(selectedIds.length>1){
+            shr.showWarning({
+                message: jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_19,
+                hideAfter: null
+            });
+            return;
+        }
+        if(isSpecial=="1"){//是否其他模板
+            shr.showWarning({
+                message: jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_11,
+                hideAfter: null
+            });
+            return false;
+        }
+        var rowData = $('#grid').jqGrid('getRowData', selectedIds);
+        var drawUpMode = rowData.drawUpMode; //开具形式 1.纸质 2.电子
+        if("2" == drawUpMode){
+            shr.customer.gtiit.HREmpCertificationBillHRListEx.superClass.previewPrintAction.call(_self);
+        }else {
+            _self.previewPrintActionV2();
+        }
+    },
+    previewPrintActionV2 : function () {
+        var _self = this;
+        var errorXhr = "";
+        var selectedIds = $("#grid").jqGrid("getSelectedRows");
+        var isSpecial = $('#grid').jqGrid("getCell", selectedIds[0], "isSpecial"); //是否其他模板
+        if (selectedIds == undefined || selectedIds.length==0) {
+            shr.showWarning({
+                message: jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_16,
+                hideAfter: null
+            });
+            return;
+        }
+        if(selectedIds.length>1){
+            shr.showWarning({
+                message: jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_19,
+                hideAfter: null
+            });
+            return;
+        }
+        if(isSpecial=="1"){//是否其他模板
+            shr.showWarning({
+                message: jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_11,
+                hideAfter: null
+            });
+            return false;
+        }
+        _self.remoteCall({
+            method : "checkButtonDataPermission",
+            param : {
+                billId : selectedIds
+            },
+            async: false,
+            success : function(data){
+
+            },
+            error: function (xhr, data) {
+                errorXhr = xhr;
+                return;
+            }
+        });
+        if(errorXhr != undefined && errorXhr != null && errorXhr != ""){
+            if(errorXhr.result == "error"){
+                shr.showError({
+                    message: errorXhr.summary,
+                    hideAfter: null
+                });
+                return;
+            }
+        }
+        var rowData = $('#grid').jqGrid('getRowData', selectedIds);
+        var drawUpMode = rowData.drawUpMode; //开具形式 1.纸质 2.电子
+        var certificationStatus = rowData.certificationStatus; //证明状态
+        var isSign = rowData.isSign; // 是否已签署
+        var signNo = rowData.signNO;
+        var billId = rowData.id;
+        if("2" == drawUpMode && signNo != null && signNo != undefined && signNo != '' && "1" == isSign){//已签署
+            var _time1 = 0;
+            var showMsg = "";
+            var intervalID = setInterval(function() {
+                _time1++;
+                shr.callService({
+                    serviceName : 'electronicLaborRefreshLocalService',
+                    param : {
+                        contractNo : signNo,
+                        billId : billId,
+                        isDefault : "1"
+                    },
+                    async : false,
+                    success : function(response) {
+                        if(response&&response.code == 0){
+                            var pdfurl = '';
+                            pdfurl = response.data[0].sealInfo.previewOfPcUrl;
+
+                            var downloadUrl = response.data[0].sealInfo.downloadUrl;
+                            _self.convertPdfToWord(pdfurl,downloadUrl,"已盖章");
+                            shr.block.hide();
+                            // shr.openNew(pdfurl);
+                            clearInterval(intervalID);
+                        } else {
+                            if (msg != "") {
+                                showMsg = msg;
+                                return;
+                            } else {
+                                showMsg = jsBizMultLan.ssc_otherElectronicContractPreSignEdit_27063837_i18n_1;
+                                return;
+                            }
+                        }
+                    },
+                    error: function(xhr,data){
+
+                    }
+                });
+                if (_time1 > 10){
+                    clearInterval(intervalID);
+                    if (!showMsg || showMsg == "") {
+                        showMsg = jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_13
+                    }
+                    shr.block.hide();
+                    shr.showError({
+                        message: showMsg
+                    });
+                }
+            }, 500);
+            return;
+        }else{
+            var newDate = new Date();
+            var hourStr = newDate.getHours()<10?"0"+newDate.getHours().toString():newDate.getHours().toString();
+            var minuteStr = newDate.getMinutes()<10?"0"+newDate.getMinutes().toString():newDate.getMinutes().toString();
+            var secondStr = newDate.getSeconds()<10?"0"+newDate.getSeconds().toString():newDate.getSeconds().toString();
+            var nowTime = hourStr+minuteStr+secondStr;
+            var contractNo = rowData.number;
+            shr.block.show();
+            shr.callService({
+                serviceName : 'oldEmpCreateCertificationService',
+                param : {
+                    billId : billId,
+                    posNum : nowTime
+                },
+                async : false,
+                success : function(response) {
+                    console.log('createCertificationService success');
+                    var _time3 = 0;
+                    var showMsg = "";
+                    var intervalID = setInterval(function() {
+                        _time3++;
+                        shr.callService({
+                            serviceName : 'electronicLaborRefreshLocalService',
+                            param : {
+                                contractNo : contractNo+"-"+nowTime,
+                                billId : billId,
+                                isDefault : "1"
+                            },
+                            async : false,
+                            success : function(response) {
+                                if(response&&response.code == 0&&response.data[0]){
+                                    var pdfurl = '';
+                                    pdfurl = response.data[0].nosealInfo.previewOfPcUrl;
+                                    var downloadUrl = response.data[0].nosealInfo.downloadUrl;
+                                    _self.convertPdfToWord(pdfurl,downloadUrl,"未盖章");
+                                    shr.block.hide();
+                                    // shr.openNew(pdfurl);
+                                    clearInterval(intervalID);
+                                } else {
+                                    showMsg = response.msg;
+                                }
+                            },
+                            error: function(xhr,data){
+
+                            }
+                        });
+                        if (_time3 > 10){
+                            shr.customer.gtiit.HREmpCertificationBillHRListEx.superClass.previewPrintAction.call(_self);
+                            shr.block.hide();
+                            if (showMsg == "") {
+                                showMsg = jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_13;
+                            }
+                            shr.showError({
+                                message: showMsg
+                            });
+                            clearInterval(intervalID);
+                        }
+                    }, 500);
+                },
+                error: function(xhr,data){
+                    shr.showError({
+                        message: jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_13
+                    });
+                    return;
+                }
+            });
+        }
+    },
+    convertPdfToWord: function(previewOfPcUrl, downloadUrl, isSign){
+        var _self = this;
+        previewOfPcUrl = decodeURIComponent(previewOfPcUrl);
+        const contractNo = _self.getContractParamsFromURL(previewOfPcUrl);
+        downloadUrl = encodeURIComponent(downloadUrl);
+        const date = new Date();
+        const year = date.getFullYear();
+        const month = (date.getMonth() + 1).toString().padStart(2, "0");
+        const day = date.getDate().toString().padStart(2, "0");
+        var currentDate = year+month+day;
+        var fileName = contractNo + isSign + "-" + currentDate + ".docx";
+
+        var urlinner = shr.getContextPath() + shr.dynamicURL + "?downloadUrl="+downloadUrl+"&fileName="+fileName+"&method=convertPdfToWord&handler=com.kingdee.shr.customer.gtiit.handler.HRcertificationbillListHandlerEx"+"&uipk="+shr.getUrlRequestParam('uipk');
+        var downloadLink = document.createElement('a');
+        downloadLink.href = urlinner;
+        document.body.appendChild(downloadLink);
+        downloadLink.click();
+        document.body.removeChild(downloadLink);
+    },
+    getContractParamsFromURL: function(url){
+        // 定义正则表达式
+        const regex = /[?&]contractNo(=([^&#]*)|&|#|$)/;
+        // 使用正则表达式获取参数值
+        const paramValue = decodeURIComponent(regex.exec(url)[2].replace(/\+/g, ' '));
+        return paramValue;
+    },
+});

+ 239 - 0
GDYSL/js/deploy/easweb.ear/shr_web.war/addon/customer/web/js/HRResignCertificationBillHRListEx.js

@@ -0,0 +1,239 @@
+shr.defineClass("shr.empcertification.HRResignCertificationBillHRListEx", shr.empcertification.HRResignCertificationBillHRList, {
+    pageStep: 1,
+    initalizeDOM: function () {
+
+        shr.empcertification.HRResignCertificationBillHRListEx.superClass.initalizeDOM.call(this);
+    },
+    previewPrintAction : function () {
+        var _self = this;
+        var errorXhr = "";
+        var selectedIds = $("#grid").jqGrid("getSelectedRows");
+        var isSpecial = $('#grid').jqGrid("getCell", selectedIds[0], "isSpecial"); //是否其他模板
+        if (selectedIds == undefined || selectedIds.length==0) {
+            shr.showWarning({
+                message: jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_16,
+                hideAfter: null
+            });
+            return;
+        }
+        if(selectedIds.length>1){
+            shr.showWarning({
+                message: jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_19,
+                hideAfter: null
+            });
+            return;
+        }
+        if(isSpecial=="1"){//是否其他模板
+            shr.showWarning({
+                message: jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_11,
+                hideAfter: null
+            });
+            return false;
+        }
+        var rowData = $('#grid').jqGrid('getRowData', selectedIds);
+        var drawUpMode = rowData.drawUpMode; //开具形式 1.纸质 2.电子
+        if("2" == drawUpMode){
+            shr.customer.gtiit.HRResignCertificationBillHRListEx.superClass.previewPrintAction.call(_self);
+        }else {
+            _self.previewPrintActionV2();
+        }
+    },
+    previewPrintActionV2 : function () {
+        var _self = this;
+        var errorXhr = "";
+        var selectedIds = $("#grid").jqGrid("getSelectedRows");
+        var isSpecial = $('#grid').jqGrid("getCell", selectedIds[0], "isSpecial"); //是否其他模板
+        if (selectedIds == undefined || selectedIds.length==0) {
+            shr.showWarning({
+                message: jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_16,
+                hideAfter: null
+            });
+            return;
+        }
+        if(selectedIds.length>1){
+            shr.showWarning({
+                message: jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_19,
+                hideAfter: null
+            });
+            return;
+        }
+        if(isSpecial=="1"){//是否其他模板
+            shr.showWarning({
+                message: jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_11,
+                hideAfter: null
+            });
+            return false;
+        }
+        _self.remoteCall({
+            method : "checkButtonDataPermission",
+            param : {
+                billId : selectedIds
+            },
+            async: false,
+            success : function(data){
+
+            },
+            error: function (xhr, data) {
+                errorXhr = xhr;
+                return;
+            }
+        });
+        if(errorXhr != undefined && errorXhr != null && errorXhr != ""){
+            if(errorXhr.result == "error"){
+                shr.showError({
+                    message: errorXhr.summary,
+                    hideAfter: null
+                });
+                return;
+            }
+        }
+        var rowData = $('#grid').jqGrid('getRowData', selectedIds);
+        var drawUpMode = rowData.drawUpMode; //开具形式 1.纸质 2.电子
+        var certificationStatus = rowData.certificationStatus; //证明状态
+        var isSign = rowData.isSign; // 是否已签署
+        var signNo = rowData.signNO;
+        var billId = rowData.id;
+        if("2" == drawUpMode && signNo != null && signNo != undefined && signNo != '' && "1" == isSign){//已签署
+            var _time1 = 0;
+            var showMsg = "";
+            var intervalID = setInterval(function() {
+                _time1++;
+                shr.callService({
+                    serviceName : 'electronicLaborRefreshLocalService',
+                    param : {
+                        contractNo : signNo,
+                        billId : billId,
+                        isDefault : "1"
+                    },
+                    async : false,
+                    success : function(response) {
+                        if(response&&response.code == 0){
+                            var pdfurl = '';
+                            pdfurl = response.data[0].sealInfo.previewOfPcUrl;
+
+                            var downloadUrl = response.data[0].sealInfo.downloadUrl;
+                            _self.convertPdfToWord(pdfurl,downloadUrl,"已盖章");
+                            shr.block.hide();
+                            // shr.openNew(pdfurl);
+                            clearInterval(intervalID);
+                        } else {
+                            if (msg != "") {
+                                showMsg = msg;
+                                return;
+                            } else {
+                                showMsg = jsBizMultLan.ssc_otherElectronicContractPreSignEdit_27063837_i18n_1;
+                                return;
+                            }
+                        }
+                    },
+                    error: function(xhr,data){
+
+                    }
+                });
+                if (_time1 > 10){
+                    clearInterval(intervalID);
+                    if (!showMsg || showMsg == "") {
+                        showMsg = jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_13
+                    }
+                    shr.block.hide();
+                    shr.showError({
+                        message: showMsg
+                    });
+                }
+            }, 500);
+            return;
+        }else{
+            var newDate = new Date();
+            var hourStr = newDate.getHours()<10?"0"+newDate.getHours().toString():newDate.getHours().toString();
+            var minuteStr = newDate.getMinutes()<10?"0"+newDate.getMinutes().toString():newDate.getMinutes().toString();
+            var secondStr = newDate.getSeconds()<10?"0"+newDate.getSeconds().toString():newDate.getSeconds().toString();
+            var nowTime = hourStr+minuteStr+secondStr;
+            var contractNo = rowData.number;
+            shr.block.show();
+            shr.callService({
+                serviceName : 'oldEmpCreateCertificationService',
+                param : {
+                    billId : billId,
+                    posNum : nowTime
+                },
+                async : false,
+                success : function(response) {
+                    console.log('createCertificationService success');
+                    var _time3 = 0;
+                    var showMsg = "";
+                    var intervalID = setInterval(function() {
+                        _time3++;
+                        shr.callService({
+                            serviceName : 'electronicLaborRefreshLocalService',
+                            param : {
+                                contractNo : contractNo+"-"+nowTime,
+                                billId : billId,
+                                isDefault : "1"
+                            },
+                            async : false,
+                            success : function(response) {
+                                if(response&&response.code == 0&&response.data[0]){
+                                    var pdfurl = '';
+                                    pdfurl = response.data[0].nosealInfo.previewOfPcUrl;
+                                    var downloadUrl = response.data[0].nosealInfo.downloadUrl;
+                                    _self.convertPdfToWord(pdfurl,downloadUrl,"未盖章");
+                                    shr.block.hide();
+                                    // shr.openNew(pdfurl);
+                                    clearInterval(intervalID);
+                                } else {
+                                    showMsg = response.msg;
+                                }
+                            },
+                            error: function(xhr,data){
+
+                            }
+                        });
+                        if (_time3 > 10){
+                            shr.customer.gtiit.HRResignCertificationBillHRListEx.superClass.previewPrintAction.call(_self);
+                            shr.block.hide();
+                            if (showMsg == "") {
+                                showMsg = jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_13;
+                            }
+                            shr.showError({
+                                message: showMsg
+                            });
+                            clearInterval(intervalID);
+                        }
+                    }, 500);
+                },
+                error: function(xhr,data){
+                    shr.showError({
+                        message: jsBizMultLan.emp_HRCertificationBillList_28243376_i18n_13
+                    });
+                    return;
+                }
+            });
+        }
+    },
+    convertPdfToWord: function(previewOfPcUrl, downloadUrl, isSign){
+        var _self = this;
+        previewOfPcUrl = decodeURIComponent(previewOfPcUrl);
+        const contractNo = _self.getContractParamsFromURL(previewOfPcUrl);
+        downloadUrl = encodeURIComponent(downloadUrl);
+        const date = new Date();
+        const year = date.getFullYear();
+        const month = (date.getMonth() + 1).toString().padStart(2, "0");
+        const day = date.getDate().toString().padStart(2, "0");
+        var currentDate = year+month+day;
+        var fileName = contractNo + isSign + "-" + currentDate + ".docx";
+
+        var urlinner = shr.getContextPath() + shr.dynamicURL + "?downloadUrl="+downloadUrl+"&fileName="+fileName+"&method=convertPdfToWord&handler=com.kingdee.shr.customer.gtiit.handler.HRcertificationbillListHandlerEx"+"&uipk="+shr.getUrlRequestParam('uipk');
+        var downloadLink = document.createElement('a');
+        downloadLink.href = urlinner;
+        document.body.appendChild(downloadLink);
+        downloadLink.click();
+        document.body.removeChild(downloadLink);
+    },
+    getContractParamsFromURL: function(url){
+        // 定义正则表达式
+        const regex = /[?&]contractNo(=([^&#]*)|&|#|$)/;
+        // 使用正则表达式获取参数值
+        const paramValue = decodeURIComponent(regex.exec(url)[2].replace(/\+/g, ' '));
+        return paramValue;
+    },
+});

File diff suppressed because it is too large
+ 193 - 0
GDYSL/websrc/com/kingdee/shr/customer/gtiit/osf/LeaveAllowanceOSFService.java


Some files were not shown because too many files changed in this diff