|
|
|
@ -1,180 +1,267 @@ |
|
|
|
<template> |
|
|
|
<div> |
|
|
|
<el-card shadow="never" |
|
|
|
class="aui-card--fill"> |
|
|
|
<div class="mod-demo__demo}"> |
|
|
|
<el-form :inline="true" |
|
|
|
:model="dataForm" |
|
|
|
@keyup.enter.native="getDataList()"> |
|
|
|
<el-form-item label="版本功能说明" |
|
|
|
prop="versionDesc" |
|
|
|
label-width="150px" |
|
|
|
style="display:block"> |
|
|
|
<el-input type="textarea" |
|
|
|
:autosize="{ minRows: 2, maxRows: 4}" |
|
|
|
:rows="3" |
|
|
|
resize="none" |
|
|
|
style="width:300px" |
|
|
|
placeholder='请输入版本功能说明' |
|
|
|
v-model="dataForm.versionDesc"> |
|
|
|
</el-input> |
|
|
|
<div class="el-upload__tip">小程序版本说明和功能解释</div> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
<el-form-item label="预览图片" |
|
|
|
label-width="150px" |
|
|
|
style="display:block"> |
|
|
|
<el-upload class="avatar-uploader" |
|
|
|
ref="upload" |
|
|
|
:action="upload_url" |
|
|
|
list-type="picture-card" |
|
|
|
:name="upload_name" |
|
|
|
:on-remove="handleRemove" |
|
|
|
:on-exceed="handleExceed" |
|
|
|
:file-list="ad_url_list" |
|
|
|
:limit="3" |
|
|
|
:http-request="uploadPic"> |
|
|
|
<span class="font-14">选择图片</span> |
|
|
|
<div slot="tip" |
|
|
|
class="el-upload__tip">小程序页面截图,最多3张,每张大小2M以内</div> |
|
|
|
</el-upload> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
<el-form-item label="预览视频" |
|
|
|
label-width="150px" |
|
|
|
style="display:block"> |
|
|
|
<el-upload class="avatar-uploader" |
|
|
|
ref="upload" |
|
|
|
:action="upload_url" |
|
|
|
:name="upload_name" |
|
|
|
:on-remove="handleRemove" |
|
|
|
:on-exceed="handleExceed" |
|
|
|
:file-list="ad_url_list" |
|
|
|
:limit="1" |
|
|
|
:http-request="uploadVedio"> |
|
|
|
<el-button size="small" |
|
|
|
type="primary">选择视频</el-button> |
|
|
|
<div slot="tip" |
|
|
|
class="el-upload__tip">小程序操作录屏,大小2M以内,MP4格式</div> |
|
|
|
</el-upload> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
<el-form-item v-if="feedbackShow" |
|
|
|
label="反馈内容" |
|
|
|
prop="feedbackInfo" |
|
|
|
label-width="150px" |
|
|
|
style="display:block"> |
|
|
|
<el-input type="textarea" |
|
|
|
:autosize="{ minRows: 2, maxRows: 4}" |
|
|
|
:rows="3" |
|
|
|
resize="none" |
|
|
|
style="width:300px" |
|
|
|
placeholder='请输入反馈内容' |
|
|
|
v-model="dataForm.feedbackInfo"> |
|
|
|
</el-input> |
|
|
|
<div slot="tip" |
|
|
|
class="el-upload__tip">反馈内容,至多200字,只有上个版本被驳回才可填写</div> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item v-if="feedbackShow" |
|
|
|
label="反馈图片" |
|
|
|
label-width="150px" |
|
|
|
style="display:block"> |
|
|
|
<el-upload class="avatar-uploader" |
|
|
|
ref="upload" |
|
|
|
:action="upload_url" |
|
|
|
list-type="picture-card" |
|
|
|
:name="upload_name" |
|
|
|
:on-remove="handleRemove" |
|
|
|
:on-exceed="handleExceed" |
|
|
|
:file-list="ad_url_list" |
|
|
|
:limit="3" |
|
|
|
:http-request="uploadPic"> |
|
|
|
<span class="font-14">选择图片</span> |
|
|
|
<c-dialog :title="'提交审核'" |
|
|
|
:visible="diaVisible" |
|
|
|
:dialogHeight="1.1" |
|
|
|
@cancel="diaCancel" |
|
|
|
@ok="submitCode"> |
|
|
|
|
|
|
|
<el-tabs v-model="activeName" |
|
|
|
class="el-tabs"> |
|
|
|
<el-tab-pane label="功能说明" |
|
|
|
name="desc"> |
|
|
|
<el-form :inline="true" |
|
|
|
:model="dataForm" |
|
|
|
class="form"> |
|
|
|
<el-form-item label="版本功能说明" |
|
|
|
prop="versionDesc" |
|
|
|
label-width="150px" |
|
|
|
style="display:block"> |
|
|
|
<el-input type="textarea" |
|
|
|
:autosize="{ minRows: 5, maxRows: 8}" |
|
|
|
:rows="5" |
|
|
|
resize="none" |
|
|
|
style="width:500px" |
|
|
|
placeholder='请输入版本功能说明' |
|
|
|
v-model="dataForm.versionDesc"> |
|
|
|
</el-input> |
|
|
|
<div class="el-upload__tip">小程序版本说明和功能解释</div> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
<el-form-item label="预览图片" |
|
|
|
label-width="150px" |
|
|
|
style="display:block"> |
|
|
|
<el-upload class="avatar-uploader" |
|
|
|
ref="uploadPic" |
|
|
|
:action="upload_url" |
|
|
|
list-type="picture-card" |
|
|
|
:name="upload_name" |
|
|
|
:on-remove="handleRemovePic" |
|
|
|
:on-exceed="handleExceed" |
|
|
|
:file-list="picList" |
|
|
|
:limit="3" |
|
|
|
:http-request="uploadPic"> |
|
|
|
<span class="font-14">选择图片</span> |
|
|
|
<div slot="tip" |
|
|
|
class="el-upload__tip">小程序页面截图,最多3张,每张大小2M以内</div> |
|
|
|
</el-upload> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
<el-form-item label="预览视频" |
|
|
|
label-width="150px" |
|
|
|
style="display:block"> |
|
|
|
<el-upload class="avatar-uploader" |
|
|
|
ref="uploadVedio" |
|
|
|
:action="upload_url" |
|
|
|
:name="upload_name" |
|
|
|
:on-remove="handleRemoveVedio" |
|
|
|
:on-exceed="handleExceed" |
|
|
|
:file-list="vedioList" |
|
|
|
:limit="1" |
|
|
|
:http-request="uploadVedio"> |
|
|
|
<el-button size="small" |
|
|
|
type="primary">选择视频</el-button> |
|
|
|
<div slot="tip" |
|
|
|
class="el-upload__tip">小程序操作录屏,大小2M以内,MP4格式</div> |
|
|
|
</el-upload> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
|
|
|
|
</el-tab-pane> |
|
|
|
|
|
|
|
<el-tab-pane label="审核项" |
|
|
|
name="item"> |
|
|
|
<div style="margin-top:10px"> |
|
|
|
<el-button type="primary" |
|
|
|
style="margin-bottom:10px" |
|
|
|
@click="commitCode()">增加审核项</el-button> |
|
|
|
</div> |
|
|
|
<el-table id="out-table" |
|
|
|
ref="table" |
|
|
|
:header-cell-style="{color:'#000'}" |
|
|
|
:data="tableData" |
|
|
|
:style="{width: '100%'}" |
|
|
|
border |
|
|
|
v-loading="loading" |
|
|
|
element-loading-text="正在加载中" |
|
|
|
element-loading-spinner="el-icon-loading" |
|
|
|
element-loading-background="rgba(255, 255, 255, 0.8)"> |
|
|
|
|
|
|
|
<el-table-column prop="address" |
|
|
|
label="页面" |
|
|
|
min-width="100" |
|
|
|
header-align="center" |
|
|
|
align="center"></el-table-column> |
|
|
|
<el-table-column prop="tag" |
|
|
|
label="标签" |
|
|
|
min-width="100" |
|
|
|
header-align="center" |
|
|
|
align="center"></el-table-column> |
|
|
|
<el-table-column prop="title" |
|
|
|
label="标题" |
|
|
|
min-width="100" |
|
|
|
header-align="center" |
|
|
|
align="center"></el-table-column> |
|
|
|
|
|
|
|
<el-table-column prop="firstClass" |
|
|
|
label="一级类目名称" |
|
|
|
min-width="100" |
|
|
|
header-align="center" |
|
|
|
align="center"></el-table-column> |
|
|
|
<el-table-column prop="first_id" |
|
|
|
label="一级类目ID" |
|
|
|
min-width="100" |
|
|
|
header-align="center" |
|
|
|
align="center"></el-table-column> |
|
|
|
<el-table-column prop="second_class" |
|
|
|
label="二级类目名称" |
|
|
|
min-width="70" |
|
|
|
header-align="center" |
|
|
|
align="center"></el-table-column> |
|
|
|
<el-table-column prop="second_id" |
|
|
|
label="二级类目ID" |
|
|
|
min-width="100" |
|
|
|
header-align="center" |
|
|
|
align="center"></el-table-column> |
|
|
|
<el-table-column prop="third_class" |
|
|
|
label="三级类目名称" |
|
|
|
min-width="70" |
|
|
|
header-align="center" |
|
|
|
align="center"></el-table-column> |
|
|
|
<el-table-column prop="third_id" |
|
|
|
label="三级类目ID" |
|
|
|
header-align="center" |
|
|
|
min-width="100" |
|
|
|
align="center"></el-table-column> |
|
|
|
</el-table> |
|
|
|
|
|
|
|
</el-tab-pane> |
|
|
|
|
|
|
|
<el-tab-pane v-if="feedbackShow" |
|
|
|
label="反馈信息" |
|
|
|
name="feedback"> |
|
|
|
<el-form :inline="true" |
|
|
|
:model="dataForm" |
|
|
|
class="form"> |
|
|
|
|
|
|
|
<el-form-item label="反馈内容" |
|
|
|
prop="feedbackInfo" |
|
|
|
label-width="150px" |
|
|
|
style="display:block"> |
|
|
|
<el-input type="textarea" |
|
|
|
:autosize="{ minRows: 5, maxRows: 8}" |
|
|
|
:rows="5" |
|
|
|
resize="none" |
|
|
|
style="width:600px" |
|
|
|
placeholder='请输入反馈内容' |
|
|
|
v-model="dataForm.feedbackInfo"> |
|
|
|
</el-input> |
|
|
|
<div slot="tip" |
|
|
|
class="el-upload__tip">大小2M以内</div> |
|
|
|
</el-upload> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
</el-form> |
|
|
|
<div> |
|
|
|
<el-button type="primary" |
|
|
|
style="margin-bottom:10px" |
|
|
|
@click="commitCode()">增加审核项</el-button> |
|
|
|
</div> |
|
|
|
<el-table id="out-table" |
|
|
|
ref="table" |
|
|
|
:header-cell-style="{color:'#000'}" |
|
|
|
:data="tableData" |
|
|
|
:style="{width: '100%'}" |
|
|
|
border |
|
|
|
v-loading="loading" |
|
|
|
element-loading-text="正在加载中" |
|
|
|
element-loading-spinner="el-icon-loading" |
|
|
|
element-loading-background="rgba(255, 255, 255, 0.8)"> |
|
|
|
|
|
|
|
<el-table-column prop="address" |
|
|
|
label="页面" |
|
|
|
min-width="100" |
|
|
|
header-align="center" |
|
|
|
align="center"></el-table-column> |
|
|
|
<el-table-column prop="tag" |
|
|
|
label="标签" |
|
|
|
min-width="100" |
|
|
|
header-align="center" |
|
|
|
align="center"></el-table-column> |
|
|
|
<el-table-column prop="title" |
|
|
|
label="标题" |
|
|
|
min-width="100" |
|
|
|
header-align="center" |
|
|
|
align="center"></el-table-column> |
|
|
|
|
|
|
|
<el-table-column prop="firstClass" |
|
|
|
label="一级类目名称" |
|
|
|
min-width="100" |
|
|
|
header-align="center" |
|
|
|
align="center"></el-table-column> |
|
|
|
<el-table-column prop="first_id" |
|
|
|
label="一级类目ID" |
|
|
|
min-width="100" |
|
|
|
header-align="center" |
|
|
|
align="center"></el-table-column> |
|
|
|
<el-table-column prop="second_class" |
|
|
|
label="二级类目名称" |
|
|
|
min-width="70" |
|
|
|
header-align="center" |
|
|
|
align="center"></el-table-column> |
|
|
|
<el-table-column prop="second_id" |
|
|
|
label="二级类目ID" |
|
|
|
min-width="100" |
|
|
|
header-align="center" |
|
|
|
align="center"></el-table-column> |
|
|
|
<el-table-column prop="third_class" |
|
|
|
label="三级类目名称" |
|
|
|
min-width="70" |
|
|
|
header-align="center" |
|
|
|
align="center"></el-table-column> |
|
|
|
<el-table-column prop="third_id" |
|
|
|
label="三级类目ID" |
|
|
|
header-align="center" |
|
|
|
min-width="100" |
|
|
|
align="center"></el-table-column> |
|
|
|
|
|
|
|
<el-table-column label="操作" |
|
|
|
fixed="right" |
|
|
|
header-align="center" |
|
|
|
align="center" |
|
|
|
width="80"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<!-- <el-button type="text" |
|
|
|
size="small" |
|
|
|
@click="submitCode(scope.row.id)">移除</el-button> --> |
|
|
|
|
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
</el-table> |
|
|
|
|
|
|
|
</div> |
|
|
|
</el-card> |
|
|
|
class="el-upload__tip">反馈内容,至多200字,只有上个版本被驳回才可填写</div> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="反馈图片" |
|
|
|
label-width="150px" |
|
|
|
style="display:block"> |
|
|
|
<el-upload class="avatar-uploader" |
|
|
|
ref="uploadFeedbackPic" |
|
|
|
:action="upload_url" |
|
|
|
list-type="picture-card" |
|
|
|
:name="upload_name" |
|
|
|
:on-remove="handleRemoveFeedback" |
|
|
|
:on-error="handleError" |
|
|
|
:on-exceed="handleExceed" |
|
|
|
:file-list="feedbackPicList" |
|
|
|
:limit="3" |
|
|
|
:http-request="uploadPic"> |
|
|
|
<span class="font-14">选择图片</span> |
|
|
|
<div slot="tip" |
|
|
|
class="el-upload__tip">大小2M以内</div> |
|
|
|
</el-upload> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
</el-form> |
|
|
|
|
|
|
|
</el-tab-pane> |
|
|
|
|
|
|
|
<el-tab-pane label="UGC信息安全声明" |
|
|
|
name="ugc"> |
|
|
|
<div class="el-upload__tip">当小程序第一次提交审核且类目包含社交-社区/论坛、社交-笔记、社交-问答其中之一时需填写UGC场景信息</div> |
|
|
|
<el-form :inline="true" |
|
|
|
:model="dataForm.ugcDeclare" |
|
|
|
class="form"> |
|
|
|
<el-form-item label="UGC场景" |
|
|
|
label-width="150px" |
|
|
|
style="display:block"> |
|
|
|
<el-checkbox-group v-model="dataForm.ugcDeclare.scene"> |
|
|
|
<el-checkbox @change="scene0" |
|
|
|
:label="0">不涉及用户生成内容</el-checkbox> |
|
|
|
<el-checkbox :label="1" |
|
|
|
:disabled="sceneDisabled">用户资料</el-checkbox> |
|
|
|
<el-checkbox :label="2" |
|
|
|
:disabled="sceneDisabled">图片</el-checkbox> |
|
|
|
<el-checkbox :label="3" |
|
|
|
:disabled="sceneDisabled">视频</el-checkbox> |
|
|
|
<el-checkbox :label="4" |
|
|
|
:disabled="sceneDisabled">文本</el-checkbox> |
|
|
|
<el-checkbox :label="5" |
|
|
|
:disabled="sceneDisabled" |
|
|
|
@change="sceneOther">其他</el-checkbox> |
|
|
|
</el-checkbox-group> |
|
|
|
</el-form-item> |
|
|
|
<div v-if="!sceneDisabled"> |
|
|
|
<el-form-item label="其他场景" |
|
|
|
label-width="150px" |
|
|
|
style="display:block"> |
|
|
|
<el-input type="textarea" |
|
|
|
:disabled="sceneOtherDisabled" |
|
|
|
:autosize="{ minRows: 2, maxRows: 4}" |
|
|
|
:rows="3" |
|
|
|
resize="none" |
|
|
|
style="width:500px" |
|
|
|
placeholder='请输入其他场景' |
|
|
|
v-model="dataForm.ugcDeclare.otherSceneDesc"> |
|
|
|
</el-input> |
|
|
|
<div class="el-upload__tip">当scene选其他时的说明,不超时256字</div> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="内容安全机制" |
|
|
|
label-width="150px" |
|
|
|
style="display:block"> |
|
|
|
<el-checkbox-group v-model="dataForm.ugcDeclare.method"> |
|
|
|
<el-checkbox :label="1">使用平台建议的内容安全API</el-checkbox> |
|
|
|
<el-checkbox :label="2">使用其他的内容审核产品</el-checkbox> |
|
|
|
<el-checkbox :label="3">通过人工审核把关</el-checkbox> |
|
|
|
<el-checkbox :label="4">未做内容审核把关</el-checkbox> |
|
|
|
</el-checkbox-group> |
|
|
|
<!-- <div class="el-upload__tip">1.使用平台建议的内容安全API,2.使用其他的内容审核产品,3.通过人工审核把关,4.未做内容审核把关</div> --> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="是否有审核团队" |
|
|
|
label-width="150px" |
|
|
|
style="display:block"> |
|
|
|
<el-radio-group v-model="dataForm.ugcDeclare.hasAuditTeam"> |
|
|
|
<el-radio :label="0">无 </el-radio> |
|
|
|
<el-radio :label="1">有 </el-radio> |
|
|
|
</el-radio-group> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="审核机制" |
|
|
|
label-width="150px" |
|
|
|
style="display:block"> |
|
|
|
<el-input type="textarea" |
|
|
|
:autosize="{ minRows: 2, maxRows: 4}" |
|
|
|
:rows="3" |
|
|
|
resize="none" |
|
|
|
style="width:500px" |
|
|
|
placeholder='请输入审核机制' |
|
|
|
v-model="dataForm.ugcDeclare.auditDesc"> |
|
|
|
</el-input> |
|
|
|
<div class="el-upload__tip">说明当前对UGC内容的审核机制,不超过256字</div> |
|
|
|
</el-form-item> |
|
|
|
</div> |
|
|
|
</el-form> |
|
|
|
|
|
|
|
</el-tab-pane> |
|
|
|
|
|
|
|
</el-tabs> |
|
|
|
</c-dialog> |
|
|
|
<c-dialog :title="dialog.title" |
|
|
|
:visible="dialog.visible" |
|
|
|
:showConfirm="false" |
|
|
|
@ -188,11 +275,22 @@ |
|
|
|
import CDialog from '@c/CDialog' |
|
|
|
import CommitForm from './CommitForm' |
|
|
|
import { mapGetters } from 'vuex' |
|
|
|
import { Loading } from 'element-ui' // 引入Loading服务 |
|
|
|
|
|
|
|
let loading // 加载动画 |
|
|
|
export default { |
|
|
|
data () { |
|
|
|
return { |
|
|
|
loading: false, |
|
|
|
// codeId: '', // 上一界面传来的codeId |
|
|
|
feedbackShow: false, // 是否显示反馈信息,父组件传 |
|
|
|
codeId: '', // 上传代码id,父组件传 |
|
|
|
diaVisible: false, |
|
|
|
|
|
|
|
// tab页相关 |
|
|
|
activeName: 'desc', |
|
|
|
|
|
|
|
sceneDisabled: true, // 场景是否禁用 |
|
|
|
sceneOtherDisabled: true, // 其他场景是否禁用 |
|
|
|
dataForm: { |
|
|
|
versionDesc: '', // 小程序版本说明和功能解释 |
|
|
|
previewInfo: { // 预览信息 |
|
|
|
@ -201,18 +299,24 @@ export default { |
|
|
|
}, |
|
|
|
feedbackInfo: '', // 反馈内容 |
|
|
|
feedbackStuff: '', // 反馈素材 |
|
|
|
ugcDeclare: [] // 用户生成内容场景(UGC)信息安全声明 |
|
|
|
ugcDeclare: { // 用户生成内容场景(UGC)信息安全声明 |
|
|
|
scene: [0], // UGC场景 0,不涉及用户生成内容, 1.用户资料,2.图片,3.视频,4.文本,5其他, 可多选,当scene填0时无需填写下列字段 |
|
|
|
otherSceneDesc: '', // 当scene选其他时的说明,不超时256字 |
|
|
|
method: [1], // 内容安全机制 1.使用平台建议的内容安全API,2.使用其他的内容审核产品,3.通过人工审核把关,4.未做内容审核把关 |
|
|
|
hasAuditTeam: 0, // 是否有审核团队, 0.无,1.有,默认0 |
|
|
|
auditDesc: '' // 说明当前对UGC内容的审核机制,不超过256字 |
|
|
|
} |
|
|
|
}, |
|
|
|
previewPicArray: [], |
|
|
|
previewVedioArray: [], |
|
|
|
|
|
|
|
// 上传素材 |
|
|
|
dialogImageUrl: '', |
|
|
|
dialogVisible: false, |
|
|
|
disabled: false, |
|
|
|
dialogImageUrl: '/third/code/mediaupload', |
|
|
|
upload_url: '', // 上传URL |
|
|
|
upload_name: '', // 图片或视频名称 |
|
|
|
ad_url: '', // 上传后的图片或视频URL |
|
|
|
ad_url_list: [], // 预览列表 |
|
|
|
picList: [], // 预览列表 |
|
|
|
vedioList: [], // 预览列表 |
|
|
|
feedbackPicList: [], // 预览列表 |
|
|
|
|
|
|
|
// 弹出框相关 |
|
|
|
dialog: { |
|
|
|
@ -260,23 +364,48 @@ export default { |
|
|
|
...mapGetters(['clientHeight']) |
|
|
|
}, |
|
|
|
methods: { |
|
|
|
initData (codeId, feedbackShow) { |
|
|
|
this.codeId = codeId |
|
|
|
this.feedbackShow = feedbackShow |
|
|
|
this.diaVisible = true |
|
|
|
}, |
|
|
|
handleExceed: function () { |
|
|
|
this.$message({ |
|
|
|
message: '请先删除选择的图片或视频,再上传', |
|
|
|
type: 'warning' |
|
|
|
}) |
|
|
|
}, |
|
|
|
handleRemove: function (res, file) { |
|
|
|
let self = this |
|
|
|
self.ad_url = '' |
|
|
|
handleRemovePic: function (res, file) { |
|
|
|
this.previewPicArray.filter(item => item.uid !== file.uid) |
|
|
|
console.log(this.previewPicArray) |
|
|
|
}, |
|
|
|
handleRemoveVedio: function (res, file) { |
|
|
|
// this.previewPicArray.forEach(element => { |
|
|
|
// if() |
|
|
|
|
|
|
|
// }); |
|
|
|
// eslint-disable-next-line |
|
|
|
debugger |
|
|
|
}, |
|
|
|
handleRemoveFeedback: function (res, file) { |
|
|
|
// this.previewPicArray.forEach(element => { |
|
|
|
// if() |
|
|
|
|
|
|
|
// }); |
|
|
|
// eslint-disable-next-line |
|
|
|
debugger |
|
|
|
}, |
|
|
|
handleError (err, file, fileList) { |
|
|
|
// eslint-disable-next-line |
|
|
|
debugger |
|
|
|
console.log(err) |
|
|
|
}, |
|
|
|
// 上传视频 |
|
|
|
uploadVedio: function (params) { |
|
|
|
let self = this |
|
|
|
let file = params.file |
|
|
|
let fileType = file.type |
|
|
|
let isVideo = fileType.indexOf('video') !== -1 |
|
|
|
// let fileUrl = self.$refs.upload.uploadFiles[0].url |
|
|
|
// let fileUrl = this.$refs.upload.uploadFiles[0].url |
|
|
|
|
|
|
|
let isLt2M = file.size / 1024 / 1024 < 2 |
|
|
|
if (!isLt2M) { |
|
|
|
@ -284,7 +413,7 @@ export default { |
|
|
|
message: '上传视频大小不能超过 2MB!', |
|
|
|
type: 'error' |
|
|
|
}) |
|
|
|
self.$refs.upload.uploadFiles = [] |
|
|
|
this.$refs.upload.uploadFiles = [] |
|
|
|
return |
|
|
|
} |
|
|
|
if (!isVideo) { |
|
|
|
@ -292,7 +421,7 @@ export default { |
|
|
|
message: '请选择视频!', |
|
|
|
type: 'error' |
|
|
|
}) |
|
|
|
self.$refs.upload.uploadFiles = [] |
|
|
|
this.$refs.upload.uploadFiles = [] |
|
|
|
return |
|
|
|
} |
|
|
|
|
|
|
|
@ -302,95 +431,206 @@ export default { |
|
|
|
message: '上传视频只支持 mp4 格式!', |
|
|
|
type: 'error' |
|
|
|
}) |
|
|
|
self.$refs.upload.uploadFiles = [] |
|
|
|
this.$refs.upload.uploadFiles = [] |
|
|
|
return |
|
|
|
} |
|
|
|
self.upload_name = 'file_video[]' |
|
|
|
self.uploadFile(file, fileType) |
|
|
|
// let videoDiv = document.createElement('video') |
|
|
|
// videoDiv.src = fileUrl |
|
|
|
|
|
|
|
// videoDiv.onloadeddata = function (event) { |
|
|
|
// // 视频上传 |
|
|
|
// self.upload_name = 'file_video[]' |
|
|
|
// self.uploadFile(file, fileType, isVideo, videoDiv) |
|
|
|
// } |
|
|
|
this.upload_name = 'file_video[]' |
|
|
|
let formData = new FormData() |
|
|
|
// // eslint-disable-next-line |
|
|
|
// debugger |
|
|
|
formData.append('type', fileType) |
|
|
|
formData.append('media', file) |
|
|
|
formData.append('codeId', this.codeId) |
|
|
|
window.app.ajax.post(this.dialogImageUrl, formData, |
|
|
|
(data, rspMsg) => { |
|
|
|
this.previewInfo.videoIdList.push(data) |
|
|
|
this.$message.success(rspMsg) |
|
|
|
}, |
|
|
|
(rspMsg, data) => { |
|
|
|
this.$message.error(rspMsg) |
|
|
|
}, { headers: { 'Content-Type': 'multipart/form-data' } }) |
|
|
|
}, |
|
|
|
// 上传图片 |
|
|
|
uploadPic: function (params) { |
|
|
|
console.log(this.codeId) |
|
|
|
let self = this |
|
|
|
let file = params.file |
|
|
|
let fileType = file.type |
|
|
|
let isImage = fileType.indexOf('image') !== -1 |
|
|
|
let fileUrl = this.$refs.uploadPic.uploadFiles[this.picList.length].url |
|
|
|
file.url = fileUrl |
|
|
|
this.picList.push(file) |
|
|
|
|
|
|
|
let isLt2M = file.size / 1024 / 1024 < 2 |
|
|
|
if (!isLt2M) { |
|
|
|
this.$message({ |
|
|
|
message: '上传图片大小不能超过 2MB!', |
|
|
|
type: 'error' |
|
|
|
}) |
|
|
|
self.$refs.upload.uploadFiles = [] |
|
|
|
return |
|
|
|
} |
|
|
|
// let isLt2M = file.size / 1024 / 1024 < 2 |
|
|
|
// if (!isLt2M) { |
|
|
|
// this.$message({ |
|
|
|
// message: '上传图片大小不能超过 2MB!', |
|
|
|
// type: 'error' |
|
|
|
// }) |
|
|
|
// this.$refs.upload.uploadFiles = [] |
|
|
|
// // return |
|
|
|
// } |
|
|
|
if (!isImage) { |
|
|
|
this.$message({ |
|
|
|
message: '请选择图片!', |
|
|
|
type: 'error' |
|
|
|
}) |
|
|
|
self.$refs.upload.uploadFiles = [] |
|
|
|
this.$refs.uploadPic.uploadFiles = [] |
|
|
|
return |
|
|
|
} |
|
|
|
self.upload_name = 'file_img[]' |
|
|
|
self.uploadFile(file, fileType) |
|
|
|
}, |
|
|
|
uploadFile: function (file, fileType) { |
|
|
|
// const uploadUrl = 'https://nei.netease.com/api/apimock-v2/e3b1d0eb88e905f6c7ee559b2d6bb7ad/third/code/mediaupload' |
|
|
|
const uploadUrl = '/third/code/mediaupload' |
|
|
|
// console.log(this.picList) |
|
|
|
|
|
|
|
this.upload_name = 'file_img[]' |
|
|
|
let formData = new FormData() |
|
|
|
// // eslint-disable-next-line |
|
|
|
// debugger |
|
|
|
|
|
|
|
formData.append('type', fileType) |
|
|
|
formData.append('media', file) |
|
|
|
formData.append('codeId', this.codeId) |
|
|
|
window.app.ajax.post(uploadUrl, formData, |
|
|
|
window.app.ajax.post2(this.dialogImageUrl, formData, |
|
|
|
(data, rspMsg) => { |
|
|
|
this.$message.success(rspMsg) |
|
|
|
this.beforeClose() |
|
|
|
// eslint-disable-next-line |
|
|
|
debugger |
|
|
|
if (data.code === 0) { |
|
|
|
console.log('成功') |
|
|
|
let obj = { |
|
|
|
mediaid: data, |
|
|
|
uid: file.uid |
|
|
|
} |
|
|
|
this.previewPicArray.push(obj) |
|
|
|
this.$message.success(rspMsg) |
|
|
|
} else { |
|
|
|
console.log('失败') |
|
|
|
this.picList.pop() |
|
|
|
this.$message.error(rspMsg) |
|
|
|
} |
|
|
|
}, |
|
|
|
(rspMsg, data) => { |
|
|
|
this.picList.pop() |
|
|
|
this.$message.error(rspMsg) |
|
|
|
}, { headers: { 'Content-Type': 'multipart/form-data' } }) |
|
|
|
}, |
|
|
|
|
|
|
|
// UGC场景选中0以后的事件 |
|
|
|
scene0 (value) { |
|
|
|
if (value) { // 选中 |
|
|
|
this.sceneDisabled = true |
|
|
|
this.resetUGC() |
|
|
|
} else { |
|
|
|
this.sceneDisabled = false |
|
|
|
} |
|
|
|
}, |
|
|
|
// UGC场景选中其他以后的事件 |
|
|
|
sceneOther (value) { |
|
|
|
if (value) { // 选中 |
|
|
|
this.sceneOtherDisabled = false |
|
|
|
} else { |
|
|
|
this.sceneOtherDisabled = true |
|
|
|
this.dataForm.ugcDeclare.otherSceneDesc = '' |
|
|
|
} |
|
|
|
}, |
|
|
|
// 重置UGC场景数据 |
|
|
|
resetUGC () { |
|
|
|
this.dataForm.ugcDeclare.scene = [0] |
|
|
|
this.dataForm.ugcDeclare.otherSceneDesc = '' |
|
|
|
this.dataForm.ugcDeclare.method = [1] |
|
|
|
this.dataForm.ugcDeclare.hasAuditTeam = 0 |
|
|
|
this.dataForm.ugcDeclare.auditDesc = '' |
|
|
|
}, |
|
|
|
submitCode () { |
|
|
|
// eslint-disable-next-line |
|
|
|
// debugger |
|
|
|
// 解析预览信息 |
|
|
|
this.dataForm.previewInfo.picIdList = [] |
|
|
|
this.dataForm.previewInfo.videoIdList = [] |
|
|
|
this.previewPicArray.forEach(element => { |
|
|
|
this.dataForm.previewInfo.picIdList.push(element.mediaid) |
|
|
|
}) |
|
|
|
|
|
|
|
this.previewVedioArray.forEach(element => { |
|
|
|
this.dataForm.previewInfo.videoIdList.push(element.mediaid) |
|
|
|
}) |
|
|
|
|
|
|
|
const url = '/third/code/audit' |
|
|
|
let params = { |
|
|
|
codeId: this.codeId, |
|
|
|
ugcDeclare: this.dataForm.ugcDeclare |
|
|
|
} |
|
|
|
|
|
|
|
// 预览信息排除空数组 |
|
|
|
if (this.dataForm.previewInfo.picIdList.length > 0 || this.dataForm.previewInfo.videoIdList.length > 0) { |
|
|
|
params.previewInfo = Object |
|
|
|
if (this.dataForm.previewInfo.picIdList.length > 0) { |
|
|
|
params.previewInfo.picIdList = this.dataForm.previewInfo.picIdList |
|
|
|
} |
|
|
|
if (this.dataForm.previewInfo.videoIdList.length > 0) { |
|
|
|
params.previewInfo.videoIdList = this.dataForm.previewInfo.videoIdList |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
// 小程序描述排除空内容 |
|
|
|
if (this.dataForm.versionDesc !== '') { |
|
|
|
params.versionDesc = this.dataForm.versionDesc |
|
|
|
} |
|
|
|
console.log(params) |
|
|
|
this.startLoading() |
|
|
|
window.app.ajax.post(url, params, |
|
|
|
(data, rspMsg) => { |
|
|
|
this.endLoading() |
|
|
|
this.$message.success('提交审核成功,请等待审核结果') |
|
|
|
this.diaCancel() |
|
|
|
this.$emit('refresh') |
|
|
|
}, |
|
|
|
(rspMsg, data) => { |
|
|
|
this.endLoading() |
|
|
|
this.$message.error(rspMsg) |
|
|
|
}) |
|
|
|
}, |
|
|
|
// 取消 |
|
|
|
diaCancel () { |
|
|
|
this.resetData() |
|
|
|
this.diaVisible = false |
|
|
|
}, |
|
|
|
resetData () { |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
// 上传代码 |
|
|
|
commitCode (id) { |
|
|
|
this.dialog.title = '上传代码' |
|
|
|
this.dialog.visible = true |
|
|
|
}, |
|
|
|
// 提交审核 |
|
|
|
submitCode (id) { |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
handleCancel () { |
|
|
|
this.dialog.title = '' |
|
|
|
this.dialog.visible = false |
|
|
|
}, |
|
|
|
// 开启加载动画 |
|
|
|
startLoading () { |
|
|
|
loading = Loading.service({ |
|
|
|
lock: true, // 是否锁定 |
|
|
|
text: '正在加载……', // 加载中需要显示的文字 |
|
|
|
background: 'rgba(0,0,0,.7)' // 背景颜色 |
|
|
|
}) |
|
|
|
}, |
|
|
|
// 结束加载动画 |
|
|
|
endLoading () { |
|
|
|
// clearTimeout(timer); |
|
|
|
if (loading) { |
|
|
|
loading.close() |
|
|
|
} |
|
|
|
} |
|
|
|
}, |
|
|
|
props: { |
|
|
|
feedbackShow: { |
|
|
|
type: Boolean, |
|
|
|
default: false |
|
|
|
}, |
|
|
|
codeId: { |
|
|
|
type: String, |
|
|
|
required: true |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
</script> |
|
|
|
<style scoped > |
|
|
|
.el-tabs { |
|
|
|
margin-left: 50px; |
|
|
|
margin-right: 50px; |
|
|
|
} |
|
|
|
.el-upload__tip { |
|
|
|
color: rgb(155, 155, 155); |
|
|
|
} |
|
|
|
.form { |
|
|
|
margin-top: 30px; |
|
|
|
} |
|
|
|
</style> |
|
|
|
|