|  | @ -11,67 +11,59 @@ | 
		
	
		
			
				|  |  |           label-width="80px" |  |  |           label-width="80px" | 
		
	
		
			
				|  |  |           :rules="rules" |  |  |           :rules="rules" | 
		
	
		
			
				|  |  |         > |  |  |         > | 
		
	
		
			
				|  |  |           <el-form-item label="选择区域" prop="selectArea" class="down-select" style="margin-right:10px"> |  |  |  | 
		
	
		
			
				|  |  |  |  |  |           <el-form-item label="选择区域" prop="selectAreaValue" class="down-select" style="margin-right:20px"> | 
		
	
		
			
				|  |  |             <treeselect |  |  |             <treeselect | 
		
	
		
			
				|  |  |               v-model="selectAreaValue" |  |  |  | 
		
	
		
			
				|  |  |               :options="selectArea" |  |  |  | 
		
	
		
			
				|  |  |  |  |  |               v-model="checkForm.selectAreaValue" | 
		
	
		
			
				|  |  |  |  |  |               :options="selectAreaOptions" | 
		
	
		
			
				|  |  |               multiple |  |  |               multiple | 
		
	
		
			
				|  |  |               placeholder="请选择" |  |  |               placeholder="请选择" | 
		
	
		
			
				|  |  |               style="width:200px;height:30px" |  |  |  | 
		
	
		
			
				|  |  |  |  |  |               style="width:240px;height:30px" | 
		
	
		
			
				|  |  |               :limit="1" |  |  |               :limit="1" | 
		
	
		
			
				|  |  |               :limit-text="count => `+${count}`" |  |  |               :limit-text="count => `+${count}`" | 
		
	
		
			
				|  |  |             /> |  |  |             /> | 
		
	
		
			
				|  |  |           </el-form-item> |  |  |           </el-form-item> | 
		
	
		
			
				|  |  |           <!-- @select="treeSelectChange" |  |  |  | 
		
	
		
			
				|  |  |               @deselect="treeSelectDeselect" |  |  |  | 
		
	
		
			
				|  |  |               @search-change="treeSelectSearch" |  |  |  | 
		
	
		
			
				|  |  |               @open="treeSelectOpen" |  |  |  | 
		
	
		
			
				|  |  |               @close="treeSelectClose" --> |  |  |  | 
		
	
		
			
				|  |  |           <el-form-item label="选择门类" prop="categoryValue" class="down-select" style="margin-right:10px"> |  |  |  | 
		
	
		
			
				|  |  |  |  |  |           <el-form-item label="选择门类" prop="categoryValue" class="down-select" style="margin-right:20px"> | 
		
	
		
			
				|  |  |             <treeselect |  |  |             <treeselect | 
		
	
		
			
				|  |  |               ref="treeselect" |  |  |               ref="treeselect" | 
		
	
		
			
				|  |  |               v-model="categoryValue" |  |  |  | 
		
	
		
			
				|  |  |               multiple |  |  |  | 
		
	
		
			
				|  |  |  |  |  |               v-model="checkForm.categoryValue" | 
		
	
		
			
				|  |  |  |  |  |               flat | 
		
	
		
			
				|  |  |  |  |  |               :multiple="false" | 
		
	
		
			
				|  |  |               placeholder="请选择" |  |  |               placeholder="请选择" | 
		
	
		
			
				|  |  |               :options="category" |  |  |               :options="category" | 
		
	
		
			
				|  |  |               style="width: 220px;" |  |  |  | 
		
	
		
			
				|  |  |  |  |  |               style="width: 240px;" | 
		
	
		
			
				|  |  |               :normalizer="normalizer" |  |  |               :normalizer="normalizer" | 
		
	
		
			
				|  |  |               :default-expand-level="2" |  |  |               :default-expand-level="2" | 
		
	
		
			
				|  |  |               :limit="1" |  |  |  | 
		
	
		
			
				|  |  |               :limit-text="count => `+${count}`" |  |  |  | 
		
	
		
			
				|  |  |               @input="treeSelectInput" |  |  |               @input="treeSelectInput" | 
		
	
		
			
				|  |  |             /> |  |  |             /> | 
		
	
		
			
				|  |  |             <!-- <el-select |  |  |  | 
		
	
		
			
				|  |  |               v-model="categoryValue" |  |  |  | 
		
	
		
			
				|  |  |  |  |  |           </el-form-item> | 
		
	
		
			
				|  |  |  |  |  |           <!-- @change="selectChange" --> | 
		
	
		
			
				|  |  |  |  |  |           <el-form-item label="选择年度" prop="years" class="down-select" style="margin-right:20px"> | 
		
	
		
			
				|  |  |  |  |  |             <el-select | 
		
	
		
			
				|  |  |  |  |  |               v-model="checkForm.years" | 
		
	
		
			
				|  |  |               style="width: 200px;height:30px" |  |  |               style="width: 200px;height:30px" | 
		
	
		
			
				|  |  |               multiple |  |  |               multiple | 
		
	
		
			
				|  |  |               filterable |  |  |               filterable | 
		
	
		
			
				|  |  |               clearable |  |  |               clearable | 
		
	
		
			
				|  |  |               placeholder="请选择" |  |  |               placeholder="请选择" | 
		
	
		
			
				|  |  |               :collapse-tags="showTags" |  |  |               :collapse-tags="showTags" | 
		
	
		
			
				|  |  |               @change="selectChange" |  |  |  | 
		
	
		
			
				|  |  |             > |  |  |             > | 
		
	
		
			
				|  |  |               <el-option |  |  |               <el-option | 
		
	
		
			
				|  |  |                 v-for="item in category" |  |  |  | 
		
	
		
			
				|  |  |  |  |  |                 v-for="item in yearsOptions" | 
		
	
		
			
				|  |  |                 :key="item.value" |  |  |                 :key="item.value" | 
		
	
		
			
				|  |  |                 :label="item.label" |  |  |                 :label="item.label" | 
		
	
		
			
				|  |  |                 :value="item.value" |  |  |                 :value="item.value" | 
		
	
		
			
				|  |  |               /> |  |  |               /> | 
		
	
		
			
				|  |  |             </el-select> --> |  |  |  | 
		
	
		
			
				|  |  |  |  |  |             </el-select> | 
		
	
		
			
				|  |  |           </el-form-item> |  |  |           </el-form-item> | 
		
	
		
			
				|  |  |           <el-form-item label="选择年度" prop="years" class="down-select"> |  |  |  | 
		
	
		
			
				|  |  |             <!-- @change="selectChange" --> |  |  |  | 
		
	
		
			
				|  |  |  |  |  |           <el-form-item label="盘点方式" prop="checkType" class="down-select"> | 
		
	
		
			
				|  |  |             <el-select |  |  |             <el-select | 
		
	
		
			
				|  |  |               v-model="years" |  |  |  | 
		
	
		
			
				|  |  |               style="width: 140px;height:30px" |  |  |  | 
		
	
		
			
				|  |  |               multiple |  |  |  | 
		
	
		
			
				|  |  |               filterable |  |  |  | 
		
	
		
			
				|  |  |  |  |  |               v-model="checkForm.checkType" | 
		
	
		
			
				|  |  |  |  |  |               style="width: 240px; height:30px" | 
		
	
		
			
				|  |  |               clearable |  |  |               clearable | 
		
	
		
			
				|  |  |               placeholder="请选择" |  |  |               placeholder="请选择" | 
		
	
		
			
				|  |  |               :collapse-tags="showTags" |  |  |  | 
		
	
		
			
				|  |  |             > |  |  |             > | 
		
	
		
			
				|  |  |               <el-option |  |  |               <el-option | 
		
	
		
			
				|  |  |                 v-for="item in yearsOptions" |  |  |  | 
		
	
		
			
				|  |  |  |  |  |                 v-for="item in checkOptions" | 
		
	
		
			
				|  |  |                 :key="item.value" |  |  |                 :key="item.value" | 
		
	
		
			
				|  |  |                 :label="item.label" |  |  |                 :label="item.label" | 
		
	
		
			
				|  |  |                 :value="item.value" |  |  |                 :value="item.value" | 
		
	
	
		
			
				|  | @ -80,7 +72,7 @@ | 
		
	
		
			
				|  |  |           </el-form-item> |  |  |           </el-form-item> | 
		
	
		
			
				|  |  |           <el-button type="primary" size="mini" style="margin:0 0 0 20px;height:30px" @click="handleBuild">生成盘点单</el-button> |  |  |           <el-button type="primary" size="mini" style="margin:0 0 0 20px;height:30px" @click="handleBuild">生成盘点单</el-button> | 
		
	
		
			
				|  |  |         </el-form> |  |  |         </el-form> | 
		
	
		
			
				|  |  |         <el-table v-loading="loading" :data="tableData" height="400px" :cell-class-name="cell"> |  |  |  | 
		
	
		
			
				|  |  |  |  |  |         <el-table v-if="isCaseOrFile === 2" v-loading="loading" :data="tableData" height="400px" :cell-class-name="cell"> | 
		
	
		
			
				|  |  |           <el-table-column type="index" align="center" label="序号" width="80" /> |  |  |           <el-table-column type="index" align="center" label="序号" width="80" /> | 
		
	
		
			
				|  |  |           <el-table-column align="center" label="状态" width="100"> |  |  |           <el-table-column align="center" label="状态" width="100"> | 
		
	
		
			
				|  |  |             <template> |  |  |             <template> | 
		
	
	
		
			
				|  | @ -97,14 +89,14 @@ | 
		
	
		
			
				|  |  |             </template> |  |  |             </template> | 
		
	
		
			
				|  |  |           </el-table-column> |  |  |           </el-table-column> | 
		
	
		
			
				|  |  |           <el-table-column prop="categoryName" align="center" show-overflow-tooltip label="门类名称" width="120" /> |  |  |           <el-table-column prop="categoryName" align="center" show-overflow-tooltip label="门类名称" width="120" /> | 
		
	
		
			
				|  |  |           <el-table-column prop="fondsNo" align="center" label="全宗号" width="100" /> |  |  |  | 
		
	
		
			
				|  |  |           <el-table-column prop="archiveNo" align="center" label="档号" width="180" /> |  |  |  | 
		
	
		
			
				|  |  |  |  |  |           <el-table-column prop="fondsNo" align="center" label="全宗号" width="180" show-overflow-tooltip /> | 
		
	
		
			
				|  |  |  |  |  |           <el-table-column prop="archiveNo" align="center" label="档号" width="180" show-overflow-tooltip /> | 
		
	
		
			
				|  |  |           <el-table-column prop="archiveYear" align="center" label="归档年度" width="100" /> |  |  |           <el-table-column prop="archiveYear" align="center" label="归档年度" width="100" /> | 
		
	
		
			
				|  |  |           <el-table-column prop="maintitle" show-overflow-tooltip label="题名" align="center" width="180" /> |  |  |           <el-table-column prop="maintitle" show-overflow-tooltip label="题名" align="center" width="180" /> | 
		
	
		
			
				|  |  |           <el-table-column prop="securityClass" label="保密程度" align="center" width="85" /> |  |  |           <el-table-column prop="securityClass" label="保密程度" align="center" width="85" /> | 
		
	
		
			
				|  |  |           <el-table-column prop="department" label="部门" align="center" width="120" /> |  |  |           <el-table-column prop="department" label="部门" align="center" width="120" /> | 
		
	
		
			
				|  |  |           <el-table-column prop="caseName" label="盒名称" show-overflow-tooltip align="center" width="120" /> |  |  |           <el-table-column prop="caseName" label="盒名称" show-overflow-tooltip align="center" width="120" /> | 
		
	
		
			
				|  |  |           <el-table-column prop="folderLocationDetails" show-overflow-tooltip label="所在位置" align="center" width="260"> |  |  |  | 
		
	
		
			
				|  |  |  |  |  |           <el-table-column prop="folderLocationDetails" show-overflow-tooltip label="所在位置" align="center" width="300"> | 
		
	
		
			
				|  |  |             <template slot-scope="scope"> |  |  |             <template slot-scope="scope"> | 
		
	
		
			
				|  |  |               <span v-if="!scope.row.folderLocationDetails">-</span> |  |  |               <span v-if="!scope.row.folderLocationDetails">-</span> | 
		
	
		
			
				|  |  |               <span v-else> |  |  |               <span v-else> | 
		
	
	
		
			
				|  | @ -118,12 +110,51 @@ | 
		
	
		
			
				|  |  |             </template> |  |  |             </template> | 
		
	
		
			
				|  |  |           </el-table-column> |  |  |           </el-table-column> | 
		
	
		
			
				|  |  |         </el-table> |  |  |         </el-table> | 
		
	
		
			
				|  |  |         <el-pagination :page-size.sync="page.size" :total="page.total" :current-page.sync="page.page" style="margin-top: 8px;" layout="total, prev, pager, next, sizes" @size-change="sizeChangeHandler($event)" @current-change="pageChangeHandler" /> |  |  |  | 
		
	
		
			
				|  |  |         <div slot="footer" class="dialog-footer"> |  |  |  | 
		
	
		
			
				|  |  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |  |         <el-table | 
		
	
		
			
				|  |  |  |  |  |           v-if="isCaseOrFile === 1" | 
		
	
		
			
				|  |  |  |  |  |           ref="table" | 
		
	
		
			
				|  |  |  |  |  |           v-loading="loading" | 
		
	
		
			
				|  |  |  |  |  |           :cell-class-name="cell" | 
		
	
		
			
				|  |  |  |  |  |           :data="tableData" | 
		
	
		
			
				|  |  |  |  |  |           height="400px" | 
		
	
		
			
				|  |  |  |  |  |           style="width: 100%;" | 
		
	
		
			
				|  |  |  |  |  |           @row-dblclick="handleCaseDbClick" | 
		
	
		
			
				|  |  |  |  |  |         > | 
		
	
		
			
				|  |  |  |  |  |           <el-table-column type="index" label="序号" width="55" align="center" /> | 
		
	
		
			
				|  |  |  |  |  |           <el-table-column align="center" label="状态" width="100"> | 
		
	
		
			
				|  |  |  |  |  |             <template> | 
		
	
		
			
				|  |  |  |  |  |               <!-- 未盘点 --> | 
		
	
		
			
				|  |  |  |  |  |               <span class="clear">未盘点</span> | 
		
	
		
			
				|  |  |  |  |  |             </template> | 
		
	
		
			
				|  |  |  |  |  |           </el-table-column> | 
		
	
		
			
				|  |  |  |  |  |           <el-table-column prop="depositNum" label="已装" align="center" min-width="56" /> | 
		
	
		
			
				|  |  |  |  |  |           <el-table-column prop="caseName" label="盒名称" :show-overflow-tooltip="true" align="center" min-width="150" /> | 
		
	
		
			
				|  |  |  |  |  |           <el-table-column prop="tid" label="TID" align="center" min-width="180" /> | 
		
	
		
			
				|  |  |  |  |  |           <el-table-column prop="barcode" label="条形码" align="center" min-width="120" /> | 
		
	
		
			
				|  |  |  |  |  |           <el-table-column label="存放位置" align="center" min-width="300"> | 
		
	
		
			
				|  |  |  |  |  |             <template slot-scope="scope"> | 
		
	
		
			
				|  |  |  |  |  |               <span v-if="!scope.row.folderLocationDetails">-</span> | 
		
	
		
			
				|  |  |  |  |  |               <span v-else> | 
		
	
		
			
				|  |  |  |  |  |                 <el-tag effect="dark">{{ scope.row.folderLocationDetails }}</el-tag> | 
		
	
		
			
				|  |  |  |  |  |               </span> | 
		
	
		
			
				|  |  |  |  |  |             </template> | 
		
	
		
			
				|  |  |  |  |  |           </el-table-column> | 
		
	
		
			
				|  |  |  |  |  |           <el-table-column prop="update_time" width="175" label="操作时间" align="center"> | 
		
	
		
			
				|  |  |  |  |  |             <template slot-scope="scope"> | 
		
	
		
			
				|  |  |  |  |  |               <div>{{ scope.row.update_time | parseTime }}</div> | 
		
	
		
			
				|  |  |  |  |  |             </template> | 
		
	
		
			
				|  |  |  |  |  |           </el-table-column> | 
		
	
		
			
				|  |  |  |  |  |         </el-table> | 
		
	
		
			
				|  |  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |  |         <el-pagination v-if="tableData.length !== 0" :page-size.sync="page.size" :total="page.total" :current-page.sync="page.page" style="margin-top: 8px;" layout="total, prev, pager, next, sizes" @size-change="sizeChangeHandler($event)" @current-change="pageChangeHandler" /> | 
		
	
		
			
				|  |  |  |  |  |         <div v-if="tableData.length !== 0" slot="footer" class="dialog-footer"> | 
		
	
		
			
				|  |  |           <el-button :disabled="!(tableData.length)" @click="handleSave">保存</el-button> |  |  |           <el-button :disabled="!(tableData.length)" @click="handleSave">保存</el-button> | 
		
	
		
			
				|  |  |         </div> |  |  |         </div> | 
		
	
		
			
				|  |  |       </div> |  |  |       </div> | 
		
	
		
			
				|  |  |     </el-dialog> |  |  |     </el-dialog> | 
		
	
		
			
				|  |  |  |  |  |     <!-- 档案盒详情 --> | 
		
	
		
			
				|  |  |  |  |  |     <detailDialog ref="detailDom" /> | 
		
	
		
			
				|  |  |   </div> |  |  |   </div> | 
		
	
		
			
				|  |  | </template> |  |  | </template> | 
		
	
		
			
				|  |  | 
 |  |  | 
 | 
		
	
	
		
			
				|  | @ -133,34 +164,44 @@ import '@riophae/vue-treeselect/dist/vue-treeselect.css' | 
		
	
		
			
				|  |  | import { menu } from '@/api/storeManage/levelManage/level' |  |  | import { menu } from '@/api/storeManage/levelManage/level' | 
		
	
		
			
				|  |  | import { getCategoryTree } from '@/api/category/category' |  |  | import { getCategoryTree } from '@/api/category/category' | 
		
	
		
			
				|  |  | import { previewArrange, addArrange } from '@/api/archivesManage/archivesCheck' |  |  | import { previewArrange, addArrange } from '@/api/archivesManage/archivesCheck' | 
		
	
		
			
				|  |  |  |  |  | import { FetchInitArchivesView } from '@/api/archivesManage/archivesList' | 
		
	
		
			
				|  |  |  |  |  | import { findInCase } from '@/api/archivesManage/caseManage' | 
		
	
		
			
				|  |  | import { crud } from '@crud/crud' |  |  | import { crud } from '@crud/crud' | 
		
	
		
			
				|  |  | 
 |  |  |  | 
		
	
		
			
				|  |  |  |  |  | import detailDialog from '@/views/archivesManage/caseManage/caseList/module/detailDialog' | 
		
	
		
			
				|  |  | export default { |  |  | export default { | 
		
	
		
			
				|  |  |   name: 'AddCheck', |  |  |   name: 'AddCheck', | 
		
	
		
			
				|  |  |   components: { Treeselect }, |  |  |  | 
		
	
		
			
				|  |  |  |  |  |   components: { Treeselect, detailDialog }, | 
		
	
		
			
				|  |  |   mixins: [crud()], |  |  |   mixins: [crud()], | 
		
	
		
			
				|  |  |   data() { |  |  |   data() { | 
		
	
		
			
				|  |  |     return { |  |  |     return { | 
		
	
		
			
				|  |  |       loading: false, |  |  |       loading: false, | 
		
	
		
			
				|  |  |       menusIds: [], |  |  |       menusIds: [], | 
		
	
		
			
				|  |  |       tableData: [], |  |  |       tableData: [], | 
		
	
		
			
				|  |  |       checkForm: {}, |  |  |  | 
		
	
		
			
				|  |  |  |  |  |       isCaseOrFile: 0, | 
		
	
		
			
				|  |  |  |  |  |       checkForm: { | 
		
	
		
			
				|  |  |  |  |  |         selectAreaValue: [], | 
		
	
		
			
				|  |  |  |  |  |         categoryValue: null, | 
		
	
		
			
				|  |  |  |  |  |         years: [], | 
		
	
		
			
				|  |  |  |  |  |         checkType: null | 
		
	
		
			
				|  |  |  |  |  |       }, | 
		
	
		
			
				|  |  |       addFormVisible: false, |  |  |       addFormVisible: false, | 
		
	
		
			
				|  |  |       selectAreaValue: [], |  |  |  | 
		
	
		
			
				|  |  |       selectArea: [], |  |  |  | 
		
	
		
			
				|  |  |  |  |  |       selectAreaOptions: [], | 
		
	
		
			
				|  |  |       defaultProps: { children: 'children', label: 'label' }, |  |  |       defaultProps: { children: 'children', label: 'label' }, | 
		
	
		
			
				|  |  |       nodeKey: 'id', |  |  |       nodeKey: 'id', | 
		
	
		
			
				|  |  |       defaultCheckedKeys: [], |  |  |       defaultCheckedKeys: [], | 
		
	
		
			
				|  |  |       categoryValue: [], |  |  |  | 
		
	
		
			
				|  |  |       oldCategory: [], |  |  |       oldCategory: [], | 
		
	
		
			
				|  |  |       allCategory: [], |  |  |       allCategory: [], | 
		
	
		
			
				|  |  |       category: [], |  |  |       category: [], | 
		
	
		
			
				|  |  |       showTags: true, |  |  |       showTags: true, | 
		
	
		
			
				|  |  |       years: null, |  |  |  | 
		
	
		
			
				|  |  |       yearsOptions: [ |  |  |  | 
		
	
		
			
				|  |  |  |  |  |       yearsOptions: [], | 
		
	
		
			
				|  |  |  |  |  |       checkOptions: [ | 
		
	
		
			
				|  |  |         { |  |  |         { | 
		
	
		
			
				|  |  |           value: '2023', |  |  |  | 
		
	
		
			
				|  |  |           label: '2023' |  |  |  | 
		
	
		
			
				|  |  |  |  |  |           label: '按盒盘点', | 
		
	
		
			
				|  |  |  |  |  |           value: 1 | 
		
	
		
			
				|  |  |  |  |  |         }, | 
		
	
		
			
				|  |  |  |  |  |         { | 
		
	
		
			
				|  |  |  |  |  |           label: '按件盘点', | 
		
	
		
			
				|  |  |  |  |  |           value: 2 | 
		
	
		
			
				|  |  |         } |  |  |         } | 
		
	
		
			
				|  |  |       ], |  |  |       ], | 
		
	
		
			
				|  |  |       page: { |  |  |       page: { | 
		
	
	
		
			
				|  | @ -175,9 +216,10 @@ export default { | 
		
	
		
			
				|  |  |         categoryIds: null |  |  |         categoryIds: null | 
		
	
		
			
				|  |  |       }, |  |  |       }, | 
		
	
		
			
				|  |  |       rules: { |  |  |       rules: { | 
		
	
		
			
				|  |  |         selectArea: [{ required: true, trigger: 'blur' }], |  |  |  | 
		
	
		
			
				|  |  |         categoryValue: [{ required: true, trigger: 'blur' }], |  |  |  | 
		
	
		
			
				|  |  |         years: [{ required: true, trigger: 'blur' }] |  |  |  | 
		
	
		
			
				|  |  |  |  |  |         selectAreaValue: [{ required: true, trigger: 'change', message: '请选择区域' }], | 
		
	
		
			
				|  |  |  |  |  |         categoryValue: [{ required: true, trigger: 'change', message: '请选择门类' }], | 
		
	
		
			
				|  |  |  |  |  |         years: [{ required: true, trigger: 'change', message: '请选择年度' }], | 
		
	
		
			
				|  |  |  |  |  |         checkType: [{ required: true, trigger: 'change', message: '请选择盘点方式' }] | 
		
	
		
			
				|  |  |       } |  |  |       } | 
		
	
		
			
				|  |  |     } |  |  |     } | 
		
	
		
			
				|  |  |   }, |  |  |   }, | 
		
	
	
		
			
				|  | @ -215,7 +257,7 @@ export default { | 
		
	
		
			
				|  |  |             storeroom.children = devices |  |  |             storeroom.children = devices | 
		
	
		
			
				|  |  |             deviceTree.push(storeroom) |  |  |             deviceTree.push(storeroom) | 
		
	
		
			
				|  |  |           } |  |  |           } | 
		
	
		
			
				|  |  |           this.selectArea = deviceTree |  |  |  | 
		
	
		
			
				|  |  |  |  |  |           this.selectAreaOptions = deviceTree | 
		
	
		
			
				|  |  |         }) |  |  |         }) | 
		
	
		
			
				|  |  |       }) |  |  |       }) | 
		
	
		
			
				|  |  |     }, |  |  |     }, | 
		
	
	
		
			
				|  | @ -242,52 +284,53 @@ export default { | 
		
	
		
			
				|  |  |         // this.oldCategory = JSON.parse(JSON.stringify(this.allCategory)) |  |  |         // this.oldCategory = JSON.parse(JSON.stringify(this.allCategory)) | 
		
	
		
			
				|  |  |       }) |  |  |       }) | 
		
	
		
			
				|  |  |     }, |  |  |     }, | 
		
	
		
			
				|  |  |     // 选中触发(第一次回显的时候会触发,清除值的时候会触发, value值为undefined) input事件用于v-model双向绑定组件更新父组件值 |  |  |  | 
		
	
		
			
				|  |  |     treeSelectInput(value, instanceId) { |  |  |  | 
		
	
		
			
				|  |  |       console.log(value, 'input事件') |  |  |  | 
		
	
		
			
				|  |  |       console.log('this.categoryValue', this.categoryValue) |  |  |  | 
		
	
		
			
				|  |  |       console.log(this.value, 'this.value -- input') // 这个不需要 延迟 |  |  |  | 
		
	
		
			
				|  |  |  |  |  |     treeSelectInput(value) { | 
		
	
		
			
				|  |  |  |  |  |       console.log('this.categoryValue', this.checkForm.categoryValue) | 
		
	
		
			
				|  |  |  |  |  |       if (this.checkForm.categoryValue) { | 
		
	
		
			
				|  |  |  |  |  |         this.getYear() | 
		
	
		
			
				|  |  |  |  |  |       } else { | 
		
	
		
			
				|  |  |  |  |  |         this.yearsOptions = [] | 
		
	
		
			
				|  |  |  |  |  |         this.checkForm.years = [] | 
		
	
		
			
				|  |  |  |  |  |       } | 
		
	
		
			
				|  |  |  |  |  |     }, | 
		
	
		
			
				|  |  |  |  |  |     getYear() { | 
		
	
		
			
				|  |  |  |  |  |       const params = { | 
		
	
		
			
				|  |  |  |  |  |         'categoryId': this.checkForm.categoryValue, | 
		
	
		
			
				|  |  |  |  |  |         'isdel': false, | 
		
	
		
			
				|  |  |  |  |  |         'page': 1, | 
		
	
		
			
				|  |  |  |  |  |         'size': 10 | 
		
	
		
			
				|  |  |  |  |  |       } | 
		
	
		
			
				|  |  |  |  |  |       FetchInitArchivesView(params).then(data => { | 
		
	
		
			
				|  |  |  |  |  |         console.log(data.yearGroup) | 
		
	
		
			
				|  |  |  |  |  |         if (data) { | 
		
	
		
			
				|  |  |  |  |  |           this.yearsOptions = data.yearGroup.map(item => { | 
		
	
		
			
				|  |  |  |  |  |             const json = {} | 
		
	
		
			
				|  |  |  |  |  |             json.value = item | 
		
	
		
			
				|  |  |  |  |  |             json.label = item | 
		
	
		
			
				|  |  |  |  |  |             return json | 
		
	
		
			
				|  |  |  |  |  |           }) | 
		
	
		
			
				|  |  |  |  |  |         } | 
		
	
		
			
				|  |  |  |  |  |       }) | 
		
	
		
			
				|  |  |     }, |  |  |     }, | 
		
	
		
			
				|  |  |     // 选中触发(清除值的时候不会触发) |  |  |  | 
		
	
		
			
				|  |  |     // treeSelectChange(raw, instanceId) { |  |  |  | 
		
	
		
			
				|  |  |     //   console.log(raw, '当前的对象') |  |  |  | 
		
	
		
			
				|  |  |     //   setTimeout(() => { // 如果用到this.value 需要setTimeout延迟一下拿到最新的值 |  |  |  | 
		
	
		
			
				|  |  |     //     console.log(this.value, 'this.value -- select') |  |  |  | 
		
	
		
			
				|  |  |     //   }) |  |  |  | 
		
	
		
			
				|  |  |     // }, |  |  |  | 
		
	
		
			
				|  |  |     // 移除选项时触发 当设置multiple为true时生效  raw为当前移除的对象 |  |  |  | 
		
	
		
			
				|  |  |     // treeSelectDeselect(raw, instanceId) { |  |  |  | 
		
	
		
			
				|  |  |     //   console.log(raw, 'deselect-->>') |  |  |  | 
		
	
		
			
				|  |  |     // }, |  |  |  | 
		
	
		
			
				|  |  |     // 搜索 |  |  |  | 
		
	
		
			
				|  |  |     // treeSelectSearch(searchQuery, instanceId) { |  |  |  | 
		
	
		
			
				|  |  |     //   console.log(searchQuery, '当前搜索的值') |  |  |  | 
		
	
		
			
				|  |  |     // }, |  |  |  | 
		
	
		
			
				|  |  |     // 展开触发 |  |  |  | 
		
	
		
			
				|  |  |     // treeSelectOpen(instanceId) { |  |  |  | 
		
	
		
			
				|  |  |     //   console.log('展开了') |  |  |  | 
		
	
		
			
				|  |  |     // }, |  |  |  | 
		
	
		
			
				|  |  |     // 关闭触发 |  |  |  | 
		
	
		
			
				|  |  |     // treeSelectClose(value, instanceId) { |  |  |  | 
		
	
		
			
				|  |  |     //   console.log(value, '当前的value值') |  |  |  | 
		
	
		
			
				|  |  |     // }, |  |  |  | 
		
	
		
			
				|  |  |     // 生成盘点单 |  |  |     // 生成盘点单 | 
		
	
		
			
				|  |  |     handleBuild() { |  |  |     handleBuild() { | 
		
	
		
			
				|  |  |       if (this.selectAreaValue.length > 0 && this.categoryValue.length > 0) { |  |  |  | 
		
	
		
			
				|  |  |  |  |  |       this.$refs['form'].validate(valid => { | 
		
	
		
			
				|  |  |  |  |  |         if (!valid) { | 
		
	
		
			
				|  |  |  |  |  |           return | 
		
	
		
			
				|  |  |  |  |  |         } | 
		
	
		
			
				|  |  |         this.loading = true |  |  |         this.loading = true | 
		
	
		
			
				|  |  |         const paramsNo = this.getParams() |  |  |         const paramsNo = this.getParams() | 
		
	
		
			
				|  |  |  |  |  |         if (paramsNo.checkType === 1) { | 
		
	
		
			
				|  |  |  |  |  |           this.isCaseOrFile = 1 | 
		
	
		
			
				|  |  |  |  |  |         } else { | 
		
	
		
			
				|  |  |  |  |  |           this.isCaseOrFile = 2 | 
		
	
		
			
				|  |  |  |  |  |         } | 
		
	
		
			
				|  |  |         this.params.deviceIds = paramsNo.deviceIds |  |  |         this.params.deviceIds = paramsNo.deviceIds | 
		
	
		
			
				|  |  |         this.params.categoryIds = paramsNo.categoryIds |  |  |         this.params.categoryIds = paramsNo.categoryIds | 
		
	
		
			
				|  |  |         this.params.page = this.page.page - 1 |  |  |         this.params.page = this.page.page - 1 | 
		
	
		
			
				|  |  |         this.params.size = this.page.size |  |  |         this.params.size = this.page.size | 
		
	
		
			
				|  |  |         this.doPreArrange(this.params) |  |  |         this.doPreArrange(this.params) | 
		
	
		
			
				|  |  |         this.loading = false |  |  |  | 
		
	
		
			
				|  |  |       } else { |  |  |  | 
		
	
		
			
				|  |  |         this.$message({ |  |  |  | 
		
	
		
			
				|  |  |           message: '区域和门类均不能为空', |  |  |  | 
		
	
		
			
				|  |  |           type: 'warning' |  |  |  | 
		
	
		
			
				|  |  |         }) |  |  |  | 
		
	
		
			
				|  |  |       } |  |  |  | 
		
	
		
			
				|  |  |  |  |  |       }) | 
		
	
		
			
				|  |  |     }, |  |  |     }, | 
		
	
		
			
				|  |  |     handleSave() { |  |  |     handleSave() { | 
		
	
		
			
				|  |  |       const params = this.getParams() |  |  |       const params = this.getParams() | 
		
	
	
		
			
				|  | @ -308,13 +351,13 @@ export default { | 
		
	
		
			
				|  |  |       }) |  |  |       }) | 
		
	
		
			
				|  |  |     }, |  |  |     }, | 
		
	
		
			
				|  |  |     getParams() { |  |  |     getParams() { | 
		
	
		
			
				|  |  |       const room = this.selectArea.map(item => { return item.id }) // 所有区域id |  |  |  | 
		
	
		
			
				|  |  |       if (this.selectAreaValue.length > 0 && this.categoryValue.length > 0) { |  |  |  | 
		
	
		
			
				|  |  |         let deviceIds = this.selectAreaValue.filter(item => !room.includes(item)) // 选中的设备id |  |  |  | 
		
	
		
			
				|  |  |  |  |  |       const room = this.selectAreaOptions.map(item => { return item.id }) // 所有区域id | 
		
	
		
			
				|  |  |  |  |  |       if (this.checkForm.selectAreaValue.length > 0 && this.checkForm.categoryValue.length > 0) { | 
		
	
		
			
				|  |  |  |  |  |         let deviceIds = this.checkForm.selectAreaValue.filter(item => !room.includes(item)) // 选中的设备id | 
		
	
		
			
				|  |  |         const devIds = JSON.parse(JSON.stringify(deviceIds)) |  |  |         const devIds = JSON.parse(JSON.stringify(deviceIds)) | 
		
	
		
			
				|  |  |         let region = [] |  |  |         let region = [] | 
		
	
		
			
				|  |  |         this.selectArea.forEach(item => { |  |  |  | 
		
	
		
			
				|  |  |           if (this.selectAreaValue.includes(item.id)) { |  |  |  | 
		
	
		
			
				|  |  |  |  |  |         this.selectAreaOptions.forEach(item => { | 
		
	
		
			
				|  |  |  |  |  |           if (this.checkForm.selectAreaValue.includes(item.id)) { | 
		
	
		
			
				|  |  |             region.push(item.name) |  |  |             region.push(item.name) | 
		
	
		
			
				|  |  |             const arr = item.children.map(val => { return val.id }) // 区域内所有设备 |  |  |             const arr = item.children.map(val => { return val.id }) // 区域内所有设备 | 
		
	
		
			
				|  |  |             deviceIds = deviceIds.concat(arr) |  |  |             deviceIds = deviceIds.concat(arr) | 
		
	
	
		
			
				|  | @ -328,11 +371,12 @@ export default { | 
		
	
		
			
				|  |  |           } |  |  |           } | 
		
	
		
			
				|  |  |         }) |  |  |         }) | 
		
	
		
			
				|  |  |         region = region.join(',') // 区域str |  |  |         region = region.join(',') // 区域str | 
		
	
		
			
				|  |  |         const categoryIds = this.categoryValue.filter(item => item !== 0) |  |  |  | 
		
	
		
			
				|  |  |  |  |  |         // const categoryIds = this.checkForm.categoryValue.filter(item => item !== 0) | 
		
	
		
			
				|  |  |         const params = { |  |  |         const params = { | 
		
	
		
			
				|  |  |           'categoryIds': categoryIds, |  |  |  | 
		
	
		
			
				|  |  |  |  |  |           'categoryIds': this.checkForm.categoryValue, | 
		
	
		
			
				|  |  |           'deviceIds': deviceIds, |  |  |           'deviceIds': deviceIds, | 
		
	
		
			
				|  |  |           'region': region |  |  |  | 
		
	
		
			
				|  |  |  |  |  |           'region': region, | 
		
	
		
			
				|  |  |  |  |  |           'checkType': this.checkForm.checkType | 
		
	
		
			
				|  |  |         } |  |  |         } | 
		
	
		
			
				|  |  |         return params |  |  |         return params | 
		
	
		
			
				|  |  |       } |  |  |       } | 
		
	
	
		
			
				|  | @ -342,6 +386,7 @@ export default { | 
		
	
		
			
				|  |  |       previewArrange(params).then(res => { |  |  |       previewArrange(params).then(res => { | 
		
	
		
			
				|  |  |         this.tableData = res.content |  |  |         this.tableData = res.content | 
		
	
		
			
				|  |  |         this.page.total = res.totalElements |  |  |         this.page.total = res.totalElements | 
		
	
		
			
				|  |  |  |  |  |         this.loading = false | 
		
	
		
			
				|  |  |       }) |  |  |       }) | 
		
	
		
			
				|  |  |     }, |  |  |     }, | 
		
	
		
			
				|  |  |     // 每页条数改变 |  |  |     // 每页条数改变 | 
		
	
	
		
			
				|  | @ -363,33 +408,47 @@ export default { | 
		
	
		
			
				|  |  |       this.loading = false |  |  |       this.loading = false | 
		
	
		
			
				|  |  |     }, |  |  |     }, | 
		
	
		
			
				|  |  |     // 选择门类 |  |  |     // 选择门类 | 
		
	
		
			
				|  |  |     selectChange(val) { |  |  |  | 
		
	
		
			
				|  |  |       const allCategory = JSON.parse(JSON.stringify(this.allCategory)) |  |  |  | 
		
	
		
			
				|  |  |       if (val[val.length - 1] === 0) { // 选择全选 |  |  |  | 
		
	
		
			
				|  |  |         this.categoryValue = allCategory |  |  |  | 
		
	
		
			
				|  |  |       } else { |  |  |  | 
		
	
		
			
				|  |  |         const arr1 = this.oldCategory.filter(item => item !== 0) |  |  |  | 
		
	
		
			
				|  |  |         const arr2 = val.filter(item => item !== 0) |  |  |  | 
		
	
		
			
				|  |  |         if (arr1.length === arr2.length) { // 取消全选 |  |  |  | 
		
	
		
			
				|  |  |           this.categoryValue = [] |  |  |  | 
		
	
		
			
				|  |  |         } else if (arr1.length < arr2.length && arr2.length === this.category.length - 1) { |  |  |  | 
		
	
		
			
				|  |  |           this.categoryValue.unshift(0) // 除全选时都选中 此时加入全选 |  |  |  | 
		
	
		
			
				|  |  |         } else { |  |  |  | 
		
	
		
			
				|  |  |           this.categoryValue = this.categoryValue.filter(item => item !== 0) // 取消其他选项时 去除全选 |  |  |  | 
		
	
		
			
				|  |  |         } |  |  |  | 
		
	
		
			
				|  |  |       } |  |  |  | 
		
	
		
			
				|  |  |       this.oldCategory = this.categoryValue |  |  |  | 
		
	
		
			
				|  |  |     }, |  |  |  | 
		
	
		
			
				|  |  |  |  |  |     // selectChange(val) { | 
		
	
		
			
				|  |  |  |  |  |     //   const allCategory = JSON.parse(JSON.stringify(this.allCategory)) | 
		
	
		
			
				|  |  |  |  |  |     //   if (val[val.length - 1] === 0) { // 选择全选 | 
		
	
		
			
				|  |  |  |  |  |     //     this.checkForm.categoryValue = allCategory | 
		
	
		
			
				|  |  |  |  |  |     //   } else { | 
		
	
		
			
				|  |  |  |  |  |     //     const arr1 = this.oldCategory.filter(item => item !== 0) | 
		
	
		
			
				|  |  |  |  |  |     //     const arr2 = val.filter(item => item !== 0) | 
		
	
		
			
				|  |  |  |  |  |     //     if (arr1.length === arr2.length) { // 取消全选 | 
		
	
		
			
				|  |  |  |  |  |     //       this.checkForm.categoryValue = [] | 
		
	
		
			
				|  |  |  |  |  |     //     } else if (arr1.length < arr2.length && arr2.length === this.category.length - 1) { | 
		
	
		
			
				|  |  |  |  |  |     //       this.checkForm.categoryValue.unshift(0) // 除全选时都选中 此时加入全选 | 
		
	
		
			
				|  |  |  |  |  |     //     } else { | 
		
	
		
			
				|  |  |  |  |  |     //       this.checkForm.categoryValue = this.checkForm.categoryValue.filter(item => item !== 0) // 取消其他选项时 去除全选 | 
		
	
		
			
				|  |  |  |  |  |     //     } | 
		
	
		
			
				|  |  |  |  |  |     //   } | 
		
	
		
			
				|  |  |  |  |  |     //   this.oldCategory = this.checkForm.categoryValue | 
		
	
		
			
				|  |  |  |  |  |     // }, | 
		
	
		
			
				|  |  |     // 单元格样式 |  |  |     // 单元格样式 | 
		
	
		
			
				|  |  |     cell({ row, columnIndex }) { |  |  |     cell({ row, columnIndex }) { | 
		
	
		
			
				|  |  |       if (columnIndex === 1) { |  |  |       if (columnIndex === 1) { | 
		
	
		
			
				|  |  |         return 'fail-clear' |  |  |         return 'fail-clear' | 
		
	
		
			
				|  |  |       } |  |  |       } | 
		
	
		
			
				|  |  |     }, |  |  |     }, | 
		
	
		
			
				|  |  |  |  |  |     handleCaseDbClick(row) { | 
		
	
		
			
				|  |  |  |  |  |       this.$refs.detailDom.rowData = row | 
		
	
		
			
				|  |  |  |  |  |       const params = { | 
		
	
		
			
				|  |  |  |  |  |         caseId: row.id | 
		
	
		
			
				|  |  |  |  |  |       } | 
		
	
		
			
				|  |  |  |  |  |       findInCase(params).then(res => { | 
		
	
		
			
				|  |  |  |  |  |         if (res) { | 
		
	
		
			
				|  |  |  |  |  |           this.$refs.detailDom.tableData = res.archives | 
		
	
		
			
				|  |  |  |  |  |         } | 
		
	
		
			
				|  |  |  |  |  |       }) | 
		
	
		
			
				|  |  |  |  |  |       this.$refs.detailDom.detailVisible = true | 
		
	
		
			
				|  |  |  |  |  |     }, | 
		
	
		
			
				|  |  |     handleClose() { |  |  |     handleClose() { | 
		
	
		
			
				|  |  |       this.getTreeMenu() |  |  |       this.getTreeMenu() | 
		
	
		
			
				|  |  |       this.getCateMenu() |  |  |       this.getCateMenu() | 
		
	
		
			
				|  |  |       this.tableData = [] |  |  |       this.tableData = [] | 
		
	
		
			
				|  |  |  |  |  |       this.isCaseOrFile = 0 | 
		
	
		
			
				|  |  |  |  |  |       this.$refs['form'].resetFields() | 
		
	
		
			
				|  |  |     }, |  |  |     }, | 
		
	
		
			
				|  |  |     normalizer(node) { |  |  |     normalizer(node) { | 
		
	
		
			
				|  |  |       if (node.children && !node.children.length) { |  |  |       if (node.children && !node.children.length) { | 
		
	
	
		
			
				|  | @ -398,7 +457,8 @@ export default { | 
		
	
		
			
				|  |  |       return { |  |  |       return { | 
		
	
		
			
				|  |  |         id: node.id, |  |  |         id: node.id, | 
		
	
		
			
				|  |  |         label: node.cnName, |  |  |         label: node.cnName, | 
		
	
		
			
				|  |  |         children: node.children |  |  |  | 
		
	
		
			
				|  |  |  |  |  |         children: node.children, | 
		
	
		
			
				|  |  |  |  |  |         isDisabled: node.isType !== 3 && node.isType !== 5 | 
		
	
		
			
				|  |  |       } |  |  |       } | 
		
	
		
			
				|  |  |     } |  |  |     } | 
		
	
		
			
				|  |  | 
 |  |  | 
 | 
		
	
	
		
			
				|  | @ -411,6 +471,7 @@ export default { | 
		
	
		
			
				|  |  | 
 |  |  | 
 | 
		
	
		
			
				|  |  | .el-form{ |  |  | .el-form{ | 
		
	
		
			
				|  |  |   display: flex; |  |  |   display: flex; | 
		
	
		
			
				|  |  |  |  |  |   flex-wrap: wrap; | 
		
	
		
			
				|  |  |   padding-left: 12px; |  |  |   padding-left: 12px; | 
		
	
		
			
				|  |  | } |  |  | } | 
		
	
		
			
				|  |  | ::v-deep .el-dialog{ |  |  | ::v-deep .el-dialog{ | 
		
	
	
		
			
				|  | @ -419,7 +480,7 @@ export default { | 
		
	
		
			
				|  |  | } |  |  | } | 
		
	
		
			
				|  |  | ::v-deep .el-dialog .el-dialog__header .el-dialog__close::before{ |  |  | ::v-deep .el-dialog .el-dialog__header .el-dialog__close::before{ | 
		
	
		
			
				|  |  |   position: absolute; |  |  |   position: absolute; | 
		
	
		
			
				|  |  |   right: -160px; |  |  |  | 
		
	
		
			
				|  |  |  |  |  |   right: -190px; | 
		
	
		
			
				|  |  |   bottom: -12px; |  |  |   bottom: -12px; | 
		
	
		
			
				|  |  | } |  |  | } | 
		
	
		
			
				|  |  | ::v-deep .el-dialog__body{ |  |  | ::v-deep .el-dialog__body{ | 
		
	
	
		
			
				|  | 
 |