/** * Created by Tony on 2019/9/25. */ 'use strict' const DFT_ROLE_NAME = ''; let rptSignatureHelper = { currentSelectedESignAccDom: null, currentSelectedESignAccIdx: -1, currentSelectedESignAccName: null, currentSelectedESignParentDivId: '', originalRoleRelList: [], buildSelectableAccount: function () { //PRJ_ACCOUNT_LIST //1. 清理所有选择项 // $("#project_account_select_div").empty(); let accDiv = $('#project_account_select_div'); let accSelect = $('#project_account_select_dom'); //绑定成员 let searchInput = $('#search_account').val(); accDiv.empty(); accSelect.empty(); //2. 一个个加可选用户项 const prj_accounts = []; const prj_sel_option_accounts = []; const acc_role_keys = []; for (let accIdx = 0; accIdx < PRJ_ACCOUNT_LIST.length; accIdx++) { const prjAccount = PRJ_ACCOUNT_LIST[accIdx]; if (searchInput === '' || (searchInput !== '' && prjAccount.name.indexOf(searchInput) !== -1)) { let companyKey = prjAccount.account_group; let roleKey = prjAccount.role; if (companyKey === '') { companyKey = '其他单位'; } if (roleKey === '') { roleKey = DFT_ROLE_NAME; } let keyIdx = acc_role_keys.indexOf(companyKey); if (keyIdx < 0) { acc_role_keys.push(companyKey); prj_accounts.push([]); prj_sel_option_accounts.push([]); keyIdx = prj_accounts.length - 1; //这里先push一些 html prefix,在后面统一在push html suffix prj_accounts[keyIdx].push(''); } for (const prjAccList of prj_sel_option_accounts) { prjAccList.push(''); } for (let idx = 0; idx < prj_accounts.length; idx++) { prj_accounts[idx] = prj_accounts[idx].join(''); prj_sel_option_accounts[idx] = prj_sel_option_accounts[idx].join(''); } accDiv.append(prj_accounts.join('')); accSelect.append(prj_sel_option_accounts.join('')); }, buildSelectableAccountUsed: function () { //PRJ_ACCOUNT_LIST //1. 清理所有选择项 // $("#project_account_select_div").empty(); let accDiv = $('#account_used_select_div'); accDiv.empty(); //2. 一个个加可选用户项 const prj_accounts = []; for (let uidx = 0; uidx < USED_LIST.length; uidx++) { const accIdx = PRJ_ACCOUNT_LIST.findIndex(function(item) { return item.id === USED_LIST[uidx].uid; }); if (accIdx === -1 || accIdx === undefined) { continue; } const prjAccount = PRJ_ACCOUNT_LIST[accIdx]; let roleKey = prjAccount.role; if (roleKey === '') { roleKey = DFT_ROLE_NAME; } //push item prj_accounts.push('
  • ' + prjAccount.name + '-' + roleKey + '
  • '); } accDiv.append(prj_accounts.join('')); }, createEsignatureByAccIdx: function (accIdx) { rptSignatureHelper.createPreSelectedSignature(PRJ_ACCOUNT_LIST[accIdx], null); }, createEsignatureByRoleIdx: function (roleIdx) { rptSignatureHelper.createPreSelectedSignature(null, ROLE_LIST[roleIdx]); }, createPreSelectedSignature: function (directAcc, roleAcc) { let dftSignSrc = '/public/upload/sign/user-sign.PNG'; let userAcc = directAcc; if (roleAcc) { userAcc = rptSignatureHelper.getUserAccount(roleAcc.bind_acc_id); } if (userAcc.sign_path !== '') { dftSignSrc = '/public/upload/sign/' + userAcc.sign_path; } if (rptSignatureHelper.currentSelectedESignAccName !== null) { for (const page of zTreeOprObj.currentRptPageRst.items) { if (page.signature_cells) { for (const sCell of page.signature_cells) { if (sCell.signature_name === rptSignatureHelper.currentSelectedESignAccName) { sCell.pre_path = dftSignSrc; } } } } // 1. 删除不需要的child dom $(rptSignatureHelper.currentSelectedESignAccDom).empty(); // 2. 创建已选择签名相关 dom rptSignatureHelper.cleanOldSignature(rptSignatureHelper.currentSelectedESignAccName); // 2.1 dom element const elementsStrArr = []; let dftDate = _getSignDateByAllScenarios(userAcc.id); if (dftDate !== '' && dftDate.length > 20) { dftDate = (new Date(dftDate)).Format('yyyy-MM-dd'); } if (directAcc) { rptSignatureHelper.pushDomElementByUser(elementsStrArr, userAcc.name, userAcc.role); // 还有ROLE_REL_LIST let roleRelObj = {}; roleRelObj.signature_name = rptSignatureHelper.currentSelectedESignAccName; roleRelObj.sign_path = dftSignSrc; // roleRelObj.sign_date = ''; roleRelObj.sign_date = dftDate; roleRelObj.sign_date_format = 'yyyy年M月d日'; roleRelObj.user_name = userAcc.name; roleRelObj.acc_id = userAcc.id; roleRelObj.type = '用户'; roleRelObj.role = (userAcc.role === '')?DFT_ROLE_NAME:userAcc.role; ROLE_REL_LIST.push(roleRelObj); } else if (roleAcc) { // 创建相关dom元素 rptSignatureHelper.pushDomElementByRole(elementsStrArr, roleAcc.name, userAcc.name); // 还有ROLE_REL_LIST let roleRelObj = {}; roleRelObj.signature_name = rptSignatureHelper.currentSelectedESignAccName; roleRelObj.sign_path = dftSignSrc; // roleRelObj.sign_date = ''; roleRelObj.sign_date = dftDate; roleRelObj.sign_date_format = 'yyyy年M月d日'; roleRelObj.user_name = userAcc.name; roleRelObj.acc_id = userAcc.id; roleRelObj.type = '角色'; roleRelObj.role = (userAcc.role === '')?DFT_ROLE_NAME:userAcc.role; roleRelObj.role_name = roleAcc.name; ROLE_REL_LIST.push(roleRelObj); } // elementsStrArr.push(''); rptSignatureHelper.pushDatePickerDom(elementsStrArr, userAcc.id); $(rptSignatureHelper.currentSelectedESignAccDom).append(elementsStrArr.join(' ')); //.appendChild(pNode); //*/ // 2.2 date-picker // 更新最近使用名单 const params = {}; params.uid = userAcc.id; params.prj_id = PROJECT_ID; params.tender_id = TENDER_ID; CommonAjax.postXsrfEx("/tender/report_api/updateSignatureUsed", params, 10000, true, getCookie('csrfToken_j'), function(result){ console.log(result); USED_LIST = result.data; $('#search_account').val(''); rptSignatureHelper.buildSelectableAccount(); rptSignatureHelper.buildSelectableAccountUsed(); }, function(err){ // hintBox.unWaitBox(); }, function(ex){ // hintBox.unWaitBox(); } ); } }, cleanOldSignature: function (signature_name) { // 清掉ROLE_REL_LIST原有的签名 for (let idx = ROLE_REL_LIST.length - 1; idx >= 0 ; idx--) { if (ROLE_REL_LIST[idx].signature_name === signature_name) { ROLE_REL_LIST.splice(idx, 1); } } }, resetESignature: function (pageRst, signatureDivId) { // let body = $('#eSignatureBodyDiv'); if (pageRst !== null) { let body = $('#' + signatureDivId); rptSignatureHelper.currentSelectedESignParentDivId = signatureDivId; body.empty(); const signature_cells = []; const singatureNameArr = []; for (const page of pageRst.items) { if (page.signature_cells) { for (const sCell of page.signature_cells) { if (sCell.signature_name !== null && sCell.signature_name !== undefined && sCell.signature_name !== 'dummy_pic') { if (singatureNameArr.indexOf(sCell.signature_name) < 0) { signature_cells.push(sCell); singatureNameArr.push(sCell.signature_name); } } } } } if (signature_cells.length > 0) { const elementsStrArr = []; const elementsDateStrArr = []; for (let scIdx = 0; scIdx < signature_cells.length; scIdx++) { const sCell = signature_cells[scIdx]; elementsStrArr.push('
    '); elementsStrArr.push(''); elementsStrArr.push('
    '); elementsStrArr.push(''); elementsStrArr.push('
    '); elementsStrArr.push('
    '); //还有签名日期(用不用得上不管,先放上去再说) } body.append(elementsStrArr.join(' ')); } } }, checkAndShowCrossTendersESignature: function () { let btnDom = $('#btn_cross_tender')[0]; if (zTreeOprObj.currentNode) { btnDom.style.display = ''; } else { btnDom.style.display = 'none'; } }, pushDomElementByUser: function (elementsStrArr, userName, userRole) { elementsStrArr.push('

    ' + userName + '-' + ((userRole === '')?DFT_ROLE_NAME:userRole) + '

    '); // rptSignatureHelper.pushDatePickerDom(elementsStrArr); }, pushDomElementByRole: function (elementsStrArr, roleName, userName) { elementsStrArr.push('

    ' + roleName + '-' + userName + '

    '); // rptSignatureHelper.pushDatePickerDom(elementsStrArr); }, pushDatePickerDom: function (elementsStrArr, userAccId) { let idSuffixStr = 'dtp_' + rptSignatureHelper.currentSelectedESignAccName + '_' + rptSignatureHelper.currentSelectedESignParentDivId; elementsStrArr.push('
    '); // 日期控件存在页面高度不过高无法选中bug,先不用 // elementsStrArr.push(' 20) { dftDate = (new Date(dftDate)).Format('yyyy-MM-dd'); } /*/ let dftDate = ''; let hasAudit = false; if (STAGE_AUDIT && STAGE_AUDIT.length > 0) { for (const stga of STAGE_AUDIT) { if (stga.aid === userAccId) { hasAudit = true; if (stga.status === 3 && stga.end_time && stga.end_time !== '' && stga.end_time.length > 20) { //只有在审批人通过后才获取审批时间 // let dt = new Date(stga.end_time); dftDate = (new Date(stga.end_time)).Format('yyyy-MM-dd'); } else { dftDate = ''; } // break; // 实际情况:有可能会有多次审核,要取最后一次 } } } let isOrgRpt = false; for (const stg of STAGE_LIST) { if (stg.id === current_stage_id) { if (stg.user_id === userAccId) { isOrgRpt = true; } break; } } if (isOrgRpt && !hasAudit && STAGE_AUDIT_ORG && STAGE_AUDIT_ORG.length > 0) { if (STAGE_AUDIT_ORG[0].begin_time && STAGE_AUDIT_ORG[0].begin_time !== '' && STAGE_AUDIT_ORG[0].begin_time.length > 20) { dftDate = (new Date(STAGE_AUDIT_ORG[0].begin_time)).Format('yyyy-MM-dd'); } } if (!isOrgRpt && !hasAudit) { //非审批流程人员以及非原报,则显示期截至时间 for (const stg of STAGE_LIST) { if (stg.id === current_stage_id && stg.period) { const period = stg.period.split(' ~ '); if (period.length === 2) { dftDate = period[1]; } } } } //*/ if (dftDate !== '') { elementsStrArr.push(''); }, removeSignature: function (dom) { let accTxtName = $(dom.parentNode.parentNode.parentNode.parentNode.parentNode).find('label')[0].innerText; let jDom = $(dom.parentNode.parentNode); jDom.empty(); jDom.append(' 添加签字'); // 要记得清空相关pre_path属性 for (const page of zTreeOprObj.currentRptPageRst.items) { if (page.signature_cells) { for (const sCell of page.signature_cells) { if (sCell.signature_name === accTxtName) { sCell.pre_path = ''; } } } } // 还有ROLE_REL_LIST rptSignatureHelper.cleanOldSignature(accTxtName); }, removeSelectSignature: function () { for (const page of zTreeOprObj.currentRptPageRst.items) { if (page.signature_cells) { for (const sCell of page.signature_cells) { if (sCell.hasOwnProperty('pre_path')) { delete sCell.pre_path; } } } } // ROLE_REL_LIST = []; // ROLE_REL_LIST = ROLE_REL_LIST.concat(rptSignatureHelper.originalRoleRelList); ROLE_REL_LIST = JSON.parse(JSON.stringify(rptSignatureHelper.originalRoleRelList)); zTreeOprObj.showPage(zTreeOprObj.currentPage, zTreeOprObj.canvas); }, resetSignAudit: function () { rptSignatureHelper.mergeSignAudit(zTreeOprObj.currentRptPageRst, ROLE_REL_LIST, STAGE_AUDIT); }, resetSignDate: function(signatureDivId) { for (const page of zTreeOprObj.currentRptPageRst.items) { if (page.signature_date_cells) { for (const sCell of page.signature_date_cells) { sCell.Value = _getSignDateDftName(); for (let idx = 0; idx < ROLE_REL_LIST.length; idx++) { const role_rel = ROLE_REL_LIST[idx]; const idSuffixStr = 'dtp_' + role_rel.signature_name + '_' + signatureDivId; let dtDom = $('#' + idSuffixStr); if (dtDom.length === 1) { const dtStr = dtDom[0].value; if (dtStr && dtStr !== '' && dtStr.length >= 8 && dtStr.length <= 10) { role_rel.sign_date = new Date(dtStr); } else { role_rel.sign_date = ''; } // 要处理相关签名Cell属性(默认跟普通cell一样,就多了个signature_name) if (sCell.signature_name === role_rel.signature_name + '_签字日期') { if (role_rel.sign_date !== '') { sCell.Value = role_rel.sign_date.Format(role_rel.sign_date_format); } } } } } } } }, setupAfterSelectMultiTenders: function (selectedTenders, signatureDivId) { //跨标段选择,有不少要注意的交互: //0. 签名日期 rptSignatureHelper.resetSignDate(signatureDivId); rptSignatureHelper.resetSignAudit(); //1. 重刷page if (current_stage_status === 3) { for (const page of zTreeOprObj.currentRptPageRst.items) { if (page.signature_cells) { for (const sCell of page.signature_cells) { if (sCell.hasOwnProperty('pre_path')) { sCell.path = sCell.pre_path; delete sCell.pre_path; } } } } zTreeOprObj.showPage(zTreeOprObj.currentPage, zTreeOprObj.canvas); } //2. 集中请求 let params = {}; params.id = CURRENT_ROLE_REL_ID; params.tender_id = TENDER_ID; params.stage_id = getStageId(); params.rpt_id = zTreeOprObj.currentNode.refId; params.rel_content = ROLE_REL_LIST; params.selectedTenders = selectedTenders; rptSignatureHelper.originalRoleRelList = JSON.parse(JSON.stringify(ROLE_REL_LIST)); CommonAjax.postXsrfEx("/tender/report_api/updateMultiRoleRelationship", params, 10000, true, getCookie('csrfToken_j'), function(result){ console.log(result); if (result.data && result.data.insertId > 0) { CURRENT_ROLE_REL_ID = result.data.insertId; } }, function(err){ // hintBox.unWaitBox(); }, function(ex){ // hintBox.unWaitBox(); } ); }, _parseRoleRelList: function(org_rel_content) { const rst = JSON.parse(org_rel_content); for (const role_rel of rst) { if (role_rel.sign_date !== null && role_rel.sign_date !== undefined && role_rel.sign_date.length >= 8) { role_rel.sign_date = new Date(role_rel.sign_date); } } return rst; }, setupAfterSelectSignature: function (signatureDivId) { //0. 签名日期 let me = rptSignatureHelper; rptSignatureHelper.resetSignDate(signatureDivId); rptSignatureHelper.resetSignAudit(); if (current_stage_status === 3) { //1. 重刷page for (const page of zTreeOprObj.currentRptPageRst.items) { if (page.signature_cells) { for (const sCell of page.signature_cells) { if (sCell.hasOwnProperty('pre_path')) { sCell.path = sCell.pre_path; delete sCell.pre_path; } } } } zTreeOprObj.showPage(zTreeOprObj.currentPage, zTreeOprObj.canvas); } //2. 更新数据 const params = {}; params.id = CURRENT_ROLE_REL_ID; params.tender_id = TENDER_ID; params.stage_id = getStageId(); params.rpt_id = zTreeOprObj.currentNode.refId; params.rel_content = ROLE_REL_LIST; // rptSignatureHelper.originalRoleRelList = []; // rptSignatureHelper.originalRoleRelList = rptSignatureHelper.originalRoleRelList.concat(ROLE_REL_LIST); rptSignatureHelper.originalRoleRelList = JSON.parse(JSON.stringify(ROLE_REL_LIST)); CommonAjax.postXsrfEx("/tender/report_api/updateRoleRelationship", params, 10000, true, getCookie('csrfToken_j'), function(result){ // console.log(result); if (result.data && result.data.insertId > 0) { CURRENT_ROLE_REL_ID = result.data.insertId; } // ROLE_REL_LIST = []; // for (const signatureRel of result.signatureRelInfo) { // ROLE_REL_LIST.push(JSON.parse(signatureRel.rel_content)); // } // rptSignatureHelper.originalRoleRelList = JSON.parse(JSON.stringify(ROLE_REL_LIST)); // ROLE_REL_LIST = me._parseRoleRelList(result.signatureRelInfo[0].rel_content); // rptSignatureHelper.originalRoleRelList = me._parseRoleRelList(result.signatureRelInfo[0].rel_content); if (result.signatureRelInfo && result.signatureRelInfo.length > 0) { // CURRENT_ROLE_REL_ID = result.signatureRelInfo[0].id; ROLE_REL_LIST = me._parseRoleRelList(result.signatureRelInfo[0].rel_content); rptSignatureHelper.originalRoleRelList = me._parseRoleRelList(result.signatureRelInfo[0].rel_content); if (current_stage_status === 3) { rptSignatureHelper.mergeSignDate(pageRst, ROLE_REL_LIST, true); rptSignatureHelper.mergeSignature(pageRst, ROLE_REL_LIST); rptSignatureHelper.mergeSignAudit(pageRst, ROLE_REL_LIST, STAGE_AUDIT); } } else { // CURRENT_ROLE_REL_ID = -1; ROLE_REL_LIST = []; } }, function(err){ // hintBox.unWaitBox(); }, function(ex){ // hintBox.unWaitBox(); } ); }, switchAddRoleDiv: function (dom) { if (dom.nextElementSibling.children[0].style.display === 'none') { dom.nextElementSibling.children[0].style.display = ''; } else { dom.nextElementSibling.children[0].style.display = 'none'; } }, createNewRole: function (dom) { if ($('#acc_role_name')[0].value !== '') { const params = {}; params.name = $('#acc_role_name')[0].value; const selectedAcc = PRJ_ACCOUNT_LIST[$('#project_account_select_dom')[0].selectedOptions[0].value]; const roleName = (selectedAcc.role === '')?DFT_ROLE_NAME:selectedAcc.role; params.bind_acc_id = selectedAcc.id; params.prj_id = PROJECT_ID; params.tender_id = TENDER_ID; CommonAjax.postXsrfEx("/tender/report_api/createSignatureRole", params, 10000, true, getCookie('csrfToken_j'), function(result){ console.log(result); const newRole = {}; newRole.name = params.name; newRole.bind_acc_id = selectedAcc.id; newRole.prj_id = PROJECT_ID; newRole.tender_id = TENDER_ID; ROLE_LIST.push(newRole); const domArr = []; domArr.push('
  • '); //1. apply签名 domArr.push(''); domArr.push(''); domArr.push(''); //2. 编辑角色(暂缓处理click事件) domArr.push(''); domArr.push(''); domArr.push(''); //3. 显示名称 domArr.push(' ' + $('#acc_role_name')[0].value + '

    ' + selectedAcc.name + '-' + roleName + '

    '); $('#existed_roles_ul').append(domArr.join(' ')); }, function(err){ // hintBox.unWaitBox(); }, function(ex){ // hintBox.unWaitBox(); } ); } else { alert('请输入合适的名称!'); } }, buildRoleDom: function (roleList) { const ulDom = $('#existed_roles_ul'); ulDom.empty(); for (let domIdx = 0; domIdx < roleList.length; domIdx++) { const role = roleList[domIdx]; const domArr = []; domArr.push('
  • '); //1. apply签名 domArr.push(''); domArr.push(''); domArr.push(''); //2. 编辑角色(暂缓) domArr.push(''); domArr.push(''); domArr.push(''); //3. 显示名称 let acc = rptSignatureHelper.getUserAccount(role.bind_acc_id); domArr.push(' ' + role.name + '

    ' + acc.name + '-' + ((acc.role === '')?DFT_ROLE_NAME:acc.role) + '

    '); ulDom.append(domArr.join(' ')); } }, getUserAccount: function (accId) { let rst = null; for (const acc of PRJ_ACCOUNT_LIST) { if (acc.id === accId) { rst = acc; break; } } return rst; }, mergeSignature: function (pageData, currRoleRelList) { for (const page of pageData.items) { if (page.signature_cells) { for (const sCell of page.signature_cells) { for (const role_rel of currRoleRelList) { if (role_rel.signature_name === sCell.signature_name) { sCell.path = role_rel.sign_path; sCell.pre_path = role_rel.sign_path; } } } } } }, mergeSignAudit: function (pageData, currRoleRelList, currAuditList) { for (const page of pageData.items) { if (page.signature_audit_cells) { for (const sCell of page.signature_audit_cells) { sCell.Value = ''; // 这里要先清除原有信息 for (const role_rel of currRoleRelList) { if (sCell.signature_name === role_rel.signature_name + '_审核意见') { let preDate = ''; sCell.Value = '同意'; // 只有选择了签名的,才需要初始化一个默认的意见(之前的逻辑在有多个签名,哪怕只选择了一个,其他的意见都会有默认意见) for (const audit_rel of currAuditList) { if (role_rel.acc_id === audit_rel.aid) { if (audit_rel.end_time > preDate && audit_rel.status === 3) { sCell.Value = audit_rel.opinion; preDate = audit_rel.end_time; } //不能break,实际会有多个审核意见,以最后一个为准 } } break; } } } } } }, mergeSignDate: function (pageData, currRoleRelList, isMergeOrgAlso) { if (currRoleRelList && currRoleRelList.length > 0 && STAGE_AUDIT && STAGE_AUDIT.length > 0) { for (let rridx = 0; rridx < currRoleRelList.length; rridx++) { const role_rel = currRoleRelList[rridx]; if (role_rel.sign_date === undefined || role_rel.sign_date === null || role_rel.sign_date === '') { //* let dftDate = _getSignDateByAllScenarios(role_rel.acc_id); role_rel.sign_date = dftDate; if (isMergeOrgAlso) { rptSignatureHelper.originalRoleRelList[rridx].sign_date = dftDate; //备注:在多选导出的情况下,originalRoleRelList不需要merge } /*/ let hasAudit = false; for (const stg_audit of STAGE_AUDIT) { if (role_rel.acc_id === stg_audit.aid) { hasAudit = true; if (stg_audit.status === 3) { role_rel.sign_date = stg_audit.end_time; rptSignatureHelper.originalRoleRelList[rridx].sign_date = stg_audit.end_time; } else { role_rel.sign_date = ''; rptSignatureHelper.originalRoleRelList[rridx].sign_date = ''; } // break; //因为实际业务中会有反复,所以就不break了,一直判断,以最后一个为准 } } let isOrgRpt = false; for (const stg of STAGE_LIST) { if (stg.id === current_stage_id) { if (stg.user_id === role_rel.acc_id) { isOrgRpt = true; } break; } } if (isOrgRpt && !hasAudit && STAGE_AUDIT_ORG && STAGE_AUDIT_ORG.length > 0) { if (STAGE_AUDIT_ORG[0].begin_time && STAGE_AUDIT_ORG[0].begin_time !== '' && STAGE_AUDIT_ORG[0].begin_time.length > 20) { role_rel.sign_date = STAGE_AUDIT_ORG[0].begin_time; rptSignatureHelper.originalRoleRelList[rridx].sign_date = STAGE_AUDIT_ORG[0].begin_time; } } if (!isOrgRpt && !hasAudit) { //非审批流程人员以及非原报,则显示期截至时间 for (const stg of STAGE_LIST) { if (stg.id === current_stage_id && stg.period) { const period = stg.period.split(' ~ '); if (period.length === 2) { role_rel.sign_date = period[1]; rptSignatureHelper.originalRoleRelList[rridx].sign_date = period[1]; } } } } //*/ } } } for (const page of pageData.items) { if (page.signature_date_cells) { for (const sCell of page.signature_date_cells) { if (sCell.Value === undefined || sCell.Value === null && sCell.Value === '') { sCell.Value = _getSignDateDftName(); } for (const role_rel of currRoleRelList) { if (sCell.signature_name === role_rel.signature_name + '_签字日期') { if (role_rel.sign_date !== '') { if (typeof role_rel.sign_date === 'string') { role_rel.sign_date = new Date(role_rel.sign_date); } sCell.Value = role_rel.sign_date.Format(role_rel.sign_date_format); } break; } } } } } } } function _getSignDateByAllScenarios(userAccId) { let rst = ''; let hasAudit = false; for (const stg_audit of STAGE_AUDIT) { if (stg_audit.aid === userAccId) { hasAudit = true; if (stg_audit.status === 3) { rst = stg_audit.end_time; } else { rst = ''; } // break; //因为实际业务中会有反复,所以就不break了,一直判断,以最后一个为准 } } let isOrgRpt = false; for (const stg of STAGE_LIST) { if (stg.id === current_stage_id) { if (stg.user_id === userAccId) { isOrgRpt = true; } break; } } if (isOrgRpt && !hasAudit && STAGE_AUDIT_ORG && STAGE_AUDIT_ORG.length > 0) { if (STAGE_AUDIT_ORG[0].begin_time && STAGE_AUDIT_ORG[0].begin_time !== '' && STAGE_AUDIT_ORG[0].begin_time.length > 20) { rst = STAGE_AUDIT_ORG[0].begin_time; } } if (!isOrgRpt && !hasAudit) { //非审批流程人员以及非原报,则显示期截至时间 for (const stg of STAGE_LIST) { if (stg.id === current_stage_id && stg.period) { const period = stg.period.split(' ~ '); if (period.length === 2) { rst = period[1]; } } } } return rst; } function _getSignDateDftName() { return ' 年 月 日'; }