Browse Source

归档2.2

Ohio-HYF 1 year ago
parent
commit
d36fe3a860
100 changed files with 5163 additions and 2265 deletions
  1. 45 18
      App.vue
  2. 34 48
      components/request.js
  3. 4 4
      components/requesttoken111.js
  4. 14 0
      components/utils.js
  5. 8 16
      page_mycenter/myincome/applywithdraw.vue
  6. 331 233
      page_mycenter/myincome/myincome.vue
  7. 1 1
      page_mycenter/myinformation/bindaccount.vue
  8. 1 3
      page_mycenter/myinformation/myinformation.vue
  9. 1 8
      page_mycenter/myinformation/mylocation.vue
  10. 2 2
      page_mycenter/mypoint/mypoint.vue
  11. 219 56
      page_mycenter/myselection/myselection.vue
  12. 210 38
      page_mycenter/mytask/mytask.vue
  13. 89 105
      page_mycenter/myteam/myteam.vue
  14. 1002 0
      page_selectionsquare/search.vue
  15. 473 0
      page_selectionsquare/selectiondetail/information.vue
  16. 298 421
      page_selectionsquare/selectiondetail/selectiondetail.vue
  17. 297 0
      page_selectionsquare/selectiondetail/success.vue
  18. 1 4
      page_tasksquare/banner/cooperation.vue
  19. 1 4
      page_tasksquare/banner/guanwang.vue
  20. 1 4
      page_tasksquare/banner/guide.vue
  21. 1 8
      page_tasksquare/specialtask/information.vue
  22. 24 40
      page_tasksquare/specialtask/specialTaskDetail.vue
  23. 9 18
      page_tasksquare/wholetask/information.vue
  24. 215 228
      page_tasksquare/wholetask/taskdetail.vue
  25. 252 0
      page_workspace/selection/assignment/upload.vue
  26. 738 5
      page_workspace/selection/sectaskdetail.vue
  27. 7 18
      page_workspace/task/information/deliveryInformation.vue
  28. 21 87
      page_workspace/task/taskdetail.vue
  29. 1 1
      page_workspace/task/upload/uploaddata.vue
  30. 10 10
      page_workspace/task/upload/uploadlink.vue
  31. 2 2
      page_workspace/task/upload/uploadsketch.vue
  32. 43 12
      pages.json
  33. 4 11
      pages/login/login.vue
  34. 1 1
      pages/login/userinfo.vue
  35. 116 95
      pages/mycenter/mycenter.vue
  36. 236 84
      pages/selectionsquare/selectionsquare.vue
  37. 29 396
      pages/test/test.vue
  38. 419 284
      pages/workspace/workspace.vue
  39. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/common/main.js.map
  40. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map
  41. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/components/htz-image-upload/htz-image-upload.js.map
  42. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/components/mosowe-canvas-image/mosowe-canvas-image.js.map
  43. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/components/mys-tip_1.0.01/a_tip/aTip.js.map
  44. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/components/mys_navBar/mysNavBar.js.map
  45. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/components/z-swiper/index.js.map
  46. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_mycenter/message.js.map
  47. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_mycenter/myincome/applywithdraw.js.map
  48. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_mycenter/myincome/myincome.js.map
  49. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_mycenter/myinformation/addlocation.js.map
  50. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_mycenter/myinformation/bindaccount.js.map
  51. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_mycenter/myinformation/myaccount.js.map
  52. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_mycenter/myinformation/mybank.js.map
  53. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_mycenter/myinformation/myinformation.js.map
  54. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_mycenter/myinformation/mylocation.js.map
  55. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_mycenter/myinformation/personinfo.js.map
  56. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_mycenter/mypoint/mypoint.js.map
  57. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_mycenter/myselection/myselection.js.map
  58. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_mycenter/mytask/mytask.js.map
  59. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_mycenter/myteam/myteam.js.map
  60. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_selectionsquare/information.js.map
  61. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_selectionsquare/search.js.map
  62. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_selectionsquare/selectiondetail/information.js.map
  63. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_selectionsquare/selectiondetail/selectiondetail.js.map
  64. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_selectionsquare/selectiondetail/success.js.map
  65. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_selectionsquare/success.js.map
  66. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_tasksquare/banner/cooperation.js.map
  67. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_tasksquare/banner/guanwang.js.map
  68. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_tasksquare/banner/guide.js.map
  69. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_tasksquare/bindinfo.js.map
  70. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_tasksquare/search.js.map
  71. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_tasksquare/specialtask/information.js.map
  72. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_tasksquare/specialtask/specialTaskDetail.js.map
  73. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_tasksquare/wholetask/information.js.map
  74. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_tasksquare/wholetask/success.js.map
  75. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_tasksquare/wholetask/taskdetail.js.map
  76. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/selection/assignment/upload.js.map
  77. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/selection/sectaskdetail.js.map
  78. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/task/editaddress.js.map
  79. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/task/information/applyInformation.js.map
  80. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/task/information/deliveryInformation.js.map
  81. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/task/record/datarecord.js.map
  82. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/task/record/linkrecord.js.map
  83. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/task/record/scriptrecord.js.map
  84. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/task/record/sketchrecord.js.map
  85. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/task/taskdetail.js.map
  86. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/task/upload/uploaddata.js.map
  87. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/task/upload/uploadlink.js.map
  88. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/task/upload/uploadscript.js.map
  89. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/task/upload/uploadsketch.js.map
  90. 1 0
      unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/upload.js.map
  91. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/login/login.js.map
  92. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/login/userinfo.js.map
  93. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/mycenter/mycenter.js.map
  94. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/selectionsquare/selectionsquare.js.map
  95. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/tasksquare/tasksquare.js.map
  96. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/test/test.js.map
  97. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/workspace/workspace.js.map
  98. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-data-checkbox/components/uni-data-checkbox/uni-data-checkbox.js.map
  99. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.js.map
  100. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-forms/components/uni-forms-item/uni-forms-item.js.map

+ 45 - 18
App.vue

@@ -2,20 +2,48 @@
 	export default {
 		globalData: {
 			navHeight: "",
+			picture: {
+				icon_dianfuchunyong: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/dianfu_chunyong.png',
+				icon_dianfuxuanshang: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/dianfu_xuanshang.png',
+				icon_mainfeichunyong: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/mianfeilingyang_chunyongdaihuo.png',
+				icon_mianfeixuanshang: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/mianfei_xuanshang.png',
+				icon_wuyangchunyong: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/wuyang_chunyong.png',
+				icon_wuyangxuanshang: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/wuyang_xuanshang.png',
+				icon_whole_pipline: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-whole-pipline.png',
+				icon_special_pipline: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-special-pipline.png',
+				icon_help: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-help.png',
+				icon_copy: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-copy.png',
+				icon_person: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-person.png',
+				icon_edit: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-edit2.png',
+				icon_location: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-location.png',
+				icon_account: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-account.png',
+				icon_rmb: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-rmb.png',
+				icon_message: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-message.png',
+				icon_right: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-arrow-right.png',
+				defaultavatarUrl: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/logoxin01.png',
+				icon_del: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-del.png',
+				icon_loc: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-loc.png',
+				icon_word: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-word.png',
+				icon_pdf: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-pdf.png',
+				togoimg: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/task16.png',
+				home8: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/home8.png',
+				home10: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/home10.png',
+				home11: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/home11.png',
+				guide: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/home/guide.png',
+				coop: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/home/coop.png',
+				deng5: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/deng5.png',
+				deng1: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/deng1.png',
+				task15: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/task15.png',
+				jpg7: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/7.jpg',
+				png6: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/6.png',
+				kefu: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/kefu.jpeg'
+			},
 		},
 		onLaunch: function() {
 			console.warn('当前组件仅支持 uni_modules 目录结构 ,请升级 HBuilderX 到 3.1.0 版本以上!')
 			console.log('App Launch')
 			this.autoUpdate()
-			this.globalData.navHeight = 44 + uni.getSystemInfoSync().statusBarHeight + "px"
-			// wx.getSystemInfo({
-			// 	success: res => {
-			// 		this.globalData.navHeight = res.statusBarHeight + 48 + "px"; // 赋值导航高度
-			// 	},
-			// 	fail(err) {
-			// 		console.log(err);
-			// 	}
-			// })
+			this.globalData.navHeight = 48 + uni.getSystemInfoSync().statusBarHeight + "px"
 		},
 		onShow: function() {
 			console.log('App Show')
@@ -128,6 +156,13 @@
 		word-break: break-all;
 	}
 
+	.copy-img {
+		width: 40rpx;
+		height: 40rpx;
+		z-index: 10;
+		padding: 0 10rpx;
+	}
+
 	/deep/ textarea {
 		width: auto;
 	}
@@ -138,14 +173,6 @@
 		/* justify-content: space-between; */
 	}
 
