#ifndef GLOBAL
#define GLOBAL

#define EXE_ROLLBACK                    "rollback.dll"

#define MAX_BUF_LEN                     25600
#define MAX_CHILED_LEN                  256
#define MAX_PRINT_LEN                   12800

#define PRINT_FILE_PATH                 "C:/Freemud/fmClient/Prints/"
#define PRINT_ENDDAY_FILE_NAME          "EndDayPrint.txt"
#define PRINT_SHIFT_FILE_NAME           "ShiftPrint.txt"

#define PRINT_FILE_NAME                 "print.txt"

#define USERCONFIG_NAME                 "config.ini"
#define ENCODE_FIRST                    "encode/first"
#define ENCODE_END                      "encode/end"


#define JSON_KEY_VER                    "ver"
#define JSON_KEY_REQTYPE                "reqType"
#define JSON_KEY_PARTNERID              "partnerId"
#define JSON_KEY_STOREID                "storeId"
#define JSON_KEY_STATIONID              "stationId"
#define JSON_KEY_OPERATORID             "operatorId"
#define JSON_KEY_TRANSID                "transId"
#define JSON_KEY_REFUNDID               "refundId"
#define JSON_KEY_BUSINESSDATE           "businessDate"
#define JSON_KEY_CODE                   "code"
#define JSON_KEY_FMID                   "fmId"
#define JSON_KEY_TRANSAMOUNT            "transAmount"
#define JSON_KEY_REFUNDAMOUT            "refundAmount"
#define JSON_KEY_ENDTIME                "endTime"
#define JSON_KEY_TRANSTIME              "transTime"
#define JSON_KEY_STATE                  "state"
#define JSON_KEY_STATEMSG               "stateMsg"

#define JSON_KEY_METHCODE               "paymentMethodCode"

//response
#define JSON_KEY_MESSAGE                "message"
#define JSON_KEY_STATUSCODE             "statusCode"
#define JSON_KEY_PAYACCOUNT             "payAccount"
#define JSON_KEY_PAYTRANSID             "payTransId"
#define JSON_KEY_TYPE                   "type"
#define JSON_KEY_FMID                   "fmId"
#define JSON_KEY_EXT                    "ext"
#define JSON_KEYT_STATE                 "state"
#define JSON_KEY_PRINT                  "print"
#define JSON_KEY_PRINTACTION            "printAction"
#define JSON_KEY_PRINTPATH              "path"

#define JSON_KET_CLIENTREF              "cAlientrefundamount"


#define JSON_KEY_PAYMENTMETHOD          "paymentMethod"
#define JSON_KEY_PAYMENTMETHODCODE      "paymentMethodCode"
#define JSON_KEY_TRANSAMOUNT            "transAmount"
#define JSON_KEY_MERDISCOUNT            "merchantDiscount"
#define JSON_KEY_PLTDISCOUNT            "platformDiscount"

#define JSON_KEY_UNAMOUNT               "undiscountAmount"
#define JSON_KEY_PARTORDERID            "partnerOrderId"

//array products
#define JSON_KEY_PRODUCTS               "products"
#define JSON_KEY_PRODUCTS_CONSUMENUM    "consumeNum"
#define JSON_KEY_PRODUCTS_PID           "pid"
#define JSON_KEY_PRODUCTS_NAME          "name"
#define JSON_KEY_PRODUCTS_SALESTYPE     "salesType"
#define JSON_KEY_PRODUCTS_PRICE         "price"

#define JSON_KEY_TOTALNUM               "totalNum"
#define JSON_KEY_QUERYINFO              "queryInfo"

#define JSON_KEY_PAGENUM                "pageNum"
#define JSON_KEY_PAGESIZE               "pageSize"

#define JSON_KEY_BEGINTIME              "beginTime"
#define JSON_KEY_ENDTIME                "endTime"

#define DEFAULT_JSON_VER_VALUE          1
#define DEFAULT_JSON_PRODUCTS_NORMAL    "NORMAL"
#define DEFAULT_JSON_PRODUCTS_FREE      "FREE"

#define JSON_REQTYPE_PAY                72
#define JSON_REQTYPE_REFUND             62
#define JSON_REQTYPE_ENDDAY             82
#define JSON_REQTYPE_PRINTER            85
#define JSON_REQTYPE_FIND               2


#define CONFIG_ALL_PATH                 "ALL/DLLPATH"
#define CONFIG_OLTP_PATH                "OLTP/DLLPATH"
#define CONFIG_OLTP_VER                 "OLTP/VER"
#define CONFIG_OLTP_FROM                "OLTP/FROM"
#define CONFIG_OLTP_BUSINESS            "OLTP/BUSINESS"
#define CONFIG_OLTP_STATCODE            "OLTP/STATCODE"
#define CONFIG_OLTP_MODE                "OLTP/MODE"
#define CONFIG_OLTP_OPERATION           "OLTP/OPERATION"

#endif // GLOBAL

