| | |
| | | <el-form-item label="行政区划:"> |
| | | <el-tree-select |
| | | popper-class="custom-tree-select" |
| | | v-model="searchForm.area_code" |
| | | v-model="searchForm.areaCode" |
| | | :data="deptTreeData" |
| | | :default-expanded-keys="[searchForm.area_code]" |
| | | :default-expanded-keys="[searchForm.areaCode]" |
| | | check-strictly |
| | | node-key="id" |
| | | :props="treeProps" |
| | |
| | | <el-form-item label="所属机巢:"> |
| | | <el-select |
| | | :teleported="false" |
| | | v-model="searchForm.device_sn" |
| | | v-model="searchForm.deviceSn" |
| | | placeholder="请选择" |
| | | clearable |
| | | > |
| | |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="任务名称:"> |
| | | <el-input v-model="searchForm.taskName" placeholder="请输入" clearable /> |
| | | <el-input v-model="searchForm.jobName" placeholder="请输入" clearable /> |
| | | </el-form-item> |
| | | <el-form-item> |
| | | <el-date-picker |
| | |
| | | <el-form-item label="文件格式:"> |
| | | <el-select |
| | | :teleported="false" |
| | | v-model="searchForm.formatValue" |
| | | v-model="searchForm.resultType" |
| | | placeholder="请选择" |
| | | clearable |
| | | > |
| | |
| | | <el-form-item label="文件类别:"> |
| | | <el-select |
| | | :teleported="false" |
| | | v-model="searchForm.categoryValue" |
| | | v-model="searchForm.photoType" |
| | | placeholder="请选择" |
| | | clearable |
| | | > |
| | |
| | | </div> |
| | | <div class="search-first"> |
| | | <el-form-item label="文件名称:"> |
| | | <el-input v-model="searchForm.fileName" placeholder="请输入" clearable /> |
| | | <el-input v-model="searchForm.nickName" placeholder="请输入" clearable /> |
| | | </el-form-item> |
| | | <div class="search-btn"> |
| | | <el-button type="primary" icon="el-icon-search" @click="handleSearch">搜索</el-button> |
| | |
| | | }; |
| | | const fileFormatOption = [ |
| | | { |
| | | value: '照片', |
| | | value: '0', |
| | | label: '照片', |
| | | }, |
| | | { |
| | | value: '视频', |
| | | value: '1', |
| | | label: '视频', |
| | | }, |
| | | { |
| | | value: 'AI识别', |
| | | value: '2', |
| | | label: 'AI识别', |
| | | }, |
| | | { |
| | | value: '全景', |
| | | value: '3', |
| | | label: '全景', |
| | | }, |
| | | { |
| | | value: '正射', |
| | | value: '4', |
| | | label: '正射', |
| | | }, |
| | | ]; |
| | | const CategoryOption = [ |
| | | { |
| | | value: '可见光', |
| | | value: 'visible', |
| | | label: '可见光', |
| | | }, |
| | | { |
| | | value: '红外', |
| | | value: 'ir', |
| | | label: '红外', |
| | | }, |
| | | ]; |
| | | |
| | | const searchForm = reactive({ |
| | | taskName: '', //任务名称 |
| | | fileName: '', //文件名称 |
| | | area_code: userAreaCode.value, // 区域code |
| | | create_dept: '', // 创建部门 |
| | | end_date: null, // 结束时间 |
| | | start_date: null, // 开始时间 |
| | | device_sn: '', // 所属机巢 |
| | | formatValue: '', //文件格式 |
| | | categoryValue: '', //文件类别 |
| | | jobName: '', //任务名称 |
| | | nickName: '', //文件名称 |
| | | areaCode: userAreaCode.value, // 区域code |
| | | endTime: null, // 结束时间 |
| | | startTime: null, // 开始时间 |
| | | deviceSn: '', // 所属机巢 |
| | | resultType: '', //文件格式 |
| | | photoType: '', //文件类别 |
| | | }); |
| | | |
| | | const dateRange = ref([]); |
| | | const timeFormat = 'YYYY-MM-DD HH:mm:ss'; |
| | | // 部门 |
| | |
| | | }; |
| | | const handleNodeClick = async data => { |
| | | // 处理机巢数据 |
| | | searchForm.device_sn = ''; |
| | | searchForm.deviceSn = ''; |
| | | machineData.value = ''; |
| | | |
| | | const droneList = await getDeviceRegion({ areaCode: data.id }); |
| | |
| | | machineData.value = droneList?.data?.data; |
| | | // 默认选中值 |
| | | if (signDevice_sn.value) { |
| | | searchForm.device_sn = signDevice_sn.value; |
| | | searchForm.deviceSn = signDevice_sn.value; |
| | | } |
| | | // 所属部门重新请求值 |
| | | searchForm.create_dept = ''; |
| | |
| | | }; |
| | | // 所属部门信息 |
| | | const getDeptsByAreaCode = () => { |
| | | deptsByAreaCode(searchForm.area_code).then(res => { |
| | | deptsByAreaCode(searchForm.areaCode).then(res => { |
| | | if (res.code !== 0) { |
| | | deptData.value = res.data.data; |
| | | } |
| | |
| | | } |
| | | let params = { |
| | | ...searchForm, |
| | | start_date: dateRange.value.length |
| | | startTime: dateRange.value.length |
| | | ? dayjs(dateRange?.value[0]).startOf('day').format(timeFormat) |
| | | : null, |
| | | end_date: dateRange.value.length |
| | | endTime: dateRange.value.length |
| | | ? dayjs(dateRange?.value[1]).endOf('day').format(timeFormat) |
| | | : null, |
| | | }; |
| | |
| | | // 调用父组件方法 |
| | | emit('search', params); |
| | | }; |
| | | // 重置 |
| | | // 清空 |
| | | const handleReset = () => { |
| | | dateRange.value = []; |
| | | Object.keys(searchForm).forEach(key => { |