UserTicket

package
v5.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 25, 2024 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AddTicket

func AddTicket(args *ArgsAddTicket) (err error)

AddTicket 添加指定用户和票据配置的张数

func AddTickets

func AddTickets(args *ArgsAddTickets) (newTicketIDs []int64, newTicketRefundIDs []int64, err error)

AddTickets 批量给予用户票据

func CheckConfigOrg

func CheckConfigOrg(orgID int64, configID int64) (err error)

CheckConfigOrg 检查票据是否可用于

func ClearTicket

func ClearTicket(args *ArgsClearTicket) (err error)

ClearTicket 清理指定配置的票据

func DeleteConfig

func DeleteConfig(args *ArgsDeleteConfig) (err error)

func GetConfigMoreMap

func GetConfigMoreMap(args *ArgsGetConfigMore) (data map[int64]string, err error)

GetConfigMoreMap 获取一组配置名称组

func GetConfigNameByID

func GetConfigNameByID(id int64) string

GetConfigNameByID 获取配置名称

func GetTicketCount

func GetTicketCount(args *ArgsGetTicketCount) (count int64, err error)

GetTicketCount 查询用户可用票数

func GetTicketCountByOrgID

func GetTicketCountByOrgID(orgID int64) (count int64)

GetTicketCountByOrgID 查询组织持有的票数

func RefundUseTicket

func RefundUseTicket(args *ArgsRefundUseTicket) (err error)

RefundUseTicket 强制用掉用户的票据 解决退票问题

func UpdateConfig

func UpdateConfig(args *ArgsUpdateConfig) (err error)

UpdateConfig 修改配置

func UseTicket

func UseTicket(args *ArgsUseTicket) (err error)

UseTicket 使用N张票据

Types

type ArgsAddTicket

type ArgsAddTicket struct {
	//组织ID
	// 可选
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//配置ID
	ConfigID int64 `db:"config_id" json:"configID" check:"id"`
	//用户ID
	UserID int64 `db:"user_id" json:"userID" check:"id"`
	//张数
	Count int64 `db:"count" json:"count" check:"int64Than0"`
	//使用来源
	UseFromName string `db:"use_from_name" json:"useFromName"`
}

ArgsAddTicket 添加指定用户和票据配置的张数参数

type ArgsAddTickets

type ArgsAddTickets struct {
	//组织ID
	// 可选
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//用户ID
	UserID int64 `db:"user_id" json:"userID" check:"id"`
	//赠送列表
	Data []ArgsAddTicketsChild `json:"data"`
	//可退票据配置列
	CanRefundConfigIDs []int64 `json:"canRefundConfigIDs"`
}

ArgsAddTickets 批量给予用户票据参数

type ArgsAddTicketsChild

type ArgsAddTicketsChild struct {
	//配置ID
	ConfigID int64 `db:"config_id" json:"configID" check:"id"`
	//张数
	Count int64 `db:"count" json:"count" check:"int64Than0"`
	//使用来源
	UseFromName string `db:"use_from_name" json:"useFromName"`
}

type ArgsClearTicket

type ArgsClearTicket struct {
	//配置ID
	ConfigD int64 `db:"config_id" json:"configID" check:"id"`
	//组织ID
	// 可选
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
}

ArgsClearTicket 清理指定配置的票据参数

type ArgsCreateConfig

type ArgsCreateConfig struct {
	//默认过期时间
	DefaultExpireTime int64 `db:"default_expire_time" json:"defaultExpireTime"`
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//标识码
	Mark string `db:"mark" json:"mark" check:"mark" empty:"true"`
	//标题
	Title string `db:"title" json:"title" check:"title" min:"1" max:"300"`
	//描述
	Des string `db:"des" json:"des" check:"des" min:"1" max:"3000" empty:"true"`
	//封面
	CoverFileID int64 `db:"cover_file_id" json:"coverFileID" check:"id" empty:"true"`
	//描述文件组
	DesFiles pq.Int64Array `db:"des_files" json:"desFiles" check:"ids" empty:"true"`
	//默认减免的费用比例、费用金额
	ExemptionPrice int64 `db:"exemption_price" json:"exemptionPrice"`
	// 1-100% 百分比
	ExemptionDiscount int64 `db:"exemption_discount" json:"exemptionDiscount"`
	//费用低于多少时,将失效
	// 依赖于订单的总金额判断
	ExemptionMinPrice int64 `db:"exemption_min_price" json:"exemptionMinPrice"`
	//是否可用于订单抵扣
	// 否则只能用于一件商品的抵扣
	UseOrder bool `db:"use_order" json:"useOrder" check:"bool"`
	//领取周期类型
	// 0 不限制; 1 一次性; 2 每天限制; 3 每周限制; 4 每月限制; 5 每季度限制; 6 每年限制
	LimitTimeType int `db:"limit_time_type" json:"limitTimeType" check:"intThan0" empty:"true"`
	//领取次数
	LimitCount int `db:"limit_count" json:"limitCount" check:"intThan0" empty:"true"`
	//样式ID
	// 关联到样式库后,本记录的图片和文本将交给样式库布局实现
	StyleID int64 `db:"style_id" json:"styleID" check:"id" empty:"true"`
	//附加参数
	Params CoreSQLConfig.FieldsConfigsType `db:"params" json:"params"`
}

