package payment import ( "git.apinb.com/bsm-sdk/core/errcode" "git.apinb.com/bsm-sdk/core/infra" "git.apinb.com/heqiapp/platforms/backend/api/internal/logic/common" paylogic "git.apinb.com/heqiapp/platforms/backend/api/internal/logic/payment" "git.apinb.com/heqiapp/platforms/backend/api/internal/models" "github.com/gin-gonic/gin" ) func ListRefund(ctx *gin.Context) { common.ListResource(ctx, &models.PaymentRefund{}) } func GetRefund(ctx *gin.Context) { common.GetResource(ctx, &models.PaymentRefund{}) } func review(approve bool) gin.HandlerFunc { return func(ctx *gin.Context) { var request struct { Remark string `json:"remark"` } if ctx.ShouldBindJSON(&request) != nil { infra.Response.Error(ctx, errcode.ErrInvalidArgument) return } operator, _ := common.PlatformOperator(ctx) if err := paylogic.ReviewRefund(ctx.Param("identity"), operator, request.Remark, approve); err != nil { infra.Response.Error(ctx, err) return } infra.Response.Success(ctx, gin.H{"reviewed": true}) } } var ApproveRefund = review(true) var RejectRefund = review(false)