Skip to content

Commit fdd7dad

Browse files
authored
Merge pull request #156 from Mikaelemmmm/dev
Upgraded
2 parents 686a3f3 + 9eb8c34 commit fdd7dad

File tree

96 files changed

+457
-402
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

96 files changed

+457
-402
lines changed

app/mqueue/cmd/job/etc/mqueue.yaml

-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
11
Name: mqueue-job
2-
Host: 0.0.0.0
3-
Port: 3002
42
Mode: dev
53

64
#监控

app/mqueue/cmd/job/internal/logic/closeOrder.go

+2-3
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,9 @@ import (
99
"looklook/app/mqueue/cmd/job/jobtype"
1010
"looklook/app/order/cmd/rpc/order"
1111
"looklook/app/order/model"
12-
"looklook/common/xerr"
12+
"looklook/pkg/xerr"
1313
)
1414

15-
1615
var ErrCloseOrderFal = xerr.NewErrMsg("close order fail")
1716

1817
// CloseHomestayOrderHandler close no pay homestayOrder
@@ -22,7 +21,7 @@ type CloseHomestayOrderHandler struct {
2221

2322
func NewCloseHomestayOrderHandler(svcCtx *svc.ServiceContext) *CloseHomestayOrderHandler {
2423
return &CloseHomestayOrderHandler{
25-
svcCtx:svcCtx,
24+
svcCtx: svcCtx,
2625
}
2726
}
2827

app/mqueue/cmd/job/internal/logic/paySuccessNotifyUser.go

+23-26
Original file line numberDiff line numberDiff line change
@@ -15,24 +15,23 @@ import (
1515
"looklook/app/order/model"
1616
"looklook/app/usercenter/cmd/rpc/usercenter"
1717
usercenterModel "looklook/app/usercenter/model"
18-
"looklook/common/globalkey"
19-
"looklook/common/tool"
20-
"looklook/common/wxminisub"
21-
"looklook/common/xerr"
18+
"looklook/pkg/globalkey"
19+
"looklook/pkg/tool"
20+
"looklook/pkg/wxminisub"
21+
"looklook/pkg/xerr"
2222
"time"
2323
)
2424

2525
var ErrPaySuccessNotifyFail = xerr.NewErrMsg("pay success notify user fail")
2626

27-
2827
// PaySuccessNotifyUserHandler pay success notify user
2928
type PaySuccessNotifyUserHandler struct {
3029
svcCtx *svc.ServiceContext
3130
}
3231

3332
func NewPaySuccessNotifyUserHandler(svcCtx *svc.ServiceContext) *PaySuccessNotifyUserHandler {
3433
return &PaySuccessNotifyUserHandler{
35-
svcCtx:svcCtx,
34+
svcCtx: svcCtx,
3635
}
3736
}
3837

@@ -49,56 +48,54 @@ func (l *PaySuccessNotifyUserHandler) ProcessTask(ctx context.Context, t *asynq.
4948
AuthType: usercenterModel.UserAuthTypeSmallWX,
5049
})
5150
if err != nil {
52-
return errors.Wrapf(ErrPaySuccessNotifyFail,"pay success notify user fail, rpc get user err:%v , orderSn:%s , userId:%d",err,p.Order.Sn,p.Order.UserId)
51+
return errors.Wrapf(ErrPaySuccessNotifyFail, "pay success notify user fail, rpc get user err:%v , orderSn:%s , userId:%d", err, p.Order.Sn, p.Order.UserId)
5352
}
5453
if usercenterResp.UserAuth == nil || len(usercenterResp.UserAuth.AuthKey) == 0 {
55-
return errors.Wrapf(ErrPaySuccessNotifyFail,"pay success notify user , user no exists err:%v , orderSn:%s , userId:%d",err,p.Order.Sn,p.Order.UserId)
54+
return errors.Wrapf(ErrPaySuccessNotifyFail, "pay success notify user , user no exists err:%v , orderSn:%s , userId:%d", err, p.Order.Sn, p.Order.UserId)
5655
}
5756
openId := usercenterResp.UserAuth.AuthKey
5857

59-
6058
// 2、send notify
61-
msgs := l.getData(ctx,p.Order,openId)
62-
for _, msg := range msgs {
63-
l.SendWxMini(ctx,msg)
59+
msgs := l.getData(ctx, p.Order, openId)
60+
for _, msg := range msgs {
61+
l.SendWxMini(ctx, msg)
6462
}
6563

6664
return nil
6765
}
6866

