Documentation ¶
Index ¶
- func CheckAndExtractIssueID(source string) (trimmed string, success bool)
- func WrongStatusCodeError(statusCode int, statusText string) error
- type Activities
- type ActivitiesRoot
- type Client
- type ClientManager
- func (r *ClientManager) Activities() ([]*Activities, error)
- func (r *ClientManager) AddComment(issueID string, comment string, assignedTo int) error
- func (r *ClientManager) AssignedIssues() ([]*Issue, error)
- func (r *ClientManager) FillHoursRequest(issueID string, hours string, comment string, activityID string) (*TimeEntryBodyResponse, error)
- func (r *ClientManager) Issue(issueID string) (*IssueContainer, error)
- func (r *ClientManager) TodayTimeEntries() ([]*TimeEntryResponse, error)
- type ClientRequestMock
- type HTTPClient
- type Issue
- type IssueContainer
- type IssuesList
- type TablePrinter
- type TimeEntriesBodyResponse
- type TimeEntry
- type TimeEntryBody
- type TimeEntryBodyResponse
- type TimeEntryResponse
- type TimeEntryResponseActivity
- type TimeEntryResponseIssue
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CheckAndExtractIssueID ¶
CheckAndExtractIssueID check input source string and return check result and id string with trimmed # left symbol.
func WrongStatusCodeError ¶
Types ¶
type Activities ¶
type ActivitiesRoot ¶
type ActivitiesRoot struct {
TimeEntryActivities []*Activities `json:"time_entry_activities"`
}
type Client ¶
type Client interface { FillHoursRequest(issueID string, hours string, comment string, activityID string) (*TimeEntryBodyResponse, error) Issue(issueID string) (*IssueContainer, error) AssignedIssues() ([]*Issue, error) Activities() ([]*Activities, error) TodayTimeEntries() ([]*TimeEntryResponse, error) AddComment(issueID string, comment string, assignedTo int) error }
type ClientManager ¶
type ClientManager struct {
// contains filtered or unexported fields
}
func NewClientManager ¶
func NewClientManager(networkClient HTTPClient, storage storage.Manager, chatID int64) *ClientManager
func (*ClientManager) Activities ¶
func (r *ClientManager) Activities() ([]*Activities, error)
func (*ClientManager) AddComment ¶
func (r *ClientManager) AddComment(issueID string, comment string, assignedTo int) error
func (*ClientManager) AssignedIssues ¶
func (r *ClientManager) AssignedIssues() ([]*Issue, error)
func (*ClientManager) FillHoursRequest ¶
func (r *ClientManager) FillHoursRequest(issueID string, hours string, comment string, activityID string) (*TimeEntryBodyResponse, error)
func (*ClientManager) Issue ¶
func (r *ClientManager) Issue(issueID string) (*IssueContainer, error)
func (*ClientManager) TodayTimeEntries ¶
func (r *ClientManager) TodayTimeEntries() ([]*TimeEntryResponse, error)
type ClientRequestMock ¶
type ClientRequestMock struct {
// contains filtered or unexported fields
}
func NewClientRequestMock ¶
func NewClientRequestMock(statusCode int, mockError error, response string) *ClientRequestMock
type Issue ¶
type Issue struct { AssignedTo struct { ID int `json:"id"` Name string `json:"name"` } `json:"assigned_to"` Author struct { ID int `json:"id"` Name string `json:"name"` } `json:"author"` CreatedOn string `json:"created_on"` Description string `json:"description"` DoneRatio int `json:"done_ratio"` DueDate string `json:"due_date"` ID int `json:"id"` Priority struct { ID int `json:"id"` Name string `json:"name"` } `json:"priority"` Project struct { ID int `json:"id"` Name string `json:"name"` } `json:"project"` SpentHours float32 `json:"spent_hours"` Status struct { ID int `json:"id"` Name string `json:"name"` } `json:"status"` Subject string `json:"subject"` Tracker struct { ID int `json:"id"` Name string `json:"name"` } `json:"tracker"` UpdatedOn string `json:"updated_on"` }
type IssueContainer ¶
type IssueContainer struct {
Issue *Issue `json:"issue"`
}
type IssuesList ¶
type TablePrinter ¶
type TablePrinter struct { }
type TimeEntriesBodyResponse ¶
type TimeEntriesBodyResponse struct {
TimeEntries []*TimeEntryResponse `json:"time_entries"`
}
type TimeEntryBody ¶
type TimeEntryBody struct {
TimeEntry *TimeEntry `json:"time_entry"`
}
type TimeEntryBodyResponse ¶
type TimeEntryBodyResponse struct {
TimeEntry TimeEntryResponse `json:"time_entry"`
}
type TimeEntryResponse ¶
type TimeEntryResponse struct { Activity TimeEntryResponseActivity `json:"activity"` Comments string `json:"comments"` CreatedOn string `json:"created_on"` Hours float32 `json:"hours"` ID int `json:"id"` Issue TimeEntryResponseIssue `json:"issue"` Project struct { ID int `json:"id"` Name string `json:"name"` } `json:"project"` SpentOn string `json:"spent_on"` UpdatedOn string `json:"updated_on"` User struct { ID int `json:"id"` Name string `json:"name"` } `json:"user"` }
type TimeEntryResponseIssue ¶
type TimeEntryResponseIssue struct {
ID int `json:"id"`
}
Click to show internal directories.
Click to hide internal directories.