增加华为支付模块

This commit is contained in:
ayflying
2025-08-05 18:19:42 +08:00
parent d54de73e11
commit 039acea0af
5 changed files with 351 additions and 1 deletions

View File

@@ -0,0 +1,107 @@
package huawei
/*
* Copyright 2020. Huawei Technologies Co., Ltd. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
*/
//import "encoding/json"
const (
INITIAL_BUY = 0
CANCEL = 1
RENEWAL = 2
INTERACTIVE_RENEWAL = 3
NEW_RENEWAL_PREF = 4
RENEWAL_STOPPED = 5
RENEWAL_RESTORED = 6
RENEWAL_RECURRING = 7
ON_HOLD = 9
PAUSED = 10
PAUSE_PLAN_CHANGED = 11
PRICE_CHANGE_CONFIRMED = 12
DEFERRED = 13
)
//type NotificationServer struct {
//}
//
//var NotificationDemo = &NotificationServer{}
//type NotificationRequest struct {
// StatusUpdateNotification string `json:"statusUpdateNotification"`
// NotificationSignature string `json:"notifycationSignature"`
//}
//
//type NotificationResponse struct {
// ErrorCode string `json:"errorCode"`
// ErrorMsg string `json:"errorMsg"`
//}
//type StatusUpdateNotification struct {
// Environment string `json:"environment"`
// NotificationType int `json:"notificationType"`
// SubscriptionID string `json:"subscriptionId"`
// CancellationDate int64 `json:"cancellationDate"`
// OrderID string `json:"orderId"`
// LatestReceipt string `json:"latestReceipt"`
// LatestReceiptInfo string `json:"latestReceiptInfo"`
// LatestReceiptInfoSignature string `json:"latestReceiptInfoSignature"`
// LatestExpiredReceipt string `json:"latestExpiredReceipt"`
// LatestExpiredReceiptInfo string `json:"latestExpiredReceiptInfo"`
// LatestExpiredReceiptInfoSignature string `json:"latestExpiredReceiptInfoSignature"`
// AutoRenewStatus int `json:"autoRenewStatus"`
// RefundPayOrderId string `json:"refundPayOrderId"`
// ProductID string `json:"productId"`
// ApplicationID string `json:"applicationId"`
// ExpirationIntent int `json:"expirationIntent"`
//}
func (p *Pay) DealNotification(information string) (err error) {
//var request PayCallback
//err = json.Unmarshal([]byte(information), &request)
//if err != nil {
// return
//}
//err = p.VerifyRsaSign(request.StatusUpdateNotification, request.NotificationSignature, DefaultConfig.ApplicationPublicKey)
//if err != nil {
// return
//}
//
//var info = request.StatusUpdateNotification
////json.Unmarshal([]byte(request.StatusUpdateNotification), &info)
//switch notificationType := info.NotificationType; notificationType {
//case INITIAL_BUY:
//case CANCEL:
//case RENEWAL:
//case INTERACTIVE_RENEWAL:
//case NEW_RENEWAL_PREF:
//case RENEWAL_STOPPED:
//case RENEWAL_RESTORED:
//case RENEWAL_RECURRING:
//case ON_HOLD:
//case PAUSED:
//case PAUSE_PLAN_CHANGED:
//case PRICE_CHANGE_CONFIRMED:
//case DEFERRED:
//default:
//}
//
////response := NotificationResponse{ErrorCode: "0"}
////return &response, nil
//return
return
}