| 
					
				 | 
			
			
				@@ -64,17 +64,17 @@ func GetGroupBuyPayList(c *gin.Context) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	// 不是商家也不是c端客户 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	if inData.UserType != 1 && inData.UserType != 2 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		app.Error(c, 500, errors.New("用户类型错误"), err.Error()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	// 核销类型错误 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	if inData.GroupBuyType != 1 && inData.GroupBuyType != 2 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		app.Error(c, 500, errors.New("核销类型错误"), err.Error()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	//// 不是商家也不是c端客户 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	//if inData.UserType != 1 && inData.UserType != 2 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	//	app.Error(c, 500, errors.New("用户类型错误"), err.Error()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	//	return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	//} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	// 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	//// 核销类型错误 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	//if inData.GroupBuyType != 1 && inData.GroupBuyType != 2 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	//	app.Error(c, 500, errors.New("核销类型错误"), err.Error()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	//	return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	//} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	var pageSize = 10 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	var pageIndex = 1 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -86,7 +86,7 @@ func GetGroupBuyPayList(c *gin.Context) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		pageIndex = inData.PageIndex 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	activeDrawLogList, count, err := sqlData.GetActivePayTransList(pageSize, pageIndex, inData.UserType, inData.GroupBuyType, inData.OpenId) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	activeDrawLogList, count, err := sqlData.GetActivePayTransList(pageSize, pageIndex, inData.OpenId) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	if err != nil { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		app.Error(c, 500, err, err.Error()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		return 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -96,6 +96,8 @@ func GetGroupBuyPayList(c *gin.Context) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		var data models.GetGroupBuyPayReply 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		var activeSql shanghu.MerchantActiveConfig 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		var groupBuySql shanghu.MerchantActiveGroupBuy 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		var groupBuyProductSql shanghu.MerchantActiveGroupByProject 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		var groupBuyProductCancel shanghu.ActiveCancelLog 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		data.MerchantAmount = v.MerchantAmount.String() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		data.Amount = v.Amount.String() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		data.ClientAmount = v.ClientAmount.String() 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -114,9 +116,29 @@ func GetGroupBuyPayList(c *gin.Context) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			app.Error(c, 500, err, err.Error()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		groupBuyProductSql.GroupBuyID = v.GroupBuyID 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		groupBuyProductList, _, err := groupBuyProductSql.GetGroupBuyProjectList() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if err != nil { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			app.Error(c, 500, err, err.Error()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		totalGroupBuyNum := 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		for _, v := range groupBuyProductList { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			totalGroupBuyNum = totalGroupBuyNum + v.CancelNum 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		groupBuyProductCancel.ClientOpenID = inData.OpenId 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		groupBuyProductCancel.ActiveConfigID = v.ActiveConfigID 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		cancelNum := groupBuyProductCancel.GetActiveCancelNum() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		data.GroupBuyName = groupBuyInfo.GroupBuyName 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		data.PayTime = v.PayTime.Format(time.DateTime) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		data.TradeNo = v.ThirdTradeNo 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		data.TotalCancelNum = totalGroupBuyNum 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		data.PendingCancelNum = cancelNum 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		data.Url = groupBuyInfo.GroupBuyUrl 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		outData = append(outData, data) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	app.PageOK(c, outData, count, pageIndex, pageSize, app.Success) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -127,13 +149,42 @@ func GetGroupBuyPayList(c *gin.Context) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 func GroupBuyPayCode(c *gin.Context) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	var inData models.GroupBuyPayCodeRequest 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	var outData models.GroupBuyPayCodeReply 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	//var sqlData shanghu.ClientActivePayTrans 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	var payTransSql shanghu.ClientActivePayTrans 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	var groupBuyProductSql shanghu.MerchantActiveGroupByProject 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	var groupBuyProductCancel shanghu.ActiveCancelLog 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	err := c.ShouldBindJSON(&inData) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	if err != nil { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		app.Error(c, 400, err, err.Error()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	//校验核销次数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	payTransSql.ThirdTradeNo = inData.TradeNo 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	payTransInfo, err := payTransSql.GetPayTransByThirdTradeNo() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if err != nil { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		app.Error(c, 500, err, err.Error()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	groupBuyProductSql.GroupBuyID = payTransInfo.GroupBuyID 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	groupBuyProductList, _, err := groupBuyProductSql.GetGroupBuyProjectList() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if err != nil { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		app.Error(c, 500, err, err.Error()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	totalGroupBuyNum := 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	for _, v := range groupBuyProductList { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		totalGroupBuyNum = totalGroupBuyNum + v.CancelNum 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	groupBuyProductCancel.ClientOpenID = payTransInfo.ClientOpenID 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	groupBuyProductCancel.ActiveConfigID = payTransInfo.ActiveConfigID 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	cancelNum := groupBuyProductCancel.GetActiveCancelNum() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if totalGroupBuyNum <= cancelNum { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		app.Error(c, 500, errors.New("核销次数用完"), "核销次数用完") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	outData.Key = "GROU" + tools.MD5(inData.TradeNo+"zhangkun429@") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	outData.TradeNo = inData.TradeNo 
			 |