/*
 * Dash API
 *
 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
 *
 * API version: 0.1
 * Generated by: OpenAPI Generator (https://openapi-generator.tech)
 */

package dashapi

import (
	"context"
	"net/http"
	"errors"
)

// PlanApiService is a service that implements the logic for the PlanApiServicer
// This service should implement the business logic for every endpoint for the PlanApi API.
// Include any external packages or services that will be required by this service.
type PlanApiService struct {
}

// NewPlanApiService creates a default api service
func NewPlanApiService() PlanApiServicer {
	return &PlanApiService{}
}

// GetPlanDayForDate - 
func (s *PlanApiService) GetPlanDayForDate(ctx context.Context, date string) (ImplResponse, error) {
	// TODO - update GetPlanDayForDate with the required logic for this service method.
	// Add api_plan_service.go to the .openapi-generator-ignore to avoid overwriting this service implementation when updating open api generation.

	//TODO: Uncomment the next line to return response Response(200, PlanDay{}) or use other options such as http.Ok ...
	//return Response(200, PlanDay{}), nil

	return Response(http.StatusNotImplemented, nil), errors.New("GetPlanDayForDate method not implemented")
}

// GetPlanMonthForDate - 
func (s *PlanApiService) GetPlanMonthForDate(ctx context.Context, date string) (ImplResponse, error) {
	// TODO - update GetPlanMonthForDate with the required logic for this service method.
	// Add api_plan_service.go to the .openapi-generator-ignore to avoid overwriting this service implementation when updating open api generation.

	//TODO: Uncomment the next line to return response Response(200, PlanMonth{}) or use other options such as http.Ok ...
	//return Response(200, PlanMonth{}), nil

	return Response(http.StatusNotImplemented, nil), errors.New("GetPlanMonthForDate method not implemented")
}

// GetPlanWeekForDate - 
func (s *PlanApiService) GetPlanWeekForDate(ctx context.Context, date string) (ImplResponse, error) {
	// TODO - update GetPlanWeekForDate with the required logic for this service method.
	// Add api_plan_service.go to the .openapi-generator-ignore to avoid overwriting this service implementation when updating open api generation.

	//TODO: Uncomment the next line to return response Response(200, PlanWeek{}) or use other options such as http.Ok ...
	//return Response(200, PlanWeek{}), nil

	return Response(http.StatusNotImplemented, nil), errors.New("GetPlanWeekForDate method not implemented")
}

// SavePlanForDay - 
func (s *PlanApiService) SavePlanForDay(ctx context.Context, planDay PlanDay) (ImplResponse, error) {
	// TODO - update SavePlanForDay with the required logic for this service method.
	// Add api_plan_service.go to the .openapi-generator-ignore to avoid overwriting this service implementation when updating open api generation.

	//TODO: Uncomment the next line to return response Response(200, {}) or use other options such as http.Ok ...
	//return Response(200, nil),nil

	return Response(http.StatusNotImplemented, nil), errors.New("SavePlanForDay method not implemented")
}

// SavePlanForMonth - 
func (s *PlanApiService) SavePlanForMonth(ctx context.Context, planMonth PlanMonth) (ImplResponse, error) {
	// TODO - update SavePlanForMonth with the required logic for this service method.
	// Add api_plan_service.go to the .openapi-generator-ignore to avoid overwriting this service implementation when updating open api generation.

	//TODO: Uncomment the next line to return response Response(200, {}) or use other options such as http.Ok ...
	//return Response(200, nil),nil

	return Response(http.StatusNotImplemented, nil), errors.New("SavePlanForMonth method not implemented")
}

// SavePlanForWeek - 
func (s *PlanApiService) SavePlanForWeek(ctx context.Context, planWeek PlanWeek) (ImplResponse, error) {
	// TODO - update SavePlanForWeek with the required logic for this service method.
	// Add api_plan_service.go to the .openapi-generator-ignore to avoid overwriting this service implementation when updating open api generation.

	//TODO: Uncomment the next line to return response Response(200, {}) or use other options such as http.Ok ...
	//return Response(200, nil),nil

	return Response(http.StatusNotImplemented, nil), errors.New("SavePlanForWeek method not implemented")
}
