| | |
| | | <!-- </div>--> |
| | | |
| | | <div class="search-bar-box-item"> |
| | | <el-date-picker v-model="filters.dateRange" type="daterange" range-separator="至" |
| | | <el-date-picker @change="handleSearch" v-model="filters.dateRange" type="daterange" range-separator="至" |
| | | start-placeholder="开始日期" end-placeholder="结束日期" :default-value="datePickerDefaultVal" /> |
| | | </div> |
| | | |
| | | <div class="search-bar-box-item"> |
| | | <el-select v-model="filters.file_id" placeholder="请选择关联航线" filterable clearable> |
| | | <el-select @change="handleSearch" v-model="filters.file_id" placeholder="请选择关联航线" filterable clearable> |
| | | <el-option v-for="item in wayLineList" :key="item.wayline_id" :label="item.name" |
| | | :value="item.wayline_id" /> |
| | | </el-select> |
| | | </div> |
| | | |
| | | <div class="search-bar-box-item"> |
| | | <el-select v-model="filters.ai_types" placeholder="关联算法" clearable> |
| | | <el-select @change="handleSearch" v-model="filters.ai_types" placeholder="关联算法" clearable> |
| | | <el-option v-for="item in ai_types" :key="item.dictKey" :label="item.dictValue" |
| | | :value="item.dictKey" /> |
| | | </el-select> |
| | |
| | | </div> --> |
| | | |
| | | <div class="search-bar-box-item"> |
| | | <el-select v-model="filters.status" placeholder="请选择工单状态" clearable :disabled="activeTab !== 'all'"> |
| | | <el-select @change="handleSearch" v-model="filters.status" placeholder="请选择工单状态" clearable :disabled="activeTab !== 'all'"> |
| | | <el-option v-for="item in statuses" :key="item.value" :label="item.label" :value="item.value" /> |
| | | </el-select> |
| | | </div> |
| | |
| | | |
| | | <div class="search-bar-box"> |
| | | <div class="search-bar-box-item flex-2"> |
| | | <el-date-picker v-model="filters.cycleDateRange" type="daterange" range-separator="至" |
| | | <el-date-picker @change="handleSearch" v-model="filters.cycleDateRange" type="daterange" range-separator="至" |
| | | start-placeholder="工单周期开始日期" end-placeholder="工单周期结束日期" :default-value="datePickerDefaultVal" /> |
| | | </div> |
| | | |
| | | <div class="search-bar-box-item"> |
| | | <el-select v-model="filters.rep_fre_type" placeholder="请选择频次" clearable> |
| | | <el-select @change="handleSearch" v-model="filters.rep_fre_type" placeholder="请选择频次" clearable> |
| | | <el-option v-for="item in cycles" :key="item" :label="item" :value="item" /> |
| | | </el-select> |
| | | </div> |
| | | |
| | | <div class="search-bar-box-item"> |
| | | <el-time-picker v-model="filters.deal_time" placeholder="请选择执行时间" prop="deal_time" value-format="HH:mm" |
| | | <el-time-picker @change="handleSearch" v-model="filters.deal_time" placeholder="请选择执行时间" prop="deal_time" value-format="HH:mm" |
| | | :picker-options="{ |
| | | selectableRange: '00:00 - 23:59', |
| | | }" /> |
| | |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="关联航线" prop="file_id"> |
| | | <el-select v-model="form.file_id" placeholder="请选择航线" @change="getFlyingNestBy"> |
| | | <el-select v-model="form.file_id" placeholder="请选择航线" filterable @change="getFlyingNestBy"> |
| | | <el-option v-for="item in wayLineList" :key="item.wayline_id" :label="item.name" |
| | | :value="item.wayline_id" /> |
| | | </el-select> |
| | |
| | | <el-row :gutter="20"> |
| | | <el-col :span="12"> |
| | | <el-form-item label="关联机巢" prop="device_sns"> |
| | | <el-select v-model="form.device_sns" placeholder="请选择机巢" multiple> |
| | | <el-select v-model="form.device_sns" placeholder="请选择机巢" multiple :disabled="!device_sns.length"> |
| | | <el-option v-for="item in device_sns" :key="item.device_sn" :label="item.nickname" |
| | | :value="item.device_sn" /> |
| | | </el-select> |
| | |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="关联航线" prop="file_id"> |
| | | <el-select v-model="form.file_id" placeholder="请选择航线" @change="getFlyingNestBy" :disabled="detailTitle === '工单详情'"> |
| | | <el-select v-model="form.file_id" placeholder="请选择航线" @change="getFlyingNestBy" filterable :disabled="detailTitle === '工单详情'"> |
| | | <el-option v-for="item in wayLineList" :key="item.wayline_id" :label="item.name" |
| | | :value="item.wayline_id" /> |
| | | </el-select> |
| | |
| | | </el-dialog> |
| | | |
| | | <!-- 工单详情 --> |
| | | <el-dialog v-model="detailVisibleCopy" title="工单详情" width="70%" :close-on-click-modal="false" @close="resetForm"> |
| | | <el-dialog align-center v-model="detailVisibleCopy" title="工单详情" width="70%" :close-on-click-modal="false" @close="resetForm"> |
| | | <div class="event-title-center">{{ form.name }}</div> |
| | | <el-form :model="form" ref="testform" label-width="100px"> |
| | | <div class="custom-steps-container"> |
| | |
| | | showOverflowTooltip: true, |
| | | }, |
| | | { |
| | | label: '所属单位', prop: 'dept_name', width: 100, ellipsis: true, |
| | | label: '所属单位', prop: 'dept_name', ellipsis: true, |
| | | showOverflowTooltip: true, |
| | | }, |
| | | { |
| | |
| | | showOverflowTooltip: true, |
| | | }, |
| | | { |
| | | label: '关联航线', prop: 'wayline_name', width: 100, ellipsis: true, overHidden: true, |
| | | label: '关联航线', prop: 'wayline_name', ellipsis: true, overHidden: true, |
| | | showOverflowTooltip: true, |
| | | }, |
| | | { |
| | |
| | | label: '创建人', prop: 'creator_name', width: 96, ellipsis: true, overHidden: true, |
| | | showOverflowTooltip: true, |
| | | }, |
| | | { |
| | | label: '关联机巢', prop: 'device_names', width: 112, ellipsis: true, overHidden: true, |
| | | showOverflowTooltip: true, |
| | | }, |
| | | // { |
| | | // label: '关联机巢', prop: 'device_names', width: 112, ellipsis: true, overHidden: true, |
| | | // showOverflowTooltip: true, |
| | | // }, |
| | | { |
| | | label: '工单周期频次', |
| | | prop: '', |
| | |
| | | ], |
| | | file_id: [{ required: true, message: '需要选择航线', trigger: 'change' }], |
| | | device_sns: [{ required: true, message: '请选择机巢', trigger: 'change' }], |
| | | ai_types: [{ required: true, message: '请选择算法', trigger: 'change' }], |
| | | content: [ |
| | | { required: true, message: '请输入工单内容', trigger: 'blur' }, |
| | | { max: 255, message: '工单内容不能超过255个字', trigger: 'blur' }, |
| | |
| | | this.fetchTableData() |
| | | const id = this.$route.query.id |
| | | console.log('idddddd',id); |
| | | |
| | | |
| | | if (id) { |
| | | // 确保 id 存在 |
| | | this.handleViewDetail({ id }) |
| | | const find = this.$store.state.tags.bsTagList.find(i => i.path === '/tickets/orderLog') |
| | | find && (find.query = {}) |
| | | } else { |
| | | console.error('工单ID不存在!') |
| | | |
| | | } |
| | | }, |
| | | computed: { |
| | |
| | | |
| | | this.form.begin_time = this.formatDate(dateRange[0]) |
| | | this.form.end_time = this.formatDate(dateRange[1]) |
| | | |
| | | |
| | | // 如果选中日期包含当前天,那么选中的时间点不能小于当前时间 |
| | | if (this.form.deal_time) { |
| | | const selectedDate = dayjs(this.form.date_range[0]).format('YYYY-MM-DD') |
| | |
| | | |
| | | const submitData = { |
| | | ...this.form, |
| | | |
| | | status: status, |
| | | ai_types: this.form.ai_types?.length ? this.form.ai_types : [], |
| | | } |
| | | // 判断该值this.form.date_range[0] 周几 和rep_fre_type 是不是相等 |
| | | // if (this.form.deal_time) { |