正在显示
8 个修改的文件
包含
65 行增加
和
67 行删除
| @@ -2,42 +2,16 @@ package command | @@ -2,42 +2,16 @@ package command | ||
| 2 | 2 | ||
| 3 | import ( | 3 | import ( |
| 4 | "fmt" | 4 | "fmt" |
| 5 | - "time" | ||
| 6 | - | ||
| 7 | "github.com/beego/beego/v2/core/validation" | 5 | "github.com/beego/beego/v2/core/validation" |
| 8 | ) | 6 | ) |
| 9 | 7 | ||
| 10 | type CancelOrderCommand struct { | 8 | type CancelOrderCommand struct { |
| 11 | // 订单ID | 9 | // 订单ID |
| 12 | OrderId int64 `json:"orderId" valid:"Required"` | 10 | OrderId int64 `json:"orderId" valid:"Required"` |
| 13 | - // 订单编号 | ||
| 14 | - OrderNo string `json:"orderNo" valid:"Required"` | ||
| 15 | - // 公司id | ||
| 16 | - CompanyId int64 `json:"companyId" valid:"Required"` | ||
| 17 | - // 是否是公司负责人 | ||
| 18 | - IsPrincipal bool `json:"isPrincipal" valid:"Required"` | ||
| 19 | - // 统一用户id | ||
| 20 | - Uid int64 `json:"uid" valid:"Required"` | ||
| 21 | - // 用户账号 | ||
| 22 | - UserAccount string `json:"userAccount" valid:"Required"` | ||
| 23 | - // 用户头像URL | ||
| 24 | - UserAvatarUrl string `json:"userAvatarUrl" valid:"Required"` | ||
| 25 | - // 用户名称 | ||
| 26 | - UserName string `json:"userName" valid:"Required"` | ||
| 27 | - // 邮件地址 | ||
| 28 | - Email string `json:"email" valid:"Required"` | ||
| 29 | - // 性别 | ||
| 30 | - Gender int `json:"gender" valid:"Required"` | ||
| 31 | - // 入职时间 | ||
| 32 | - EntryTime time.Time `json:"entryTime" valid:"Required"` | ||
| 33 | - // 分机 | ||
| 34 | - Extension string `json:"extension" valid:"Required"` | ||
| 35 | - // 工作地 | ||
| 36 | - Workplace string `json:"workplace" valid:"Required"` | ||
| 37 | - // 私人电话 | ||
| 38 | - PrivateNumber string `json:"privateNumber" valid:"Required"` | ||
| 39 | - // 工号 | ||
| 40 | - JobNumber string `json:"jobNumber" valid:"Required"` | 11 | + // 货品Id |
| 12 | + //GoodId int64 `json:"goodId"` | ||
| 13 | + // 取消理由 | ||
| 14 | + Reason string `json:"reason"` | ||
| 41 | } | 15 | } |
| 42 | 16 | ||
| 43 | func (cancelOrderCommand *CancelOrderCommand) Valid(validation *validation.Validation) { | 17 | func (cancelOrderCommand *CancelOrderCommand) Valid(validation *validation.Validation) { |
| @@ -2,40 +2,14 @@ package command | @@ -2,40 +2,14 @@ package command | ||
| 2 | 2 | ||
| 3 | import ( | 3 | import ( |
| 4 | "fmt" | 4 | "fmt" |
| 5 | - "time" | ||
| 6 | - | ||
| 7 | "github.com/beego/beego/v2/core/validation" | 5 | "github.com/beego/beego/v2/core/validation" |
| 8 | ) | 6 | ) |
| 9 | 7 | ||
| 10 | type ReceiveGoodsCommand struct { | 8 | type ReceiveGoodsCommand struct { |
| 11 | // 订单号 | 9 | // 订单号 |
| 12 | - OrderNo string `json:"orderNo" valid:"Required"` | ||
| 13 | - // 是否是公司负责人 | ||
| 14 | - IsPrincipal bool `json:"isPrincipal" valid:"Required"` | ||
| 15 | - // 统一用户id | ||
| 16 | - Uid int64 `json:"uid" valid:"Required"` | ||
| 17 | - // 用户账号 | ||
| 18 | - UserAccount string `json:"userAccount" valid:"Required"` | ||
| 19 | - // 用户头像URL | ||
| 20 | - UserAvatarUrl string `json:"userAvatarUrl" valid:"Required"` | ||
| 21 | - // 用户名称 | ||
| 22 | - UserName string `json:"userName" valid:"Required"` | ||
| 23 | - // 邮件地址 | ||
| 24 | - Email string `json:"email" valid:"Required"` | ||
| 25 | - // 性别 | ||
| 26 | - Gender int `json:"gender" valid:"Required"` | ||
| 27 | - // 入职时间 | ||
| 28 | - EntryTime time.Time `json:"entryTime" valid:"Required"` | ||
| 29 | - // 分机 | ||
| 30 | - Extension string `json:"extension" valid:"Required"` | ||
| 31 | - // 工作地 | ||
| 32 | - Workplace string `json:"workplace" valid:"Required"` | ||
| 33 | - // 私人电话 | ||
| 34 | - PrivateNumber string `json:"privateNumber" valid:"Required"` | ||
| 35 | - // 工号 | ||
| 36 | - JobNumber string `json:"jobNumber" valid:"Required"` | ||
| 37 | - // 公司id | ||
| 38 | - CompanyId int64 `json:"companyId" valid:"Required"` | 10 | + OrderId int64 `json:"orderId" valid:"Required"` |
| 11 | + // 商品列表 | ||
| 12 | + OrderGoods []int64 `json:"orderGoods" valid:"Required"` | ||
| 39 | } | 13 | } |
| 40 | 14 | ||
| 41 | func (receiveGoodsCommand *ReceiveGoodsCommand) Valid(validation *validation.Validation) { | 15 | func (receiveGoodsCommand *ReceiveGoodsCommand) Valid(validation *validation.Validation) { |
| @@ -9,9 +9,7 @@ type ReturnGoodsCommand struct { | @@ -9,9 +9,7 @@ type ReturnGoodsCommand struct { | ||
| 9 | // 订单ID | 9 | // 订单ID |
| 10 | OrderId int64 `json:"orderId" valid:"Required"` | 10 | OrderId int64 `json:"orderId" valid:"Required"` |
| 11 | // 订单号 | 11 | // 订单号 |
| 12 | - OrderNo string `json:"orderNo" valid:"Required"` | ||
| 13 | - // 统一用户id | ||
| 14 | - Uid int64 `json:"uid" valid:"Required"` | 12 | + OrderGoods []int `json:"orderGoods" valid:"Required"` |
| 15 | } | 13 | } |
| 16 | 14 | ||
| 17 | func (returnGoodsCommand *ReturnGoodsCommand) Valid(validation *validation.Validation) { | 15 | func (returnGoodsCommand *ReturnGoodsCommand) Valid(validation *validation.Validation) { |
| @@ -200,10 +200,17 @@ func (orderService *OrderService) ReceiveGoods(receivingCommand *command.Receive | @@ -200,10 +200,17 @@ func (orderService *OrderService) ReceiveGoods(receivingCommand *command.Receive | ||
| 200 | defer func() { | 200 | defer func() { |
| 201 | _ = transactionContext.RollbackTransaction() | 201 | _ = transactionContext.RollbackTransaction() |
| 202 | }() | 202 | }() |
| 203 | + shippingService, err := factory.CreateReceivingService(map[string]interface{}{ | ||
| 204 | + "transactionContext": transactionContext, | ||
| 205 | + }) | ||
| 206 | + if err != nil { | ||
| 207 | + return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) | ||
| 208 | + } | ||
| 209 | + order, err := shippingService.Receiving(int64(receivingCommand.OrderId), receivingCommand.OrderGoods) | ||
| 203 | if err := transactionContext.CommitTransaction(); err != nil { | 210 | if err := transactionContext.CommitTransaction(); err != nil { |
| 204 | return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) | 211 | return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) |
| 205 | } | 212 | } |
| 206 | - return nil, nil | 213 | + return order, nil |
| 207 | } | 214 | } |
| 208 | 215 | ||
| 209 | // 移除订单增删改查 | 216 | // 移除订单增删改查 |
| @@ -261,10 +268,19 @@ func (orderService *OrderService) ReturnGoods(returnGoodsCommand *command.Return | @@ -261,10 +268,19 @@ func (orderService *OrderService) ReturnGoods(returnGoodsCommand *command.Return | ||
| 261 | defer func() { | 268 | defer func() { |
| 262 | _ = transactionContext.RollbackTransaction() | 269 | _ = transactionContext.RollbackTransaction() |
| 263 | }() | 270 | }() |
| 271 | + | ||
| 272 | + returnGoodsService, err := factory.CreateReturnGoodsService(map[string]interface{}{ | ||
| 273 | + "transactionContext": transactionContext, | ||
| 274 | + }) | ||
| 275 | + if err != nil { | ||
| 276 | + return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) | ||
| 277 | + } | ||
| 278 | + order, err := returnGoodsService.Return(int64(returnGoodsCommand.OrderId)) | ||
| 279 | + | ||
| 264 | if err := transactionContext.CommitTransaction(); err != nil { | 280 | if err := transactionContext.CommitTransaction(); err != nil { |
| 265 | return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) | 281 | return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) |
| 266 | } | 282 | } |
| 267 | - return nil, nil | 283 | + return order, nil |
| 268 | } | 284 | } |
| 269 | 285 | ||
| 270 | // 订单发货服务 | 286 | // 订单发货服务 |
| @@ -282,10 +298,18 @@ func (orderService *OrderService) ShippingGoods(shippingGoodsCommand *command.Sh | @@ -282,10 +298,18 @@ func (orderService *OrderService) ShippingGoods(shippingGoodsCommand *command.Sh | ||
| 282 | defer func() { | 298 | defer func() { |
| 283 | _ = transactionContext.RollbackTransaction() | 299 | _ = transactionContext.RollbackTransaction() |
| 284 | }() | 300 | }() |
| 301 | + | ||
| 302 | + shippingService, err := factory.CreateShippingService(map[string]interface{}{ | ||
| 303 | + "transactionContext": transactionContext, | ||
| 304 | + }) | ||
| 305 | + if err != nil { | ||
| 306 | + return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) | ||
| 307 | + } | ||
| 308 | + order, err := shippingService.Shipping(int64(shippingGoodsCommand.OrderId)) | ||
| 285 | if err := transactionContext.CommitTransaction(); err != nil { | 309 | if err := transactionContext.CommitTransaction(); err != nil { |
| 286 | return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) | 310 | return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) |
| 287 | } | 311 | } |
| 288 | - return nil, nil | 312 | + return order, nil |
| 289 | } | 313 | } |
| 290 | 314 | ||
| 291 | // 更新订单增删改查 | 315 | // 更新订单增删改查 |
| @@ -7,5 +7,5 @@ import ( | @@ -7,5 +7,5 @@ import ( | ||
| 7 | 7 | ||
| 8 | type ReceivingGoodsService interface { | 8 | type ReceivingGoodsService interface { |
| 9 | coreDomain.DomainEventPublisher | 9 | coreDomain.DomainEventPublisher |
| 10 | - Receiving(orderId int64) (*domain.Order, error) | 10 | + Receiving(orderId int64, orderGoods []int64) (*domain.Order, error) |
| 11 | } | 11 | } |
| @@ -15,7 +15,7 @@ type ReceivingGoodsService struct { | @@ -15,7 +15,7 @@ type ReceivingGoodsService struct { | ||
| 15 | transactionContext *pgTransaction.TransactionContext | 15 | transactionContext *pgTransaction.TransactionContext |
| 16 | } | 16 | } |
| 17 | 17 | ||
| 18 | -func (service *ReceivingGoodsService) Receiving(orderId int64) (*domain.Order, error) { | 18 | +func (service *ReceivingGoodsService) Receiving(orderId int64, orderGoods []int64) (*domain.Order, error) { |
| 19 | var orderRepository domain.OrderRepository | 19 | var orderRepository domain.OrderRepository |
| 20 | if value, err := repository.NewOrderRepository(service.transactionContext); err != nil { | 20 | if value, err := repository.NewOrderRepository(service.transactionContext); err != nil { |
| 21 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error()) | 21 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error()) |
| @@ -68,3 +68,27 @@ func (controller *OrderController) Shipping() { | @@ -68,3 +68,27 @@ func (controller *OrderController) Shipping() { | ||
| 68 | data, err := orderService.ShippingGoods(shippingCmd) | 68 | data, err := orderService.ShippingGoods(shippingCmd) |
| 69 | controller.Response(data, err) | 69 | controller.Response(data, err) |
| 70 | } | 70 | } |
| 71 | + | ||
| 72 | +func (controller *OrderController) ReceiveGoods() { | ||
| 73 | + orderService := service.NewOrderService(nil) | ||
| 74 | + createOrderCommand := &command.ReceiveGoodsCommand{} | ||
| 75 | + _ = controller.Unmarshal(createOrderCommand) | ||
| 76 | + data, err := orderService.ReceiveGoods(createOrderCommand) | ||
| 77 | + controller.Response(data, err) | ||
| 78 | +} | ||
| 79 | + | ||
| 80 | +func (controller *OrderController) CancelOrder() { | ||
| 81 | + orderService := service.NewOrderService(nil) | ||
| 82 | + createOrderCommand := &command.CancelOrderCommand{} | ||
| 83 | + _ = controller.Unmarshal(createOrderCommand) | ||
| 84 | + data, err := orderService.CancelOrder(createOrderCommand) | ||
| 85 | + controller.Response(data, err) | ||
| 86 | +} | ||
| 87 | + | ||
| 88 | +func (controller *OrderController) ReturnGoods() { | ||
| 89 | + orderService := service.NewOrderService(nil) | ||
| 90 | + createOrderCommand := &command.ReturnGoodsCommand{} | ||
| 91 | + _ = controller.Unmarshal(createOrderCommand) | ||
| 92 | + data, err := orderService.ReturnGoods(createOrderCommand) | ||
| 93 | + controller.Response(data, err) | ||
| 94 | +} |
| @@ -11,4 +11,8 @@ func init() { | @@ -11,4 +11,8 @@ func init() { | ||
| 11 | web.Router("/orders/:orderId", &controllers.OrderController{}, "Get:GetOrder") | 11 | web.Router("/orders/:orderId", &controllers.OrderController{}, "Get:GetOrder") |
| 12 | web.Router("/orders/:orderId", &controllers.OrderController{}, "Delete:RemoveOrder") | 12 | web.Router("/orders/:orderId", &controllers.OrderController{}, "Delete:RemoveOrder") |
| 13 | web.Router("/orders/", &controllers.OrderController{}, "Get:ListOrder") | 13 | web.Router("/orders/", &controllers.OrderController{}, "Get:ListOrder") |
| 14 | + web.Router("/orders/shipping", &controllers.OrderController{}, "Post:Shipping") | ||
| 15 | + web.Router("/orders/receiveGoods", &controllers.OrderController{}, "Post:ReceiveGoods") | ||
| 16 | + web.Router("/orders/returnGoods", &controllers.OrderController{}, "Post:ReturnGoods") | ||
| 17 | + web.Router("/orders/cancel", &controllers.OrderController{}, "Post:CancelOrder") | ||
| 14 | } | 18 | } |
-
请 注册 或 登录 后发表评论