后台用户字段验证,新增获取问题价格接口
This commit is contained in:
parent
f1b66e7d14
commit
3eaeddfd38
@ -11,6 +11,7 @@ import (
|
||||
"hepa-calc-admin-api/global"
|
||||
"hepa-calc-admin-api/utils"
|
||||
"strconv"
|
||||
"time"
|
||||
)
|
||||
|
||||
type Question struct{}
|
||||
@ -549,3 +550,49 @@ func (b *Question) PutQuestionHideStatus(c *gin.Context) {
|
||||
tx.Commit()
|
||||
responses.Ok(c)
|
||||
}
|
||||
|
||||
// GetQuestionPrice 获取问题价格
|
||||
func (b *Question) GetQuestionPrice(c *gin.Context) {
|
||||
// 获取问题数据
|
||||
questionDao := dao.QuestionDao{}
|
||||
maps := make(map[string]interface{})
|
||||
maps["question_status"] = 1
|
||||
questions, err := questionDao.GetQuestionList(maps)
|
||||
if err != nil {
|
||||
responses.FailWithMessage("分类异常", c)
|
||||
return
|
||||
}
|
||||
|
||||
// 计算总价
|
||||
var price float64
|
||||
var discountPrice *float64
|
||||
|
||||
for _, question := range questions {
|
||||
// 总价
|
||||
price = price + question.Price
|
||||
|
||||
// 处理折扣价格
|
||||
if question.DiscountPrice != nil {
|
||||
if question.DiscountEndTime != nil {
|
||||
discountEndTime := time.Time(*question.DiscountEndTime)
|
||||
diffTime := time.Now().Sub(discountEndTime)
|
||||
if diffTime > 0 {
|
||||
continue
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if discountPrice == nil {
|
||||
discountPrice = question.DiscountPrice
|
||||
} else {
|
||||
d := *discountPrice + *question.DiscountPrice
|
||||
discountPrice = &d
|
||||
}
|
||||
}
|
||||
|
||||
var g dto.QuestionPriceDto
|
||||
g.Price = price
|
||||
g.DiscountPrice = discountPrice
|
||||
|
||||
responses.OkWithData(g, c)
|
||||
}
|
||||
|
||||
@ -27,6 +27,12 @@ type QuestionDto struct {
|
||||
BaseClass []*BaseClassDto `json:"base_class"` // 关联分类
|
||||
}
|
||||
|
||||
// QuestionPriceDto 问题价格
|
||||
type QuestionPriceDto struct {
|
||||
Price float64 `json:"price"` // 价格(原价)
|
||||
DiscountPrice *float64 `json:"discount_price"` // 优惠价格
|
||||
}
|
||||
|
||||
// GetQuestionDto 详情-问题
|
||||
func GetQuestionDto(m *model.Question) *QuestionDto {
|
||||
return &QuestionDto{
|
||||
|
||||
@ -25,14 +25,14 @@ type GetAdminUserPage struct {
|
||||
|
||||
// AddAdminUser 新增
|
||||
type AddAdminUser struct {
|
||||
Access string `json:"access" form:"access" label:"账号"`
|
||||
Password string `json:"password" form:"password" label:"密码"`
|
||||
NickName string `json:"nick_name" form:"nick_name" label:"昵称"`
|
||||
IsAdmin int `json:"is_admin" form:"is_admin" label:"是否管理员"` // 是否管理员(0:否 1:是)
|
||||
Status *int `json:"status" form:"status" label:"状态"` // 状态(1:正常 2:审核中 3:审核失败)
|
||||
IsDeleted *int `json:"is_deleted" form:"is_deleted" label:"是否被删除"` // 是否被删除(0:否 1:是)
|
||||
IsDisabled *int `json:"is_disabled" form:"is_disabled" label:"是否被禁用"` // 是否被禁用(0:否 1:是)
|
||||
Phone string `json:"phone" form:"phone" label:"手机号"`
|
||||
Access string `json:"access" form:"access" label:"账号" validate:"required"`
|
||||
Password string `json:"password" form:"password" label:"密码" validate:"required"`
|
||||
NickName string `json:"nick_name" form:"nick_name" label:"昵称" validate:"required"`
|
||||
IsAdmin int `json:"is_admin" form:"is_admin" label:"是否管理员" validate:"omitempty,oneof=0 1"` // 是否管理员(0:否 1:是)
|
||||
Status *int `json:"status" form:"status" label:"状态" validate:"required,oneof=1 2 3"` // 状态(1:正常 2:审核中 3:审核失败)
|
||||
IsDeleted *int `json:"is_deleted" form:"is_deleted" label:"是否被删除" validate:"omitempty,oneof=0 1"` // 是否被删除(0:否 1:是)
|
||||
IsDisabled *int `json:"is_disabled" form:"is_disabled" label:"是否被禁用" validate:"omitempty,oneof=0 1"` // 是否被禁用(0:否 1:是)
|
||||
Phone string `json:"phone" form:"phone" label:"手机号" validate:"required"`
|
||||
Avatar string `json:"avatar" form:"avatar" label:"头像"`
|
||||
Sex int `json:"sex" form:"sex" label:"性别"`
|
||||
Email string `json:"email" form:"email" label:"邮箱"`
|
||||
@ -41,13 +41,13 @@ type AddAdminUser struct {
|
||||
// PutAdminUser 修改
|
||||
type PutAdminUser struct {
|
||||
Access string `json:"access" form:"access" validate:"required" label:"账号"`
|
||||
IsDeleted int `json:"is_deleted" form:"is_deleted" validate:"oneof=0 1" label:"删除状态"` // 是否被删除(0:否 1:是)
|
||||
IsDisabled int `json:"is_disabled" form:"is_disabled" validate:"oneof=0 1" label:"禁用状态"` // 是否被禁用(0:否 1:是)
|
||||
IsDeleted int `json:"is_deleted" form:"is_deleted" validate:"omitempty,oneof=0 1" label:"删除状态"` // 是否被删除(0:否 1:是)
|
||||
IsDisabled int `json:"is_disabled" form:"is_disabled" validate:"omitempty,oneof=0 1" label:"禁用状态"` // 是否被禁用(0:否 1:是)
|
||||
NickName string `json:"nick_name" form:"nick_name" validate:"required" label:"昵称"`
|
||||
IsAdmin int `json:"is_admin" form:"is_admin" label:"是否管理员"` // 是否管理员(0:否 1:是)
|
||||
IsAdmin int `json:"is_admin" form:"is_admin" label:"是否管理员" validate:"omitempty,oneof=0 1"` // 是否管理员(0:否 1:是)
|
||||
Phone string `json:"phone" form:"phone" validate:"required" label:"手机号"`
|
||||
Avatar string `json:"avatar" form:"avatar" label:"头像"`
|
||||
Sex int `json:"sex" form:"sex" validate:"required,oneof=1 2" label:"性别"` // (1:男 2:女)
|
||||
Sex int `json:"sex" form:"sex" validate:"omitempty,oneof=1 2" label:"性别"` // (1:男 2:女)
|
||||
Email string `json:"email" form:"email" label:"邮箱"`
|
||||
}
|
||||
|
||||
|
||||
@ -284,6 +284,9 @@ func privateRouter(r *gin.Engine, api controller.Api) {
|
||||
|
||||
// 操作问题隐藏状态
|
||||
questionGroup.PUT("/hide/:question_id", api.Question.PutQuestionHideStatus)
|
||||
|
||||
// 获取问题价格
|
||||
questionGroup.GET("/price", api.Question.GetQuestionPrice)
|
||||
}
|
||||
|
||||
// 配置
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user