現(xiàn)在許多人都在用phabricator羡儿,那么在用phabricator的同時(shí),有沒(méi)有想過(guò)對(duì)每一階段的任務(wù)進(jìn)行整理。明確每個(gè)人這一階段的任務(wù)及任務(wù)種類(lèi)個(gè)數(shù)训措。
相關(guān)接口可在conduit中進(jìn)行查看,在這里我將描述一部分接口
接口一、通過(guò)父任務(wù)獲取子任務(wù)
地址:/api/maniphest.info
傳遞參數(shù):(post)
api.token:apitoken
task_id:任務(wù)號(hào)
返回結(jié)果
phids = text["result"]["dependsOnTaskPHIDs"]
for index in range(len(phids)):
data["phids["+str(index)+"]"] = phids[index]
這里绩鸣,phids就是獲取到的每個(gè)子任務(wù)的任務(wù)號(hào)
接口二怀大、通過(guò)任務(wù)號(hào)獲取到對(duì)應(yīng)的任務(wù)詳情
通過(guò)上一個(gè)接口獲取到的data數(shù)據(jù)加上api.token作為post數(shù)據(jù)請(qǐng)求api/maniphest.info,獲取到每個(gè)任務(wù)的任務(wù)詳情
數(shù)據(jù)請(qǐng)求
def query_maniphest(self, phid):
params = {"api.token": self.token, 'phids[0]': phid}
return self.http_get("api/maniphest.query", params)
返回結(jié)果
result = oneText["result"]
userPhid = {"api.token": token}
projectPhid = {"api.token": token}
for value in result.values():
ownerPHID = value["ownerPHID"] #成員
projectPHIDs = value["projectPHIDs"] #標(biāo)簽
if ownerPHID not in userPhid.values() :
userPhid["phids["+str(len(userPhid))+"]"] = ownerPHID
for projectPHID in projectPHIDs:
if projectPHID not in projectPhid.values() :
projectPhid["phids["+str(len(projectPhid))+"]"] = projectPHID
接口三呀闻、通過(guò)ownerPHID獲取用戶姓名
def get_user_name(userPhid):
oneR = requests.post("***/api/user.query", userPhid)
oneText = json.loads(oneR.text)
result = oneText["result"]
data = []
for dic in result:
use = User()
use.phid = dic["phid"]
use.name = dic["realName"]
data.append(use)
return data
接口四化借、通過(guò)projectPHIDs獲取標(biāo)簽描述
def get_project_info(phids):
response = requests.post("***/api/project.query", phids)
oneText = json.loads(response.text)
result = oneText["result"]["data"]
data = {}
for (key,value) in result.items():
name = value["name"]
phid = key
data[key] = name
return data
這樣,你想進(jìn)行怎樣的統(tǒng)計(jì)就看你自己的需求了