ArgsCreateConfig 创建新的配置参数

type ArgsDeleteConfig

type ArgsDeleteConfig struct {
	//ID
	ID int64 `db:"id" json:"id" check:"id"`
	//组织ID
	// 可选
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
}

ArgsDeleteConfig 删除配置参数

type ArgsGetAnalysisUse

type ArgsGetAnalysisUse struct {
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//模式
	// 0 无效; 1 赠送;2 使用
	Mode int `db:"mode" json:"mode" check:"intThan0" empty:"true"`
	//时间段
	TimeBetween CoreSQLTime.DataCoreTime `json:"timeBetween"`
}

ArgsGetAnalysisUse 统计使用情况参数

type ArgsGetAnalysisUse2

type ArgsGetAnalysisUse2 struct {
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//模式
	// 0 无效; 1 赠送;2 使用
	Mode int `db:"mode" json:"mode" check:"intThan0" empty:"true"`
	//时间段
	TimeBetween CoreSQLTime2.DataCoreTime `json:"timeBetween"`
}

ArgsGetAnalysisUse2 统计使用情况参数

type ArgsGetConfigByID

type ArgsGetConfigByID struct {
	//ID
	ID int64 `db:"id" json:"id" check:"id"`
	//组织ID
	// 可选
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
}

ArgsGetConfigByID 获取指定配置ID参数

type ArgsGetConfigList

type ArgsGetConfigList struct {
	//分页
	Pages CoreSQLPages.ArgsDataList `json:"pages"`
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//是否被删除
	IsRemove bool `db:"is_remove" json:"isRemove" check:"bool" empty:"true"`
	//搜索
	Search string `json:"search" check:"search" empty:"true"`
}

ArgsGetConfigList 获取配置列表参数

type ArgsGetConfigMore

type ArgsGetConfigMore struct {
	//ID列
	IDs pq.Int64Array `json:"ids"`
	//是否包含删除数据
	HaveRemove bool `json:"haveRemove"`
}

ArgsGetConfigMore 获取一组配置参数

type ArgsGetLogList

type ArgsGetLogList struct {
	//分页
	Pages CoreSQLPages.ArgsDataList `json:"pages"`
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//配置ID
	ConfigID int64 `db:"config_id" json:"configID" check:"id" empty:"true"`
	//用户ID
	UserID int64 `db:"user_id" json:"userID" check:"id" empty:"true"`
	//模式
	// 0 无效; 1 赠送;2 使用
	Mode int `db:"mode" json:"mode" check:"intThan0" empty:"true"`
}

ArgsGetLogList 获取日志列表参数

type ArgsGetTicketCount

type ArgsGetTicketCount struct {
	//配置ID
	ConfigID int64 `db:"config_id" json:"configID" check:"id"`
	//用户ID
	UserID int64 `db:"user_id" json:"userID" check:"id"`
}

ArgsGetTicketCount 查询用户可用票数参数

type ArgsGetTicketList

type ArgsGetTicketList struct {
	//分页
	Pages CoreSQLPages.ArgsDataList `json:"pages"`
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//配置ID
	ConfigID int64 `db:"config_id" json:"configID" check:"id" empty:"true"`
	//用户ID
	UserID int64 `db:"user_id" json:"userID" check:"id" empty:"true"`
	//是否到期
	NeedIsExpire bool `json:"needIsExpire" check:"bool" empty:"true"`
	IsExpire     bool `json:"isExpire" check:"bool" empty:"true"`
	//是否被删除
	IsRemove bool `db:"is_remove" json:"isRemove" check:"bool" empty:"true"`
	//是否聚合配置
	NeedAgg bool `json:"needAgg"`
	//搜索
	Search string `json:"search" check:"search" empty:"true"`
}

ArgsGetTicketList 获取票据列表参数

