Browse Source

Merge branch 'release/v5.4.0' of Software/android-cloud-H5 into test

heyang 2 years ago
parent
commit
953abdff37
1 changed files with 77 additions and 5 deletions
  1. 77 5
      static/microserviceUserH5/vcloud/awardActivity.html

+ 77 - 5
static/microserviceUserH5/vcloud/awardActivity.html

@@ -112,7 +112,7 @@
 				<div class="result-content">
 					<div class="rule-title-wrap result-title-wrap">
 						<div class="rule-title-icon"></div>
-						<div class="rule-title">换个姿势,再抽一次</div>
+						<div class="rule-title result-title">换个姿势,再抽一次</div>
 						<div class="rule-title-icon"></div>
 					</div>
 					<div class="main-contain"></div>
@@ -173,7 +173,7 @@
 			</div>
 			<div class="change-num-wrap">
 				<div class="cut" data-id={{userCardId}} data-index={{index}}>-</div>
-				<input class="num-ipt" value="0" />
+				<input class="num-ipt" type="number" onkeyup="this.value=this.value.replace(/-/g,'')" value="0" data-id={{userCardId}} data-index={{index}} />
 				<div class="add" data-id={{userCardId}} data-index={{index}}>+</div>
 			</div>
 		</div>
@@ -231,6 +231,7 @@
 			awardNumber = 0,
 			currTotalTime = 0,
 			phoneRemainQuantity = 0,
+			userCardId = 0,
 			flagNum = 1;
 			isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/),
 			isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; //android终端
@@ -447,6 +448,11 @@
 				lotteryResult.lotteryCount = lotteryCount;
 				lotteryResult.tips = lotteryResult.goodsType != 5 ?'奖励已发送您的账户内,请注意查收' : '中奖不是最终的追求,重要的是开心咯';
 				lotteryResult.cardBtn = lotteryResult.lotteryCount != 0 ?'继续抽奖' : '获取次数';
+				let text = lotteryResult.lotteryCount != 0 ?'换个姿势,再抽一次' : '次数用完,点击获取';
+				$('.result-title').eq(0).text(text)
+				if(lotteryCount === 0) {
+					$('.start-award')[0].src = '../static/img/awardActivity/bug-phone.png';
+				}
 				lotteryResult.icon = `https://file.phone.androidscloud.com:8121/document/newFile/download/0/${uploadKey}?fileKey=${lotteryResult.icon}`
 				result = $('#card').text().replace(/{{(.*?)}}/g, function(node, key) {
 					return lotteryResult[key];
@@ -628,6 +634,7 @@
 						if(res.status === 0){
 							cardList = res.data.cardList
 							unAllotTime = res.data.unAllotTime
+							userCardId = cardList[0].userCardId
 							pageCardList()
 							$('.all-times').eq(0).text(res.data.totalTime)
 							$('.red').eq(0).text(res.data.totalTime)
@@ -647,12 +654,76 @@
 				recordFlag1 = true;
 				let list = cardList.slice(pageNum1 * 5, (pageNum1 * 5) + 5)
 				list.map((item, index) => {
-					item.index = index
+					item.index = (pageNum1 - 1) * 5 + index
 					result += $('#distribution').text().replace(/{{(.*?)}}/g, function(node, key) {
 						return item[key];
 					})
 				})
-				$('.distribution-container').eq(0).append(result)
+				$('.distribution-container').eq(0).append(result);
+				for (var i = 0; i < list.length; i++) {
+					$('.num-ipt')[(pageNum1 - 1) * 5 + i].oninput = function (e) {
+						const id = e.target.dataset.id;
+						let oldDuration = 0;
+						let preTotalTime = 0;
+						let index = e.target.dataset.index;
+						let value = $('.num-ipt').eq(index).val();
+						if(value.length >= 5){
+							value = value.substr(0, 5);
+						}
+						var position = String(value).indexOf(".");//获取小数点的位置
+						if(position != -1){
+							value = value.substr(0, position);
+						}
+						distributionList.map(item => { // 上一次的总数据
+							preTotalTime += parseInt(item.allotTime);
+						})
+						//这一次操作
+						if(value == 0){
+							if(!distributionList.find((item) => item.userCardId == id)){
+								distributionList.push({
+									userCardId: id,
+									allotTime: +value
+								});
+							}else{
+								distributionList = distributionList.filter(item => item.userCardId != id);
+							}
+							distributionList = distributionList.filter(item => item.allotTime != 0);
+						}else{
+							if(!distributionList.find((item) => item.userCardId == id)){
+								distributionList.push({
+									userCardId: id,
+									allotTime: Math.abs(value)
+								});
+							}else{
+								distributionList.map(item => {
+									if (item.userCardId == id) {
+										oldDuration = item.allotTime;
+										item.allotTime = +value;
+									}
+								})
+							}
+						}
+						currTotalTime = 0;
+						distributionList.map(item => { // 这一次的总数据
+							currTotalTime += parseInt(item.allotTime);
+						})
+						if(currTotalTime > unAllotTime){ // 当前已分配大于总分配时长
+							let val = unAllotTime - preTotalTime + oldDuration;
+							distributionList.map(item => {
+								if (item.userCardId == id) {
+									item.allotTime = val;
+								}
+							})
+							$('.num-ipt').eq(index).val(val);
+							stopManyClick(() => {
+								toastr.error('分配时长不能大于未分配总时长');
+							})
+							return
+						}
+						if(value.length > 5) value = value.slice(0, 5);
+						$('.num-ipt').eq(index).val(value);
+					}
+				}
 			}
 			//抽奖记录下拉加载
 			$('.distribution-container')[0].addEventListener('scroll',function () {
@@ -848,7 +919,8 @@
 			});
 			function distributionTime(e) {
 				operate('mfhd_2022_h5_分配奖励');
-				distributionList = distributionList.filter(item => item.duration != 0);
+				distributionList = distributionList.filter(item => item.allotTime != 0);
+				console.log(distributionList)
 				if (distributionList.length === 0) {
 					stopManyClick(() => {
 						toastr.error('未选中任何云手机');