/* * Common.h * * Created on: 2021年8月7日 * Author: Wendell */ #ifndef COMMON_H_ #define COMMON_H_ #include #include #define ARRAY_SIZE(A) (sizeof(A) / sizeof(A[0])) #define PASS 1 #define WAIT 0 #define FAIL -1 #define YES 1 #define NO 0 #define ON 1 #define OFF 0 #define true 1 #define false 0 #define NORMAL 0 #define ABNORMAL 1 #define EQUAL 0 #define MODELNAME_LENGTH 14 #define SERIAL_NUMBER_LENGTH 11 #define SYSTEM_ID_LENGTH 64 #define LOG_INFO(format, args...) StoreSysLogMsg("[%s:%4d][%s][Info] "format, (strrchr(__FILE__, '/') ? strrchr(__FILE__, '/') + 1 : __FILE__), __LINE__, __FUNCTION__, ##args) #define LOG_WARN(format, args...) StoreSysLogMsg("[%s:%4d][%s][Warn] "format, (strrchr(__FILE__, '/') ? strrchr(__FILE__, '/') + 1 : __FILE__), __LINE__, __FUNCTION__, ##args) #define LOG_ERROR(format, args...) StoreSysLogMsg("[%s:%4d][%s][Erro] "format, (strrchr(__FILE__, '/') ? strrchr(__FILE__, '/') + 1 : __FILE__), __LINE__, __FUNCTION__, ##args) #define LOG_DBG(format, args...) StoreSysLogMsg("[%s:%4d][%s][Debg] "format, (strrchr(__FILE__, '/') ? strrchr(__FILE__, '/') + 1 : __FILE__), __LINE__, __FUNCTION__, ##args) #define PSU_LOG(format, args...) StorePsuLogMsg("[%s:%4d][%s][Info] "format, (strrchr(__FILE__, '/') ? strrchr(__FILE__, '/') + 1 : __FILE__), __LINE__, __FUNCTION__, ##args) #define AUTH_INFO(format, args...) StoreAuthLogMsg("[%s:%4d][%s][Info] "format, (strrchr(__FILE__, '/') ? strrchr(__FILE__, '/') + 1 : __FILE__), __LINE__, __FUNCTION__, ##args) #define EvMsg_INFO(format, args...) StoreEvCommMsg("[%s:%4d][%s][EvMsg] "format, (strrchr(__FILE__, '/') ? strrchr(__FILE__, '/') + 1 : __FILE__), __LINE__, __FUNCTION__, ##args) #define Database_INFO(format, args...) StoreDbMsg("[%s:%4d][%s][DB] "format, (strrchr(__FILE__, '/') ? strrchr(__FILE__, '/') + 1 : __FILE__), __LINE__, __FUNCTION__, ##args) #define Occupancy_INFO(format, args...) StoreOccupancyMsg("[%s:%4d][%s][OF] "format, (strrchr(__FILE__, '/') ? strrchr(__FILE__, '/') + 1 : __FILE__), __LINE__, __FUNCTION__, ##args) #define ReadCmd_INFO(format, args...) StoreReadCmdLineMsg(" "format, ##args) #define DB_FILE "/Storage/ChargeLog/localCgargingRecord.db" #define NETWORK_DB_FILE "/Storage/EventLog/Eventlog.db" int StoreSysLogMsg(const char *fmt, ...); int StorePsuLogMsg(const char *fmt, ...); int StoreAuthLogMsg(const char *fmt, ...); int StoreEvCommMsg(const char *fmt, ...); int StoreDbMsg(const char *fmt, ...); int StoreOccupancyMsg(const char *fmt, ...); int StoreReadCmdLineMsg(const char *fmt, ...); void GetClockTime(struct timespec *_now_time); unsigned long GetTimeoutValue(struct timespec _start_time); unsigned long GetSecTimeoutValue(struct timespec _start_time); int StatusCodeCompose(char *oriCode, char *newCode); void getNowDatetime(unsigned char *data); int IsModelNameMatch_ForUpdate(char *model_1, char *model_2); int IsCabinetModelNameLegal(char *modelName); int IsSerialNumberLegal(char *sn); int IsSystemIdLegal(char *systemId); char *strrpc(char *str, char *oldStr, char *newStr); int StringInStr(char *string , char *key); int FindStringInStr(char *sourceString, char *key, char *findString); int Trim_String(char *string , int len); int Split(char **array, char *strSource, const char *key); float PriceParsing(char *PriceString, char *ParseKey, char *SplitKey); char *ShellPriceParsing(char *priceString, char *resultPrice); float ShellRunningCostParsing(char *runningCostString); float ShellFinalCostParsing(char *finalCostString); int GetShellReceiptInfo(char *finalCostString, char *receiptInfo); float DefaultPriceParsing(char *StringItem); float GetNowTimePricing(float *price); float TccDefaultPriceParsing(char *costString, float *price); unsigned short ParsingRatingPower(char *modelname); unsigned int getFileCrc32(char *filename); bool IsAvalibleGunType(char name, unsigned char *type); void GetFullFirmwareVersion(char *_MainVer, char *_ModelName, char *_FullVer); //***************************************** No Use ***************************************** float TariffParsing(char *StringItem, char *TariffCode); float PhTariffParsing(char *StringItem, char *TariffCode); //***************************************** No Use ***************************************** #endif /* COMMON_H_ */