renaming, added json descriptors
This commit is contained in:
@@ -18,15 +18,15 @@ type MembershipController struct {
|
|||||||
service services.MembershipService
|
service services.MembershipService
|
||||||
}
|
}
|
||||||
type MembershipData struct {
|
type MembershipData struct {
|
||||||
APIKey string
|
APIKey string `json:"api_key"`
|
||||||
Model models.SubscriptionModel
|
Model models.SubscriptionModel `json:"model"`
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewMembershipController(service services.MembershipService) *MembershipController {
|
func NewMembershipController(service services.MembershipService) *MembershipController {
|
||||||
return &MembershipController{service}
|
return &MembershipController{service}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (uc *MembershipController) RegisterPlan(w http.ResponseWriter, r *http.Request) {
|
func (uc *MembershipController) RegisterSubscription(w http.ResponseWriter, r *http.Request) {
|
||||||
rh := utils.NewResponseHandler(w)
|
rh := utils.NewResponseHandler(w)
|
||||||
var regData MembershipData
|
var regData MembershipData
|
||||||
|
|
||||||
@@ -46,10 +46,10 @@ func (uc *MembershipController) RegisterPlan(w http.ResponseWriter, r *http.Requ
|
|||||||
rh.RespondWithError(http.StatusExpectationFailed, "API Key not valid")
|
rh.RespondWithError(http.StatusExpectationFailed, "API Key not valid")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
logger.Info.Printf("registering plan: %+v", regData)
|
logger.Info.Printf("registering subscription: %+v", regData)
|
||||||
|
|
||||||
// Register Plan
|
// Register Subscription
|
||||||
id, err := uc.service.RegisterPlan(®Data.Model)
|
id, err := uc.service.RegisterSubscription(®Data.Model)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Error.Printf("Couldn't register Membershipmodel: %v", err)
|
logger.Error.Printf("Couldn't register Membershipmodel: %v", err)
|
||||||
rh.RespondWithError(http.StatusInternalServerError, "Couldn't register Membershipmodel")
|
rh.RespondWithError(http.StatusInternalServerError, "Couldn't register Membershipmodel")
|
||||||
|
|||||||
@@ -7,10 +7,10 @@ type Membership struct {
|
|||||||
UpdatedAt time.Time
|
UpdatedAt time.Time
|
||||||
StartDate time.Time `json:"start_date"`
|
StartDate time.Time `json:"start_date"`
|
||||||
EndDate time.Time `json:"end_date"`
|
EndDate time.Time `json:"end_date"`
|
||||||
|
Children *[]User `gorm:"foreignKey:ParentMemberID"`
|
||||||
Status string `json:"status"`
|
Status string `json:"status"`
|
||||||
SubscriptionModel SubscriptionModel `gorm:"foreignKey:SubscriptionModelID"`
|
SubscriptionModel SubscriptionModel `gorm:"foreignKey:SubscriptionModelID"`
|
||||||
SubscriptionModelID int64 `json:"subsription_model_id"`
|
SubscriptionModelID int64 `json:"subsription_model_id"`
|
||||||
ID int64 `json:"id"`
|
ID int64 `json:"id"`
|
||||||
UserID int64 `json:"user_id"`
|
UserID int64 `json:"user_id"`
|
||||||
ParentID int64 `json:"parent_id"`
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -23,6 +23,7 @@ type User struct {
|
|||||||
BankAccount BankAccount `gorm:"constraint:OnUpdate:CASCADE,OnDelete:CASCADE;"`
|
BankAccount BankAccount `gorm:"constraint:OnUpdate:CASCADE,OnDelete:CASCADE;"`
|
||||||
Verification Verification `gorm:"constraint:OnUpdate:CASCADE,OnDelete:CASCADE;"`
|
Verification Verification `gorm:"constraint:OnUpdate:CASCADE,OnDelete:CASCADE;"`
|
||||||
Membership Membership `gorm:"constraint:OnUpdate:CASCADE,OnDelete:CASCADE;"`
|
Membership Membership `gorm:"constraint:OnUpdate:CASCADE,OnDelete:CASCADE;"`
|
||||||
|
ParentMemberID int64 `json:"parent_member_id"`
|
||||||
ID int64 `gorm:"primaryKey"`
|
ID int64 `gorm:"primaryKey"`
|
||||||
PaymentStatus int8 `json:"payment_status"`
|
PaymentStatus int8 `json:"payment_status"`
|
||||||
Status int8 `json:"status"`
|
Status int8 `json:"status"`
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ func RegisterRoutes(router *mux.Router, userController *controllers.UserControll
|
|||||||
logger.Info.Println("Registering backend/api/register route")
|
logger.Info.Println("Registering backend/api/register route")
|
||||||
router.HandleFunc("/backend/api/verify", userController.VerifyMailHandler).Methods("GET")
|
router.HandleFunc("/backend/api/verify", userController.VerifyMailHandler).Methods("GET")
|
||||||
router.HandleFunc("/backend/api/register", userController.RegisterUser).Methods("POST")
|
router.HandleFunc("/backend/api/register", userController.RegisterUser).Methods("POST")
|
||||||
router.HandleFunc("/backend/api/plans", membershipController.RegisterPlan).Methods("POST")
|
router.HandleFunc("/backend/api/register/subscription", membershipController.RegisterSubscription).Methods("POST")
|
||||||
// router.HandleFunc("/login", userController.LoginUser).Methods("POST")
|
// router.HandleFunc("/login", userController.LoginUser).Methods("POST")
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -29,8 +29,8 @@ func Run() {
|
|||||||
bankAccountRepo := repositories.NewBankAccountRepository(db)
|
bankAccountRepo := repositories.NewBankAccountRepository(db)
|
||||||
bankAccountService := services.NewBankAccountService(bankAccountRepo)
|
bankAccountService := services.NewBankAccountService(bankAccountRepo)
|
||||||
membershipRepo := repositories.NewMembershipRepository(db)
|
membershipRepo := repositories.NewMembershipRepository(db)
|
||||||
planRepo := repositories.NewSubscriptionModelsRepository(db)
|
subscriptionRepo := repositories.NewSubscriptionModelsRepository(db)
|
||||||
membershipService := services.NewMembershipService(membershipRepo, planRepo)
|
membershipService := services.NewMembershipService(membershipRepo, subscriptionRepo)
|
||||||
userRepo := repositories.NewUserRepository(db)
|
userRepo := repositories.NewUserRepository(db)
|
||||||
userService := services.NewUserService(userRepo)
|
userService := services.NewUserService(userRepo)
|
||||||
userController := controllers.NewUserController(userService, emailService, consentService, bankAccountService, membershipService)
|
userController := controllers.NewUserController(userService, emailService, consentService, bankAccountService, membershipService)
|
||||||
|
|||||||
@@ -9,16 +9,16 @@ import (
|
|||||||
type MembershipService interface {
|
type MembershipService interface {
|
||||||
RegisterMembership(membership *models.Membership) (int64, error)
|
RegisterMembership(membership *models.Membership) (int64, error)
|
||||||
FindMembershipByUserID(userID int64) (*models.Membership, error)
|
FindMembershipByUserID(userID int64) (*models.Membership, error)
|
||||||
RegisterPlan(plan *models.SubscriptionModel) (int64, error)
|
RegisterSubscription(subscription *models.SubscriptionModel) (int64, error)
|
||||||
}
|
}
|
||||||
|
|
||||||
type membershipService struct {
|
type membershipService struct {
|
||||||
repo repositories.MembershipRepository
|
repo repositories.MembershipRepository
|
||||||
planRepo repositories.SubscriptionModelsRepository
|
subscriptionRepo repositories.SubscriptionModelsRepository
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewMembershipService(repo repositories.MembershipRepository, planRepo repositories.SubscriptionModelsRepository) MembershipService {
|
func NewMembershipService(repo repositories.MembershipRepository, subscriptionRepo repositories.SubscriptionModelsRepository) MembershipService {
|
||||||
return &membershipService{repo, planRepo}
|
return &membershipService{repo, subscriptionRepo}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (service *membershipService) RegisterMembership(membership *models.Membership) (int64, error) {
|
func (service *membershipService) RegisterMembership(membership *models.Membership) (int64, error) {
|
||||||
@@ -30,8 +30,8 @@ func (service *membershipService) FindMembershipByUserID(userID int64) (*models.
|
|||||||
return service.repo.FindMembershipByUserID(userID)
|
return service.repo.FindMembershipByUserID(userID)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Membership_Plans
|
// Membership_Subscriptions
|
||||||
|
|
||||||
func (service *membershipService) RegisterPlan(plan *models.SubscriptionModel) (int64, error) {
|
func (service *membershipService) RegisterSubscription(subscription *models.SubscriptionModel) (int64, error) {
|
||||||
return service.planRepo.CreateSubscriptionModel(plan)
|
return service.subscriptionRepo.CreateSubscriptionModel(subscription)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user