model

package
v0.0.0-...-83adff0 Latest Latest
Warning

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

Go to latest
Published: Jul 6, 2020 License: GPL-3.0 Imports: 1 Imported by: 0

Documentation

Index

Constants

View Source
const (
	IterationURL         = "https://api.tapd.cn/iterations?workspace_id=%s&name=%s&limit=%d&fields=id,name,startdate,enddate"
	AllIterationURL      = "https://api.tapd.cn/iterations?workspace_id=%s&limit=%d"
	StoryURL             = "https://api.tapd.cn/stories?workspace_id=%s&iteration_id=%s&limit=%d"
	StoryURLWithoutItera = "https://api.tapd.cn/stories?workspace_id=%s&limit=%d"
	SpecStoryURL         = "https://api.tapd.cn/stories?workspace_id=%s&id=%s"
	StoryChangeURL       = "https://api.tapd.cn/story_changes?workspace_id=%s&story_id=%s&limit=%d"
	NameMapURL           = "https://api.tapd.cn/workflows/status_map?system=story&workspace_id=%s"
	CategoryURL          = "https://api.tapd.cn/story_categories?workspace_id=%s&fields=id,name&limit=%d"
	BugURL               = "https://api.tapd.cn/bugs?workspace_id=%s&limit=%d"
	ReleaseURL           = "https://api.tapd.cn/releases?workspace_id=%s&id=%s"
	CategoryPreURL       = "https://api.tapd.cn/story_categories?workspace_id=%s&id=%s"
	BugPreURL            = "https://api.tapd.cn/bugs?workspace_id=%s&id=%s"
	CreateBugURL         = "https://api.tapd.cn/bugs"
)

tapd urls

View Source
const (
	IPS  = 30
	SPS  = 30
	SCPS = 50
	CPS  = 50
)

page size

Variables

View Source
var (
	IOSRelease        = map[string]string{"1120055921001001566": "粉 - 5.22", "1120055921001001673": "粉 - 5.23", "1120055921001001766": "粉 - 5.24", "1120055921001001856": "粉 - 5.25", "1120055921001001930": "粉 - 5.26", "1120055921001002000": "粉 - 5.27", "1120055921001002073": "粉 - 5.28", "1120055921001002147": "粉 - 5.29", "1120055921001002213": "粉 - 5.30", "1120055921001002234": "粉 - 5.31"}
	AndroidRelease    = map[string]string{"1120060791001001567": "Android 5.22", "1120060791001001672": "Android 5.23", "1120060791001001731": "Android 5.24", "1120060791001001855": "Android 5.25", "1120060791001001931": "Android 5.26", "1120060791001001999": "Android 5.27", "1120060791001002072": "Android 5.28", "1120060791001002158": "Android 5.29", "1120060791001002212": "Android 5.30", "1120060791001002268": "Android 5.31"}
	IOSWorkflow       = []string{"规划中(研发不受理此状态!)", "需求评审", "需求评审未通过", "确定发布计划", "待开发", "开发中", "产品设计验收", "验收通过待测试", "测试中", "验收通过待测试(接入需求)", "测试通过待合入", "已合入总包", "需求完成", "需求挂起", "需求取消", "免测发布"}
	AndroidWorkflow   = []string{"规划中(研发不受理此状态!)", "需求评审", "需求评审未通过", "确定发布计划", "待开发", "开发中", "产品设计验收", "验收通过待测试", "测试中", "验收通过待测试(接入需求)", "测试通过", "待合入总包", "需求完成", "需求挂起", "需求取消", "免测发布"}
	BaseFields        = map[string]string{"id": "ID", "status": "状态", "priority": "优先级", "size": "规模", "category_id": "需求分类", "parent_id": "父需求", "release_id": "发布计划", "owner": "处理人", "developer": "开发人员", "creator": "创建人", "begin": "预计开始", "due": "预计结束", "created": "创建时间", "completed": "完成时间", "effort": "预估工时"}
	BaseFieldsList    = []string{"ID", "状态", "优先级", "规模", "需求分类", "父需求", "发布计划", "处理人", "开发人员", "创建人", "预计开始", "预计结束", "创建时间", "完成时间", "预估工时"}
	IOSFields         = map[string]string{"custom_field_99": "接口上线日", "custom_field_97": "双端都提得需求", "custom_field_93": "端范围(默认仅粉iPhone)", "custom_field_92": "是否可以单端上线"}
	IOSFieldsList     = []string{"接口上线日", "双端都提得需求", "端范围(默认仅粉iPhone)", "是否可以单端上线"}
	AndroidFields     = map[string]string{"custom_field_99": "接口上线日", "custom_field_97": "双端都提得需求", "custom_field_93": "是否可以单端上线"}
	AndroidFieldsList = []string{"接口上线日", "双端都提得需求", "是否可以单端上线"}
	LiveWorkflow      = []string{"需求规划中(未受理需求)", "需求文档评审", "待排期", "已排期", "开发中", "开发完成待体验", "验收通过待测试", "测试中", "测试通过", "产品设计验收通过", "需求挂起", "需求取消", "免测发布", "已实现"}
	BPlusWorkflow     = []string{"需求中", "已评审", "开发中", "产品/设计体验", "转测试", "测试中", "测试完成", "已实现", "已拒绝"}

	AndroidStoryWallFields   = []string{"auditing", "status_2", "status_11", "developing", "product_experience", "status_5", "testing", "status_6", "status_7", "status_1"}
	AndroidStoryWallColNames = map[string]string{"auditing": "需求评审", "status_2": "确定发布计划", "status_11": "待开发", "developing": "开发中", "product_experience": "产品设计验收", "status_5": "验收通过待测试", "testing": "测试中", "status_6": "测试通过", "status_7": "待合入总包", "status_1": "需求完成"}
	IosStoryWallFields       = []string{"auditing", "status_2", "status_11", "developing", "product_experience", "status_5", "testing", "status_7", "status_8", "status_1"}
	IosStoryWallColNames     = map[string]string{"auditing": "需求评审", "status_2": "确定发布计划", "status_11": "待开发", "developing": "开发中", "product_experience": "产品设计验收", "status_5": "验收通过待测试", "testing": "测试中", "status_7": "测试通过待合入", "status_8": "已合入总包", "status_1": "需求完成"}
)

