You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
69 lines
2.7 KiB
69 lines
2.7 KiB
package user
|
|
|
|
import (
|
|
"github.com/jinzhu/gorm"
|
|
"github.com/shopspring/decimal"
|
|
"recook/internal/v2/lib/db"
|
|
)
|
|
|
|
type RecookUserDayExpectIncomeModel struct {
|
|
db.BaseModel
|
|
Id uint `gorm:"column:id;primary_key" json:"id"`
|
|
UserId uint `json:"userId"`
|
|
Day int `json:"day"`
|
|
Amount decimal.Decimal `json:"amount"`
|
|
PurchaseAmount decimal.Decimal `json:"purchaseAmount"`
|
|
PurchaseCount int `json:"purchaseCount"`
|
|
PurchaseSalesVolume decimal.Decimal `json:"purchaseSalesVolume"`
|
|
GuideAmount decimal.Decimal `json:"guideAmount"`
|
|
GuideCount int `json:"guideCount"`
|
|
GuideSalesVolume decimal.Decimal `json:"guideSalesVolume"`
|
|
NotRecvVolume decimal.Decimal `json:"not_recv_volume"`
|
|
NotRecvAmount decimal.Decimal `json:"not_recv_amount"`
|
|
NotRecvCount int `json:"not_recv_count"`
|
|
NotGuideVolume decimal.Decimal `json:"not_guide_volume"`
|
|
NotGuideAmount decimal.Decimal `json:"not_guide_amount"`
|
|
NotGuideCount int `json:"not_guide_count"`
|
|
}
|
|
|
|
// TableName sets the insert table name for this struct type
|
|
func (r *RecookUserDayExpectIncomeModel) TableName() string {
|
|
return "recook_user_day_expect_income"
|
|
}
|
|
|
|
// @Style 查询单条信息
|
|
func (r *RecookUserDayExpectIncomeModel) FindByUserIdAndDate(userId uint, date int) (info RecookUserDayExpectIncomeModel) {
|
|
r.GetDb().First(&info, "user_id = ? and day = ?", userId, date)
|
|
return
|
|
}
|
|
|
|
// @Style 查询月数据
|
|
func (r *RecookUserDayExpectIncomeModel) FindByUserIdInMonth(userId uint, month int) (result []RecookUserDayExpectIncomeModel) {
|
|
r.GetDb().Model(&RecookUserDayExpectIncomeModel{}).Find(&result, "user_id = ? and day between ? and ?", userId, month*100, month*100+31)
|
|
return
|
|
}
|
|
|
|
// @Style 添加
|
|
func (r *RecookUserDayExpectIncomeModel) Create(data *RecookUserDayExpectIncomeModel) {
|
|
r.GetDb().Create(data)
|
|
}
|
|
|
|
// @Style 添加
|
|
func (r *RecookUserDayExpectIncomeModel) CreateSubQuery(fields string, sql *gorm.SqlExpr) error {
|
|
return r.GetDb().Exec("insert into recook_user_day_expect_income("+fields+") ?", sql).Error
|
|
}
|
|
|
|
// @Style 编辑
|
|
func (r *RecookUserDayExpectIncomeModel) Updates(value interface{}, query interface{}, args ...interface{}) error {
|
|
return r.GetDb().Model(&RecookUserDayExpectIncomeModel{}).Where(query, args...).Updates(value).Error
|
|
}
|
|
|
|
// @Style 统计团队总销售额
|
|
func (r *RecookUserDayExpectIncomeModel) GetTeamAmoutSum(query interface{}, args ...interface{}) (result RecookUserDayExpectIncomeModel) {
|
|
r.GetDb().Model(RecookUserDayExpectIncomeModel{}).
|
|
Select("sum(amount) as amount").
|
|
Where(query, args...).
|
|
First(&result)
|
|
return
|
|
}
|