type ArgsRefundUseTicket

type ArgsRefundUseTicket struct {
	//组织ID
	// 可选
	OrgID int64 `db:"org_id" json:"orgID" check:"id"`
	//用户ID
	UserID int64 `db:"user_id" json:"userID" check:"id"`
	//退还的票据ID列
	IDs pq.Int64Array `db:"ids" json:"ids"`
	//描述信息前缀
	Des string `json:"des" check:"des" min:"1" max:"1000"`
}

ArgsRefundUseTicket 强制用掉用户的票据参数

type ArgsUpdateConfig

type ArgsUpdateConfig struct {
	//ID
	ID int64 `db:"id" json:"id" check:"id"`
	//组织ID
	// 可选
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//默认过期时间
	DefaultExpireTime int64 `db:"default_expire_time" json:"defaultExpireTime"`
	//标识码
	Mark string `db:"mark" json:"mark" check:"mark" empty:"true"`
	//标题
	Title string `db:"title" json:"title" check:"title" min:"1" max:"300"`
	//描述
	Des string `db:"des" json:"des" check:"des" min:"1" max:"3000" empty:"true"`
	//封面
	CoverFileID int64 `db:"cover_file_id" json:"coverFileID" check:"id" empty:"true"`
	//描述文件组
	DesFiles pq.Int64Array `db:"des_files" json:"desFiles" check:"ids" empty:"true"`
	//默认减免的费用比例、费用金额
	ExemptionPrice int64 `db:"exemption_price" json:"exemptionPrice"`
	// 1-100% 百分比
	ExemptionDiscount int64 `db:"exemption_discount" json:"exemptionDiscount"`
	//费用低于多少时,将失效
	// 依赖于订单的总金额判断
	ExemptionMinPrice int64 `db:"exemption_min_price" json:"exemptionMinPrice"`
	//是否可用于订单抵扣
	// 否则只能用于一件商品的抵扣
	UseOrder bool `db:"use_order" json:"useOrder" check:"bool"`
	//领取周期类型
	// 0 不限制; 1 一次性; 2 每天限制; 3 每周限制; 4 每月限制; 5 每季度限制; 6 每年限制
	LimitTimeType int `db:"limit_time_type" json:"limitTimeType" check:"intThan0" empty:"true"`
	//领取次数
	LimitCount int `db:"limit_count" json:"limitCount" check:"intThan0" empty:"true"`
	//样式ID
	// 关联到样式库后,本记录的图片和文本将交给样式库布局实现
	StyleID int64 `db:"style_id" json:"styleID" check:"id" empty:"true"`
	//附加参数
	Params CoreSQLConfig.FieldsConfigsType `db:"params" json:"params"`
}

ArgsUpdateConfig 修改配置参数

type ArgsUseTicket

type ArgsUseTicket struct {
	//ID
	// 如果给予,则查询ID,否则根据configID和userID检索数据
	ID int64 `db:"id" json:"id" check:"id" empty:"true"`
	//组织ID
	// 可选
	OrgID int64 `db:"org_id" json:"orgID" check:"id" empty:"true"`
	//配置ID
	ConfigID int64 `db:"config_id" json:"configID" check:"id"`
	//用户ID
	UserID int64 `db:"user_id" json:"userID" check:"id"`
	//张数
	// 如果是ID,则不能超出ID总数
	Count int64 `db:"count" json:"count" check:"int64Than0"`
	//使用来源
	UseFromName string `db:"use_from_name" json:"useFromName"`
}

ArgsUseTicket 使用N张票据参数

type DataAnalysisUse

type DataAnalysisUse struct {
	//配置ID
	ConfigID int64 `db:"config_id" json:"configID"`
	//配置名称
	ConfigName string `db:"config_name" json:"configName"`
	//数量
	Count int64 `db:"count" json:"count"`
}

func GetAnalysisUse

func GetAnalysisUse(args *ArgsGetAnalysisUse) (dataList []DataAnalysisUse, err error)

GetAnalysisUse 统计使用情况

func GetAnalysisUse2

func GetAnalysisUse2(args *ArgsGetAnalysisUse2) (dataList []DataAnalysisUse, err error)

GetAnalysisUse2 统计使用情况

type DataAnalysisUse2

type DataAnalysisUse2 struct {
	//配置ID
	ConfigID int64 `db:"config_id" json:"configID"`
	//配置名称
	ConfigName string `db:"config_name" json:"configName"`
	//数量
	Count int64 `db:"count" json:"count"`
}

type FieldsConfig

