Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
csst-dfs
csst-dfs-client
Commits
02a2b773
Commit
02a2b773
authored
Jul 15, 2025
by
Wei Shoulin
Browse files
feat(level1): 添加及更新QC状态函数
parent
e5bf8049
Changes
2
Hide whitespace changes
Inline
Side-by-side
csst_dfs_client/level1.py
View file @
02a2b773
...
...
@@ -15,7 +15,7 @@ def find(
filter
:
Optional
[
str
]
=
None
,
obs_time
:
Optional
[
DateTimeTuple
]
=
None
,
create_time
:
Optional
[
DateTimeTuple
]
=
None
,
qc
1
_status
:
Optional
[
int
]
=
None
,
qc_status
:
Optional
[
int
]
=
None
,
prc_status
:
Optional
[
int
]
=
None
,
file_name
:
Optional
[
str
]
=
None
,
ra_cen
:
Optional
[
int
]
=
None
,
...
...
@@ -41,7 +41,7 @@ def find(
filter (Optional[str], optional): 滤光片. Defaults to None.
obs_time (Optional[DateTimeTuple], optional): 观测时间范围. Defaults to None.
create_time (Optional[DateTimeTuple], optional): 创建时间范围. Defaults to None.
qc
1
_status (Optional[int], optional): QC1状态. Defaults to None.
qc_status (Optional[int], optional): QC1状态. Defaults to None.
prc_status (Optional[int], optional): 处理状态. Defaults to None.
file_name (Optional[str], optional): 文件名. Defaults to None.
ra_cen (Optional[int], optional): 中心赤经. Defaults to None.
...
...
@@ -69,7 +69,7 @@ def find(
'data_model'
:
data_model
,
'obs_type'
:
obs_type
,
'filter'
:
filter
,
'qc
1
_status'
:
qc
1
_status
,
'qc_status'
:
qc_status
,
'prc_status'
:
prc_status
,
'file_name'
:
file_name
,
'ra_cen'
:
ra_cen
,
...
...
@@ -123,23 +123,23 @@ def find_by_brick_id(brick_id: int) -> Result:
"""
return
request
.
get
(
f
"/api/level1/brick/
{
brick_id
}
"
)
def
sls_find_by_qc
1
_status
(
qc
1
_status
:
int
,
limit
:
int
=
1
,
batch_id
:
str
=
constants
.
DEFAULT_BATCH_ID
)
->
Result
:
return
request
.
post
(
f
"/api/level1/sls/qc
1
_status/
{
qc
1
_status
}
"
,
{
'limit'
:
limit
,
'batch_id'
:
batch_id
})
def
sls_find_by_qc_status
(
qc_status
:
int
,
limit
:
int
=
1
,
batch_id
:
str
=
constants
.
DEFAULT_BATCH_ID
)
->
Result
:
return
request
.
post
(
f
"/api/level1/sls/qc_status/
{
qc_status
}
"
,
{
'limit'
:
limit
,
'batch_id'
:
batch_id
})
def
update_qc
1
_status
(
level1_id
:
str
,
data_model
:
str
,
qc
1
_status
:
int
,
batch_id
:
str
=
constants
.
DEFAULT_BATCH_ID
)
->
Result
:
def
update_qc_status
(
level1_id
:
str
,
data_model
:
str
,
qc_status
:
int
,
batch_id
:
str
=
constants
.
DEFAULT_BATCH_ID
)
->
Result
:
"""
更新1级数据的QC0状态
Args:
level1_id (str): 1级数据的ID
data_model (str): 数据类型
qc
1
_status (int): QC0状态
qc_status (int): QC0状态
batch_id (str): 批次ID
Returns:
Result: 更新结果
"""
return
request
.
put
(
f
"/api/level1/qc
1
_status/
{
level1_id
}
"
,
{
'data_model'
:
data_model
,
'qc
1
_status'
:
qc
1
_status
,
'batch_id'
:
batch_id
})
return
request
.
put
(
f
"/api/level1/qc_status/
{
level1_id
}
"
,
{
'data_model'
:
data_model
,
'qc_status'
:
qc_status
,
'batch_id'
:
batch_id
})
def
update_prc_status
(
level1_id
:
str
,
data_model
:
str
,
prc_status
:
int
,
batch_id
:
str
=
constants
.
DEFAULT_BATCH_ID
)
->
Result
:
"""
...
...
@@ -169,7 +169,7 @@ def write(local_file: Union[IO, str],
level0_id
:
Optional
[
str
]
=
None
,
dataset
:
str
=
constants
.
DEFAULT_DATASET
,
batch_id
:
str
=
constants
.
DEFAULT_BATCH_ID
,
qc
1
_status
:
int
=
0
,
qc_status
:
int
=
0
,
**
extra_kwargs
)
->
Result
:
'''
将本地的1级数据文件写入到DFS中其他参数如rss_id, cube_id等,可通过extra_kwargs传入
...
...
@@ -188,7 +188,7 @@ def write(local_file: Union[IO, str],
build (int): 构建号
dataset (str): 数据集名称
batch_id (str): 批次ID
qc
1
_status (int): QC1状态
qc_status (int): QC1状态
**kwargs: 额外的关键字参数,这些参数将传递给DFS
Returns:
...
...
@@ -207,7 +207,7 @@ def write(local_file: Union[IO, str],
'build'
:
build
,
'dataset'
:
dataset
,
'batch_id'
:
batch_id
,
'qc
1
_status'
:
qc
1
_status
'qc_status'
:
qc_status
}
if
not
dataset
or
not
batch_id
:
raise
ValueError
(
"dataset and batch_id is required"
)
...
...
tests/test_level1.py
View file @
02a2b773
...
...
@@ -23,8 +23,8 @@ class Level1TestCase(unittest.TestCase):
self
.
assertEqual
(
result
.
code
,
200
,
"error code: "
+
str
(
result
.
code
)
+
", message: "
+
result
.
message
)
self
.
assertIsNotNone
(
result
.
data
,
"error message: "
+
result
.
message
)
def
test_update_qc
1
_status
(
self
):
result
=
level1
.
update_qc
1
_status
(
level1_id
=
"1060940003452925"
,
data_model
=
'csst-msc-l1-mbi'
,
qc
1
_status
=
1
)
def
test_update_qc_status
(
self
):
result
=
level1
.
update_qc_status
(
level1_id
=
"1060940003452925"
,
data_model
=
'csst-msc-l1-mbi'
,
qc_status
=
1
)
print
(
result
)
self
.
assertEqual
(
result
.
code
,
200
,
"error code: "
+
str
(
result
.
code
)
+
", message: "
+
result
.
message
)
...
...
@@ -50,7 +50,7 @@ class Level1TestCase(unittest.TestCase):
pmapname
=
"csst_000128.pmap"
,
data_model
=
'csst-msc-l1-mbi'
,
build
=
1
,
qc
1
_status
=
10
,
qc_status
=
10
,
prc_status
=
12
)
print
(
result
)
self
.
assertEqual
(
result
.
code
,
200
,
"error code: "
+
str
(
result
.
code
)
+
", message: "
+
result
.
message
)
...
...
@@ -64,8 +64,8 @@ class Level1TestCase(unittest.TestCase):
print
(
result
)
self
.
assertEqual
(
result
.
code
,
200
,
"error code: "
+
str
(
result
.
code
)
+
", message: "
+
result
.
message
)
def
test_sls_find_by_qc
1
_status
(
self
):
result
=
level1
.
sls_find_by_qc
1
_status
(
qc
1
_status
=
0
,
limit
=
1
)
def
test_sls_find_by_qc_status
(
self
):
result
=
level1
.
sls_find_by_qc_status
(
qc_status
=
0
,
limit
=
1
)
print
(
result
)
self
.
assertEqual
(
result
.
code
,
200
,
"error code: "
+
str
(
result
.
code
)
+
", message: "
+
result
.
message
)
\ No newline at end of file
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment