From 2527a643d7ac70c7a4742b297972d46c8b1495a4 Mon Sep 17 00:00:00 2001
From: hcong <1050828145@qq.com>
Date: 星期二, 12 十一月 2024 10:50:09 +0800
Subject: [PATCH] 问题审核bug修改
---
src/views/fysp/task/components/CompDayTask.vue | 163 +++++++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 149 insertions(+), 14 deletions(-)
diff --git a/src/views/fysp/task/components/CompDayTask.vue b/src/views/fysp/task/components/CompDayTask.vue
index 9617c22..15a2797 100644
--- a/src/views/fysp/task/components/CompDayTask.vue
+++ b/src/views/fysp/task/components/CompDayTask.vue
@@ -1,35 +1,97 @@
<template>
- <el-row justify="space-between">
- <el-text>鍗曟棩璁″垝</el-text>
- <el-button type="success" size="small" @click="editTask">鏂板</el-button>
+ <el-row gutter="20">
+ <el-col :span="16">
+ <div>
+ <el-text>鐩戠鍦烘櫙</el-text>
+ </div>
+ <el-divider />
+ <CompSubTaskSelect
+ :data="seletedSceneList"
+ :dayTask="dayTask"
+ @delete="deleteScene"
+ @submit="createSubtasks"
+ ></CompSubTaskSelect>
+ <div>
+ <!-- <el-scrollbar height="50vh"> -->
+ <CompMonitorObj :data="curMonitorObjList" height="50vh">
+ <template #default="{ item }">
+ <el-button
+ v-if="item.select"
+ size="small"
+ type="info"
+ plain
+ disabled
+ icon="select"
+ >閫夋嫨</el-button
+ >
+ <el-button
+ v-else
+ size="small"
+ type="primary"
+ plain
+ @click="selectScene(item)"
+ >閫夋嫨</el-button
+ >
+ </template>
+ </CompMonitorObj>
+ <!-- </el-scrollbar> -->
+ </div>
+ </el-col>
+ <el-col :span="8">
+ <CompSubTaskList
+ v-model="curSubTaskList"
+ :height="height"
+ @submit="deleteSubtasks"
+ ></CompSubTaskList>
+ </el-col>
</el-row>
- <el-divider />
- <ItemSubTask v-for="stask in curSubTaskList" :key="stask.guid" :item="stask">
- <template #default="{ item }">
- <el-button type="danger" size="small" @click="editTask">绉婚櫎</el-button>
- </template>
- </ItemSubTask>
</template>
<script setup>
import { ref, watch, onMounted } from 'vue';
+import { useCloned } from '@vueuse/core';
+import { useRoute, useRouter } from 'vue-router';
+import { ElMessage, ElNotification, ElMessageBox } from 'element-plus';
import taskApi from '@/api/fysp/taskApi';
+import subtaskApi from '@/api/fysp/subtaskApi';
+import TaskProxy from '../TaskProxy';
+
+import CompMonitorObj from './CompMonitorObj.vue';
+import CompSubTaskSelect from './CompSubTaskSelect.vue';
+import CompSubTaskList from './CompSubTaskList.vue';
+import dayjs from 'dayjs';
+
+const route = useRoute();
const props = defineProps({
// 鏃ヤ换鍔�
- dayTask: Object
+ dayTask: Object,
+ mObjList: Array
});
+const emit = defineEmits(['submit'])
+
+/*************************** 鏁版嵁鍒濆鍖� ************************************/
// 宸℃煡瀛愪换鍔¢泦鍚�
+const curMonitorObjList = ref([]);
const curSubTaskList = ref([]);
+const height = ref('70vh');
// 鐩戝惉鏃ヤ换鍔″彉鍖�
watch(
() => props.dayTask,
+ (nV) => {
+ onDayTaskChange(nV);
+ },
+ { immediate: true }
+);
+
+// 鐩戝惉鐩戠鍦烘櫙鍙樺寲
+watch(
+ () => props.mObjList,
(nV, oV) => {
- // if (nV != oV) {
- // onDayTaskChange(nV)
- // }
- onDayTaskChange(nV)
+ if (nV != oV) {
+ curMonitorObjList.value = useCloned(nV).cloned.value;
+ }
},
{ immediate: true }
);
@@ -49,5 +111,78 @@
curSubTaskList.value = res;
});
}
+
+/*************************** 娣诲姞瀛愪换鍔� ************************************/
+
+// 鎵�閫夊満鏅�
+const seletedSceneList = ref([]);
+// 閫夋嫨浠诲姟鍦烘櫙
+function selectScene(item) {
+ item.select = true;
+ seletedSceneList.value.push(item);
+}
+// 绉婚櫎浠诲姟鍦烘櫙
+function deleteScene(item) {
+ item.select = false;
+ const index = seletedSceneList.value.indexOf(item);
+ seletedSceneList.value.splice(index, 1);
+}
+
+function createSubtasks(executors) {
+ const dt = props.dayTask;
+ const subtasks = seletedSceneList.value.map((_) => {
+ const s = _.scene;
+ return {
+ // 涓婚敭鐢辨湇鍔$鍒涘缓
+ stguid: undefined,
+ tguid: dt.tsGuid,
+ tsguid: dt.guid,
+ name: `${s.name}宸℃煡`,
+ typeno: 1,
+ type: '宸℃煡',
+ provincecode: s.provincecode,
+ provincename: s.provincename,
+ citycode: s.citycode,
+ cityname: s.cityname,
+ districtcode: s.districtcode,
+ districtname: s.districtname,
+ scensename: s.name,
+ scenseid: s.guid,
+ scenseaddress: s.location,
+ planstarttime: dt.date,
+ planendtime: dayjs(dt.date).endOf('day').set('millisecond', 0).toDate(),
+ deployerguid: 'rAR0A4gJdlOZEqZs',
+ deployerusername: 'ccheck',
+ deployerrealname: '鏁存敼瀹℃牳',
+ executorguids: executors.ids,
+ executorusernames: executors.uName,
+ executorrealtimes: executors.rName,
+ status: '鏈墽琛�',
+ remark: undefined
+ };
+ });
+
+ // 鏇存柊鍦烘櫙鐩戠娆℃暟
+ seletedSceneList.value.forEach((s) => {
+ s.extension1 = s.extension1 ? parseInt(s.extension1) + 1 + '' : '1';
+ });
+ taskApi.updateMonitorObject(seletedSceneList.value).then((res) => {
+ if (res > 0) {
+ subtaskApi.putSubtasks(subtasks).then((res) => {
+ seletedSceneList.value = [];
+ fetchSubTask(props.dayTask.guid);
+ ElMessage({
+ message: '宸℃煡浠诲姟娣诲姞鎴愬姛',
+ type: 'success'
+ });
+ emit('submit')
+ });
+ }
+ });
+}
+
+function deleteSubtasks() {
+ emit('submit')
+}
</script>
<style scoped></style>
--
Gitblit v1.9.3