type FieldsConfig struct {
	//ID
	ID int64 `db:"id" json:"id"`
	//创建时间
	CreateAt time.Time `db:"create_at" json:"createAt"`
	//更新时间
	UpdateAt time.Time `db:"update_at" json:"updateAt"`
	//删除时间
	DeleteAt time.Time `db:"delete_at" json:"deleteAt"`
	//默认过期时间
	DefaultExpireTime int64 `db:"default_expire_time" json:"defaultExpireTime"`
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID"`
	//标识码
	Mark string `db:"mark" json:"mark"`
	//标题
	Title string `db:"title" json:"title"`
	//描述
	Des string `db:"des" json:"des"`
	//封面
	CoverFileID int64 `db:"cover_file_id" json:"coverFileID"`
	//描述文件组
	DesFiles pq.Int64Array `db:"des_files" json:"desFiles"`
	//默认减免的费用比例、费用金额
	ExemptionPrice int64 `db:"exemption_price" json:"exemptionPrice"`
	// 1-100% 百分比
	ExemptionDiscount int64 `db:"exemption_discount" json:"exemptionDiscount"`
	//费用低于多少时,将失效
	// 依赖于订单的总金额判断
	ExemptionMinPrice int64 `db:"exemption_min_price" json:"exemptionMinPrice"`
	//是否可用于订单抵扣
	// 否则只能用于一件商品的抵扣
	UseOrder bool `db:"use_order" json:"useOrder"`
	//领取周期类型
	// 0 不限制; 1 一次性; 2 每天限制; 3 每周限制; 4 每月限制; 5 每季度限制; 6 每年限制
	LimitTimeType int `db:"limit_time_type" json:"limitTimeType"`
	//领取次数
	LimitCount int `db:"limit_count" json:"limitCount"`
	//样式ID
	// 关联到样式库后,本记录的图片和文本将交给样式库布局实现
	StyleID int64 `db:"style_id" json:"styleID"`
	//附加参数
	Params CoreSQLConfig.FieldsConfigsType `db:"params" json:"params"`
}

func CreateConfig

func CreateConfig(args *ArgsCreateConfig) (data FieldsConfig, err error)

CreateConfig 创建新的配置

func GetConfigByID

func GetConfigByID(args *ArgsGetConfigByID) (data FieldsConfig, err error)

GetConfigByID 获取指定配置ID

func GetConfigList

func GetConfigList(args *ArgsGetConfigList) (dataList []FieldsConfig, dataCount int64, err error)

GetConfigList 获取配置列表

func GetConfigMore

func GetConfigMore(args *ArgsGetConfigMore) (dataList []FieldsConfig, err error)

GetConfigMore 获取一组配置

type FieldsLog

type FieldsLog struct {
	//ID
	ID int64 `db:"id" json:"id"`
	//创建时间
	CreateAt time.Time `db:"create_at" json:"createAt"`
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID"`
	//配置ID
	ConfigID int64 `db:"config_id" json:"configID"`
	//用户ID
	UserID int64 `db:"user_id" json:"userID"`
	//模式
	// 1 赠送;2 使用
	Mode int `db:"mode" json:"mode"`
	//张数
	Count int64 `db:"count" json:"count"`
	//使用日志
	Des string `db:"des" json:"des"`
}

FieldsLog 使用日志

func GetLogList

func GetLogList(args *ArgsGetLogList) (dataList []FieldsLog, dataCount int64, err error)

GetLogList 获取日志列表

type FieldsTicket

type FieldsTicket struct {
	//ID
	ID int64 `db:"id" json:"id"`
	//创建时间
	CreateAt time.Time `db:"create_at" json:"createAt"`
	//更新时间
	UpdateAt time.Time `db:"update_at" json:"updateAt"`
	//删除时间
	DeleteAt time.Time `db:"delete_at" json:"deleteAt"`
	//过期时间
	ExpireAt time.Time `db:"expire_at" json:"expireAt"`
	//组织ID
	OrgID int64 `db:"org_id" json:"orgID"`
	//用户ID
	UserID int64 `db:"user_id" json:"userID"`
	//配置ID
	ConfigID int64 `db:"config_id" json:"configID"`
	//张数
	Count int64 `db:"count" json:"count"`
	//原始张数
	// 最初获得的张数,count可能中间存在递减的问题
	ResCount int64 `db:"res_count" json:"resCount"`
}

func GetTicketList

func GetTicketList(args *ArgsGetTicketList) (dataList []FieldsTicket, dataCount int64, err error)

GetTicketList 获取票据列表

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL