1
This commit is contained in:
@@ -446,10 +446,53 @@ func filterOrderInfo(order *model.GoodsOrder) {
|
||||
|
||||
func resetCreateWaybillFee(db *dao.DaoDB, order *model.GoodsOrder) (err error) {
|
||||
store, _ := dao.GetStoreDetail(db, jxutils.GetSaleStoreIDFromOrder(order), order.VendorID, order.VendorOrgCode)
|
||||
if store != nil && store.CreateDeliveryType == model.YES {
|
||||
if expend, lastFee, err := partner.CurStoreAcctManager.GetStoreAcctExpendLastCreateWayBillFee(order.VendorOrderID); err == nil && expend != nil {
|
||||
partner.CurStoreAcctManager.InsertStoreAcctIncomeAndUpdateStoreAcctBalance(jxcontext.AdminCtx, jxutils.GetSaleStoreIDFromOrder(order), lastFee, partner.StoreAcctTypeIncomeCancelReal, order.VendorOrderID, expend.ID)
|
||||
if store != nil && store.CreateDeliveryType == model.YES { // 门店发单(非京西品牌)
|
||||
// 无运单不参与退款
|
||||
if order.VendorWaybillID == "" {
|
||||
return err
|
||||
}
|
||||
// 自配送不参与退款
|
||||
if order.VendorOrderID == order.VendorWaybillID {
|
||||
return err
|
||||
}
|
||||
|
||||
// 获取运单记录
|
||||
orderStatusList, err := GetOrderStatusList2(order.VendorOrderID, order.VendorWaybillID, 2, order.WaybillVendorID)
|
||||
if err != nil {
|
||||
globals.SugarLogger.Debug("获取订单操作流程错误:", err)
|
||||
return err
|
||||
}
|
||||
|
||||
isRefund := true // 默认可以退费
|
||||
for _, v := range orderStatusList {
|
||||
if order.WaybillVendorID == model.VendorIDMTPS && v.VendorStatus == "30" {
|
||||
isRefund = false
|
||||
break
|
||||
}
|
||||
if order.WaybillVendorID == model.VendorIDFengNiao && v.VendorStatus == "80" {
|
||||
isRefund = false
|
||||
break
|
||||
}
|
||||
if order.WaybillVendorID == model.VendorIDDada && v.VendorStatus == "3" {
|
||||
isRefund = false
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
if !isRefund {
|
||||
return err
|
||||
}
|
||||
|
||||
// 获取品牌的支付记录
|
||||
orderBill, _ := dao.GetBrandBill(dao.GetDB(), store.BrandID, order.VendorOrderID, model.BrandBillTypeExpend, model.BrandBillFeeTypeDelivery)
|
||||
if len(orderBill) != model.YES {
|
||||
return errors.New("订单支出数据异常,应该为一条数据")
|
||||
}
|
||||
|
||||
// 将支出记录修改为退款记录,支付类型为收入,且类型为三方配送时:退费
|
||||
orderBill[0].BillType = model.BrandBillTypeIncome
|
||||
newBill := orderBill[0]
|
||||
_, err = dao.UpdateEntity(dao.GetDB(), newBill)
|
||||
}
|
||||
return err
|
||||
}
|
||||
|
||||
@@ -346,7 +346,7 @@ func (c *OrderManager) GetOrders(ctx *jxcontext.Context, isIncludeFake bool, fro
|
||||
}
|
||||
}
|
||||
}
|
||||
//if isJxIncomeArea {
|
||||
//if isJxIncomeArea {
|
||||
// begin = utils.MustInterface2Int64(params["jxIncomeBegin"])
|
||||
// end = utils.MustInterface2Int64(params["jxIncomeEnd"])
|
||||
// pageSize = math.MaxInt32
|
||||
@@ -712,6 +712,31 @@ func (c *OrderManager) GetOrderStatusList(ctx *jxcontext.Context, vendorOrderID
|
||||
return statusList, nil
|
||||
}
|
||||
|
||||
// GetOrderStatusList2 查询订单流程 refVendorOrderID 订单Id
|
||||
func GetOrderStatusList2(refVendorOrderID string, wayBillId string, orderType int, vendorID int) (statusList []*model.OrderStatus, err error) {
|
||||
sql := `
|
||||
SELECT *
|
||||
FROM order_status t1
|
||||
WHERE t1.ref_vendor_order_id = ? AND t1.vendor_order_id = ? AND t1.vendor_id = ?
|
||||
`
|
||||
sqlParams := []interface{}{
|
||||
refVendorOrderID,
|
||||
wayBillId,
|
||||
vendorID,
|
||||
}
|
||||
if orderType > 0 {
|
||||
sql += " AND t1.order_type = ?"
|
||||
sqlParams = append(sqlParams, orderType)
|
||||
}
|
||||
sql += " ORDER BY t1.status_time, t1.order_type DESC, t1.status"
|
||||
|
||||
db := dao.GetDB()
|
||||
if err = dao.GetRows(db, &statusList, sql, sqlParams...); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return statusList, nil
|
||||
}
|
||||
|
||||
func (c *OrderManager) GetOrdersFinancial(ctx *jxcontext.Context, fromDateStr, toDateStr string, params map[string]interface{}, offset, pageSize int) (pagedInfo *model.PagedInfo, err error) {
|
||||
globals.SugarLogger.Debugf("GetOrdersFinancial from:%s to:%s", fromDateStr, toDateStr)
|
||||
pageSize = jxutils.FormalizePageSize(pageSize)
|
||||
|
||||
@@ -172,7 +172,7 @@ func NotifyPickOrder(order *model.GoodsOrder) (err error) {
|
||||
return err
|
||||
}
|
||||
|
||||
func NotifyOrderCanceled(order *model.GoodsOrder) (err error) {
|
||||
func NotifyO2019110769024042(order *model.GoodsOrder) (err error) {
|
||||
err = SendSMSMsg(getOrderNotifyPhone(order), globals.SMSSignName, globals.SMSOrderCanceledTemplate, map[string]interface{}{
|
||||
"vendorName": model.VendorChineseNames[order.VendorID],
|
||||
"seq": order.OrderSeq,
|
||||
|
||||
@@ -93,12 +93,12 @@ func (p *PurchaseHandler) getOrder(vendorOrgCode, vendorOrderID, vendorStoreID s
|
||||
return order, result, err
|
||||
}
|
||||
|
||||
func (p *PurchaseHandler) getOrderRider(vendorOrgCode, vendorStoreID string,param map[string]interface{}) ( err error) {
|
||||
func (p *PurchaseHandler) getOrderRider(vendorOrgCode, vendorStoreID string, param map[string]interface{}) (err error) {
|
||||
return getAPI(vendorOrgCode, 0, vendorStoreID).OrderStatusAndPsInfo(param)
|
||||
}
|
||||
|
||||
func (p *PurchaseHandler) GetOrderRider(vendorOrgCode, vendorStoreID string, param map[string]interface{}) ( err error) {
|
||||
return p.getOrderRider(vendorOrgCode, vendorStoreID, param)
|
||||
func (p *PurchaseHandler) GetOrderRider(vendorOrgCode, vendorStoreID string, param map[string]interface{}) (err error) {
|
||||
return p.getOrderRider(vendorOrgCode, vendorStoreID, param)
|
||||
}
|
||||
|
||||
func (p *PurchaseHandler) GetOrder(vendorOrgCode, vendorOrderID, vendorStoreID string) (order *model.GoodsOrder, err error) {
|
||||
@@ -392,6 +392,7 @@ func (c *PurchaseHandler) onOrderMsg(msg *mtwmapi.CallbackMsg) (response *mtwmap
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user