-	p {
-		word-break: break-all;
-	}
-
-	text {
-		word-break: break-all;
-	}
-
 	/deep/.uni-forms-item__inner {
 		padding-bottom: 0rpx !important;
 		margin-bottom: 30rpx !important;
@@ -159,4 +186,4 @@
 	/deep/ .share1 .uni-popup .uni-popup__wrapper{
 				 width: 85% !important;
 	} */
-</style>
+</style>

+ 34 - 48
components/request.js

@@ -2,60 +2,46 @@
 
 export default {
 	config: {
-		baseUrl: "http://localhost:8200",	//本地开发
-		// baseUrl: "http://172.27.185.236:8200",	//本地开发	
-		// baseUrl: "https://talent.younggee.com:8201",  //默认的公共域名
-		},
-	// 获取用户 token
-	// let userToken = uni.getStorageSync('userInfo')
-	// // console.log(userToken.token)
-	// if (userToken) {
-	// 	return false;
-	// } else {
-	// 	// 将 token 放入请求头中
-	// 	// options.headers['Authorization'] = userToken.token
-	// 	 options.header = {
-	// 	           'Authorization' :userToken.token,
-	// 			   'Content-Type' : 'application/json'
-	// 	         };
-	// 			 console.log(options.header)
-	// };
-		
-	request(options){			
-		return new Promise((resolve,reject)=>{//把调取的的接口给了一个Promise实例
-			uni.request({//uni-app调接口
-			...options,//所有的数据通过options传过来
-			
-			success:res=>{
-				if(options.native){
-				//假如用户得到res的原型数据,就在页面第三个参数把native:true就好了
-					resolve(res)
-				}
-				if(res.statusCode===200){
-				//等于200证明请求接口成功,就把里面的data数据给用户返回,
-				//这里只返回data数据,用户想要原型数据,就在页面的第三个参数里写:native:true
-					resolve(res)
-				}else{
-				//调取接口错误时返回给程序员
-					reject(res)
+		// baseUrl: "http://localhost:8200",	//本地开发
+		baseUrl: "https://talent.younggee.com:8201", //默认的公共域名
+		// baseUrl: "https://139.9.53.143:8201",  //默认的公共域名
+	},
+
+	request(options) {
+		return new Promise((resolve, reject) => { //把调取的的接口给了一个Promise实例
+			uni.request({ //uni-app调接口
+				...options, //所有的数据通过options传过来
+
+				success: res => {
+					if (options.native) {
+						//假如用户得到res的原型数据,就在页面第三个参数把native:true就好了
+						resolve(res)
+					}
+					if (res.statusCode === 200) {
+						//等于200证明请求接口成功,就把里面的data数据给用户返回,
+						//这里只返回data数据,用户想要原型数据,就在页面的第三个参数里写:native:true
+						resolve(res)
+					} else {
+						//调取接口错误时返回给程序员
+						reject(res)
+					}
 				}
-			}
-		})
+			})
 		})
-		
+
 	},
 	//get方法
-	get(url,data={},header={}, options={}){
-		options.url=this.config.baseUrl+url
-		options.data=data
-		options.method="get"
+	get(url, data = {}, header = {}, options = {}) {
+		options.url = this.config.baseUrl + url
+		options.data = data
+		options.method = "get"
 		return this.request(options)
 	},
 	//post方法
-	post(url,data={},options={}){
-		options.url=this.config.baseUrl+url
-		options.data=data
-		options.method="post"
+	post(url, data = {}, options = {}) {
+		options.url = this.config.baseUrl + url
+		options.data = data
+		options.method = "post"
 		return this.request(options)
 	}
-}
+}

+ 4 - 4
components/requesttoken111.js

@@ -2,9 +2,9 @@
 //通用uni-app网络请求
 export default {
 	config: {
-		baseUrl: "http://localhost:8200", //本地开发
-		// baseUrl: "http://172.27.185.236:8200",	//本地开发		
-		// baseUrl: "https://talent.younggee.com:8201",  //默认的公共域名
+		// baseUrl: "http://localhost:8200", //本地开发
+		baseUrl: "https://talent.younggee.com:8201", //默认的公共域名
+		// baseUrl: "https://139.9.53.143:8201",  //默认的公共域名
 
 		header: {
 			'Content-Type': 'application/json;charset=UTF-8', //默认get方式
@@ -90,4 +90,4 @@ export default {
 			uni.request(_config);
 		});
 	}
-}
+}

+ 14 - 0
components/utils.js

@@ -79,9 +79,23 @@ function fansview(num) {
 	return num
 }
 
+function getDaysBetweenDates(date1, date2) {
+  // 将日期转为时间戳,单位为毫秒
+  var timestamp1 = Date.parse(date1);
+  var timestamp2 = Date.parse(date2);
+
+  // 计算时间戳之差
+  var timeDiff = (timestamp2 - timestamp1);
+
+  // 将时间戳之差转为天数并返回
+  var diffDays = Math.ceil(timeDiff / (1000 * 3600 * 24));
+  return diffDays;
+}
+
 module.exports = {
 	getRouter,
 	getQueryString,
 	money,
 	fansview,
+	getDaysBetweenDates,
 }

+ 8 - 16
page_mycenter/myincome/applywithdraw.vue

@@ -66,17 +66,9 @@
 			return {
 				binded: false,
 				navH: getApp().globalData.navHeight,
-				picture: {
-					icon_person: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-person.png',
-					icon_location: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-location.png',
-					icon_account: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-account.png',
-					icon_rmb: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-rmb.png',
-					icon_message: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-message.png',
-					icon_right: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-arrow-right.png',
-					defaultavatarUrl: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/logoxin01.png',
-				},
+				picture: getApp().globalData.picture,
 				bankType: 1,
-				taskIdList: [],
+				incomeIdList: [],
 				totalAmount: 0,
 				realAmount: 0,
 				showRealAmount: 0,
@@ -113,14 +105,15 @@
 		onLoad(options) {
 			let data = options.textObj.replace(/""/g, "");
 			data = JSON.parse(decodeURIComponent(data))
-			this.taskIdList = data.taskIdList
+			this.incomeIdList = data.incomeIdList
 			this.totalAmount = data.totalAmount
 			this.realAmount = (data.totalAmount * 0.95).toFixed(2)
 			this.showTotalAmount = money(this.totalAmount)
 			this.showRealAmount = money(this.realAmount)
 		},
-		onShow() {
-			this.getInfo()
+		async onShow() {
+			await this.getInfo()			
+			this.getBankInfo()
 		},
 		methods: {
 			chan(e) {
@@ -133,11 +126,10 @@
 			},
 			// 默认信息表,获取平台logo
 			getInfo() {
-				this.$https.get('/youngee/c/g/get-info-tables')
+				return this.$https.get('/youngee/c/g/get-info-tables')
 					.then(res => {
 						this.array1 = res.data.data.Bank
 					})
-				this.getBankInfo()
 			},
 			getBankInfo() {
 				this.$https.get('/youngee/c/t/g/get-talent-bank-info')
@@ -160,7 +152,7 @@
 					return
 				}
 				this.$https.post('/youngee/c/t/p/withdraw', {
-						task_id_list: this.taskIdList,
+						income_id_list: this.incomeIdList,
 						total_amount: this.totalAmount,
 						real_amount: this.realAmount,
 						bank_type: 2,

+ 331 - 233
page_mycenter/myincome/myincome.vue

@@ -3,7 +3,57 @@
 		<!-- 胶囊 -->
 		<mvBar :mysNavConfig="mysNavConfig"></mvBar>
 		<view :style="{marginTop:navH}"></view>
-		<view>
+		<view class="head">
+			<view class="show-income1">
+				<view class="show-income1-left">
+					<view class="show-income1-left-up">
+						<view style="display: flex;align-items: center;">
+							<p>我获得的收益总数</p>
+							<image id="helpicon" :src="picture.icon_help" mode=""
+								style="width: 35rpx;height: 35rpx;padding-left: 10rpx;"
+								@click="showIncomeHelp = true" />
+						</view>
+						<view class="tip_box" v-if="showIncomeHelp">
+							<view class="container" :style="{
+						  'margin-right': cotainerMargin + 'px',
+						  backgroundColor: '#404040', borderRadius: '5px' }">
+								<!-- 提示文字 -->
+								<view class="tips">
+									<p>{{incomeHelpText}}</p>
+								</view>
+								<view class="close" @click="showIncomeHelp = false">
+									<image class="closeImg" src="../../static/delete.png" />
+								</view>
+							</view>
+						</view>
+					</view>
+					<view class="show-income1-left-down">
+						<p @click="toIncome('can')">
+							{{information.showIncome?information.showIncome:'0.0'}}
+						</p>
+					</view>
+				</view>
+				<view class="show-income1-right">
+					<view>
+						<button class="show-income1-btn" type="default" @click="toIncome('can')">提现</button>
+					</view>
+				</view>
+			</view>
+
+			<view class="show-income2">
+				<view class="show-income2-text" @click="toIncome('can')">
+					<p style="padding-bottom: 20rpx;">可提现</p>
+					<p>{{information.showCanwithdraw?information.showCanwithdraw:'0.0'}}</p>
+				</view>
+				<view class="show-income2-text" @click="toIncome('ed')">
+					<p style="padding-bottom: 20rpx;">已提现</p>
+					<p>{{information.showWithdrawed?information.showWithdrawed:'0.0'}}</p>
+				</view>
+				<view class="show-income2-text" @click="toIncome('ing')">
+					<p style="padding-bottom: 20rpx;">提现中</p>
+					<p>{{information.showWithdrawing?information.showWithdrawing:'0.0'}}</p>
+				</view>
+			</view>
 			<view class="show-income3">
 				<p style="font-weight: bold;">收益明细</p>
 				<view class="menu">
@@ -18,10 +68,12 @@
 					</view>
 				</view>
 			</view>
+		</view>
+		<view class="home">
 
 			<view class="income-list" v-if="showList1">
 				<checkbox-group @change="changeCheck">
-					<view class="income-list-cell" v-for="item in list1" :key="item.value">
+					<view class="income-list-cell" v-for="item in unWithdrawList" :key="item.value">
 						<view class="income-list-cell-left">
 							<label>
 								<view>
@@ -31,73 +83,75 @@
 							</label>
 							<view class="income-info">
 								<view class="income-info-product">
-									<image :src="item.product_photo.PhotoUrl"></image>
+									<image :src="item.photo_url"></image>
 								</view>
 								<view class="income-info-tp">
 									<p>任务ID:{{item.task_id}}</p>
 									<view class="income-info-project">
 										<image :src="item.platform_icon_url"></image>
-										<p>{{item.project_name}}</p>
+										<p>{{item.task_name}}</p>
 									</view>
 								</view>
 							</view>
 						</view>
 
 						<view class="income-list-cell-right">
-							<p style="color: #f2d22d;font-size: 36rpx;font-weight: 600;">+{{item.show_settle_amount}}
+							<p style="color: #f2d22d;font-size: 36rpx;font-weight: 600;">+{{item.showIncome}}
 							</p>
-							<p>任务收益</p>
+							<p>{{item.showLabel}}</p>
 						</view>
 					</view>
 				</checkbox-group>
 			</view>
 
 			<view class="income-list" v-if="showList2">
-				<view class="income-list-cell" style="margin-left: 50rpx;" v-for="item in list2" :key="item.value">
+				<view class="income-list-cell" style="margin-left: 50rpx;" v-for="item in withdrawedList"
+					:key="item.value">
 					<view class="income-list-cell-left">
 						<view class="income-info">
 							<view class="income-info-product">
-								<image :src="item.product_photo.PhotoUrl"></image>
+								<image :src="item.photo_url"></image>
 							</view>
 							<view class="income-info-tp">
 								<p>任务ID:{{item.task_id}}</p>
 								<view class="income-info-project">
 									<image :src="item.platform_icon_url"></image>
-									<p>{{item.project_name}}</p>
+									<p>{{item.task_name}}</p>
 								</view>
 							</view>
 						</view>
 					</view>
 
 					<view class="income-list-cell-right">
-						<p style="color: #f2d22d;font-size: 36rpx;font-weight: 600;">+{{item.show_settle_amount}}
+						<p style="color: #f2d22d;font-size: 36rpx;font-weight: 600;">+{{item.showIncome}}
 						</p>
-						<p>任务收益</p>
+						<p>{{item.showLabel}}</p>
 					</view>
 				</view>
 			</view>
 
 			<view class="income-list" v-if="showList3">
-				<view class="income-list-cell" style="margin-left: 50rpx;" v-for="item in list3" :key="item.value">
+				<view class="income-list-cell" style="margin-left: 50rpx;" v-for="item in withdrawingList"
+					:key="item.value">
 					<view class="income-list-cell-left">
 						<view class="income-info">
 							<view class="income-info-product">
-								<image :src="item.product_photo.PhotoUrl"></image>
+								<image :src="item.photo_url"></image>
 							</view>
 							<view class="income-info-tp">
 								<p>任务ID:{{item.task_id}}</p>
 								<view class="income-info-project">
 									<image :src="item.platform_icon_url"></image>
-									<p>{{item.project_name}}</p>
+									<p>{{item.task_name}}</p>
 								</view>
 							</view>
 						</view>
 					</view>
 
 					<view class="income-list-cell-right">
-						<p style="color: #f2d22d;font-size: 36rpx;font-weight: 600;">+{{item.show_settle_amount}}
+						<p style="color: #f2d22d;font-size: 36rpx;font-weight: 600;">+{{item.showIncome}}
 						</p>
-						<p>任务收益</p>
+						<p>{{item.showLabel}}</p>
 					</view>
 				</view>
 			</view>
@@ -119,7 +173,7 @@
 				</view>
 
 				<view>
-					<button class="right-btn" type="primary" @click="withdraw()">提现</button>
+					<button class="right-btn" type="primary" @click="submitWithdraw()">提现</button>
 				</view>
 			</view>
 		</view>
@@ -139,76 +193,11 @@
 		data() {
 			return {
 				navH: getApp().globalData.navHeight,
-				// 测试数据
-				// list1: [{
-				// 	task_id: "001abandon",
-				// 	project_name: "PUYU朴郁小树茶冻干茶粉",
-				// 	product_price: 78,
-				// 	RecruitStrategy: {
-				// 		followers_low: "1万",
-				// 		followers_up: "3万",
-				// 		show_fee_form: "创作者自报价",
-				// 		offer: 350,
-				// 	},
-				// 	settle_amount: 350,
-				// 	complete_date: "2022-3-2 14:00",
-				// 	checked: false
-				// }, {
-				// 	task_id: "002abash",
-				// 	project_name: "Pisco生姜气泡饮料",
-				// 	product_price: 68,
-				// 	RecruitStrategy: {
-				// 		followers_low: "1万",
-				// 		followers_up: "3万",
-				// 		show_fee_form: "固定稿费",
-				// 		offer: 300,
-				// 	},
-				// 	settle_amount: 150,
-				// 	complete_date: "2022-3-2 14:00",
-				// 	checked: false
-				// }],
-				// list2: [{
-				// 	task_id: "003abash",
-				// 	project_name: "小鹏海南试驾",
-				// 	product_price: 68,
-				// 	RecruitStrategy: {
-				// 		followers_low: "1万",
-				// 		followers_up: "3万",
-				// 		show_fee_form: "固定稿费",
-				// 		offer: 4000,
-				// 	},
-				// 	settle_amount: 4000,
-				// 	complete_date: "2022-3-2 14:00",
-				// }, {
-				// 	task_id: "004abbreviate",
-				// 	project_name: "优衣库三里屯店新店开业",
-				// 	product_price: 100,
-				// 	RecruitStrategy: {
-				// 		followers_low: "5万",
-				// 		followers_up: "10万",
-				// 		show_fee_form: "固定稿费",
-				// 		offer: 1200,
-				// 	},
-				// 	settle_amount: 1200,
-				// 	complete_date: "2022-3-2 14:00",
-				// }],
-				// list3: [{
-				// 	task_id: "001abandon",
-				// 	project_name: "PUYU朴郁小树茶冻干茶粉",
-				// 	product_price: 78,
-				// 	RecruitStrategy: {
-				// 		followers_low: "1万",
-				// 		followers_up: "3万",
-				// 		show_fee_form: "创作者自报价",
-				// 		offer: 350,
-				// 	},
-				// 	settle_amount: 350,
-				// 	complete_date: "2022-3-2 14:00",
-				// }],
-
-				list1: [],
-				list2: [],
-				list3: [],
+				picture: getApp().globalData.picture,
+
+				unWithdrawList: [],
+				withdrawingList: [],
+				withdrawedList: [],
 				allCheck: {
 					name: '全选',
 					value: 'all',
@@ -218,15 +207,6 @@
 				showList1: true,
 				showList2: false,
 				showList3: false,
-				picture: {
-					icon_person: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-person.png',
-					icon_location: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-location.png',
-					icon_account: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-account.png',
-					icon_rmb: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-rmb.png',
-					icon_message: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-message.png',
-					icon_right: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-arrow-right.png',
-					defaultavatarUrl: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/logoxin01.png',
-				},
 				mysNavConfig: {
 					/* 开启单页显示首页图标 */
 					isHome: true,
@@ -253,10 +233,22 @@
 				},
 				codeImg: '',
 				information: {},
+				incomeHelpText: "在平台产生的总收益【可提现+已提现+提现中】",
+				showIncomeHelp: false,
+				labelList: [
+					"",
+					"任务收益",
+					"开团收益",
+					"样品返现",
+					"悬赏收益"
+				],
 			};
 		},
 		async onShow() {
 			// 判断登录
+			uni.showLoading({
+				title: '加载中'
+			});
 			await this.isLogin();
 			if (this.token === '') {
 				uni.showModal({
@@ -272,48 +264,60 @@
 					}
 				});
 			} else {
-				this.getTaskInfo()
+				await this.getTalentInfo();
+				// this.toShow1()
+				// await this.getTaskInfo();
 			}
+			uni.hideLoading();
 		},
 		onLoad(options) {
 			console.log(options)
 			this.showTab = options.showTab
 			// 传过来的id
+			console.log(this.showTab)
 			if (this.showTab == '1') {
 				this.toShow1();
 			} else if (this.showTab == '2') {
 				this.toShow2();
 			} else if (this.showTab == '3') {
 				this.toShow3();
+			} else {
+				this.toShow1();
 			}
 		},
-		methods: {
-			// 判断登陆是否过期
-			isLogin() {
-				return this.$https.get('/youngee/c/t/g/is-login')
-					.then(res => {
-						if (res.data.code === 403) {
-							// 登陆已失效
-							this.token = ""
-						} else {
-							this.token = uni.getStorageSync('token')
-						}
-					})
+		methods: {	
+			toShow1() {
+				this.showList2 = false;
+				this.showList3 = false;
+				this.showList1 = true;
+				this.getTalentIncome(1);
+			},
+			toShow2() {
+				this.showList1 = false;
+				this.showList3 = false;
+				this.showList2 = true;
+				this.getTalentIncome(3);
+			},
+			toShow3() {
+				this.showList2 = false;
+				this.showList1 = false;
+				this.showList3 = true;
+				this.getTalentIncome(2);
 			},
 			// 全选
 			changeAll: function(e) {
 				if (e.detail.value.length == 0) {
-					this.list1.map(item => this.$set(item, 'checked', false));
+					this.unWithdrawList.map(item => this.$set(item, 'checked', false));
 					this.$set(this.allCheck, 'checked', false);
 				} else {
-					this.list1.map(item => this.$set(item, 'checked', true));
+					this.unWithdrawList.map(item => this.$set(item, 'checked', true));
 					this.$set(this.allCheck, 'checked', true);
 				}
 			},
 			// 多选
 			changeCheck: function(e) {
-				var items = this.list1;
-				var len = this.list1.length;
+				var items = this.unWithdrawList;
+				var len = this.unWithdrawList.length;
 				var values = e.detail.value;
 				console.log(values)
 				for (var i = 0; i < len; i++) {
@@ -328,138 +332,68 @@
 				var isAll = this.list1.every(item => item.checked == true)
 				isAll ? this.$set(this.allCheck, 'checked', true) : this.$set(this.allCheck, 'checked', false)
 			},
-
-			// 获取提现任务
-			getTaskInfo() {
-				return this.$https.get('/youngee/c/t/g/get-withdraw-task-info')
+			// 判断登陆是否过期
+			isLogin() {
+				return this.$https.get('/youngee/c/t/g/is-login')
 					.then(res => {
-						this.list1 = []
-						this.list2 = []
-						this.list3 = []
-						// console.log(res)
-						if (res.data.data.can_withdraw_task_info_list != null) {
-							this.list1 = res.data.data.can_withdraw_task_info_list
-							for (let i = 0; i < this.list1.length; i++) {
-								this.list1[i].show_task_reward = money(this.list1[i].task_reward)
-								this.list1[i].show_settle_amount = money(this.list1[i].settle_amount)
-
-								let ProductPhoto = JSON.parse(this.list1[i].product_photo);
-								for (let j = 0; j < ProductPhoto.length; ++j) {
-									if (ProductPhoto[j].Symbol == 1) {
-										this.list1[i].product_photo = ProductPhoto[j]
-									}
-								}
-								// this.list1[i].show_product_price = money(this.list1[i].product_price)
-								// this.list1[i].RecruitStrategy.show_followers_low = fansview(this.list1[i]
-								// 	.RecruitStrategy.followers_low)
-								// this.list1[i].RecruitStrategy.show_followers_up = fansview(this.list1[i]
-								// 	.RecruitStrategy.followers_up)
-								// switch (this.list1[i].RecruitStrategy.fee_form) {
-								// 	case 1:
-								// 		this.list1[i].RecruitStrategy.show_fee_form = "产品置换"
-								// 		break
-								// 	case 2:
-								// 		this.list1[i].RecruitStrategy.show_fee_form = "固定稿费"
-								// 		break
-								// 	case 3:
-								// 		this.list1[i].RecruitStrategy.show_fee_form = "自报价"
-								// 		break
-								// }
-							}
-						}
-						if (res.data.data.withdrawed_task_info_list != null) {
-							this.list2 = res.data.data.withdrawed_task_info_list
-							for (let i = 0; i < this.list2.length; i++) {
-								this.list2[i].show_task_reward = money(this.list2[i].task_reward)
-								this.list2[i].show_settle_amount = money(this.list2[i].settle_amount)
-								let ProductPhoto = JSON.parse(this.list2[i].product_photo);
-								for (let j = 0; j < ProductPhoto.length; ++j) {
-									if (ProductPhoto[j].Symbol == 1) {
-										this.list2[i].product_photo = ProductPhoto[j]
-									}
-								}
-								// this.list2[i].show_product_price = money(this.list2[i].product_price)
-								// this.list2[i].RecruitStrategy.show_followers_low = fansview(this.list2[i]
-								// 	.RecruitStrategy.followers_low)
-								// this.list2[i].RecruitStrategy.show_followers_up = fansview(this.list2[i]
-								// 	.RecruitStrategy.followers_up)
-								// switch (this.list2[i].RecruitStrategy.fee_form) {
-								// 	case 1:
-								// 		this.list2[i].RecruitStrategy.show_fee_form = "产品置换"
-								// 		break
-								// 	case 2:
-								// 		this.list2[i].RecruitStrategy.show_fee_form = "固定稿费"
-								// 		break
-								// 	case 3:
-								// 		this.list2[i].RecruitStrategy.show_fee_form = "自报价"
-								// 		break
-								// }
-							}
-						}
-						if (res.data.data.withdrawing_task_info_list != null) {
-							this.list3 = res.data.data.withdrawing_task_info_list
-							for (let i = 0; i < this.list3.length; i++) {
-								this.list3[i].show_task_reward = money(this.list3[i].task_reward)
-								this.list3[i].show_settle_amount = money(this.list3[i].settle_amount)
-								let ProductPhoto = JSON.parse(this.list3[i].product_photo);
-								for (let j = 0; j < ProductPhoto.length; ++j) {
-									if (ProductPhoto[j].Symbol == 1) {
-										this.list3[i].product_photo = ProductPhoto[j]
-									}
-								}
-								// this.list3[i].show_product_price = money(this.list3[i].product_price)
-								// this.list3[i].RecruitStrategy.show_followers_low = fansview(this.list3[i]
-								// 	.RecruitStrategy.followers_low)
-								// this.list3[i].RecruitStrategy.show_followers_up = fansview(this.list3[i]
-								// 	.RecruitStrategy.followers_up)
-								// switch (this.list3[i].RecruitStrategy.fee_form) {
-								// 	case 1:
-								// 		this.list3[i].RecruitStrategy.show_fee_form = "产品置换"
-								// 		break
-								// 	case 2:
-								// 		this.list3[i].RecruitStrategy.show_fee_form = "固定稿费"
-								// 		break
-								// 	case 3:
-								// 		this.list3[i].RecruitStrategy.show_fee_form = "自报价"
-								// 		break
-								// }
-							}
+						if (res.data.code === 403) {
+							// 登陆已失效
+							this.token = ""
+						} else {
+							this.token = uni.getStorageSync('token')
 						}
 					})
 			},
-			toShow1() {
-				this.showList2 = false;
-				this.showList3 = false;
-				this.showList1 = true;
-			},
-			toShow2() {
-				this.showList1 = false;
-				this.showList3 = false;
-				this.showList2 = true;
-			},
-			toShow3() {
-				this.showList2 = false;
-				this.showList1 = false;
-				this.showList3 = true;
+			getTalentInfo() {
+				return this.$https.get('/youngee/c/t/g/get-talent-info')
+					.then(res => {
+						if (res.data.code === 0) {
+							this.information = res.data.data
+							this.information.showWithdrawing = money(this.information.withdrawing)
+							this.information.showWithdrawed = money(this.information.withdrawed)
+							this.information.showCanwithdraw = money(this.information.canwithdraw)
+							this.information.showIncome = money(this.information.income)
+						}
+					});
 			},
-			withdraw() {
-				let taskIdList = []
+			getTalentIncome(val) {
+				return this.$https.post('/youngee/c/t/p/get-talent-income-info', {
+					type: val
+				}).then(res => {
+					if (res.data.code === 0) {
+						let data = res.data.data
+						for (let i = 0; i < data.length; ++i) {
+							data[i].showIncome = money(data[i].income)
+							data[i].showLabel = this.labelList[data[i].income_type]
+						}
+						if (val === 1) {
+							this.unWithdrawList = data
+						} else if (val === 2) {
+							this.withdrawingList = data
+						} else {
+							this.withdrawedList = data
+						}
+					}
+				})
+			},		
+			submitWithdraw() {
+				let incomeIdList = []
 				let totalAmount = 0
-				for (let i = 0; i < this.list1.length; ++i) {
-					if (this.list1[i].checked) {
-						taskIdList.push(this.list1[i].task_id)
-						totalAmount += this.list1[i].settle_amount
+				for (let i = 0; i < this.unWithdrawList.length; ++i) {
+					if (this.unWithdrawList[i].checked) {
+						incomeIdList.push(this.unWithdrawList[i].id)
+						totalAmount += this.unWithdrawList[i].income
 					}
 				}
-				if (taskIdList.length == 0) {
+				if (incomeIdList.length == 0) {
 					uni.showToast({
-						content: '请先选择提现任务',
+						content: '请先选择提现订单',
 						icon: 'none'
 					});
 					return
 				}
 				var data = {
-					taskIdList: taskIdList,
+					incomeIdList: incomeIdList,
 					totalAmount: totalAmount
 				};
 				data = JSON.stringify(data)
@@ -467,6 +401,56 @@
 					url: '/page_mycenter/myincome/applywithdraw?textObj=' + encodeURIComponent(data)
 				});
 			}
+		// // 获取提现任务
+		// getTaskInfo() {
+		// 	return this.$https.get('/youngee/c/t/g/get-withdraw-task-info')
+		// 		.then(res => {
+		// 			this.list1 = []
+		// 			this.list2 = []
+		// 			this.list3 = []
+		// 			// console.log(res)
+		// 			if (res.data.data.can_withdraw_task_info_list != null) {
+		// 				this.list1 = res.data.data.can_withdraw_task_info_list
+		// 				for (let i = 0; i < this.list1.length; i++) {
+		// 					this.list1[i].show_task_reward = money(this.list1[i].task_reward)
+		// 					this.list1[i].show_settle_amount = money(this.list1[i].settle_amount)
+		
+		// 					let ProductPhoto = JSON.parse(this.list1[i].product_photo);
+		// 					for (let j = 0; j < ProductPhoto.length; ++j) {
+		// 						if (ProductPhoto[j].Symbol == 1) {
+		// 							this.list1[i].product_photo = ProductPhoto[j]
+		// 						}
+		// 					}
+		// 				}
+		// 			}
+		// 			if (res.data.data.withdrawed_task_info_list != null) {
+		// 				this.list2 = res.data.data.withdrawed_task_info_list
+		// 				for (let i = 0; i < this.list2.length; i++) {
+		// 					this.list2[i].show_task_reward = money(this.list2[i].task_reward)
+		// 					this.list2[i].show_settle_amount = money(this.list2[i].settle_amount)
+		// 					let ProductPhoto = JSON.parse(this.list2[i].product_photo);
+		// 					for (let j = 0; j < ProductPhoto.length; ++j) {
+		// 						if (ProductPhoto[j].Symbol == 1) {
+		// 							this.list2[i].product_photo = ProductPhoto[j]
+		// 						}
+		// 					}
+		// 				}
+		// 			}
+		// 			if (res.data.data.withdrawing_task_info_list != null) {
+		// 				this.list3 = res.data.data.withdrawing_task_info_list
+		// 				for (let i = 0; i < this.list3.length; i++) {
+		// 					this.list3[i].show_task_reward = money(this.list3[i].task_reward)
+		// 					this.list3[i].show_settle_amount = money(this.list3[i].settle_amount)
+		// 					let ProductPhoto = JSON.parse(this.list3[i].product_photo);
+		// 					for (let j = 0; j < ProductPhoto.length; ++j) {
+		// 						if (ProductPhoto[j].Symbol == 1) {
+		// 							this.list3[i].product_photo = ProductPhoto[j]
+		// 						}
+		// 					}
+		// 				}
+		// 			}
+		// 		})
+		// },
 		},
 	};
 </script>
@@ -481,6 +465,18 @@
 		font-size: 32rpx;
 	}
 
+	.head {
+		padding: 20rpx 0;
+		background-color: #fff;
+		position: fixed;
+		width: 100%;
+		z-index: 999;
+	}
+
+	.home {
+		padding-top: 550rpx;
+	}
+
 	.menu {
 		display: flex;
 		align-items: center;
@@ -572,6 +568,7 @@
 		display: flex;
 		flex-direction: column;
 		align-items: flex-end;
+		width: 50%;
 	}
 
 	.income-list-cell-right p {
@@ -613,7 +610,7 @@
 
 	.income-info-project image {
 		height: 40rpx;
-		width: 40rpx;
+		width: 70rpx;
 		padding-right: 20rpx;
 	}
 
@@ -652,4 +649,105 @@
 		font-size: 32rpx;
 		line-height: 180%;
 	}
-</style>
+
+
+	.show-income1 {
+		height: 150rpx;
+		margin: 0 3% 0 8%;
+		display: flex;
+		justify-content: space-between;
+		align-items: center;
+	}
+
+	.show-income1-btn {
+		width: 150rpx;
+		// padding: 0 40rpx;
+		text-align: center;
+		background-color: #F0D232;
+		border-radius: 15rpx;
+		font-size: 32rpx;
+		line-height: 250%;
+	}
+
+	.show-income1-left {
+		display: flex;
+		flex-direction: column;
+		justify-content: start;
+	}
+
+	.show-income1-left-up {
+		margin-bottom: 10rpx;
+	}
+
+	.show-income1-left-down p {
+		font-size: 40rpx;
+		font-weight: bold;
+		color: #F0D232;
+	}
+
+	.show-income1-right {
+		padding-right: 20rpx;
+	}
+
+	.show-income2 {
+		display: flex;
+		align-items: center;
+		justify-content: space-between;
+		height: 150rpx;
+		margin: 0 3% 3%;
+		background-color: #F0D232;
+		border-radius: 10rpx;
+		padding: 0 5%;
+	}
+
+	.show-income2-text {
+		width: 24%;
+		text-align: center;
+	}
+
+	.tip_box {
+		position: absolute;
+		right: 0;
+		z-index: 9999;
+		display: flex;
+		justify-content: flex-end;
+		align-items: flex-end;
+		flex-direction: column;
+
+		.arrow {
+			width: 0;
+			height: 0;
+			border: 10rpx solid;
+			border-color: transparent;
+		}
+
+		.container {
+			display: flex;
+			align-items: center;
+			justify-content: center;
+			padding: 16rpx 24rpx;
+
+			.tips {
+				flex: 1;
+				padding-right: 12rpx;
+			}
+
+			.tips p {
+				font-size: 24rpx;
+				color: #fff
+			}
+
+			.close {
+				display: flex;
+				align-items: center;
+				height: 30rpx;
+				width: 30rpx;
+
+				.closeImg {
+					height: 100%;
+					width: 100%;
+				}
+			}
+		}
+	}
+</style>

+ 1 - 1
page_mycenter/myinformation/bindaccount.vue

@@ -410,7 +410,7 @@
 					fail: function(e) {
 						console.log(e);
 						uni.showToast({
-							title: '上传失败22222',
+							title: '上传失败',
 							icon: '失败'
 						});
 					}

+ 1 - 3
page_mycenter/myinformation/myinformation.vue

@@ -41,9 +41,7 @@
 		data() {
 			return {
 				navH: getApp().globalData.navHeight,
-				picture: {
-					icon_right: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-arrow-right.png',
-				},				
+				picture: getApp().globalData.picture,
 				mysNavConfig: {
 					/* 开启单页显示首页图标 */
 					isHome: true,

+ 1 - 8
page_mycenter/myinformation/mylocation.vue

@@ -83,14 +83,7 @@
 			return {
 				navH: getApp().globalData.navHeight,
 				weixinimage: "../../../static/img/icon-weixin.png",
-				picture: {
-					icon_edit: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-edit.png',
-					icon_del: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-del.png',
-					icon_loc: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-loc.png',
-					home8: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/home8.png',
-					home10: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/home10.png',
-					home11: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/home11.png',
-				},
+				picture: getApp().globalData.picture,
 				list: [],
 
 				mysNavConfig: {

+ 2 - 2
page_mycenter/mypoint/mypoint.vue

@@ -10,7 +10,7 @@
 
 			</view>
 		</view>
-
+<!-- 
 		<view class="content">
 			<view class="point-card">
 				<view class="point-card-left">
@@ -31,7 +31,7 @@
 					<p>+100</p>
 				</view>
 			</view>
-		</view>
+		</view> -->
 	</view>
 </template>
 

+ 219 - 56
page_mycenter/myselection/myselection.vue

@@ -4,93 +4,162 @@
 		<mvBar :mysNavConfig="mysNavConfig"></mvBar>
 		<view :style="{marginTop:navH}"></view>
 
-		<view class="menu" v-if="!loading">
-			<view class="menu-item" @click="toAll()">
-				<p v-bind:class="tab == 'all'?'lor':'unlor'">全部</p>
+		<view class="menu">
+			<view class="menu-item" @click="handleClickTab(0)">
+				<p v-bind:class="showList[0]?'lor':'unlor'">全部</p>
 			</view>
-			<view class="menu-item" @click="toApply()">
-				<p v-bind:class="tab == 'apply'?'lor':'unlor'">已报名</p>
+			<view class="menu-item" @click="handleClickTab(1)">
+				<p v-bind:class="showList[1]?'lor':'unlor'">已报名</p>
 			</view>
-			<view class="menu-item" @click="toExecute()">
-				<p v-bind:class="tab == 'execute'?'lor':'unlor'">执行中</p>
+			<view class="menu-item" @click="handleClickTab(2)">
+				<p v-bind:class="showList[2]?'lor':'unlor'">执行中</p>
 			</view>
-			<view class="menu-item" @click="toEnd()">
-				<p v-bind:class="tab == 'end'?'lor':'unlor'">已结束</p>
+			<view class="menu-item" @click="handleClickTab(3)">
+				<p v-bind:class="showList[3]?'lor':'unlor'">已结束</p>
 			</view>
 		</view>
 
-		<view class="home" v-if="tab == 'all'" style="padding-top: 100rpx;">
-			<view class="task">
+		<view class="home" v-if="showList[0] && !loading">
+			<view class="task" v-for="item in secTaskLists[0]" @click="handleToSecTaskDetail(item)">
 				<view class="task-card">
 					<view class="task-head">
 						<view class="task-head-account">
-							<image class="platform-img"></image>
-							<p>丸子在成都</p>
+							<image class="platform-img" :src="item.platform_icon_url"></image>
+							<p>{{item.platform_nick_name}}</p>
 						</view>
 						<view class="task-head-status">
-							<p>已报名</p>
+							<p>{{item.task_stage_txt}}</p>
 						</view>
 					</view>
 					<view class="task-info">
 						<view class="task-info-left">
-							<image class="project-img"></image>
+							<image class="project-img" :src="item.product_img_url"></image>
 							<view class="task-info-txt">
-								<p style="color: #000;font-size: 32rpx;">鹿小井婴儿餐具清洗液</p>
-								<p style="color: #F0D232;">上传截止时间:2022/1/9 10:00</p>
-								<p>样品预计返现金额:¥35.0</p>
-								<p>预计收益:¥300.0</p>
+								<p style="color: #000;font-size: 32rpx;">{{item.selection_name}}</p>
+								<p v-if="item.sample_mode === 2">预计样品返现金额:¥{{item.show_payment}}</p>
+								<p>预计收益:¥{{item.show_task_reward}}</p>
 							</view>
 						</view>
+						<view class="task-info-right" v-if="item.isShowModify">
+							<image src="../../static/img/icon-edit.png" style="height: 60rpx;width: 60rpx;"></image>
+							<p style="font-size: 32rpx;color: #ffcb41;font-weight: 600">改</p>
+						</view>
 					</view>
-					<view style="text-align: right;">
-						<p style="display: inline-block;">实际收益:¥435.0</p>
+					<view style="text-align: right;" v-if="item.task_stage > 5">
+						<p style="display: inline-block;">实际收益:¥{{item.show_real_reward}}</p>
 					</view>
 				</view>
+			</view>
+		</view>
 
+		<view class="home" v-if="showList[1] && !loading">
+			<view class="task" v-for="item in secTaskLists[1]" @click="handleToSecTaskDetail(item)">
 				<view class="task-card">
 					<view class="task-head">
 						<view class="task-head-account">
-							<image class="platform-img"></image>
-							<p>丸子在成都</p>
+							<image class="platform-img" :src="item.platform_icon_url"></image>
+							<p>{{item.platform_nick_name}}</p>
 						</view>
 						<view class="task-head-status">
-							<p>已报名</p>
+							<p>{{item.task_stage_txt}}</p>
 						</view>
 					</view>
 					<view class="task-info">
 						<view class="task-info-left">
-							<image class="project-img"></image>
+							<image class="project-img" :src="item.product_img_url"></image>
 							<view class="task-info-txt">
-								<p style="color: #000;font-size: 32rpx;">鹿小井婴儿餐具清洗液</p>
-								<p style="color: #F0D232;">上传截止时间:2022/1/9 10:00</p>
-								<p>样品预计返现金额:¥35.0</p>
-								<p>预计收益:¥300.0</p>
+								<p style="color: #000;font-size: 32rpx;">{{item.selection_name}}</p>
+								<p v-if="item.sample_mode === 2">预计样品返现金额:¥{{item.show_payment}}</p>
+								<p>预计收益:¥{{item.show_task_reward}}</p>
 							</view>
 						</view>
+						<view class="task-info-right" v-if="item.isShowModify">
+							<image src="../../static/img/icon-edit.png" style="height: 60rpx;width: 60rpx;"></image>
+							<p style="font-size: 32rpx;color: #ffcb41;font-weight: 600">改</p>
+						</view>
 					</view>
-					<view style="text-align: right;">
-						<p style="display: inline-block;">实际收益:¥435.0</p>
+					<view style="text-align: right;" v-if="item.task_stage > 5">
+						<p style="display: inline-block;">实际收益:¥{{item.show_real_reward}}</p>
 					</view>
 				</view>
 			</view>
 		</view>
 
-		<view class="home" v-if="tab == 'apply'" style="padding-top: 100rpx;">
-		</view>
-
-		<view class="home" v-if="tab == 'execute'" style="padding-top: 100rpx;">
+		<view class="home" v-if="showList[2] && !loading">
+			<view class="task" v-for="item in secTaskLists[2]" @click="handleToSecTaskDetail(item)">
+				<view class="task-card">
+					<view class="task-head">
+						<view class="task-head-account">
+							<image class="platform-img" :src="item.platform_icon_url"></image>
+							<p>{{item.platform_nick_name}}</p>
+						</view>
+						<view class="task-head-status">
+							<p>{{item.task_stage_txt}}</p>
+						</view>
+					</view>
+					<view class="task-info">
+						<view class="task-info-left">
+							<image class="project-img" :src="item.product_img_url"></image>
+							<view class="task-info-txt">
+								<p style="color: #000;font-size: 32rpx;">{{item.selection_name}}</p>
+								<p v-if="item.sample_mode === 2">预计样品返现金额:¥{{item.show_payment}}</p>
+								<p>预计收益:¥{{item.show_task_reward}}</p>
+							</view>
+						</view>
+						<view class="task-info-right" v-if="item.isShowModify">
+							<image src="../../static/img/icon-edit.png" style="height: 60rpx;width: 60rpx;"></image>
+							<p style="font-size: 32rpx;color: #ffcb41;font-weight: 600">改</p>
+						</view>
+					</view>
+					<view style="text-align: right;" v-if="item.task_stage > 5">
+						<p style="display: inline-block;">实际收益:¥{{item.show_real_reward}}</p>
+					</view>
+				</view>
+			</view>
 		</view>
 
-		<view class="home" v-if="tab == 'end'" style="padding-top: 100rpx;">
+		<view class="home" v-if="showList[3] && !loading">
+			<view class="task" v-for="item in secTaskLists[3]" @click="handleToSecTaskDetail(item)">
+				<view class="task-card">
+					<view class="task-head">
+						<view class="task-head-account">
+							<image class="platform-img" :src="item.platform_icon_url"></image>
+							<p>{{item.platform_nick_name}}</p>
+						</view>
+						<view class="task-head-status">
+							<p>{{item.task_stage_txt}}</p>
+						</view>
+					</view>
+					<view class="task-info">
+						<view class="task-info-left">
+							<image class="project-img" :src="item.product_img_url"></image>
+							<view class="task-info-txt">
+								<p style="color: #000;font-size: 32rpx;">{{item.selection_name}}</p>
+								<p v-if="item.sample_mode === 2">预计样品返现金额:¥{{item.show_payment}}</p>
+								<p>预计收益:¥{{item.show_task_reward}}</p>
+							</view>
+						</view>
+						<view class="task-info-right" v-if="item.isShowModify">
+							<image src="../../static/img/icon-edit.png" style="height: 60rpx;width: 60rpx;"></image>
+							<p style="font-size: 32rpx;color: #ffcb41;font-weight: 600">改</p>
+						</view>
+					</view>
+					<view style="text-align: right;" v-if="item.task_stage > 5">
+						<p style="display: inline-block;">实际收益:¥{{item.show_real_reward}}</p>
+					</view>
+				</view>
+			</view>
 
 		</view>
-
-	</view>
 	</view>
 </template>
 
 <script>
 	import mvBar from "@/components/mys_navBar/mysNavBar";
+	import {
+		fansview,
+		money
+	} from '@/components/utils.js';
 	export default {
 		components: {
 			mvBar,
@@ -122,12 +191,22 @@
 						radius: "40rpx",
 					},
 				},
-				tab: 'all',
+
+				loading: false,
+				showList: [true, false, false, false],
+				secTaskStageList: [],
+				secTaskLists: [
+					[],
+					[],
+					[],
+					[]
+				],
+				curTab: 0,
 			}
 		},
 		async onLoad(options) {
 			// 判断登录
-			await this.isLogin();
+			await this.isLoginApi();
 			if (this.token === '') {
 				uni.showModal({
 					content: '请先登录',
@@ -145,11 +224,51 @@
 
 			let data = options.textObj.replace(/""/g, "");
 			data = JSON.parse(decodeURIComponent(data))
-			this.tab = data.tab
+			this.curTab = data.value
+
+			let that = this
+			this.showList.forEach(function(item, index) {
+				if (index == that.curTab) {
+					that.showList[index] = true
+				} else {
+					that.showList[index] = false
+				}
+			})
+			console.log("showList: ", this.showList)
+		},
+		async onShow() {
+			await this.getInfoTableApi()
+			this.handleClickTab(this.curTab)
 		},
 		methods: {
+			async handleClickTab(value) {
+				this.loading = true;
+				uni.showLoading({
+					title: '加载中'
+				});
+
+				let that = this
+				this.showList.forEach(function(item, index) {
+					if (index == value) {
+						that.showList[index] = true
+					} else {
+						that.showList[index] = false
+					}
+				})
+				await this.getSecTaskListApi(parseInt(value) + 1);
+
+				uni.hideLoading();
+				this.loading = false;
+			},
+			handleToSecTaskDetail(item) {
+				uni.navigateTo({
+					url: '/page_workspace/selection/sectaskdetail?taskId=' + item.task_id,
+					success(res) {},
+					fail(err) {}
+				});
+			},
 			// 判断登陆是否过期
-			isLogin() {
+			isLoginApi() {
 				return this.$https.get('/youngee/c/t/g/is-login')
 					.then(res => {
 						if (res.data.code === 403) {
@@ -161,20 +280,51 @@
 						}
 					})
 			},
-			toAll() {
-				this.tab = 'all'
-
+			getInfoTableApi() {
+				return this.$https.get('/youngee/c/g/get-info-tables')
+					.then(res => {
+						console.log(res)
+						this.secTaskStageList = res.data.data.SecTaskStage
+					})
 			},
-			toApply() {
-				this.tab = 'apply'
+			getSecTaskListApi(value) {
+				return this.$https.get('/youngee/c/api/t/secTask/list?task_stage=' + value).then(res => {
+					if (res.data.code === 1) {
+						let secTaskList = res.data.data.sec_task
+						let num = res.data.data.count
+						for (let i = 0; i < num; ++i) {
+							// 主图
+							if (secTaskList[i].product_photo_snap != null && secTaskList[i].product_photo_snap != ''){
+								let productPhoto = JSON.parse(secTaskList[i].product_photo_snap);
+								for (let j = 0; j < productPhoto.length; j++) {
+									if (productPhoto[j].Symbol == 1) {
+										secTaskList[i].product_img_url = productPhoto[j].PhotoUrl
+									}
+								}
+							}
 
-			},
-			toExecute() {
-				this.tab = 'execute'
+							// 待修改标识
+							if (secTaskList[i].task_stage == 8 && secTaskList[i].assignment_status == 3) {
+								secTaskList[i].isShowModify = true
+							} else {
+								secTaskList[i].isShowModify = false
+							}
 
-			},
-			toEnd() {
-				this.tab = 'end'
+							// 任务阶段展示							
+							secTaskList[i].task_stage_txt = this.secTaskStageList[secTaskList[i].task_stage - 1]
+								.task_stage
+
+							// 任务收益
+							secTaskList[i].real_reward = secTaskList[i].task_reward
+							secTaskList[i].show_task_reward = money(secTaskList[i].task_reward)
+							secTaskList[i].show_real_reward = money(secTaskList[i].real_reward)
+							secTaskList[i].show_payment = money(secTaskList[i].talent_payment)
+						}
+						this.secTaskLists[value-1] = secTaskList
+						console.log("secTaskLists: ", this.secTaskLists)
+					}
+
+				})
 			},
 		}
 	}
@@ -185,6 +335,10 @@
 		font-size: 32rpx;
 	}
 
+	.home {
+		padding-top: 70rpx;
+	}
+
 	.menu {
 		position: fixed;
 		border-bottom: #FCCF41;
@@ -230,7 +384,6 @@
 				width: 40rpx;
 				height: 40rpx;
 				margin-right: 10rpx;
-				background-color: #F0D232;
 			}
 
 			.task-head-status p {
@@ -250,7 +403,7 @@
 				.project-img {
 					height: 120rpx;
 					width: 120rpx;
-					background-color: #b3c96b;
+					// background-color: #b3c96b;
 				}
 
 				.task-info-txt {
@@ -264,9 +417,19 @@
 				}
 			}
 
+			.task-info-right {
+				width: 100rpx;
+				height: 100rpx;
+				border-radius: 50%;
+				border: #ffcb41 2rpx solid;
+				display: flex;
+				align-items: center;
+				justify-content: center;
+			}
+
 			.task-info-right p {
 				font-size: 24rpx;
 			}
 		}
 	}
-</style>
+</style>

+ 210 - 38
page_mycenter/mytask/mytask.vue

@@ -20,12 +20,12 @@
 		</view>
 
 		<view class="home" v-if="tab == 'all' && !loading">
-			<view class="task" v-for="item in allList">
-				<view @click="toDetail(item)">
+			<view class="task" v-for="item in allList" @click="toTaskDetail(item)">
+				<view class="task-card">
 					<view class="task-head">
 						<view class="task-head-account">
-							<image :src="item.platform_icon_url" style="height: 50rpx;width: 50rpx;"></image>
-							<p style="margin-left: 20rpx;">{{item.platform_nick_name}}</p>
+							<image class="platform-img" :src="item.platform_icon_url"></image>
+							<p>{{item.platform_nick_name}}</p>
 						</view>
 						<view class="task-head-status">
 							<p>{{item.task_stage_txt}}</p>
@@ -33,25 +33,36 @@
 					</view>
 					<view class="task-info">
 						<view class="task-info-left">
-							<image :src="item.product_img_url" style="height: 120rpx;width: 120rpx;"></image>
-							<p style="margin-left: 50rpx;">{{item.project_name}}</p>
+							<image class="project-img" :src="item.product_img_url"></image>
+							<view class="task-info-txt">
+								<p style="color: #000;font-size: 32rpx;">{{item.project_name}}</p>
+								<view v-if="item.task_stage >= 7 && item.task_stage <= 14">
+									<p style="color: #F0D232;" v-if="!item.time_out">上传截止时间:{{item.upload_ddl}}</p>
+									<p style="color: #f70c0c;" v-else>超时:{{item.upload_ddl}}</p>
+								</view>
+								<p>预计违约扣款金额:¥{{item.show_cut_payment}}</p>
+								<p>预计收益:¥{{item.show_task_reward}}</p>
+							</view>
 						</view>
 						<view class="task-info-right" v-if="item.isShowModify">
-							<image src="../../../static/img/icon-edit.png" style="height: 60rpx;width: 60rpx;"></image>
+							<image src="../../static/img/icon-edit.png" style="height: 60rpx;width: 60rpx;"></image>
 							<p style="font-size: 32rpx;color: #ffcb41;font-weight: 600">改</p>
 						</view>
 					</view>
+					<view style="text-align: right;" v-if="item.task_stage > 6">
+						<p style="display: inline-block;">实际收益:¥{{item.show_real_reward}}</p>
+					</view>
 				</view>
 			</view>
 		</view>
 
 		<view class="home" v-if="tab == 'apply' && !loading">
-			<view class="task" v-for="item in applyList">
-				<view @click="toDetail(item)">
+			<view class="task" v-for="item in applyList" @click="toTaskDetail(item)">
+				<view class="task-card">
 					<view class="task-head">
 						<view class="task-head-account">
-							<image :src="item.platform_icon_url" style="height: 50rpx;width: 50rpx;"></image>
-							<p style="margin-left: 20rpx;">{{item.platform_nick_name}}</p>
+							<image class="platform-img" :src="item.platform_icon_url"></image>
+							<p>{{item.platform_nick_name}}</p>
 						</view>
 						<view class="task-head-status">
 							<p>{{item.task_stage_txt}}</p>
@@ -59,21 +70,32 @@
 					</view>
 					<view class="task-info">
 						<view class="task-info-left">
-							<image :src="item.product_img_url" style="height: 120rpx;width: 120rpx;"></image>
-							<p style="margin-left: 50rpx;">{{item.project_name}}</p>
+							<image class="project-img" :src="item.product_img_url"></image>
+							<view class="task-info-txt">
+								<p style="color: #000;font-size: 32rpx;">{{item.project_name}}</p>
+								<p>预计违约扣款金额:¥{{item.show_cut_payment}}</p>
+								<p>预计收益:¥{{item.show_task_reward}}</p>
+							</view>
+						</view>
+						<view class="task-info-right" v-if="item.isShowModify">
+							<image src="../../static/img/icon-edit.png" style="height: 60rpx;width: 60rpx;"></image>
+							<p style="font-size: 32rpx;color: #ffcb41;font-weight: 600">改</p>
 						</view>
 					</view>
+					<view style="text-align: right;" v-if="item.task_stage > 6">
+						<p style="display: inline-block;">实际收益:¥{{item.show_real_reward}}</p>
+					</view>
 				</view>
 			</view>
 		</view>
 
 		<view class="home" v-if="tab == 'execute' && !loading">
-			<view class="task" v-for="item in goingList">
-				<view @click="toDetail(item)">
+			<view class="task" v-for="item in goingList" @click="toTaskDetail(item)">
+				<view class="task-card">
 					<view class="task-head">
 						<view class="task-head-account">
-							<image :src="item.platform_icon_url" style="height: 50rpx;width: 50rpx;"></image>
-							<p style="margin-left: 20rpx;">{{item.platform_nick_name}}</p>
+							<image class="platform-img" :src="item.platform_icon_url"></image>
+							<p>{{item.platform_nick_name}}</p>
 						</view>
 						<view class="task-head-status">
 							<p>{{item.task_stage_txt}}</p>
@@ -81,25 +103,36 @@
 					</view>
 					<view class="task-info">
 						<view class="task-info-left">
-							<image :src="item.product_img_url" style="height: 120rpx;width: 120rpx;"></image>
-							<p style="margin-left: 50rpx;">{{item.project_name}}</p>
+							<image class="project-img" :src="item.product_img_url"></image>
+							<view class="task-info-txt">
+								<p style="color: #000;font-size: 32rpx;">{{item.project_name}}</p>
+								<view v-if="item.task_stage >= 7 && item.task_stage <= 14">
+									<p style="color: #F0D232;" v-if="!item.time_out">上传截止时间:{{item.upload_ddl}}</p>
+									<p style="color: #f70c0c;" v-else>超时:{{item.upload_ddl}}</p>
+								</view>
+								<p>预计违约扣款金额:¥{{item.show_cut_payment}}</p>
+								<p>预计收益:¥{{item.show_task_reward}}</p>
+							</view>
 						</view>
 						<view class="task-info-right" v-if="item.isShowModify">
-							<image src="../../../static/img/icon-edit.png" style="height: 60rpx;width: 60rpx;"></image>
+							<image src="../../static/img/icon-edit.png" style="height: 60rpx;width: 60rpx;"></image>
 							<p style="font-size: 32rpx;color: #ffcb41;font-weight: 600">改</p>
 						</view>
 					</view>
+					<view style="text-align: right;" v-if="item.task_stage > 6">
+						<p style="display: inline-block;">实际收益:¥{{item.show_real_reward}}</p>
+					</view>
 				</view>
 			</view>
 		</view>
 
 		<view class="home" v-if="tab == 'end' && !loading">
-			<view class="task" v-for="item in endList">
-				<view @click="toDetail(item)">
+			<view class="task" v-for="item in endList" @click="toTaskDetail(item)">
+				<view class="task-card">
 					<view class="task-head">
 						<view class="task-head-account">
-							<image :src="item.platform_icon_url" style="height: 50rpx;width: 50rpx;"></image>
-							<p style="margin-left: 20rpx;">{{item.platform_nick_name}}</p>
+							<image class="platform-img" :src="item.platform_icon_url"></image>
+							<p>{{item.platform_nick_name}}</p>
 						</view>
 						<view class="task-head-status">
 							<p>{{item.task_stage_txt}}</p>
@@ -107,18 +140,35 @@
 					</view>
 					<view class="task-info">
 						<view class="task-info-left">
-							<image :src="item.product_img_url" style="height: 120rpx;width: 120rpx;"></image>
-							<p style="margin-left: 50rpx;">{{item.project_name}}</p>
+							<image class="project-img" :src="item.product_img_url"></image>
+							<view class="task-info-txt">
+								<p style="color: #000;font-size: 32rpx;">{{item.project_name}}</p>
+								<p>预计违约扣款金额:¥{{item.show_cut_payment}}</p>
+								<p>预计收益:¥{{item.show_task_reward}}</p>
+							</view>
+						</view>
+						<view class="task-info-right" v-if="item.isShowModify">
+							<image src="../../static/img/icon-edit.png" style="height: 60rpx;width: 60rpx;"></image>
+							<p style="font-size: 32rpx;color: #ffcb41;font-weight: 600">改</p>
 						</view>
 					</view>
+					<view style="text-align: right;" v-if="item.task_stage > 6">
+						<p style="display: inline-block;">实际收益:¥{{item.show_real_reward}}</p>
+					</view>
 				</view>
 			</view>
 		</view>
+
+		<view style="height: 100rpx;"></view>
 	</view>
 </template>
 
 <script>
 	import mvBar from "@/components/mys_navBar/mysNavBar";
+	import {
+		fansview,
+		money
+	} from '@/components/utils.js';
 	export default {
 		components: {
 			mvBar,
@@ -254,6 +304,22 @@
 								if (this.allList[i].task_stage == this.taskStageList[j].task_stage_id)
 									this.allList[i].task_stage_txt = this.taskStageList[j].task_stage
 							}
+
+							this.allList[i].real_reward = this.allList[i].task_reward * (100 - this.allList[i]
+								.break_rate) / 100
+							this.allList[i].cut_payment = this.allList[i].task_reward - this.allList[i].real_reward
+							this.allList[i].show_task_reward = money(this.allList[i].task_reward)
+							this.allList[i].show_real_reward = money(this.allList[i].real_reward)
+							this.allList[i].show_cut_payment = money(this.allList[i].cut_payment)
+
+							// 截止时间
+							let ddl = this.thistime(this.allList[i].cur_break_at)
+							console.log("isTimeOut", ddl.isTimeOut)
+							console.log("ddl", ddl.deadline_time)
+							this.allList[i].time_out = ddl.isTimeOut
+							this.allList[i].upload_ddl = ddl.isTimeOut ? ddl.deadline_time : this.allList[i]
+								.cur_break_at.replace(/-/g,
+									"/").slice(0, -3)
 						}
 					}
 					this.applyList = res.data.data.sgin_up_Task_info_list
@@ -269,6 +335,24 @@
 								if (this.applyList[i].task_stage == this.taskStageList[j].task_stage_id)
 									this.applyList[i].task_stage_txt = this.taskStageList[j].task_stage
 							}
+
+							this.applyList[i].real_reward = this.applyList[i].task_reward * (100 - this.applyList[
+									i]
+								.break_rate) / 100
+							this.applyList[i].cut_payment = this.applyList[i].task_reward - this.applyList[i]
+								.real_reward
+							this.applyList[i].show_task_reward = money(this.applyList[i].task_reward)
+							this.applyList[i].show_real_reward = money(this.applyList[i].real_reward)
+							this.applyList[i].show_cut_payment = money(this.applyList[i].cut_payment)
+
+							// 截止时间
+							let ddl = this.thistime(this.applyList[i].cur_break_at)
+							console.log("isTimeOut", ddl.isTimeOut)
+							console.log("ddl", ddl.deadline_time)
+							this.applyList[i].time_out = ddl.isTimeOut
+							this.applyList[i].upload_ddl = ddl.isTimeOut ? ddl.deadline_time : this.applyList[i]
+								.cur_break_at.replace(/-/g,
+									"/").slice(0, -3)
 						}
 					}
 					this.goingList = res.data.data.going_on_Task_info_list
@@ -292,6 +376,25 @@
 								if (this.goingList[i].task_stage == this.taskStageList[j].task_stage_id)
 									this.goingList[i].task_stage_txt = this.taskStageList[j].task_stage
 							}
+
+
+							this.goingList[i].real_reward = this.goingList[i].task_reward * (100 - this.goingList[
+									i]
+								.break_rate) / 100
+							this.goingList[i].cut_payment = this.goingList[i].task_reward - this.goingList[i]
+								.real_reward
+							this.goingList[i].show_task_reward = money(this.goingList[i].task_reward)
+							this.goingList[i].show_real_reward = money(this.goingList[i].real_reward)
+							this.goingList[i].show_cut_payment = money(this.goingList[i].cut_payment)
+
+							// 截止时间
+							let ddl = this.thistime(this.goingList[i].cur_break_at)
+							console.log("isTimeOut", ddl.isTimeOut)
+							console.log("ddl", ddl.deadline_time)
+							this.goingList[i].time_out = ddl.isTimeOut
+							this.goingList[i].upload_ddl = ddl.isTimeOut ? ddl.deadline_time : this.goingList[i]
+								.cur_break_at.replace(/-/g,
+									"/").slice(0, -3)
 						}
 					}
 					this.endList = res.data.data.completed_Task_info_list
@@ -307,6 +410,22 @@
 								if (this.endList[i].task_stage == this.taskStageList[j].task_stage_id)
 									this.endList[i].task_stage_txt = this.taskStageList[j].task_stage
 							}
+
+							this.endList[i].real_reward = this.endList[i].task_reward * (100 - this.endList[i]
+								.break_rate) / 100
+							this.endList[i].cut_payment = this.endList[i].task_reward - this.endList[i].real_reward
+							this.endList[i].show_task_reward = money(this.endList[i].task_reward)
+							this.endList[i].show_real_reward = money(this.endList[i].real_reward)
+							this.endList[i].show_cut_payment = money(this.endList[i].cut_payment)
+
+							// 截止时间
+							let ddl = this.thistime(this.endList[i].cur_break_at)
+							console.log("isTimeOut", ddl.isTimeOut)
+							console.log("ddl", ddl.deadline_time)
+							this.endList[i].time_out = ddl.isTimeOut
+							this.endList[i].upload_ddl = ddl.isTimeOut ? ddl.deadline_time : this.endList[i]
+								.cur_break_at.replace(/-/g,
+									"/").slice(0, -3)
 						}
 					}
 				})
@@ -343,8 +462,8 @@
 				await this.getList()
 				uni.hideLoading()
 			},
-			toDetail(item) {
-				console.log("func toDetail running")
+			toTaskDetail(item) {
+				console.log("func toTaskDetail running")
 				uni.navigateTo({
 					url: '/page_workspace/task/taskdetail?taskId=' + item.task_id,
 					success(res) {
@@ -354,7 +473,34 @@
 						console.log(err);
 					}
 				});
-				console.log("func toDetail end")
+				console.log("func toTaskDetail end")
+			},
+			// 计算结束时间
+			thistime(val) {
+				// 转换格式
+				var beginTime = new Date(val.replace(/-/g, "/"));
+				// 当前时间
+				var thisTime = new Date();
+				// 相减
+				var dateMiss = beginTime.getTime() - thisTime.getTime();
+				let isTimeOut = dateMiss < 0 ? true : false
+				dateMiss = dateMiss < 0 ? -dateMiss : dateMiss
+				// 天数
+				var day = Math.floor(dateMiss / (24 * 3600 * 1000));
+				// 减去天数剩下的毫秒数
+				var backOne = dateMiss % (24 * 3600 * 1000);
+				// 小时数
+				var hours = Math.floor(backOne / (3600 * 1000));
+				// 减去小时数剩下的毫秒数
+				var backHour = backOne % (3600 * 1000);
+				// 分钟数
+				var min = Math.floor(backHour / (60 * 1000));
+				var deadline_time = day + '天' + hours + '时' + min + '分'
+				var result = {
+					isTimeOut: isTimeOut,
+					deadline_time: deadline_time
+				}
+				return result
 			},
 		}
 	}
@@ -367,9 +513,10 @@
 	}
 
 	.menu {
+		padding-top: 20rpx;
+		background-color: #fff;
 		position: fixed;
 		border-bottom: #FCCF41;
-		background-color: #FFFFFF;
 		justify-content: space-around;
 		height: 5%;
 		width: 100%;
@@ -397,10 +544,9 @@
 		margin-top: 100rpx;
 	}
 
-	.task {
-		z-index: 1;
-		margin-bottom: 20rpx;
-		border-bottom: 1rpx #d7d7d7 solid;
+	.task-card {
+		margin: 10rpx 0;
+		// border-bottom: 1rpx #d7d7d7 solid;
 
 		.task-head {
 			display: flex;
@@ -412,20 +558,41 @@
 				display: flex;
 			}
 
-			.task-head-status {
+			.platform-img {
+				width: 40rpx;
+				height: 40rpx;
+				margin-right: 10rpx;
+			}
+
+			.task-head-status p {
 				color: red;
 			}
 		}
 
 		.task-info {
 			display: flex;
-			align-items: center;
 			justify-content: space-between;
 			padding: 10rpx 20rpx;
 
 			.task-info-left {
 				display: flex;
-				align-items: center;
+				// align-items: center;
+
+				.project-img {
+					height: 120rpx;
+					width: 120rpx;
+					// background-color: #b3c96b;
+				}
+
+				.task-info-txt {
+					margin-left: 10rpx;
+				}
+
+				.task-info-txt p {
+					font-size: 24rpx;
+					color: #85859d;
+					margin-bottom: 10rpx;
+				}
 			}
 
 			.task-info-right {
@@ -437,10 +604,15 @@
 				align-items: center;
 				justify-content: center;
 			}
+
+			.task-info-right p {
+				font-size: 24rpx;
+			}
 		}
 	}
 
+
 	.line {
 		border-bottom: 1rpx #AAAAAA solid;
 	}
-</style>
+</style>

+ 89 - 105
page_mycenter/myteam/myteam.vue

@@ -6,11 +6,11 @@
 		<view class="head">
 			<view class="show-income">
 				<p>累计开团现金收益</p>
-				<p style="margin-top: 20rpx;font-weight: 600;">¥0.0</p>
+				<p style="margin-top: 20rpx;font-weight: 600;">¥{{moneyIncome}}</p>
 			</view>
 			<view class="show-income">
 				<p>累计开团积分收益</p>
-				<p style="margin-top: 20rpx;font-weight: 600;">0</p>
+				<p style="margin-top: 20rpx;font-weight: 600;">{{pointIncome}}</p>
 			</view>
 		</view>
 
@@ -30,139 +30,80 @@
 				</view>
 			</view>
 
-			<view class="team-list" v-if="tab == 'exe'">
-				<view class="team-card">
-					<view class="project" @click="">
+			<view class="team-list" v-if="tab == 'exe' && !loading">
+				<view class="team-card" v-for="(item,index) in youngTeamList">
+					<view class="project" @click="toTeamDetail(item)">
 						<!-- 项目名称 -->
-						<image class="platform-img"></image>
-						<p>PUYU朴郁小树茶茶干茶粉</p>
+						<image class="platform-img" :src="item.platform_icon"></image>
+						<p>{{item.project_name}}</p>
 						<view @click="toProject()">
 							<image class="togo-icon" :src="picture.icon_right"></image>
 						</view>
 					</view>
 					<view class="team-info">
 						<!-- young之团信息 -->
-						<image class="project-img"></image>
+						<image class="project-img" :src="item.project_photo"></image>
 						<view class="team-txt">
 							<!-- 成团编码 -->
 							<view style="display: flex;">
-								<p>成团编码ID:5234501300</p>
+								<p>成团编码ID:{{item.team_id}}</p>
 								<image :src="picture.icon_copy" mode=""
 									style="padding-left:5rpx;width: 30rpx;height: 30rpx;"
-									@click="handleCopy('5234501300')" />
+									@click="handleCopy('item.team_id')" />
 							</view>
 							<!-- 人数信息 -->
-							<p style="padding: 10rpx 0;">已报名:25人 &nbsp; 申请成功:5人 &nbsp; 已结案:1人</p>
+							<p style="padding: 10rpx 0;">已报名:{{item.num_apply}}人 &nbsp; 申请成功:{{item.num_apply_success}}人
+								&nbsp; 已结案:{{item.num_end}}人</p>
 							<!-- 收益信息 -->
-							<p style="font-weight: 600;">预计积分收益:1250 &nbsp; 预计现金收益:¥50.0</p>
+							<p style="font-weight: 600;">预计积分收益:{{item.point_income}} &nbsp;
+								预计现金收益:¥{{item.show_money_income}}</p>
 						</view>
 					</view>
 					<view class="team-foot">
 						<!-- 查看进度按钮 -->
-						<button class="team-btn" type="default">查看进度</button>
+						<button class="team-btn" @click="toTeamDetail(item)" type="default">查看进度</button>
 					</view>
 				</view>
 
-
-				<view class="team-card">
-					<view class="project" @click="">
-						<!-- 项目名称 -->
-						<image class="platform-img"></image>
-						<p>PUYU朴郁小树茶茶干茶粉</p>
-						<view @click="toProject()">
-							<image class="togo-icon" :src="picture.icon_right"></image>
-						</view>
-					</view>
-					<view class="team-info">
-						<!-- young之团信息 -->
-						<image class="project-img"></image>
-						<view class="team-txt">
-							<!-- 成团编码 -->
-							<view style="display: flex;">
-								<p>成团编码ID:5234501300</p>
-								<image :src="picture.icon_copy" mode=""
-									style="padding-left:5rpx;width: 30rpx;height: 30rpx;"
-									@click="handleCopy('5234501300')" />
-							</view>
-							<!-- 人数信息 -->
-							<p style="padding: 10rpx 0;">已报名:25人 &nbsp; 申请成功:5人 &nbsp; 已结案:1人</p>
-							<!-- 收益信息 -->
-							<p style="font-weight: 600;">预计积分收益:1250 &nbsp; 预计现金收益:¥50.0</p>
-						</view>
-					</view>
-					<view class="team-foot">
-						<!-- 查看进度按钮 -->
-						<button class="team-btn" type="default">查看进度</button>
-					</view>
-				</view>
 			</view>
 
 
 
-			<view class="team-list" v-if="tab == 'end'">
-				<view class="team-card">
-					<view class="project" @click="">
+			<view class="team-list" v-if="tab == 'end' && !loading">
+				<view class="team-card" v-for="(item,index) in youngTeamList">
+					<view class="project" @click="toTeamDetail(item)">
 						<!-- 项目名称 -->
-						<image class="platform-img"></image>
-						<p>PUYU朴郁小树茶茶干茶粉</p>
+						<image class="platform-img" :src="item.platform_icon"></image>
+						<p>{{item.project_name}}</p>
 						<view @click="toProject()">
 							<image class="togo-icon" :src="picture.icon_right"></image>
 						</view>
 					</view>
 					<view class="team-info">
 						<!-- young之团信息 -->
-						<image class="project-img"></image>
+						<image class="project-img" :src="item.project_photo"></image>
 						<view class="team-txt">
 							<!-- 成团编码 -->
 							<view style="display: flex;">
-								<p>成团编码ID:5234501300</p>
+								<p>成团编码ID:{{item.team_id}}</p>
 								<image :src="picture.icon_copy" mode=""
 									style="padding-left:5rpx;width: 30rpx;height: 30rpx;"
-									@click="handleCopy('5234501300')" />
+									@click="handleCopy('item.team_id')" />
 							</view>
 							<!-- 人数信息 -->
-							<p style="padding: 10rpx 0;">已报名:25人 &nbsp; 申请成功:5人 &nbsp; 已结案:1人</p>
+							<p style="padding: 10rpx 0;">已报名:{{item.num_apply}}人 &nbsp; 申请成功:{{item.num_apply_success}}人
+								&nbsp; 已结案:{{item.num_end}}人</p>
 							<!-- 收益信息 -->
-							<p style="font-weight: 600;">积分收益:1250 &nbsp; 现金收益:¥50.0</p>
+							<p style="font-weight: 600;">积分收益:{{item.point_income}} &nbsp;
+								现金收益:¥{{item.show_money_income}}</p>
 						</view>
 					</view>
 					<view class="team-foot">
 						<!-- 查看进度按钮 -->
-						<button class="team-btn" type="default">查看历史纪录</button>
-					</view>
-				</view>
-				
-				<view class="team-card">
-					<view class="project" @click="">
-						<!-- 项目名称 -->
-						<image class="platform-img"></image>
-						<p>PUYU朴郁小树茶茶干茶粉</p>
-						<view @click="toProject()">
-							<image class="togo-icon" :src="picture.icon_right"></image>
-						</view>
-					</view>
-					<view class="team-info">
-						<!-- young之团信息 -->
-						<image class="project-img"></image>
-						<view class="team-txt">
-							<!-- 成团编码 -->
-							<view style="display: flex;">
-								<p>成团编码ID:5234501300</p>
-								<image :src="picture.icon_copy" mode=""
-									style="padding-left:5rpx;width: 30rpx;height: 30rpx;"
-									@click="handleCopy('5234501300')" />
-							</view>
-							<!-- 人数信息 -->
-							<p style="padding: 10rpx 0;">已报名:25人 &nbsp; 申请成功:5人 &nbsp; 已结案:1人</p>
-							<!-- 收益信息 -->
-							<p style="font-weight: 600;">积分收益:1250 &nbsp; 现金收益:¥50.0</p>
-						</view>
-					</view>
-					<view class="team-foot">
-						<!-- 查看进度按钮 -->
-						<button class="team-btn" type="default">查看历史纪录</button>
+						<button class="team-btn" @click="toTeamDetail(item)" type="default">查看历史纪录</button>
 					</view>
 				</view>
+
 			</view>
 
 		</view>
@@ -172,8 +113,12 @@
 <script>
 	import mvBar from "@/components/mys_navBar/mysNavBar";
 	import {
-		fansview
+		fansview,
+		money
 	} from '@/components/utils.js';
+	import {
+		showLoading
+	} from "../../uni_modules/sakura-canvas/js_sdk/util";
 	export default {
 		components: {
 			mvBar,
@@ -181,6 +126,7 @@
 		data() {
 			return {
 				navH: getApp().globalData.navHeight,
+				picture: getApp().globalData.picture,
 				mysNavConfig: {
 					/* 开启单页显示首页图标 */
 					isHome: true,
@@ -205,22 +151,19 @@
 						radius: "40rpx",
 					},
 				},
-				picture: {
-					icon_help: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-help.png',
-					icon_copy: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-copy.png',
-					icon_person: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-person.png',
-					icon_edit: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-edit2.png',
-					icon_location: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-location.png',
-					icon_account: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-account.png',
-					icon_rmb: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-rmb.png',
-					icon_message: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-message.png',
-					icon_right: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-arrow-right.png',
-					defaultavatarUrl: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/logoxin01.png',
-				},
+				loading: false,
+				platformList: [],
+
 				searchValue: "",
 				showList1: false,
 				showList2: false,
 				tab: 'exe',
+				status: 2,
+
+				moneyIncome: 0.0,
+				pointIncome: 0,
+				youngTeamList: [],
+
 			}
 		},
 		async onLoad(options) {
@@ -240,10 +183,12 @@
 					}
 				});
 			}
-
+			await this.getInfoList()
 			let data = options.textObj.replace(/""/g, "");
 			data = JSON.parse(decodeURIComponent(data))
 			this.tab = data.tab
+			this.status = this.tab === 'exe' ? 2 : 3
+			this.getYoungTeam()
 		},
 		methods: {
 			// 判断登陆是否过期
@@ -275,9 +220,47 @@
 			},
 			toShow1() {
 				this.tab = 'exe';
+				this.status = 2
+				this.getYoungTeam()
 			},
 			toShow2() {
 				this.tab = 'end';
+				this.status = 3
+				this.getYoungTeam()
+			},
+			async getYoungTeam() {
+				this.loading = true;
+				uni.showLoading({
+					title: '加载中'
+				});
+				await this.$https.get('/youngee/c/t/g/get-younggee-team-list?' +
+						'status=' +
+						this.status)
+					.then(res => {
+						if (res.data.code === 0) {
+							this.youngTeamList = res.data.data.young_team_list
+							let num = res.data.data.num
+							this.moneyIncome = money(res.data.data.money_income)
+							this.pointIncome = res.data.data.point_income
+							for (let i = 0; i < num; ++i) {
+								this.youngTeamList[i].platform_icon = this.platformList[this.youngTeamList[
+										i]
+									.platform - 1].platform_icon
+								this.youngTeamList[i].show_money_income = money(this.youngTeamList[i]
+									.money_income)
+							}
+						}
+					})
+				uni.hideLoading();
+				this.loading = false;
+			},
+			getInfoList() {
+				return this.$http.get('/youngee/c/g/get-info-tables')
+					.then(res => {
+						if (res.data.code === 0) {
+							this.platformList = res.data.data.ThirdPlatform
+						}
+					})
 			},
 		}
 	}