ios and and android info

View Source
var (
	Test       = "test"
	Experience = "experience"
)

test and reject type

View Source
var (
	IOS     = "ios"
	Android = "android"
	Live    = "live"
	BPlus   = "bplus"
)

workspace type

Functions

This section is empty.

Types

type AndroidStory

type AndroidStory struct {
	CustomField99 string `json:"custom_field_99"` //接口上线日
	CustomField97 string `json:"custom_field_97"` //双端都提得需求
	CustomField93 string `json:"custom_field_93"` //是否可以单端上线
}

AndroidStory additional fields for android story

type Bug

type Bug struct {
	ID               string `json:"id"`
	Title            string `json:"title"`
	Description      string `json:"description"`
	Priority         string `json:"priority"`
	Severity         string `json:"severity"`
	Module           string `json:"module"`
	Status           string `json:"status"`
	Reporter         string `json:"reporter"`
	Deadline         string `json:"deadline"`
	Created          string `json:"created"`
	BugType          string `json:"bugtype"`
	Resolved         string `json:"resolved"`
	Closed           string `json:"closed"`
	Modified         string `json:"modified"`
	LastModify       string `json:"lastmodify"`
	Auditer          string `json:"auditer"`
	DE               string `json:"de"`
	VersionTest      string `json:"version_test"`
	VersionReport    string `json:"version_report"`
	VersionClose     string `json:"version_close"`
	VersionFix       string `json:"version_fix"`
	BaselineFind     string `json:"baseline_find"`
	BaselineJoin     string `json:"baseline_join"`
	BaselineClose    string `json:"baseline_close"`
	BaselineTest     string `json:"baseline_test"`
	SourcePhase      string `json:"sourcephase"`
	TE               string `json:"te"`
	CurrentOwner     string `json:"current_owner"`
	IterationID      string `json:"iteration_id"`
	Resolution       string `json:"resolution"`
	Source           string `json:"source"`
	OriginPhase      string `json:"originphase"`
	Confirmer        string `json:"confirmer"`
	Milestone        string `json:"milestone"`
	Participator     string `json:"participator"`
	Closer           string `json:"closer"`
	Platform         string `json:"platform"`
	OS               string `json:"os"`
	TestType         string `json:"testtype"`
	TestPhase        string `json:"testphase"`
	Frequency        string `json:"frequency"`
	CC               string `json:"cc"`
	RegressionNumber string `json:"regression_number"`
	Flows            string `json:"flows"`
	Feature          string `json:"feature"`
	TestMode         string `json:"testmode"`
	Estimate         string `json:"estimate"`
	IssueID          string `json:"issue_id"`
	CreatedFrom      string `json:"created_from"`
	InProgressTime   string `json:"in_progress_time"`
	VerifyTime       string `json:"verify_time"`
	RejectTime       string `json:"reject_time"`
	ReopenTime       string `json:"reopen_time"`
	AuditTime        string `json:"audit_time"`
	SuspendTime      string `json:"suspend_time"`
	Due              string `json:"due"`
	Begin            string `json:"begin"`
	ReleaseID        string `json:"release_id"`
	WorkspaceID      string `json:"workspace_id"`
	CustomFieldOne   string `json:"custom_field_one"`
	CustomFieldTwo   string `json:"custom_field_two"`
	CustomFieldThree string `json:"custom_field_three"`
	CustomFieldFour  string `json:"custom_field_four"`
	CustomFieldFive  string `json:"custom_field_five"`
	CustomField6     string `json:"custom_field_6"`
	CustomField7     string `json:"custom_field_7"`
	CustomField8     string `json:"custom_field_8"`
	CustomField9     string `json:"custom_field_9"`
	CustomField10    string `json:"custom_field_10"`
	CustomField11    string `json:"custom_field_11"`
	CustomField12    string `json:"custom_field_12"`
	CustomField13    string `json:"custom_field_13"`
	CustomField14    string `json:"custom_field_14"`
	CustomField15    string `json:"custom_field_15"`
	CustomField16    string `json:"custom_field_16"`
	CustomField17    string `json:"custom_field_17"`
	CustomField18    string `json:"custom_field_18"`
	CustomField19    string `json:"custom_field_19"`
	CustomField20    string `json:"custom_field_20"`
	CustomField21    string `json:"custom_field_21"`
	CustomField22    string `json:"custom_field_22"`
	CustomField23    string `json:"custom_field_23"`
	CustomField24    string `json:"custom_field_24"`
	CustomField25    string `json:"custom_field_25"`
	CustomField26    string `json:"custom_field_26"`
	CustomField27    string `json:"custom_field_27"`
	CustomField28    string `json:"custom_field_28"`
	CustomField29    string `json:"custom_field_29"`
	CustomField30    string `json:"custom_field_30"`
	CustomField31    string `json:"custom_field_31"`
	CustomField32    string `json:"custom_field_32"`
	CustomField33    string `json:"custom_field_33"`
	CustomField34    string `json:"custom_field_34"`
	CustomField35    string `json:"custom_field_35"`
	CustomField36    string `json:"custom_field_36"`
	CustomField37    string `json:"custom_field_37"`
	CustomField38    string `json:"custom_field_38"`
	CustomField39    string `json:"custom_field_39"`
	CustomField40    string `json:"custom_field_40"`
	CustomField41    string `json:"custom_field_41"`
	CustomField42    string `json:"custom_field_42"`
	CustomField43    string `json:"custom_field_43"`
	CustomField44    string `json:"custom_field_44"`
	CustomField45    string `json:"custom_field_45"`
	CustomField46    string `json:"custom_field_46"`
	CustomField47    string `json:"custom_field_47"`
	CustomField48    string `json:"custom_field_48"`
	CustomField49    string `json:"custom_field_49"`
	CustomField50    string `json:"custom_field_50"`
}

