Jelajahi Sumber

Merge branch 'master' of http://git.cc-lotus.info/service-platform/web-test into master

wxy 4 tahun lalu
induk
melakukan
8c598e6f40
3 mengubah file dengan 185 tambahan dan 131 penghapusan
  1. 63 99
      src/views/hall/bei.vue
  2. 113 31
      src/views/hall/direct.vue
  3. 9 1
      src/views/hall/productList/technologyList.vue

+ 63 - 99
src/views/hall/bei.vue

@@ -47,44 +47,57 @@
                 <el-col :span="24" class="title">
                   <span style="color: rgb(255, 132, 0);">现场</span>
                   <span>直播</span>
-                  <el-button type="primary" size="mini" @click="upvideo()" v-if="user.role == '3'">上一个</el-button>
-                  <el-button type="primary" size="mini" @click="nextvideo()" v-if="user.role == '3'">下一个</el-button>
+                  <el-button @click="bofang" type="primary" size="mini">播放</el-button>
                 </el-col>
                 <el-col :span="24" class="video">
-                  <!-- <video
+                  <el-col :span="24" v-if="videodisplay == 'list'" class="videointro" :style="{ height: `${this.user.role == 3 ? '350px' : '395px'}` }">
+                    {{ dockInfo.videointro }}
+                  </el-col>
+                  <video
                     :src="dockInfo.file_path"
                     autoplay=""
                     controls="controls"
                     :style="{ height: `${this.user.role == 3 ? '350px' : '395px'}`, width: '100%' }"
+                    v-else
                   >
                     您的浏览器不支持 video 标签。
                   </video>
-                  <div class="box">
+                  <div class="box" :style="{ height: `${this.user.role == 3 ? '350px' : '395px'}`, width: '100%' }">
                     <div class="con1">
                       <el-col class="lunboList" :span="24" v-for="(item, index) in lunboList" :key="index">
-                        <p>
-                          <span>[{{ item.date }}]</span>
-                          <span>{{ item.type == '0' ? '欢迎' : item.type == '1' ? '祝贺' : '' }}</span>
-                          <span v-if="item.type == '0' || item.type == '2'">{{ item.login_name }}</span>
-                          <span v-if="item.type == '1'">{{ item.market_username }}</span>
-                          <span v-if="item.type == '1'">和</span>
-                          <span v-if="item.type == '1'">{{ item.username }}</span>
-                          <span v-if="item.type == '1'">{{
-                            item.status == '0'
-                              ? '正在洽谈'
-                              : item.status == '1'
-                              ? '达成意向'
-                              : item.status == '2'
-                              ? '交易完成'
-                              : item.status == '3'
-                              ? '取消交易'
-                              : item.status == '4'
-                              ? '交易待确定'
-                              : '暂无'
-                          }}</span>
-                          <span v-if="item.type == '0'">位临现场</span>
-                          <span v-if="item.type == '2'">{{ item.remark }}</span>
-                        </p>
+                        <div>
+                          <p>[{{ item.date }}]</p>
+                          <p>
+                            <span>{{ item.type == '0' ? '欢迎' : item.type == '1' ? '祝贺' : '' }}</span>
+                            <span v-if="item.type == '0' || item.type == '2'">{{ item.login_name }}</span>
+                            <span v-if="item.type == '1'">{{ item.market_username }}</span>
+                            <span v-if="item.type == '1'">和</span>
+                            <span v-if="item.type == '1'">{{ item.username }}</span>
+                            <span v-if="item.type == '1'">{{
+                              item.status == '0'
+                                ? '正在洽谈'
+                                : item.status == '1'
+                                ? '达成意向'
+                                : item.status == '2'
+                                ? '交易完成'
+                                : item.status == '3'
+                                ? '取消交易'
+                                : item.status == '4'
+                                ? '交易待确定'
+                                : '暂无'
+                            }}</span>
+                            <span v-if="item.type == '0'">位临现场</span>
+                            <span v-if="item.type == '2'">{{ item.remark }}</span>
+                            <span v-if="item.type == '0' || item.type == '1'">
+                              <el-image :src="hand" style="width: 15px;top: 12px;left: 5px;margin:0 0 0 5px;"></el-image>
+                              <el-image :src="hand" style="width: 15px;top: 12px;left: 5px;margin:0 0 0 5px;"></el-image>
+                              <el-image :src="hand" style="width: 15px;top: 12px;left: 5px;margin:0 0 0 5px;"></el-image>
+                              <el-image :src="hand" style="width: 15px;top: 12px;left: 5px;margin:0 0 0 5px;"></el-image>
+                              <el-image :src="hand" style="width: 15px;top: 12px;left: 5px;margin:0 0 0 5px;"></el-image>
+                              <el-image :src="hand" style="width: 15px;top: 12px;left: 5px;margin:0 0 0 5px;"></el-image>
+                            </span>
+                          </p>
+                        </div>
                       </el-col>
                     </div>
                   </div>
