feat: callback ticket features
This commit is contained in:
155
features/ue/mf_callback_ticket/controller.go
Normal file
155
features/ue/mf_callback_ticket/controller.go
Normal file
@@ -0,0 +1,155 @@
|
||||
package mf_callback_ticket
|
||||
|
||||
import (
|
||||
"strconv"
|
||||
|
||||
"be.ems/src/framework/i18n"
|
||||
"be.ems/src/framework/middleware"
|
||||
"be.ems/src/framework/utils/ctx"
|
||||
"be.ems/src/framework/vo/result"
|
||||
"github.com/gin-gonic/gin"
|
||||
)
|
||||
|
||||
// @Description Register Routes for mf calling
|
||||
func Register(r *gin.RouterGroup) {
|
||||
|
||||
mfCallingGroup := r.Group("/ticket")
|
||||
{
|
||||
var m *CallbackTicket
|
||||
mfCallingGroup.GET("/list",
|
||||
middleware.PreAuthorize(nil),
|
||||
m.List,
|
||||
)
|
||||
mfCallingGroup.PUT("/:ticketId",
|
||||
middleware.PreAuthorize(nil),
|
||||
m.Update,
|
||||
)
|
||||
mfCallingGroup.DELETE("/:ticketId",
|
||||
middleware.PreAuthorize(nil),
|
||||
m.Delete,
|
||||
)
|
||||
mfCallingGroup.GET("/:ticketId",
|
||||
middleware.PreAuthorize(nil),
|
||||
m.GetById,
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
func (m *CallbackTicket) List(c *gin.Context) {
|
||||
language := ctx.AcceptLanguage(c)
|
||||
neId := c.Query("neId")
|
||||
if neId == "" {
|
||||
c.JSON(400, result.CodeMsg(400, i18n.TKey(language, "app.common.err400")))
|
||||
return
|
||||
}
|
||||
var query CallbackTicketQuery
|
||||
if err := c.ShouldBindQuery(&query); err != nil {
|
||||
c.JSON(400, result.CodeMsg(400, i18n.TKey(language, "app.common.err400")))
|
||||
return
|
||||
}
|
||||
|
||||
service := NewCallbackTicketService()
|
||||
data, total, err := service.SelectCallbackTicket(query)
|
||||
if err != nil {
|
||||
c.JSON(500, result.ErrMsg(err.Error()))
|
||||
return
|
||||
}
|
||||
|
||||
c.JSON(200, result.Ok(gin.H{
|
||||
"total": total,
|
||||
"data": data,
|
||||
}))
|
||||
}
|
||||
|
||||
// Update 更新回调工单
|
||||
func (m *CallbackTicket) Update(c *gin.Context) {
|
||||
language := ctx.AcceptLanguage(c)
|
||||
|
||||
// 获取路径参数
|
||||
ticketId := c.Param("ticketId")
|
||||
|
||||
// 绑定请求体
|
||||
var ticket CallbackTicket
|
||||
if err := c.ShouldBindJSON(&ticket); err != nil {
|
||||
c.JSON(400, result.CodeMsg(400, i18n.TKey(language, "app.common.err400")))
|
||||
return
|
||||
}
|
||||
|
||||
// 检查路径ID和请求体ID是否一致
|
||||
if ticketId != "" {
|
||||
id, err := strconv.ParseInt(ticketId, 10, 64)
|
||||
if err != nil {
|
||||
c.JSON(400, result.CodeMsg(400, i18n.TKey(language, "app.common.err400")))
|
||||
return
|
||||
}
|
||||
ticket.TicketId = id
|
||||
}
|
||||
|
||||
service := NewCallbackTicketService()
|
||||
if err := service.UpdateCallbackTicket(ticket); err != nil {
|
||||
c.JSON(500, result.ErrMsg(err.Error()))
|
||||
return
|
||||
}
|
||||
|
||||
c.JSON(200, result.Ok(nil))
|
||||
}
|
||||
|
||||
// Delete 删除回调工单
|
||||
func (m *CallbackTicket) Delete(c *gin.Context) {
|
||||
language := ctx.AcceptLanguage(c)
|
||||
|
||||
// 获取路径参数
|
||||
ticketId := c.Param("ticketId")
|
||||
if ticketId == "" {
|
||||
c.JSON(400, result.CodeMsg(400, i18n.TKey(language, "app.common.err400")))
|
||||
return
|
||||
}
|
||||
|
||||
id, err := strconv.ParseInt(ticketId, 10, 64)
|
||||
if err != nil {
|
||||
c.JSON(400, result.CodeMsg(400, i18n.TKey(language, "app.common.err400")))
|
||||
return
|
||||
}
|
||||
|
||||
service := NewCallbackTicketService()
|
||||
if err := service.DeleteCallbackTicket(id); err != nil {
|
||||
c.JSON(500, result.ErrMsg(err.Error()))
|
||||
return
|
||||
}
|
||||
|
||||
c.JSON(200, result.Ok(nil))
|
||||
}
|
||||
|
||||
// GetById 根据ID获取回调工单
|
||||
func (m *CallbackTicket) GetById(c *gin.Context) {
|
||||
language := ctx.AcceptLanguage(c)
|
||||
|
||||
// 获取路径参数
|
||||
ticketId := c.Param("ticketId")
|
||||
if ticketId == "" {
|
||||
c.JSON(400, result.CodeMsg(400, i18n.TKey(language, "app.common.err400")))
|
||||
return
|
||||
}
|
||||
|
||||
id, err := strconv.ParseInt(ticketId, 10, 64)
|
||||
if err != nil {
|
||||
c.JSON(400, result.CodeMsg(400, i18n.TKey(language, "app.common.err400")))
|
||||
return
|
||||
}
|
||||
|
||||
service := NewCallbackTicketService()
|
||||
ticket, err := service.SelectCallbackTicketById(id)
|
||||
if err != nil {
|
||||
c.JSON(500, result.ErrMsg(err.Error()))
|
||||
return
|
||||
}
|
||||
|
||||
if ticket == nil {
|
||||
c.JSON(404, result.CodeMsg(404, i18n.TKey(language, "app.common.err404")))
|
||||
return
|
||||
}
|
||||
|
||||
c.JSON(200, result.Ok(gin.H{
|
||||
"ticket": ticket,
|
||||
}))
|
||||
}
|
||||
Reference in New Issue
Block a user