cardissuer_httpans.h 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. #include "CardIssuerClass.h"
  2. #include "DeviceSimulator.h"
  3. #include <vector>
  4. typedef struct CardIssuerStatusAns {
  5. int errNum;
  6. int eMedia; //state about card
  7. int eRetainBin;
  8. int dwRetainCount; //回收箱容量
  9. //根据实际的卡箱数量对相关字段进行赋值
  10. std::vector<int> eIssuerBin;//0,1,2,... => hopper 1,2,3,... 需要对1,2,3,...三个卡箱进行对应赋值
  11. std::vector<int> dwIssuerCount; //发卡箱容量,0,1,2,... => 1,2,3,...
  12. std::vector<int> eKakuTape;//eKakuTape[0],eKakuTape[1],eKakuTape[2],eKakuTape[3]分别存放平面,凹,凸(金),凸(银)的状态
  13. JSONCONVERT2OBJECT_MEMEBER_REGISTER(errNum, eMedia, eRetainBin, dwRetainCount, eIssuerBin, dwIssuerCount, eKakuTape)
  14. }CardIssuerStatusAns;
  15. typedef struct GetDeviceSNAns {
  16. int errNum;
  17. std::string pDevSN;
  18. JSONCONVERT2OBJECT_MEMEBER_REGISTER(errNum, pDevSN)
  19. }GetDeviceSNAns;
  20. //////MagRead中MagTracks 嵌套结构体/////////////
  21. struct TrackInfoJson
  22. {
  23. int eSource;
  24. int eStatus;
  25. int dwSize;
  26. BYTE data[MAX_MAG_TRACK_SIZE];
  27. JSONCONVERT2OBJECT_MEMEBER_REGISTER(eSource, eStatus, dwSize, data)
  28. };
  29. typedef struct MagTracksAns {
  30. int errNum;
  31. int eRange;
  32. std::vector<TrackInfoJson> track;
  33. JSONCONVERT2OBJECT_MEMEBER_REGISTER(errNum, eRange, track)
  34. }MagTracksAns;
  35. //////////////////////////////////////////
  36. typedef struct CmdInfoAns {
  37. int errNum;
  38. int dwSize;
  39. BYTE data[MAX_IC_BUFFER_SIZE];
  40. JSONCONVERT2OBJECT_MEMEBER_REGISTER(errNum, dwSize, data)
  41. }CmdInfoAns;
  42. typedef struct ActiveContactlessICCardAns {
  43. int errNum;
  44. int outType;
  45. JSONCONVERT2OBJECT_MEMEBER_REGISTER(errNum, outType)
  46. }ActiveContactlessICCardAns;
  47. typedef struct DevOpenExAns {
  48. int errNum;
  49. int btType;
  50. JSONCONVERT2OBJECT_MEMEBER_REGISTER(errNum, btType)
  51. }DevOpenExAns;
  52. typedef struct TransferEnInitAns {
  53. int errNum;
  54. int iStatus;
  55. BYTE Cr1[256];
  56. int lenR1;
  57. BYTE Cr3[256];
  58. int lenR3;
  59. BYTE dKey[256];
  60. int lenKey;
  61. JSONCONVERT2OBJECT_MEMEBER_REGISTER(errNum, iStatus, Cr1, lenR1, Cr3, lenR3, dKey, lenKey)
  62. }TransferEnInit;
  63. typedef struct SetR2Ans {
  64. int errNum;
  65. int iStatus;
  66. JSONCONVERT2OBJECT_MEMEBER_REGISTER(errNum, iStatus)
  67. }SetR2Ans;
  68. typedef struct CardNoAns {
  69. int errNum;
  70. int dwSize;
  71. int dwTrack2Size;
  72. int dwTrack3Size;
  73. std::string account;
  74. std::string track2;
  75. std::string track3;
  76. JSONCONVERT2OBJECT_MEMEBER_REGISTER(errNum, dwSize, dwTrack2Size, dwTrack3Size, account, track2, track3)
  77. }CardNoAns;
  78. typedef struct GetSlotSumAns {
  79. int errNum;
  80. int sum;
  81. JSONCONVERT2OBJECT_MEMEBER_REGISTER(errNum, sum)
  82. }GetSlotSumAns;
  83. typedef struct SlotStatusAns {
  84. int errNum;
  85. int dwSize;//sum of slots
  86. //数据下标0~x 表示对应卡槽号0~x的是否有卡的状态
  87. //0:卡槽为空,1:卡槽有卡;
  88. BYTE status[MAX_SLOT_BUFFER_SIZE];
  89. JSONCONVERT2OBJECT_MEMEBER_REGISTER(errNum, dwSize, status)
  90. }SlotStatusAns;
  91. typedef struct SAMStatusAns {
  92. int errNum;
  93. int isActive;//0:Inactive; 1:acitve
  94. int chosenOfSAM;//the selected sam number:1,2,...
  95. JSONCONVERT2OBJECT_MEMEBER_REGISTER(errNum, isActive, chosenOfSAM)
  96. }SAMStatusAns;