Procházet zdrojové kódy

bugfix删除废弃文件

谢杰标 před 2 roky
rodič
revize
5f63127e5b

+ 0 - 92
common/config copy.js

@@ -1,92 +0,0 @@
-// test 测试环境
-const test = {
-  BASE_URL: "http://120.79.166.78:19012",
-  BASE_IMG_URL: "https://file-dev.xyyxt.net/",
-  WEBVIEW_URL: "http://120.79.166.78:18001/",
-  domain: "h.xyyxt.net",
-  tenantId: "867735392558919680", //详粤云学堂
-  appid: "wxd3c8ae80cf43a305",
-  version: "1.0.2",
-  TOP_LOGO: "/static/logo2.png",
-  SCAN_LOGO: "/static/me/logo.png",
-  tenantName: "祥粤云学堂",
-  host:
-    process.env.NODE_ENV === "production"
-      ? window.location.host
-      : "120.79.166.78:19012",
-};
-const index = 0; // 测试环境
-// const index = 1 // 祥粤云学堂
-// const index = 2 // 祥粤学堂
-// const index = 3 // 勘设云学堂
-// const index = 4 // 中正云学堂
-// const index = 5 // 山西云学堂
-const set = [
-  test,
-  // 祥粤云学堂
-  {
-    BASE_URL: "https://api.xyyxt.net",
-    BASE_IMG_URL: "https://file.xyyxt.net/",
-    WEBVIEW_URL: "https://m.xyyxt.net/",
-    domain: "h.xyyxt.net",
-    tenantId: "867735392558919680",
-    appid: "wxd3c8ae80cf43a305",
-    tenantName: "祥粤云学堂",
-    version: "1.0.2",
-    TOP_LOGO: "/static/logo2.png",
-    SCAN_LOGO: "/static/me/logo.png",
-  },
-  // 祥粤学堂
-  {
-    BASE_URL: "https://api.xyyxt.net",
-    BASE_IMG_URL: "https://file.xyyxt.net/",
-    WEBVIEW_URL: "https://cm.xyyxt.net/",
-    domain: "",
-    tenantId: "667735392758919630",
-    appid: "wx871153afc95f55f4",
-    tenantName: "祥粤学堂",
-    version: "1.0.2",
-    TOP_LOGO: "/static/logo2.png",
-    SCAN_LOGO: "/static/me/logo.png",
-  },
-  // 勘设云学堂
-  {
-    BASE_URL: "https://api.xyyxt.net",
-    BASE_IMG_URL: "https://file.xyyxt.net/",
-    WEBVIEW_URL: "https://zstcm.xyyxt.net/",
-    domain: "",
-    tenantId: "567735392758918520",
-    appid: "wx29d0ad81e625ad81",
-    tenantName: "勘设云学堂",
-    version: "1.0.2",
-    TOP_LOGO: "/static/logo520.png",
-    SCAN_LOGO: "/static/me/logo520.png",
-  },
-  // 中正云学堂
-  {
-    BASE_URL: "https://api.xyyxt.net",
-    BASE_IMG_URL: "https://file.xyyxt.net/",
-    WEBVIEW_URL: "https://live.gdzzkj.net/",
-    domain: "h.gdzzkj.net",
-    tenantId: "141250585240548145",
-    appid: "wx5872ef563d13dabf",
-    tenantName: "中正云学堂",
-    version: "1.0.2",
-    TOP_LOGO: "/static/logo145.png",
-    SCAN_LOGO: "/static/me/logo145.png",
-  },
-  // 山西云学堂
-  {
-    BASE_URL: "https://api.xyyxt.net",
-    BASE_IMG_URL: "https://file.xyyxt.net/",
-    WEBVIEW_URL: "https://sxlive.gdzzkj.net /",
-    domain: "sxm.gdzzkj.net",
-    tenantId: "471722209971055962",
-    appid: "wx5872ef563d13dabf",
-    tenantName: "山西云学堂",
-    version: "1.0.2",
-    TOP_LOGO: "/static/logo962.png",
-    SCAN_LOGO: "/static/me/logo962.png",
-  },
-];
-export default set[index];