Bug Bug

type BugIssueDetail

type BugIssueDetail struct {
	CallStack string `json:"callStack"`
}

BugIssueDetail Bug Issue Detail.

type BugIssueDetailResponse

type BugIssueDetailResponse struct {
	Code int             `json:"code"`
	Data *BugIssueDetail `json:"data"`
}

BugIssueDetailResponse Bug Issue Detail Response.

type BugIssueExceptionListResponse

type BugIssueExceptionListResponse struct {
	Status int                 `json:"status"`
	Ret    *IssueExceptionList `json:"ret"`
}

BugIssueExceptionListResponse Bug Issue Exception List Response.

type BugIssueRequest

type BugIssueRequest struct {
	StartNum      int
	Version       string
	Rows          int
	PlatformID    string
	ProjectID     string
	ExceptionType string
}

BugIssueRequest Bug Issue Request.

type BugIssueResponse

type BugIssueResponse struct {
	Status int     `json:"status"`
	Ret    *BugRet `json:"ret"`
}

BugIssueResponse Bug Issue Response.

type BugIssues

type BugIssues struct {
	IssueID      string    `json:"issueId"`
	Title        string    `json:"exceptionName"`
	ExceptionMsg string    `json:"exceptionMessage"`
	KeyStack     string    `json:"keyStack"`
	LastTime     string    `json:"lastestUploadTime"`
	Count        int64     `json:"count"`
	Tags         []*BugTag `json:"tagInfoList"`
	UserCount    int64     `json:"imeiCount"`
	Version      string    `json:"version"`
}

