update
This commit is contained in:
@@ -146,11 +146,11 @@ const plTaskChildren = async () => {
|
||||
:columns="columns"
|
||||
class="flex-grow">
|
||||
<template v-slot:status_text="{record}">
|
||||
<TooltipTag v-if="record.status === 0" color="red" :content="record.check_remark">待上传素材
|
||||
<TooltipTag v-if="record.status === 0" color="cyan" :content="record.check_remark">待上传素材
|
||||
</TooltipTag>
|
||||
<TooltipTag v-if="record.status === 1" color="orangered" :content="record.check_remark">素材审核中
|
||||
</TooltipTag>
|
||||
<TooltipTag v-if="record.status === 2" color="orangered" :content="record.check_remark">
|
||||
<TooltipTag v-if="record.status === 2" color="red" :content="record.check_remark">
|
||||
重新上传素材
|
||||
</TooltipTag>
|
||||
<TooltipTag v-if="record.status === 3" color="gray" :content="record.check_remark">待领取
|
||||
|
||||
@@ -64,7 +64,7 @@ const success = async () => {
|
||||
<a-radio :value="1">是</a-radio>
|
||||
</a-radio-group>
|
||||
</a-form-item>
|
||||
<a-form-item label="需要回复的评论">
|
||||
<a-form-item label="需要回复的评论" v-if="item.comment.length !== 0">
|
||||
<x-select
|
||||
:disabled="form.is_reply===0"
|
||||
v-model:model-value="form.pid"
|
||||
|
||||
@@ -4,6 +4,8 @@ import XSelect from "../../../../../components/XSelect/index.vue";
|
||||
import XTimePicker from "../../../../../components/XTimePicker/XTimePicker.vue";
|
||||
import {dayjs} from "@arco-design/web-vue/es/_utils/date.js";
|
||||
import FastSetting from "../../../components/FastSetting.vue";
|
||||
import {useTemplateRef} from "vue";
|
||||
import {Message} from "@arco-design/web-vue";
|
||||
|
||||
const {form, index} = defineProps({
|
||||
form: {
|
||||
@@ -15,7 +17,22 @@ const {form, index} = defineProps({
|
||||
default: null
|
||||
}
|
||||
});
|
||||
const formRef = useTemplateRef('formRef');
|
||||
const po = defineModel('po');
|
||||
const rules = {
|
||||
start_time: [{
|
||||
required: true,
|
||||
message: '回填时间不完整',
|
||||
}],
|
||||
end_time: [{
|
||||
required: true,
|
||||
message: '回填时间不完整',
|
||||
}],
|
||||
content_id: [{
|
||||
required: true,
|
||||
message: '回填内容不能为空',
|
||||
}]
|
||||
}
|
||||
|
||||
function range(start, end) {
|
||||
const result = [];
|
||||
@@ -25,19 +42,35 @@ function range(start, end) {
|
||||
return result;
|
||||
}
|
||||
|
||||
const getDisabledTime = (date) => {
|
||||
const getDisabledTime = (date, type) => {
|
||||
return {
|
||||
disabledHours: () => range(0, dayjs(form.start_time).hour()),
|
||||
disabledMinutes: () => range(0, dayjs(form.start_time).add(1, 'minute').minute()),
|
||||
disabledHours: () => type === 'start' ? range(0, dayjs(form.start_time).hour()) : range(0, 0),
|
||||
disabledMinutes: () => type === 'start' ? range(0, dayjs(form.start_time).add(1, 'minute').minute()) : range(0, 0),
|
||||
}
|
||||
}
|
||||
|
||||
const validate = async () => {
|
||||
const res = await formRef.value.validate();
|
||||
if (res) {
|
||||
const firstKey = Object.keys(res)[0];
|
||||
Message.warning(res[firstKey].message);
|
||||
throw new Error(res[firstKey].message);
|
||||
}
|
||||
}
|
||||
|
||||
defineExpose({
|
||||
validate
|
||||
});
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div id="block">
|
||||
<a-form
|
||||
ref="formRef"
|
||||
:model="po"
|
||||
:rules="rules"
|
||||
:auto-label-width="true">
|
||||
<a-form-item label="回填时间">
|
||||
<a-form-item label="回填时间" field="end_time">
|
||||
<x-time-picker
|
||||
:disabledDate="(current) => dayjs(current).add(1, 'day').isBefore(dayjs(form.start_time))"
|
||||
:disabledTime="getDisabledTime"
|
||||
@@ -53,7 +86,7 @@ const getDisabledTime = (date) => {
|
||||
</FastSetting>
|
||||
</a-form-item>
|
||||
|
||||
<a-form-item label="回填内容">
|
||||
<a-form-item label="回填内容" field="content_id">
|
||||
<XSelect
|
||||
class="w-auto"
|
||||
:init="true"
|
||||
|
||||
@@ -74,7 +74,7 @@ const success = async () => {
|
||||
|
||||
<a-form-item label="特殊要求" field="special_text">
|
||||
<a-textarea
|
||||
:max-length="300"
|
||||
:max-length="299"
|
||||
placeholder="请输入特殊要求,如:请勿截图,必须下载原图再上传到抖音"
|
||||
v-model:model-value="form.special_text">
|
||||
</a-textarea>
|
||||
|
||||
@@ -12,6 +12,7 @@ const INDEX = ['一', '二', '三'];
|
||||
const emits = defineEmits(['success', 'prev']);
|
||||
const form = defineModel('form');
|
||||
const formRef = useTemplateRef('formRef');
|
||||
const BackfillRef = useTemplateRef('BackfillRef');
|
||||
const rules = {
|
||||
start_time: [{
|
||||
required: true,
|
||||
@@ -22,16 +23,6 @@ const rules = {
|
||||
message: '任务可接时段不完整',
|
||||
}],
|
||||
is_other: [],
|
||||
backfill: [{
|
||||
required: true,
|
||||
validator: (value, callback) => {
|
||||
for (const v of value) {
|
||||
if (!v.end_time || !v.start_time || !v.content_id) {
|
||||
callback('回填内容不完整');
|
||||
}
|
||||
}
|
||||
}
|
||||
}],
|
||||
}
|
||||
|
||||
if (form.value.backfill.length === 0) form.value.backfill.push({
|
||||
@@ -60,11 +51,14 @@ const addHT = () => {
|
||||
}
|
||||
|
||||
const success = async () => {
|
||||
formRef.value.validate().then((res) => {
|
||||
formRef.value.validate().then(async (res) => {
|
||||
if (res) {
|
||||
const firstKey = Object.keys(res)[0];
|
||||
Message.warning(res[firstKey].message);
|
||||
} else {
|
||||
for (const v of BackfillRef.value) {
|
||||
await v.validate();
|
||||
}
|
||||
emits('success', form.value);
|
||||
}
|
||||
});
|
||||
@@ -117,7 +111,8 @@ onMounted(() => {
|
||||
:key="item.id"
|
||||
:label="`第${INDEX[index]}次回填`">
|
||||
<div class="flex flex-col gap-[20px]">
|
||||
<Backfill :form="form" :index="index" v-model:po="form.backfill[index]"></Backfill>
|
||||
<Backfill ref="BackfillRef" :form="form" :index="index"
|
||||
v-model:po="form.backfill[index]"></Backfill>
|
||||
|
||||
<div class="flex gap-[8px]">
|
||||
<Preview
|
||||
|
||||
@@ -70,10 +70,10 @@ function range(start, end) {
|
||||
return result;
|
||||
}
|
||||
|
||||
const getDisabledTime = (date) => {
|
||||
const getDisabledTime = (date, type) => {
|
||||
return {
|
||||
disabledHours: () => range(0, dayjs(taskDetail.start_time).hour()),
|
||||
disabledMinutes: () => range(0, dayjs(taskDetail.start_time).add(1, 'minute').minute()),
|
||||
disabledHours: () => type === 'start' ? range(0, dayjs(taskDetail.start_time).hour()) : range(0, 0),
|
||||
disabledMinutes: () => type === 'start' ? range(0, dayjs(taskDetail.start_time).add(1, 'minute').minute()) : range(0, 0),
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user