iloom/auth-service/internal/model/notification.go
Chever John 9c39c8cbd7
init: iloom WMS monorepo with K8s deployment manifests
Go workspace (go.work) with 5 microservices + shared library:
- gateway (8080), auth-service (8081), purchaser-service (8082)
- textile-service (8083), washing-service (8084)
- shared: proto definitions, common packages

Infrastructure: docker-compose for local dev, K8s manifests for
K3s cluster deployment (mysql/redis/etcd + traefik ingress).

Frontend (iloom-flatten) added as git submodule.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-06-14 11:33:31 +08:00

36 lines
1.7 KiB
Go

package model
import "time"
type Notification struct {
ID string `json:"id" db:"id"`
RecipientID string `json:"recipient_id" db:"recipient_id"`
SenderID *string `json:"sender_id,omitempty" db:"sender_id"`
SenderCompanyID *string `json:"sender_company_id,omitempty" db:"sender_company_id"`
Title string `json:"title" db:"title"`
Content string `json:"content" db:"content"`
Type string `json:"type" db:"type"`
PlanID *string `json:"plan_id,omitempty" db:"plan_id"`
IsRead bool `json:"is_read" db:"is_read"`
ReadAt *time.Time `json:"read_at,omitempty" db:"read_at"`
CreatedAt time.Time `json:"created_at" db:"created_at"`
}
type ShareLink struct {
ID string `json:"id" db:"id"`
PlanID string `json:"plan_id" db:"plan_id"`
CreatedBy string `json:"created_by" db:"created_by"`
ShortCode string `json:"short_code" db:"short_code"`
FactoryType string `json:"factory_type" db:"factory_type"`
HideSensitive bool `json:"hide_sensitive" db:"hide_sensitive"`
Status string `json:"status" db:"status"`
ExpiresAt *time.Time `json:"expires_at,omitempty" db:"expires_at"`
ClickedAt *time.Time `json:"clicked_at,omitempty" db:"clicked_at"`
ClickCount int `json:"click_count" db:"click_count"`
UsedAt *time.Time `json:"used_at,omitempty" db:"used_at"`
ResponseResult *string `json:"response_result,omitempty" db:"response_result"`
RejectReason *string `json:"reject_reason,omitempty" db:"reject_reason"`
RespondedAt *time.Time `json:"responded_at,omitempty" db:"responded_at"`
CreatedAt time.Time `json:"created_at" db:"created_at"`
}