阅行客电子档案
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

704 lines
29 KiB

2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
  1. <template>
  2. <div class="collect-header">
  3. <h4 :class="classType">{{ collectTitle }} <span v-if="isTitleType !== 2 && !(isTitleType === 3 && (selectedCategory.arrangeType === 1 || selectedCategory.arrangeType === 2) )"> > {{ test }}</span></h4>
  4. <div v-if="isTitleType !== 6" :class="[!(isRecycle && (isTitleType === 2 || (isTitleType === 3 && selectedCategory.arrangeType !== 3))) ? 'head-search is-recycle':'head-search']">
  5. <!-- 搜索 -->
  6. <el-input v-model="query.search" clearable size="small" :placeholder="placeholderType" prefix-icon="el-icon-search" style="width: 200px;" class="filter-item" />
  7. <el-button class="filter-item filter-search" size="mini" type="success" icon="el-icon-search" @click="handleSearch">搜索</el-button>
  8. <el-button class="filter-item filter-refresh" size="mini" type="warning" icon="el-icon-refresh-left">重置</el-button>
  9. </div>
  10. <div v-if="!isRecycle" class="collect-menu">
  11. <el-menu
  12. :default-active="activeMenuIndex"
  13. mode="horizontal"
  14. @select="handleSelect"
  15. >
  16. <el-submenu index="1">
  17. <template slot="title">
  18. <i class="iconfont icon-changgui" />
  19. <span>常规</span>
  20. </template>
  21. <el-menu-item-group class="collect-submenu-group">
  22. <el-menu-item v-if="isTitleType !== 6" index="1-1" @click="handleForm('add')">新增</el-menu-item>
  23. <el-menu-item v-if="isTitleType !== 6" index="1-2" @click="handleForm('edit')">编辑</el-menu-item>
  24. <el-menu-item v-if="isTitleType !== 4" index="1-3" @click="toDelete">删除</el-menu-item>
  25. <el-menu-item v-if="isTitleType === 4" index="1-4" @click="toMove">移出</el-menu-item>
  26. </el-menu-item-group>
  27. <el-menu-item-group v-if="(isTitleType === 3 && selectedCategory.arrangeType === 1) || isTitleType === 4 || isTitleType === 6 || (isTitleType === 3 && activeIndex === 1)" class="collect-submenu-group submenu-tree">
  28. <template slot="title">原文上传</template>
  29. <el-menu-item index="1-5" @click="fileUpload(0)">普通上传</el-menu-item>
  30. <el-menu-item index="1-6" @click="fileUpload(1)">大文件上传</el-menu-item>
  31. </el-menu-item-group>
  32. </el-submenu>
  33. <el-submenu v-if="isTitleType !== 6" index="2">
  34. <template slot="title">
  35. <i class="iconfont icon-zhengli" />
  36. <span>整理</span>
  37. </template>
  38. <el-menu-item-group class="collect-submenu-group">
  39. <el-menu-item v-if="isTitleType !== 2" index="2-1" @click="handleBlukImport">批量导入</el-menu-item>
  40. <!-- 项目 / 案卷 / 卷内 / 文件-->
  41. <el-menu-item v-if="activeIndex !== 1 || (isTitleType === 3 && selectedCategory.arrangeType === 1 && activeIndex === 1)" index="2-2" @click="handleBlukEditing">批量修改</el-menu-item>
  42. <el-menu-item v-if="isTitleType !== 2 && !(isTitleType === 3 && (selectedCategory.arrangeType === 3 || selectedCategory.arrangeType === 2) && activeIndex === 1)" index="2-3" @click="handleAdjustment">档案调整</el-menu-item>
  43. <el-menu-item v-if="isTitleType !== 2 && !(isTitleType === 3 && (selectedCategory.arrangeType === 3 || selectedCategory.arrangeType === 2) && activeIndex === 1)" index="2-4" @click="handleFileNumberUpdate">档号更新</el-menu-item>
  44. <!-- 案卷 -->
  45. <el-menu-item v-if="isTitleType === 3 && activeIndex === 0 && selectedCategory.arrangeType !== 1 " index="2-5" @click="handleFileNumberUpdate">卷内档号更新</el-menu-item>
  46. <el-menu-item v-if="isTitleType === 3 && activeIndex === 0 && selectedCategory.arrangeType !== 1 " index="2-12" @click="handleFileSeqAdjustment">卷内顺序调整</el-menu-item>
  47. <el-menu-item v-if="isTitleType === 3 && activeIndex === 0 && selectedCategory.arrangeType !== 1" index="2-6" @click="handleUncoil">拆卷</el-menu-item>
  48. <el-menu-item v-if="isTitleType === 3 && activeIndex === 0 && selectedCategory.arrangeType !== 1" index="2-7" @click="handleCombineFile">合卷</el-menu-item>
  49. <el-menu-item v-if="isTitleType === 3 && selectedCategory.arrangeType !== 1" index="2-8" @click="handleInsertFile">插件</el-menu-item>
  50. <!-- 案卷 / 卷内 / 文件 -->
  51. <el-menu-item v-if="isTitleType !== 2" index="2-9" @click="handleCollectMoveFile">移动</el-menu-item>
  52. <!-- 案卷 -->
  53. <el-menu-item v-if="isTitleType === 3 && activeIndex === 0" index="2-10" @click="handleFiling">归档</el-menu-item>
  54. <!-- 文件 -->
  55. <el-menu-item v-if="(isTitleType === 3 && selectedCategory.arrangeType === 1) || (isTitleType === 3 && activeIndex === 1)" index="2-11" @click="handleReturn">退回预归档库</el-menu-item>
  56. </el-menu-item-group>
  57. <el-menu-item-group v-if="isTitleType === 3 && activeIndex === 1 && selectedCategory.arrangeType !== 1" class="collect-submenu-group submenu-tree">
  58. <template slot="title">组卷</template>
  59. <el-menu-item index="2-12" @click="handleQuickPaper">快速组卷</el-menu-item>
  60. <el-menu-item index="2-13" @click="handlePaper">手工组卷</el-menu-item>
  61. </el-menu-item-group>
  62. </el-submenu>
  63. <el-submenu index="3">
  64. <template slot="title">
  65. <i class="iconfont icon-gengduo" />
  66. <span>更多</span>
  67. </template>
  68. <el-menu-item-group class="collect-submenu-group">
  69. <el-menu-item v-if="isTitleType !== 6" index="3-1" @click="handleExport">导出</el-menu-item>
  70. <el-menu-item v-if="!(isTitleType === 3 && (selectedCategory.arrangeType === 3 || selectedCategory.arrangeType === 2) && activeIndex === 1) && (isTitleType !== 2 && isTitleType !== 6)" index="3-2" @click="handlePrint">打印</el-menu-item>
  71. <el-menu-item v-if="!(isTitleType === 3 && (selectedCategory.arrangeType === 3 || selectedCategory.arrangeType === 2) && activeIndex === 1) && (isTitleType !== 2 && isTitleType !== 6)" index="3-3" @click="handleFourTest">四性检测</el-menu-item>
  72. <el-menu-item v-if="isTitleType === 6" index="3-4" @click="handleOriginalDownload">下载</el-menu-item>
  73. </el-menu-item-group>
  74. <el-menu-item-group v-if="!(isTitleType === 3 && (selectedCategory.arrangeType === 3 || selectedCategory.arrangeType === 2) && activeIndex === 1) && (isTitleType !== 2 && isTitleType !== 6)" class="collect-submenu-group submenu-tree">
  75. <template slot="title">电子文件目录</template>
  76. <el-menu-item index="3-5" @click="handleCatalogDownload">目录下载</el-menu-item>
  77. <el-menu-item index="3-6" @click="fileUpload(2)">目录上传</el-menu-item>
  78. </el-menu-item-group>
  79. </el-submenu>
  80. </el-menu>
  81. </div>
  82. <div v-if="isRecycle && (isTitleType === 2 || (isTitleType === 3 && selectedCategory.arrangeType !== 3))" class="collect-menu">
  83. <el-button class="filter-item" size="mini" type="success" @click="toRecover"><i class="iconfont icon-huifu" />恢复</el-button>
  84. <el-button class="filter-item" size="mini" type="success" @click="toCompletelyDelete"><i class="iconfont icon-shanchu" />彻底删除</el-button>
  85. </div>
  86. <!--新增 / 编辑 表单组件-->
  87. <el-dialog class="preview-dialog" :modal-append-to-body="false" :close-on-click-modal="false" append-to-body :before-close="handleClose" :visible="formVisible" :title="formTitle">
  88. <span class="dialog-right-top" />
  89. <span class="dialog-left-bottom" />
  90. <div class="setting-dialog">
  91. <!-- form -->
  92. <!-- @emitTableList="getTableList" -->
  93. <PreviewForm v-if="formPreviewData.length" ref="previewForm" :is-has-code="true" :is-disabled="false" :form-preview-data.sync="formPreviewData" :selected-category="selectedCategory" :parents-id="parentsId" :arc-id="arcId" :is-des-form-type="isDesFormType" />
  94. <div slot="footer" class="dialog-footer">
  95. <el-button type="primary" @click="handlerArchivesSubmit">保存</el-button>
  96. </div>
  97. </div>
  98. </el-dialog>
  99. <!--删除对话框组件-->
  100. <el-dialog class="tip-dialog" title="提示" :close-on-click-modal="false" :modal-append-to-body="false" append-to-body :visible.sync="deleteVisible">
  101. <div class="setting-dialog">
  102. <div class="tip-content">
  103. <p class="tipMsg">此删除将把会所选条目与其子集放入回收站</p>
  104. <span>你是否还要继续?</span>
  105. </div>
  106. <div slot="footer" class="dialog-footer">
  107. <el-button type="text" @click="deleteVisible = false">取消</el-button>
  108. <el-button type="primary" @click.native="handleDelConfirm">确定</el-button>
  109. </div>
  110. </div>
  111. </el-dialog>
  112. <!--卷内移出 组件-->
  113. <el-dialog class="tip-dialog" title="提示" :close-on-click-modal="false" :modal-append-to-body="false" append-to-body :visible.sync="moveVisible">
  114. <div class="setting-dialog">
  115. <div class="tip-content">
  116. <p class="tipMsg">此移出将把会所选条目返还到未整理列表</p>
  117. <span>你是否还要继续?</span>
  118. </div>
  119. <div slot="footer" class="dialog-footer">
  120. <el-button type="text" @click="moveVisible = false">取消</el-button>
  121. <el-button type="primary" @click.native="handleMoveConfirm">确定</el-button>
  122. </div>
  123. </div>
  124. </el-dialog>
  125. <!-- 原文上传 -->
  126. <UploadOriginal ref="uploadOriginalRef" />
  127. <!-- 批量导入 -->
  128. <BlukImport ref="blukImportRef" />
  129. <!-- 批量修改 -->
  130. <BlukEditing ref="blukEditingRef" />
  131. <!-- 档案调整 -->
  132. <FileNumberAdjustment ref="fileNumberAdjustmentRef" :selected-category="selectedCategory" />
  133. <!-- 档号更新 -->
  134. <el-dialog class="tip-dialog" title="档号更新" :close-on-click-modal="false" :modal-append-to-body="false" append-to-body :visible.sync="updateVisible">
  135. <div class="setting-dialog">
  136. <div class="tip-content">
  137. <p class="tipMsg">此操作将会自动重新生成档号</p>
  138. <span>你是否还要继续?</span>
  139. </div>
  140. <div slot="footer" class="dialog-footer">
  141. <el-button type="text" @click="updateVisible = false">取消</el-button>
  142. <el-button type="primary" @click.native="handleUpdateConfirm">确定</el-button>
  143. </div>
  144. </div>
  145. </el-dialog>
  146. <!-- 卷内顺序调整 -->
  147. <FileSeqAdjustment ref="fileSeqAdjustmentRef" :selected-category="selectedCategory" />
  148. <!-- 拆卷 -->
  149. <el-dialog class="tip-dialog" title="拆卷" :close-on-click-modal="false" :modal-append-to-body="false" append-to-body :visible.sync="uncoilVisible">
  150. <div class="setting-dialog">
  151. <div class="tip-content">
  152. <p class="tipMsg">拆卷之后对应的案卷数据将会自动删除</p>
  153. <span>你是否还要继续?</span>
  154. </div>
  155. <div slot="footer" class="dialog-footer">
  156. <el-button type="text" @click="uncoilVisible = false">取消</el-button>
  157. <el-button type="primary" @click.native="handleUncoilConfirm">确定</el-button>
  158. </div>
  159. </div>
  160. </el-dialog>
  161. <!-- 合卷 -->
  162. <CombineFile ref="combineFileRef" />
  163. <!-- 插件 -->
  164. <InsertFile ref="insertFileRef" />
  165. <!-- 移动 -->
  166. <CollectMoveFile ref="collectMoveFileRef" />
  167. <!-- 归档 -->
  168. <el-dialog class="tip-dialog" title="归档" :close-on-click-modal="false" :modal-append-to-body="false" append-to-body :visible.sync="filingVisible">
  169. <div class="setting-dialog">
  170. <div class="tip-content">
  171. <p class="tipMsg">此操作将会把所选条目提交归档</p>
  172. <span>你是否还要继续?</span>
  173. </div>
  174. <div slot="footer" class="dialog-footer">
  175. <el-button type="text" @click="filingVisible = false">取消</el-button>
  176. <el-button type="primary" @click.native="handleFilingConfirm">确定</el-button>
  177. </div>
  178. </div>
  179. </el-dialog>
  180. <!-- 退回预归档库 -->
  181. <el-dialog class="tip-dialog" title="退回预归档库" :close-on-click-modal="false" :modal-append-to-body="false" append-to-body :visible.sync="returnVisible">
  182. <div class="setting-dialog">
  183. <div class="tip-content">
  184. <p class="tipMsg">此移出将把会所选条目退回到预归档库</p>
  185. <span>你是否还要继续?</span>
  186. </div>
  187. <div slot="footer" class="dialog-footer">
  188. <el-button type="text" @click="returnVisible = false">取消</el-button>
  189. <el-button type="primary" @click.native="handleReturnConfirm">确定</el-button>
  190. </div>
  191. </div>
  192. </el-dialog>
  193. <!-- 导出 -->
  194. <el-dialog class="tip-dialog" title="导出" :close-on-click-modal="false" :modal-append-to-body="false" append-to-body :visible.sync="exportVisible">
  195. <div class="setting-dialog">
  196. <div class="tip-content">
  197. <p class="tipMsg">此操作将导出所选数据</p>
  198. <span>你是否还要继续?</span>
  199. </div>
  200. <div slot="footer" class="dialog-footer">
  201. <el-button type="text" @click="downloadVisible = false">取消</el-button>
  202. <el-button type="primary" @click.native="handleExportConfirm">确定</el-button>
  203. </div>
  204. </div>
  205. </el-dialog>
  206. <!-- 打印 -->
  207. <Print ref="printRef" />
  208. <!-- 四性检测 -->
  209. <FourTest ref="fourTestRef" />
  210. <!-- 目录下载 -->
  211. <el-dialog class="tip-dialog" title="目录下载" :close-on-click-modal="false" :modal-append-to-body="false" append-to-body :visible.sync="downloadVisible">
  212. <div class="setting-dialog">
  213. <div class="tip-content">
  214. <p class="tipMsg">此操作将下载所选条目目录</p>
  215. <span>你是否还要继续?</span>
  216. </div>
  217. <div slot="footer" class="dialog-footer">
  218. <el-button type="text" @click="downloadVisible = false">取消</el-button>
  219. <el-button type="primary" @click.native="handleCatDownloadConfirm">确定</el-button>
  220. </div>
  221. </div>
  222. </el-dialog>
  223. <!-- 快速组卷 -->
  224. <QuickPaper ref="quickPaperRef" />
  225. <!-- 回收站 - 恢复 -->
  226. <el-dialog class="tip-dialog" title="提示" :close-on-click-modal="false" :modal-append-to-body="false" append-to-body :visible.sync="recoverVisible">
  227. <div class="setting-dialog">
  228. <div class="tip-content">
  229. <p class="tipMsg">此恢复将会把所选条目及其子集一并恢复</p>
  230. <span>你是否还要继续?</span>
  231. </div>
  232. <div slot="footer" class="dialog-footer">
  233. <el-button type="text" @click="recoverVisible = false">取消</el-button>
  234. <el-button type="primary" @click.native="handleRecover">确定</el-button>
  235. </div>
  236. </div>
  237. </el-dialog>
  238. <!-- 回收站 - 彻底删除 -->
  239. <el-dialog class="tip-dialog" title="提示" :close-on-click-modal="false" :modal-append-to-body="false" append-to-body :visible.sync="completelyDeleteVisible">
  240. <div class="setting-dialog">
  241. <div class="tip-content">
  242. <p class="tipMsg">此删除将把会所选条目与其子集彻底删除</p>
  243. <span>你是否还要继续?</span>
  244. </div>
  245. <div slot="footer" class="dialog-footer">
  246. <el-button type="text" @click="completelyDeleteVisible = false">取消</el-button>
  247. <el-button type="primary" @click.native="handleCompletelyDelete">确定</el-button>
  248. </div>
  249. </div>
  250. </el-dialog>
  251. </div>
  252. </template>
  253. <script>
  254. import { collectionLibraryCrud } from '../mixins/index'
  255. import { FetchInitCategoryInputFieldByPid } from '@/api/system/category/category'
  256. import PreviewForm from '@/views/components/category/PreviewForm'
  257. import UploadOriginal from './uploadOriginal/index'
  258. import BlukImport from './bulkImport/index'
  259. import BlukEditing from './blukEditing/index'
  260. import FileNumberAdjustment from './fileNumberAdjustment/index'
  261. import FileSeqAdjustment from './fileSeqAdjustment/index'
  262. import CombineFile from './combineFile/index'
  263. import InsertFile from './insertFile/index'
  264. import CollectMoveFile from './collectMoveFile/index'
  265. import Print from './print/index'
  266. import FourTest from './fourTest/index'
  267. import QuickPaper from './quickPaper/index'
  268. // import { exportFile } from '@/utils/index'
  269. import { mapGetters } from 'vuex'
  270. export default {
  271. name: 'CollectHeader',
  272. components: { PreviewForm, UploadOriginal, BlukImport, BlukEditing, FileNumberAdjustment, FileSeqAdjustment, CombineFile, InsertFile, CollectMoveFile, Print, FourTest, QuickPaper },
  273. mixins: [collectionLibraryCrud],
  274. props: {
  275. selectedCategory: {
  276. type: Object,
  277. default: function() {
  278. return {}
  279. }
  280. },
  281. isTitleType: {
  282. type: Number,
  283. default: 2
  284. },
  285. arcId: {
  286. type: String,
  287. default: function() {
  288. return ''
  289. }
  290. },
  291. // selections: {
  292. // type: Array,
  293. // default: function() {
  294. // return []
  295. // }
  296. // },
  297. activeIndex: {
  298. type: Number,
  299. default: 0
  300. },
  301. test: {
  302. type: String,
  303. default: function() {
  304. return ''
  305. }
  306. },
  307. isRecycle: {
  308. type: Boolean,
  309. default: false
  310. }
  311. },
  312. data() {
  313. return {
  314. activeMenuIndex: '1',
  315. formVisible: false,
  316. formTitle: '项目',
  317. formPreviewData: [], // 预览界面data
  318. deleteVisible: false,
  319. moveVisible: false,
  320. updateVisible: false,
  321. uncoilVisible: false,
  322. filingVisible: false,
  323. exportVisible: false,
  324. returnVisible: false,
  325. downloadVisible: false,
  326. recoverVisible: false,
  327. completelyDeleteVisible: false,
  328. parentsId: null, // 父id
  329. isDesFormType: null // 区分是门类得还是档案得
  330. }
  331. },
  332. computed: {
  333. ...mapGetters([
  334. 'baseApi'
  335. ]),
  336. collectTitle() {
  337. if (this.isTitleType === 2) {
  338. return '项目'
  339. } else if (this.isTitleType === 3) {
  340. if (this.selectedCategory.arrangeType === 1) {
  341. return '文件'
  342. } else {
  343. if (this.activeIndex === 1) {
  344. return '文件'
  345. } else {
  346. return '案卷'
  347. }
  348. }
  349. } else if (this.isTitleType === 4) {
  350. return '卷内'
  351. } else if (this.isTitleType === 6) {
  352. return '原文'
  353. }
  354. return ''
  355. },
  356. classType() {
  357. if (this.isTitleType === 2) {
  358. return ''
  359. } else if (this.isTitleType === 3) {
  360. return 'is-anjuan'
  361. } else if (this.isTitleType === 4) {
  362. return 'is-juannei'
  363. } else if (this.isTitleType === 6) {
  364. return 'is-file'
  365. }
  366. return ''
  367. },
  368. placeholderType() {
  369. if (this.isTitleType === 2) {
  370. return '输入项目名称或编号'
  371. } else if (this.isTitleType === 3 || this.isTitleType === 4) {
  372. return '输入题名或档号'
  373. }
  374. return '输入项目名称或编号'
  375. }
  376. },
  377. created() {
  378. },
  379. mounted() {
  380. },
  381. methods: {
  382. handleSelect(key, keyPath) {
  383. console.log(key, keyPath)
  384. },
  385. // 著录界面-form/详情-api
  386. handleForm(type) {
  387. if (type === 'add') {
  388. this.formVisible = true
  389. this.formTitle = '新增' + this.collectTitle
  390. // this.arcId = null
  391. } else if (type === 'edit') {
  392. console.log(this.selections)
  393. // this.arcId = this.selections[0].id
  394. if (this.selections.length === 0) {
  395. this.$message('您还未勾选需要操作的条目,请先确认!')
  396. return false
  397. } else if (this.selections.length > 1) {
  398. this.$message('编辑操作只可勾选唯一目标条目,请先确认!')
  399. return false
  400. }
  401. this.formVisible = true
  402. this.formTitle = '编辑' + this.collectTitle
  403. }
  404. // this.form.dictionaryConfigId = {}
  405. // this.formPreviewData = []
  406. // 档案预编辑获取字段
  407. this.getFormInfo(type)
  408. },
  409. getFormInfo(type) {
  410. FetchInitCategoryInputFieldByPid({ categoryId: this.selectedCategory.id }).then(data => {
  411. this.formPreviewData = data
  412. this.$nextTick(() => {
  413. if (type === 'edit') {
  414. this.$refs.previewForm.addOrUpdateForm = data.echo
  415. } else {
  416. // if (this.recycleMain.selectedCategory.isType !== 5) {
  417. // 新增时拿到项目和案卷的相同的字段的值
  418. // this.formPreviewData.forEach(item => {
  419. // if (isAnOrJuan === 1) {
  420. // if (this.recycleMain.selectedCategory.isType !== 3) {
  421. // if (this.recycleMain.projectSelection[item.fieldName]) {
  422. // this.$refs.previewForm.addOrUpdateForm = JSON.parse(JSON.stringify(this.recycleMain.projectSelection))
  423. // }
  424. // }
  425. // } else if (isAnOrJuan === 2) {
  426. // if (this.recycleMain.anjuanSelection[item.fieldName]) {
  427. // this.$refs.previewForm.addOrUpdateForm = JSON.parse(JSON.stringify(this.recycleMain.anjuanSelection))
  428. // }
  429. // }
  430. // })
  431. // }
  432. }
  433. this.isDesFormType = 'arcives'
  434. this.$refs.previewForm.FetchNoFormatField(this.selectedCategory.id)
  435. })
  436. })
  437. },
  438. // form - submit
  439. handlerArchivesSubmit() {
  440. this.formVisible = false
  441. this.$refs.previewForm.submitForm('addOrUpdateForm', this.selectedCategory.id)
  442. this.selections = []
  443. },
  444. // 删除 - 关闭
  445. handleClose(done) {
  446. this.formVisible = false
  447. done()
  448. },
  449. // 删除
  450. toDelete() {
  451. if (this.selections.length === 0) {
  452. this.$message('您还未勾选需要操作的条目,请先确认!')
  453. return false
  454. }
  455. this.deleteVisible = true
  456. },
  457. // 卷内 - 移除
  458. toMove() {
  459. if (this.selections.length === 0) {
  460. this.$message('您还未勾选需要操作的条目,请先确认!')
  461. return false
  462. }
  463. this.moveVisible = true
  464. },
  465. // 删除 - 确认
  466. handleDelConfirm() {
  467. this.deleteVisible = false
  468. },
  469. // 卷内 - 移除 确认
  470. handleMoveConfirm() {
  471. this.moveVisible = false
  472. },
  473. // 原文上传
  474. fileUpload(uploadType) {
  475. if (this.isTitleType !== 6) {
  476. if (this.selections.length === 0) {
  477. this.$message('您还未勾选需要操作的条目,请先确认!')
  478. return false
  479. }
  480. if (this.selections.length > 1) {
  481. this.$message('上传操作只可勾选唯一目标条目,请先确认!')
  482. return false
  483. }
  484. }
  485. if (uploadType === 0) {
  486. this.$refs.uploadOriginalRef.uploadTitle = '普通上传'
  487. } else if (uploadType === 1) {
  488. this.$refs.uploadOriginalRef.uploadTitle = '大文件上传'
  489. } else if (uploadType === 2) {
  490. this.$refs.uploadOriginalRef.uploadTitle = '原文目录上传'
  491. }
  492. this.$refs.uploadOriginalRef.uploadVisible = true
  493. this.$refs.uploadOriginalRef.uploadType = uploadType
  494. this.$refs.uploadOriginalRef.fileList = []
  495. },
  496. // 批量导入
  497. handleBlukImport() {
  498. this.$refs.blukImportRef.bulkImportVisible = true
  499. },
  500. // 批量修改
  501. handleBlukEditing() {
  502. if (this.selections.length === 0) {
  503. this.$message('您还未勾选需要操作的条目,请先确认!')
  504. return false
  505. }
  506. this.$refs.blukEditingRef.bulkEditingVisible = true
  507. },
  508. // 档案调整
  509. handleAdjustment() {
  510. this.$refs.fileNumberAdjustmentRef.isType = this.isTitleType
  511. if (this.selections.length === 0) {
  512. this.$refs.fileNumberAdjustmentRef.adjustmentTipVisible = true
  513. } else {
  514. this.$refs.fileNumberAdjustmentRef.adjustmentVisible = true
  515. }
  516. },
  517. // 档号更新
  518. handleFileNumberUpdate() {
  519. if (this.selections.length === 0) {
  520. this.$message('您还未勾选需要操作的条目,请先确认!')
  521. return false
  522. }
  523. this.updateVisible = true
  524. },
  525. handleUpdateConfirm() {
  526. this.updateVisible = false
  527. },
  528. // 卷内顺序调整
  529. handleFileSeqAdjustment() {
  530. if (this.selections.length === 0) {
  531. this.$message('您还未勾选需要操作的条目,请先确认!')
  532. return false
  533. }
  534. if (this.selections.length > 1) {
  535. this.$message('顺序调整操作只可勾选唯一目标条目,请先确认!')
  536. return false
  537. }
  538. this.$refs.fileSeqAdjustmentRef.adjustmentVisible = true
  539. },
  540. // 拆卷
  541. handleUncoil() {
  542. if (this.selections.length === 0) {
  543. this.$message('您还未勾选需要操作的条目,请先确认!')
  544. return false
  545. }
  546. this.uncoilVisible = true
  547. },
  548. handleUncoilConfirm() {
  549. this.uncoilVisible = false
  550. },
  551. // 合卷
  552. handleCombineFile() {
  553. if (this.selections.length < 2) {
  554. this.$message('合卷操作至少勾选2个案卷,请重试!')
  555. return false
  556. }
  557. this.$refs.combineFileRef.combineFileVisible = true
  558. },
  559. // 插件
  560. handleInsertFile() {
  561. if (this.selections.length !== 1) {
  562. this.$message('插卷操作只可勾选唯一目标条目,请先确认!')
  563. return false
  564. }
  565. this.$refs.insertFileRef.insertFileVisible = true
  566. },
  567. // 移动
  568. handleCollectMoveFile() {
  569. if (this.selections.length === 0) {
  570. this.$message('您还未勾选需要操作的条目,请先确认!')
  571. return false
  572. }
  573. this.$refs.collectMoveFileRef.collectMoveFileVisible = true
  574. },
  575. // 归档
  576. handleFiling() {
  577. if (this.selections.length === 0) {
  578. this.$message('您还未勾选需要操作的条目,请先确认!')
  579. return false
  580. }
  581. this.filingVisible = true
  582. },
  583. handleFilingConfirm() {
  584. this.filingVisible = false
  585. },
  586. // 退回预归档库
  587. handleReturn() {
  588. if (this.selections.length > 1 || this.selections.length === 0) {
  589. this.$message('该操作只可勾选唯一目标条目,请先确认!')
  590. return false
  591. }
  592. this.returnVisible = true
  593. },
  594. handleReturnConfirm() {
  595. this.returnVisible = false
  596. },
  597. // 导出
  598. handleExport() {
  599. this.exportVisible = true
  600. },
  601. handleExportConfirm() {
  602. this.exportVisible = false
  603. },
  604. // 打印
  605. handlePrint() {
  606. if (this.selections.length === 0) {
  607. this.$refs.printRef.form.printRange = '当页条目'
  608. } else {
  609. this.$refs.printRef.form.printRange = '勾选条目'
  610. }
  611. this.$refs.printRef.printVisible = true
  612. },
  613. // 四性检测
  614. handleFourTest() {
  615. if (this.selections.length === 0) {
  616. this.$message('您还未勾选需要操作的条目,请先确认!')
  617. return false
  618. }
  619. this.$refs.fourTestRef.fourTestVisible = true
  620. this.$refs.fourTestRef.tableData = this.selections
  621. console.log(this.selections)
  622. },
  623. // 目录下载
  624. handleCatalogDownload() {
  625. if (this.selections.length === 0) {
  626. this.$message('您还未勾选需要操作的条目,请先确认!')
  627. return false
  628. }
  629. this.downloadVisible = true
  630. },
  631. handleCatDownloadConfirm() {
  632. // const params = {
  633. // 'orderNo': id
  634. // }
  635. // exportFile(this.baseApi + '/api/arrange/exportArrange?' + qs.stringify(params, { indices: false }))
  636. this.downloadVisible = false
  637. },
  638. // 快速组卷
  639. handleQuickPaper() {
  640. this.$refs.quickPaperRef.quickVisible = true
  641. },
  642. // 手工组卷
  643. handlePaper() {
  644. if (this.selections.length === 0) {
  645. this.$message('您还未勾选需要操作的条目,请先确认!')
  646. return false
  647. }
  648. this.handleForm('add')
  649. },
  650. // 原文内的附件下载
  651. handleOriginalDownload() {
  652. if (this.selections.length > 1 || this.selections.length === 0) {
  653. this.$message('下载操作只可勾选唯一目标条目,请先确认!')
  654. return false
  655. }
  656. },
  657. // 回收站 - 恢复
  658. toRecover() {
  659. if (this.selections.length === 0) {
  660. this.$message('您还未勾选需要操作的条目,请先确认!')
  661. return false
  662. }
  663. this.recoverVisible = true
  664. },
  665. handleRecover() {
  666. this.recoverVisible = false
  667. },
  668. // 回收站 - 彻底删除
  669. toCompletelyDelete() {
  670. if (this.selections.length === 0) {
  671. this.$message('您还未勾选需要操作的条目,请先确认!')
  672. return false
  673. }
  674. this.completelyDeleteVisible = true
  675. },
  676. handleCompletelyDelete() {
  677. this.completelyDeleteVisible = false
  678. }
  679. }
  680. }
  681. </script>
  682. <style lang='scss' scoped>
  683. </style>