aa-ledger 1.0.4__py3-none-any.whl → 2.0.0__py3-none-any.whl

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 (280) hide show
  1. {aa_ledger-1.0.4.dist-info → aa_ledger-2.0.0.dist-info}/METADATA +5 -6
  2. aa_ledger-2.0.0.dist-info/RECORD +267 -0
  3. ledger/__init__.py +2 -2
  4. ledger/admin.py +23 -18
  5. ledger/api/__init__.py +23 -7
  6. ledger/api/{ledger/admin.py → admin.py} +25 -31
  7. ledger/api/alliance.py +755 -0
  8. ledger/api/character.py +786 -0
  9. ledger/api/corporation.py +1141 -0
  10. ledger/api/{helpers.py → helpers/core.py} +33 -33
  11. ledger/api/helpers/icons.py +372 -0
  12. ledger/api/helpers/planetary_helper.py +354 -0
  13. ledger/api/planetary.py +354 -0
  14. ledger/api/schema.py +240 -15
  15. ledger/app_settings.py +11 -27
  16. ledger/auth_hooks.py +2 -2
  17. ledger/constants.py +50 -177
  18. ledger/decorators.py +2 -46
  19. ledger/forms.py +133 -39
  20. ledger/helpers/billboard.py +194 -144
  21. ledger/helpers/cache.py +105 -0
  22. ledger/helpers/discord.py +2 -4
  23. ledger/helpers/eveonline.py +160 -0
  24. ledger/helpers/ledger_data.py +23 -0
  25. ledger/helpers/ref_type.py +53 -78
  26. ledger/locale/cs_CZ/LC_MESSAGES/django.mo +0 -0
  27. ledger/locale/cs_CZ/LC_MESSAGES/django.po +349 -193
  28. ledger/locale/de/LC_MESSAGES/django.mo +0 -0
  29. ledger/locale/de/LC_MESSAGES/django.po +528 -379
  30. ledger/locale/django.pot +721 -546
  31. ledger/locale/es/LC_MESSAGES/django.mo +0 -0
  32. ledger/locale/es/LC_MESSAGES/django.po +349 -194
  33. ledger/locale/fr_FR/LC_MESSAGES/django.mo +0 -0
  34. ledger/locale/fr_FR/LC_MESSAGES/django.po +349 -193
  35. ledger/locale/it_IT/LC_MESSAGES/django.mo +0 -0
  36. ledger/locale/it_IT/LC_MESSAGES/django.po +349 -193
  37. ledger/locale/ja/LC_MESSAGES/django.mo +0 -0
  38. ledger/locale/ja/LC_MESSAGES/django.po +348 -193
  39. ledger/locale/ko_KR/LC_MESSAGES/django.mo +0 -0
  40. ledger/locale/ko_KR/LC_MESSAGES/django.po +349 -193
  41. ledger/locale/nl_NL/LC_MESSAGES/django.mo +0 -0
  42. ledger/locale/nl_NL/LC_MESSAGES/django.po +349 -193
  43. ledger/locale/pl_PL/LC_MESSAGES/django.mo +0 -0
  44. ledger/locale/pl_PL/LC_MESSAGES/django.po +350 -193
  45. ledger/locale/ru/LC_MESSAGES/django.mo +0 -0
  46. ledger/locale/ru/LC_MESSAGES/django.po +348 -193
  47. ledger/locale/sk/LC_MESSAGES/django.mo +0 -0
  48. ledger/locale/sk/LC_MESSAGES/django.po +348 -193
  49. ledger/locale/uk/LC_MESSAGES/django.mo +0 -0
  50. ledger/locale/uk/LC_MESSAGES/django.po +348 -193
  51. ledger/locale/zh_Hans/LC_MESSAGES/django.mo +0 -0
  52. ledger/locale/zh_Hans/LC_MESSAGES/django.po +348 -193
  53. ledger/managers/character_audit_manager.py +28 -20
  54. ledger/managers/character_journal_manager.py +185 -357
  55. ledger/managers/character_mining_manager.py +52 -26
  56. ledger/managers/character_planetary_manager.py +178 -136
  57. ledger/managers/corporation_audit_manager.py +36 -27
  58. ledger/managers/corporation_journal_manager.py +92 -56
  59. ledger/managers/general_manager.py +8 -7
  60. ledger/migrations/0018_remove_characterplanet_ledger_char_planet__58a5b6_idx_and_more.py +44 -0
  61. ledger/migrations/0019_rename_characteraudit_characterowner_and_more.py +48 -0
  62. ledger/models/__init__.py +5 -11
  63. ledger/models/characteraudit.py +101 -109
  64. ledger/models/corporationaudit.py +94 -49
  65. ledger/models/general.py +105 -211
  66. ledger/models/helpers/update_manager.py +302 -0
  67. ledger/models/planetary.py +60 -205
  68. ledger/providers.py +101 -0
  69. ledger/static/ledger/css/{ledger.css → aa-ledger.css} +54 -28
  70. ledger/static/ledger/js/aa-ledger.js +124 -0
  71. ledger/static/ledger/js/charts.js +25 -1
  72. ledger/static/ledger/js/view-alliance-ledger.js +383 -0
  73. ledger/static/ledger/js/view-character-ledger.js +388 -0
  74. ledger/static/ledger/js/view-corporation-ledger.js +402 -0
  75. ledger/static/ledger/js/view-planetary.js +492 -0
  76. ledger/static/ledger/libs/amCharts/5.14.4/js/flow.js +2 -0
  77. ledger/static/ledger/libs/amCharts/5.14.4/js/index.js +2 -0
  78. ledger/static/ledger/libs/amCharts/5.14.4/js/percent.js +2 -0
  79. ledger/static/ledger/libs/amCharts/5.14.4/js/themes/Animated.js +2 -0
  80. ledger/static/ledger/libs/amCharts/5.14.4/js/themes/Dark.js +2 -0
  81. ledger/static/ledger/libs/amCharts/5.14.4/js/xy.js +2 -0
  82. ledger/static/ledger/libs/datatables/2.3.5/css/dataTables.bootstrap5.css +610 -0
  83. ledger/static/ledger/libs/datatables/2.3.5/js/dataTables.bootstrap5.js +122 -0
  84. ledger/static/ledger/libs/datatables/2.3.5/js/dataTables.js +14127 -0
  85. ledger/static/ledger/libs/datatables/Extensions/ColumnControl/1.1.1/css/columnControl.bootstrap5.css +516 -0
  86. ledger/static/ledger/libs/datatables/Extensions/ColumnControl/1.1.1/css/columnControl.dataTables.css +529 -0
  87. ledger/static/ledger/libs/datatables/Extensions/ColumnControl/1.1.1/js/columnControl.bootstrap5.js +73 -0
  88. ledger/static/ledger/libs/datatables/Extensions/ColumnControl/1.1.1/js/dataTables.columnControl.js +3090 -0
  89. ledger/static/ledger/libs/datatables/Extensions/FixedHeader/4.0.4/css/fixedHeader.bootstrap5.css +20 -0
  90. ledger/static/ledger/libs/datatables/Extensions/FixedHeader/4.0.4/js/dataTables.fixedHeader.js +1203 -0
  91. ledger/static/ledger/libs/datatables/Extensions/FixedHeader/4.0.4/js/fixedHeader.bootstrap5.js +59 -0
  92. ledger/tasks.py +157 -141
  93. ledger/templates/ledger/base.html +59 -21
  94. ledger/templates/ledger/bundles/aa-ledger-css.html +3 -0
  95. ledger/templates/ledger/bundles/aa-ledger-js.html +3 -0
  96. ledger/templates/ledger/bundles/view-alliance-ledger-js.html +14 -0
  97. ledger/templates/ledger/bundles/view-character-ledger-js.html +15 -0
  98. ledger/templates/ledger/bundles/view-character-planetary-css.html +3 -0
  99. ledger/templates/ledger/bundles/view-character-planetary-js.html +4 -0
  100. ledger/templates/ledger/bundles/view-corporation-ledger-js.html +15 -0
  101. ledger/templates/ledger/partials/modal/confirm.html +0 -1
  102. ledger/templates/ledger/partials/modal/request-accept-delete-alliance.html +38 -0
  103. ledger/templates/ledger/partials/modal/request-accept-delete-character.html +38 -0
  104. ledger/templates/ledger/partials/modal/request-accept-delete-corporation.html +38 -0
  105. ledger/templates/ledger/partials/modal/request-accept-switch-notification.html +38 -0
  106. ledger/templates/ledger/partials/modal/request-view-alliance-details.html +26 -0
  107. ledger/templates/ledger/partials/modal/request-view-character-details.html +26 -0
  108. ledger/templates/ledger/partials/modal/request-view-corporation-details.html +26 -0
  109. ledger/templates/ledger/partials/modal/request-view-extractor.html +32 -0
  110. ledger/templates/ledger/partials/modal/request-view-factory.html +31 -0
  111. ledger/templates/ledger/partials/{menu → navigation}/administration.html +8 -0
  112. ledger/templates/ledger/partials/{menu → navigation}/navigation.html +2 -2
  113. ledger/templates/ledger/partials/{administration → view-alliance-administration}/alliance_corporations.html +3 -3
  114. ledger/templates/ledger/partials/view-alliance-administration/dashboard.html +81 -0
  115. ledger/templates/ledger/partials/view-alliance-ledger/alliance-billboard.html +25 -0
  116. ledger/templates/ledger/partials/view-alliance-ledger/alliance-ledger-details.html +21 -0
  117. ledger/templates/ledger/partials/view-alliance-ledger/alliance-table.html +24 -0
  118. ledger/templates/ledger/partials/view-alliance-ledger/information/daily.html +18 -0
  119. ledger/templates/ledger/partials/view-alliance-ledger/information/hourly.html +18 -0
  120. ledger/templates/ledger/partials/view-alliance-ledger/information/summary.html +19 -0
  121. ledger/templates/ledger/partials/{administration → view-character-administration}/character.html +1 -9
  122. ledger/templates/ledger/partials/{administration → view-character-administration}/dashboard.html +0 -34
  123. ledger/templates/ledger/partials/view-character-ledger/character-billboard.html +25 -0
  124. ledger/templates/ledger/partials/view-character-ledger/character-ledger-details.html +21 -0
  125. ledger/templates/ledger/partials/view-character-ledger/character-table.html +25 -0
  126. ledger/templates/ledger/partials/view-character-ledger/information/daily.html +18 -0
  127. ledger/templates/ledger/partials/view-character-ledger/information/hourly.html +18 -0
  128. ledger/templates/ledger/partials/view-character-ledger/information/summary.html +19 -0
  129. ledger/templates/ledger/partials/view-character-planetary/extractor-table.html +24 -0
  130. ledger/templates/ledger/partials/view-character-planetary/factory-table.html +24 -0
  131. ledger/templates/ledger/partials/view-character-planetary/planetary-table.html +22 -0
  132. ledger/templates/ledger/partials/view-character-planetary/storage-table.html +23 -0
  133. ledger/templates/ledger/partials/{administration → view-corporation-administration}/corporation.html +5 -13
  134. ledger/templates/ledger/partials/{administration → view-corporation-administration}/corporation_characters.html +1 -1
  135. ledger/templates/ledger/partials/view-corporation-administration/dashboard.html +81 -0
  136. ledger/templates/ledger/partials/view-corporation-ledger/corporation-billboard.html +25 -0
  137. ledger/templates/ledger/partials/view-corporation-ledger/corporation-ledger-details.html +21 -0
  138. ledger/templates/ledger/partials/view-corporation-ledger/corporation-table.html +26 -0
  139. ledger/templates/ledger/partials/view-corporation-ledger/information/daily.html +18 -0
  140. ledger/templates/ledger/partials/view-corporation-ledger/information/hourly.html +18 -0
  141. ledger/templates/ledger/partials/view-corporation-ledger/information/summary.html +19 -0
  142. ledger/templates/ledger/view-administration.html +62 -0
  143. ledger/templates/ledger/view-alliance-administration.html +49 -0
  144. ledger/templates/ledger/view-alliance-ledger.html +72 -0
  145. ledger/templates/ledger/view-alliance-overview.html +131 -0
  146. ledger/templates/ledger/view-character-administration.html +42 -0
  147. ledger/templates/ledger/view-character-ledger.html +73 -0
  148. ledger/templates/ledger/view-character-overview.html +135 -0
  149. ledger/templates/ledger/view-character-planetary-overview.html +135 -0
  150. ledger/templates/ledger/view-character-planetary.html +73 -0
  151. ledger/templates/ledger/view-corporation-administration.html +42 -0
  152. ledger/templates/ledger/view-corporation-ledger.html +73 -0
  153. ledger/templates/ledger/view-corporation-overview.html +131 -0
  154. ledger/templatetags/ledger.py +3 -5
  155. ledger/tests/__init__.py +187 -0
  156. ledger/tests/test_admin.py +164 -68
  157. ledger/tests/test_auth_hook.py +31 -13
  158. ledger/tests/test_decarators.py +14 -79
  159. ledger/tests/test_discord_installed.py +0 -1
  160. ledger/tests/test_helpers/test_ledger_data.py +19 -0
  161. ledger/tests/test_managers/test_character_audit_manager.py +111 -69
  162. ledger/tests/test_managers/test_character_journal_manager.py +48 -208
  163. ledger/tests/test_managers/test_character_mining_manager.py +37 -16
  164. ledger/tests/test_managers/test_corporation_division_manager.py +66 -28
  165. ledger/tests/test_managers/test_corporation_journal_manager.py +39 -42
  166. ledger/tests/test_managers/test_general_manager.py +78 -18
  167. ledger/tests/test_managers/test_planetary_manager.py +73 -32
  168. ledger/tests/test_models/test_characteraudit.py +58 -74
  169. ledger/tests/test_models/test_characterminingledger.py +20 -26
  170. ledger/tests/test_models/test_characterwalletjournal.py +10 -33
  171. ledger/tests/test_models/test_corporationaudit.py +41 -35
  172. ledger/tests/test_models/test_corporationwalletjournal.py +35 -32
  173. ledger/tests/test_models/test_general.py +44 -11
  174. ledger/tests/test_models/test_planetary.py +14 -80
  175. ledger/tests/test_templatetags.py +2 -7
  176. ledger/tests/test_views/corporation/test_add_corp.py +16 -35
  177. ledger/tests/test_views/corporation/test_delete_corporation.py +66 -42
  178. ledger/tests/test_views/test_access.py +512 -545
  179. ledger/tests/test_views/test_add_ally.py +57 -46
  180. ledger/tests/test_views/test_add_char.py +21 -33
  181. ledger/tests/test_views/test_delete_character.py +24 -21
  182. ledger/tests/testdata/README_ESI_STUB.md +430 -0
  183. ledger/tests/testdata/esi_stub_openapi.py +511 -0
  184. ledger/tests/testdata/integrations/__init__.py +0 -0
  185. ledger/tests/testdata/{load_eveuniverse.py → integrations/eveuniverse.py} +0 -1
  186. ledger/tests/testdata/integrations/planetary.py +13 -0
  187. ledger/tests/testdata/json/factory.json +281 -0
  188. ledger/tests/testdata/json/inactive.json +281 -0
  189. ledger/tests/testdata/json/pins.json +175 -272
  190. ledger/tests/testdata/json/route.json +95 -528
  191. ledger/tests/testdata/test_esi_stub.py +468 -0
  192. ledger/tests/testdata/utils.py +601 -0
  193. ledger/thirdparty/charlink_hook.py +60 -30
  194. ledger/urls.py +0 -135
  195. ledger/views/alliance/add_ally.py +2 -4
  196. ledger/views/alliance/alliance_ledger.py +64 -147
  197. ledger/views/character/add_char.py +8 -10
  198. ledger/views/character/character_ledger.py +60 -126
  199. ledger/views/character/planetary.py +5 -98
  200. ledger/views/corporation/add_corp.py +10 -12
  201. ledger/views/corporation/corporation_ledger.py +65 -327
  202. ledger/views/index.py +92 -30
  203. aa_ledger-1.0.4.dist-info/RECORD +0 -236
  204. ledger/api/api_helper/planetary_helper.py +0 -107
  205. ledger/api/ledger/__init__.py +0 -7
  206. ledger/api/ledger/planetary.py +0 -231
  207. ledger/helpers/alliance.py +0 -317
  208. ledger/helpers/character.py +0 -251
  209. ledger/helpers/core.py +0 -665
  210. ledger/helpers/corporation.py +0 -427
  211. ledger/helpers/data_exporter.py +0 -452
  212. ledger/static/ledger/js/planetary-confirm.js +0 -66
  213. ledger/static/ledger/js/planetary.js +0 -143
  214. ledger/templates/ledger/admin.html +0 -43
  215. ledger/templates/ledger/allyledger/admin/alliance_administration.html +0 -46
  216. ledger/templates/ledger/allyledger/admin/alliance_overview.html +0 -108
  217. ledger/templates/ledger/allyledger/alliance_ledger.html +0 -86
  218. ledger/templates/ledger/bundles/character-ledger-bundles.html +0 -66
  219. ledger/templates/ledger/bundles/corporation-ledger-bundles.html +0 -75
  220. ledger/templates/ledger/bundles/ledger-bundles.html +0 -23
  221. ledger/templates/ledger/bundles/ledger-css.html +0 -3
  222. ledger/templates/ledger/bundles/planetary-bundles.html +0 -50
  223. ledger/templates/ledger/bundles/table-css.html +0 -3
  224. ledger/templates/ledger/charledger/admin/character_administration.html +0 -39
  225. ledger/templates/ledger/charledger/admin/character_overview.html +0 -106
  226. ledger/templates/ledger/charledger/character_ledger.html +0 -94
  227. ledger/templates/ledger/charledger/planetary/admin/planetary_overview.html +0 -123
  228. ledger/templates/ledger/charledger/planetary/planetary_ledger.html +0 -54
  229. ledger/templates/ledger/corpledger/admin/corporation_administration.html +0 -39
  230. ledger/templates/ledger/corpledger/admin/corporation_overview.html +0 -108
  231. ledger/templates/ledger/corpledger/corporation_ledger.html +0 -129
  232. ledger/templates/ledger/data-export.html +0 -78
  233. ledger/templates/ledger/error.html +0 -31
  234. ledger/templates/ledger/partials/form/error-message.html +0 -1
  235. ledger/templates/ledger/partials/information/daily.html +0 -56
  236. ledger/templates/ledger/partials/information/day.html +0 -48
  237. ledger/templates/ledger/partials/information/error.html +0 -8
  238. ledger/templates/ledger/partials/information/hourly.html +0 -53
  239. ledger/templates/ledger/partials/information/summary.html +0 -88
  240. ledger/templates/ledger/partials/information/view_character_content.html +0 -35
  241. ledger/templates/ledger/partials/modal/switchalarm_confirm.html +0 -39
  242. ledger/templates/ledger/partials/modal/view_extractor.html +0 -48
  243. ledger/templates/ledger/partials/modal/view_factory.html +0 -123
  244. ledger/templates/ledger/partials/table/char-ledger.html +0 -85
  245. ledger/templates/ledger/partials/table/corp-ledger.html +0 -66
  246. ledger/templates/ledger/partials/table/planetary.html +0 -18
  247. ledger/templates/ledger/partials/thirdparty/billboard.html +0 -22
  248. ledger/templates/ledger/partials/view/card.html +0 -160
  249. ledger/templates/ledger/permission.html +0 -2
  250. ledger/tests/test_helpers/test_billboard.py +0 -11
  251. ledger/tests/test_helpers/test_data_exporter.py +0 -207
  252. ledger/tests/test_tasks.py +0 -282
  253. ledger/tests/test_view_helpers/test_core.py +0 -47
  254. ledger/tests/test_views/corporation/test_corporation.py +0 -267
  255. ledger/tests/test_views/test_planetary.py +0 -137
  256. ledger/tests/testdata/esi_stub.py +0 -109
  257. ledger/tests/testdata/esi_stub_migration.py +0 -80
  258. ledger/tests/testdata/generate_characteraudit.py +0 -106
  259. ledger/tests/testdata/generate_corporationaudit.py +0 -74
  260. ledger/tests/testdata/generate_events.py +0 -31
  261. ledger/tests/testdata/generate_miningledger.py +0 -13
  262. ledger/tests/testdata/generate_planets.py +0 -48
  263. ledger/tests/testdata/generate_walletjournal.py +0 -42
  264. ledger/tests/testdata/json/czarno-pins.json +0 -240
  265. ledger/tests/testdata/json/czarno-routes.json +0 -165
  266. ledger/tests/testdata/json/pins2.json +0 -538
  267. {aa_ledger-1.0.4.dist-info → aa_ledger-2.0.0.dist-info}/WHEEL +0 -0
  268. {aa_ledger-1.0.4.dist-info → aa_ledger-2.0.0.dist-info}/licenses/LICENSE +0 -0
  269. /ledger/{tests/test_view_helpers → api/helpers}/__init__.py +0 -0
  270. /ledger/templates/ledger/bundles/{ally-administration-bundles.html → view-alliance-administration-js.html} +0 -0
  271. /ledger/templates/ledger/bundles/{char-administration-bundles.html → view-character-administration-js.html} +0 -0
  272. /ledger/templates/ledger/bundles/{corp-administration-bundles.html → view-corporation-administration-js.html} +0 -0
  273. /ledger/templates/ledger/partials/{administration → view-alliance-administration}/alliance.html +0 -0
  274. /ledger/tests/testdata/{esi.json → esi_test_data.json} +0 -0
  275. /ledger/tests/testdata/{allianceauth.json → integrations/allianceauth.json} +0 -0
  276. /ledger/tests/testdata/{load_allianceauth.py → integrations/allianceauth.py} +0 -0
  277. /ledger/tests/testdata/{eveentity.json → integrations/eveentity.json} +0 -0
  278. /ledger/tests/testdata/{load_eveentity.py → integrations/eveentity.py} +0 -0
  279. /ledger/tests/testdata/{eveuniverse.json → integrations/eveuniverse.json} +0 -0
  280. /ledger/tests/testdata/{planetary.json → integrations/planetary.json} +0 -0
