Documentation
      ¶
    
    
  
    
  
    Index ¶
- type ClientMessage
 - type ClipRequest
 - type ClipTaskInfo
 - type ClipTaskManager
 - type EraseRequest
 - type EraseTaskInfo
 - type EraseTaskManager
 - type IdentityRequest
 - type IdentityTaskInfo
 - type IdentityTaskManager
 - type IntersectRequest
 - type IntersectTaskInfo
 - type ProgressMessage
 - type SymDifferenceRequest
 - type SymDifferenceTaskInfo
 - type SymDifferenceTaskManager
 - type TaskManager
 - type TaskStatus
 - type UnionRequest
 - type UnionTaskInfo
 - type UnionTaskManager
 - type UpdateRequest
 - type UpdateTaskInfo
 - type UpdateTaskManager
 - type UserController
 - func (uc *UserController) ClipWebSocket(c *gin.Context)
 - func (uc *UserController) EraseWebSocket(c *gin.Context)
 - func (uc *UserController) GetClipTaskStatus(c *gin.Context)
 - func (uc *UserController) GetEraseTaskStatus(c *gin.Context)
 - func (uc *UserController) GetIdentityTaskStatus(c *gin.Context)
 - func (uc *UserController) GetTaskStatus(c *gin.Context)
 - func (uc *UserController) GetUnionTaskStatus(c *gin.Context)
 - func (uc *UserController) GetUpdateTaskStatus(c *gin.Context)
 - func (uc *UserController) IdentityWebSocket(c *gin.Context)
 - func (uc *UserController) IntersectWebSocket(c *gin.Context)
 - func (uc *UserController) StartClip(c *gin.Context)
 - func (uc *UserController) StartErase(c *gin.Context)
 - func (uc *UserController) StartIdentity(c *gin.Context)
 - func (uc *UserController) StartIntersect(c *gin.Context)
 - func (uc *UserController) StartSymDifference(c *gin.Context)
 - func (uc *UserController) StartUnion(c *gin.Context)
 - func (uc *UserController) StartUpdate(c *gin.Context)
 - func (uc *UserController) SymDifferenceWebSocket(c *gin.Context)
 - func (uc *UserController) UnionWebSocket(c *gin.Context)
 - func (uc *UserController) UpdateWebSocket(c *gin.Context)
 
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ClientMessage ¶
type ClientMessage struct {
	Action string `json:"action"`
}
    type ClipRequest ¶
type ClipRequest struct {
	Table1         string  `json:"table1" binding:"required"` // 输入表
	Table2         string  `json:"table2" binding:"required"` // 裁剪表
	OutTable       string  `json:"out_table" binding:"required"`
	IsMergeTile    bool    `json:"isMergeTile"`    // 是否合并瓦片
	FieldStrategy  int     `json:"fieldStrategy"`  // 字段合并策略
	MaxWorkers     int     `json:"maxWorkers"`     // 最大工作线程数
	GridSize       float64 `json:"gridSize"`       // 网格大小
	TileCount      int     `json:"tileCount"`      // 分块数量
	BufferDistance float64 `json:"bufferDistance"` // 缓冲距离
}
    裁剪分析请求参数结构体
type ClipTaskInfo ¶
type ClipTaskInfo struct {
	ID        string                    `json:"id"`
	Status    TaskStatus                `json:"status"`
	Request   ClipRequest               `json:"clip_request"`
	CreatedAt time.Time                 `json:"created_at"`
	StartedAt *time.Time                `json:"started_at,omitempty"`
	EndedAt   *time.Time                `json:"ended_at,omitempty"`
	Error     string                    `json:"error,omitempty"`
	Result    *Gogeo.GeosAnalysisResult `json:"-"` // 不序列化到JSON
	Context   context.Context           `json:"-"`
	Cancel    context.CancelFunc        `json:"-"`
	// contains filtered or unexported fields
}
    裁剪任务信息结构体
func (*ClipTaskInfo) UpdateStatus ¶
func (task *ClipTaskInfo) UpdateStatus(status TaskStatus)
更新裁剪任务状态
type ClipTaskManager ¶
type ClipTaskManager struct {
	// contains filtered or unexported fields
}
    全局裁剪任务管理器
