from flask import g from auth.auth_view import AuthorizedView from shared.validators import validate_UUID from utils.handlers import get_request_model from campaigns.schemas import CampaignScheduleUpdateSchema from campaigns.services.campaigns_service import CampaignsService class CampaignScheduleUpdateView(AuthorizedView): service = CampaignsService() def patch(self, project_id, campaign_uuid): validate_UUID(campaign_uuid) self.permissions.can_edit_campaign(project_id=project_id, campaign_uuid=campaign_uuid) params = get_request_model(CampaignScheduleUpdateSchema) return self.service.update_campaign_schedule(campaign_uuid=campaign_uuid, params=params, updated_by=g.user_id)