修改任务
This commit is contained in:
@ -37,3 +37,9 @@ export const editTaskSchedulesTime = (id: string, params = {}) => {
|
|||||||
console.log('id', id);
|
console.log('id', id);
|
||||||
return Http.patch(`/v1/task-schedules/${id}/execution-time`, params);
|
return Http.patch(`/v1/task-schedules/${id}/execution-time`, params);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
export const getWorkDetail = (id: string) => {
|
||||||
|
console.log('id', id);
|
||||||
|
return Http.get(`/v1/works/${id}`);
|
||||||
|
};
|
||||||
@ -215,6 +215,8 @@ import RawMaterialDrawer from './raw-material-drawer.vue';
|
|||||||
import FinishedProductDrawer from './finished-product-drawer.vue';
|
import FinishedProductDrawer from './finished-product-drawer.vue';
|
||||||
import { message } from 'ant-design-vue';
|
import { message } from 'ant-design-vue';
|
||||||
import { getMediaAccountList } from '@/api/all/propertyMarketing';
|
import { getMediaAccountList } from '@/api/all/propertyMarketing';
|
||||||
|
// 导入任务详情API
|
||||||
|
import { getWorkDetail } from '@/api/all/assignment-management';
|
||||||
// 平台图标
|
// 平台图标
|
||||||
import iconDy from '@/assets/img/platform/icon-dy.png';
|
import iconDy from '@/assets/img/platform/icon-dy.png';
|
||||||
import iconXhs from '@/assets/img/platform/icon-xhs.png';
|
import iconXhs from '@/assets/img/platform/icon-xhs.png';
|
||||||
@ -388,14 +390,12 @@ const handleMaterialCancel = () => {
|
|||||||
|
|
||||||
// 处理成品库选择确认
|
// 处理成品库选择确认
|
||||||
const handleProductConfirm = (result) => {
|
const handleProductConfirm = (result) => {
|
||||||
console.log('handleProductConfirm', result);
|
|
||||||
selectedProducts.value = {
|
selectedProducts.value = {
|
||||||
keys: result.selectedKeys,
|
keys: result.selectedKeys,
|
||||||
data: result.selectedData,
|
data: result.selectedData,
|
||||||
text: result.choseText,
|
text: result.choseText,
|
||||||
images: result.choseImgArray,
|
images: result.choseImgArray,
|
||||||
};
|
};
|
||||||
|
|
||||||
// 如果是单选模式,确保只选择一个项目
|
// 如果是单选模式,确保只选择一个项目
|
||||||
if (result.selectedRows && result.selectedRows.length > 0) {
|
if (result.selectedRows && result.selectedRows.length > 0) {
|
||||||
hasChoseFinishedProducts.value = true;
|
hasChoseFinishedProducts.value = true;
|
||||||
@ -407,6 +407,7 @@ const handleProductConfirm = (result) => {
|
|||||||
text: '1个稿件',
|
text: '1个稿件',
|
||||||
images: [selectedProduct],
|
images: [selectedProduct],
|
||||||
};
|
};
|
||||||
|
fillTaskData(selectedProduct.id);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -488,58 +489,21 @@ const showDrawer = (accountInfo = null, selectedDate = null) => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
// 新增:编辑任务时的数据回填方法
|
// 新增:编辑任务时的数据回填方法
|
||||||
const fillTaskData = (taskData) => {
|
const fillTaskData = async (taskData_id) => {
|
||||||
// 设置账号信息
|
try {
|
||||||
if (taskData.media_account) {
|
const res = await getWorkDetail(taskData_id);
|
||||||
nextTick(() => {
|
if (res && res.code === 200) {
|
||||||
localQuery.value.accounts = [taskData.media_account.name];
|
// const fullTaskData = res.data;
|
||||||
localQuery.value.ids = [taskData.media_account.id];
|
// selectedProducts.value = {
|
||||||
});
|
// keys: [fullTaskData.id],
|
||||||
}
|
// data: [fullTaskData],
|
||||||
|
// text: fullTaskData.title || '1个稿件',
|
||||||
// 设置AI生成或成品库选择
|
// images: fullTaskData.files ? fullTaskData.files.filter((f) => f.type === 0) : [], // 图片文件
|
||||||
isActive.value = taskData.is_ai_generate ? 'ai' : 'chose';
|
// };
|
||||||
|
// console.log('获取任务详情成功:', selectedProducts.value);
|
||||||
// 设置任务描述(AI生成时)
|
}
|
||||||
if (taskData.is_ai_generate && taskData.ai_prompt) {
|
} catch (error) {
|
||||||
taskDescription.value = taskData.ai_prompt;
|
console.error('获取任务详情失败:', error);
|
||||||
}
|
|
||||||
|
|
||||||
// 设置发布时间
|
|
||||||
if (taskData.publish_type === 1 && taskData.execution_time) {
|
|
||||||
// 定时发布
|
|
||||||
publishType.value = 'timing';
|
|
||||||
const execTime = new Date(taskData.execution_time * 1000);
|
|
||||||
currentDate.value = execTime;
|
|
||||||
strValue.value = dayjs(execTime).format('HH:mm');
|
|
||||||
} else {
|
|
||||||
// 立即发布
|
|
||||||
publishType.value = 'immediate';
|
|
||||||
}
|
|
||||||
|
|
||||||
// 设置选中的素材(AI生成时)
|
|
||||||
if (taskData.is_ai_generate && taskData.raw_materials && taskData.raw_materials.length > 0) {
|
|
||||||
const materials = taskData.raw_materials;
|
|
||||||
selectedMaterials.value = {
|
|
||||||
keys: materials.map((m) => m.id),
|
|
||||||
data: materials,
|
|
||||||
text: '',
|
|
||||||
images: materials.filter((m) => m.type === 0), // 图片
|
|
||||||
texts: materials.filter((m) => m.type === 2), // 文本
|
|
||||||
};
|
|
||||||
hasChoseMaterial.value = materials.length > 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
// 设置选中的成品(成品库选择时)
|
|
||||||
if (!taskData.is_ai_generate && taskData.work) {
|
|
||||||
const work = taskData.work;
|
|
||||||
selectedProducts.value = {
|
|
||||||
keys: [work.id],
|
|
||||||
data: [work],
|
|
||||||
text: work.title || '1个稿件',
|
|
||||||
images: work.files ? work.files.filter((f) => f.type === 0) : [], // 图片文件
|
|
||||||
};
|
|
||||||
hasChoseFinishedProducts.value = true;
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@ -514,13 +514,15 @@ const handleTaskAction = async (action: string, task: any, ...args: any[]) => {
|
|||||||
const selectedDate = task.execution_time;
|
const selectedDate = task.execution_time;
|
||||||
const date = new Date(selectedDate);
|
const date = new Date(selectedDate);
|
||||||
|
|
||||||
// 显示抽屉
|
|
||||||
drawerPopupRef.value.showDrawer(accountInfo, date);
|
|
||||||
|
|
||||||
// 等待抽屉打开后再填充数据
|
// 等待抽屉打开后再填充数据
|
||||||
nextTick(() => {
|
nextTick(() => {
|
||||||
// 直接使用传入的task数据填充表单
|
console.log('修改任务');
|
||||||
drawerPopupRef.value.fillTaskData(task);
|
// 显示抽屉
|
||||||
|
drawerPopupRef.value.showDrawer(accountInfo, date);
|
||||||
|
// if (task.work && task.work.id) {
|
||||||
|
// console.log('修改任务', task, task.work, task.work.id);
|
||||||
|
// drawerPopupRef.value.fillTaskData(task.work.id);
|
||||||
|
// }
|
||||||
});
|
});
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user