|
@@ -239,6 +239,59 @@
|
|
|
});
|
|
});
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ /** 多文件弹窗:展示所有附件列表 */
|
|
|
|
|
+ function showAttachmentList(fileId) {
|
|
|
|
|
+ layer.open({
|
|
|
|
|
+ type: 1,
|
|
|
|
|
+ area: ['550px', '400px'],
|
|
|
|
|
+ title: '附件列表',
|
|
|
|
|
+ content: '<div style="padding:15px;"><table id="attachmentListTable" class="table table-bordered" style="margin:0;"><thead><tr><th>文件名</th><th width="150">上传时间</th></tr></thead><tbody><tr><td colspan="2" style="text-align:center;">加载中...</td></tr></tbody></table></div>',
|
|
|
|
|
+ btn: ['关闭'],
|
|
|
|
|
+ success: function(layero, index) {
|
|
|
|
|
+ $.ajax({
|
|
|
|
|
+ type: 'GET',
|
|
|
|
|
+ url: '${ctx}/workKnowledgeBase/share/getAttachmentList',
|
|
|
|
|
+ data: { fileId: fileId },
|
|
|
|
|
+ success: function(result) {
|
|
|
|
|
+ if (result.success && result.data && result.data.length > 0) {
|
|
|
|
|
+ var tbody = '';
|
|
|
|
|
+ for (var i = 0; i < result.data.length; i++) {
|
|
|
|
|
+ var att = result.data[i];
|
|
|
|
|
+ var previewUrl = att.temporaryUrl || att.url || '';
|
|
|
|
|
+ var fileName = att.name || '';
|
|
|
|
|
+ var createDate = att.createDate || '';
|
|
|
|
|
+ tbody += '<tr>';
|
|
|
|
|
+ tbody += '<td style="word-break:break-all;cursor:pointer;color:#1e9fff;text-align:center;" onclick="openPreviewAttachment(\'' + previewUrl.replace(/'/g, "\\'") + '\', \'' + fileName.replace(/'/g, "\\'") + '\')" title="点击查看详情">' + fileName + '</td>';
|
|
|
|
|
+ tbody += '<td style="text-align:center;">' + createDate + '</td>';
|
|
|
|
|
+ tbody += '</tr>';
|
|
|
|
|
+ }
|
|
|
|
|
+ $(layero).find('tbody').html(tbody);
|
|
|
|
|
+ } else {
|
|
|
|
|
+ $(layero).find('tbody').html('<tr><td colspan="2" style="text-align:center;">暂无附件</td></tr>');
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ error: function() {
|
|
|
|
|
+ $(layero).find('tbody').html('<tr><td colspan="2" style="text-align:center;color:red;">加载失败</td></tr>');
|
|
|
|
|
+ }
|
|
|
|
|
+ });
|
|
|
|
|
+ },
|
|
|
|
|
+ btn1: function(index) { layer.close(index); }
|
|
|
|
|
+ });
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /** 从附件弹窗中打开文件预览 */
|
|
|
|
|
+ function openPreviewAttachment(url, fileName) {
|
|
|
|
|
+ if (!url) return;
|
|
|
|
|
+ var name = (fileName || '').toLowerCase();
|
|
|
|
|
+ if (name.indexOf('jpg') != -1 || name.indexOf('png') != -1 || name.indexOf('gif') != -1 || name.indexOf('jpeg') != -1 || name.indexOf('bmp') != -1) {
|
|
|
|
|
+ openPreview(url, 5);
|
|
|
|
|
+ } else if (name.indexOf('pdf') != -1) {
|
|
|
|
|
+ openPreview(url, 1);
|
|
|
|
|
+ } else {
|
|
|
|
|
+ openPreview(url, 2);
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
/** 审核详情弹窗(三按钮:通过/驳回/关闭) */
|
|
/** 审核详情弹窗(三按钮:通过/驳回/关闭) */
|
|
|
function openAuditDetailDialog(id) {
|
|
function openAuditDetailDialog(id) {
|
|
|
if (navigator.userAgent.match(/(iPhone|iPod|Android|ios)/i)) {
|
|
if (navigator.userAgent.match(/(iPhone|iPod|Android|ios)/i)) {
|
|
@@ -868,6 +921,15 @@
|
|
|
}
|
|
}
|
|
|
}},
|
|
}},
|
|
|
{field: 'fileUrl', align: 'center', title: '文件地址', minWidth: 200, templet: function(d) {
|
|
{field: 'fileUrl', align: 'center', title: '文件地址', minWidth: 200, templet: function(d) {
|
|
|
|
|
+ // 多文件:逗号分隔展示文件名,点击弹出文件列表
|
|
|
|
|
+ if (d.attachmentCount > 1) {
|
|
|
|
|
+ var displayName = d.allAttachmentNames || '';
|
|
|
|
|
+ if (displayName.length > 40) {
|
|
|
|
|
+ displayName = displayName.substring(0, 40) + '...';
|
|
|
|
|
+ }
|
|
|
|
|
+ return '<a href="javascript:void(0)" class="attention-info" onclick="showAttachmentList(\'' + d.id + '\')" title="' + (d.allAttachmentNames || '') + '">' + displayName + '</a>';
|
|
|
|
|
+ }
|
|
|
|
|
+ // 单文件:原有逻辑不变
|
|
|
if(2 == d.uploadMode){
|
|
if(2 == d.uploadMode){
|
|
|
if(d.fileName.toLowerCase().indexOf('jpg') != -1 || d.fileName.toLowerCase().indexOf('png') != -1 || d.fileName.toLowerCase().indexOf('gif') != -1 || d.fileName.toLowerCase().indexOf('bmp') != -1 || d.fileName.toLowerCase().indexOf('jpeg') != -1){
|
|
if(d.fileName.toLowerCase().indexOf('jpg') != -1 || d.fileName.toLowerCase().indexOf('png') != -1 || d.fileName.toLowerCase().indexOf('gif') != -1 || d.fileName.toLowerCase().indexOf('bmp') != -1 || d.fileName.toLowerCase().indexOf('jpeg') != -1){
|
|
|
return "<img src="+d.temporaryUrl+" width='50' height='50' onclick=\"openDialogView('预览','${ctx}/sys/picturepreview/picturePreview?url=" + d.temporaryUrl +"','90%','90%')\" alt='"+d.fileName+"'>";
|
|
return "<img src="+d.temporaryUrl+" width='50' height='50' onclick=\"openDialogView('预览','${ctx}/sys/picturepreview/picturePreview?url=" + d.temporaryUrl +"','90%','90%')\" alt='"+d.fileName+"'>";
|
|
@@ -1019,7 +1081,7 @@
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
//添加手动赋分功能(主要是为了有些文章不适合审批,上传人可能都不是文档原创的本人。上传之后,由具有相关权限的人直接进行赋分,赋分后文档相当于直接审核通过)
|
|
//添加手动赋分功能(主要是为了有些文章不适合审批,上传人可能都不是文档原创的本人。上传之后,由具有相关权限的人直接进行赋分,赋分后文档相当于直接审核通过)
|
|
|
- <shiro:hasPermission name="workKnowledgeBase:share:audit">
|
|
|
|
|
|
|
+ <shiro:hasPermission name="workKnowledgeBase:share:manualScoring">
|
|
|
if (d.canManualScore === '1' && d.auditStatus !== 5 && !d.isQaCategory) {
|
|
if (d.canManualScore === '1' && d.auditStatus !== 5 && !d.isQaCategory) {
|
|
|
xml += '<a href="javascript:void(0)" onclick="openManualScoreDialog(\'' + d.id + '\')" class="layui-btn layui-btn-xs layui-bg-green"> 手动赋分</a>';
|
|
xml += '<a href="javascript:void(0)" onclick="openManualScoreDialog(\'' + d.id + '\')" class="layui-btn layui-btn-xs layui-bg-green"> 手动赋分</a>';
|
|
|
}
|
|
}
|
|
@@ -1050,6 +1112,8 @@
|
|
|
,"temporaryUrl": "<c:out value='${row.temporaryUrl}'/>"
|
|
,"temporaryUrl": "<c:out value='${row.temporaryUrl}'/>"
|
|
|
,"uploadMode": "<c:out value='${row.uploadMode}'/>"
|
|
,"uploadMode": "<c:out value='${row.uploadMode}'/>"
|
|
|
,"fileUrl": "<c:out value='${row.fileUrl}'/>"
|
|
,"fileUrl": "<c:out value='${row.fileUrl}'/>"
|
|
|
|
|
+ ,"attachmentCount": ${row.attachmentCount != null ? row.attachmentCount : 0}
|
|
|
|
|
+ ,"allAttachmentNames": "<c:out value='${row.allAttachmentNames}'/>"
|
|
|
,"createTime": "${row.createTime}"
|
|
,"createTime": "${row.createTime}"
|
|
|
,"createByName": "${row.createByName}"
|
|
,"createByName": "${row.createByName}"
|
|
|
,"userid": "${fns:getUser().id}"
|
|
,"userid": "${fns:getUser().id}"
|