修复分发数据回显问题
This commit is contained in:
@@ -2,12 +2,12 @@
|
|||||||
<!-- 我确认的 -->
|
<!-- 我确认的 -->
|
||||||
<div class="gl-page-content">
|
<div class="gl-page-content">
|
||||||
<demandTable
|
<demandTable
|
||||||
:row-config="{keyField:'uuid'}"
|
:row-config="{ keyField: 'uuid' }"
|
||||||
showCheckbox
|
showCheckbox
|
||||||
showIndex
|
showIndex
|
||||||
ref="tableRef"
|
ref="tableRef"
|
||||||
tableName="SIMULATION_TASK_DEMAND_CONFIRM"
|
tableName="SIMULATION_TASK_DEMAND_CONFIRM"
|
||||||
:params="{type:1}"
|
:params="{ type: 1 }"
|
||||||
:api="demandListApi"
|
:api="demandListApi"
|
||||||
exportFileName="我确认的需求"
|
exportFileName="我确认的需求"
|
||||||
>
|
>
|
||||||
@@ -23,51 +23,11 @@
|
|||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
</demandTable>
|
</demandTable>
|
||||||
<!-- <BaseTable
|
<batchSendTask
|
||||||
showCheckbox
|
v-if="bachSendVisible"
|
||||||
showIndex
|
:checkedList="checkedList"
|
||||||
tableName="SIMULATION_TASK_DEMAND_CONFIRM"
|
v-model:diaVisible="bachSendVisible"
|
||||||
:params="{type:1}"
|
></batchSendTask>
|
||||||
:api="demandListApi"
|
|
||||||
:searchLimitNum="3"
|
|
||||||
>
|
|
||||||
<template #leftOptions>
|
|
||||||
<el-button type="primary" @click="bachSendVisible = true">批量分发</el-button>
|
|
||||||
</template>
|
|
||||||
<template #demandStatus="{row}">
|
|
||||||
{{ DEMAND_STATUS_MAP[row.demandStatus as keyof typeof DEMAND_STATUS_MAP] }}
|
|
||||||
</template>
|
|
||||||
<template #achieveStatus="{row}">
|
|
||||||
{{ TASK_CALCULATE_STATUS_OBJ[row.achieveStatus as keyof typeof DEMAND_STATUS_MAP] || '未分析' }}
|
|
||||||
</template>
|
|
||||||
<template #progress="{ row }">
|
|
||||||
{{ row.progress }}%
|
|
||||||
</template>
|
|
||||||
<template #approvalStatus="{ row }">
|
|
||||||
{{ row.approvalStatus || '未审批' }}
|
|
||||||
</template>
|
|
||||||
<template #attachment="{ row }">
|
|
||||||
<el-link type="primary" @click="seeAttachments(row.id)">附件</el-link>
|
|
||||||
</template>
|
|
||||||
<template #projectId="{ row }">
|
|
||||||
{{ row.projectName }}
|
|
||||||
</template>
|
|
||||||
<template #phaseId="{ row }">
|
|
||||||
{{ row.phaseName }}
|
|
||||||
</template>
|
|
||||||
<template #demandType="{row}">
|
|
||||||
{{ DEMAND_TYPE.O[row.demandType] }}
|
|
||||||
</template>
|
|
||||||
<template #simType="{row}">
|
|
||||||
{{ disposeSimType(row.demandType,row.simType) }}
|
|
||||||
</template>
|
|
||||||
<template #tableActions="{ row }">
|
|
||||||
<div class="gl-table-actions">
|
|
||||||
<el-link type="primary" @click="sendTaskFun(row)">分发</el-link>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
</BaseTable> -->
|
|
||||||
<batchSendTask v-if="bachSendVisible" :checkedList="checkedList" v-model:diaVisible="bachSendVisible"></batchSendTask>
|
|
||||||
<Dialog
|
<Dialog
|
||||||
v-model="sendVisible"
|
v-model="sendVisible"
|
||||||
:loading="loadingInterface"
|
:loading="loadingInterface"
|
||||||
@@ -86,7 +46,7 @@
|
|||||||
v-model="sendForm.insertIndex"
|
v-model="sendForm.insertIndex"
|
||||||
:data="indexTreeData"
|
:data="indexTreeData"
|
||||||
node-key="uuid"
|
node-key="uuid"
|
||||||
:props="{label:'nodeName',value:'uuid'}"
|
:props="{ label: 'nodeName', value: 'uuid' }"
|
||||||
default-expand-all
|
default-expand-all
|
||||||
:render-after-expand="false"
|
:render-after-expand="false"
|
||||||
>
|
>
|
||||||
@@ -105,26 +65,40 @@
|
|||||||
<el-select
|
<el-select
|
||||||
class="loadcase-lib"
|
class="loadcase-lib"
|
||||||
:teleported="false"
|
:teleported="false"
|
||||||
v-model='sendForm.currentLoadcaseLib'
|
v-model="sendForm.currentLoadcaseLib"
|
||||||
:props="{label:'poolName', value:'value'}"
|
:props="{ label: 'poolName', value: 'value' }"
|
||||||
value-key="poolName"
|
value-key="poolName"
|
||||||
:fit-input-width="true"
|
:fit-input-width="true"
|
||||||
@change="changeLoadcaseLibFun"
|
@change="changeLoadcaseLibFun"
|
||||||
>
|
>
|
||||||
<el-option v-for="item in loadcaseLibList" :key="item.value" :label="item.poolName" :value="item" />
|
<el-option
|
||||||
|
v-for="item in loadcaseLibList"
|
||||||
|
:key="item.value"
|
||||||
|
:label="item.poolName"
|
||||||
|
:value="item"
|
||||||
|
/>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="版本:" prop="currentLoadcaseLibVersion" v-if="insertTaskMode === 'lib'">
|
<el-form-item
|
||||||
|
label="版本:"
|
||||||
|
prop="currentLoadcaseLibVersion"
|
||||||
|
v-if="insertTaskMode === 'lib'"
|
||||||
|
>
|
||||||
<el-select
|
<el-select
|
||||||
class="version"
|
class="version"
|
||||||
:teleported="false"
|
:teleported="false"
|
||||||
v-model='sendForm.currentLoadcaseLibVersion'
|
v-model="sendForm.currentLoadcaseLibVersion"
|
||||||
:props="{label:'poolVersion', value:'value'}"
|
:props="{ label: 'poolVersion', value: 'value' }"
|
||||||
value-key="poolVersion"
|
value-key="poolVersion"
|
||||||
:fit-input-width="true"
|
:fit-input-width="true"
|
||||||
@change="changeLoadcaseVersionFun"
|
@change="changeLoadcaseVersionFun"
|
||||||
>
|
>
|
||||||
<el-option v-for="item in loadcaseLibVersionList" :key="item.value" :label="item.poolVersion" :value="item" />
|
<el-option
|
||||||
|
v-for="item in loadcaseLibVersionList"
|
||||||
|
:key="item.value"
|
||||||
|
:label="item.poolVersion"
|
||||||
|
:value="item"
|
||||||
|
/>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<!-- {{ insertTaskMode }}
|
<!-- {{ insertTaskMode }}
|
||||||
@@ -142,7 +116,7 @@
|
|||||||
>
|
>
|
||||||
<template #default="{ item }">
|
<template #default="{ item }">
|
||||||
<div class="flex items-center">
|
<div class="flex items-center">
|
||||||
<img class="loadcase-img" src="@/assets/imgs/projectTree/loadcase.png" alt="">
|
<img class="loadcase-img" src="@/assets/imgs/projectTree/loadcase.png" alt="" />
|
||||||
<span>{{ item.label }}</span>
|
<span>{{ item.label }}</span>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@@ -170,10 +144,7 @@
|
|||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="仿真执行人:" prop="eMemberList">
|
<el-form-item label="仿真执行人:" prop="eMemberList">
|
||||||
<UserSelect
|
<UserSelect v-model="sendForm.eMemberList" :multiple="true" />
|
||||||
v-model="sendForm.eMemberList"
|
|
||||||
:multiple="true"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
<!-- <TableForm ref="tableFormRef" tableName="SIMULATION_TASK_DEMAND_CONFIRM" >
|
<!-- <TableForm ref="tableFormRef" tableName="SIMULATION_TASK_DEMAND_CONFIRM" >
|
||||||
@@ -185,7 +156,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
</Dialog>
|
</Dialog>
|
||||||
<attachments :demandId="demandInfo.id" v-model:visible="attachmentsVisible" ></attachments>
|
<attachments :demandId="demandInfo.id" v-model:visible="attachmentsVisible"></attachments>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -196,7 +167,11 @@ import { demandListApi, issuedTaskApi } from '@/api/project/demand';
|
|||||||
import attachments from '@/views/task/simulationTask/components/attachments.vue';
|
import attachments from '@/views/task/simulationTask/components/attachments.vue';
|
||||||
// import { CommonStore } from '@/stores/common';
|
// import { CommonStore } from '@/stores/common';
|
||||||
import UserSelect from '@/components/common/userSelect/index.vue';
|
import UserSelect from '@/components/common/userSelect/index.vue';
|
||||||
import { getAllTaskPoolApi, getTaskPoolLoadcasesApi, getTaskPoolVersionsApi } from '@/api/task/taskpool';
|
import {
|
||||||
|
getAllTaskPoolApi,
|
||||||
|
getTaskPoolLoadcasesApi,
|
||||||
|
getTaskPoolVersionsApi,
|
||||||
|
} from '@/api/task/taskpool';
|
||||||
import { ElMessage } from 'element-plus';
|
import { ElMessage } from 'element-plus';
|
||||||
import demandTable from '../components/demandTable.vue';
|
import demandTable from '../components/demandTable.vue';
|
||||||
import { getTaskTreeFun } from '../../projectDetail/components/projectApi';
|
import { getTaskTreeFun } from '../../projectDetail/components/projectApi';
|
||||||
@@ -242,7 +217,7 @@ const insertTaskMode = ref('lib');
|
|||||||
const loadcaseLibList = ref<any[]>([]);
|
const loadcaseLibList = ref<any[]>([]);
|
||||||
const loadcaseLibVersionList = ref();
|
const loadcaseLibVersionList = ref();
|
||||||
|
|
||||||
const changeLoadcaseLibFun = (lib:any) => {
|
const changeLoadcaseLibFun = (lib: any) => {
|
||||||
sendForm.currentLoadcaseLib = lib;
|
sendForm.currentLoadcaseLib = lib;
|
||||||
queryLoadcaseLibVersionsFun();
|
queryLoadcaseLibVersionsFun();
|
||||||
};
|
};
|
||||||
@@ -268,7 +243,7 @@ const queryLoadcaseLibVersionsFun = async () => {
|
|||||||
const req = {
|
const req = {
|
||||||
poolName: sendForm.currentLoadcaseLib.poolName,
|
poolName: sendForm.currentLoadcaseLib.poolName,
|
||||||
};
|
};
|
||||||
const res:any = await getTaskPoolVersionsApi(req);
|
const res: any = await getTaskPoolVersionsApi(req);
|
||||||
if (res.code === 200 && res.data && Array.isArray(res.data) && res.data.length > 0) {
|
if (res.code === 200 && res.data && Array.isArray(res.data) && res.data.length > 0) {
|
||||||
loadcaseLibVersionList.value = res.data;
|
loadcaseLibVersionList.value = res.data;
|
||||||
if (loadcaseLibVersionList.value.length > 0) {
|
if (loadcaseLibVersionList.value.length > 0) {
|
||||||
@@ -289,45 +264,31 @@ const getLoadcaseList = async () => {
|
|||||||
version: sendForm.currentLoadcaseLibVersion.poolVersion,
|
version: sendForm.currentLoadcaseLibVersion.poolVersion,
|
||||||
});
|
});
|
||||||
if (res.code === 200) {
|
if (res.code === 200) {
|
||||||
libTaskList.value = res.data.map((item:any) => {
|
libTaskList.value = res.data.map((item: any) => {
|
||||||
return {
|
return {
|
||||||
label: item.nodeName,
|
label: item.nodeName,
|
||||||
value: item,
|
value: item,
|
||||||
};
|
};
|
||||||
})
|
});
|
||||||
;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
const sendFormRef = ref();
|
const sendFormRef = ref();
|
||||||
|
|
||||||
const sendFormRules = reactive<any>({
|
const sendFormRules = reactive<any>({
|
||||||
insertIndex: [
|
insertIndex: [{ required: true, message: '请选择上层节点', trigger: 'change' }],
|
||||||
{ required: true, message: '请选择上层节点', trigger: 'change' },
|
currentLoadcaseLib: [{ required: true, message: '请选择工况库', trigger: 'change' }],
|
||||||
],
|
currentLoadcaseLibVersion: [{ required: true, message: '请选择工况库版本', trigger: 'change' }],
|
||||||
currentLoadcaseLib: [
|
chooseTaskList: [{ required: true, message: '请选择分发的任务', trigger: 'change' }],
|
||||||
{ required: true, message: '请选择工况库', trigger: 'change' },
|
eMemberList: [{ required: true, message: '请选择仿真执行人', trigger: 'change' }],
|
||||||
],
|
taskName: [{ required: true, message: '请填写任务名称', trigger: 'blur' }],
|
||||||
currentLoadcaseLibVersion: [
|
|
||||||
{ required: true, message: '请选择工况库版本', trigger: 'change' },
|
|
||||||
],
|
|
||||||
chooseTaskList: [
|
|
||||||
{ required: true, message: '请选择分发的任务', trigger: 'change' },
|
|
||||||
],
|
|
||||||
eMemberList: [
|
|
||||||
{ required: true, message: '请选择仿真执行人', trigger: 'change' },
|
|
||||||
],
|
|
||||||
taskName: [
|
|
||||||
{ required: true, message: '请填写任务名称', trigger: 'blur' },
|
|
||||||
],
|
|
||||||
});
|
});
|
||||||
|
|
||||||
const taskTreeRef = ref();
|
const taskTreeRef = ref();
|
||||||
|
|
||||||
const sendTaskConfirmFun = () => {
|
const sendTaskConfirmFun = () => {
|
||||||
console.log('1234', 1234);
|
console.log('1234', 1234);
|
||||||
sendFormRef.value.validate(async(valid: boolean) => {
|
sendFormRef.value.validate(async (valid: boolean) => {
|
||||||
if (valid) {
|
if (valid) {
|
||||||
// if (insertTaskMode.value === 'lib') {
|
// if (insertTaskMode.value === 'lib') {
|
||||||
// if (sendForm.chooseTaskList.value.length === 0) {
|
// if (sendForm.chooseTaskList.value.length === 0) {
|
||||||
@@ -339,14 +300,14 @@ const sendTaskConfirmFun = () => {
|
|||||||
console.log('taskTreeRef', taskTreeRef.value.getCurrentNode());
|
console.log('taskTreeRef', taskTreeRef.value.getCurrentNode());
|
||||||
console.log('sendForm', sendForm);
|
console.log('sendForm', sendForm);
|
||||||
const parentNodeInfo = taskTreeRef.value.getCurrentNode();
|
const parentNodeInfo = taskTreeRef.value.getCurrentNode();
|
||||||
const tagProperty:{[key: string]: any;} = {};
|
const tagProperty: { [key: string]: any } = {};
|
||||||
tagSortList.forEach((item:any) => {
|
tagSortList.forEach((item: any) => {
|
||||||
tagProperty[item] = parentNodeInfo[item] ? parentNodeInfo[item].split(',') : [];
|
tagProperty[item] = parentNodeInfo[item] ? parentNodeInfo[item].split(',') : [];
|
||||||
});
|
});
|
||||||
let params = {};
|
let params = {};
|
||||||
const pMemberListStr = getMemberListIds(sendForm.pMemberList);
|
const pMemberListStr = getMemberListIds(sendForm.pMemberList);
|
||||||
if (insertTaskMode.value === 'lib') {
|
if (insertTaskMode.value === 'lib') {
|
||||||
const addTaskList = sendForm.chooseTaskList.map((item:any) => {
|
const addTaskList = sendForm.chooseTaskList.map((item: any) => {
|
||||||
return {
|
return {
|
||||||
...item,
|
...item,
|
||||||
...tagProperty,
|
...tagProperty,
|
||||||
@@ -363,20 +324,22 @@ const sendTaskConfirmFun = () => {
|
|||||||
};
|
};
|
||||||
} else {
|
} else {
|
||||||
params = {
|
params = {
|
||||||
addNodeList: [{
|
addNodeList: [
|
||||||
nodeName: sendForm.taskName,
|
{
|
||||||
nodeId: parentNodeInfo.uuid,
|
nodeName: sendForm.taskName,
|
||||||
...tagProperty,
|
nodeId: parentNodeInfo.uuid,
|
||||||
beginTime: sendForm.beginTime,
|
...tagProperty,
|
||||||
endTime: sendForm.endTime,
|
beginTime: sendForm.beginTime,
|
||||||
pMemberList: pMemberListStr,
|
endTime: sendForm.endTime,
|
||||||
eMemberList: sendForm.eMemberList,
|
pMemberList: pMemberListStr,
|
||||||
}],
|
eMemberList: sendForm.eMemberList,
|
||||||
|
},
|
||||||
|
],
|
||||||
demandId: sendForm.uuid,
|
demandId: sendForm.uuid,
|
||||||
idMap: getIdMap(sendForm.projectId, sendForm.phaseId),
|
idMap: getIdMap(sendForm.projectId, sendForm.phaseId),
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
const res:any = await issuedTaskApi({ reqList: [params] });
|
const res: any = await issuedTaskApi({ reqList: [params] });
|
||||||
if (res.code === 200) {
|
if (res.code === 200) {
|
||||||
ElMessage.success('任务分发成功!');
|
ElMessage.success('任务分发成功!');
|
||||||
closeSendFun();
|
closeSendFun();
|
||||||
@@ -390,19 +353,35 @@ const sendTaskConfirmFun = () => {
|
|||||||
|
|
||||||
const indexTreeData = ref<any[]>([]);
|
const indexTreeData = ref<any[]>([]);
|
||||||
|
|
||||||
const sendTaskFun = async(row:any) => {
|
const sendTaskFun = async (row: any) => {
|
||||||
console.log('row', row);
|
console.log('row', row);
|
||||||
sendVisible.value = true;
|
sendVisible.value = true;
|
||||||
|
|
||||||
|
insertTaskMode.value = 'lib';
|
||||||
|
sendForm.insertIndex = '';
|
||||||
|
sendForm.currentLoadcaseLib = '';
|
||||||
|
sendForm.currentLoadcaseLibVersion = '';
|
||||||
|
sendForm.chooseTaskList = [];
|
||||||
|
sendForm.taskName = '';
|
||||||
|
sendForm.beginTime = '';
|
||||||
|
sendForm.endTime = '';
|
||||||
|
sendForm.eMemberList = '';
|
||||||
|
|
||||||
const taskTree = await getTaskTreeFun(row.projectId, row.phaseId);
|
const taskTree = await getTaskTreeFun(row.projectId, row.phaseId);
|
||||||
indexTreeData.value = filterTask(taskTree);
|
indexTreeData.value = filterTask(taskTree);
|
||||||
console.log('indexTreeData', indexTreeData.value);
|
console.log('indexTreeData', indexTreeData.value);
|
||||||
await queryPoolListFun();
|
await queryPoolListFun();
|
||||||
|
|
||||||
|
// for (const key in sendForm) {
|
||||||
|
// sendForm[key] = '';
|
||||||
|
// }
|
||||||
|
|
||||||
for (const key in row) {
|
for (const key in row) {
|
||||||
if (key !== 'eMemberList') {
|
if (key !== 'eMemberList') {
|
||||||
sendForm[key] = row[key];
|
sendForm[key] = row[key];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
sendForm.taskName = row.demandName;
|
sendForm.taskName = row.demandName;
|
||||||
sendForm.eMemberList = getMemberListIds(row.eMemberList);
|
sendForm.eMemberList = getMemberListIds(row.eMemberList);
|
||||||
console.log('sendForm', sendForm, row);
|
console.log('sendForm', sendForm, row);
|
||||||
@@ -416,15 +395,17 @@ const batchSendFun = () => {
|
|||||||
return ElMessage.warning('请勾选需要分发的需求!');
|
return ElMessage.warning('请勾选需要分发的需求!');
|
||||||
}
|
}
|
||||||
bachSendVisible.value = true;
|
bachSendVisible.value = true;
|
||||||
console.log('tableRef.value.tableRef.getCheckboxRecords()', tableRef.value.tableRef.tableRef.getCheckboxRecords());
|
console.log(
|
||||||
|
'tableRef.value.tableRef.getCheckboxRecords()',
|
||||||
|
tableRef.value.tableRef.tableRef.getCheckboxRecords()
|
||||||
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.loadcase-img {
|
.loadcase-img {
|
||||||
width: 18px;
|
width: 18px;
|
||||||
vertical-align: text-bottom;
|
vertical-align: text-bottom;
|
||||||
margin-right: 5px;
|
margin-right: 5px;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
Reference in New Issue
Block a user