Documentation ¶
Overview ¶
溯源模块
Index ¶
- func Create(source *Source) error
- func CreateChild(id, num uint) error
- func CreateChildCode(id uint, child []string) error
- func CreateDesc(sid uint, source []SourceDesc) error
- func NsqRun(param []byte) error
- func Regedit(c *Config)
- type Config
- type Source
- type SourceChild
- type SourceDesc
- type SourceLog
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CreateDesc ¶
func CreateDesc(sid uint, source []SourceDesc) error
创建批次描述信息
sid 批次ID source 待创建的批次描述信息
Types ¶
type Config ¶
type Config struct { DB *gorm.DB // 数据库连接 SourceName string // 溯源批次表名称 SourceDescName string // 溯源批次附属信息表 SourceChildName string // 溯源详情表名称 SourceLogName string // 流转表名称 }
溯源模块逻辑 1. 后台插入产品详情信息,插入产品名称、产品描述、产品图片等 2. 生产产品时,追加插入产品的附加信息 3.
此方法使用Create等方法插入初始数据,然后使用InfoGoods来查询/验证,使用LogList来确定之前查询的次数及IP等信息
type Source ¶
type Source struct { ID uint `gorm:"id;primaryKey;type:INT UNSIGNED;not null;autoIncrement" form:"id" json:"id"` // 待溯源商品ID Name string `gorm:"column:name;type:VARCHAR(200);comment:待溯源商品名称" json:"name" form:"name"` // 待溯源商品名称 UserId uint `gorm:"column:user_id;type:INT UNSIGNED;comment:发布人ID" json:"user_id" form:"user_id"` // 发布人ID CreatedAt string `gorm:"column:created_at;type:datetime;comment:创建时间" json:"created_at" form:"created_at"` // 创建时间 UpdatedAt string `gorm:"column:updated_at;type:datetime;comment:修改时间" json:"updated_at" form:"updated_at"` // 修改时间 }
待溯源批次表
type SourceChild ¶
type SourceChild struct { ID uint64 `gorm:"id;primaryKey;type:BIGINT UNSIGNED;not null;autoIncrement" form:"id" json:"id"` // 待溯源商品ID SourceId uint `gorm:"source_id;type:INT UNSIGNED;comment:溯源批次ID" form:"source_id" json:"source_id"` // 所查询的商品ID GoodsCode string `gorm:"column:goods_code;type:VARCHAR(50);comment:待溯源商品标识;UNIQUE:goods_code" json:"goods_code" form:"goods_code"` // 待溯源商品标识,如果未传入则自动生成一个uuid来作为标识 CreatedAt string `gorm:"column:created_at;type:datetime;comment:创建时间" json:"created_at" form:"created_at"` // 创建时间 }
溯源商品表
func InfoChild ¶
func InfoChild(id uint, offset, limit int) (int64, []SourceChild, error)
获取批次商品详情
id 批次ID offset 跳过条数 limit 查询条数
type SourceDesc ¶
type SourceDesc struct { ID uint `gorm:"id;primaryKey;type:INT UNSIGNED;not null;autoIncrement" form:"id" json:"id"` // 待溯源商品ID SourceId uint `gorm:"source_id;type:INT UNSIGNED;comment:溯源批次ID;index:source_id" form:"source_id" json:"source_id"` // 所查询的批次ID Types uint `gorm:"column:types;type:INT UNSIGNED;comment:描述项的名称,KV" json:"types" form:"types"` // 描述项的名称 TypesName string `gorm:"-" json:"types_name" form:"types_name"` // 描述项的名称,具体值 Value string `gorm:"column:value;type:VARCHAR(200);comment:描述项的值" json:"value" form:"value"` // 描述项的值 }
待溯源批次描述表
type SourceLog ¶
type SourceLog struct { ID uint64 `gorm:"id;primaryKey;type:BIGINT UNSIGNED;not null;autoIncrement" form:"id" json:"id"` // 待溯源商品ID SourceChildId uint64 `` // 所查询的商品ID /* 134-byte string literal not displayed */ Ip uint `gorm:"column:ip;type:INT UNSIGNED;comment:操作地址IP,KV" json:"ip" form:"ip"` // 操作地址IP Msg string `gorm:"column:msg;type:VARCHAR(200);comment:备注信息" json:"msg" form:"msg"` // 操作备注 IsFind uint8 `` // 是否是查询操作【用于区分内部流转还是外部查询】 /* 148-byte string literal not displayed */ UserAgent uint `gorm:"column:user_agent;type:INT UNSIGNED;comment:操作用户的UA标识,KV" json:"user_agent" form:"user_agent"` // 操作用户的UA标识 CreatedAt string `gorm:"column:created_at;type:datetime;comment:创建时间" json:"created_at" form:"created_at"` // 创建时间 }
溯源入库/出库/运输/查询等的日志
Click to show internal directories.
Click to hide internal directories.