+ 8 - 0
common/httpList/course.js

@@ -223,4 +223,12 @@ export default {
 			data: data
 		})
 	},
+	// 二建二造检测必修是否学完
+	checkFinishRequiredCourse(data) {
+		return myRequest({
+			url: '/grade/grade/checkFinishRequiredCourse',
+			method: 'get',
+			data: data
+		})
+	},
 }

+ 60 - 15
components/course/handoutsBox.vue

@@ -1,8 +1,21 @@
 <template>
   <view>
-    <view class="a" v-for="item in list" :key="item.fileId">
-      <handouts-tree :fileInfo="item"></handouts-tree>
-    </view>
+    <template
+      v-if="courseHandoutsData.fileList && courseHandoutsData.fileList.length"
+    >
+      <u-search
+        placeholder="搜索讲义名称"
+        bg-color="#ffffff"
+        margin="0 0 20rpx"
+        v-model="keyword"
+        @custom="search"
+        @search="search"
+      ></u-search>
+      <view class="handouts-box" v-for="item in searchList" :key="item.fileId">
+        <handouts-tree :canDownload="courseHandoutsData.canDownload" :fileInfo="item"></handouts-tree>
+      </view>
+    </template>
+    <view v-else style="text-align: center">暂无讲义</view>
   </view>
 </template>
 
