package contracts

import "mrcat.com.br/monday-auto/contracts"

O pacote contracts implementa funções e structs para lidar com a busca e agendamento de contratos.

Index

Types

type Contract

type Contract struct {
	ID         graphql.ID
	Number     string
	Board      string
	OP         string
	Franchised string
	ContractDate
	LocationDate string
	// contains filtered or unexported fields
}

Contract representa um contato. Os campos não fornecidos assumem o valor padrão do tipo.

func AllActives

func AllActives() ([]*Contract, error)

AllActives retorna todos os contratos ativos do board Gestão de Contratos | FRANQUIA E LOCAÇÃO.

Um contrato está ativo quando a data do fim da vigência de contrato é menor que o dia atual, e quando a coluna STATUS DA LOJA (color_mksn62js) possui o valor "ATIVA".

func (*Contract) ClearSchedules

func (c *Contract) ClearSchedules()

ClearSchedules limpa todos os contratos agendados.

func (*Contract) ScheduleAlerts

func (c *Contract) ScheduleAlerts() error

ScheduleAlerts agenda o disparo das comunicações de vencimento do contrato. Os disparos de vencimento de locação são disparados 12 e 6 meses antes do vencimento e os vencimento de gestão são disparados 12, 6 e 2 meses antes.

O disparo só é efetivamente realizado se o contrato ainda estiver ativo na data em questão.

type ContractDate

type ContractDate struct {
	// A data de início do contrato
	From string `json:"from"`
	// A data de fim do contrato
	To string `json:"to"`
}

ContractDate representa a faixa de inicio e fim de um contrato de locação.