@@ -1,331 +1,234 @@
1
-
2
1
  [
3
2
  {
4
- "contents": [{"amount": 10, "type_id": 3693}, {"amount": 10, "type_id": 3695}],
5
- "last_cycle_start": "2024-11-05T18:54:11+00:00",
6
- "latitude": 2.0294816493988037,
7
- "longitude": 3.5296895503997803,
8
- "pin_id": 1043445807014,
9
- "schematic_id": 106,
10
- "type_id": 2494,
11
- "expiry_time": null,
12
- "extractor_details": null,
13
- "factory_details": null,
14
- "install_time": null
15
- },
16
- {
17
- "contents": [{"amount": 10, "type_id": 3693}, {"amount": 10, "type_id": 3695}],
18
- "last_cycle_start": "2024-11-05T18:54:11+00:00",
19
- "latitude": 2.0173864364624023,
20
- "longitude": 3.529317617416382,
21
- "pin_id": 1043445807016,
22
- "schematic_id": 106,
23
- "type_id": 2494,
24
- "expiry_time": null,
25
- "extractor_details": null,
26
- "factory_details": null,
27
- "install_time": null
28
- },
29
- {
30
- "contents": [{"amount": 10, "type_id": 3693}, {"amount": 10, "type_id": 3695}],
31
- "last_cycle_start": "2024-11-05T18:54:11+00:00",
32
- "latitude": 2.016979694366455,
33
- "longitude": 3.5023915767669678,
34
- "pin_id": 1043445807018,
35
- "schematic_id": 106,
36
- "type_id": 2494,
37
- "expiry_time": null,
38
- "extractor_details": null,
39
- "factory_details": null,
40
- "install_time": null
41
- },
42
- {
43
- "contents": [{"amount": 10, "type_id": 3693}, {"amount": 10, "type_id": 3695}],
44
- "last_cycle_start": "2024-11-05T18:54:11+00:00",
45
- "latitude": 2.0292091369628906,
46
- "longitude": 3.502758741378784,
47
- "pin_id": 1043445807020,
48
- "schematic_id": 106,
49
- "type_id": 2494,
50
- "expiry_time": null,
51
- "extractor_details": null,
52
- "factory_details": null,
53
- "install_time": null
54
- },
55
- {
56
- "contents": [{"amount": 10, "type_id": 3693}, {"amount": 10, "type_id": 3695}],
57
- "last_cycle_start": "2024-11-05T18:54:11+00:00",
58
- "latitude": 2.0659403800964355,
59
- "longitude": 3.529808282852173,
60
- "pin_id": 1043445807021,
61
- "schematic_id": 106,
62
- "type_id": 2494,
3
+ "contents": [
4
+ {
5
+ "amount": 1473,
6
+ "type_id": 2267
7
+ }
8
+ ],
63
9
  "expiry_time": null,
64
10
  "extractor_details": null,
65
11
  "factory_details": null,
66
- "install_time": null
12
+ "install_time": null,
13
+ "last_cycle_start": "2025-08-13T20:47:27+00:00",
14
+ "latitude": 1.8132833242416382,
15
+ "longitude": 0.17593103647232056,
16
+ "pin_id": 1047902592910,
17
+ "schematic_id": 126,
18
+ "type_id": 2473
67
19
  },
68
20
  {
69
- "contents": [{"amount": 10, "type_id": 3693}, {"amount": 10, "type_id": 3695}],
70
- "last_cycle_start": "2024-11-05T18:54:11+00:00",
71
- "latitude": 2.0779452323913574,
72
- "longitude": 3.529921770095825,
73
- "pin_id": 1043445807024,
74
- "schematic_id": 106,
75
- "type_id": 2494,
21
+ "contents": [
22
+ {
23
+ "amount": 38200,
24
+ "type_id": 2398
25
+ }
26
+ ],
76
27
  "expiry_time": null,
77
28
  "extractor_details": null,
78
29
  "factory_details": null,
79
- "install_time": null
30
+ "install_time": null,
31
+ "last_cycle_start": null,
32
+ "latitude": 1.8365801572799683,
33
+ "longitude": 0.18231530487537384,
34
+ "pin_id": 1047902592918,
35
+ "schematic_id": null,
36
+ "type_id": 2544
80
37
  },
81
38
  {
82
- "contents": [{"amount": 10, "type_id": 3693}, {"amount": 10, "type_id": 3695}],
83
- "last_cycle_start": "2024-11-05T18:54:11+00:00",
84
- "latitude": 2.0900487899780273,
85
- "longitude": 3.5301942825317383,
86
- "pin_id": 1043445807027,
87
- "schematic_id": 106,
88
- "type_id": 2494,
89
- "expiry_time": null,
90
- "extractor_details": null,
91
- "factory_details": null,
92
- "install_time": null
39
+ "contents": [],
40
+ "expiry_time": "2025-10-12T15:25:09+00:00",
41
+ "extractor_details": {
42
+ "cycle_time": 14400,
43
+ "head_radius": 0.05000000074505806,
44
+ "heads": [
45
+ {
46
+ "head_id": 0,
47
+ "latitude": 1.937806248664856,
48
+ "longitude": 0.404819130897522
49
+ },
50
+ {
51
+ "head_id": 1,
52
+ "latitude": 1.7442339658737183,
53
+ "longitude": 0.48270663619041443
54
+ },
55
+ {
56
+ "head_id": 2,
57
+ "latitude": 1.595587134361267,
58
+ "longitude": 0.27247151732444763
59
+ },
60
+ {
61
+ "head_id": 5,
62
+ "latitude": 1.6537271738052368,
63
+ "longitude": 0.429765909910202
64
+ },
65
+ {
66
+ "head_id": 6,
67
+ "latitude": 1.9988820552825928,
68
+ "longitude": 0.3147643506526947
69
+ }
70
+ ],
71
+ "product_type_id": 2267,
72
+ "qty_per_cycle": 7663
73
+ },
74
+ "factory_details": null,
75
+ "install_time": "2025-09-28T15:25:09+00:00",
76
+ "last_cycle_start": "2025-09-28T15:25:09+00:00",
77
+ "latitude": 1.8398908376693726,
78
+ "longitude": 0.1943310648202896,
79
+ "pin_id": 1047902592919,
80
+ "schematic_id": null,
81
+ "type_id": 2848
93
82
  },
94
83
  {
95
- "contents": [{"amount": 10, "type_id": 3693}, {"amount": 10, "type_id": 3695}],
96
- "last_cycle_start": "2024-11-05T18:54:11+00:00",
97
- "latitude": 2.0776612758636475,
98
- "longitude": 3.502199411392212,
99
- "pin_id": 1043445807030,
100
- "schematic_id": 106,
101
- "type_id": 2494,
84
+ "contents": [
85
+ {
86
+ "amount": 40,
87
+ "type_id": 2398
88
+ }
89
+ ],
102
90
  "expiry_time": null,
103
91
  "extractor_details": null,
104
92
  "factory_details": null,
105
- "install_time": null
93
+ "install_time": null,
94
+ "last_cycle_start": "2025-08-13T22:17:27+00:00",
95
+ "latitude": 1.8481996059417725,
96
+ "longitude": 0.16162016987800598,
97
+ "pin_id": 1047902592921,
98
+ "schematic_id": 73,
99
+ "type_id": 2474
106
100
  },
107
101
  {
108
102
  "contents": [],
109
- "latitude": 2.0538101196289062,
110
- "longitude": 3.48930025100708,
111
- "pin_id": 1043427927097,
112
- "type_id": 2534,
113
103
  "expiry_time": null,
114
104
  "extractor_details": null,
115
105
  "factory_details": null,
116
106
  "install_time": null,
117
107
  "last_cycle_start": null,
118
- "schematic_id": null
119
- },
120
- {
121
- "contents": [{"amount": 10, "type_id": 3693}, {"amount": 10, "type_id": 3695}],
122
- "last_cycle_start": "2024-11-05T18:54:11+00:00",
123
- "latitude": 2.089902877807617,
124
- "longitude": 3.5023975372314453,
125
- "pin_id": 1043445807036,
126
- "schematic_id": 106,
127
- "type_id": 2494,
128
- "expiry_time": null,
129
- "extractor_details": null,
130
- "factory_details": null,
131
- "install_time": null
132
- },
133
- {
134
- "contents": [{"amount": 10, "type_id": 3693}, {"amount": 10, "type_id": 3695}],
135
- "last_cycle_start": "2024-11-05T18:54:11+00:00",
136
- "latitude": 2.0414834022521973,
137
- "longitude": 3.503114700317383,
138
- "pin_id": 1043445807042,
139
- "schematic_id": 106,
140
- "type_id": 2494,
141
- "expiry_time": null,
142
- "extractor_details": null,
143
- "factory_details": null,
144
- "install_time": null
145
- },
146
- {
147
- "contents": [{"amount": 10, "type_id": 3693}, {"amount": 10, "type_id": 3695}],
148
- "last_cycle_start": "2024-11-05T18:54:11+00:00",
149
- "latitude": 2.05375075340271,
150
- "longitude": 3.5299017429351807,
151
- "pin_id": 1043445807044,
152
- "schematic_id": 106,
153
- "type_id": 2494,
154
- "expiry_time": null,
155
- "extractor_details": null,
156
- "factory_details": null,
157
- "install_time": null
108
+ "latitude": 0.8340716361999512,
109
+ "longitude": 0.39202120900154114,
110
+ "pin_id": 1047902578204,
111
+ "schematic_id": null,
112
+ "type_id": 2524
158
113
  },
159
114
  {
160
- "contents": [{"amount": 10, "type_id": 3693}, {"amount": 10, "type_id": 3695}],
161
- "last_cycle_start": "2024-11-05T18:54:11+00:00",
162
- "latitude": 2.0416011810302734,
163
- "longitude": 3.5300800800323486,
164
- "pin_id": 1043445807045,
165
- "schematic_id": 106,
166
- "type_id": 2494,
167
- "expiry_time": null,
168
- "extractor_details": null,
169
- "factory_details": null,
170
- "install_time": null
171
- },
172
- {
173
- "contents": [{"amount": 10, "type_id": 3693}, {"amount": 10, "type_id": 3695}],
174
- "last_cycle_start": "2024-11-05T18:54:11+00:00",
175
- "latitude": 2.0655224323272705,
176
- "longitude": 3.5023727416992188,
177
- "pin_id": 1043445807046,
178
- "schematic_id": 106,
179
- "type_id": 2494,
180
- "expiry_time": null,
181
- "extractor_details": null,
182
- "factory_details": null,
183
- "install_time": null
184
- },
185
- {
186
- "contents": [{"amount": 10, "type_id": 3693}, {"amount": 10, "type_id": 3695}],
187
- "last_cycle_start": "2024-11-05T18:54:11+00:00",
188
- "latitude": 2.0543136596679688,
189
- "longitude": 3.543523073196411,
190
- "pin_id": 1043445807047,
191
- "schematic_id": 106,
192
- "type_id": 2494,
193
- "expiry_time": null,
194
- "extractor_details": null,
195
- "factory_details": null,
196
- "install_time": null
197
- },
198
- {
199
- "contents": [{"amount": 10, "type_id": 3693}, {"amount": 10, "type_id": 3695}],
200
- "last_cycle_start": "2024-11-05T18:54:11+00:00",
201
- "latitude": 2.042116641998291,
202
- "longitude": 3.5437657833099365,
203
- "pin_id": 1043445807054,
204
- "schematic_id": 106,
205
- "type_id": 2494,
115
+ "contents": [],
206
116
  "expiry_time": null,
207
117
  "extractor_details": null,
208
118
  "factory_details": null,
209
- "install_time": null
119
+ "install_time": null,
120
+ "last_cycle_start": "2025-08-13T20:17:27+00:00",
121
+ "latitude": 1.860101580619812,
122
+ "longitude": 0.1876489222049713,
123
+ "pin_id": 1047902592926,
124
+ "schematic_id": 127,
125
+ "type_id": 2473
210
126
  },
211
127
  {
212
- "contents": [{"amount": 10, "type_id": 3693}, {"amount": 10, "type_id": 3695}],
213
- "last_cycle_start": "2024-11-05T18:54:11+00:00",
214
- "latitude": 2.0667059421539307,
215
- "longitude": 3.543785333633423,
216
- "pin_id": 1043445807058,
217
- "schematic_id": 106,
218
- "type_id": 2494,
219
- "expiry_time": null,
220
- "extractor_details": null,
221
- "factory_details": null,
222
- "install_time": null
128
+ "contents": [],
129
+ "expiry_time": "2025-10-12T15:25:09+00:00",
130
+ "extractor_details": {
131
+ "cycle_time": 14400,
132
+ "head_radius": 0.05000000074505806,
133
+ "heads": [
134
+ {
135
+ "head_id": 0,
136
+ "latitude": 1.8137233257293701,
137
+ "longitude": 0.004692013841122389
138
+ },
139
+ {
140
+ "head_id": 1,
141
+ "latitude": 1.9245903491973877,
142
+ "longitude": 0.17360469698905945
143
+ },
144
+ {
145
+ "head_id": 5,
146
+ "latitude": 1.8073947429656982,
147
+ "longitude": 0.10941426455974579
148
+ },
149
+ {
150
+ "head_id": 6,
151
+ "latitude": 1.8995832204818726,
152
+ "longitude": 0.06547639518976212
153
+ }
154
+ ],
155
+ "product_type_id": 2270,
156
+ "qty_per_cycle": 6520
157
+ },
158
+ "factory_details": null,
159
+ "install_time": "2025-09-28T15:25:09+00:00",
160
+ "last_cycle_start": "2025-09-28T15:25:09+00:00",
161
+ "latitude": 1.8281675577163696,
162
+ "longitude": 0.1911877989768982,
163
+ "pin_id": 1047902592933,
164
+ "schematic_id": null,
165
+ "type_id": 2848
223
166
  },
224
167
  {
225
168
  "contents": [
226
- {"amount": 6228, "type_id": 3693},
227
- {"amount": 6228, "type_id": 3695}
169
+ {
170
+ "amount": 1708,
171
+ "type_id": 2270
172
+ }
228
173
  ],
229
- "latitude": 2.0535128116607666,
230
- "longitude": 3.475654363632202,
231
- "pin_id": 1043445807059,
232
- "type_id": 2543,
233
174
  "expiry_time": null,
234
175
  "extractor_details": null,
235
176
  "factory_details": null,
236
177
  "install_time": null,
237
- "last_cycle_start": null,
238
- "schematic_id": null
178
+ "last_cycle_start": "2025-08-13T20:17:27+00:00",
179
+ "latitude": 1.8484383821487427,
180
+ "longitude": 0.18436580896377563,
181
+ "pin_id": 1047902592903,
182
+ "schematic_id": 127,
183
+ "type_id": 2473
239
184
  },
240
185
  {
241
- "contents": [{"amount": 2100, "type_id": 2360}],
242
- "latitude": 2.052889585494995,
243
- "longitude": 3.5163748264312744,
244
- "pin_id": 1043429053914,
245
- "type_id": 2543,
186
+ "contents": [
187
+ {
188
+ "amount": 6315,
189
+ "type_id": 3689
190
+ }
191
+ ],
246
192
  "expiry_time": null,
247
193
  "extractor_details": null,
248
194
  "factory_details": null,
249
195
  "install_time": null,
250
196
  "last_cycle_start": null,
251
- "schematic_id": null
197
+ "latitude": 1.8394938707351685,
198
+ "longitude": 0.17023132741451263,
199
+ "pin_id": 1047902592937,
200
+ "schematic_id": null,
201
+ "type_id": 2544
252
202
  },
253
203
  {
254
- "contents": [{"amount": 10, "type_id": 3693}, {"amount": 10, "type_id": 3695}],
255
- "last_cycle_start": "2024-11-05T18:54:11+00:00",
256
- "latitude": 2.0408167839050293,
257
- "longitude": 3.516561269760132,
258
- "pin_id": 1043429053915,
259
- "schematic_id": 106,
260
- "type_id": 2494,
261
- "expiry_time": null,
262
- "extractor_details": null,
263
- "factory_details": null,
264
- "install_time": null
265
- },
266
- {
267
- "contents": [{"amount": 10, "type_id": 3693}, {"amount": 10, "type_id": 3695}],
268
- "last_cycle_start": "2024-11-05T18:54:11+00:00",
269
- "latitude": 2.028752088546753,
270
- "longitude": 3.516256809234619,
271
- "pin_id": 1043429053916,
272
- "schematic_id": 106,
273
- "type_id": 2494,
274
- "expiry_time": null,
275
- "extractor_details": null,
276
- "factory_details": null,
277
- "install_time": null
278
- },
279
- {
280
- "contents": [{"amount": 10, "type_id": 3693}, {"amount": 10, "type_id": 3695}],
281
- "last_cycle_start": "2024-11-05T18:54:11+00:00",
282
- "latitude": 2.0167224407196045,
283
- "longitude": 3.515956401824951,
284
- "pin_id": 1043429053918,
285
- "schematic_id": 106,
286
- "type_id": 2494,
287
- "expiry_time": null,
288
- "extractor_details": null,
289
- "factory_details": null,
290
- "install_time": null
291
- },
292
- {
293
- "contents": [{"amount": 10, "type_id": 3693}, {"amount": 10, "type_id": 3695}],
294
- "last_cycle_start": "2024-11-05T18:54:11+00:00",
295
- "latitude": 2.065192937850952,
296
- "longitude": 3.51602840423584,
297
- "pin_id": 1043437196267,
298
- "schematic_id": 106,
299
- "type_id": 2494,
300
- "expiry_time": null,
301
- "extractor_details": null,
302
- "factory_details": null,
303
- "install_time": null
304
- },
305
- {
306
- "contents": [{"amount": 10, "type_id": 3693}, {"amount": 10, "type_id": 3695}],
307
- "last_cycle_start": "2024-11-05T18:54:11+00:00",
308
- "latitude": 2.077465534210205,
309
- "longitude": 3.5160460472106934,
310
- "pin_id": 1043437196271,
311
- "schematic_id": 106,
312
- "type_id": 2494,
204
+ "contents": [
205
+ {
206
+ "amount": 40,
207
+ "type_id": 2398
208
+ }
209
+ ],
313
210
  "expiry_time": null,
314
211
  "extractor_details": null,
315
212
  "factory_details": null,
316
- "install_time": null
213
+ "install_time": null,
214
+ "last_cycle_start": "2025-08-06T11:17:27+00:00",
215
+ "latitude": 1.8340009450912476,
216
+ "longitude": 0.15908077359199524,
217
+ "pin_id": 1047902592935,
218
+ "schematic_id": 73,
219
+ "type_id": 2474
317
220
  },
318
221
  {
319
- "contents": [{"amount": 10, "type_id": 3693}, {"amount": 10, "type_id": 3695}],
320
- "last_cycle_start": "2024-11-05T18:54:11+00:00",
321
- "latitude": 2.0897035598754883,
322
- "longitude": 3.5162510871887207,
323
- "pin_id": 1043437196279,
324
- "schematic_id": 106,
325
- "type_id": 2494,
222
+ "contents": [],
326
223
  "expiry_time": null,
327
224
  "extractor_details": null,
328
225
  "factory_details": null,
329
- "install_time": null
226
+ "install_time": null,
227
+ "last_cycle_start": "2025-08-13T20:17:27+00:00",
228
+ "latitude": 1.8250364065170288,
229
+ "longitude": 0.17871876060962677,
230
+ "pin_id": 1047902592940,
231
+ "schematic_id": 126,
232
+ "type_id": 2473
330
233
  }
331
234
  ]