Merge remote-tracking branch 'origin/dev_2024325_BZSQ' into dev_2024325_BZSQ

This commit is contained in:
baoyu
2024-03-29 12:46:08 +08:00
11 changed files with 419 additions and 168 deletions
+66 -16
View File
@@ -17,7 +17,14 @@
:style="backdrop(item.taskStatus)" :style="backdrop(item.taskStatus)"
:class="{'flow-group-process-content-dis':!leftArrow(index + 1)}"> :class="{'flow-group-process-content-dis':!leftArrow(index + 1)}">
<div class="flow-group-process-content-top"> <div class="flow-group-process-content-top">
{{item.taskKeyName}} <el-tooltip placement="top">
<div slot="content">
{{item.taskKeyName}}
</div>
<div>
{{item.taskKeyName}}
</div>
</el-tooltip>
</div> </div>
<el-tooltip placement="top"> <el-tooltip placement="top">
<div slot="content"> <div slot="content">
@@ -30,7 +37,7 @@
v-if="item.userNames && item.userNames.length > 0"> v-if="item.userNames && item.userNames.length > 0">
<div v-if="item.userNames && item.userNames.length > 0" <div v-if="item.userNames && item.userNames.length > 0"
v-for="val in item.userNames"> v-for="val in item.userNames">
<div>{{val}}</div> <div class="flow-group-process-content-bottom-text">{{val}}</div>
</div> </div>
</div> </div>
</el-tooltip> </el-tooltip>
@@ -103,6 +110,16 @@
<span>{{ scope.row.endTime ? $moment(scope.row.endTime).format('YYYY-MM-DD HH:mm:ss') : '' }}</span> <span>{{ scope.row.endTime ? $moment(scope.row.endTime).format('YYYY-MM-DD HH:mm:ss') : '' }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column
v-if="$route.query.prcType == '3'"
prop="parentUserName"
label="任务分发人"
align="center"
>
<template slot-scope="scope">
<span>{{ scope.row.parentUserName }}</span>
</template>
</el-table-column>
<el-table-column <el-table-column
prop="commitText" prop="commitText"
label="意见内容" label="意见内容"
@@ -219,11 +236,6 @@
} }
}, },
mounted() { mounted() {
if (this.$route.query.oldAndNew == 'new') {
this.getProcessList()
} else {
this.processNum()
}
this.processTable() this.processTable()
}, },
methods: { methods: {
@@ -248,6 +260,11 @@
_this: this _this: this
}, res => { }, res => {
this.histortData = res this.histortData = res
if (this.$route.query.oldAndNew == 'new') {
this.getProcessList()
} else {
this.processNum()
}
this.loading = false this.loading = false
}, e => { }, e => {
}) })
@@ -267,6 +284,29 @@
val.userNames = val.userNames.split(',') val.userNames = val.userNames.split(',')
} }
}) })
if (this.$route.query.prcType == 'buss1'){
if (this.histortData && this.histortData.length > 0){
if (this.histortData[this.histortData.length - 1].taskKey == 'BussLibraryC3'){
this.nameList.forEach(val => {
if (val.taskKey == 'BussLibrary3') {
val.taskStatus = 'todo'
}
})
}else if (this.histortData[this.histortData.length - 1].taskKey == 'BussLibraryC1'){
this.nameList.forEach(val => {
if (val.taskKey == 'BussLibrary1') {
val.taskStatus = 'todo'
}
})
}else if (this.histortData[this.histortData.length - 1].taskKey == 'BussLibraryC6'){
this.nameList.forEach(val => {
if (val.taskKey == 'BussLibrary6') {
val.taskStatus = 'todo'
}
})
}
}
}
this.$nextTick(() => { this.$nextTick(() => {
let flowGroupProcess = document.getElementsByClassName('flow-group-process') let flowGroupProcess = document.getElementsByClassName('flow-group-process')
let num = (flowGroupProcess[0].offsetWidth - 100) / 248 let num = (flowGroupProcess[0].offsetWidth - 100) / 248
@@ -415,7 +455,7 @@
line-height: 40px; line-height: 40px;
font-weight: 600; font-weight: 600;
float: inline-start; float: inline-start;
margin-top: 18px; margin-top: 28px;
} }
.flow-group-process-end { .flow-group-process-end {
@@ -430,7 +470,7 @@
line-height: 40px; line-height: 40px;
font-weight: 600; font-weight: 600;
float: inline-end; float: inline-end;
margin-top: 20px; margin-top: 28px;
} }
.flow-group-process-end-left { .flow-group-process-end-left {
@@ -529,21 +569,31 @@
.flow-group-process-content-top { .flow-group-process-content-top {
width: 100%; width: 100%;
height: 40px; margin-top: 10px;
line-height: 40px; margin-bottom: 10px;
font-size: 12px; font-size: 12px;
word-break: break-all;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 1; /* 超出几行省略 */
overflow: hidden;
} }
.flow-group-process-content-bottom { .flow-group-process-content-bottom {
width: 100%; width: 100%;
font-size: 12px; font-size: 12px;
line-height: 1.4; line-height: 1.4;
word-break: break-all; height: 54px;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2; /* 超出几行省略 */
overflow: hidden; overflow: hidden;
.flow-group-process-content-bottom-text{
word-break: break-all;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 1; /* 超出几行省略 */
overflow: hidden;
}
} }
.flow-group-process-arrow-dis { .flow-group-process-arrow-dis {
@@ -188,6 +188,16 @@ export default {
} }
break break
case 'buss1': case 'buss1':
let oldAndNewBuss = ''
const currentDateBuss = new Date('2024-01-25 23:59:59').getTime();
const dateBuss = new Date(row.creatTime);
const timestampBuss = dateBuss.getTime();
if (currentDateBuss > timestampBuss){
oldAndNewBuss = 'old'
}else{
oldAndNewBuss = 'new'
}
query.oldAndNew = oldAndNewBuss
if (row.taskInfo === '企标编写') { if (row.taskInfo === '企标编写') {
name = 'bussLibrary2' name = 'bussLibrary2'
}else if (row.taskInfo === '企标编写汇总'){ }else if (row.taskInfo === '企标编写汇总'){
@@ -219,6 +229,7 @@ export default {
}else if (row.taskInfo === '发布'){ }else if (row.taskInfo === '发布'){
name = 'bussLibrary13' name = 'bussLibrary13'
} }
break break
case 'buss2': case 'buss2':
name = 'bussLibraryProduct' name = 'bussLibraryProduct'
@@ -317,6 +328,16 @@ export default {
} }
break; break;
case '3': case '3':
let oldAndNewBuss1 = ''
const currentDateBuss1 = new Date('2024-01-25 23:59:59').getTime();
const dateBuss1 = new Date(row.creatTime);
const timestampBuss1 = dateBuss1.getTime();
if (currentDateBuss1 > timestampBuss1){
oldAndNewBuss1 = 'old'
}else{
oldAndNewBuss1 = 'new'
}
query.oldAndNew = oldAndNewBuss1
if (row.taskInfo === '任务分发') { if (row.taskInfo === '任务分发') {
name = 'bzzqyjStep2' name = 'bzzqyjStep2'
} else if (row.taskInfo === '意见反馈'){ } else if (row.taskInfo === '意见反馈'){
@@ -186,9 +186,9 @@
<div v-if="!isTrue" style="width: 80%;margin-top: 13px"> <div v-if="!isTrue" style="width: 80%;margin-top: 13px">
<div v-for="(item,index) in FBGBUSSFileList" :key="index" style="color: #409eff;cursor:pointer;" class="fileClass"> <div v-for="(item,index) in FBGBUSSFileList" :key="index" style="color: #409eff;cursor:pointer;" class="fileClass">
<span style="" :title="item.name" @click="handleFilePreview(item,'preview')"> {{ item.name }}</span> <span style="" :title="item.name" @click="handleFilePreview(item,'preview')"> {{ item.name }}</span>
<span v-if="item.id !== '' && item.id.startsWith('ATT')" style="margin-left: 7px;"> <!-- <span v-if="item.id !== '' && item.id.startsWith('ATT')" style="margin-left: 7px;">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" /> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" />-->
</span> <!-- </span>-->
</div> </div>
</div> </div>
<div style="width: 20%;"> <div style="width: 20%;">
@@ -212,19 +212,37 @@
clearable clearable
/> />
<div style="display: flex;justify-content: space-between;margin-left: 12px;"> <div style="display: flex;justify-content: space-between;margin-left: 12px;">
<div style="width: 80%;margin-top: 13px"> <div v-if="isTrue" style="width: 80%;margin-top: 13px">
<div <div
v-for="(item,index) in LSBBBUSSFileList" v-for="(item,index) in LSBBBUSSFileList"
:key="index" :key="index"
style="color: #409eff;cursor:pointer" style="color: #409eff;cursor:pointer"
class="fileClass" class="fileClass"
> >
<span style="" :title="item.name" @click="handleFilePreview(item,'preview')">{{ item.name }}</span> <span style="" :title="item.name" @click="handleFilePreview(item,'preview')">{{ item.name }}</span>
<span v-if="item.id !== ''" style="margin-left: 7px;"> <span style="margin-left: 7px;">
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" /> <i class="el-icon-view" style="font-size: 18px" title="预览" @click="viewOnlyOffice(item)" />
</span> </span>
<!-- <span v-if="item.id !== ''" style="margin-left: 7px;">-->
<!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" />-->
<!-- </span>-->
</div>
</div> </div>
</div>
<div v-if="!isTrue" style="width: 80%;margin-top: 13px">
<div
v-for="(item,index) in LSBBBUSSFileList"
:key="index"
style="color: #409eff;cursor:pointer"
class="fileClass"
>
<span style="" :title="item.name" @click="handleFilePreview(item,'preview')">{{ item.name }}</span>
<!-- <span v-if="item.id !== ''" style="margin-left: 7px;">-->
<!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" />-->
<!-- </span>-->
</div>
</div>
<div style="width: 20%;"> <div style="width: 20%;">
<el-button <el-button
type="primary" type="primary"
@@ -256,9 +274,9 @@
class="fileClass" class="fileClass"
> >
<span style="" :title="item.name" @click="handleFilePreview(item,'preview')">{{ item.name }}</span> <span style="" :title="item.name" @click="handleFilePreview(item,'preview')">{{ item.name }}</span>
<span v-if="item.id !== ''" style="margin-left: 7px;"> <!-- <span v-if="item.id !== ''" style="margin-left: 7px;">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" /> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" />-->
</span> <!-- </span>-->
</div> </div>
</div> </div>
<div style="width: 20%;"> <div style="width: 20%;">
@@ -290,9 +308,9 @@
class="fileClass" class="fileClass"
> >
<span style="" :title="item.name" @click="handleFilePreview(item,'preview')">{{ item.name }}</span> <span style="" :title="item.name" @click="handleFilePreview(item,'preview')">{{ item.name }}</span>
<span v-if="item.id !== ''" style="margin-left: 7px;"> <!-- <span v-if="item.id !== ''" style="margin-left: 7px;">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" /> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" />-->
</span> <!-- </span>-->
</div> </div>
</div> </div>
<div style="width: 20%;"> <div style="width: 20%;">
@@ -577,9 +595,9 @@
class="fileClass" class="fileClass"
> >
<span style="" :title="item.name" @click="handleFilePreview(item,'preview')">{{ item.name }}</span> <span style="" :title="item.name" @click="handleFilePreview(item,'preview')">{{ item.name }}</span>
<span v-if="item.id !== ''" style="margin-left: 7px;"> <!-- <span v-if="item.id !== ''" style="margin-left: 7px;">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" /> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" />-->
</span> <!-- </span>-->
</div> </div>
</div> </div>
<div style="width: 20%;"> <div style="width: 20%;">
@@ -745,9 +763,9 @@
class="fileClass" class="fileClass"
> >
<span style="" @click="handleFilePreview(item,'preview')">{{ item.name }}</span> <span style="" @click="handleFilePreview(item,'preview')">{{ item.name }}</span>
<span v-if="item.id !== ''" style="margin-left: 7px;"> <!-- <span v-if="item.id !== ''" style="margin-left: 7px;">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" /> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" />-->
</span> <!-- </span>-->
</div> </div>
</el-form-item> </el-form-item>
</el-col> </el-col>
@@ -775,9 +793,9 @@
class="fileClass" class="fileClass"
> >
<span style="" @click="handleFilePreview(item,'preview')">{{ item.name }}</span> <span style="" @click="handleFilePreview(item,'preview')">{{ item.name }}</span>
<span style="margin-left: 7px;"> <!-- <span style="margin-left: 7px;">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" /> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" />-->
</span> <!-- </span>-->
</div> </div>
</div> </div>
<div style="width: 20%;"> <div style="width: 20%;">
@@ -802,6 +820,7 @@
<script> <script>
import { mapGetters } from 'vuex' import { mapGetters } from 'vuex'
import ProcessTitle from '../../../components/ProcessTitle' import ProcessTitle from '../../../components/ProcessTitle'
import { onlyOfficeUrl } from '@/sysConfig'
export default { export default {
name: 'FormEditList', name: 'FormEditList',
@@ -1023,6 +1042,20 @@ export default {
} }
}, },
methods: { methods: {
viewOnlyOffice (item) {
const key = new Date().getTime()
let oldFileName = item.name
let index1 = oldFileName.lastIndexOf('.')
let fileSuffix = oldFileName.substring(index1+1, oldFileName.length)
fileSuffix = fileSuffix.toLowerCase()
oldFileName = oldFileName.substring(0, index1)
if (fileSuffix == 'pdf' || fileSuffix == 'doc' || fileSuffix == 'docx'){
window.open(onlyOfficeUrl + '/viewHistoryOnlyOffice?oldFileName=' + oldFileName + '&fileType=' + fileSuffix +
'&attId=' + item.id + '&key=' + key + '&userName=' + this.$store.getters.userInfo.uName)
}else{
this.$message.warning('此文件不支持onlyoffice预览')
}
},
filterOp (data) { filterOp (data) {
if (!data) { if (!data) {
return '' return ''
@@ -184,9 +184,9 @@
@click="handleFilePreviewOne(item,'onlineEdit')" @click="handleFilePreviewOne(item,'onlineEdit')"
/> />
</span> </span>
<span v-if="item.id !== '' && item.id.startsWith('ATT')" style="margin-left: 7px;"> <!-- <span v-if="item.id !== '' && item.id.startsWith('ATT')" style="margin-left: 7px;">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" /> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" />-->
</span> <!-- </span>-->
</div> </div>
</div> </div>
<div v-if="!isTrue" style="width: 80%;margin-top: 13px"> <div v-if="!isTrue" style="width: 80%;margin-top: 13px">
@@ -203,9 +203,9 @@
> >
{{ item.name }} {{ item.name }}
</span> </span>
<span v-if="item.id !== '' && item.id.startsWith('ATT')" style="margin-left: 7px;"> <!-- <span v-if="item.id !== '' && item.id.startsWith('ATT')" style="margin-left: 7px;">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" /> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" />-->
</span> <!-- </span>-->
</div> </div>
</div> </div>
<div style="width: 20%;"> <div style="width: 20%;">
@@ -229,12 +229,23 @@
clearable clearable
/> />
<div style="display: flex;justify-content: space-between;margin-left: 12px;"> <div style="display: flex;justify-content: space-between;margin-left: 12px;">
<div style="width: 80%;margin-top: 13px"> <div v-if="isTrue" style="width: 80%;margin-top: 13px">
<div v-for="(item,index) in LSBBBUSSFileList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass"> <div v-for="(item,index) in LSBBBUSSFileList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass">
<span style="" :title="item.name" @click="handleFilePreview(item,'preview')">{{ item.name }}</span> <span style="" :title="item.name" @click="handleFilePreview(item,'preview')">{{ item.name }}</span>
<span v-if="item.id !== ''" style="margin-left: 7px;"> <span style="margin-left: 7px;">
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" /> <i class="el-icon-view" style="font-size: 18px" title="预览" @click="viewOnlyOffice(item)" />
</span> </span>
<!-- <span v-if="item.id !== ''" style="margin-left: 7px;">-->
<!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" />-->
<!-- </span>-->
</div>
</div>
<div v-if="!isTrue" style="width: 80%;margin-top: 13px">
<div v-for="(item,index) in LSBBBUSSFileList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass">
<span style="" :title="item.name" @click="handleFilePreview(item,'preview')">{{ item.name }}</span>
<!-- <span v-if="item.id !== ''" style="margin-left: 7px;">-->
<!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" />-->
<!-- </span>-->
</div> </div>
</div> </div>
<div style="width: 20%;"> <div style="width: 20%;">
@@ -263,9 +274,9 @@
<div style="width: 80%;margin-top: 13px"> <div style="width: 80%;margin-top: 13px">
<div v-for="(item,index) in BZSMBUSSFileList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass"> <div v-for="(item,index) in BZSMBUSSFileList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass">
<span style="" :title="item.name" @click="handleFilePreview(item,'preview')">{{ item.name }}</span> <span style="" :title="item.name" @click="handleFilePreview(item,'preview')">{{ item.name }}</span>
<span v-if="item.id !== ''" style="margin-left: 7px;"> <!-- <span v-if="item.id !== ''" style="margin-left: 7px;">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" /> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" />-->
</span> <!-- </span>-->
</div> </div>
</div> </div>
<div style="width: 20%;"> <div style="width: 20%;">
@@ -292,9 +303,9 @@
<div style="width: 80%;margin-top: 13px"> <div style="width: 80%;margin-top: 13px">
<div v-for="(item,index) in QTWJBUSSFileList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass"> <div v-for="(item,index) in QTWJBUSSFileList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass">
<span style="" :title="item.name" @click="handleFilePreview(item,'preview')">{{ item.name }}</span> <span style="" :title="item.name" @click="handleFilePreview(item,'preview')">{{ item.name }}</span>
<span v-if="item.id !== ''" style="margin-left: 7px;"> <!-- <span v-if="item.id !== ''" style="margin-left: 7px;">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" /> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" />-->
</span> <!-- </span>-->
</div> </div>
</div> </div>
<div style="width: 20%;"> <div style="width: 20%;">
@@ -547,9 +558,9 @@
<div style="width: 80%;margin-top: 13px"> <div style="width: 80%;margin-top: 13px">
<div v-for="(item,index) in GLWJBUSSFileList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass"> <div v-for="(item,index) in GLWJBUSSFileList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass">
<span style="" :title="item.name" @click="handleFilePreview(item,'preview')">{{ item.name }}</span> <span style="" :title="item.name" @click="handleFilePreview(item,'preview')">{{ item.name }}</span>
<span v-if="item.id !== ''" style="margin-left: 7px;"> <!-- <span v-if="item.id !== ''" style="margin-left: 7px;">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" /> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" />-->
</span> <!-- </span>-->
</div> </div>
</div> </div>
<div style="width: 20%;"> <div style="width: 20%;">
@@ -715,9 +726,9 @@
class="fileClass" class="fileClass"
> >
<span style="" @click="handleFilePreview(item,'preview')">{{ item.name }}</span> <span style="" @click="handleFilePreview(item,'preview')">{{ item.name }}</span>
<span v-if="item.id !== ''" style="margin-left: 7px;"> <!-- <span v-if="item.id !== ''" style="margin-left: 7px;">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" /> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" />-->
</span> <!-- </span>-->
</div> </div>
</el-form-item> </el-form-item>
</el-col> </el-col>
@@ -740,9 +751,9 @@
<div style="width: 80%;margin-top: 13px"> <div style="width: 80%;margin-top: 13px">
<div v-for="(item,index) in madelSubList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass"> <div v-for="(item,index) in madelSubList" :key="index" style="color: #409eff;cursor:pointer" class="fileClass">
<span style="" @click="handleFilePreview(item,'preview')">{{ item.name }}</span> <span style="" @click="handleFilePreview(item,'preview')">{{ item.name }}</span>
<span style="margin-left: 7px;"> <!-- <span style="margin-left: 7px;">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" /> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" />-->
</span> <!-- </span>-->
</div> </div>
</div> </div>
<div style="width: 20%;"> <div style="width: 20%;">
@@ -767,6 +778,7 @@
<script> <script>
import { mapGetters } from 'vuex' import { mapGetters } from 'vuex'
import { onlyOfficeUrl } from '@/sysConfig'
import ProcessTitle from '../../../components/ProcessTitle' import ProcessTitle from '../../../components/ProcessTitle'
import CurrentOrder from '@/pages/processCenter/pages/components/CurrentOrder'; import CurrentOrder from '@/pages/processCenter/pages/components/CurrentOrder';
@@ -999,6 +1011,20 @@ export default {
} }
}, },
methods: { methods: {
viewOnlyOffice (item) {
const key = new Date().getTime()
let oldFileName = item.name
let index1 = oldFileName.lastIndexOf('.')
let fileSuffix = oldFileName.substring(index1+1, oldFileName.length)
fileSuffix = fileSuffix.toLowerCase()
oldFileName = oldFileName.substring(0, index1)
if (fileSuffix == 'pdf' || fileSuffix == 'doc' || fileSuffix == 'docx'){
window.open(onlyOfficeUrl + '/viewHistoryOnlyOffice?oldFileName=' + oldFileName + '&fileType=' + fileSuffix +
'&attId=' + item.id + '&key=' + key + '&userName=' + this.$store.getters.userInfo.uName)
}else{
this.$message.warning('此文件不支持onlyoffice预览')
}
},
queryOrder () { queryOrder () {
this.$refs.CurrentOrderRef.open(this.form.standSort, this.form.standNum) this.$refs.CurrentOrderRef.open(this.form.standSort, this.form.standNum)
}, },
@@ -104,9 +104,9 @@
<el-form-item label="发布稿" prop="FBGBUSSName" class="add-form-item form-item-disabled"> <el-form-item label="发布稿" prop="FBGBUSSName" class="add-form-item form-item-disabled">
<div v-if="FBGBUSSFileList.length > 0" v-for="(item,index) in FBGBUSSFileList" :key="index" style="color: #409eff;cursor:pointer;margin-left: 12px;margin-top: 13px" class="fileClass"> <div v-if="FBGBUSSFileList.length > 0" v-for="(item,index) in FBGBUSSFileList" :key="index" style="color: #409eff;cursor:pointer;margin-left: 12px;margin-top: 13px" class="fileClass">
<span style="" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name }}</span> <span style="" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name }}</span>
<span style="margin-left: 7px;" v-if="item.id !== ''"> <!-- <span style="margin-left: 7px;" v-if="item.id !== ''">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')"></i> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')"></i>-->
</span> <!-- </span>-->
</div> </div>
<!-- <div v-if="FBGBUSSFileList.length>0" v-for="(value,index) in this.FBGBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">--> <!-- <div v-if="FBGBUSSFileList.length>0" v-for="(value,index) in this.FBGBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">-->
<!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;--> <!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;-->
@@ -116,9 +116,9 @@
<el-form-item label="历史版本" prop="LSBBBUSSName" class="add-form-item form-item-disabled"> <el-form-item label="历史版本" prop="LSBBBUSSName" class="add-form-item form-item-disabled">
<div v-if="LSBBBUSSFileList.length > 0" v-for="(item,index) in LSBBBUSSFileList" :key="index" style="color: #409eff;cursor:pointer;margin-left: 12px;margin-top: 13px" class="fileClass"> <div v-if="LSBBBUSSFileList.length > 0" v-for="(item,index) in LSBBBUSSFileList" :key="index" style="color: #409eff;cursor:pointer;margin-left: 12px;margin-top: 13px" class="fileClass">
<span style="" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name }}</span> <span style="" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name }}</span>
<span style="margin-left: 7px;" v-if="item.id !== ''"> <!-- <span style="margin-left: 7px;" v-if="item.id !== ''">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')"></i> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')"></i>-->
</span> <!-- </span>-->
</div> </div>
<!-- <div v-if="LSBBBUSSFileList.length>0" v-for="(value,index) in this.LSBBBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">--> <!-- <div v-if="LSBBBUSSFileList.length>0" v-for="(value,index) in this.LSBBBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">-->
<!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;--> <!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;-->
@@ -130,9 +130,9 @@
<el-form-item label="编制说明" prop="BZSMBUSSName" class="add-form-item form-item-disabled"> <el-form-item label="编制说明" prop="BZSMBUSSName" class="add-form-item form-item-disabled">
<div v-if="BZSMBUSSFileList.length > 0" v-for="(item,index) in BZSMBUSSFileList" :key="index" style="color: #409eff;cursor:pointer;margin-left: 12px;margin-top: 13px" class="fileClass"> <div v-if="BZSMBUSSFileList.length > 0" v-for="(item,index) in BZSMBUSSFileList" :key="index" style="color: #409eff;cursor:pointer;margin-left: 12px;margin-top: 13px" class="fileClass">
<span style="" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name }}</span> <span style="" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name }}</span>
<span style="margin-left: 7px;" v-if="item.id !== ''"> <!-- <span style="margin-left: 7px;" v-if="item.id !== ''">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')"></i> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')"></i>-->
</span> <!-- </span>-->
</div> </div>
<!-- <div v-if="BZSMBUSSFileList.length>0" v-for="(value,index) in this.BZSMBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">--> <!-- <div v-if="BZSMBUSSFileList.length>0" v-for="(value,index) in this.BZSMBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">-->
<!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;--> <!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;-->
@@ -142,9 +142,9 @@
<el-form-item label="其他文件" prop="QTWJBUSSName" class="add-form-item form-item-disabled"> <el-form-item label="其他文件" prop="QTWJBUSSName" class="add-form-item form-item-disabled">
<div v-if="QTWJBUSSFileList.length > 0" v-for="(item,index) in QTWJBUSSFileList" :key="index" style="color: #409eff;cursor:pointer;margin-left: 12px;margin-top: 13px" class="fileClass"> <div v-if="QTWJBUSSFileList.length > 0" v-for="(item,index) in QTWJBUSSFileList" :key="index" style="color: #409eff;cursor:pointer;margin-left: 12px;margin-top: 13px" class="fileClass">
<span style="" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name }}</span> <span style="" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name }}</span>
<span style="margin-left: 7px;" v-if="item.id !== ''"> <!-- <span style="margin-left: 7px;" v-if="item.id !== ''">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')"></i> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')"></i>-->
</span> <!-- </span>-->
</div> </div>
<!-- <div v-if="QTWJBUSSFileList.length>0" v-for="(value,index) in this.QTWJBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">--> <!-- <div v-if="QTWJBUSSFileList.length>0" v-for="(value,index) in this.QTWJBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">-->
<!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;--> <!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;-->
@@ -288,9 +288,9 @@
<el-form-item label="关联文件" prop="GLWJBUSSName" class="add-form-item form-item-disabled"> <el-form-item label="关联文件" prop="GLWJBUSSName" class="add-form-item form-item-disabled">
<div v-if="GLWJBUSSFileList.length > 0" v-for="(item,index) in GLWJBUSSFileList" :key="index" style="color: #409eff;cursor:pointer;margin-left: 12px;margin-top: 13px" class="fileClass"> <div v-if="GLWJBUSSFileList.length > 0" v-for="(item,index) in GLWJBUSSFileList" :key="index" style="color: #409eff;cursor:pointer;margin-left: 12px;margin-top: 13px" class="fileClass">
<span style="" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name }}</span> <span style="" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name }}</span>
<span style="margin-left: 7px;" v-if="item.id !== ''"> <!-- <span style="margin-left: 7px;" v-if="item.id !== ''">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')"></i> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')"></i>-->
</span> <!-- </span>-->
</div> </div>
<!-- <div v-if="GLWJBUSSFileList.length>0" v-for="(value,index) in this.GLWJBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">--> <!-- <div v-if="GLWJBUSSFileList.length>0" v-for="(value,index) in this.GLWJBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">-->
<!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;--> <!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;-->
@@ -436,9 +436,9 @@
<el-form-item label="汇总评审意见文件" prop="GLWJBUSSName" class="add-form-item form-item-disabled"> <el-form-item label="汇总评审意见文件" prop="GLWJBUSSName" class="add-form-item form-item-disabled">
<div v-if="summaryFileList.length > 0" v-for="(item,index) in summaryFileList" :key="index" style="color: #409eff;cursor:pointer;margin-left: 12px;margin-top: 13px" class="fileClass"> <div v-if="summaryFileList.length > 0" v-for="(item,index) in summaryFileList" :key="index" style="color: #409eff;cursor:pointer;margin-left: 12px;margin-top: 13px" class="fileClass">
<span style="" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name }}</span> <span style="" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name }}</span>
<span style="margin-left: 7px;" v-if="item.id !== ''"> <!-- <span style="margin-left: 7px;" v-if="item.id !== ''">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')"></i> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')"></i>-->
</span> <!-- </span>-->
</div> </div>
</el-form-item> </el-form-item>
</el-col> </el-col>
@@ -146,9 +146,9 @@
@click="handleFilePreviewOne(item,'onlineEdit')" @click="handleFilePreviewOne(item,'onlineEdit')"
/> />
</span> </span>
<span v-if="item.id !== '' && item.id.startsWith('ATT')" style="margin-left: 7px;"> <!-- <span v-if="item.id !== '' && item.id.startsWith('ATT')" style="margin-left: 7px;">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" /> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" />-->
</span> <!-- </span>-->
</div> </div>
</div> </div>
@@ -161,9 +161,9 @@
class="fileClass" class="fileClass"
> >
<span style="" :title="item.name" @click="handleFilePreview(item,'preview')"> {{ item.name }}</span> <span style="" :title="item.name" @click="handleFilePreview(item,'preview')"> {{ item.name }}</span>
<span v-if="item.id !== '' && item.id.startsWith('ATT')" style="margin-left: 7px;"> <!-- <span v-if="item.id !== '' && item.id.startsWith('ATT')" style="margin-left: 7px;">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" /> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" />-->
</span> <!-- </span>-->
</div> </div>
</div> </div>
@@ -173,17 +173,36 @@
<!-- </div>--> <!-- </div>-->
</el-form-item> </el-form-item>
<el-form-item label="历史版本" prop="LSBBBUSSName" class="add-form-item form-item-disabled"> <el-form-item label="历史版本" prop="LSBBBUSSName" class="add-form-item form-item-disabled">
<div <div v-if="isTrue">
v-for="(item,index) in LSBBBUSSFileList" <div
v-if="LSBBBUSSFileList.length > 0" v-for="(item,index) in LSBBBUSSFileList"
:key="index" v-if="LSBBBUSSFileList.length > 0"
style="color: #409eff;cursor:pointer;margin-left: 12px;margin-top: 13px" :key="index"
class="fileClass" style="color: #409eff;cursor:pointer;margin-left: 12px;margin-top: 13px"
> class="fileClass"
<span style="" :title="item.name" @click="handleFilePreview(item,'preview')"> {{ item.name }}</span> >
<span v-if="item.id !== ''" style="margin-left: 7px;"> <span style="" :title="item.name" @click="handleFilePreview(item,'preview')"> {{ item.name }}</span>
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" /> <span style="margin-left: 7px;">
</span> <i class="el-icon-view" style="font-size: 18px" title="预览" @click="viewOnlyOffice(item)" />
</span>
<!-- <span v-if="item.id !== ''" style="margin-left: 7px;">-->
<!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" />-->
<!-- </span>-->
</div>
</div>
<div v-if="!isTrue">
<div
v-for="(item,index) in LSBBBUSSFileList"
v-if="LSBBBUSSFileList.length > 0"
:key="index"
style="color: #409eff;cursor:pointer;margin-left: 12px;margin-top: 13px"
class="fileClass"
>
<span style="" :title="item.name" @click="handleFilePreview(item,'preview')"> {{ item.name }}</span>
<!-- <span v-if="item.id !== ''" style="margin-left: 7px;">-->
<!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" />-->
<!-- </span>-->
</div>
</div> </div>
<!-- <div v-if="LSBBBUSSFileList.length>0" v-for="(value,index) in this.LSBBBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">--> <!-- <div v-if="LSBBBUSSFileList.length>0" v-for="(value,index) in this.LSBBBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">-->
<!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;--> <!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;-->
@@ -201,9 +220,9 @@
class="fileClass" class="fileClass"
> >
<span style="" :title="item.name" @click="handleFilePreview(item,'preview')"> {{ item.name }}</span> <span style="" :title="item.name" @click="handleFilePreview(item,'preview')"> {{ item.name }}</span>
<span v-if="item.id !== ''" style="margin-left: 7px;"> <!-- <span v-if="item.id !== ''" style="margin-left: 7px;">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" /> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" />-->
</span> <!-- </span>-->
</div> </div>
<!-- <div v-if="BZSMBUSSFileList.length>0" v-for="(value,index) in this.BZSMBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">--> <!-- <div v-if="BZSMBUSSFileList.length>0" v-for="(value,index) in this.BZSMBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">-->
<!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;--> <!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;-->
@@ -219,9 +238,9 @@
class="fileClass" class="fileClass"
> >
<span style="" :title="item.name" @click="handleFilePreview(item,'preview')"> {{ item.name }}</span> <span style="" :title="item.name" @click="handleFilePreview(item,'preview')"> {{ item.name }}</span>
<span v-if="item.id !== ''" style="margin-left: 7px;"> <!-- <span v-if="item.id !== ''" style="margin-left: 7px;">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" /> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" />-->
</span> <!-- </span>-->
</div> </div>
<!-- <div v-if="QTWJBUSSFileList.length>0" v-for="(value,index) in this.QTWJBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">--> <!-- <div v-if="QTWJBUSSFileList.length>0" v-for="(value,index) in this.QTWJBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">-->
<!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;--> <!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;-->
@@ -421,9 +440,9 @@
class="fileClass" class="fileClass"
> >
<span style="" :title="item.name" @click="handleFilePreview(item,'preview')"> {{ item.name }}</span> <span style="" :title="item.name" @click="handleFilePreview(item,'preview')"> {{ item.name }}</span>
<span v-if="item.id !== ''" style="margin-left: 7px;"> <!-- <span v-if="item.id !== ''" style="margin-left: 7px;">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" /> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" />-->
</span> <!-- </span>-->
</div> </div>
<!-- <div v-if="GLWJBUSSFileList.length>0" v-for="(value,index) in this.GLWJBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">--> <!-- <div v-if="GLWJBUSSFileList.length>0" v-for="(value,index) in this.GLWJBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">-->
<!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;--> <!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;-->
@@ -583,9 +602,9 @@
class="fileClass" class="fileClass"
> >
<span style="" :title="item.name" @click="handleFilePreview(item,'preview')"> {{ item.name }}</span> <span style="" :title="item.name" @click="handleFilePreview(item,'preview')"> {{ item.name }}</span>
<span v-if="item.id !== ''" style="margin-left: 7px;"> <!-- <span v-if="item.id !== ''" style="margin-left: 7px;">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" /> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')" />-->
</span> <!-- </span>-->
</div> </div>
</el-form-item> </el-form-item>
</el-col> </el-col>
@@ -597,6 +616,7 @@
<script> <script>
import { mapGetters } from 'vuex' import { mapGetters } from 'vuex'
import ProcessTitle from '../../../components/ProcessTitle' import ProcessTitle from '../../../components/ProcessTitle'
import { onlyOfficeUrl } from '@/sysConfig'
import axios from 'axios'; import axios from 'axios';
export default { export default {
@@ -741,6 +761,20 @@ export default {
this.getDataAsync() this.getDataAsync()
}, },
methods: { methods: {
viewOnlyOffice (item) {
const key = new Date().getTime()
let oldFileName = item.name
let index1 = oldFileName.lastIndexOf('.')
let fileSuffix = oldFileName.substring(index1+1, oldFileName.length)
fileSuffix = fileSuffix.toLowerCase()
oldFileName = oldFileName.substring(0, index1)
if (fileSuffix == 'pdf' || fileSuffix == 'doc' || fileSuffix == 'docx'){
window.open(onlyOfficeUrl + '/viewHistoryOnlyOffice?oldFileName=' + oldFileName + '&fileType=' + fileSuffix +
'&attId=' + item.id + '&key=' + key + '&userName=' + this.$store.getters.userInfo.uName)
}else{
this.$message.warning('此文件不支持onlyoffice预览')
}
},
filterOp (data) { filterOp (data) {
if (!data) { if (!data) {
return '' return ''
@@ -115,9 +115,9 @@
<el-form-item label="发布稿" prop="FBGBUSSName" class="add-form-item form-item-disabled"> <el-form-item label="发布稿" prop="FBGBUSSName" class="add-form-item form-item-disabled">
<div v-if="FBGBUSSFileList.length > 0" v-for="(item,index) in FBGBUSSFileList" :key="index" style="color: #409eff;cursor:pointer;margin-left: 12px;margin-top: 13px" class="fileClass"> <div v-if="FBGBUSSFileList.length > 0" v-for="(item,index) in FBGBUSSFileList" :key="index" style="color: #409eff;cursor:pointer;margin-left: 12px;margin-top: 13px" class="fileClass">
<span style="" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name }}</span> <span style="" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name }}</span>
<span style="margin-left: 7px;" v-if="item.id !== ''"> <!-- <span style="margin-left: 7px;" v-if="item.id !== ''">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')"></i> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')"></i>-->
</span> <!-- </span>-->
</div> </div>
<!-- <div v-if="FBGBUSSFileList.length>0" v-for="(value,index) in this.FBGBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">--> <!-- <div v-if="FBGBUSSFileList.length>0" v-for="(value,index) in this.FBGBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">-->
<!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;--> <!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;-->
@@ -127,9 +127,9 @@
<el-form-item label="历史版本" prop="LSBBBUSSName" class="add-form-item form-item-disabled"> <el-form-item label="历史版本" prop="LSBBBUSSName" class="add-form-item form-item-disabled">
<div v-if="LSBBBUSSFileList.length > 0" v-for="(item,index) in LSBBBUSSFileList" :key="index" style="color: #409eff;cursor:pointer;margin-left: 12px;margin-top: 13px" class="fileClass"> <div v-if="LSBBBUSSFileList.length > 0" v-for="(item,index) in LSBBBUSSFileList" :key="index" style="color: #409eff;cursor:pointer;margin-left: 12px;margin-top: 13px" class="fileClass">
<span style="" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name }}</span> <span style="" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name }}</span>
<span style="margin-left: 7px;" v-if="item.id !== ''"> <!-- <span style="margin-left: 7px;" v-if="item.id !== ''">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')"></i> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')"></i>-->
</span> <!-- </span>-->
</div> </div>
<!-- <div v-if="LSBBBUSSFileList.length>0" v-for="(value,index) in this.LSBBBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">--> <!-- <div v-if="LSBBBUSSFileList.length>0" v-for="(value,index) in this.LSBBBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">-->
<!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;--> <!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;-->
@@ -141,9 +141,9 @@
<el-form-item label="编制说明" prop="BZSMBUSSName" class="add-form-item form-item-disabled"> <el-form-item label="编制说明" prop="BZSMBUSSName" class="add-form-item form-item-disabled">
<div v-if="BZSMBUSSFileList.length > 0" v-for="(item,index) in BZSMBUSSFileList" :key="index" style="color: #409eff;cursor:pointer;margin-left: 12px;margin-top: 13px" class="fileClass"> <div v-if="BZSMBUSSFileList.length > 0" v-for="(item,index) in BZSMBUSSFileList" :key="index" style="color: #409eff;cursor:pointer;margin-left: 12px;margin-top: 13px" class="fileClass">
<span style="" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name }}</span> <span style="" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name }}</span>
<span style="margin-left: 7px;" v-if="item.id !== ''"> <!-- <span style="margin-left: 7px;" v-if="item.id !== ''">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')"></i> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')"></i>-->
</span> <!-- </span>-->
</div> </div>
<!-- <div v-if="BZSMBUSSFileList.length>0" v-for="(value,index) in this.BZSMBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">--> <!-- <div v-if="BZSMBUSSFileList.length>0" v-for="(value,index) in this.BZSMBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">-->
<!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;--> <!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;-->
@@ -153,9 +153,9 @@
<el-form-item label="其他文件" prop="QTWJBUSSName" class="add-form-item form-item-disabled"> <el-form-item label="其他文件" prop="QTWJBUSSName" class="add-form-item form-item-disabled">
<div v-if="QTWJBUSSFileList.length > 0" v-for="(item,index) in QTWJBUSSFileList" :key="index" style="color: #409eff;cursor:pointer;margin-left: 12px;margin-top: 13px" class="fileClass"> <div v-if="QTWJBUSSFileList.length > 0" v-for="(item,index) in QTWJBUSSFileList" :key="index" style="color: #409eff;cursor:pointer;margin-left: 12px;margin-top: 13px" class="fileClass">
<span style="" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name }}</span> <span style="" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name }}</span>
<span style="margin-left: 7px;" v-if="item.id !== ''"> <!-- <span style="margin-left: 7px;" v-if="item.id !== ''">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')"></i> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')"></i>-->
</span> <!-- </span>-->
</div> </div>
<!-- <div v-if="QTWJBUSSFileList.length>0" v-for="(value,index) in this.QTWJBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">--> <!-- <div v-if="QTWJBUSSFileList.length>0" v-for="(value,index) in this.QTWJBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">-->
<!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;--> <!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;-->
@@ -298,9 +298,9 @@
<el-form-item label="关联文件" prop="GLWJBUSSName" class="add-form-item form-item-disabled"> <el-form-item label="关联文件" prop="GLWJBUSSName" class="add-form-item form-item-disabled">
<div v-if="GLWJBUSSFileList.length > 0" v-for="(item,index) in GLWJBUSSFileList" :key="index" style="color: #409eff;cursor:pointer;margin-left: 12px;margin-top: 13px" class="fileClass"> <div v-if="GLWJBUSSFileList.length > 0" v-for="(item,index) in GLWJBUSSFileList" :key="index" style="color: #409eff;cursor:pointer;margin-left: 12px;margin-top: 13px" class="fileClass">
<span style="" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name }}</span> <span style="" @click="handleFilePreview(item,'preview')" :title="item.name"> {{ item.name }}</span>
<span style="margin-left: 7px;" v-if="item.id !== ''"> <!-- <span style="margin-left: 7px;" v-if="item.id !== ''">-->
<i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')"></i> <!-- <i class="el-icon-download" title="下载" @click="handleFilePreview(item,'down')"></i>-->
</span> <!-- </span>-->
</div> </div>
<!-- <div v-if="GLWJBUSSFileList.length>0" v-for="(value,index) in this.GLWJBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">--> <!-- <div v-if="GLWJBUSSFileList.length>0" v-for="(value,index) in this.GLWJBUSSFileList" :key="index" style="cursor: pointer;color: #00b7ee" @click="downloadFile(value)">-->
<!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;--> <!-- &lt;!&ndash; {{ value.name }} &ndash;&gt;-->
@@ -172,9 +172,12 @@
class="fileClass" class="fileClass"
> >
<span style="" :title="item.name" @click="handleFilePreview2(item,'preview')"> {{ item.name }}</span> <span style="" :title="item.name" @click="handleFilePreview2(item,'preview')"> {{ item.name }}</span>
<span v-if="item.id !== ''" style="margin-left: 7px;"> <span style="margin-left: 7px;">
<i class="el-icon-download" title="下载" @click="handleFilePreview2(item,'down')" /> <i class="el-icon-view" style="font-size: 18px" title="预览" @click="viewOnlyOffice(item)" />
</span> </span>
<!-- <span v-if="item.id !== ''" style="margin-left: 7px;">-->
<!-- <i class="el-icon-download" title="下载" @click="handleFilePreview2(item,'down')" />-->
<!-- </span>-->
</div> </div>
</div> </div>
<div style="width: 20%;"> <div style="width: 20%;">
@@ -1513,6 +1516,7 @@
import ProcessHeader from '../../components/ProcessHeader' import ProcessHeader from '../../components/ProcessHeader'
import ProcessFooter from '../../components/ProcessFooter' import ProcessFooter from '../../components/ProcessFooter'
import ProcessTitle from '../../components/ProcessTitle' import ProcessTitle from '../../components/ProcessTitle'
import { onlyOfficeUrl } from '@/sysConfig'
import ReceiptDescription from '@/components/hzwlComponents/ReceiptDescription' import ReceiptDescription from '@/components/hzwlComponents/ReceiptDescription'
import { import {
saveTaskFirst, saveTaskFirst,
@@ -3090,6 +3094,20 @@ export default {
}, e => { }, e => {
}) })
}, },
viewOnlyOffice (item) {
const key = new Date().getTime()
let oldFileName = item.name
let index1 = oldFileName.lastIndexOf('.')
let fileSuffix = oldFileName.substring(index1+1, oldFileName.length)
fileSuffix = fileSuffix.toLowerCase()
oldFileName = oldFileName.substring(0, index1)
if (fileSuffix == 'pdf' || fileSuffix == 'doc' || fileSuffix == 'docx'){
window.open(onlyOfficeUrl + '/viewHistoryOnlyOffice?oldFileName=' + oldFileName + '&fileType=' + fileSuffix +
'&attId=' + item.id + '&key=' + key + '&userName=' + this.$store.getters.userInfo.uName)
}else{
this.$message.warning('此文件不支持onlyoffice预览')
}
},
beginImportFile (file) { beginImportFile (file) {
const filename = file.name const filename = file.name
const index1 = filename.lastIndexOf('.') const index1 = filename.lastIndexOf('.')
@@ -253,12 +253,15 @@
:key="index" :key="index"
style="color: #409eff;cursor:pointer;margin-left: 12px;" style="color: #409eff;cursor:pointer;margin-left: 12px;"
class="fileClass" class="fileClass"
@click="handleFilePreview(item)"
> >
<!-- @click="handleFilePreview(item)"-->
<span style="" :title="item.name" @click="handleFilePreview2(item,'preview')"> {{ item.name }}</span> <span style="" :title="item.name" @click="handleFilePreview2(item,'preview')"> {{ item.name }}</span>
<span v-if="item.id !== ''" style="margin-left: 7px;"> <span style="margin-left: 7px;">
<i class="el-icon-download" title="下载" @click="handleFilePreview2(item,'down')" /> <i class="el-icon-view" style="font-size: 18px" title="预览" @click="viewOnlyOffice(item)" />
</span> </span>
<!-- <span v-if="item.id !== ''" style="margin-left: 7px;">-->
<!-- <i class="el-icon-download" title="下载" @click="handleFilePreview2(item,'down')" />-->
<!-- </span>-->
</div> </div>
</div> </div>
<div style="width: 20%;"> <div style="width: 20%;">
@@ -1776,6 +1779,7 @@ import TreeSelectNew from '@/components/treeSelect/treeSelectNew.vue';
import treeSelectModule from '@/components/treeSelect/treeSelectModule.vue'; import treeSelectModule from '@/components/treeSelect/treeSelectModule.vue';
import { selectByIdAtt } from '@/api/flow/index.js' import { selectByIdAtt } from '@/api/flow/index.js'
import ReceiptDescription from '@/components/hzwlComponents/ReceiptDescription' import ReceiptDescription from '@/components/hzwlComponents/ReceiptDescription'
import { onlyOfficeUrl } from '@/sysConfig'
const Base64 = require('js-base64').Base64; const Base64 = require('js-base64').Base64;
@@ -2700,6 +2704,20 @@ export default {
XCSJBUSS: this.dateFormatter(), XCSJBUSS: this.dateFormatter(),
} // 标准信息 } // 标准信息
}, },
viewOnlyOffice (item) {
const key = new Date().getTime()
let oldFileName = item.name
let index1 = oldFileName.lastIndexOf('.')
let fileSuffix = oldFileName.substring(index1+1, oldFileName.length)
fileSuffix = fileSuffix.toLowerCase()
oldFileName = oldFileName.substring(0, index1)
if (fileSuffix == 'pdf' || fileSuffix == 'doc' || fileSuffix == 'docx'){
window.open(onlyOfficeUrl + '/viewHistoryOnlyOffice?oldFileName=' + oldFileName + '&fileType=' + fileSuffix +
'&attId=' + item.id + '&key=' + key + '&userName=' + this.$store.getters.userInfo.uName)
}else{
this.$message.warning('此文件不支持onlyoffice预览')
}
},
filterObj (obj) { filterObj (obj) {
if (obj && obj !== '') { if (obj && obj !== '') {
if (obj instanceof Array) { if (obj instanceof Array) {
@@ -3833,6 +3851,7 @@ export default {
} else { } else {
attId = file.response.data.id attId = file.response.data.id
} }
console.log(file);
if (file.name == this.form.standName) { if (file.name == this.form.standName) {
let fileName = '' let fileName = ''
let fileNam2 = '' let fileNam2 = ''
@@ -24,7 +24,14 @@
:style="backdrop(item.taskStatus)" :style="backdrop(item.taskStatus)"
:class="{'flow-group-process-content-dis':!leftArrow(index + 1)}"> :class="{'flow-group-process-content-dis':!leftArrow(index + 1)}">
<div class="flow-group-process-content-top"> <div class="flow-group-process-content-top">
{{item.taskKeyName}} <el-tooltip placement="top">
<div slot="content">
{{item.taskKeyName}}
</div>
<div>
{{item.taskKeyName}}
</div>
</el-tooltip>
</div> </div>
<el-tooltip placement="top"> <el-tooltip placement="top">
<div slot="content"> <div slot="content">
@@ -37,7 +44,7 @@
v-if="item.userNames && item.userNames.length > 0"> v-if="item.userNames && item.userNames.length > 0">
<div v-if="item.userNames && item.userNames.length > 0" <div v-if="item.userNames && item.userNames.length > 0"
v-for="val in item.userNames"> v-for="val in item.userNames">
<div>{{val}}</div> <div class="flow-group-process-content-bottom-text">{{val}}</div>
</div> </div>
</div> </div>
</el-tooltip> </el-tooltip>
@@ -159,6 +166,16 @@
<span>{{ scope.row.endTime ? $moment(scope.row.endTime).format('YYYY-MM-DD HH:mm:ss') : '' }}</span> <span>{{ scope.row.endTime ? $moment(scope.row.endTime).format('YYYY-MM-DD HH:mm:ss') : '' }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column
v-if="$route.query.flowType == '3'"
prop="parentUserName"
label="任务分发人"
align="center"
>
<template slot-scope="scope">
<span>{{ scope.row.parentUserName }}</span>
</template>
</el-table-column>
<el-table-column <el-table-column
prop="commitText" prop="commitText"
label="意见内容" label="意见内容"
@@ -335,6 +352,29 @@
val.userNames = val.userNames.split(',') val.userNames = val.userNames.split(',')
} }
}) })
if (this.$route.query.flowType == 'buss1'){
if (this.detailData && this.detailData.length > 0){
if (this.detailData[this.detailData.length - 1].taskKey == 'BussLibraryC3'){
this.nameList.forEach(val => {
if (val.taskKey == 'BussLibrary3') {
val.taskStatus = 'todo'
}
})
}else if (this.detailData[this.detailData.length - 1].taskKey == 'BussLibraryC1'){
this.nameList.forEach(val => {
if (val.taskKey == 'BussLibrary1') {
val.taskStatus = 'todo'
}
})
}else if (this.detailData[this.detailData.length - 1].taskKey == 'BussLibraryC6'){
this.nameList.forEach(val => {
if (val.taskKey == 'BussLibrary6') {
val.taskStatus = 'todo'
}
})
}
}
}
this.$nextTick(() => { this.$nextTick(() => {
let flowGroupProcess = document.getElementsByClassName('flow-group-process') let flowGroupProcess = document.getElementsByClassName('flow-group-process')
let num = (flowGroupProcess[0].offsetWidth - 100) / 248 let num = (flowGroupProcess[0].offsetWidth - 100) / 248
@@ -343,8 +383,6 @@
let offsetWidth = flowGroupProcess[0].offsetWidth let offsetWidth = flowGroupProcess[0].offsetWidth
flowGroupProcess[0].style.width = (offsetWidth - (offsetWidth - 100 - width) + 40) + 'px' flowGroupProcess[0].style.width = (offsetWidth - (offsetWidth - 100 - width) + 40) + 'px'
console.log(offsetWidth);
console.log(flowGroupProcess);
}) })
}, e => { }, e => {
}) })
@@ -361,12 +399,12 @@
if (res.success) { if (res.success) {
this.drawerModal = false this.drawerModal = false
this.$message.success('调整成功') this.$message.success('调整成功')
if (this.$route.query.oldAndNew == 'new' && (this.$route.query.flowType == '3' || this.$route.query.flowType == 'buss1')) { // if (this.$route.query.oldAndNew == 'new' && (this.$route.query.flowType == '3' || this.$route.query.flowType == 'buss1')) {
this.getProcessList() // this.getProcessList()
} else { // } else {
this.processNum() // this.processNum()
} // }
this.processTable() this.processTable(1)
} else { } else {
this.$message.warning(res.message) this.$message.warning(res.message)
} }
@@ -1361,12 +1399,12 @@
if (res.success) { if (res.success) {
this.drawerModal = false this.drawerModal = false
this.$message.success('调整成功') this.$message.success('调整成功')
if (this.$route.query.oldAndNew == 'new' && (this.$route.query.flowType == '3' || this.$route.query.flowType == 'buss1')) { /* if (this.$route.query.oldAndNew == 'new' && (this.$route.query.flowType == '3' || this.$route.query.flowType == 'buss1')) {
this.getProcessList() this.getProcessList()
} else { } else {
this.processNum() this.processNum()
} }*/
this.processTable() this.processTable(1)
} else { } else {
this.$message.warning(res.message) this.$message.warning(res.message)
} }
@@ -1412,7 +1450,7 @@
}) })
}, },
// 请求列表 // 请求列表
processTable() { processTable(num) {
let url = '' let url = ''
let query = {} let query = {}
if (this.$route.query.oldAndNew == 'new' && (this.$route.query.flowType == '3' || this.$route.query.flowType == 'buss1')) { if (this.$route.query.oldAndNew == 'new' && (this.$route.query.flowType == '3' || this.$route.query.flowType == 'buss1')) {
@@ -1434,6 +1472,13 @@
_this: this _this: this
}, res => { }, res => {
this.detailData = res this.detailData = res
if (num && num == 1){
if (this.$route.query.oldAndNew == 'new' && (this.$route.query.flowType == '3' || this.$route.query.flowType == 'buss1')) {
this.getProcessList()
} else {
this.processNum()
}
}
}, e => { }, e => {
}) })
}, },
@@ -1639,12 +1684,7 @@
} }
}, },
mounted() { mounted() {
if (this.$route.query.oldAndNew == 'new' && (this.$route.query.flowType == '3' || this.$route.query.flowType == 'buss1')) { this.processTable(1)
this.getProcessList()
} else {
this.processNum()
}
this.processTable()
this.getApproveShow() this.getApproveShow()
} }
} }
@@ -1711,7 +1751,7 @@
line-height: 40px; line-height: 40px;
font-weight: 600; font-weight: 600;
float: inline-start; float: inline-start;
margin-top: 18px; margin-top: 28px;
} }
.flow-group-process-end { .flow-group-process-end {
@@ -1726,7 +1766,7 @@
line-height: 40px; line-height: 40px;
font-weight: 600; font-weight: 600;
float: inline-end; float: inline-end;
margin-top: 20px; margin-top: 28px;
} }
.flow-group-process-end-left { .flow-group-process-end-left {
@@ -1825,21 +1865,31 @@
.flow-group-process-content-top { .flow-group-process-content-top {
width: 100%; width: 100%;
height: 40px; margin-top: 10px;
line-height: 40px; margin-bottom: 10px;
font-size: 12px; font-size: 12px;
word-break: break-all;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 1; /* 超出几行省略 */
overflow: hidden;
} }
.flow-group-process-content-bottom { .flow-group-process-content-bottom {
width: 100%; width: 100%;
font-size: 12px; font-size: 12px;
line-height: 1.4; line-height: 1.4;
word-break: break-all; height: 54px;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2; /* 超出几行省略 */
overflow: hidden; overflow: hidden;
.flow-group-process-content-bottom-text{
word-break: break-all;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 1; /* 超出几行省略 */
overflow: hidden;
}
} }
.flow-group-process-arrow-dis { .flow-group-process-arrow-dis {
@@ -349,7 +349,7 @@ export default {
break break
case 'buss1': case 'buss1':
let oldAndNewBuss = '' let oldAndNewBuss = ''
const currentDateBuss = new Date('2024-01-25 23:59:59').getTime(); const currentDateBuss = new Date('2024-03-24 23:59:59').getTime();
const dateBuss = new Date(row.creatTime); const dateBuss = new Date(row.creatTime);
const timestampBuss = dateBuss.getTime(); const timestampBuss = dateBuss.getTime();
if (currentDateBuss > timestampBuss){ if (currentDateBuss > timestampBuss){