This commit is contained in:
邹宗楠
2025-08-06 18:12:20 +08:00
parent 22813b9b29
commit a1a74f9e93
4 changed files with 41 additions and 27 deletions

View File

@@ -124,7 +124,7 @@ func GetSeparateRecordsCallback(callback *lakala.SeparateResult) error {
separateRecord.Status = callback.Status separateRecord.Status = callback.Status
separateRecord.FinalStatus = callback.FinalStatus separateRecord.FinalStatus = callback.FinalStatus
separateRecord.UpdatedAt = time.Now() separateRecord.UpdatedAt = time.Now()
_, err = dao.UpdateEntity(db, separateRecord, "CmdType", "FinishDate", "TotalAmt", "Status1", "Status2", "Status3", "FinalStatus", "UpdatedAt") _, err = dao.UpdateEntity(db, separateRecord, "CmdType", "FinishDate", "Status", "FinalStatus", "UpdatedAt")
return err return err
} }

View File

@@ -12,6 +12,7 @@ import (
"git.rosy.net.cn/jx-callback/business/partner" "git.rosy.net.cn/jx-callback/business/partner"
"git.rosy.net.cn/jx-callback/globals" "git.rosy.net.cn/jx-callback/globals"
"git.rosy.net.cn/jx-callback/globals/api" "git.rosy.net.cn/jx-callback/globals/api"
"strings"
"time" "time"
) )
@@ -552,7 +553,7 @@ func Separate(ctx *jxcontext.Context, param *lakala.OrderSeparateReq, vendorOrde
separateObj.Status = resp.RespData.Status separateObj.Status = resp.RespData.Status
separateObj.Remark += `->分账` separateObj.Remark += `->分账`
separateObj.DetailData = string(recv) separateObj.DetailData = string(recv)
separateObj.CmdType = lakala.SeparateOrder separateObj.CmdType = lakala.SeparateType_SEPATRATE
t, err := time.Parse("20060102", param.LogDate) t, err := time.Parse("20060102", param.LogDate)
if err != nil { if err != nil {
t = time.Now() t = time.Now()
@@ -618,7 +619,7 @@ func SeparateCancel(merchantNo, separateNo string) (*lakala.SeparateCancelResp,
return nil, err return nil, err
} }
separateAmt.CmdType = lakala.SeparateCancel separateAmt.CmdType = lakala.SeparateType_CANCEL
separateAmt.Status = result.RespData.Status separateAmt.Status = result.RespData.Status
//separateAmt.SeparateNo = result.RespData.SeparateNo //separateAmt.SeparateNo = result.RespData.SeparateNo
separateAmt.Remark += "->分账撤销" separateAmt.Remark += "->分账撤销"
@@ -646,6 +647,19 @@ func SeparateFallBack(merchantNo, separateNo, reason string) (*lakala.SeparateFa
return nil, fmt.Errorf("数据异常[%s],未获取到分账详细", separateNo) return nil, fmt.Errorf("数据异常[%s],未获取到分账详细", separateNo)
} }
isBack := false
for _, v := range recv {
if strings.Contains(v.RecvNo, "SR") {
isBack = true
}
}
//先了解分账回退这个功能是怎么用的,多次跟咱们同步。分账回退这个接口,用的场景是订单发生退款时,
//把已经分给接收方SR开头的资金回退给商户用作资金平账的。因为退款是从商户收款账户资金里退的
//822开头的就是商家自己不需要回退
if !isBack {
return nil, nil
}
param := &lakala.SeparateFallReq{ param := &lakala.SeparateFallReq{
MerchantNo: merchantNo, MerchantNo: merchantNo,
OriginSeparateNo: separateNo, OriginSeparateNo: separateNo,
@@ -668,7 +682,7 @@ func SeparateFallBack(merchantNo, separateNo, reason string) (*lakala.SeparateFa
return nil, err return nil, err
} }
separateAmt.CmdType = lakala.SeparateFallBack separateAmt.CmdType = lakala.Separate_FALLBACK
separateAmt.Status = result.RespData.Status separateAmt.Status = result.RespData.Status
separateAmt.Remark += "->分账退回" separateAmt.Remark += "->分账退回"
dao.UpdateEntity(db, separateAmt, "CmdType", "Status", "Remark") dao.UpdateEntity(db, separateAmt, "CmdType", "Status", "Remark")

View File

@@ -45,6 +45,7 @@ func RefundBarCodeScannerOrderByLaKaLa(ctx *jxcontext.Context, vendorOrderId str
dao.Rollback(db, txDB) dao.Rollback(db, txDB)
return nil, err return nil, err
} }
afsOrder.SkuUserMoney = int64(refundMoney)
if err = dao.CreateEntity(db, afsOrder); err != nil { if err = dao.CreateEntity(db, afsOrder); err != nil {
dao.Rollback(db, txDB) dao.Rollback(db, txDB)

View File

@@ -1,11 +1,9 @@
package controllers package controllers
import ( import (
"encoding/json"
"git.rosy.net.cn/baseapi/platformapi/lakala" "git.rosy.net.cn/baseapi/platformapi/lakala"
"git.rosy.net.cn/baseapi/utils" "git.rosy.net.cn/baseapi/utils"
lakalaServer "git.rosy.net.cn/jx-callback/business/lakala" lakalaServer "git.rosy.net.cn/jx-callback/business/lakala"
"git.rosy.net.cn/jx-callback/business/partner/purchase/jx/localjx"
"github.com/astaxie/beego/server/web" "github.com/astaxie/beego/server/web"
) )
@@ -1046,24 +1044,25 @@ func (c *LaKaLaController) CloseOrderByMini() {
}) })
} }
// AggregateRefundOrder 聚合支付退款 //
// @Title 聚合支付退款 //// AggregateRefundOrder 聚合支付退款
// @Description 聚合支付退款 //// @Title 聚合支付退款
// @Param token header string true "认证token" //// @Description 聚合支付退款
// @Param vendorOrderID formData string true "订单ID" //// @Param token header string true "认证token"
// @Param skuIds formData string true "[key:value]退款商品 skuId:count,int" //// @Param vendorOrderID formData string true "订单ID"
// @Param Reason formData string false "退单原因" //// @Param skuIds formData string true "[key:value]退款商品 skuId:count,int"
// @Success 200 {object} controllers.CallResult //// @Param Reason formData string false "退单原因"
// @Failure 200 {object} controllers.CallResult //// @Success 200 {object} controllers.CallResult
// @router /AggregateRefundOrder [post] //// @Failure 200 {object} controllers.CallResult
func (c *LaKaLaController) AggregateRefundOrder() { //// @router /AggregateRefundOrder [post]
c.callAggregateRefundOrder(func(params *tLakalaAggregateRefundOrderParams) (retVal interface{}, errCode string, err error) { //func (c *LaKaLaController) AggregateRefundOrder() {
skuIds := make(map[int]int, 0) // c.callAggregateRefundOrder(func(params *tLakalaAggregateRefundOrderParams) (retVal interface{}, errCode string, err error) {
if err = json.Unmarshal([]byte(params.SkuIds), &skuIds); err != nil { // skuIds := make(map[int]int, 0)
return nil, "", err // if err = json.Unmarshal([]byte(params.SkuIds), &skuIds); err != nil {
} // return nil, "", err
// }
retVal, err = localjx.RefundBarCodeScannerOrderByLaKaLa(params.Ctx, params.VendorOrderID, skuIds, params.Reason, "aggregate") //
return // retVal, err = localjx.RefundBarCodeScannerOrderByLaKaLa(params.Ctx, params.VendorOrderID, skuIds, params.Reason, "aggregate")
}) // return
} // })
//}