From cc810edac6aec3c858fb352091ad8c11332447a5 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期日, 10 十二月 2023 19:12:53 +0800 Subject: [PATCH] Merge branch 'develop' --- src/tabviews/custom/components/card/cardcellList/index.jsx | 137 +++++++++++++++++++++++++++++---------------- 1 files changed, 89 insertions(+), 48 deletions(-) diff --git a/src/tabviews/custom/components/card/cardcellList/index.jsx b/src/tabviews/custom/components/card/cardcellList/index.jsx index 9e1377f..5535c30 100644 --- a/src/tabviews/custom/components/card/cardcellList/index.jsx +++ b/src/tabviews/custom/components/card/cardcellList/index.jsx @@ -197,26 +197,37 @@ // }) // return // } - - let Id = '' - - if (cards.subtype === 'propcard' && cardCell) { - Id = cardCell.setting.primaryId || '' - } else { - Id = data[cards.setting.primaryKey] || '' - } - if (card.joint === 'true') { - let con = '?' - - if (/\?/ig.test(url)) { - con = '&' + if (/^http.+(.txt|.doc|.docx|.pdf|.xlsx|.xls|.zip|.rar|.ppt)$/i.test(url)) { + let name = url.replace(/.+\//g, '').replace(/\.{1}[^.]*$/g, '') + let d = document.createElement('a') + d.href = url + d.setAttribute('download', name) + d.setAttribute('target', '_blank') + document.body.appendChild(d) + d.click() + d.remove() + } else { + if (card.joint === 'true') { + let Id = '' + + if (cards.subtype === 'propcard' && cardCell) { + Id = cardCell.setting.primaryId || '' + } else { + Id = data[cards.setting.primaryKey] || '' + } + + let con = '?' + + if (/\?/ig.test(url)) { + con = '&' + } + + url = url + `${con}id=${Id}&appkey=${window.GLOB.appkey}&userid=${sessionStorage.getItem('UserID')}&LoginUID=${sessionStorage.getItem('LoginUID') || ''}` } - - url = url + `${con}id=${Id}&appkey=${window.GLOB.appkey}&userid=${sessionStorage.getItem('UserID')}&LoginUID=${sessionStorage.getItem('LoginUID') || ''}` + + window.open(url) } - - window.open(url) } getColor = (marks) => { @@ -294,39 +305,39 @@ if (card.datatype === 'static') { val = card.value || '' - if (/@username@|@fullName@|@mk_city@|@appname@|@bid@/ig.test(val)) { - let userName = sessionStorage.getItem('User_Name') || '' - let fullName = sessionStorage.getItem('Full_Name') || '' - let city = sessionStorage.getItem('city') || '' - let appname = sessionStorage.getItem('appname') || '' - let bid = data.$$BID || '' - val = val.replace(/@username@/ig, userName).replace(/@fullName@/ig, fullName).replace(/@mk_city@/ig, city).replace(/@appname@/ig, appname).replace(/@bid@/ig, bid) - } else if (/@month@/ig.test(val)) { - val = val.replace(/@month@/ig, new Date().toLocaleString('en-US', { month: 'long' })) - } else if (/@week@/ig.test(val)) { - val = val.replace(/@week@/ig, (() => { - let day = new Date().getDay() - let weeks = ['鏄熸湡鏃�', '鏄熸湡涓�', '鏄熸湡浜�', '鏄熸湡涓�', '鏄熸湡鍥�', '鏄熸湡浜�', '鏄熸湡鍏�'] - return weeks[day] - })()) - } else if (/@day@/ig.test(val)) { - val = val.replace(/@day@/ig, (() => { - let day = new Date().getDate() - return day < 10 ? '0' + day : day - })()) + if (/@.+@/g.test(val)) { + if (/@username@|@fullName@|@mk_city@|@appname@|@bid@/ig.test(val)) { + let userName = sessionStorage.getItem('User_Name') || '' + let fullName = sessionStorage.getItem('Full_Name') || '' + let city = sessionStorage.getItem('city') || '' + let appname = sessionStorage.getItem('appname') || '' + let bid = data.$$BID || '' + val = val.replace(/@username@/ig, userName).replace(/@fullName@/ig, fullName).replace(/@mk_city@/ig, city).replace(/@appname@/ig, appname).replace(/@bid@/ig, bid) + } else if (/@month@/ig.test(val)) { + val = val.replace(/@month@/ig, new Date().toLocaleString('en-US', { month: 'long' })) + } else if (/@week@/ig.test(val)) { + val = val.replace(/@week@/ig, (() => { + let day = new Date().getDay() + let weeks = ['鏄熸湡鏃�', '鏄熸湡涓�', '鏄熸湡浜�', '鏄熸湡涓�', '鏄熸湡鍥�', '鏄熸湡浜�', '鏄熸湡鍏�'] + return weeks[day] + })()) + } else if (/@day@/ig.test(val)) { + val = val.replace(/@day@/ig, (() => { + let day = new Date().getDate() + return day < 10 ? '0' + day : day + })()) + } } } else if (data.hasOwnProperty(card.field)) { - val = data[card.field] + val = data[card.field] + '' } - if (!val && card.noValue === 'hide') { // 绌哄�奸殣钘� - return null - } - - if (val !== '' && card.format) { + if (val && card.format && card.format !== 'encryption') { let _val = null - if (card.format === 'calendar1') { + if (val < '1949-10-02') { + val = '' + } else if (card.format === 'calendar1') { _val = moment(val).calendar(null, { sameDay: '[浠婂ぉ] ahh:mm', nextDay: '[鏄庡ぉ] ahh:mm', @@ -373,17 +384,43 @@ } else { _val = moment(val).format(card.format) } - - // if (card.format === 'YYYY-MM-DD' && /^[1-9]\d{3}(-|\/)(0[1-9]|1[0-2])(-|\/)(0[1-9]|[1-2][0-9]|3[0-1])/.test(val)) { - // val = `${val.substr(0, 4)}-${val.substr(5, 2)}-${val.substr(8, 2)}` - // } + if (_val && _val !== 'Invalid date') { val = _val } } + + if (!val && card.noValue === 'hide') { // 绌哄�奸殣钘� + return null + } if (val !== '') { let orival = val + + if (card.linkType === 'download') { + let url = '' + + if (card.link === 'static') { + url = card.linkurl + } else { + url = data[card.linkurl] + } + + if (/^http.+(.txt|.doc|.docx|.pdf|.xlsx|.xls|.zip|.rar)$/i.test(url)) { + if (/pdf$/i.test(url)) { + val = <><img src="./media/pdf.png" className="file-image" alt=""/> {val}</> + } else if (/(.doc|.docx)$/i.test(url)) { + val = <><img src="./media/word.png" className="file-image" alt=""/> {val}</> + } else if (/(.xlsx|.xls)$/i.test(url)) { + val = <><img src="./media/excel.png" className="file-image" alt=""/> {val}</> + } else if (/(.zip|.rar)$/i.test(url)) { + val = <><img src="./media/rar.png" className="file-image" alt=""/> {val}</> + } else { + val = <><img src="./media/txt.png" className="file-image" alt=""/> {val}</> + } + } + } + if (card.format === 'encryption') { val = <Encrypts value={val} /> } @@ -654,6 +691,10 @@ if (card.link) { _style.cursor = 'pointer' } + + if (_style.position === 'absolute') { + _style.width = '100%' + } let scale = url && card.scale === 'true' let urls = url ? url.split(',').filter(Boolean) : [''] -- Gitblit v1.8.0