package v1
|
|
import (
|
"aps_crm/model"
|
"aps_crm/model/request"
|
"aps_crm/model/response"
|
"aps_crm/pkg/contextx"
|
"aps_crm/pkg/ecode"
|
"github.com/gin-gonic/gin"
|
"strconv"
|
)
|
|
type CustomerServiceSheetApi struct{}
|
|
// Add
|
//
|
// @Tags CustomerServiceSheet
|
// @Summary 添加客服单
|
// @Produce application/json
|
// @Param object body request.AddCustomerServiceSheet true "查询参数"
|
// @Success 200 {object} contextx.Response{}
|
// @Router /api/customerServiceSheet/add [post]
|
func (s *CustomerServiceSheetApi) Add(c *gin.Context) {
|
var params request.AddCustomerServiceSheet
|
ctx, ok := contextx.NewContext(c, ¶ms)
|
if !ok {
|
return
|
}
|
|
errCode, customerServiceSheet := checkCustomerServiceSheetParams(params.CustomerServiceSheet)
|
if errCode != ecode.OK {
|
ctx.Fail(errCode)
|
return
|
}
|
|
errCode = customerServiceSheetService.AddCustomerServiceSheet(&customerServiceSheet)
|
if errCode != ecode.OK {
|
ctx.Fail(errCode)
|
return
|
}
|
|
ctx.Ok()
|
}
|
|
// Delete
|
//
|
// @Tags CustomerServiceSheet
|
// @Summary 删除客服单
|
// @Produce application/json
|
// @Param id path int true "查询参数"
|
// @Success 200 {object} contextx.Response{}
|
// @Router /api/customerServiceSheet/delete/{id} [delete]
|
func (s *CustomerServiceSheetApi) Delete(c *gin.Context) {
|
ctx, ok := contextx.NewContext(c, nil)
|
if !ok {
|
return
|
}
|
|
id, _ := strconv.Atoi(c.Param("id"))
|
errCode := customerServiceSheetService.DeleteCustomerServiceSheet(id)
|
if errCode != ecode.OK {
|
ctx.Fail(errCode)
|
return
|
}
|
|
ctx.Ok()
|
}
|
|
// Update
|
//
|
// @Tags CustomerServiceSheet
|
// @Summary 更新客服单
|
// @Produce application/json
|
// @Param object body request.UpdateCustomerServiceSheet true "查询参数"
|
// @Success 200 {object} contextx.Response{}
|
// @Router /api/customerServiceSheet/update/{id} [put]
|
func (s *CustomerServiceSheetApi) Update(c *gin.Context) {
|
var params request.UpdateCustomerServiceSheet
|
ctx, ok := contextx.NewContext(c, ¶ms)
|
if !ok {
|
return
|
}
|
|
errCode, customerServiceSheet := checkCustomerServiceSheetParams(params.CustomerServiceSheet)
|
if errCode != ecode.OK {
|
ctx.Fail(errCode)
|
return
|
}
|
|
errCode = customerServiceSheetService.UpdateCustomerServiceSheet(&customerServiceSheet)
|
if errCode != ecode.OK {
|
ctx.Fail(errCode)
|
return
|
}
|
|
ctx.Ok()
|
}
|
|
// List
|
//
|
// @Tags CustomerServiceSheet
|
// @Summary 获取客服单列表
|
// @Produce application/json
|
// @Success 200 {object} contextx.Response{}
|
// @Router /api/customerServiceSheet/list [get]
|
func (s *CustomerServiceSheetApi) List(c *gin.Context) {
|
ctx, ok := contextx.NewContext(c, nil)
|
if !ok {
|
return
|
}
|
|
customerServiceSheetList, errCode := customerServiceSheetService.GetCustomerServiceSheetList()
|
if errCode != ecode.OK {
|
ctx.Fail(errCode)
|
return
|
}
|
|
ctx.OkWithDetailed(response.CustomerServiceSheetResponse{
|
List: customerServiceSheetList,
|
})
|
}
|
|
// checkCustomerServiceSheetParams
|
func checkCustomerServiceSheetParams(customerServiceSheet request.CustomerServiceSheet) (errCode int, newCustomerServiceSheet model.CustomerServiceSheet) {
|
//if customerServiceSheet.Number == "" {
|
// return ecode.InvalidParams, model.CustomerServiceSheet{}
|
//}
|
|
//if customerServiceSheet.MemberId == 0 {
|
// return ecode.InvalidParams, model.CustomerServiceSheet{}
|
//}
|
|
newCustomerServiceSheet = model.CustomerServiceSheet{
|
Number: customerServiceSheet.Number,
|
MemberId: customerServiceSheet.MemberId,
|
ServiceMode: customerServiceSheet.ServiceMode,
|
Priority: customerServiceSheet.Priority,
|
HandleStatus: customerServiceSheet.HandleStatus,
|
}
|
return ecode.OK, newCustomerServiceSheet
|
}
|