BugIssues Bug Issues.

type BugResponse

type BugResponse struct {
	Status int           `json:"status"`
	Data   []*BugWrapper `json:"data"`
	Info   string        `json:"info"`
}

BugResponse Bug Response

type BugRet

type BugRet struct {
	NumFound  int          `json:"numFound"`
	BugIssues []*BugIssues `json:"issueList"`
}

BugRet Bug Ret.

type BugSingleResponse

type BugSingleResponse struct {
	Status int         `json:"status"`
	Data   *BugWrapper `json:"data"`
	Info   string      `json:"info"`
}

BugSingleResponse Bug Response

type BugTag

type BugTag struct {
	TagName string `json:"tagName"`
}

BugTag Bug Tag.

type BugTemplate

type BugTemplate struct {
	ID               int64  `json:"id" gorm:"column:id"`
	WorkspaceID      string `json:"workspace_id" gorm:"column:workspace_id"`
	ProjectID        string `json:"project_id" gorm:"column:project_id"`
	PlatformID       string `json:"platform_id" gorm:"column:platform_id"`
	Title            string `json:"title" gorm:"column:title"`
	Description      string `json:"description" gorm:"column:description"`
	CurrentOwner     string `json:"current_owner" gorm:"column:current_owner"`
	Platform         string `json:"platform" gorm:"column:platform"`
	Module           string `json:"module" gorm:"column:module"`
	ReleaseID        string `json:"release_id" gorm:"column:release_id"`
	Priority         string `json:"priority" gorm:"column:priority"`
	Severity         string `json:"severity" gorm:"column:severity"`
	Source           string `json:"source" gorm:"column:source"`
	CustomFieldFour  string `json:"custom_field_four" gorm:"column:custom_field_four"`
	BugType          string `json:"bugtype" gorm:"column:bugtype"`
	OriginPhase      string `json:"originphase" gorm:"column:originphase"`
	CustomFieldThree string `json:"custom_field_three" gorm:"column:custom_field_three"`
	Reporter         string `json:"reporter" gorm:"column:reporter"`
	Status           string `json:"status" gorm:"column:status"`
	IssueFilterSQL   string `json:"issue_filter_sql" gorm:"column:issue_filter_sql"`
	SeverityKey      string `json:"severity_key" gorm:"column:severity_key"`
}

BugTemplate BugTemplate.

type BugVersion

type BugVersion struct {
	Name       string `json:"name"`
	Enable     int    `json:"enable"`
	SDKVersion string `json:"sdkVersion"`
}

BugVersion BugVersion.

type BugVersionResponse

type BugVersionResponse struct {
	Status int                   `json:"status"`
	Ret    *SelectorPropertyList `json:"ret"`
}

BugVersionResponse Bug Version Response.

type BugWrapper

type BugWrapper struct {
	Bug *Bug `json:"Bug"`
}

BugWrapper Bug Wrapper

type Category

type Category struct {
	ID   string `json:"id"`
	Name string `json:"name"`
}

Category project category

type CategoryPreResponse

type CategoryPreResponse struct {
	Status int              `json:"status"`
	Data   *CategoryWrapper `json:"data"`
	Info   string           `json:"info"`
}

CategoryPreResponse response for tapd category query

type CategoryResponse

type CategoryResponse struct {
	Status int                `json:"status"`
	Data   []*CategoryWrapper `json:"data"`
	Info   string             `json:"info"`
}

CategoryResponse response for tapd category query

type CategoryWrapper

type CategoryWrapper struct {
	Category *Category
}

CategoryWrapper sub struct in CategoryResponse

type IOSStory

