sls.py 2.12 KB
Newer Older
Wei Shoulin's avatar
Wei Shoulin committed
1
import dataclasses
Wei Shoulin's avatar
Wei Shoulin committed
2
3
4
from typing import Dict
from .common import BaseModel, default_field

Wei Shoulin's avatar
Wei Shoulin committed
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
@dataclasses.dataclass
class Level0PrcRecord(BaseModel):
    id: int = 0
    level0_id: str = ""
    pipeline_id: str = ""
    prc_module: str = ""
    params_file_path: str=""
    prc_status: int = 0
    prc_time: str=""
    result_file_path: str=""

@dataclasses.dataclass
class Level0Record(BaseModel):
    id: int = 0
    level0_id: str = ""
    obs_id: str = ""
    detector_no: str = ""
    obs_type: str = ""
    obs_time: str=""
    exp_time: float = 0
    detector_status_id: int = 0
    filename: str=""
    file_path: str=""
    qc0_status: int = 0
    qc0_time: str=""
    prc_status: int = 0
    prc_time: str=""
    create_time: str=""
Wei Shoulin's avatar
Wei Shoulin committed
33
    header: Dict[str,object] = default_field({})
Wei Shoulin's avatar
Wei Shoulin committed
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51

@dataclasses.dataclass
class CalMergeRecord(BaseModel):
    id: int = 0
    cal_id: str = ""
    detector_no: str = ""
    ref_type: str = ""
    obs_time: str=""
    exp_time: float = 0
    filename: str=""
    file_path: str=""
    qc1_status: int = 0
    qc1_time: str=""
    prc_status: int = 0
    prc_time: str=""
    prc_time: str=""
    create_time: str=""
    level0_ids: list = dataclasses.field(default_factory=list)
Wei Shoulin's avatar
Wei Shoulin committed
52

Wei Shoulin's avatar
Wei Shoulin committed
53
@dataclasses.dataclass
Wei Shoulin's avatar
Wei Shoulin committed
54
55
56
57
58
59
60
61
62
63
64
65
66
67
class Level1Record(BaseModel):
    id: int = 0
    level0_id : str = ""
    data_type: str=""
    prc_params: str=""
    filename : str=""
    file_path: str=""
    qc1_status: int = 0
    qc1_time: str=""
    prc_status: int = 0
    prc_time: str=""
    create_time: str=""
    pipeline_id: str=""
    refs: Dict[str,int] = default_field({})
Wei Shoulin's avatar
Wei Shoulin committed
68
    
Wei Shoulin's avatar
Wei Shoulin committed
69
@dataclasses.dataclass
Wei Shoulin's avatar
Wei Shoulin committed
70
71
72
73
74
75
76
77
78
79
80
81
82
83
class Level2Spectra(BaseModel):
    id: int = 0
    spectra_id : str = ""
    level1_id: int=0
    region: str=""
    filename : str=""
    file_path: str=""
    qc1_status: int = 0
    qc1_time: str=""
    prc_status: int = 0
    prc_time: str=""
    create_time: str=""
    pipeline_id: str=""    

Wei Shoulin's avatar
Wei Shoulin committed
84
85
86
87
88
89
90
91
92
93
@dataclasses.dataclass
class Level1PrcRecord(BaseModel):
    id: int = 0
    level1_id: int = 0
    pipeline_id: str = ""
    prc_module: str = ""
    params_file_path: str=""
    prc_status: int = 0
    prc_time: str=""
    result_file_path: str=""