func (*ClipTaskManager) GetTask ¶
func (ctm *ClipTaskManager) GetTask(taskID string) (*ClipTaskInfo, bool)
获取裁剪任务
type EraseRequest ¶
type EraseRequest struct {
	InputTable  string  `json:"table1" binding:"required"`
	EraseTable  string  `json:"table2" binding:"required"`
	OutTable    string  `json:"out_table" binding:"required"`
	IsMergeTile bool    `json:"isMergeTile"` // 是否合并瓦片
	MaxWorkers  int     `json:"maxWorkers"`
	GridSize    float64 `json:"gridSize"`
	TileCount   int     `json:"tileCount"`
}
    擦除分析请求参数结构体
type EraseTaskInfo ¶
type EraseTaskInfo struct {
	ID           string                    `json:"id"`
	Status       TaskStatus                `json:"status"`
	EraseRequest EraseRequest              `json:"erase_request"`
	CreatedAt    time.Time                 `json:"created_at"`
	StartedAt    *time.Time                `json:"started_at,omitempty"`
	EndedAt      *time.Time                `json:"ended_at,omitempty"`
	Error        string                    `json:"error,omitempty"`
	Result       *Gogeo.GeosAnalysisResult `json:"-"` // 不序列化到JSON
	Context      context.Context           `json:"-"`
	Cancel       context.CancelFunc        `json:"-"`
	// contains filtered or unexported fields
}
    func (*EraseTaskInfo) UpdateStatus ¶
func (task *EraseTaskInfo) UpdateStatus(status TaskStatus)
更新擦除任务状态
type EraseTaskManager ¶
type EraseTaskManager struct {
	// contains filtered or unexported fields
}
    擦除任务管理器
func (*EraseTaskManager) GetTask ¶
func (etm *EraseTaskManager) GetTask(taskID string) (*EraseTaskInfo, bool)
获取擦除任务
type IdentityRequest ¶
type IdentityRequest struct {
	Table1         string  `json:"table1" binding:"required"`
	Table2         string  `json:"table2" binding:"required"`
	OutTable       string  `json:"out_table" binding:"required"`
	IsMergeTile    bool    `json:"isMergeTile"` // 是否合并瓦片
	MaxWorkers     int     `json:"maxWorkers"`
	GridSize       float64 `json:"gridSize"`
	TileCount      int     `json:"tileCount"`
	BufferDistance float64 `json:"bufferDistance"`
}
    Identity分析请求参数结构体
type IdentityTaskInfo ¶
type IdentityTaskInfo struct {
	ID      string          `json:"id"`
	Status  TaskStatus      `json:"status"`
	Request IdentityRequest `json:"identity_request"`
	CreatedAt time.Time                 `json:"created_at"`
	StartedAt *time.Time                `json:"started_at,omitempty"`
	EndedAt   *time.Time                `json:"ended_at,omitempty"`
	Error     string                    `json:"error,omitempty"`
	Result    *Gogeo.GeosAnalysisResult `json:"-"` // 不序列化到JSON
	Context   context.Context           `json:"-"`
	Cancel    context.CancelFunc        `json:"-"`
	// contains filtered or unexported fields
}
    Identity任务信息结构体
func (*IdentityTaskInfo) UpdateStatus ¶
func (task *IdentityTaskInfo) UpdateStatus(status TaskStatus)
更新Identity任务状态
type IdentityTaskManager ¶
type IdentityTaskManager struct {
	// contains filtered or unexported fields
}
    Identity任务管理器
