activitylotterychecklogic.go 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. package logic
  2. import (
  3. "app.yhyue.com/moapp/jyMarketing/rpc/activity"
  4. "app.yhyue.com/moapp/jyMarketing/util"
  5. "context"
  6. "fmt"
  7. "strconv"
  8. "app.yhyue.com/moapp/jyMarketing/api/internal/svc"
  9. "app.yhyue.com/moapp/jyMarketing/api/internal/types"
  10. "github.com/tal-tech/go-zero/core/logx"
  11. )
  12. type ActivityLotteryCheckLogic struct {
  13. logx.Logger
  14. ctx context.Context
  15. svcCtx *svc.ServiceContext
  16. }
  17. func NewActivityLotteryCheckLogic(ctx context.Context, svcCtx *svc.ServiceContext) ActivityLotteryCheckLogic {
  18. return ActivityLotteryCheckLogic{
  19. Logger: logx.WithContext(ctx),
  20. ctx: ctx,
  21. svcCtx: svcCtx,
  22. }
  23. }
  24. func (l *ActivityLotteryCheckLogic) ActivityLotteryCheck(req types.Request) (*types.ActivityLotteryResp, error) {
  25. // todo: add your logic here and delete this line
  26. result := &types.ActivityLotteryResp{}
  27. lsi := l.svcCtx.Activity
  28. resp,err := lsi.ActivityLottery(l.ctx,&activity.Request{
  29. ActivityId: req.ActivityId,
  30. UserId: req.UserId,
  31. AppId: req.AppId,
  32. })
  33. if err != nil {
  34. return nil, err
  35. }
  36. var userLotteryList []*types.LotteryJson
  37. for _, value := range resp.Data {
  38. userLottery := types.LotteryJson{}
  39. strconv.FormatInt(value.LotteryId,10)
  40. var SE = util.SimpleEncrypt{Key: "topnet2015topnet2015"}
  41. userLottery.LotteryIdStr=SE.Encode2Hex(fmt.Sprint(value.LotteryId))
  42. //userLottery.LotteryId = value.LotteryId
  43. userLottery.LotteryName=value.LotteryName
  44. userLottery.LotteryBeginDate=value.LotteryBeginDate
  45. userLottery.LotteryendDate=value.LotteryendDate
  46. userLottery.IsReceive=value.IsReceive
  47. for _, value := range value.UseProductList {
  48. productJson:=types.ProductJson{}
  49. productJson.AppPage = value.AppPage
  50. productJson.ProductName = value.ProductName
  51. productJson.WxPage = value.WxPage
  52. productJson.PcPage = value.PcPage
  53. productJson.ProductCode=value.ProductCode
  54. productJson.ParentCode=value.ParentCode
  55. productJson.Describe=value.Describe
  56. userLottery.UseProductList=append(userLottery.UseProductList,productJson)
  57. }
  58. //userLottery.UseProductList = value.UseProductList
  59. userLottery.StockNumber=value.StockNumber
  60. userLottery.ReceiveNumber=value.ReceiveNumber
  61. userLottery.Instructions=value.Instructions
  62. userLottery.LotteryType=value.LotteryType
  63. userLottery.ValidityDates=value.ValidityDates
  64. userLottery.ValidityTimeType=value.ValidityTimeType
  65. userLottery.Full=value.Full
  66. userLottery.Reduce=value.Reduce
  67. userLottery.Remark=value.Remark
  68. userLotteryList = append(userLotteryList, &userLottery)
  69. }
  70. var activity types.ActivityJson
  71. activity.ActivityBeginDate=resp.ActivityJson.ActivityBeginDate
  72. activity.ActivityDesc=resp.ActivityJson.ActivityDesc
  73. activity.ActivityName=resp.ActivityJson.ActivityName
  74. activity.ActivityendDate=resp.ActivityJson.ActivityendDate
  75. result.Activity=activity
  76. result.Code = resp.Code
  77. result.Message = resp.Message
  78. result.Data=userLotteryList
  79. return result, nil
  80. }