From 25988ffefd8448c6ea770489b77c89a07d00190d Mon Sep 17 00:00:00 2001 From: zhouwx <1175765986@qq.com> Date: 星期五, 09 八月 2024 16:10:12 +0800 Subject: [PATCH] bug修改 --- src/views/safetyReview/projectManage/components/evaluatePlan.vue | 84 +++++++++++++++++++++++++++ src/views/safetyReview/projectSupplement/index.vue | 53 +++++++++++++++++ 2 files changed, 135 insertions(+), 2 deletions(-) diff --git a/src/views/safetyReview/projectManage/components/evaluatePlan.vue b/src/views/safetyReview/projectManage/components/evaluatePlan.vue index 378932d..0d42458 100644 --- a/src/views/safetyReview/projectManage/components/evaluatePlan.vue +++ b/src/views/safetyReview/projectManage/components/evaluatePlan.vue @@ -43,7 +43,7 @@ </el-row> <el-row> <el-col :span="18"> - <div style="display: flex;align-items: center">评价日程安排</div> + <div style="display: flex;align-items: center">评价日程安排<el-icon style="margin-left: 10px;margin-right: 4px"><InfoFilled /></el-icon><span style="font-size: 13px">不涉及的日程安排日期可不填</span></div> </el-col> </el-row> <el-table :data="state.formData.estimateSchedules" :border="true" style="margin: 20px 0"> @@ -316,7 +316,49 @@ } if(type === 'add'){ const {id, ...data} = JSON.parse(JSON.stringify(state.formData)) - console.log(data) + + const params = Object.assign({}, state.formData.estimateSchedules); + let i = 0 + + for (const key in params) { + if ((params[key].startDate == '' || params[key].startDate == null ) && (params[key].endDate == '' || params[key].endDate == null)) { + delete params[key].startDate; + delete params[key].endDate; + i++ + } + + } + console.log('data',params) + const finData = Object.entries(params).map(([key, value]) => ({ + ...value, + })); + if(i == finData.length){ + ElMessage.warning("请选择至少一个的日程安排日期"); + return; + } + try { + finData.forEach(item =>{ + // debugger + console.log(item.endDate,'item.endDate') + if(item.startDate && (item.startDate !='' || item.startDate !=null)){ + if(item.endDate =='' || item.endDate ==null){ + ElMessage.warning("请完善涉及的日程安排结束日期"); + throw new Error('Loop stopped') + } + } + if(item.endDate && (item.endDate !='' || item.endDate !=null)){ + if(item.startDate =='' || item.startDate ==null){ + ElMessage.warning("请完善涉及的日程安排开始日期"); + throw new Error('Loop stopped') + } + } + }) + }catch (e) { + throw new Error(e) + } + + data.estimateSchedules = finData + const res = await addRecord(data); if (res.code == 200) { ElMessage.success('保存成功') @@ -328,6 +370,44 @@ } }else if(type === 'clickEdit'){ const { ...data} = JSON.parse(JSON.stringify(state.formData)) + const params = Object.assign({}, state.formData.estimateSchedules); + let i = 0 + for (const key in params) { + if (params[key].startDate == '' && params[key].endDate == '') { + delete params[key].startDate; + delete params[key].endDate; + i++; + } + } + const finData = Object.entries(params).map(([key, value]) => ({ + ...value, + })); + if(i == finData.length){ + ElMessage.warning("请选择至少一个的日程安排日期"); + return; + } + try { + finData.forEach(item =>{ + // debugger + console.log(item.endDate,'item.endDate') + if(item.startDate && (item.startDate !='' || item.startDate !=null)){ + if(item.endDate =='' || item.endDate ==null){ + ElMessage.warning("请完善涉及的日程安排结束日期"); + throw new Error('Loop stopped') + } + } + if(item.endDate && (item.endDate !='' || item.endDate !=null)){ + if(item.startDate =='' || item.startDate ==null){ + ElMessage.warning("请完善涉及的日程安排开始日期"); + + throw new Error('Loop stopped') + } + } + }) + }catch (e) { + throw new Error(e) + } + data.estimateSchedules = finData const res = await editRecord(data); if (res.code == 200) { ElMessage.success('变更成功') diff --git a/src/views/safetyReview/projectSupplement/index.vue b/src/views/safetyReview/projectSupplement/index.vue index e73835b..b751f22 100644 --- a/src/views/safetyReview/projectSupplement/index.vue +++ b/src/views/safetyReview/projectSupplement/index.vue @@ -8,6 +8,26 @@ @click="openDialog('add',{})" >新增</el-button> <span style="font-size: 15px;color: #ed5565;margin-left: 15px">补录今年1-6月的历史项目</span> + <el-form :model="data.queryParams" ref="queryForm" :inline="true" label-width="68px" style="margin-top: 10px"> + <el-form-item label="项目名称"> + <el-input v-model="data.queryParams.name" placeholder="请输入项目名称"></el-input> + </el-form-item> + <el-form-item label="时间范围" prop="searchTime"> + <el-date-picker + v-model="searchTime" + type="daterange" + @change="changeTime" + range-separator="至" + start-placeholder="开始日期" + end-placeholder="结束日期" + value-format="YYYY-MM-DD" + /> + </el-form-item> + <el-form-item> + <el-button type="primary" icon="Search" @click="search">搜索</el-button> + <el-button icon="Refresh" @click="resetQuery">重置</el-button> + </el-form-item> + </el-form> </div> <!-- 表格数据 --> @@ -63,6 +83,12 @@ queryParams: { pageNum: 1, pageSize: 10, + name: '', + params:{ + startTime: '', + endTime: '' + } + }, total: 0, dataList: [] @@ -70,6 +96,7 @@ const { queryParams, total, dataList } = toRefs(data); +const searchTime = ref([]); onMounted(() => { getList(); }); @@ -109,6 +136,32 @@ const openDialog = (type, value) => { dRef.value.openDialog(type, value); } +const changeTime=(value)=>{ + if(!value){ + data.queryParams.params.endTime = "" + data.queryParams.params.startTime = "" + } +} +const search = () => { + if(searchTime.value && searchTime.value.length>0){ + data.queryParams.params.startTime = searchTime.value[0] +' 00:00:00' + data.queryParams.params.endTime = searchTime.value[1]+' 00:00:00' + } + getList() +} +const resetQuery = () => { + data.queryParams = { + pageNum: 1, + pageSize: 10, + name: '', + params:{ + startTime: '', + endTime: '' + } + } + searchTime.value = []; + getList(); +} const handleDelete = (val) => { ElMessageBox.confirm( -- Gitblit v1.9.2