fix
This commit is contained in:
parent
4670c706fc
commit
b32c731969
Binary file not shown.
|
@ -230,6 +230,33 @@ func Cancel(c *gin.Context) {
|
||||||
common.Success(c, response)
|
common.Success(c, response)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func DangerousConfirm(c *gin.Context) {
|
||||||
|
request := new(orderEnt.CancelReq)
|
||||||
|
err := common.GenRequest(c, request)
|
||||||
|
if err != nil {
|
||||||
|
common.Error(c, errorcode.ParamError)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
affected, err := orderServ.DangerousConfirm(request.Id)
|
||||||
|
if err != nil || affected == 0 {
|
||||||
|
common.Error(c, 400, err.Error())
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
err = transServ.AddCallback(strconv.Itoa(int(request.Id)))
|
||||||
|
if err != nil {
|
||||||
|
common.Error(c, 400, "添加回调失败")
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
response := &orderEnt.CancelResp{
|
||||||
|
Id: request.Id,
|
||||||
|
}
|
||||||
|
|
||||||
|
common.Success(c, response)
|
||||||
|
}
|
||||||
|
|
||||||
func DangerousCancel(c *gin.Context) {
|
func DangerousCancel(c *gin.Context) {
|
||||||
request := new(orderEnt.CancelReq)
|
request := new(orderEnt.CancelReq)
|
||||||
err := common.GenRequest(c, request)
|
err := common.GenRequest(c, request)
|
||||||
|
|
|
@ -77,6 +77,7 @@ func RegisterRoute(router *gin.Engine) {
|
||||||
orders.POST("/search", ordersCon.Search)
|
orders.POST("/search", ordersCon.Search)
|
||||||
orders.POST("/cancel", ordersCon.Cancel)
|
orders.POST("/cancel", ordersCon.Cancel)
|
||||||
orders.POST("/dangerous_cancel", ordersCon.DangerousCancel)
|
orders.POST("/dangerous_cancel", ordersCon.DangerousCancel)
|
||||||
|
orders.POST("/dangerous_confirm", ordersCon.DangerousConfirm)
|
||||||
// orders.POST("/create", ordersCon.Create)
|
// orders.POST("/create", ordersCon.Create)
|
||||||
// orders.POST("/update", ordersCon.Update)
|
// orders.POST("/update", ordersCon.Update)
|
||||||
// orders.POST("/delete", ordersCon.Delete)
|
// orders.POST("/delete", ordersCon.Delete)
|
||||||
|
|
|
@ -337,6 +337,41 @@ func (m *ordersModel) CancelOrder(orderId int64) (affected int64, err error) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (m *ordersModel) DangerousConfirm(orderId int64) (affected int64, err error) {
|
||||||
|
orders := &Orders{}
|
||||||
|
|
||||||
|
session := m.GetDb().NewSession()
|
||||||
|
defer session.Close()
|
||||||
|
// add Begin() before any action
|
||||||
|
if err = session.Begin(); err != nil {
|
||||||
|
orders = nil
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
orders = &Orders{}
|
||||||
|
has, err := session.ID(orderId).Get(orders)
|
||||||
|
if err != nil || !has {
|
||||||
|
orders = nil
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
orders.Status = 1
|
||||||
|
orders.TransferStatus = 1 // 1.成功 2.充值中 3. 等待充值 4.充值失败 5.异常需要人工处理 6.取消订单 7.订单入队
|
||||||
|
orders.FailReason = "风险确认"
|
||||||
|
affected, err = session.ForUpdate().ID(orders.Id).Where("transfer_status not in (1,4,6)").Update(orders)
|
||||||
|
if err != nil || affected == 0 {
|
||||||
|
err = errors.New("订单正在充值或者已经完成")
|
||||||
|
orders = nil
|
||||||
|
return
|
||||||
|
}
|
||||||
|
err = session.Commit()
|
||||||
|
if err != nil {
|
||||||
|
session.Rollback()
|
||||||
|
return
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (m *ordersModel) DangerousCancel(orderId int64) (affected int64, err error) {
|
func (m *ordersModel) DangerousCancel(orderId int64) (affected int64, err error) {
|
||||||
orders := &Orders{}
|
orders := &Orders{}
|
||||||
|
|
||||||
|
@ -357,7 +392,7 @@ func (m *ordersModel) DangerousCancel(orderId int64) (affected int64, err error)
|
||||||
|
|
||||||
orders.Status = 5
|
orders.Status = 5
|
||||||
orders.TransferStatus = 6 // 1.成功 2.充值中 3. 等待充值 4.充值失败 5.异常需要人工处理 6.取消订单 7.订单入队
|
orders.TransferStatus = 6 // 1.成功 2.充值中 3. 等待充值 4.充值失败 5.异常需要人工处理 6.取消订单 7.订单入队
|
||||||
orders.FailReason = "订单取消"
|
orders.FailReason = "风险取消"
|
||||||
affected, err = session.ForUpdate().ID(orders.Id).Where("transfer_status not in (1,4,6)").Update(orders)
|
affected, err = session.ForUpdate().ID(orders.Id).Where("transfer_status not in (1,4,6)").Update(orders)
|
||||||
if err != nil || affected == 0 {
|
if err != nil || affected == 0 {
|
||||||
err = errors.New("订单正在充值或者已经完成")
|
err = errors.New("订单正在充值或者已经完成")
|
||||||
|
|
Binary file not shown.
|
@ -77,6 +77,11 @@ func Cancel(id int64) (affected int64, err error) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func DangerousConfirm(id int64) (affected int64, err error) {
|
||||||
|
affected, err = models.GetInstance().DangerousConfirm(id)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func DangerousCancel(id int64) (affected int64, err error) {
|
func DangerousCancel(id int64) (affected int64, err error) {
|
||||||
affected, err = models.GetInstance().DangerousCancel(id)
|
affected, err = models.GetInstance().DangerousCancel(id)
|
||||||
return
|
return
|
||||||
|
|
Loading…
Reference in New Issue