calculator

package
v0.4.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 17, 2022 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

View Source
const (
	StatusDone       Status = "Done"
	StatusToDo       Status = "ToDo"
	StatusInProgress Status = "InProgress"
	StatusUndefined  Status = "undefined"

	PlanningStatusOverdue   PlanningStatus = "Overdue"
	PlanningStatusPostponed PlanningStatus = "Postponed"
	PlanningStatusAdvanced  PlanningStatus = "Advanced"
	PlanningStatusOK        PlanningStatus = "Ok"
	PlanningStatusReplanned PlanningStatus = "Replanned"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Calculator

type Calculator struct {
	// contains filtered or unexported fields
}

func NewCalculator

func NewCalculator(jiraBaseURL string, statusNames *config.StatusNames) Calculator

func (*Calculator) GenerateSummary

func (c *Calculator) GenerateSummary(epics []*cache.EpicLink, project string, date time.Time) Summary

type EpicFinder added in v0.4.0

type EpicFinder interface {
	FromCacheOrdered(time.Time, string) ([]*cache.EpicLink, error)
}

type NamedItems

type NamedItems struct {
	Name  string
	Epics []cache.EpicLink
}

type Pair added in v0.4.0

type Pair struct {
	Key   string
	Title string
	Link  string

	Left  PlanEpic
	Right PlanEpic
}

func (*Pair) LeftDueDate added in v0.4.0

func (p *Pair) LeftDueDate(format string) string

func (*Pair) PlanningStatus added in v0.4.0

func (p *Pair) PlanningStatus() PlanningStatus

func (*Pair) Progress added in v0.4.0

func (p *Pair) Progress() float64

func (*Pair) RightDueDate added in v0.4.0

func (p *Pair) RightDueDate(format string) string

type PlanEpic added in v0.4.0

type PlanEpic struct {
	Title        string
	SnapshotDate time.Time
	StartDate    time.Time
	DueDate      time.Time
	Key          string
	Link         string
	Status       Status
	PlanStories  []*PlanStory
	StoriesDone  int
}

type PlanStory added in v0.4.0

type PlanStory struct {
	SnapshotDate time.Time
	Key          string
	Title        string
	Link         string
	Status       Status
}

type PlanningStatus added in v0.4.0

type PlanningStatus string

type Quarter

type Quarter int
const (
	Q1 Quarter = 1 + iota
	Q2
	Q3
	Q4
)

func (Quarter) String

func (q Quarter) String() string

type Report2 added in v0.4.0

type Report2 struct {
	Title        string
	From         time.Time
	To           time.Time
	SnapshotFrom time.Time
	SnapshotTo   time.Time

	LeftEpicsPlanned   int
	LeftEpicsDone      int
	LeftStoriesPlanned int
	LeftStoriesDone    int

	RightEpicsPlanned   int
	RightEpicsDone      int
	RightStoriesPlanned int
	RightStoriesDone    int

	EpicPairs []*Pair
}

func (*Report2) IncrEpicDone added in v0.4.0

func (r *Report2) IncrEpicDone(left bool, status Status, count int)

func (*Report2) IncrPlanned added in v0.4.0

func (r *Report2) IncrPlanned(left bool, epicCount, storyCount int)

func (*Report2) IncrStoriesDone added in v0.4.0

func (r *Report2) IncrStoriesDone(left bool, status Status, count int)

func (*Report2) Progress added in v0.4.0

func (r *Report2) Progress() float64

type Status added in v0.4.0

type Status string

type StatusConverter added in v0.4.0

type StatusConverter struct {
	// contains filtered or unexported fields
}

func NewStatusConverter added in v0.4.0

func NewStatusConverter(statusConfig *config.StatusNames) StatusConverter

func (StatusConverter) PlanningStatus added in v0.4.0

func (sc StatusConverter) PlanningStatus(
	actualStatus Status,
	snapshotDate time.Time,
	actualStartDate time.Time,
	actualDueDate time.Time,
	historicDueDates []historicDueDate,
) PlanningStatus

func (StatusConverter) Status added in v0.4.0

func (sc StatusConverter) Status(originStatus string) Status

type Summary

type Summary struct {
	Date    time.Time
	Project string

	Done        []cache.EpicLink
	Overdue     []cache.EpicLink
	Ongoing     []cache.EpicLink
	Outstanding []cache.EpicLink
	// contains filtered or unexported fields
}

func (*Summary) AllCount added in v0.3.0

func (s *Summary) AllCount() int

func (*Summary) NamedStats

func (s *Summary) NamedStats() []NamedItems

func (*Summary) String

func (s *Summary) String() string

type TimeWindowDiffer added in v0.4.0

type TimeWindowDiffer struct {
	// contains filtered or unexported fields
}

func NewTimeWindowDiffer added in v0.4.0

func NewTimeWindowDiffer(linkPrefix string, statusConverter StatusConverter, epicFinder EpicFinder, cacheDir string) TimeWindowDiffer

func (*TimeWindowDiffer) Report added in v0.4.0

func (twd *TimeWindowDiffer) Report(project string, reportFrom, reportTo time.Time) (*Report2, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL