156 lines
3.4 KiB
Go
156 lines
3.4 KiB
Go
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,
|
|
}))
|
|
}
|