110 lines
3.6 KiB
C++
110 lines
3.6 KiB
C++
/**
|
|
* Copyright (c) CompanyNameMagicTag 2023-2023. All rights reserved.
|
|
* Description: alipay model.
|
|
* Author:
|
|
* Create:
|
|
*/
|
|
|
|
#ifndef ALIPAY_MODEL_H
|
|
#define ALIPAY_MODEL_H
|
|
|
|
#include "ohos_types.h"
|
|
#include "list.h"
|
|
#include "source.h"
|
|
#include "cmsis_os.h"
|
|
#include "ChangeSliceListener.h"
|
|
#include "alipay_feature.h"
|
|
|
|
namespace OHOS {
|
|
void AlipayBindTimerCallBack(void *argument);
|
|
void AlipaySwitchTimerCallBack(void *argument);
|
|
void AlipayBindCallBackProc(void *argument);
|
|
void AlipaySwitchTimerCallBackProc(void *argument);
|
|
void AlipayMsgCallBack(uint32_t msgId, uint32_t actionRes);
|
|
|
|
#define ALIPAY_BIND_STATUS_TIMER_LENGTH 2000
|
|
#define ALIPAY_GET_BIND_STR_MAX_LENGTH 256
|
|
#define ALIPAY_GET_PAY_STR_MAX_LENGTH 20
|
|
#define ALIPAY_GET_AID_STR_MAX_LENGTH 256
|
|
#define ALIPAY_GET_ID_STR_MAX_LENGTH 128
|
|
#define ALIPAY_GET_NICKNAME_MAX_LENGTH 128
|
|
|
|
#define ALIPAY_TRANS_READ_LOCAL_ERR 5
|
|
#define ALIPAY_TRANS_READ_BUFF_SHORT 15
|
|
#define ALIPAY_TRANS_READ_NETWORK_ERR 7
|
|
|
|
#define ALIPAY_TRANS_CODE_LIMITED 40
|
|
#define ALIPAY_TRANS_CODE_UNSUPPORTED 43
|
|
#define ALIPAY_TRANS_CODE_INVALID 54
|
|
#define ALIPAY_TRANS_CODE_COMMON_ERR 56
|
|
#define ALIPAY_TRANS_NETWORK_ERR 5
|
|
#define ALIPAY_TRANS_STATUS_TIMER_LENGTH 10000
|
|
|
|
class AlipayModel {
|
|
public:
|
|
AlipayModel();
|
|
virtual ~AlipayModel();
|
|
static AlipayModel *GetInstance(void);
|
|
|
|
bool AlipayInitModel(void);
|
|
void AlipayDeinitModel(void);
|
|
void SetAlipayInterLis(int16 interListen);
|
|
int16 GetAlipayInterLis(void);
|
|
bool AlipayGetBindstate(void);
|
|
int32_t AlipayGetBindCode(uint8_t *bindStr);
|
|
int32_t AlipayGetPayCode(uint8_t *payStr);
|
|
int32_t AlipayGetNickName(uint8_t *nickName);
|
|
int32_t AlipayGetIdName(uint8_t *idStr);
|
|
int32_t AlipayGetAidCode(int8_t *aidStr);
|
|
void AlipayUnbind(void);
|
|
bool AlipayStartBind(void);
|
|
bool AlipayFinishBind(void);
|
|
bool AlipayStartSwitchTimer(uint16_t time);
|
|
void AlipayStopBindTimer(void);
|
|
void AlipayStopSwitchTimer();
|
|
void AlipayEnterLpm();
|
|
void AlipayExitLpm();
|
|
int32_t AlipayGetLastTranscode();
|
|
int32_t AlipayGetLocalTranslist();
|
|
int32_t AlipayGetOnlineTranslist();
|
|
int32_t AlipayUpdateTransCard(uint32_t index);
|
|
int32_t AlipayCheckTransCard(uint32_t index);
|
|
int32_t AlipayGetTransCode(uint32_t index);
|
|
bool AlipayTransStartGetListsTimer(void);
|
|
void AlipayTransStopGetListsTimer(void);
|
|
uint32_t AlipaySendMsg(uint32_t msgId);
|
|
mc_alipay_trans_card_info_t* AlipayTransGetCardList(void);
|
|
int32_t AlipayTransGetCardNum(void);
|
|
bool AlipayGetBindFlag(void);
|
|
void AlipaySetBindFlag(bool bindFlag);
|
|
uint32_t AlipayGetSwitchIndex(void);
|
|
void AlipaySetSwitchIndex(uint32_t switchIndex);
|
|
uint32_t AlipayGetRefreshFlag(void);
|
|
void AlipaySetRefreshFlag(uint32_t refreshFlag);
|
|
uint32_t AlipayGetCardNum(void);
|
|
void AlipaySetCardNum(uint32_t cardNum);
|
|
uint32_t AlipayGetCardSum(void);
|
|
void AlipaySetCardSum(uint32_t cardSum);
|
|
char* AlipayGetCardTitle(uint32_t index);
|
|
uint8_t* AlipayGetTransCode(void);
|
|
uint32_t AlipayGetTransCodeLen(void);
|
|
char* AlipayGetCardTitle(void);
|
|
private:
|
|
osTimerId_t bindTimerId = nullptr;
|
|
osTimerId_t switchTimerId = nullptr;
|
|
osTimerId_t transTimerId = nullptr;
|
|
int16 alipayInterLis;
|
|
const alipay_svr_api_t *alipayApi;
|
|
bool bindFlag_;
|
|
uint32_t switchIndex_ = 0;
|
|
uint32_t refreshFlag_ = 0;
|
|
uint32_t cardNum_ = 0;
|
|
uint32_t cardSum_ = 0;
|
|
mc_alipay_trans_card_info_t *cardInfo_ = nullptr;
|
|
uint8_t* transCode_ = nullptr;
|
|
uint32_t transCodeLen_;
|
|
char cardTitle_[ALIPAY_TRANS_CARD_MEMBER_LEN];
|
|
};
|
|
}
|
|
|
|
#endif |