Kaynağa Gözat

拉取代码

朱鑫波 3 yıl önce
ebeveyn
işleme
224f3153fa

+ 1 - 1
.env.production

@@ -14,7 +14,7 @@ VUE_APP_BASE_SCRIPT_URL = http://114.117.193.186:31013
 
 
 #素材大盘相关接口
-VUE_APP_BASE_MATERIAL_URL = http://api.tjyourong.com.cn/material
+VUE_APP_BASE_MATERIAL_URL = http://192.168.0.195:9999/material
 # 泽宇 http://192.168.1.134:9999
 # 测试 http://192.168.0.195:9999
 

+ 14 - 14
src/components/formComponents/Cascader.vue

@@ -1,18 +1,18 @@
 <style lang="scss">
-.hcst-cascader{
-    .el-cascader {
-        display: inline-block;
-        position: relative;
-        font-size: 14px;
-        height: 32px;
-    }
-    .el-input__inner{
-        height: 32px  !important;
-    }
-    .el-cascader__tags {
-        top: 64%;
-    }
-}
+// .hcst-cascader{
+//     .el-cascader {
+//         display: inline-block;
+//         position: relative;
+//         font-size: 14px;
+//         height: 32px;
+//     }
+//     .el-input__inner{
+//         height: 32px  !important;
+//     }
+//     .el-cascader__tags {
+//         top: 64%;
+//     }
+// }
 
 </style>
 <template>

+ 6 - 5
src/components/jeecg/JTreeSelect.vue

@@ -154,11 +154,12 @@
             if(res.success){
               for(let i of res.result){
                 i.value = i.key
-                if(i.leaf==false){
-                  i.isLeaf=false
-                }else if(i.leaf==true){
-                  i.isLeaf=true
-                }
+                i.isLeaf=true
+                // if(i.leaf==false){
+                //   i.isLeaf=false
+                // }else if(i.leaf==true){
+                //   i.isLeaf=true
+                // }
               }
               this.addChildren(pid,res.result,this.treeData)
               this.treeData = [...this.treeData]

+ 2 - 2
src/components/page/GlobalLayout.vue

@@ -679,8 +679,8 @@
         }
 
         .ant-form-item-control {
-          height: 32px;
-          line-height: 32px;
+          // height: 32px;
+          // line-height: 32px;
         }
       }
     }

+ 7 - 0
src/mixins/videoMaterialMixin.js

@@ -117,6 +117,13 @@
        if(params.stateDate){
          params.stateDate = moment(params.stateDate).format('YYYY-MM-DD')
        }
+       if(params.createTimeDate&&params.createTimeDate.length>0){
+        // params.createTime = moment(params.createTime).format('YYYY-MM-DD')
+        params.startTime = moment(params.createTimeDate[0]).format('YYYY-MM-DD')
+        params.endTime = moment(params.createTimeDate[1]).format('YYYY-MM-DD')
+        params.createTimeDate = null
+      }
+       
        // if(params.endDate){
        //   params.endDate = moment(params.endDate).format('YYYY-MM-DD')
        // }

+ 2 - 2
src/views/modules/material/videoMaterial.vue

@@ -81,7 +81,7 @@ li.chouzhen.first:before {
   background: rgba(0, 0, 0, 0.5);
   border-radius: 2px;
 }
