| 
					
				 | 
			
			
				@@ -0,0 +1,119 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+package shanghu 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import ( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	"duoduo/apis/shanghu/models" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	"duoduo/models/shanghu" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	"duoduo/tools/app" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	"errors" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	"github.com/gin-gonic/gin" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	"time" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// 待核销金额 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+func PendingCancelAmount(c *gin.Context) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	var inData models.PendingCancelAmountRequest 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	var activePayTransSql shanghu.ClientActivePayTrans 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	var outData models.PendingCancelAmountReply 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	err := c.ShouldBindJSON(&inData) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if err != nil { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		app.Error(c, 400, err, err.Error()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if inData.Type == 1 { //商家 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		activePayTransSql.MerchantOpenID = inData.OpenId 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		activeAmount, err := activePayTransSql.GetPendingCancelByMerchant() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if err != nil { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			app.Error(c, 500, err, err.Error()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		outData.Amount = activeAmount.MerchantAmount.String() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} else if inData.Type == 2 { //个人 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		activePayTransSql.ClientOpenID = inData.OpenId 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		activeAmount, err := activePayTransSql.GetPendingCancelByClient() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if err != nil { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			app.Error(c, 500, err, err.Error()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		outData.Amount = activeAmount.ClientAmount.String() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		app.Error(c, 500, errors.New("type 类型错误"), err.Error()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	app.OK(c, outData, app.Success) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// 拼团购买 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+func GetGroupBuyPay(c *gin.Context) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	var inData models.GetGroupBuyPayRequest 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	var sqlData shanghu.ClientActivePayTrans 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	var outData []models.GetGroupBuyPayReply 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	err := c.ShouldBindJSON(&inData) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if err != nil { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		app.Error(c, 400, err, 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 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if inData.PageSize != 0 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		pageSize = inData.PageSize 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if inData.PageIndex != 0 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		pageIndex = inData.PageIndex 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	activeDrawLogList, count, err := sqlData.GetActivePayTransList(pageSize, pageIndex, inData.UserType, inData.GroupBuyType, inData.OpenId) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if err != nil { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		app.Error(c, 500, err, err.Error()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	for _, v := range activeDrawLogList { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		var data models.GetGroupBuyPayReply 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		var activeSql shanghu.MerchantActiveConfig 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		var groupBuySql shanghu.MerchantActiveGroupBuy 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		data.MerchantAmount = v.MerchantAmount.String() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		data.Amount = v.Amount.String() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		data.ClientAmount = v.ClientAmount.String() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		data.PayTime = v.PayTime.Format(time.DateTime) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		activeSql.ID = v.ActiveConfigID 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		activeInfo, err := activeSql.GetConfigInfoById() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if err != nil { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			app.Error(c, 500, err, err.Error()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		data.ActiveName = activeInfo.ActiveName 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		groupBuySql.ID = v.GroupBuyID 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		groupBuyInfo, err := groupBuySql.GetMerchantActiveGroupBuyById() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if err != nil { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			app.Error(c, 500, err, err.Error()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		data.GroupBuyName = groupBuyInfo.GroupBuyName 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		data.PayTime = v.PayTime.Format(time.DateTime) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		outData = append(outData, data) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	app.PageOK(c, outData, count, pageIndex, pageSize, app.Success) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 |