type IOSStory struct {
	CustomField99 string `json:"custom_field_99"` //接口上线日
	CustomField97 string `json:"custom_field_97"` //双端都提得需求
	CustomField93 string `json:"custom_field_93"` //端范围(默认仅粉iPhone)
	CustomField92 string `json:"custom_field_92"` //是否可以单端上线
}

IOSStory additional fields for ios story

type IssueException

type IssueException struct {
	IssueID string `json:"issueId"`
	Status  int    `json:"status"`
}

IssueException IssueException.

type IssueExceptionList

type IssueExceptionList struct {
	IssueException []*IssueException `json:"issueList"`
}

IssueExceptionList IssueExceptionList.

type IssueLastTime

type IssueLastTime struct {
	ID       int64     `json:"id" gorm:"column:id"`
	LastTime time.Time `json:"last_time" gorm:"column:last_time"`
	Version  string    `json:"version" gorm:"column:version"`
	//1-正在执行中,0未执行或已执行完
	TaskStatus int    `json:"task_status" gorm:"column:task_status"`
	LastIssue  string `json:"last_issue" gorm:"column:last_issue"`
}

IssueLastTime Issue Last Time.

type IssueRecord

type IssueRecord struct {
	ID           int64     `json:"id" gorm:"column:id"`
	IssueNo      string    `json:"issue_no" gorm:"column:issue_no"`
	Title        string    `json:"title" gorm:"column:title"`
	ExceptionMsg string    `json:"exception_msg" gorm:"column:exception_msg"`
	KeyStack     string    `json:"key_stack" gorm:"column:key_stack"`
	Detail       string    `json:"detail" gorm:"column:detail"`
	Tags         string    `json:"tags" gorm:"column:tags"`
	LastTime     time.Time `json:"last_time" gorm:"column:last_time"`
	HappenTimes  int64     `json:"happen_times" gorm:"column:happen_times"`
	UserTimes    int64     `json:"user_times" gorm:"column:user_times"`
	Version      string    `json:"version" gorm:"column:version"`
	ProjectID    string    `json:"project_id" gorm:"column:project_id"`
	IssueLink    string    `json:"issue_link" gorm:"column:issue_link"`
	TapdBugID    string    `json:"tapd_bug_id" gorm:"column:tapd_bug_id"`
}

IssueRecord Issue Record.

type Iteration

type Iteration struct {
	ID            string `json:"id"`
	Name          string `json:"name"`
	WorkspaceID   string `json:"workspace_id"`
	Startdate     string `json:"startdate"`
	Enddate       string `json:"enddate"`
	Status        string `json:"status"`
	ReleaseID     string `json:"release_id"`
	Description   string `json:"description"`
	Creator       string `json:"creator"`
	Created       string `json:"created"`
	Modified      string `json:"modified"`
	Completed     string `json:"completed"`
	CustomField1  string `json:"custom_field_1"`
	CustomField2  string `json:"custom_field_2"`
	CustomField3  string `json:"custom_field_3"`
	CustomField4  string `json:"custom_field_4"`
	CustomField5  string `json:"custom_field_5"`
	CustomField6  string `json:"custom_field_6"`
	CustomField7  string `json:"custom_field_7"`
	CustomField8  string `json:"custom_field_8"`
	CustomField9  string `json:"custom_field_9"`
	CustomField10 string `json:"custom_field_10"`
	CustomField11 string `json:"custom_field_11"`
	CustomField12 string `json:"custom_field_12"`
	CustomField13 string `json:"custom_field_13"`
	CustomField14 string `json:"custom_field_14"`
	CustomField15 string `json:"custom_field_15"`
	CustomField16 string `json:"custom_field_16"`
	CustomField17 string `json:"custom_field_17"`
	CustomField18 string `json:"custom_field_18"`
	CustomField19 string `json:"custom_field_19"`
	CustomField20 string `json:"custom_field_20"`
	CustomField21 string `json:"custom_field_21"`
	CustomField22 string `json:"custom_field_22"`
	CustomField23 string `json:"custom_field_23"`
	CustomField24 string `json:"custom_field_24"`
	CustomField25 string `json:"custom_field_25"`
	CustomField26 string `json:"custom_field_26"`
	CustomField27 string `json:"custom_field_27"`
	CustomField28 string `json:"custom_field_28"`
	CustomField29 string `json:"custom_field_29"`
	CustomField30 string `json:"custom_field_30"`
	CustomField31 string `json:"custom_field_31"`
	CustomField32 string `json:"custom_field_32"`
	CustomField33 string `json:"custom_field_33"`
	CustomField34 string `json:"custom_field_34"`
	CustomField35 string `json:"custom_field_35"`
	CustomField36 string `json:"custom_field_36"`
	CustomField37 string `json:"custom_field_37"`
	CustomField38 string `json:"custom_field_38"`
	CustomField39 string `json:"custom_field_39"`
	CustomField40 string `json:"custom_field_40"`
	CustomField41 string `json:"custom_field_41"`
	CustomField42 string `json:"custom_field_42"`
	CustomField43 string `json:"custom_field_43"`
	CustomField44 string `json:"custom_field_44"`
	CustomField45 string `json:"custom_field_45"`
	CustomField46 string `json:"custom_field_46"`
	CustomField47 string `json:"custom_field_47"`
	CustomField48 string `json:"custom_field_48"`
	CustomField49 string `json:"custom_field_49"`
	CustomField50 string `json:"custom_field_50"`
}

