From 2417a23dc04d04bd422d6f978958e10bf1633548 Mon Sep 17 00:00:00 2001
From: fei <791364011@qq.com>
Date: 星期六, 15 十一月 2025 23:44:56 +0800
Subject: [PATCH] 修改代码
---
src/views/archiveManager/archiveMaterial/index.vue | 351 +++++++++++++++++++++++++++++++++++++++++-----------------
1 files changed, 247 insertions(+), 104 deletions(-)
diff --git a/src/views/archiveManager/archiveMaterial/index.vue b/src/views/archiveManager/archiveMaterial/index.vue
index 5130c0f..7551f1d 100644
--- a/src/views/archiveManager/archiveMaterial/index.vue
+++ b/src/views/archiveManager/archiveMaterial/index.vue
@@ -2,8 +2,17 @@
<div class="app-container">
<h2 class="title-border">娣诲姞妗堝嵎璇︾粏璁板綍</h2>
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
+
+ <el-row>
+ <el-col :span="8">
+ <el-form-item label="鏂囦欢缂栧彿" prop="documentNumber">
+ <el-input ref="documentNumberInput" v-model="form.documentNumber" placeholder="璇疯緭鍏ユ枃浠剁紪鍙�" />
+ </el-form-item>
+ </el-col>
+ </el-row>
+
<el-row>
- <el-col :span="8">
+ <el-col :span="16">
<el-form-item label="璐d换鑰�" prop="creator">
<el-input v-model="form.creator" placeholder="璇疯緭鍏ヨ矗浠昏��" />
</el-form-item>
@@ -11,7 +20,7 @@
</el-row>
<el-row>
- <el-col :span="8">
+ <el-col :span="16">
<el-form-item label="鏂囦欢棰樺悕" prop="title">
<el-input v-model="form.title" placeholder="璇疯緭鍏ユ枃浠堕鍚�" />
</el-form-item>
@@ -42,20 +51,56 @@
:value="item.value"
/>
</el-select>
-
+
</el-form-item>
- <el-form-item label="椤靛彿"
+ <el-form-item label="椤靛彿"
prop="pageNumber"
v-if=" form.fileStyle !== '鍏朵粬鏉愭枡'">
<el-col :span="8">
- <el-input
- v-model.number="form.pageNumber"
- placeholder="璇疯緭鍏ラ〉鍙凤紙鏁板瓧绫诲瀷锛�"
- type="number"
+ <el-input
+ v-model.number="form.pageNumber"
+ placeholder="璇疯緭鍏ラ〉鍙凤紙鏁板瓧绫诲瀷锛�"
+ type="number"
min="1"
oninput="value=value.replace(/[^\d]/g,'')" style="width: 450px;"
/></el-col>
</el-form-item>
+
+ <el-form-item label="澶囨敞" prop="remarks">
+ <el-col :span="8">
+ <el-input v-model="form.remarks" placeholder="璇疯緭鍏ュ娉�" />
+ </el-col>
+ </el-form-item>
+
+ <el-form-item label="鍏紑灞炴��" prop="publicity">
+ <el-select
+ v-model="form.publicity"
+ placeholder="璇烽�夋嫨鍏紑灞炴��"
+ clearable
+ >
+ <el-option
+ v-for="item in publicityOptions"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ />
+ </el-select>
+ </el-form-item>
+ <el-form-item label="鏄惁涓洪檮浠�" prop="isAttachment">
+ <el-select
+ v-model="form.isAttachment"
+ placeholder="璇烽�夋嫨鏄惁涓洪檮浠�"
+ >
+ <el-option
+ v-for="item in isAttachmentOptions"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ />
+ </el-select>
+ </el-form-item>
+
+
<el-form-item label="鎵�澶勯樁娈�" prop="stage">
<el-select
v-model="form.stage"
@@ -69,13 +114,14 @@
/>
</el-select>
</el-form-item>
- <el-form-item label="鍏紑灞炴��" prop="publicity">
+
+ <el-form-item label="瀵嗙骇" prop="securityLevel">
<el-select
- v-model="form.publicity"
- placeholder="璇烽�夋嫨鍏紑灞炴��"
+ v-model="form.securityLevel"
+ placeholder="璇烽�夋嫨瀵嗙骇"
>
<el-option
- v-for="item in publicityOptions"
+ v-for="item in securityLevelOptions"
:key="item.value"
:label="item.label"
:value="item.value"
@@ -83,19 +129,6 @@
</el-select>
</el-form-item>
- <el-form-item label="鏄惁涓洪檮浠�" prop="isAttachment">
- <el-select
- v-model="form.isAttachment"
- placeholder="璇烽�夋嫨鏄惁涓洪檮浠�"
- >
- <el-option
- v-for="item in isAttachmentOptions"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- />
- </el-select>
- </el-form-item>
<el-form-item label="淇濈鏈熼檺" prop="retentionPeriod">
<el-select
@@ -112,19 +145,7 @@
</el-form-item>
<!-- 瀵硅瘽妗嗚〃鍗曚腑鐨勫瘑绾� -->
- <el-form-item label="瀵嗙骇" prop="securityLevel">
- <el-select
- v-model="form.securityLevel"
- placeholder="璇烽�夋嫨瀵嗙骇"
- >
- <el-option
- v-for="item in securityLevelOptions"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- />
- </el-select>
- </el-form-item>
+
@@ -162,6 +183,10 @@
<el-button type="primary" @click="resetForms">閲嶇疆</el-button>
<el-button @click="cancel">鍙� 娑�</el-button>
+
+
+ <el-button type="warning" @click="cancelAuthUser">閫�鍥炵鐞嗗憳</el-button>
+
</div>
@@ -196,6 +221,16 @@
</el-col>
<el-col :span="1.5">
<el-button
+ type="warning"
+ plain
+ icon="el-icon-download"
+ size="mini"
+ @click="handleExport"
+
+ >瀵煎嚭</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
type="danger"
plain
icon="el-icon-delete"
@@ -205,16 +240,7 @@
v-hasPermi="['system:materials:remove']"
>鍒犻櫎</el-button>
</el-col>
- <el-col :span="1.5">
- <el-button
- type="warning"
- plain
- icon="el-icon-download"
- size="mini"
- @click="handleExport"
- v-hasPermi="['system:materials:export']"
- >瀵煎嚭</el-button>
- </el-col>
+
<el-col :span="1.5">
<el-button
type="success"
@@ -232,8 +258,8 @@
class="upload-demo"
ref="upload"
:action="uploadUrl"
- :headers="headers"
- :data="uploadParams"
+ :headers="headers"
+ :data="uploadParams"
:on-success="handleSuccess"
:on-error="handleError"
:on-preview="handlePreview"
@@ -284,7 +310,33 @@
<el-table v-loading="loading" :data="materialsList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
+ <el-table-column label="鎿嶄綔" align="center" width="160" class-name="small-padding ">
+ <template slot-scope="scope">
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-edit"
+ @click="handleUpdate(scope.row)"
+ v-hasPermi="['system:materials:edit']"
+ >淇敼</el-button>
+ <!-- <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-edit"
+ @click="handleUpdate(scope.row)"
+ v-hasPermi="['system:materials:edit']"
+ >瀵煎叆闄勪欢</el-button> -->
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-delete"
+ @click="handleDelete(scope.row)"
+ v-hasPermi="['system:materials:remove']"
+ >鍒犻櫎</el-button>
+ </template>
+ </el-table-column>
<el-table-column label="鏂囦欢鏉愭枡搴忓彿" align="center" prop="fileNumber" />
+ <el-table-column label="鏂囦欢缂栧彿" align="center" prop="documentNumber" />
<el-table-column label="璐d换鑰�" align="center" prop="creator" />
<el-table-column label="鏂囦欢棰樺悕" align="center" prop="title" />
@@ -293,15 +345,18 @@
<span>{{ parseTime(scope.row.date, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
- <el-table-column label="椤靛彿" sortable align="center" prop="pageNumber" />
- <el-table-column label="椤垫" sortable align="center" prop="pageOrder" />
+ <el-table-column label="椤靛彿" sortable align="center" prop="pageNumber" />
+ <el-table-column label="澶囨敞" align="center" prop="remarks" />
+ <el-table-column label="椤垫" sortable align="center" prop="pageOrder" />
- <el-table-column label="鎵�澶勯樁娈�" sortable align="center" prop="stage" />
- <el-table-column label="鍏紑灞炴��" sortable align="center" prop="publicity" />
+ <el-table-column label="鎵�澶勯樁娈�" sortable align="center" width="180" prop="stage" />
+ <el-table-column label="鍏紑灞炴��" sortable align="center" width="180" prop="publicity" />
<el-table-column label="鏄惁涓洪檮鍥惧強闄勪欢" align="center" prop="isAttachment" />
<el-table-column label="淇濈鏈熼檺" align="center" prop="retentionPeriod" />
<el-table-column label="瀵嗙骇" align="center" prop="securityLevel" />
+ <el-table-column label="鏉愭枡绫诲瀷" align="fileStyle" prop="fileStyle" />
+
<el-table-column label="鏄惁娑夊瘑鍙婃晱鎰熶俊鎭�" align="center" prop="isSensitive" />
<el-table-column label="鏄惁娉ㄩ攢" align="center" prop="isCanceled" />
<el-table-column label="鏍煎紡" align="center" prop="format" />
@@ -313,31 +368,8 @@
<el-table-column label="澶у皬" align="center" prop="fileSize" />
<el-table-column label="闄勪欢鍙婂巻鍙插彂鏂囧彿" align="center" prop="attachmentHistoryNumbers" />
- <el-table-column label="鎿嶄綔" align="center" width="160" class-name="small-padding ">
- <template slot-scope="scope">
- <el-button
- size="mini"
- type="text"
- icon="el-icon-edit"
- @click="handleUpdate(scope.row)"
- v-hasPermi="['system:materials:edit']"
- >淇敼</el-button>
- <el-button
- size="mini"
- type="text"
- icon="el-icon-edit"
- @click="handleUpdate(scope.row)"
- v-hasPermi="['system:materials:edit']"
- >瀵煎叆闄勪欢</el-button>
- <el-button
- size="mini"
- type="text"
- icon="el-icon-delete"
- @click="handleDelete(scope.row)"
- v-hasPermi="['system:materials:remove']"
- >鍒犻櫎</el-button>
- </template>
- </el-table-column>
+
+
</el-table>
<pagination
@@ -350,18 +382,22 @@
<el-dialog :title="title" :visible.sync="open" width="800px" append-to-body>
<el-form ref="forms" :model="forms" :rules="rules" label-width="100px">
+
+
+ <el-form-item label="鏂囦欢缂栧彿" prop="documentNumber">
+ <el-input v-model="forms.documentNumber" placeholder="璇疯緭鍏ユ枃浠剁紪鍙�" />
+ </el-form-item>
<el-row>
- <el-col :span="8">
+ <el-col :span="16">
<el-form-item label="璐d换鑰�" prop="creator">
<el-input v-model="forms.creator" placeholder="璇疯緭鍏ヨ矗浠昏��" />
</el-form-item>
</el-col>
- <el-col :span="8">
- <el-form-item label="鏂囦欢棰樺悕" prop="title">
- <el-input v-model="forms.title" placeholder="璇疯緭鍏ユ枃浠堕鍚�" />
- </el-form-item>
- </el-col>
+
</el-row>
+ <el-form-item label="鏂囦欢棰樺悕" prop="title">
+ <el-input v-model="forms.title" placeholder="璇疯緭鍏ユ枃浠堕鍚�" />
+ </el-form-item>
<el-form-item label="鏃ユ湡" prop="date">
<el-input v-model="forms.date" placeholder="璇疯緭鍏ユ棩鏈� (鏍煎紡锛歽yyy-mm-dd)" style="width: 200px;" />
<!-- <el-date-picker clearable
@@ -390,7 +426,9 @@
</el-select>
</el-form-item>
-
+ <el-form-item label="澶囨敞" prop="remarks">
+ <el-input v-model="forms.remarks" placeholder="璇疯緭鍏ュ娉�" />
+ </el-form-item>
<el-form-item label="鎵�澶勯樁娈�" prop="stage">
<el-select
v-model="forms.stage"
@@ -689,7 +727,10 @@
<script>
import { listMaterials, enload, getMaterials, delMaterials, addMaterials, updateMaterials } from "@/api/system/materials"
import { getToken } from '@/utils/auth'
+import store from '@/store'
+import { updateStatusById } from "@/api/system/records"
+import {delArchiverecordstouserByReIdAndUid} from "@/api/system/archiverecordstouser"
export default {
name: "Materials",
data() {
@@ -699,7 +740,7 @@
uploadUrl: process.env.VUE_APP_BASE_API +'/system/materials/upload/'+this.recordId, // 鏇挎崲涓哄疄闄呯殑涓婁紶鎺ュ彛
headers: {
Authorization: 'Bearer ' + getToken()
- },
+ },
uploadParams: {
type: 'material' // 鑷畾涔変笂浼犵被鍨�
},
@@ -715,8 +756,9 @@
securityLevelOptions: [
{ value: '绉樺瘑', label: '绉樺瘑' },
{ value: '鏅��', label: '鏅��' },
- { value: '璇ラ〉鍙﹀瓨', label: '璇ラ〉鍙﹀瓨' }
-
+ { value: '璇ラ〉鍙﹀瓨', label: '璇ラ〉鍙﹀瓨' },
+ { value: '鍐呴儴鐢ㄩ��', label: '鍐呴儴鐢ㄩ��' },
+ { value: '鍐呴儴鐢ㄥ浘', label: '鍐呴儴鐢ㄥ浘' },
],
// 娣诲姞淇濈鏈熼檺閫夐」
retentionPeriodOptions: [
@@ -806,19 +848,22 @@
// 琛ㄥ崟鏍¢獙
rules: {
creator: [
- { required: true, message: "鍒涘缓鑰呬笉鑳戒负绌�", trigger: "blur" }
+ // { required: true, message: "鍒涘缓鑰呬笉鑳戒负绌�", trigger: "blur" }
],
title: [
{ required: true, message: "妗堝嵎棰樺悕涓嶈兘涓虹┖", trigger: "blur" }
],
date: [
- { required: true, message: "鏃ユ湡涓嶈兘涓虹┖", trigger: "blur" },
+ // { required: true, message: "鏃ユ湡涓嶈兘涓虹┖", trigger: "blur" },
{ pattern: /^\d{4}-\d{2}-\d{2}$/, message: "鏃ユ湡鏍煎紡蹇呴』涓簓yyy-mm-dd", trigger: "blur" }
],
pageNumber: [
{ required: true, message: "椤靛彿涓嶈兘涓虹┖", trigger: "blur" },
{ type: 'number', message: '椤靛彿蹇呴』涓烘暟瀛楃被鍨�', trigger: ['blur', 'change'] },
{ pattern: /^\d+$/, message: '璇疯緭鍏ユ鏁存暟', trigger: 'blur' }
+ ],
+ stage: [
+ { required: true, message: "鎵�澶勯樁娈典笉鑳戒负绌�", trigger: "change" }
]
}
}
@@ -865,8 +910,10 @@
this.$refs.upload.clearFiles();
// 鍏抽棴涓婁紶瀵硅瘽妗�
this.importDialogVisible = false;
- // 鍒锋柊鍒楄〃鏁版嵁
- this.getList(); // 杩欓噷鍙互璋冪敤鎺ュ彛鍏宠仈涓婁紶鐨勬枃浠跺拰褰撳墠璁板綍
+ // 鍒锋柊鍒楄〃鏁版嵁
+ this.getList(); // 杩欓噷鍙互璋冪敤鎺ュ彛鍏宠仈涓婁紶鐨勬枃浠跺拰褰撳墠璁板綍
+ //鏇存柊妗f鐨勭姸鎬�
+
} else {
// alert(234)
console.log(response)
@@ -925,6 +972,10 @@
if ((e.ctrlKey || e.metaKey) && e.key === 'd') {
e.preventDefault();
this.resetForms();
+ }
+ if ((e.ctrlKey || e.metaKey) && e.key === 'w') {
+ e.preventDefault();
+ this.closeCurrentTab();
}
},
/** 鏌ヨ銆愯濉啓鍔熻兘鍚嶇О銆戝垪琛� */
@@ -1038,25 +1089,87 @@
})
},
resetForms()
- {
+ {
this.reset()
- this.form.securityLevel = '鏅��' // 璁剧疆瀵硅瘽妗嗚〃鍗曢粯璁ゅ��
- this.form.isSensitive = '鍚�' // 璁剧疆瀵硅瘽妗嗚〃鍗曢粯璁ゅ��
- this.form.isCanceled = '鍚�' // 璁剧疆瀵硅瘽妗嗚〃鍗曢粯璁ゅ��
- this.form.isAttachment = '鍚�' // 璁剧疆瀵硅瘽妗嗚〃鍗曢粯璁ゅ��
- this.form.isDiagram = '鍚�' // 璁剧疆瀵硅瘽妗嗚〃鍗曢粯璁ゅ��
- this.form.retentionPeriod = '姘镐箙' // 璁剧疆瀵硅瘽妗嗚〃鍗曢粯璁ゅ��
- },
+ this.form.securityLevel = '鏅��'
+ this.form.isSensitive = '鍚�'
+ this.form.isCanceled = '鍚�'
+ this.form.isAttachment = '鍚�'
+ this.form.isDiagram = '鍚�'
+ this.form.retentionPeriod = '姘镐箙'
+ },
+ closeCurrentTab() {
+ this.$store.dispatch('tagsView/delView', this.$route)
+ this.$router.push('/archiveManager/infoManager')
+ },
submitForm()
{
console.log(this.form)
this.form.recordId = this.recordId
console.log("==============+++++++++++++++============")
+
+ // 淇濆瓨褰撳墠琛ㄥ崟涓渶瑕佷繚鐣欑殑瀛楁鍊�
+ const preservedValues = {
+ documentNumber: this.form.documentNumber,
+ creator: this.form.creator,
+ title: this.form.title,
+ date: this.form.date,
+ pageNumber: this.form.pageNumber,
+ remarks: this.form.remarks,
+ stage: this.form.stage // 鎵�澶勯樁娈典繚鎸佽窡涓婁竴鏉′竴鑷�
+ };
+ this.$refs.form.validate(valid => {
+ if (valid) {
addMaterials(this.form).then(response => {
this.$modal.msgSuccess("鏂板鎴愬姛")
- // this.opens = false
-
+
+ // 鍒涘缓鏂拌〃鍗曪紝淇濈暀鐗瑰畾瀛楁锛岄噸缃叾浠栧瓧娈�
+ this.form = {
+ materialId: null,
+ recordId: this.recordId,
+ // 淇濈暀鐨勫瓧娈�
+ documentNumber: preservedValues.documentNumber,
+ creator: preservedValues.creator,
+ title: preservedValues.title,
+ date: preservedValues.date,
+ pageNumber: preservedValues.pageNumber,
+ remarks: preservedValues.remarks,
+ stage: preservedValues.stage,
+ // 閲嶇疆涓虹┖鐨勫瓧娈�
+ publicity: null,
+ // 閲嶇疆涓洪粯璁ゅ�肩殑瀛楁
+ fileStyle: '鏂囧瓧鏉愭枡', // 鏉愭枡绫诲瀷榛樿涓烘枃瀛楁潗鏂�
+ securityLevel: '鏅��', // 瀵嗙骇榛樿涓烘櫘閫�
+ isAttachment: '鍚�', // 鏄惁涓洪檮浠堕粯璁や负鍚�
+ isSensitive: '鍚�', // 鏄惁鏁忔劅榛樿涓哄惁
+ isCanceled: '鍚�', // 鏄惁娉ㄩ攢榛樿涓哄惁
+ // 鍏朵粬闇�瑕侀噸缃殑瀛楁
+ isDiagram: '鍚�',
+ retentionPeriod: '姘镐箙',
+ format: null,
+ sizeType: null,
+ horizontalResolution: null,
+ verticalResolution: null,
+ width: null,
+ height: null,
+ fileSize: null,
+ attachmentHistoryNumbers: null,
+ createdAt: null,
+ updatedAt: null
+ };
+
+ // 淇濆瓨鎴愬姛鍚庯紝鍏夋爣璺冲洖鏂囦欢缂栧彿杈撳叆妗�
+ this.$nextTick(() => {
+ this.$refs.documentNumberInput.focus();
+ });
this.getList()
+ })
+ }
+ else
+ {
+ this.$message.error('璇峰~鍐欐墍鏈夊繀濉瓧娈�');
+
+ }
})
},
/** 鎻愪氦鎸夐挳 */
@@ -1066,6 +1179,10 @@
if (this.forms.materialId != null) {
updateMaterials(this.forms).then(response => {
this.$modal.msgSuccess("淇敼鎴愬姛")
+ // 淇敼鎴愬姛鍚庯紝鍏夋爣璺冲洖鏂囦欢缂栧彿杈撳叆妗�
+ this.$nextTick(() => {
+ this.$refs.documentNumberInput.focus();
+ });
this.open = false
this.getList()
})
@@ -1133,7 +1250,33 @@
this.$message.error('瀵煎叆澶辫触: ' + (error.message || '鏈煡閿欒'));
});
- }
+ },
+ /** 鍙栨秷鎺堟潈鎸夐挳鎿嶄綔 */
+ cancelAuthUser(row) {
+ const recordId = this.recordId
+ var userId = store.state.user.id
+ var _this = this
+ // alert(userId)
+ // alert(userId)
+ // alert(this.queryParams.archiveRecordsId)
+ // alert(row.sysUser.userName)
+ this.$modal.confirm('纭瑕佸彇娑堣鐢ㄦ埛鐨�"' + '' + '"鎺堟潈鍚楋紵').then(function() {
+ return delArchiverecordstouserByReIdAndUid({ recordId: recordId, userId: userId })
+ }).then(() => {
+ // this.getList()
+ //淇敼妗堝嵎鐨勭姸鎬�
+ // var id = row.id
+ var status = '鏈笂浼犻檮浠�'
+ updateStatusById(status, recordId).then(response=>{
+ // this.$modal.msgSuccess("鎻愪氦鎴愬姛")
+ // this.getList()
+ _this.$store.dispatch('tagsView/delView', this.$route);
+ _this.$router.push('/archiveManager/infoManager')
+ _this.$modal.msgSuccess("鍙栨秷鎺堟潈鎴愬姛")
+ })
+
+ }).catch(() => {})
+ },
}
}
</script>
--
Gitblit v1.9.1