Merge branch 'yongxu-dev' into devlop

# Conflicts:
#	soul-admin/src/api/ckb.ts
#	soul-admin/src/pages/content/PersonAddEditModal.tsx
#	soul-api/internal/model/person.go
#	开发文档/1、需求/以界面定需求.md
#	开发文档/1、需求/需求汇总.md
This commit is contained in:
Alex-larget
2026-03-18 21:10:02 +08:00
460 changed files with 92262 additions and 3962 deletions

View File

@@ -3,7 +3,7 @@ package model
import "time"
// GiftPayRequest 代付请求表(改造后:发起人创建并支付,好友领取)
// status: pending_pay待发起人支付| paid已支付待领取| cancelled | expired
// status: pending_pay待发起人支付| paid已支付待领取| refunded已退款不可再分享/领取)| cancelled | expired
type GiftPayRequest struct {
ID string `gorm:"column:id;primaryKey;size:50" json:"id"`
RequestSN string `gorm:"column:request_sn;uniqueIndex;size:32" json:"requestSn"`
@@ -12,7 +12,7 @@ type GiftPayRequest struct {
ProductID string `gorm:"column:product_id;size:50" json:"productId"`
Amount float64 `gorm:"column:amount;type:decimal(10,2)" json:"amount"`
Description string `gorm:"column:description;size:200" json:"description"`
Status string `gorm:"column:status;size:20;index" json:"status"` // pending_pay / paid / cancelled / expired
Status string `gorm:"column:status;size:20;index" json:"status"` // pending_pay / paid / refunded / cancelled / expired
Quantity int `gorm:"column:quantity;default:1" json:"quantity"`
RedeemedCount int `gorm:"column:redeemed_count;default:0" json:"redeemedCount"`
PayerUserID *string `gorm:"column:payer_user_id;size:50" json:"payerUserId,omitempty"`

View File

@@ -8,10 +8,14 @@ import "time"
type Person struct {
ID uint `gorm:"primaryKey;autoIncrement" json:"id"`
// 绑定用户(用于“超级个体开通后自动创建@人”等幂等场景)
// 允许为空:历史数据/手工创建的 Person 不一定绑定 user
UserID *string `gorm:"column:user_id;size:50;uniqueIndex" json:"userId"`
PersonID string `gorm:"column:person_id;size:50;uniqueIndex" json:"personId"`
Token string `gorm:"column:token;size:36;index" json:"token"` // 32 位唯一 token文章/小程序传此值
Token string `gorm:"column:token;size:36;uniqueIndex" json:"token"` // 32 位唯一 token文章/小程序传此值
Name string `gorm:"column:name;size:100" json:"name"`
Aliases string `gorm:"column:aliases;size:500;default:''" json:"aliases"` // comma-separated alternative names (马甲)
Aliases string `gorm:"column:aliases;size:255;default:''" json:"aliases"` // 逗号分隔别名:用于 @ 自动匹配
Label string `gorm:"column:label;size:200" json:"label"`
CkbApiKey string `gorm:"column:ckb_api_key;size:100;default:''" json:"ckbApiKey"` // 存客宝真实密钥,不对外暴露