package sci99 // Header 代表表头信息 type Header struct { Code string `json:"Code"` DisplayName string `json:"DisplayName"` OrderNO float64 `json:"OrderNO"` DataType int `json:"DataType"` DisplayType int `json:"DisplayType"` } // Item 代表数据项 type Item struct { Area string `json:"Area"` DataModelName string `json:"DataModelName"` DataTypeID int `json:"DataTypeID"` Digits int `json:"Digits"` DIID int `json:"DIID"` FactorySampleName string `json:"FactorySampleName"` MarketSampleName string `json:"MarketSampleName"` Model string `json:"Model"` TradeTerms string `json:"TradeTerms"` PriceType string `json:"PriceType"` PriceTypeID int `json:"PriceTypeID"` ProductName string `json:"ProductName"` ProductID int `json:"ProductID"` Province string `json:"Province"` Region string `json:"Region"` TimeMarkID int `json:"TimeMarkID"` Unit string `json:"Unit"` Order int `json:"Order"` DataName string `json:"DataName"` DataItemName string `json:"DataItemName"` DataTypeName string `json:"DataTypeName"` IsWarn bool `json:"IsWarn"` EName string `json:"EName"` GasRate string `json:"GasRate"` FromArea string `json:"FromArea"` DataStatus int `json:"DataStatus"` Purpose string `json:"Purpose"` FuturesMark string `json:"FuturesMark"` MainShippers string `json:"MainShippers"` PriceClassification string `json:"PriceClassification"` Stand string `json:"Stand"` Type string `json:"Type"` DItemDTypeID int `json:"DItemDTypeID"` Classification string `json:"Classification"` LockDateName string `json:"LockDateName"` PriceCondition string `json:"PriceCondition"` // 动态日期字段,需要特殊处理 //DateFields map[string]string `json:"date_fields,inline"` Change string `json:"Change"` ChangeRate string `json:"ChangeRate"` Remark string `json:"Remark"` LockState string `json:"LockState"` PowerStatus int `json:"PowerStatus"` } // Data 代表数据部分 type FirstData struct { Headers []Header `json:"Headers"` SecondData SecondData `json:"data"` } type SecondData struct { LockTimeRange string `json:"LockTimeRange"` PageNO int `json:"PageNO"` PageSize int `json:"PageSize"` TotalItems int `json:"TotalItems"` TotalPages int `json:"TotalPages"` Items []Item `json:"Items"` DiidDtypeids *string `json:"DiidDtypeids"` // 使用指针以处理null值 TableHeader *string `json:"TableHeader"` // 使用指针以处理null值 } // ListResponse 代表整个API响应 type ListResponse struct { Status int `json:"status"` Msg string `json:"msg"` FirstData FirstData `json:"data"` } // 创建请求体的数据结构 type ListRequestBody struct { Region string `json:"region"` Market string `json:"market"` Factory string `json:"factory"` Model string `json:"model"` Pname string `json:"pname"` CycleType string `json:"cycletype"` PriceCycle string `json:"pricecycle"` SpecialPriceType string `json:"specialpricetype"` Groupname string `json:"groupname"` Ppname string `json:"ppname"` Province string `json:"province"` PriceTypeID int `json:"pricetypeid"` PPIDs string `json:"ppids"` Navid string `json:"navid"` SiteType int `json:"sitetype"` PageNo int `json:"pageno"` PageSize string `json:"pagesize"` Purpose string `json:"purpose"` Stand string `json:"stand"` Type string `json:"type"` FromArea string `json:"fromarea"` Classification string `json:"classification"` } // DetailRequest type DetailRequest struct { Start string `json:"start"` End string `json:"end"` APIStart string `json:"apiStart"` APIEnd string `json:"apiEnd"` DIIDD string `json:"diid"` DataTypeID string `json:"datatypeid"` PPID string `json:"ppid"` CycleType string `json:"cycletype"` SelectConfig int `json:"selectconfig"` } type RefreshSci99CrawlerReq struct { ClassifyName string IndexName string ListData Item DetailData DetailResponse }