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

@@ -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