瀏覽代碼

no message

zhangchuanxing 2 月之前
父節點
當前提交
07dd8851ae
共有 2 個文件被更改,包括 139 次插入97 次删除
  1. 99 97
      controllers/activity_special.go
  2. 40 0
      services/activity_points.go

+ 99 - 97
controllers/activity_special.go

@@ -248,34 +248,35 @@ func (this *ActivitySpecialController) SpecialTripAdd() {
 				br.ErrMsg = "获取日程数量信息失败,Err:" + err.Error()
 				return
 			}
+			go services.SpecialActivityPointsBillSignupAddSpecial(activityId, uid) // 用户报名专项调研活动扣点处理
 			//流水记录表
-			itemBill := new(models.CygxActivitySpecialTripBill)
-			itemBill.UserId = user.UserId
-			itemBill.ActivityId = activityInfo.ActivityId
-			itemBill.CreateTime = time.Now()
-			itemBill.Mobile = user.Mobile
-			itemBill.Email = user.Email
-			itemBill.CompanyId = user.CompanyId
-			itemBill.CompanyName = user.CompanyName
-			itemBill.RealName = user.RealName
-			itemBill.Source = 1
-			itemBill.DoType = 1
-			itemBill.BillDetailed = -1 // 流水减一
-			itemBill.RegisterPlatform = utils.REGISTER_PLATFORM
-			itemBill.ChartPermissionId = activityInfo.ChartPermissionId
-			itemBill.ChartPermissionName = activityInfo.ChartPermissionName
-
-			if utils.InArrayByStr(utils.ACTIVITY_SPECIAL_TRIP_PERMISSION_NAME_OTHER, activityInfo.ChartPermissionName) {
-				//如果是策略、固收、周期行业,把代扣行业信息放入流水表,取消报名的时候,返点使用
-				maxChartPermissionId, maxChartPermissionName, err := services.GetSpecialBillMaxChartPermissionId(user)
-				if err != nil {
-					br.Msg = "操作失败"
-					br.ErrMsg = "获取销售信息失败,GetSpecialBillMaxChartPermissionId Err:" + err.Error()
-					return
-				}
-				itemBill.ChartPermissionId = maxChartPermissionId
-				itemBill.ChartPermissionName = maxChartPermissionName
-			}
+			//itemBill := new(models.CygxActivitySpecialTripBill)
+			//itemBill.UserId = user.UserId
+			//itemBill.ActivityId = activityInfo.ActivityId
+			//itemBill.CreateTime = time.Now()
+			//itemBill.Mobile = user.Mobile
+			//itemBill.Email = user.Email
+			//itemBill.CompanyId = user.CompanyId
+			//itemBill.CompanyName = user.CompanyName
+			//itemBill.RealName = user.RealName
+			//itemBill.Source = 1
+			//itemBill.DoType = 1
+			//itemBill.BillDetailed = -1 // 流水减一
+			//itemBill.RegisterPlatform = utils.REGISTER_PLATFORM
+			//itemBill.ChartPermissionId = activityInfo.ChartPermissionId
+			//itemBill.ChartPermissionName = activityInfo.ChartPermissionName
+			//
+			//if utils.InArrayByStr(utils.ACTIVITY_SPECIAL_TRIP_PERMISSION_NAME_OTHER, activityInfo.ChartPermissionName) {
+			//	//如果是策略、固收、周期行业,把代扣行业信息放入流水表,取消报名的时候,返点使用
+			//	maxChartPermissionId, maxChartPermissionName, err := services.GetSpecialBillMaxChartPermissionId(user)
+			//	if err != nil {
+			//		br.Msg = "操作失败"
+			//		br.ErrMsg = "获取销售信息失败,GetSpecialBillMaxChartPermissionId Err:" + err.Error()
+			//		return
+			//	}
+			//	itemBill.ChartPermissionId = maxChartPermissionId
+			//	itemBill.ChartPermissionName = maxChartPermissionName
+			//}
 
 			var itemMeeting = new(models.CygxActivitySpecialMeetingDetail)
 			itemMeeting.UserId = user.UserId
