|
@@ -4,111 +4,146 @@
|
|
|
<template #detail>
|
|
<template #detail>
|
|
|
<a-form ref="formRef" class="antd-modal-form" :labelCol="labelCol" :wrapperCol="wrapperCol" name="SppbVideoForm">
|
|
<a-form ref="formRef" class="antd-modal-form" :labelCol="labelCol" :wrapperCol="wrapperCol" name="SppbVideoForm">
|
|
|
<a-row>
|
|
<a-row>
|
|
|
- <a-col :span="24">
|
|
|
|
|
- <a-form-item id="SppbVideoForm-title" :labelCol="{ xs: { span: 24 }, sm: { span: 3 } }" :wrapperCol="{ xs: { span: 24 }, sm: { span: 20 } }" label="视频标题" name="title" v-bind="validateInfos.title">
|
|
|
|
|
- <a-input v-model:value="formData.title" placeholder="请输入视频标题" allow-clear ></a-input>
|
|
|
|
|
- </a-form-item>
|
|
|
|
|
- </a-col>
|
|
|
|
|
- <a-col :span="12">
|
|
|
|
|
- <a-form-item label="视频封面" v-bind="validateInfos.cover" id="SppbVideoForm-cover" name="cover">
|
|
|
|
|
- <JImageUpload v-model:value="formData.cover" :fileMax="1" bizPath="cover" :disabled="disabled" />
|
|
|
|
|
- </a-form-item>
|
|
|
|
|
- </a-col>
|
|
|
|
|
- <a-col v-if="disabled && videoUrl" :span="24">
|
|
|
|
|
- <a-form-item id="SppbVideoForm-videoFile-detail" :labelCol="{ xs: { span: 24 }, sm: { span: 3 } }" :wrapperCol="{ xs: { span: 24 }, sm: { span: 20 } }" label="视频文件" name="videoFile">
|
|
|
|
|
- <video :src="videoUrl" controls preload="metadata" style="width: 70%; max-height: 500px; border-radius: 8px; background: #000;" />
|
|
|
|
|
- </a-form-item>
|
|
|
|
|
- </a-col>
|
|
|
|
|
- <a-col v-else :span="12">
|
|
|
|
|
- <a-form-item label="视频文件" v-bind="validateInfos.videoFile" id="SppbVideoForm-videoFile" name="videoFile">
|
|
|
|
|
- <JUpload v-model:value="formData.videoFile" :maxCount="1" :multiple="false" bizPath="video" :disabled="disabled" :beforeUpload="beforeVideoUpload" accept="video/*" />
|
|
|
|
|
- </a-form-item>
|
|
|
|
|
- </a-col>
|
|
|
|
|
- <a-col :span="12">
|
|
|
|
|
- <a-form-item label="视频格式" v-bind="validateInfos.format" id="SppbVideoForm-format" name="format">
|
|
|
|
|
- <a-input v-model:value="formData.format" placeholder="请输入视频格式" allow-clear ></a-input>
|
|
|
|
|
- </a-form-item>
|
|
|
|
|
- </a-col>
|
|
|
|
|
- <a-col :span="12">
|
|
|
|
|
- <a-form-item label="视频文件大小" v-bind="validateInfos.fileSize" id="SppbVideoForm-fileSize" name="fileSize">
|
|
|
|
|
- <a-input v-model:value="formData.fileSize" placeholder="请输入视频文件大小" allow-clear ></a-input>
|
|
|
|
|
- </a-form-item>
|
|
|
|
|
- </a-col>
|
|
|
|
|
- <a-col :span="12">
|
|
|
|
|
- <a-form-item label="视频时长" v-bind="validateInfos.duration" id="SppbVideoForm-duration" name="duration">
|
|
|
|
|
- <a-input v-model:value="formData.duration" placeholder="请输入视频时长" allow-clear ></a-input>
|
|
|
|
|
- </a-form-item>
|
|
|
|
|
- </a-col>
|
|
|
|
|
- <a-col :span="12">
|
|
|
|
|
- <a-form-item label="关联业务ID" v-bind="validateInfos.dataId" id="SppbVideoForm-dataId" name="dataId">
|
|
|
|
|
- <a-input v-model:value="formData.dataId" placeholder="请输入关联业务ID" allow-clear ></a-input>
|
|
|
|
|
- </a-form-item>
|
|
|
|
|
- </a-col>
|
|
|
|
|
- <a-col :span="12">
|
|
|
|
|
- <a-form-item label="关联业务名称" v-bind="validateInfos.dataName" id="SppbVideoForm-dataName" name="dataName">
|
|
|
|
|
- <a-input v-model:value="formData.dataName" placeholder="请输入关联业务名称" allow-clear ></a-input>
|
|
|
|
|
- </a-form-item>
|
|
|
|
|
- </a-col>
|
|
|
|
|
- <a-col :span="12">
|
|
|
|
|
- <a-form-item label="操作步骤摘要" v-bind="validateInfos.stepSummary" id="SppbVideoForm-stepSummary" name="stepSummary">
|
|
|
|
|
- <a-input v-model:value="formData.stepSummary" placeholder="请输入操作步骤摘要" allow-clear ></a-input>
|
|
|
|
|
- </a-form-item>
|
|
|
|
|
- </a-col>
|
|
|
|
|
- <a-col :span="12">
|
|
|
|
|
- <a-form-item label="视频内容描述" v-bind="validateInfos.contentDesc" id="SppbVideoForm-contentDesc" name="contentDesc">
|
|
|
|
|
- <a-input v-model:value="formData.contentDesc" placeholder="请输入视频内容描述" allow-clear ></a-input>
|
|
|
|
|
- </a-form-item>
|
|
|
|
|
- </a-col>
|
|
|
|
|
- <a-col :span="12">
|
|
|
|
|
- <a-form-item label="录制时间" v-bind="validateInfos.recordingTime" id="SppbVideoForm-recordingTime" name="recordingTime">
|
|
|
|
|
- <a-date-picker placeholder="请选择录制时间" v-model:value="formData.recordingTime" showTime value-format="YYYY-MM-DD HH:mm:ss" style="width: 100%" allow-clear />
|
|
|
|
|
- </a-form-item>
|
|
|
|
|
- </a-col>
|
|
|
|
|
- <a-col :span="12">
|
|
|
|
|
- <a-form-item label="视频内容更新时间" v-bind="validateInfos.videoUpdateTime" id="SppbVideoForm-videoUpdateTime" name="videoUpdateTime">
|
|
|
|
|
- <a-date-picker placeholder="请选择视频内容更新时间" v-model:value="formData.videoUpdateTime" showTime value-format="YYYY-MM-DD HH:mm:ss" style="width: 100%" allow-clear />
|
|
|
|
|
- </a-form-item>
|
|
|
|
|
- </a-col>
|
|
|
|
|
- <a-col :span="12">
|
|
|
|
|
- <a-form-item label="视频状态" v-bind="validateInfos.state" id="SppbVideoForm-state" name="state">
|
|
|
|
|
- <a-input-number v-model:value="formData.state" placeholder="请输入视频状态" style="width: 100%" />
|
|
|
|
|
- </a-form-item>
|
|
|
|
|
- </a-col>
|
|
|
|
|
- <a-col :span="12">
|
|
|
|
|
- <a-form-item label="业务分类" v-bind="validateInfos.businessCategory" id="SppbVideoForm-businessCategory" name="businessCategory">
|
|
|
|
|
- <a-input-number v-model:value="formData.businessCategory" placeholder="请输入业务分类" style="width: 100%" />
|
|
|
|
|
- </a-form-item>
|
|
|
|
|
- </a-col>
|
|
|
|
|
- <a-col :span="12">
|
|
|
|
|
- <a-form-item label="关键词" v-bind="validateInfos.keyword" id="SppbVideoForm-keyword" name="keyword">
|
|
|
|
|
- <a-input v-model:value="formData.keyword" placeholder="请输入关键词" allow-clear ></a-input>
|
|
|
|
|
- </a-form-item>
|
|
|
|
|
- </a-col>
|
|
|
|
|
- <a-col :span="12">
|
|
|
|
|
- <a-form-item label="适用人群" v-bind="validateInfos.targetAudience" id="SppbVideoForm-targetAudience" name="targetAudience">
|
|
|
|
|
- <a-input v-model:value="formData.targetAudience" placeholder="请输入适用人群" allow-clear ></a-input>
|
|
|
|
|
- </a-form-item>
|
|
|
|
|
- </a-col>
|
|
|
|
|
-<!-- <a-col :span="12">-->
|
|
|
|
|
-<!-- <a-form-item label="播放次数" v-bind="validateInfos.playCount" id="SppbVideoForm-playCount" name="playCount">-->
|
|
|
|
|
-<!-- <a-input-number v-model:value="formData.playCount" placeholder="请输入播放次数" style="width: 100%" />-->
|
|
|
|
|
-<!-- </a-form-item>-->
|
|
|
|
|
-<!-- </a-col>-->
|
|
|
|
|
-<!-- <a-col :span="12">-->
|
|
|
|
|
-<!-- <a-form-item label="收藏次数" v-bind="validateInfos.favoriteCount" id="SppbVideoForm-favoriteCount" name="favoriteCount">-->
|
|
|
|
|
-<!-- <a-input-number v-model:value="formData.favoriteCount" placeholder="请输入收藏次数" style="width: 100%" />-->
|
|
|
|
|
-<!-- </a-form-item>-->
|
|
|
|
|
-<!-- </a-col>-->
|
|
|
|
|
-<!-- <a-col :span="12">-->
|
|
|
|
|
-<!-- <a-form-item label="播放完成率" v-bind="validateInfos.playCompletionRate" id="SppbVideoForm-playCompletionRate" name="playCompletionRate">-->
|
|
|
|
|
-<!-- <a-input v-model:value="formData.playCompletionRate" placeholder="请输入播放完成率" allow-clear ></a-input>-->
|
|
|
|
|
-<!-- </a-form-item>-->
|
|
|
|
|
-<!-- </a-col>-->
|
|
|
|
|
- <a-col :span="12">
|
|
|
|
|
- <a-form-item label="备注说明" v-bind="validateInfos.remark" id="SppbVideoForm-remark" name="remark">
|
|
|
|
|
- <a-input v-model:value="formData.remark" placeholder="请输入备注说明" allow-clear ></a-input>
|
|
|
|
|
- </a-form-item>
|
|
|
|
|
- </a-col>
|
|
|
|
|
|
|
+ <a-col :span="24">
|
|
|
|
|
+ <a-form-item
|
|
|
|
|
+ id="SppbVideoForm-title"
|
|
|
|
|
+ :labelCol="{ xs: { span: 24 }, sm: { span: 3 } }"
|
|
|
|
|
+ :wrapperCol="{ xs: { span: 24 }, sm: { span: 20 } }"
|
|
|
|
|
+ label="视频标题"
|
|
|
|
|
+ name="title"
|
|
|
|
|
+ v-bind="validateInfos.title"
|
|
|
|
|
+ >
|
|
|
|
|
+ <a-input v-model:value="formData.title" allow-clear placeholder="请输入视频标题"></a-input>
|
|
|
|
|
+ </a-form-item>
|
|
|
|
|
+ </a-col>
|
|
|
|
|
+ <a-col :span="12">
|
|
|
|
|
+ <a-form-item id="SppbVideoForm-cover" label="视频封面" name="cover" v-bind="validateInfos.cover">
|
|
|
|
|
+ <JImageUpload v-model:value="formData.cover" :disabled="disabled" :fileMax="1" bizPath="cover" />
|
|
|
|
|
+ </a-form-item>
|
|
|
|
|
+ </a-col>
|
|
|
|
|
+ <a-col v-if="disabled && videoUrl" :span="24">
|
|
|
|
|
+ <a-form-item
|
|
|
|
|
+ id="SppbVideoForm-videoFile-detail"
|
|
|
|
|
+ :labelCol="{ xs: { span: 24 }, sm: { span: 3 } }"
|
|
|
|
|
+ :wrapperCol="{ xs: { span: 24 }, sm: { span: 20 } }"
|
|
|
|
|
+ label="视频文件"
|
|
|
|
|
+ name="videoFile"
|
|
|
|
|
+ >
|
|
|
|
|
+ <video :src="videoUrl" controls preload="metadata" style="width: 70%; max-height: 500px; border-radius: 8px; background: #000" />
|
|
|
|
|
+ </a-form-item>
|
|
|
|
|
+ </a-col>
|
|
|
|
|
+ <a-col v-else :span="12">
|
|
|
|
|
+ <a-form-item id="SppbVideoForm-videoFile" label="视频文件" name="videoFile" v-bind="validateInfos.videoFile">
|
|
|
|
|
+ <JUpload
|
|
|
|
|
+ v-model:value="formData.videoFile"
|
|
|
|
|
+ :beforeUpload="beforeVideoUpload"
|
|
|
|
|
+ :disabled="disabled"
|
|
|
|
|
+ :maxCount="1"
|
|
|
|
|
+ :multiple="false"
|
|
|
|
|
+ accept="video/*"
|
|
|
|
|
+ bizPath="video"
|
|
|
|
|
+ />
|
|
|
|
|
+ </a-form-item>
|
|
|
|
|
+ </a-col>
|
|
|
|
|
+ <a-col :span="12">
|
|
|
|
|
+ <a-form-item id="SppbVideoForm-format" label="视频格式" name="format" v-bind="validateInfos.format">
|
|
|
|
|
+ <a-input v-model:value="formData.format" allow-clear placeholder="请输入视频格式"></a-input>
|
|
|
|
|
+ </a-form-item>
|
|
|
|
|
+ </a-col>
|
|
|
|
|
+ <a-col :span="12">
|
|
|
|
|
+ <a-form-item id="SppbVideoForm-fileSize" label="视频文件大小" name="fileSize" v-bind="validateInfos.fileSize">
|
|
|
|
|
+ <a-input v-model:value="formData.fileSize" allow-clear placeholder="请输入视频文件大小"></a-input>
|
|
|
|
|
+ </a-form-item>
|
|
|
|
|
+ </a-col>
|
|
|
|
|
+ <a-col :span="12">
|
|
|
|
|
+ <a-form-item id="SppbVideoForm-duration" label="视频时长" name="duration" v-bind="validateInfos.duration">
|
|
|
|
|
+ <a-input v-model:value="formData.duration" allow-clear placeholder="请输入视频时长"></a-input>
|
|
|
|
|
+ </a-form-item>
|
|
|
|
|
+ </a-col>
|
|
|
|
|
+ <a-col :span="12">
|
|
|
|
|
+ <a-form-item id="SppbVideoForm-dataId" label="关联业务ID" name="dataId" v-bind="validateInfos.dataId">
|
|
|
|
|
+ <a-input v-model:value="formData.dataId" allow-clear placeholder="请输入关联业务ID"></a-input>
|
|
|
|
|
+ </a-form-item>
|
|
|
|
|
+ </a-col>
|
|
|
|
|
+ <a-col :span="12">
|
|
|
|
|
+ <a-form-item id="SppbVideoForm-dataName" label="关联业务名称" name="dataName" v-bind="validateInfos.dataName">
|
|
|
|
|
+ <a-input v-model:value="formData.dataName" allow-clear placeholder="请输入关联业务名称"></a-input>
|
|
|
|
|
+ </a-form-item>
|
|
|
|
|
+ </a-col>
|
|
|
|
|
+ <a-col :span="12">
|
|
|
|
|
+ <a-form-item id="SppbVideoForm-stepSummary" label="操作步骤摘要" name="stepSummary" v-bind="validateInfos.stepSummary">
|
|
|
|
|
+ <a-input v-model:value="formData.stepSummary" allow-clear placeholder="请输入操作步骤摘要"></a-input>
|
|
|
|
|
+ </a-form-item>
|
|
|
|
|
+ </a-col>
|
|
|
|
|
+ <a-col :span="12">
|
|
|
|
|
+ <a-form-item id="SppbVideoForm-contentDesc" label="视频内容描述" name="contentDesc" v-bind="validateInfos.contentDesc">
|
|
|
|
|
+ <a-input v-model:value="formData.contentDesc" allow-clear placeholder="请输入视频内容描述"></a-input>
|
|
|
|
|
+ </a-form-item>
|
|
|
|
|
+ </a-col>
|
|
|
|
|
+ <a-col :span="12">
|
|
|
|
|
+ <a-form-item id="SppbVideoForm-recordingTime" label="录制时间" name="recordingTime" v-bind="validateInfos.recordingTime">
|
|
|
|
|
+ <a-date-picker
|
|
|
|
|
+ v-model:value="formData.recordingTime"
|
|
|
|
|
+ allow-clear
|
|
|
|
|
+ placeholder="请选择录制时间"
|
|
|
|
|
+ showTime
|
|
|
|
|
+ style="width: 100%"
|
|
|
|
|
+ value-format="YYYY-MM-DD HH:mm:ss"
|
|
|
|
|
+ />
|
|
|
|
|
+ </a-form-item>
|
|
|
|
|
+ </a-col>
|
|
|
|
|
+ <a-col :span="12">
|
|
|
|
|
+ <a-form-item id="SppbVideoForm-videoUpdateTime" label="视频内容更新时间" name="videoUpdateTime" v-bind="validateInfos.videoUpdateTime">
|
|
|
|
|
+ <a-date-picker
|
|
|
|
|
+ v-model:value="formData.videoUpdateTime"
|
|
|
|
|
+ allow-clear
|
|
|
|
|
+ placeholder="请选择视频内容更新时间"
|
|
|
|
|
+ showTime
|
|
|
|
|
+ style="width: 100%"
|
|
|
|
|
+ value-format="YYYY-MM-DD HH:mm:ss"
|
|
|
|
|
+ />
|
|
|
|
|
+ </a-form-item>
|
|
|
|
|
+ </a-col>
|
|
|
|
|
+ <a-col :span="12">
|
|
|
|
|
+ <a-form-item id="SppbVideoForm-state" label="视频状态" name="state" v-bind="validateInfos.state">
|
|
|
|
|
+ <a-input-number v-model:value="formData.state" placeholder="请输入视频状态" style="width: 100%" />
|
|
|
|
|
+ </a-form-item>
|
|
|
|
|
+ </a-col>
|
|
|
|
|
+ <a-col :span="12">
|
|
|
|
|
+ <a-form-item id="SppbVideoForm-businessCategory" label="业务分类" name="businessCategory" v-bind="validateInfos.businessCategory">
|
|
|
|
|
+ <a-input-number v-model:value="formData.businessCategory" placeholder="请输入业务分类" style="width: 100%" />
|
|
|
|
|
+ </a-form-item>
|
|
|
|
|
+ </a-col>
|
|
|
|
|
+ <a-col :span="12">
|
|
|
|
|
+ <a-form-item id="SppbVideoForm-keyword" label="关键词" name="keyword" v-bind="validateInfos.keyword">
|
|
|
|
|
+ <a-input v-model:value="formData.keyword" allow-clear placeholder="请输入关键词"></a-input>
|
|
|
|
|
+ </a-form-item>
|
|
|
|
|
+ </a-col>
|
|
|
|
|
+ <a-col :span="12">
|
|
|
|
|
+ <a-form-item id="SppbVideoForm-targetAudience" label="适用人群" name="targetAudience" v-bind="validateInfos.targetAudience">
|
|
|
|
|
+ <a-input v-model:value="formData.targetAudience" allow-clear placeholder="请输入适用人群"></a-input>
|
|
|
|
|
+ </a-form-item>
|
|
|
|
|
+ </a-col>
|
|
|
|
|
+ <!-- <a-col :span="12">-->
|
|
|
|
|
+ <!-- <a-form-item label="播放次数" v-bind="validateInfos.playCount" id="SppbVideoForm-playCount" name="playCount">-->
|
|
|
|
|
+ <!-- <a-input-number v-model:value="formData.playCount" placeholder="请输入播放次数" style="width: 100%" />-->
|
|
|
|
|
+ <!-- </a-form-item>-->
|
|
|
|
|
+ <!-- </a-col>-->
|
|
|
|
|
+ <!-- <a-col :span="12">-->
|
|
|
|
|
+ <!-- <a-form-item label="收藏次数" v-bind="validateInfos.favoriteCount" id="SppbVideoForm-favoriteCount" name="favoriteCount">-->
|
|
|
|
|
+ <!-- <a-input-number v-model:value="formData.favoriteCount" placeholder="请输入收藏次数" style="width: 100%" />-->
|
|
|
|
|
+ <!-- </a-form-item>-->
|
|
|
|
|
+ <!-- </a-col>-->
|
|
|
|
|
+ <!-- <a-col :span="12">-->
|
|
|
|
|
+ <!-- <a-form-item label="播放完成率" v-bind="validateInfos.playCompletionRate" id="SppbVideoForm-playCompletionRate" name="playCompletionRate">-->
|
|
|
|
|
+ <!-- <a-input v-model:value="formData.playCompletionRate" placeholder="请输入播放完成率" allow-clear ></a-input>-->
|
|
|
|
|
+ <!-- </a-form-item>-->
|
|
|
|
|
+ <!-- </a-col>-->
|
|
|
|
|
+ <a-col :span="12">
|
|
|
|
|
+ <a-form-item id="SppbVideoForm-remark" label="备注说明" name="remark" v-bind="validateInfos.remark">
|
|
|
|
|
+ <a-input v-model:value="formData.remark" allow-clear placeholder="请输入备注说明"></a-input>
|
|
|
|
|
+ </a-form-item>
|
|
|
|
|
+ </a-col>
|
|
|
</a-row>
|
|
</a-row>
|
|
|
</a-form>
|
|
</a-form>
|
|
|
</template>
|
|
</template>
|
|
@@ -117,46 +152,46 @@
|
|
|
</template>
|
|
</template>
|
|
|
|
|
|
|
|
<script lang="ts" setup>
|
|
<script lang="ts" setup>
|
|
|
-import { computed, defineExpose, defineProps, nextTick, reactive, ref } from 'vue';
|
|
|
|
|
-import { useMessage } from '/@/hooks/web/useMessage';
|
|
|
|
|
-import { getDateByPicker, getValueType } from '/@/utils';
|
|
|
|
|
-import { saveOrUpdate } from '../SppbVideo.api';
|
|
|
|
|
-import JImageUpload from '/@/components/Form/src/jeecg/components/JImageUpload.vue';
|
|
|
|
|
-import JUpload from '/@/components/Form/src/jeecg/components/JUpload/JUpload.vue';
|
|
|
|
|
-import { Form } from 'ant-design-vue';
|
|
|
|
|
-import JFormContainer from '/@/components/Form/src/container/JFormContainer.vue';
|
|
|
|
|
-import { getFileAccessHttpUrl } from '/@/utils/common/compUtils';
|
|
|
|
|
|
|
+ import { computed, defineExpose, defineProps, nextTick, reactive, ref } from 'vue';
|
|
|
|
|
+ import { useMessage } from '/@/hooks/web/useMessage';
|
|
|
|
|
+ import { getDateByPicker, getValueType } from '/@/utils';
|
|
|
|
|
+ import { saveOrUpdate } from '../SppbVideo.api';
|
|
|
|
|
+ import JImageUpload from '/@/components/Form/src/jeecg/components/JImageUpload.vue';
|
|
|
|
|
+ import JUpload from '/@/components/Form/src/jeecg/components/JUpload/JUpload.vue';
|
|
|
|
|
+ import { Form } from 'ant-design-vue';
|
|
|
|
|
+ import JFormContainer from '/@/components/Form/src/container/JFormContainer.vue';
|
|
|
|
|
+ import { getFileAccessHttpUrl } from '/@/utils/common/compUtils';
|
|
|
|
|
|
|
|
-const props = defineProps({
|
|
|
|
|
|
|
+ const props = defineProps({
|
|
|
formDisabled: { type: Boolean, default: false },
|
|
formDisabled: { type: Boolean, default: false },
|
|
|
- formData: { type: Object, default: () => ({})},
|
|
|
|
|
- formBpm: { type: Boolean, default: true }
|
|
|
|
|
|
|
+ formData: { type: Object, default: () => ({}) },
|
|
|
|
|
+ formBpm: { type: Boolean, default: true },
|
|
|
});
|
|
});
|
|
|
const formRef = ref();
|
|
const formRef = ref();
|
|
|
const useForm = Form.useForm;
|
|
const useForm = Form.useForm;
|
|
|
const emit = defineEmits(['register', 'ok']);
|
|
const emit = defineEmits(['register', 'ok']);
|
|
|
const formData = reactive<Record<string, any>>({
|
|
const formData = reactive<Record<string, any>>({
|
|
|
id: '',
|
|
id: '',
|
|
|
- title: '',
|
|
|
|
|
- cover: '',
|
|
|
|
|
- videoFile: '',
|
|
|
|
|
- format: '',
|
|
|
|
|
- fileSize: '',
|
|
|
|
|
- duration: '',
|
|
|
|
|
- dataId: '',
|
|
|
|
|
- dataName: '',
|
|
|
|
|
- stepSummary: '',
|
|
|
|
|
- contentDesc: '',
|
|
|
|
|
- recordingTime: '',
|
|
|
|
|
- videoUpdateTime: '',
|
|
|
|
|
|
|
+ title: '',
|
|
|
|
|
+ cover: '',
|
|
|
|
|
+ videoFile: '',
|
|
|
|
|
+ format: '',
|
|
|
|
|
+ fileSize: '',
|
|
|
|
|
+ duration: '',
|
|
|
|
|
+ dataId: '',
|
|
|
|
|
+ dataName: '',
|
|
|
|
|
+ stepSummary: '',
|
|
|
|
|
+ contentDesc: '',
|
|
|
|
|
+ recordingTime: '',
|
|
|
|
|
+ videoUpdateTime: '',
|
|
|
state: undefined,
|
|
state: undefined,
|
|
|
businessCategory: undefined,
|
|
businessCategory: undefined,
|
|
|
- keyword: '',
|
|
|
|
|
- targetAudience: '',
|
|
|
|
|
|
|
+ keyword: '',
|
|
|
|
|
+ targetAudience: '',
|
|
|
playCount: undefined,
|
|
playCount: undefined,
|
|
|
favoriteCount: undefined,
|
|
favoriteCount: undefined,
|
|
|
- playCompletionRate: '',
|
|
|
|
|
- remark: '',
|
|
|
|
|
|
|
+ playCompletionRate: '',
|
|
|
|
|
+ remark: '',
|
|
|
});
|
|
});
|
|
|
const { createMessage } = useMessage();
|
|
const { createMessage } = useMessage();
|
|
|
const labelCol = ref<any>({ xs: { span: 24 }, sm: { span: 6 } });
|
|
const labelCol = ref<any>({ xs: { span: 24 }, sm: { span: 6 } });
|
|
@@ -173,19 +208,17 @@ const props = defineProps({
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
//表单验证
|
|
//表单验证
|
|
|
- const validatorRules = reactive({
|
|
|
|
|
- });
|
|
|
|
|
|
|
+ const validatorRules = reactive({});
|
|
|
const { resetFields, validate, validateInfos } = useForm(formData, validatorRules, { immediate: false });
|
|
const { resetFields, validate, validateInfos } = useForm(formData, validatorRules, { immediate: false });
|
|
|
//日期个性化选择
|
|
//日期个性化选择
|
|
|
- const fieldPickers = reactive({
|
|
|
|
|
- });
|
|
|
|
|
|
|
+ const fieldPickers = reactive({});
|
|
|
|
|
|
|
|
// 表单禁用
|
|
// 表单禁用
|
|
|
- const disabled = computed(()=>{
|
|
|
|
|
- if(props.formBpm === true){
|
|
|
|
|
- if(props.formData.disabled === false){
|
|
|
|
|
|
|
+ const disabled = computed(() => {
|
|
|
|
|
+ if (props.formBpm === true) {
|
|
|
|
|
+ if (props.formData.disabled === false) {
|
|
|
return false;
|
|
return false;
|
|
|
- }else{
|
|
|
|
|
|
|
+ } else {
|
|
|
return true;
|
|
return true;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -199,7 +232,6 @@ const props = defineProps({
|
|
|
return '';
|
|
return '';
|
|
|
});
|
|
});
|
|
|
|
|
|
|
|
-
|
|
|
|
|
/**
|
|
/**
|
|
|
* 新增
|
|
* 新增
|
|
|
*/
|
|
*/
|
|
@@ -215,10 +247,10 @@ const props = defineProps({
|
|
|
resetFields();
|
|
resetFields();
|
|
|
const tmpData = {};
|
|
const tmpData = {};
|
|
|
Object.keys(formData).forEach((key) => {
|
|
Object.keys(formData).forEach((key) => {
|
|
|
- if(record.hasOwnProperty(key)){
|
|
|
|
|
- tmpData[key] = record[key]
|
|
|
|
|
|
|
+ if (record.hasOwnProperty(key)) {
|
|
|
|
|
+ tmpData[key] = record[key];
|
|
|
}
|
|
}
|
|
|
- })
|
|
|
|
|
|
|
+ });
|
|
|
//赋值
|
|
//赋值
|
|
|
Object.assign(formData, tmpData);
|
|
Object.assign(formData, tmpData);
|
|
|
});
|
|
});
|
|
@@ -274,7 +306,6 @@ const props = defineProps({
|
|
|
});
|
|
});
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-
|
|
|
|
|
defineExpose({
|
|
defineExpose({
|
|
|
add,
|
|
add,
|
|
|
edit,
|
|
edit,
|