Explorar el Código

Merge branch 'dev-5.3.1' of http://192.168.32.253:3000/Software/android-cloud-H5 into dev-5.3.1

huangxiaojing hace 2 años
padre
commit
90432ab725

+ 1 - 1
.env.staging

@@ -1,5 +1,5 @@
 # 预生产环境变量
-MODE = "staging"
+MODE = "uat"
 API_PREFIX = "/api"
 API_HOST = "prese.phone.androidscloud.com"
 API_PORT = 443

+ 8 - 3
nuxt.config.js

@@ -69,7 +69,6 @@ export default {
 
   // Plugins to run before rendering page: https://go.nuxtjs.dev/config-plugins
   plugins: [
-    '~/plugins/axios',
     // '~/plugins/api',
     '~/plugins/file-upload',
     // '~/plugins/message',
@@ -82,7 +81,7 @@ export default {
     { src: '~/plugins/v-mask', mode: 'client' },
     { src: '~/plugins/vconsole', mode: 'client' },
     { src: '~/plugins/callapp', mode: 'client' },
-    // '~/plugins/jweixin',
+    '~/plugins/jweixin',
     // '~/plugins/umeng-datasources',
     // '@/plugins/vant',
   ],
@@ -160,7 +159,13 @@ export default {
     },
   },
   auth: {
-    plugins: ['~/plugins/auth', '~/plugins/baidu-tongji'],
+    plugins: ['~/plugins/axios', '~/plugins/auth', '~/plugins/baidu-tongji'],
+    redirect: {
+      login: '/login',
+      logout: '/login',
+      callback: '/login',
+      home: '/login',
+    },
     strategies: {
       password: {
         scheme: '~/schemes/password',

+ 2 - 2
package.json

@@ -5,12 +5,12 @@
   "scripts": {
     "dev": "nuxt --mode development",
     "dev:test": "nuxt --mode test",
-    "dev:stag": "nuxt --mode staging",
+    "dev:uat": "nuxt --mode uat",
     "dev:prod": "nuxt --mode production",
     "build": "npm run build:dev",
     "build:dev": "nuxt build --mode development",
     "build:test": "nuxt build --mode test",
-    "build:stag": "nuxt build --mode staging",
+    "build:uat": "nuxt build --mode uat",
     "build:prod": "nuxt build --mode production",
     "start": "nuxt start",
     "generate": "nuxt generate",

+ 28 - 5
pages/activity/invite-user/index.vue

@@ -46,8 +46,8 @@
     </div> -->
     <div class="box box4">
       <div class="box-header">活动规则</div>
-      <div class="box-main text-sm">
-        <p>1、传播过程中有任何疑问,可直接咨询客服</p>
+      <div class="box-main text-sm" v-html="activityRules">
+        <!-- <p>1、传播过程中有任何疑问,可直接咨询客服</p>
         <p>
           2、用户可以通过分享页面或者套餐给想要分享的人,被分享人购买云机套餐后,分享人可获得套餐对应的星币
         </p>
@@ -57,7 +57,7 @@
         <p>4、星币可在双子星购买任一等价值套餐</p>
         <p>
           5、请勿利用双子星传播或扩散任何有关于政治、情色等任何违法的信息,一经发现,取消资格,如果触犯任何法律相关问题,平台不负任何责任
-        </p>
+        </p> -->
       </div>
     </div>
     <!-- <div class="">invite-user</div> -->
@@ -86,7 +86,7 @@
 // import clipboard from 'clipboardy/browser';
 import * as clipboard from 'clipboard-polyfill/text';
 import { getStarCoinOverview } from '~/api/activity/invite-user.js';
-
+import { getContentByType } from '~/api/public/agreement.js';
 export default {
   // auth: false,
   name: 'InviteUser',
@@ -105,11 +105,13 @@ export default {
         activityId: null,
         status: 0,
       },
+      activityRules: '',
     };
   },
   async fetch() {
     //
     try {
+      this.getActivityRules();
       this.data = (await getStarCoinOverview(this)).data;
     } catch (error) {
       this.$toast.error(error.message);
@@ -143,7 +145,22 @@ export default {
       ];
     },
   },
-  mounted() {},
+  mounted() {
+    this.$userAgent.isMiniProgram &&
+      this.$wx.miniProgram.postMessage({
+        data: {
+          action: 'updateAppMessageShareData',
+          params: {
+            title: '双子星云手机',
+            path: '/pages/home/home',
+            imageUrl:
+              location.origin +
+              require('~/assets/image/activity/invite-user/bg@2x.png'),
+            // promise: null,
+          },
+        },
+      });
+  },
   methods: {
     async share() {
       // console.log(this);
@@ -180,6 +197,12 @@ export default {
         this.$toast.success('链接复制成功');
       }
     },
+    async getActivityRules() {
+      const res = await getContentByType(this, 'iuserrules01');
+      this.activityRules = res.data.content
+        .replace(/[\d\D]*<body>([\d\D]+)<\/body>[\d\D]*/i, '$1')
+        .replace(/<div class="phone-container">([\d\D]+)<\/div>/g, '$1');
+    },
   },
 };
 </script>

+ 1 - 1
pages/activity/invite-user/register.vue

@@ -136,7 +136,7 @@ export default {
           this.$tongji.trackEvent('活动', '发送短信', '', 0);
           const res = await sendSmsCode(this, {
             type: 'common',
-            authorizationType: 4,
+            authorizationType: 5,
             phone: this.form.phone,
           });
           this.codeTime = 60;

pages/test-call-app.vue → pages/test/call-app.vue


+ 43 - 0
pages/test/jweixin.vue

@@ -0,0 +1,43 @@
+<template>
+  <v-container>
+    <div class="">
+      <v-btn @click="getEnv()">getEnv</v-btn>
+      <v-btn @click="postMessage()">postMessage</v-btn>
+    </div>
+  </v-container>
+</template>
+
+<script>
+export default {
+  auth: false,
+  mounted() {
+    this.$wx.miniProgram.postMessage({
+      data: {
+        action: 'updateAppMessageShareData',
+        params: {
+          title: '双子星云手机',
+          path: '/pages/home/home',
+          imageUrl:
+            location.origin +
+            require('~/assets/image/activity/invite-user/bg@2x.png'),
+          // promise: null,
+        },
+      },
+    });
+  },
+  methods: {
+    getEnv() {
+      this.$wx.miniProgram.getEnv((res) => {
+        console.log('🚀 ~ file: jweixin.vue ~ line 14 ~ getEnv ~ res', res);
+      });
+    },
+    postMessage() {
+      this.$wx.miniProgram.postMessage({
+        data: {
+          now: Date.now(),
+        },
+      });
+    },
+  },
+};
+</script>

+ 25 - 17
plugins/axios.js

@@ -1,32 +1,40 @@
 import AxiosError from 'axios/lib/core/AxiosError';
 
-export default function ({ $axios, redirect }) {
+export default function ({ $axios, $auth, redirect }) {
   // $axios.defaults.dataKey = 'data';
 
   $axios.onRequest((config) => {
     config.headers.client = 7;
     return config;
   });
-  $axios.onResponse((response) => {
-    if (response.data.status !== 0) {
-      // const err = new Error(
-      //   response.data.msg || response.data.data || '未知错误',
-      // );
-      // Object.assign(err, response);
+  $axios.onResponse(async (response) => {
+    if (Object.prototype.toString.call(response.data) === '[object Object]') {
+      if ([6013, 6014].includes(response.data.status)) {
+        // await $auth.logout();
+        await $auth.reset();
+        // await $auth.setUserToken(null);
+      }
+      if (response.data.status !== 0) {
+        // const err = new Error(
+        //   response.data.msg || response.data.data || '未知错误',
+        // );
+        // Object.assign(err, response);
 
-      // return Promise.reject(err);
+        // return Promise.reject(err);
 
-      // if (response.data.status === 502) {
-      // }
+        // if (response.data.status === 502) {
+        // }
 
-      throw new AxiosError(
-        response.data.msg || response.data.data || '未知错误',
-        null,
-        response.config,
-        response.request,
-        response,
-      );
+        throw new AxiosError(
+          response.data.msg || response.data.data || '未知错误',
+          null,
+          response.config,
+          response.request,
+          response,
+        );
+      }
     }
+
     // else if (response.config.dataKey) {
     //   response.data = response.data[response.config.dataKey];
     //   return response;

+ 31 - 31
plugins/jweixin.js

@@ -1,7 +1,7 @@
 import wx from 'jweixin-module';
 
 // import Vue from 'vue';
-import { getConfig } from '~/api/wx/index.js';
+// import { getConfig } from '~/api/wx/index.js';
 
 export default function (c, i) {
   // Vue.config.optionMergeStrategies.wxReady = function (toVal, fromVal) {
@@ -14,37 +14,37 @@ export default function (c, i) {
   //   return [];
   // };
 
-  const { app } = c;
+  // const { app } = c;
   i('wx', wx);
 
-  app.router.afterEach(async (to, from) => {
-    // 微信js签名注册
-    try {
-      // if (to.matched[0].instances.default) {
-      //   to.matched[0].instances.default.$emit('wxReady');
-      // } else {
-      //   console.log(to.matched[0].components.default);
+  // app.router.afterEach(async (to, from) => {
+  //   // 微信js签名注册
+  //   try {
+  //     // if (to.matched[0].instances.default) {
+  //     //   to.matched[0].instances.default.$emit('wxReady');
+  //     // } else {
+  //     //   console.log(to.matched[0].components.default);
 
-      //   // to.matched[0].components.default.mixin({
-      //   //   mounted() {
-      //   //     console.log('wxReady');
-      //   //     this.$emit('wxReady');
-      //   //   },
-      //   // });
-      // }
-      const res = await getConfig(c, location.href);
-      await new Promise((resolve, reject) => {
-        wx.config({
-          debug: true, // 开启调试模式,调用的所有 api 的返回值会在客户端 alert 出来,若要查看传入的参数,可以在 pc 端打开,参数信息会通过 log 打出,仅在 pc 端时才会打印。
-          appId: res.data.appId, // 必填,公众号的唯一标识
-          timestamp: res.data.timestamp, // 必填,生成签名的时间戳
-          nonceStr: res.data.nonceStr, // 必填,生成签名的随机串
-          signature: res.data.signature, // 必填,签名
-          jsApiList: [], // 必填,需要使用的 JS 接口列表
-        });
-        wx.ready(resolve);
-        wx.error(reject);
-      });
-    } catch (error) {}
-  });
+  //     //   // to.matched[0].components.default.mixin({
+  //     //   //   mounted() {
+  //     //   //     console.log('wxReady');
+  //     //   //     this.$emit('wxReady');
+  //     //   //   },
+  //     //   // });
+  //     // }
+  //     // const res = await getConfig(c, location.href);
+  //     // await new Promise((resolve, reject) => {
+  //     //   wx.config({
+  //     //     debug: true, // 开启调试模式,调用的所有 api 的返回值会在客户端 alert 出来,若要查看传入的参数,可以在 pc 端打开,参数信息会通过 log 打出,仅在 pc 端时才会打印。
+  //     //     appId: res.data.appId, // 必填,公众号的唯一标识
+  //     //     timestamp: res.data.timestamp, // 必填,生成签名的时间戳
+  //     //     nonceStr: res.data.nonceStr, // 必填,生成签名的随机串
+  //     //     signature: res.data.signature, // 必填,签名
+  //     //     jsApiList: [], // 必填,需要使用的 JS 接口列表
+  //     //   });
+  //     //   wx.ready(resolve);
+  //     //   wx.error(reject);
+  //     // });
+  //   } catch (error) {}
+  // });
 }

+ 1 - 1
plugins/toast/toast.vue

@@ -1,7 +1,7 @@
 <template>
   <v-snackbar
     app
-    bottom
+    centered
     class="toast"
     :value.sync="value"
     color="rgba(0,0,0,.8)"

+ 22 - 7
static/microserviceUserH5/static/css/anniversaryCelebrate.css

@@ -23,7 +23,7 @@ ul, li {
   width: 7.5rem;
   min-height: 100vh;
   background-color: rgba(22, 12, 31, 1);
-  padding-bottom: 0.34rem;
+  padding-bottom: 1rem;
   background-image: url('../img/anniversaryCelebrate/all-bg.png');
   background-repeat: repeat-y;
   background-size: cover;
@@ -575,8 +575,6 @@ ul, li {
 .award-result-dialog{
   width: 5.52rem;
   height: 9.21rem;
-  background: url(../../static/img/anniversaryCelebrate/result-bg.png) no-repeat;
-  background-size: 100% 100%;
   border-radius: 0.2rem;
   position: absolute;
   left: 50%;
@@ -584,6 +582,15 @@ ul, li {
   transform: translateX(-50%);
 }
 
+.result-bg{
+  width: 5.52rem;
+  height: 9.21rem;
+  position: absolute;
+  top: 0;
+  left: 0;
+  display: none;
+}
+
 .law-result-dialog{
   width: 5.52rem;
   height: 7.16rem;
@@ -611,8 +618,6 @@ ul, li {
 .award-result-one-dialog{
   width: 5.52rem;
   height: 8.11rem;
-  background: url(../../static/img/anniversaryCelebrate/result-once-bg.png) no-repeat;
-  background-size: 100% 100%;
   border-radius: 0.2rem;
   position: absolute;
   left: 50%;
@@ -620,6 +625,15 @@ ul, li {
   transform: translateX(-50%);
 }
 
+.result-once-bg{
+  width: 5.52rem;
+  height: 8.11rem;
+  position: absolute;
+  top: 0;
+  left: 0;
+  display: none;
+}
+
 .distribution-time-dialog{
   width: 6.48rem;
   height: 6.56rem;
@@ -717,7 +731,7 @@ ul, li {
 
 .many-one-card{
   padding-top: 0.35rem;
-  margin-left: 0.4rem;
+  /* margin-left: 0.4rem; */
 }
 
 .many-two-card{
@@ -726,7 +740,7 @@ ul, li {
 
 .line{
   position: absolute;
-  bottom: 3.2rem;
+  bottom: 3.24rem;
   left: 0.6rem;
   width: 4.35rem;
   height: 0.01rem;
@@ -783,6 +797,7 @@ ul, li {
   justify-content: center;
   flex-wrap: wrap;
   margin-bottom: 1.2rem;
+  margin-left: 0;
 }
 
 .one-card-item{

+ 97 - 0
static/microserviceUserH5/static/css/trialActivities.css

@@ -0,0 +1,97 @@
+@media screen and (max-width: 750px) {
+    html {
+      font-size: calc(100vw / 7.5);
+    }
+  }
+  
+@media screen and (min-width: 750px)  {
+  html {
+    font-size: calc(450px / 7.5);
+  }
+}
+
+html, body, div, ul, li, p {
+    padding: 0;
+    margin: 0;
+}
+
+
+ul, li {
+    list-style: none;
+}
+
+.containers{
+    width: 7.5rem;
+    margin: auto;
+    background-image: url('../img/yunActivity/bgc0.png'); 
+    background-size: 100% 100%; 
+}
+
+.banner-wrap{
+    width: 7.5rem;
+    height: 25.67rem;
+    position: relative;
+}
+
+.banner-img {
+    position: fixed;
+    width: 7.5rem;
+    height: 1.28rem;
+    top: 0;
+    z-index: 1;
+}
+
+.downlond-img {
+    position: fixed;
+    top: 0.3rem;
+    right: 0.3rem;
+    width: 2.2rem;
+    height: 0.7rem;
+    z-index: 1;
+}
+
+.downlond-midimg {
+    position: absolute;
+    top: 10.8rem;
+    left: 50%;
+    margin-left: -2.15rem;
+    width: 4.3rem;
+    height: 1.12rem;
+}
+
+
+#toast-container>.toast-error {
+    background-image: none !important;
+    border-radius: 0.2rem;
+  }
+  
+  .toast-error {
+    background-color: rgba(0, 0, 0, 0.8);
+    border-radius: 0.2rem;
+  }
+  
+  #toast-container>div {
+    font-size: 14px;
+    min-width: 80px !important;
+    padding: 12px !important;
+    box-shadow: none;
+    border-radius: 0.2rem;
+  }
+  
+  .toast-center-center {
+    position: fixed;
+    min-width: 220px;
+    top: 50%;
+    left: 50%;
+    text-align: center;
+    transform: translateX(-50%);
+    color: #FFFFFF;
+    border-radius: 0.2rem;
+  }
+  
+  @media (max-width: 480px) and (min-width: 241px) {
+    #toast-container>div {
+      min-width: 80px !important;
+      width: auto;
+    }
+  }

BIN
static/microserviceUserH5/static/img/yunActivity/bgc0.png


BIN
static/microserviceUserH5/static/img/yunActivity/btn-1.png


BIN
static/microserviceUserH5/static/img/yunActivity/btn-2.png


BIN
static/microserviceUserH5/static/img/yunActivity/header.png


+ 68 - 28
static/microserviceUserH5/vcloud/anniversaryCelebrate.html

@@ -176,6 +176,8 @@
 		</div>
 		<div class="award-result-mask">
 			<div class="award-result-dialog-sure">
+				<img class="result-bg" src="../static/img/anniversaryCelebrate/result-bg.png" />
+				<img class="result-once-bg" src="../static/img/anniversaryCelebrate/result-once-bg.png" />
 				<div class="have-times-wrap">
 					<div class="award-result-tip"></div>
 					<div class="line"></div>
@@ -344,13 +346,36 @@
 			userCardId = '',
 		    sliderNumber = 0,//滑块是数量,控制溢出不能滑动
 			isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; //android终端
+			// imgs = ['../static/img/anniversaryCelebrate/result-bg.png','../static/img/anniversaryCelebrate/result-once-bg.png'];
+		//异步加载图片
+		// async function loadAsync() {
+		// 	let promise = function(url) {
+		// 		return new Promise((resolve, reject) => {
+		// 		const image = new Image();
+		// 		image.src = url;
+		// 		if(image.src.includes('result-bg')){
+		// 			image.className = 'result-bg';
+		// 		}else{
+		// 			image.className = 'result-once-bg';
+		// 		}
+		// 		image.onload = function() {
+		// 			$('.award-result-dialog-sure')[0].insertBefore(image, $('.have-times-wrap')[0]);
+		// 			resolve('ok');
+		// 		}        
+		// 		})      
+		// 	}
+		// 	for(let url of imgs) {
+		// 		await promise(url);
+		// 	}
+		// }
+        // loadAsync();
 		// 初始化数据
 		init();
 		if(id){
 			getPhoneNumber();
 			getUserCard();
 		}
-		function init() {
+		function init(type) {
 			$.ajax({
 				url: baseUrl + '/api/activity/v1/anniversary/getAnniversary',
 				type: 'get',
@@ -400,6 +425,9 @@
 							$('.no-start-mask').show();
 							document.documentElement.style.overflow='hidden';
 						}
+						if(type == 'report') {
+							$('.point-wrap').eq(0).empty();
+						}
 						if(result == '' || !lighten){
 							return
 						}
@@ -516,6 +544,12 @@
 						$('.award-result-wrap').eq(0).text('');
 						if(times === 1){
 							$('.award-result-dialog-sure')[0].className = 'award-result-dialog-sure award-result-one-dialog';
+							$(".result-bg").css({
+								"display": "none"
+							})
+							$(".result-once-bg").css({
+								"display": "block"
+							})
 							$('.award-result-tip').eq(0).text('换个姿势,再抽一次');
 							$('.award-result-wrap')[0].className = 'card-wrap award-result-wrap one-result';
 							for (let i = 0; i < list.length; i++) {
@@ -540,30 +574,30 @@
 														<div class="card-text">星曜${list[2].awardDurations}天卡</div>
 													</div>
 												</div>`
-									}else if(list[i].awardType == 2){//外环
-										str += `<div class="card-item many-two-card">
+									}else if(list[i].awardType == 2){//外环188
+										str += `<div class="card-item many-one-card">
 													<div class="card-item-wrap card-item-wraps">
-														<img class="many-card" src="../static/img/anniversaryCelebrate/first.png" />
-														<div class="card-text">星曜${list[1].awardDurations}天卡</div>
+														<img class="many-card" src="../static/img/anniversaryCelebrate/no-award-selcet.png" />
+														<div class="card-text">星曜88天卡</div>
 													</div>
 												</div>
-												<div class="card-item many-one-card">
+												<div class="card-item many-two-card">
 													<div class="card-item-wrap card-item-wraps">
-														<img class="many-card" src="../static/img/anniversaryCelebrate/no-award-selcet.png" />
-														<div class="card-text">星曜188天卡</div>
+														<img class="many-card" src="../static/img/anniversaryCelebrate/second.png" />
+														<div class="card-text">星曜${list[1].awardDurations}天卡</div>
 													</div>
 												</div>`
-									} else if(list[i].awardType == 1) {//内环
-										str += `<div class="card-item many-two-card">
+									} else if(list[i].awardType == 1) {//内环88
+										str += `<div class="card-item many-one-card">
 													<div class="card-item-wrap card-item-wraps">
-														<img class="many-card" src="../static/img/anniversaryCelebrate/no-award-selcet.png" />
-														<div class="card-text">星曜88天卡</div>
+														<img class="many-card" src="../static/img/anniversaryCelebrate/first.png" />
+														<div class="card-text">星曜${list[1].awardDurations}天卡</div>
 													</div>
 												</div>
-												<div class="card-item many-one-card">
+												<div class="card-item many-two-card">
 													<div class="card-item-wrap card-item-wraps">
-														<img class="many-card" src="../static/img/anniversaryCelebrate/second.png" />
-														<div class="card-text">星曜${list[1].awardDurations}天卡</div>
+														<img class="many-card" src="../static/img/anniversaryCelebrate/no-award-selcet.png" />
+														<div class="card-text">星曜188天卡</div>
 													</div>
 												</div>`
 									}
@@ -588,6 +622,12 @@
 							},1000);
 						} else {
 							$('.award-result-dialog-sure')[0].className = 'award-result-dialog-sure award-result-dialog';
+							$(".result-once-bg").css({
+								"display": "none"
+							})
+							$(".result-bg").css({
+								"display": "block"
+							})
 							$('.award-result-tip').eq(0).text('善良的人,好运气最终是会眷顾你');
 							$('.award-result-wrap')[0].className = 'card-wrap award-result-wrap many-card-wrap'
 							for (let i = 0; i < list.length; i++) {
@@ -603,7 +643,7 @@
 										if(i == 5) {
 											str += `<div class="card-item many-card-item">
 													<div class="card-item-wrap card-item-wraps">
-														<img class="many-card" src="../static/img/anniversaryCelebrate/first.png" />
+														<img class="many-card" src="../static/img/anniversaryCelebrate/${list[i].awardType==1 ? 'first' : 'second'}.png" />
 														<div class="card-text">星曜${list[i].awardDurations}天卡</div>
 													</div>
 												</div>`
@@ -611,35 +651,35 @@
 										if(i == 6) {
 											str += `<div class="card-item many-card-item two-item">
 													<div class="card-item-wrap card-item-wraps">
-														<img class="many-card" src="../static/img/anniversaryCelebrate/second.png" />
+														<img class="many-card" src="../static/img/anniversaryCelebrate/${list[i].awardType==1 ? 'first' : 'second'}.png" />
 														<div class="card-text">星曜${list[i].awardDurations}天卡</div>
 													</div>
 												</div>`
 										}
-									} else if(list[i].awardType == 2){
+									} else if(list[i].awardType == 2){//外环188
 										str += `<div class="card-item many-card-item">
 													<div class="card-item-wrap card-item-wraps">
-														<img class="many-card" src="../static/img/anniversaryCelebrate/first.png" />
-														<div class="card-text">星曜${list[i].awardDurations}天卡</div>
+														<img class="many-card" src="../static/img/anniversaryCelebrate/no-award-selcet.png" />
+														<div class="card-text">星曜88天卡</div>
 													</div>
 												</div>
 												<div class="card-item many-card-item two-item">
 													<div class="card-item-wrap card-item-wraps">
-														<img class="many-card" src="../static/img/anniversaryCelebrate/no-award-selcet.png" />
-														<div class="card-text">星曜188天卡</div>
+														<img class="many-card" src="../static/img/anniversaryCelebrate/second.png" />
+														<div class="card-text">星曜${list[i].awardDurations}天卡</div>
 													</div>
 												</div>`
-									} else if(list[i].awardType == 1) {
+									} else if(list[i].awardType == 1) {//内环88
 										str += `<div class="card-item many-card-item">
 													<div class="card-item-wrap card-item-wraps">
-														<img class="many-card" src="../static/img/anniversaryCelebrate/no-award-selcet.png" />
-														<div class="card-text">星曜88天卡</div>
+														<img class="many-card" src="../static/img/anniversaryCelebrate/first.png" />
+														<div class="card-text">星曜${list[i].awardDurations}天卡</div>
 													</div>
 												</div>
 												<div class="card-item many-card-item two-item">
 													<div class="card-item-wrap card-item-wraps">
-														<img class="many-card" src="../static/img/anniversaryCelebrate/second.png" />
-														<div class="card-text">星曜${list[i].awardDurations}天卡</div>
+														<img class="many-card" src="../static/img/anniversaryCelebrate/no-award-selcet.png" />
+														<div class="card-text">星曜188天卡</div>
 													</div>
 												</div>`
 									}
@@ -670,7 +710,7 @@
 						}
 						$('.times-text-number').eq(0).text(residueDegree - times);
 						$('.award-result-wrap').eq(0).append(str);
-						init();
+						init(type);
 					}else{
 						animationFlag = true;
 						stopManyClick(() =>{

+ 43 - 2
static/microserviceUserH5/vcloud/share.html

@@ -76,6 +76,7 @@
 
 		.topic-info {
 			padding-bottom: 1.6rem;
+			display: none;
 
 		}
 
@@ -153,7 +154,6 @@
 			position: absolute;
 			right: 15px;
 			top: 6px;
-
 		}
 	</style>
 </head>
@@ -171,7 +171,7 @@
 			<p class="title">{{topic.title}}</p>
 			<p class="createTime"> 发布日期:{{topic.createTime}}</p>
 			<p class="line"></p>
-			<div v-html="topic.content" class="topic-info"></div>
+			<div v-html="topic.content" class="topic-info" id="topic-info"></div>
 
 		</div>
 		<div class="footer">
@@ -242,6 +242,47 @@
 							if (res.data) {
 								this.isshow = false;
 								this.topic = res.data;
+								var u = navigator.userAgent,
+									app = navigator.appVersion;
+								var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Linux') > -1; //g
+								var isIOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端
+								// if (isAndroid && !window.native) {
+									setTimeout(() => {
+										let node = document.getElementById('topic-info');
+										let span = document.getElementsByTagName('span');
+										node.firstChild.style.backgroundColor = '#FFFFFF';
+										node.style.display = 'block';
+										for(var o in span){
+											if(span[o].style){
+												span[o].style.color = '#333333';
+											}
+										}
+									},100)
+								// }
+								if (isAndroid && !window.native) {
+									setTimeout(() => {
+										let node = document.getElementById('topic-info');
+										node.firstChild.style.backgroundColor = '#FFFFFF';
+										node.style.display = 'block';
+									},100)
+								}
+								if(isIOS) {
+									try {
+										window.webkit.messageHandlers.share.postMessage();
+									} catch(error) {
+										setTimeout(() => {
+											let node = document.getElementById('topic-info');
+											let span = document.getElementsByTagName('span');
+											node.firstChild.style.backgroundColor = '#FFFFFF';
+											node.style.display = 'block';
+											for(var o in span){
+												if(span[o].style){
+													span[o].style.color = '#333333';
+												}
+											}
+										},100)
+									}
+								}
 							} else {
 								this.isshow = true;
 							}

+ 130 - 0
static/microserviceUserH5/vcloud/trialActivities.html

@@ -0,0 +1,130 @@
+<!DOCTYPE html>
+<html lang="zh-CN">
+<head>
+	<meta charset="UTF-8">
+	<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
+	<title>双子星云手机</title>
+	<link rel="icon" href="../static/img/favicon2.ico" type="img/x-ico">
+	<link rel="stylesheet" href="../static/js/vender/bootstrap/css/bootstrap.min.css">
+	<link rel="stylesheet" href="../static/js/vender/toastr/toastr.min.css">
+	<link rel="stylesheet" href="../static/css/trialActivities.css">
+	<script src="../static/js/vender/jquery-3.4.1.min.js"></script>
+	<script src="../static/js/vender/toastr/toastr.min.js"></script>
+	<script src="../static/js/vender/config.js"></script>
+	<script src="../static/js/vender/crypto-js.js"></script>
+	<script src="../static/js/vender/ase.js"></script>
+</head>
+
+<body>
+	<div class="containers">
+			<div class="banner-wrap">
+				<div class="img-title">
+					<img class="banner-img" src="../static/img/yunActivity/header.png">
+				</div>
+                <div class="img-downlond">
+                    <img class="downlond-img" src="../static/img/yunActivity/btn-1.png">
+                </div>
+                <div class="midimg-downlond">
+                    <img class="downlond-midimg" src="../static/img/yunActivity/btn-2.png">  
+                </div>
+			</div>
+	</div>
+	<script>
+		toastr.options.positionClass = 'toast-center-center';
+		toastr.options.timeOut = '3000';
+	</script>
+	<script type="text/javascript">
+		// var baseUrl = 'http://14.18.190.141:1280'
+		let timer, flag = true;
+		var url = window.location.href;
+		url = url.split('/')
+		var loc = window.location.search,
+			n1 = loc.length,//地址的总长度
+			n2 = loc.indexOf("="),//取得=号的位置
+			id = loc.substr(n2 + 1, n1 - n2),//从=号后面的内容
+			u = navigator.userAgent,
+			ua = navigator.userAgent.toLowerCase(),
+			isIOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/),
+			isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; //android终端
+        $('.downlond-img')[0].addEventListener('click',()=>{
+                if(isAndroid){
+		 	     const pointName = '0元试用h5落地页安卓点击' + id
+		         operate(pointName,'click');
+				 download()
+		        }else if(isIOS){
+		        	const pointName = '0元试用h5落地页IOS点击' + id
+		        	operate(pointName);
+				 download()
+		        }
+                 // download()
+        },false)   
+        
+        $('.downlond-midimg')[0].addEventListener('click',()=>{
+                if(isAndroid){
+		 	     const pointName = '0元试用h5落地页安卓点击' + id
+		         operate(pointName,'click');
+				download()
+		        }else if(isIOS){
+		        	const pointName = '0元试用h5落地页IOS点击' + id
+		        	operate(pointName);
+				download()
+		        }
+                // download()
+        },false)   
+		function download() {
+            if (isAndroid) {
+				window.location.href = window.location.protocol === 'https:' ? `https://file.phone.androidscloud.com:8121/document/newFile/download/1/edv834e74a9c43eaac02/LowLevelMultipartUpload_19066905949412147255/shuangzixing.apk` : 
+				`http://110.53.221.195:8210/document/newFile/download/1/edv834e74a9c43eaac02/LowLevelMultipartUpload_19066905949412147255/shuangzixing.apk`;
+				stopManyClick(() =>{
+					toastr.error('下载成功')
+				})
+            } else if (isIOS) {
+                document.location.href = 'https://www.pgyer.com/gemini6?timestamp=' + Math.random();
+                // toastr.error('下载成功')
+            } 
+        }
+		// 埋点下载
+		function operate(pointName) {
+			$.ajax({
+				url: baseUrl + '/api/public/v1/systemBuriedPoint/stat',
+				type: 'post',
+				data: JSON.stringify({
+					pointName: pointName
+				}),
+				contentType: "application/json",
+				dataType: 'json',
+				cache: false,
+				success: function (res) {},
+			})
+		}
+		// 埋点页面访问
+		// var newpage = window.location.search.substring(6);
+		$(function() {
+			pushHistory();
+			function pushHistory() {
+				var warids = {
+					"pointName": `0元试用h5落地页打开${id}`  
+				}
+				$.ajax({
+					url: baseUrl + "/api/public/v1/systemBuriedPoint/stat",
+					data: JSON.stringify(warids),
+					type: 'post',
+					dataType: 'json',
+					contentType: "application/json;charset=UTF-8",
+					cache: false,
+					success: function(data) {}
+				})
+			}
+		});
+		function stopManyClick(fn) {
+			if (flag) {
+				fn();
+			}
+			flag = false;
+			if (timer) { clearTimeout(timer); }
+			timer = setTimeout(() => { flag = true }, 1500);
+		}
+	</script>
+</body>
+
+</html>

+ 30 - 1
static/screenAndroid/WXdraw.js

@@ -63,7 +63,9 @@ function doConnectDirectives() {
     }
   };
   wsss.onmessage = function (res) {
+    console.log('res', res)
     var result = typeof res.data === 'string' ? JSON.parse(res.data) : res.data
+    console.log('result.type', result.type)
     if (result.type === 'cutting') {
       if (result.data.status === 0) {
         $.toast('复制成功', "text");
@@ -103,9 +105,36 @@ function doConnectDirectives() {
       }
       return
     }
+    if (result.type === 'payInitiateEvent') {
+      var url = window.location.href;
+      url = url.split('/');
+      var baseUrl = url[0] + '//' + url[2];
+      $.ajax({
+        url: baseUrl + '/api/pay/third/order',
+        data: JSON.stringify({
+          orderNum: result.data.orderNum,
+          orderAmount: result.data.orderAmount,
+          appKey: result.data.appKey,
+        }),
+        type: 'POST',
+        dataType: 'json',
+        contentType: 'application/json;charset=UTF-8',
+        success: function (res) {
+          if(result.data.payType === 1) { // 微信
+            if (window.__wxjs_environment === 'miniprogram') { // 小程序
+              // copyUrl(result.data.payUrl);
+            } else {
+              window.location.href = result.data.payUrl
+            }
+          } else {
+            window.location.href = result.data.payUrl
+          }
+        },
+      });
+      return
+    }
   }
 }
-
 $('body').on("click", function () {
   draw_graph('pencil');
 })

+ 28 - 0
static/screenIos/WXdraw.js

@@ -113,6 +113,34 @@ function doConnectDirectives() {
       }
       return
     }
+    if (result.type === 'payInitiateEvent') {
+      var url = window.location.href;
+      url = url.split('/');
+      var baseUrl = url[0] + '//' + url[2];
+      $.ajax({
+        url: baseUrl + '/api/pay/third/order',
+        data: JSON.stringify({
+          orderNum: result.data.orderNum,
+          orderAmount: result.data.orderAmount,
+          appKey: result.data.appKey,
+        }),
+        type: 'POST',
+        dataType: 'json',
+        contentType: 'application/json;charset=UTF-8',
+        success: function (res) {
+          if(result.data.payType === 1) { // 微信
+            if (window.__wxjs_environment === 'miniprogram') { // 小程序
+              // copyUrl(result.data.payUrl);
+            } else {
+              window.location.href = result.data.payUrl
+            }
+          } else {
+            window.location.href = result.data.payUrl
+          }
+        },
+      });
+      return
+    }
   }
 }
 $('body').on("click", function () {