func (*IdentityTaskManager) AddTask ¶
func (tm *IdentityTaskManager) AddTask(task *IdentityTaskInfo)
添加Identity任务
func (*IdentityTaskManager) GetTask ¶
func (tm *IdentityTaskManager) GetTask(taskID string) (*IdentityTaskInfo, bool)
获取Identity任务
func (*IdentityTaskManager) RemoveTask ¶
func (tm *IdentityTaskManager) RemoveTask(taskID string)
删除Identity任务
type IntersectRequest ¶
type IntersectRequest struct {
	Table1         string  `json:"table1" binding:"required"`
	Table2         string  `json:"table2" binding:"required"`
	OutTable       string  `json:"out_table" binding:"required"`
	FieldStrategy  int     `json:"fieldStrategy"`
	IsMergeTile    bool    `json:"isMergeTile"`
	MaxWorkers     int     `json:"maxWorkers"`
	GridSize       float64 `json:"gridSize"`
	TileCount      int     `json:"tileCount"`
	BufferDistance float64 `json:"bufferDistance"`
}
    请求参数结构体
type IntersectTaskInfo ¶
type IntersectTaskInfo struct {
	ID      string           `json:"id"`
	Status  TaskStatus       `json:"status"`
	Request IntersectRequest `json:"intersect_request"`
	CreatedAt time.Time                 `json:"created_at"`
	StartedAt *time.Time                `json:"started_at,omitempty"`
	EndedAt   *time.Time                `json:"ended_at,omitempty"`
	Error     string                    `json:"error,omitempty"`
	Result    *Gogeo.GeosAnalysisResult `json:"-"` // 不序列化到JSON
	Context   context.Context           `json:"-"`
	Cancel    context.CancelFunc        `json:"-"`
	// contains filtered or unexported fields
}
    任务信息结构体
func (*IntersectTaskInfo) UpdateStatus ¶
func (task *IntersectTaskInfo) UpdateStatus(status TaskStatus)
更新任务状态
type ProgressMessage ¶
type ProgressMessage struct {
	Type       string `json:"type"`
	Percentage int    `json:"percentage,omitempty"`
	Message    string `json:"message"`
	Timestamp  int64  `json:"timestamp"`
}
    WebSocket消息结构体
type SymDifferenceRequest ¶
type SymDifferenceRequest struct {
	Table1      string  `json:"table1" binding:"required"`
	Table2      string  `json:"table2" binding:"required"`
	OutTable    string  `json:"out_table" binding:"required"`
	IsMergeTile bool    `json:"isMergeTile"` // 是否合并瓦片
	MaxWorkers  int     `json:"maxWorkers"`
	GridSize    float64 `json:"gridSize"`
	TileCount   int     `json:"tileCount"`
}
    对称差异分析请求参数结构体
type SymDifferenceTaskInfo ¶
type SymDifferenceTaskInfo struct {
	ID             string                    `json:"id"`
	Status         TaskStatus                `json:"status"`
	SymDiffRequest SymDifferenceRequest      `json:"sym_diff_request"` // 新增字段
	CreatedAt      time.Time                 `json:"created_at"`
	StartedAt      *time.Time                `json:"started_at,omitempty"`
	EndedAt        *time.Time                `json:"ended_at,omitempty"`
	Error          string                    `json:"error,omitempty"`
	Result         *Gogeo.GeosAnalysisResult `json:"-"` // 不序列化到JSON
	Context        context.Context           `json:"-"`
	Cancel         context.CancelFunc        `json:"-"`
	// contains filtered or unexported fields
}
    func (*SymDifferenceTaskInfo) UpdateStatus ¶
func (task *SymDifferenceTaskInfo) UpdateStatus(status TaskStatus)
更新裁剪任务状态
type SymDifferenceTaskManager ¶
type SymDifferenceTaskManager struct {
	// contains filtered or unexported fields
}
    添加任务
func (*SymDifferenceTaskManager) AddTask ¶
func (ctm *SymDifferenceTaskManager) AddTask(task *SymDifferenceTaskInfo)
添加裁剪任务
func (*SymDifferenceTaskManager) GetTask ¶
func (ctm *SymDifferenceTaskManager) GetTask(taskID string) (*SymDifferenceTaskInfo, bool)
获取裁剪任务
func (*SymDifferenceTaskManager) RemoveTask ¶
func (ctm *SymDifferenceTaskManager) RemoveTask(taskID string)
删除裁剪任务
type TaskManager ¶
type TaskManager struct {
	// contains filtered or unexported fields
}
    全局任务管理器
