Documentation ¶
Overview ¶
*
- Copyright 2015 @ z3q.net.
- name : account
- author : jarryliu
- date : 2015-07-24 08:48
- description :
- history :
*
- Copyright 2015 @ z3q.net.
- name : balance_info
- author : jarryliu
- date : 2015-07-24 09:42
- description :
- history :
*
- Copyright 2015 @ z3q.net.
- name : charge_log
- author : jarryliu
- date : 2015-07-24 09:19
- description :
- history :
*
- Copyright 2014 @ z3q.net.
- name :
- author : jarryliu
- date : 2014-02-05 20:12
- description :
- history :
*
- Copyright 2014 @ ops.
- name :
- author : jarryliu
- date : 2013-11-13 21:08
- description :
- history :
*
- Copyright 2015 @ z3q.net.
- name : invitaton_manager
- author : jarryliu
- date : -- :
- description :
- history :
*
- Copyright 2014 @ z3q.net.
- name :
- author : jarryliu
- date : 2013-12-09 10:28
- description :
- history :
Index ¶
Constants ¶
View Source
const ( // 退款 KindBalanceBack = 0 // 消费 KindBalanceShopping = 1 // 充值 KindBalanceCharge = 2 // 提现 KindBalanceApplyCash = 3 // 系统充值 TypeBalanceSystemCharge = 1 // 网银充值 TypeBalanceNetPayCharge = 2 // 客服充值 TypeBalanceServiceCharge = 3 // 提现并充值到余额 TypeApplyCashToCharge = 1 // 提现到银行卡 TypeApplyCashToBank = 2 // 提现到第三方服务提供商(如:Paypal,支付宝等) TypeApplyCashToServiceProvider = 3 // 退款到银行卡 TypeBackToBank = 1 // 退款到第三方 TypeBackToServiceProvider = 2 // 提现请求已提交 StateApplySubmitted = 0 // 提现已经确认 StateApplyConfirmed = 1 // 提现未通过 StateApplyNotPass = 2 // 提现完成 StateApplyOver = 3 )
Variables ¶
View Source
var ( ErrSessionTimeout *domain.DomainError = domain.NewDomainError( "member_session_time_out", "会员会话超时") ErrInvalidSession *domain.DomainError = domain.NewDomainError( "member_invalid_session", "异常会话") ErrNoSuchDeliverAddress *domain.DomainError = domain.NewDomainError( "member_no_such_deliver_address", "配送地址错误") ErrNoSuchMember *domain.DomainError = domain.NewDomainError( "member_no_such_member", "会员不存在") ErrDeliverAddressLen *domain.DomainError = domain.NewDomainError( "err_deliver_address_len", "请填写详细的配送地址") ErrDeliverRealNameIsNull *domain.DomainError = domain.NewDomainError( "err_deliver_real_name_is_null", "收货人不能为空") ErrDeliverPhoneIsNull *domain.DomainError = domain.NewDomainError( "err_deliver_phone_is_null", "电话不能为空") ErrPwdCannotSame *domain.DomainError = domain.NewDomainError( "Err_Pwd_Can_not_Same", "新密码不能与旧密码相同") ErrPwdOldPwdNotRight *domain.DomainError = domain.NewDomainError( "Err_Pwd_Pld_Pwd_Not_Right", "原密码不正确") ErrIncorrectAmount *domain.DomainError = domain.NewDomainError( "err_balance_amount", "金额错误") ErrOutOfBalance *domain.DomainError = domain.NewDomainError( "err_out_of_balance", "超出金额") ErrUserLength *domain.DomainError = domain.NewDomainError( "err_user_length", "用户名必须大于6位", ) ErrUserValidErr *domain.DomainError = domain.NewDomainError( "err_user_valid_err", "用户名为6位以上字符和数字的组合") ErrEmailValidErr *domain.DomainError = domain.NewDomainError( "err_email_valid_err", "邮箱不正确") ErrPhoneValidErr *domain.DomainError = domain.NewDomainError( "err_phone_valid_err", "手机号码不正确") ErrQqValidErr *domain.DomainError = domain.NewDomainError( "err_qq_valid_err", "QQ号码不正确") ErrNotSetTradePwd *domain.DomainError = domain.NewDomainError( "err_not_set_tarde_pwd", "交易密码未设置") ErrIncorrectTradePwd *domain.DomainError = domain.NewDomainError( "err_incorrect_tarde_pwd", "交易密码错误") )
Functions ¶
This section is empty.
Types ¶
type AccountValue ¶
type AccountValue struct { MemberId int `db:"member_id" pk:"yes" json:"memberId"` // 积分 Integral int `db:"integral"` // 余额 Balance float32 `db:"balance" json:"balance"` // 赠送余额 PresentBalance float32 `db:"present_balance" json:"presentBalance"` // 总赠送金额 TotalPresentFee float32 `db:"total_present_fee" json:"totalPresentFee"` // 总消费额 TotalFee float32 `db:"total_fee" json:"totalFee"` // 总充值额 TotalCharge float32 `db:"total_charge" json:"totalCharge"` // 总支付额 TotalPay float32 `db:"total_pay" json:"totalPay"` // 更新时间 UpdateTime int64 `db:"update_time" json:"updateTime"` }
账户值对象
type BalanceInfoValue ¶
type BalanceInfoValue struct { Id int `db:"id" auto:"yes" pk:"yes"` MemberId int `db:"member_id"` TradeNo string `db:"trade_no"` Kind int `db:"kind"` Type int `db:"type"` Title string `db:"title"` Amount float32 `db:"amount"` State int `db:"state"` CreateTime int64 `db:"create_time"` UpdateTime int64 `db:"update_time"` }
余额变动信息
type DeliverAddress ¶
type DeliverAddress struct { Id int `db:"id" pk:"yes" auto:"yes"` MemberId int `db:"member_id"` RealName string `db:"real_name"` Phone string `db:"phone"` Address string `db:"address"` IsDefault int `db:"is_default"` }
会员收货地址
type IAccount ¶
type IAccount interface { // 获取领域对象编号 GetDomainId() int // 获取账户值 GetValue() *AccountValue // 保存 Save() (int, error) // 根据编号获取余额变动信息 GetBalanceInfo(id int) *BalanceInfoValue // 根据号码获取余额变动信息 GetBalanceInfoByNo(no string) *BalanceInfoValue // 保存余额变动信息 SaveBalanceInfo(*BalanceInfoValue) (int, error) // 充值 // @title 充值标题说明 // @no 充值订单编号 // @amount 金额 Charge(chargeType int, title string, tradeNo string, amount float32) error // 订单抵扣消费 OrderDiscount(tradeNo string, amount float32) error // 退款 RequestBackBalance(backType int, title string, amount float32) error // 完成退款 FinishBackBalance(id int, tradeNo string) error // 请求提现 RequestApplyCash(applyType int, title string, amount float32) error // 确认提现 ConfirmApplyCash(id int, pass bool, remark string) error // 完成提现 FinishApplyCash(id int, tradeNo string) error }
type IBalanceInfo ¶
type IBalanceInfo interface { // 获取领域对象编号 GetDomainId() int // 获取值 GetValue() *BalanceInfoValue // 保存 Save() (int, error) }
账户余额变动信息
type IDeliver ¶
type IDeliver interface { GetDomainId() int GetValue() DeliverAddress SetValue(*DeliverAddress) error Save() (int, error) }
type IInvitationManager ¶
type IInvitationManager interface { // 判断是否由会员邀请 InvitationBy(memberId int) bool // 获取我邀请的会员 GetMyInvitationMembers() []*ValueMember // 获取我的邀请码 GetMyInvitationCode() string // 获取邀请会员下级邀请数量 GetSubInvitationNum() map[int]int // 获取邀请要的会员 GetInvitationMeMember() *ValueMember }
type IMember ¶
type IMember interface { // 获取聚合根编号 GetAggregateRootId() int // 获取值 GetValue() ValueMember // 邀请管理 Invitation() IInvitationManager // 设置值 SetValue(*ValueMember) error // 获取账户 GetAccount() IAccount // 锁定会员 Lock() error // 解锁会员 Unlock() error // 获取提现银行信息 GetBank() BankInfo // 保存提现银行信息 SaveBank(*BankInfo) error // 保存返现记录 SaveIncomeLog(*IncomeLog) error // 保存积分记录 SaveIntegralLog(*IntegralLog) error // 增加经验值 AddExp(exp int) error // 获取等级 GetLevel() *valueobject.MemberLevel // 增加积分 // todo:partnerId 不需要 AddIntegral(partnerId int, backType int, integral int, log string) error // 获取关联的会员 GetRelation() *MemberRelation // 更新会员绑定 SaveRelation(r *MemberRelation) error // 保存 Save() (int, error) // 修改密码,旧密码可为空 ModifyPassword(newPwd, oldPwd string) error // 修改交易密码,旧密码可为空 ModifyTradePassword(newPwd, oldPwd string) error // 用户是否已经存在 UsrIsExist() bool // 创建配送地址 CreateDeliver(*DeliverAddress) IDeliver // 获取配送地址 GetDeliverAddress() []IDeliver // 获取配送地址 GetDeliver(int) IDeliver // 删除配送地址 DeleteDeliver(int) error }
type IMemberRep ¶
type IMemberRep interface { // 根据用户名获取会员 GetMemberValueByUsr(usr string) *ValueMember // 根据手机号码获取会员 GetMemberValueByPhone(phone string) *ValueMember // 获取会员 GetMember(memberId int) IMember // 创建会员 CreateMember(*ValueMember) IMember // 保存 SaveMember(v *ValueMember) (int, error) // 获取会员最后更新时间 GetMemberLatestUpdateTime(int) int64 // 锁定会员 LockMember(id int, state int) error // 根据邀请码获取会员编号 GetMemberIdByInvitationCode(string) int // 获取会员编号 GetMemberIdByUser(string string) int // 用户名是否存在 CheckUsrExist(string) bool // 保存绑定 SaveRelation(*MemberRelation) error // 获取等级 GetLevel(partnerId, levelValue int) *valueobject.MemberLevel // 获取下一个等级 GetNextLevel(partnerId, levelVal int) *valueobject.MemberLevel // 获取会员等级 GetMemberLevels(partnerId int) []*valueobject.MemberLevel // 删除会员等级 DeleteMemberLevel(partnerId, id int) error // 保存等级 SaveMemberLevel(partnerId int, v *valueobject.MemberLevel) (int, error) // 获取账户 GetAccount(memberId int) *AccountValue // 保存账户,传入会员编号 SaveAccount(*AccountValue) (int, error) // 获取银行信息 GetBankInfo(int) *BankInfo // 保存银行信息 SaveBankInfo(*BankInfo) error // 保存返现记录 SaveIncomeLog(*IncomeLog) error // 保存积分记录 SaveIntegralLog(*IntegralLog) error // 获取会员关联 GetRelation(memberId int) *MemberRelation // 获取经验值对应的等级 GetLevelValueByExp(partnerId int, exp int) int // 保存地址 SaveDeliver(*DeliverAddress) (int, error) // 获取全部配送地址 GetDeliverAddress(memberId int) []*DeliverAddress // 获取配送地址 GetSingleDeliverAddress(memberId, deliverId int) *DeliverAddress // 删除配送地址 DeleteDeliver(memberId, deliverId int) error // 邀请 GetMyInvitationMembers(memberId int) []*ValueMember // 获取下级会员数量 GetSubInvitationNum(memberIds string) map[int]int // 获取推荐我的人 GetInvitationMeMember(memberId int) *ValueMember // 根据编号获取余额变动信息 GetBalanceInfo(id int) *BalanceInfoValue // 根据号码获取余额变动信息 GetBalanceInfoByNo(tradeNo string) *BalanceInfoValue // 保存余额变动信息 SaveBalanceInfo(v *BalanceInfoValue) (int, error) }
type IntegralLog ¶
type MemberRelation ¶
type MemberRelation struct { MemberId int `db:"member_id" pk:"yes"` //会员卡号 CardId string `db:"card_id"` //推荐人(会员) RefereesId int `db:"invi_member_id"` //注册关联商家编号 RegisterPartnerId int `db:"reg_partner_id"` }
会员关联表
type ValueMember ¶
type ValueMember struct { Id int `db:"id" auto:"yes" pk:"yes"` Usr string `db:"usr"` Pwd string `db:"Pwd"` // 交易密码 TradePwd string `db:"trade_pwd"` // 姓名 Name string `db:"name"` // 经验值 Exp int `db:"exp"` // 等级 Level int `db:"level"` Sex int `db:"sex"` Avatar string `db:"avatar"` Birthday string `db:"birthday"` Phone string `db:"phone"` Address string `db:"address"` Qq string `db:"qq"` Email string `db:"email"` // 邀请码 InvitationCode string `db:"invitation_code"` RegFrom string `db:"reg_from"` RegIp string `db:"reg_ip"` State int `db:"state"` RegTime int64 `db:"reg_time"` LastLoginTime int64 `db:"last_login_time"` UpdateTime int64 `db:"update_time"` // 动态令牌,用于登陆或API调用 DynamicToken string `db:"-"` // 超时时间 TimeoutTime int64 `db:"-"` }
Click to show internal directories.
Click to hide internal directories.