| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492 |
- <template>
- <div>
- <el-container class="max-box">
- <el-aside width="40%" :height="asideHeight">
- <div :style="{'height': asideHeight + 'px','overflow': 'auto'}" class="left_tree">
- <el-card class="box-card" style="min-height: 99%">
- <div slot="header" class="clearfix">
- <span>工程信息</span>
- <el-button type="success" @click="addJie" style="margin-left:30px;">添加节点</el-button>
- <!-- <el-button style="float: right; padding: 3px 0" type="text" @click="batchImport" v-if="ownPriv('manage')">批量导入</el-button> -->
- <!-- 水利工程基础信息批量导入弹窗 -->
- <!-- <slgc-tian-bao-pl v-if="showGongChengTianBaoPl" @closePlDialog="closePlDialog"></slgc-tian-bao-pl> -->
- </div>
- <el-tree :data="treeData"
- class="filter-tree"
- lazy
- highlight-current="true"
- :load="loadAddvData"
- ref="tree"
- :props="defaultProps"
- @node-click="handleNodeClick"
- :expand-on-click-node="false">
- <span class="custom-tree-node" slot-scope="{ node, data }">
- <span>{{ node.label }}</span>
- <span>
- <el-button
- type="success"
- size="mini"
- @click="() => toAddJieDian(data)">
- 添加节点
- </el-button>
- <el-button
- type="primary"
- size="mini"
- @click="() => toEditJieDian(data)">
- 修改
- </el-button>
- <el-button
- type="danger"
- size="mini"
- @click="() => delete_jieDian(data,node)">
- 删除
- </el-button>
- </span>
- </span>
- </el-tree>
- </el-card>
- </div>
- </el-aside>
- <el-main>
- <el-row style="height:40px;">
- <el-col :span="18">
- <el-form :inline="true" size="mini" class="demo-form-inline" style="padding-left: 10px;">
- <el-form-item label="文件名称">
- <el-input style="width:230px;" v-model="filenameval" clearable placeholder="文件名称"></el-input>
- </el-form-item>
- <el-form-item>
- <el-button type="primary" @click="getFilelist(upId)">查询</el-button>
- </el-form-item>
- </el-form>
- </el-col>
- <el-col :span="6">
- <el-form :inline="true" size="mini" class="demo-form-inline" style="float:right;">
- <el-form-item label="">
- <el-button type="success" @click="uploadFile" v-if="ownPriv('manage')" style="margin-right:30px;"><i class="el-icon-upload el-icon--right"></i> 文件上传</el-button>
- </el-form-item>
- </el-form>
- </el-col>
- </el-row>
- <el-table
- v-loading="loading"
- :height="tableHeight"
- :data="fileList"
- style="width: 100%"
- :row-class-name="tableRowClassName">
- <el-table-column
- prop="index"
- label="序号"
- width="100">
- </el-table-column>
- <el-table-column
- prop="fileName"
- label="文件名"
- width="600">
- <template slot-scope="scope">
- <span @click="downloadFile(scope.row.filePath)">{{scope.row.fileName}}</span>
- </template>
- </el-table-column>
- <el-table-column
- prop="createDate"
- label="上传时间"
- width="200">
- </el-table-column>
- <el-table-column
- prop="filePath"
- label="操作">
- <template slot-scope="scope">
- <el-button type="text" @click="downloadFile(scope.row.filePath)">下载</el-button>
- <el-button type="text" v-if="ownPriv('manage')" @click="deleteFile(scope.row.id)">删除</el-button>
- <el-button v-if="scope.row.top != 1 && ownPriv('manage')" type="text" @click="makeTop(scope.row.id)">置顶</el-button>
- <el-button v-if="scope.row.top == 1 && ownPriv('manage')" type="text" @click="cancelTop(scope.row.id)">取消置顶</el-button>
- </template>
- </el-table-column>
- </el-table>
- <el-pagination style="margin-left: 30px;" :pager-count="5" :current-page="pageIndex" background
- :page-size="pageSize" layout="total, sizes, prev, pager, next, jumper" :total="total"
- :page-sizes="[10, 20, 50, 100]"
- @current-change="pageIndexChange" @size-change="handleSizeChange"
- ></el-pagination>
-
- <el-dialog title="文件上传" :visible.sync="dialogFormVisible" :close-on-click-modal="false" width="40%">
- <upload
- ref="uploadFile"
- :url="`/pdcApi/file/insert?bizId=`"
- @uploadOver="removeNewSupervision"
- ></upload>
- <div slot="footer" class="dialog-footer">
- <el-button @click="dialogFormVisible = false">取 消</el-button>
- <el-button type="primary" @click="addFile">保 存</el-button>
- </div>
- </el-dialog>
- </el-main>
- </el-container>
- <el-dialog title="添加节点" :visible.sync="jiedian">
- <el-form label-width="120px">
- <el-form-item label="节点名称" required>
- <el-input v-model="jieDianName" clearable></el-input>
- </el-form-item>
- </el-form>
- <div slot="footer" class="dialog-footer">
- <el-button @click="jiedian = false">取 消</el-button>
- <el-button type="primary" @click="add_jieDian">确 定</el-button>
- </div>
- </el-dialog>
- <el-dialog title="修改节点" :visible.sync="xjiedian">
- <el-form label-width="120px">
- <el-form-item label="节点名称" required>
- <el-input v-model="jieDianName" clearable></el-input>
- </el-form-item>
- </el-form>
- <div slot="footer" class="dialog-footer">
- <el-button @click="xjiedian = false">取 消</el-button>
- <el-button type="primary" @click="add_jieDian1">确 定</el-button>
- </div>
- </el-dialog>
- </div>
- </template>
- <script>
- import request from '@util/gw_ajax_request.js'
- import {hostUrl} from '@util/global_variable.js'
- export default {
- data(){
- return{
- asideHeight: window.innerHeight - 116,
- treeData: [
- ],
- filenameval: '',
- treeData1: [
- // {
- // nm: '金水',
- // uptm: [{
- // nm: '金水1',
- // uptm: [{
- // nm: '金水1.1',
- // uptm: []
- // }]
- // }]
- // }
- ],
- defaultProps: {
- children: 'children',
- label: 'nm'
- },
- jiedian: false,
- xjiedian: false,
- tableHeight: window.innerHeight - 230,
- fileList: [
- // {
- // index: 1,
- // fileName: '附件1:福建省水利厅关于联合开展2018~2019年度中央及省级水利投资建设项目稽察的通知.pdf',
- // filePath: 'http://61.154.12.112:9900/upload/pdf/附件1:福建省水利厅关于联合开展2018~2019年度中央及省级水利投资建设项目稽察的通知.pdf'
- // },
- // {
- // index: 2,
- // fileName: '附件2:稽察组人员名单.pdf',
- // filePath: 'http://61.154.12.112:9900/upload/pdf/附件2:稽察组人员名单.pdf'
- // },
- // {
- // index: 3,
- // fileName: '关于召开2018-2019年度中央及省级水利投资建设项目稽察布置会的通知 闽水监督函〔2019〕10号.pdf',
- // filePath: 'http://61.154.12.112:9900/upload/pdf/关于召开2018-2019年度中央及省级水利投资建设项目稽察布置会的通知 闽水监督函〔2019〕10号.pdf'
- // },
- // {
- // index: 4,
- // fileName: '水利工程稽察人员业务指南.docx',
- // filePath: 'http://61.154.12.112:9900/upload/pdf/水利工程稽察人员业务指南.docx'
- // },
- // {
- // index: 5,
- // fileName: '稽察报告大纲.doc',
- // filePath: 'http://61.154.12.112:9900/upload/pdf/稽察报告大纲.doc'
- // }
- ],
- pageIndex: 1,
- pageSize: 20,
- total: 0,
- dialogFormVisible: false,
- gwComFileList: [],
- loading: false,
- add: {},
- jieDianName: '',
- jieDianId:'',
- upId: ''
- }
- },
- computed:{
- persId() {
- return localStorage.getItem("userid")
- ? localStorage.getItem("userid")
- : "1098101939614724096";
- },
- hostUrl(){
- return hostUrl
- },
- currentRlcode(){
- return localStorage.getItem("currentRlcode") ? localStorage.getItem("currentRlcode") : ''
- }
- },
- components:{
- upload: resolve => {
- require(["@widget/uploadFile.vue"], resolve);
- }
- },
- mounted(){
- this.getTree()
- // this.getFilelist()
- },
- methods:{
- tableRowClassName({row, rowIndex}) {
- if (row['top'] == 1) {
- return 'success-row';
- }
- return '';
- },
- cancelTop(id){
- request.get(`/file/cancelTop/${id}`).then(res => {
- if(res.success){
- this.$message.success('取消置顶成功')
- this.getFilelist(this.upId)
- }
- })
- },
- makeTop(id){
- request.get(`/file/top/${id}`).then(res => {
- if(res.success){
- this.$message.success('置顶成功')
- this.getFilelist(this.upId)
- }
- })
- },
- loadAddvData: function (node, resolve) {
- request.get(`/bis/insp/Folder/getNextNode?id=${node.data.id}`).then(
- response => {
- var data = response.data;
- let children = [];
- response.data.forEach((element, index) => {
- children.push({
- 'id': element.id,
- 'nm': element.nm
- })
- });
- resolve(children);
- }
- );
- },
- addJie(){
- this.jieDianName = ''
- this.add = {
- nm: '',
- orgId: "034",
- persId: this.persId,
- pid: 'root'
- }
- this.jiedian = true;
- },
- delete_jieDian(data){
- let parms = {
- id: data.id
- }
- request.post(`/bis/insp/Folder/delete/${data.id}`,parms).then(res => {
- if(res.success){
- this.$message.success('删除成功')
- this.getTree()
- }
- })
- },
- toEditJieDian(data){
- this.xjiedian = true
- this.jieDianId = data['id']
- },
- add_jieDian1(){
- let param = {
- id: this.jieDianId,
- nm: this.jieDianName
- }
- request.post(`/bis/insp/Folder/update`,param).then(res => {
- if(res.success){
- this.xjiedian = false
- this.getTree()
- }
- })
-
- },
- add_jieDian(){
- this.add['nm'] = this.jieDianName
- request.post(`/bis/insp/Folder/add`,this.add).then(res => {
- if(res.success){
- this.jiedian = false;
- this.getTree()
- }
- })
- },
- toAddJieDian(data){
- this.jieDianName = ''
- this.add = {
- nm: '',
- orgId: "034",
- persId: data.persId,
- pid: data.id
- }
- this.jiedian = true;
- },
- handleNodeClick(data) {
- this.upId = data['id']
- this.getFilelist(data['id'])
- },
- getTree(){
- request.get(`/bis/insp/Folder/getNextNode?id=`).then(res => {
- let children = [];
- res.data.forEach((element, index) => {
- children.push({
- 'id': element.id,
- 'nm': element.nm
- })
- });
- this.treeData = children;
- this.upId = children[0]['id']
- this.getFilelist(children[0]['id'])
- })
- },
- getTree1(){
- request.get(`/bis/insp/Folder/getNextNode?id=`).then(res => {
- if(res.success){
- res.data.forEach((ele, index) => {
- this.treeData1[index] = {
- nm : ele['nm'],
- id : ele['id'],
- children: []
- }
- request.get(`/bis/insp/Folder/getNextNode?id=${ele.id}`).then(response => {
- if(response.data.length > 0){
- response.data.forEach((item,ind) => {
- this.treeData1[index]['children'][ind] = {
- nm : response.data[ind]['nm'],
- id : response.data[ind]['id'],
- children: []
- }
- })
- }else{
- ele['children'] = null
- }
- })
- })
- this.treeData = this.treeData1
- // console.log(this.treeData,'12131211111111111113')
- }
- })
- },
- getFilelist(e){
- let params = {
- pageNum: this.pageIndex,
- pageSize: this.pageSize,
- fileName: this.filenameval,
- bizId: e
- }
- let _this = this
- this.loading = true
- request.post(`/file/findPageInfo`,params).then(res=>{
- if(res.success){
- this.fileList = res.data.list
- this.fileList.forEach((ele,index)=>{
- ele['index'] = _this.pageSize * (_this.pageIndex - 1) + (index + 1)
- })
- this.total = res.data.total
- this.loading = false
- }
- })
- },
- downloadFile(filePath){
- window.open(this.hostUrl + filePath)
- },
- pageIndexChange(val){
- this.pageIndex = val
- this.getFilelist(this.upId)
- },
- handleSizeChange(val){
- this.pageSize = val
- this.getFilelist(this.upId)
- },
- uploadFile(){
- if(!this.upId){
- this.$message({
- type: 'warning',
- message: '请选择左侧节点'
- });
- return false
- }
- this.dialogFormVisible = true
- },
- addFile(){
- this.gwComFileList = [];
- if (this.$refs.uploadFile.submitUpload(this.upId)) {
- this.removeNewSupervision();
- }
- },
- removeNewSupervision(arg) {
- if (arg) {
- var args = this.gwComFileList.concat(arg);
- }
- this.gwComFileList = [];
- this.dialogFormVisible = false
- this.$message.success('添加成功')
- this.getFilelist(this.upId)
- },
- // 文件上传
- submitUpload() {
- this.$refs.upload.submit();
- },
- // 文件删除
- deleteFile(id){
- this.$confirm('确定删除该文件吗?', '提示', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning'
- }).then(() => {
- request.post(`/file/${id}`).then(res=>{
- if(res.success){
- this.$message({
- type: 'success',
- message: '删除成功!'
- });
- this.getFilelist(this.upId)
- }else{
- this.$message.warning(res.message)
- }
- })
- }).catch(() => {
- });
- }
- }
- }
- </script>
- <style lang="scss">
- .max-box{
- .el-tree-node__content{
- height: 33px;
- line-height: 33px;
- }
- }
- h4.mxh{
- margin-bottom: 20px;
- overflow: hidden;
- button{
- float: right;
- }
- }
- .el-table .warning-row {
- background: oldlace;
- }
- .el-table .success-row {
- background: #ebf9f9;
- }
-
- .left_tree .custom-tree-node {
- flex: 1;
- display: flex;
- align-items: center;
- justify-content: space-between;
- font-size: 14px;
- padding-right: 8px;
- }
- </style>
|