order.go 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. package services
  2. import (
  3. "errors"
  4. "fmt"
  5. "hongze/hongze_mfyx/models"
  6. "hongze/hongze_mfyx/models/order"
  7. "hongze/hongze_mfyx/utils"
  8. "time"
  9. )
  10. // 获取日卡、月卡商品配置信息
  11. func GetUserGoodsCardList() (goodsListResp []*order.CygxGoodsResp) {
  12. var err error
  13. defer func() {
  14. if err != nil {
  15. fmt.Println(err)
  16. go utils.SendAlarmMsg(fmt.Sprint("判断用户是否开通了个人研选权限失败 GetCygxGoodsList, err:", err.Error()), 2)
  17. }
  18. }()
  19. var condition string
  20. var pars []interface{}
  21. condition = ` AND goods_id IN (1,2) `
  22. goodsList, e := order.GetCygxGoodsList(condition, pars)
  23. if e != nil {
  24. err = errors.New("GetCygxGoodsList, Err: " + e.Error())
  25. return
  26. }
  27. goodsListResp = goodsList
  28. return
  29. }
  30. // 获取单场活动关联的商品配置信息
  31. func GetGoodsInfoByActivity(item *models.ActivityDetail) (goodsListResp []*order.CygxGoodsResp) {
  32. var err error
  33. defer func() {
  34. if err != nil {
  35. fmt.Println(err)
  36. go utils.SendAlarmMsg(fmt.Sprint("判断用户是否开通了个人研选权限失败 GetCygxGoodsList, err:", err.Error()), 2)
  37. }
  38. }()
  39. //var goodsList []*order.CygxGoodsResp
  40. //var e error
  41. var condition string
  42. var pars []interface{}
  43. if item.ActivityTypeId == 1 && item.IsLimitPeople == 1 { //专家电话会。限制人数,
  44. condition = ` AND goods_id IN (3) `
  45. } else if (item.ActivityTypeId == 5 || item.ActivityTypeId == 8) && item.IsResearchPoints { //买方线下交流/专家线下沙龙。参会人扣点,
  46. condition = ` AND goods_id IN (4) `
  47. } else if (item.ActivityTypeId == 5 || item.ActivityTypeId == 8) && !item.IsResearchPoints { //买方线下交流/专家线下沙龙。参会人扣点,
  48. condition = ` AND goods_id IN (5) `
  49. } else if item.ActivityTypeId == 3 && item.IsResearchPoints { //非易董。公司调研电话会参会人扣点
  50. condition = ` AND goods_id IN (6) `
  51. } else if item.ActivityTypeId == 3 && !item.IsResearchPoints { //非易董。公司调研电话会参会人扣点
  52. condition = ` AND goods_id IN (7) `
  53. }
  54. goodsList, e := order.GetCygxGoodsList(condition, pars)
  55. if e != nil {
  56. err = errors.New("GetCygxGoodsList, Err: " + e.Error())
  57. return
  58. }
  59. goodsListResp = goodsList
  60. return
  61. }
  62. // 获取用户十分钟之内是否有相同的订单信息
  63. func GetHaverEquallyOrderByUser10Min(userId, goodsId int) (orderCode string) {
  64. var err error
  65. defer func() {
  66. if err != nil {
  67. fmt.Println(err)
  68. go utils.SendAlarmMsg(fmt.Sprint("获取用户十分钟之内是否有相同的订单信息失败 GetHaverEquallyOrderByUser10Min, err:", err.Error()), 2)
  69. }
  70. }()
  71. var condition string
  72. var pars []interface{}
  73. endTime := time.Now().Add(-15 * time.Minute)
  74. condition = ` AND user_id = ? AND goods_id = ? AND create_time > ? ORDER BY order_id DESC `
  75. pars = append(pars, userId, goodsId, endTime)
  76. orderList, e := order.GetCygxOrderList(condition, pars, 0, 1)
  77. if e != nil && e.Error() != utils.ErrNoRow() {
  78. err = errors.New("GetCygxOrderList, Err: " + e.Error())
  79. return
  80. }
  81. if len(orderList) == 0 {
  82. return
  83. } else {
  84. for _, v := range orderList {
  85. orderCode = v.OrderCode
  86. }
  87. }
  88. return
  89. }