@@ -97,14 +110,8 @@
                         <el-button @click="send" size="mini" round style="background: #ff8500;color: #fff;">发送</el-button>
                       </el-col>
                     </el-row>
-                  </div> -->
+                  </div>
                   <!-- <videoPlayer ref="videoPlayer" :options="videoOptions" class="vjs-custom-skin videoPlayer" :playsinline="true" /> -->
-                  <el-col :span="24">
-                    <el-col :span="24" style="height:400px;">
-                      <p v-if="videodisplay == 'list'" @click="dakai()">{{ videoListInfo.name }}</p>
-                      <video :src="videoListInfo.file_path" autoplay="" controls="controls" v-else style="height:200px;"></video>
-                    </el-col>
-                  </el-col>
                 </el-col>
               </el-col>
               <el-col :span="12" class="right">
@@ -466,29 +473,7 @@ export default {
     // videoPlayer,
   },
   data: () => ({
-    videoListInfo: {},
-    videoList: [
-      {
-        num: '1',
-        name: '第一个视频 ',
-        file_path: require('@a/video.mp4'),
-      },
-      {
-        num: '2',
-        name: '第二个视频 ',
-        file_path: require('@a/video1.mp4'),
-      },
-      {
-        num: '3',
-        name: '第三个视频 ',
-        file_path: require('@a/video.mp4'),
-      },
-      {
-        num: '4',
-        name: '第四个视频 ',
-        file_path: require('@a/video1.mp4'),
-      },
-    ],
+    hand: require('@/assets/emotion/flower.gif'),
     videodisplay: 'list',
     activeName: 'second',
     //搜索判断用
@@ -583,44 +568,11 @@ export default {
     this.$set(this, `dock_id`, this.$route.query.id);
     // 对接会详情
     await this.searchdock();
-    this.fangvideo();
   },
   methods: {
-    // 放第一个视频
-    fangvideo() {
-      this.$set(this, `videoListInfo`, this.videoList[0]);
-    },
-    dakai() {
+    bofang() {
       this.videodisplay = 'detail';
     },
-    // 下一个
-    nextvideo() {
-      let data = this.videoListInfo;
-      if (data.num == '1') {
-        this.$set(this, `videoListInfo`, this.videoList[data.num]);
-      } else if (data.num == '2') {
-        this.$set(this, `videoListInfo`, this.videoList[data.num]);
-      } else if (data.num == '3') {
-        this.$set(this, `videoListInfo`, this.videoList[data.num]);
-      } else if (data.num == '4') {
-        this.$set(this, `videoListInfo`, this.videoList[0]);
-      }
-      this.videodisplay = 'list';
-    },
-    // 上一个
-    upvideo() {
-      let data = this.videoListInfo;
-      if (data.num == '1') {
-        this.$set(this, `videoListInfo`, this.videoList[3]);
-      } else if (data.num == '2') {
-        this.$set(this, `videoListInfo`, this.videoList[0]);
-      } else if (data.num == '3') {
-        this.$set(this, `videoListInfo`, this.videoList[1]);
-      } else if (data.num == '4') {
-        this.$set(this, `videoListInfo`, this.videoList[2]);
-      }
-      this.videodisplay = 'list';
-    },
     ...mapProduct({ mapProductQuery: 'newquery' }),
     ...market({ marketFetch: 'fetch', operaFetch: 'operaFetch', sendMsg: 'operationCreate' }),
     ...dock({ dockQuery: 'query', dockFetch: 'fetch', goodsquery: 'goodsquery' }),
@@ -661,7 +613,7 @@ export default {
       this.$set(this.statNum, `tyjb`, arr.data.length);
       // 洽谈合作
       let qthe = await this.tquery({ status: 0, dockid: this.id });
-      this.$set(this.statNum, `qthz`, qthe.total);
+      this.$set(this.statNum, `qthz`, arr.data.length);
       // 达成意向
       let dcyx = await this.tquery({ status: 1, dockid: this.id });
       for (const val of dcyx.data) {
@@ -848,6 +800,17 @@ export default {
 </script>
 
 <style lang="less" scoped>
+.videointro {
+  padding: 110px 30px;
+  font-size: 35px;
+  color: #6e042c;
+  text-align: center;
+  font-family: cursive;
+  -webkit-text-stroke: 1px;
+  letter-spacing: 3px;
+  -webkit-text-stroke: 1px #f18d2c;
+  -webkit-text-fill-color: transparent;
+}
 .textOver {
   overflow: hidden;
   text-overflow: ellipsis;
@@ -954,7 +917,7 @@ export default {
   margin: 0 10px 10px 10px;
   border: 2px solid #ccc;
   width: 97%;
-  // background-color: #000;
+  background-color: #000;
 }
 .livemain .livevideo .right {
   height: 460px;
@@ -1543,17 +1506,18 @@ export default {
   top: 0;
   z-index: 999;
   width: 100%;
-  height: 300px;
-  overflow: hidden;
+  overflow: auto;
   .lunboList {
-    height: 30px;
-    line-height: 30px;
-    padding: 0 10px;
+    padding: 10px 20px;
     font-weight: bold;
     color: #ffffff8f;
-    p {
+    p:nth-child(1) {
       font-size: 16px;
     }
+    p:nth-child(2) {
+      font-size: 20px;
+      padding: 10px 0;
+    }
   }
   // .lunboList:first-child {
   //   color: #ff0000;

+ 113 - 31
src/views/hall/direct.vue

@@ -172,8 +172,31 @@
                     <el-row>
                       <el-col :span="24" class="demandList">
                         <el-col :span="24" class="topList">
-                          <el-col :span="24" class="list" v-for="(item, index) in demandList" :key="index">
-                            <el-col :span="20" class="name">
+                          <el-col :span="4" class="list" v-for="(item, index) in demandList" :key="index" @click.native="oneBtnDetail(item)">
+                            <el-image :src="achievezb"></el-image>
+                            <el-col :span="24" class="aName textOver">
+                              {{ item.name }}
+                            </el-col>
+                            <el-col :span="24" class="a-brief">{{ item.achievebrief }}</el-col>
+                            <el-col :span="24" class="cont">
+                              <el-col :span="24" class="a-field">领域:{{ item.field }}</el-col>
+                              <el-col :span="24" class="a-contacts">联系人:{{ item.contacts }}</el-col>
+                            </el-col>
+                            <el-col :span="24" class="clickBtn">
+                              <el-button size="mini" type="primary" @click="oneBtnDetail(item)">详情</el-button>
+                              <el-button
+                                size="mini"
+                                type="success"
+                                @click="
+                                  $router.push({
+                                    path: '/live/hall/dock/dockDetail',
+                                    query: { id: item._id, dockid: dock_id, user_id: user_id, type: item.type },
+                                  })
+                                "
+                                >对接</el-button
+                              >
+                            </el-col>
+                            <!-- <el-col :span="20" class="name">
                               <p>{{ item.name }}</p>
                             </el-col>
                             <el-col :span="4" class="click">
@@ -204,7 +227,7 @@
                             </el-col>
                             <el-col :span="8" class="introduction">
                               <p><span>成果简介:</span>{{ item.achievebrief }}</p>
-                            </el-col>
+                            </el-col> -->
                           </el-col>
                         </el-col>
                         <el-col :span="24" class="btn">
@@ -474,6 +497,7 @@ export default {
   },
   data: () => ({
     hand: require('@/assets/emotion/flower.gif'),
+    achievezb: require('@/assets/3.png'),
     videodisplay: 'list',
     activeName: 'second',
     //搜索判断用
@@ -1421,43 +1445,101 @@ export default {
     height: 430px;
     overflow: hidden;
     .list {
-      padding: 4px 0;
-      border-bottom: 1px dashed #ccc;
-      .name {
-        height: 30px;
-        line-height: 30px;
-
-        p {
-          font-size: 16px;
-          span:first-child {
-            display: inline-block;
-            width: 300px;
-          }
-        }
+      height: 215px;
+      position: relative;
+      margin: 5px 10px 0px 9px;
+      width: 15%;
+      .el-image {
+        width: 100%;
+        height: 205px;
+        overflow: hidden;
+        // border-radius: 5px;
+        // transition: all 0.4s linear;
+        position: relative;
       }
-      .click {
-        height: 30px;
-        line-height: 30px;
+      .aName {
+        position: absolute;
+        top: 30px;
+        left: 0px;
         text-align: center;
+        transform: scale(0.8);
+        font-weight: bolder;
+        -webkit-text-stroke: 1px #f18d2c;
+        font-style: oblique;
+        -webkit-text-fill-color: transparent;
+        letter-spacing: 3px;
       }
-      .otherInfo {
-        .field {
-          font-size: 14px;
-          padding: 8px 0 0 0;
-        }
-        .coopermode {
-          font-size: 14px;
-          padding: 8px 0 0 0;
-        }
-      }
-      .introduction {
+      .a-brief {
+        margin: 10px 0px;
+        position: absolute;
+        top: 30px;
+        left: 0px;
         overflow: hidden;
+        line-height: 20px;
+        letter-spacing: 2px;
         text-overflow: ellipsis;
-        -webkit-line-clamp: 2;
+        -webkit-line-clamp: 5;
         word-break: break-all;
         display: -webkit-box;
         -webkit-box-orient: vertical;
+        transform: scale(0.8);
       }
+      .cont {
+        position: absolute;
+        left: 0px;
+        bottom: 50px;
+        transform: scale(0.8);
+        .a-field {
+          overflow: hidden;
+          text-overflow: ellipsis;
+          white-space: nowrap;
+        }
+      }
+      .clickBtn {
+        position: relative;
+        top: -38px;
+        text-align: center;
+        /deep/.el-button {
+          padding: 5px 10px;
+        }
+      }
+      // padding: 4px 0;
+      // border-bottom: 1px dashed #ccc;
+      // .name {
+      //   height: 30px;
+      //   line-height: 30px;
+
+      //   p {
+      //     font-size: 16px;
+      //     span:first-child {
+      //       display: inline-block;
+      //       width: 300px;
+      //     }
+      //   }
+      // }
+      // .click {
+      //   height: 30px;
+      //   line-height: 30px;
+      //   text-align: center;
+      // }
+      // .otherInfo {
+      //   .field {
+      //     font-size: 14px;
+      //     padding: 8px 0 0 0;
+      //   }
+      //   .coopermode {
+      //     font-size: 14px;
+      //     padding: 8px 0 0 0;
+      //   }
+      // }
+      // .introduction {
+      //   overflow: hidden;
+      //   text-overflow: ellipsis;
+      //   -webkit-line-clamp: 2;
+      //   word-break: break-all;
+      //   display: -webkit-box;
+      //   -webkit-box-orient: vertical;
+      // }
     }
   }
   .btn {

+ 9 - 1
src/views/hall/productList/technologyList.vue

@@ -22,7 +22,12 @@
                   <el-button
                     size="mini"
                     type="success"
-                    @click="$router.push({ path: '/live/hall/dock/dockDetail', query: { id: item.id, dockid: dock_id, user_id: user_id } })"
+                    @click="
+                      $router.push({
+                        path: '/live/hall/dock/dockDetail',
+                        query: { id: item._id, dockid: dock_id, user_id: user_id, type: item.type },
+                      })
+                    "
                     >对接</el-button
                   >
                 </el-col>
@@ -62,6 +67,7 @@ export default {
     total: 0,
     dock_id: '',
     dockInfo: {},
+    user_id: '',
   }),
   created() {
     this.$set(this, `dock_id`, this.$route.query.dockid);
@@ -72,6 +78,8 @@ export default {
     async search() {
       let res = await this.dockFetch(this.dock_id);
       this.$set(this, `dockInfo`, res.data);
+      // 对接会创建人id
+      this.$set(this, `user_id`, res.data.user_id);
       if (this.$checkRes(res)) {
         let productList = res.data.apply.map(item => item.goodsList);
         productList = _.flattenDeep(productList);