refactor all service dependency injection

This commit is contained in:
2026-08-10 11:35:48 +08:00
parent 007a7ba38a
commit c883cc52a2
152 changed files with 1030 additions and 223 deletions

View File

@@ -5,8 +5,10 @@ import (
"errors"
"time"
"bsm/full/module/ec/order/internal/impl"
"bsm/full/module/ec/order/internal/models"
pb "bsm/full/module/ec/order/pb"
"git.apinb.com/bsm-sdk/core/errcode"
"git.apinb.com/bsm-sdk/core/printer"
"git.apinb.com/bsm-sdk/core/service"
@@ -22,7 +24,7 @@ func Create(ctx context.Context, in *pb.CartAddRequest) (reply *pb.OrderStatusRe
}
var cart *models.OrderCart
err = models.DBService.Where("cart_identity=? and product_identity=? and spec_id = ? ", in.CartIdentity, in.ProductIdentity, in.SpecId).First(&cart).Error
err = impl.DBService.Where("cart_identity=? and product_identity=? and spec_id = ? ", in.CartIdentity, in.ProductIdentity, in.SpecId).First(&cart).Error
if err != nil {
if !errors.Is(err, gorm.ErrRecordNotFound) {
printer.Error(err.Error())
@@ -41,10 +43,10 @@ func Create(ctx context.Context, in *pb.CartAddRequest) (reply *pb.OrderStatusRe
data.PassportIdentity = auth.Identity
data.Identity = utils.UUID()
if cart.ID == 0 {
err = models.DBService.Create(&data).Error
err = impl.DBService.Create(&data).Error
} else {
data.Number += cart.Number
err = models.DBService.Where("cart_identity=? and product_identity=? and spec_id = ? ", in.CartIdentity, in.ProductIdentity, in.SpecId).Updates(&data).Error
err = impl.DBService.Where("cart_identity=? and product_identity=? and spec_id = ? ", in.CartIdentity, in.ProductIdentity, in.SpecId).Updates(&data).Error
}
if err != nil {

View File

@@ -4,8 +4,10 @@ import (
"context"
"time"
"bsm/full/module/ec/order/internal/impl"
"bsm/full/module/ec/order/internal/models"
pb "bsm/full/module/ec/order/pb"
"git.apinb.com/bsm-sdk/core/service"
)
@@ -17,7 +19,7 @@ func Delete(ctx context.Context, in *pb.CartDelRequest) (reply *pb.OrderStatusRe
return nil, err
}
err = models.DBService.Where("id in ?", in.Id).Delete(&models.OrderCart{}).Error
err = impl.DBService.Where("id in ?", in.Id).Delete(&models.OrderCart{}).Error
if err != nil {
return nil, err
}

View File

@@ -3,8 +3,10 @@ package cart
import (
"context"
"bsm/full/module/ec/order/internal/impl"
"bsm/full/module/ec/order/internal/models"
pb "bsm/full/module/ec/order/pb"
"git.apinb.com/bsm-sdk/core/errcode"
"git.apinb.com/bsm-sdk/core/printer"
"git.apinb.com/bsm-sdk/core/service"
@@ -26,7 +28,7 @@ func Fetch(ctx context.Context, in *pb.CartGetRequest) (reply *pb.CartGetReply,
}
}
// 查询购物车数据
err = models.DBService.Where("cart_identity=? or passport_identity=?", in.GetCarIdentity(), auth.Identity).Find(&cart).Error
err = impl.DBService.Where("cart_identity=? or passport_identity=?", in.GetCarIdentity(), auth.Identity).Find(&cart).Error
if err != nil {
printer.Error(err.Error())
@@ -35,7 +37,7 @@ func Fetch(ctx context.Context, in *pb.CartGetRequest) (reply *pb.CartGetReply,
for _, item := range cart {
product := models.Product{}
err := models.DBService.Raw(`
err := impl.DBService.Raw(`
SELECT
p.id, p.identity, p.title, p.cover_image, p.args, p.cost_price,
( SELECT MIN(mps.price)

View File

@@ -4,8 +4,9 @@ import (
"context"
"time"
"bsm/full/module/ec/order/internal/models"
"bsm/full/module/ec/order/internal/impl"
pb "bsm/full/module/ec/order/pb"
"git.apinb.com/bsm-sdk/core/errcode"
"git.apinb.com/bsm-sdk/core/printer"
"git.apinb.com/bsm-sdk/core/service"
@@ -20,7 +21,7 @@ func Modify(ctx context.Context, in *pb.CartSetRequest) (reply *pb.OrderStatusRe
return nil, err
}
if len(in.GetUpdates()) > 0 {
err = models.DBService.Transaction(func(tx *gorm.DB) error {
err = impl.DBService.Transaction(func(tx *gorm.DB) error {
for _, update := range in.Updates {
err := tx.Table("order_cart").Where("id = ?", update.Id).Update("number", update.Number).Error
if err != nil {
@@ -36,7 +37,7 @@ func Modify(ctx context.Context, in *pb.CartSetRequest) (reply *pb.OrderStatusRe
return nil, errcode.ErrInvalidArgument
}
err = models.DBService.Table("order_cart").Where("id = ?", in.Id).Update("number", in.Number).Error
err = impl.DBService.Table("order_cart").Where("id = ?", in.Id).Update("number", in.Number).Error
if err != nil {
printer.Error(err.Error())
return nil, errcode.ErrDB

View File

@@ -1,6 +1,7 @@
package common
import (
"bsm/full/module/ec/order/internal/impl"
"bsm/full/module/ec/order/internal/models"
pb "bsm/full/module/ec/order/pb"
)
@@ -11,7 +12,7 @@ func GetOrderSummaryByIdentity(identity string) (*pb.OrderSummaryItem, error) {
err error
summary = new(models.OrderSummary)
)
err = models.DBService.Preload("OrderDetails").Where("identity = ?", identity).First(&summary).Error
err = impl.DBService.Preload("OrderDetails").Where("identity = ?", identity).First(&summary).Error
if err != nil {
return nil, err
}
@@ -24,7 +25,7 @@ func GetOrderSummaryByNo(no string) (*pb.OrderSummaryItem, error) {
err error
summary = new(models.OrderSummary)
)
err = models.DBService.Preload("OrderDetails").Where("order_no = ?", no).First(&summary).Error
err = impl.DBService.Preload("OrderDetails").Where("order_no = ?", no).First(&summary).Error
if err != nil {
return nil, err
}

View File

@@ -4,6 +4,7 @@ import (
"bsm/full/module/ec/order/internal/models"
order "bsm/full/module/ec/order/pb"
pb "bsm/full/module/ec/order/pb"
"git.apinb.com/bsm-sdk/core/vars"
)

View File

@@ -3,8 +3,10 @@ package coupon
import (
"context"
"bsm/full/module/ec/order/internal/impl"
"bsm/full/module/ec/order/internal/models"
pb "bsm/full/module/ec/order/pb"
"git.apinb.com/bsm-sdk/core/errcode"
"git.apinb.com/bsm-sdk/core/printer"
"git.apinb.com/bsm-sdk/core/service"
@@ -23,7 +25,7 @@ func ByStatus(ctx context.Context, in *pb.Status) (reply *pb.CouponListReply, er
result = make([]*pb.CouponItem, 0)
)
err = models.DBService.Where("passport_id=?", auth.ID).Find(&coupon).Error
err = impl.DBService.Where("passport_id=?", auth.ID).Find(&coupon).Error
if err != nil {
printer.Error(err.Error())
return nil, errcode.ErrDB

View File

@@ -4,8 +4,10 @@ import (
"context"
"time"
"bsm/full/module/ec/order/internal/impl"
"bsm/full/module/ec/order/internal/models"
pb "bsm/full/module/ec/order/pb"
"git.apinb.com/bsm-sdk/core/errcode"
"git.apinb.com/bsm-sdk/core/printer"
"gorm.io/gorm"
@@ -19,7 +21,7 @@ func OrderApprove(ctx context.Context, in *pb.OrderIdentRequest) (reply *pb.Orde
}
// 获取当前订单信息。
var order models.OrderSummary
if err := models.DBService.Preload("OrderDetails").Where("identity=?", in.Identity).First(&order).Error; err != nil {
if err := impl.DBService.Preload("OrderDetails").Where("identity=?", in.Identity).First(&order).Error; err != nil {
printer.Error(err.Error())
return nil, errcode.ErrDB
}
@@ -29,7 +31,7 @@ func OrderApprove(ctx context.Context, in *pb.OrderIdentRequest) (reply *pb.Orde
// 申请退款
case 1:
if in.GetApprove() == 4 {
err = models.DBService.Model(&models.OrderSummary{}).Where("identity=?", in.Identity).
err = impl.DBService.Model(&models.OrderSummary{}).Where("identity=?", in.Identity).
Updates(map[string]any{
"approve": in.GetApprove(),
"status": 7,
@@ -42,7 +44,7 @@ func OrderApprove(ctx context.Context, in *pb.OrderIdentRequest) (reply *pb.Orde
// 申请退货
case 2:
if in.GetApprove() == 4 {
models.DBService.Transaction(func(tx *gorm.DB) error {
impl.DBService.Transaction(func(tx *gorm.DB) error {
err = tx.Model(&models.OrderSummary{}).Where("identity=?", in.Identity).
Updates(map[string]any{
"approve": in.GetApprove(),
@@ -68,7 +70,7 @@ func OrderApprove(ctx context.Context, in *pb.OrderIdentRequest) (reply *pb.Orde
case 3:
if in.GetApprove() == 4 {
err = models.DBService.Model(&models.OrderSummary{}).Where("identity=?", in.Identity).
err = impl.DBService.Model(&models.OrderSummary{}).Where("identity=?", in.Identity).
Updates(map[string]any{
"approve": in.GetApprove(),
"status": 6,
@@ -81,7 +83,7 @@ func OrderApprove(ctx context.Context, in *pb.OrderIdentRequest) (reply *pb.Orde
}
// 审批未通过
if in.GetApprove() == -2 {
if err := models.DBService.Model(&models.OrderSummary{}).Where("identity=?", in.Identity).
if err := impl.DBService.Model(&models.OrderSummary{}).Where("identity=?", in.Identity).
Update("approve", in.GetApprove()).Error; err != nil {
printer.Error(err.Error())
return nil, errcode.ErrDB

View File

@@ -4,8 +4,10 @@ import (
"context"
"time"
"bsm/full/module/ec/order/internal/impl"
"bsm/full/module/ec/order/internal/models"
pb "bsm/full/module/ec/order/pb"
"git.apinb.com/bsm-sdk/core/errcode"
"git.apinb.com/bsm-sdk/core/printer"
"git.apinb.com/bsm-sdk/core/service"
@@ -32,7 +34,7 @@ func OrderCancel(ctx context.Context, in *pb.OrderIdentRequest) (reply *pb.Order
if in.GetIdentity() == "" {
return nil, errcode.ErrInvalidArgument
}
err = models.DBService.Model(&models.OrderSummary{}).Where("identity=?", in.Identity).Update("status", -1).Error
err = impl.DBService.Model(&models.OrderSummary{}).Where("identity=?", in.Identity).Update("status", -1).Error
if err != nil {
printer.Error(err.Error())
return nil, errcode.ErrDB

View File

@@ -5,9 +5,11 @@ import (
"errors"
"time"
"bsm/full/module/ec/order/internal/impl"
"bsm/full/module/ec/order/internal/logic/common"
"bsm/full/module/ec/order/internal/models"
pb "bsm/full/module/ec/order/pb"
"git.apinb.com/bsm-sdk/core/errcode"
"git.apinb.com/bsm-sdk/core/printer"
"git.apinb.com/bsm-sdk/core/service"
@@ -52,7 +54,7 @@ func OrderCreate(ctx context.Context, in *pb.CreateOrderRequest) (reply *pb.Orde
// 查询产品信息以确保其存在且状态为启用。
for _, specs := range in.Spec {
product := map[string]any{}
err = models.DBService.Table("mall_product").Take(&product, "identity=?", specs.ProductIdentity).Error
err = impl.DBService.Table("mall_product").Take(&product, "identity=?", specs.ProductIdentity).Error
if err != nil {
printer.Error(err.Error())
return nil, errcode.ErrDB
@@ -62,7 +64,7 @@ func OrderCreate(ctx context.Context, in *pb.CreateOrderRequest) (reply *pb.Orde
}
// 查询产品规格信息。
spec := map[string]any{}
err = models.DBService.Table("mall_product_spec").Take(&spec, "product_identity=? ", specs.ProductIdentity).Error
err = impl.DBService.Table("mall_product_spec").Take(&spec, "product_identity=? ", specs.ProductIdentity).Error
if err != nil {
printer.Error(err.Error())
return nil, errcode.ErrDB
@@ -96,7 +98,7 @@ func OrderCreate(ctx context.Context, in *pb.CreateOrderRequest) (reply *pb.Orde
// 查询地址信息以确保其存在。
address := map[string]any{}
err = models.DBService.Table("address_library").Take(&address, "identity=?", in.AddressIdentity).Error
err = impl.DBService.Table("address_library").Take(&address, "identity=?", in.AddressIdentity).Error
if err != nil {
printer.Error(err.Error())
return nil, errcode.ErrDB
@@ -126,7 +128,7 @@ func OrderCreate(ctx context.Context, in *pb.CreateOrderRequest) (reply *pb.Orde
summary.Status = 1
// 将订单摘要和订单详情记录到数据库。
err = models.DBService.Transaction(func(tx *gorm.DB) error {
err = impl.DBService.Transaction(func(tx *gorm.DB) error {
// 创建订单摘要。
if err := tx.Create(summary).Error; err != nil {
printer.Error(err.Error())

View File

@@ -4,9 +4,11 @@ import (
"context"
"errors"
"bsm/full/module/ec/order/internal/impl"
"bsm/full/module/ec/order/internal/logic/common"
"bsm/full/module/ec/order/internal/models"
pb "bsm/full/module/ec/order/pb"
"git.apinb.com/bsm-sdk/core/errcode"
"git.apinb.com/bsm-sdk/core/printer"
"git.apinb.com/bsm-sdk/core/service"
@@ -41,7 +43,7 @@ func OrderGet(ctx context.Context, in *pb.OrderIdentRequest) (reply *pb.OrderGet
storeIdentity = ownerStore["store_identity"].(string)
}
order := &models.OrderSummary{}
err = models.DBService.Model(&models.OrderSummary{}).Where("store_identity = ? and identity=?", storeIdentity, in.Identity).Preload("OrderDetails").Find(&order).Error
err = impl.DBService.Model(&models.OrderSummary{}).Where("store_identity = ? and identity=?", storeIdentity, in.Identity).Preload("OrderDetails").Find(&order).Error
if err != nil {
if errors.Is(err, gorm.ErrRecordNotFound) {
return nil, errcode.ErrRecordNotFound

View File

@@ -4,9 +4,11 @@ import (
"context"
"errors"
"bsm/full/module/ec/order/internal/impl"
"bsm/full/module/ec/order/internal/logic/common"
"bsm/full/module/ec/order/internal/models"
pb "bsm/full/module/ec/order/pb"
"git.apinb.com/bsm-sdk/core/errcode"
"git.apinb.com/bsm-sdk/core/printer"
"git.apinb.com/bsm-sdk/core/service"
@@ -55,7 +57,7 @@ func OrderListByStore(ctx context.Context, in *pb.OrderListByStoreRequest) (repl
}
orderList := make([]*models.OrderSummary, 0)
tx := models.DBService.Model(&models.OrderSummary{}).Where("store_identity = ?", storeIdentity).Where("partner_id = ?", auth.ID).Preload("OrderDetails")
tx := impl.DBService.Model(&models.OrderSummary{}).Where("store_identity = ?", storeIdentity).Where("partner_id = ?", auth.ID).Preload("OrderDetails")
// 根据状态查询订单
if in.GetStatus() != 0 {
tx = tx.Where("status = ?", in.GetStatus())

View File

@@ -5,6 +5,7 @@ import (
"time"
pb "bsm/full/module/ec/order/pb"
"git.apinb.com/bsm-sdk/core/errcode"
"git.apinb.com/bsm-sdk/core/service"
)

View File

@@ -5,8 +5,10 @@ import (
"errors"
"time"
"bsm/full/module/ec/order/internal/impl"
"bsm/full/module/ec/order/internal/models"
pb "bsm/full/module/ec/order/pb"
"git.apinb.com/bsm-sdk/core/errcode"
"git.apinb.com/bsm-sdk/core/printer"
"git.apinb.com/bsm-sdk/core/service"
@@ -29,7 +31,7 @@ func OrderReturnable(ctx context.Context, in *pb.OrderIdentRequest) (reply *pb.O
// 获取当前订单信息
order := models.OrderSummary{}
if err := models.DBService.Preload("OrderDetails").Where("identity=?", in.Identity).First(&order).Error; err != nil {
if err := impl.DBService.Preload("OrderDetails").Where("identity=?", in.Identity).First(&order).Error; err != nil {
printer.Error(err.Error())
return nil, errcode.ErrDB
}
@@ -44,7 +46,7 @@ func OrderReturnable(ctx context.Context, in *pb.OrderIdentRequest) (reply *pb.O
Approve: int8(in.GetApprove()),
Reason: in.GetReason(),
}
err = models.DBService.Model(&models.OrderSummary{}).Where("identity = ?", in.Identity).Updates(&summaryModel).Error
err = impl.DBService.Model(&models.OrderSummary{}).Where("identity = ?", in.Identity).Updates(&summaryModel).Error
if err != nil {
printer.Error(err.Error())
return nil, errcode.ErrDB

View File

@@ -4,8 +4,10 @@ import (
"context"
"time"
"bsm/full/module/ec/order/internal/impl"
"bsm/full/module/ec/order/internal/models"
pb "bsm/full/module/ec/order/pb"
"git.apinb.com/bsm-sdk/core/errcode"
"git.apinb.com/bsm-sdk/core/printer"
"git.apinb.com/bsm-sdk/core/service"
@@ -23,7 +25,7 @@ func Cancel(ctx context.Context, in *pb.CancelRequest) (reply *pb.OrderStatusRep
summary = new(models.OrderSummary)
)
err = models.DBService.Where("order_no = ?", in.OrderNo).First(&summary).Error
err = impl.DBService.Where("order_no = ?", in.OrderNo).First(&summary).Error
if err != nil {
printer.Error(err.Error())
return nil, errcode.ErrDB
@@ -36,14 +38,14 @@ func Cancel(ctx context.Context, in *pb.CancelRequest) (reply *pb.OrderStatusRep
}
values.Status = -1
err := models.DBService.Where("order_no = ?", in.OrderNo).Updates(values).Error
err := impl.DBService.Where("order_no = ?", in.OrderNo).Updates(values).Error
if err != nil {
printer.Error(err.Error())
return nil, errcode.ErrDB
}
err = models.DBService.Model(&models.OrderCoupon{}).Where("identity=?", summary.CouponIdentity).Update("status", 2).Error
err = impl.DBService.Model(&models.OrderCoupon{}).Where("identity=?", summary.CouponIdentity).Update("status", 2).Error
if err != nil {
printer.Error(err.Error())
return nil, errcode.ErrDB

View File

@@ -4,8 +4,10 @@ import (
"context"
"time"
"bsm/full/module/ec/order/internal/impl"
"bsm/full/module/ec/order/internal/models"
pb "bsm/full/module/ec/order/pb"
"git.apinb.com/bsm-sdk/core/errcode"
"git.apinb.com/bsm-sdk/core/printer"
"git.apinb.com/bsm-sdk/core/service"
@@ -21,7 +23,7 @@ func Check(ctx context.Context, in *pb.Empty) (reply *pb.OrderStatusReply, err e
var (
summary = new(models.OrderSummary)
)
err = models.DBService.Where("passport_id = ?", auth.ID).First(&summary).Error
err = impl.DBService.Where("passport_id = ?", auth.ID).First(&summary).Error
if err != nil {
printer.Error(err.Error())
return nil, errcode.ErrDB

View File

@@ -3,8 +3,10 @@ package summary
import (
"context"
"bsm/full/module/ec/order/internal/impl"
"bsm/full/module/ec/order/internal/models"
pb "bsm/full/module/ec/order/pb"
"git.apinb.com/bsm-sdk/core/errcode"
"git.apinb.com/bsm-sdk/core/printer"
"git.apinb.com/bsm-sdk/core/service"
@@ -25,7 +27,7 @@ func Confirm(ctx context.Context, in *pb.ConfirmRequest) (reply *pb.ConfirmReply
coupon = new(models.OrderCoupon)
)
err = models.DBService.Where("order_no = ?", in.OrderNo).First(&summary).Error
err = impl.DBService.Where("order_no = ?", in.OrderNo).First(&summary).Error
if err != nil {
printer.Error(err.Error())
return nil, errcode.ErrDB
@@ -33,7 +35,7 @@ func Confirm(ctx context.Context, in *pb.ConfirmRequest) (reply *pb.ConfirmReply
if in.AddressIdentity != "" {
/*
err = models.DBService.Where("id=?", in.AddressId).First(&address).Error
err = impl.DBService.Where("id=?", in.AddressId).First(&address).Error
if err == nil {
summary.Address = address.Detail
summary.County = address.Country
@@ -51,10 +53,10 @@ func Confirm(ctx context.Context, in *pb.ConfirmRequest) (reply *pb.ConfirmReply
}
if in.CouponIdentity != "" {
err = models.DBService.Where("identity=?", in.CouponIdentity).First(&coupon).Error
err = impl.DBService.Where("identity=?", in.CouponIdentity).First(&coupon).Error
if err == nil {
if coupon.Status == 2 {
models.DBService.Model(&models.OrderCoupon{}).Where("identity=?", in.CouponIdentity).Update("status", 3)
impl.DBService.Model(&models.OrderCoupon{}).Where("identity=?", in.CouponIdentity).Update("status", 3)
couponAmount = coupon.Amount
} else {
printer.Error(err.Error())
@@ -72,7 +74,7 @@ func Confirm(ctx context.Context, in *pb.ConfirmRequest) (reply *pb.ConfirmReply
summary.Status = 1
err = models.DBService.Where("order_no = ?", in.OrderNo).Updates(summary).Error
err = impl.DBService.Where("order_no = ?", in.OrderNo).Updates(summary).Error
if err != nil {
printer.Error(err.Error())
return nil, errcode.ErrDB

View File

@@ -5,6 +5,7 @@ import (
"bsm/full/module/ec/order/internal/logic/common"
pb "bsm/full/module/ec/order/pb"
"git.apinb.com/bsm-sdk/core/errcode"
"git.apinb.com/bsm-sdk/core/printer"
"git.apinb.com/bsm-sdk/core/service"

View File

@@ -4,9 +4,11 @@ import (
"context"
"errors"
"bsm/full/module/ec/order/internal/impl"
"bsm/full/module/ec/order/internal/logic/common"
"bsm/full/module/ec/order/internal/models"
pb "bsm/full/module/ec/order/pb"
"git.apinb.com/bsm-sdk/core/errcode"
"git.apinb.com/bsm-sdk/core/printer"
"git.apinb.com/bsm-sdk/core/service"
@@ -43,7 +45,7 @@ func List(ctx context.Context, in *pb.SummaryListRequest) (reply *pb.SummaryList
}
orderList := make([]*models.OrderSummary, 0)
tx := models.DBService.Model(&models.OrderSummary{}).Preload("OrderDetails").Where("passport_identity = ?", auth.Identity)
tx := impl.DBService.Model(&models.OrderSummary{}).Preload("OrderDetails").Where("passport_identity = ?", auth.Identity)
if payType != 0 {
tx = tx.Where("pay_type = ?", payType)

View File

@@ -6,9 +6,11 @@ import (
"strings"
"time"
"bsm/full/module/ec/order/internal/impl"
"bsm/full/module/ec/order/internal/logic/common"
"bsm/full/module/ec/order/internal/models"
pb "bsm/full/module/ec/order/pb"
"git.apinb.com/bsm-sdk/core/errcode"
"git.apinb.com/bsm-sdk/core/printer"
"git.apinb.com/bsm-sdk/core/service"
@@ -30,7 +32,7 @@ func QuickCreateByProduct(ctx context.Context, in *pb.QuickCreateByProductReques
// 查询商店信息以确保其存在且状态为启用。
store := map[string]any{}
err = models.DBService.Table("mall_store").Take(&store, "identity=?", in.StoreIdentity).Error
err = impl.DBService.Table("mall_store").Take(&store, "identity=?", in.StoreIdentity).Error
if err != nil {
printer.Error(err.Error())
if errors.Is(err, models.ErrNotFound) {
@@ -46,9 +48,9 @@ func QuickCreateByProduct(ctx context.Context, in *pb.QuickCreateByProductReques
product := map[string]any{}
var pi string = strings.ToLower(in.ProductIdentity)
if pi == "gas_by_kg" || pi == "gas_by_bottle" {
err = models.DBService.Table("mall_product").Take(&product, "store_identity=? and serial_id=?", in.StoreIdentity, pi).Error
err = impl.DBService.Table("mall_product").Take(&product, "store_identity=? and serial_id=?", in.StoreIdentity, pi).Error
} else {
err = models.DBService.Table("mall_product").Take(&product, "identity=?", in.ProductIdentity).Error
err = impl.DBService.Table("mall_product").Take(&product, "identity=?", in.ProductIdentity).Error
}
if err != nil {
printer.Error(err.Error())
@@ -63,7 +65,7 @@ func QuickCreateByProduct(ctx context.Context, in *pb.QuickCreateByProductReques
// 查询产品规格信息
spec := map[string]any{}
err = models.DBService.Table("mall_product_spec").Take(&spec, "product_identity=?", in.ProductIdentity).Error
err = impl.DBService.Table("mall_product_spec").Take(&spec, "product_identity=?", in.ProductIdentity).Error
if err != nil {
printer.Error(err.Error())
if errors.Is(err, models.ErrNotFound) {
@@ -74,7 +76,7 @@ func QuickCreateByProduct(ctx context.Context, in *pb.QuickCreateByProductReques
// 查询地址信息以确保其存在。
address := map[string]any{}
err = models.DBService.Table("address_library").Take(&address, "identity=?", in.AddressIdentity).Error
err = impl.DBService.Table("address_library").Take(&address, "identity=?", in.AddressIdentity).Error
if err != nil {
printer.Error(err.Error())
if errors.Is(err, models.ErrNotFound) {
@@ -85,7 +87,7 @@ func QuickCreateByProduct(ctx context.Context, in *pb.QuickCreateByProductReques
// // 查询配送员信息
// member := map[string]any{}
// err = models.DBService.Table("delivery_member").Take(&member, "identity=?", in.MemberIdentity).Error
// err = impl.DBService.Table("delivery_member").Take(&member, "identity=?", in.MemberIdentity).Error
// if err != nil {
// printer.Error(err.Error())
// if errors.Is(err, models.ErrNotFound) {
@@ -144,13 +146,13 @@ func QuickCreateByProduct(ctx context.Context, in *pb.QuickCreateByProductReques
}
// 将订单摘要和订单详情记录到数据库。
err = models.DBService.Create(summary).Error
err = impl.DBService.Create(summary).Error
if err != nil {
printer.Error(err.Error())
return nil, errcode.ErrDB
}
err = models.DBService.Create(details).Error
err = impl.DBService.Create(details).Error
if err != nil {
printer.Error(err.Error())
return nil, errcode.ErrDB

View File

@@ -5,8 +5,10 @@ import (
"errors"
"time"
"bsm/full/module/ec/order/internal/impl"
"bsm/full/module/ec/order/internal/models"
pb "bsm/full/module/ec/order/pb"
"git.apinb.com/bsm-sdk/core/errcode"
"git.apinb.com/bsm-sdk/core/printer"
"git.apinb.com/bsm-sdk/core/service"
@@ -20,7 +22,7 @@ func SimulatePay(ctx context.Context, in *pb.SimulatePayRequest) (reply *pb.Orde
return nil, err
}
err = models.DBService.Model(&models.OrderSummary{}).Where("identity in ?", in.Identity).Updates(models.OrderSummary{Status: 2, PayTime: time.Now(), PayType: 4, PayRemark: "支付备注", PayTradeNo: "Pay12371937812897", PayAmount: 10000000}).Error
err = impl.DBService.Model(&models.OrderSummary{}).Where("identity in ?", in.Identity).Updates(models.OrderSummary{Status: 2, PayTime: time.Now(), PayType: 4, PayRemark: "支付备注", PayTradeNo: "Pay12371937812897", PayAmount: 10000000}).Error
if err != nil {
printer.Error(err.Error())
if errors.Is(err, models.ErrNotFound) {

View File

@@ -5,8 +5,10 @@ import (
"errors"
"time"
"bsm/full/module/ec/order/internal/impl"
"bsm/full/module/ec/order/internal/models"
pb "bsm/full/module/ec/order/pb"
"git.apinb.com/bsm-sdk/core/errcode"
"git.apinb.com/bsm-sdk/core/printer"
"git.apinb.com/bsm-sdk/core/service"
@@ -24,7 +26,7 @@ func SimulateReceiving(ctx context.Context, in *pb.OrderIdentRequest) (reply *pb
return nil, errcode.ErrInvalidArgument
}
err = models.DBService.Model(&models.OrderSummary{}).Where("identity = ?", in.Identity).Update("status", 4).Error
err = impl.DBService.Model(&models.OrderSummary{}).Where("identity = ?", in.Identity).Update("status", 4).Error
if err != nil {
printer.Error(err.Error())
if errors.Is(err, models.ErrNotFound) {

View File

@@ -5,8 +5,10 @@ import (
"errors"
"time"
"bsm/full/module/ec/order/internal/impl"
"bsm/full/module/ec/order/internal/models"
pb "bsm/full/module/ec/order/pb"
"git.apinb.com/bsm-sdk/core/errcode"
"git.apinb.com/bsm-sdk/core/printer"
"git.apinb.com/bsm-sdk/core/service"
@@ -24,7 +26,7 @@ func SimulateShipments(ctx context.Context, in *pb.SimulateShipmentsRequest) (re
return nil, errcode.ErrInvalidArgument
}
err = models.DBService.Where("identity = ?", in.Identity).Updates(&models.OrderSummary{Status: 3, DeliveryIdentity: in.MemberIdentity}).Error
err = impl.DBService.Where("identity = ?", in.Identity).Updates(&models.OrderSummary{Status: 3, DeliveryIdentity: in.MemberIdentity}).Error
if err != nil {
printer.Error(err.Error())
if errors.Is(err, models.ErrNotFound) {

View File

@@ -7,9 +7,11 @@ import (
"strings"
"time"
"bsm/full/module/ec/order/internal/impl"
"bsm/full/module/ec/order/internal/logic/common"
"bsm/full/module/ec/order/internal/models"
pb "bsm/full/module/ec/order/pb"
"git.apinb.com/bsm-sdk/core/errcode"
"git.apinb.com/bsm-sdk/core/printer"
"git.apinb.com/bsm-sdk/core/service"
@@ -40,7 +42,7 @@ func Submit(ctx context.Context, in *pb.SubmitRequest) (reply *pb.OrderStatusRep
)
// 获取购物车内数据信息
err = models.DBService.Where("passport_identity = ?", auth.Identity).Find(&cart).Error
err = impl.DBService.Where("passport_identity = ?", auth.Identity).Find(&cart).Error
if err != nil {
printer.Error(err.Error())
if errors.Is(err, models.ErrNotFound) {
@@ -63,7 +65,7 @@ func Submit(ctx context.Context, in *pb.SubmitRequest) (reply *pb.OrderStatusRep
ZipCode: in.Address.ZipCode,
}
} else {
err = models.DBService.Table("address_library").Where("identity = ?", in.AddressIdentity).Find(&address).Error
err = impl.DBService.Table("address_library").Where("identity = ?", in.AddressIdentity).Find(&address).Error
if err != nil {
printer.Error(err.Error())
if errors.Is(err, models.ErrNotFound) {
@@ -77,7 +79,7 @@ func Submit(ctx context.Context, in *pb.SubmitRequest) (reply *pb.OrderStatusRep
storeGroups := make(map[string][]*models.OrderCart)
for k, item := range cart {
product := models.Product{}
err = models.DBService.Select("store_identity").Table("mall_product").Where("id = ?", item.ProductID).First(&product).Error
err = impl.DBService.Select("store_identity").Table("mall_product").Where("id = ?", item.ProductID).First(&product).Error
if err != nil {
printer.Error(err.Error())
if errors.Is(err, models.ErrNotFound) {
@@ -107,7 +109,7 @@ func Submit(ctx context.Context, in *pb.SubmitRequest) (reply *pb.OrderStatusRep
spec := models.Spec{}
// 获取产品信息
err = models.DBService.Select("title,cover_image,cost_price,supply_id,args,gas_types").Table("mall_product").
err = impl.DBService.Select("title,cover_image,cost_price,supply_id,args,gas_types").Table("mall_product").
Where("id = ?", item.ProductID).First(&product).Error
if err != nil {
printer.Error(err.Error())
@@ -118,7 +120,7 @@ func Submit(ctx context.Context, in *pb.SubmitRequest) (reply *pb.OrderStatusRep
}
// 获取规格信息
err := models.DBService.Select("title,serial_number,price").Table("mall_product_spec").
err := impl.DBService.Select("title,serial_number,price").Table("mall_product_spec").
Where("id = ?", item.SpecID).First(&spec).Error
if err != nil {
printer.Error(err.Error())
@@ -182,7 +184,7 @@ func Submit(ctx context.Context, in *pb.SubmitRequest) (reply *pb.OrderStatusRep
keys = append(keys, StoreIdentity)
}
err = models.DBService.Transaction(func(tx *gorm.DB) error {
err = impl.DBService.Transaction(func(tx *gorm.DB) error {
// 1. 创建订单摘要
if err := tx.Create(summary).Error; err != nil {
printer.Error(err.Error())