|
@@ -1607,6 +1607,167 @@ func ActivitySpecialCompanyApprovalReduce(log models.YanXuanActivityPointsRedis)
|
|
|
return
|
|
|
}
|
|
|
|
|
|
+// 12: 专项调活动提交到会扣点处理
|
|
|
+//func ActivitySpecialPointsBillSubmitMeetingReduce(log models.YanXuanActivityPointsRedis) (err error) {
|
|
|
+// //func ActivitySpecialPointsBillSubmitMeetingReduce(activityId int) (err error) {
|
|
|
+// defer func() {
|
|
|
+// if err != nil {
|
|
|
+// fmt.Println(err)
|
|
|
+// go utils.SendAlarmMsg("专项调活动提交到会扣点处理,处理Redis队列消息失败:"+err.Error()+fmt.Sprint("ActivityId", log.ActivityId, "adminId", log.AdminId), 2)
|
|
|
+// }
|
|
|
+// }()
|
|
|
+//
|
|
|
+// time.Sleep(5 * time.Second) //添加五秒的延迟
|
|
|
+//
|
|
|
+// activityId := log.ActivityId
|
|
|
+// activityInfo, e := models.GetCygxActivitySpecialDetail(activityId)
|
|
|
+// if e != nil {
|
|
|
+// err = errors.New("GetCygxActivitySpecialDetail" + e.Error())
|
|
|
+// return
|
|
|
+// }
|
|
|
+// var companyIds []int
|
|
|
+// mapCompanyPoints := make(map[int]float64) //一组公司的剩余点数
|
|
|
+// var condition string
|
|
|
+// var pars []interface{}
|
|
|
+// condition += ` AND activity_id = ? `
|
|
|
+// pars = append(pars, activityId)
|
|
|
+//
|
|
|
+// //获取提交到会的人员信息
|
|
|
+// signUpDetailList, e := models.GetSignupDetailList(condition, pars)
|
|
|
+// if e != nil && e.Error() != utils.ErrNoRow() {
|
|
|
+// err = errors.New("GetSignupDetailList" + e.Error())
|
|
|
+// return
|
|
|
+// }
|
|
|
+// if len(signUpDetailList) == 0 {
|
|
|
+// return
|
|
|
+// }
|
|
|
+// for _, v := range signUpDetailList {
|
|
|
+// companyIds = append(companyIds, v.CompanyId)
|
|
|
+//
|
|
|
+// companyId := v.CompanyId
|
|
|
+// //判断公司是不是满足扣点情况,如果是后台超管手动给试用客户报名,就写入一条点数初始化数据
|
|
|
+// total, e := models.GetCygxActivitySpecialPermissionPointsCountByCompanyId(companyId)
|
|
|
+// if e != nil {
|
|
|
+// err = errors.New("GetCygxActivitySpecialPermissionPointsCountByCompanyId, Err: " + e.Error())
|
|
|
+// return
|
|
|
+// }
|
|
|
+//
|
|
|
+// if total == 0 {
|
|
|
+// itemPointsCompany := new(models.CygxActivitySpecialPermissionPoints)
|
|
|
+// itemPointsCompany.CompanyId = companyId
|
|
|
+// itemPointsCompany.CompanyName = v.CompanyName
|
|
|
+// itemPointsCompany.CreateTime = time.Now()
|
|
|
+// itemPointsCompany.ModifyTime = time.Now()
|
|
|
+//
|
|
|
+// e = models.AddCygxActivitySpecialPermissionPoints(itemPointsCompany)
|
|
|
+// if e != nil {
|
|
|
+// err = errors.New("AddCygxActivitySpecialPermissionPoints, Err: " + e.Error())
|
|
|
+// return
|
|
|
+// }
|
|
|
+// }
|
|
|
+// }
|
|
|
+//
|
|
|
+// //return
|
|
|
+// pars = make([]interface{}, 0)
|
|
|
+// condition = ` AND company_id IN (` + utils.GetOrmInReplace(len(companyIds)) + `)`
|
|
|
+// pars = append(pars, companyIds)
|
|
|
+// //获取这些公司剩余的点数
|
|
|
+// conpanyList, e := models.GetCygxActivitySpecialPermissionPointsList(condition, pars)
|
|
|
+// if e != nil && e.Error() != utils.ErrNoRow() {
|
|
|
+// err = errors.New("GetCygxActivitySpecialPermissionPointsList, Err: " + e.Error())
|
|
|
+// return
|
|
|
+// }
|
|
|
+//
|
|
|
+// pars = make([]interface{}, 0)
|
|
|
+// condition = ` AND activity_id = ? AND mobile != '' ORDER BY id DESC `
|
|
|
+// pars = append(pars, activityId)
|
|
|
+// //获取扣点的流水记录
|
|
|
+// activityPointsBillList, e := models.GetCygxActivitySpecialTripBill(condition, pars)
|
|
|
+// if e != nil && e.Error() != utils.ErrNoRow() {
|
|
|
+// err = errors.New("GetCygxActivitySpecialTripBill" + e.Error())
|
|
|
+// return
|
|
|
+// }
|
|
|
+// mapActivityPointsBill := make(map[string]*models.CygxActivitySpecialTripBill)
|
|
|
+// for _, v := range activityPointsBillList { //获取这场活动,某个手机号最后一次的扣点记录
|
|
|
+// if mapActivityPointsBill[v.Mobile] == nil {
|
|
|
+// mapActivityPointsBill[v.Mobile] = v
|
|
|
+// }
|
|
|
+// }
|
|
|
+// //return
|
|
|
+// for _, v := range conpanyList {
|
|
|
+// if v.CompanyId != 0 {
|
|
|
+// mapCompanyPoints[v.CompanyId] = v.Points
|
|
|
+// }
|
|
|
+// }
|
|
|
+//
|
|
|
+// //return
|
|
|
+// var items []*models.CygxActivitySpecialTripBill
|
|
|
+// var itemCompanys []*models.CygxActivitySpecialPermissionPoints
|
|
|
+// for _, user := range signUpDetailList {
|
|
|
+// item := new(models.CygxActivitySpecialTripBill)
|
|
|
+// item.ActivityId = activityId
|
|
|
+// item.CreateTime = time.Now()
|
|
|
+// item.UserId = user.UserId
|
|
|
+// item.Mobile = user.Mobile
|
|
|
+// item.Email = user.Email
|
|
|
+// item.CompanyId = user.CompanyId
|
|
|
+// item.CompanyName = user.CompanyName
|
|
|
+// item.RealName = user.RealName
|
|
|
+// item.RegisterPlatform = log.RegisterPlatform
|
|
|
+// item.AdminId = log.AdminId
|
|
|
+// item.Source = log.Source
|
|
|
+// item.ChartPermissionId = activityInfo.ChartPermissionId
|
|
|
+// item.ChartPermissionName = activityInfo.ChartPermissionName
|
|
|
+// if user.IsMeeting == 1 {
|
|
|
+// //如果没有扣点记录就对他们进行扣点处理
|
|
|
+// if mapActivityPointsBill[user.Mobile] == nil || mapActivityPointsBill[user.Mobile].BillDetailed > 0 {
|
|
|
+// points := mapCompanyPoints[user.CompanyId] - activityPointsSetDetail.UserPointsNum
|
|
|
+// item.BillDetailed = -activityPointsSetDetail.UserPointsNum
|
|
|
+// item.DoType = 1
|
|
|
+// item.Content = activityInfo.ActivityName + "--活动到会"
|
|
|
+// item.Total = fmt.Sprint(points, "次")
|
|
|
+// item.TableSource = utils.CYGX_OBJ_ACTIVITY
|
|
|
+// //item.Points = mapCompanyPoints[user.CompanyId] - activityPointsSetDetail.UserPointsNum
|
|
|
+// items = append(items, item)
|
|
|
+// //更新对应机构的剩余点数
|
|
|
+// itemCompany := new(models.CygxActivitySpecialPermissionPoints)
|
|
|
+// itemCompany.CompanyId = user.CompanyId
|
|
|
+// itemCompany.Points = points
|
|
|
+// itemCompany.ModifyTime = time.Now()
|
|
|
+// itemCompanys = append(itemCompanys, itemCompany)
|
|
|
+// mapCompanyPoints[user.CompanyId] = points
|
|
|
+// }
|
|
|
+// } else {
|
|
|
+// ////第二次提交改成未到会的,对其进行返点处理
|
|
|
+// if mapActivityPointsBill[user.Mobile] != nil && mapActivityPointsBill[user.Mobile].BillDetailed < 0 {
|
|
|
+// fmt.Println("取消到会了")
|
|
|
+// points := mapCompanyPoints[user.CompanyId] + activityPointsSetDetail.UserPointsNum
|
|
|
+// item.BillDetailed = activityPointsSetDetail.UserPointsNum
|
|
|
+// item.DoType = 2
|
|
|
+// item.Content = activityInfo.ActivityName + "--活动取消到会"
|
|
|
+// //item.Points =points
|
|
|
+// item.Total = fmt.Sprint(points, "次")
|
|
|
+// item.TableSource = utils.CYGX_OBJ_ACTIVITY
|
|
|
+// items = append(items, item)
|
|
|
+//
|
|
|
+// //更新对应机构的剩余点数
|
|
|
+// itemCompany := new(models.CygxActivitySpecialPermissionPoints)
|
|
|
+// itemCompany.CompanyId = user.CompanyId
|
|
|
+// itemCompany.Points = points
|
|
|
+// itemCompany.ModifyTime = time.Now()
|
|
|
+// itemCompanys = append(itemCompanys, itemCompany)
|
|
|
+// mapCompanyPoints[user.CompanyId] = points
|
|
|
+// }
|
|
|
+// }
|
|
|
+// }
|
|
|
+// e = models.AddCygxActivitySpecialTripBillMulti(items, itemCompanys)
|
|
|
+// if e != nil && e.Error() != utils.ErrNoRow() {
|
|
|
+// err = errors.New("AddCygxActivitySpecialTripBillMulti, Err: " + e.Error())
|
|
|
+// return
|
|
|
+// }
|
|
|
+// return
|
|
|
+//}
|
|
|
+
|
|
|
//func init() {
|
|
|
// initCygx14_5_01()
|
|
|
//}
|