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.
		
		
		
		
		
			
		
			
				
					
					
						
							1 lines
						
					
					
						
							22 KiB
						
					
					
				
			
		
		
	
	
							1 lines
						
					
					
						
							22 KiB
						
					
					
				{"remainingRequest":"F:\\workspace\\gcy\\RK-archives\\ruoyi-ui\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!F:\\workspace\\gcy\\RK-archives\\ruoyi-ui\\src\\views\\archives\\categoryInfo\\index.vue?vue&type=script&lang=js&","dependencies":[{"path":"F:\\workspace\\gcy\\RK-archives\\ruoyi-ui\\src\\views\\archives\\categoryInfo\\index.vue","mtime":1633763899991},{"path":"F:\\workspace\\gcy\\RK-archives\\ruoyi-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"F:\\workspace\\gcy\\RK-archives\\ruoyi-ui\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"F:\\workspace\\gcy\\RK-archives\\ruoyi-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"F:\\workspace\\gcy\\RK-archives\\ruoyi-ui\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KCmltcG9ydCB7IGxpc3RDYXRlZ29yeUluZm8sYWRkSW5mbyx1cGRhdGVJbmZvLGRlbEluZm8sbGlzdENhdGVnb3J5SW5mb0V4Y2x1ZGVDaGlsZCxnZXRDYXRlZ29yeUluZm99IGZyb20gIkAvYXBpL2FyY2hpdmVzL2NhdGVnb3J5SW5mby5qcyI7CmltcG9ydCBUcmVlc2VsZWN0IGZyb20gIkByaW9waGFlL3Z1ZS10cmVlc2VsZWN0IjsKaW1wb3J0ICJAcmlvcGhhZS92dWUtdHJlZXNlbGVjdC9kaXN0L3Z1ZS10cmVlc2VsZWN0LmNzcyI7CmltcG9ydCB7IHRyZWVzZWxlY3QgfSBmcm9tICJAL2FwaS9zeXN0ZW0vZGVwdCI7CmV4cG9ydCBkZWZhdWx0IHsKICBuYW1lOiAiY2F0ZWdvcnlJbmZvIiwKICBjb21wb25lbnRzOiB7IFRyZWVzZWxlY3QgfSwKICBkYXRhKCkgewogICAgcmV0dXJuIHsKICAgICAgLy8g6YGu572p5bGCCiAgICAgIGZsYWc6ZmFsc2UsCiAgICAgIGxvYWRpbmc6IHRydWUsCiAgICAgIC8vIOaYvuekuuaQnOe0ouadoeS7tgogICAgICBzaG93U2VhcmNoOiB0cnVlLAogICAgICAvLyDooajmoLzmoJHmlbDmja4KICAgICAgY2F0ZWdvcnlJbmZvTGlzdDogW10sCiAgICAgIC8vIOmDqOmXqOagkemAiemhuQogICAgICBkZXB0T3B0aW9uczogW10sCiAgICAgIC8vIOW8ueWHuuWxguagh+mimAogICAgICB0aXRsZTogIiIsCiAgICAgIC8vIOaYr+WQpuaYvuekuuW8ueWHuuWxggogICAgICBvcGVuOiBmYWxzZSwKICAgICAgLy8g54q25oCB5pWw5o2u5a2X5YW4CiAgICAgIHN0YXR1c09wdGlvbnM6IFtdLAogICAgICAvLyDmn6Xor6Llj4LmlbAKICAgICAgcXVlcnlQYXJhbXM6IHsKICAgICAgICBkZXB0TmFtZTogdW5kZWZpbmVkLAogICAgICAgIHN0YXR1czogdW5kZWZpbmVkCiAgICAgIH0sCiAgICAgIC8vIOihqOWNleWPguaVsAogICAgICBmb3JtOiB7fSwKICAgICAgLy8g6KGo5Y2V5qCh6aqMCiAgICAgIHJ1bGVzOiB7CiAgICAgICAgcGFyZW50SWQ6IFsKICAgICAgICAgIHsgcmVxdWlyZWQ6IHRydWUsIG1lc3NhZ2U6ICLkuIrnuqfnsbvnm67kuI3og73kuLrnqboiLCB0cmlnZ2VyOiAiYmx1ciIgfQogICAgICAgIF0sCiAgICAgICAgIG5hbWU6IFsKICAgICAgICAgIHsgcmVxdWlyZWQ6IHRydWUsIG1lc3NhZ2U6ICLnsbvnm67lkI3np7DkuI3og73kuLrnqboiLCB0cmlnZ2VyOiAiYmx1ciIgfQogICAgICAgIF0sCiAgICAgICAgY29kZTogWwogICAgICAgICAgeyByZXF1aXJlZDogdHJ1ZSwgbWVzc2FnZTogIuexu+ebruS7o+eggeS4jeiDveS4uuepuiIsIHRyaWdnZXI6ICJibHVyIiB9CiAgICAgICAgXSwKICAgICAgICBzb3J0OiBbCiAgICAgICAgICB7IHJlcXVpcmVkOiB0cnVlLCBtZXNzYWdlOiAi6aG65bqP5LiN6IO95Li656m6IiwgdHJpZ2dlcjogImJsdXIiIH0KICAgICAgICBdLAoKICAgICAgfQogICAgfTsKICB9LAogIGNyZWF0ZWQoKSB7CiAgICB0aGlzLmdldExpc3QoKTsKICAgIHRoaXMuZ2V0VHJlZXNlbGVjdCgpOwogICAgdGhpcy5nZXREaWN0cygic3RvcmFnZV90aW1lIikudGhlbihyZXNwb25zZSA9PiB7CiAgICAgIHRoaXMuc3RhdHVzT3B0aW9ucyA9IHJlc3BvbnNlLmRhdGE7CiAgICB9KTsKICB9LAogIG1ldGhvZHM6IHsKICAgIC8vIOWtl+WFuOeKtuaAgeWtl+WFuOe/u+ivkQogICAgc3RhdHVzRm9ybWF0KHJvdywgY29sdW1uKSB7CiAgICAgIHJldHVybiB0aGlzLnNlbGVjdERpY3RMYWJlbCh0aGlzLnN0YXR1c09wdGlvbnMsIHJvdy5zdG9yYWdlVGltZSk7CiAgICB9LAogICAgLyoqIOafpeivoumDqOmXqOS4i+aLieagkee7k+aehCAqLwogICAgZ2V0VHJlZXNlbGVjdCgpIHsKICAgICAgdHJlZXNlbGVjdCgpLnRoZW4oKHJlc3BvbnNlKSA9PiB7CiAgICAgICAgdGhpcy5kZXB0T3B0aW9ucyA9IHJlc3BvbnNlLmRhdGE7CiAgICAgIH0pOwogICAgfSwKICAgIGlzRW50ZXJoYWxsRm9ybWF0KHJvdywgY29sdW1uKXsKICAgICAgaWYocm93LmlzRW50ZXJoYWxsPT0nMCcpewogICAgICAgIHJldHVybiAn5pivJwogICAgICB9ZWxzZSBpZihyb3cuaXNFbnRlcmhhbGw9PScxJyl7CiAgICAgICAgcmV0dXJuICflkKYnCiAgICAgIH1lbHNlewogICAgICAgIHJldHVybiAnJwogICAgICB9CiAgICB9LAogICAgLyoqIOafpeivoumDqOmXqOWIl+ihqCAqLwogICAgZ2V0TGlzdCgpIHsKICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTsKICAgICAgbGlzdENhdGVnb3J5SW5mbyh0aGlzLnF1ZXJ5UGFyYW1zKS50aGVuKHJlc3BvbnNlID0+IHsKICAgICAgICB0aGlzLmNhdGVnb3J5SW5mb0xpc3QgPSB0aGlzLmhhbmRsZVRyZWUocmVzcG9uc2UuZGF0YSwgImlkIik7CiAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7CiAgICAgIH0pOwogICAgfSwKICAgIC8qKiDovazmjaLpg6jpl6jmlbDmja7nu5PmnoQgKi8KICAgIG5vcm1hbGl6ZXIobm9kZSkgewogICAgICBpZiAobm9kZS5jaGlsZHJlbiAmJiAhbm9kZS5jaGlsZHJlbi5sZW5ndGgpIHsKICAgICAgICBkZWxldGUgbm9kZS5jaGlsZHJlbjsKICAgICAgfQogICAgICByZXR1cm4gewogICAgICAgIGlkOiBub2RlLmlkLAogICAgICAgIGxhYmVsOiBub2RlLm5hbWUsCiAgICAgICAgY2hpbGRyZW46IG5vZGUuY2hpbGRyZW4KICAgICAgfTsKICAgIH0sCgogICAgLy8g5Y+W5raI5oyJ6ZKuCiAgICBjYW5jZWwoKSB7CiAgICAgIHRoaXMub3BlbiA9IGZhbHNlOwogICAgICB0aGlzLnJlc2V0KCk7CiAgICB9LAogICAgLy8g6KGo5Y2V6YeN572uCiAgICByZXNldCgpIHsKICAgICAgdGhpcy5mb3JtID0gewogICAgICAgIGlkOiB1bmRlZmluZWQsCiAgICAgICAgcGFyZW50SWQ6IHVuZGVmaW5lZCwKICAgICAgICBuYW1lOiB1bmRlZmluZWQsCiAgICAgICAgc29ydDogdW5kZWZpbmVkLAogICAgICAgIGNvZGU6IHVuZGVmaW5lZCwKICAgICAgICBzdG9yYWdlVGltZTogdW5kZWZpbmVkLAogICAgICAgIGlzRW50ZXJoYWxsOiB1bmRlZmluZWQsCiAgICAgICAgcmVtYXJrczonJywKICAgICAgICBhcmNoaXZlRGVwYXJ0bWVudDp1bmRlZmluZWQKICAgICAgfTsKICAgICAgdGhpcy5yZXNldEZvcm0oImZvcm0iKTsKICAgIH0sCiAgICAvKiog5pCc57Si5oyJ6ZKu5pON5L2cICovCiAgICBoYW5kbGVRdWVyeSgpIHsKICAgICAgdGhpcy5nZXRMaXN0KCk7CiAgICB9LAogICAgLyoqIOmHjee9ruaMiemSruaTjeS9nCAqLwogICAgcmVzZXRRdWVyeSgpIHsKICAgICAgdGhpcy5yZXNldEZvcm0oInF1ZXJ5Rm9ybSIpOwogICAgICB0aGlzLmhhbmRsZVF1ZXJ5KCk7CiAgICB9LAogICAgLyoqIOaWsOWinuaMiemSruaTjeS9nCAqLwogICAgaGFuZGxlQWRkKHJvdykgewogICAgICB0aGlzLmdldFRyZWVzZWxlY3QoKTsKICAgICAgdGhpcy5yZXNldCgpOwogICAgICB0aGlzLmZsYWc9ZmFsc2U7CiAgICAgIGlmIChyb3cgIT0gdW5kZWZpbmVkKSB7CiAgICAgICAgdGhpcy5mb3JtLnBhcmVudElkID0gcm93LmlkOwogICAgICB9CiAgICAgIHRoaXMub3BlbiA9IHRydWU7CiAgICAgIHRoaXMudGl0bGUgPSAi5re75Yqg57G755uuIjsKICAgICAgbGlzdENhdGVnb3J5SW5mbygpLnRoZW4ocmVzcG9uc2UgPT4gewogICAgICAgIHRoaXMuY2F0ZWdvcnlJbmZvTGlzdCA9IHRoaXMuaGFuZGxlVHJlZShyZXNwb25zZS5kYXRhLCAiaWQiKTsKICAgICAgfSk7CiAgICB9LAogICAgLyoqIOS/ruaUueaMiemSruaTjeS9nCAqLwogICAgaGFuZGxlVXBkYXRlKHJvdykgewogICAgICB0aGlzLmdldFRyZWVzZWxlY3QoKTsKICAgICAgdGhpcy5yZXNldCgpOwogICAgICB0aGlzLmZsYWc9dHJ1ZTsKICAgICAgZ2V0Q2F0ZWdvcnlJbmZvKHJvdy5pZCkudGhlbihyZXNwb25zZSA9PiB7CiAgICAgICAgdGhpcy5mb3JtID0gcmVzcG9uc2UuZGF0YTsKICAgICAgICB0aGlzLm9wZW4gPSB0cnVlOwogICAgICAgIHRoaXMudGl0bGUgPSAi5L+u5pS557G755uuIjsKICAgICAgfSk7CiAgICAgIGxpc3RDYXRlZ29yeUluZm9FeGNsdWRlQ2hpbGQocm93LmlkKS50aGVuKHJlc3BvbnNlID0+IHsKICAgICAgICB0aGlzLmNhdGVnb3J5SW5mb0xpc3QgPSB0aGlzLmhhbmRsZVRyZWUocmVzcG9uc2UuZGF0YSwgImlkIik7CiAgICAgIH0pOwogICAgfSwKICAgIC8qKiDmj5DkuqTmjInpkq4gKi8KICAgIHN1Ym1pdEZvcm06IGZ1bmN0aW9uKCkgewogICAgICB0aGlzLiRyZWZzWyJmb3JtIl0udmFsaWRhdGUodmFsaWQgPT4gewogICAgICAgIGlmICh2YWxpZCkgewogICAgICAgICAgaWYgKHRoaXMuZm9ybS5pZCAhPSB1bmRlZmluZWQpIHsKICAgICAgICAgICAgaWYgKHRoaXMuZm9ybS5hcmNoaXZlRGVwYXJ0bWVudD09bnVsbCl7CiAgICAgICAgICAgICAgdGhpcy5mb3JtLmFyY2hpdmVEZXBhcnRtZW50PScnCiAgICAgICAgICAgIH0KICAgICAgICAgICAgdXBkYXRlSW5mbyh0aGlzLmZvcm0pLnRoZW4ocmVzcG9uc2UgPT4gewogICAgICAgICAgICAgIGlmIChyZXNwb25zZS5jb2RlID09PSAyMDApIHsKICAgICAgICAgICAgICAgIHRoaXMubXNnU3VjY2Vzcygi5L+u5pS55oiQ5YqfIik7CiAgICAgICAgICAgICAgICB0aGlzLm9wZW4gPSBmYWxzZTsKICAgICAgICAgICAgICAgIHRoaXMuZ2V0TGlzdCgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBhZGRJbmZvKHRoaXMuZm9ybSkudGhlbihyZXNwb25zZSA9PiB7CiAgICAgICAgICAgICAgaWYgKHJlc3BvbnNlLmNvZGUgPT09IDIwMCkgewogICAgICAgICAgICAgICAgdGhpcy5tc2dTdWNjZXNzKCLmlrDlop7miJDlip8iKTsKICAgICAgICAgICAgICAgIHRoaXMub3BlbiA9IGZhbHNlOwogICAgICAgICAgICAgICAgdGhpcy5nZXRMaXN0KCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0pOwogICAgfSwKICAgIC8qKiDliKDpmaTmjInpkq7mk43kvZwgKi8KICAgIGhhbmRsZURlbGV0ZShyb3cpIHsKICAgICAgdGhpcy4kY29uZmlybSgn5piv5ZCm56Gu6K6k5Yig6Zmk5ZCN56ew5Li6IicgKyByb3cubmFtZSArICci55qE5pWw5o2u6aG5PycsICLorablkYoiLCB7CiAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6ICLnoa7lrpoiLAogICAgICAgIGNhbmNlbEJ1dHRvblRleHQ6ICLlj5bmtogiLAogICAgICAgIHR5cGU6ICJ3YXJuaW5nIgogICAgICB9KS50aGVuKGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBkZWxJbmZvKHJvdy5pZCk7CiAgICAgIH0pLnRoZW4oKCkgPT4gewogICAgICAgIHRoaXMuZ2V0TGlzdCgpOwogICAgICAgIHRoaXMubXNnU3VjY2Vzcygi5Yig6Zmk5oiQ5YqfIik7CiAgICAgIH0pLmNhdGNoKGZ1bmN0aW9uKCkge30pOwogICAgfQogIH0KfTsK"},{"version":3,"sources":["index.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"index.vue","sourceRoot":"src/views/archives/categoryInfo","sourcesContent":["<template>\n  <div class=\"app-container\">\n<!--    <el-form :model=\"queryParams\" ref=\"queryForm\" :inline=\"true\" v-show=\"showSearch\">-->\n<!--      <el-form-item label=\"部门名称\" prop=\"deptName\">-->\n<!--        <el-input-->\n<!--          v-model=\"queryParams.deptName\"-->\n<!--          placeholder=\"请输入部门名称\"-->\n<!--          clearable-->\n<!--          size=\"small\"-->\n<!--          @keyup.enter.native=\"handleQuery\"-->\n<!--        />-->\n<!--      </el-form-item>-->\n<!--      <el-form-item label=\"状态\" prop=\"status\">-->\n<!--        <el-select v-model=\"queryParams.status\" placeholder=\"部门状态\" clearable size=\"small\">-->\n<!--          <el-option-->\n<!--            v-for=\"dict in statusOptions\"-->\n<!--            :key=\"dict.dictValue\"-->\n<!--            :label=\"dict.dictLabel\"-->\n<!--            :value=\"dict.dictValue\"-->\n<!--          />-->\n<!--        </el-select>-->\n<!--      </el-form-item>-->\n<!--      <el-form-item>-->\n<!--        <el-button type=\"cyan\" icon=\"el-icon-search\" size=\"mini\" @click=\"handleQuery\">搜索</el-button>-->\n<!--        <el-button icon=\"el-icon-refresh\" size=\"mini\" @click=\"resetQuery\">重置</el-button>-->\n<!--      </el-form-item>-->\n<!--    </el-form>-->\n\n    <el-row :gutter=\"10\" class=\"mb8\">\n      <el-col :span=\"1.5\">\n        <el-button\n          type=\"primary\"\n          icon=\"el-icon-plus\"\n          size=\"mini\"\n          @click=\"handleAdd\"\n          v-hasPermi=\"['categoryInfo:info:add']\"\n        >新增</el-button>\n      </el-col>\n      <right-toolbar :showSearch.sync=\"showSearch\" @queryTable=\"getList\"></right-toolbar>\n    </el-row>\n\n    <el-table\n      v-loading=\"loading\"\n      :data=\"categoryInfoList\"\n      row-key=\"id\"\n      default-expand-all\n      :tree-props=\"{children: 'children', hasChildren: 'hasChildren'}\"\n    >\n      <el-table-column prop=\"name\" label=\"类目名称\" width=\"260\"></el-table-column>\n      <el-table-column prop=\"sort\" label=\"排序\" width=\"100\"></el-table-column>\n      <el-table-column prop=\"code\" label=\"类目代码\" width=\"150\"></el-table-column>\n      <el-table-column prop=\"storageTime\" label=\"保管期限\" width=\"150\" :formatter=\"statusFormat\"></el-table-column>\n<!--     <el-table-column prop=\"archiveDepartment\" label=\"归档部门\" width=\"150\"></el-table-column>-->\n      <el-table-column prop=\"isEnterhall\" label=\"是否进馆\" :formatter=\"isEnterhallFormat\" width=\"150\"></el-table-column>\n      <el-table-column prop=\"remarks\" label=\"备注\" width=\"150\"></el-table-column>\n      <el-table-column label=\"创建时间\" align=\"center\" prop=\"createTime\" width=\"200\">\n        <template slot-scope=\"scope\">\n          <span>{{ parseTime(scope.row.createTime) }}</span>\n        </template>\n      </el-table-column>\n      <el-table-column label=\"操作\" align=\"center\" class-name=\"small-padding fixed-width\">\n        <template slot-scope=\"scope\">\n          <el-button\n            size=\"mini\"\n            type=\"text\"\n            icon=\"el-icon-edit\"\n            @click=\"handleUpdate(scope.row)\"\n            v-hasPermi=\"['categoryInfo:info:edit']\"\n          >修改</el-button>\n          <el-button\n            size=\"mini\"\n            type=\"text\"\n            icon=\"el-icon-plus\"\n            @click=\"handleAdd(scope.row)\"\n            v-hasPermi=\"['categoryInfo:info:add']\"\n          >新增</el-button>\n          <el-button\n            v-if=\"scope.row.parentId != 0\"\n            size=\"mini\"\n            type=\"text\"\n            icon=\"el-icon-delete\"\n            @click=\"handleDelete(scope.row)\"\n            v-hasPermi=\"['categoryInfo:info:remove']\"\n          >删除</el-button>\n        </template>\n      </el-table-column>\n    </el-table>\n\n    <!-- 添加或修改部门对话框 -->\n    <el-dialog :title=\"title\" :visible.sync=\"open\" width=\"600px\" append-to-body>\n      <el-form ref=\"form\" :model=\"form\" :rules=\"rules\" label-width=\"80px\">\n        <el-row>\n          <el-col :span=\"24\" v-if=\"form.parentId !== 0\">\n            <el-form-item label=\"上级类目\" prop=\"parentId\">\n              <treeselect v-model=\"form.parentId\" :options=\"categoryInfoList\" :normalizer=\"normalizer\" placeholder=\"选择上级类目\" />\n            </el-form-item>\n          </el-col>\n          <el-col :span=\"12\">\n            <el-form-item label=\"类目名称\" prop=\"name\">\n              <el-input v-model=\"form.name\" placeholder=\"请输入类目名称\" />\n            </el-form-item>\n          </el-col>\n          <el-col :span=\"12\">\n            <el-form-item label=\"显示排序\" prop=\"sort\">\n              <el-input-number v-model=\"form.sort\" controls-position=\"right\" :min=\"0\" />\n            </el-form-item>\n          </el-col>\n          <el-col :span=\"12\">\n            <el-form-item label=\"类目代码\" prop=\"code\">\n              <el-input v-model=\"form.code\" placeholder=\"请输入类目代码\" :disabled=\"flag\" maxlength=\"20\" />\n            </el-form-item>\n          </el-col>\n          <el-col :span=\"12\">\n            <el-form-item label=\"保管期限\" prop=\"storageTime\">\n              <el-select v-model=\"form.storageTime\" placeholder=\"请选择保管期限\">\n                <el-option v-for=\"item in statusOptions\" :label=\"item.dictLabel\" :value=\"item.dictValue\" :key=\"item.dictValue\"></el-option>\n\n              </el-select>\n            </el-form-item>\n          </el-col>\n          <el-col :span=\"12\">\n            <el-form-item label=\"是否进馆\" prop=\"isEnterhall\">\n              <el-select v-model=\"form.isEnterhall\" placeholder=\"请选择是否进馆\" >\n                <el-option label='是' :value=0></el-option>\n                <el-option label='否' :value=1></el-option>\n              </el-select>\n            </el-form-item>\n          </el-col>\n          <el-col :span=\"12\">\n            <el-form-item label=\"归档部门\" prop=\"archiveDepartment\">\n              <treeselect v-model=\"form.archiveDepartment\" :options=\"deptOptions\" :show-count=\"true\" placeholder=\"请选择归档部门\" />\n            </el-form-item>\n          </el-col>\n          <el-col :span=\"12\">\n            <el-form-item label=\"备注\" prop=\"remarks\">\n              <el-input v-model=\"form.remarks\" placeholder=\"请输入备注\" maxlength=\"50\" />\n            </el-form-item>\n          </el-col>\n\n        </el-row>\n      </el-form>\n      <div slot=\"footer\" class=\"dialog-footer\">\n        <el-button type=\"primary\" @click=\"submitForm\">确 定</el-button>\n        <el-button @click=\"cancel\">取 消</el-button>\n      </div>\n    </el-dialog>\n  </div>\n</template>\n\n<script>\nimport { listCategoryInfo,addInfo,updateInfo,delInfo,listCategoryInfoExcludeChild,getCategoryInfo} from \"@/api/archives/categoryInfo.js\";\nimport Treeselect from \"@riophae/vue-treeselect\";\nimport \"@riophae/vue-treeselect/dist/vue-treeselect.css\";\nimport { treeselect } from \"@/api/system/dept\";\nexport default {\n  name: \"categoryInfo\",\n  components: { Treeselect },\n  data() {\n    return {\n      // 遮罩层\n      flag:false,\n      loading: true,\n      // 显示搜索条件\n      showSearch: true,\n      // 表格树数据\n      categoryInfoList: [],\n      // 部门树选项\n      deptOptions: [],\n      // 弹出层标题\n      title: \"\",\n      // 是否显示弹出层\n      open: false,\n      // 状态数据字典\n      statusOptions: [],\n      // 查询参数\n      queryParams: {\n        deptName: undefined,\n        status: undefined\n      },\n      // 表单参数\n      form: {},\n      // 表单校验\n      rules: {\n        parentId: [\n          { required: true, message: \"上级类目不能为空\", trigger: \"blur\" }\n        ],\n         name: [\n          { required: true, message: \"类目名称不能为空\", trigger: \"blur\" }\n        ],\n        code: [\n          { required: true, message: \"类目代码不能为空\", trigger: \"blur\" }\n        ],\n        sort: [\n          { required: true, message: \"顺序不能为空\", trigger: \"blur\" }\n        ],\n\n      }\n    };\n  },\n  created() {\n    this.getList();\n    this.getTreeselect();\n    this.getDicts(\"storage_time\").then(response => {\n      this.statusOptions = response.data;\n    });\n  },\n  methods: {\n    // 字典状态字典翻译\n    statusFormat(row, column) {\n      return this.selectDictLabel(this.statusOptions, row.storageTime);\n    },\n    /** 查询部门下拉树结构 */\n    getTreeselect() {\n      treeselect().then((response) => {\n        this.deptOptions = response.data;\n      });\n    },\n    isEnterhallFormat(row, column){\n      if(row.isEnterhall=='0'){\n        return '是'\n      }else if(row.isEnterhall=='1'){\n        return '否'\n      }else{\n        return ''\n      }\n    },\n    /** 查询部门列表 */\n    getList() {\n      this.loading = true;\n      listCategoryInfo(this.queryParams).then(response => {\n        this.categoryInfoList = this.handleTree(response.data, \"id\");\n        this.loading = false;\n      });\n    },\n    /** 转换部门数据结构 */\n    normalizer(node) {\n      if (node.children && !node.children.length) {\n        delete node.children;\n      }\n      return {\n        id: node.id,\n        label: node.name,\n        children: node.children\n      };\n    },\n\n    // 取消按钮\n    cancel() {\n      this.open = false;\n      this.reset();\n    },\n    // 表单重置\n    reset() {\n      this.form = {\n        id: undefined,\n        parentId: undefined,\n        name: undefined,\n        sort: undefined,\n        code: undefined,\n        storageTime: undefined,\n        isEnterhall: undefined,\n        remarks:'',\n        archiveDepartment:undefined\n      };\n      this.resetForm(\"form\");\n    },\n    /** 搜索按钮操作 */\n    handleQuery() {\n      this.getList();\n    },\n    /** 重置按钮操作 */\n    resetQuery() {\n      this.resetForm(\"queryForm\");\n      this.handleQuery();\n    },\n    /** 新增按钮操作 */\n    handleAdd(row) {\n      this.getTreeselect();\n      this.reset();\n      this.flag=false;\n      if (row != undefined) {\n        this.form.parentId = row.id;\n      }\n      this.open = true;\n      this.title = \"添加类目\";\n      listCategoryInfo().then(response => {\n        this.categoryInfoList = this.handleTree(response.data, \"id\");\n      });\n    },\n    /** 修改按钮操作 */\n    handleUpdate(row) {\n      this.getTreeselect();\n      this.reset();\n      this.flag=true;\n      getCategoryInfo(row.id).then(response => {\n        this.form = response.data;\n        this.open = true;\n        this.title = \"修改类目\";\n      });\n      listCategoryInfoExcludeChild(row.id).then(response => {\n        this.categoryInfoList = this.handleTree(response.data, \"id\");\n      });\n    },\n    /** 提交按钮 */\n    submitForm: function() {\n      this.$refs[\"form\"].validate(valid => {\n        if (valid) {\n          if (this.form.id != undefined) {\n            if (this.form.archiveDepartment==null){\n              this.form.archiveDepartment=''\n            }\n            updateInfo(this.form).then(response => {\n              if (response.code === 200) {\n                this.msgSuccess(\"修改成功\");\n                this.open = false;\n                this.getList();\n              }\n            });\n          } else {\n            addInfo(this.form).then(response => {\n              if (response.code === 200) {\n                this.msgSuccess(\"新增成功\");\n                this.open = false;\n                this.getList();\n              }\n            });\n          }\n        }\n      });\n    },\n    /** 删除按钮操作 */\n    handleDelete(row) {\n      this.$confirm('是否确认删除名称为\"' + row.name + '\"的数据项?', \"警告\", {\n        confirmButtonText: \"确定\",\n        cancelButtonText: \"取消\",\n        type: \"warning\"\n      }).then(function() {\n        return delInfo(row.id);\n      }).then(() => {\n        this.getList();\n        this.msgSuccess(\"删除成功\");\n      }).catch(function() {});\n    }\n  }\n};\n</script>\n"]}]} |