|
|
@@ -1459,6 +1459,10 @@ const open = async () => {
|
|
|
wellName: item.wellName,
|
|
|
workloadDesign: item.workloadDesign
|
|
|
}));
|
|
|
+
|
|
|
+ // 使用专门的排序方法
|
|
|
+ sortPlatformWellDetails();
|
|
|
+
|
|
|
// 初始化备份数据
|
|
|
platformWellDetailsBackup.value = [...currentTask.value.platformWellDetails];
|
|
|
} else {
|
|
|
@@ -1743,7 +1747,12 @@ const handlePlatformWellChange = (value) => {
|
|
|
if (value === '1') {
|
|
|
// 切换到平台井模式,恢复之前保存的数据
|
|
|
if (platformWellDetailsBackup.value.length > 0) {
|
|
|
- currentTask.value.platformWellDetails = [...platformWellDetailsBackup.value];
|
|
|
+ // 恢复数据时进行排序
|
|
|
+ currentTask.value.platformWellDetails = [...platformWellDetailsBackup.value].sort((a, b) => {
|
|
|
+ if (a.taskId === currentTask.value.id) return -1;
|
|
|
+ if (b.taskId === currentTask.value.id) return 1;
|
|
|
+ return 0;
|
|
|
+ });
|
|
|
} else {
|
|
|
// 如果没有备份数据,初始化一行
|
|
|
addPlatformWellDetail();
|
|
|
@@ -1758,16 +1767,46 @@ const handlePlatformWellChange = (value) => {
|
|
|
|
|
|
// 添加平台井详情行
|
|
|
const addPlatformWellDetail = () => {
|
|
|
- currentTask.value.platformWellDetails.push({
|
|
|
+ const newDetail = {
|
|
|
taskId: '',
|
|
|
wellName: '',
|
|
|
workloadDesign: ''
|
|
|
- });
|
|
|
+ };
|
|
|
+
|
|
|
+ // 如果是当前任务对应的平台井详情,插入到第一位
|
|
|
+ /* if (currentTask.value.platformWell === '1') {
|
|
|
+ currentTask.value.platformWellDetails.unshift(newDetail);
|
|
|
+ } else {
|
|
|
+ currentTask.value.platformWellDetails.push(newDetail);
|
|
|
+ } */
|
|
|
+
|
|
|
+ // 将新记录添加到数组末尾,而不是开头
|
|
|
+ currentTask.value.platformWellDetails.push(newDetail);
|
|
|
+ // 添加后重新排序,确保当前任务对应的记录始终在第一行
|
|
|
+ sortPlatformWellDetails();
|
|
|
};
|
|
|
|
|
|
// 删除平台井详情行
|
|
|
const removePlatformWellDetail = (index: number) => {
|
|
|
currentTask.value.platformWellDetails.splice(index, 1);
|
|
|
+ // 删除后重新排序
|
|
|
+ sortPlatformWellDetails();
|
|
|
+};
|
|
|
+
|
|
|
+// 平台井详情排序方法
|
|
|
+const sortPlatformWellDetails = () => {
|
|
|
+ if (!currentTask.value.platformWellDetails || currentTask.value.platformWellDetails.length === 0) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+ currentTask.value.platformWellDetails.sort((a, b) => {
|
|
|
+ // 当前任务对应的记录排在最前面
|
|
|
+ if (a.taskId === currentTask.value.id) return -1;
|
|
|
+ if (b.taskId === currentTask.value.id) return 1;
|
|
|
+
|
|
|
+ // 其他记录保持原有顺序(新添加的在后)
|
|
|
+ return 0;
|
|
|
+ });
|
|
|
};
|
|
|
|
|
|
/** 重置表单 */
|