@@ -369,14 +352,14 @@
 		align-items: center;
 	}
 
-	.project p{
+	.project p {
 		font-weight: 600;
 	}
 
 	.platform-img {
 		width: 40rpx;
 		height: 40rpx;
-		background-color: #F0D232;
+		// background-color: #F0D232;
 		margin-right: 10rpx;
 	}
 
@@ -408,6 +391,7 @@
 		font-size: 28rpx;
 	}
 
+
 	.team-foot {
 		padding: 0 20rpx;
 		text-align: right;
@@ -426,4 +410,4 @@
 		font-size: 28rpx;
 		line-height: 200%;
 	}
-</style>
+</style>

+ 1002 - 0
page_selectionsquare/search.vue

@@ -0,0 +1,1002 @@
+<template>
+	<view class="nav">
+		<!-- 胶囊 -->
+		<mvBar :mysNavConfig="mysNavConfig"></mvBar>
+		<view :style="{marginTop:navH}"></view>
+		<view class="home">
+			<view>
+				<uni-search-bar @confirm="search" :focus="true" v-model="searchValue">
+				</uni-search-bar>
+			</view>
+
+			<view class="commodity" style="margin-top: 3%;">
+				<view class="project" v-for="(item,index) in selectionList" :key="index" @tap="toDetail(item)">
+					<!-- 主图 -->
+					<view class="projectdiagram" :style="{backgroundImage:`url(${item.coverphoto})`}">
+						<view class="Mask" v-if="false">
+							<image src="https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/home4.png" mode="">
+							</image>
+						</view>
+						<view style="padding-left: 4%;padding-top: 2%;">
+						</view>
+					</view>
+					<view class="projecttext">
+						<image :src="item.platform_icon">
+						</image>
+						<span>{{item.selection_name|ellipsis}}</span>
+					</view>
+					<!-- 项目信息1 -->
+					<view class="projectinfo">
+						<view class="projectinfotxt">
+							<p>售价</p>
+							<p>¥{{item.estimated_cost}}</p>
+						</view>
+						<view class="projectinfotxt">
+							<p>预估赚</p>
+							<p style="color: #f70606;">¥{{item.commission}}</p>
+						</view>
+						<view class="projectinfotxt">
+							<p>佣金</p>
+							<p>{{item.commission_rate}}%</p>
+						</view>
+						<view class="projectinfotxt" v-if="item.task_mode == 1">
+							<p>额外悬赏</p>
+							<p style="color: #f70606;">¥{{item.task_reward}}</p>
+						</view>
+					</view>
+					<!-- 项目信息2 -->
+					<view class="projectinfo" style="justify-content: space-between;">
+						<view class="projectinfotxt" style="margin: 0 10rpx;">
+							<p>余<span style="color: #52b2f0;">{{item.remain_num}}</span>件</p>
+						</view>
+						<view class="projectinfotag">
+							<view class="TitleText" v-if="item.sample_mode == 1">
+								<p>免费领</p>
+							</view>
+							<view class="TitleText" v-else>
+								<p>垫付后返</p>
+							</view>
+							<view class="TitleText" v-if="item.task_mode == 1">
+								<p>悬赏</p>
+							</view>
+							<view class="TitleText" v-else>
+								<p>纯佣</p>
+							</view>
+						</view>
+					</view>
+				</view>
+			</view>
+
+		</view>
+		<!-- 普通弹窗  公众号-->
+		<uni-popup ref="popup4" class="share" background-color="#fff">
+			<view class="popup-content" :class="{ 'popup-height': type === 'left' || type === 'right' }">
+				<view class="sharepage">
+					<view class="projecttext1">
+						<image src="https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/project15.png"
+							style="width: 80rpx; height: 80rpx;" mode=""></image>
+						<span>YoungGee</span>
+					</view>
+					<view class="" style="margin-top: 5%;">
+						<p style='color: #333333;font-size: 28rpx;text-align: center;'>扫码联系</p>
+					</view>
+					<view class="sharemap">
+						<image src="https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/kefu.png"
+							style="width: 400rpx;height: 400rpx;" mode=""></image>
+					</view>
+				</view>
+			</view>
+		</uni-popup>
+		<view class="contact" @click="toggle4('center')">
+			<view class="contt">
+				<image class="img1"
+					src="https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/kefu_20211124192542.png" mode="">
+				</image>
+			</view>
+
+		</view>
+	</view>
+</template>
+<script>
+	import mvBar from "@/components/mys_navBar/mysNavBar";
+	import request from '@/components/request.js'
+	import searchVue from "./search.vue";
+	/* 默认首页路径 */
+	const homePath = "/pages/pupu/pupudao";
+	/* 默认首页图标路径 */
+	const homeIconPath = "/static/img/png4.png";
+	/* 默认返回图标路径 */
+	const backIconPath = "/static/img/png2.png";
+	export default {
+		props: {
+			scrollTop: {
+				type: Number,
+				default: function() {
+					return 0;
+				},
+			},
+		},
+		filters: {
+			ellipsis(value) {
+				if (!value) return "";
+				if (value.length > 20) {
+					return value.slice(0, 20) + "...";
+				}
+				return value;
+			},
+		},
+		components: {
+			mvBar,
+		},
+		data() {
+			return {
+				navH: getApp().globalData.navHeight,
+				searchValue: "",
+				mysNavConfig: {
+					/* 开启单页显示首页图标 */
+					isHome: true,
+					/* 固定导航  */
+					navFixed: true,
+					/* 标题 (屏幕中心居中 两边图标中心居中使用slot center1) */
+					navTitle: {
+						text: "任务搜索",
+						color: "",
+						fontSize: "32rpx", // px upx rpx
+						fontWeight: "normal", // 100 - 700
+					},
+					btnType: "type2",
+					onLeftClick: "",
+					/* type2 按钮 */
+					type2Config: {
+						// 左图标
+						leftPath: "/static/img/png2.png",
+						// 右图标
+						rightPath: "/static/img/png4.png",
+						// 圆角
+						radius: "40rpx",
+					},
+				},
+				token: '',
+				per: 0,
+				type4: 'center',
+				//轮播图
+				img: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/home1.png',
+				background: ['color1', 'color2', 'color3'],
+				indicatorDots: true,
+				autoplay: true,
+				interval: 3000,
+				duration: 1000,
+				list1: [{
+						img: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/home1.png',
+						name: '/pages/tasksquare/guide'
+					},
+					{
+						img: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/home7.png',
+						name: '/pages/tasksquare/cooperation'
+					}
+				],
+				//弹窗
+				type: 'center',
+				formData: {
+					hobby: [],
+					hobby1: [],
+					hobby2: [],
+				},
+				hobby: [],
+				hobby1: [{
+					text: '产品置换',
+					value: 1
+				}, {
+					text: '固定稿费',
+					value: 2
+				}, {
+					text: '自报价',
+					value: 3
+				}],
+				hobby2: [{
+					text: '实体商品寄拍',
+					value: 1
+				}, {
+					text: '虚拟产品测评',
+					value: 2
+				}, {
+					text: '线下探店打卡',
+					value: 3
+				}],
+				iconW: undefined,
+				iconH: undefined,
+				btnWidth: undefined,
+				btnHeight: undefined,
+				navBarTop: undefined,
+				navBarHeight: undefined,
+				navBarLeft: undefined,
+				navBarRight: undefined,
+				inputHeight: undefined,
+				opacity: 0,
+				isHome: false,
+				homeIconPath: homeIconPath,
+				backIconPath: backIconPath,
+				img: '../../static/home/home.png',
+				// 最多显示页数
+				max_page: '',
+				tupian: {
+					wen: '原创图片',
+					lin: 1,
+				},
+				selectionList: [],
+				img456: '../../static/home/home.png',
+				platformList: [],
+				filtCondition: '',
+			};
+		},
+		computed: {
+			isSharePage() {},
+		},
+		watch: {
+			scrollTop(val) {
+				if (!this.mysNavConfig.isOpacity) {
+					return;
+				}
+				this.setOpacity(val, this.mysNavConfig.opacityTime);
+			},
+		},
+		created() {},
+		onLoad() {},
+		async onShow() {
+			this.isLoginApi()
+			await this.getInfoListApi()
+			this.per = 0
+			this.getSelectionListApi()
+		},
+		onReady() {},
+		//下拉刷新
+		onPullDownRefresh() {
+			this.per = 0
+			this.getSelectionListApi()
+			//停止下拉刷新
+			uni.stopPullDownRefresh()
+		},
+		// 下拉懒加载
+		async onReachBottom() {
+			++this.per;
+			if (this.per >= this.max_page) {
+				uni.showToast({
+					title: "已加载全部"
+				})
+			} else {
+				uni.showLoading({
+					title: '加载中'
+				})
+				await this.getSelectionListApi()
+				uni.hideLoading();
+			}
+		},
+		methods: {
+			async search(res) {
+				uni.showToast({
+					title: '搜索:' + res.value,
+					icon: 'none'
+				})
+				this.per = 0;
+				this.filtCondition = ''
+				if (res.value != "")
+					this.filtCondition = "&searchvalue" + "=" + res.value
+				uni.showLoading({
+					title: '加载中'
+				});
+				this.selectionList = []
+				await this.getSelectionListApi()
+				uni.hideLoading();
+			},
+			// 计算结束时间
+			thistime(val) {
+				// 转换格式
+				var beginTime = new Date(val.replace(/-/g, "/"));
+				// 当前时间
+				var thisTime = new Date();
+				// 相减
+				var dateMiss = beginTime.getTime() - thisTime.getTime();
+				// 天数
+				var day = Math.floor(dateMiss / (24 * 3600 * 1000));
+				// 减去天数剩下的毫秒数
+				var backOne = dateMiss % (24 * 3600 * 1000);
+				// 小时数
+				var hours = Math.floor(backOne / (3600 * 1000));
+				var deadline_time = '',
+					deadline_time = day + '天' + hours + '时结束'
+				return deadline_time
+			},
+			toggle4(type) {
+				this.type4 = type
+				// open 方法传入参数 等同在 uni-popup 组件上绑定 type属性
+				this.$refs.popup4.open(type)
+				// this.$refs.popup1.close()
+			},
+			toDetail(item) {
+				uni.navigateTo({
+					url: '/page_selectionsquare/selectiondetail/selectiondetail?id=' + item.selection_id
+				});
+			},
+			/**
+			 * @param scrollTop 页面顶部距离
+			 * @param down 滑动显示效果延时
+			 */
+			setOpacity(scrollTop, down = 60) {
+				if (scrollTop > 0) {
+					if (scrollTop < down) {
+						this.opacity = scrollTop / down;
+					}
+					if (scrollTop > down) {
+						this.opacity = 1;
+					}
+				} else {
+					this.opacity = 0;
+				}
+			},
+
+			isLoginApi() {
+				return this.$https.get('/youngee/c/t/g/is-login')
+					.then(res => {
+						if (res.data.code === 403) {
+							// 登陆已失效
+							this.token = ""
+							uni.clearStorage();
+						} else {
+							this.token = uni.getStorageSync('token')
+						}
+					})
+			},
+			getInfoListApi() {
+				return this.$http.get('/youngee/c/g/get-info-tables')
+					.then(res => {
+						this.hobby = []
+						this.platformList = res.data.data.ThirdPlatform
+						let l = this.platformList != null ? this.platformList.length : 0;
+						for (var i = 0; i < l; i++) {
+							var obj = {}
+							obj.text = this.platformList[i].platform_name
+							obj.value = this.platformList[i].id
+							this.hobby.push(obj)
+						}
+					})
+			},
+			getSelectionListApi() {
+				return this.$http.get('/youngee/c/g/get-selection-list' +
+					"?" +
+					"idx" +
+					"=" +
+					this.per +
+					"&cnt" +
+					"=" +
+					20 + this.filtCondition
+				).then(res => {
+					if (res.data.code === 0) {
+						console.log("res: ", res.data.data)
+						// 获取res返回数据
+						this.max_page = res.data.data.max_page
+						this.selectionList = res.data.data.SeletionInfos
+						const count = res.data.data.count
+						// 数据处理
+						for (var i = 0; i < count; i++) {
+							// 封面图片
+							this.selectionList[i].ProductInfo = JSON.parse(this.selectionList[i].product_snap);
+
+							// 封面图片
+							let ProductPhoto = JSON.parse(this.selectionList[i].product_photo_snap);
+							for (let j = 0; j < ProductPhoto.length; ++j) {
+								if (ProductPhoto[j].Symbol == 1) {
+									this.selectionList[i].coverphoto = ProductPhoto[j].PhotoUrl
+								}
+							}
+
+							for (var j = 0; j < this.platformList.length; j++) {
+								if (this.selectionList[i].platform === this.platformList[j].id) {
+									this.selectionList[i].platform_icon = this.platformList[j].platform_icon
+								}
+							}
+
+							// 佣金计算
+							this.selectionList[i].commission = this.selectionList[i].commission_rate * this
+								.selectionList[i].estimated_cost * 0.01
+							this.selectionList[i].commission = this.selectionList[i].commission.toFixed(1)
+						}
+					}
+				});
+			},
+		},
+	};
+</script>
+<style>
+	/deep/ .share .uni-popup .uni-popup__wrapper {
+		width: 70% !important;
+		border-radius: 15rpx !important;
+	}
+</style>
+<style lang="scss" scoped>
+	.option1 {
+		padding: 5rpx 18rpx;
+
+		/deep/.uni-data-checklist .checklist-group .checklist-box .checklist-content {
+			width: 100rpx;
+			text-align: center;
+		}
+	}
+
+	.option2 {
+		padding: 5rpx 18rpx;
+	}
+
+	.option3 {
+		padding: 5rpx 18rpx;
+	}
+
+
+	//弹窗
+	.sharepage {
+		width: 90%;
+		margin: 0 auto;
+		// position: relative;
+	}
+
+	/deep/ .share.uni-popup .uni-popup__wrapper {
+		width: 70%;
+
+		border-radius: 15rpx;
+	}
+
+	.projecttext1 {
+		// padding-top: 5%;
+		padding: 0 0 0 1%;
+		height: 80rpx;
+		margin-top: 7%;
+		text-align: center;
+	}
+
+	.projecttext1 span {
+		color: #333333;
+		font-size: 100%;
+		font-weight: 550;
+		text-indent: 2em;
+
+	}
+
+	.projecttext1 image {
+		vertical-align: middle;
+		width: 80rpx;
+		height: 80rpx;
+		display: inline-block;
+		padding-right: 14rpx;
+	}
+
+	.sharemap {
+		margin: 0 auto;
+		text-align: center;
+		margin-top: 15%;
+		margin-bottom: 15%;
+	}
+
+	.sharemap image {
+		width: 400rpx;
+		height: 400rpx;
+
+	}
+
+	.butmin {
+		height: 48rpx;
+		background-color: #3397FA;
+		color: #FFFFFF;
+		line-height: 48rpx;
+	}
+
+	//弹出层
+	/deep/ .uni-data-checklist .checklist-group .checklist-box {
+		background-color: #FFFFFF !important;
+		border-radius: 20rpx !important;
+		padding: 8rpx 30rpx !important;
+		border: 0 !important;
+	}
+
+	/deep/ .uni-data-checklist .checklist-group .checklist-box .checklist-content .checklist-text {
+		font-size: 24rpx;
+		color: #333333;
+	}
+
+	/deep/ .mini-btn {
+		height: 70rpx;
+		width: 250rpx;
+		line-height: 70rpx;
+		margin: 20rpx;
+		letter-spacing: 4rpx;
+		background-color: #FCCF41;
+	}
+
+	/deep/ .mini-btn1 {
+		height: 70rpx;
+		width: 400rpx;
+		line-height: 70rpx;
+		margin: 20rpx;
+		letter-spacing: 4rpx;
+		color: white;
+		;
+	}
+
+	/deep/ .uni-data-checklist .checklist-group .checklist-box.is--tag.is-checked {
+		background-color: #FCCF41 !important;
+	}
+
+	.butto {
+		text-align: center;
+	}
+
+	//其他
+	.nav {
+		position: relative;
+	}
+
+	.nv_padding {
+		height: 88upx;
+		background-color: transparent;
+	}
+
+	/* 图标默认大小 */
+	.nv_icon {
+		width: 16px;
+		height: 16px;
+	}
+
+	.bg_box {
+		position: absolute;
+		width: 750upx;
+		height: 88upx;
+
+		z-index: 10;
+		top: 0;
+		background-color: transparent;
+		/* #ifdef MP */
+		box-sizing: border-box;
+		/* #endif */
+		/* #ifndef APP-PLUS-NVUE */
+		background-size: cover;
+		background-repeat: no-repeat;
+		background-position: center center;
+		/* #endif */
+	}
+
+	.mys_navBar {
+		/* #ifndef APP-PLUS-NVUE */
+		display: flex;
+		height: 88upx;
+		/* #endif */
+		// #ifdef MP
+		box-sizing: border-box;
+		// #endif
+		width: 750upx;
+		flex-direction: row;
+		background-color: transparent;
+		position: absolute;
+		z-index: 10;
+		top: 0;
+	}
+
+	.fixed {
+		position: fixed;
+	}
+
+	/*
+ left 按钮
+*/
+	.btn_type {
+		/* #ifndef APP-PLUS-NVUE */
+		display: flex;
+		/* #endif */
+		/* #ifdef APP-PLUS-NVUE */
+		margin-left: 16upx;
+		/* #endif */
+		// #ifndef MP
+		align-items: center;
+		// #endif
+		flex: 1;
+		flex-direction: row;
+		// background-color: #fff;
+	}
+
+	.btn_box {
+		/* #ifndef APP-PLUS-NVUE */
+		display: flex;
+		margin-left: 16upx;
+		/* #endif */
+		flex-direction: row;
+		// #ifndef MP
+		align-items: center;
+		// #endif
+	}
+
+	.btn_back,
+	.btn_home {
+		/* #ifndef APP-PLUS-NVUE */
+		display: flex;
+		/* #endif */
+		/* #ifndef APP-PLUS-NVUE */
+		height: 100%;
+		/* #endif */
+		/* #ifdef APP-PLUS-NVUE */
+		width: 76upx;
+		height: 62upx;
+		/* #endif */
+		flex-direction: row;
+		align-items: center;
+		justify-content: center;
+		flex: 1;
+	}
+
+	/* 按钮类型1 */
+	.nav_btn_t1 {
+		/* #ifndef APP-PLUS-NVUE */
+		display: flex;
+		/* #endif */
+		// #ifdef MP
+		box-sizing: border-box;
+		// #endif
+		flex-direction: row;
+		align-items: center;
+		border-style: solid;
+		border-width: 1px;
+		border-color: #C0C0C0;
+		// background-color: rgba(0, 0, 0, 0.2);
+		background-color: #FFFFFF;
+		width: 130upx;
+		height: 45upx;
+	}
+
+	.line {
+		width: 1upx;
+		height: 60%;
+		/* #ifdef APP-PLUS-NVUE */
+		height: 30upx;
+		/* #endif */
+		background-color: #C0C0C0;
+	}
+
+	/*
+标题
+ */
+	.title_container {
+		/* #ifndef APP-PLUS-NVUE */
+		display: flex;
+		/* #endif */
+		position: absolute;
+		left: 375upx;
+		bottom: 0;
+		transform: translateX(-50%);
+		flex-direction: row;
+		justify-content: center;
+		align-items: center;
+	}
+
+	.title_text {
+		// flex: 1;
+		text-overflow: ellipsis;
+		/* #ifndef APP-PLUS-NVUE */
+		white-space: nowrap;
+		overflow: hidden;
+		font-weight: 550;
+
+		/* #endif */
+		/* #ifdef APP-PLUS-NVUE */
+		lines: 1;
+		/* #endif */
+	}
+
+	/* 
+左边自定义
+ */
+	.my_left_box {
+		/* #ifndef APP-PLUS-NVUE */
+		display: flex;
+		/* #endif */
+		flex-direction: row;
+		align-items: center;
+	}
+
+	.my_left_icon {
+		/* #ifndef APP-PLUS-NVUE */
+		display: flex;
+		/* #endif */
+		flex-direction: row;
+		align-items: center;
+		justify-content: center;
+		/* #ifndef MP */
+		margin-left: 18upx;
+		/* #endif */
+	}
+
+	.my_left_custom {
+		/* #ifndef APP-PLUS-NVUE */
+		display: flex;
+		/* #endif */
+		flex-direction: row;
+		align-items: center;
+		// justify-content: center;
+	}
+
+	/* 文字 */
+	.leftText {
+		/* #ifndef APP-PLUS-NVUE */
+		display: flex;
+		/* #endif */
+		flex-direction: row;
+		align-items: center;
+		justify-content: center;
+		padding-left: 4upx;
+		font-size: 15px;
+	}
+
+	/* 
+中间
+ */
+	.my_custom_box {
+		/* #ifndef APP-PLUS-NVUE */
+		display: flex;
+		/* #endif */
+		flex-direction: row;
+		align-items: center;
+		justify-content: center;
+		flex: 1;
+	}
+
+	/*
+搜索框 
+ */
+	.nv_search_box {
+		/* #ifndef APP-PLUS-NVUE */
+		display: flex;
+		/* #endif */
+		flex-direction: row;
+		align-items: center;
+		flex: 1;
+
+		/* #ifndef MP */
+		height: 60upx;
+		/* #endif */
+		background-color: #f8f8f8;
+		padding-right: 20upx;
+		padding-left: 20upx;
+		border-radius: 60upx;
+		margin-right: 15upx;
+		margin-left: 15upx;
+	}
+
+	.nv_input {
+		flex: 1;
+		padding-left: 16upx;
+		font-size: 13px;
+	}
+
+	.close {
+		width: 50upx;
+		/* #ifndef APP-PLUS-NVUE */
+		display: flex;
+		/* #endif */
+		flex-direction: row;
+		align-items: center;
+		justify-content: center;
+		/* #ifndef MP */
+		height: 62upx;
+		/* #endif */
+	}
+
+	/* 
+右边 自定义
+ */
+	.my_right_icon {
+		/* #ifndef APP-PLUS-NVUE */
+		display: flex;
+		/* #endif */
+		flex-direction: row;
+		align-items: center;
+		justify-content: center;
+		/* #ifndef MP */
+		// min-width: 70upx;
+		/* #endif */
+		padding-left: 6px;
+		padding-right: 10px;
+	}
+
+	.imge image {
+		width: 100%;
+		height: 260rpx;
+	}
+
+	.commodity {
+		margin-top: 10rpx;
+		display: flex;
+		flex-wrap: wrap;
+		justify-content: space-between;
+	}
+
+	.share {
+		text-align: center;
+		line-height: 10rpx;
+		margin-top: 10rpx;
+	}
+
+	.share image {
+		vertical-align: middle;
+		width: 25rpx;
+		height: 25rpx;
+		display: inline-block
+	}
+
+	.share p {
+		display: inline-block;
+		font-size: 24rpx;
+		color: #333333;
+	}
+
+	.introduction {
+		width: 100%;
+		margin: 10rpx auto 0;
+
+
+	}
+
+	.rleft p {
+		font-size: 18rpx;
+
+		color: #999999;
+	}
+
+	.rright p {
+		font-size: 18rpx;
+		color: #999999;
+
+	}
+
+	.Mask {
+		position: absolute;
+		background-color: #000000;
+		opacity: 0.6;
+		width: 100%;
+		height: 100%;
+		// z-index: 999;
+		text-align: center;
+		border-radius: 20rpx;
+	}
+
+	.Mask image {
+		width: 50%;
+		height: 52%;
+		padding-top: 25%;
+	}
+
+	.contt {
+		position: relative;
+	}
+
+	.contact {
+		position: fixed;
+		top: 80%;
+		right: 13%;
+	}
+
+	.img1 {
+		width: 84rpx;
+		height: 124rpx;
+		position: absolute;
+
+	}
+
+	.img2 {
+		width: 114rpx;
+		height: 40rpx;
+		position: absolute;
+		top: 130rpx;
+		left: -12rpx;
+	}
+
+	.swiper {
+		height: 300rpx;
+	}
+
+	.swiper-item {
+		display: block;
+		height: 300rpx;
+		line-height: 300rpx;
+		text-align: center;
+	}
+
+	.swiper-list {
+		margin-top: 40rpx;
+		margin-bottom: 0;
+	}
+</style>
+
+
+<style lang="scss" scoped>
+	.commodity {
+		margin-top: 10rpx;
+		display: flex;
+		flex-wrap: wrap;
+		justify-content: space-between;
+	}
+
+	.project {
+		width: 49%;
+		height: 550rpx;
+		border-radius: 20rpx;
+		margin-bottom: 0%;
+	}
+
+	.projectdiagram {
+		width: 100%;
+		height: 61%;
+		background-size: 100% 100%;
+		position: relative;
+		border-radius: 10rpx;
+		;
+	}
+
+	.projecttext {
+		// padding-top: 5%;
+		padding: 0 0 0 1%;
+		// height: 80rpx;
+	}
+
+	.projecttext span {
+		color: #333333;
+		font-size: 25rpx;
+		font-weight: 550;
+		text-indent: 2em;
+	}
+
+	.projecttext image {
+		vertical-align: middle;
+		width: 30rpx;
+		height: 30rpx;
+		display: inline-block;
+		margin-right: 14rpx;
+	}
+
+	.projectinfo {
+		display: flex;
+		justify-content: space-between;
+		padding: 0 10rpx;
+	}
+
+	.projectinfotxt {
+		display: flex;
+		flex-direction: column;
+		align-items: center;
+		justify-content: center;
+	}
+
+	.projectinfotxt p {
+		color: #767272;
+		font-size: 20rpx;
+		margin: 5rpx 0;
+	}
+
+	.projectinfotag {
+		display: flex;
+		justify-content: space-around;
+		align-items: center;
+	}
+
+	.TitleText {
+		// height: 30rpx;
+		width: 100rpx;
+		background-color: #f70606;
+		border-radius: 10rpx;
+		display: inline-block;
+		text-align: center;
+		// padding: 0rpx 10rpx 0rpx 10rpx;
+		margin-right: 6%;
+		line-height: 30rpx;
+		margin-top: 0%;
+	}
+
+	.TitleText p {
+		color: #fff;
+		font-size: 16rpx;
+	}
+</style>

+ 473 - 0
page_selectionsquare/selectiondetail/information.vue

