1、发布工具新增关联工具展示

2、详情页面调整
3、先上传文件夹功能
This commit is contained in:
pan
2024-09-02 10:36:58 +08:00
parent b689f6a51d
commit 25fab1b4ee
3 changed files with 486 additions and 436 deletions

View File

@@ -107,6 +107,15 @@
<dict-tag :options="dict.type.tool_status" :value="scope.row.status"/>
</template>
</el-table-column>
<el-table-column label="关联工具" align="center" :show-overflow-tooltip="true">
<template slot-scope="scope">
<span v-if="handleRelationTool(scope.row.relationToolList)">
<el-link target="_blank" v-for="assItem in scope.row.relationToolList" :key="assItem.id" @click="handleToolDetail(assItem)">{{assItem.toolName}}</el-link>
</span>
</template>
</el-table-column>
<el-table-column label="创建时间" align="center" prop="createTime" v-if="columns[6].visible" width="160">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
@@ -362,6 +371,12 @@ export default {
this.loading = true;
listTool(this.addDateRange(this.queryParams, this.dateRange)).then(response => {
this.toolList = response.rows;
for(let itemData of this.toolList){
this.$set(itemData, "relationToolList", [])
if(itemData.association != null && itemData.association != '' && itemData.association != undefined){
itemData.relationToolList = JSON.parse(itemData.association)
}
}
this.total = response.total;
this.loading = false;
}
@@ -575,7 +590,26 @@ export default {
this.$nextTick(() => {
this.$refs.downloadFileDetailRef = null; // 清空引用
});
},
/** 详情 **/
handleToolDetail(row){
this.detailDrawerOpen = true
this.detailOpen = true
let data = {
"toolId": row.toolId
}
this.toolDetail = data
},
/** association **/
handleRelationTool(value){
if(value == null || value == '' || value == undefined){
return false
}
if(value.length > 0){
return true
}
}
}
};
</script>

View File