Iteration tapd iteration

type IterationResponse

type IterationResponse struct {
	Status int                 `json:"status"`
	Data   []*IterationWrapper `json:"data"`
	Info   string              `json:"info"`
}

IterationResponse response for tapd iteration query

type IterationWrapper

type IterationWrapper struct {
	Iteration *Iteration `json:"iteration"`
}

IterationWrapper sub struct in IterationResponse

type NameMapResponse

type NameMapResponse struct {
	Status int               `json:"status"`
	Data   map[string]string `json:"data"`
	Info   string
}

NameMapResponse story status name mapping

type RejectedStoryByIteration

type RejectedStoryByIteration struct {
	IterationName      string
	RejectedStoryCount int
	RejectedStoryList  []string
}

RejectedStoryByIteration rejected stories organized by iteration

type Release

type Release struct {
	ID          string `json:"id"`
	WorkSpaceID string `json:"workspace_id"`
	Name        string `json:"name"`
	Description string `json:"description"`
	StartDate   string `json:"startdate"`
	EndDate     string `json:"enddate"`
	Creator     string `json:"creator"`
	Created     string `json:"created"`
	Modified    string `json:"modified"`
	Status      string `json:"status"`
}

Release Release

type ReleaseResponse

type ReleaseResponse struct {
	Status int             `json:"status"`
	Data   *ReleaseWrapper `json:"data"`
	Info   string          `json:"info"`
}

ReleaseResponse Release Response

type ReleaseWrapper

type ReleaseWrapper struct {
	Release *Release `json:"Release"`
}

ReleaseWrapper Release Wrapper

type SelectorPropertyList

type SelectorPropertyList struct {
	BugVersionList []*BugVersion `json:"versionList"`
}

SelectorPropertyList SelectorPropertyList.

type SpecStoryResponse

type SpecStoryResponse struct {
	Status int           `json:"status"`
	Data   *StoryWrapper `json:"data"`
	Info   string        `json:"info"`
}

SpecStoryResponse response for tapd specific story query

type StatusChange

type StatusChange struct {
	Creator     string
	Created     string
	ValueBefore string
	ValueAfter  string
}

StatusChange story change

type Story

