|
@@ -1,597 +1,62 @@
|
|
<template>
|
|
<template>
|
|
<div class="app-container">
|
|
<div class="app-container">
|
|
- <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
|
|
|
|
- <el-form-item label="检查内容表id" prop="subId">
|
|
|
|
- <el-input
|
|
|
|
- v-model="queryParams.subId"
|
|
|
|
- placeholder="请输入检查内容表id"
|
|
|
|
- clearable
|
|
|
|
- size="small"
|
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
|
- />
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="子表id" prop="itemId">
|
|
|
|
- <el-input
|
|
|
|
- v-model="queryParams.itemId"
|
|
|
|
- placeholder="请输入子表id"
|
|
|
|
- clearable
|
|
|
|
- size="small"
|
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
|
- />
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="关联表简称" prop="forShort">
|
|
|
|
- <el-input
|
|
|
|
- v-model="queryParams.forShort"
|
|
|
|
- placeholder="请输入关联表简称"
|
|
|
|
- clearable
|
|
|
|
- size="small"
|
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
|
- />
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="附件名称" prop="fileName">
|
|
|
|
- <el-input
|
|
|
|
- v-model="queryParams.fileName"
|
|
|
|
- placeholder="请输入附件名称"
|
|
|
|
- clearable
|
|
|
|
- size="small"
|
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
|
- />
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="附件地址" prop="fileUrl">
|
|
|
|
- <el-input
|
|
|
|
- v-model="queryParams.fileUrl"
|
|
|
|
- placeholder="请输入附件地址"
|
|
|
|
- clearable
|
|
|
|
- size="small"
|
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
|
- />
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="附件大小" prop="fileSize">
|
|
|
|
- <el-input
|
|
|
|
- v-model="queryParams.fileSize"
|
|
|
|
- placeholder="请输入附件大小"
|
|
|
|
- clearable
|
|
|
|
- size="small"
|
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
|
- />
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="创建人" prop="createrCode">
|
|
|
|
- <el-input
|
|
|
|
- v-model="queryParams.createrCode"
|
|
|
|
- placeholder="请输入创建人"
|
|
|
|
- clearable
|
|
|
|
- size="small"
|
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
|
- />
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="创建时间" prop="createdate">
|
|
|
|
- <el-date-picker clearable size="small" style="width: 200px"
|
|
|
|
- v-model="queryParams.createdate"
|
|
|
|
- type="date"
|
|
|
|
- value-format="yyyy-MM-dd"
|
|
|
|
- placeholder="选择创建时间">
|
|
|
|
- </el-date-picker>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="修改人" prop="updaterCode">
|
|
|
|
- <el-input
|
|
|
|
- v-model="queryParams.updaterCode"
|
|
|
|
- placeholder="请输入修改人"
|
|
|
|
- clearable
|
|
|
|
- size="small"
|
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
|
- />
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="修改时间" prop="updatedate">
|
|
|
|
- <el-date-picker clearable size="small" style="width: 200px"
|
|
|
|
- v-model="queryParams.updatedate"
|
|
|
|
- type="date"
|
|
|
|
- value-format="yyyy-MM-dd"
|
|
|
|
- placeholder="选择修改时间">
|
|
|
|
- </el-date-picker>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="部门编号" prop="deptId">
|
|
|
|
- <el-input
|
|
|
|
- v-model="queryParams.deptId"
|
|
|
|
- placeholder="请输入部门编号"
|
|
|
|
- clearable
|
|
|
|
- size="small"
|
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
|
- />
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="备注" prop="remarks">
|
|
|
|
- <el-input
|
|
|
|
- v-model="queryParams.remarks"
|
|
|
|
- placeholder="请输入备注"
|
|
|
|
- clearable
|
|
|
|
- size="small"
|
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
|
- />
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item>
|
|
|
|
- <el-button type="cyan" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
|
|
|
|
- <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
|
|
|
|
- </el-form-item>
|
|
|
|
- </el-form>
|
|
|
|
-
|
|
|
|
- <el-row :gutter="10" class="mb8">
|
|
|
|
- <el-col :span="1.5">
|
|
|
|
- <el-button
|
|
|
|
- type="primary"
|
|
|
|
- icon="el-icon-plus"
|
|
|
|
- size="mini"
|
|
|
|
- @click="handleAdd"
|
|
|
|
- v-hasPermi="['pssr:file:add']"
|
|
|
|
- >新增</el-button>
|
|
|
|
- </el-col>
|
|
|
|
- <el-col :span="1.5">
|
|
|
|
- <el-button
|
|
|
|
- type="success"
|
|
|
|
- icon="el-icon-edit"
|
|
|
|
- size="mini"
|
|
|
|
- :disabled="single"
|
|
|
|
- @click="handleUpdate"
|
|
|
|
- v-hasPermi="['pssr:file:edit']"
|
|
|
|
- >修改</el-button>
|
|
|
|
- </el-col>
|
|
|
|
- <el-col :span="1.5">
|
|
|
|
- <el-button
|
|
|
|
- type="danger"
|
|
|
|
- icon="el-icon-delete"
|
|
|
|
- size="mini"
|
|
|
|
- :disabled="multiple"
|
|
|
|
- @click="handleDelete"
|
|
|
|
- v-hasPermi="['pssr:file:remove']"
|
|
|
|
- >删除</el-button>
|
|
|
|
- </el-col>
|
|
|
|
- <el-col :span="1.5">
|
|
|
|
- <el-button
|
|
|
|
- type="info"
|
|
|
|
- icon="el-icon-upload2"
|
|
|
|
- size="mini"
|
|
|
|
- @click="handleImport"
|
|
|
|
- v-hasPermi="['pssr:file:edit']"
|
|
|
|
- >导入</el-button>
|
|
|
|
- </el-col>
|
|
|
|
- <el-col :span="1.5">
|
|
|
|
- <el-button
|
|
|
|
- type="warning"
|
|
|
|
- icon="el-icon-download"
|
|
|
|
- size="mini"
|
|
|
|
- @click="handleExport"
|
|
|
|
- v-hasPermi="['pssr:file:export']"
|
|
|
|
- >导出</el-button>
|
|
|
|
- </el-col>
|
|
|
|
- <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
|
|
|
- </el-row>
|
|
|
|
-
|
|
|
|
- <el-table v-loading="loading" :data="fileList" @selection-change="handleSelectionChange" :height="clientHeight" border>
|
|
|
|
- <el-table-column type="selection" width="55" align="center" />
|
|
|
|
- <el-table-column label="附件id" align="center" prop="fileId" :show-overflow-tooltip="true"/>
|
|
|
|
- <el-table-column label="检查内容表id" align="center" prop="subId" :show-overflow-tooltip="true"/>
|
|
|
|
- <el-table-column label="子表id" align="center" prop="itemId" :show-overflow-tooltip="true"/>
|
|
|
|
- <el-table-column label="关联表简称" align="center" prop="forShort" :show-overflow-tooltip="true"/>
|
|
|
|
- <el-table-column label="附件名称" align="center" prop="fileName" :show-overflow-tooltip="true"/>
|
|
|
|
- <el-table-column label="附件地址" align="center" prop="fileUrl" :show-overflow-tooltip="true"/>
|
|
|
|
- <el-table-column label="附件大小" align="center" prop="fileSize" :show-overflow-tooltip="true"/>
|
|
|
|
- <el-table-column label="创建人" align="center" prop="createrCode" :show-overflow-tooltip="true"/>
|
|
|
|
- <el-table-column label="创建时间" align="center" prop="createdate" width="100">
|
|
|
|
- <template slot-scope="scope">
|
|
|
|
- <span>{{ parseTime(scope.row.createdate, '{y}-{m}-{d}') }}</span>
|
|
|
|
- </template>
|
|
|
|
- </el-table-column>
|
|
|
|
- <el-table-column label="修改人" align="center" prop="updaterCode" :show-overflow-tooltip="true"/>
|
|
|
|
- <el-table-column label="修改时间" align="center" prop="updatedate" width="100">
|
|
|
|
- <template slot-scope="scope">
|
|
|
|
- <span>{{ parseTime(scope.row.updatedate, '{y}-{m}-{d}') }}</span>
|
|
|
|
- </template>
|
|
|
|
- </el-table-column>
|
|
|
|
- <el-table-column label="部门编号" align="center" prop="deptId" :show-overflow-tooltip="true"/>
|
|
|
|
- <el-table-column label="备注" align="center" prop="remarks" :show-overflow-tooltip="true"/>
|
|
|
|
- <el-table-column label="操作" align="center" fixed="right" width="120" class-name="small-padding fixed-width">
|
|
|
|
- <template slot-scope="scope">
|
|
|
|
- <el-button
|
|
|
|
- size="mini"
|
|
|
|
- type="text"
|
|
|
|
- icon="el-icon-edit"
|
|
|
|
- @click="handleUpdate(scope.row)"
|
|
|
|
- v-hasPermi="['pssr:file:edit']"
|
|
|
|
- >修改</el-button>
|
|
|
|
- <el-button
|
|
|
|
- size="mini"
|
|
|
|
- type="text"
|
|
|
|
- icon="el-icon-delete"
|
|
|
|
- @click="handleDelete(scope.row)"
|
|
|
|
- v-hasPermi="['pssr:file:remove']"
|
|
|
|
- >删除</el-button>
|
|
|
|
- </template>
|
|
|
|
- </el-table-column>
|
|
|
|
- </el-table>
|
|
|
|
-
|
|
|
|
- <pagination
|
|
|
|
- v-show="total>0"
|
|
|
|
- :total="total"
|
|
|
|
- :page.sync="queryParams.pageNum"
|
|
|
|
- :limit.sync="queryParams.pageSize"
|
|
|
|
- @pagination="getList"
|
|
|
|
- />
|
|
|
|
-
|
|
|
|
- <!-- 添加或修改PSSR附件对话框 -->
|
|
|
|
- <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
|
|
|
|
- <el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
|
|
|
- <el-form-item label="检查内容表id" prop="subId">
|
|
|
|
- <el-input v-model="form.subId" placeholder="请输入检查内容表id" />
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="子表id" prop="itemId">
|
|
|
|
- <el-input v-model="form.itemId" placeholder="请输入子表id" />
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="关联表简称" prop="forShort">
|
|
|
|
- <el-input v-model="form.forShort" placeholder="请输入关联表简称" />
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="附件名称" prop="fileName">
|
|
|
|
- <el-input v-model="form.fileName" placeholder="请输入附件名称" />
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="附件地址" prop="fileUrl">
|
|
|
|
- <el-input v-model="form.fileUrl" placeholder="请输入附件地址" />
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="附件大小" prop="fileSize">
|
|
|
|
- <el-input v-model="form.fileSize" placeholder="请输入附件大小" />
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="删除状态" prop="delFlag">
|
|
|
|
- <el-input v-model="form.delFlag" placeholder="请输入删除状态" />
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="创建人" prop="createrCode">
|
|
|
|
- <el-input v-model="form.createrCode" placeholder="请输入创建人" />
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="创建时间" prop="createdate">
|
|
|
|
- <el-date-picker clearable size="small" style="width: 200px"
|
|
|
|
- v-model="form.createdate"
|
|
|
|
- type="date"
|
|
|
|
- value-format="yyyy-MM-dd"
|
|
|
|
- placeholder="选择创建时间">
|
|
|
|
- </el-date-picker>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="修改人" prop="updaterCode">
|
|
|
|
- <el-input v-model="form.updaterCode" placeholder="请输入修改人" />
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="修改时间" prop="updatedate">
|
|
|
|
- <el-date-picker clearable size="small" style="width: 200px"
|
|
|
|
- v-model="form.updatedate"
|
|
|
|
- type="date"
|
|
|
|
- value-format="yyyy-MM-dd"
|
|
|
|
- placeholder="选择修改时间">
|
|
|
|
- </el-date-picker>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="部门编号" prop="deptId">
|
|
|
|
- <el-input v-model="form.deptId" placeholder="请输入部门编号" />
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="备注" prop="remarks">
|
|
|
|
- <el-input v-model="form.remarks" placeholder="请输入备注" />
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="归属部门" prop="deptId">
|
|
|
|
- <treeselect v-model="form.deptId" :options="deptOptions" :show-count="true" placeholder="请选择归属部门" />
|
|
|
|
- </el-form-item>
|
|
|
|
- </el-form>
|
|
|
|
- <div slot="footer" class="dialog-footer">
|
|
|
|
- <el-button type="primary" @click="submitForm">确 定</el-button>
|
|
|
|
- <el-button @click="cancel">取 消</el-button>
|
|
|
|
- </div>
|
|
|
|
- </el-dialog>
|
|
|
|
- <!-- 批量修改对话框 -->
|
|
|
|
- <el-dialog :close-on-click-modal="false" title="批量修改" :visible.sync="openBatch" width="500px" append-to-body>
|
|
|
|
- <el-form ref="form" :model="form" label-width="80px">
|
|
|
|
- <el-form-item>
|
|
|
|
- <span>已选择 {{ ids.length }} 条数据</span>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="确认人1" prop="confirm1"
|
|
|
|
- v-if="isApprove==0">
|
|
|
|
- <el-select v-model="form.confirm1" clearable filterable style="width: 100%;"
|
|
|
|
- placeholder="请选择确认人1">
|
|
|
|
- <el-option v-for="user in userOptions"
|
|
|
|
- :label="user.nickName"
|
|
|
|
- :value="user.userId+''"
|
|
|
|
- :key="user.userId"/>
|
|
|
|
- </el-select>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="确认人2" prop="confirm2"
|
|
|
|
- v-if="isApprove==0">
|
|
|
|
- <el-select v-model="form.confirm2" clearable filterable style="width: 100%;"
|
|
|
|
- placeholder="请选择确认人2">
|
|
|
|
- <el-option v-for="user in userOptions"
|
|
|
|
- :label="user.nickName"
|
|
|
|
- :value="user.userId+''"
|
|
|
|
- :key="user.userId"/>
|
|
|
|
- </el-select>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="时间" prop="confirmationDate">
|
|
|
|
- <el-date-picker clearable size="small" style="width: 200px"
|
|
|
|
- v-model="form.confirmationDate"
|
|
|
|
- type="date"
|
|
|
|
- value-format="yyyy-MM-dd"
|
|
|
|
- placeholder="选择时间">
|
|
|
|
- </el-date-picker>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="备注" prop="remarks">
|
|
|
|
- <el-input v-model="form.remarks" placeholder="请输入备注"/>
|
|
|
|
- </el-form-item>
|
|
|
|
- </el-form>
|
|
|
|
- <div slot="footer" class="dialog-footer">
|
|
|
|
- <el-button type="primary" @click="submitFormBatch">确 定</el-button>
|
|
|
|
- <el-button @click="cancelBatch">取 消</el-button>
|
|
|
|
- </div>
|
|
|
|
- </el-dialog>
|
|
|
|
- <!-- 用户导入对话框 -->
|
|
|
|
- <el-dialog :title="upload.title" :visible.sync="upload.open" width="400px" append-to-body>
|
|
|
|
- <el-upload
|
|
|
|
- ref="upload"
|
|
|
|
- :limit="1"
|
|
|
|
- accept=".xlsx, .xls"
|
|
|
|
- :headers="upload.headers"
|
|
|
|
- :action="upload.url + '?updateSupport=' + upload.updateSupport"
|
|
|
|
- :disabled="upload.isUploading"
|
|
|
|
- :on-progress="handleFileUploadProgress"
|
|
|
|
- :on-success="handleFileSuccess"
|
|
|
|
- :auto-upload="false"
|
|
|
|
- drag
|
|
|
|
- >
|
|
|
|
- <i class="el-icon-upload"></i>
|
|
|
|
- <div class="el-upload__text">
|
|
|
|
- 将文件拖到此处,或
|
|
|
|
- <em>点击上传</em>
|
|
|
|
- </div>
|
|
|
|
- <div class="el-upload__tip" slot="tip">
|
|
|
|
- <el-checkbox v-model="upload.updateSupport" />是否更新已经存在的用户数据
|
|
|
|
- <el-link type="info" style="font-size:12px" @click="importTemplate">下载模板</el-link>
|
|
|
|
- </div>
|
|
|
|
- <div class="el-upload__tip" style="color:red" slot="tip">提示:仅允许导入“xls”或“xlsx”格式文件!</div>
|
|
|
|
- </el-upload>
|
|
|
|
- <div slot="footer" class="dialog-footer">
|
|
|
|
- <el-button type="primary" @click="submitFileForm">确 定</el-button>
|
|
|
|
- <el-button @click="upload.open = false">取 消</el-button>
|
|
|
|
- </div>
|
|
|
|
- </el-dialog>
|
|
|
|
-
|
|
|
|
<!-- 附件对话框 -->
|
|
<!-- 附件对话框 -->
|
|
- <el-dialog v-dialogDrag :close-on-click-modal="false" :visible.sync="doc.open" append-to-body title="现场照片"
|
|
|
|
- width="1000px">
|
|
|
|
- <el-image v-for="file in doc.fileList" :key="file.id" :src="file.fileUrl" lazy></el-image>
|
|
|
|
|
|
+ <el-dialog v-dialogDrag :close-on-click-modal="false" :visible.sync="open" append-to-body title="现场照片"
|
|
|
|
+ width="1000px" destroy-on-close :key="uploadKey">
|
|
|
|
+ <el-upload
|
|
|
|
+ :action="action"
|
|
|
|
+ :headers="headers"
|
|
|
|
+ list-type="picture-card"
|
|
|
|
+ :file-list="fileList"
|
|
|
|
+ :on-preview="handlePictureCardPreview"
|
|
|
|
+ :on-remove="handleRemove">
|
|
|
|
+ <i class="el-icon-plus"></i>
|
|
|
|
+ </el-upload>
|
|
|
|
+ </el-dialog>
|
|
|
|
+ <el-dialog :visible.sync="dialogVisible">
|
|
|
|
+ <img width="100%" :src="dialogImageUrl" alt="">
|
|
</el-dialog>
|
|
</el-dialog>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
</template>
|
|
|
|
|
|
<script>
|
|
<script>
|
|
-import {addFile, delFile, exportFile, getFile, importTemplate, listFile, updateFile} from "@/api/pssr/file";
|
|
|
|
-import {treeselect} from "@/api/system/dept";
|
|
|
|
|
|
+import {delFile} from "@/api/pssr/file";
|
|
import {getToken} from "@/utils/auth";
|
|
import {getToken} from "@/utils/auth";
|
|
-import Treeselect from "@riophae/vue-treeselect";
|
|
|
|
-import "@riophae/vue-treeselect/dist/vue-treeselect.css";
|
|
|
|
|
|
|
|
export default {
|
|
export default {
|
|
- name: "File",
|
|
|
|
- components: { Treeselect },
|
|
|
|
|
|
+ name: "pssrFile",
|
|
data() {
|
|
data() {
|
|
return {
|
|
return {
|
|
- // 遮罩层
|
|
|
|
- loading: true,
|
|
|
|
- // 选中数组
|
|
|
|
- ids: [],
|
|
|
|
- // 非单个禁用
|
|
|
|
- single: true,
|
|
|
|
- // 非多个禁用
|
|
|
|
- multiple: true,
|
|
|
|
- // 显示搜索条件
|
|
|
|
- showSearch: false,
|
|
|
|
- // 总条数
|
|
|
|
- total: 0,
|
|
|
|
// PSSR附件表格数据
|
|
// PSSR附件表格数据
|
|
fileList: [],
|
|
fileList: [],
|
|
- // 弹出层标题
|
|
|
|
- title: "",
|
|
|
|
- // 部门树选项
|
|
|
|
- deptOptions: undefined,
|
|
|
|
- clientHeight:300,
|
|
|
|
// 是否显示弹出层
|
|
// 是否显示弹出层
|
|
open: false,
|
|
open: false,
|
|
- openBatch: false,
|
|
|
|
- // 用户导入参数
|
|
|
|
- upload: {
|
|
|
|
- // 是否显示弹出层(用户导入)
|
|
|
|
- open: false,
|
|
|
|
- // 弹出层标题(用户导入)
|
|
|
|
- title: "",
|
|
|
|
- // 是否禁用上传
|
|
|
|
- isUploading: false,
|
|
|
|
- // 是否更新已经存在的用户数据
|
|
|
|
- updateSupport: 0,
|
|
|
|
- // 设置上传的请求头部
|
|
|
|
- headers: { Authorization: "Bearer " + getToken() },
|
|
|
|
- // 上传的地址
|
|
|
|
- url: process.env.VUE_APP_BASE_API + "/pssr/file/importData"
|
|
|
|
- },
|
|
|
|
- // 查询参数
|
|
|
|
- queryParams: {
|
|
|
|
- pageNum: 1,
|
|
|
|
- pageSize: 20,
|
|
|
|
- subId: null,
|
|
|
|
- itemId: null,
|
|
|
|
- forShort: null,
|
|
|
|
- fileName: null,
|
|
|
|
- fileUrl: null,
|
|
|
|
- fileSize: null,
|
|
|
|
- createrCode: null,
|
|
|
|
- createdate: null,
|
|
|
|
- updaterCode: null,
|
|
|
|
- updatedate: null,
|
|
|
|
- deptId: null,
|
|
|
|
- remarks: null
|
|
|
|
- },
|
|
|
|
- // 表单参数
|
|
|
|
- form: {},
|
|
|
|
- // 表单校验
|
|
|
|
- rules: {
|
|
|
|
- }
|
|
|
|
|
|
+ uploadKey:null,
|
|
|
|
+ dialogImageUrl: '',
|
|
|
|
+ dialogVisible: false,
|
|
|
|
+ headers: {Authorization: "Bearer " + getToken()},
|
|
|
|
+ action: null,
|
|
};
|
|
};
|
|
},
|
|
},
|
|
- watch: {
|
|
|
|
- // 根据名称筛选部门树
|
|
|
|
- deptName(val) {
|
|
|
|
- this.$refs.tree.filter(val);
|
|
|
|
- }
|
|
|
|
- },
|
|
|
|
- created() {
|
|
|
|
- //设置表格高度对应屏幕高度
|
|
|
|
- this.$nextTick(() => {
|
|
|
|
- this.clientHeight = document.body.clientHeight -250
|
|
|
|
- })
|
|
|
|
- this.getList();
|
|
|
|
- this.getTreeselect();
|
|
|
|
- },
|
|
|
|
methods: {
|
|
methods: {
|
|
- /** 查询PSSR附件列表 */
|
|
|
|
- getList() {
|
|
|
|
- this.loading = true;
|
|
|
|
- listFile(this.queryParams).then(response => {
|
|
|
|
- this.fileList = response.rows;
|
|
|
|
- this.total = response.total;
|
|
|
|
- this.loading = false;
|
|
|
|
- });
|
|
|
|
- },
|
|
|
|
- /** 查询部门下拉树结构 */
|
|
|
|
- getTreeselect() {
|
|
|
|
- treeselect().then(response => {
|
|
|
|
- this.deptOptions = response.data;
|
|
|
|
- });
|
|
|
|
- },
|
|
|
|
- // 取消按钮
|
|
|
|
- cancel() {
|
|
|
|
- this.open = false;
|
|
|
|
- this.reset();
|
|
|
|
- },
|
|
|
|
- // 表单重置
|
|
|
|
- reset() {
|
|
|
|
- this.form = {
|
|
|
|
- fileId: null,
|
|
|
|
- subId: null,
|
|
|
|
- itemId: null,
|
|
|
|
- forShort: null,
|
|
|
|
- fileName: null,
|
|
|
|
- fileUrl: null,
|
|
|
|
- fileSize: null,
|
|
|
|
- delFlag: null,
|
|
|
|
- createrCode: null,
|
|
|
|
- createdate: null,
|
|
|
|
- updaterCode: null,
|
|
|
|
- updatedate: null,
|
|
|
|
- deptId: null,
|
|
|
|
- remarks: null
|
|
|
|
- };
|
|
|
|
- this.resetForm("form");
|
|
|
|
- },
|
|
|
|
- /** 搜索按钮操作 */
|
|
|
|
- handleQuery() {
|
|
|
|
- this.queryParams.pageNum = 1;
|
|
|
|
- this.getList();
|
|
|
|
- },
|
|
|
|
- /** 重置按钮操作 */
|
|
|
|
- resetQuery() {
|
|
|
|
- this.resetForm("queryForm");
|
|
|
|
- this.handleQuery();
|
|
|
|
- },
|
|
|
|
- // 多选框选中数据
|
|
|
|
- handleSelectionChange(selection) {
|
|
|
|
- this.ids = selection.map(item => item.fileId)
|
|
|
|
- this.single = selection.length!==1
|
|
|
|
- this.multiple = !selection.length
|
|
|
|
- },
|
|
|
|
- /** 新增按钮操作 */
|
|
|
|
- handleAdd() {
|
|
|
|
- this.reset();
|
|
|
|
|
|
+ init(subId, forShort, itemId, fileList) {
|
|
this.open = true;
|
|
this.open = true;
|
|
- this.title = "添加PSSR附件";
|
|
|
|
- },
|
|
|
|
- /** 修改按钮操作 */
|
|
|
|
- handleUpdate(row) {
|
|
|
|
- this.reset();
|
|
|
|
- const fileId = row.fileId || this.ids
|
|
|
|
- getFile(fileId).then(response => {
|
|
|
|
- this.form = response.data;
|
|
|
|
- this.open = true;
|
|
|
|
- this.title = "修改PSSR附件";
|
|
|
|
|
|
+ this.fileList = fileList;
|
|
|
|
+ this.uploadKey = Date.now();
|
|
|
|
+ this.fileList.forEach(item => {
|
|
|
|
+ item.url = process.env.VUE_APP_BASE_API + item.fileUrl;
|
|
|
|
+ item.name = item.fileName;
|
|
});
|
|
});
|
|
|
|
+ this.action = process.env.VUE_APP_BASE_API + "/pssr/file/uploadFile?subId=" + subId + "&itemId=" + itemId
|
|
|
|
+ + "&forShort=" + forShort
|
|
},
|
|
},
|
|
- /** 提交按钮 */
|
|
|
|
- submitForm() {
|
|
|
|
- this.$refs["form"].validate(valid => {
|
|
|
|
- if (valid) {
|
|
|
|
- if (this.form.fileId != null) {
|
|
|
|
- updateFile(this.form).then(response => {
|
|
|
|
- this.msgSuccess("修改成功");
|
|
|
|
- this.open = false;
|
|
|
|
- this.getList();
|
|
|
|
- });
|
|
|
|
- } else {
|
|
|
|
- addFile(this.form).then(response => {
|
|
|
|
- this.msgSuccess("新增成功");
|
|
|
|
- this.open = false;
|
|
|
|
- this.getList();
|
|
|
|
- });
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- });
|
|
|
|
- },
|
|
|
|
- /** 删除按钮操作 */
|
|
|
|
- handleDelete(row) {
|
|
|
|
- const fileIds = row.fileId || this.ids;
|
|
|
|
- this.$confirm('是否确认删除?', "警告", {
|
|
|
|
- confirmButtonText: "确定",
|
|
|
|
- cancelButtonText: "取消",
|
|
|
|
- type: "warning"
|
|
|
|
- }).then(function() {
|
|
|
|
- return delFile(fileIds);
|
|
|
|
- }).then(() => {
|
|
|
|
- this.getList();
|
|
|
|
- this.msgSuccess("删除成功");
|
|
|
|
- })
|
|
|
|
- },
|
|
|
|
- /** 导出按钮操作 */
|
|
|
|
- handleExport() {
|
|
|
|
- const queryParams = this.queryParams;
|
|
|
|
- this.$confirm('是否确认导出所有PSSR附件数据项?', "警告", {
|
|
|
|
- confirmButtonText: "确定",
|
|
|
|
- cancelButtonText: "取消",
|
|
|
|
- type: "warning"
|
|
|
|
- }).then(function() {
|
|
|
|
- return exportFile(queryParams);
|
|
|
|
- }).then(response => {
|
|
|
|
- this.download(response.msg);
|
|
|
|
- })
|
|
|
|
|
|
+ handleRemove(file, fileList) {
|
|
|
|
+ delFile(file.fileId)
|
|
},
|
|
},
|
|
- /** 导入按钮操作 */
|
|
|
|
- handleImport() {
|
|
|
|
- this.upload.title = "用户导入";
|
|
|
|
- this.upload.open = true;
|
|
|
|
- },
|
|
|
|
- /** 下载模板操作 */
|
|
|
|
- importTemplate() {
|
|
|
|
- importTemplate().then(response => {
|
|
|
|
- this.download(response.msg);
|
|
|
|
- });
|
|
|
|
- },
|
|
|
|
- // 文件上传中处理
|
|
|
|
- handleFileUploadProgress(event, file, fileList) {
|
|
|
|
- this.upload.isUploading = true;
|
|
|
|
- },
|
|
|
|
- // 文件上传成功处理
|
|
|
|
- handleFileSuccess(response, file, fileList) {
|
|
|
|
- this.upload.open = false;
|
|
|
|
- this.upload.isUploading = false;
|
|
|
|
- this.$refs.upload.clearFiles();
|
|
|
|
- this.$alert(response.msg, "导入结果", { dangerouslyUseHTMLString: true });
|
|
|
|
- this.getList();
|
|
|
|
- },
|
|
|
|
- // 提交上传文件
|
|
|
|
- submitFileForm() {
|
|
|
|
- this.$refs.upload.submit();
|
|
|
|
- }
|
|
|
|
|
|
+ handlePictureCardPreview(file) {
|
|
|
|
+ this.dialogImageUrl = file.url;
|
|
|
|
+ this.dialogVisible = true;
|
|
|
|
+ }
|
|
}
|
|
}
|
|
};
|
|
};
|
|
</script>
|
|
</script>
|