|
@@ -34,29 +34,31 @@ func AddUpdateRecord(context *admin.Context) (interface{}, error) {
|
|
|
if err := json.Unmarshal([]byte(qutil.ObjToString((*orderData)["filter"])), &filterMap); err != nil {
|
|
|
return nil, errors.New("修正失败")
|
|
|
}
|
|
|
+ updateData, payMoney := map[string]interface{}{}, 0
|
|
|
if param.PayMoney != 0 {
|
|
|
if strings.Contains(qutil.ObjToString((*orderData)["product_type"]), "大会员") {
|
|
|
- filterMap["payMoneyUpdate"] = param.PayMoney - qutil.IntAll(filterMap["bigPayMoney"])
|
|
|
+ filterMap["bigPayMoneyUpdate"] = param.PayMoney
|
|
|
+ payMoney = param.PayMoney - qutil.IntAll(filterMap["bigPayMoney"])
|
|
|
+ updateData["pay_money"] = param.PayMoney + param.BigSubMoney + param.SupplyMoney
|
|
|
} else {
|
|
|
- filterMap["payMoneyUpdate"] = param.PayMoney - qutil.IntAll((*orderData)["pay_money"])
|
|
|
+ filterMap["payMoneyUpdate"] = param.PayMoney
|
|
|
+ updateData["pay_money"] = param.PayMoney
|
|
|
+ payMoney = param.PayMoney - qutil.IntAll((*orderData)["pay_money"])
|
|
|
}
|
|
|
}
|
|
|
if param.BigSubMoney != 0 {
|
|
|
- filterMap["subPayMoneyUpdate"] = param.BigSubMoney - qutil.IntAll(filterMap["subPayMoney"])
|
|
|
+ filterMap["subPayMoneyUpdate"] = param.BigSubMoney
|
|
|
}
|
|
|
if param.SupplyMoney != 0 {
|
|
|
- filterMap["supplyPayMoneyUpdate"] = param.SupplyMoney - qutil.IntAll(filterMap["supplyPayMoney"])
|
|
|
- }
|
|
|
- updateData := map[string]interface{}{
|
|
|
- "pay_money": param.PayMoney + param.BigSubMoney + param.SupplyMoney,
|
|
|
+ filterMap["supplyPayMoneyUpdate"] = param.SupplyMoney
|
|
|
}
|
|
|
if param.OrderMoney != 0 {
|
|
|
updateData["order_money"] = param.OrderMoney
|
|
|
- filterMap["orderMoneyUpdate"] = param.OrderMoney - qutil.IntAll((*orderData)["order_money"])
|
|
|
+ filterMap["orderMoneyUpdate"] = param.OrderMoney
|
|
|
}
|
|
|
if param.Commission != 0 {
|
|
|
updateData["commission"] = param.Commission
|
|
|
- filterMap["commissionUpdate"] = param.Commission - qutil.IntAll((*orderData)["commission"])
|
|
|
+ filterMap["commissionUpdate"] = param.Commission
|
|
|
}
|
|
|
if param.ProceduresMoney != 0 {
|
|
|
updateData["procedures_money"] = param.ProceduresMoney
|
|
@@ -64,17 +66,32 @@ func AddUpdateRecord(context *admin.Context) (interface{}, error) {
|
|
|
}
|
|
|
filterByte, _ := json.Marshal(filterMap)
|
|
|
updateData["filter"] = string(filterByte)
|
|
|
+ returnData := util.JysqlDB.SelectBySql(`select IFNULL(sum(return_money),0) as return_money from return_money_record where order_code=? and state=1`, param.OrderCode)
|
|
|
+ refundData := util.JysqlDB.SelectBySql(`select IFNULL(sum(refund_money),0) as refund_money from refund_record where order_code=?`, param.OrderCode)
|
|
|
+ return_money := qutil.IntAll((*returnData)[0]["return_money"])
|
|
|
+ refund_money := qutil.IntAll((*refundData)[0]["refund_money"])
|
|
|
+ if param.PayMoney+param.BigSubMoney+param.SupplyMoney-param.Commission-param.ProceduresMoney == return_money-refund_money {
|
|
|
+ updateData["return_status"] = 1
|
|
|
+ } else if param.PayMoney+param.BigSubMoney+param.SupplyMoney-param.Commission-param.ProceduresMoney > return_money-refund_money && return_money-refund_money > 0 {
|
|
|
+ updateData["return_status"] = 2
|
|
|
+ }
|
|
|
+ if return_money == refund_money {
|
|
|
+ updateData["refund_status"] = 1
|
|
|
+ } else if return_money > refund_money && refund_money > 0 {
|
|
|
+ updateData["refund_status"] = 2
|
|
|
+ }
|
|
|
util.JysqlDB.Update("dataexport_order", map[string]interface{}{"order_code": param.OrderCode}, updateData)
|
|
|
util.JysqlDB.Insert("moneyCorrection", map[string]interface{}{
|
|
|
"orderCode": param.OrderCode,
|
|
|
- "orderMoney": param.OrderMoney,
|
|
|
- "payMoney": param.PayMoney,
|
|
|
- "bigSubMoney": param.BigSubMoney,
|
|
|
- "supplyMoney": param.SupplyMoney,
|
|
|
- "commission": param.Commission,
|
|
|
- "proceduresMoney": param.ProceduresMoney,
|
|
|
+ "orderMoney": param.OrderMoney - qutil.IntAll((*orderData)["order_money"]),
|
|
|
+ "payMoney": payMoney,
|
|
|
+ "bigSubMoney": param.BigSubMoney - qutil.IntAll(filterMap["subPayMoney"]),
|
|
|
+ "supplyMoney": param.SupplyMoney - qutil.IntAll(filterMap["supplyPayMoney"]),
|
|
|
+ "commission": param.Commission - qutil.IntAll((*orderData)["commission"]),
|
|
|
+ "proceduresMoney": param.ProceduresMoney - qutil.IntAll((*orderData)["procedures_money"]),
|
|
|
"correctionReason": param.CorrectionReason,
|
|
|
"createTime": qutil.NowFormat(qutil.Date_Full_Layout),
|
|
|
+ "createPerson": context.User.Username,
|
|
|
})
|
|
|
return map[string]interface{}{"status": 1}, nil
|
|
|
}
|