@etsoo/appscript 1.5.62 → 1.5.63

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (268) hide show
  1. package/__tests__/app/CoreApp.ts +9 -276
  2. package/__tests__/app/TestApp.ts +136 -0
  3. package/lib/{mjs/erp → cjs/api}/AuthApi.d.ts +12 -5
  4. package/lib/cjs/{erp → api}/AuthApi.js +8 -0
  5. package/lib/{mjs/erp → cjs/api}/EntityApi.d.ts +1 -10
  6. package/lib/cjs/{erp → api}/EntityApi.js +0 -9
  7. package/lib/cjs/api/dto/AntiforgeryRequestToken.d.ts +21 -0
  8. package/{src/erp/dto/ResultPayload.ts → lib/cjs/api/dto/ResultPayload.d.ts} +9 -4
  9. package/lib/{mjs/erp → cjs/api}/rq/QueryPagingData.d.ts +7 -7
  10. package/lib/{mjs/erp/rq/TiplistRQ.d.ts → cjs/api/rq/QueryRQ.d.ts} +8 -4
  11. package/lib/cjs/api/rq/StatusQueryRQ.d.ts +17 -0
  12. package/lib/cjs/api/rq/UpdateModel.d.ts +18 -0
  13. package/lib/cjs/app/CoreApp.d.ts +10 -3
  14. package/lib/cjs/app/CoreApp.js +13 -5
  15. package/lib/cjs/app/IApp.d.ts +2 -2
  16. package/lib/cjs/business/EntityStatus.d.ts +1 -1
  17. package/lib/cjs/business/EntityStatus.js +1 -1
  18. package/lib/cjs/i18n/en.json +2 -0
  19. package/lib/cjs/i18n/zh-Hans.json +2 -0
  20. package/lib/cjs/i18n/zh-Hant.json +2 -0
  21. package/lib/cjs/index.d.ts +67 -87
  22. package/lib/cjs/index.js +26 -48
  23. package/lib/{cjs/erp → mjs/api}/AuthApi.d.ts +12 -5
  24. package/lib/mjs/{erp → api}/AuthApi.js +8 -0
  25. package/lib/{cjs/erp → mjs/api}/EntityApi.d.ts +1 -10
  26. package/lib/mjs/{erp → api}/EntityApi.js +0 -9
  27. package/lib/mjs/api/dto/AntiforgeryRequestToken.d.ts +21 -0
  28. package/lib/{cjs/erp → mjs/api}/dto/ResultPayload.d.ts +9 -1
  29. package/lib/{cjs/erp → mjs/api}/rq/QueryPagingData.d.ts +7 -7
  30. package/lib/{cjs/erp/rq/TiplistRQ.d.ts → mjs/api/rq/QueryRQ.d.ts} +8 -4
  31. package/lib/mjs/api/rq/StatusQueryRQ.d.ts +17 -0
  32. package/lib/mjs/api/rq/UpdateModel.d.ts +18 -0
  33. package/lib/mjs/app/CoreApp.d.ts +10 -3
  34. package/lib/mjs/app/CoreApp.js +13 -5
  35. package/lib/mjs/app/IApp.d.ts +2 -2
  36. package/lib/mjs/business/EntityStatus.d.ts +1 -1
  37. package/lib/mjs/business/EntityStatus.js +1 -1
  38. package/lib/mjs/i18n/en.json +2 -0
  39. package/lib/mjs/i18n/zh-Hans.json +2 -0
  40. package/lib/mjs/i18n/zh-Hant.json +2 -0
  41. package/lib/mjs/index.d.ts +67 -87
  42. package/lib/mjs/index.js +67 -89
  43. package/package.json +72 -69
  44. package/src/{erp → api}/AuthApi.ts +16 -6
  45. package/src/{erp → api}/EntityApi.ts +1 -17
  46. package/src/api/dto/AntiforgeryRequestToken.ts +23 -0
  47. package/{lib/mjs/erp/dto/ResultPayload.d.ts → src/api/dto/ResultPayload.ts} +19 -1
  48. package/src/{erp → api}/rq/QueryPagingData.ts +7 -7
  49. package/src/{erp/rq/TiplistRQ.ts → api/rq/QueryRQ.ts} +9 -4
  50. package/src/api/rq/StatusQueryRQ.ts +19 -0
  51. package/src/api/rq/UpdateModel.ts +20 -0
  52. package/src/app/CoreApp.ts +17 -8
  53. package/src/app/IApp.ts +2 -2
  54. package/src/business/EntityStatus.ts +1 -1
  55. package/src/i18n/en.json +2 -0
  56. package/src/i18n/zh-Hans.json +2 -0
  57. package/src/i18n/zh-Hant.json +2 -0
  58. package/src/index.ts +77 -99
  59. package/.eslintignore +0 -3
  60. package/.eslintrc.json +0 -29
  61. package/.prettierignore +0 -5
  62. package/.prettierrc +0 -6
  63. package/lib/cjs/erp/AddressApi.d.ts +0 -127
  64. package/lib/cjs/erp/AddressApi.js +0 -230
  65. package/lib/cjs/erp/MemberApi.d.ts +0 -22
  66. package/lib/cjs/erp/MemberApi.js +0 -26
  67. package/lib/cjs/erp/OrgApi.d.ts +0 -74
  68. package/lib/cjs/erp/OrgApi.js +0 -94
  69. package/lib/cjs/erp/PublicApi.d.ts +0 -127
  70. package/lib/cjs/erp/PublicApi.js +0 -212
  71. package/lib/cjs/erp/dto/AuditLineDto.d.ts +0 -24
  72. package/lib/cjs/erp/dto/CurrencyDto.d.ts +0 -6
  73. package/lib/cjs/erp/dto/ExchangeRateDto.d.ts +0 -13
  74. package/lib/cjs/erp/dto/ExchangeRateHistoryDto.d.ts +0 -8
  75. package/lib/cjs/erp/dto/ExchangeRateHistoryDto.js +0 -2
  76. package/lib/cjs/erp/dto/OrgDto.d.ts +0 -33
  77. package/lib/cjs/erp/dto/OrgDto.js +0 -2
  78. package/lib/cjs/erp/dto/OrgQueryDto.d.ts +0 -21
  79. package/lib/cjs/erp/dto/OrgQueryDto.js +0 -2
  80. package/lib/cjs/erp/dto/OrgViewDto.d.ts +0 -63
  81. package/lib/cjs/erp/dto/OrgViewDto.js +0 -2
  82. package/lib/cjs/erp/dto/PinDto.d.ts +0 -61
  83. package/lib/cjs/erp/dto/PinDto.js +0 -2
  84. package/lib/cjs/erp/dto/PlaceParsedDto.d.ts +0 -50
  85. package/lib/cjs/erp/dto/PlaceParsedDto.js +0 -2
  86. package/lib/cjs/erp/dto/ResponseActionMessageDto.d.ts +0 -14
  87. package/lib/cjs/erp/dto/ResponseActionMessageDto.js +0 -2
  88. package/lib/cjs/erp/rq/MemberListRQ.d.ts +0 -5
  89. package/lib/cjs/erp/rq/MemberListRQ.js +0 -2
  90. package/lib/cjs/erp/rq/OrgListRQ.d.ts +0 -10
  91. package/lib/cjs/erp/rq/OrgListRQ.js +0 -2
  92. package/lib/cjs/erp/rq/OrgQueryRQ.d.ts +0 -14
  93. package/lib/cjs/erp/rq/OrgQueryRQ.js +0 -2
  94. package/lib/cjs/erp/rq/ParsePinRQ.d.ts +0 -14
  95. package/lib/cjs/erp/rq/ParsePinRQ.js +0 -2
  96. package/lib/cjs/erp/rq/PlaceParseRQ.d.ts +0 -25
  97. package/lib/cjs/erp/rq/PlaceParseRQ.js +0 -2
  98. package/lib/cjs/erp/rq/PlaceQueryRQ.d.ts +0 -58
  99. package/lib/cjs/erp/rq/PlaceQueryRQ.js +0 -21
  100. package/lib/cjs/erp/rq/QueryRQ.d.ts +0 -16
  101. package/lib/cjs/erp/rq/RegionsRQ.d.ts +0 -22
  102. package/lib/cjs/erp/rq/RegionsRQ.js +0 -2
  103. package/lib/cjs/erp/rq/SendActionMessageRQ.d.ts +0 -26
  104. package/lib/cjs/erp/rq/SendActionMessageRQ.js +0 -2
  105. package/lib/cjs/erp/rq/TiplistRQ.js +0 -2
  106. package/lib/mjs/erp/AddressApi.d.ts +0 -127
  107. package/lib/mjs/erp/AddressApi.js +0 -226
  108. package/lib/mjs/erp/MemberApi.d.ts +0 -22
  109. package/lib/mjs/erp/MemberApi.js +0 -22
  110. package/lib/mjs/erp/OrgApi.d.ts +0 -74
  111. package/lib/mjs/erp/OrgApi.js +0 -90
  112. package/lib/mjs/erp/PublicApi.d.ts +0 -127
  113. package/lib/mjs/erp/PublicApi.js +0 -208
  114. package/lib/mjs/erp/dto/AuditLineDto.d.ts +0 -24
  115. package/lib/mjs/erp/dto/CurrencyDto.d.ts +0 -6
  116. package/lib/mjs/erp/dto/ExchangeRateDto.d.ts +0 -13
  117. package/lib/mjs/erp/dto/ExchangeRateHistoryDto.d.ts +0 -8
  118. package/lib/mjs/erp/dto/ExchangeRateHistoryDto.js +0 -1
  119. package/lib/mjs/erp/dto/OrgDto.d.ts +0 -33
  120. package/lib/mjs/erp/dto/OrgDto.js +0 -1
  121. package/lib/mjs/erp/dto/OrgQueryDto.d.ts +0 -21
  122. package/lib/mjs/erp/dto/OrgQueryDto.js +0 -1
  123. package/lib/mjs/erp/dto/OrgViewDto.d.ts +0 -63
  124. package/lib/mjs/erp/dto/OrgViewDto.js +0 -1
  125. package/lib/mjs/erp/dto/PinDto.d.ts +0 -61
  126. package/lib/mjs/erp/dto/PinDto.js +0 -1
  127. package/lib/mjs/erp/dto/PlaceParsedDto.d.ts +0 -50
  128. package/lib/mjs/erp/dto/PlaceParsedDto.js +0 -1
  129. package/lib/mjs/erp/dto/ResponseActionMessageDto.d.ts +0 -14
  130. package/lib/mjs/erp/dto/ResponseActionMessageDto.js +0 -1
  131. package/lib/mjs/erp/rq/MemberListRQ.d.ts +0 -5
  132. package/lib/mjs/erp/rq/MemberListRQ.js +0 -1
  133. package/lib/mjs/erp/rq/OrgListRQ.d.ts +0 -10
  134. package/lib/mjs/erp/rq/OrgListRQ.js +0 -1
  135. package/lib/mjs/erp/rq/OrgQueryRQ.d.ts +0 -14
  136. package/lib/mjs/erp/rq/OrgQueryRQ.js +0 -1
  137. package/lib/mjs/erp/rq/ParsePinRQ.d.ts +0 -14
  138. package/lib/mjs/erp/rq/ParsePinRQ.js +0 -1
  139. package/lib/mjs/erp/rq/PlaceParseRQ.d.ts +0 -25
  140. package/lib/mjs/erp/rq/PlaceParseRQ.js +0 -1
  141. package/lib/mjs/erp/rq/PlaceQueryRQ.d.ts +0 -58
  142. package/lib/mjs/erp/rq/PlaceQueryRQ.js +0 -18
  143. package/lib/mjs/erp/rq/QueryRQ.d.ts +0 -16
  144. package/lib/mjs/erp/rq/RegionsRQ.d.ts +0 -22
  145. package/lib/mjs/erp/rq/RegionsRQ.js +0 -1
  146. package/lib/mjs/erp/rq/SendActionMessageRQ.d.ts +0 -26
  147. package/lib/mjs/erp/rq/SendActionMessageRQ.js +0 -1
  148. package/lib/mjs/erp/rq/TiplistRQ.js +0 -1
  149. package/src/erp/AddressApi.ts +0 -310
  150. package/src/erp/MemberApi.ts +0 -28
  151. package/src/erp/OrgApi.ts +0 -136
  152. package/src/erp/PublicApi.ts +0 -282
  153. package/src/erp/dto/AuditLineDto.ts +0 -27
  154. package/src/erp/dto/CurrencyDto.ts +0 -7
  155. package/src/erp/dto/ExchangeRateDto.ts +0 -14
  156. package/src/erp/dto/ExchangeRateHistoryDto.ts +0 -9
  157. package/src/erp/dto/OrgDto.ts +0 -39
  158. package/src/erp/dto/OrgQueryDto.ts +0 -24
  159. package/src/erp/dto/OrgViewDto.ts +0 -78
  160. package/src/erp/dto/PinDto.ts +0 -71
  161. package/src/erp/dto/PlaceParsedDto.ts +0 -58
  162. package/src/erp/dto/ResponseActionMessageDto.ts +0 -16
  163. package/src/erp/rq/MemberListRQ.ts +0 -6
  164. package/src/erp/rq/OrgListRQ.ts +0 -11
  165. package/src/erp/rq/OrgQueryRQ.ts +0 -16
  166. package/src/erp/rq/ParsePinRQ.ts +0 -15
  167. package/src/erp/rq/PlaceParseRQ.ts +0 -28
  168. package/src/erp/rq/PlaceQueryRQ.ts +0 -67
  169. package/src/erp/rq/QueryRQ.ts +0 -18
  170. package/src/erp/rq/RegionsRQ.ts +0 -26
  171. package/src/erp/rq/SendActionMessageRQ.ts +0 -29
  172. package/lib/cjs/{erp → api}/BaseApi.d.ts +0 -0
  173. package/lib/cjs/{erp → api}/BaseApi.js +0 -0
  174. package/lib/cjs/{erp/dto/ApiRefreshTokenDto.js → api/dto/AntiforgeryRequestToken.js} +0 -0
  175. package/lib/cjs/{erp → api}/dto/ApiRefreshTokenDto.d.ts +0 -0
  176. package/lib/cjs/{erp/dto/AuditLineDto.js → api/dto/ApiRefreshTokenDto.js} +0 -0
  177. package/lib/cjs/{erp → api}/dto/IdLabelDto.d.ts +0 -0
  178. package/lib/cjs/{erp → api}/dto/IdLabelDto.js +0 -0
  179. package/lib/cjs/{erp → api}/dto/IdLabelPrimaryDto.d.ts +0 -0
  180. package/lib/cjs/{erp → api}/dto/IdLabelPrimaryDto.js +0 -0
  181. package/lib/cjs/{erp → api}/dto/InitCallDto.d.ts +0 -0
  182. package/lib/cjs/{erp → api}/dto/InitCallDto.js +0 -0
  183. package/lib/cjs/{erp → api}/dto/ResultPayload.js +0 -0
  184. package/lib/cjs/{erp → api}/rq/ApiRefreshTokenRQ.d.ts +0 -0
  185. package/lib/cjs/{erp → api}/rq/ApiRefreshTokenRQ.js +0 -0
  186. package/lib/cjs/{erp → api}/rq/AuthRequest.d.ts +0 -0
  187. package/lib/cjs/{erp → api}/rq/AuthRequest.js +0 -0
  188. package/lib/cjs/{erp → api}/rq/GetLogInUrlRQ.d.ts +0 -0
  189. package/lib/cjs/{erp → api}/rq/GetLogInUrlRQ.js +0 -0
  190. package/lib/cjs/{erp → api}/rq/LoginIdRQ.d.ts +0 -0
  191. package/lib/cjs/{erp → api}/rq/LoginIdRQ.js +0 -0
  192. package/lib/cjs/{erp → api}/rq/LoginRQ.d.ts +1 -1
  193. package/lib/cjs/{erp → api}/rq/LoginRQ.js +0 -0
  194. package/lib/cjs/{erp → api}/rq/MergeRQ.d.ts +0 -0
  195. package/lib/cjs/{erp → api}/rq/MergeRQ.js +0 -0
  196. package/lib/cjs/{erp → api}/rq/QueryPagingData.js +0 -0
  197. package/lib/cjs/{erp → api}/rq/QueryRQ.js +0 -0
  198. package/lib/cjs/{erp → api}/rq/RefreshTokenRQ.d.ts +0 -0
  199. package/lib/cjs/{erp → api}/rq/RefreshTokenRQ.js +0 -0
  200. package/lib/cjs/{erp → api}/rq/ResetPasswordRQ.d.ts +0 -0
  201. package/lib/cjs/{erp → api}/rq/ResetPasswordRQ.js +0 -0
  202. package/lib/cjs/{erp → api}/rq/SignoutRQ.d.ts +0 -0
  203. package/lib/cjs/{erp → api}/rq/SignoutRQ.js +0 -0
  204. package/lib/cjs/{erp/dto/CurrencyDto.js → api/rq/StatusQueryRQ.js} +0 -0
  205. package/lib/cjs/{erp → api}/rq/SwitchOrgRQ.d.ts +0 -0
  206. package/lib/cjs/{erp → api}/rq/SwitchOrgRQ.js +0 -0
  207. package/lib/cjs/{erp → api}/rq/TokenRQ.d.ts +0 -0
  208. package/lib/cjs/{erp → api}/rq/TokenRQ.js +0 -0
  209. package/lib/cjs/{erp/dto/ExchangeRateDto.js → api/rq/UpdateModel.js} +0 -0
  210. package/lib/cjs/{erp → api}/rq/UpdateStatusRQ.d.ts +0 -0
  211. package/lib/cjs/{erp → api}/rq/UpdateStatusRQ.js +0 -0
  212. package/lib/mjs/{erp → api}/BaseApi.d.ts +0 -0
  213. package/lib/mjs/{erp → api}/BaseApi.js +0 -0
  214. package/lib/mjs/{erp/dto/ApiRefreshTokenDto.js → api/dto/AntiforgeryRequestToken.js} +0 -0
  215. package/lib/mjs/{erp → api}/dto/ApiRefreshTokenDto.d.ts +0 -0
  216. package/lib/mjs/{erp/dto/AuditLineDto.js → api/dto/ApiRefreshTokenDto.js} +0 -0
  217. package/lib/mjs/{erp → api}/dto/IdLabelDto.d.ts +0 -0
  218. package/lib/mjs/{erp → api}/dto/IdLabelDto.js +0 -0
  219. package/lib/mjs/{erp → api}/dto/IdLabelPrimaryDto.d.ts +0 -0
  220. package/lib/mjs/{erp → api}/dto/IdLabelPrimaryDto.js +0 -0
  221. package/lib/mjs/{erp → api}/dto/InitCallDto.d.ts +0 -0
  222. package/lib/mjs/{erp → api}/dto/InitCallDto.js +0 -0
  223. package/lib/mjs/{erp → api}/dto/ResultPayload.js +0 -0
  224. package/lib/mjs/{erp → api}/rq/ApiRefreshTokenRQ.d.ts +0 -0
  225. package/lib/mjs/{erp → api}/rq/ApiRefreshTokenRQ.js +0 -0
  226. package/lib/mjs/{erp → api}/rq/AuthRequest.d.ts +0 -0
  227. package/lib/mjs/{erp → api}/rq/AuthRequest.js +0 -0
  228. package/lib/mjs/{erp → api}/rq/GetLogInUrlRQ.d.ts +0 -0
  229. package/lib/mjs/{erp → api}/rq/GetLogInUrlRQ.js +0 -0
  230. package/lib/mjs/{erp → api}/rq/LoginIdRQ.d.ts +0 -0
  231. package/lib/mjs/{erp → api}/rq/LoginIdRQ.js +0 -0
  232. package/lib/mjs/{erp → api}/rq/LoginRQ.d.ts +1 -1
  233. package/lib/mjs/{erp → api}/rq/LoginRQ.js +0 -0
  234. package/lib/mjs/{erp → api}/rq/MergeRQ.d.ts +0 -0
  235. package/lib/mjs/{erp → api}/rq/MergeRQ.js +0 -0
  236. package/lib/mjs/{erp → api}/rq/QueryPagingData.js +0 -0
  237. package/lib/mjs/{erp → api}/rq/QueryRQ.js +0 -0
  238. package/lib/mjs/{erp → api}/rq/RefreshTokenRQ.d.ts +0 -0
  239. package/lib/mjs/{erp → api}/rq/RefreshTokenRQ.js +0 -0
  240. package/lib/mjs/{erp → api}/rq/ResetPasswordRQ.d.ts +0 -0
  241. package/lib/mjs/{erp → api}/rq/ResetPasswordRQ.js +0 -0
  242. package/lib/mjs/{erp → api}/rq/SignoutRQ.d.ts +0 -0
  243. package/lib/mjs/{erp → api}/rq/SignoutRQ.js +0 -0
  244. package/lib/mjs/{erp/dto/CurrencyDto.js → api/rq/StatusQueryRQ.js} +0 -0
  245. package/lib/mjs/{erp → api}/rq/SwitchOrgRQ.d.ts +0 -0
  246. package/lib/mjs/{erp → api}/rq/SwitchOrgRQ.js +0 -0
  247. package/lib/mjs/{erp → api}/rq/TokenRQ.d.ts +0 -0
  248. package/lib/mjs/{erp → api}/rq/TokenRQ.js +0 -0
  249. package/lib/mjs/{erp/dto/ExchangeRateDto.js → api/rq/UpdateModel.js} +0 -0
  250. package/lib/mjs/{erp → api}/rq/UpdateStatusRQ.d.ts +0 -0
  251. package/lib/mjs/{erp → api}/rq/UpdateStatusRQ.js +0 -0
  252. package/src/{erp → api}/BaseApi.ts +0 -0
  253. package/src/{erp → api}/dto/ApiRefreshTokenDto.ts +0 -0
  254. package/src/{erp → api}/dto/IdLabelDto.ts +0 -0
  255. package/src/{erp → api}/dto/IdLabelPrimaryDto.ts +0 -0
  256. package/src/{erp → api}/dto/InitCallDto.ts +0 -0
  257. package/src/{erp → api}/rq/ApiRefreshTokenRQ.ts +0 -0
  258. package/src/{erp → api}/rq/AuthRequest.ts +0 -0
  259. package/src/{erp → api}/rq/GetLogInUrlRQ.ts +0 -0
  260. package/src/{erp → api}/rq/LoginIdRQ.ts +0 -0
  261. package/src/{erp → api}/rq/LoginRQ.ts +1 -1
  262. /package/src/{erp → api}/rq/MergeRQ.ts +0 -0
  263. /package/src/{erp → api}/rq/RefreshTokenRQ.ts +0 -0
  264. /package/src/{erp → api}/rq/ResetPasswordRQ.ts +0 -0
  265. /package/src/{erp → api}/rq/SignoutRQ.ts +0 -0
  266. /package/src/{erp → api}/rq/SwitchOrgRQ.ts +0 -0
  267. /package/src/{erp → api}/rq/TokenRQ.ts +0 -0
  268. /package/src/{erp → api}/rq/UpdateStatusRQ.ts +0 -0
