| | |
| | | <template> |
| | | <div style="display: flex" > |
| | | <div style="display: flex"> |
| | | <el-form :inline="true" :model="formInline" class="demo-form-inline"> |
| | | <!-- 集成日志 任务 数据全部公用--> |
| | | <!-- 集成日志 任务 数据全部公用--> |
| | | <el-form-item label="集成查询:" size="small"> |
| | | <el-select v-model="formInline.type" placeholder="请选择分类" @change="SelectChange"> |
| | | <el-option :label="item.label" :value="item.value" :key="item.value" v-for="(item,index) in SearchObject.searchData"></el-option> |
| | | <el-option v-for="(item,index) in SearchObject.searchData" :key="item.value" :label="item.label" |
| | | :value="item.value"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <!-- 集成日志 是否成功--> |
| | | <!-- 集成日志 是否成功--> |
| | | <el-form-item v-if="(status.type == 'loge' && status.stateFlag)" size="small"> |
| | | <el-select v-model="formInline.state" placeholder="请选择状态"> |
| | | <el-option label="是" value="true"></el-option> |
| | | <el-option label="否" value="false"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <!-- 集成日志类型--> |
| | | <!-- 集成日志类型--> |
| | | <el-form-item v-if="(status.type == 'loge' && status.typeFlag)" size="small"> |
| | | <el-select v-model="formInline.cut" placeholder="请选择类型"> |
| | | <el-option label="数据推送" value="pushData"></el-option> |
| | |
| | | <el-option label="分类查询" value="queryClassify"></el-option> |
| | | <el-option label="含编码规则的分类查询" value="queryClassifyRule"></el-option> |
| | | <el-option label="数据查询" value="queryData"></el-option> |
| | | <el-option label="标准申请" value="applyCodeForBZ"></el-option> |
| | | <el-option label="部门申请" value="syncDataForOrg"></el-option> |
| | | <el-option label="人员申请" value="syncDataForPerson"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <!-- 集成任务 是否推送成功 |
| | | 集成数据 是否分解任务--> |
| | | <!-- 集成任务 是否推送成功 |
| | | 集成数据 是否分解任务--> |
| | | <el-form-item v-if="((status.type == 'task' || status.type == 'data')&& status.stateTaskDataFlag)" size="small"> |
| | | <el-select v-model="formInline.stateTask" placeholder="请选择状态"> |
| | | <el-option label="是" value="true"></el-option> |
| | | <el-option label="否" value="false"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <!-- 集成任务 集成数据 推送类型--> |
| | | <!-- 集成任务 集成数据 推送类型--> |
| | | <el-form-item v-if="((status.type === 'task' || status.type === 'data') && status.sendTypeFlga)" size="small"> |
| | | <el-select v-model="formInline.taskCut" placeholder="请选择推送类型"> |
| | | <el-option label="发布" value="Enabled"></el-option> |
| | |
| | | <el-option label="停用" value="Disabled"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <!-- 集成任务 创建日期 集成日志 记录时间--> |
| | | <el-form-item size="small" v-if="((status.type == 'loge' ||status.type == 'task') && status.dateFlag)"> |
| | | <!-- 集成任务 创建日期 集成日志 记录时间--> |
| | | <el-form-item v-if="((status.type == 'loge' ||status.type == 'task') && status.dateFlag)" size="small"> |
| | | <el-date-picker |
| | | v-model="formInline.Date" |
| | | type="date" |
| | | placeholder="选择日期时间"> |
| | | placeholder="选择日期时间" |
| | | type="date"> |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | <!-- 集成任务 最后推送时间--> |
| | | <el-form-item size="small" v-if="status.type == 'task' && status.lastDateFlag"> |
| | | <!-- 集成任务 最后推送时间--> |
| | | <el-form-item v-if="status.type == 'task' && status.lastDateFlag" size="small"> |
| | | <el-date-picker |
| | | v-model="formInline.lastDate" |
| | | type="date" |
| | | placeholder="选择日期时间"> |
| | | placeholder="选择日期时间" |
| | | type="date"> |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | <!-- 公用模块--> |
| | | <!-- 输入内容--> |
| | | <el-form-item size="small" v-if="shouldShowInput"> |
| | | <!-- 公用模块--> |
| | | <!-- 输入内容--> |
| | | <el-form-item v-if="shouldShowInput" size="small"> |
| | | <el-input v-model="formInline.text" placeholder="按下回车键进行查询!" @keyup.enter.native="SaveHandler"></el-input> |
| | | </el-form-item> |
| | | <!-- 查询按钮--> |
| | | <el-form-item size="small" v-if="shouldShowButton"> |
| | | <el-button type="success" size="small" @click="handleSearch">查询</el-button> |
| | | <!-- 查询按钮--> |
| | | <el-form-item v-if="shouldShowButton" size="small"> |
| | | <el-button size="small" type="success" @click="handleSearch">查询</el-button> |
| | | </el-form-item> |
| | | </el-form> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import {getList} from "@/api/docking/loge"; |
| | | import {getLogoList} from "@/api/docking/loge"; |
| | | import {getDataList} from "@/api/docking/data"; |
| | | import {getTaskList} from "@/api/docking/task"; |
| | | |
| | | export default { |
| | | name: "VciDockingSearch", |
| | | props:['SearchObject','page','formInline','status'], |
| | | props: ['SearchObject', 'page', 'formInline', 'status'], |
| | | data() { |
| | | return { |
| | | } |
| | | return {} |
| | | }, |
| | | computed: { |
| | | //输入框判断 |
| | |
| | | const isLogeType = this.status.type === 'loge'; |
| | | const isTaskType = this.status.type === 'task'; |
| | | const isDataType = this.status.type === 'data'; |
| | | return( |
| | | return ( |
| | | (isLogeType && (this.status.dateFlag || this.status.stateFlag || this.status.typeFlag)) || |
| | | (isTaskType && (this.status.stateTaskDataFlag || this.status.dateFlag || this.status.lastDateFlag || this.status.sendTypeFlga)) || |
| | | (isDataType && (this.status.stateTaskDataFlag || this.status.sendTypeFlga)) |
| | | ); |
| | | } |
| | | }, |
| | | methods:{ |
| | | methods: { |
| | | SelectChange(val) { |
| | | const logeType = this.status.type === 'loge'; |
| | | const taskType = this.status.type === 'task'; |
| | |
| | | this.status.stateTaskDataFlag = (taskType && val === 8) || (dataType && val === 4); |
| | | this.status.sendTypeFlga = (taskType && val === 5) || (dataType && val === 3); |
| | | }, |
| | | SaveHandler(){ |
| | | let name = this.SearchObject.searchData[this.formInline.type].prop; |
| | | getList(this.page.currentPage, this.page.pageSize, { [`conditionMap[${name}_like]`]: this.formInline.text}).then(res => { |
| | | if(!res.data.data.records){ |
| | | this.$message.error('暂未查到数据!') |
| | | }else { |
| | | let Data=res.data.data; |
| | | this.$emit('getList',Data); |
| | | } |
| | | }); |
| | | SaveHandler() { |
| | | let searchDataItem = Object.values(this.SearchObject.searchData).find(item => item.value === this.formInline.type); |
| | | let name = searchDataItem ? searchDataItem.prop : null; |
| | | if (!searchDataItem) { |
| | | this.$message.error('未找到对应搜索类型请查看控制台输出!') |
| | | } |
| | | const requestApi = (api) => { |
| | | api(this.page.currentPage, this.page.pageSize, 'createTime', 'desc', {[`conditionMap[${name}_like]`]: this.formInline.text}) |
| | | .then(res => { |
| | | if (!res.data.data.records) { |
| | | this.$message.error('暂未查到数据!'); |
| | | } else { |
| | | let Data = res.data.data; |
| | | this.$emit('getList', Data); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | //日志 |
| | | if (this.status.type == 'loge') { |
| | | requestApi(getLogoList); |
| | | } |
| | | //数据 |
| | | if (this.status.type == 'data') { |
| | | requestApi(getDataList); |
| | | } |
| | | //任务 |
| | | if (this.status.type == 'task') { |
| | | requestApi(getTaskList); |
| | | } |
| | | }, |
| | | handleSearch() { |
| | | const { type, typeFlag, stateFlag, stateTaskDataFlag, dateFlag, lastDateFlag ,sendTypeFlga} = this.status; |
| | | const { currentPage, pageSize } = this.page; |
| | | const { cut, state, stateTask, Date, lastDate, taskCut } = this.formInline; |
| | | const {type, typeFlag, stateFlag, stateTaskDataFlag, dateFlag, lastDateFlag, sendTypeFlga} = this.status; |
| | | const {currentPage, pageSize} = this.page; |
| | | const {cut, state, stateTask, Date, lastDate, taskCut} = this.formInline; |
| | | const requestParams = {}; |
| | | const requestApi = (api) => { |
| | | api(currentPage, pageSize, 'createTime', 'desc', requestParams).then(res => { |
| | | if (!res.data.data.records) { |
| | | this.$message.error('暂未查到数据!'); |
| | | } else { |
| | | let Data = res.data.data; |
| | | this.$emit('getList', Data); |
| | | } |
| | | }); |
| | | } |
| | | // 集成日志类型 |
| | | if (type === 'loge' && typeFlag) { |
| | | requestParams['conditionMap[type_like]'] = cut; |
| | |
| | | if ((type === 'task' || type === 'data') && sendTypeFlga) { |
| | | requestParams['conditionMap[sendType_like]'] = taskCut; |
| | | } |
| | | // 请求 |
| | | getList(currentPage, pageSize, requestParams).then(res => { |
| | | if(!res.data.data.records){ |
| | | this.$message.error('暂未查到数据!') |
| | | }else { |
| | | let Data=res.data.data; |
| | | this.$emit('getList',Data); |
| | | } |
| | | }); |
| | | |
| | | if (type == 'loge') { |
| | | requestApi(getLogoList); |
| | | } |
| | | if (type == 'data') { |
| | | requestApi(getDataList); |
| | | } |
| | | if (type == 'task') { |
| | | requestApi(getTaskList); |
| | | } |
| | | } |
| | | } |
| | | } |