@@ -0,0 +1,473 @@
+<template>
+	<view>
+		<!-- 胶囊 -->
+		<mvBar :mysNavConfig="mysNavConfig"></mvBar>
+		<view :style="{marginTop:navH}"></view>
+		<view class="basicInfo">
+			<image :src="mainImg" style="width: 150rpx;height: 150rpx;" mode="">
+			</image>
+			<view class="basicInfo_txt">
+				<p style="margin-bottom: 10rpx;font-size: 36rpx;">{{selection.selection_name}}</p>
+				<p>售价:¥{{selection.show_estimated_cost}} &nbsp;&nbsp;&nbsp;&nbsp; 佣金:{{selection.commission_rate}}%</p>
+				<p v-if="selection.task_mode === 1">额外悬赏:¥{{selection.show_task_reward}}</p>
+			</view>
+		</view>
+
+		<view class="address">
+			<view>
+				<image class="address_icon" :src="picture.icon_loc" mode="">
+				</image>
+			</view>
+			<view style="width: 70%;">
+				<view style="display: flex;">
+					<p class='ipon' style="padding-right: 100rpx;">{{address.receiver_name}}</p>
+					<p class='ipon'>{{address.phone_number}}</p>
+				</view>
+				<p class='ipon'>{{address.full_detail_addr}}</p>
+			</view>
+			<view class="address_edit" @click="editAddress()">
+				<image :src="picture.icon_edit" mode="">
+				</image>
+			</view>
+		</view>
+
+		<view class="keyInfo">
+			<p style="margin-bottom: 30rpx;font-size: 36rpx;">任务要求</p>
+			<p>内容形式:{{selection.show_content_type}}</p>
+			<p>带货链接:{{selection.product_url}}
+				<image :src="picture.icon_copy" mode="" class="copy-img" @click="handleCopy('123')" />
+			</p>
+			<p>领样形式:{{selection.show_sample_mode}}</p>
+			<p>领样条件:{{selection.sample_condition}}</p>
+			<p>任务形式:{{selection.show_task_mode}}</p>
+			<p>返现&悬赏条件:{{selection.reward_condition}}</p>
+		</view>
+
+		<view class="account" @click="editAccount()">
+			<view class="account_txt">
+				<image :src="selection.PlatformInfo.platform_icon" mode=""></image>
+				<span>{{account.platform_nickname}}</span>
+			</view>
+			<view class="account_fans">
+				<p style="padding-right: 20rpx;color:#A8A8A8;">粉丝数</p>
+				<p>{{account.show_fans_count}}</p>
+			</view>
+			<view class="account_btn">
+				<image :src="picture.togoimg" mode="" style="width: 16rpx;height: 30rpx;"></image>
+			</view>
+		</view>
+
+
+		<view class="block"></view>
+		<view class="submit">
+			<button type="default" class="submit_btn" @click="submit()"> 确认报名</button>
+		</view>
+	</view>
+</template>
+
+<script>
+	import region from '@/components/pca-code.json';
+	import mvBar from "@/components/mys_navBar/mysNavBar";
+	import {
+		fansview
+	} from '@/components/utils.js';
+	export default {
+		components: {
+			mvBar
+		},
+		data() {
+			return {
+				navH: getApp().globalData.navHeight,
+				picture: getApp().globalData.picture,
+				mysNavConfig: {
+					isHome: false,
+					/* 固定导航  */
+					navFixed: true,
+					/* 标题 (屏幕中心居中 两边图标中心居中使用slot center1) */
+					navTitle: {
+						text: "信息确认",
+						color: "",
+						fontSize: "32rpx", // px upx rpx
+						fontWeight: "", // 100 - 700
+					},
+					btnType: "type2",
+					onLeftClick: '',
+					/* type2 按钮 */
+					type2Config: {
+						// 左图标
+						leftPath: "https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/png2.png",
+						// 右图标
+						rightPath: "https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/png4.png",
+						// 圆角
+						radius: "40rpx",
+					},
+				},
+
+				selection: {},
+				youngTeamId: "",
+				youngLeadTeamId: "",
+				mainImg: "https://horastar.obs.cn-east-3.myhuaweicloud.com/backstage_upload/bb531ede-28b5-49a0-8431-a1608fd35890.png",
+				account_id: -1,
+				address_id: -1,
+				address: null,
+				project: null,
+				account: null,
+				strategy: null,
+				thirdPlatform: [],
+			}
+		},
+		onShow() {
+			// 根据address_id查询address
+			this.getDefaultAddress();
+			// 查询account	
+			this.getAccount();
+		},
+		onLoad(options) {
+			this.textObj = options.textObj.replace(/""/g, "");
+			this.textObj = JSON.parse(decodeURIComponent(this.textObj))
+			console.log(this.textObj)
+			this.selection = this.textObj.selection
+			this.youngTeamId = this.textObj.youngTeamId
+			this.youngLeadTeamId = this.textObj.youngLeadTeamId
+
+			for (let i = 0; i < this.selection.Product.ProductPhoto.length; ++i) {
+				if (this.selection.Product.ProductPhoto[i].Symbol === 1) {
+					this.mainImg = this.selection.Product.ProductPhoto[i].PhotoUrl
+				}
+			}
+			console.log("youngLeadTeamId: ", this.youngLeadTeamId)
+			if (this.youngLeadTeamId === "") {
+				this.getLeadYoungTeamId()
+			}
+		},
+		methods: {
+			handleCopy(content) {
+				wx.setClipboardData({
+					data: content,
+					success: function(res) {
+						console.log("复制成功");
+					}
+				});
+			},
+			getLeadYoungTeamId() {
+				// 调用后端接口,创建young之团,若young之团存在则返回teamid,否则创建young之团并返回id
+				return this.$https.post('/youngee/c/t/p/add-young-team', {
+						selection_id: this.selection.selection_id,
+						project_type: 2,
+					})
+					.then(res => {
+						console.log(res)
+						this.youngLeadTeamId = res.data.data;
+					})
+			},
+			getAccount() {
+				this.$https.get('/youngee/c/t/g/get-talent-account')
+					.then(res => {
+						console.log(res)
+						console.log(res.data.data)
+						if (res.data.code !== -3) {
+							let account = res.data.data
+							while (this.selection == null) {} // 这句很危险
+							for (var i = 0; i < account.length; i++) {
+								if (this.selection.platform == account[i].platform_id) {
+									this.account = account[i]
+								}
+							}
+							this.account.show_fans_count = fansview(this.account.fans_count)
+						}
+					})
+			},
+			getDefaultAddress() {
+				this.$https.get('/youngee/c/t/g/get-talent-default-address').then(res => {
+					console.log(res.data.data)
+					this.address = res.data.data;
+					let a = this.address.region_code.toString().slice(0, 2)
+					let b = this.address.region_code.toString().slice(0, 4)
+					let c = 0
+					for (var i = 0; i < region.length; i++) {
+						if (region[i].code == a) {
+							a = region[i].name
+							for (var j = 0; j < region[i].children.length; j++) {
+								if (region[i].children[j].code == b) {
+									b = region[i].children[j].name
+									for (var o = 0; o < region[i].children[j].children.length; o++) {
+										if (region[i].children[j].children[o].code == this.address
+											.region_code) {
+											c = region[i].children[j].children[o].name
+										}
+									}
+								}
+
+							}
+						}
+					}
+					this.address.full_detail_addr = a + b + c + this.address.detail_addr
+				})
+			},
+			editAddress() {
+				uni.navigateTo({
+					url: '/page_mycenter/myinformation/addlocation?address_id=' + this.address.address_id +
+						'&ismodify=1'
+				});
+			},
+			editAccount() {
+				uni.navigateTo({
+					url: '/page_mycenter/myinformation/bindaccount?platform_id=' + this.account.platform_id +
+						'&account_id=' +
+						this.account.account_id
+				});
+			},
+			debugSubmit() {
+				uni.navigateTo({
+					url: '/page_tasksquare/wholetask/success'
+				});
+			},
+			// 提交确认报名
+			async submit() {
+				console.log(this.project)
+				// 1. 判断任务是否截止
+				await this.$https.get('/youngee/c/t/g/get-selection-detail' +
+					"?" +
+					"selectionid" +
+					"=" +
+					this.selection.selection_id
+				).then(res => {
+					if (res.data.code === 0) {
+						var newdate = new Date()
+						var endTime = new Date(this.selection.task_ddl.replace(
+							/-/g, "/"));
+						if (endTime - newdate < 0) {
+							// 招募截止
+							uni.showToast({
+								title: "任务已结束",
+								duration: 1000,
+							});
+							uni.navigateTo({
+								url: '/pages/selectionsquare/selectionsquare'
+							});
+						}
+					}
+				})
+				// 2. 插入一条任务
+				// 如果是垫付买样则进行支付
+				let that = this
+				if (this.selection.sample_mode === 2) {
+					console.log("支付")
+					this.$https.post('/youngee/c/api/t/wxpay/pay', {
+						amount: this.selection.price * 100,
+						description: this.selection.selection_name,
+					}).then(res => {
+						console.log(res)
+						let data = res.data.data
+						wx.requestPayment({
+							"timeStamp": data.time_stamp,
+							"nonceStr": data.nonce_str,
+							"package": data.package,
+							"signType": "RSA",
+							"paySign": data.pay_sign,
+							"success": function(res) {
+								// 支付成功时执行
+								that.$https.post('/youngee/c/t/p/sign-up-sec-task', {
+									address_id: that.address.address_id,
+									selection_id: that.selection.selection_id,
+									lead_team_id: that.youngLeadTeamId,
+									team_id: that.youngTeamId,
+								}).then(res => {
+									if (res.data.code == 0) {
+										var data = {
+											task_id: res.data.data.task_id
+										};
+										data = JSON.stringify(data)
+										uni.navigateTo({
+											url: '/page_selectionsquare/selectiondetail/success?textObj=' +
+												encodeURIComponent(
+													data)
+										});
+									} else {
+										uni.showModal({
+											content: '网络繁忙,请小主稍后再试~',
+										});
+									}
+								})
+								console.log("支付成功: ", res.errMsg)
+							},
+							"fail": function(res) {
+								// 调起失败或取消支付时执行
+								console.log("支付失败: ", res.errMsg)
+								uni.showModal({
+									content: "支付失败,请重试",
+								});
+							},
+							"complete": function(res) {
+								// 成功或失败都会执行
+								console.log("支付结束: ", res.errMsg)
+							}
+						})
+					})
+				} else {
+					// 否则直接报名
+					this.$https.post('/youngee/c/t/p/sign-up-sec-task', {
+						address_id: this.address.address_id,
+						selection_id: this.selection.selection_id,
+						lead_team_id: this.youngLeadTeamId,
+						team_id: this.youngTeamId,
+					}).then(res => {
+						if (res.data.code == 0) {
+							var data = {
+								task_id: res.data.data.task_id
+							};
+							data = JSON.stringify(data)
+							uni.navigateTo({
+								url: '/page_selectionsquare/selectiondetail/success?textObj=' +
+									encodeURIComponent(
+										data)
+							});
+						} else {
+							uni.showModal({
+								content: '网络繁忙,请小主稍后再试~',
+							});
+						}
+					})
+				}
+			},
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+	text {
+		font-size: 32rpx;
+	}
+
+	p {
+		font-size: 32rpx;
+	}
+
+	.basicInfo {
+		display: flex;
+		margin: 0 40rpx;
+		padding: 30rpx 0;
+
+		.basicInfo_txt {
+			margin-left: 40rpx;
+			padding-top: 20rpx;
+		}
+	}
+
+	.address {
+		display: flex;
+		margin: 30rpx 40rpx 0;
+		padding: 30rpx 0;
+		justify-content: space-around;
+
+		.address_icon {
+			vertical-align: middle;
+			width: 50rpx;
+			height: 50rpx;
+			display: inline-block;
+			padding-right: 30rpx;
+		}
+
+		.address_edit {}
+
+		.address_edit image {
+			vertical-align: middle;
+			width: 50rpx;
+			height: 50rpx;
+			display: inline-block;
+			padding-right: 14rpx;
+		}
+
+		.ipon {
+			color: #333333;
+			font-size: 30rpx;
+			margin-bottom: 10rpx;
+		}
+	}
+
+	.keyInfo {
+		margin: 30rpx 40rpx;
+	}
+
+	.keyInfo span {
+		display: flex;
+		align-items: center;
+		margin: 10rpx 0;
+	}
+
+	.keyInfo p {
+		margin: 25rpx 0;
+	}
+
+
+	.account {
+		display: flex;
+		align-items: center;
+		width: 690rpx;
+		padding: 24rpx 0;
+		margin: 0 auto;
+
+		.account_txt {
+			display: inline-block;
+			padding: 0 0 0 1%;
+			width: 400rpx;
+		}
+
+		.account_txt span {
+			color: #333333;
+			font-weight: 550;
+			text-indent: 2em;
+			font-size: 32rpx;
+		}
+
+
+		.account_txt image {
+			vertical-align: middle;
+			width: 50rpx;
+			height: 50rpx;
+			display: inline-block;
+			padding-right: 14rpx;
+		}
+
+		.account_fans {
+			display: flex;
+			width: 250rpx;
+		}
+
+		.account_fans p {
+			display: inline-block;
+			color: #333333;
+			font-weight: 550;
+		}
+
+		.account_btn {}
+	}
+
+	.block {
+		width: 100%;
+		height: 100rpx;
+		margin-top: 5%;
+	}
+
+	.submit {
+		box-shadow: 0rpx 5rpx 40rpx #ccc;
+		width: 100%;
+		position: fixed;
+		bottom: 0rpx;
+		display: flex;
+		height: 90rpx;
+		padding-top: 2%;
+		background-color: #FFFFFF;
+
+		.submit_btn {
+			width: 60%;
+			background-color: #FCCF41;
+			border-radius: 20rpx;
+			font-size: 36rpx;
+			line-height: 200%;
+			letter-spacing: 10rpx;
+			height: 80%;
+		}
+
+	}
+</style>

File diff suppressed because it is too large
+ 298 - 421
page_selectionsquare/selectiondetail/selectiondetail.vue


+ 297 - 0
page_selectionsquare/selectiondetail/success.vue

@@ -0,0 +1,297 @@
+<template>
+	<view>
+		<!-- 胶囊 -->
+		<mvBar :mysNavConfig="mysNavConfig"></mvBar>
+		<view :style="{marginTop:navH}"></view>
+		<view class="home">
+			<view class="card">
+				<view class=""
+					style="display: flex;justify-content:center;width: 80%;margin: 0 auto;margin-top: 20rpx;margin-bottom: 20rpx;align-items: center;">
+					<image src="../../static/img/sucess.png" mode=""
+						style="width: 150rpx;height: 150rpx;"></image>
+					<view class="" style="font-size: 32rpx;margin-left: 30rpx;">
+						<p>已报名成功</p>
+					</view>
+
+				</view>
+			</view>
+			<view class="card" style="margin-top: 6%;">
+				<view class="" style="width: 90%;margin-top: 20rpx;margin-bottom: 20rpx;">
+
+					<p class='ipon1' style='margin-top: 5rpx;'>1.任务确认结果可随时在<span
+							style="color: deepskyblue;">我的任务</span>中查看 </p>
+					<p class='ipon1'> 2.品牌同意合作后我们会再次与您确认合作意向和收货地址,请及时操作,否则资格可能会被取消~ </p>
+					<p class='ipon1'>3.请<span style="color: deepskyblue;">订阅</span>我们的通知消息~以防止超时操作的情况~</p>
+					<p class='ipon1'> 4.点击右上角添加小程序,能更快找到我们哦~</p>
+					<!-- <view class="" style="width: 80%;background-color: #C9C9C9;border-radius: 10rpx;">
+						<view class="Tasktext">
+							<image src="https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/task20.png" mode="">
+							</image>
+							<span>样叽</span>
+							<image src="https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/task16.png"
+								style="width: 20rpx;margin-left: 2%; height: 26rpx;" mode=""></image>
+						</view>
+						<view class=""
+							style="border-bottom: 2rpx solid #333333;width: 95%; margin: 0 auto; margin-top: 2%;margin-bottom: 2%;">
+						</view>
+						<view class=""
+							style="display: flex;justify-content:space-around;margin-top: 5%;padding-bottom: 10rpx;">
+							<view class="" style="margin: 0 auto;">
+								<view class="iimmg" style="margin: 0 auto;">
+									<image src="https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/task22.png"
+										mode=""></image>
+								</view>
+								<p class='ppan'>发送给朋友</p>
+							</view>
+
+							<view class="" style="margin: 0 auto;">
+								<view class="iimmg" style="margin: 0 auto;">
+									<image src="https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/task23.png"
+										mode=""></image>
+								</view>
+								<p class='ppan'>添加到我的小程序</p>
+							</view>
+						</view>
+					</view> -->
+				</view>
+
+
+			</view>
+			<view class="" style="width: 100%;height: 180rpx;"> </view>
+		</view>
+		<view class="signup">
+			<view class="signuptext">
+				<button type="default" class="but1" @click="dingyue()"> 订阅通知</button>
+			</view>
+
+			<view class="signupbut">
+				<button type="default" class="but1" @click="toDetail()"> 查看任务</button>
+
+			</view>
+
+		</view>
+
+	</view>
+</template>
+
+<script>
+	import mvBar from "@/components/mys_navBar/mysNavBar";
+	export default {
+		components: {
+			mvBar,
+		},
+		data() {
+			return {
+				navH: getApp().globalData.navHeight,
+				times: 5,
+				mysNavConfig: {
+					/* 占位开启  */
+					// navPadding: true,
+					/* 背景 */
+					// bgColor: "#f8f8f8",
+					/* 开启单页显示首页图标 */
+					isHome: true,
+					/* 固定导航  */
+					navFixed: true,
+					/* 标题 (屏幕中心居中 两边图标中心居中使用slot center1) */
+					navTitle: {
+						text: "报名成功",
+						color: "",
+						fontSize: "32rpx", // px upx rpx
+						fontWeight: "", // 100 - 700
+					},
+					btnType: "type2",
+					onLeftClick: "/pages/tasksquare/tasksquare",
+					/* type2 按钮 */
+					type2Config: {
+						// 左图标
+						leftPath: "/static/img/png2.png",
+						// 右图标
+						rightPath: "/static/img/png4.png",
+						// 圆角
+						radius: "40rpx",
+					},
+					/* 定义右侧图标 */
+					// rightIconPath: "/static/s.png",
+				},
+			};
+		},
+		async onLoad(options) {
+			let data = options.textObj.replace(/""/g, "");
+			data = JSON.parse(decodeURIComponent(data))
+			this.taskId = data.task_id
+		},
+		methods: {
+			// 进入任务列表页面
+			toDetail() {
+				uni.navigateTo({
+					url: '/page_workspace/selection/sectaskdetail?taskId=' + this.taskId,
+				});
+			},
+			dingyue() {
+				uni.showToast({
+					title: '订阅成功',
+					duration: 2000
+				});
+			},
+		}
+	};
+</script>
+<style lang="scss" scoped>
+	p{
+		color: #a9a9a9;
+	}
+	
+	.butto {
+		text-align: center;
+	}
+
+	.option {
+		padding: 20rpx;
+	}
+
+	.uni-margin-wrap {
+		width: 690rpx;
+		width: 100%;
+		;
+	}
+
+	.swiper {
+		height: 300rpx;
+	}
+
+	.swiper-item {
+		display: block;
+		height: 300rpx;
+		line-height: 300rpx;
+		text-align: center;
+	}
+
+	.swiper-list {
+		margin-top: 40rpx;
+		margin-bottom: 0;
+	}
+
+	.uni-common-mt {
+		margin-top: 60rpx;
+		position: relative;
+	}
+
+	.info {
+		position: absolute;
+		right: 20rpx;
+	}
+
+	.uni-padding-wrap {
+		width: 550rpx;
+		padding: 0 100rpx;
+	}
+
+	.card {
+		width: 100%;
+		// padding: 24rpx;
+		margin-top: 30rpx;
+		border-radius: 10rpx;
+		margin: 0 auto;
+		display: flex;
+		flex-direction: column;
+		align-items: center;
+		justify-content: center;
+	}
+
+	.ipon {
+		color: #333333;
+		font-size: 26rpx;
+		font-weight: 500;
+		margin-bottom: 10rpx;
+	}
+
+	.ipon1 {
+		color: #333333;
+		font-size: 32rpx;
+		margin-bottom: 5%;
+	}
+
+	.signup {
+		// box-shadow: 0rpx 5rpx 40rpx #ccc;
+		width: 100%;
+		position: fixed;
+		bottom: 0rpx;
+		display: flex;
+		height: 90rpx;
+		padding: 2% 0;
+		background-color: #FFFFFF;
+		justify-content: space-around;
+	}
+
+	.signuptext {
+		text-align: center;
+		margin-top: 2%;
+
+	}
+
+	.signuptext p {
+		font-size: 60%;
+		color: #333333;
+	}
+
+	.signupbut {
+		text-align: center;
+		margin-top: 2%;
+	}
+
+	.but1 {
+		width: 250rpx;
+		height: 70rpx;
+		text-align: center;
+		background-color: #f3d500;
+		border-radius: 10rpx;
+		color: #000;
+		font-size: 32rpx;
+		line-height: 200%;
+		justify-content: center;
+		font-weight: 500;
+		// height: 80%;
+	}
+
+	.Tasktext {
+		// padding-top: 5%;
+		padding: 6%;
+		// height: 80rpx;
+		margin-top: 2%;
+	}
+
+	.Tasktext span {
+		color: #333333;
+		font-size: 60%;
+		font-weight: 550;
+		text-indent: 2em;
+
+	}
+
+	.Tasktext image {
+		vertical-align: middle;
+		width: 50rpx;
+		height: 50rpx;
+		display: inline-block;
+		padding-right: 14rpx;
+	}
+
+	.iimmg {
+		width: 80rpx;
+		height: 80rpx;
+		background-color: #FFFFFF;
+		border-radius: 15%;
+	}
+
+	.iimmg image {
+		width: 60%;
+		height: 60%;
+		padding: 20%;
+	}
+
+	.ppan {
+		font-size: 60%;
+		margin-top: 1%;
+	}
+</style>

+ 1 - 4
page_tasksquare/banner/cooperation.vue

@@ -21,10 +21,7 @@
 		data() {
 			return {
 				navH: getApp().globalData.navHeight,
-				picture: {
-					guide: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/home/guide.png',
-					coop: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/home/coop.png'
-				},
+				picture: getApp().globalData.picture,
 
 				mysNavConfig: {
 					/* 占位开启  */

+ 1 - 4
page_tasksquare/banner/guanwang.vue

@@ -22,10 +22,7 @@
 		data() {
 			return {
 				navH: getApp().globalData.navHeight,
-				picture: {
-					guide: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/home/guide.png',
-					coop: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/home/coop.png'
-				},
+				picture: getApp().globalData.picture,
 
 				mysNavConfig: {
 					/* 占位开启  */

+ 1 - 4
page_tasksquare/banner/guide.vue

@@ -21,10 +21,7 @@
 		data() {
 			return {
 				navH: getApp().globalData.navHeight,
-				picture: {
-					guide: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/home/guide.png',
-					coop: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/home/coop.png'
-				},
+				picture: getApp().globalData.picture,
 
 				mysNavConfig: {
 					/* 占位开启  */

+ 1 - 8
page_tasksquare/specialtask/information.vue

@@ -83,6 +83,7 @@
 		data() {
 			return {
 				navH: getApp().globalData.navHeight,
+				picture: getApp().globalData.picture,
 				mainImg: "https://horastar.obs.cn-east-3.myhuaweicloud.com/backstage_upload/bb531ede-28b5-49a0-8431-a1608fd35890.png",
 				account_id: -1,
 				address_id: -1,
@@ -90,14 +91,6 @@
 				project: null,
 				account: null,
 				strategy: null,
-				picture: {
-					togoimg: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/task16.png',
-					icon_edit: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-edit.png',
-					icon_loc: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-loc.png',
-					home8: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/home8.png',
-					home10: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/home10.png',
-					home11: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/home11.png',
-				},
 				thirdPlatform: [],
 				mysNavConfig: {
 					isHome: false,

+ 24 - 40
page_tasksquare/specialtask/specialTaskDetail.vue

@@ -37,27 +37,13 @@
 						<p>任务信息</p>
 					</view>
 					<view class="markcontent">
-						<view style="display: flex;margin: 10rpx 0;">
-							<p class="label">社媒平台:</p>
-							<p class="wvp">{{information.PlatformInfo.platform_name}}</p>
-						</view>
-						<view style="display: flex;margin: 10rpx 0;">
-							<p class="label">商品类型:</p>
-							<p class="wvp">{{information.Product.ProductType}}</p>
-						</view>
-						<view style="display: flex;;margin: 10rpx 0;">
-							<p class="label">商品链接:</p>
-							<span style="display: flex;align-items: center;"
-								v-if="information.Product.ProductUrl === ''">
-								<p class="wvp" style="padding: 0;">无</p>
-							</span>
-							<span style="display: flex;align-items: center;"
-								v-if="information.Product.ProductUrl !== ''">
-								<p class="wvp" style="padding: 0;">{{information.Product.ProductUrl|ellipsis}}</p>
-								<image :src="icon_copy" mode="" style="width: 40rpx;height: 40rpx;"
-									@click="handleCopy(information.Product.ProductUrl)" />
-							</span>
-						</view>
+						<p>社媒平台:{{information.PlatformInfo.platform_name}}</p>
+						<p>商品类型:{{information.Product.ProductType}}</p>
+						<p v-if="information.Product.ProductUrl === ''">商品链接:无</p>
+						<p v-else>商品链接:{{information.Product.ProductUrl|ellipsis}}
+							<image :src="icon_copy" mode="" class="copy-img"
+								@click="handleCopy(information.Product.ProductUrl)" />
+						</p>
 					</view>
 				</view>
 			</view>
@@ -108,19 +94,22 @@
 									<button type="default"
 										@tap="downloadFile('https://horastar.obs.cn-east-3.myhuaweicloud.com:443/backstage_upload/22120379.docx', '测试文件测试文件测试文件测试文件.docx')">点击下载</button>
 								</view> -->
-								<view class="diagram-pdf" v-for="item in information.ProjectPhoto"
-									v-if="briefType == 'pdf'">
-									<image :src="picture.icon_pdf"></image>
-									<p>{{item.file_name}}</p>
-									<button type="default"
-										@tap="downloadFile(item.photo_url, item.file_name)">点击下载</button>
+
+								<view v-if="briefType == 'pdf'">
+									<view class="diagram-pdf" v-for="item in information.ProjectPhoto">
+										<image :src="picture.icon_pdf"></image>
+										<p>item.file_name</p>
+										<button type="default"
+											@tap="downloadFile(item.photo_url, item.file_name)">点击下载</button>
+									</view>
 								</view>
-								<view class="diagram-pdf" v-for="item in information.ProjectPhoto"
-									v-else-if="briefType == 'doc' || briefType == 'docx'">
-									<image :src="picture.icon_word"></image>
-									<p>{{item.file_name}}</p>
-									<button type="default"
-										@tap="downloadFile(item.photo_url, item.file_name)">点击下载</button>
+								<view v-else-if="briefType == 'doc' || briefType == 'docx'">
+									<view class="diagram-pdf" v-for="item in information.ProjectPhoto">
+										<image :src="picture.icon_word"></image>
+										<p>item.file_name</p>
+										<button type="default"
+											@tap="downloadFile(item.photo_url, item.file_name)">点击下载</button>
+									</view>
 								</view>
 								<view class="diagram" v-for="item in information.ProjectPhoto" v-else>
 									<image :src="item.photo_url" mode="widthFix"></image>
@@ -224,6 +213,7 @@
 				briefType: '',
 				icon_copy: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-copy.png',
 				navH: getApp().globalData.navHeight,
+				picture: getApp().globalData.picture,
 				canvasUrl: '',
 				loading: true,
 				isSign: 0,
@@ -243,11 +233,6 @@
 				posterImg: '',
 				canvasId: 'myCanvas',
 				img: '',
-				picture: {
-					icon_copy: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-copy.png',
-					icon_word: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-word.png',
-					icon_pdf: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-pdf.png',
-				},
 				younggee_logo: "https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/younggee_logo.png",
 				task_type_info: ["实体商品寄拍", "虚拟产品测评", "线下探店打卡", "素材微原创"],
 				talent_type_info: ["美妆", "美食", "生活", "时尚", "测评", "旅行", "汽车", "萌宠", "游戏", "音乐", "舞蹈", "房产", "情感", "三农",
@@ -1390,8 +1375,7 @@
 
 	.markcontent p {
 		font-size: 24rpx;
-		// color: #333333;
-		// margin: 3% ;
+		margin: 10rpx 0;
 	}
 
 	.markcontent span {

+ 9 - 18
page_tasksquare/wholetask/information.vue

@@ -7,8 +7,8 @@
 			<image :src="mainImg" style="width: 150rpx;height: 150rpx;" mode="">
 			</image>
 			<view class="basicInfo_txt">
-				<p style="margin-bottom: 10rpx;font-size: 35rpx;">{{project.project_name}}</p>
-				<p style="font-size: 30rpx;">商品价值:{{project.Product.ProductPrice}}元</p>
+				<p style="margin-bottom: 10rpx;font-size: 36rpx;">{{project.project_name}}</p>
+				<p>商品价值:{{project.Product.ProductPrice}}元</p>
 			</view>
 		</view>
 
@@ -102,6 +102,7 @@
 		data() {
 			return {
 				navH: getApp().globalData.navHeight,
+				picture: getApp().globalData.picture,
 				mainImg: "https://horastar.obs.cn-east-3.myhuaweicloud.com/backstage_upload/bb531ede-28b5-49a0-8431-a1608fd35890.png",
 				account_id: -1,
 				address_id: -1,
@@ -109,14 +110,6 @@
 				project: null,
 				account: null,
 				strategy: null,
-				picture: {
-					togoimg: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/task16.png',
-					icon_edit: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-edit.png',
-					icon_loc: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-loc.png',
-					home8: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/home8.png',
-					home10: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/home10.png',
-					home11: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/home11.png',
-				},
 				thirdPlatform: [],
 				mysNavConfig: {
 					isHome: false,
@@ -309,7 +302,10 @@
 
 <style lang="scss" scoped>
 	text {
-		font-size: 30rpx;
+		font-size: 32rpx;
+	}
+	p{
+		font-size: 32rpx;
 	}
 
 	.basicInfo {
@@ -349,7 +345,7 @@
 
 		.ipon {
 			color: #333333;
-			font-size: 30rpx;
+			font-size: 32rpx;
 			margin-bottom: 10rpx;
 		}
 	}
@@ -368,10 +364,6 @@
 
 	.keyInfo h3 {}
 
-	.keyInfo p {
-		font-size: 30rpx;
-	}
-
 	.account {
 		display: flex;
 		align-items: center;
@@ -389,7 +381,7 @@
 			color: #333333;
 			font-weight: 550;
 			text-indent: 2em;
-			font-size: 30rpx;
+			font-size: 32rpx;
 		}
 
 
@@ -408,7 +400,6 @@
 
 		.account_fans p {
 			display: inline-block;
-			font-size: 30rpx;
 			color: #333333;
 			font-weight: 550;
 		}

+ 215 - 228
page_tasksquare/wholetask/taskdetail.vue

@@ -53,259 +53,245 @@
 						<p>任务奖励</p>
 					</view>
 					<view class="markcontent">
-						<view style="display: flex;margin: 10rpx 0;">
-							<p class="label">商品价值:</p>
-							<p class="wvp" style="padding: 0;">{{information.Product.ProductPrice}}元</p>
-						</view>
-						<view style="display: flex;;margin: 10rpx 0;">
-							<p class="label">商品链接:</p>
-							<span style="display: flex;align-items: center;"
-								v-if="information.Product.ProductUrl === ''">
-								<p class="wvp" style="padding: 0;">无</p>
-							</span>
-							<span style="display: flex;align-items: center;"
-								v-if="information.Product.ProductUrl !== ''">
-								<p class="wvp" style="padding: 0;">{{information.Product.ProductUrl|ellipsis}}</p>
-								<image :src="picture.icon_copy" mode="" style="width: 40rpx;height: 40rpx;"
-									@click="handleCopy(information.Product.ProductUrl)" />
-							</span>
-						</view>
-						<view style="display: flex;margin: 10rpx 0;">
-							<p class="label">合作佣金:</p>
-							<view>
-								<p style="color: red;">{{coopStrategy}}</p>
-							</view>
-						</view>
+						<p>商品价值:{{information.Product.ProductPrice}}元</p>
+						<p v-if="information.Product.ProductUrl === ''">商品链接:无</p>
+						<p v-else>商品链接:{{information.Product.ProductUrl|ellipsis}}
+							<image :src="picture.icon_copy" mode="" class="copy-img"
+								@click="handleCopy(information.Product.ProductUrl)" />
+						<p>合作佣金:<span style="color: red;">{{coopStrategy}}</span></p>
+					</view>
+				</view>
+			</view>
+			<view class="">
+				<view class="circularmark">
+					<p>账号要求</p>
+				</view>
+				<view class="markcontent">
+					<view style="display: flex;margin: 10rpx 0;">
+						<p class="label">社媒平台:</p>
+						<p class="wvp">{{information.PlatformInfo.platform_name}}</p>
+					</view>
+					<view style="display: flex;margin: 10rpx 0;">
+						<p class="label">任务形式:</p>
+						<p class="wvp">{{information.project_form}}</p>
+					</view>
+					<view style="display: flex;margin: 10rpx 0;">
+						<p class="label">创作者类型: </p>
+						<p class="wvp1" v-for="(item,index) in information.talent_type">{{item}}</p>
 					</view>
 				</view>
+			</view>
+			<view class="home" style="padding-top: 0;">
 				<view class="">
 					<view class="circularmark">
-						<p>账号要求</p>
+						<p>任务要求</p>
 					</view>
 					<view class="markcontent">
 						<view style="display: flex;margin: 10rpx 0;">
-							<p class="label">社媒平台:</p>
-							<p class="wvp">{{information.PlatformInfo.platform_name}}</p>
-						</view>
-						<view style="display: flex;margin: 10rpx 0;">
-							<p class="label">任务形式:</p>
-							<p class="wvp">{{information.project_form}}</p>
-						</view>
-						<view style="display: flex;margin: 10rpx 0;">
-							<p class="label">创作者类型: </p>
-							<p class="wvp1" v-for="(item,index) in information.talent_type">{{item}}</p>
+							<p class="wvp" style="margin: 10rpx 0;">内容形式:</p>
+							<p class="wvp" style="margin: 10rpx 0;">{{information.content}}</p>
 						</view>
+						<p class="wvp" style="margin: 10rpx 0;">商品描述:</p>
+						<text class="wvp" style="margin: 10rpx 0;" decode="true" user-select="true">
+							{{information.Product.ProductDetail}} </text>
+						</p>
+						<p class="wvp" style="margin: 10rpx 0;">任务详情:</p>
+						<text class="wvp" style="margin: 10rpx 0;" decode="true" user-select="true">
+							{{information.project_detail}} </text>
 					</view>
 				</view>
 			</view>
-			<view class="" id="wrap1">
-				<view class="home" style="padding-top: 0;">
-					<view class="">
-
-						<view class="circularmark">
-							<p>任务要求</p>
-						</view>
-						<view class="markcontent">
-							<view style="display: flex;margin: 10rpx 0;">
-								<p class="wvp" style="margin: 10rpx 0;">内容形式:</p>
-								<p class="wvp" style="margin: 10rpx 0;">{{information.content}}</p>
-							</view>
-							<p class="wvp" style="margin: 10rpx 0;">商品描述:</p>
-							<text class="wvp" style="margin: 10rpx 0;" decode="true" user-select="true">
-								{{information.Product.ProductDetail}} </text>
-							</p>
-							<p class="wvp" style="margin: 10rpx 0;">任务详情:</p>
-							<text class="wvp" style="margin: 10rpx 0;" decode="true" user-select="true">
-								{{information.project_detail}} </text>
-						</view>
+			<view class="home" style="padding-top: 0;">
+				<view class="">
+					<view class="circularmark">
+						<p>BRIEF</p>
 					</view>
-				</view>
-			</view>
-			<view class="" id="wrap2">
-				<view class="home" style="padding-top: 0;">
-					<view class="">
-						<view class="circularmark">
-							<p>BRIEF</p>
-						</view>
-						<view class="markcontent1">
-							<view v-if="hasNoProjectPhoto">
-								<view class="diagram" style="font-size: 30rpx;margin: 0 30rpx;">
-									<p>暂无详情说明</p>
-								</view>
+					<view class="markcontent1">
+						<view v-if="hasNoProjectPhoto">
+							<view class="diagram" style="font-size: 32rpx;margin: 0 30rpx;">
+								<p>暂无详情说明</p>
 							</view>
-							<view v-else>
-								<!-- <view class="diagram-pdf" v-for="item in information.ProjectPhoto">
-									<image :src="picture.icon_pdf"></image>
-									<p>测试文件测试文件测试文件测试文件.pdf</p>
-									<button type="default"
-										@tap="downloadFile('https://horastar.obs.cn-east-3.myhuaweicloud.com/backstage_upload/用于确定预计到达时间的方法和设备.pdf', '测试文件.pdf')">点击下载</button>
-								</view>
+						</view>
+						<view v-else>
+							<view v-if="briefType == 'pdf'">
 								<view class="diagram-pdf" v-for="item in information.ProjectPhoto">
-									<image :src="picture.icon_word"></image>
-									<p>测试文件测试文件测试文件测试文件.docx</p>
-									<button type="default"
-										@tap="downloadFile('https://horastar.obs.cn-east-3.myhuaweicloud.com:443/backstage_upload/22120379.docx', '测试文件测试文件测试文件测试文件.docx')">点击下载</button>
-								</view> -->
-								<view class="diagram-pdf" v-for="item in information.ProjectPhoto"
-									v-if="briefType == 'pdf'">
 									<image :src="picture.icon_pdf"></image>
-									<p>item.file_name</p>
+									<p>{{item.file_name}}</p>
 									<button type="default"
 										@tap="downloadFile(item.photo_url, item.file_name)">点击下载</button>
 								</view>
-								<view class="diagram-pdf" v-for="item in information.ProjectPhoto"
-									v-else-if="briefType == 'doc' || briefType == 'docx'">
+							</view>
+							<view v-else-if="briefType == 'doc' || briefType == 'docx'">
+								<view class="diagram-pdf" v-for="item in information.ProjectPhoto">
 									<image :src="picture.icon_word"></image>
-									<p>item.file_name</p>
+									<p>{{item.file_name}}</p>
 									<button type="default"
 										@tap="downloadFile(item.photo_url, item.file_name)">点击下载</button>
 								</view>
-								<view class="diagram" v-for="item in information.ProjectPhoto" v-else>
-									<image :src="item.photo_url" mode="widthFix"></image>
-								</view>
+							</view>
+							<view class="diagram" v-for="item in information.ProjectPhoto" v-else>
+								<image :src="item.photo_url" mode="widthFix"></image>
 							</view>
 						</view>
 					</view>
 				</view>
-				<view class="interval2"></view>
 			</view>
 
-			<view class="signup">
-				<button type="default" class="but1" :loading="loading" :class="{'on':item.title === '1',}"
-					@click="toggle('bottom')" v-if="isSign===0 && ddl === 0">
-					立即报名</button>
-				<button type="default" class="but1" disabled v-if="isSign===1 && ddl === 0"> 已报名 </button>
-				<button type="default" class="but1" disabled v-if="ddl===1"> 报名结束 </button>
-				<button type="default" class="but2" @click="toggle1('bottom')">
-					<image src="https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/task8.png" mode=""></image>
-					分享
-				</button>
+
+			<view class="home" style="padding-top: 0;">
+				<view class="">
+					<view class="circularmark">
+						<p>商品详情图</p>
+					</view>
+					<view class="markcontent1">
+						<view v-if="hasNoProductPhoto">
+							<view class="diagram" style="font-size: 32rpx;margin: 0 30rpx;">
+								<p>无</p>
+							</view>
+						</view>
+						<view class="diagram" v-for="item in carouselImages" v-else>
+							<image :src="item.PhotoUrl" mode="widthFix"></image>
+						</view>
+					</view>
+				</view>
 			</view>
-			<view>
-				<!-- 底部普通弹窗 -->
-				<uni-popup ref="popup" background-color="#fff" @change="change" style="border-radius: 20rpx;">
-					<view class="popup-content" :class="{ 'popup-height': type === 'left' || type === 'right' }">
+		<view class="interval2"></view>
+	</view>
+
+	<view class="signup" v-if="!loading">
+		<button type="default" class="but1" :loading="loading" :class="{'on':item.title === '1',}"
+			@click="toggle('bottom')" v-if="isSign===0 && ddl === 0">
+			立即报名</button>
+		<button type="default" class="but1" disabled v-if="isSign===1 && ddl === 0"> 已报名 </button>
+		<button type="default" class="but1" disabled v-if="ddl===1"> 报名结束 </button>
+		<button type="default" class="but2" @click="toggle1('bottom')">
+			<image src="https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/task8.png" mode=""></image>
+			分享
+		</button>
+	</view>
+	<view>
+		<!-- 底部普通弹窗 -->
+		<uni-popup ref="popup" background-color="#fff" @change="change" style="border-radius: 20rpx;">
+			<view class="popup-content" :class="{ 'popup-height': type === 'left' || type === 'right' }">
+				<view class="">
+					<view class="sampledrawing">
+						<image :src="img" style="width: 250rpx;height: 235rpx;margin-top: -9%;margin-left: -3%;"
+							mode="">
+						</image>
+						<view class="samplecharacter">
+							<p>{{information.project_name}}</p>
+						</view>
+					</view>
+					<!-- 商品价值及任务形式 -->
+					<view
+						style="display: flex;align-items: center;justify-content: space-between;margin-bottom: 50rpx;">
+						<view style="font-size: 32rpx;">
+							<p>商品价值:{{information.Product.ProductPrice}}元</p>
+						</view>
+						<view style="margin-right: 20rpx;font-size: 32rpx;">
+							<p>任务形式:{{information.project_form}}</p>
+						</view>
+					</view>
+					<view class="">
+						<!-- <h3>产品规格</h3> -->
 						<view class="">
-							<view class="sampledrawing">
-								<image :src="img" style="width: 250rpx;height: 235rpx;margin-top: -9%;margin-left: -3%;"
-									mode="">
-								</image>
-								<view class="samplecharacter">
-									<p>{{information.project_name}}</p>
-								</view>
-							</view>
-							<!-- 商品价值及任务形式 -->
-							<view
-								style="display: flex;align-items: center;justify-content: space-between;margin-bottom: 50rpx;">
-								<view style="font-size: 30rpx;">
-									<p>商品价值:{{information.Product.ProductPrice}}元</p>
-								</view>
-								<view style="margin-right: 20rpx;font-size: 30rpx;">
-									<p>任务形式:{{information.project_form}}</p>
-								</view>
-							</view>
-							<view class="">
-								<!-- <h3>产品规格</h3> -->
-								<view class="">
-									<uni-data-checkbox mode="tag" v-model="value" :localdata="sex">
-									</uni-data-checkbox>
+							<uni-data-checkbox mode="tag" v-model="value" :localdata="sex">
+							</uni-data-checkbox>
+						</view>
+					</view>
+					<view class="" style=";margin-bottom: 50rpx; ">
+						<p style="font-size: 32rpx;">合作选择(平台账号不达标不能选择)</p>
+						<view class="tip_box" style="margin-top: 0;" v-if="showWarning">
+							<view class="container"
+								style="margin-right: 300rpx;background-color: #f24632;border-radius: 10rpx">
+								<view class="tips">
+									<p style="font-size: 24rpx;color: #fff">请选择合作方式</p>
 								</view>
 							</view>
-							<view class="" style=";margin-bottom: 50rpx; ">
-								<p style="font-size: 30rpx;">合作选择(平台账号不达标不能选择)</p>
-								<view class="tip_box" style="margin-top: 0;" v-if="showWarning">
-									<view class="container"
-										style="margin-right: 300rpx;background-color: #f24632;border-radius: 10rpx">
-										<view class="tips">
-											<p style="font-size: 24rpx;color: #fff">请选择合作方式</p>
+						</view>
+						<view id="coop_box" v-if="hackReset">
+							<view v-for="item in coop_choice" :key="item.strategy_id">
+								<view class="coop_box_btn" :class="strategy_id===item.strategy_id?'borderColor':''"
+									@click="handleCoopClick(item)">
+									<p>粉丝量:{{item.show_followers_low}}-{{item.show_followers_up}}</p>
+									<view style="display: flex;align-items: center;justify-content: center;">
+										<p>稿费:{{item.fee_form_t}}</p>
+										<view v-if="item.fee_form===3">
+											<input class="offer_input" type="number" placeholder="请输入"
+												v-model="item.offer" />
+										</view>
+										<view v-if="item.fee_form===3">
+											<p>元</p>
 										</view>
 									</view>
 								</view>
-								<view id="coop_box" v-if="hackReset">
-									<view v-for="item in coop_choice" :key="item.strategy_id">
-										<view class="coop_box_btn"
-											:class="strategy_id===item.strategy_id?'borderColor':''"
-											@click="handleCoopClick(item)">
-											<p>粉丝量:{{item.show_followers_low}}-{{item.show_followers_up}}</p>
-											<view style="display: flex;align-items: center;justify-content: center;">
-												<p>稿费:{{item.fee_form_t}}</p>
-												<view v-if="item.fee_form===3">
-													<input class="offer_input" type="number" placeholder="请输入"
-														v-model="item.offer" />
-												</view>
-												<view v-if="item.fee_form===3">
-													<p>元</p>
-												</view>
-											</view>
-										</view>
 
-										<view class="tip_box" v-if="item.showWarning">
-											<view class="container"
-												style="margin-right: 200rpx;background-color: #f24632;border-radius: 10rpx">
-												<view class="tips">
-													<p style="font-size: 24rpx;color: #fff">
-														{{item.warningText}}
-													</p>
-												</view>
-											</view>
+								<view class="tip_box" v-if="item.showWarning">
+									<view class="container"
+										style="margin-right: 200rpx;background-color: #f24632;border-radius: 10rpx">
+										<view class="tips">
+											<p style="font-size: 24rpx;color: #fff">
+												{{item.warningText}}
+											</p>
 										</view>
 									</view>
 								</view>
 							</view>
-							<view class="butto">
-								<button class="mini-btn1" size="mini" @tap="Reset"
-									style="background-color: #FFFFFF;margin-right: 50rpx;">更新账号信息</button>
-								<button class="mini-btn2" size="mini" @tap="determine"
-									style="background-color: #f2d22d;">立即报名</button>
-							</view>
 						</view>
 					</view>
-				</uni-popup>
+					<view class="butto">
+						<button class="mini-btn1" size="mini" @tap="Reset"
+							style="background-color: #FFFFFF;margin-right: 50rpx;">更新账号信息</button>
+						<button class="mini-btn2" size="mini" @tap="determine"
+							style="background-color: #f2d22d;">立即报名</button>
+					</view>
+				</view>
 			</view>
-			<view>
-				<!-- 底部普通弹窗 -->
-				<uni-popup ref="popup1" background-color="#fff" @change="change" style="border-radius: 20rpx;">
-					<view class="popup-content1" :class="{ 'popup-height': type === 'left' || type === 'right' }">
-						<view
-							style="display: flex; justify-content: space-around; margin-top: 10% ;margin-bottom: 3% ;">
-							<view>
-								<button class="tii2" data-name="shareBtn" open-type="share">
-									<view class="circular" style="margin-top: 10% ;">
-										<image src="https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/taskw.png"
-											mode=""></image>
-									</view>
-									<p class="tii">发送给朋友</p>
-								</button>
+		</uni-popup>
+	</view>
+	<view>
+		<!-- 底部普通弹窗 -->
+		<uni-popup ref="popup1" background-color="#fff" @change="change" style="border-radius: 20rpx;">
+			<view class="popup-content1" :class="{ 'popup-height': type === 'left' || type === 'right' }">
+				<view style="display: flex; justify-content: space-around; margin-top: 10% ;margin-bottom: 3% ;">
+					<view>
+						<button class="tii2" data-name="shareBtn" open-type="share">
+							<view class="circular" style="margin-top: 10% ;">
+								<image src="https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/taskw.png" mode="">
+								</image>
 							</view>
-							<view>
-								<button class="tii2" @click="toggle2('center')">
-									<view class="circular" style="margin-top: 10% ;">
-										<image src="https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/taske.png"
-											mode=""></image>
-									</view>
-									<p class="tii">生成分享码</p>
-								</button>
+							<p class="tii">发送给朋友</p>
+						</button>
+					</view>
+					<view>
+						<button class="tii2" @click="toggle2('center')">
+							<view class="circular" style="margin-top: 10% ;">
+								<image src="https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/taske.png" mode="">
+								</image>
 							</view>
-						</view>
-
-						<button type="default" class="errar" @click="cancel()">取消</button>
+							<p class="tii">生成分享码</p>
+						</button>
 					</view>
-				</uni-popup>
+				</view>
+
+				<button type="default" class="errar" @click="cancel()">取消</button>
 			</view>
+		</uni-popup>
+	</view>
 
-			<uni-popup ref="popup2" class="share1" background-color="#fff" @change="change">
-				<view class="popup-content">
-					<image :src="canvasUrl" mode="widthFix" style="width: 300px;height: 420px;margin-top: 30rpx;">
-					</image>
-					<mosoweCanvas ref="mosoweCanvasComponents" @canvasImage="_canvasImage" :lists="lists" height="420"
-						width="300" imgType="png" />
+	<uni-popup ref="popup2" class="share1" background-color="#fff" @change="change">
+		<view class="popup-content">
+			<image :src="canvasUrl" mode="widthFix" style="width: 300px;height: 420px;margin-top: 30rpx;">
+			</image>
+			<mosoweCanvas ref="mosoweCanvasComponents" @canvasImage="_canvasImage" :lists="lists" height="420"
+				width="300" imgType="png" />
 
-					<view class="" style="text-align: center;margin: 5% 0;">
-						<button class="butmin" size="mini" @tap="saveImage">保存</button>
-					</view>
-				</view>
-			</uni-popup>
+			<view class="" style="text-align: center;margin: 5% 0;">
+				<button class="butmin" size="mini" @tap="saveImage">保存</button>
+			</view>
 		</view>
+	</uni-popup>
+	</view>
 	</view>
 </template>
 
@@ -314,7 +300,6 @@
 	import mvBar from "@/components/mys_navBar/mysNavBar";
 	import zSwiper from '@/components/z-swiper/index.vue'; // npm安装
 	import {
-		getQueryString,
 		fansview,
 		money
 	} from '@/components/utils.js';
@@ -342,6 +327,7 @@
 			return {
 				coopStrategy: "点击报名后显示",
 				navH: getApp().globalData.navHeight,
+				picture: getApp().globalData.picture,
 				canvasUrl: '',
 				hackReset: true,
 				showWarning: false,
@@ -351,11 +337,6 @@
 
 				hasNoProjectPhoto: false,
 				briefType: '',
-				picture: {
-					icon_copy: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-copy.png',
-					icon_word: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-word.png',
-					icon_pdf: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-pdf.png',
-				},
 				ddl: "",
 				loading: true,
 				isSign: 0,
@@ -489,7 +470,7 @@
 				// 指示器样式
 				mode: 'circle',
 				indicatorPos: 'bottomCenter',
-				carousel_images: ['https://img2.baidu.com/it/u=2141851239,1037607188&fm=26&fmt=auto&gp=0.jpg',
+				carouselImages: ['https://img2.baidu.com/it/u=2141851239,1037607188&fm=26&fmt=auto&gp=0.jpg',
 					'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/home1.png',
 				],
 				dotIndex: 0, //指示器索引
@@ -541,6 +522,7 @@
 				codeImg: '',
 				queryAll: '',
 				token: '',
+				hasNoProductPhoto: true,
 			};
 		},
 		onShareAppMessage(res) {
@@ -757,7 +739,7 @@
 				let that = this
 				wx.previewImage({
 					current: item, // 当前显示图片的http链接
-					urls: that.carousel_images // 需要预览的图片http链接列表
+					urls: that.carouselImages // 需要预览的图片http链接列表
 				})
 			},
 			handleCoopClick(value) {
@@ -788,10 +770,10 @@
 					this.projectid
 				).then(res => {
 					if (res.data.code === 0) {
-						console.log("res: ", res)
 						this.information = res.data.data
 						this.hasNoProjectPhoto = this.information.ProjectPhoto === null ? true : false;
 						if (!this.hasNoProjectPhoto) {
+							console.log("num: ", this.information.ProjectPhoto.length)
 							for (let i = 0; i < this.information.ProjectPhoto.length; ++i) {
 								let url = this.information.ProjectPhoto[i].photo_url
 								this.briefType = url.split('.').pop()
@@ -816,13 +798,15 @@
 							.Product
 							.ProductType) - 1].label
 						// 轮播图、详情图
-						this.carousel_images = []
+						this.carouselImages = []
 						// this.product_detail_images = []
 						for (let i = 0; i < this.information.Product.ProductPhoto.length; i++) {
 							if (this.information.Product.ProductPhoto[i].Symbol != 3) {
-								this.carousel_images.push(this.information.Product.ProductPhoto[i].PhotoUrl)
+								this.carouselImages.push(this.information.Product.ProductPhoto[i])
 							}
 						}
+						this.hasNoProductPhoto = this.carouselImages.length === 0 ? true : false
+						
 						// 任务数量
 						this.information.taskNum = 0
 						for (let j = 0; j < this.information.RecruitStrategy.length; j++) {
@@ -1103,12 +1087,12 @@
 					this.strategy.offer = parseInt(this.strategy.offer)
 					this.strategy.showOffer = money(this.strategy.offer)
 					var data = {
-							projectid: this.projectid,
-							information: this.information,
-							account: this.account[0].account_id,
-							strategy: this.strategy,
-						},
-						data = JSON.stringify(data)
+						projectid: this.projectid,
+						information: this.information,
+						account: this.account[0].account_id,
+						strategy: this.strategy,
+					}
+					data = JSON.stringify(data)
 					console.log("data")
 					console.log(data)
 					uni.navigateTo({
@@ -1231,6 +1215,10 @@
 		font-size: 24rpx;
 	}
 
+	p {
+		font-size: 32rpx;
+	}
+
 	#coop_box {
 		// display: flex;
 		margin-top: 15rpx;
@@ -1244,7 +1232,7 @@
 		// width: 700rpx;
 		background-color: #f4f4f4;
 		border-radius: 15rpx;
-		font-size: 30rpx;
+		font-size: 32rpx;
 		text-align: center;
 		cursor: pointer;
 		margin: 40rpx 0;
@@ -1559,12 +1547,12 @@
 	}
 
 	.tasksleft p {
-		font-size: 30rpx;
+		font-size: 32rpx;
 		text-align: center;
 	}
 
 	.tasksright p {
-		font-size: 30rpx;
+		font-size: 32rpx;
 		text-align: center;
 	}
 
@@ -1616,12 +1604,11 @@
 
 	.markcontent p {
 		font-size: 24rpx;
+		margin: 10rpx 0;
 	}
 
 	.markcontent span {
 		font-size: 24rpx;
-		// color: #333333;
-		// margin: 3% ;
 	}
 
 	.interval2 {
@@ -1806,7 +1793,7 @@
 		width: 270rpx;
 		line-height: 70rpx;
 		margin: 10rpx 0;
-		font-size: 30rpx;
+		font-size: 32rpx;
 		// box-shadow: 0rpx 0rpx 0rpx 5rpx #f2d22d;
 		border: 1rpx solid #f2d22d !important;
 	}
@@ -1816,7 +1803,7 @@
 		width: 350rpx;
 		line-height: 70rpx;
 		margin: 10rpx 0;
-		font-size: 30rpx;
+		font-size: 32rpx;
 		background-color: #f2d22d;
 		// box-shadow: 0rpx 0rpx 0rpx 5rpx #f2d22d;
 	}
@@ -2017,4 +2004,4 @@
 		flex-direction: column;
 		align-items: center;
 	}
-</style>
+</style>

+ 252 - 0
page_workspace/selection/assignment/upload.vue

@@ -0,0 +1,252 @@
+<template>
+	<view style="position: relative;">
+		<!-- 胶囊 -->
+		<mvBar :mysNavConfig="mysNavConfig"></mvBar>
+		<view :style="{marginTop:navH}"></view>
+		<view>
+			<view style="margin: 40rpx;font-size: 32rpx">
+				<p style="margin-bottom: 20rpx;">上传链接</p>
+				<textarea v-model="link_url" style="height: 50px;width: 100%;"
+					placeholder="请上传正确链接~" />
+			</view>
+
+			<view style="margin: 0 40rpx;">
+				<p style="margin-bottom: 20rpx;">上传作业数据截图</p>
+				<htz-image-upload :max="1" mediaType="image" name="file" :chooseNum="1" v-model="imageData"
+					@chooseSuccess="ceshiChooseSuccess1">
+				</htz-image-upload>
+				<p style="height: 50px;font-size: 32rpx;width: 100%;color: #808090;">上传作业数据截图(直播任务请上传销量截图)
+				</p>
+			</view>
+
+			<view class="signup">
+				<button type="default" class="but1" @click="submit()">
+					提交作业</button>
+			</view>
+		</view>
+
+		<!-- 		<view v-if="onlyShow">
+			<view style="margin: 20rpx;">
+				<p>{{link_url}}</p>
+				<view>
+					<image :src="imageData" mode="scaleToFill"></image>
+				</view>
+			</view>
+		</view> -->
+	</view>
+</template>
+
+<script>
+	import mvBar from "@/components/mys_navBar/mysNavBar";
+	import htzImageUpload from '@/components/htz-image-upload/htz-image-upload.vue';
+	import getPolicyEncode from '@/components/obs/getPolicy.js';
+	import getSignature from '@/components/obs/GetSignature.js';
+	export default {
+		components: {
+			mvBar,
+			htzImageUpload,
+		},
+		data() {
+			return {
+				onlyShow: false,
+				navH: getApp().globalData.navHeight,
+				taskId: "",
+				link_url: "",
+				imageData: [],
+				assignmentStatus: "",
+				mysNavConfig: {
+					/* 开启单页显示首页图标 */
+					isHome: true,
+					/* 固定导航  */
+					navFixed: true,
+					/* 标题 (屏幕中心居中 两边图标中心居中使用slot center1) */
+					navTitle: {
+						text: "上传作业",
+						color: "",
+						fontSize: "32rpx", // px upx rpx
+						fontWeight: "normal", // 100 - 700
+					},
+					btnType: "type2",
+					onLeftClick: '',
+					/* type2 按钮 */
+					type2Config: {
+						// 左图标
+						leftPath: "/static/img/png2.png",
+						// 右图标
+						rightPath: "/static/img/png4.png",
+						// 圆角
+						radius: "40rpx",
+					},
+				},
+			}
+		},
+
+		onLoad(options) {
+			let data = options.textObj.replace(/""/g, "");
+			data = JSON.parse(decodeURIComponent(data))
+			this.taskId = data.taskId
+			this.assignmentStatus = data.assignmentStatus
+		},
+		methods: {
+			submit() {
+				// 校验
+				// if (this.link_url != "" && (this.link_url.substring(0, 8) != "https://" && this.link_url.substring(0, 7) !=
+				// 		"http://")) {
+				// 	uni.showToast({
+				// 		title: '请输入正确的发布链接',
+				// 		icon: 'none'
+				// 	})
+				// 	return
+				// }
+				if (this.imageData.length == 0) {
+					uni.showToast({
+						title: '请上传收录/发布截图',
+						icon: 'none'
+					})
+					return
+				}
+				let that = this
+				uni.showModal({
+					title: '提示',
+					content: '提交后无法修改并进行审核,确认提交?',
+					success: async function(res) {
+						if (res.confirm) {
+							// 调用添加链接接口
+							await that.addAssignmentApi()
+							uni.navigateBack()
+						} else if (res.cancel) {
+							console.log('用户点击取消');
+						}
+					}
+				});
+			},
+
+			addAssignmentApi() {
+				return this.$https.post('/youngee/c/api/t/assignment/add', {
+						task_id: this.taskId,
+						link_url: this.link_url,
+						photo_url: this.imageData[0],
+					})
+					.then(res => {})
+			},
+
+			ceshiChooseSuccess1(tempFilePaths, e) { //选择图片返回
+				console.log('ceshiChooseSuccess', tempFilePaths, e);
+				if (e == 0) {
+					this.store = 'talent_upload/' + this.guid() + '.png'
+				} else if (e == 1) {
+					this.store = 'talent_upload/' + this.guid() + '.mp4'
+				}
+				/****************
+				以下代码是自定义上传逻辑,仅供参考
+				***************/
+				this.imgUpload1(tempFilePaths);
+				/*******************************/
+				console.log("imgdata" + this.imageData)
+			},
+			imgUpload1(tempFilePaths) {
+				let that = this
+				console.log('imgUpload', tempFilePaths)
+				let config = {
+					AccessKeyId: 'IVW21DTGIIUBBAGXKK0Y', //AK
+					SecretKey: 'Y01nEQNcLOATMw7uJwrk3yOdQZ2fqLhSnXcOKVDE', //SK
+					EndPoint: 'https://horastar.obs.cn-east-3.myhuaweicloud.com', //上传文件的路径
+				};
+				let fileName = this.store; //指定上传到OBS桶中的对象名
+				// let fileName = "talent_upload/icon-arrow-right.png"
+				let OBSPolicy = { //设定policy内容
+					"expiration": "2089-12-31T12:00:00.000Z",
+					"conditions": [{
+							"bucket": "horastar"
+						}, //Bucket name
+						// {"bucket": "goin"}, 
+						{
+							'key': fileName
+						}
+					]
+				}
+
+				let policyEncoded = getPolicyEncode(OBSPolicy); //计算policy编码值
+				let signature = getSignature(policyEncoded, config.SecretKey); //计算signature 
+				uni.uploadFile({
+					//url: config.EndPoint,
+					url: config.EndPoint,
+					filePath: tempFilePaths[0],
+					name: 'file',
+
+					formData: {
+						'AccessKeyID': config.AccessKeyId,
+						'policy': policyEncoded,
+						'signature': signature,
+						'key': fileName,
+					},
+
+					success: function(res) {
+						console.log(res.statusCode); //打印响应状态码
+						if (res.statusCode == '204') {
+							that.imageData.push(config.EndPoint + '/' + fileName);
+							console.log('上传图片成功', res)
+							let obs_url = config.EndPoint + '/' + fileName; //用你自己的 bucket 名替换星号
+							console.log(obs_url)
+							// that.formData.home_img = obs_url
+							uni.showToast({
+								title: '上传成功',
+								icon: '成功'
+							});
+						} else {
+							console.log('上传图片失败', res)
+							uni.showToast({
+								title: '上传失败',
+								icon: '失败'
+							});
+						}
+					},
+					fail: function(e) {
+						console.log(e);
+						uni.showToast({
+							title: '上传失败22222',
+							icon: '失败'
+						});
+					}
+				})
+			},
+			guid() {
+				return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
+					var r = Math.random() * 16 | 0,
+						v = c == 'x' ? r : (r & 0x3 | 0x8);
+					return v.toString(16);
+				});
+			},
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+	.signup {
+		box-shadow: 0rpx 5rpx 40rpx #ccc;
+		width: 100%;
+		position: fixed;
+		bottom: 0rpx;
+		display: flex;
+		height: 90rpx;
+		padding-top: 2%;
+		background-color: #FFFFFF;
+	}
+
+	.but1 {
+		width: 60%;
+		background-color: #f2d22d;
+		border-radius: 20rpx;
+		font-size: 36rpx;
+		line-height: 200%;
+		letter-spacing: 10rpx;
+		font-weight: 500;
+		height: 80%;
+
+		&.on {
+			background-color: #C0C0C0;
+
+		}
+
+	}
+</style>

+ 738 - 5
page_workspace/selection/sectaskdetail.vue

@@ -1,22 +1,755 @@
 <template>
 	<view>
-		
+		<!-- 胶囊 -->
+		<mvBar :mysNavConfig="mysNavConfig"></mvBar>
+		<view :style="{marginTop:navH}"></view>
+
+		<view v-if="!loading">
+			<!-- 任务状态 -->
+			<view style="padding-bottom: 30rpx;margin: 0 30rpx">
+				<view style="display: flex;justify-content: center;font-size: 44rpx;padding-bottom: 20rpx;">
+					<p>{{msg1}}</p>
+					<view class="upload-btn" v-if="isShowUpload" @click="toUpload()" key="0">
+						<image src="../../static/img/icon-upload.png" style="height: 40rpx;width: 40rpx;"></image>
+						<p style="font-size: 28rpx;">快速上传</p>
+					</view>
+				</view>
+				<view style="display: flex;justify-content: center;font-size: 24rpx;color: #999999;text-align:center">
+					<p>{{msg2}}</p>
+				</view>
+			</view>
+
+			<view class="address">
+				<view class="address_icon">
+					<image style="width: 50rpx;height: 50rpx;" :src="picture.icon_loc" mode="">
+					</image>
+				</view>
+				<view style="width: 70%;">
+					<view style="display: flex;">
+						<p class='ipon' style="padding-right: 100rpx;">{{address.receiver_name}}</p>
+						<p class='ipon'>{{address.phone_number}}</p>
+					</view>
+					<p class='ipon'>{{address.full_detail_addr}}</p>
+				</view>
+				<view class="address_edit" @click="editAddress()" v-if="task.task_stage < 4">
+					<image :src="picture.icon_edit" mode="">
+					</image>
+				</view>
+			</view>
+
+			<view class="basicInfo">
+				<view class="tpc-txt1">
+					<image :src="product.PhotoUrl" style="width: 150rpx;height: 150rpx;" mode="">
+					</image>
+					<view class="basicInfo_txt">
+						<p style="font-size: 30rpx;">{{project.selection_name}}</p>
+						<p>售价:¥{{project.show_estimated_cost}} &nbsp;&nbsp;&nbsp;&nbsp;
+							佣金:{{project.commission_rate}}%</p>
+						<p v-if="project.task_mode === 1">额外悬赏:¥{{project.show_task_reward}}</p>
+					</view>
+				</view>
+				<view class="tpc-txt2" @click="toTaskDeatail()">
+					<p>查看</p>
+					<image class="tpc-icon" :src="picture.icon_right"></image>
+				</view>
+			</view>
+
+			<view class="pipline" v-if="task.task_mode == 1 && task.sample_mode == 1">
+				<image :src="picture.icon_mianfeichunyong"></image>
+			</view>
+			<view class="pipline" v-if="task.task_mode == 2 && task.sample_mode == 1">
+				<image :src="picture.icon_mianfeixuanshang"></image>
+			</view>
+			<view class="pipline" v-if="task.task_mode == 1 && task.sample_mode == 2">
+				<image :src="picture.icon_dianfuchunyong"></image>
+			</view>
+			<view class="pipline" v-if="task.task_mode == 2 && task.sample_mode == 2">
+				<image :src="picture.icon_dianfuxuanshang"></image>
+			</view>
+			<view class="pipline" v-if="task.task_mode == 1 && task.sample_mode == 3">
+				<image :src="picture.icon_wuyangchunyong"></image>
+			</view>
+			<view class="pipline" v-if="task.task_mode == 2 && task.sample_mode == 3">
+				<image :src="picture.icon_wuyangxuanshang"></image>
+			</view>
+
+			<view class="task-progress">
+				<view class="task-progress-card"
+					v-bind:style="task.task_stage == 3 || task.task_stage == 5 || task.task_stage == 6 ? 'background-color: #f2d241' : ''">
+					<view class="tpc-txt1">
+						<p>报名信息</p>
+					</view>
+					<view class="tpc-txt2" @click="toApplyinfo()">
+						<p>查看</p>
+						<image class="tpc-icon" :src="picture.icon_right"></image>
+					</view>
+				</view>
+				<view class="task-progress-card" v-if="task.task_stage >= 7"
+					v-bind:style="task.task_stage == 7 ? 'background-color: #f2d241' : ''">
+					<view class="tpc-txt1">
+						<p>物流信息</p>
+					</view>
+					<view class="tpc-txt2" @click="toLogisticsinfo()">
+						<p>查看</p>
+						<image class="tpc-icon" :src="picture.icon_right"></image>
+					</view>
+				</view>
+				<view class="task-progress-card" v-if="task.task_stage >= 8"
+					v-bind:style="task.task_stage == 8 ? 'background-color: #f2d241' : ''">
+					<view class="tpc-txt1">
+						<p>上传作业</p>
+					</view>
+					<view class="tpc-txt2" @click="toUpload()" v-if="task.task_stage == 8">
+						<p style="color: red;">待添加</p>
+						<image class="tpc-icon" :src="picture.icon_right"></image>
+					</view>
+					<view class="tpc-txt2" @click="toAssignmentRecord()" v-if="task.task_stage > 8">
+						<p>查看</p>
+						<image class="tpc-icon" :src="picture.icon_right"></image>
+					</view>
+				</view>
+
+				<view class="task-progress-card" v-if="task.task_stage === 9 || task.task_stage === 10"
+					style="background-color: #f2d241">
+					<view class="tpc-txt1" v-if="task.task_stage === 9">
+						<p>待结算</p>
+					</view>
+					<view class="tpc-txt1" v-if="task.task_stage === 10">
+						<p>已结束</p>
+					</view>
+					<view class="tpc-txt2" v-if="withdrawStatus == 1">
+						<!-- <p>前往提现</p>
+						<image class="tpc-icon" :src="picture.icon_right"></image> -->
+					</view>
+					<view class="tpc-txt2" @click="toWithdraw()" v-if="withdrawStatus == 2">
+						<p>前往提现</p>
+						<image class="tpc-icon" :src="picture.icon_right"></image>
+					</view>
+					<view class="tpc-txt2" v-if="withdrawStatus == 3">
+						<p>提现中</p>
+						<image class="tpc-icon" :src="picture.icon_right"></image>
+					</view>
+					<view class="tpc-txt2" v-if="withdrawStatus == 4">
+						<p>已提现</p>
+						<image class="tpc-icon" :src="picture.icon_right"></image>
+					</view>
+				</view>
+				<view class="task-progress-info">
+					<view style="padding: 10rpx 0;">
+						<p>任务ID:{{task.task_id}}
+							<image :src="picture.icon_copy" mode="" class="copy-img"
+								@click="handleCopy(task.task_id)" />
+						</p>
+					</view>
+					<view style="padding: 10rpx 0;">
+						<p>报名时间:{{task.create_date}}</p>
+					</view>
+					<view v-if="task.task_stage > 1 && task.task_stage != 3" style="padding: 10rpx 0;">
+						<p>确认合作:{{task.select_date}}</p>
+					</view>
+					<view v-for="(item,index) in taskLogs" style="padding: 10rpx 0;">
+						<p>{{item.content}}:{{item.log_at}}</p>
+					</view>
+				</view>
+			</view>
+
+			<view class="block"></view>
+			<view class="submit" v-if="task.task_stage === 10 && withdrawStatus == 2">
+				<button type="default" class="submit_btn" @click="toWithdraw()">
+					前往提现</button>
+			</view>
+		</view>
 	</view>
 </template>
 
 <script>
+	import region from '@/components/pca-code.json';
+	import mvBar from "@/components/mys_navBar/mysNavBar";
+	import {
+		fansview,
+		money
+	} from '@/components/utils.js';
 	export default {
+		components: {
+			mvBar
+		},
 		data() {
 			return {
-				
+				navH: getApp().globalData.navHeight,
+				picture: getApp().globalData.picture,
+				mysNavConfig: {
+					isHome: false,
+					/* 固定导航  */
+					navFixed: true,
+					/* 标题 (屏幕中心居中 两边图标中心居中使用slot center1) */
+					navTitle: {
+						text: "选品任务详情",
+						color: "",
+						fontSize: "32rpx", // px upx rpx
+						fontWeight: "", // 100 - 700
+					},
+					btnType: "type2",
+					onLeftClick: '',
+					/* type2 按钮 */
+					type2Config: {
+						// 左图标
+						leftPath: "https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/png2.png",
+						// 右图标
+						rightPath: "https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/png4.png",
+						// 圆角
+						radius: "40rpx",
+					},
+				},
+
+				infoMsg1: [
+					"等待企业确认合作",
+					"等待企业确认合作",
+					"等待企业确认合作",
+					"恭喜任务申请成功!",
+					"任务申请失败",
+					"等待发货中",
+					"商家已发货",
+					"等待上传作业",
+					"待结算",
+					"已结案",
+				],
+				infoMsg2: [
+					"商家将在申请截止后5天内审核完毕",
+					"商家将在申请截止后5天内审核完毕",
+					"商家将在申请截止后5天内审核完毕",
+					"请仔细查看任务要求和任务详情,开始执行任务吧!",
+					"未达到领样标准,请小主尝试申请其他任务吧",
+					"发货后可在任务进度中查看物流单号",
+					"请在任务进度中查看物流单号",
+					"请仔细查看任务要求,根据要求完成作业,截止时间前上传作业提交后可领取相应的悬赏及返现",
+					"作业提交成功,请等待商家结算。",
+					"本任务已结案,可前往任务大厅查看报名其他任务。",
+				],
+				task_type_info: ["实体商品寄拍", "虚拟产品测评", "线下探店打卡"],
+				isTimeOut: false,
+				isNotShowSubmit: true,
+				isShowUpload: false,
+				loading: true,
+				timeLeft: "",
+				msg1: "",
+				msg2: "",
+				taskId: '',
+				task: {},
+				address: {},
+				project: {},
+				product: {},
+				account: {},
+				strategy: {},
+				taskLogs: [],
+				withdrawStatus: 1,
 			}
 		},
+		async onShow() {
+			this.loading = true;
+			uni.showLoading({
+				title: '加载中'
+			});
+			await this.getTaskInfo();
+			await this.getTaskLogs();
+			this.loading = false;
+			uni.hideLoading();
+		},
+		onLoad(options) {
+			this.taskId = options.taskId
+		},
 		methods: {
-			
+			handleCopy(text) {
+				wx.setClipboardData({
+					data: text.toString(),
+					success: function(res) {
+						console.log("复制成功");
+					}
+				});
+			},
+			getTaskInfo() {
+				return this.$https.get('/youngee/c/t/g/get-sec-task-detail' +
+					"?" +
+					"task_id" +
+					"=" +
+					this.taskId
+				).then(res => {
+					if (res.data.code != 0) {
+						return
+					}
+					const data = res.data.data
+					this.task = data.sec_task_info
+					this.withdrawStatus = data.withdraw_status
+
+					// 地址解析
+					this.address = JSON.parse(this.task.talent_post_addr_snap);
+					let a = this.address.region_code.toString().slice(0, 2)
+					let b = this.address.region_code.toString().slice(0, 4)
+					let c = 0
+					for (var i = 0; i < region.length; i++) {
+						if (region[i].code == a) {
+							a = region[i].name
+							for (var j = 0; j < region[i].children.length; j++) {
+								if (region[i].children[j].code == b) {
+									b = region[i].children[j].name
+									for (var o = 0; o < region[i].children[j].children.length; o++) {
+										if (region[i].children[j].children[o].code == this.address
+											.region_code) {
+											c = region[i].children[j].children[o].name
+										}
+									}
+								}
+
+							}
+						}
+					}
+					this.address.full_detail_addr = a + b + c + this.address.detail_addr
+
+					// 账号信息
+					this.account = JSON.parse(this.task.talent_platform_info_snap);
+					this.account.show_fans_count = fansview(this.account.fans_count)
+
+					// 选品项目信息
+					this.project = data.selection_detail
+					this.project.Product = JSON.parse(this.project.product_snap);
+					this.project.Product.showProductPrice = money(this.project.Product.ProductPrice)
+					this.project.show_estimated_cost = money(this.project.Product.ProductPrice)
+
+					this.project.project_form = this.project.Product.ProductType === 14 ? 3 : 1
+
+					if (this.project.product_photo_snap != '') {
+						let ProductPhoto = JSON.parse(this.project.product_photo_snap);
+						for (let j = 0; j < ProductPhoto.length; ++j) {
+							if (ProductPhoto[j].Symbol == 1) {
+								this.product = ProductPhoto[j]
+							}
+						}
+					}
+
+					this.project.show_task_reward = money(this.project.task_reward)
+					// this.project.show_estimated_cost = money(this.project.estimated_cost)
+
+					// 判断是否显示快速上传按钮
+					if (this.task.task_stage == 8) {
+						this.isShowUpload = true
+					} else {
+						this.isShowUpload = false
+					}
+
+					// 不同任务阶段提示消息
+					this.msg1 = this.infoMsg1[this.task.task_stage - 1]
+					this.msg2 = this.isSpecial ? this.infoMsg3[this.task.task_stage - 1] : this.infoMsg2[this.task
+						.task_stage - 1]
+				})
+			},
+			getTaskLogs() {
+				return this.$https.get('/youngee/c/t/g/get-task-log' +
+					"?" +
+					"task_id" +
+					"=" +
+					this.taskId
+				).then(res => {
+					this.taskLogs = res.data.data
+				})
+			},
+			toUpload() {
+				if (this.task.task_stage == 8) { // 上传作业
+					var data = {
+						taskId: this.taskId,
+						assignmentStatus: this.task.assignment_status
+					};
+					data = JSON.stringify(data)
+					uni.navigateTo({
+						url: '/page_workspace/selection/assignment/upload?textObj=' + encodeURIComponent(data)
+					});
+				}
+			},
+			toScriptRecord() {
+				var data = {
+					taskId: this.task.task_id,
+				};
+				data = JSON.stringify(data)
+				uni.navigateTo({
+					url: '/page_workspace/task/record/scriptrecord?textObj=' + encodeURIComponent(data)
+				});
+			},
+			toTaskDeatail() {
+				uni.navigateTo({
+					url: '/page_selectionsquare/selectiondetail/selectiondetail?id=' + this.project.selection_id
+				});
+			},
+			toApplyinfo() {
+				var data = {
+					account: this.account,
+				};
+				data = JSON.stringify(data)
+				uni.navigateTo({
+					url: '/page_workspace/task/information/applyInformation?textObj=' + encodeURIComponent(data)
+				});
+			},
+			toLogisticsinfo() {
+				var data = {
+					address: this.address,
+					taskId: this.task.task_id,
+					projectForm: this.project.project_form
+				};
+				data = JSON.stringify(data)
+				uni.navigateTo({
+					url: '/page_workspace/task/information/deliveryInformation?textObj=' + encodeURIComponent(data)
+				});
+			},
+			editAddress() {
+				var data = {
+					address: this.address,
+					taskId: this.task.task_id,
+				};
+				data = JSON.stringify(data)
+				uni.navigateTo({
+					url: '/page_workspace/task/editaddress?textObj=' + encodeURIComponent(data)
+				});
+			},
+			// 计算结束时间
+			thistime(val) {
+				// 转换格式
+				var beginTime = new Date(val.replace(/-/g, "/"));
+				// 当前时间
+				var thisTime = new Date();
+				// 相减
+				var dateMiss = beginTime.getTime() - thisTime.getTime();
+				this.isTimeOut = dateMiss < 0 ? true : false
+				dateMiss = dateMiss < 0 ? -dateMiss : dateMiss
+				// 天数
+				var day = Math.floor(dateMiss / (24 * 3600 * 1000));
+				// 减去天数剩下的毫秒数
+				var backOne = dateMiss % (24 * 3600 * 1000);
+				// 小时数
+				var hours = Math.floor(backOne / (3600 * 1000));
+				// 减去小时数剩下的毫秒数
+				var backHour = backOne % (3600 * 1000);
+				// 分钟数
+				var min = Math.floor(backHour / (60 * 1000));
+				var deadline_time = day + '天' + hours + '时' + min + '分'
+				return deadline_time
+			},
+			toWithdraw() {
+				uni.navigateTo({
+					url: '/pages/mycenter/myincome?showTab=1'
+				});
+			},
+			submit() {
+				if (this.task.task_stage == 7) { // 提交脚本
+					let that = this
+					uni.showModal({
+						title: '提示',
+						content: '提交后无法修改并进行审核,确认提交?',
+						success: function(res) {
+							if (res.confirm) {
+								that.$https.get('/youngee/c/t/g/submit-task-script' +
+										"?" +
+										"task_id" +
+										"=" +
+										that.task.task_id)
+									.then(res => {
+										console.log(res)
+										uni.navigateBack()
+									})
+							} else if (res.cancel) {
+								console.log('用户点击取消');
+							}
+						}
+					});
+				} else if (this.task.task_stage == 9) { // 提交初稿
+					let that = this
+					uni.showModal({
+						title: '提示',
+						content: '提交后无法修改并进行审核,确认提交?',
+						success: function(res) {
+							if (res.confirm) {
+								that.$https.get('/youngee/c/t/g/submit-task-sketch' +
+										"?" +
+										"task_id" +
+										"=" +
+										that.task.task_id)
+									.then(res => {
+										console.log(res)
+										uni.navigateBack()
+									})
+							} else if (res.cancel) {
+								console.log('用户点击取消');
+							}
+						}
+					});
+				} else if (this.task.task_stage == 11) { // 提交链接
+					let that = this
+					uni.showModal({
+						title: '提示',
+						content: '提交后无法修改并进行审核,确认提交?',
+						success: function(res) {
+							if (res.confirm) {
+								that.$https.get('/youngee/c/t/g/submit-task-link' +
+										"?" +
+										"task_id" +
+										"=" +
+										that.task.task_id)
+									.then(res => {
+										console.log(res)
+										uni.navigateBack()
+									})
+							} else if (res.cancel) {
+								console.log('用户点击取消');
+							}
+						}
+					});
+				} else if (this.task.task_stage == 13) { // 提交数据
+					let that = this
+					uni.showModal({
+						title: '提示',
+						content: '提交后无法修改并进行审核,确认提交?',
+						success: function(res) {
+							if (res.confirm) {
+								that.$https.get('/youngee/c/t/g/submit-task-data' +
+										"?" +
+										"task_id" +
+										"=" +
+										that.task.task_id)
+									.then(res => {
+										console.log(res)
+										uni.navigateBack()
+									})
+							} else if (res.cancel) {
+								console.log('用户点击取消');
+							}
+						}
+					});
+				}
+			}
 		}
 	}
 </script>
 
-<style>
 
-</style>
+<style lang="scss" scoped>
+	text {
+		font-size: 12px;
+	}
+
+	.basicInfo {
+		display: flex;
+		align-items: center;
+		justify-content: center;
+		margin-top: 20rpx;
+		padding: 20rpx;
+		font-size: 30rpx;
+		background-color: #FFFFFF;
+
+		.basicInfo_txt {
+			margin-left: 40rpx;
+			// padding-top: 20rpx;
+		}
+
+		.tpc-txt1 {
+			display: flex;
+			justify-content: flex-start;
+			// margin-left: 20rpx;
+
+		}
+
+		.tpc-txt2 {
+			display: flex;
+			align-items: center;
+			justify-content: flex-end;
+			padding-right: 10rpx;
+			// margin-right: 20rpx;
+			flex: 1;
+
+			.tpc-icon {
+				width: 30rpx;
+				height: 30rpx;
+			}
+		}
+	}
+
+	.upload-btn {
+		display: flex;
+		align-items: center;
+		justify-content: center;
+		background-color: #f2d241;
+		border-radius: 10rpx;
+		padding: 5rpx;
+		margin-left: 20rpx;
+		cursor: pointer;
+	}
+
+	.address {
+		display: flex;
+		margin: 20rpx 0;
+		// padding: 20rpx 20rpx;
+		background-color: #FFFFFF;
+		justify-content: space-around;
+		align-items: center;
+
+		.address_icon {
+			width: 15%;
+			vertical-align: middle;
+			display: flex;
+			justify-content: center;
+		}
+
+		.address_edit {
+			width: 15%;
+		}
+
+		.address_edit image {
+			vertical-align: middle;
+			width: 50rpx;
+			height: 50rpx;
+			display: inline-block;
+			padding-right: 14rpx;
+		}
+
+		.ipon {
+			color: #333333;
+			font-size: 30rpx;
+			margin-bottom: 10rpx;
+		}
+	}
+
+	.keyInfo {
+		padding: 20rpx 20rpx;
+		background-color: #FFFFFF;
+
+		.keyInfo_task {
+			// color: #999999;
+		}
+	}
+
+	.keyInfo h3 {}
+
+	.keyInfo p {
+		font-size: 30rpx;
+	}
+
+	.account {
+		display: flex;
+		align-items: center;
+		// justify-content: space-between;
+		// width: 90%;
+		margin: 20rpx 0;
+		padding: 20rpx 20rpx;
+		background-color: #FFFFFF;
+		font-size: 35rpx;
+
+		.account_txt {
+			display: inline-block;
+			padding: 0 0 0 1%;
+			width: 400rpx;
+		}
+
+		.account_txt image {
+			vertical-align: middle;
+			width: 50rpx;
+			height: 50rpx;
+			display: inline-block;
+			padding-right: 14rpx;
+		}
+
+		.account_fans {
+			display: flex;
+			width: 250rpx;
+		}
+
+		.account_fans p {
+			display: inline-block;
+			color: #333333;
+		}
+
+		.account_btn {}
+	}
+
+	.task-progress {
+		padding: 20rpx;
+
+		.task-progress-card {
+			margin: 15rpx 0;
+			display: flex;
+			align-items: center;
+			// margin: 20rpx;
+			padding: 10rpx;
+			font-size: 30rpx;
+			border-radius: 10rpx;
+
+			.tpc-txt1 {
+				display: flex;
+				justify-content: flex-start;
+				// margin-left: 20rpx;
+
+			}
+
+			.tpc-txt2 {
+				display: flex;
+				align-items: center;
+				justify-content: flex-end;
+				// margin-right: 20rpx;
+				flex: 1;
+
+				.tpc-icon {
+					width: 30rpx;
+					height: 30rpx;
+				}
+			}
+		}
+
+		.task-progress-info {
+			padding: 10rpx;
+			font-size: 30rpx;
+			border-radius: 10rpx;
+			background-color: #f2f2f2;
+		}
+	}
+
+	.block {
+		width: 100%;
+		height: 100rpx;
+		margin-top: 5%;
+	}
+
+	.submit {
+		box-shadow: 0rpx 5rpx 40rpx #ccc;
+		width: 100%;
+		position: fixed;
+		bottom: 0rpx;
+		display: flex;
+		height: 90rpx;
+		padding-top: 2%;
+		background-color: #FFFFFF;
+
+		.submit_btn {
+			width: 60%;
+			background-color: #FCCF41;
+			border-radius: 20rpx;
+			font-size: 36rpx;
+			line-height: 200%;
+			letter-spacing: 10rpx;
+			height: 80%;
+		}
+
+	}
+
+	.line {
+		border-bottom: 1rpx solid #d5d5d5;
+		width: 98%;
+		margin: 10rpx 1%;
+	}
+
+	.pipline {
+		display: flex;
+		align-items: center;
+		justify-content: center;
+		margin: 20rpx;
+		// border: #FCCF41 1rpx dashed;
+	}
+
+	.pipline image {
+		/* width: 600rpx; */
+		height: 150rpx;
+	}
+</style>

+ 7 - 18
page_workspace/task/information/deliveryInformation.vue

@@ -26,22 +26,20 @@
 			<view class="logistics1">
 				<view>
 					<p style="margin-bottom: 10rpx;">物流公司:{{logistics.company_name}}</p>
-					<span style="display: flex;align-items: center;">
-						<p>物流单号:{{logistics.logistics_number}}</p>
-						<image :src="icon_copy" mode="" style="width: 40rpx;height: 40rpx;"
+					<p>物流单号:{{logistics.logistics_number}}
+						<image :src="picture.icon_copy" mode="" class="copy-img"
 							@click="handleCopy(logistics.logistics_number)" />
-					</span>
+					</p>
 				</view>
 			</view>
 		</view>
 
 		<view v-if="projectForm == 2" class="logistics1" style="margin: 0;">
 			<view>
-				<span style="display: flex;align-items: center;">
-					<p>券码信息:{{logistics.coupon_code_information}}</p>
-					<image :src="icon_copy" mode="" style="width: 40rpx;height: 40rpx;"
+				<p>券码信息:{{logistics.coupon_code_information}}
+					<image :src="picture.icon_copy" mode="" class="copy-img"
 						@click="handleCopy(logistics.coupon_code_information)" />
-				</span>
+				</p>
 			</view>
 		</view>
 
@@ -62,8 +60,8 @@
 		},
 		data() {
 			return {
-				icon_copy: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-copy.png',
 				navH: getApp().globalData.navHeight,
+				picture: getApp().globalData.picture,
 				address: {},
 				taskId: "",
 				projectForm: "",
@@ -74,15 +72,6 @@
 					explorestore_starttime: "",
 					explorestore_endtime: ""
 				},
-				picture: {
-					togoimg: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/task16.png',
-					icon_edit: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-edit.png',
-					icon_loc: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-loc.png',
-					icon_right: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-arrow-right.png',
-					home8: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/home8.png',
-					home10: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/home10.png',
-					home11: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/home11.png',
-				},
 				mysNavConfig: {
 					/* 开启单页显示首页图标 */
 					isHome: true,

+ 21 - 87
page_workspace/task/taskdetail.vue

@@ -1,11 +1,9 @@
 <template>
 	<view>
-		<!-- 胶囊 -->
 		<mvBar :mysNavConfig="mysNavConfig"></mvBar>
 		<view :style="{marginTop:navH}"></view>
 
 		<view v-if="!loading">
-			<!-- 任务状态 -->
 			<view style="padding-bottom: 30rpx;margin: 0 30rpx">
 				<view style="display: flex;justify-content: center;font-size: 44rpx;padding-bottom: 20rpx;">
 					<p>{{msg1}}</p>
@@ -59,7 +57,6 @@
 					</image>
 					<view class="basicInfo_txt">
 						<p style="font-size: 30rpx;">{{project.project_name}}</p>
-						<!-- <p style="font-size: 30rpx;">商品价值:{{project.Product.showProductPrice}}元</p> -->
 					</view>
 				</view>
 				<view class="tpc-txt2" @click="toTaskDeatail()">
@@ -67,67 +64,14 @@
 					<image class="tpc-icon" :src="picture.icon_right"></image>
 				</view>
 			</view>
-
-			<!-- <view class="pipline" v-if="!isSpecial">
-				<image :src="picture.icon_whole_pipline"></image>
-			</view>
-			<view class="pipline" v-else>
-				<image :src="picture.icon_special_pipline"></image>
-			</view> -->
 			<view class="pipline" v-if="!isSpecial">
-				<!-- <p>报名任务&nbsp;>&nbsp;商家反选&nbsp;>&nbsp;商家支付&nbsp;>&nbsp;报名成功&nbsp;>&nbsp;寄样&探店约档</p>
-				<p>签收返稿&nbsp;>&nbsp;商家审核&nbsp;>&nbsp;作品发布&nbsp;>&nbsp;返回数据&nbsp;>&nbsp;结案&结算打款</p> -->
 				<image :src="picture.icon_whole_pipline"></image>
 			</view>
 			<view class="pipline" v-else>
-				<!-- <p>报名任务&nbsp;>&nbsp;商家反选&nbsp;>&nbsp;商家支付&nbsp;>&nbsp;报名成功&nbsp;>&nbsp;寄样&探店约档</p>
-				<p>签收返稿&nbsp;>&nbsp;商家审核&nbsp;>&nbsp;作品发布&nbsp;>&nbsp;返回数据&nbsp;>&nbsp;结案&结算打款</p> -->
 				<image :src="picture.icon_special_pipline"></image>
 			</view>
-			<!-- <view class="keyInfo">
-				<view style="margin-bottom: 40rpx;">
-					<p style="font-size: 36rpx;">关键任务信息</p>
-				</view>
-				<view v-if="!isSpecial">
-					<p style="margin-bottom: 10rpx;">合作方式</p>
-					<p>粉丝量:{{strategy.show_followers_low}}-{{strategy.show_followers_up}}
-						&nbsp;&nbsp;
-						稿费:{{strategy.fee_form_t}}
-					</p>
-				</view>
-
-				<view class="line"></view>
-
-				<view style="margin-top: 20rpx;margin-bottom: 10rpx;">
-					<p style="margin-bottom: 10rpx;">社媒平台:</p>
-					<p>{{project.project_platform_t}}</p>
-				</view>
 
-				<view class="line"></view>
-
-				<p style="margin-top: 10rpx;">任务要求</p>
-				<view class="keyInfo_task">
-					<view style="display: flex;align-items: center;margin: 10rpx 0;">
-						<p>内容形式:</p>
-						<p>{{project.content}}</p>
-					</view>
-					<view style="display: flex;align-items: center;margin: 10rpx 0;">
-						<p>任务形式:</p>
-						<p>{{project.project_form_t}}</p>
-					</view>
-					<view style="margin-top: 20rpx;margin-bottom: 10rpx;">
-						<p>商品描述:</p>
-						<text>{{project.Product.ProductDetail}}</text>
-					</view>
-					<view style="margin-top: 20rpx;margin-bottom: 10rpx;">
-						<p>任务详情:</p>
-						<text>{{project.project_detail}}</text>
-					</view>
-				</view>
-			</view>
- -->
 			<view class="task-progress">
-				<!-- <p style="font-size: 32rpx;">任务进度</p> -->
 				<view class="task-progress-card" v-bind:style="task.task_stage == 1 ? 'background-color: #f2d241' : ''">
 					<view class="tpc-txt1">
 						<p>报名信息</p>
@@ -260,26 +204,29 @@
 					<view class="tpc-txt1">
 						<p>已结案</p>
 					</view>
-					<view class="tpc-txt2" @click="toWithdraw()" v-if="task.withdraw_status == 2">
+					<view class="tpc-txt2" v-if="withdrawStatus == 1">
+						<!-- <p>前往提现</p>
+						<image class="tpc-icon" :src="picture.icon_right"></image> -->
+					</view>
+					<view class="tpc-txt2" @click="toWithdraw()" v-if="withdrawStatus == 2">
 						<p>前往提现</p>
 						<image class="tpc-icon" :src="picture.icon_right"></image>
 					</view>
-					<view class="tpc-txt2" v-if="task.withdraw_status == 3">
+					<view class="tpc-txt2" v-if="withdrawStatus == 3">
 						<p>提现中</p>
 						<image class="tpc-icon" :src="picture.icon_right"></image>
 					</view>
-					<view class="tpc-txt2" v-if="task.withdraw_status == 4">
+					<view class="tpc-txt2" v-if="withdrawStatus == 4">
 						<p>已提现</p>
 						<image class="tpc-icon" :src="picture.icon_right"></image>
 					</view>
 				</view>
 				<view class="task-progress-info">
 					<view style="padding: 10rpx 0;">
-						<span style="display: flex;align-items: center;">
-							<p>任务ID:{{task.task_id}}</p>
-							<image :src="picture.icon_copy" mode="" style="width: 40rpx;height: 40rpx;"
-								@click="handleCopy()" />
-						</span>
+						<p>任务ID:{{task.task_id}}
+							<image :src="picture.icon_copy" mode="" class="copy-img"
+								@click="handleCopy(task.task_id)" />
+						</p>
 					</view>
 					<view style="padding: 10rpx 0;">
 						<p>报名时间:{{task.create_date}}</p>
@@ -294,12 +241,7 @@
 			</view>
 
 			<view class="block"></view>
-			<!-- <view class="submit" v-if="task.task_stage >= 7 && task.task_stage <= 14">
-				<button type="default" class="submit_btn" @click="submit()" :disabled="isNotShowSubmit"
-					v-bind:style="isNotShowSubmit ? '' : 'background-color: #f2d241'">
-					确认提交</button>
-			</view> -->
-			<view class="submit" v-if="task.task_stage === 15 && task.withdraw_status == 2">
+			<view class="submit" v-if="task.task_stage === 15 && withdrawStatus == 2">
 				<button type="default" class="submit_btn" @click="toWithdraw()">
 					前往提现</button>
 			</view>
@@ -321,6 +263,7 @@
 		data() {
 			return {
 				navH: getApp().globalData.navHeight,
+				picture: getApp().globalData.picture,
 				isTimeOut: false,
 				isNotShowSubmit: true,
 				isShowUpload: false,
@@ -399,18 +342,6 @@
 				product: {},
 				account: {},
 				strategy: {},
-				picture: {
-					icon_whole_pipline: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-whole-pipline.png',
-					icon_special_pipline: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-special-pipline.png',
-					togoimg: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/task16.png',
-					icon_copy: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-copy.png',
-					icon_edit: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-edit.png',
-					icon_loc: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-loc.png',
-					icon_right: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-arrow-right.png',
-					home8: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/home8.png',
-					home10: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/home10.png',
-					home11: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/home11.png',
-				},
 				task_type_info: ["实体商品寄拍", "虚拟产品测评", "线下探店打卡"],
 				taskLogs: [],
 				mysNavConfig: {
@@ -436,6 +367,7 @@
 						radius: "40rpx",
 					},
 				},
+				withdrawStatus: 1,
 			}
 		},
 		async onShow() {
@@ -456,9 +388,9 @@
 			this.taskId = options.taskId
 		},
 		methods: {
-			handleCopy() {
+			handleCopy(text) {
 				wx.setClipboardData({
-					data: this.task.task_id.toString(),
+					data: text.toString(),
 					success: function(res) {
 						console.log("复制成功");
 					}
@@ -732,8 +664,10 @@
 					"=" +
 					this.taskId
 				).then(res => {
-					console.log(res)
-					this.task = res.data.data.task_info
+					if (res.data.code != 0) return
+					const data = res.data.data
+					this.task = data.task_info
+					this.withdrawStatus = data.withdraw_status
 					this.address = JSON.parse(res.data.data.task_info.talent_post_addr_snap);
 					let a = this.address.region_code.toString().slice(0, 2)
 					let b = this.address.region_code.toString().slice(0, 4)
@@ -1302,4 +1236,4 @@
 		/* width: 600rpx; */
 		height: 150rpx;
 	}
-</style>
+</style>

+ 1 - 1
page_workspace/task/upload/uploaddata.vue

@@ -460,7 +460,7 @@
 					fail: function(e) {
 						console.log(e);
 						uni.showToast({
-							title: '上传失败22222',
+							title: '上传失败',
 							icon: '失败'
 						});
 					}

+ 10 - 10
page_workspace/task/upload/uploadlink.vue

@@ -16,7 +16,7 @@
 			<view style="margin: 40rpx;font-size: 32rpx">
 				<p style="margin-bottom: 20rpx;">上传链接</p>
 				<textarea v-model="link_url" style="height: 50px;width: 100%;"
-					placeholder="请删除中文等其他字符,仅输入https://或http://开头的发布链接,样叽会对此进行质检~" />
+					placeholder="请上传正确发布链接~" />
 			</view>
 
 			<view style="margin: 0 40rpx;">
@@ -131,14 +131,14 @@
 
 			submit() {
 				// 校验
-				if (this.link_url == "" || (this.link_url.substring(0, 8) != "https://" && this.link_url.substring(0, 7) !=
-						"http://")) {
-					uni.showToast({
-						title: '请输入正确的发布链接',
-						icon: 'none'
-					})
-					return
-				}
+				// if (this.link_url == "" || (this.link_url.substring(0, 8) != "https://" && this.link_url.substring(0, 7) !=
+				// 		"http://")) {
+				// 	uni.showToast({
+				// 		title: '请输入正确的发布链接',
+				// 		icon: 'none'
+				// 	})
+				// 	return
+				// }
 				if (this.imageData.length == 0) {
 					uni.showToast({
 						title: '请上传收录/发布截图',
@@ -251,7 +251,7 @@
 					fail: function(e) {
 						console.log(e);
 						uni.showToast({
-							title: '上传失败22222',
+							title: '上传失败',
 							icon: '失败'
 						});
 					}

+ 2 - 2
page_workspace/task/upload/uploadsketch.vue

@@ -330,7 +330,7 @@
 						fail: function(e) {
 							console.log(e);
 							uni.showToast({
-								title: '上传失败22222',
+								title: '上传失败',
 								icon: '失败'
 							});
 						}
@@ -412,7 +412,7 @@
 					fail: function(e) {
 						console.log(e);
 						uni.showToast({
-							title: '上传失败22222',
+							title: '上传失败',
 							icon: '失败'
 						});
 					}

+ 43 - 12
pages.json

@@ -52,9 +52,13 @@
 		}, {
 			"path": "pages/selectionsquare/selectionsquare",
 			"style": {
+				"enablePullDownRefresh": true,
+				"onReachBottomDistance": 100,
 				"navigationBarTitleText": "YoungGee",
 				"navigationStyle": "custom",
-				"navigationBarTextStyle": "black"
+				"app-plus": {
+					"titleNView": false
+				}
 			}
 		}
 	],
@@ -116,7 +120,6 @@
 					"navigationStyle": "custom",
 					"navigationBarTextStyle": "black"
 				}
-
 			}, {
 				"path": "myincome/applywithdraw",
 				"style": {
@@ -124,7 +127,6 @@
 					"navigationStyle": "custom",
 					"navigationBarTextStyle": "black"
 				}
-
 			}, {
 				"path": "message",
 				"style": {
@@ -171,9 +173,31 @@
 					"navigationStyle": "custom",
 					"navigationBarTextStyle": "black"
 				}
+			}, {
+				"path": "selectiondetail/information",
+				"style": {
+					"navigationBarTitleText": "YoungGee",
+					"navigationStyle": "custom",
+					"navigationBarTextStyle": "black"
+				}
+			}, {
+				"path": "selectiondetail/success",
+				"style": {
+					"navigationBarTitleText": "YoungGee",
+					"navigationStyle": "custom",
+					"navigationBarTextStyle": "black"
+				}
+
+			}, {
+				"path": "search",
+				"style": {
+					"navigationBarTitleText": "YoungGee",
+					"navigationStyle": "custom",
+					"navigationBarTextStyle": "black"
+				}
+
 			}]
-		},
-		{
+		}, {
 			"root": "page_tasksquare",
 			"pages": [{
 				"path": "wholetask/taskdetail",
@@ -343,6 +367,13 @@
 					"navigationStyle": "custom",
 					"navigationBarTextStyle": "black"
 				}
+			}, {
+				"path": "selection/assignment/upload",
+				"style": {
+					"navigationBarTitleText": "YoungGee",
+					"navigationStyle": "custom",
+					"navigationBarTextStyle": "black"
+				}
 			}]
 		}
 	],
@@ -365,12 +396,12 @@
 				"iconPath": "static/img/icon-square1.png",
 				"selectedIconPath": "static/img/icon-square2.png"
 			},
-			// {
-			// 	"text": "选品广场",
-			// 	"pagePath": "pages/selectionsquare/selectionsquare",
-			// 	"iconPath": "static/img/icon-shop1.png",
-			// 	"selectedIconPath": "static/img/icon-shop2.png"
-			// },
+			{
+				"text": "选品广场",
+				"pagePath": "pages/selectionsquare/selectionsquare",
+				"iconPath": "static/img/icon-shop1.png",
+				"selectedIconPath": "static/img/icon-shop2.png"
+			},
 			{
 				"text": "工作台",
 				"pagePath": "pages/workspace/workspace",
@@ -393,4 +424,4 @@
 			"query": "" //启动参数,在页面的onLoad函数里面得到
 		}]
 	}
-}
+}

+ 4 - 11
pages/login/login.vue

@@ -11,10 +11,10 @@
 			</view>
 		</view>
 		<view class="body">
-			<!-- <button class="login-btn" @click="toggle('bottom')" v-if="licenseStatus == 0">微信授权</button> -->
-			<button class="login-btn" @click="getPhone" v-if="licenseStatus == 0">微信授权</button>
+			<!-- <button class="login-btn" @click="toggle('bottom')" v-if="licenseStatus == 0">授权登录</button> -->
+			<button class="login-btn" @click="getPhone" v-if="licenseStatus == 0">授权登录</button>
 			<button class="login-btn" open-type="getPhoneNumber" @getphonenumber="onGetPhoneNumber"
-				v-if="licenseStatus == 1">微信授权</button>
+				v-if="licenseStatus == 1">授权登录</button>
 
 			<button class="exit-btn" @click="exit()">取消登录</button>
 			<view class="xieyi">
@@ -529,6 +529,7 @@
 	export default {
 		data() {
 			return {
+				picture: getApp().globalData.picture,
 				token: "",
 				licenseStatus: 0,
 				value: 0,
@@ -537,14 +538,6 @@
 					"text": ""
 				}],
 				defaultavatarUrl: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/logoxin01.png',
-				picture: {
-					home8: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/home8.png',
-					deng5: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/deng5.png',
-					deng1: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/deng1.png',
-					task15: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/task15.png',
-					jpg7: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/7.jpg',
-					png6: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/6.png'
-				},
 				type: 'center',
 				nickname: '微信用户',
 				avatarUrl: "https://mmbiz.qpic.cn/mmbiz/icTdbqWNOwNRna42FI242Lcia07jQodd2FJGIYQfG0LAJGFxM4FbnQP6yfMxBgJ0F3YRqJCJ1aPAK2dQagdusBZg/0",

+ 1 - 1
pages/login/userinfo.vue

@@ -167,7 +167,7 @@
 					fail: function(e) {
 						console.log(e);
 						uni.showToast({
-							title: '上传失败22222',
+							title: '上传失败',
 							icon: '失败'
 						});
 					}

+ 116 - 95
pages/mycenter/mycenter.vue

@@ -11,17 +11,16 @@
 					</view>
 					<view>
 						<p style="padding-bottom: 20rpx;font-size: 35rpx;" @click="toUserInfo()">{{nickName}}</p>
-						<span style="display: flex;align-items: center;">
-							<p style="font-size: 25rpx;">ID:{{information.id}}</p>
-							<image :src="picture.icon_copy" mode="" style="width: 40rpx;height: 40rpx;"
-								@click="handleCopy()" />
-						</span>
+						<p style="font-size: 28rpx;">ID:{{information.id}}
+							<image :src="picture.icon_copy" mode="" class="copy-img"
+								@click="handleCopy(information.id)" />
+						</p>
 					</view>
 				</view>
 				<view class="head-right">
 					<image class="head-message" :src="picture.icon_message" @click="toMessage()"></image>
-					<view v-if="hasUnReadMessage">
-						<span class="point"></span>
+					<view v-if="numInfo.numUnReadMessage != 0">
+						<span class="point">{{numInfo.numUnReadMessage}}</span>
 					</view>
 				</view>
 			</view>
@@ -48,13 +47,14 @@
 								style="width: 35rpx;height: 35rpx;padding-left: 10rpx;"
 								@click="showIncomeHelp = true" />
 						</view>
-						<view class="tip_box" v-if="showIncomeHelp" :style="{ top: boxTop + 'px'}">
+						<!-- <view class="tip_box" v-if="showIncomeHelp" :style="{ top: boxTop + 'px'}"> -->
+						<view class="tip_box" v-if="showIncomeHelp">
 							<view class="container" :style="{
 						  'margin-right': cotainerMargin + 'px',
 						  backgroundColor: '#404040', borderRadius: '5px' }">
 								<!-- 提示文字 -->
 								<view class="tips">
-									<p>{{Text}}</p>
+									<p>{{incomeHelpText}}</p>
 								</view>
 								<view class="close" @click="showIncomeHelp = false">
 									<image class="closeImg" src="../../static/delete.png" />
@@ -89,22 +89,23 @@
 					<p>{{information.showWithdrawing?information.showWithdrawing:'0.0'}}</p>
 				</view>
 			</view>
-<!-- 
+
 			<view class="show-income1">
 				<view class="show-income1-left">
 					<view class="show-income1-left-up" style="margin-bottom: 10rpx;">
 						<view style="display: flex;align-items: center;">
 							<p>创作者积分</p>
 							<image id="helpicon" :src="picture.icon_help" mode=""
-								style="width: 35rpx;height: 35rpx;padding-left: 10rpx;" @click="showPointHelp = true" />
+								style="width: 35rpx;height: 35rpx;padding-left: 10px" @click="showPointHelp = true" />
 						</view>
 
-						<view class="tip_box" v-if="showPointHelp" :style="{ top: boxTop + 'px'}">
+						<!-- <view class="tip_box" v-if="showPointHelp" :style="{ top: boxTop + 'px'}"> -->
+						<view class="tip_box" v-if="showPointHelp">
 							<view class="container" :style="{
 								  'margin-right': cotainerMargin + 'px',
 								  backgroundColor: '#404040', borderRadius: '5px' }">
 								<view class="tips">
-									<p>{{Text}}</p>
+									<p>{{pointHelpText}}</p>
 								</view>
 								<view class="close" @click="showPointHelp = false">
 									<image class="closeImg" src="../../static/delete.png" />
@@ -123,7 +124,7 @@
 					<image class="show-body1-icon" :src="picture.icon_right"></image>
 				</view>
 			</view>
- -->
+
 			<view class="show-body" style="border-bottom: 1rpx solid #c8c8c8;">
 				<view class="show-body1">
 					<view class="show-body1-text1" @click="toMyTask('all')">
@@ -135,24 +136,24 @@
 				</view>
 				<view class="show-body2">
 					<view class="show-body2-text" @click="toMyTask('all')">
-						<p class="task-num-p">{{information.numAllTask?information.numAllTask:0}}</p>
+						<p class="task-num-p">{{numInfo.numAllTask}}</p>
 						<p padding>全部任务</p>
 					</view>
 					<view class="show-body2-text" @click="toMyTask('apply')">
-						<p class="task-num-p">{{information.numApplyTask?information.numApplyTask:0}}</p>
+						<p class="task-num-p">{{numInfo.numApplyTask}}</p>
 						<p>已报名</p>
 					</view>
 					<view class="show-body2-text" @click="toMyTask('execute')">
-						<p class="task-num-p">{{information.numExecuteTask?information.numExecuteTask:0}}</p>
+						<p class="task-num-p">{{numInfo.numExecuteTask}}</p>
 						<p>执行中</p>
 					</view>
 					<view class="show-body2-text" @click="toMyTask('end')">
-						<p class="task-num-p">{{ information.numEndTask ? information.numEndTask:0}}</p>
+						<p class="task-num-p">{{ numInfo.numEndTask}}</p>
 						<p>已结束</p>
 					</view>
 				</view>
 			</view>
-<!-- 
+
 			<view class="show-body" style="border-bottom: 1rpx solid #c8c8c8;">
 				<view class="show-body1">
 					<view class="show-body1-text1" @click="toMyTeam('exe')">
@@ -165,11 +166,11 @@
 				</view>
 				<view class="show-body2">
 					<view class="show-body2-text" @click="toMyTeam('exe')">
-						<p class="task-num-p">{{information.numExeTeam?information.numExeTeam:0}}</p>
+						<p class="task-num-p">{{numInfo.numExeTeam}}</p>
 						<p padding>开团中</p>
 					</view>
 					<view class="show-body2-text" @click="toMyTeam('end')">
-						<p class="task-num-p">{{information.numEndTeam?information.numEndTeam:0}} </p>
+						<p class="task-num-p">{{numInfo.numEndTeam}} </p>
 						<p>已结束</p>
 					</view>
 					<view class="show-body2-text">
@@ -183,24 +184,24 @@
 
 			<view class="show-body" style="border-bottom: 1rpx solid #c8c8c8;">
 				<view class="show-body1">
-					<view class="show-body1-text1" @click="toMySec('all')">
+					<view class="show-body1-text1" @click="toMySec(0)">
 						<p>选品广场</p>
 					</view>
-					<view class="show-body1-text2" @click="toMySec('all')">
+					<view class="show-body1-text2" @click="toMySec(0)">
 						<image class="show-body1-icon" :src="picture.icon_right"></image>
 					</view>
 				</view>
 				<view class="show-body2">
-					<view class="show-body2-text" @click="toMySec('apply')">
-						<p class="task-num-p">{{information.numApplySec?information.numApplySec:0}}</p>
+					<view class="show-body2-text" @click="toMySec(1)">
+						<p class="task-num-p">{{numInfo.numApplySec}}</p>
 						<p padding>已报名</p>
 					</view>
-					<view class="show-body2-text" @click="toMySec('execute')">
-						<p class="task-num-p">{{information.numExecuteSec?information.numExecuteSec:0}}</p>
+					<view class="show-body2-text" @click="toMySec(2)">
+						<p class="task-num-p">{{numInfo.numExecuteSec}}</p>
 						<p>执行中</p>
 					</view>
-					<view class="show-body2-text" @click="toMySec('end')">
-						<p class="task-num-p">{{information.numEndSec?information.numEndSec:0}}</p>
+					<view class="show-body2-text" @click="toMySec(3)">
+						<p class="task-num-p">{{numInfo.numEndSec}}</p>
 						<p>已结束</p>
 					</view>
 					<view class="show-body2-text">
@@ -208,7 +209,7 @@
 					</view>
 				</view>
 			</view>
- -->
+
 			<view class="show-body">
 				<view class="show-body2">
 					<view class="show-body2-text" @click="handleInformation()">
@@ -235,7 +236,6 @@
 					<image class="img1"
 						src="https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/kefu_20211124192542.png" mode="">
 					</image>
-
 				</view>
 			</view>
 
@@ -296,7 +296,7 @@
 							<!-- <span>YoungGee</span> -->
 						</view>
 						<view class="sharemap">
-							<image :src="kefuUrl" style="width: 400rpx;height: 400rpx;" mode=""></image>
+							<image :src="picture.kefu" style="width: 400rpx;height: 400rpx;" mode=""></image>
 						</view>
 						<view style="margin: 30rpx 0;">
 							<button class="butmin1" size="mini" @tap="saveImage">保存二维码</button>
@@ -327,7 +327,7 @@
 						<!-- <span>YoungGee</span> -->
 					</view>
 					<view class="sharemap">
-						<image :src="kefuUrl" style="width: 400rpx;height: 400rpx;" mode=""></image>
+						<image :src="picture.kefu" style="width: 400rpx;height: 400rpx;" mode=""></image>
 					</view>
 					<view style="margin: 30rpx 0;">
 						<button class="butmin1" size="mini" @tap="saveImage">保存二维码</button>
@@ -360,7 +360,7 @@
 						<span style="font-size: 28rpx;line-height: 30rpx;">使用有任何疑问请联系样叽客服</span>
 					</view>
 					<view class="sharemap">
-						<image :src="kefuUrl" style="width: 400rpx;height: 400rpx;" mode=""></image>
+						<image :src="picture.kefu" style="width: 400rpx;height: 400rpx;" mode=""></image>
 					</view>
 					<view style="margin: 30rpx 0;">
 						<button class="butmin1" size="mini" @tap="saveImage">保存二维码</button>
@@ -394,35 +394,8 @@
 		},
 		data() {
 			return {
-				kefuUrl: "https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/kefu.jpeg",
 				navH: getApp().globalData.navHeight,
-				hasUnReadMessage: false,
-				Text: "在平台产生的总收益【可提现+已提现+提现中】",
-				showPointHelp: false,
-				showIncomeHelp: false,
-				boxTop: 0,
-				arrowMargin: 0,
-				cotainerMargin: 0,
-				screenWidth: 0,
-				picture: {
-					icon_help: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-help.png',
-					icon_copy: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-copy.png',
-					icon_person: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-person.png',
-					icon_edit: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-edit2.png',
-					icon_location: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-location.png',
-					icon_account: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-account.png',
-					icon_rmb: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-rmb.png',
-					icon_message: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/youngee/talent_upload/icon-message.png',
-					icon_right: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-arrow-right.png',
-					defaultavatarUrl: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/logoxin01.png',
-				},
-				token: '',
-				nickName: '',
-				avatarUrl: '',
-				type: 'center',
-				type2: 'center',
-				type3: 'center',
-				type4: 'center',
+				picture: getApp().globalData.picture,
 				mysNavConfig: {
 					/* 开启单页显示首页图标 */
 					isHome: true,
@@ -436,8 +409,38 @@
 						fontWeight: "normal", // 100 - 700
 					},
 				},
+				pointHelpText: "平台收益提现时可使用积分抵扣税款,10分=1元",
+				incomeHelpText: "在平台产生的总收益【可提现+已提现+提现中】",
+				showPointHelp: false,
+				showIncomeHelp: false,
+				boxTop: 0,
+				arrowMargin: 0,
+				cotainerMargin: 0,
+				screenWidth: 0,
+				token: '',
+				nickName: '',
+				avatarUrl: '',
+				type: 'center',
+				type2: 'center',
+				type3: 'center',
+				type4: 'center',
 				codeImg: '',
 				information: {},
+				numInfo: {
+					numUnReadMessage: 0,
+					numAllTask: 0,
+					numApplyTask: 0,
+					numExecuteTask: 0,
+					numEndTask: 0,
+
+					numExeTeam: 0,
+					numEndTeam: 0,
+
+					numApplySec: 0,
+					numExecuteSec: 0,
+					numEndSec: 0,
+				},
+
 			};
 		},
 		onReady() {
@@ -460,9 +463,19 @@
 			if (this.token !== '') { // 若登录
 				this.nickName = uni.getStorageSync('nickName');
 				this.avatarUrl = uni.getStorageSync('avatarUrl');
-
 				// 获取达人基本信息
-				await this.$https.get('/youngee/c/t/g/get-talent-info')
+				await this.getTalentInfo();
+				// 获取页面展示信息(任务数量、young之团数量、选品任务数量)
+				await this.getNumInfo();
+				// 获取未读消息条数
+				await this.getUnreadMessage();
+			}
+			uni.hideLoading();
+		},
+		onLoad() {},
+		methods: {
+			getTalentInfo() {
+				return this.$https.get('/youngee/c/t/g/get-talent-info')
 					.then(res => {
 						if (res.data.code === 0) {
 							this.information = res.data.data
@@ -472,31 +485,35 @@
 							this.information.showIncome = money(this.information.income)
 						}
 					});
-				// 获取达人参与任务数量
-				await this.$https.get('/youngee/c/t/g/get-task-num')
+			},
+			getUnreadMessage() {
+				return this.$https.get('/youngee/c/t/g/has-un-read-message')
 					.then(res => {
-						console.log(res)
 						if (res.data.code === 0) {
-							this.information.numAllTask = res.data.data.all_num
-							this.information.numApplyTask = res.data.data.sign_up_num
-							this.information.numExecuteTask = res.data.data.going_on_num
-							this.information.numEndTask = res.data.data.completed_num
+							this.numInfo.numUnReadMessage = res.data.data
 						}
 					})
-				await this.$https.get('/youngee/c/t/g/has-un-read-message')
+			},
+			getNumInfo() {
+				return this.$https.get('/youngee/c/t/g/get-my-info-num')
 					.then(res => {
+						console.log(res)
 						if (res.data.code === 0) {
-							this.hasUnReadMessage = res.data.data === 0 ? false : true;
+							this.numInfo.numAllTask = res.data.data.all_task_num
+							this.numInfo.numApplyTask = res.data.data.apply_task_num
+							this.numInfo.numExecuteTask = res.data.data.exe_task_num
+							this.numInfo.numEndTask = res.data.data.end_task_num
+
+							this.numInfo.numExeTeam = res.data.data.exe_team_num
+							this.numInfo.numEndTeam = res.data.data.end_team_num
+
+							this.numInfo.numApplySec = res.data.data.apply_sec_task_num
+							this.numInfo.numExecuteSec = res.data.data.exe_sec_task_num
+							this.numInfo.numEndSec = res.data.data.end_sec_task_num
 						}
 					})
-			} else { // 未登录
-				// this.login();
-			}
-			uni.hideLoading();
-		},
-		onLoad() {},
-		methods: {				
-			toTest(){
+			},
+			toTest() {
 				uni.navigateTo({
 					url: '/pages/test/test'
 				});
@@ -521,9 +538,9 @@
 					console.log(data)
 				}).exec();
 			},
-			handleCopy() {
+			handleCopy(content) {
 				wx.setClipboardData({
-					data: this.information.id,
+					data: content,
 					success: function(res) {
 						console.log("复制成功");
 					}
@@ -604,7 +621,7 @@
 			},
 			// 进入我的young之团页面
 			toMyTeam(tab) {
-				console.log("toMyTeam: ",tab)
+				console.log("toMyTeam: ", tab)
 				if (this.token !== '') {
 					var data = {
 						tab: tab
@@ -618,14 +635,14 @@
 			},
 			// 进入我的选品页面
 			toMySec(tab) {
-				console.log("toMySec: ",tab)
+				console.log("toMySec: ", tab)
 				if (this.token !== '') {
 					var data = {
-						tab: tab
+						value: tab
 					};
 					data = JSON.stringify(data)
 					uni.navigateTo({
-						url: '/pages/mycenter/myselection/myselection?textObj=' + encodeURIComponent(data)
+						url: '/page_mycenter/myselection/myselection?textObj=' + encodeURIComponent(data)
 					});
 				} else
 					this.login()
@@ -665,7 +682,7 @@
 			async saveImage() {
 				// showToast('保存成功')
 				wx.downloadFile({
-					url: this.kefuUrl,
+					url: this.picture.kefu,
 					success: function(res) {
 						wx.saveImageToPhotosAlbum({
 							filePath: res.tempFilePath,
@@ -749,9 +766,9 @@
 
 	.head-text {
 		display: inline-block;
-
 	}
 
+
 	.head-message {
 		margin: 10rpx 20rpx 10rpx 100rpx;
 		width: 60rpx;
@@ -1075,8 +1092,7 @@
 	}
 
 	.tip_box {
-		position: fixed;
-		top: 0;
+		position: absolute;
 		right: 0;
 		z-index: 9999;
 		display: flex;
@@ -1123,12 +1139,17 @@
 
 	.point {
 		position: absolute;
-		// top: 0;
-		right: 5px;
-		width: 20rpx;
-		height: 20rpx;
+		right: 0px;
+		top: 25px;
+		width: 35rpx;
+		height: 35rpx;
 		background: red;
 		border-radius: 50%;
+		font-size: 20rpx;
+		align-items: center;
+		justify-content: center;
+		display: flex;
+		color: #fff;
 	}
 
 	.contt {

+ 236 - 84
pages/selectionsquare/selectionsquare.vue

@@ -48,7 +48,7 @@
 		<view class="home">
 			<view>
 				<!-- 多选框弹窗 -->
-				<uni-popup ref="popup" background-color="#fff" @change="change">
+				<uni-popup ref="popup" background-color="#fff">
 					<view class="popup-content" :class="{ 'popup-height': type === 'left' || type === 'right' }">
 						<view class="option1" style="margin-top: 20%;">
 							<h3 style="margin-bottom: 10rpx;">社媒平台</h3>
@@ -56,7 +56,7 @@
 							</uni-data-checkbox>
 						</view>
 						<view class="option2">
-							<h3 style="margin-bottom: 10rpx;">稿费形式</h3>
+							<h3 style="margin-bottom: 10rpx;">样品形式</h3>
 							<uni-data-checkbox mode="tag" multiple v-model="formData.hobby1" :localdata="hobby1">
 							</uni-data-checkbox>
 						</view>
@@ -66,8 +66,8 @@
 							</uni-data-checkbox>
 						</view>
 						<view class="butto">
-							<button class="mini-btn" size="mini" @tap="Reset">重置</button>
-							<button class="mini-btn" size="mini" @tap="determine">确定</button>
+							<button class="mini-btn" size="mini" @tap="reset">重置</button>
+							<button class="mini-btn" size="mini" @tap="submitSearch">确定</button>
 						</view>
 					</view>
 				</uni-popup>
@@ -84,117 +84,84 @@
 			</view>
 
 			<view class="commodity" style="margin-top: 3%;">
-				<view class="project" @click="toDetail()">
+				<view class="project" v-for="(item,index) in selectionList" :key="index" @tap="toDetail(item)">
 					<!-- 主图 -->
-					<view class="projectdiagram"
-						style="background-image: url(https://horastar.obs.cn-east-3.myhuaweicloud.com/backstage_upload/a69be940-e294-4dd4-9b09-d80274c75a15.png)">
-						<view class="Mask" v-if="false">
+					<view class="projectdiagram" :style="{backgroundImage:`url(${item.coverphoto})`}">
+						<view class="Mask" v-if="item.isFinished">
 							<image src="https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/home4.png" mode="">
 							</image>
 						</view>
-						<view style="padding-left: 4%;padding-top: 2%;">
-						</view>
-					</view>
-					<!-- 平台logo、项目名称 -->
-					<view class="projecttext">
-						<image src="https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/pingtai2.png" mode="">
-						</image>
-						<span>PUYU朴郁小树茶冻干茶粉</span>
-					</view>
-					<!-- 项目信息1 -->
-					<view class="projectinfo">
-						<view class="projectinfotxt">
-							<p>售价</p>
-							<p>¥79.9</p>
-						</view>
-						<view class="projectinfotxt">
-							<p>预估赚</p>
-							<p style="color: #f70606;">¥7.9</p>
-						</view>
-						<view class="projectinfotxt">
-							<p>佣金</p>
-							<p>10%</p>
-						</view>
-						<view class="projectinfotxt">
-							<p>额外悬赏</p>
-							<p style="color: #f70606;">¥100.0</p>
-						</view>
-					</view>
-					<!-- 项目信息2 -->
-					<view class="projectinfo" style="justify-content: space-between;">
-						<view class="projectinfotxt" style="margin: 0 10rpx;">
-							<p>余<span style="color: #52b2f0;">123567</span>件</p>
-						</view>
-						<view class="projectinfotag">
-							<view class="TitleText">
-								<p>免费领</p>
-							</view>
-							<view class="TitleText">
-								<p>垫付后返</p>
+						<view v-else>
+							<view class="Mask" v-if="item.isLacked">
+								<image src="https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/lack.png"
+									mode="">
+								</image>
 							</view>
 						</view>
-					</view>
-				</view>
-
-				<view class="project">
-					<!-- 主图 -->
-					<view class="projectdiagram"
-						style="background-image: url(https://horastar.obs.cn-east-3.myhuaweicloud.com/backstage_upload/a69be940-e294-4dd4-9b09-d80274c75a15.png)">
-						<view class="Mask" v-if="false">
-							<image src="https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/home4.png" mode="">
-							</image>
-						</view>
 						<view style="padding-left: 4%;padding-top: 2%;">
 						</view>
 					</view>
 					<!-- 平台logo、项目名称 -->
 					<view class="projecttext">
-						<image src="https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/pingtai2.png" mode="">
+						<image :src="item.platform_icon">
 						</image>
-						<span>PUYU朴郁小树茶冻干茶粉</span>
+						<span>{{item.selection_name|ellipsis}}</span>
 					</view>
 					<!-- 项目信息1 -->
 					<view class="projectinfo">
 						<view class="projectinfotxt">
 							<p>售价</p>
-							<p>¥79.9</p>
+							<p>¥{{item.show_price}}</p>
 						</view>
 						<view class="projectinfotxt">
 							<p>预估赚</p>
-							<p style="color: #f70606;">¥7.9</p>
+							<p style="color: #f70606;">¥{{item.show_commission}}</p>
 						</view>
 						<view class="projectinfotxt">
 							<p>佣金</p>
-							<p>10%</p>
+							<p>{{item.commission_rate}}%</p>
 						</view>
-						<view class="projectinfotxt">
+						<view class="projectinfotxt" v-if="item.task_mode == 1">
 							<p>额外悬赏</p>
-							<p style="color: #f70606;">¥100.0</p>
+							<p style="color: #f70606;">¥{{item.show_task_reward}}</p>
 						</view>
 					</view>
 					<!-- 项目信息2 -->
 					<view class="projectinfo" style="justify-content: space-between;">
 						<view class="projectinfotxt" style="margin: 0 10rpx;">
-							<p>余<span style="color: #52b2f0;">123567</span>件</p>
+							<p>余<span style="color: #52b2f0;">{{item.remain_num}}</span>件</p>
 						</view>
 						<view class="projectinfotag">
-							<view class="TitleText">
+							<view class="TitleText" v-if="item.sample_mode == 1">
 								<p>免费领</p>
 							</view>
-							<view class="TitleText">
+							<view class="TitleText" v-if="item.sample_mode == 2">
 								<p>垫付后返</p>
 							</view>
+							<view class="TitleText" v-if="item.task_mode == 1">
+								<p>悬赏</p>
+							</view>
+							<view class="TitleText" v-else>
+								<p>纯佣</p>
+							</view>
 						</view>
 					</view>
 				</view>
-
 			</view>
+
+
 		</view>
 	</view>
 	</view>
 </template>
 
 <script>
+	import {
+		getQueryString,
+		fansview,
+		money,
+		getDaysBetweenDates
+	} from '@/components/utils.js';
 	export default {
 		props: {
 			mysNavConfig: {
@@ -309,24 +276,21 @@
 					value: 7
 				}],
 				hobby1: [{
-					text: '产品置换',
+					text: '免费领样',
 					value: 1
 				}, {
-					text: '固定稿费',
+					text: '垫付后返',
 					value: 2
 				}, {
-					text: '自报价',
+					text: '不提供样品',
 					value: 3
 				}],
 				hobby2: [{
-					text: '实体商品寄拍',
+					text: '悬赏任务',
 					value: 1
 				}, {
-					text: '虚拟产品测评',
+					text: '纯佣带货',
 					value: 2
-				}, {
-					text: '线下探店打卡',
-					value: 3
 				}],
 
 
@@ -337,9 +301,13 @@
 					{
 						img: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent/home7.png',
 						name: '/pages/tasksquare/cooperation'
-						// name: 'http://www.baidu.com/'
 					}
 				],
+
+				per: 0,
+				max_page: 0,
+				filtCondition: '',
+				selectionList: [],
 			}
 		},
 		watch: {
@@ -353,12 +321,40 @@
 		created() {
 			this.init();
 		},
+		async onShow() {
+			this.isLoginApi()
+			await this.getInfoListApi()
+			this.per = 0
+			this.selectionList = []
+			this.getSelectionListApi()
+		},
+		async onLoad() {},
+		//下拉刷新
+		onPullDownRefresh() {
+			this.per = 0
+			this.selectionList = []
+			this.getSelectionListApi()
+			//停止下拉刷新
+			uni.stopPullDownRefresh()
+		},
+		// 下拉懒加载
+		async onReachBottom() {
+			++this.per;
+			if (this.per >= this.max_page) {
+				uni.showToast({
+					title: "已加载全部"
+				})
+			} else {
+				uni.showLoading({
+					title: '加载中'
+				})
+				await this.getSelectionListApi()
+				uni.hideLoading();
+			}
+		},
+
 		methods: {
-			toDetail() {
-				uni.navigateTo({
-					url: '/page_selectionsquare/selectiondetail/selectiondetail'
-				});
-			},
+
 			/**
 			 * @param scrollTop 页面顶部距离
 			 * @param down 滑动显示效果延时
@@ -429,6 +425,145 @@
 				this.navBarHeight = gS.statusBarHeight + rectHeight + (rect
 					.top - gS.statusBarHeight) * 2 + "px";
 			},
+			toDetail(item) {
+				uni.navigateTo({
+					url: '/page_selectionsquare/selectiondetail/selectiondetail?id=' + item.selection_id
+				});
+			},
+			async submitSearch() {
+				this.per = 0;
+				this.$refs.popup.close()
+				var filtCondition = ''
+				for (var i = 0; i < this.formData.hobby.length; i++) {
+					filtCondition += "&platform[]" + "=" + this.formData.hobby[i]
+				}
+				for (var j = 0; j < this.formData.hobby1.length; j++) {
+					filtCondition += "&secform[]" + "=" + this.formData.hobby1[j]
+				}
+				for (var j = 0; j < this.formData.hobby2.length; j++) {
+					filtCondition += "&taskform[]" + "=" + this.formData.hobby2[j]
+				}
+				this.filtCondition = filtCondition
+				uni.showLoading({
+					title: '加载中'
+				});
+				this.selectionList = []
+				await this.getSelectionListApi()
+				uni.hideLoading();
+			},
+			async reset() {
+				this.per = 0;
+				this.$refs.popup.close()
+				this.formData.hobby = [];
+				this.formData.hobby1 = [];
+				this.formData.hobby2 = [];
+				this.filtCondition = '';
+				uni.showLoading({
+					title: '加载中'
+				});
+				this.selectionList = []
+				await this.getSelectionListApi()
+				uni.hideLoading();
+			},
+			/* 点击左侧 */
+			onLeftClick() {
+				uni.navigateTo({
+					url: '/page_selectionsquare/search'
+				});
+			},
+			isLoginApi() {
+				return this.$https.get('/youngee/c/t/g/is-login')
+					.then(res => {
+						if (res.data.code === 403) {
+							// 登陆已失效
+							this.token = ""
+							uni.clearStorage();
+						} else {
+							this.token = uni.getStorageSync('token')
+						}
+					})
+			},
+			getInfoListApi() {
+				return this.$http.get('/youngee/c/g/get-info-tables')
+					.then(res => {
+						this.hobby = []
+						this.platformList = res.data.data.ThirdPlatform
+						let l = this.platformList != null ? this.platformList.length : 0;
+						for (var i = 0; i < l; i++) {
+							var obj = {}
+							obj.text = this.platformList[i].platform_name
+							obj.value = this.platformList[i].id
+							this.hobby.push(obj)
+						}
+					})
+			},
+			getSelectionListApi() {
+				return this.$http.get('/youngee/c/g/get-selection-list' +
+					"?" +
+					"idx" +
+					"=" +
+					this.per +
+					"&cnt" +
+					"=" +
+					20 + this.filtCondition
+				).then(res => {
+					if (res.data.code === 0) {
+						console.log("res: ", res.data.data)
+						// 获取res返回数据
+						this.max_page = res.data.data.max_page
+						let selectionList = res.data.data.SeletionInfos
+						const count = res.data.data.count
+						// 数据处理
+						if (selectionList === null) {
+							return
+						}
+						for (var i = 0; i < selectionList.length; i++) {
+							// 封面图片
+							selectionList[i].ProductInfo = JSON.parse(selectionList[i].product_snap);
+							// if (selectionList[i] !== undefined && 'product_snap' in selectionList[i]) {
+							// }
+
+							// 封面图片
+							let ProductPhoto = JSON.parse(selectionList[i].product_photo_snap);
+							for (let j = 0; j < ProductPhoto.length; ++j) {
+								if (ProductPhoto[j].Symbol == 1) {
+									selectionList[i].coverphoto = ProductPhoto[j].PhotoUrl
+								}
+							}
+							// if (selectionList[i] !== undefined && 'product_photo_snap' in selectionList[i]) {
+							// }
+
+							for (var j = 0; j < this.platformList.length; j++) {
+								if (selectionList[i].platform === this.platformList[j].id) {
+									selectionList[i].platform_icon = this.platformList[j].platform_icon
+								}
+							}
+
+							// 佣金计算
+							selectionList[i].price = selectionList[i].ProductInfo.ProductPrice
+							console.table(selectionList[i].ProductInfo)
+							selectionList[i].commission = selectionList[i].price * selectionList[i]
+								.commission_rate * 0.01
+							selectionList[i].show_commission = money(selectionList[i].commission) // 佣金比例
+							selectionList[i].show_price = money(selectionList[i].price) // 售价
+							selectionList[i].show_task_reward = money(selectionList[i].task_reward) // 任务悬赏
+
+							// 判断是否到期
+							selectionList[i].isFinished = this.isFinish(selectionList[i])
+							// 判断是否有库存
+							selectionList[i].isLacked = selectionList[i].remain_num == 0 ? true : false
+						}
+						this.selectionList.push(...selectionList);
+					}
+				});
+			},
+			isFinish(selection) {
+				var timeNow = new Date();
+				var ddl = new Date(selection.task_ddl.replace(/-/g, "/"));
+				let remain_days = getDaysBetweenDates(timeNow, ddl);
+				if (remain_days < 0) return true;
+				else return false;
+			}
 		}
 	}
 </script>
@@ -890,4 +1025,21 @@
 		color: #fff;
 		font-size: 16rpx;
 	}
-</style>
+
+	.Mask {
+		position: absolute;
+		background-color: #000000;
+		opacity: 0.6;
+		width: 100%;
+		height: 100%;
+		// z-index: 999;
+		text-align: center;
+		border-radius: 20rpx;
+	}
+
+	.Mask image {
+		width: 50%;
+		height: 52%;
+		padding-top: 25%;
+	}
+</style>

+ 29 - 396
pages/test/test.vue

@@ -1,414 +1,47 @@
 <template>
-	<view style="position: relative;">
-		<!-- 胶囊 -->
-		<mvBar :mysNavConfig="mysNavConfig"></mvBar>
+	<view>
 		<view :style="{marginTop:navH}"></view>
-		<view>
-			<image></image>
-			<p>
-				2301.12023.pdf
-			</p>
-			<button @tap="downloadFile('https://arxiv.org/pdf/2301.12023.pdf')">下载附件</button>
-		</view>
-		<view class="pipline">
-				<p>报名任务&nbsp;>&nbsp;商家反选&nbsp;>&nbsp;商家支付&nbsp;>&nbsp;报名成功&nbsp;>&nbsp;寄样&探店约档</p>
-				<p>签收返稿&nbsp;>&nbsp;商家审核&nbsp;>&nbsp;作品发布&nbsp;>&nbsp;返回数据&nbsp;>&nbsp;结案&结算打款</p>
-			<!-- <image :src="picture.icon_whole_pipline"></image> -->
-		</view>
-		<view class="pipline">
-				<p>报名任务&nbsp;>&nbsp;商家反选&nbsp;>&nbsp;商家支付&nbsp;>&nbsp;报名成功&nbsp;>&nbsp;寄样&探店约档</p>
-				<p>签收返稿&nbsp;>&nbsp;商家审核&nbsp;>&nbsp;作品发布&nbsp;>&nbsp;返回数据&nbsp;>&nbsp;结案&结算打款</p>
-			<!-- <image :src="picture.icon_special_pipline"></image> -->
-		</view>
-		<!-- <view>
-			<l-painter isRenderImage :width="'686rpx'" :height="'930rpx'"
-				custom-style="position: fixed; top:10px; left: 500%;" ref="painter" @success="poster($event)" />
-		</view> -->
+		<view class="btn" @click="wxpay()">下单</view>
 	</view>
 </template>
 
 <script>
-	import mvBar from "@/components/mys_navBar/mysNavBar";
-	// import lPainter from "@/components/lime-painter/index.vue"	
-	// import lPainter from '@/utils/painter'
-
 	export default {
-		components: {
-			mvBar,
-			// 'l-painter': lPainter
-		},
+		name: 'test',
 		data() {
 			return {
 				navH: getApp().globalData.navHeight,
-				mysNavConfig: {
-					/* 开启单页显示首页图标 */
-					isHome: true,
-					/* 固定导航  */
-					navFixed: true,
-					/* 标题 (屏幕中心居中 两边图标中心居中使用slot center1) */
-					navTitle: {
-						text: "测试页面",
-						color: "",
-						fontSize: "32rpx", // px upx rpx
-						fontWeight: "normal", // 100 - 700
-					},
-					btnType: "type2",
-					onLeftClick: "/pages/mycenter/mycenter",
-					/* type2 按钮 */
-					type2Config: {
-						// 左图标
-						leftPath: "/static/img/png2.png",
-						// 右图标
-						rightPath: "/static/img/png4.png",
-						// 圆角
-						radius: "40rpx",
-					},
-				},
-				picture: {
-					icon_whole_pipline: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-whole-pipline.png',
-					icon_special_pipline: 'https://horastar.obs.cn-east-3.myhuaweicloud.com/talent_upload/icon-special-pipline.png',
-				}
+				url: 'http://wxsnsdy.tc.qq.com/105/20210/snsdyvideodownload?filekey=30280201010421301f0201690402534804102ca905ce620b1241b726bc41dcff44e00204012882540400&bizid=1023&hy=SH&fileparam=302c020101042530230204136ffd93020457e3c4ff02024ef202031e8d7f02030f42400204045a320a0201000400'
 			}
 		},
-		onLoad() {
-			// this.onShareLoad();
-		},
 		methods: {
-			/**
-			 * 下载文件并预览
-			 */
-			// 删除本地文件
-			deletContract() {
-				try {
-					let file = wx.getFileSystemManager();
-					file.readdir({
-						dirPath: `${wx.env.USER_DATA_PATH}/younggee_brief`,
-						success: res => {
-							console.log(res);
-							if (res.files.length > 2) {
-								file.unlink({
-									filePath: `${wx.env.USER_DATA_PATH}/${res.files[0]}`,
-									complete: res => {
-
-									}
-								})
-							}
-						}
-					})
-				} catch (error) {
-
-				}
-			},
-			downloadFile(url) {
-				let that = this
-				console.log(url)
-				const fileName = url.split('/').pop()
-				const newPath = `${wx.env.USER_DATA_PATH}/younggee_brief/${fileName}`;
-				console.log("new path: ", newPath);
-				// that.deletContract();
-				wx.downloadFile({
-					url: url,
-					filePath: newPath,
-					header: {},
-					success: function(res) {
-						var filePath = res.filePath;
-						console.log(filePath);
-						wx.showLoading({
-							title: '正在打开',
-							mask: true
-						})
-						wx.openDocument({
-							filePath: filePath,
-							showMenu: true,
-							success: function(res) {
-								console.log('打开文档成功')
-								wx.hideLoading()
-							},
-							fail: function(res) {
-								console.log(res);
-								wx.hideLoading()
-							},
-							complete: function(res) {
-								console.log(res);
-							}
-						})
-					},
-					fail: function(res) {
-						console.log('文件下载失败');
-						console.log(res)
-					},
-					complete: function(res) {},
-				})
-			},
-			onShareLoad() {
-				let that = this;
-				let base = {
-					width: '686rpx',
-					height: '950rpx',
-					views: [{
-							css: {
-								width: '686rpx',
-								height: '500rpx',
-								display: "inline-block",
-							},
-							views: [{
-								type: 'image',
-								src: '../../static/home.png',
-								mode: 'scaleToFill',
-								css: {
-									radius: '32rpx 32rpx 0rpx 0rpx',
-									left: '0rpx',
-									top: '0rpx',
-									width: '686rpx',
-									height: '500rpx',
-								}
-							}],
-							type: "view"
+			wxpay() {
+				this.$https.post('/youngee/c/api/t/wxpay/pay', {
+					amount: 1,
+					description: "测试商品",
+				}).then(res => {
+					console.log(res)
+					let data = res.data.data
+					wx.requestPayment({
+						"timeStamp": data.time_stamp,
+						"nonceStr": data.nonce_str,
+						"package": data.package,
+						"signType": "RSA",
+						"paySign": data.pay_sign,
+						"success": function(res) {
+							// 支付成功时执行
+							console.log("支付成功: ", res.errMsg)
 						},
-						{
-							css: {
-								width: '686rpx',
-								height: '190rpx',
-								display: "inline-block",
-								background: '#ffffff',
-							},
-							views: [{
-									type: 'text',
-									text: '¥',
-									css: {
-										color: '#FE4F02',
-										left: '30rpx',
-										top: '550rpx',
-										fontSize: '26rpx',
-										lineHeight: '45rpx'
-									}
-								},
-								{
-									type: 'text',
-									text: '1688.00',
-									css: {
-										color: '#FE4F02',
-										left: '60rpx',
-										top: '550rpx',
-										fontWerght: 'bold',
-										fontSize: '52rpx',
-										lineHeight: '45rpx'
-									}
-								},
-								{
-									type: 'text',
-									text: 'uniapp使用l-painter画板,海报uniapp使用l-painter画板,海报',
-									css: {
-										maxLines: 1,
-										width: '630rpx',
-										color: '#1A1A1A',
-										left: '32rpx',
-										top: '620rpx',
-										fontSize: '32rpx',
-										fontWerght: 'bold',
-										lineHeight: '45rpx'
-									}
-								}
-							],
-							type: "view"
-						}, {
-							css: {
-								width: '686rpx',
-								height: '52rpx',
-								display: "inline-block",
-							},
-							views: [{
-								type: 'image',
-								src: '../../static/img/aimg1.png',
-								mode: 'scaleToFill',
-								css: {
-									left: '0rpx',
-									top: '690rpx',
-									width: '686rpx',
-									height: '52rpx',
-								}
-							}],
-							type: "view"
-						}, {
-							css: {
-								width: '686rpx',
-								height: '180rpx',
-								display: "inline-block",
-								background: '#ffffff',
-								radius: '0rpx 0rpx 32rpx 32rpx',
-							},
-							views: [{
-									type: 'text',
-									text: '购买热线',
-									css: {
-										left: '40rpx',
-										top: '770rpx',
-										fontSize: '28rpx',
-										color: '#999999'
-									}
-								},
-								{
-									type: 'image',
-									src: '../../static/img/icon4.png',
-									mode: 'widthFix',
-									css: {
-										left: '184rpx',
-										top: '770rpx',
-										width: '36rpx',
-										height: '36rpx',
-
-									}
-								},
-								{
-									type: 'text',
-									text: '手机号码',
-									css: {
-										left: '240rpx',
-										top: '770rpx',
-										fontSize: '28rpx',
-										fontWerght: 'bold',
-									}
-								},
-								{
-									type: 'text',
-									text: '150-1234-4567',
-									css: {
-										left: '360rpx',
-										top: '770rpx',
-										fontSize: '28rpx',
-										fontWerght: 'bold',
-									}
-								},
-								{
-									type: 'image',
-									src: '../../static/img/sucess.png',
-									mode: 'widthFix',
-									css: {
-										left: '184rpx',
-										top: '840rpx',
-										width: '36rpx',
-										height: '36rpx',
-
-									}
-								},
-								{
-									type: 'text',
-									text: '微信号码',
-									css: {
-										left: '240rpx',
-										top: '840rpx',
-										fontSize: '28rpx',
-										fontWerght: 'bold',
-									}
-								},
-								{
-									type: 'text',
-									text: 'csc1234',
-									css: {
-										left: '360rpx',
-										top: '840rpx',
-										fontSize: '28rpx',
-										fontWerght: 'bold',
-									}
-								},
-							],
-							type: "view"
+						"fail": function(res) {
+							// 调起失败或取消支付时执行
+							console.log("支付失败: ", res.errMsg)
 						},
-						{
-							css: {
-								top: '360rpx',
-								left: '480rpx',
-								width: '170rpx',
-								height: '220rpx',
-								display: "inline-block",
-								background: '#ffffff',
-								borderRadius: '16rpx',
-								boxShadow: "0 20rpx 58rpx rgba(0,0,0,.15)"
-							},
-							views: [{
-									type: 'text',
-									text: '产品详情二维码',
-									css: {
-										width: '280rpx',
-										top: '540rpx',
-										left: '488rpx',
-										fontSize: '22rpx',
-										color: '#1A1A1A'
-									}
-								},
-								{
-									type: 'image',
-									src: '../../static/img/deng2.png',
-									mode: 'widthFix',
-									css: {
-										top: '370rpx',
-										left: '484rpx',
-										width: '160rpx',
-										height: '160rpx',
-										borderRadius: '50%'
-									}
-								}
-							],
-							type: "view"
-						}
-					]
-				}
-				const painter = that.$refs.painter;
-				painter.render(base);
-			},
-			poster(event) {
-				console.info(event)
-				let path = event;
-				let that = this;
-				// #ifdef H5
-				var eleLink = document.createElement('a');
-				eleLink.download = "filename";
-				eleLink.style.display = 'none';
-				eleLink.href = path;
-				document.body.appendChild(eleLink);
-				eleLink.click();
-				// 然后移除
-				document.body.removeChild(eleLink);
-				// #endif
-				// #ifndef H5
-				uni.saveImageToPhotosAlbum({
-					filePath: path,
-					success(res) {
-						that.painterShow = false;
-						that.show = false;
-						uni.showToast({
-							title: '已保存到相册',
-							icon: 'success',
-							duration: 2000
-						})
-					}
+						"complete": function(res) {
+							// 成功或失败都会执行
+							console.log("支付结束: ", res.errMsg)}
+					})
 				})
-				// #endif
-			},
+			}
 		}
 	}
-</script>
-
-<style>
-	.pipline{
-		display: flex;
-		flex-direction: column;
-		align-items: center;
-		justify-content: center;
-		margin: 20rpx;
-		border: #FCCF41 2rpx dashed;
-	}
-	
-	.pipline p{
-		font-size: 24rpx;
-		height: 60rpx;
-		line-height: 60rpx;
-		transform: scale(1, 1.5);
-		/* box-shadow: 10px 10px 5px #FCCF41; */
-	}
-	.pipline image{
-		/* width: 600rpx; */
-		height: 150rpx;
-	}
-
-</style>
+</script>

+ 419 - 284
pages/workspace/workspace.vue

@@ -3,40 +3,99 @@
 		<!-- 胶囊 -->
 		<mvBar :mysNavConfig="mysNavConfig"></mvBar>
 		<view :style="{paddingTop:navH}" style="background-color: #fff;"></view>
-		<view class="menu">
-			<view class="menu-item" @click="toShow1()">
-				<view class="menu-item-p">
-					<p v-bind:class="showList1?'lor':'unlor'">待传脚本</p>
+		<view class="menu-head">
+			<view class="menu" style="padding-bottom: 10rpx;">
+				<view class="menu-item" @click="toShowTask()">
+					<view class="menu-item-p">
+						<p v-bind:class="showTask?'lor':'unlor'">任务大厅</p>
+					</view>
+					<!-- <span class="point" v-if="showPoint1" key="0"></span> -->
+				</view>
+				<view class="menu-item" @click="toShowSec()">
+					<view class="menu-item-p">
+						<p v-bind:class="showSec?'lor':'unlor'">选品广场</p>
+					</view>
+					<!-- <span class="point" v-if="showPoint2" key="1"></span> -->
 				</view>
-				<span class="point" v-if="showPoint1" key="0"></span>
 			</view>
-			<view class="menu-item" @click="toShow2()">
-				<view class="menu-item-p">
-					<p v-bind:class="showList2?'lor':'unlor'">待传初稿</p>
+
+			<view class="menu" v-if="showTask">
+
+				<view class="menu-item" @click="toShow(index)" v-for="(item,index) in taskTabList">
+					<view class="menu-item-p">
+						<p v-bind:class="showList[index]?'lor':'unlor'">{{item}}</p>
+					</view>
+					<span class="point" v-if="showPoint[index]" :key="index"></span>
 				</view>
-				<span class="point" v-if="showPoint2" key="1"></span>
 			</view>
-			<view class="menu-item" @click="toShow3()">
-				<view class="menu-item-p">
-					<p v-bind:class="showList3?'lor':'unlor'">待传链接</p>
+
+			<view class="menu" v-if="showSec">
+				<view class="menu-item" @click="toShow(4)">
+					<view class="menu-item-p">
+						<p v-bind:class="showList[4]?'lor':'unlor'">待交作业</p>
+					</view>
+					<span class="point" v-if="showPoint[4]" key="0"></span>
+				</view>
+				<view class="menu-item">
+					<view class="menu-item-p">
+						<p style="color: #fff;">待传初稿</p>
+					</view>
+				</view>
+				<view class="menu-item">
+					<view class="menu-item-p">
+						<p style="color: #fff;">待传链接</p>
+					</view>
+				</view>
+				<view class="menu-item">
+					<view class="menu-item-p">
+						<p style="color: #fff;">待传数据</p>
+					</view>
 				</view>
-				<span class="point" v-if="showPoint3" key="2"></span>
 			</view>
-			<view class="menu-item" @click="toShow4()">
-				<view class="menu-item-p">
-					<p v-bind:class="showList4?'lor':'unlor'">待传数据</p>
+		</view>
+
+		<view class="home" v-if="showList[0] && !loading">
+			<view class="task" v-for="item in taskLists[0]" @click="toTaskDetail(item)">
+				<view class="task-card">
+					<view class="task-head">
+						<view class="task-head-account">
+							<image class="platform-img" :src="item.platform_icon_url"></image>
+							<p>{{item.platform_nick_name}}</p>
+						</view>
+						<view class="task-head-status">
+							<p>{{item.task_stage_txt}}</p>
+						</view>
+					</view>
+					<view class="task-info">
+						<view class="task-info-left">
+							<image class="project-img" :src="item.product_img_url"></image>
+							<view class="task-info-txt">
+								<p style="color: #000;font-size: 32rpx;">{{item.project_name}}</p>
+								<p style="color: #F0D232;" v-if="!item.time_out">上传截止时间:{{item.upload_ddl}}</p>
+								<p style="color: #f70c0c;" v-else>超时:{{item.upload_ddl}}</p>
+								<p>预计违约扣款金额:¥{{item.show_cut_payment}}</p>
+								<p>预计收益:¥{{item.show_task_reward}}</p>
+							</view>
+						</view>
+						<view class="task-info-right" v-if="item.isShowModify">
+							<image src="../../static/img/icon-edit.png" style="height: 60rpx;width: 60rpx;"></image>
+							<p style="font-size: 32rpx;color: #ffcb41;font-weight: 600">改</p>
+						</view>
+					</view>
+					<view style="text-align: right;" v-if="item.task_stage > 6">
+						<p style="display: inline-block;">实际收益:¥{{item.show_real_reward}}</p>
+					</view>
 				</view>
-				<span class="point" v-if="showPoint4" key="3"></span>
 			</view>
 		</view>
 
-		<view class="home" v-if="showList1 && !loading">
-			<view class="task" v-for="item in List1">
-				<view @click="toDetail(item)">
+		<view class="home" v-if="showList[1] && !loading">
+			<view class="task" v-for="item in taskLists[1]" @click="toTaskDetail(item)">
+				<view class="task-card">
 					<view class="task-head">
 						<view class="task-head-account">
-							<image :src="item.platform_icon_url" style="height: 50rpx;width: 50rpx;"></image>
-							<p style="margin-left: 20rpx;">{{item.platform_nick_name}}</p>
+							<image class="platform-img" :src="item.platform_icon_url"></image>
+							<p>{{item.platform_nick_name}}</p>
 						</view>
 						<view class="task-head-status">
 							<p>{{item.task_stage_txt}}</p>
@@ -44,25 +103,34 @@
 					</view>
 					<view class="task-info">
 						<view class="task-info-left">
-							<image :src="item.product_img_url" style="height: 120rpx;width: 120rpx;"></image>
-							<p style="margin-left: 50rpx;">{{item.project_name}}</p>
+							<image class="project-img" :src="item.product_img_url"></image>
+							<view class="task-info-txt">
+								<p style="color: #000;font-size: 32rpx;">{{item.project_name}}</p>
+								<p style="color: #F0D232;" v-if="!item.time_out">上传截止时间:{{item.upload_ddl}}</p>
+								<p style="color: #f70c0c;" v-else>超时:{{item.upload_ddl}}</p>
+								<p>预计违约扣款金额:¥{{item.show_cut_payment}}</p>
+								<p>预计收益:¥{{item.show_task_reward}}</p>
+							</view>
 						</view>
 						<view class="task-info-right" v-if="item.isShowModify">
 							<image src="../../static/img/icon-edit.png" style="height: 60rpx;width: 60rpx;"></image>
 							<p style="font-size: 32rpx;color: #ffcb41;font-weight: 600">改</p>
 						</view>
 					</view>
+					<view style="text-align: right;" v-if="item.task_stage > 6">
+						<p style="display: inline-block;">实际收益:¥{{item.show_real_reward}}</p>
+					</view>
 				</view>
 			</view>
 		</view>
 
-		<view class="home" v-if="showList2 && !loading">
-			<view class="task" v-for="item in List2">
-				<view @click="toDetail(item)">
+		<view class="home" v-if="showList[2] && !loading">
+			<view class="task" v-for="item in taskLists[2]" @click="toTaskDetail(item)">
+				<view class="task-card">
 					<view class="task-head">
 						<view class="task-head-account">
-							<image :src="item.platform_icon_url" style="height: 50rpx;width: 50rpx;"></image>
-							<p style="margin-left: 20rpx;">{{item.platform_nick_name}}</p>
+							<image class="platform-img" :src="item.platform_icon_url"></image>
+							<p>{{item.platform_nick_name}}</p>
 						</view>
 						<view class="task-head-status">
 							<p>{{item.task_stage_txt}}</p>
@@ -70,25 +138,34 @@
 					</view>
 					<view class="task-info">
 						<view class="task-info-left">
-							<image :src="item.product_img_url" style="height: 120rpx;width: 120rpx;"></image>
-							<p style="margin-left: 50rpx;">{{item.project_name}}</p>
+							<image class="project-img" :src="item.product_img_url"></image>
+							<view class="task-info-txt">
+								<p style="color: #000;font-size: 32rpx;">{{item.project_name}}</p>
+								<p style="color: #F0D232;" v-if="!item.time_out">上传截止时间:{{item.upload_ddl}}</p>
+								<p style="color: #f70c0c;" v-else>超时:{{item.upload_ddl}}</p>
+								<p>预计违约扣款金额:¥{{item.show_cut_payment}}</p>
+								<p>预计收益:¥{{item.show_task_reward}}</p>
+							</view>
 						</view>
 						<view class="task-info-right" v-if="item.isShowModify">
 							<image src="../../static/img/icon-edit.png" style="height: 60rpx;width: 60rpx;"></image>
 							<p style="font-size: 32rpx;color: #ffcb41;font-weight: 600">改</p>
 						</view>
 					</view>
+					<view style="text-align: right;" v-if="item.task_stage > 6">
+						<p style="display: inline-block;">实际收益:¥{{item.show_real_reward}}</p>
+					</view>
 				</view>
 			</view>
 		</view>
 
-		<view class="home" v-if="showList3 && !loading">
-			<view class="task" v-for="item in List3">
-				<view @click="toDetail(item)">
+		<view class="home" v-if="showList[3] && !loading">
+			<view class="task" v-for="item in taskLists[3]" @click="toTaskDetail(item)">
+				<view class="task-card">
 					<view class="task-head">
 						<view class="task-head-account">
-							<image :src="item.platform_icon_url" style="height: 50rpx;width: 50rpx;"></image>
-							<p style="margin-left: 20rpx;">{{item.platform_nick_name}}</p>
+							<image class="platform-img" :src="item.platform_icon_url"></image>
+							<p>{{item.platform_nick_name}}</p>
 						</view>
 						<view class="task-head-status">
 							<p>{{item.task_stage_txt}}</p>
@@ -96,25 +173,34 @@
 					</view>
 					<view class="task-info">
 						<view class="task-info-left">
-							<image :src="item.product_img_url" style="height: 120rpx;width: 120rpx;"></image>
-							<p style="margin-left: 50rpx;">{{item.project_name}}</p>
+							<image class="project-img" :src="item.product_img_url"></image>
+							<view class="task-info-txt">
+								<p style="color: #000;font-size: 32rpx;">{{item.project_name}}</p>
+								<p style="color: #F0D232;" v-if="!item.time_out">上传截止时间:{{item.upload_ddl}}</p>
+								<p style="color: #f70c0c;" v-else>超时:{{item.upload_ddl}}</p>
+								<p v-if="item.fee_form != 1">预计违约扣款金额:¥{{item.show_cut_payment}}</p>
+								<p>预计收益:¥{{item.show_task_reward}}</p>
+							</view>
 						</view>
 						<view class="task-info-right" v-if="item.isShowModify">
 							<image src="../../static/img/icon-edit.png" style="height: 60rpx;width: 60rpx;"></image>
 							<p style="font-size: 32rpx;color: #ffcb41;font-weight: 600">改</p>
 						</view>
 					</view>
+					<view style="text-align: right;" v-if="item.task_stage > 6">
+						<p style="display: inline-block;">实际收益:¥{{item.show_real_reward}}</p>
+					</view>
 				</view>
 			</view>
 		</view>
 
-		<view class="home" v-if="showList4 && !loading">
-			<view class="task" v-for="item in List4">
-				<view @click="toDetail(item)">
+		<view class="home" v-if="showList[4] && !loading">
+			<view class="task" v-for="item in taskLists[4]" @click="toSecTaskDetail(item)">
+				<view class="task-card">
 					<view class="task-head">
 						<view class="task-head-account">
-							<image :src="item.platform_icon_url" style="height: 50rpx;width: 50rpx;"></image>
-							<p style="margin-left: 20rpx;">{{item.platform_nick_name}}</p>
+							<image class="platform-img" :src="item.platform_icon_url"></image>
+							<p>{{item.platform_nick_name}}</p>
 						</view>
 						<view class="task-head-status">
 							<p>{{item.task_stage_txt}}</p>
@@ -122,43 +208,67 @@
 					</view>
 					<view class="task-info">
 						<view class="task-info-left">
-							<image :src="item.product_img_url" style="height: 120rpx;width: 120rpx;"></image>
-							<p style="margin-left: 50rpx;">{{item.project_name}}</p>
+							<image class="project-img" :src="item.product_img_url"></image>
+							<view class="task-info-txt">
+								<p style="color: #000;font-size: 32rpx;">{{item.selection_name}}</p>
+								<p v-if="item.sample_mode === 2">预计样品返现金额:¥{{item.show_payment}}</p>
+								<p>预计收益:¥{{item.show_task_reward}}</p>
+							</view>
 						</view>
 						<view class="task-info-right" v-if="item.isShowModify">
 							<image src="../../static/img/icon-edit.png" style="height: 60rpx;width: 60rpx;"></image>
 							<p style="font-size: 32rpx;color: #ffcb41;font-weight: 600">改</p>
 						</view>
 					</view>
+					<view style="text-align: right;" v-if="item.task_stage > 5">
+						<p style="display: inline-block;">实际收益:¥{{item.show_real_reward}}</p>
+					</view>
 				</view>
 			</view>
 		</view>
+
+		<view style="height: 100rpx;"></view>
 	</view>
 </template>
 
 <script>
 	import mvBar from "@/components/mys_navBar/mysNavBar";
+	import {
+		fansview,
+		money
+	} from '@/components/utils.js';
 	export default {
 		components: {
 			mvBar,
 		},
 		data() {
 			return {
-				loading: true,
-				showPoint1: false,
-				showPoint2: false,
-				showPoint3: false,
-				showPoint4: false,
 				navH: getApp().globalData.navHeight,
-				showList1: true,
-				showList2: false,
-				showList3: false,
-				showList4: false,
-				List1: [],
-				List2: [],
-				List3: [],
-				List4: [],
+				loading: true,
+				showPoint: [false, false, false, false, false],
+				showTask: true,
+				showSec: false,
+				showList: [
+					true, false, false, false, false
+				],
+				taskLists: [
+					[],
+					[],
+					[],
+					[],
+					[]
+				],
+				taskTabList: [
+					"待传脚本",
+					"待传初稿",
+					"待传链接",
+					"待传数据"
+				],
+				secTaskTabList: [
+					"待传作业"
+				],
 				taskStageList: [],
+				secTaskStageList: [],
 				mysNavConfig: {
 					/* 开启单页显示首页图标 */
 					isHome: true,
@@ -200,14 +310,7 @@
 						uni.clearStorage();
 					}
 				});
-			if (this.token !== '') { // 若登录
-				this.showList2 = false;
-				this.showList3 = false;
-				this.showList4 = false;
-				this.showList1 = true;
-				this.getList(1);
-				// this.getExeNum();
-			} else {
+			if (this.token === '') {
 				uni.showModal({
 					content: '请先登录',
 					success: function(res) {
@@ -223,61 +326,91 @@
 					}
 				});
 			}
+
+			let curTab = 0
+			this.showList.forEach(async function(item, index) {
+				if (item === true) {
+					curTab = index
+				}
+			});
+			await this.getInfoList()
+			this.getTaskList(parseInt(curTab) + 1);
 		},
 		methods: {
-			// getExeNum() {
-			// 	return this.$https.get('/youngee/c/t/g/get-task-exe-num')
-			// 		.then(res => {
-			// 			if (res.data.data != null) {
-			// 				let nums = res.data.data
-
-			// 				this.showPoint1 = false
-			// 				this.showPoint2 = false
-			// 				this.showPoint3 = false
-			// 				this.showPoint4 = false
-			// 				for (let i = 0; i < nums.length; ++i) {
-			// 					if (nums[i].task_stage == 7 && nums[i]["COUNT(*)"] != 0) {
-			// 						this.showPoint1 = true
-			// 					}
-			// 					if (nums[i].task_stage == 9 && nums[i]["COUNT(*)"] != 0) {
-			// 						this.showPoint2 = true
-			// 					}
-			// 					if (nums[i].task_stage == 11 && nums[i]["COUNT(*)"] != 0) {
-			// 						this.showPoint3 = true
-			// 					}
-			// 					if (nums[i].task_stage == 13 && nums[i]["COUNT(*)"] != 0) {
-			// 						this.showPoint4 = true
-			// 					}
-			// 				}
-
-			// 			}
-			// 		});
-			// },
-			async getList(value) {
+			getInfoList() {
+				return this.$http.get('/youngee/c/g/get-info-tables')
+					.then(res => {
+						if (res.data.code == 0) {
+							this.taskStageList = res.data.data.TaskStage
+							this.secTaskStageList = res.data.data.SecTaskStage
+						}
+					})
+			},
+			toShowTask() {
+				this.showTask = true;
+				this.showSec = false;
+				this.toShow(0)
+			},
+			toShowSec() {
+				this.showTask = false;
+				this.showSec = true;
+				this.toShow(4)
+			},
+			toShow(value) {
+				let that = this
+				this.showList.forEach(function(item, index) {
+					if (index == value) {
+						that.showList[index] = true
+					} else {
+						that.showList[index] = false
+					}
+				})
+				if (value < 4) {
+					this.getTaskList(value);
+				} else {
+					this.getSecTaskList(value);
+				}
+			},
+			toTaskDetail(item) {
+				uni.navigateTo({
+					url: '/page_workspace/task/taskdetail?taskId=' + item.task_id,
+					success(res) {},
+					fail(err) {}
+				});
+			},
+			toSecTaskDetail(item) {
+				uni.navigateTo({
+					url: '/page_workspace/selection/sectaskdetail?taskId=' + item.task_id,
+					success(res) {},
+					fail(err) {}
+				});
+			},
+
+			async getTaskList(value) {
+				let that = this
 				this.loading = true
 				uni.showLoading({
 					title: '加载中'
 				});
-				this.$https.get('/youngee/c/t/g/get-task-exe-num')
+				await this.$https.get('/youngee/c/t/g/get-task-exe-num')
 					.then(res => {
 						if (res.data.data != null) {
 							let nums = res.data.data
-							this.showPoint1 = false
-							this.showPoint2 = false
-							this.showPoint3 = false
-							this.showPoint4 = false
+							this.showPoint.forEach(function(item, index) {
+								that.showPoint[index] = false
+							})
 							for (let i = 0; i < nums.length; ++i) {
 								if (nums[i].task_stage == 7 && nums[i]["COUNT(*)"] != 0) {
-									this.showPoint1 = true
+									this.showPoint[0] = true
 								}
 								if (nums[i].task_stage == 9 && nums[i]["COUNT(*)"] != 0) {
-									this.showPoint2 = true
+									this.showPoint[1] = true
 								}
 								if (nums[i].task_stage == 11 && nums[i]["COUNT(*)"] != 0) {
-									this.showPoint3 = true
+									this.showPoint[2] = true
 								}
 								if (nums[i].task_stage == 13 && nums[i]["COUNT(*)"] != 0) {
-									this.showPoint4 = true
+									this.showPoint[3] = true
 								}
 							}
 						}
@@ -288,9 +421,10 @@
 					"taskStage" +
 					"=" +
 					value).then(res => {
-					taskList = res.data.data.list1
+					taskList = res.data.data
 					if (taskList != null) {
 						for (let i = 0; i < taskList.length; ++i) {
+							// 主图
 							let productPhoto = JSON.parse(taskList[i].product_photo_snap);
 							for (let j = 0; j < productPhoto.length; j++) {
 								if (productPhoto[j].Symbol == 1) {
@@ -298,6 +432,7 @@
 								}
 							}
 
+							// 待修改标识
 							if ((taskList[i].task_stage == 7 && taskList[i].script_status == 3) ||
 								(taskList[i].task_stage == 9 && taskList[i].sketch_status == 3) ||
 								(taskList[i].task_stage == 11 && taskList[i].link_status == 3) ||
@@ -306,183 +441,107 @@
 							} else {
 								taskList[i].isShowModify = false
 							}
-							for (let j = 0; j < this.taskStageList.length; ++j) {
-								if (taskList[i].task_stage == this.taskStageList[j]
-									.task_stage_id)
-									taskList[i].task_stage_txt = this.taskStageList[j]
-									.task_stage
-							}
+
+							// 任务阶段展示文字
+							taskList[i].task_stage_txt = this.taskStageList[taskList[i].task_stage - 1]
+								.task_stage
+
+							// 任务收益
+							taskList[i].real_reward = taskList[i].task_reward * (100 - taskList[i]
+								.break_rate) / 100
+							taskList[i].cut_payment = taskList[i].task_reward - taskList[i].real_reward
+							taskList[i].show_task_reward = money(taskList[i].task_reward)
+							taskList[i].show_real_reward = money(taskList[i].real_reward)
+							taskList[i].show_cut_payment = money(taskList[i].cut_payment)
+
+							// 截止时间
+							let ddl = this.thistime(taskList[i].cur_break_at)
+							console.log("isTimeOut", ddl.isTimeOut)
+							console.log("ddl", ddl.deadline_time)
+							taskList[i].time_out = ddl.isTimeOut
+							taskList[i].upload_ddl = ddl.isTimeOut ? ddl.deadline_time : taskList[i]
+								.cur_break_at.replace(/-/g,
+									"/").slice(0, -3)
 						}
 					}
+					this.taskLists[value] = taskList
+				})
+				uni.hideLoading();
+				this.loading = false
+			},
 
-					switch (value) {
-						case 1:
-							this.List1 = taskList;
-							break;
-						case 2:
-							this.List2 = taskList;
-							break;
-						case 3:
-							this.List3 = taskList;
-							break;
-						case 4:
-							this.List4 = taskList;
-							break;
-						default:
-							break;
-					}
+			async getSecTaskList(value) {
+				this.loading = true
+				uni.showLoading({
+					title: '加载中'
+				});
+				var taskList = [];
+				await this.$https.get('/youngee/c/t/g/get-exe-sec-task-list' +
+					"?" +
+					"taskStage" +
+					"=" +
+					value).then(res => {
+					taskList = res.data.data
+					if (taskList != null) {
+						for (let i = 0; i < taskList.length; ++i) {
+							// 主图
+							let productPhoto = JSON.parse(taskList[i].product_photo_snap);
+							for (let j = 0; j < productPhoto.length; j++) {
+								if (productPhoto[j].Symbol == 1) {
+									taskList[i].product_img_url = productPhoto[j].PhotoUrl
+								}
+							}
 
-					// taskList = res.data.data.list1
-					// if (taskList != null) {
-					// 	this.showPoint1 = true
-					// 	for (let i = 0; i < taskList.length; ++i) {
-					// 		let productPhoto = JSON.parse(taskList[i].product_photo_snap);
-					// 		for (let j = 0; j < productPhoto.length; j++) {
-					// 			if (productPhoto[j].Symbol == 1) {
-					// 				taskList[i].product_img_url = productPhoto[j].PhotoUrl
-					// 			}
-					// 		}
-
-					// 		if ((taskList[i].task_stage == 7 && taskList[i].script_status == 3) ||
-					// 			(taskList[i].task_stage == 9 && taskList[i].sketch_status == 3) ||
-					// 			(taskList[i].task_stage == 11 && taskList[i].link_status == 3) ||
-					// 			(taskList[i].task_stage == 13 && taskList[i].data_status == 3)) {
-					// 			taskList[i].isShowModify = true
-					// 		} else {
-					// 			taskList[i].isShowModify = false
-					// 		}
-					// 		for (let j = 0; j < this.taskStageList.length; ++j) {
-					// 			if (taskList[i].task_stage == this.taskStageList[j]
-					// 				.task_stage_id)
-					// 				taskList[i].task_stage_txt = this.taskStageList[j]
-					// 				.task_stage
-					// 		}
-					// 	}
-					// }
-					// this.List1 = taskList;
-					// taskList = res.data.data.list2
-					// if (taskList != null) {
-					// 	this.showPoint2 = true
-					// 	for (let i = 0; i < taskList.length; ++i) {
-					// 		let productPhoto = JSON.parse(taskList[i].product_photo_snap);
-					// 		for (let j = 0; j < productPhoto.length; j++) {
-					// 			if (productPhoto[j].Symbol == 1) {
-					// 				taskList[i].product_img_url = productPhoto[j].PhotoUrl
-					// 			}
-					// 		}
-
-					// 		if ((taskList[i].task_stage == 7 && taskList[i].script_status == 3) ||
-					// 			(taskList[i].task_stage == 9 && taskList[i].sketch_status == 3) ||
-					// 			(taskList[i].task_stage == 11 && taskList[i].link_status == 3) ||
-					// 			(taskList[i].task_stage == 13 && taskList[i].data_status == 3)) {
-					// 			taskList[i].isShowModify = true
-					// 		} else {
-					// 			taskList[i].isShowModify = false
-					// 		}
-					// 		for (let j = 0; j < this.taskStageList.length; ++j) {
-					// 			if (taskList[i].task_stage == this.taskStageList[j]
-					// 				.task_stage_id)
-					// 				taskList[i].task_stage_txt = this.taskStageList[j]
-					// 				.task_stage
-					// 		}
-					// 	}
-					// }
-					// this.List2 = taskList;
-					// taskList = res.data.data.list3
-					// if (taskList != null) {
-					// 	this.showPoint3 = true
-					// 	for (let i = 0; i < taskList.length; ++i) {
-					// 		let productPhoto = JSON.parse(taskList[i].product_photo_snap);
-					// 		for (let j = 0; j < productPhoto.length; j++) {
-					// 			if (productPhoto[j].Symbol == 1) {
-					// 				taskList[i].product_img_url = productPhoto[j].PhotoUrl
-					// 			}
-					// 		}
-
-					// 		if ((taskList[i].task_stage == 7 && taskList[i].script_status == 3) ||
-					// 			(taskList[i].task_stage == 9 && taskList[i].sketch_status == 3) ||
-					// 			(taskList[i].task_stage == 11 && taskList[i].link_status == 3) ||
-					// 			(taskList[i].task_stage == 13 && taskList[i].data_status == 3)) {
-					// 			taskList[i].isShowModify = true
-					// 		} else {
-					// 			taskList[i].isShowModify = false
-					// 		}
-					// 		for (let j = 0; j < this.taskStageList.length; ++j) {
-					// 			if (taskList[i].task_stage == this.taskStageList[j]
-					// 				.task_stage_id)
-					// 				taskList[i].task_stage_txt = this.taskStageList[j]
-					// 				.task_stage
-					// 		}
-					// 	}
-					// }
-
-					// this.List3 = taskList;
-					// taskList = res.data.data.list4
-					// if (taskList != null) {
-					// 	this.showPoint4 = true
-					// 	for (let i = 0; i < taskList.length; ++i) {
-					// 		let productPhoto = JSON.parse(taskList[i].product_photo_snap);
-					// 		for (let j = 0; j < productPhoto.length; j++) {
-					// 			if (productPhoto[j].Symbol == 1) {
-					// 				taskList[i].product_img_url = productPhoto[j].PhotoUrl
-					// 			}
-					// 		}
-
-					// 		if ((taskList[i].task_stage == 7 && taskList[i].script_status == 3) ||
-					// 			(taskList[i].task_stage == 9 && taskList[i].sketch_status == 3) ||
-					// 			(taskList[i].task_stage == 11 && taskList[i].link_status == 3) ||
-					// 			(taskList[i].task_stage == 13 && taskList[i].data_status == 3)) {
-					// 			taskList[i].isShowModify = true
-					// 		} else {
-					// 			taskList[i].isShowModify = false
-					// 		}
-					// 		for (let j = 0; j < this.taskStageList.length; ++j) {
-					// 			if (taskList[i].task_stage == this.taskStageList[j]
-					// 				.task_stage_id)
-					// 				taskList[i].task_stage_txt = this.taskStageList[j]
-					// 				.task_stage
-					// 		}
-					// 	}
-					// }
-					// this.List4 = taskList;
+							// 待修改标识
+							if (taskList[i].task_stage == 8 && taskList[i].assignment_status == 3) {
+								taskList[i].isShowModify = true
+							} else {
+								taskList[i].isShowModify = false
+							}
+
+							// 任务阶段展示文字
+							taskList[i].task_stage_txt = this.secTaskStageList[taskList[i].task_stage - 1]
+								.task_stage
+
+							// 任务收益
+							taskList[i].real_reward = taskList[i].task_reward
+							taskList[i].show_task_reward = money(taskList[i].task_reward)
+							taskList[i].show_real_reward = money(taskList[i].real_reward)
+							taskList[i].show_payment = money(taskList[i].talent_payment)
+						}
+					}
+					this.taskLists[value] = taskList;
 				})
 				uni.hideLoading();
 				this.loading = false
 			},
-			toShow1() {
-				this.showList2 = false;
-				this.showList3 = false;
-				this.showList4 = false;
-				this.showList1 = true;
-				this.getList(1);
-			},
-			toShow2() {
-				this.showList1 = false;
-				this.showList3 = false;
-				this.showList4 = false;
-				this.showList2 = true;
-				this.getList(2);
-			},
-			toShow3() {
-				this.showList2 = false;
-				this.showList1 = false;
-				this.showList4 = false;
-				this.showList3 = true;
-				this.getList(3);
-			},
-			toShow4() {
-				this.showList2 = false;
-				this.showList1 = false;
-				this.showList3 = false;
-				this.showList4 = true;
-				this.getList(4);
-			},
-			toDetail(item) {
-				uni.navigateTo({
-					url: '/page_workspace/task/taskdetail?taskId=' + item.task_id,
-					success(res) {},
-					fail(err) {}
-				});
+
+			// 计算结束时间
+			thistime(val) {
+				// 转换格式
+				var beginTime = new Date(val.replace(/-/g, "/"));
+				// 当前时间
+				var thisTime = new Date();
+				// 相减
+				var dateMiss = beginTime.getTime() - thisTime.getTime();
+				let isTimeOut = dateMiss < 0 ? true : false
+				dateMiss = dateMiss < 0 ? -dateMiss : dateMiss
+				// 天数
+				var day = Math.floor(dateMiss / (24 * 3600 * 1000));
+				// 减去天数剩下的毫秒数
+				var backOne = dateMiss % (24 * 3600 * 1000);
+				// 小时数
+				var hours = Math.floor(backOne / (3600 * 1000));
+				// 减去小时数剩下的毫秒数
+				var backHour = backOne % (3600 * 1000);
+				// 分钟数
+				var min = Math.floor(backHour / (60 * 1000));
+				var deadline_time = day + '天' + hours + '时' + min + '分'
+				var result = {
+					isTimeOut: isTimeOut,
+					deadline_time: deadline_time
+				}
+				return result
 			},
 		}
 	}
@@ -494,13 +553,20 @@
 		line-height: inherit;
 	}
 
-	.menu {
+	.menu-head {
+		// padding-top: 20rpx;
+		background-color: #fff;
 		position: fixed;
+		width: 100%;
+	}
+
+	.menu {
 		border-bottom: #FCCF41;
 		background-color: #FFFFFF;
 		justify-content: space-around;
-		height: 100rpx;
+		height: 60rpx;
 		width: 100%;
+		padding-bottom: 40rpx;
 		display: flex;
 		z-index: 10;
 	}
@@ -526,12 +592,13 @@
 	}
 
 	.home {
-		margin-top: 100rpx;
+		margin-top: 180rpx;
 	}
 
-	.task {
-		margin-bottom: 20rpx;
-		border-bottom: 1rpx #d7d7d7 solid;
+
+	.task-card {
+		margin: 10rpx 0;
+		// border-bottom: 1rpx #d7d7d7 solid;
 
 		.task-head {
 			display: flex;
@@ -543,20 +610,42 @@
 				display: flex;
 			}
 
-			.task-head-status {
+			.platform-img {
+				width: 40rpx;
+				height: 40rpx;
+				margin-right: 10rpx;
+				background-color: #F0D232;
+			}
+
+			.task-head-status p {
 				color: red;
 			}
 		}
 
 		.task-info {
 			display: flex;
-			align-items: center;
 			justify-content: space-between;
 			padding: 10rpx 20rpx;
 
 			.task-info-left {
 				display: flex;
-				align-items: center;
+				// align-items: center;
+
+				.project-img {
+					height: 120rpx;
+					width: 120rpx;
+					// background-color: #b3c96b;
+				}
+
+				.task-info-txt {
+					margin-left: 10rpx;
+				}
+
+				.task-info-txt p {
+					font-size: 24rpx;
+					color: #85859d;
+					margin-bottom: 10rpx;
+				}
 			}
 
 			.task-info-right {
@@ -568,9 +657,55 @@
 				align-items: center;
 				justify-content: center;
 			}
+
+			.task-info-right p {
+				font-size: 24rpx;
+			}
 		}
 	}
 
+	// .task {
+	// 	margin-bottom: 20rpx;
+	// 	border-bottom: 1rpx #d7d7d7 solid;
+
+	// 	.task-head {
+	// 		display: flex;
+	// 		justify-content: space-between;
+	// 		align-items: center;
+	// 		padding: 10rpx 20rpx;
+
+	// 		.task-head-account {
+	// 			display: flex;
+	// 		}
+
+	// 		.task-head-status {
+	// 			color: red;
+	// 		}
+	// 	}
+
+	// 	.task-info {
+	// 		display: flex;
+	// 		align-items: center;
+	// 		justify-content: space-between;
+	// 		padding: 10rpx 20rpx;
+
+	// 		.task-info-left {
+	// 			display: flex;
+	// 			align-items: center;
+	// 		}
+
+	// 		.task-info-right {
+	// 			width: 100rpx;
+	// 			height: 100rpx;
+	// 			border-radius: 50%;
+	// 			border: #ffcb41 2rpx solid;
+	// 			display: flex;
+	// 			align-items: center;
+	// 			justify-content: center;
+	// 		}
+	// 	}
+	// }
+
 	.line {
 		border-bottom: 1rpx #AAAAAA solid;
 	}
@@ -587,4 +722,4 @@
 		background: red;
 		border-radius: 50%;
 	}
-</style>
+</style>

File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/common/main.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/components/htz-image-upload/htz-image-upload.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/components/mosowe-canvas-image/mosowe-canvas-image.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/components/mys-tip_1.0.01/a_tip/aTip.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/components/mys_navBar/mysNavBar.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/components/z-swiper/index.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_mycenter/message.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_mycenter/myincome/applywithdraw.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_mycenter/myincome/myincome.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_mycenter/myinformation/addlocation.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_mycenter/myinformation/bindaccount.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_mycenter/myinformation/myaccount.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_mycenter/myinformation/mybank.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_mycenter/myinformation/myinformation.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_mycenter/myinformation/mylocation.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_mycenter/myinformation/personinfo.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_mycenter/mypoint/mypoint.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_mycenter/myselection/myselection.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_mycenter/mytask/mytask.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_mycenter/myteam/myteam.js.map


+ 1 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_selectionsquare/information.js.map

@@ -0,0 +1 @@
+{"version":3,"sources":["uni-app:///main.js"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page"],"mappings":";;;;;;;;;;;;;AAAA;AAGA;AACA;AAHA;AACAA,EAAE,CAACC,iCAAiC,GAAGC,mBAAmB;AAG1DC,UAAU,CAACC,oBAAI,CAAC,C","file":"page_selectionsquare/information.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './page_selectionsquare/information.vue'\ncreatePage(Page)"],"sourceRoot":""}

File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_selectionsquare/search.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_selectionsquare/selectiondetail/information.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_selectionsquare/selectiondetail/selectiondetail.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_selectionsquare/selectiondetail/success.js.map


+ 1 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_selectionsquare/success.js.map

@@ -0,0 +1 @@
+{"version":3,"sources":["uni-app:///main.js"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page"],"mappings":";;;;;;;;;;;;;AAAA;AAGA;AACA;AAHA;AACAA,EAAE,CAACC,iCAAiC,GAAGC,mBAAmB;AAG1DC,UAAU,CAACC,gBAAI,CAAC,C","file":"page_selectionsquare/success.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './page_selectionsquare/success.vue'\ncreatePage(Page)"],"sourceRoot":""}

File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_tasksquare/banner/cooperation.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_tasksquare/banner/guanwang.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_tasksquare/banner/guide.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_tasksquare/bindinfo.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_tasksquare/search.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_tasksquare/specialtask/information.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_tasksquare/specialtask/specialTaskDetail.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_tasksquare/wholetask/information.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_tasksquare/wholetask/success.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_tasksquare/wholetask/taskdetail.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/selection/assignment/upload.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/selection/sectaskdetail.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/task/editaddress.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/task/information/applyInformation.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/task/information/deliveryInformation.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/task/record/datarecord.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/task/record/linkrecord.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/task/record/scriptrecord.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/task/record/sketchrecord.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/task/taskdetail.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/task/upload/uploaddata.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/task/upload/uploadlink.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/task/upload/uploadscript.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/task/upload/uploadsketch.js.map


+ 1 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/page_workspace/upload.js.map

@@ -0,0 +1 @@
+{"version":3,"sources":["uni-app:///main.js"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page"],"mappings":";;;;;;;;;;;;;AAAA;AAGA;AACA;AAHA;AACAA,EAAE,CAACC,iCAAiC,GAAGC,mBAAmB;AAG1DC,UAAU,CAACC,eAAI,CAAC,C","file":"page_workspace/upload.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './page_workspace/upload.vue'\ncreatePage(Page)"],"sourceRoot":""}

File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/login/login.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/login/userinfo.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/mycenter/mycenter.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/selectionsquare/selectionsquare.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/tasksquare/tasksquare.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/test/test.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/workspace/workspace.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-data-checkbox/components/uni-data-checkbox/uni-data-checkbox.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.js.map


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/uni-forms/components/uni-forms-item/uni-forms-item.js.map


Some files were not shown because too many files changed in this diff