selection.go 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. package service
  2. import (
  3. "context"
  4. "github.com/gin-gonic/gin"
  5. "github.com/issue9/conv"
  6. "github.com/sirupsen/logrus"
  7. "youngee_b_api/db"
  8. "youngee_b_api/model/common_model"
  9. "youngee_b_api/model/http_model"
  10. "youngee_b_api/pack"
  11. )
  12. var Selection *selection
  13. type selection struct {
  14. }
  15. func (s *selection) GetAllSelection(ctx context.Context, enterpriseID string, pageSize, pageNum int64, conditions *common_model.SelectionConditions) (*http_model.SelectionData, error) {
  16. SelectionList, total, err := db.GetSelectionList(ctx, enterpriseID, pageSize, pageNum, conditions)
  17. if err != nil {
  18. logrus.WithContext(ctx).Errorf("[selection service] call GetAllSelection error,err:%+v", err)
  19. return nil, err
  20. }
  21. SelectionListData := new(http_model.SelectionData)
  22. SelectionListData.SelectionInfo = pack.MGormSelectionToHttpSelectionPreview(SelectionList)
  23. SelectionListData.Total = conv.MustString(total)
  24. return SelectionListData, nil
  25. }
  26. func (s *selection) GetSelectionDetail(ctx *gin.Context, selectionId, enterpriseID string) (*http_model.SelectionDetail, error) {
  27. selectionDetail := http_model.SelectionDetail{}
  28. selectionInfo, err := db.GetSelectionInfo(ctx, selectionId)
  29. if err != nil {
  30. logrus.WithContext(ctx).Errorf("[selection service] call GetSelectionInfo error,err:%+v", err)
  31. return nil, err
  32. }
  33. selectionBriefInfo, err := db.GetSelectionBriefInfo(ctx, selectionId)
  34. if err != nil {
  35. logrus.WithContext(ctx).Errorf("[selection service] call GetSelectionBriefInfo error,err:%+v", err)
  36. return nil, err
  37. }
  38. selectionExampleInfo, err := db.GetSelectionExampleInfo(ctx, selectionId)
  39. if err != nil {
  40. logrus.WithContext(ctx).Errorf("[selection service] call GetSelectionExampleInfo error,err:%+v", err)
  41. return nil, err
  42. }
  43. productInfo, err := db.GetProductInfo(ctx, selectionId)
  44. if err != nil {
  45. logrus.WithContext(ctx).Errorf("[selection service] call GetProductInfo error,err:%+v", err)
  46. return nil, err
  47. }
  48. productPhotoInfo, err := db.GetProductPhotoInfo(ctx, selectionId)
  49. if err != nil {
  50. logrus.WithContext(ctx).Errorf("[selection service] call GetProductPhotoInfo error,err:%+v", err)
  51. return nil, err
  52. }
  53. selectionDetail.SelectionBrief = selectionBriefInfo
  54. selectionDetail.SelectionInfo = selectionInfo
  55. selectionDetail.SelectionExample = selectionExampleInfo
  56. selectionDetail.ProductInfo = productInfo
  57. selectionDetail.ProductPhotoInfo = productPhotoInfo
  58. return &selectionDetail, nil
  59. }