feat: 过期时间返回

This commit is contained in:
wolter 2024-11-07 10:41:04 +08:00
parent ad517b9d56
commit d715eb4a30
2 changed files with 30 additions and 12 deletions

View File

@ -47,6 +47,15 @@ func (l *GetOrderLogic) GetOrder(req *types.GetOrderReq) (resp *types.GetOrderRs
if data.Data.ShortUrl != "" {
status = 1
}
startTime, err := time.Parse("20060102", data.Data.VoucherSdate)
if err != nil {
startTime = time.Now()
}
endTime, err := time.Parse("20060102", data.Data.VoucherEdate)
if err != nil {
endTime = startTime.AddDate(0, 0, 30).Add(23*time.Hour + 59*time.Minute + 59*time.Second)
}
accouont, _ := strconv.Atoi(order.Account)
supplierId, _ := strconv.Atoi(order.SupplierId)
resp = &types.GetOrderRsp{
@ -55,29 +64,29 @@ func (l *GetOrderLogic) GetOrder(req *types.GetOrderReq) (resp *types.GetOrderRs
SupplierSkuId: order.SupplierSkuId,
Account: int64(accouont),
SendStatus: status,
Price: 0,
Price: order.Price,
StatusTime: order.UpdateTime.Unix(),
Msg: "",
SupplierId: int64(supplierId),
CardNo: "",
CardKey: "",
CardExpireTime: "",
CardExpireTime: endTime.Add(23*time.Hour + 59*time.Minute + 59*time.Second).Format(time.DateTime),
CardExchangeUrl: data.Data.ShortUrl,
}
return
}
// 营销系统查询
func (l *GetOrderLogic) GetOrder2(req *types.GetOrderReq) (resp *types.GetOrderRsp, err error) {
request := transfer.MarketQueryReq{
AppId: l.svcCtx.Config.MarketConfig.AppId,
//Sign: "",
ReqCode: "voucher.query",
MemId: fmt.Sprintf("%d", req.SupplierId),
ReqSerialNo: req.DeliverOrderNo,
Timestamp: time.Unix(req.RequestTime, 0).Format("20060102150405"),
VoucherId: "",
VoucherCode: req.SupplierOrderNo,
//VoucherId: "yl20240730",
//VoucherCode: "AAAESSGEVVpTHsbe",
}
request.Sign = l.svcCtx.Config.Sys.PrimaryKey

View File

@ -83,16 +83,16 @@ func (l *YlAsyncLogic) YlAsync(req *types.AsyncReq) (resp *types.AsyncResp, err
if result.Data.VoucherCode == "" {
return nil, fmt.Errorf("请求失败未取到数据:%v", result.Msg)
}
supplierOrderNo := req.DeliverOrderNo
// 记录订单
l.saveOrder(req, result, supplierOrderNo, VoucherId)
// 异步通知
go func() {
time.Sleep(2 * time.Second)
l.asyncSendMarket(supplierOrderNo, req, result.Data)
}()
// 记录订单
l.saveOrder(req, result, supplierOrderNo, VoucherId)
return &types.AsyncResp{
Msg: "",
Status: 0,
@ -109,8 +109,17 @@ func (l *YlAsyncLogic) getExchangeCode(voucherCode string) string {
return temp[len(temp)-1]
}
// 往营销系统下单,返回数据,通知下游系统
// 返回数据,通知下游系统
func (l *YlAsyncLogic) asyncSendMarket(supplierOrderNo string, asyncReq *types.AsyncReq, data *transfer.MarketKeySendRes_Data) {
startTime, err := time.Parse("20060102", data.VoucherSdate)
if err != nil {
startTime = time.Now()
}
endTime, err := time.Parse("20060102", data.VoucherEdate)
if err != nil {
endTime = startTime.AddDate(0, 0, 30).Add(23*time.Hour + 59*time.Minute + 59*time.Second)
}
var (
reqDataMap map[string]interface{}
header = map[string]string{"Content-Type": "application/json;charset=UTF-8"}
@ -127,14 +136,14 @@ func (l *YlAsyncLogic) asyncSendMarket(supplierOrderNo string, asyncReq *types.A
SupplierId: asyncReq.SupplierId,
CardNo: "",
CardKey: "",
CardExpireTime: "",
CardExpireTime: endTime.Add(23*time.Hour + 59*time.Minute + 59*time.Second).Format(time.DateTime),
CardExchangeUrl: data.ShortUrl,
Sign: "",
}
)
b, _ := json.Marshal(req)
err := json.Unmarshal(b, &reqDataMap)
err = json.Unmarshal(b, &reqDataMap)
if err != nil {
return
}