func (*TaskManager) GetTask ¶
func (tm *TaskManager) GetTask(taskID string) (*IntersectTaskInfo, bool)
获取任务
type TaskStatus ¶
type TaskStatus string
任务状态枚举
const ( TaskStatusPending TaskStatus = "pending" TaskStatusRunning TaskStatus = "running" TaskStatusCompleted TaskStatus = "completed" TaskStatusFailed TaskStatus = "failed" TaskStatusCancelled TaskStatus = "cancelled" )
type UnionRequest ¶
type UnionRequest struct {
	TableName        string   `json:"table_name" binding:"required"`
	GroupFields      []string `json:"group_fields" binding:"required"`
	OutTable         string   `json:"out_table" binding:"required"`
	GridSize         float64  `json:"gridSize"`
	PreserveTopo     bool     `json:"preserveTopo"`
	KeepCollapsed    bool     `json:"keepCollapsed"`
	PrecisionEnabled bool     `json:"precisionEnabled"`
}
    Union请求参数结构体
type UnionTaskInfo ¶
type UnionTaskInfo struct {
	ID        string                    `json:"id"`
	Status    TaskStatus                `json:"status"`
	Request   UnionRequest              `json:"union_request"`
	CreatedAt time.Time                 `json:"created_at"`
	StartedAt *time.Time                `json:"started_at,omitempty"`
	EndedAt   *time.Time                `json:"ended_at,omitempty"`
	Error     string                    `json:"error,omitempty"`
	Result    *Gogeo.GeosAnalysisResult `json:"-"` // 不序列化到JSON
	Context   context.Context           `json:"-"`
	Cancel    context.CancelFunc        `json:"-"`
	// contains filtered or unexported fields
}
    Union任务信息结构体
func (*UnionTaskInfo) UpdateStatus ¶
func (task *UnionTaskInfo) UpdateStatus(status TaskStatus)
更新Union任务状态
type UnionTaskManager ¶
type UnionTaskManager struct {
	// contains filtered or unexported fields
}
    Union任务管理器
func (*UnionTaskManager) AddTask ¶
func (utm *UnionTaskManager) AddTask(task *UnionTaskInfo)
添加Union任务
func (*UnionTaskManager) GetTask ¶
func (utm *UnionTaskManager) GetTask(taskID string) (*UnionTaskInfo, bool)
获取Union任务
func (*UnionTaskManager) RemoveTask ¶
func (utm *UnionTaskManager) RemoveTask(taskID string)
删除Union任务
type UpdateRequest ¶
type UpdateRequest struct {
	InputTable  string  `json:"table1" binding:"required"`
	UpdateTable string  `json:"table2" binding:"required"`
	OutTable    string  `json:"out_table" binding:"required"`
	IsMergeTile bool    `json:"isMergeTile"` // 是否合并瓦片
	MaxWorkers  int     `json:"maxWorkers"`
	GridSize    float64 `json:"gridSize"`
	TileCount   int     `json:"tileCount"`
}
    空间更新分析请求参数结构体
type UpdateTaskInfo ¶
type UpdateTaskInfo struct {
	ID            string                    `json:"id"`
	Status        TaskStatus                `json:"status"`
	UpdateRequest UpdateRequest             `json:"update_request"`
	CreatedAt     time.Time                 `json:"created_at"`
	StartedAt     *time.Time                `json:"started_at,omitempty"`
	EndedAt       *time.Time                `json:"ended_at,omitempty"`
	Error         string                    `json:"error,omitempty"`
	Result        *Gogeo.GeosAnalysisResult `json:"-"` // 不序列化到JSON
	Context       context.Context           `json:"-"`
	Cancel        context.CancelFunc        `json:"-"`
	// contains filtered or unexported fields
}
    func (*UpdateTaskInfo) UpdateStatus ¶
func (task *UpdateTaskInfo) UpdateStatus(status TaskStatus)
更新任务状态
type UpdateTaskManager ¶
type UpdateTaskManager struct {
	// contains filtered or unexported fields
}
    更新任务管理器
