代码度量数据管理
获取分析项目圈复杂度文件列表
GET /server/analysis/api/orgs/<org_sid>/teams/<team_name>/repos/<repo_id>/projects/<project_id>/codemetric/ccfiles/
参数列表:
参数 | 类型 | 描述 |
---|---|---|
state | str | 问题状态, 1为未处理,2为已处理,3为关闭,可多选,格式为1,2,3 |
change_type | str | 圈复杂度变化情况,0为无,1为新增,2为删除,3为无变化,可多选,格式为1,2,3 |
author | str | 问题责任人 |
last_modifier | str | 最近修改人 |
file_path | str | 文件路径 |
scan_open | int | 发现问题的扫描编号 |
scan_close | int | 修复问题的扫描编号 |
worse | boolean | 圈复杂度是否恶化 |
over_cc_sum_gte | int | 圈复杂度总和最小值 |
over_cc_sum_lte | int | 圈复杂度总和最大值 |
over_cc_avg_gte | int | 平均圈复杂度最小值 |
over_cc_avg_lte | int | 平均圈复杂度总和最大值 |
over_cc_func_count_gte | int | 超标圈复杂度函数个数最小值 |
over_cc_func_count_lte | int | 超标圈复杂度函数个数最大值 |
返回参数:
{
"data": {
"count": 1,
"next": null,
"previous": null,
"results": [
{
"id": 12,
"repo": 3,
"tapd_url": null,
"tapd_bug_error": null,
"created_time": "2021-03-23T16:33:58.874175+08:00",
"creator": null,
"modified_time": "2021-03-23T16:33:58.874184+08:00",
"modifier": null,
"deleted_time": null,
"deleter": null,
"over_func_cc": 21,
"over_cc_sum": 1,
"over_cc_avg": 21,
"over_cc_func_count": 1,
"diff_over_func_cc": 0,
"diff_over_cc_sum": 0,
"diff_over_cc_avg": 0,
"diff_over_cc_func_count": 0,
"worse": false,
"file_path": "file/xxxx",
"state": 1,
"change_type": 0,
"last_modifier": "last_modifier",
"last_modifier_email": null,
"related_modifiers": "related_modifiersn",
"author": null,
"most_weight_modifier": null,
"most_weight_modifier_email": null,
"weight_modifiers": null,
"file_owners": null,
"language": "python",
"tapd_ws_id": null,
"tapd_bug_id": null,
"revision": "xxxx",
"ci_time": "2020-07-15T22:56:31+08:00",
"project": 8,
"scan_open": 7,
"scan_close": null
}
]
},
"code": 0,
"msg": "请求成功",
"status_code": 200
}
获取分析项目圈复杂度文件问题列表
GET /server/analysis/api/orgs/<org_sid>/teams/<team_name>/repos/<repo_id>/projects/<project_id>/codemetric/ccfiles/<file_id>/ccissues/
参数列表:
参数 | 类型 | 描述 |
---|---|---|
status | str | 问题状态,1为需要关注,2为无需关注,可多选,格式为1,2,3 |
change_type | str | 圈复杂度变化情况,0为无,1为新增,2为删除,3为无变化,可多选,格式为1,2,3 |
author | str | 问题责任人 |
last_modifier | str | 最近修改人 |
file_path | str | 文件路径 |
ccn_gte | str | 圈复杂度最小值 |
ccn_lte | str | 圈复杂度最大值 |
返回结果:
{
"data": {
"count": 1,
"next": null,
"previous": null,
"results": [
{
"id": 15,
"detail": {
"id": 15,
"created_time": "2021-03-23T16:33:58.874408+08:00",
"creator": null,
"modified_time": "2021-03-23T16:33:58.874414+08:00",
"modifier": null,
"deleted_time": null,
"deleter": null,
"cc_hash": null,
"token": 778,
"line_num": 128,
"code_line_num": 103,
"revision": "xxxx",
"start_line_no": 115,
"end_line_no": 242
},
"created_time": "2021-03-23T16:33:58.874310+08:00",
"creator": null,
"modified_time": "2021-03-23T16:33:58.874317+08:00",
"modifier": null,
"deleted_time": null,
"deleter": null,
"ccn": 21,
"g_cc_hash": null,
"cc_hash": null,
"file_path": "xxxx",
"func_name": "func_name",
"func_param_num": 0,
"long_name": "long_name",
"change_type": 0,
"status": 1,
"last_modifier": "last_modifier",
"author": null,
"related_modifiers": "related_modifiers",
"most_weight_modifier": null,
"most_weight_modifier_email": null,
"weight_modifiers": null,
"is_tapdbug": false,
"ignore_time": null,
"is_latest": true,
"language": "python",
"revision": "xxxxx",
"ci_time": "2020-07-15T22:56:31+08:00",
"diff_ccn": null,
"token": null,
"line_num": null,
"code_line_num": null,
"start_line_no": null,
"end_line_no": null,
"scan_revision": null,
"project": 8,
"scan_open": 7,
"scan_close": null
}
]
},
"code": 0,
"msg": "请求成功",
"status_code": 200
}
获取分析项目圈复杂度方法问题列表
GET /server/analysis/api/orgs/<org_sid>/teams/<team_name>/repos/<repo_id>/projects/<project_id>/codemetric/ccissues/
参数列表:
参数 | 类型 | 描述 |
---|---|---|
status | str | 问题状态,1为需要关注,2为无需关注,可多选,格式为1,2,3 |
change_type | str | 圈复杂度变化情况,0为无,1为新增,2为删除,3为无变化,可多选,格式为1,2,3 |
author | str | 问题责任人 |
last_modifier | str | 最近修改人 |
file_path | str | 文件路径 |
ccn_gte | str | 圈复杂度最小值 |
ccn_lte | str | 圈复杂度最大值 |
返回结果:
{
"data": {
"count": 1,
"next": null,
"previous": null,
"results": [
{
"id": 20,
"repo": 3,
"created_time": "2021-03-23T16:33:58.875546+08:00",
"creator": null,
"modified_time": "2021-03-23T16:33:58.875552+08:00",
"modifier": null,
"deleted_time": null,
"deleter": null,
"ccn": 21,
"g_cc_hash": null,
"cc_hash": null,
"file_path": "file_path",
"func_name": "func_name",
"func_param_num": 4,
"long_name": "long_name",
"change_type": 0,
"status": 1,
"last_modifier": "last_modifier",
"author": null,
"related_modifiers": "related_modifiers",
"most_weight_modifier": null,
"most_weight_modifier_email": null,
"weight_modifiers": null,
"is_tapdbug": false,
"ignore_time": null,
"is_latest": true,
"language": "python",
"revision": "xxxxx",
"ci_time": "2020-12-02T16:45:15+08:00",
"diff_ccn": null,
"token": null,
"line_num": null,
"code_line_num": null,
"start_line_no": null,
"end_line_no": null,
"scan_revision": null,
"project": 8,
"scan_open": 7,
"scan_close": null
}
]
},
"code": 0,
"msg": "请求成功",
"status_code": 200
}
获取分析项目日常分析圈复杂度文件列表
GET /server/analysis/api/orgs/<org_sid>/teams/<team_name>/repos/<repo_id>/projects/<project_id>/codemetric/scans/<scan_id>/ccfiles/
参数列表:
参数 | 类型 | 描述 |
---|---|---|
state | str | 问题状态, 1为未处理,2为已处理,3为关闭,可多选,格式为1,2,3 |
change_type | str | 圈复杂度变化情况,0为无,1为新增,2为删除,3为无变化,可多选,格式为1,2,3 |
author | str | 问题责任人 |
last_modifier | str | 最近修改人 |
file_path | str | 文件路径 |
scan_open_id | int | 发现问题的扫描编号 |
scan_close_id | int | 修复问题的扫描编号 |
worse | boolean | 圈复杂度是否恶化 |
over_cc_sum_gte | int | 圈复杂度总和最小值 |
over_cc_sum_lte | int | 圈复杂度总和最大值 |
over_cc_avg_gte | int | 平均圈复杂度最小值 |
over_cc_avg_lte | int | 平均圈复杂度总和最大值 |
over_cc_func_count_gte | int | 超标圈复杂度函数个数最小值 |
over_cc_func_count_lte | int | 超标圈复杂度函数个数最大值 |
返回结果:
{
"data": {
"count": 32,
"next": null,
"previous": null,
"results": [
{
"id": 1,
"repo": 1,
"tapd_url": null,
"created_time": "2020-06-02T10:59:09.418250+08:00",
"creator": null,
"modified_time": "2020-06-03T16:17:40.892224+08:00",
"modifier": null,
"deleted_time": null,
"deleter": null,
"over_func_cc": 0,
"over_cc_sum": 0,
"over_cc_avg": 0,
"over_cc_func_count": 0,
"diff_over_func_cc": 0,
"diff_over_cc_sum": 0,
"diff_over_cc_avg": 0,
"diff_over_cc_func_count": 0,
"worse": false,
"file_path": "test/demo.py",
"state": 3,
"change_type": 0,
"last_modifier": "author1",
"author": null,
"related_modifiers": "author1;author2",
"file_owners": null,
"language": "python",
"tapd_ws_id": null,
"tapd_bug_id": null,
"revision": null,
"ci_time": null,
"project": 1,
"scan_open": 1,
"scan_close": 2
}
]
},
"code": 0,
"msg": "请求成功",
"status_code": 200
}
获取分析项目日常分析圈复杂度文件问题列表
GET /server/analysis/api/orgs/<org_sid>/teams/<team_name>/repos/<repo_id>/projects/<project_id>/codemetric/scans/<scan_id>/ccfiles/<file_id>/ccissues/
参数列表:
参数 | 类型 | 描述 |
---|---|---|
status | str | 问题状态,1为需要关注,2为无需关注,可多选,格式为1,2,3 |
change_type | str | 圈复杂度变化情况,0为无,1为新增,2为删除,3为无变化,可多选,格式为1,2,3 |
author | str | 问题责任人 |
last_modifier | str | 最近修改人 |
file_path | str | 文件路径 |
ccn_gte | str | 圈复杂度最小值 |
ccn_lte | str | 圈复杂度最大值 |
返回结果:
{
"data": {
"count": 1,
"next": null,
"previous": null,
"results": [
{
"id": 1,
"repo": 1,
"created_time": "2021-02-19T15:30:20.968525+08:00",
"creator": null,
"modified_time": "2021-02-19T15:30:20.968532+08:00",
"modifier": null,
"deleted_time": null,
"deleter": null,
"ccn": 22,
"g_cc_hash": null,
"cc_hash": null,
"file_path": "test/demo.py",
"func_name": "test_func",
"func_param_num": 4,
"long_name": "test_func( project , result_data , scan , task_params )",
"change_type": 0,
"status": 1,
"last_modifier": "author",
"author": null,
"related_modifiers": "author,author2",
"is_tapdbug": false,
"ignore_time": null,
"is_latest": true,
"language": "python",
"revision": "revision",
"ci_time": "2020-03-18T19:46:48+08:00",
"diff_ccn": null,
"project": 1,
"scan_open": 1,
"scan_close": null
}
]
},
"code": 0,
"msg": "请求成功",
"status_code": 200
}
获取分析项目日常分析圈复杂度方法问题列表
GET /server/analysis/api/orgs/<org_sid>/teams/<team_name>/repos/<repo_id>/projects/<project_id>/codemetric/scans/<scan_id>/ccissues/
参数列表:
参数 | 类型 | 描述 |
---|---|---|
status | str | 问题状态,1为需要关注,2为无需关注,可多选,格式为1,2,3 |
change_type | str | 圈复杂度变化情况,0为无,1为新增,2为删除,3为无变化,可多选,格式为1,2,3 |
author | str | 问题责任人 |
last_modifier | str | 最近修改人 |
file_path | str | 文件路径 |
ccn_gte | str | 圈复杂度最小值 |
ccn_lte | str | 圈复杂度最大值 |
返回结果:
{
"data": {
"count": 1,
"next": null,
"previous": null,
"results": [
{
"id": 1,
"repo": 1,
"created_time": "2021-02-19T15:30:20.968525+08:00",
"creator": null,
"modified_time": "2021-02-19T15:30:20.968532+08:00",
"modifier": null,
"deleted_time": null,
"deleter": null,
"ccn": 22,
"g_cc_hash": null,
"cc_hash": null,
"file_path": "test/demo.py",
"func_name": "test_func",
"func_param_num": 4,
"long_name": "test_func( project , result_data , scan , task_params )",
"change_type": 0,
"status": 1,
"last_modifier": "author",
"author": null,
"related_modifiers": "author,author2",
"is_tapdbug": false,
"ignore_time": null,
"is_latest": true,
"language": "python",
"revision": "revision",
"ci_time": "2020-03-18T19:46:48+08:00",
"diff_ccn": null,
"project": 1,
"scan_open": 1,
"scan_close": null
}
]
},
"code": 0,
"msg": "请求成功",
"status_code": 200
}
获取分析项目重复文件列表
GET /server/analysis/api/orgs/<org_sid>/teams/<team_name>/repos/<repo_id>/projects/<project_id>/codemetric/dupfiles/
参数列表:
参数 | 类型 | 描述 |
---|---|---|
issue__state | str | 问题状态, 1为未处理,2为可忽略,3为关闭,可多选,格式为1,2,3 |
change_type | str | 重复文件更改类型,add为新增,del为删除,mod为删除,可多选,格式为add,del,mod |
issue__owner | str | 问题责任人 |
last_modifier | str | 最近修改人 |
file_path | str | 文件路径 |
duplicate_rate_gte | int | 重复率最小值 |
duplicate_rate_lte | int | 重复率最大值 |
返回结果:
{
"data": {
"count": 1,
"next": null,
"previous": null,
"results": [
{
"id": 8,
"repo": 3,
"issue": {
"id": 8,
"state": 1,
"owner": "issue_owner"
},
"project_id": 8,
"scan_id": 7,
"issue_id": 8,
"issue_state": 1,
"issue_owner": "issue_owner",
"dir_path": "dir_path",
"file_name": "file_name.py",
"file_path": "file_path",
"duplicate_rate": 3.0,
"total_line_count": 467,
"total_duplicate_line_count": 14,
"distinct_hash_num": 1,
"block_num": 1,
"last_modifier": "issue_owner",
"change_type": null,
"scm_revision": "1234567890",
"is_latest": true,
"created_time": null,
"modified_time": null
}
]
},
"code": 0,
"msg": "请求成功",
"status_code": 200
}
获取分析项目重复文件详情
GET /server/analysis/api/orgs/<org_sid>/teams/<team_name>/repos/<repo_id>/projects/<project_id>/codemetric/dupfiles/<file_id>/
返回结果:
{
"data": {
"id": 8,
"repo": 3,
"issue": {
"id": 8,
"state": 1,
"owner": "owner"
},
"blocks": [
{
"id": 55,
"duplicate_file": 8,
"project_id": 8,
"scan_id": 7,
"duplicate_file_id": 8,
"token_num": 120,
"duplicate_times": 2,
"duplicate_rate": 3.0,
"start_line_num": 403,
"end_line_num": 416,
"duplicate_line_count": 14,
"last_modifier": "last_modifier",
"change_type": null,
"related_modifiers": "related_modifiers"
}
],
"duplicate_rate_trend": null,
"project_id": 8,
"scan_id": 7,
"issue_id": 8,
"issue_state": 1,
"issue_owner": "issue_owner",
"dir_path": "dir_path",
"file_name": "file_name",
"file_path": "file_path",
"duplicate_rate": 3.0,
"total_line_count": 467,
"total_duplicate_line_count": 14,
"distinct_hash_num": 1,
"block_num": 1,
"last_modifier": "last_modifier",
"change_type": null,
"scm_revision": "1234567890",
"is_latest": true,
"created_time": null,
"modified_time": null
},
"code": 0,
"msg": "请求成功",
"status_code": 200
}
获取分析项目重复文件重复块列表
GET /server/analysis/api/orgs/<org_sid>/teams/<team_name>/repos/<repo_id>/projects/<project_id>/codemetric/dupfiles/<file_id>/blocks/
返回结果:
{
"data": {
"count": 1,
"next": null,
"previous": null,
"results": [
{
"id": 55,
"duplicate_file": 8,
"project_id": 8,
"scan_id": 7,
"duplicate_file_id": 8,
"token_num": 120,
"duplicate_times": 2,
"duplicate_rate": 3.0,
"start_line_num": 403,
"end_line_num": 416,
"duplicate_line_count": 14,
"last_modifier": "last_modifier",
"change_type": null,
"related_modifiers": "related_modifiers"
}
]
},
"code": 0,
"msg": "请求成功",
"status_code": 200
}
获取分析项目代码统计数据
GET /server/analysis/api/orgs/<org_sid>/teams/<team_name>/repos/<repo_id>/projects/<project_id>/codemetric/clocfiles/
参数列表:
参数 | 类型 | 描述 |
---|---|---|
change_type | str | 改变类型(add、mod、del),支持多值,使用英文逗号','分隔 |
file_path | str | 文件路径 |
返回结果:
{
"data": {
"count": 1,
"next": "",
"previous": null,
"results": [
{
"id": 1,
"code_line_num": 108587,
"comment_line_num": 0,
"blank_line_num": 0,
"total_line_num": 108587,
"add_code_line_num": 0,
"add_comment_line_num": 0,
"add_blank_line_num": 0,
"add_total_line_num": 0,
"mod_code_line_num": 0,
"mod_comment_line_num": 0,
"mod_blank_line_num": 0,
"mod_total_line_num": 0,
"del_code_line_num": 0,
"del_comment_line_num": 0,
"del_blank_line_num": 0,
"del_total_line_num": 0,
"project_id": 8,
"scan_id": 8,
"is_latest": true,
"dir_path": "dir_path",
"file_name": "file_name.json",
"language": "JSON",
"licenses": null,
"change_type": ""
}
]
},
"code": 0,
"msg": "请求成功",
"status_code": 200
}
获取分析项目语言列表
GET server/analysis/api/orgs/<org_sid>/teams/<team_name>/repos/<repo_id>/projects/<project_id>/codemetric/cloclangs/
返回结果:
{
"data": {
"count": 2,
"next": null,
"previous": null,
"results": [
{
"id": 1,
"code_line_num": 123593,
"comment_line_num": 0,
"blank_line_num": 0,
"total_line_num": 123593,
"add_code_line_num": 0,
"add_comment_line_num": 0,
"add_blank_line_num": 0,
"add_total_line_num": 0,
"mod_code_line_num": 0,
"mod_comment_line_num": 0,
"mod_blank_line_num": 0,
"mod_total_line_num": 0,
"del_code_line_num": 0,
"del_comment_line_num": 0,
"del_blank_line_num": 0,
"del_total_line_num": 0,
"project_id": 8,
"scan_id": 8,
"is_latest": true,
"name": "JSON",
"file_num": 3
},
{
"id": 2,
"code_line_num": 13250,
"comment_line_num": 5170,
"blank_line_num": 3023,
"total_line_num": 21443,
"add_code_line_num": 0,
"add_comment_line_num": 0,
"add_blank_line_num": 0,
"add_total_line_num": 0,
"mod_code_line_num": 0,
"mod_comment_line_num": 0,
"mod_blank_line_num": 0,
"mod_total_line_num": 0,
"del_code_line_num": 0,
"del_comment_line_num": 0,
"del_blank_line_num": 0,
"del_total_line_num": 0,
"project_id": 8,
"scan_id": 8,
"is_latest": true,
"name": "Python",
"file_num": 154
}
]
},
"code": 0,
"msg": "请求成功",
"status_code": 200
}