修改门店发单运费收取,非京西门店先收取门店,门店不够在收取品牌.京西门店直接收取门店
This commit is contained in:
@@ -2,6 +2,7 @@ package defsch
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"git.rosy.net.cn/jx-callback/business/jxstore/cms"
|
||||||
"math"
|
"math"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
@@ -17,6 +18,11 @@ import (
|
|||||||
"git.rosy.net.cn/jx-callback/globals"
|
"git.rosy.net.cn/jx-callback/globals"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
const (
|
||||||
|
JXC4B_RAND_JXGY = 1 // 京西菜市和果园品牌id
|
||||||
|
JXC4B_SHOP = 7 // 京西超市
|
||||||
|
)
|
||||||
|
|
||||||
func (s *DefScheduler) loadSavedOrderByID(vendorOrderID string, vendorID int, isForceLoad bool) *WatchOrderInfo {
|
func (s *DefScheduler) loadSavedOrderByID(vendorOrderID string, vendorID int, isForceLoad bool) *WatchOrderInfo {
|
||||||
return s.loadSavedOrderFromMap(&model.OrderStatus{
|
return s.loadSavedOrderFromMap(&model.OrderStatus{
|
||||||
RefVendorOrderID: vendorOrderID,
|
RefVendorOrderID: vendorOrderID,
|
||||||
@@ -133,11 +139,26 @@ func (s *DefScheduler) CreateWaybillOnProviders4SavedOrder(ctx *jxcontext.Contex
|
|||||||
if forceCreate {
|
if forceCreate {
|
||||||
s.stopTimer(savedOrderInfo)
|
s.stopTimer(savedOrderInfo)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 获取门店品牌余额
|
||||||
|
storeAcct, err := cms.GetStoreAcctBalance(ctx, jxutils.GetSaleStoreIDFromOrder(order)) // 获取门店余额
|
||||||
|
|
||||||
|
// 如果门店没钱,查看品牌,查询门店品牌id
|
||||||
|
storeList, err := dao.GetStoreList(dao.GetDB(), []int{jxutils.GetSaleStoreIDFromOrder(order)}, nil, nil, nil, nil, "")
|
||||||
|
if err != nil || len(storeList) != 1 {
|
||||||
|
return nil, fmt.Errorf("门店id:[%d],所属品牌不唯一,或其他查询错误", order.JxStoreID)
|
||||||
|
}
|
||||||
|
result, err := dao.GetBrandBalance(dao.GetDB(), storeList[0].BrandID) // 品牌余额
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
//门店发单开始扣钱
|
//门店发单开始扣钱
|
||||||
if order.CreateDeliveryType == model.YES {
|
if order.CreateDeliveryType == model.YES {
|
||||||
deliveryFeeMap, _ := s.QueryOrderWaybillFeeInfoEx(ctx, order.VendorOrderID, order.VendorID)
|
deliveryFeeMap, _ := s.QueryOrderWaybillFeeInfoEx(ctx, order.VendorOrderID, order.VendorID)
|
||||||
// 运费相等为0或支出大于收入不做,
|
// 运费相等为0或支出大于收入不做,
|
||||||
isEqual, isZero, _ := partner.CurStoreAcctManager.CheckStoreAcctExpendExist(order.VendorOrderID)
|
isEqual, isZero, _ := partner.CurStoreAcctManager.CheckStoreAcctExpendExist(order.VendorOrderID)
|
||||||
|
expend, lastFee, _ := partner.CurStoreAcctManager.GetStoreAcctExpendLastCreateWayBillFee(order.VendorOrderID)
|
||||||
// 收最贵的一个订单配送费(配送费发送变化,收取最贵的价格)
|
// 收最贵的一个订单配送费(配送费发送变化,收取最贵的价格)
|
||||||
if !isZero && !isEqual {
|
if !isZero && !isEqual {
|
||||||
var newPrice int64
|
var newPrice int64
|
||||||
@@ -156,15 +177,50 @@ func (s *DefScheduler) CreateWaybillOnProviders4SavedOrder(ctx *jxcontext.Contex
|
|||||||
newPrice = maxFee
|
newPrice = maxFee
|
||||||
}
|
}
|
||||||
// 门店支出运费
|
// 门店支出运费
|
||||||
expend, lastFee, _ := partner.CurStoreAcctManager.GetStoreAcctExpendLastCreateWayBillFee(order.VendorOrderID)
|
if storeList[0].BrandID != JXC4B_SHOP && storeList[0].BrandID != JXC4B_RAND_JXGY { // 非京西品牌,先扣门店在扣品牌
|
||||||
if int(newPrice) > lastFee {
|
if storeAcct.AccountBalance > int(newPrice) {
|
||||||
partner.CurStoreAcctManager.InsertStoreAcctExpendAndUpdateStoreAcctBalance(ctx, jxutils.GetSaleStoreIDFromOrder(order), int(model.Waybill{}.DesiredFee), partner.StoreAcctTypeExpendCreateWaybill2ndMore, order.VendorOrderID, expend.ID) //int(newPrice)-lastFee
|
if int(newPrice) > lastFee {
|
||||||
|
// 门店支出费用
|
||||||
|
partner.CurStoreAcctManager.InsertStoreAcctExpendAndUpdateStoreAcctBalance(ctx, jxutils.GetSaleStoreIDFromOrder(order), int(model.Waybill{}.DesiredFee), partner.StoreAcctTypeExpendCreateWaybill2ndMore, order.VendorOrderID, expend.ID) //int(newPrice)-lastFee
|
||||||
|
}
|
||||||
|
} else if result > int(newPrice) {
|
||||||
|
// 品牌支出费用
|
||||||
|
partner.CurStoreAcctManager.InsertBrandBill(jxcontext.AdminCtx, storeList[0].BrandID, int(model.Waybill{}.DesiredFee), model.BrandBillTypeExpend, model.BrandBillFeeTypeDelivery, order.VendorOrderID)
|
||||||
|
} else {
|
||||||
|
return nil, fmt.Errorf("门店id:[%d],品牌id:[]%d,门店以及门店所属品牌余额不足,无法发单", order.JxStoreID, storeList[0].BrandID)
|
||||||
|
}
|
||||||
|
} else { // 京西品牌
|
||||||
|
if storeAcct.AccountBalance > int(newPrice) {
|
||||||
|
if int(newPrice) > lastFee {
|
||||||
|
// 门店支出费用
|
||||||
|
partner.CurStoreAcctManager.InsertStoreAcctExpendAndUpdateStoreAcctBalance(ctx, jxutils.GetSaleStoreIDFromOrder(order), int(model.Waybill{}.DesiredFee), partner.StoreAcctTypeExpendCreateWaybill2ndMore, order.VendorOrderID, expend.ID) //int(newPrice)-lastFee
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
return nil, fmt.Errorf("门店id:[%d],品牌id:[]%d,门店以及门店所属品牌余额不足,无法发单", order.JxStoreID, storeList[0].BrandID)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
if len(courierVendorIDs) == 1 {
|
if len(courierVendorIDs) == 1 {
|
||||||
courierVendorID := courierVendorIDs[0]
|
courierVendorID := courierVendorIDs[0]
|
||||||
if _, ok := deliveryFeeMap[courierVendorID]; ok {
|
if _, ok := deliveryFeeMap[courierVendorID]; ok {
|
||||||
partner.CurStoreAcctManager.InsertStoreAcctExpendAndUpdateStoreAcctBalance(ctx, jxutils.GetSaleStoreIDFromOrder(order), int(model.Waybill{}.DesiredFee), partner.StoreAcctTypeExpendCreateWaybillEx, order.VendorOrderID, 0) //int(deliveryFeeMap[courierVendorID].DeliveryFee
|
if storeList[0].BrandID != JXC4B_SHOP && storeList[0].BrandID != JXC4B_RAND_JXGY { // 非京西品牌,先扣门店在扣品牌
|
||||||
|
if storeAcct.AccountBalance > int(model.Waybill{}.DesiredFee) {
|
||||||
|
partner.CurStoreAcctManager.InsertStoreAcctExpendAndUpdateStoreAcctBalance(ctx, jxutils.GetSaleStoreIDFromOrder(order), int(model.Waybill{}.DesiredFee), partner.StoreAcctTypeExpendCreateWaybill2ndMore, order.VendorOrderID, expend.ID) //int(newPrice)-lastFee
|
||||||
|
} else if result > int(model.Waybill{}.DesiredFee) {
|
||||||
|
// 品牌支出费用
|
||||||
|
partner.CurStoreAcctManager.InsertBrandBill(jxcontext.AdminCtx, storeList[0].BrandID, int(model.Waybill{}.DesiredFee), model.BrandBillTypeExpend, model.BrandBillFeeTypeDelivery, order.VendorOrderID)
|
||||||
|
} else {
|
||||||
|
return nil, fmt.Errorf("门店id:[%d],品牌id:[]%d,门店以及门店所属品牌余额不足,无法发单", order.JxStoreID, storeList[0].BrandID)
|
||||||
|
}
|
||||||
|
} else { // 京西品牌
|
||||||
|
if storeAcct.AccountBalance > int(model.Waybill{}.DesiredFee) {
|
||||||
|
// 门店支出费用
|
||||||
|
partner.CurStoreAcctManager.InsertStoreAcctExpendAndUpdateStoreAcctBalance(ctx, jxutils.GetSaleStoreIDFromOrder(order), int(model.Waybill{}.DesiredFee), partner.StoreAcctTypeExpendCreateWaybill2ndMore, order.VendorOrderID, expend.ID) //int(newPrice)-lastFee
|
||||||
|
} else {
|
||||||
|
return nil, fmt.Errorf("门店id:[%d],品牌id:[]%d,门店以及门店所属品牌余额不足,无法发单", order.JxStoreID, storeList[0].BrandID)
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} else if len(courierVendorIDs) == 0 {
|
} else if len(courierVendorIDs) == 0 {
|
||||||
var maxFee int64
|
var maxFee int64
|
||||||
@@ -247,16 +303,18 @@ func (s *DefScheduler) CheckStoreBalance(ctx *jxcontext.Context, order *model.Go
|
|||||||
//京西后台则是点一下发3个,len courierVendorIDs 是0
|
//京西后台则是点一下发3个,len courierVendorIDs 是0
|
||||||
//如果是小程序上点哪个扣哪个平台的钱
|
//如果是小程序上点哪个扣哪个平台的钱
|
||||||
//如果是后台,则选最高的那个扣
|
//如果是后台,则选最高的那个扣
|
||||||
//storeAcct, err := cms.GetStoreAcctBalance(ctx, jxutils.GetSaleStoreIDFromOrder(order)) // 0.0
|
storeAcct, err := cms.GetStoreAcctBalance(ctx, jxutils.GetSaleStoreIDFromOrder(order)) // 获取门店余额
|
||||||
|
|
||||||
// 如果门店没钱,查看品牌,查询门店品牌id
|
// 如果门店没钱,查看品牌,查询门店品牌id
|
||||||
storeList, err := dao.GetStoreList(dao.GetDB(), []int{order.JxStoreID}, nil, nil, nil, nil, "")
|
storeList, err := dao.GetStoreList(dao.GetDB(), []int{jxutils.GetSaleStoreIDFromOrder(order)}, nil, nil, nil, nil, "")
|
||||||
if err != nil || len(storeList) != 1 {
|
if err != nil || len(storeList) != 1 {
|
||||||
return "", fmt.Errorf("门店id:[%d],所属品牌不唯一,或其他查询错误", order.JxStoreID)
|
return "", fmt.Errorf("门店id:[%d],所属品牌不唯一,或其他查询错误", order.JxStoreID)
|
||||||
}
|
}
|
||||||
result, err := dao.GetBrandBalance(dao.GetDB(), storeList[0].BrandID)
|
result, err := dao.GetBrandBalance(dao.GetDB(), storeList[0].BrandID) // 品牌余额
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return "", err
|
return "", err
|
||||||
}
|
}
|
||||||
|
|
||||||
deliveryFeeMap, _ := s.QueryOrderWaybillFeeInfoEx(ctx, order.VendorOrderID, order.VendorID)
|
deliveryFeeMap, _ := s.QueryOrderWaybillFeeInfoEx(ctx, order.VendorOrderID, order.VendorID)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return errCode, fmt.Errorf("获取账户余额失败!")
|
return errCode, fmt.Errorf("获取账户余额失败!")
|
||||||
@@ -286,23 +344,30 @@ func (s *DefScheduler) CheckStoreBalance(ctx *jxcontext.Context, order *model.Go
|
|||||||
newPrice = maxFee
|
newPrice = maxFee
|
||||||
}
|
}
|
||||||
_, lastFee, _ := partner.CurStoreAcctManager.GetStoreAcctExpendLastCreateWayBillFee(order.VendorOrderID)
|
_, lastFee, _ := partner.CurStoreAcctManager.GetStoreAcctExpendLastCreateWayBillFee(order.VendorOrderID)
|
||||||
|
// 如果门店属于京西菜市,京西果园则只能扣门店的金额
|
||||||
if int(newPrice) > lastFee {
|
if int(newPrice) > lastFee {
|
||||||
if result < int(newPrice)-lastFee {
|
if storeList[0].BrandID == JXC4B_RAND_JXGY || storeList[0].BrandID == JXC4B_SHOP { // 订单所属门店属于京西菜市,果园,则不扣品牌只扣门店)(1果园,菜市,7京西超市)
|
||||||
return model.ErrCodeAccountBalanceNotEnough, fmt.Errorf("门店账户余额小于[%v]元,不能发配送!", jxutils.IntPrice2Standard(newPrice-int64(lastFee)))
|
if storeAcct.AccountBalance < int(newPrice)-lastFee {
|
||||||
|
return model.ErrCodeAccountBalanceNotEnough, fmt.Errorf("门店/品牌账户余额小于[%v]元,不能发配送!", jxutils.IntPrice2Standard(newPrice-int64(lastFee)))
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if storeAcct.AccountBalance < int(newPrice)-lastFee && result < int(newPrice)-lastFee {
|
||||||
|
return model.ErrCodeAccountBalanceNotEnough, fmt.Errorf("门店/品牌账户余额小于[%v]元,不能发配送!", jxutils.IntPrice2Standard(newPrice-int64(lastFee)))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
//if storeAcct.AccountBalance < partner.MinCreateWaybillBalance {
|
|
||||||
if result < partner.MinCreateWaybillBalance { // 门店品牌账户余额
|
|
||||||
return model.ErrCodeAccountBalanceNotEnough, fmt.Errorf("门店账户余额小于[%v]元,不能发配送!", jxutils.IntPrice2Standard(partner.MinCreateWaybillBalance))
|
|
||||||
}
|
|
||||||
//}
|
|
||||||
if len(courierVendorIDs) == 1 {
|
if len(courierVendorIDs) == 1 {
|
||||||
courierVendorID := courierVendorIDs[0]
|
courierVendorID := courierVendorIDs[0]
|
||||||
if _, ok := deliveryFeeMap[courierVendorID]; ok {
|
if _, ok := deliveryFeeMap[courierVendorID]; ok {
|
||||||
//if deliveryFeeMap[courierVendorID].DeliveryFee > int64(storeAcct.AccountBalance) {
|
if storeList[0].BrandID == JXC4B_RAND_JXGY || storeList[0].BrandID == JXC4B_SHOP { // 订单所属门店属于京西菜市,果园,则不扣品牌只扣门店)(1果园,菜市,7京西超市)
|
||||||
if deliveryFeeMap[courierVendorID].DeliveryFee > int64(result) {
|
if deliveryFeeMap[courierVendorID].DeliveryFee > int64(storeAcct.AccountBalance) {
|
||||||
return model.ErrCodeAccountBalanceNotEnough, fmt.Errorf("门店账户余额小于[%v]元,不能发配送!", jxutils.IntPrice2Standard(deliveryFeeMap[courierVendorID].DeliveryFee))
|
return model.ErrCodeAccountBalanceNotEnough, fmt.Errorf("门店/品牌账户余额小于[%v]元,不能发配送!", jxutils.IntPrice2Standard(partner.MinCreateWaybillBalance))
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if deliveryFeeMap[courierVendorID].DeliveryFee > int64(result) && deliveryFeeMap[courierVendorID].DeliveryFee > int64(storeAcct.AccountBalance) {
|
||||||
|
return model.ErrCodeAccountBalanceNotEnough, fmt.Errorf("门店/品牌 账户余额小于[%v]元,不能发配送!", jxutils.IntPrice2Standard(deliveryFeeMap[courierVendorID].DeliveryFee))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if len(courierVendorIDs) == 0 {
|
} else if len(courierVendorIDs) == 0 {
|
||||||
@@ -312,8 +377,14 @@ func (s *DefScheduler) CheckStoreBalance(ctx *jxcontext.Context, order *model.Go
|
|||||||
v.DeliveryFee = maxFee
|
v.DeliveryFee = maxFee
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if maxFee > int64(result) {
|
if storeList[0].BrandID == JXC4B_RAND_JXGY || storeList[0].BrandID == JXC4B_SHOP { // 订单所属门店属于京西菜市,果园,则不扣品牌只扣门店)(1果园,菜市,7京西超市)
|
||||||
return model.ErrCodeAccountBalanceNotEnough, fmt.Errorf("门店账户余额小于[%v]元,不能发配送!", jxutils.IntPrice2Standard(maxFee))
|
if maxFee > int64(storeAcct.AccountBalance) {
|
||||||
|
return model.ErrCodeAccountBalanceNotEnough, fmt.Errorf("门店/品牌账户余额小于[%v]元,不能发配送!", jxutils.IntPrice2Standard(partner.MinCreateWaybillBalance))
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if maxFee > int64(result) && maxFee > int64(storeAcct.AccountBalance) {
|
||||||
|
return model.ErrCodeAccountBalanceNotEnough, fmt.Errorf("门店/品牌 账户余额小于[%v]元,不能发配送!", jxutils.IntPrice2Standard(maxFee))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,7 +6,6 @@ import (
|
|||||||
"encoding/json"
|
"encoding/json"
|
||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
"github.com/astaxie/beego/client/orm"
|
|
||||||
"io"
|
"io"
|
||||||
"math"
|
"math"
|
||||||
"mime/multipart"
|
"mime/multipart"
|
||||||
@@ -4736,7 +4735,7 @@ func RefreshPageStore() {
|
|||||||
|
|
||||||
func QueryPageStores2(db *dao.DaoDB, pageSize, offset int, keyword, vendorStoreID, brandName string, vendorID, cityCode, districtCode int, tel string,
|
func QueryPageStores2(db *dao.DaoDB, pageSize, offset int, keyword, vendorStoreID, brandName string, vendorID, cityCode, districtCode int, tel string,
|
||||||
minShopScore float32, minRecentOrderNum, minSkuCount int, lng1, lat1, lng2, lat2 float64, cat string) (pagedInfo *model.PagedInfo, err error) {
|
minShopScore float32, minRecentOrderNum, minSkuCount int, lng1, lat1, lng2, lat2 float64, cat string) (pagedInfo *model.PagedInfo, err error) {
|
||||||
db.Db = orm.NewOrmUsingDB("c4beta")
|
// db.Db = orm.NewOrmUsingDB("c4beta")
|
||||||
sqlJD := `
|
sqlJD := `
|
||||||
SELECT name, 0 vendor_id, wmpoiid vendor_store_id, orgcode org_code, 1 vendor_status, address, phone tel1, pj shop_score, month_sales_tip recent_order_num,
|
SELECT name, 0 vendor_id, wmpoiid vendor_store_id, orgcode org_code, 1 vendor_status, address, phone tel1, pj shop_score, month_sales_tip recent_order_num,
|
||||||
bak_info city_name, goods_number sku_count, lat, lng, district_name, brand_name, third_category category, shipping_time
|
bak_info city_name, goods_number sku_count, lat, lng, district_name, brand_name, third_category category, shipping_time
|
||||||
@@ -4907,7 +4906,7 @@ func QueryPageSkus(ctx *jxcontext.Context, vendorID int, vendorStoreIDs []string
|
|||||||
db = dao.GetDB()
|
db = dao.GetDB()
|
||||||
results []*QueryPageSkusResult
|
results []*QueryPageSkusResult
|
||||||
)
|
)
|
||||||
db.Db = orm.NewOrmUsingDB("c4beta")
|
//db.Db = orm.NewOrmUsingDB("c4beta")
|
||||||
sqlParams := []interface{}{}
|
sqlParams := []interface{}{}
|
||||||
sqlJD := `
|
sqlJD := `
|
||||||
SELECT 0 vendor_id, b.orgcode org_code, a.wmpoiid store_id, b.name store_name, a.Base sku_id, a.name sku_name, a.month_saled month_sales,
|
SELECT 0 vendor_id, b.orgcode org_code, a.wmpoiid store_id, b.name store_name, a.Base sku_id, a.name sku_name, a.month_saled month_sales,
|
||||||
@@ -5070,7 +5069,7 @@ func GetPageBrands(ctx *jxcontext.Context) (brands []*model.PageBrand, err error
|
|||||||
var (
|
var (
|
||||||
db = dao.GetDB()
|
db = dao.GetDB()
|
||||||
)
|
)
|
||||||
db.Db = orm.NewOrmUsingDB("c4beta")
|
//db.Db = orm.NewOrmUsingDB("c4beta")
|
||||||
sql := `
|
sql := `
|
||||||
SELECT * FROM page_brand
|
SELECT * FROM page_brand
|
||||||
`
|
`
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ func init() {
|
|||||||
partner.InitStoreAcctManager(FixedStoreAcctManager)
|
partner.InitStoreAcctManager(FixedStoreAcctManager)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *StoreAcctManager) InsertStoreAcctIncome(ctx *jxcontext.Context, storeID, price, acctType int, vendorOrderID string, expendID int) (err error) {
|
func InsertStoreAcctIncome(ctx *jxcontext.Context, storeID, price, acctType int, vendorOrderID string, expendID int) (err error) {
|
||||||
var (
|
var (
|
||||||
userID, userName string
|
userID, userName string
|
||||||
goodsVendorOrderID string
|
goodsVendorOrderID string
|
||||||
@@ -59,7 +59,7 @@ func (s *StoreAcctManager) InsertStoreAcctIncome(ctx *jxcontext.Context, storeID
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *StoreAcctManager) InsertStoreAcctExpend(ctx *jxcontext.Context, storeID, price, acctType int, vendorOrderID string, expendID int) (err error) {
|
func InsertStoreAcctExpend(ctx *jxcontext.Context, storeID, price, acctType int, vendorOrderID string, expendID int) (err error) {
|
||||||
var (
|
var (
|
||||||
userID, userName string
|
userID, userName string
|
||||||
db = dao.GetDB()
|
db = dao.GetDB()
|
||||||
@@ -136,10 +136,10 @@ func (s *StoreAcctManager) UpdateStoreAcctBalance(ctx *jxcontext.Context, storeI
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
// 门店到账
|
// 门店到账(老版本,修改门店的交易记录)
|
||||||
func (s *StoreAcctManager) InsertStoreAcctExpendAndUpdateStoreAcctBalance(ctx *jxcontext.Context, storeID, price, acctType int, vendorOrderID string, expendID int) (err error) {
|
func (s *StoreAcctManager) InsertStoreAcctExpendAndUpdateStoreAcctBalance(ctx *jxcontext.Context, storeID, price, acctType int, vendorOrderID string, expendID int) (err error) {
|
||||||
utils.CallFuncAsync(func() {
|
utils.CallFuncAsync(func() {
|
||||||
if err = s.InsertStoreAcctExpend(ctx, storeID, price, acctType, vendorOrderID, expendID); err == nil {
|
if err = InsertStoreAcctExpend(ctx, storeID, price, acctType, vendorOrderID, expendID); err == nil {
|
||||||
s.UpdateStoreAcctBalance(ctx, storeID, price, false)
|
s.UpdateStoreAcctBalance(ctx, storeID, price, false)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@@ -148,7 +148,7 @@ func (s *StoreAcctManager) InsertStoreAcctExpendAndUpdateStoreAcctBalance(ctx *j
|
|||||||
|
|
||||||
func (s *StoreAcctManager) InsertStoreAcctIncomeAndUpdateStoreAcctBalance(ctx *jxcontext.Context, storeID, price, acctType int, vendorOrderID string, expendID int) (err error) {
|
func (s *StoreAcctManager) InsertStoreAcctIncomeAndUpdateStoreAcctBalance(ctx *jxcontext.Context, storeID, price, acctType int, vendorOrderID string, expendID int) (err error) {
|
||||||
utils.CallFuncAsync(func() {
|
utils.CallFuncAsync(func() {
|
||||||
if err = s.InsertStoreAcctIncome(ctx, storeID, price, acctType, vendorOrderID, expendID); err == nil {
|
if err = InsertStoreAcctIncome(ctx, storeID, price, acctType, vendorOrderID, expendID); err == nil {
|
||||||
s.UpdateStoreAcctBalance(ctx, storeID, price, true)
|
s.UpdateStoreAcctBalance(ctx, storeID, price, true)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -207,8 +207,8 @@ func OnWaybillMsg(msg *fnpsapi.OrderStatusNottify) (resp *fnpsapi.CallbackRespon
|
|||||||
}
|
}
|
||||||
|
|
||||||
order := &model.Waybill{
|
order := &model.Waybill{
|
||||||
VendorWaybillID: cc.PartnerOrderCode,
|
VendorWaybillID: utils.Int64ToStr(cc.OrderId),
|
||||||
VendorWaybillID2: utils.Int64ToStr(cc.OrderId),
|
VendorWaybillID2: cc.PartnerOrderCode,
|
||||||
WaybillVendorID: model.VendorIDFengNiao,
|
WaybillVendorID: model.VendorIDFengNiao,
|
||||||
CourierName: cc.CarrierDriverName,
|
CourierName: cc.CarrierDriverName,
|
||||||
CourierMobile: cc.CarrierDriverPhone,
|
CourierMobile: cc.CarrierDriverPhone,
|
||||||
|
|||||||
@@ -32,10 +32,10 @@ func InitStoreAcctManager(curStoreManager IStoreAcctManager) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
type IStoreAcctManager interface {
|
type IStoreAcctManager interface {
|
||||||
//增加一条收入流水
|
////增加一条收入流水
|
||||||
InsertStoreAcctIncome(ctx *jxcontext.Context, storeID, price, acctType int, vendorOrderID string, expendID int) (err error)
|
//InsertStoreAcctIncome(ctx *jxcontext.Context, storeID, price, acctType int, vendorOrderID string, expendID int) (err error)
|
||||||
//增加一条支出流水
|
////增加一条支出流水
|
||||||
InsertStoreAcctExpend(ctx *jxcontext.Context, storeID, price, acctType int, vendorOrderID string, expendID int) (err error)
|
//InsertStoreAcctExpend(ctx *jxcontext.Context, storeID, price, acctType int, vendorOrderID string, expendID int) (err error)
|
||||||
//更新门店账户
|
//更新门店账户
|
||||||
UpdateStoreAcctBalance(ctx *jxcontext.Context, storeID, price int, isIncome bool) (err error)
|
UpdateStoreAcctBalance(ctx *jxcontext.Context, storeID, price int, isIncome bool) (err error)
|
||||||
InsertStoreAcctExpendAndUpdateStoreAcctBalance(ctx *jxcontext.Context, storeID, price, acctType int, vendorOrderID string, expendID int) (err error)
|
InsertStoreAcctExpendAndUpdateStoreAcctBalance(ctx *jxcontext.Context, storeID, price, acctType int, vendorOrderID string, expendID int) (err error)
|
||||||
|
|||||||
@@ -16,8 +16,9 @@ func Init() {
|
|||||||
orm.RegisterDataBase("c4beta", "mysql", "ubuntu:WebServer@1@tcp(111.231.218.230:3306)/jxd_dev_0?charset=utf8mb4&loc=Local&parseTime=true")
|
orm.RegisterDataBase("c4beta", "mysql", "ubuntu:WebServer@1@tcp(111.231.218.230:3306)/jxd_dev_0?charset=utf8mb4&loc=Local&parseTime=true")
|
||||||
orm.RegisterDataBase("api", "mysql", "root:WebServer@1@tcp(127.0.0.1:3306)/api?charset=utf8mb4&loc=Local&parseTime=true")
|
orm.RegisterDataBase("api", "mysql", "root:WebServer@1@tcp(127.0.0.1:3306)/api?charset=utf8mb4&loc=Local&parseTime=true")
|
||||||
// 本地测试服调试
|
// 本地测试服调试
|
||||||
//orm.RegisterDataBase("default", "mysql", "root:WebServer@1@tcp(127.0.0.1:3306)/jxd_dev_0?charset=utf8mb4&loc=Local&parseTime=true")
|
// orm.RegisterDataBase("default", "mysql", web.AppConfig.DefaultString("dbConnectStr", ""))
|
||||||
//orm.RegisterDataBase("api", "mysql", "root:WebServer@1@tcp(127.0.0.1:3306)/api?charset=utf8mb4&loc=Local&parseTime=true")
|
//orm.RegisterDataBase("api", "mysql", "root:WebServer@1@tcp(127.0.0.1:3306)/api?charset=utf8mb4&loc=Local&parseTime=true")
|
||||||
|
//orm.RegisterDataBase("c4beta", "mysql", "ubuntu:WebServer@1@tcp(127.0.0.1:3306)/jxd_dev_0?charset=utf8mb4&loc=Local&parseTime=true")
|
||||||
|
|
||||||
// 开启sql打印
|
// 开启sql打印
|
||||||
//orm.Debug = true
|
//orm.Debug = true
|
||||||
|
|||||||
Reference in New Issue
Block a user