|
@@ -86,7 +86,7 @@
|
|
|
</el-button>
|
|
|
<HcTooltip keys="archives_tuning_btn_combine">
|
|
|
<el-button hc-btn :disabled="tableCheckedKeys.length <= 0" @click="mergeClick">
|
|
|
- 并卷
|
|
|
+ 重组
|
|
|
</el-button>
|
|
|
</HcTooltip>
|
|
|
<HcTooltip keys="archives_tuning_btn_num">
|
|
@@ -271,9 +271,15 @@
|
|
|
</hc-new-dialog>
|
|
|
<!-- 编辑案卷信息 -->
|
|
|
<hc-new-dialog v-model="showUploadModal" :title="editTitle" widths="80vw">
|
|
|
+ <template #search>
|
|
|
+ <el-button hc-btn :disabled="tableCheckedKeysUpload.length <= 0" type="primary" @click="replaceClickCollect">
|
|
|
+ 查找替换
|
|
|
+ </el-button>
|
|
|
+ </template>
|
|
|
<HcTable
|
|
|
+ ref="tableUploadRef"
|
|
|
:column="tableUploadColumn" :datas="tableUploadData" :index-style="{ width: 60 }"
|
|
|
- :loading="uploadSaveLoading" is-new ui="hc-form-table"
|
|
|
+ :loading="uploadSaveLoading" is-new ui="hc-form-table" is-check @selection-change="uploadTableSelection"
|
|
|
>
|
|
|
<template #name="{ row }">
|
|
|
<el-input v-model="row.name" :class="row.isFileNumber ? 'is-error' : ''" @input="tableIsInput($event, row, 'name')" />
|
|
@@ -413,6 +419,68 @@
|
|
|
</hc-new-dialog>
|
|
|
<!-- 展开案卷 -->
|
|
|
<CarrySpotChecksDrawer :show="spotChecksDrawer" :file-id="fileId" :checkmeta-file-id="checkmetaFileId" @close="onCarrySpotChecksClose" />
|
|
|
+
|
|
|
+ <!-- 卷内编辑查找替换弹窗 -->
|
|
|
+ <hc-new-dialog v-model="showReplaceModalCollect" widths="50vw" :loading="saveReplaceLoadCollect" @save="saveReplaceCollect">
|
|
|
+ <template #header>
|
|
|
+ <div class="text-1xl mt-2 text-center font-bold">
|
|
|
+ {{ replaceTitleCollect }}
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ <div class="replace-dialog-content">
|
|
|
+ <div class="text-center">
|
|
|
+ <el-radio-group v-model="tabPositionCollect" style="margin-bottom: 30px" @change="changeTab">
|
|
|
+ <el-radio-button value="1">新增</el-radio-button>
|
|
|
+ <el-radio-button value="2">替换</el-radio-button>
|
|
|
+ <el-radio-button value="3">删除</el-radio-button>
|
|
|
+ </el-radio-group>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <el-form
|
|
|
+ ref="ruleFormRef"
|
|
|
+ :model="ruleFormCollect"
|
|
|
+ label-width="auto"
|
|
|
+ size="large"
|
|
|
+ >
|
|
|
+ <el-form-item v-if="tabPositionCollect !== '3'" label="查找内容" prop="query">
|
|
|
+ <el-input v-model="ruleFormCollect.query" placeholder="请输入原内容" />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item v-if="tabPositionCollect === '1'" label="新增内容" prop="replace">
|
|
|
+ <el-input
|
|
|
+ v-model="ruleFormCollect.replace"
|
|
|
+ placeholder="请输入新增内容"
|
|
|
+ />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item v-if="tabPositionCollect === '2'" label="替换内容" prop="replace">
|
|
|
+ <el-input
|
|
|
+ v-model="ruleFormCollect.replace"
|
|
|
+ placeholder="请输入替换后内容"
|
|
|
+ />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item v-if="tabPositionCollect === '3'" label="删除内容" prop="query">
|
|
|
+ <el-input
|
|
|
+ v-model="ruleFormCollect.query"
|
|
|
+ placeholder="请输入原内容"
|
|
|
+ />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item v-if="tabPositionCollect === '1'" label="定位条件" prop="position">
|
|
|
+ <el-select
|
|
|
+ v-model="ruleFormCollect.position"
|
|
|
+ placeholder="请选择"
|
|
|
+ >
|
|
|
+ <el-option
|
|
|
+ label="前"
|
|
|
+ :value="1"
|
|
|
+ />
|
|
|
+ <el-option
|
|
|
+ label="后"
|
|
|
+ :value="2"
|
|
|
+ />
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ </div>
|
|
|
+ </hc-new-dialog>
|
|
|
</hc-body>
|
|
|
</template>
|
|
|
|
|
@@ -425,6 +493,7 @@ import { rowsToId, rowsToIdNumArr } from '~uti/tools'
|
|
|
|
|
|
import tuningApi from '~api/archiveConfig/tuning.js'
|
|
|
import archiveFileApi from '~api/archiveFile/archiveFileAuto.js'
|
|
|
+import archiveFileApiCollect from '~api/archiveFile/archiveFile'
|
|
|
import aiApi from '~api/ai/ai.js'
|
|
|
import { HcDelMsg } from 'hc-vue3-ui'
|
|
|
import { getStoreValue, setStoreValue } from '~src/utils/storage'
|
|
@@ -1004,6 +1073,7 @@ const batchEditClick = (type) => {
|
|
|
|
|
|
|
|
|
//设置文件表头
|
|
|
+const tableUploadRef = ref(null)
|
|
|
const tableUploadColumn = ref([])
|
|
|
const setTableUploadColumn = (type) => {
|
|
|
if (type === 1) {
|
|
@@ -1028,6 +1098,12 @@ const batchUploadCancel = () => {
|
|
|
showUploadModal.value = false
|
|
|
tableUploadData.value = []
|
|
|
}
|
|
|
+//多选
|
|
|
+const tableCheckedKeysUpload = ref([])
|
|
|
+const uploadTableSelection = (rows) => {
|
|
|
+ tableCheckedKeysUpload.value = rows
|
|
|
+}
|
|
|
+
|
|
|
//确认上传保存
|
|
|
const batchUploadSaveApi = async (rows) => {
|
|
|
uploadSaveLoading.value = true
|
|
@@ -1458,6 +1534,69 @@ const onCarrySpotChecksClose = () => {
|
|
|
|
|
|
|
|
|
}
|
|
|
+
|
|
|
+//编辑卷内文件的查找替换
|
|
|
+const saveReplaceLoadCollect = ref(false)
|
|
|
+const showReplaceModalCollect = ref(false)
|
|
|
+const ruleFormCollect = ref({})
|
|
|
+const replaceClickCollect = ()=>{
|
|
|
+
|
|
|
+ if (tableCheckedKeysUpload.value.length === 0) {
|
|
|
+ window.$message?.warning('请选择需要更新的案卷')
|
|
|
+ return
|
|
|
+ }
|
|
|
+ // 检查是否有被锁定的案卷
|
|
|
+ const lockedArchives = tableCheckedKeysUpload.value.filter(item => item.isLock === 1)
|
|
|
+ if (lockedArchives.length > 0) {
|
|
|
+ window.$message.warning('选择的案卷中包含被锁定的项,无法操作')
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ showReplaceModalCollect.value = true
|
|
|
+ ruleFormCollect.value = {}
|
|
|
+}
|
|
|
+const saveReplaceCollect = async ()=>{
|
|
|
+ const rows = tableCheckedKeysUpload.value
|
|
|
+ let ids = ''
|
|
|
+ ids = arrToId(rows)
|
|
|
+ // 保存前去除空格
|
|
|
+ if (ruleFormCollect.value.query) {
|
|
|
+ ruleFormCollect.value.query = ruleFormCollect.value.query.trim()
|
|
|
+ }
|
|
|
+ if (ruleFormCollect.value.replace) {
|
|
|
+ ruleFormCollect.value.replace = ruleFormCollect.value.replace.trim()
|
|
|
+ }
|
|
|
+
|
|
|
+ saveReplaceLoadCollect.value = true
|
|
|
+
|
|
|
+ const { error, code, data, msg } = await archiveFileApiCollect.findAndReplace({
|
|
|
+ ...ruleFormCollect.value,
|
|
|
+ ids,
|
|
|
+ type:tabPositionCollect.value,
|
|
|
+ })
|
|
|
+
|
|
|
+ saveReplaceLoadCollect.value = false
|
|
|
+ if (!error && code === 200) {
|
|
|
+ window.$message?.success(msg)
|
|
|
+ showReplaceModalCollect.value = false
|
|
|
+ await getintableData()
|
|
|
+
|
|
|
+ intableData.value.forEach(item=>{
|
|
|
+ tableUploadData.value.forEach(ele=>{
|
|
|
+ if (item.id === ele.id) {
|
|
|
+ ele.fileName = item.fileName
|
|
|
+ }
|
|
|
+ })
|
|
|
+ })
|
|
|
+ tableUploadRef.value.clearSelection()
|
|
|
+
|
|
|
+ } else {
|
|
|
+ window.$message?.warning(msg)
|
|
|
+ }
|
|
|
+
|
|
|
+}
|
|
|
+const replaceTitleCollect = ref('查找替换')
|
|
|
+const tabPositionCollect = ref('1')
|
|
|
</script>
|
|
|
|
|
|
<style lang="scss" scoped>
|