type Story struct {
	ID               string `json:"id"`
	Name             string `json:"name"`
	WorkspaceID      string `json:"workspace_id"`
	Creator          string `json:"creator"`
	Created          string `json:"created"`
	Modified         string `json:"modified"`
	Status           string `json:"status"`
	Owner            string `json:"owner"`
	Cc               string `json:"cc"`
	Begin            string `json:"begin"`
	Due              string `json:"due"`
	Size             string `json:"size"`
	Priority         string `json:"priority"`
	Developer        string `json:"developer"`
	IterationID      string `json:"iteration_id"`
	TestFocus        string `json:"test_focus"`
	Type             string `json:"type"`
	Source           string `json:"source"`
	Module           string `json:"module"`
	Version          string `json:"version"`
	Completed        string `json:"completed"`
	CategoryID       string `json:"category_id"`
	ParentID         string `json:"parent_id"`
	ChildrenID       string `json:"children_id"`
	AncestorID       string `json:"ancestor_id"`
	BusinessValue    string `json:"business_value"`
	Effort           string `json:"effort"`
	EffortCompleted  string `json:"effort_completed"`
	Exceed           string `json:"exceed"`
	Remain           string `json:"remain"`
	ReleaseID        string `json:"release_id"`
	CustomFieldOne   string `json:"custom_field_one"`
	CustomFieldTwo   string `json:"custom_field_two"`
	CustomFieldThree string `json:"custom_field_three"`
	CustomFieldFour  string `json:"custom_field_four"`
	CustomFieldFive  string `json:"custom_field_five"`
	CustomFieldSix   string `json:"custom_field_six"`
	CustomFieldSeven string `json:"custom_field_seven"`
	CustomFieldEight string `json:"custom_field_eight"`
	CustomField9     string `json:"custom_field_9"`
	CustomField10    string `json:"custom_field_10"`
	CustomField11    string `json:"custom_field_11"`
	CustomField12    string `json:"custom_field_12"`
	CustomField13    string `json:"custom_field_13"`
	CustomField14    string `json:"custom_field_14"`
	CustomField15    string `json:"custom_field_15"`
	CustomField16    string `json:"custom_field_16"`
	CustomField17    string `json:"custom_field_17"`
	CustomField18    string `json:"custom_field_18"`
	CustomField19    string `json:"custom_field_19"`
	CustomField20    string `json:"custom_field_20"`
	CustomField21    string `json:"custom_field_21"`
	CustomField22    string `json:"custom_field_22"`
	CustomField23    string `json:"custom_field_23"`
	CustomField24    string `json:"custom_field_24"`
	CustomField25    string `json:"custom_field_25"`
	CustomField26    string `json:"custom_field_26"`
	CustomField27    string `json:"custom_field_27"`
	CustomField28    string `json:"custom_field_28"`
	CustomField29    string `json:"custom_field_29"`
	CustomField30    string `json:"custom_field_30"`
	CustomField31    string `json:"custom_field_31"`
	CustomField32    string `json:"custom_field_32"`
	CustomField33    string `json:"custom_field_33"`
	CustomField34    string `json:"custom_field_34"`
	CustomField35    string `json:"custom_field_35"`
	CustomField36    string `json:"custom_field_36"`
	CustomField37    string `json:"custom_field_37"`
	CustomField38    string `json:"custom_field_38"`
	CustomField39    string `json:"custom_field_39"`
	CustomField40    string `json:"custom_field_40"`
	CustomField41    string `json:"custom_field_41"`
	CustomField42    string `json:"custom_field_42"`
	CustomField43    string `json:"custom_field_43"`
	CustomField44    string `json:"custom_field_44"`
	CustomField45    string `json:"custom_field_45"`
	CustomField46    string `json:"custom_field_46"`
	CustomField47    string `json:"custom_field_47"`
	CustomField48    string `json:"custom_field_48"`
	CustomField49    string `json:"custom_field_49"`
	CustomField50    string `json:"custom_field_50"`
	CustomField51    string `json:"custom_field_51"`
	CustomField52    string `json:"custom_field_52"`
	CustomField53    string `json:"custom_field_53"`
	CustomField54    string `json:"custom_field_54"`
	CustomField55    string `json:"custom_field_55"`
	CustomField56    string `json:"custom_field_56"`
	CustomField57    string `json:"custom_field_57"`
	CustomField58    string `json:"custom_field_58"`
	CustomField59    string `json:"custom_field_59"`
	CustomField60    string `json:"custom_field_60"`
	CustomField61    string `json:"custom_field_61"`
	CustomField62    string `json:"custom_field_62"`
	CustomField63    string `json:"custom_field_63"`
	CustomField64    string `json:"custom_field_64"`
	CustomField65    string `json:"custom_field_65"`
	CustomField66    string `json:"custom_field_66"`
	CustomField67    string `json:"custom_field_67"`
	CustomField68    string `json:"custom_field_68"`
	CustomField69    string `json:"custom_field_69"`
	CustomField70    string `json:"custom_field_70"`
	CustomField71    string `json:"custom_field_71"`
	CustomField72    string `json:"custom_field_72"`
	CustomField73    string `json:"custom_field_73"`
	CustomField74    string `json:"custom_field_74"`
	CustomField75    string `json:"custom_field_75"`
	CustomField76    string `json:"custom_field_76"`
	CustomField77    string `json:"custom_field_77"`
	CustomField78    string `json:"custom_field_78"`
	CustomField79    string `json:"custom_field_79"`
	CustomField80    string `json:"custom_field_80"`
	CustomField81    string `json:"custom_field_81"`
	CustomField82    string `json:"custom_field_82"`
	CustomField83    string `json:"custom_field_83"`
	CustomField84    string `json:"custom_field_84"`
	CustomField85    string `json:"custom_field_85"`
	CustomField86    string `json:"custom_field_86"`
	CustomField87    string `json:"custom_field_87"`
	CustomField88    string `json:"custom_field_88"`
	CustomField89    string `json:"custom_field_89"`
	CustomField90    string `json:"custom_field_90"`
	CustomField91    string `json:"custom_field_91"`
	CustomField92    string `json:"custom_field_92"`
	CustomField93    string `json:"custom_field_93"`
	CustomField94    string `json:"custom_field_94"`
	CustomField95    string `json:"custom_field_95"`
	CustomField96    string `json:"custom_field_96"`
	CustomField97    string `json:"custom_field_97"`
	CustomField98    string `json:"custom_field_98"`
	CustomField99    string `json:"custom_field_99"`
	CustomField100   string `json:"custom_field_100"`
}