@@ -354,18 +355,18 @@ func (this *ActivitySpecialController) SpecialTripAdd() {
 					br.ErrMsg = "二次报名,更改报名是否有效状态失败,Err:" + err.Error()
 					return
 				}
-				resultTime := utils.StrTimeToTime(activityInfo.ActivityTime)
+				//resultTime := utils.StrTimeToTime(activityInfo.ActivityTime)
 				//48小时之内的取消也扣除一次参会记录
-				if time.Now().Add(+time.Hour * 48).After(resultTime) {
-					itemBill.BillDetailed = 0 //48小时之内,取消报名之后二次报名,不扣除流水记录
-				} else {
-					err = services.DeductTripRemainingtimesByUser(user, activityInfo) //扣除用户专项调研剩余次数
-					if err != nil {
-						br.Msg = "操作失败"
-						br.ErrMsg = "操作失败,Err:" + err.Error()
-						return
-					}
-				}
+				//if time.Now().Add(+time.Hour * 48).After(resultTime) {
+				//	itemBill.BillDetailed = 0 //48小时之内,取消报名之后二次报名,不扣除流水记录
+				//} else {
+				//	err = services.DeductTripRemainingtimesByUser(user, activityInfo) //扣除用户专项调研剩余次数
+				//	if err != nil {
+				//		br.Msg = "操作失败"
+				//		br.ErrMsg = "操作失败,Err:" + err.Error()
+				//		return
+				//	}
+				//}
 			}
 			//userType, tripRemaining, mapChartName, err := services.GetChartPermissionSpecialSurplusByCompany(user.CompanyId)
 			//if err != nil {
