1
This commit is contained in:
@@ -331,7 +331,6 @@ func (c *BaseScheduler) AgreeOrRefuseRefund(ctx *jxcontext.Context, afsOrderID s
|
|||||||
// _, err = netprinter.PrintRefundOrCancelOrder(jxcontext.AdminCtx, model.NO, order2, afsOrder.StoreID)
|
// _, err = netprinter.PrintRefundOrCancelOrder(jxcontext.AdminCtx, model.NO, order2, afsOrder.StoreID)
|
||||||
// }
|
// }
|
||||||
//}
|
//}
|
||||||
|
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -6749,3 +6749,13 @@ func Time2Week(t time.Time) int {
|
|||||||
|
|
||||||
return week
|
return week
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetStoreSettlementList 根据门店统计结算信息
|
||||||
|
func GetStoreSettlementList(storeId []int, start, end time.Time, vendorId []int, size, offset int) (*model.PagedInfo, error) {
|
||||||
|
return dao.StatisticsSettlement(dao.GetDB(), storeId, start, end, vendorId, size, offset)
|
||||||
|
}
|
||||||
|
|
||||||
|
// GetCityCodeSettlementList 根据城市统计结算
|
||||||
|
func GetCityCodeSettlementList(cityCode []string, start, end time.Time, vendorId []int, size, offset int) (*model.PagedInfo, error) {
|
||||||
|
return dao.StatisticsSettlementByCity(dao.GetDB(), cityCode, start, end, vendorId, size, offset)
|
||||||
|
}
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ package dao
|
|||||||
import (
|
import (
|
||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"git.rosy.net.cn/jx-print/dao"
|
||||||
"sort"
|
"sort"
|
||||||
"strings"
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
@@ -1749,3 +1750,179 @@ func StatisticsFineFee(db *DaoDB, startTime, endTime time.Time, storeId []int) (
|
|||||||
|
|
||||||
return fine, nil
|
return fine, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// StatisticsSettlement 统计京西门店结算信息
|
||||||
|
func StatisticsSettlement(db *DaoDB, storeId []int, start, end time.Time, vendorId []int, size, offset int) (pagedInfo *model.PagedInfo, err error) {
|
||||||
|
sql := `
|
||||||
|
SELECT
|
||||||
|
SQL_CALC_FOUND_ROWS
|
||||||
|
gs.jx_store_id,
|
||||||
|
s.name,
|
||||||
|
b.id AS brand_id,
|
||||||
|
b.name AS brand_name,
|
||||||
|
sm1.vendor_store_id AS mt_store_id,
|
||||||
|
sm2.vendor_store_id AS jd_store_id,
|
||||||
|
sm3.vendor_store_id AS sg_store_id,
|
||||||
|
city.name AS city_name,
|
||||||
|
district.name AS district_name,
|
||||||
|
s.market_man_phone,
|
||||||
|
u_market.name AS market_man_name, -- 修正别名
|
||||||
|
u_operator1.name AS operator1_name,
|
||||||
|
u_operator2.name AS operator2_name,
|
||||||
|
u_operator3.name AS operator3_name,
|
||||||
|
s.jx_brand_fee_factor,
|
||||||
|
s.market_add_fee_factor,
|
||||||
|
s.pay_percentage,
|
||||||
|
COALESCE(COUNT(gs.vendor_order_id), 0) AS order_count, -- 处理 NULL
|
||||||
|
COALESCE(SUM(w.desired_fee), 0) AS total_desired_fee,
|
||||||
|
s.package_setting,
|
||||||
|
SUM(ROUND(IF(gs.earning_type = 1, (gs.total_shop_money-gs.earning_price-IFNULL(w.desired_fee,0)), gs.total_shop_money *(gs.order_pay_percentage/2)/100) * (s.jx_brand_fee_factor/10),3)) jx_income,
|
||||||
|
SUM(ROUND(IF(gs.earning_type = 1, (gs.total_shop_money-gs.earning_price-IFNULL(w.desired_fee,0)) , gs.total_shop_money *(gs.order_pay_percentage/2)/100) * (s.market_add_fee_factor/10),3)) market_income,
|
||||||
|
SUM(ROUND(IF(gs.earning_type = 1, gs.earning_price, gs.total_shop_money- (gs.total_shop_money *(gs.order_pay_percentage/2)/100)) -IFNULL(w.desired_fee,0),3)) store_income,
|
||||||
|
SUM(ROUND(IF(gs.earning_type = 1, gs.total_shop_money-gs.earning_price-IFNULL(w.desired_fee,0), gs.total_shop_money- (gs.total_shop_money *(1-(gs.order_pay_percentage/2)/100))) -IFNULL(w.desired_fee,0),3)) platform_income,
|
||||||
|
COALESCE(SUM(gs.total_shop_money), 0) AS total_shop_money,-- 平台结算
|
||||||
|
COALESCE(SUM(ao.refund_money), 0) AS refund_money -- 售后退款
|
||||||
|
FROM goods_order gs
|
||||||
|
LEFT JOIN store_map sm1 ON gs.jx_store_id = sm1.store_id AND sm1.vendor_id = 1 AND sm1.deleted_at = '1970-01-01 00:00:00'
|
||||||
|
LEFT JOIN store_map sm2 ON gs.jx_store_id = sm2.store_id AND sm2.vendor_id = 0 AND sm2.deleted_at = '1970-01-01 00:00:00'
|
||||||
|
LEFT JOIN store_map sm3 ON gs.jx_store_id = sm3.store_id AND sm3.vendor_id = 3 AND sm3.deleted_at = '1970-01-01 00:00:00'
|
||||||
|
LEFT JOIN store s ON s.id = gs.jx_store_id
|
||||||
|
LEFT JOIN brand b ON b.id = s.brand_id
|
||||||
|
LEFT JOIN place city ON city.code = s.city_code
|
||||||
|
LEFT JOIN place district ON district.code = s.district_code -- 别名避免歧义
|
||||||
|
LEFT JOIN user u_market ON u_market.mobile = s.market_man_phone
|
||||||
|
LEFT JOIN user u_operator1 ON u_operator1.mobile = s.operator_phone
|
||||||
|
LEFT JOIN user u_operator2 ON u_operator2.mobile = s.operator_phone2
|
||||||
|
LEFT JOIN user u_operator3 ON u_operator3.mobile = s.operator_phone3
|
||||||
|
LEFT JOIN waybill w ON w.vendor_order_id = gs.vendor_order_id AND w.status IN (100,105)
|
||||||
|
LEFT JOIN afs_order ao ON ao.vendor_order_id = gs.vendor_order_id AND ao.status IN (160,180)
|
||||||
|
WHERE 1=1
|
||||||
|
`
|
||||||
|
param := []interface{}{}
|
||||||
|
if !utils.IsTimeZero(start) && !utils.IsTimeZero(end) {
|
||||||
|
sql += ` AND gs.order_created_at BETWEEN ? AND ? AND gs.status = 110 `
|
||||||
|
param = append(param, start, end)
|
||||||
|
}
|
||||||
|
if len(storeId) != 0 {
|
||||||
|
sql += ` AND IF(gs.jx_store_id != 0, gs.jx_store_id, gs.store_id) IN (` + dao.GenQuestionMarks(len(storeId)) + `)`
|
||||||
|
param = append(param, vendorId)
|
||||||
|
}
|
||||||
|
if len(vendorId) != 0 {
|
||||||
|
sql += ` AND gs.vendor_id IN (` + GenQuestionMarks(len(vendorId)) + `)`
|
||||||
|
param = append(param, vendorId)
|
||||||
|
}
|
||||||
|
sql += ` AND s.deleted_at = ? `
|
||||||
|
param = append(param, utils.DefaultTimeValue)
|
||||||
|
|
||||||
|
sql += `
|
||||||
|
GROUP BY
|
||||||
|
s.id, s.name, sm1.vendor_store_id, sm2.vendor_store_id, sm3.vendor_store_id,
|
||||||
|
city.name, district.name, s.market_man_phone, u_market.name,
|
||||||
|
u_operator1.name, u_operator2.name, u_operator3.name,
|
||||||
|
s.jx_brand_fee_factor, s.market_add_fee_factor, s.pay_percentage, s.package_setting ORDER BY order_count desc LIMIT ? OFFSET ?
|
||||||
|
`
|
||||||
|
param = append(param, size, offset)
|
||||||
|
|
||||||
|
txDB, _ := Begin(db)
|
||||||
|
defer Commit(db, txDB)
|
||||||
|
var msgList []*model.JxSettlementInfo
|
||||||
|
if err = GetRowsTx(txDB, &msgList, sql, param...); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
if len(msgList) > 0 {
|
||||||
|
for _, v := range msgList {
|
||||||
|
if v.BrandId == 1 || v.BrandId == 38 { // 京西/好菜
|
||||||
|
// 袋子费
|
||||||
|
v.PackagingFee = 40 * v.OrderCount
|
||||||
|
} else {
|
||||||
|
if v.PayPercentage != 0 && v.JxIncome == 0 {
|
||||||
|
v.JxIncome = float64(v.TotalShopMoney) - v.StoreInCome
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 服务费
|
||||||
|
v.PackageSetting = v.PackageSetting * v.OrderCount
|
||||||
|
v.Profit = v.JxIncome + v.MarketIncome - float64(v.PackagingFee) + float64(v.PackageSetting)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pagedInfo = &model.PagedInfo{
|
||||||
|
TotalCount: GetLastTotalRowCount2(db, txDB),
|
||||||
|
Data: msgList,
|
||||||
|
}
|
||||||
|
return pagedInfo, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
// StatisticsSettlementByCity 根据城市统计结算
|
||||||
|
func StatisticsSettlementByCity(db *DaoDB, cityCode []string, start, end time.Time, vendorId []int, size, offset int) (pagedInfo *model.PagedInfo, err error) {
|
||||||
|
sql := `
|
||||||
|
SELECT
|
||||||
|
SQL_CALC_FOUND_ROWS
|
||||||
|
p.name AS city_name,
|
||||||
|
s.id AS store_id,
|
||||||
|
u.name AS user_name,
|
||||||
|
u.mobile,
|
||||||
|
s.brand_id,
|
||||||
|
s.package_setting,
|
||||||
|
COUNT(gs.vendor_order_id) AS order_count,
|
||||||
|
COALESCE(SUM(w.desired_fee), 0) AS total_desired_fee,
|
||||||
|
SUM(ROUND(IF(gs.earning_type = 1, (gs.total_shop_money-gs.earning_price-IFNULL(w.desired_fee,0)), gs.total_shop_money *(gs.order_pay_percentage/2)/100) * (s.jx_brand_fee_factor/10),3)) jx_income,
|
||||||
|
SUM(ROUND(IF(gs.earning_type = 1, (gs.total_shop_money-gs.earning_price-IFNULL(w.desired_fee,0)) , gs.total_shop_money *(gs.order_pay_percentage/2)/100) * (s.market_add_fee_factor/10),3)) market_income,
|
||||||
|
SUM(ROUND(IF(gs.earning_type = 1, gs.earning_price, gs.total_shop_money- (gs.total_shop_money *(gs.order_pay_percentage/2)/100)) -IFNULL(w.desired_fee,0),3)) store_income,
|
||||||
|
COALESCE(SUM(gs.total_shop_money), 0) AS total_shop_money,-- 平台结算
|
||||||
|
SUM(ROUND(IF(gs.earning_type = 1, gs.total_shop_money-gs.earning_price-IFNULL(w.desired_fee,0), gs.total_shop_money- (gs.total_shop_money *(1-(gs.order_pay_percentage/2)/100))) -IFNULL(w.desired_fee,0),3)) platform_income,
|
||||||
|
COALESCE(SUM(ao.refund_money), 0) AS refund_money -- 售后退款
|
||||||
|
FROM goods_order gs
|
||||||
|
LEFT JOIN waybill w ON w.vendor_order_id = gs.vendor_order_id AND w.status IN (100,105)
|
||||||
|
LEFT JOIN store s ON s.id = IF(gs.jx_store_id != 0, gs.jx_store_id, gs.store_id)
|
||||||
|
LEFT JOIN user u ON u.mobile = s.market_man_phone
|
||||||
|
LEFT JOIN place p ON p.code = s.city_code
|
||||||
|
LEFT JOIN afs_order ao ON ao.vendor_order_id = gs.vendor_order_id AND ao.status IN (160, 180)
|
||||||
|
WHERE 1=1
|
||||||
|
`
|
||||||
|
param := []interface{}{}
|
||||||
|
if !utils.IsTimeZero(start) && !utils.IsTimeZero(end) {
|
||||||
|
sql += ` AND gs.order_created_at BETWEEN ? AND ? AND gs.status = 110 `
|
||||||
|
param = append(param, start, end)
|
||||||
|
}
|
||||||
|
if len(vendorId) != 0 {
|
||||||
|
sql += ` AND gs.vendor_id IN (` + GenQuestionMarks(len(vendorId)) + `)`
|
||||||
|
param = append(param, vendorId)
|
||||||
|
}
|
||||||
|
if len(cityCode) != 0 {
|
||||||
|
sql += ` AND s.city_code IN (` + dao.GenQuestionMarks(len(cityCode)) + `)`
|
||||||
|
param = append(param, vendorId)
|
||||||
|
}
|
||||||
|
|
||||||
|
sql += ` AND s.deleted_at = ? `
|
||||||
|
param = append(param, utils.DefaultTimeValue)
|
||||||
|
|
||||||
|
sql += `
|
||||||
|
GROUP BY
|
||||||
|
u.name, u.mobile ,p.name,s.id ORDER BY mobile desc LIMIT ? OFFSET ?
|
||||||
|
`
|
||||||
|
param = append(param, size, offset)
|
||||||
|
|
||||||
|
txDB, _ := Begin(db)
|
||||||
|
defer Commit(db, txDB)
|
||||||
|
var msgList []*model.SettlementByCityCode
|
||||||
|
if err = GetRowsTx(txDB, &msgList, sql, param...); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
if len(msgList) > 0 {
|
||||||
|
for _, v := range msgList {
|
||||||
|
if v.BrandId == 1 || v.BrandId == 38 { // 京西/好菜
|
||||||
|
// 袋子费
|
||||||
|
v.PackagingFee = 40 * v.OrderCount
|
||||||
|
}
|
||||||
|
// 服务费
|
||||||
|
v.PackageSetting = v.PackageSetting * v.OrderCount
|
||||||
|
v.Profit = v.JxIncome + v.MarketIncome - float64(v.PackagingFee) + float64(v.PackageSetting)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pagedInfo = &model.PagedInfo{
|
||||||
|
TotalCount: GetLastTotalRowCount2(db, txDB),
|
||||||
|
Data: msgList,
|
||||||
|
}
|
||||||
|
return pagedInfo, nil
|
||||||
|
}
|
||||||
|
|||||||
52
business/model/settlement_info.go
Normal file
52
business/model/settlement_info.go
Normal file
@@ -0,0 +1,52 @@
|
|||||||
|
package model
|
||||||
|
|
||||||
|
type JxSettlementInfo struct {
|
||||||
|
StoreID int `json:"jx_store_id"` // jx门店ID
|
||||||
|
Name string `json:"name"` // 门店名称
|
||||||
|
BrandId int `json:"brand_id"` // 品牌ID
|
||||||
|
BrandName string `json:"brand_name"` // 品牌名称
|
||||||
|
MtStoreID string `json:"mt_store_id"` // 美团平台ID
|
||||||
|
JdStoreId string `json:"jd_store_id"` // 京东平台ID
|
||||||
|
SgStoreId string `json:"sg_store_id"` // 闪购平台ID
|
||||||
|
CityName string `json:"city_name"` // 市
|
||||||
|
DistrictName string `json:"district_name"` // 市
|
||||||
|
MarketManPhone string `json:"market_man_phone"` // 平台负责人电话
|
||||||
|
MarketManName string `json:"market_man_name"` // 平台负责人名称
|
||||||
|
Operator1Name string `json:"operator1_name"` // 美团负责人
|
||||||
|
Operator2Name string `json:"operator2_name"` // 京东负责人
|
||||||
|
Operator3Name string `json:"operator3_name"` // 闪购负责人
|
||||||
|
JxBrandFeeFactor string `json:"jx_brand_fee_factor"` // 京西品牌费因子
|
||||||
|
MarketAddFeeFactor string `json:"market_add_fee_factor"` // 市场费因子
|
||||||
|
PayPercentage int `json:"pay_percentage"` // 扣点模式,小于50为扣点,其他为报价
|
||||||
|
OrderCount int `json:"order_count"` // 有效订单数
|
||||||
|
TotalShopMoney int `json:"total_shop_money"` // 平台结算金额
|
||||||
|
TotalDesiredFee int `json:"total_desired_fee"` // 总运费
|
||||||
|
RefundMoney int `json:"refund_money"` // 订单售后金额
|
||||||
|
PackageSetting int `json:"package_setting"` // 服务费
|
||||||
|
PackagingFee int `json:"packaging_fee"` // 包装费-每单0.4元
|
||||||
|
StoreInCome float64 `json:"store_income"` // 门店收入
|
||||||
|
PlatformIncome float64 `json:"platform_income"` // 平台收益
|
||||||
|
JxIncome float64 `json:"jx_income"` // 京西收益
|
||||||
|
MarketIncome float64 `json:"market_income"` // 市场收益
|
||||||
|
Profit float64 `json:"-"` // 纯收益
|
||||||
|
}
|
||||||
|
|
||||||
|
// SettlementByCityCode 根据城市统计
|
||||||
|
type SettlementByCityCode struct {
|
||||||
|
CityName string `json:"city_name"` // 市
|
||||||
|
StoreID int `json:"jx_store_id"` // jx门店ID
|
||||||
|
BrandId int `json:"brand_id"` // 品牌ID
|
||||||
|
UserName string `json:"user_name"` // 名称
|
||||||
|
Mobile string `json:"mobile"` // 电话
|
||||||
|
OrderCount int `json:"order_count"` // 有效订单数
|
||||||
|
PackageSetting int `json:"package_setting"` // 服务费
|
||||||
|
PackagingFee int `json:"packaging_fee"` // 包装费-每单0.4元
|
||||||
|
TotalDesiredFee int `json:"total_desired_fee"` // 总运费
|
||||||
|
JxIncome float64 `json:"jx_income"` // 京西收益
|
||||||
|
MarketIncome float64 `json:"market_income"` // 市场收益
|
||||||
|
StoreInCome float64 `json:"store_income"` // 门店收入
|
||||||
|
TotalShopMoney int `json:"total_shop_money"` // 平台结算金额
|
||||||
|
PlatformIncome float64 `json:"platform_income"` // 平台收益
|
||||||
|
RefundMoney int `json:"refund_money"` // 订单售后金额
|
||||||
|
Profit float64 `json:"-"` // 纯收益
|
||||||
|
}
|
||||||
@@ -697,42 +697,41 @@ func (c *PurchaseHandler) SelfDeliverDelivered(order *model.GoodsOrder, userName
|
|||||||
api := getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "")
|
api := getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "")
|
||||||
db := dao.GetDB()
|
db := dao.GetDB()
|
||||||
|
|
||||||
err = api.OrderArrived(utils.Str2Int64(order.VendorOrderID))
|
riderInfo := &utils.RiderInfo{
|
||||||
if err == nil {
|
OrderId: order.VendorOrderID,
|
||||||
riderInfo := &utils.RiderInfo{
|
ThirdCarrierOrderId: order.VendorWaybillID,
|
||||||
OrderId: order.VendorOrderID,
|
CourierName: "",
|
||||||
ThirdCarrierOrderId: order.VendorWaybillID,
|
CourierPhone: "",
|
||||||
CourierName: "",
|
LogisticsProviderCode: "10015", // 商家自建配送
|
||||||
CourierPhone: "",
|
LogisticsStatus: utils.Str2Int(mtwmapi.WaybillStatusDelivered),
|
||||||
LogisticsProviderCode: "10015", // 商家自建配送
|
Latitude: utils.Float64ToStr(jxutils.IntCoordinate2Standard(order.ConsigneeLat)), // 送达即为客户坐标
|
||||||
LogisticsStatus: utils.Str2Int(mtwmapi.WaybillStatusDelivered),
|
Longitude: utils.Float64ToStr(jxutils.IntCoordinate2Standard(order.ConsigneeLng)),
|
||||||
Latitude: utils.Float64ToStr(jxutils.IntCoordinate2Standard(order.ConsigneeLat)), // 送达即为客户坐标
|
}
|
||||||
Longitude: utils.Float64ToStr(jxutils.IntCoordinate2Standard(order.ConsigneeLng)),
|
waybills, _ := dao.GetWaybills(db, order.VendorOrderID, nil)
|
||||||
}
|
if len(waybills) == model.NO {
|
||||||
waybills, _ := dao.GetWaybills(db, order.VendorOrderID, nil)
|
store, _ := dao.GetStoreDetail(db, jxutils.GetSaleStoreIDFromOrder(order), order.VendorID, order.VendorOrgCode)
|
||||||
if len(waybills) == model.NO {
|
riderInfo.CourierName = "老板1"
|
||||||
store, _ := dao.GetStoreDetail(db, jxutils.GetSaleStoreIDFromOrder(order), order.VendorID, order.VendorOrgCode)
|
riderInfo.CourierPhone = store.Tel1
|
||||||
riderInfo.CourierName = "老板1"
|
riderInfo.ThirdCarrierOrderId = order.VendorOrderID
|
||||||
riderInfo.CourierPhone = store.Tel1
|
} else {
|
||||||
riderInfo.ThirdCarrierOrderId = order.VendorOrderID
|
for _, v := range waybills {
|
||||||
} else {
|
if v.Status != model.OrderStatusCanceled && v.Status != model.OrderStatusFinished && v.Status != model.OrderStatusEndEnd {
|
||||||
for _, v := range waybills {
|
riderInfo.CourierName = v.CourierName
|
||||||
if v.Status != model.OrderStatusCanceled && v.Status != model.OrderStatusFinished && v.Status != model.OrderStatusEndEnd {
|
riderInfo.CourierPhone = v.CourierMobile
|
||||||
riderInfo.CourierName = v.CourierName
|
riderInfo.ThirdCarrierOrderId = v.VendorWaybillID
|
||||||
riderInfo.CourierPhone = v.CourierMobile
|
continue
|
||||||
riderInfo.ThirdCarrierOrderId = v.VendorWaybillID
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if riderInfo.CourierName == "" || riderInfo.CourierPhone == "" {
|
}
|
||||||
riderInfo.CourierName = "老板2"
|
if riderInfo.CourierName == "" || riderInfo.CourierPhone == "" {
|
||||||
riderInfo.CourierPhone = "18048531223"
|
riderInfo.CourierName = "老板2"
|
||||||
}
|
riderInfo.CourierPhone = "18048531223"
|
||||||
if riderInfo.ThirdCarrierOrderId == "" {
|
}
|
||||||
riderInfo.ThirdCarrierOrderId = order.VendorOrderID
|
if riderInfo.ThirdCarrierOrderId == "" {
|
||||||
}
|
riderInfo.ThirdCarrierOrderId = order.VendorOrderID
|
||||||
err = c.GetOrderRider(order.VendorOrgCode, order.VendorStoreID, utils.Struct2Map(riderInfo, "", true))
|
}
|
||||||
|
if err = c.GetOrderRider(order.VendorOrgCode, order.VendorStoreID, utils.Struct2Map(riderInfo, "", true)); err == nil {
|
||||||
|
err = api.OrderArrived(utils.Str2Int64(order.VendorOrderID))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return err
|
return err
|
||||||
|
|||||||
@@ -137,6 +137,62 @@ func (c *StoreController) GetStoreFineDesc() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Title 统计门店订单结算以及京西收益,与美团订单对比
|
||||||
|
// @Description 统计门店订单结算以及京西收益,与美团订单对比
|
||||||
|
// @Param token header string true "认证token"
|
||||||
|
// @Param storeIDs query string false "京西门店ID列表[1,2,3],缺省不限制"
|
||||||
|
// @Param vendorIds query string false "京西门店ID列表[1,2,3],缺省不限制"
|
||||||
|
// @Param start query string true "起始时间1970-01-01 00:00:00"
|
||||||
|
// @Param end query string true "结束时间1970-01-01 23:59:59"
|
||||||
|
// @Param size query int true "每页最大数"
|
||||||
|
// @Param offset query int true "跳过数量"
|
||||||
|
// @Success 200 {object} controllers.CallResult
|
||||||
|
// @Failure 200 {object} controllers.CallResult
|
||||||
|
// @router /GetStoreSettlementInfo [get]
|
||||||
|
func (c *StoreController) GetStoreSettlementInfo() {
|
||||||
|
c.callGetStoreSettlementInfo(func(params *tStoreGetStoreSettlementInfoParams) (retVal interface{}, errCode string, err error) {
|
||||||
|
timeList, err := jxutils.BatchStr2Time(params.Start, params.End)
|
||||||
|
if err != nil {
|
||||||
|
return nil, "", err
|
||||||
|
}
|
||||||
|
var storeIDList []int
|
||||||
|
var vendorIdList []int
|
||||||
|
if err = jxutils.Strings2Objs(params.StoreIDs, &storeIDList, params.VendorIds, &vendorIdList); err != nil {
|
||||||
|
return nil, "", err
|
||||||
|
}
|
||||||
|
retVal, err = cms.GetStoreSettlementList(storeIDList, timeList[0], timeList[1], vendorIdList, params.Size, params.Offset)
|
||||||
|
return
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// @Title 根据城市code统计京西收益
|
||||||
|
// @Description 根据城市code统计京西收益
|
||||||
|
// @Param token header string true "认证token"
|
||||||
|
// @Param cityCode query string false "京西门店城市列表["1","2","3"],缺省不限制"
|
||||||
|
// @Param vendorIds query string false "京西门店ID列表[1,2,3],缺省不限制"
|
||||||
|
// @Param start query string true "起始时间1970-01-01 00:00:00"
|
||||||
|
// @Param end query string true "结束时间1970-01-01 23:59:59"
|
||||||
|
// @Param size query int true "每页最大数"
|
||||||
|
// @Param offset query int true "跳过数量"
|
||||||
|
// @Success 200 {object} controllers.CallResult
|
||||||
|
// @Failure 200 {object} controllers.CallResult
|
||||||
|
// @router /GetCitySettlementInfo [get]
|
||||||
|
func (c *StoreController) GetCitySettlementInfo() {
|
||||||
|
c.callGetCitySettlementInfo(func(params *tStoreGetCitySettlementInfoParams) (retVal interface{}, errCode string, err error) {
|
||||||
|
timeList, err := jxutils.BatchStr2Time(params.Start, params.End)
|
||||||
|
if err != nil {
|
||||||
|
return nil, "", err
|
||||||
|
}
|
||||||
|
var cityList []string
|
||||||
|
var vendorIdList []int
|
||||||
|
if err = jxutils.Strings2Objs(params.CityCode, &cityList, params.VendorIds, &vendorIdList); err != nil {
|
||||||
|
return nil, "", err
|
||||||
|
}
|
||||||
|
retVal, err = cms.GetCityCodeSettlementList(cityList, timeList[0], timeList[1], vendorIdList, params.Size, params.Offset)
|
||||||
|
return
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
// @Title 删除京西门店
|
// @Title 删除京西门店
|
||||||
// @Description 删除京西门店
|
// @Description 删除京西门店
|
||||||
// @Param token header string true "认证token"
|
// @Param token header string true "认证token"
|
||||||
|
|||||||
@@ -3201,6 +3201,24 @@ func init() {
|
|||||||
MethodParams: param.Make(),
|
MethodParams: param.Make(),
|
||||||
Filters: nil,
|
Filters: nil,
|
||||||
Params: nil})
|
Params: nil})
|
||||||
|
// 统计门店订单结算以及京西收益,与美团订单对比
|
||||||
|
web.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:StoreController"] = append(web.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:StoreController"],
|
||||||
|
web.ControllerComments{
|
||||||
|
Method: "GetStoreSettlementInfo",
|
||||||
|
Router: `/GetStoreSettlementInfo`,
|
||||||
|
AllowHTTPMethods: []string{"get"},
|
||||||
|
MethodParams: param.Make(),
|
||||||
|
Filters: nil,
|
||||||
|
Params: nil})
|
||||||
|
// 统计城市订单结算以及京西收益,与美团订单对比
|
||||||
|
web.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:StoreController"] = append(web.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:StoreController"],
|
||||||
|
web.ControllerComments{
|
||||||
|
Method: "GetCitySettlementInfo",
|
||||||
|
Router: `/GetCitySettlementInfo`,
|
||||||
|
AllowHTTPMethods: []string{"get"},
|
||||||
|
MethodParams: param.Make(),
|
||||||
|
Filters: nil,
|
||||||
|
Params: nil})
|
||||||
|
|
||||||
web.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:StoreController"] = append(web.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:StoreController"],
|
web.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:StoreController"] = append(web.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:StoreController"],
|
||||||
web.ControllerComments{
|
web.ControllerComments{
|
||||||
|
|||||||
122784
swagger/param_parser.go.txt
122784
swagger/param_parser.go.txt
File diff suppressed because it is too large
Load Diff
@@ -12557,8 +12557,8 @@
|
|||||||
"tags": [
|
"tags": [
|
||||||
"order"
|
"order"
|
||||||
],
|
],
|
||||||
"description": "批量更新店铺开票申请",
|
"description": "查询打印机列表",
|
||||||
"operationId": "OrderController.批量更新店铺开票申请",
|
"operationId": "OrderController.查询打印机列表",
|
||||||
"parameters": [
|
"parameters": [
|
||||||
{
|
{
|
||||||
"in": "header",
|
"in": "header",
|
||||||
@@ -18583,6 +18583,64 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"/store/GetCitySettlementInfo": {
|
||||||
|
"get": {
|
||||||
|
"tags": [
|
||||||
|
"store"
|
||||||
|
],
|
||||||
|
"description": "根据城市code统计京西收益",
|
||||||
|
"operationId": "StoreController.根据城市code统计京西收益",
|
||||||
|
"parameters": [
|
||||||
|
{
|
||||||
|
"in": "query",
|
||||||
|
"name": "cityCode",
|
||||||
|
"description": "京西门店城市列表[1,2,3],缺省不限制",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"in": "query",
|
||||||
|
"name": "vendorIds",
|
||||||
|
"description": "京西门店ID列表[1,2,3],缺省不限制",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"in": "query",
|
||||||
|
"name": "start",
|
||||||
|
"description": "起始时间1970-01-01 00:00:00",
|
||||||
|
"required": true,
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"in": "query",
|
||||||
|
"name": "end",
|
||||||
|
"description": "结束时间1970-01-01 23:59:59",
|
||||||
|
"required": true,
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"in": "query",
|
||||||
|
"name": "size",
|
||||||
|
"description": "每页最大数",
|
||||||
|
"required": true,
|
||||||
|
"type": "integer",
|
||||||
|
"format": "int64"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"in": "query",
|
||||||
|
"name": "offset",
|
||||||
|
"description": "跳过数量",
|
||||||
|
"required": true,
|
||||||
|
"type": "integer",
|
||||||
|
"format": "int64"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"responses": {
|
||||||
|
"200": {
|
||||||
|
"description": "{object} controllers.CallResult"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"/store/GetCorporationInfo": {
|
"/store/GetCorporationInfo": {
|
||||||
"get": {
|
"get": {
|
||||||
"tags": [
|
"tags": [
|
||||||
@@ -19517,6 +19575,64 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"/store/GetStoreSettlementInfo": {
|
||||||
|
"get": {
|
||||||
|
"tags": [
|
||||||
|
"store"
|
||||||
|
],
|
||||||
|
"description": "统计门店订单结算以及京西收益,与美团订单对比",
|
||||||
|
"operationId": "StoreController.统计门店订单结算以及京西收益,与美团订单对比",
|
||||||
|
"parameters": [
|
||||||
|
{
|
||||||
|
"in": "query",
|
||||||
|
"name": "storeIDs",
|
||||||
|
"description": "京西门店ID列表[1,2,3],缺省不限制",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"in": "query",
|
||||||
|
"name": "vendorIds",
|
||||||
|
"description": "京西门店ID列表[1,2,3],缺省不限制",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"in": "query",
|
||||||
|
"name": "start",
|
||||||
|
"description": "起始时间1970-01-01 00:00:00",
|
||||||
|
"required": true,
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"in": "query",
|
||||||
|
"name": "end",
|
||||||
|
"description": "结束时间1970-01-01 23:59:59",
|
||||||
|
"required": true,
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"in": "query",
|
||||||
|
"name": "size",
|
||||||
|
"description": "每页最大数",
|
||||||
|
"required": true,
|
||||||
|
"type": "integer",
|
||||||
|
"format": "int64"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"in": "query",
|
||||||
|
"name": "offset",
|
||||||
|
"description": "跳过数量",
|
||||||
|
"required": true,
|
||||||
|
"type": "integer",
|
||||||
|
"format": "int64"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"responses": {
|
||||||
|
"200": {
|
||||||
|
"description": "{object} controllers.CallResult"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"/store/GetStoreTotalScoreList": {
|
"/store/GetStoreTotalScoreList": {
|
||||||
"post": {
|
"post": {
|
||||||
"tags": [
|
"tags": [
|
||||||
|
|||||||
@@ -8510,8 +8510,8 @@ paths:
|
|||||||
get:
|
get:
|
||||||
tags:
|
tags:
|
||||||
- order
|
- order
|
||||||
description: 批量更新店铺开票申请
|
description: 查询打印机列表
|
||||||
operationId: OrderController.批量更新店铺开票申请
|
operationId: OrderController.查询打印机列表
|
||||||
parameters:
|
parameters:
|
||||||
- in: header
|
- in: header
|
||||||
name: token
|
name: token
|
||||||
@@ -12613,6 +12613,46 @@ paths:
|
|||||||
responses:
|
responses:
|
||||||
"200":
|
"200":
|
||||||
description: '{object} controllers.CallResult'
|
description: '{object} controllers.CallResult'
|
||||||
|
/store/GetCitySettlementInfo:
|
||||||
|
get:
|
||||||
|
tags:
|
||||||
|
- store
|
||||||
|
description: 根据城市code统计京西收益
|
||||||
|
operationId: StoreController.根据城市code统计京西收益
|
||||||
|
parameters:
|
||||||
|
- in: query
|
||||||
|
name: cityCode
|
||||||
|
description: 京西门店城市列表[1,2,3],缺省不限制
|
||||||
|
type: string
|
||||||
|
- in: query
|
||||||
|
name: vendorIds
|
||||||
|
description: 京西门店ID列表[1,2,3],缺省不限制
|
||||||
|
type: string
|
||||||
|
- in: query
|
||||||
|
name: start
|
||||||
|
description: 起始时间1970-01-01 00:00:00
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
- in: query
|
||||||
|
name: end
|
||||||
|
description: 结束时间1970-01-01 23:59:59
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
- in: query
|
||||||
|
name: size
|
||||||
|
description: 每页最大数
|
||||||
|
required: true
|
||||||
|
type: integer
|
||||||
|
format: int64
|
||||||
|
- in: query
|
||||||
|
name: offset
|
||||||
|
description: 跳过数量
|
||||||
|
required: true
|
||||||
|
type: integer
|
||||||
|
format: int64
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: '{object} controllers.CallResult'
|
||||||
/store/GetCorporationInfo:
|
/store/GetCorporationInfo:
|
||||||
get:
|
get:
|
||||||
tags:
|
tags:
|
||||||
@@ -13247,6 +13287,46 @@ paths:
|
|||||||
responses:
|
responses:
|
||||||
"200":
|
"200":
|
||||||
description: '{object} controllers.CallResult'
|
description: '{object} controllers.CallResult'
|
||||||
|
/store/GetStoreSettlementInfo:
|
||||||
|
get:
|
||||||
|
tags:
|
||||||
|
- store
|
||||||
|
description: 统计门店订单结算以及京西收益,与美团订单对比
|
||||||
|
operationId: StoreController.统计门店订单结算以及京西收益,与美团订单对比
|
||||||
|
parameters:
|
||||||
|
- in: query
|
||||||
|
name: storeIDs
|
||||||
|
description: 京西门店ID列表[1,2,3],缺省不限制
|
||||||
|
type: string
|
||||||
|
- in: query
|
||||||
|
name: vendorIds
|
||||||
|
description: 京西门店ID列表[1,2,3],缺省不限制
|
||||||
|
type: string
|
||||||
|
- in: query
|
||||||
|
name: start
|
||||||
|
description: 起始时间1970-01-01 00:00:00
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
- in: query
|
||||||
|
name: end
|
||||||
|
description: 结束时间1970-01-01 23:59:59
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
- in: query
|
||||||
|
name: size
|
||||||
|
description: 每页最大数
|
||||||
|
required: true
|
||||||
|
type: integer
|
||||||
|
format: int64
|
||||||
|
- in: query
|
||||||
|
name: offset
|
||||||
|
description: 跳过数量
|
||||||
|
required: true
|
||||||
|
type: integer
|
||||||
|
format: int64
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: '{object} controllers.CallResult'
|
||||||
/store/GetStoreTotalScoreList:
|
/store/GetStoreTotalScoreList:
|
||||||
post:
|
post:
|
||||||
tags:
|
tags:
|
||||||
|
|||||||
Reference in New Issue
Block a user