func (*UpdateTaskManager) AddTask ¶
func (utm *UpdateTaskManager) AddTask(task *UpdateTaskInfo)
添加更新任务
func (*UpdateTaskManager) GetTask ¶
func (utm *UpdateTaskManager) GetTask(taskID string) (*UpdateTaskInfo, bool)
获取更新任务
func (*UpdateTaskManager) RemoveTask ¶
func (utm *UpdateTaskManager) RemoveTask(taskID string)
删除更新任务
type UserController ¶
type UserController struct{}
    func (*UserController) ClipWebSocket ¶
func (uc *UserController) ClipWebSocket(c *gin.Context)
ClipWebSocket 处理WebSocket连接并执行裁剪分析任务
func (*UserController) EraseWebSocket ¶
func (uc *UserController) EraseWebSocket(c *gin.Context)
EraseWebSocket 处理WebSocket连接并执行擦除分析任务
func (*UserController) GetClipTaskStatus ¶
func (uc *UserController) GetClipTaskStatus(c *gin.Context)
GetClipTaskStatus 查询裁剪任务状态
func (*UserController) GetEraseTaskStatus ¶
func (uc *UserController) GetEraseTaskStatus(c *gin.Context)
GetEraseTaskStatus 获取擦除任务状态
func (*UserController) GetIdentityTaskStatus ¶
func (uc *UserController) GetIdentityTaskStatus(c *gin.Context)
GetIdentityTaskStatus 查询Identity任务状态
func (*UserController) GetTaskStatus ¶
func (uc *UserController) GetTaskStatus(c *gin.Context)
GetTaskStatus 查询任务状态
func (*UserController) GetUnionTaskStatus ¶
func (uc *UserController) GetUnionTaskStatus(c *gin.Context)
GetUnionTaskStatus 查询Union任务状态
func (*UserController) GetUpdateTaskStatus ¶
func (uc *UserController) GetUpdateTaskStatus(c *gin.Context)
GetUpdateTaskStatus 获取更新任务状态
func (*UserController) IdentityWebSocket ¶
func (uc *UserController) IdentityWebSocket(c *gin.Context)
IdentityWebSocket 处理WebSocket连接并执行Identity分析任务
func (*UserController) IntersectWebSocket ¶
func (uc *UserController) IntersectWebSocket(c *gin.Context)
IntersectWebSocket 处理WebSocket连接并执行分析任务
func (*UserController) StartClip ¶
func (uc *UserController) StartClip(c *gin.Context)
StartClip 创建并初始化裁剪分析任务
func (*UserController) StartErase ¶
func (uc *UserController) StartErase(c *gin.Context)
StartErase 创建并初始化擦除分析任务
func (*UserController) StartIdentity ¶
func (uc *UserController) StartIdentity(c *gin.Context)
StartIdentity 创建并初始化Identity分析任务
func (*UserController) StartIntersect ¶
func (uc *UserController) StartIntersect(c *gin.Context)
StartIntersect 创建并初始化分析任务
func (*UserController) StartSymDifference ¶
func (uc *UserController) StartSymDifference(c *gin.Context)
StartSymDifference 创建并初始化对称差异分析任务
func (*UserController) StartUnion ¶
func (uc *UserController) StartUnion(c *gin.Context)
StartUnion 创建并初始化Union分析任务
func (*UserController) StartUpdate ¶
func (uc *UserController) StartUpdate(c *gin.Context)
StartUpdate 创建并初始化空间更新分析任务
func (*UserController) SymDifferenceWebSocket ¶
func (uc *UserController) SymDifferenceWebSocket(c *gin.Context)
SymDifferenceWebSocket 处理WebSocket连接并执行对称差异分析任务
func (*UserController) UnionWebSocket ¶
func (uc *UserController) UnionWebSocket(c *gin.Context)
UnionWebSocket 处理WebSocket连接并执行Union分析任务
func (*UserController) UpdateWebSocket ¶
func (uc *UserController) UpdateWebSocket(c *gin.Context)
UpdateWebSocket 处理WebSocket连接并执行空间更新分析任务