-.table-page-search-wrapper {
+.video-metarial-table {
   .el-cascader .el-input {
     cursor: pointer;
     height: 100%;
@@ -354,7 +354,7 @@ a {
 <template>
   <a-card :bordered="false" class="only-video-material-disable">
     <!-- 查询区域 -->
-    <div class="table-page-search-wrapper">
+    <div class="table-page-search-wrapper video-metarial-table">
       <a-form layout="inline" :selfUpdate="true">
         <a-row :gutter="24">
           <a-col :md="8" :sm="8">

+ 307 - 188
src/views/modules/material/videoPopular.vue

@@ -81,55 +81,48 @@ li.chouzhen.first:before {
     background: rgba(0, 0, 0, 0.5);
     border-radius: 2px;
 }
-.table-page-search-wrapper {
-    .el-cascader .el-input {
-        cursor: pointer;
-        height: 100%;
-    }
-    .el-cascader .el-input .el-input__inner {
-        text-overflow: ellipsis;
-        height: 100%;
-        position: relative;
-        top: -4px;
-    }
-    .el-cascader .el-input .el-icon-arrow-down {
-        -webkit-transition: -webkit-transform 0.3s;
-        transition: -webkit-transform 0.3s;
-        transition: transform 0.3s;
-        transition: transform 0.3s, -webkit-transform 0.3s;
-        transition: transform 0.3s, -webkit-transform 0.3s;
-        font-size: 14px;
-        position: relative;
-        top: -4px;
-    }
-    .el-cascader .el-input .el-icon-arrow-down.is-reverse {
-        -webkit-transform: rotateZ(180deg);
-        transform: rotateZ(180deg);
-        position: relative;
-        top: 2px;
-    }
-    .el-cascader .el-input .el-input__inner .el-input__icon.el-icon-arrow-down {
-        text-overflow: ellipsis;
-        height: 100%;
-        position: relative;
-        top: -4px;
-    }
-    .el-cascader .el-input .el-input__suffix .el-input__icon.el-icon-circle-close {
-        text-overflow: ellipsis;
-        height: 100%;
-        position: relative;
-        top: -4px;
-    }
-}
+// .table-page-search-wrapper {
+//     .el-cascader .el-input {
+//         cursor: pointer;
+//         height: 100%;
+//     }
+//     .el-cascader .el-input .el-input__inner {
+//         text-overflow: ellipsis;
+//         height: 100%;
+//         position: relative;
+//         top: -4px;
+//     }
+//     .el-cascader .el-input .el-icon-arrow-down {
+//         -webkit-transition: -webkit-transform 0.3s;
+//         transition: -webkit-transform 0.3s;
+//         transition: transform 0.3s;
+//         transition: transform 0.3s, -webkit-transform 0.3s;
+//         transition: transform 0.3s, -webkit-transform 0.3s;
+//         font-size: 14px;
+//         position: relative;
+//         top: -4px;
+//     }
+//     .el-cascader .el-input .el-icon-arrow-down.is-reverse {
+//         -webkit-transform: rotateZ(180deg);
+//         transform: rotateZ(180deg);
+//         position: relative;
+//         top: 2px;
+//     }
+//     .el-cascader .el-input .el-input__inner .el-input__icon.el-icon-arrow-down {
+//         text-overflow: ellipsis;
+//         height: 100%;
+//         position: relative;
+//         top: -4px;
+//     }
+//     .el-cascader .el-input .el-input__suffix .el-input__icon.el-icon-circle-close {
+//         text-overflow: ellipsis;
+//         height: 100%;
+//         position: relative;
+//         top: -4px;
+//     }
+// }
 </style>
 <style lang="scss" scoped>
-::v-deep .search-from-select .el-cascader {
-    height: 30px;
-    line-height: 30px;
-}
-::v-deep .search-from-select .el-cascader__search-input {
-    margin-bottom: 5px;
-}
 .chouzhen {
     border-style: solid;
     border-width: 1px;
@@ -362,16 +355,20 @@ a {
     <a-card :bordered="false" class="only-video-material-disable">
         <!-- 查询区域 -->
         <div class="table-page-search-wrapper">
-            <a-form layout="inline" :selfUpdate="true" class="search-from-select">
+            <a-form layout="inline" :selfUpdate="true">
                 <a-row :gutter="24">
                     <a-col :md="8" :sm="8">
-                        <a-form-item label="素材名称">
-                            <a-input placeholder="请输入素材名称" v-model="queryParam.materiaName"></a-input>
+                        <a-form-item label="素材名称" style="width: 100%">
+                            <a-input
+                                placeholder="请输入素材名称"
+                                style="width: 100%"
+                                v-model="queryParam.materialName"
+                            ></a-input>
                         </a-form-item>
                     </a-col>
                     <a-col :md="8" :sm="8">
                         <a-form-item label="媒体">
-                            <a-select v-model="queryParam.mediaType" allowClear>
+                            <a-select v-model="queryParam.mediaType" allowClear style="width: 100%">
                                 <a-select-option :value="''"> 不限 </a-select-option>
                                 <a-select-option :value="1"> 头条 </a-select-option>
                                 <a-select-option :value="2"> 快手 </a-select-option>
@@ -381,14 +378,18 @@ a {
                     <!--  -->
                     <a-col :md="8" :sm="8">
                         <a-form-item label="上传时间">
-                            <a-range-picker v-model="queryParam.createTime" format="YYYY-MM-DD" style="width: 100%" />
+                            <a-range-picker
+                                v-model="queryParam.createTimeDate"
+                                format="YYYY-MM-DD"
+                                style="width: 100%"
+                            />
                         </a-form-item>
                     </a-col>
                     <!--  -->
 
                     <a-col :md="8" :sm="8">
                         <a-form-item label="来源">
-                            <a-select v-model="queryParam.materialSource" allowClear>
+                            <a-select v-model="queryParam.materialSource" allowClear style="width: 100%">
                                 <a-select-option :value="1"> 巨量创意 </a-select-option>
                                 <a-select-option :value="2"> 开眼快创 </a-select-option>
                                 <a-select-option :value="3"> 头条提供 </a-select-option>
@@ -407,17 +408,37 @@ a {
                                 dict="sys_category,name,id"
                                 pidField="pid"
                                 pidValue="f5cb2d2d28417b3b65a6dd744bcb9a76"
+                                style="width: 100%"
                             ></j-tree-select>
                         </a-form-item>
                     </a-col>
                     <a-col :md="8" :sm="8">
+                        <a-form-item label="版位">
+                            <a-select v-model="queryParam.platePosition" style="width: 100%" placeholder="请选择版位">
+                                <a-select-option value="优选广告位"> 优选广告位 </a-select-option>
+                                <a-select-option value="上下滑大屏"> 上下滑大屏 </a-select-option>
+                                <a-select-option value="激励视频广告"> 激励视频广告 </a-select-option>
+                                <a-select-option value="联盟广告"> 联盟广告 </a-select-option>
+                                <a-select-option value="系统优选广告位"> 系统优选广告位 </a-select-option>
+                                <a-select-option value="今日头条"> 今日头条 </a-select-option>
+                                <a-select-option value="西瓜视频"> 西瓜视频 </a-select-option>
+                                <a-select-option value="抖音火山版"> 抖音火山版 </a-select-option>
+                                <a-select-option value="抖音短视频"> 抖音短视频 </a-select-option>
+                                <a-select-option value="穿山甲"> 穿山甲 </a-select-option>
+                                <a-select-option value="ohayoo精品游戏"> ohayoo精品游戏 </a-select-option>
+                                <a-select-option value="番茄小说"> 番茄小说 </a-select-option>
+                                <a-select-option value="通投智选"> 通投智选 </a-select-option>
+                            </a-select>
+                        </a-form-item>
+                    </a-col>
+                    <a-col :md="8" :sm="8">
                         <a-form-item label="场景标签">
                             <el-cascader
                                 placeholder="搜索你想要的场景标签"
                                 :options="departTreeSence"
                                 v-model="queryParam.sceneTag"
                                 :props="{
-                                    multiple: true,
+                                    multiple: false,
                                     value: 'tagCode',
                                     label: 'tagName',
                                     emitPath: false,
@@ -436,7 +457,7 @@ a {
                                 :options="departTreeModality"
                                 v-model="queryParam.modalityTag"
                                 :props="{
-                                    multiple: true,
+                                    multiple: false,
                                     value: 'tagCode',
                                     label: 'tagName',
                                     emitPath: false,
@@ -455,7 +476,7 @@ a {
                                 :options="departTreeMod"
                                 v-model="queryParam.daTag"
                                 :props="{
-                                    multiple: true,
+                                    multiple: false,
                                     value: 'tagCode',
                                     label: 'tagName',
                                     emitPath: false,
@@ -494,9 +515,9 @@ a {
                 "
                 type="primary"
                 icon="plus"
-                >新增</a-button
+                >上传</a-button
             >
-            <a-button @click="batchUploadVisible = true" type="primary" icon="plus">批量新增</a-button>
+            <a-button @click="batchUploadVisible = true" type="primary" icon="plus">批量上传</a-button>
         </div>
         <a-spin :spinning="spinning">
             <div v-if="dataSource.length > 0">
@@ -509,49 +530,42 @@ a {
                                 style="width: 100%; display: flex"
                                 @click.stop
                             >
-                                <span
-                                    style="
-                                        color: #999;
-                                        fontsize: 14px;
-                                        padding-bottom: 10px;
-                                        display: inline-block;
-                                        width: 100%;
-                                        white-space: nowrap;
-                                        overflow: hidden;
-                                        text-overflow: ellipsis;
-                                    "
-                                    :title="items.projectName"
-                                    >{{
-                                        (items.mediaId == '1'
-                                            ? '头条'
-                                            : items.mediaId == '2'
-                                            ? '快手'
-                                            : items.mediaId == '3'
-                                            ? '内广'
-                                            : '内广') + (items.projectName ? '_' + items.projectName : '')
-                                    }}</span
-                                >
-                                <span
-                                    style="
-                                        color: #999;
-                                        fontsize: 14px;
-                                        padding-bottom: 10px;
-                                        display: inline-block;
-                                        width: 100%;
-                                        white-space: nowrap;
-                                        overflow: hidden;
-                                        text-overflow: ellipsis;
-                                    "
-                                    :title="items.materialName"
-                                    >{{ items.materialName }}</span
-                                >
-
-                                <a-icon
-                                    type="close-circle"
-                                    @click="deleteData(items.id)"
-                                    v-show="active == '0' || active == '2'"
-                                    v-if="items.userId == userInfo().id"
-                                />
+                                <a-tooltip placement="top">
+                                    <template slot="title">
+                                        <span>{{ items.materialName }}</span>
+                                    </template>
+                                    <span
+                                        style="
+                                            color: #999;
+                                            fontsize: 14px;
+                                            padding-bottom: 10px;
+                                            display: inline-block;
+                                            width: 100%;
+                                            white-space: nowrap;
+                                            overflow: hidden;
+                                            text-overflow: ellipsis;
+                                        "
+                                        >{{ items.materialName }}</span
+                                    >
+                                </a-tooltip>
+                                <a-tooltip placement="top">
+                                    <template slot="title">
+                                        <span>{{ items.materialDescribe }}</span>
+                                    </template>
+                                    <span
+                                        style="
+                                            color: #999;
+                                            fontsize: 14px;
+                                            padding-bottom: 10px;
+                                            display: inline-block;
+                                            width: 100%;
+                                            white-space: nowrap;
+                                            overflow: hidden;
+                                            text-overflow: ellipsis;
+                                        "
+                                        >{{ items.materialDescribe }}</span
+                                    >
+                                </a-tooltip>
                             </a-badge>
                             <div
                                 style="
@@ -622,16 +636,18 @@ a {
                                     @visibleChange="changeTag(items.md5)"
                                     :overlayStyle="{ width: '400px' }"
                                 >
-                                    <template slot="content" v-if="videoTag.length > 0">
+                                    <template slot="content" v-if="videoTag && videoTag.length > 0">
                                         <!-- {{ videoTag.join(',') }} -->
                                         <!-- <br v-if="index%3"/> -->
                                         <a-tag v-for="(item, index) of videoTag" :key="index" style="margin: 5px">{{
                                             item
                                         }}</a-tag>
-                                        <a-tag>{{ items.materialInnovate == 2 ? '创新素材' : '非创新素材' }}</a-tag>
+                                    </template>
+                                    <template slot="content" v-else-if="videoTag == null">
+                                        <div style="width: 100%; text-align: center">暂无标签</div>
                                     </template>
                                     <template slot="content" v-else>
-                                        <div style="width: 100%; text-align: center">加载中。。。</div>
+                                        <div style="width: 100%; text-align: center">加载中......</div>
                                     </template>
                                     <img
                                         :src="items.coverUrl"
@@ -655,13 +671,25 @@ a {
                                 @click.stop
                             >
                                 <span>{{ items.materialSource | materialSource }}</span>
-                                <span style="margin: 0px 10px">{{
-                                    items.platePosition
-                                        ? items.platePosition[0] == '['
-                                            ? JSON.parse(items.platePosition)[0]
-                                            : items.platePosition
-                                        : ''
-                                }}</span>
+                                <a-tooltip placement="top">
+                                    <template slot="title">
+                                        <span>{{
+                                            items.platePosition
+                                                ? items.platePosition[0] == '['
+                                                    ? JSON.parse(items.platePosition).join()
+                                                    : items.platePosition
+                                                : ''
+                                        }}</span>
+                                    </template>
+                                    <span style="margin: 0px 10px">{{
+                                        items.platePosition
+                                            ? items.platePosition[0] == '['
+                                                ? JSON.parse(items.platePosition)[0]
+                                                : items.platePosition
+                                            : ''
+                                    }}</span>
+                                </a-tooltip>
+
                                 <a-dropdown style="margin-right: 20px">
                                     <a class="ant-dropdown-link" @click="(e) => e.preventDefault()">
                                         操作
@@ -701,12 +729,7 @@ a {
                 />
             </div>
             <div v-else style="width: 100%; height: 400px; display: flex; justify-content: center; align-items: center">
-                <img
-                    src="https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1575627350102&di=02972956f2243933bffc0d85099adbfe&imgtype=jpg&src=http%3A%2F%2Fimg0.imgtn.bdimg.com%2Fit%2Fu%3D1095310825%2C1528244349%26fm%3D214%26gp%3D0.jpg"
-                    alt
-                    v-if="!loading"
-                />
-                <div v-else></div>
+                <a-empty />
             </div>
         </a-spin>
 
@@ -803,6 +826,7 @@ a {
                                 {{ loadDisabled ? '上传中,请稍后' : '文件上传' }}
                             </a-button>
                         </a-upload>
+                        <span>支持扩展名:xlsx、xls</span>
                     </a-form-model-item>
                     <a-form-model-item
                         label="来源"
@@ -818,7 +842,7 @@ a {
                     >
                         <a-select
                             v-model="ruleForm.materialSource"
-                            style="width: 80%"
+                            style="width: 50%"
                             allowClear
                             placeholder="请选择来源"
                         >
@@ -855,7 +879,24 @@ a {
                                 :wrapper-col="{ span: 20 }"
                                 v-if="items.externalUrl"
                             >
-                                {{ items.externalUrl }}
+                                <a-tooltip placement="top">
+                                    <template slot="title">
+                                        <span>{{ items.externalUrl }}</span>
+                                    </template>
+                                    <span
+                                        style="
+                                            color: #999;
+                                            fontsize: 14px;
+                                            padding-bottom: 10px;
+                                            display: inline-block;
+                                            width: 100%;
+                                            white-space: nowrap;
+                                            overflow: hidden;
+                                            text-overflow: ellipsis;
+                                        "
+                                        >{{ items.externalUrl }}</span
+                                    >
+                                </a-tooltip>
                             </a-form-model-item>
                             <a-form-model-item
                                 label="来源"
@@ -1003,11 +1044,6 @@ a {
                                 :prop="'urlListData.' + index + '.platePosition'"
                                 :label-col="{ span: 4 }"
                                 :wrapper-col="{ span: 20 }"
-                                :rules="{
-                                    required: true,
-                                    message: '版位必选',
-                                    trigger: 'blur',
-                                }"
                             >
                                 <a-select
                                     v-model="items.platePosition"
@@ -1029,11 +1065,6 @@ a {
                                 :prop="'urlListData.' + index + '.platePosition'"
                                 :label-col="{ span: 4 }"
                                 :wrapper-col="{ span: 20 }"
-                                :rules="{
-                                    required: true,
-                                    message: '版位必选',
-                                    trigger: 'blur',
-                                }"
                             >
                                 <a-select
                                     v-model="items.platePosition"
@@ -1057,10 +1088,11 @@ a {
 
                             <a-form-model-item :label-col="{ span: 4 }" :wrapper-col="{ span: 20 }" label="描述">
                                 <a-textarea
-                                    placeholder="请输入描述"
+                                    placeholder="请输入10字之内的描述"
                                     v-model="items.materialDescribe"
                                     :auto-size="{ minRows: 3, maxRows: 10 }"
                                     style="width: 80%"
+                                    :max-length="10"
                                 />
                             </a-form-model-item>
                             <!-- <a-form-model-item :wrapper-col="{ span: 14, offset: 4 }" v-if="index == 0">
@@ -1073,7 +1105,7 @@ a {
         </a-modal>
 
         <a-modal
-            :title="add ? '添加素材' : '修改素材'"
+            :title="add ? '上传素材' : '修改素材'"
             v-model="visible"
             @cancel="close"
             @afterClose="close"
@@ -1270,15 +1302,7 @@ a {
                     ></el-cascader>
                 </a-form-item>
                 <a-form-item label="版位" v-if="getData('mediaType') != 1">
-                    <a-select
-                        v-decorator="[
-                            'platePosition', // 给表单赋值或拉取表单时,该input对应的key
-                            { rules: [{ required: true, message: '请选择版位!' }] },
-                        ]"
-                        allowClear
-                        mode="multiple"
-                        placeholder="请选择版位"
-                    >
+                    <a-select v-decorator="['platePosition']" allowClear mode="multiple" placeholder="请选择版位">
                         <a-select-option value="优选广告位"> 优选广告位 </a-select-option>
                         <a-select-option value="上下滑大屏"> 上下滑大屏 </a-select-option>
                         <a-select-option value="激励视频广告"> 激励视频广告 </a-select-option>
@@ -1286,15 +1310,7 @@ a {
                     </a-select>
                 </a-form-item>
                 <a-form-item label="版位" v-else>
-                    <a-select
-                        v-decorator="[
-                            'platePosition', // 给表单赋值或拉取表单时,该input对应的key
-                            { rules: [{ required: true, message: '请选择版位!' }] },
-                        ]"
-                        allowClear
-                        mode="multiple"
-                        placeholder="请选择版位"
-                    >
+                    <a-select v-decorator="['platePosition']" allowClear mode="multiple" placeholder="请选择版位">
                         <a-select-option value="系统优选广告位"> 系统优选广告位 </a-select-option>
                         <a-select-option value="今日头条"> 今日头条 </a-select-option>
                         <a-select-option value="西瓜视频"> 西瓜视频 </a-select-option>
@@ -1317,11 +1333,12 @@ a {
                     v-if="add"
                 >
                     <a-textarea
-                        placeholder="请输入描述"
+                        placeholder="请输入10字之内的描述"
                         v-decorator="[
                             'materialDescribe', // 给表单赋值或拉取表单时,该input对应的key
                         ]"
                         :auto-size="{ minRows: 3, maxRows: 10 }"
+                        :max-length="10"
                     />
                 </a-form-item>
             </a-form>
@@ -1350,7 +1367,7 @@ a {
                         您的浏览器不支持 video 标签。
                     </video>
                 </div>
-                <div style="flex: 3; padding: 10px; box-sizing: border-box">
+                <div style="flex: 3; padding: 10px; box-sizing: border-box; height: 500px; overflow-y: auto">
                     <a-form v-if="allDetailData" class="detail ant-advanced-search-form" layout="inline">
                         <div>
                             <a-form-item label="视频名称">{{ allDetailData.materialName }}</a-form-item>
@@ -1359,7 +1376,25 @@ a {
                             <a-form-item label="唯一编码">{{ allDetailData.md5 }}</a-form-item>
                         </div>
 
-                        <a-form-item label="视频链接">{{ allDetailData.url }}</a-form-item>
+                        <a-form-item label="视频链接" style="margin-bottom: -10px !important">
+                            <a-tooltip placement="top">
+                                <template slot="title">
+                                    <span>{{ allDetailData.url }}</span>
+                                </template>
+                                <span
+                                    style="
+                                        color: #999;
+                                        fontsize: 14px;
+                                        display: inline-block;
+                                        width: 480px;
+                                        white-space: nowrap;
+                                        overflow: hidden;
+                                        text-overflow: ellipsis;
+                                    "
+                                    >{{ allDetailData.url }}</span
+                                >
+                            </a-tooltip>
+                        </a-form-item>
                         <div style="display: flex">
                             <a-form-item label="视频时长" style="flex: 1">{{ allDetailData.second }}秒</a-form-item>
                             <a-form-item label="尺寸" style="flex: 1"
@@ -1384,7 +1419,13 @@ a {
                         </div>
                         <div>
                             <a-form-item label="标签">
-                                <a-tag v-for="(item, index) of tagInfoList" :key="index">{{ item.tagName }}</a-tag>
+                                <div v-if="tagInfoList.length>0">
+                                    <a-tag v-for="(item, index) of tagInfoList" :key="index">{{ item.tagName }}</a-tag>
+                                </div>
+                                <span v-else>
+                                    -
+                                </span>
+                                
                             </a-form-item>
                         </div>
                         <div>
@@ -1416,7 +1457,6 @@ a {
                         tagInfoListVisible = false
                         departValueInfoModality = []
                         departValueInfoMod = []
-                        departValueInfoContent = []
                         departValueInfoSence = []
                         tagCode = null
                     "
@@ -1465,6 +1505,7 @@ a {
                     }"
                     filterable
                     style="width: 100%"
+                    v-if="tagInfoListVisible"
                 ></el-cascader>
             </a-form-item>
             <!-- <a-form-item
@@ -1513,6 +1554,7 @@ a {
                     }"
                     filterable
                     style="width: 100%"
+                    v-if="tagInfoListVisible"
                 ></el-cascader>
             </a-form-item>
             <a-form-item
@@ -1537,6 +1579,7 @@ a {
                     }"
                     filterable
                     style="width: 100%"
+                    v-if="tagInfoListVisible"
                 ></el-cascader>
             </a-form-item>
         </a-modal>
@@ -2105,6 +2148,13 @@ export default {
         })
     },
     watch: {
+        tagInfoListVisible(n, o) {
+            if (!n) {
+                this.departValueInfoModality = []
+                this.departValueInfoMod = []
+                this.departValueInfoSence = []
+            }
+        },
         $route: function (n, o) {
             if (n.path == '/modules/material/videoMaterial') {
                 this.queryParam.userId = this.userInfo().id
@@ -2274,18 +2324,53 @@ export default {
             })
         },
         ruleFormOverUpload(urlAll) {
-            this.ruleForm.urlListData = urlAll.map((item) => {
-                return {
-                    url: item.url,
-                    daTag: [],
-                    modalityTag: [],
-                    sceneTag: [],
-                    materialSource: undefined,
-                    industry: undefined,
-                    platePosition: undefined,
-                    materialDescribe: undefined,
-                }
-            })
+            if (this.ruleForm.urlListData.length == 0) {
+                this.ruleForm.urlListData = urlAll.map((item) => {
+                    return {
+                        url: item.url,
+                        daTag: [],
+                        modalityTag: [],
+                        sceneTag: [],
+                        materialSource: undefined,
+                        industry: undefined,
+                        platePosition: undefined,
+                        materialDescribe: undefined,
+                    }
+                })
+            } else {
+                var data = JSON.parse(JSON.stringify(urlAll))
+                data.splice(0,this.ruleForm.urlListData.length)
+                this.ruleForm.urlListData.push(...data.map((item) => {
+                    return {
+                        url: item.url,
+                        daTag: [],
+                        modalityTag: [],
+                        sceneTag: [],
+                        materialSource: undefined,
+                        industry: undefined,
+                        platePosition: undefined,
+                        materialDescribe: undefined,
+                    }
+                }))
+                // for (let i = 0; i < this.ruleForm.urlListData.length; i++) {
+                //     for (let j = 0; j < urlAll.length; j++) {
+                //         if (this.ruleForm.urlListData[i].url == urlAll[j].url) {
+                //         } else {
+                //             this.ruleForm.urlListData.push({
+                //                 url: urlAll[j].url,
+                //                 daTag: [],
+                //                 modalityTag: [],
+                //                 sceneTag: [],
+                //                 materialSource: undefined,
+                //                 industry: undefined,
+                //                 platePosition: undefined,
+                //                 materialDescribe: undefined,
+                //             })
+                //         }
+                //     }
+                // }
+            }
+            console.log(urlAll, this.ruleForm.urlListData)
         },
         ruleFormRemoveUpload(file) {
             //media-1301855440.cos.ap-chongqing.myqcloud.com/video/2021-08-16/03-1629102879421.mp4
@@ -2499,10 +2584,19 @@ export default {
             if (this.videoVisibleChange != visible) {
                 this.videoVisibleChange = visible
                 this.videoTag = []
-                getAction('/ctop/materialTagInfo/list', { code: visible }).then((res) => {
-                    this.videoTag = res.result.records.map((item) => {
-                        return item.tagName
-                    })
+                getAction('/external/materialCollection/getTagDetail', { md5: visible }).then((res) => {
+                    if (res.success) {
+                        this.videoTag = [
+                            ...res.result.modTagList,
+                            ...res.result.modalityTagList,
+                            ...res.result.sceneTagList,
+                        ].map((item) => {
+                            return item.tagName
+                        })
+                        if (this.videoTag.length == 0) {
+                            this.videoTag = null
+                        }
+                    }
                 })
             } else {
                 return
@@ -2533,6 +2627,18 @@ export default {
             ) {
                 this.departValueInfoSence = []
             }
+
+            if (
+                this.departValueInfoModality.length == 0 ||
+                this.departValueInfoMod.length == 0 ||
+                this.departValueInfoSence.length == 0 ||
+                this.industryId == ''
+            ) {
+                this.$message.error('标签和行业不可为空')
+                this.loadingTag = false
+                return
+            }
+
             var data = [
                 ...this.departValueInfoModality,
                 ...this.departValueInfoMod,
@@ -2996,24 +3102,37 @@ export default {
                     params.userId = this.userInfo().id
 
                     params.materialDescribe = values.materialDescribe
-                    if (this.add) {
-                        if (values.materialType == 1) {
-                            params.url = this.urlList.url
-                            params.md5 = this.urlList.md5
-                            this.postDataAction('/external/materialCollection/addByVideo', params).then((res) => {
-                                if (res.success) {
-                                    this.form.resetFields()
-                                    this.loadData()
-                                    this.visible = false
-                                    this.add = true
-                                    this.$message.success('素材上传成功')
-                                    this.loadingElse = false
-                                } else {
-                                    this.$message.error(res.message)
-                                    this.loadingElse = false
-                                }
-                            })
-                        }
+                    console.log(values)
+                    if (values.materialType == 1) {
+                        params.url = this.urlList.url
+                        params.md5 = this.urlList.md5
+                        this.postDataAction('/external/materialCollection/addByVideo', params).then((res) => {
+                            if (res.success) {
+                                this.form.resetFields()
+                                this.loadData()
+                                this.visible = false
+                                this.add = true
+                                this.$message.success('素材上传成功')
+                                this.loadingElse = false
+                            } else {
+                                this.$message.error(res.message)
+                                this.loadingElse = false
+                            }
+                        })
+                    } else {
+                        this.postDataAction('/external/materialCollection/addByUrl', params).then((res) => {
+                            if (res.success) {
+                                this.form.resetFields()
+                                this.loadData()
+                                this.visible = false
+                                this.add = true
+                                this.$message.success('素材上传成功')
+                                this.loadingElse = false
+                            } else {
+                                this.$message.error(res.message)
+                                this.loadingElse = false
+                            }
+                        })
                     }
                 }
             })