@@ -1,26 +1,28 @@
<template>
<div class="fbox1">
<div class="fl">
<div class="fl" v-loading="detailLoading">
<el-tabs v-model="detailActiveName">
<el-tab-pane label="基本信息" name="first">
<div class="el-form-border">
<el-form ref="form" label-width="150px">
<el-row>
<el-col :span="12"> <el-form-item label="工具名称">{{toolDetail.toolName}}</el-form-item> </el-col>
<el-col :span="12"> <el-form-item label="工具类别"><dict-tag :options="dict.type.tool_type" :value="toolDetail.toolType"/></el-form-item> </el-col>
<el-col :span="12"> <el-form-item label="工具来源"><dict-tag :options="dict.type.tool_source" :value="toolDetail.toolSource"/></el-form-item> </el-col>
<el-col :span="12"> <el-form-item label="负责人">{{toolDetail.toolPrincipalsName}}</el-form-item> </el-col>
<el-col :span="12"> <el-form-item label="归属单位">{{toolDetail.toolRespDeptName}}</el-form-item> </el-col>
<el-col :span="12"> <el-form-item label="状态"><dict-tag :options="dict.type.tool_status" :value="toolDetail.status"/></el-form-item> </el-col>
<el-col :span="12"> <el-form-item label="工具用途">{{toolDetail.toolUse}}</el-form-item> </el-col>
<el-col :span="12"> <el-form-item label="测评情况">{{toolDetail.testSituation}}</el-form-item> </el-col>
<el-col :span="12"> <el-form-item label="功能描述">{{toolDetail.functionDesc}}</el-form-item> </el-col>
<el-col :span="12"> <el-form-item label="适用条件">{{toolDetail.applyCondition}}</el-form-item> </el-col>
<el-col :span="12"> <el-form-item label="操作说明">{{toolDetail.operateExplain}}</el-form-item> </el-col>
<el-col :span="12"> <el-form-item label="备注">{{toolDetail.remark}}</el-form-item> </el-col>
<el-col :span="12"> <el-form-item label="工具名称">{{detailData.toolName}}</el-form-item> </el-col>
<el-col :span="12"> <el-form-item label="工具类别"><dict-tag :options="dict.type.tool_type" :value="detailData.toolType"/></el-form-item> </el-col>
<el-col :span="12"> <el-form-item label="工具来源"><dict-tag :options="dict.type.tool_source" :value="detailData.toolSource"/></el-form-item> </el-col>
<el-col :span="12"> <el-form-item label="负责人">{{detailData.toolPrincipalsName}}</el-form-item> </el-col>
<el-col :span="12"> <el-form-item label="归属单位">{{detailData.toolRespDeptName}}</el-form-item> </el-col>
<el-col :span="12"> <el-form-item label="状态"><dict-tag :options="dict.type.tool_status" :value="detailData.status"/></el-form-item> </el-col>
<el-col :span="12"> <el-form-item label="工具用途">{{detailData.toolUse}}</el-form-item> </el-col>
<el-col :span="12"> <el-form-item label="测评情况">{{detailData.testSituation}}</el-form-item> </el-col>
<el-col :span="12"> <el-form-item label="功能描述">{{detailData.functionDesc}}</el-form-item> </el-col>
<el-col :span="12"> <el-form-item label="适用条件">{{detailData.applyCondition}}</el-form-item> </el-col>
<el-col :span="12"> <el-form-item label="操作说明">{{detailData.operateExplain}}</el-form-item> </el-col>
<el-col :span="12"> <el-form-item label="备注">{{detailData.remark}}</el-form-item> </el-col>
<el-col :span="24">
<el-form-item label="关联工具">
<el-tag :key="tag.toolId" v-for="tag in JSON.parse(toolDetail.association)" type="info" style="margin-right: 5px">{{tag.toolName}}</el-tag>
<span v-if="detailData.association != null && detailData.association != '' && detailData.association != undefined">
<el-tag :key="tag.toolId" v-for="tag in JSON.parse(detailData.association)" type="info" style="margin-right: 5px">{{tag.toolName}}</el-tag>
</span>
</el-form-item>
</el-col>
</el-row>
@@ -47,7 +49,7 @@
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" width="180" v-if="toolDetail.downloadStatus">
<el-table-column label="操作" align="center" width="180" v-if="detailData.downloadStatus">
<template slot-scope="scope">
<el-button
size="mini"
@@ -119,7 +121,7 @@
</el-dialog>
<!-- 上传 -->
<AddDoc :show.sync="open" :toolId="toolDetail.toolId" @callback="getDocList"/>
<AddDoc :show.sync="open" :toolId="detailData.toolId" @callback="getDocList"/>
</div><!--fbox1 左右分栏-->
</template>
@@ -127,6 +129,7 @@
import { listDocument, getDocument, delDocument, addDocument, updateDocument } from "@/api/document/document";
import { listDiscussions, addDiscussions } from "@/api/tool/discussions.js";
import { listReplies, addReplies} from "@/api/tool/replies.js";
import { getTool } from "@/api/tool/tool.js";
import AddDoc from './AddDoc'
import editDocument from "../document/editDocument";
@@ -141,6 +144,7 @@
toolDetail: {
type: Object,
default: {},
required: false
}
},
data(){
@@ -166,9 +170,13 @@
repliesList: [],
showReplyForm: [],
replyContent: [],
detailLoading: false,
//详细数据
detailData:{}
}
},
created(){
this.getDetail()
this.getDocList()
this.getDiscussionsList()
},
@@ -370,6 +378,21 @@
},
handleBeforeClose() {
this.viewDialogOpen = false
},
/** 获取详情信息 **/
getDetail(){
let self = this
console.info("self.toolDetail==========", self.toolDetail)
self.detailLoading = true
getTool(self.toolDetail.toolId).then((res) => {
self.detailData = res.data
console.info("res========", res)
/*let formData = res.data;
formData.type = _this.form.type
_this.form = formData*/
}).finally(()=>{
self.detailLoading = false
});
}
}
}