Story tapd story

type StoryChangeByIteration

type StoryChangeByIteration struct {
	IterationName   string
	StoryCount      int
	StoryChangeList []*TargetStoryChange
}

StoryChangeByIteration story changes organized by iteration

type StoryChangeItem

type StoryChangeItem struct {
	ID           string
	WorkspaceID  string
	StoryID      string
	Number       string
	Field        string
	Creator      string
	Created      string
	ValueBefore  string
	ValueAfter   string
	ChangeSummay string
	Comment      string
	EntityType   string
}

StoryChangeItem story change struct wrote to change file

type StoryChangeResponse

type StoryChangeResponse struct {
	Status int                      `json:"status"`
	Data   []*WorkitemChangeWrapper `json:"data"`
	Info   string                   `json:"info"`
}

StoryChangeResponse response for tapd story change query

type StoryResponse

type StoryResponse struct {
	Status int             `json:"status"`
	Data   []*StoryWrapper `json:"data"`
	Info   string          `json:"info"`
}

StoryResponse response for tapd multiple stories query

type StoryWallTimeModel

type StoryWallTimeModel struct {
	StepStartTime time.Time
	StepEndTime   time.Time
}

StoryWallTimeModel Story Wall Time Model.

type StoryWrapper

type StoryWrapper struct {
	Story *Story `json:"story"`
}

StoryWrapper sub struct in story response

type TargetStoryChange

type TargetStoryChange struct {
	Story         *Story
	StatusChanges []*StatusChange
}

TargetStoryChange story and story changes

type TestTimeByIteration

type TestTimeByIteration struct {
	IterationName string
	StoryCount    int
	TimeByStroy   []*TestTimeByStory
}

TestTimeByIteration stories' test time info organized by iteration

type TestTimeByStory

type TestTimeByStory struct {
	StoryName   string
	StorySize   string
	StoryEffort string
	TestTime    float64
}

TestTimeByStory story base info and test time

type UpdateBug

type UpdateBug struct {
	*Bug
	CurrentUser string `json:"current_user"`
}

UpdateBug Update Bug

type WaitTimeByIteration

type WaitTimeByIteration struct {
	IterationName string
	StoryCount    int
	TimeByStroy   []*WaitTimeByStory
}

WaitTimeByIteration stories' wait time organized by iteration

type WaitTimeByStory

type WaitTimeByStory struct {
	StoryName   string
	StorySize   string
	StoryEffort string
	WaitTime    float64
}

WaitTimeByStory story base info and wait time

type WorkitemChange

type WorkitemChange struct {
	ID           string `json:"id"`
	WorkspaceID  string `json:"workspace_id"`
	Creator      string `json:"creator"`
	Created      string `json:"created"`
	ChangeSummay string `json:"change_summay"`
	Comment      string `json:"comment"`
	Changes      string `json:"changes"`
	EntityType   string `json:"entity_type"`
	StoryID      string `json:"story_id"`
}

WorkitemChange sub struct in WorkitemChangeWrapper

type WorkitemChangeWrapper

type WorkitemChangeWrapper struct {
	WorkitemChange *WorkitemChange `json:"WorkitemChange"`
}

WorkitemChangeWrapper sub struct in StoryChangeResponse

Jump to

Keyboard shortcuts

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