@@ -386,21 +387,21 @@ func (this *ActivitySpecialController) SpecialTripAdd() {
 			//	itemBill.Total = strings.TrimRight(itemBill.Total, "+")
 			//}
 
-			totalText, err := services.HandleActivitySpecialTripBillTotalText(user.CompanyId)
-			if err != nil {
-				br.Msg = "报名失败,"
-				br.ErrMsg = "二次报名,更改报名是否有效状态失败,Err:" + err.Error()
-				return
-			}
-			itemBill.Total = totalText
-
-			//添加流水记录
-			err = models.AddCygxActivitySpecialTripBill(itemBill)
-			if err != nil {
-				br.Msg = "报名失败,"
-				br.ErrMsg = "AddCygxActivitySpecialTripBill,Err:" + err.Error()
-				return
-			}
+			//totalText, err := services.HandleActivitySpecialTripBillTotalText(user.CompanyId)
+			//if err != nil {
+			//	br.Msg = "报名失败,"
+			//	br.ErrMsg = "二次报名,更改报名是否有效状态失败,Err:" + err.Error()
+			//	return
+			//}
+			//itemBill.Total = totalText
+			//
+			////添加流水记录
+			//err = models.AddCygxActivitySpecialTripBill(itemBill)
+			//if err != nil {
+			//	br.Msg = "报名失败,"
+			//	br.ErrMsg = "AddCygxActivitySpecialTripBill,Err:" + err.Error()
+			//	return
+			//}
 			//添加数据到会信息
 			err = models.AddCygxActivitySpecialMeetingDetail(itemMeeting)
 			if err != nil {
@@ -477,48 +478,49 @@ func (this *ActivitySpecialController) Tripcancel() {
 		return
 	}
 	//流水记录表
-	itemBill := new(models.CygxActivitySpecialTripBill)
-	itemBill.UserId = user.UserId
-	itemBill.ActivityId = activityInfo.ActivityId
-	itemBill.CreateTime = time.Now()
-	itemBill.Mobile = user.Mobile
-	itemBill.Email = user.Email
-	itemBill.CompanyId = user.CompanyId
-	itemBill.CompanyName = user.CompanyName
-	itemBill.RealName = user.RealName
-	itemBill.Source = 1
-	itemBill.DoType = 2
-	itemBill.BillDetailed = 1 // 流水加一
-	itemBill.RegisterPlatform = utils.REGISTER_PLATFORM
-	itemBill.ChartPermissionId = activityInfo.ChartPermissionId
-	itemBill.ChartPermissionName = activityInfo.ChartPermissionName
+	//itemBill := new(models.CygxActivitySpecialTripBill)
+	//itemBill.UserId = user.UserId
+	//itemBill.ActivityId = activityInfo.ActivityId
+	//itemBill.CreateTime = time.Now()
+	//itemBill.Mobile = user.Mobile
+	//itemBill.Email = user.Email
+	//itemBill.CompanyId = user.CompanyId
+	//itemBill.CompanyName = user.CompanyName
+	//itemBill.RealName = user.RealName
+	//itemBill.Source = 1
+	//itemBill.DoType = 2
+	//itemBill.BillDetailed = 1 // 流水加一
+	//itemBill.RegisterPlatform = utils.REGISTER_PLATFORM
+	//itemBill.ChartPermissionId = activityInfo.ChartPermissionId
+	//itemBill.ChartPermissionName = activityInfo.ChartPermissionName
 
-	if utils.InArrayByStr(utils.ACTIVITY_SPECIAL_TRIP_PERMISSION_NAME_OTHER, activityInfo.ChartPermissionName) {
-		//如果是策略、固收、周期行业,把代扣行业信息放入流水表,取消报名的时候,返点使用
-		lastTripBill, err := models.GetCygxActivitySpecialTripBillLastDetialByActivityId(activityInfo.ActivityId, user.UserId)
-		if err != nil {
-			br.Msg = "操作失败"
-			br.ErrMsg = "获取销售信息失败,GetSpecialBillMaxChartPermissionId Err:" + err.Error()
-			return
-		}
-		itemBill.ChartPermissionId = lastTripBill.ChartPermissionId
-		itemBill.ChartPermissionName = lastTripBill.ChartPermissionName
-	}
+	//if utils.InArrayByStr(utils.ACTIVITY_SPECIAL_TRIP_PERMISSION_NAME_OTHER, activityInfo.ChartPermissionName) {
+	//	//如果是策略、固收、周期行业,把代扣行业信息放入流水表,取消报名的时候,返点使用
+	//	lastTripBill, err := models.GetCygxActivitySpecialTripBillLastDetialByActivityId(activityInfo.ActivityId, user.UserId)
+	//	if err != nil {
+	//		br.Msg = "操作失败"
+	//		br.ErrMsg = "获取销售信息失败,GetSpecialBillMaxChartPermissionId Err:" + err.Error()
+	//		return
+	//	}
+	//	itemBill.ChartPermissionId = lastTripBill.ChartPermissionId
+	//	itemBill.ChartPermissionName = lastTripBill.ChartPermissionName
+	//}
 
 	resultTime := utils.StrTimeToTime(activityInfo.ActivityTime)
 	//48小时之内的取消也扣除一次参会记录
 	var isValid int
 	if time.Now().Add(+time.Hour * 48).After(resultTime) {
 		isValid = 1
-		itemBill.BillDetailed = 0 //48小时之内取消的活动扣点不返回
-	} else {
-		err = services.RebateTripRemainingtimesByUser(user, activityInfo) // 返点
-		if err != nil {
-			br.Msg = "操作失败"
-			br.ErrMsg = "操作失败,RebateTripRemainingtimesByUserErr:" + err.Error()
-			return
-		}
-	}
+		//itemBill.BillDetailed = 0 //48小时之内取消的活动扣点不返回
+	}
+	//else {
+	//	err = services.RebateTripRemainingtimesByUser(user, activityInfo) // 返点
+	//	if err != nil {
+	//		br.Msg = "操作失败"
+	//		br.ErrMsg = "操作失败,RebateTripRemainingtimesByUserErr:" + err.Error()
+	//		return
+	//	}
+	//}
 	//userType, tripRemaining, mapChartName, err := services.GetChartPermissionSpecialSurplusByCompany(user.CompanyId)
 	//if err != nil {
 	//	br.Msg = "获取专项调研剩余次数失败"
@@ -538,13 +540,13 @@ func (this *ActivitySpecialController) Tripcancel() {
 	//	itemBill.Total = strings.TrimRight(itemBill.Total, "+")
 	//}
 
-	totalText, err := services.HandleActivitySpecialTripBillTotalText(user.CompanyId)
-	if err != nil {
-		br.Msg = "报名失败,"
-		br.ErrMsg = "二次报名,更改报名是否有效状态失败,Err:" + err.Error()
-		return
-	}
-	itemBill.Total = totalText
+	//totalText, err := services.HandleActivitySpecialTripBillTotalText(user.CompanyId)
+	//if err != nil {
+	//	br.Msg = "报名失败,"
+	//	br.ErrMsg = "二次报名,更改报名是否有效状态失败,Err:" + err.Error()
+	//	return
+	//}
+	//itemBill.Total = totalText
 
 	err = models.CancelActivitySpecialTripIsValid(isValid, activityInfo.ActivityId, uid)
 	if err != nil {
@@ -558,8 +560,8 @@ func (this *ActivitySpecialController) Tripcancel() {
 		br.ErrMsg = "CancelCygxActivitySpecialMeetingDetail,Err:" + err.Error()
 		return
 	}
-	go models.AddCygxActivitySpecialTripBill(itemBill)
-
+	//go models.AddCygxActivitySpecialTripBill(itemBill)
+	go services.ActivityPointsBillSignupCancelSpecial(activityId, uid) // 用户报名专项调研活动扣点处理
 	br.Ret = 200
 	br.Success = true
 	br.Msg = "已取消"

+ 40 - 0
services/activity_points.go

@@ -91,3 +91,43 @@ func YanXuanActivityPointsBillSignupCancel(activityId, uid int) (err error) {
 	}
 	return
 }
+
+// 用户报名专项调研活动扣点处理
+func SpecialActivityPointsBillSignupAddSpecial(activityId, uid int) (err error) {
+	defer func() {
+		if err != nil {
+			fmt.Println(err)
+			msg := fmt.Sprint("activityId:", activityId, "userId:", uid)
+			go utils.SendAlarmMsg("用户报名专项调研活动扣点处理,写入Redis队列消息失败 SpecialActivityPointsBillSignupAddSpecial :"+err.Error()+msg, 2)
+		}
+	}()
+	//SourceType int       `description:"1:报名、 2:取消报名、3:活动编辑、4:活动发布,取消发布、5:活动到会。"`
+	log := &models.YanXuanActivityPointsRedis{UserId: uid, ActivityId: activityId, SourceType: 9, RegisterPlatform: utils.REGISTER_PLATFORM, Source: 1, CreateTime: time.Now()}
+	if utils.Re == nil {
+		err = utils.Rc.LPush(utils.CYGX_YANXUAN_POINTS_KEY, log)
+		if err != nil {
+			fmt.Println("YanXuanActivityPointsRedis LPush Err:" + err.Error())
+		}
+	}
+	return
+}
+
+// 用户取消报名专项调研活动扣点处理
+func ActivityPointsBillSignupCancelSpecial(activityId, uid int) (err error) {
+	defer func() {
+		if err != nil {
+			fmt.Println(err)
+			msg := fmt.Sprint("activityId:", activityId, "userId:", uid)
+			go utils.SendAlarmMsg("用户取消报名专项调研活动扣点处理,写入Redis队列消息失败 ActivityPointsBillSignupCancelSpecial :"+err.Error()+msg, 2)
+		}
+	}()
+	//SourceType int       `description:"1:报名、 2:取消报名、3:活动编辑、4:活动发布,取消发布、5:活动到会。"`
+	log := &models.YanXuanActivityPointsRedis{UserId: uid, ActivityId: activityId, SourceType: 10, RegisterPlatform: utils.REGISTER_PLATFORM, Source: 1, CreateTime: time.Now()}
+	if utils.Re == nil {
+		err = utils.Rc.LPush(utils.CYGX_YANXUAN_POINTS_KEY, log)
+		if err != nil {
+			fmt.Println("YanXuanActivityPointsRedis LPush Err:" + err.Error())
+		}
+	}
+	return
+}