1
This commit is contained in:
parent
554e2a7b92
commit
8838b12415
@ -5,7 +5,10 @@ import (
|
|||||||
"strconv"
|
"strconv"
|
||||||
"vote-admin-api/api/dao"
|
"vote-admin-api/api/dao"
|
||||||
"vote-admin-api/api/dto"
|
"vote-admin-api/api/dto"
|
||||||
|
"vote-admin-api/api/requests"
|
||||||
"vote-admin-api/api/responses"
|
"vote-admin-api/api/responses"
|
||||||
|
"vote-admin-api/global"
|
||||||
|
"vote-admin-api/utils"
|
||||||
)
|
)
|
||||||
|
|
||||||
type System struct{}
|
type System struct{}
|
||||||
@ -38,3 +41,72 @@ func (r *System) GetSystemTime(c *gin.Context) {
|
|||||||
|
|
||||||
responses.OkWithData(g, c)
|
responses.OkWithData(g, c)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// PutSystemTime 修改投票时间
|
||||||
|
func (b *System) PutSystemTime(c *gin.Context) {
|
||||||
|
systemRequest := requests.SystemRequest{}
|
||||||
|
req := systemRequest.PutSystemTime
|
||||||
|
if err := c.ShouldBind(&req); err != nil {
|
||||||
|
responses.FailWithMessage(err.Error(), c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// 参数验证
|
||||||
|
if err := global.Validate.Struct(req); err != nil {
|
||||||
|
responses.FailWithMessage(utils.Translate(err), c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
id := c.Param("system_time_id")
|
||||||
|
if id == "" {
|
||||||
|
responses.FailWithMessage("缺少参数", c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// 将 id 转换为 int64 类型
|
||||||
|
systemTimeId, err := strconv.ParseInt(id, 10, 64)
|
||||||
|
if err != nil {
|
||||||
|
responses.Fail(c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取数据
|
||||||
|
systemTimeDao := dao.SystemTimeDao{}
|
||||||
|
systemTime, err := systemTimeDao.GetSystemTimeById(systemTimeId)
|
||||||
|
if err != nil {
|
||||||
|
responses.FailWithMessage("数据异常", c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改值
|
||||||
|
systemTimeData := make(map[string]interface{})
|
||||||
|
|
||||||
|
if req.StartTime != systemTime.StartTime {
|
||||||
|
systemTimeData["start_time"] = req.StartTime
|
||||||
|
}
|
||||||
|
|
||||||
|
if req.EndTime != systemTime.EndTime {
|
||||||
|
systemTimeData["end_time"] = req.EndTime
|
||||||
|
}
|
||||||
|
|
||||||
|
if len(systemTimeData) > 0 {
|
||||||
|
// 开始事务
|
||||||
|
tx := global.Db.Begin()
|
||||||
|
defer func() {
|
||||||
|
if r := recover(); r != nil {
|
||||||
|
tx.Rollback()
|
||||||
|
}
|
||||||
|
}()
|
||||||
|
|
||||||
|
err = systemTimeDao.EditSystemTimeById(tx, systemTimeId, systemTimeData)
|
||||||
|
if err != nil {
|
||||||
|
tx.Rollback()
|
||||||
|
responses.FailWithMessage("操作失败", c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
tx.Commit()
|
||||||
|
}
|
||||||
|
|
||||||
|
responses.Ok(c)
|
||||||
|
}
|
||||||
|
|||||||
@ -183,6 +183,7 @@ func (r *UserVoteDay) GetArticleVotePage(c *gin.Context) {
|
|||||||
response := &dto.UserVoteDto{
|
response := &dto.UserVoteDto{
|
||||||
Id: fmt.Sprintf("%d", v.ArticleId),
|
Id: fmt.Sprintf("%d", v.ArticleId),
|
||||||
AppIden: v.User.AppIden,
|
AppIden: v.User.AppIden,
|
||||||
|
OpenId: v.User.OpenId,
|
||||||
VotedAt: createdAt,
|
VotedAt: createdAt,
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -244,6 +245,7 @@ func (r *UserVoteDay) GetVideoVotePage(c *gin.Context) {
|
|||||||
response := &dto.UserVoteDto{
|
response := &dto.UserVoteDto{
|
||||||
Id: fmt.Sprintf("%d", v.VideoId),
|
Id: fmt.Sprintf("%d", v.VideoId),
|
||||||
AppIden: v.User.AppIden,
|
AppIden: v.User.AppIden,
|
||||||
|
OpenId: v.User.OpenId,
|
||||||
VotedAt: createdAt,
|
VotedAt: createdAt,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -21,6 +21,7 @@ type UserDto struct {
|
|||||||
type UserVoteDto struct {
|
type UserVoteDto struct {
|
||||||
Id string `json:"id"` // 图文/视频标识
|
Id string `json:"id"` // 图文/视频标识
|
||||||
AppIden string `json:"app_iden"` // app唯一标识
|
AppIden string `json:"app_iden"` // app唯一标识
|
||||||
|
OpenId string `json:"open_id"` // open_id
|
||||||
Title string `json:"title"` // 标题
|
Title string `json:"title"` // 标题
|
||||||
VotedAt string `json:"voted_at"` // 投票时间
|
VotedAt string `json:"voted_at"` // 投票时间
|
||||||
}
|
}
|
||||||
|
|||||||
13
api/requests/System.go
Normal file
13
api/requests/System.go
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
package requests
|
||||||
|
|
||||||
|
import "vote-admin-api/api/model"
|
||||||
|
|
||||||
|
type SystemRequest struct {
|
||||||
|
PutSystemTime // 修改投票时间
|
||||||
|
}
|
||||||
|
|
||||||
|
// PutSystemTime 修改投票时间
|
||||||
|
type PutSystemTime struct {
|
||||||
|
StartTime *model.LocalTime `json:"start_time" form:"start_time" label:"开始投票时间" validate:"required"`
|
||||||
|
EndTime *model.LocalTime `json:"end_time" form:"end_time" label:"结束投票时间" validate:"required"`
|
||||||
|
}
|
||||||
@ -150,7 +150,7 @@ func privateRouter(r *gin.Engine, api controller.Api) {
|
|||||||
agreementGroup := basicGroup.Group("/agreement")
|
agreementGroup := basicGroup.Group("/agreement")
|
||||||
{
|
{
|
||||||
// 获取协议列表-分页
|
// 获取协议列表-分页
|
||||||
agreementGroup.POST("/page", api.BaseAgreement.GetBaseAgreementPage)
|
agreementGroup.GET("/page", api.BaseAgreement.GetBaseAgreementPage)
|
||||||
|
|
||||||
// 获取协议详情
|
// 获取协议详情
|
||||||
agreementGroup.GET("/:agreement_id", api.BaseAgreement.GetBaseAgreement)
|
agreementGroup.GET("/:agreement_id", api.BaseAgreement.GetBaseAgreement)
|
||||||
@ -201,6 +201,9 @@ func privateRouter(r *gin.Engine, api controller.Api) {
|
|||||||
{
|
{
|
||||||
// 获取投票时间详情
|
// 获取投票时间详情
|
||||||
timeGroup.GET("/:system_time_id", api.System.GetSystemTime)
|
timeGroup.GET("/:system_time_id", api.System.GetSystemTime)
|
||||||
|
|
||||||
|
// 修改投票时间
|
||||||
|
timeGroup.PUT("/:system_time_id", api.System.PutSystemTime)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user