package/src/erp/OrgApi.ts DELETED
@@ -1,136 +0,0 @@
1
- import { IApiPayload } from '@etsoo/restclient';
2
- import { DataTypes, ListType } from '@etsoo/shared';
3
- import { IApp } from '../app/IApp';
4
- import { OrgDto } from './dto/OrgDto';
5
- import { OrgQueryDto } from './dto/OrgQueryDto';
6
- import { OrgViewDto } from './dto/OrgViewDto';
7
- import { IdResultPayload, StringIdResultPayload } from './dto/ResultPayload';
8
- import { EntityApi } from './EntityApi';
9
- import { OrgListRQ } from './rq/OrgListRQ';
10
- import { OrgQueryRQ } from './rq/OrgQueryRQ';
11
- import { SendActionMessageRQ } from './rq/SendActionMessageRQ';
12
- import { ApiService } from '../business/ApiService';
13
-
14
- const cachedOrgs: { [P: number]: OrgViewDto | undefined | null } = {};
15
-
16
- /**
17
- * Organization API
18
- */
19
- export class OrgApi extends EntityApi {
20
- /**
21
- * Constructor
22
- * @param app Application
23
- */
24
- constructor(app: IApp) {
25
- super('Organization', app);
26
- }
27
-
28
- /**
29
- * Check API service's availability
30
- * @param api API service id
31
- * @param payload Payload
32
- * @returns Result
33
- */
34
- checkApiService(api: ApiService, payload?: StringIdResultPayload) {
35
- payload ??= { showLoading: false };
36
- return this.api.get(`${this.flag}/CheckApiService`, { api }, payload);
37
- }
38
-
39
- /**
40
- * Get organization list
41
- * @param items Max items or request data
42
- * @param serviceId Service id
43
- * @param payload Payload
44
- * @returns Result
45
- */
46
- list(items?: number, serviceId?: number): Promise<ListType[] | undefined>;
47
- list(
48
- rq: OrgListRQ,
49
- payload?: IApiPayload<ListType[]>
50
- ): Promise<ListType[] | undefined>;
51
- list<T extends number | OrgListRQ>(
52
- items?: T,
53
- serviceId?: T extends number ? number : IApiPayload<ListType[]>
54
- ) {
55
- if (typeof items === 'object') {
56
- if (typeof serviceId === 'number') return undefined;
57
- return this.listBase(items, serviceId);
58
- } else {
59
- if (typeof serviceId === 'object') return undefined;
60
- return this.listBase<number, OrgListRQ, ListType>(
61
- { queryPaging: items, serviceId },
62
- { defaultValue: [], showLoading: false }
63
- );
64
- }
65
- }
66
-
67
- /**
68
- * Query
69
- * @param rq Request data
70
- * @param payload Payload
71
- * @returns Result
72
- */
73
- query(rq: OrgQueryRQ, payload?: IApiPayload<OrgQueryDto[]>) {
74
- return this.queryBase(rq, payload);
75
- }
76
-
77
- /**
78
- * Read
79
- * @param id Id
80
- * @param payload Payload
81
- * @param reload Reload data
82
- * @returns Result
83
- */
84
- async read(
85
- id: number,
86
- payload?: IApiPayload<OrgViewDto>,
87
- reload: boolean = false
88
- ) {
89
- let data = cachedOrgs[id];
90
- if (data == null || reload) {
91
- data = await this.readBase(id, payload);
92
- if (data != null) cachedOrgs[id] = data;
93
- }
94
- return data;
95
- }
96
-
97
- /**
98
- * Send action message
99
- * @param rq Request data
100
- * @param payload Payload
101
- * @returns Result
102
- */
103
- sendActionMessage(rq: SendActionMessageRQ, payload?: IApiPayload<void>) {
104
- const appId =
105
- 'serviceId' in this.app.settings ? this.app.settings.serviceId : 0;
106
- payload ??= { showLoading: false };
107
- return this.api.post(
108
- 'System/SendActionMessage',
109
- { ...rq, appId },
110
- payload
111
- );
112
- }
113
-
114
- /**
115
- * Update
116
- * @param data Modal data
117
- * @param payload Payload
118
- * @returns Result
119
- */
120
- update(
121
- data: DataTypes.AddOrEditType<OrgDto, true>,
122
- payload?: IdResultPayload
123
- ) {
124
- return super.updateBase(data, payload);
125
- }
126
-
127
- /**
128
- * Read for update
129
- * @param id Id
130
- * @param payload Payload
131
- * @returns Result
132
- */
133
- updateRead(id: number, payload?: IApiPayload<OrgDto>) {
134
- return super.updateReadBase(id, payload);
135
- }
136
- }
@@ -1,282 +0,0 @@
1
- import { IApiPayload } from '@etsoo/restclient';
2
- import { DataTypes, ListType, ListType1 } from '@etsoo/shared';
3
- import { Currencies, Currency } from '../business/Currency';
4
- import { AssetUnits, ProductUnit } from '../business/ProductUnit';
5
- import { RepeatOption } from '../business/RepeatOption';
6
- import { BaseApi } from './BaseApi';
7
- import { CurrencyDto } from './dto/CurrencyDto';
8
- import { ExchangeRateDto } from './dto/ExchangeRateDto';
9
- import { ExchangeRateHistoryDto } from './dto/ExchangeRateHistoryDto';
10
- import { PinDto } from './dto/PinDto';
11
- import { ParsePinRQ } from './rq/ParsePinRQ';
12
-
13
- const cachedCurrencyRates: {
14
- [P: Currency | string]: ExchangeRateDto | undefined | null;
15
- } = {};
16
-
17
- const unitPrefix = 'unit';
18
-
19
- /**
20
- * Public API
21
- */
22
- export class PublicApi extends BaseApi {
23
- /**
24
- * Default currency
25
- */
26
- defaultCurrency: string | Currency = this.app.defaultRegion.currency;
27
-
28
- /**
29
- * Asset units
30
- * @returns Result
31
- */
32
- assetUnits() {
33
- return this.app.getEnumList(AssetUnits, unitPrefix);
34
- }
35
-
36
- /**
37
- * Asset string id units
38
- * @returns Result
39
- */
40
- assetStrUnits() {
41
- return this.app.getEnumStrList(AssetUnits, unitPrefix);
42
- }
43
-
44
- /**
45
- * Base units
46
- * @returns Result
47
- */
48
- baseUnits() {
49
- return this.app.getEnumStrList(ProductUnit, unitPrefix);
50
- }
51
-
52
- /**
53
- * Get currencies
54
- * @param names Limited currency names for local data, undefined will try to retrive remotely
55
- * @returns Result
56
- */
57
- currencies(): Promise<CurrencyDto[] | undefined>;
58
- currencies(names: string[] | Currency[] | boolean): ListType1[];
59
- currencies(names?: string[] | Currency[] | boolean) {
60
- if (typeof names === 'boolean' && names) {
61
- return Currencies.map((name) => ({
62
- id: name,
63
- label: this.app.get(`currency${name}`) ?? name
64
- }));
65
- }
66
-
67
- if (Array.isArray(names)) {
68
- return names.map((name) => ({
69
- id: name,
70
- label: this.app.get(`currency${name}`) ?? name
71
- }));
72
- }
73
-
74
- return this.api.get<CurrencyDto[]>('Public/GetCurrencies', undefined, {
75
- defaultValue: [],
76
- showLoading: false
77
- });
78
- }
79
-
80
- /**
81
- * Get exchange amount
82
- * @param amount Amount
83
- * @param sourceCurrency Source currency
84
- * @param targetCurrency Target currency
85
- * @returns Result
86
- */
87
- async exchangeAmount(
88
- amount: number,
89
- sourceCurrency: Currency | string,
90
- targetCurrency?: Currency | string
91
- ) {
92
- targetCurrency ??= this.app.defaultRegion.currency;
93
-
94
- const [sourceRate, targetRate] = await Promise.all([
95
- this.exchangeRate(sourceCurrency, {
96
- showLoading: false
97
- }),
98
- this.exchangeRate(targetCurrency, {
99
- showLoading: false
100
- })
101
- ]);
102
- if (sourceRate == null || targetRate == null) return undefined;
103
-
104
- const result =
105
- Math.round(
106
- (1000 * amount * sourceRate.exchangeRate) /
107
- targetRate.exchangeRate
108
- ) / 1000;
109
- return result;
110
- }
111
-
112
- /**
113
- * Get exchange rate
114
- * @param currency Currency
115
- * @param payload Payload
116
- * @param reload Reload data
117
- * @returns Result
118
- */
119
- async exchangeRate(
120
- currency: Currency | string,
121
- payload?: IApiPayload<ExchangeRateDto>,
122
- reload = false
123
- ) {
124
- let rate = cachedCurrencyRates[currency];
125
- if (rate == null || reload) {
126
- rate =
127
- currency === this.defaultCurrency
128
- ? { exchangeRate: 100, updateTime: new Date() }
129
- : await this.api.get(
130
- `Public/ExchangeRate/${currency}`,
131
- undefined,
132
- payload
133
- );
134
- if (rate == null) return undefined;
135
- cachedCurrencyRates[currency] = rate;
136
- }
137
- return rate;
138
- }
139
-
140
- /**
141
- * Get exchange rate history
142
- * @param currencies Currencies
143
- * @param months Max months
144
- * @param payload Payload
145
- * @returns Result
146
- */
147
- exchangeRateHistory(
148
- currencies: (Currency | string)[],
149
- months?: number,
150
- payload?: IApiPayload<ExchangeRateHistoryDto[]>
151
- ) {
152
- payload ??= { defaultValue: [] };
153
- return this.api.post(
154
- 'Public/ExchangeRateHistory',
155
- { currencies, months },
156
- payload
157
- );
158
- }
159
-
160
- /**
161
- * Get organization's avatar URL
162
- * @param id Organization id
163
- * @returns Result
164
- */
165
- getOrgAvatar(id: number) {
166
- return `${this.api.baseUrl}Storage/OrgAvatar/${id}`;
167
- }
168
-
169
- /**
170
- * Get currency label
171
- * @param currency Currency
172
- * @returns Label
173
- */
174
- getCurrencyLabel(currency: Currency | string) {
175
- const c = `currency${currency}`;
176
- return this.app.get(c) ?? c;
177
- }
178
-
179
- /**
180
- * Get product unit's label
181
- * Please define the label in culture with key 'unitPC' for ProductUnit.PC like that
182
- * @param unit Unit
183
- * @param isJoined Add the join label like 'per Kg' for Kg
184
- * @returns Label
185
- */
186
- getUnitLabel(unit: ProductUnit | number, isJoined?: boolean | string) {
187
- const key = ProductUnit[unit];
188
- const label = this.app.get(unitPrefix + key) ?? key;
189
- const join = this.getUnitJoin(isJoined);
190
- if (join) {
191
- return join.format(label);
192
- }
193
- return label;
194
- }
195
-
196
- private getUnitJoin(isJoined: boolean | string | undefined) {
197
- return typeof isJoined === 'string'
198
- ? this.app.get(isJoined) ?? isJoined
199
- : isJoined
200
- ? this.app.get('unitJoin')
201
- : undefined;
202
- }
203
-
204
- /**
205
- * Get mobile base64 QRCode
206
- * @param id User id
207
- * @param host Host URL
208
- * @param payload Payload
209
- */
210
- mobileQRCode(id?: string, host?: string, payload?: IApiPayload<string>) {
211
- return this.api.post('Public/MobileQRCode', { id, host }, payload);
212
- }
213
-
214
- /**
215
- * Parse Pin data
216
- * @param input Request data
217
- * @param payload Payload
218
- * @returns Result
219
- */
220
- parsePin(input: ParsePinRQ | string, payload?: IApiPayload<PinDto>) {
221
- const rq = typeof input === 'string' ? { pin: input } : input;
222
- rq.language ??= this.app.culture;
223
- return this.api.post('Public/ParsePin', rq, payload);
224
- }
225
-
226
- /**
227
- *
228
- * Get all repeat options
229
- * @param options Define the order and limit the items
230
- * @param isJoined Add the join label like 'per Kg' for Kg
231
- * @returns Units
232
- */
233
- repeatOptions(options?: string[], isJoined: boolean = true): ListType[] {
234
- options ??= DataTypes.getEnumKeys(RepeatOption);
235
- return this.units(options, isJoined);
236
- }
237
-
238
- /**
239
- * Get all supported cultures
240
- * @param payload Payload
241
- * @returns Result
242
- */
243
- supportedCultures(payload?: IApiPayload<ListType1[]>) {
244
- return this.api.get('Public/SupportedCultures', undefined, payload);
245
- }
246
-
247
- /**
248
- * Get all product units
249
- * @returns Units
250
- */
251
- units(): ListType[];
252
-
253
- /**
254
- *
255
- * Get all product units
256
- * @param options Define the order and limit the items
257
- * @param isJoined Add the join label like 'per Kg' for Kg
258
- * @returns Units
259
- */
260
- units(options?: string[], isJoined?: boolean): ListType[];
261
-
262
- /**
263
- *
264
- * Get all product units
265
- * @param options Define the order and limit the items
266
- * @param isJoined Add the join label like 'per Kg' for Kg
267
- * @returns Units
268
- */
269
- units(options?: string[], isJoined?: boolean | string): ListType[] {
270
- options ??= DataTypes.getEnumKeys(ProductUnit);
271
- return options.map((key) => {
272
- const id = DataTypes.getEnumByKey(ProductUnit, key)! as number;
273
- return {
274
- id,
275
- label: this.getUnitLabel(
276
- id,
277
- this.getUnitJoin(isJoined)
278
- ).formatInitial(true)
279
- };
280
- });
281
- }
282
- }
@@ -1,27 +0,0 @@
1
- import { IApiPayload } from '@etsoo/restclient';
2
-
3
- /**
4
- * Audit line data
5
- */
6
- export type AuditLineDto = {
7
- id: number;
8
- creation: Date;
9
- user: string;
10
- action: string;
11
- changes?: AuditLineChangesDto;
12
- oldData?: Record<string, unknown>;
13
- newData?: Record<string, unknown>;
14
- };
15
-
16
- /**
17
- * Audit line changes data
18
- */
19
- export type AuditLineChangesDto = {
20
- oldData: Record<string, unknown>;
21
- newData: Record<string, unknown>;
22
- };
23
-
24
- /**
25
- * Audit line API payload
26
- */
27
- export type AuditLinePayload = IApiPayload<AuditLineDto[]>;
@@ -1,7 +0,0 @@
1
- import { ListType1 } from '@etsoo/shared';
2
- import { ExchangeRateDto } from './ExchangeRateDto';
3
-
4
- /**
5
- * Currency data
6
- */
7
- export type CurrencyDto = ListType1 & ExchangeRateDto;
@@ -1,14 +0,0 @@
1
- /**
2
- * Exchange rate data
3
- */
4
- export type ExchangeRateDto = {
5
- /**
6
- * Exchange rate
7
- */
8
- exchangeRate: number;
9
-
10
- /**
11
- * Update time
12
- */
13
- updateTime: string | Date;
14
- };
@@ -1,9 +0,0 @@
1
- import { Currency } from '../../business/Currency';
2
- import { ExchangeRateDto } from './ExchangeRateDto';
3
-
4
- /**
5
- * Exchange rate history data
6
- */
7
- export type ExchangeRateHistoryDto = ExchangeRateDto & {
8
- id: Currency;
9
- };
@@ -1,39 +0,0 @@
1
- /**
2
- * Organization data
3
- */
4
- export type OrgDto = {
5
- /**
6
- * Id
7
- */
8
- id: number;
9
-
10
- /**
11
- * Region id
12
- */
13
- regionId: string;
14
-
15
- /**
16
- * Name
17
- */
18
- name: string;
19
-
20
- /**
21
- * Identifier
22
- */
23
- identifier: string;
24
-
25
- /**
26
- * Brand
27
- */
28
- brand?: string;
29
-
30
- /**
31
- * Trade as
32
- */
33
- tradeAs?: string;
34
-
35
- /**
36
- * Parent organization
37
- */
38
- parentId?: number;
39
- };
@@ -1,24 +0,0 @@
1
- /**
2
- * Organization query data
3
- */
4
- export type OrgQueryDto = {
5
- /**
6
- * Id
7
- */
8
- id: number;
9
-
10
- /**
11
- * Brand, like ETSOO
12
- */
13
- brand?: string;
14
-
15
- /**
16
- * Name, like ETSOO NZ LIMITED
17
- */
18
- name: string;
19
-
20
- /**
21
- * Creation
22
- */
23
- creation: string | Date;
24
- };
@@ -1,78 +0,0 @@
1
- import { EntityStatus } from '../../business/EntityStatus';
2
-
3
- export type OrgViewDto = {
4
- /**
5
- * Id
6
- */
7
- id: number;
8
-
9
- /**
10
- * Entity id
11
- */
12
- entityId: number;
13
-
14
- /**
15
- * Trade as
16
- */
17
- tradeAs?: string;
18
-
19
- /**
20
- * Brand, like ETSOO
21
- */
22
- brand?: string;
23
-
24
- /**
25
- * Name, like ETSOO NZ LIMITED
26
- */
27
- name: string;
28
-
29
- /**
30
- * Country or region id, like CN = China
31
- */
32
- regionId?: string;
33
-
34
- /**
35
- * State id
36
- */
37
- stateId?: string;
38
-
39
- /**
40
- * City id
41
- */
42
- cityId?: string;
43
-
44
- /**
45
- * Identifier id
46
- */
47
- identifier?: string;
48
-
49
- /**
50
- * Avatar or logo
51
- */
52
- avatar?: string;
53
-
54
- /**
55
- * Corporate or personal
56
- */
57
- corporate?: boolean;
58
-
59
- /**
60
- * Expiry time
61
- */
62
- expiry?: string | Date;
63
-
64
- /**
65
- * Entity status
66
- */
67
- entityStatus: EntityStatus;
68
-
69
- /**
70
- * Parent organization id
71
- */
72
- parentId?: number;
73
-
74
- /**
75
- * Creation
76
- */
77
- creation: string | Date;
78
- };
@@ -1,71 +0,0 @@
1
- /**
2
- * Pin data
3
- * 身份证信息
4
- */
5
- export type PinDto = {
6
- /**
7
- * Region id
8
- * 地区编号
9
- */
10
- regionId?: string;
11
-
12
- /**
13
- * State or province
14
- * 州 / 省
15
- */
16
- state?: string;
17
-
18
- /**
19
- * State or province id
20
- * 州 / 省编号
21
- */
22
- stateId?: string;
23
-
24
- /**
25
- * City
26
- * 城市
27
- */
28
- city?: string;
29
-
30
- /**
31
- * City id
32
- * 城市编号
33
- */
34
- cityId?: number;
35
-
36
- /**
37
- * District
38
- * 区县
39
- */
40
- district?: string;
41
-
42
- /**
43
- * District id
44
- * 区县编号
45
- */
46
- districtId?: number;
47
-
48
- /**
49
- * Merged previous district
50
- * 合并的原区县
51
- */
52
- mergedDistrict?: string;
53
-
54
- /**
55
- * Gender
56
- * 性别
57
- */
58
- gender?: 'F' | 'M';
59
-
60
- /**
61
- * Birthday
62
- * 生日
63
- */
64
- birthday?: string | Date;
65
-
66
- /**
67
- * Whether the form is legal
68
- * 是否形式合法
69
- */
70
- valid: boolean;
71
- };