@@ -11,20 +24,52 @@ import handoutsTree from "@/components/course/handoutsTree.vue";
 export default {
   name: "HandoutsBox",
   props: {
-    list: {
-      type: Array,
-      default: () => {
-        return [];
-      },
+    handoutsId: {
+      type: Number,
     },
   },
   data() {
-    return {};
+    return {
+      keyword: "",
+      searchList: [],
+      courseHandoutsData: [],
+    };
   },
 
-  mounted() {},
+  mounted() {
+    this.courseHandouts();
+  },
+  methods: {
+    search(val) {
+      if (!val) {
+        this.searchList = this.backClone();
+        return;
+      }
+      this.searchList = this.filterList(this.backClone(), []);
+    },
+    filterList(list, res) {
+      list.forEach((ele) => {
+        if (ele.type == 1 && ele.urlName.includes(this.keyword)) {
+          res.push(ele);
+        }
+        if (ele.children && ele.children.length) {
+          this.filterList(ele.children, res);
+        }
+      });
+      return res;
+    },
+    backClone() {
+      return JSON.parse(JSON.stringify(this.courseHandoutsData.fileList));
+    },
+    courseHandouts() {
+      this.$api.courseHandouts(this.handoutsId).then((res) => {
+        this.courseHandoutsData = res.data.data;
+        this.searchList = this.backClone();
+        console.log(this.courseHandoutsData,666)
+      });
+    },
+  },
 
-  methods: {},
   components: {
     handoutsTree,
   },
@@ -32,9 +77,9 @@ export default {
 </script>
 
 <style lang="scss" scoped>
-.a{
-    border-radius: 20rpx;
-    background: #ffffff;
-    margin-bottom: 20rpx;
+.handouts-box {
+  border-radius: 20rpx;
+  background: #ffffff;
+  margin-bottom: 20rpx;
 }
 </style>

+ 18 - 11
components/course/handoutsTree.vue

@@ -4,7 +4,7 @@
       <view
         @click="handelClick"
         class="fl u-border-bottom"
-        style="height: 78rpx"
+        style="height: 78rpx; padding-right: 30rpx"
       >
         <u-icon name="arrow-down" color="#999" size="24" v-if="!down"></u-icon>
         <u-icon name="arrow-right" color="#999" size="24" v-if="down"></u-icon>
@@ -12,7 +12,10 @@
       </view>
       <view v-show="!down">
         <view v-for="item in fileInfo.children" :key="item.fileId">
-          <handouts-tree :fileInfo="item"></handouts-tree>
+          <handouts-tree
+            :canDownload="canDownload"
+            :fileInfo="item"
+          ></handouts-tree>
         </view>
       </view>
     </view>
@@ -21,7 +24,7 @@
         <view class="title u-line-1">
           {{ fileInfo.urlName }}
         </view>
-        <view @click="openDocument(item)">
+        <view @click="openDocument">
           <image
             v-if="!downLoading"
             src="/pages3/static/imgs/downLoad.png"
@@ -38,6 +41,7 @@
 </template>
 
 <script>
+import handoutsTree from "@/components/course/handoutsTree.vue";
 export default {
   name: "handoutsTree",
   props: {
@@ -47,21 +51,23 @@ export default {
         return {};
       },
     },
+    canDownload: {
+      type: Number,
+    },
   },
   data() {
     return {
       down: true,
+      downLoading: false,
     };
   },
 
-  mounted() {},
-
   methods: {
     handelClick() {
       this.down = !this.down;
     },
-    openDocument(item) {
-      let url = this.$method.splitImgHost(item.url);
+    openDocument() {
+      let url = this.$method.splitImgHost(this.fileInfo.url);
       // #ifdef H5
       window.location.href = url;
       // #endif
@@ -75,10 +81,10 @@ export default {
           uni.openDocument({
             filePath: filePath,
             fileType: "pdf",
-            showMenu: item.canDownload == 1 ? true : false,
+            showMenu: this.canDownload == 1 ? true : false,
             success: (res) => {
               this.downLoading = false;
-              uni.setStorageSync("current", this.current);
+              uni.setStorageSync("nofresh", 1);
             },
             fail: (err) => {
               this.downLoading = false;
@@ -101,19 +107,20 @@ export default {
       // #endif
     },
   },
+  components: {
+    handoutsTree,
+  },
 };
 </script>
 
 <style lang="scss" scoped>
 .menu_name {
-  flex: 1;
   font-size: 26rpx;
   font-weight: bold;
   color: #333;
   margin-left: 14rpx;
 }
 
-
 .level1 {
   height: 78rpx;
   padding-right: 20rpx;

+ 0 - 1
components/nav-bar/nav-logo.vue

@@ -47,7 +47,6 @@ export default {
   },
   methods: {
     load(e) {
-      console.log(e.detail);
       this.imgwidth = e.detail.width * 2;
       this.imgheight = e.detail.height * 2;
     },

+ 0 - 12
pages.json

@@ -1097,18 +1097,6 @@
             }
           }
         },
-        {
-          "path": "scan/examact",
-          "style": {
-            "navigationBarTitleText": "考前活动",
-            "navigationBarBackgroundColor": "#0386FD",
-            "navigationStyle": "custom", // 隐藏系统导航栏
-            "app-plus": {
-              "titleNView": false, //禁用原生导航栏
-              "bounce": "none"
-            }
-          }
-        },
         {
           "path": "scan/retailact",
           "style": {

+ 3 - 3
pages2/bank/question_detail.vue

@@ -77,7 +77,7 @@
 								</view>
 								<view v-if="item2.showList">
 									<view class="article active" style="margin-left:62rpx;" v-for="(article, index3) in item2.list" :key="index3">
-										<view class="flex_auto">{{ article.examName }}</view>
+										<view class="flex_auto u-line-2">{{ article.examName }}</view>
 										<view class="btn" @click="toDo(article.examId, goodsData.goodsId, item1.majorId, item2.chapterExamId)" v-if="article.recordStatus == -1">做题</view>
 										<view class="btn" @click="continueDo(article.recordId,article.examId, goodsData.goodsId, item2.chapterExamId, item1.majorId)" v-if="article.recordStatus == 0 && article.doType == 1">继续</view>
 										<view class="btn" :class="{disabled:(article.answerNum > 0 && article.doNum >= article.answerNum)}" @click="doRepeat(article.recordId,article.examId, goodsData.goodsId, item2.chapterExamId, item1.majorId)" v-if="article.recordStatus == 1 || (article.recordStatus == 0 && article.doType == 2)">重做</view>
@@ -98,7 +98,7 @@
 						</view>
 						<view v-if="item1.showList">
 							<view class="article active" style="margin-left:64rpx;" v-for="(article, index2) in item1.list" :key="index2">
-								<view class="flex_auto">{{ article.examName }}</view>
+								<view class="flex_auto u-line-2">{{ article.examName }}</view>
 								<view class="btn" @click="toDo(article.examId, goodsData.goodsId, 0, item1.majorId)" v-if="article.recordStatus == -1">做题</view>
 								<view class="btn" @click="continueDo(article.recordId,article.examId, goodsData.goodsId, 0, item1.majorId)" v-if="article.recordStatus == 0 && article.doType == 1">继续</view>
 								<view class="btn" :class="{disabled:(article.answerNum > 0 && article.doNum >= article.answerNum)}" @click="doRepeat(article.recordId,article.examId, goodsData.goodsId, item1.majorId,0)" v-if="article.recordStatus == 1 || (article.recordStatus == 0 && article.doType == 2)">重做</view>
@@ -108,7 +108,7 @@
 
 					<template v-if="item1.type == 3">
 						<view class="article active">
-							<view class="flex_auto">{{ item1.name }}</view>
+							<view class="flex_auto u-line-2">{{ item1.name }}</view>
 							<view class="btn" @click="toDo(item1.majorId, goodsData.goodsId, 0, 0)" v-if="item1.recordStatus == -1">做题</view>
 							<view class="btn" @click="continueDo(item1.recordId,item1.majorId, goodsData.goodsId, 0, 0)" v-if="item1.recordStatus == 0 && item1.doType == 1">继续</view>
 							<view class="btn" :class="{disabled:(item1.answerNum > 0 && item1.doNum >= item1.answerNum)}" @click="doRepeat(item1.recordId,item1.majorId, goodsData.goodsId, 0, 0)" v-if="item1.recordStatus == 1 || (item1.recordStatus == 0 && item1.doType == 2)">重做</view>

+ 34 - 197
pages3/polyv/detail.vue

@@ -244,32 +244,10 @@
         </view>
         <!--讲义 -->
         <view v-show="current == 1">
-          <template v-if="courseHandoutsData.length">
-            <view
-              class="lecture-box"
-              v-for="(item, index) in courseHandoutsData"
-              :key="index"
-            >
-              <view class="title">
-                {{ item.urlName }}
-              </view>
-              <view class="btn" @click="openDocument(item)">
-                <image
-                  v-if="!downLoading"
-                  src="/pages3/static/imgs/downLoad.png"
-                  style="width: 40rpx; height: 40rpx"
-                ></image>
-                <image
-                  v-else
-                  src="/pages3/static/imgs/downLoading.png"
-                  class="loading_down"
-                  style="width: 40rpx; height: 40rpx"
-                ></image>
-              </view>
-            </view>
-          </template>
-          <view v-else style="text-align: center">暂无讲义</view>
-          <handouts-box :list="fileList"></handouts-box>
+          <handouts-box
+            :handoutsId="goodsData.handoutsId"
+            v-if="goodsData.handoutsId"
+          ></handouts-box>
         </view>
         <!--笔记 -->
         <view v-show="current == 2">
@@ -830,7 +808,6 @@ export default {
         isAutoChange: false,
         forceVideo: false,
       },
-      courseHandoutsData: [],
       liveDetail: {},
       showSet: false,
       startStatus: false,
@@ -897,7 +874,6 @@ export default {
       clearTimer: null,
       livingItem: "",
       option: null,
-      downLoading: false, //下载讲义加载
       muluStyle: false, //显示和隐藏目录样式
       bottomHeight: 0,
       toggleCourseShow: false, // 切换课程弹窗
@@ -928,76 +904,6 @@ export default {
       pauseTimer: null,
       barTimer: null,
       isReach: false,
-      fileList: [
-        {
-          fileId: 501,
-          url: null,
-          urlName: "1微信图片2微信图片2微信图片2微信图片2微信图片2微信图片2微信图片2",
-          status: 1,
-          handoutsId: 1557,
-          sort: 1,
-          type: 2,
-          parentId: 0,
-          children: [
-            {
-              fileId: 502,
-              url: null,
-              urlName: "2",
-              status: 1,
-              handoutsId: 1557,
-              sort: 1,
-              type: 2,
-              parentId: 501,
-              children: [
-                {
-                  fileId: 504,
-                  url: "oss/images/certificate/20230411/1681201704754.jpg",
-                  urlName: "微信图片1微信图片2微信图片2微信图片2微信图片2微信图片2微信图片2微信图片2",
-                  status: 1,
-                  handoutsId: 1557,
-                  sort: 1,
-                  type: 1,
-                  parentId: 503,
-                  children: null,
-                },
-              ],
-            },
-            {
-              fileId: 506,
-              url: null,
-              urlName: "3",
-              status: 1,
-              handoutsId: 1557,
-              sort: 1,
-              type: 2,
-              parentId: 501,
-            },
-          ],
-        },
-        {
-          fileId: 502,
-          url: null,
-          urlName: "zhiyuan(修改终版-02)",
-          status: 1,
-          handoutsId: 1557,
-          sort: 1,
-          type: 2,
-          parentId: 0,
-          children: [
-            {
-              fileId: 504,
-              url: "oss/images/certificate/20230411/1681201704754.jpg",
-              urlName: "微信图片1.jpg",
-              status: 1,
-              handoutsId: 1557,
-              sort: 1,
-              type: 1,
-              parentId: 503,
-              children: null,
-            },
-          ],
-        },
-      ],
     };
   },
   computed: {
@@ -1050,6 +956,10 @@ export default {
     option.informId && this.clickOfficial(option.informId);
   },
   async onShow() {
+    if(uni.getStorageSync('nofresh')){
+      uni.removeStorageSync('nofresh')
+      return
+    }
     if (this.option.skipPort) {
       await this.$method.skipLogin(this.option.skipPort);
     }
@@ -1302,7 +1212,6 @@ export default {
           this.studyRecordQueryLiveLast();
         }
       });
-      this.current = uni.getStorageSync("current") || 0;
     },
     // 原来的mouted内容
     originMounted() {
@@ -1423,7 +1332,6 @@ export default {
             uni.hideLoading();
           });
       }
-      uni.removeStorageSync("current");
     },
     changeCourses() {
       this.toggleCourseShow = true;
@@ -2173,19 +2081,6 @@ export default {
     itemWidth() {
       return 100 / this.list.length + "%";
     },
-    /**
-     * 获取讲义权限
-     */
-    courseHandouts() {
-      if (!this.goodsData.handoutsId) {
-        return;
-      }
-      this.$api
-        .getHandoutList({ handoutsId: this.goodsData.handoutsId })
-        .then((res) => {
-          this.courseHandoutsData = res.data.rows;
-        });
-    },
     findMenuNextSection(index) {
       for (let i = index + 1; i < this.reMenuList.length; i++) {
         let item = this.reMenuList[i];
@@ -3529,17 +3424,41 @@ export default {
         this.navShow = false;
       }
     },
+    checkFinishRequiredCourse() {
+      return this.$api
+        .checkFinishRequiredCourse({
+          businessId: this.goodsData.businessId,
+        })
+        .then((res) => {
+          if (res.data.data == 0) {
+            // uni.showModal({
+            //   showCancel: false,
+            //   confirmText: "确定",
+            //   content:
+            //     "请先学完必修课程!",
+            //   success: function (resultst) {
+            //     uni.navigateBack();
+            //   },
+            // });
+            // return Promise.reject()
+          }
+          return Promise.resolve();
+        });
+    },
     getGoodsDetail() {
       let self = this;
       // '/goods/'+ data,
-      this.$api.goodsDetail(this.goodsId).then((res) => {
+      this.$api.goodsDetail(this.goodsId).then(async (res) => {
         this.goodsData = res.data.data;
+        this.goodsData.categoryName != "必修" &&
+          (await this.checkFinishRequiredCourse());
         if (self.goodsData.buyNote) {
           this.baseHandoutTipList();
         }
         self.gradeId = self.goodsData.gradeId;
+        self.erJianErZao = self.goodsData.erJianErZao;
+
         this.courseBusiness(this.goodsData.businessId);
-        this.courseHandouts();
         self.getMenuList();
         self.getReMenuList(); //获取重修目录
         setTimeout(function () {
@@ -3569,7 +3488,6 @@ export default {
             self.playbackRate = [0.5, 0.8, 1.0, 1.25, 1.5, 2.0];
           }
         }
-        self.erJianErZao = self.goodsData.erJianErZao;
         if (self.goodsData.goodsPhotographConfig) {
           self.goodsPhotographConfig = JSON.parse(
             self.goodsData.goodsPhotographConfig
@@ -3750,46 +3668,6 @@ export default {
     change(index) {
       this.current = index;
     },
-    openDocument(item) {
-      let url = this.$method.splitImgHost(item.url);
-      // #ifdef H5
-      window.location.href = url;
-      // #endif
-      // #ifdef MP-WEIXIN
-      this.downLoading = true;
-      uni.downloadFile({
-        url: url,
-        success: (res) => {
-          var filePath = res.tempFilePath;
-          // h5不支持
-          uni.openDocument({
-            filePath: filePath,
-            fileType: "pdf",
-            showMenu: item.canDownload == 1 ? true : false,
-            success: (res) => {
-              this.downLoading = false;
-              uni.setStorageSync("current", this.current);
-            },
-            fail: (err) => {
-              this.downLoading = false;
-              uni.showToast({
-                icon: "none",
-                title: "文档地址错误",
-              });
-            },
-          });
-        },
-        fail: (err) => {
-          this.downLoading = false;
-          uni.showModal({
-            title: "提示",
-            content: "文档错误," + err.errMsg,
-            showCancel: false,
-          });
-        },
-      });
-      // #endif
-    },
     clickMulu() {
       this.muluStyle = !this.muluStyle;
     },
@@ -4109,47 +3987,6 @@ export default {
   border-radius: 16rpx;
   font-size: 24rpx;
 }
-.lecture-box {
-  display: flex;
-  align-items: center;
-  height: 80rpx;
-  background: #ffffff;
-  border-radius: 16rpx 16rpx 16rpx 16rpx;
-  margin-bottom: 20rpx;
-  .title {
-    padding: 10rpx;
-    flex: 1;
-    overflow: hidden;
-    text-overflow: ellipsis;
-    white-space: nowrap;
-    color: #333;
-    font-weight: bold;
-    font-size: 32rpx;
-  }
-
-  .btn {
-    display: flex;
-    align-items: center;
-    justify-content: center;
-    width: 80rpx;
-    height: 80rpx;
-    background: #ffffff;
-    box-shadow: -4rpx 0rpx 4rpx 0rpx rgba(0, 0, 0, 0.1);
-    border-radius: 16rpx 16rpx 16rpx 16rpx;
-  }
-  @keyframes rotation {
-    from {
-      -webkit-transform: rotate(0deg);
-    }
-    to {
-      -webkit-transform: rotate(360deg);
-    }
-  }
-  .loading_down {
-    transform: rotate(360deg);
-    animation: rotation 3s linear infinite;
-  }
-}
 
 .lecture-content {
   background: #fff;

+ 0 - 256
pages5/scan/examact.vue

@@ -1,256 +0,0 @@
-<template>
-  <view class="examact">
-    <view class="examact-tname">{{ tenantInfo.name }}</view>
-    <img
-      :src="$method.splitImgHost('oss/images/file/20230320/1679298401443.png')"
-      alt=""
-      srcset=""
-    />
-    <view class="examact-btn" @click="collectMerch"> 点击领取真题题库 </view>
-
-    <view class="examact-phone" v-if="tenantInfo.phone">
-      报名热线:
-      <view>{{ tenantInfo.phone1 }}</view>
-      <view>{{ tenantInfo.phone2 }}</view>
-    </view>
-    <view class="examact-qrcode">
-      <tki-qrcode
-        :show="true"
-        :size="160"
-        cid="qrcode1"
-        ref="qrcode"
-        :val="val"
-        :showLoading="false"
-        :loadMake="true"
-        :usingComponents="true"
-      />
-
-      <img
-        class="examact-qrcode111"
-        :src="'../../static/qrcode/' + tenantInfo.qrcodeUrl"
-        alt=""
-        srcset=""
-      />
-    </view>
-  </view>
-</template>
-
-<script>
-const map = {
-  "test.jqbao.net": {
-    name: "测试云学堂",
-    qrcodeUrl: "hnjsxt_act.png",
-    goodsId: "7722",
-  },
-  "120.79.166.78:19006": {
-    name: "广东省祥粤建设职业培训学校",
-    qrcodeUrl: "h_act.png",
-    phone: true,
-    phone1: "020-87085982",
-    phone2: "020-87085983",
-    goodsId: "16370",
-    scheme: "http://",
-  },
-  "h.xyyxt.net": {
-    name: "广东省祥粤建设职业培训学校",
-    qrcodeUrl: "h_act.png",
-    phone: true,
-    phone1: "020-87085982",
-    phone2: "020-87085983",
-    goodsId: "7798",
-  },
-  "www.hnjsxt.cn": {
-    name: "企帮(广州)工程建设咨询服务有限公司",
-    qrcodeUrl: "hnjsxt_act.png",
-    scheme: "http://",
-    learnUrl: "",
-    goodsId: "8673",
-  },
-  "zsh5.zzyxt.net": {
-    name: "中山市勘设工程咨询有限公司",
-    qrcodeUrl: "zsh5_act.png",
-    goodsId: "8678",
-  },
-  "zh5.zzyxt.net": {
-    name: "肇庆市建筑业协会",
-    qrcodeUrl: "zh5_act.png",
-    goodsId: "8677",
-    phone: true,
-    phone1: "0758—2285500",
-    phone2: "13600220253",
-  },
-  "sdyxt.gdzzkj.net": {
-    name: "佛山市顺德区市政建设工程协会",
-    qrcodeUrl: "sdyxt_act.png",
-    goodsId: "8673",
-  },
-  "mh5.zzyxt.net": {
-    name: "茂名市建设培训学校",
-    qrcodeUrl: "mh5_act.png",
-    goodsId: "8679",
-  },
-  "sxh5.zzyxt.net": {
-    name: "山西晋锦建族教育咨询有限公司",
-    qrcodeUrl: "sxh5_act.png",
-    goodsId: "8676",
-  },
-  "yfh5.zzyxt.net": {
-    name: "云浮市建筑业协会",
-    qrcodeUrl: "yf_act.png",
-    goodsId: "8672",
-  },
-  "h.kw-xy.com": {
-    name: "深圳市凯文云学堂",
-    qrcodeUrl: "kw-xy.png",
-    goodsId: "8680",
-  },
-};
-import { actCheck } from "../../common/httpList/act";
-import tkiQrcode from "tki-qrcode";
-import { tenantId, BASE_URL } from "@/common/request.js";
-export default {
-  name: "SaasMiniprogramExamact",
-  data() {
-    return {
-      goodsId: "",
-      goodsType: "2",
-      example:
-        "http://localhost:8080/pages5/scan/examact?jump=www.hnjsxt.cn/detail/6",
-      jump: undefined,
-      sale: "",
-      tenantInfo: {},
-      t: "",
-    };
-  },
-  onLoad(option) {
-    this.jump = option.jump;
-    this.sale = option.sale;
-    this.tenantInfo = this.backInfo();
-    this.goodsId = this.tenantInfo.goodsId;
-    this.t = option.t;
-    this.t && this.statistics();
-  },
-  methods: {
-    collectMerch() {
-      actCheck().then((res) => {
-        if (res.data.code === 200) {
-          //跳转去对应域名
-          this.toDatail();
-        } else {
-          this.$u.toast(res.data.msg);
-        }
-      });
-    },
-    toDatail() {
-      if (this.jump) {
-        window.location.href =
-          this.scheme + this.jump + "?sale=" + (this.sale || "");
-        return;
-      }
-      uni.navigateTo({
-        url:
-          "/pages3/course/detail?id=" +
-          this.goodsId +
-          "&goodsType=" +
-          this.goodsType +
-          "&sale=" +
-          (this.sale || "") +
-          "&isAct=" +
-          1,
-      });
-    },
-    backInfo() {
-      let domain = this.jump ? this.jump.split("/")[0] : window.location.host;
-      domain = this.$method.checkDomain(domain)
-        ? domain
-        : "120.79.166.78:19006";
-      return map[domain];
-    },
-    statistics() {
-      uni.request({
-        url: BASE_URL + "/app/common/save/activity/record/" + this.t,
-        method: "get",
-        header: {
-          TenantId: tenantId,
-        },
-        success: (res) => {},
-        fail: (err) => {},
-      });
-    },
-  },
-  components: {
-    tkiQrcode,
-  },
-  computed: {
-    scheme() {
-      return this.tenantInfo.scheme || "https://";
-    },
-    val() {
-      return (
-        this.scheme +
-        (this.jump ||
-          window.location.host + "/pages/questionBank/index?isAct=1")
-      );
-    },
-  },
-};
-</script>
-
-<style lang="scss" scoped>
-.examact {
-  position: relative;
-  img {
-    width: 100vw;
-  }
-  .examact-tname {
-    position: absolute;
-    top: 41rpx;
-    left: 48rpx;
-    font-size: 36rpx;
-    color: #2e3174;
-    font-weight: 500;
-  }
-  .examact-btn {
-    width: 620rpx;
-    height: 102rpx;
-    position: absolute;
-    top: 786rpx;
-    left: 50%;
-    margin-left: -310rpx;
-    background: linear-gradient(90deg, #1762ff 0%, #4af7da 100%);
-    box-shadow: 0px 9px 12px 0px rgba(50, 84, 130, 0.18);
-    border-radius: 200rpx;
-    line-height: 104rpx;
-    text-align: center;
-    font-weight: bold;
-    color: #ffffff;
-    font-size: 36rpx;
-  }
-  .examact-qrcode {
-    width: 396rpx;
-    display: flex;
-    position: absolute;
-    justify-content: space-between;
-    right: 32rpx;
-    bottom: 122rpx;
-    img {
-      width: 180rpx;
-      height: 180rpx;
-    }
-    view {
-      background: #ffffff;
-      width: 180rpx;
-      height: 180rpx;
-      padding: 10rpx;
-    }
-  }
-  .examact-phone {
-    position: absolute;
-    bottom: 46rpx;
-    left: 33rpx;
-    color: #222222;
-    font-size: 30rpx;
-    line-height: 40rpx;
-  }
-}
-</style>

binární
static/qrcode/h_act.png


binární
static/qrcode/hnjsxt_act.png


binární
static/qrcode/kw-xy.png


binární
static/qrcode/mh5_act.png


binární
static/qrcode/sdyxt_act.png


binární
static/qrcode/sxh5_act.png


binární
static/qrcode/yf_act.png


binární
static/qrcode/zh5_act.png


binární
static/qrcode/zsh5_act.png