package service import ( "github.com/gin-gonic/gin" "github.com/sirupsen/logrus" "youngee_b_api/db" "youngee_b_api/model/http_model" ) type SelectionInfoService struct{} func (s *SelectionInfoService) GetSelectionInfo(ctx *gin.Context, selectionId string) (*http_model.SelectionDetail, error) { selectionDetail := http_model.SelectionDetail{} selectionInfo, err := db.GetSelectionById(ctx, selectionId) if err != nil { logrus.WithContext(ctx).Errorf("[selectionDB service] call GetSelectionInfo error,err:%+v", err) return nil, err } selectionBriefInfo, err := db.GetSelectionBriefInfo(ctx, selectionId) if err != nil { logrus.WithContext(ctx).Errorf("[selectionDB service] call GetSelectionBriefInfo error,err:%+v", err) return nil, err } selectionExampleInfo, err := db.GetSelectionExampleInfo(ctx, selectionId) if err != nil { logrus.WithContext(ctx).Errorf("[selectionDB service] call GetSelectionExampleInfo error,err:%+v", err) return nil, err } productInfo, err := db.GetProductInfoBySelectionId(ctx, selectionId) if err != nil { logrus.WithContext(ctx).Errorf("[selectionDB service] call GetProductInfo error,err:%+v", err) return nil, err } productPhotoInfo, err := db.GetProductPhotoInfoBySelectionId(ctx, selectionId) if err != nil { logrus.WithContext(ctx).Errorf("[selectionDB service] call GetProductPhotoInfo error,err:%+v", err) return nil, err } selectionDetail.SelectionBrief = selectionBriefInfo selectionDetail.SelectionInfo = selectionInfo selectionDetail.SelectionExample = selectionExampleInfo selectionDetail.ProductInfo = productInfo selectionDetail.ProductPhotoInfo = productPhotoInfo return &selectionDetail, nil }