差评退款
This commit is contained in:
@@ -752,7 +752,7 @@ func RefreshOrdersWithoutJxStoreID(ctx *jxcontext.Context, fromDate, toDate stri
|
|||||||
return hint, err
|
return hint, err
|
||||||
}
|
}
|
||||||
|
|
||||||
func GetOrdersSupplement(ctx *jxcontext.Context, storIDs, vendorIDs []int, vendorOrderID, fromTime, toTime string, status, stype, IsReverse, offset, pageSize int) (pageInfo *model.PagedInfo, err error) {
|
func GetOrdersSupplement(ctx *jxcontext.Context, storIDs, vendorIDs, statuss []int, vendorOrderID, fromTime, toTime string, stype, IsReverse, offset, pageSize int) (pageInfo *model.PagedInfo, err error) {
|
||||||
var (
|
var (
|
||||||
db = dao.GetDB()
|
db = dao.GetDB()
|
||||||
fromTimeP time.Time
|
fromTimeP time.Time
|
||||||
@@ -767,7 +767,7 @@ func GetOrdersSupplement(ctx *jxcontext.Context, storIDs, vendorIDs []int, vendo
|
|||||||
if fromTimeP.After(toTimeP) {
|
if fromTimeP.After(toTimeP) {
|
||||||
return nil, fmt.Errorf("时间范围不合法!开始时间:[%v],结束时间:[%v]", fromTimeP, toTimeP)
|
return nil, fmt.Errorf("时间范围不合法!开始时间:[%v],结束时间:[%v]", fromTimeP, toTimeP)
|
||||||
}
|
}
|
||||||
result, totalCount, err := dao.GetOrdersSupplement(db, storIDs, vendorIDs, vendorOrderID, fromTimeP, toTimeP, status, stype, IsReverse, offset, pageSize)
|
result, totalCount, err := dao.GetOrdersSupplement(db, storIDs, vendorIDs, statuss, vendorOrderID, fromTimeP, toTimeP, stype, IsReverse, offset, pageSize)
|
||||||
pageInfo = &model.PagedInfo{
|
pageInfo = &model.PagedInfo{
|
||||||
Data: result,
|
Data: result,
|
||||||
TotalCount: totalCount,
|
TotalCount: totalCount,
|
||||||
@@ -781,6 +781,9 @@ func AddUpdateOrdersSupplement(ctx *jxcontext.Context, ordersSupplement *model.O
|
|||||||
id = ordersSupplement.ID
|
id = ordersSupplement.ID
|
||||||
)
|
)
|
||||||
now := time.Now()
|
now := time.Now()
|
||||||
|
if *ordersSupplement.VendorID == -1 {
|
||||||
|
ordersSupplement.VendorID = nil
|
||||||
|
}
|
||||||
ordersSupplement.SupplementTime = &now
|
ordersSupplement.SupplementTime = &now
|
||||||
defer func() {
|
defer func() {
|
||||||
if r := recover(); r != nil || err != nil {
|
if r := recover(); r != nil || err != nil {
|
||||||
@@ -791,11 +794,16 @@ func AddUpdateOrdersSupplement(ctx *jxcontext.Context, ordersSupplement *model.O
|
|||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
if id > 0 {
|
if id > 0 {
|
||||||
if ordersSupplement.Status == 1 {
|
orderSupplementFee, _ := dao.GetOrdersSupplementNoPage(db, id, nil, nil, nil, "", utils.ZeroTimeValue, utils.ZeroTimeValue, 0, 0)
|
||||||
return 0, fmt.Errorf("已结账的扣款信息不允许修改!门店ID:[%v],订单号:[%v]", ordersSupplement.StoreID, ordersSupplement.VendorOrderID)
|
if len(orderSupplementFee) > 2 || len(orderSupplementFee) == 0 {
|
||||||
|
return 0, fmt.Errorf("查询扣款记录有误,请联系技术部!")
|
||||||
|
}
|
||||||
|
if orderSupplementFee[0].Status == 1 {
|
||||||
|
return 0, fmt.Errorf("已结账的扣款信息不允许修改!门店ID:[%v],订单号:[%v]", ordersSupplement.StoreID, *ordersSupplement.VendorOrderID)
|
||||||
}
|
}
|
||||||
ordersSupplement.UpdatedAt = time.Now()
|
ordersSupplement.UpdatedAt = time.Now()
|
||||||
ordersSupplement.LastOperator = ctx.GetUserName()
|
ordersSupplement.LastOperator = ctx.GetUserName()
|
||||||
|
ordersSupplement.CreatedAt = orderSupplementFee[0].CreatedAt
|
||||||
if ordersSupplement.Status == -1 {
|
if ordersSupplement.Status == -1 {
|
||||||
ordersSupplement.DeletedAt = time.Now()
|
ordersSupplement.DeletedAt = time.Now()
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -1053,7 +1053,7 @@ func GetWayBillByOrderID(db *DaoDB, orderStatus, vendorID, waybillVendorID int,
|
|||||||
return wayBillList, err
|
return wayBillList, err
|
||||||
}
|
}
|
||||||
|
|
||||||
func GetOrdersSupplement(db *DaoDB, storIDs, vendorIDs []int, vendorOrderID string, fromTime, toTime time.Time, status, stype, IsReverse, offset, pageSize int) (orderSupplementFee []*model.OrderSupplementFee, totalCount int, err error) {
|
func GetOrdersSupplement(db *DaoDB, storIDs, vendorIDs, statuss []int, vendorOrderID string, fromTime, toTime time.Time, stype, IsReverse, offset, pageSize int) (orderSupplementFee []*model.OrderSupplementFee, totalCount int, err error) {
|
||||||
sql := `
|
sql := `
|
||||||
SELECT SQL_CALC_FOUND_ROWS *
|
SELECT SQL_CALC_FOUND_ROWS *
|
||||||
FROM order_supplement_fee
|
FROM order_supplement_fee
|
||||||
@@ -1083,9 +1083,9 @@ func GetOrdersSupplement(db *DaoDB, storIDs, vendorIDs []int, vendorOrderID stri
|
|||||||
sql += " AND vendor_order_id = ?"
|
sql += " AND vendor_order_id = ?"
|
||||||
sqlParams = append(sqlParams, vendorOrderID)
|
sqlParams = append(sqlParams, vendorOrderID)
|
||||||
}
|
}
|
||||||
if status >= 0 {
|
if len(statuss) > 0 {
|
||||||
sql += " AND status = ?"
|
sql += " AND status IN (" + GenQuestionMarks(len(vendorIDs)) + ")"
|
||||||
sqlParams = append(sqlParams, status)
|
sqlParams = append(sqlParams, statuss)
|
||||||
}
|
}
|
||||||
if stype > 0 {
|
if stype > 0 {
|
||||||
sql += " AND type = ?"
|
sql += " AND type = ?"
|
||||||
@@ -1106,3 +1106,54 @@ func GetOrdersSupplement(db *DaoDB, storIDs, vendorIDs []int, vendorOrderID stri
|
|||||||
}
|
}
|
||||||
return orderSupplementFee, totalCount, err
|
return orderSupplementFee, totalCount, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func GetOrdersSupplementNoPage(db *DaoDB, ID int, storIDs, vendorIDs, statuss []int, vendorOrderID string, fromTime, toTime time.Time, stype, IsReverse int) (orderSupplementFee []*model.OrderSupplementFee, err error) {
|
||||||
|
sql := `
|
||||||
|
SELECT *
|
||||||
|
FROM order_supplement_fee
|
||||||
|
WHERE 1=1
|
||||||
|
AND deleted_at = ?
|
||||||
|
`
|
||||||
|
sqlParams := []interface{}{
|
||||||
|
utils.DefaultTimeValue,
|
||||||
|
}
|
||||||
|
if !utils.IsTimeZero(fromTime) {
|
||||||
|
sql += " AND supplement_time >= ?"
|
||||||
|
sqlParams = append(sqlParams, fromTime)
|
||||||
|
}
|
||||||
|
if !utils.IsTimeZero(toTime) {
|
||||||
|
sql += " AND supplement_time <= ?"
|
||||||
|
sqlParams = append(sqlParams, toTime)
|
||||||
|
}
|
||||||
|
if len(storIDs) > 0 {
|
||||||
|
sql += " AND store_id IN (" + GenQuestionMarks(len(storIDs)) + ")"
|
||||||
|
sqlParams = append(sqlParams, storIDs)
|
||||||
|
}
|
||||||
|
if len(vendorIDs) > 0 {
|
||||||
|
sql += " AND vendor_id IN (" + GenQuestionMarks(len(vendorIDs)) + ")"
|
||||||
|
sqlParams = append(sqlParams, vendorIDs)
|
||||||
|
}
|
||||||
|
if vendorOrderID != "" {
|
||||||
|
sql += " AND vendor_order_id = ?"
|
||||||
|
sqlParams = append(sqlParams, vendorOrderID)
|
||||||
|
}
|
||||||
|
if len(statuss) > 0 {
|
||||||
|
sql += " AND status IN (" + GenQuestionMarks(len(vendorIDs)) + ")"
|
||||||
|
sqlParams = append(sqlParams, statuss)
|
||||||
|
}
|
||||||
|
if stype > 0 {
|
||||||
|
sql += " AND type = ?"
|
||||||
|
sqlParams = append(sqlParams, stype)
|
||||||
|
}
|
||||||
|
if ID > 0 {
|
||||||
|
sql += " AND id = ?"
|
||||||
|
sqlParams = append(sqlParams, ID)
|
||||||
|
}
|
||||||
|
if IsReverse == -1 {
|
||||||
|
sql += " AND link_id = 0"
|
||||||
|
} else if IsReverse == 1 {
|
||||||
|
sql += " AND link_id <> 0"
|
||||||
|
}
|
||||||
|
err = GetRows(db, &orderSupplementFee, sql, sqlParams...)
|
||||||
|
return orderSupplementFee, err
|
||||||
|
}
|
||||||
|
|||||||
@@ -348,7 +348,7 @@ type OrderSupplementFee struct {
|
|||||||
ModelIDCULD
|
ModelIDCULD
|
||||||
StoreID int `orm:"column(store_id)" json:"storeID"`
|
StoreID int `orm:"column(store_id)" json:"storeID"`
|
||||||
VendorOrderID *string `orm:"column(vendor_order_id);size(48)" json:"vendorOrderID"`
|
VendorOrderID *string `orm:"column(vendor_order_id);size(48)" json:"vendorOrderID"`
|
||||||
VendorID *string `orm:"column(vendor_id)" json:"vendorID"`
|
VendorID *int `orm:"column(vendor_id);null" json:"vendorID"`
|
||||||
Status int `json:"status"` //账单状态,若已结账则不允许再修改 ,暂时 0为未结账,1为已结账,-1为作废
|
Status int `json:"status"` //账单状态,若已结账则不允许再修改 ,暂时 0为未结账,1为已结账,-1为作废
|
||||||
LinkID int `orm:"column(link_id)" json:"linkID"` //作为冲账标志关联某条扣款记录
|
LinkID int `orm:"column(link_id)" json:"linkID"` //作为冲账标志关联某条扣款记录
|
||||||
SupplementTime *time.Time `orm:"type(datetime);null" json:"supplementTime"`
|
SupplementTime *time.Time `orm:"type(datetime);null" json:"supplementTime"`
|
||||||
|
|||||||
@@ -934,7 +934,7 @@ func (c *OrderController) ComplaintRider() {
|
|||||||
// @Param vendorIDs query string false "订单所属厂商ID列表"
|
// @Param vendorIDs query string false "订单所属厂商ID列表"
|
||||||
// @Param fromTime query string false "开始日期(包含),格式(2006-01-02),如果订单号为空此项必须要求"
|
// @Param fromTime query string false "开始日期(包含),格式(2006-01-02),如果订单号为空此项必须要求"
|
||||||
// @Param toTime query string false "结束日期(包含),格式(2006-01-02),如果订单号为空此项必须要求"
|
// @Param toTime query string false "结束日期(包含),格式(2006-01-02),如果订单号为空此项必须要求"
|
||||||
// @Param status query int false "账单状态,0是未结账,1是已结账"
|
// @Param statuss query string false "账单状态列表,0是未结账,1是已结账,-1为作废"
|
||||||
// @Param type query int false "扣款类型,1为差评补贴,2为优惠券"
|
// @Param type query int false "扣款类型,1为差评补贴,2为优惠券"
|
||||||
// @Param isReverse query int false "只查冲账记录,0为默认都查,1为只查冲账,-1为不查冲账"
|
// @Param isReverse query int false "只查冲账记录,0为默认都查,1为只查冲账,-1为不查冲账"
|
||||||
// @Param offset query int false "结果起始序号(以0开始,缺省为0)"
|
// @Param offset query int false "结果起始序号(以0开始,缺省为0)"
|
||||||
@@ -943,10 +943,10 @@ func (c *OrderController) ComplaintRider() {
|
|||||||
// @Failure 200 {object} controllers.CallResult
|
// @Failure 200 {object} controllers.CallResult
|
||||||
// @router /GetOrdersSupplement [get]
|
// @router /GetOrdersSupplement [get]
|
||||||
func (c *OrderController) GetOrdersSupplement() {
|
func (c *OrderController) GetOrdersSupplement() {
|
||||||
var vendorIDList, storeIDList []int
|
var vendorIDList, storeIDList, statusList []int
|
||||||
c.callGetOrdersSupplement(func(params *tOrderGetOrdersSupplementParams) (retVal interface{}, errCode string, err error) {
|
c.callGetOrdersSupplement(func(params *tOrderGetOrdersSupplementParams) (retVal interface{}, errCode string, err error) {
|
||||||
if err = jxutils.Strings2Objs(params.VendorIDs, &vendorIDList, params.StoreIDs, &storeIDList); err == nil {
|
if err = jxutils.Strings2Objs(params.VendorIDs, &vendorIDList, params.StoreIDs, &storeIDList, params.Statuss, statusList); err == nil {
|
||||||
retVal, err = orderman.GetOrdersSupplement(params.Ctx, storeIDList, vendorIDList, params.VendorOrderID, params.FromTime, params.ToTime, params.Status, params.Type, params.IsReverse, params.Offset, params.PageSize)
|
retVal, err = orderman.GetOrdersSupplement(params.Ctx, storeIDList, vendorIDList, statusList, params.VendorOrderID, params.FromTime, params.ToTime, params.Type, params.IsReverse, params.Offset, params.PageSize)
|
||||||
}
|
}
|
||||||
return retVal, "", err
|
return retVal, "", err
|
||||||
})
|
})
|
||||||
|
|||||||
Reference in New Issue
Block a user