|
@@ -86,6 +86,133 @@ func GetGoodsInfoByActivity(item *models.ActivityDetail) (goodsListResp []*order
|
|
|
return
|
|
|
}
|
|
|
|
|
|
+// 获取单场活动音视频关联的商品配置信息
|
|
|
+func GetGoodsInfoByActivityVivo(item *models.ActivityDetail) (goodsListResp []*order.CygxGoodsResp) {
|
|
|
+ var err error
|
|
|
+ defer func() {
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println(err)
|
|
|
+ go utils.SendAlarmMsg(fmt.Sprint("获取单场活动关联的商品配置信息失败 GetGoodsInfoByActivity, err:", err.Error()), 2)
|
|
|
+ }
|
|
|
+ }()
|
|
|
+ activityId := item.ActivityId
|
|
|
+
|
|
|
+ total, e := models.GetCygxActivityVivoPointsSetCountByActivityId(activityId)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("GetCygxActivityPointsSetUserNum, Err: " + e.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if total == 0 {
|
|
|
+ goodsListResp = make([]*order.CygxGoodsResp, 0)
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ vivoPointsSetDetail, e := models.GetCygxActivityVivoPointsSetByActivityId(activityId)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("GetCygxActivityVivoPointsSetCountByActivityId, Err: " + e.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ var condition string
|
|
|
+ var pars []interface{}
|
|
|
+ condition = ` AND goods_id IN (9) `
|
|
|
+
|
|
|
+ goodsList, e := order.GetCygxGoodsList(condition, pars)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("GetCygxGoodsList, Err: " + e.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ for k, _ := range goodsList {
|
|
|
+ goodsList[k].CurrentPrice = fmt.Sprint(vivoPointsSetDetail.GoodsMoney)
|
|
|
+ goodsList[k].Price = fmt.Sprint(vivoPointsSetDetail.GoodsMoney)
|
|
|
+ goodsList[k].PopupPriceMsg = fmt.Sprint("¥", vivoPointsSetDetail.GoodsMoney)
|
|
|
+ }
|
|
|
+
|
|
|
+ goodsListResp = goodsList
|
|
|
+ return
|
|
|
+}
|
|
|
+
|
|
|
+func GetActivityVivoPoints(item *models.ActivityDetail, wxUser *models.WxUserItem, havePower bool) (vivoPointsResp models.VivoPointsResp) {
|
|
|
+ var err error
|
|
|
+ defer func() {
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println(err)
|
|
|
+ go utils.SendAlarmMsg(fmt.Sprint("获取单场活动关联的商品配置信息失败 GetGoodsInfoByActivity, err:", err.Error()), 2)
|
|
|
+ }
|
|
|
+ }()
|
|
|
+ activityId := item.ActivityId
|
|
|
+
|
|
|
+ total, e := models.GetCygxActivityVivoPointsSetCountByActivityId(activityId)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("GetCygxActivityPointsSetUserNum, Err: " + e.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if total == 0 {
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ totalMySuccess, e := models.GetActivitySignupCount(wxUser.UserId, activityId)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("GetCygxActivityPointsSetUserNum, Err: " + e.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ if totalMySuccess > 0 {
|
|
|
+ vivoPointsResp.HavePoint = true
|
|
|
+ }
|
|
|
+
|
|
|
+ vivoPointsSetDetail, e := models.GetCygxActivityVivoPointsSetByActivityId(activityId)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("GetCygxActivityVivoPointsSetCountByActivityId, Err: " + e.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ vivoPointsResp.ActivityPoints = fmt.Sprint(vivoPointsSetDetail.PointsNum)
|
|
|
+ // 获取用户所在公司剩余的点
|
|
|
+ companyPointsNum, e := models.GetCompanyPoints(wxUser.CompanyId)
|
|
|
+ if e != nil && e.Error() != utils.ErrNoRow() {
|
|
|
+ err = errors.New("GetCompanyPoints, Err: " + e.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ vivoPointsResp.CompanyPoints = fmt.Sprint(companyPointsNum)
|
|
|
+
|
|
|
+ if havePower {
|
|
|
+ if companyPointsNum >= vivoPointsSetDetail.PointsNum {
|
|
|
+ vivoPointsResp.PointPermission = 1
|
|
|
+ } else {
|
|
|
+ vivoPointsResp.PointPermission = 2
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ if vivoPointsSetDetail.GoodsMoney > 0 {
|
|
|
+ vivoPointsResp.PointPermission = 3
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ if vivoPointsSetDetail.Source == utils.CYGX_OBJ_ACTIVITYVIDEO { //活动视频
|
|
|
+ activityVideoInfo, e := models.GetCygxActivityVideoByActivityId(activityId)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("GetCygxActivityVideoByActivityId, Err: " + e.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ vivoPointsResp.Type = 2
|
|
|
+ vivoPointsResp.Title = activityVideoInfo.VideoName
|
|
|
+ vivoPointsResp.ResourceUrl = activityVideoInfo.VideoUrl
|
|
|
+ vivoPointsResp.PlaySeconds = activityVideoInfo.VideoDuration
|
|
|
+ } else if vivoPointsSetDetail.Source == utils.CYGX_OBJ_ACTIVITYVOICE { //活动音频
|
|
|
+ activityVideoInfo, e := models.GetCygxActivityVoiceByActivityId(activityId)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("GetCygxActivityVoiceByActivityId, Err: " + e.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ vivoPointsResp.Type = 1
|
|
|
+ vivoPointsResp.Title = activityVideoInfo.VoiceName
|
|
|
+ vivoPointsResp.ResourceUrl = activityVideoInfo.VoiceUrl
|
|
|
+ vivoPointsResp.PlaySeconds = activityVideoInfo.VoicePlaySeconds
|
|
|
+ }
|
|
|
+ return
|
|
|
+}
|
|
|
+
|
|
|
// 获取用户十分钟之内是否有相同的订单信息
|
|
|
func GetHaverEquallyOrderByUser10Min(userId, goodsId int) (orderCode string) {
|
|
|
var err error
|