6967
// get send data
70-
func (l *PaySuccessNotifyUserHandler) getData(_ context.Context,order *model.HomestayOrder,openId string)[]*subscribe.Message{
68+
func (l *PaySuccessNotifyUserHandler) getData(_ context.Context, order *model.HomestayOrder, openId string) []*subscribe.Message {
7169

7270
return []*subscribe.Message{
7371
{
74-
ToUser: openId,
72+
ToUser: openId,
7573
TemplateID: wxminisub.OrderPaySuccessTemplateID,
7674
Data: map[string]*subscribe.DataItem{
7775
"character_string6": {Value: order.Sn},
7876
"thing1": {Value: order.Title},
79-
"amount2": {Value:fmt.Sprintf("%.2f", tool.Fen2Yuan(order.OrderTotalPrice))},
80-
"time4": {Value:carbon.CreateFromTimestamp(order.LiveStartDate.Unix()).Format(globalkey.DateTimeFormatTplStandardDate)},
81-
"time5": {Value:carbon.CreateFromTimestamp(order.LiveEndDate.Unix()).Format(globalkey.DateTimeFormatTplStandardDate)},
77+
"amount2": {Value: fmt.Sprintf("%.2f", tool.Fen2Yuan(order.OrderTotalPrice))},
78+
"time4": {Value: carbon.CreateFromTimestamp(order.LiveStartDate.Unix()).Format(globalkey.DateTimeFormatTplStandardDate)},
79+
"time5": {Value: carbon.CreateFromTimestamp(order.LiveEndDate.Unix()).Format(globalkey.DateTimeFormatTplStandardDate)},
8280
},
8381
},
8482
{
85-
ToUser: openId,
83+
ToUser: openId,
8684
TemplateID: wxminisub.OrderPaySuccessLiveKnowTemplateID,
8785
Data: map[string]*subscribe.DataItem{
88-
"date2": {Value:carbon.CreateFromTimestamp(order.LiveStartDate.Unix()).Format(globalkey.DateTimeFormatTplStandardDate)},
89-
"date3": {Value:carbon.CreateFromTimestamp(order.LiveEndDate.Unix()).Format(globalkey.DateTimeFormatTplStandardDate)} ,
90-
"character_string4": {Value:order.TradeCode} ,
91-
"thing1": {Value:"请不要将验证码告知商家以外人员,以防上当"} ,
86+
"date2": {Value: carbon.CreateFromTimestamp(order.LiveStartDate.Unix()).Format(globalkey.DateTimeFormatTplStandardDate)},
87+
"date3": {Value: carbon.CreateFromTimestamp(order.LiveEndDate.Unix()).Format(globalkey.DateTimeFormatTplStandardDate)},
88+
"character_string4": {Value: order.TradeCode},
89+
"thing1": {Value: "请不要将验证码告知商家以外人员,以防上当"},
9290
},
9391
},
9492
}
9593
}
9694

97-
9895
// SendWxMini send to wechat mini
99-
func (l *PaySuccessNotifyUserHandler) SendWxMini(ctx context.Context,msg *subscribe.Message) {
96+
func (l *PaySuccessNotifyUserHandler) SendWxMini(ctx context.Context, msg *subscribe.Message) {
10097

101-
if l.svcCtx.Config.Mode != service.ProMode{
98+
if l.svcCtx.Config.Mode != service.ProMode {
10299
msg.MiniprogramState = "developer"
103100
} else {
104101
msg.MiniprogramState = "formal"
@@ -114,7 +111,7 @@ func (l *PaySuccessNotifyUserHandler) SendWxMini(ctx context.Context,msg *subscr
114111
err := l.svcCtx.MiniProgram.GetSubscribe().Send(msg)
115112
if err != nil {
116113
if retryNum > maxRetryNum {
117-
logx.WithContext(ctx).Errorf("Payment successful send wechat mini subscription message failed retryNum : %d , err:%v, msg : %+v ", retryNum,err, msg)
114+
logx.WithContext(ctx).Errorf("Payment successful send wechat mini subscription message failed retryNum : %d , err:%v, msg : %+v ", retryNum, err, msg)
118115
return
119116
}
120117
retryNum++

app/mqueue/cmd/scheduler/etc/mqueue.yaml

-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
11
Name: mqueue-scheduler
2-
Host: 0.0.0.0
3-
Port: 3003
42
Mode: dev
53

64
#监控

app/mqueue/cmd/scheduler/mqueue.go

+3-4
Original file line numberDiff line numberDiff line change
@@ -21,21 +21,20 @@ func main() {
2121
conf.MustLoad(*configFile, &c)
2222

2323
logx.DisableStat()
24+
2425
// log、prometheus、trace、metricsUrl.
2526
if err := c.SetUp(); err != nil {
2627
panic(err)
2728
}
2829

29-
3030
svcContext := svc.NewServiceContext(c)
3131
ctx := context.Background()
3232
mqueueScheduler := logic.NewCronScheduler(ctx, svcContext)
3333
mqueueScheduler.Register()
3434

35-
if err:=svcContext.Scheduler.Run();err!= nil{
36-
logx.Errorf("!!!MqueueSchedulerErr!!! run err:%+v",err)
35+
if err := svcContext.Scheduler.Run(); err != nil {
36+
logx.Errorf("!!!MqueueSchedulerErr!!! run err:%+v", err)
3737
os.Exit(1)
3838
}
3939

40-
4140
}

app/order/cmd/api/internal/handler/homestayOrder/createHomestayOrderHandler.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import (
66
"looklook/app/order/cmd/api/internal/logic/homestayOrder"
77
"looklook/app/order/cmd/api/internal/svc"
88
"looklook/app/order/cmd/api/internal/types"
9-
"looklook/common/result"
9+
"looklook/pkg/result"
1010

1111
"github.com/zeromicro/go-zero/rest/httpx"
1212
)

app/order/cmd/api/internal/handler/homestayOrder/userHomestayOrderDetailHandler.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import (
66
"looklook/app/order/cmd/api/internal/logic/homestayOrder"
77
"looklook/app/order/cmd/api/internal/svc"
88
"looklook/app/order/cmd/api/internal/types"
9-
"looklook/common/result"
9+
"looklook/pkg/result"
1010

1111
"github.com/zeromicro/go-zero/rest/httpx"
1212
)

app/order/cmd/api/internal/handler/homestayOrder/userHomestayOrderListHandler.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import (
66
"looklook/app/order/cmd/api/internal/logic/homestayOrder"
77
"looklook/app/order/cmd/api/internal/svc"
88
"looklook/app/order/cmd/api/internal/types"
9-
"looklook/common/result"
9+
"looklook/pkg/result"
1010

1111
"github.com/zeromicro/go-zero/rest/httpx"
1212
)

app/order/cmd/api/internal/logic/homestayOrder/createHomestayOrderLogic.go

+6-6
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,12 @@ package homestayOrder
33
import (
44
"context"
55
"looklook/app/travel/cmd/rpc/pb"
6-
"looklook/common/ctxdata"
6+
"looklook/pkg/ctxdata"
77

88
"looklook/app/order/cmd/api/internal/svc"
99
"looklook/app/order/cmd/api/internal/types"
1010
"looklook/app/order/cmd/rpc/order"
11-
"looklook/common/xerr"
11+
"looklook/pkg/xerr"
1212

1313
"github.com/pkg/errors"
1414
"github.com/zeromicro/go-zero/core/logx"
@@ -31,14 +31,14 @@ func NewCreateHomestayOrderLogic(ctx context.Context, svcCtx *svc.ServiceContext
3131
// create order
3232
func (l *CreateHomestayOrderLogic) CreateHomestayOrder(req types.CreateHomestayOrderReq) (*types.CreateHomestayOrderResp, error) {
3333

34-
homestayResp , err:=l.svcCtx.TravelRpc.HomestayDetail(l.ctx,&pb.HomestayDetailReq{
34+
homestayResp, err := l.svcCtx.TravelRpc.HomestayDetail(l.ctx, &pb.HomestayDetailReq{
3535
Id: req.HomestayId,
3636
})
37-
if err != nil{
37+
if err != nil {
3838
return nil, err
3939
}
40-
if homestayResp.Homestay == nil || homestayResp.Homestay .Id == 0{
41-
return nil,errors.Wrapf(xerr.NewErrMsg("homestay no exists"),"CreateHomestayOrder homestay no exists id : %d",req.HomestayId)
40+
if homestayResp.Homestay == nil || homestayResp.Homestay.Id == 0 {
41+
return nil, errors.Wrapf(xerr.NewErrMsg("homestay no exists"), "CreateHomestayOrder homestay no exists id : %d", req.HomestayId)
4242
}
4343

4444
userId := ctxdata.GetUidFromCtx(l.ctx)

app/order/cmd/api/internal/logic/homestayOrder/userHomestayOrderDetailLogic.go

+5-5
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@ import (
88
"looklook/app/order/cmd/rpc/order"
99
"looklook/app/order/model"
1010
"looklook/app/payment/cmd/rpc/payment"
11-
"looklook/common/ctxdata"
12-
"looklook/common/tool"
13-
"looklook/common/xerr"
11+
"looklook/pkg/ctxdata"
12+
"looklook/pkg/tool"
13+
"looklook/pkg/xerr"
1414

1515
"github.com/jinzhu/copier"
1616
"github.com/pkg/errors"
@@ -47,15 +47,15 @@ func (l *UserHomestayOrderDetailLogic) UserHomestayOrderDetail(req types.UserHom
4747

4848
copier.Copy(&typesOrderDetail, resp.HomestayOrder)
4949

50-
//重置价格.
50+
// format price.
5151
typesOrderDetail.OrderTotalPrice = tool.Fen2Yuan(resp.HomestayOrder.OrderTotalPrice)
5252
typesOrderDetail.FoodTotalPrice = tool.Fen2Yuan(resp.HomestayOrder.FoodTotalPrice)
5353
typesOrderDetail.HomestayTotalPrice = tool.Fen2Yuan(resp.HomestayOrder.HomestayTotalPrice)
5454
typesOrderDetail.HomestayPrice = tool.Fen2Yuan(resp.HomestayOrder.HomestayPrice)
5555
typesOrderDetail.FoodPrice = tool.Fen2Yuan(resp.HomestayOrder.FoodPrice)
5656
typesOrderDetail.MarketHomestayPrice = tool.Fen2Yuan(resp.HomestayOrder.MarketHomestayPrice)
5757

58-
//支付信息.
58+
// payment info.
5959
if typesOrderDetail.TradeState != model.HomestayOrderTradeStateCancel && typesOrderDetail.TradeState != model.HomestayOrderTradeStateWaitPay {
6060
paymentResp, err := l.svcCtx.PaymentRpc.GetPaymentSuccessRefundByOrderSn(l.ctx, &payment.GetPaymentSuccessRefundByOrderSnReq{
6161
OrderSn: resp.HomestayOrder.Sn,

app/order/cmd/api/internal/logic/homestayOrder/userHomestayOrderListLogic.go

+8-3
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@ import (
66
"looklook/app/order/cmd/api/internal/svc"
77
"looklook/app/order/cmd/api/internal/types"
88
"looklook/app/order/cmd/rpc/order"
9-
"looklook/common/ctxdata"
10-
"looklook/common/tool"
11-
"looklook/common/xerr"
9+
"looklook/pkg/ctxdata"
10+
"looklook/pkg/tool"
11+
"looklook/pkg/xerr"
1212

1313
"github.com/jinzhu/copier"
1414
"github.com/pkg/errors"
@@ -47,6 +47,11 @@ func (l *UserHomestayOrderListLogic) UserHomestayOrderList(req types.UserHomesta
4747

4848
if len(resp.List) > 0 {
4949

50+
// 【!!notice!!】Why not use copier to make a copy of the whole list here?
51+
// 【!!重要!!】这里为什么不使用copier去对整个list进行拷贝?
52+
53+
// answer : copier This library is essentially the use of reflection implementation, in our online practice, the copy of large slices will take up a lot of cpu, serious performance consumption, if you can manually assign the value as much as possible manually, would like to use the copier is highly recommended only copy a single object is not a great impact
54+
// 答:copier 这个库本质上是使用反射实现的,在我们线上实践中,对大切片拷贝会占用大量的cpu,严重消耗性能,如果能手动赋值尽量手动,想使用copier强烈建议只拷贝单个对象影响不是很大
5055
for _, homestayOrder := range resp.List {
5156

5257
var typeHomestayOrder types.UserHomestayOrderListView

app/order/cmd/mq/etc/order.yaml

-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
11
Name: order-mq
2-
Host: 0.0.0.0
3-
Port: 3001
42
Mode: dev
53

64
#监控

app/order/cmd/mq/internal/mqs/kq/paymentUpdateStatus.go

+6-5
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,16 @@ import (
77
"looklook/app/order/cmd/rpc/order"
88
"looklook/app/order/model"
99
paymentModel "looklook/app/payment/model"
10-
"looklook/common/kqueue"
11-
"looklook/common/xerr"
10+
"looklook/pkg/kqueue"
11+
"looklook/pkg/xerr"
1212

1313
"github.com/pkg/errors"
1414
"github.com/zeromicro/go-zero/core/logx"
1515
)
1616

17-
/**
18-
Listening to the payment flow status change notification message queue
17+
/*
18+
*
19+
Listening to the payment flow status change notification message queue
1920
*/
2021
type PaymentUpdateStatusMq struct {
2122
ctx context.Context
@@ -62,7 +63,7 @@ func (l *PaymentUpdateStatusMq) execService(message kqueue.ThirdPaymentUpdatePay
6263
return nil
6364
}
6465

65-
//Get order status based on payment status.
66+
// Get order status based on payment status.
6667
func (l *PaymentUpdateStatusMq) getOrderTradeStateByPaymentTradeState(thirdPaymentPayStatus int64) int64 {
6768

6869
switch thirdPaymentPayStatus {

app/order/cmd/rpc/internal/logic/createHomestayOrderLogic.go

+9-10
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,15 @@ import (
1212
"looklook/app/order/cmd/rpc/pb"
1313
"looklook/app/order/model"
1414
"looklook/app/travel/cmd/rpc/travel"
15-
"looklook/common/tool"
16-
"looklook/common/uniqueid"
17-
"looklook/common/xerr"
15+
"looklook/pkg/tool"
16+
"looklook/pkg/uniqueid"
17+
"looklook/pkg/xerr"
1818

1919
"github.com/pkg/errors"
2020
"github.com/zeromicro/go-zero/core/logx"
2121
)
2222

23-
const CloseOrderTimeMinutes = 30 //defer close order time
23+
const CloseOrderTimeMinutes = 30 //defer close order time
2424

2525
type CreateHomestayOrderLogic struct {
2626
ctx context.Context
@@ -93,20 +93,19 @@ func (l *CreateHomestayOrderLogic) CreateHomestayOrder(in *pb.CreateHomestayOrde
9393

9494
order.OrderTotalPrice = order.HomestayTotalPrice + order.FoodTotalPrice //Calculate total order price.
9595

96-
_, err = l.svcCtx.HomestayOrderModel.Insert(l.ctx,nil, order)
96+
_, err = l.svcCtx.HomestayOrderModel.Insert(l.ctx, nil, order)
9797
if err != nil {
9898
return nil, errors.Wrapf(xerr.NewErrCode(xerr.DB_ERROR), "Order Database Exception order : %+v , err: %v", order, err)
9999
}
100100

101-
102101
//2、Delayed closing of order tasks.
103102
payload, err := json.Marshal(jobtype.DeferCloseHomestayOrderPayload{Sn: order.Sn})
104103
if err != nil {
105-
logx.WithContext(l.ctx).Errorf("create defer close order task json Marshal fail err :%+v , sn : %s",err,order.Sn)
106-
}else{
107-
_, err = l.svcCtx.AsynqClient.Enqueue(asynq.NewTask(jobtype.DeferCloseHomestayOrder, payload), asynq.ProcessIn(CloseOrderTimeMinutes * time.Minute))
104+
logx.WithContext(l.ctx).Errorf("create defer close order task json Marshal fail err :%+v , sn : %s", err, order.Sn)
105+
} else {
106+
_, err = l.svcCtx.AsynqClient.Enqueue(asynq.NewTask(jobtype.DeferCloseHomestayOrder, payload), asynq.ProcessIn(CloseOrderTimeMinutes*time.Minute))
108107
if err != nil {
109-
logx.WithContext(l.ctx).Errorf("create defer close order task insert queue fail err :%+v , sn : %s",err,order.Sn)
108+
logx.WithContext(l.ctx).Errorf("create defer close order task insert queue fail err :%+v , sn : %s", err, order.Sn)
110109
}
111110
}
112111

app/order/cmd/rpc/internal/logic/homestayOrderDetailLogic.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import (
66
"looklook/app/order/cmd/rpc/internal/svc"
77
"looklook/app/order/cmd/rpc/pb"
88
"looklook/app/order/model"
9-
"looklook/common/xerr"
9+
"looklook/pkg/xerr"
1010

1111
"github.com/jinzhu/copier"
1212
"github.com/pkg/errors"
@@ -29,7 +29,7 @@ func NewHomestayOrderDetailLogic(ctx context.Context, svcCtx *svc.ServiceContext
2929

3030
func (l *HomestayOrderDetailLogic) HomestayOrderDetail(in *pb.HomestayOrderDetailReq) (*pb.HomestayOrderDetailResp, error) {
3131

32-
homestayOrder, err := l.svcCtx.HomestayOrderModel.FindOneBySn(l.ctx,in.Sn)
32+
homestayOrder, err := l.svcCtx.HomestayOrderModel.FindOneBySn(l.ctx, in.Sn)
3333
if err != nil && err != model.ErrNotFound {
3434
return nil, errors.Wrapf(xerr.NewErrCode(xerr.DB_ERROR), "HomestayOrderModel FindOneBySn db err : %v , sn : %s", err, in.Sn)
3535
}

0 commit comments

Comments
 (0)