dao-treasury 0.0.65__cp310-cp310-win_amd64.whl → 0.0.68__cp310-cp310-win_amd64.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 (30) hide show
  1. dao_treasury/.grafana/provisioning/dashboards/breakdowns/Expenses.json +51 -125
  2. dao_treasury/.grafana/provisioning/dashboards/breakdowns/Revenue.json +51 -125
  3. dao_treasury/.grafana/provisioning/dashboards/streams/LlamaPay.json +3 -8
  4. dao_treasury/.grafana/provisioning/dashboards/summary/Monthly.json +1 -3
  5. dao_treasury/.grafana/provisioning/dashboards/transactions/Treasury Transactions.json +22 -25
  6. dao_treasury/.grafana/provisioning/dashboards/treasury/Cashflow (Including Unsorted).json +32 -105
  7. dao_treasury/.grafana/provisioning/dashboards/treasury/Cashflow.json +21 -69
  8. dao_treasury/.grafana/provisioning/dashboards/treasury/Current Treasury Assets.json +463 -75
  9. dao_treasury/.grafana/provisioning/dashboards/treasury/Historical Treasury Balances.json +2892 -2930
  10. dao_treasury/.grafana/provisioning/dashboards/treasury/Operating Cashflow.json +17 -55
  11. dao_treasury/_docker.cp310-win_amd64.pyd +0 -0
  12. dao_treasury/_nicknames.cp310-win_amd64.pyd +0 -0
  13. dao_treasury/_wallet.cp310-win_amd64.pyd +0 -0
  14. dao_treasury/constants.cp310-win_amd64.pyd +0 -0
  15. dao_treasury/sorting/__init__.cp310-win_amd64.pyd +0 -0
  16. dao_treasury/sorting/_matchers.cp310-win_amd64.pyd +0 -0
  17. dao_treasury/sorting/_rules.cp310-win_amd64.pyd +0 -0
  18. dao_treasury/sorting/factory.cp310-win_amd64.pyd +0 -0
  19. dao_treasury/sorting/rule.cp310-win_amd64.pyd +0 -0
  20. dao_treasury/sorting/rules/__init__.cp310-win_amd64.pyd +0 -0
  21. dao_treasury/sorting/rules/ignore/__init__.cp310-win_amd64.pyd +0 -0
  22. dao_treasury/sorting/rules/ignore/llamapay.cp310-win_amd64.pyd +0 -0
  23. dao_treasury/streams/__init__.cp310-win_amd64.pyd +0 -0
  24. dao_treasury/streams/llamapay.cp310-win_amd64.pyd +0 -0
  25. dao_treasury/types.cp310-win_amd64.pyd +0 -0
  26. {dao_treasury-0.0.65.dist-info → dao_treasury-0.0.68.dist-info}/METADATA +2 -2
  27. {dao_treasury-0.0.65.dist-info → dao_treasury-0.0.68.dist-info}/RECORD +30 -30
  28. dao_treasury__mypyc.cp310-win_amd64.pyd +0 -0
  29. {dao_treasury-0.0.65.dist-info → dao_treasury-0.0.68.dist-info}/WHEEL +0 -0
  30. {dao_treasury-0.0.65.dist-info → dao_treasury-0.0.68.dist-info}/top_level.txt +0 -0
@@ -42,7 +42,8 @@
42
42
  "value": 80
43
43
  }
44
44
  ]
45
- }
45
+ },
46
+ "unit": "currencyUSD"
46
47
  },
47
48
  "overrides": []
48
49
  },
@@ -60,9 +61,7 @@
60
61
  "orientation": "auto",
61
62
  "percentChangeColorMode": "standard",
62
63
  "reduceOptions": {
63
- "calcs": [
64
- "lastNotNull"
65
- ],
64
+ "calcs": ["lastNotNull"],
66
65
  "fields": "",
67
66
  "values": false
68
67
  },
@@ -74,17 +73,14 @@
74
73
  "targets": [
75
74
  {
76
75
  "datasource": "SQLite",
77
- "queryText": "SELECT SUM(t.value_usd) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) inner join txgroups g USING (txgroup_id) WHERE gh.top_category in ('Cost of Revenue', 'Expenses', 'Other Expense') AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND ('$Txgroup' like '{%' or g.name = '$Txgroup')",
76
+ "queryText": "SELECT SUM(t.value_usd) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) inner join txgroups g USING (txgroup_id) WHERE gh.top_category in ('Cost of Revenue', 'Expenses', 'Other Expense') AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND g.name IN (${Txgroup:sqlstring})",
78
77
  "queryType": "table",
79
- "rawQueryText": "SELECT SUM(t.value_usd) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) inner join txgroups g USING (txgroup_id) WHERE gh.top_category in ('Cost of Revenue', 'Expenses', 'Other Expense') AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND ('$Txgroup' like '{%' or g.name = '$Txgroup')",
78
+ "rawQueryText": "SELECT SUM(t.value_usd) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) inner join txgroups g USING (txgroup_id) WHERE gh.top_category in ('Cost of Revenue', 'Expenses', 'Other Expense') AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND g.name IN (${Txgroup:sqlstring})",
80
79
  "refId": "A",
81
- "timeColumns": [
82
- "time",
83
- "ts"
84
- ]
80
+ "timeColumns": ["time", "ts"]
85
81
  }
86
82
  ],
87
- "title": "Total Expenses",
83
+ "title": "Expenses",
88
84
  "type": "stat"
89
85
  },
90
86
  {
@@ -107,7 +103,8 @@
107
103
  "value": 80
108
104
  }
109
105
  ]
110
- }
106
+ },
107
+ "unit": "currencyUSD"
111
108
  },
112
109
  "overrides": []
113
110
  },
@@ -125,9 +122,7 @@
125
122
  "orientation": "auto",
126
123
  "percentChangeColorMode": "standard",
127
124
  "reduceOptions": {
128
- "calcs": [
129
- "lastNotNull"
130
- ],
125
+ "calcs": ["lastNotNull"],
131
126
  "fields": "",
132
127
  "values": false
133
128
  },
@@ -139,14 +134,11 @@
139
134
  "targets": [
140
135
  {
141
136
  "datasource": "SQLite",
142
- "queryText": "SELECT SUM(t.value_usd) / (((1760217520685 - 1744406320685) / 1000.0 / 60 / 60 / 24 / 30.436875)) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) inner join txgroups g USING (txgroup_id) WHERE gh.top_category in ('Cost of Revenue', 'Expenses', 'Other Expense') AND t.timestamp >= 1744406320685/1000 AND t.timestamp <= 1760217520685/1000 AND ('$Txgroup' like '{%' or g.name = '$Txgroup')",
137
+ "queryText": "SELECT SUM(t.value_usd) / ((($__to - $__from) / 1000.0 / 60 / 60 / 24 / 30.436875)) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) inner join txgroups g USING (txgroup_id) WHERE gh.top_category in ('Cost of Revenue', 'Expenses', 'Other Expense') AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND g.name IN (${Txgroup:sqlstring})",
143
138
  "queryType": "table",
144
- "rawQueryText": "SELECT SUM(t.value_usd) / ((($__to - $__from) / 1000.0 / 60 / 60 / 24 / 30.436875)) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) inner join txgroups g USING (txgroup_id) WHERE gh.top_category in ('Cost of Revenue', 'Expenses', 'Other Expense') AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND ('$Txgroup' like '{%' or g.name = '$Txgroup')",
139
+ "rawQueryText": "SELECT SUM(t.value_usd) / ((($__to - $__from) / 1000.0 / 60 / 60 / 24 / 30.436875)) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) inner join txgroups g USING (txgroup_id) WHERE gh.top_category in ('Cost of Revenue', 'Expenses', 'Other Expense') AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND g.name IN (${Txgroup:sqlstring})",
145
140
  "refId": "A",
146
- "timeColumns": [
147
- "time",
148
- "ts"
149
- ]
141
+ "timeColumns": ["time", "ts"]
150
142
  }
151
143
  ],
152
144
  "title": "Monthly Expenses",
@@ -172,7 +164,8 @@
172
164
  "value": 80
173
165
  }
174
166
  ]
175
- }
167
+ },
168
+ "unit": "currencyUSD"
176
169
  },
177
170
  "overrides": []
178
171
  },
@@ -190,9 +183,7 @@
190
183
  "orientation": "auto",
191
184
  "percentChangeColorMode": "standard",
192
185
  "reduceOptions": {
193
- "calcs": [
194
- "lastNotNull"
195
- ],
186
+ "calcs": ["lastNotNull"],
196
187
  "fields": "",
197
188
  "values": false
198
189
  },
@@ -204,14 +195,11 @@
204
195
  "targets": [
205
196
  {
206
197
  "datasource": "SQLite",
207
- "queryText": "SELECT SUM(t.value_usd) / ((($__to - $__from) / 1000.0 / 60 / 60 / 24 / 7)) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) inner join txgroups g USING (txgroup_id) WHERE gh.top_category in ('Cost of Revenue', 'Expenses', 'Other Expense') AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND ('$Txgroup' like '{%' or g.name = '$Txgroup')",
198
+ "queryText": "SELECT SUM(t.value_usd) / ((($__to - $__from) / 1000.0 / 60 / 60 / 24 / 7)) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) inner join txgroups g USING (txgroup_id) WHERE gh.top_category in ('Cost of Revenue', 'Expenses', 'Other Expense') AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND g.name IN (${Txgroup:sqlstring})",
208
199
  "queryType": "table",
209
- "rawQueryText": "SELECT SUM(t.value_usd) / ((($__to - $__from) / 1000.0 / 60 / 60 / 24 / 7)) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) inner join txgroups g USING (txgroup_id) WHERE gh.top_category in ('Cost of Revenue', 'Expenses', 'Other Expense') AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND ('$Txgroup' like '{%' or g.name = '$Txgroup')",
200
+ "rawQueryText": "SELECT SUM(t.value_usd) / ((($__to - $__from) / 1000.0 / 60 / 60 / 24 / 7)) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) inner join txgroups g USING (txgroup_id) WHERE gh.top_category in ('Cost of Revenue', 'Expenses', 'Other Expense') AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND g.name IN (${Txgroup:sqlstring})",
210
201
  "refId": "A",
211
- "timeColumns": [
212
- "time",
213
- "ts"
214
- ]
202
+ "timeColumns": ["time", "ts"]
215
203
  }
216
204
  ],
217
205
  "title": "Weekly Expenses",
@@ -237,7 +225,8 @@
237
225
  "value": 80
238
226
  }
239
227
  ]
240
- }
228
+ },
229
+ "unit": "currencyUSD"
241
230
  },
242
231
  "overrides": []
243
232
  },
@@ -255,9 +244,7 @@
255
244
  "orientation": "auto",
256
245
  "percentChangeColorMode": "standard",
257
246
  "reduceOptions": {
258
- "calcs": [
259
- "lastNotNull"
260
- ],
247
+ "calcs": ["lastNotNull"],
261
248
  "fields": "",
262
249
  "values": false
263
250
  },
@@ -269,14 +256,11 @@
269
256
  "targets": [
270
257
  {
271
258
  "datasource": "SQLite",
272
- "queryText": "SELECT SUM(t.value_usd) / ((($__to - $__from) / 1000.0 / 60 / 60 / 24)) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) inner join txgroups g USING (txgroup_id) WHERE gh.top_category in ('Cost of Revenue', 'Expenses', 'Other Expense') AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND ('$Txgroup' like '{%' or g.name = '$Txgroup')",
259
+ "queryText": "SELECT SUM(t.value_usd) / ((($__to - $__from) / 1000.0 / 60 / 60 / 24)) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) inner join txgroups g USING (txgroup_id) WHERE gh.top_category in ('Cost of Revenue', 'Expenses', 'Other Expense') AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND g.name IN (${Txgroup:sqlstring})",
273
260
  "queryType": "table",
274
- "rawQueryText": "SELECT SUM(t.value_usd) / ((($__to - $__from) / 1000.0 / 60 / 60 / 24)) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) inner join txgroups g USING (txgroup_id) WHERE gh.top_category in ('Cost of Revenue', 'Expenses', 'Other Expense') AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND ('$Txgroup' like '{%' or g.name = '$Txgroup')",
261
+ "rawQueryText": "SELECT SUM(t.value_usd) / ((($__to - $__from) / 1000.0 / 60 / 60 / 24)) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) inner join txgroups g USING (txgroup_id) WHERE gh.top_category in ('Cost of Revenue', 'Expenses', 'Other Expense') AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND g.name IN (${Txgroup:sqlstring})",
275
262
  "refId": "A",
276
- "timeColumns": [
277
- "time",
278
- "ts"
279
- ]
263
+ "timeColumns": ["time", "ts"]
280
264
  }
281
265
  ],
282
266
  "title": "Daily Expenses",
@@ -337,33 +321,10 @@
337
321
  "value": 80
338
322
  }
339
323
  ]
340
- }
324
+ },
325
+ "unit": "currencyUSD"
341
326
  },
342
- "overrides": [
343
- {
344
- "matcher": {
345
- "id": "byName",
346
- "options": "Net (sum)"
347
- },
348
- "properties": [
349
- {
350
- "id": "custom.drawStyle",
351
- "value": "line"
352
- },
353
- {
354
- "id": "custom.stacking",
355
- "value": {
356
- "group": "A",
357
- "mode": "none"
358
- }
359
- },
360
- {
361
- "id": "custom.fillOpacity",
362
- "value": 19
363
- }
364
- ]
365
- }
366
- ]
327
+ "overrides": []
367
328
  },
368
329
  "gridPos": {
369
330
  "h": 12,
@@ -372,9 +333,10 @@
372
333
  "y": 4
373
334
  },
374
335
  "id": 11,
336
+ "type": "timeseries",
375
337
  "options": {
376
338
  "legend": {
377
- "calcs": [],
339
+ "calcs": ["sum"],
378
340
  "displayMode": "list",
379
341
  "placement": "bottom",
380
342
  "showLegend": true
@@ -389,13 +351,11 @@
389
351
  "targets": [
390
352
  {
391
353
  "datasource": "SQLite",
392
- "queryText": "SELECT t.timestamp, SUM(CASE WHEN gh.top_category in ('Cost of Revenue', 'Expenses', 'Other Expense') THEN t.value_usd ELSE 0 END) AS \"Total Expenses\" FROM general_ledger AS t JOIN txgroup_hierarchy gh ON t.txgroup_id = gh.txgroup_id INNER JOIN txgroups g USING (txgroup_id) WHERE t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND ('$Txgroup' like '{%' or g.name = '$Txgroup') GROUP BY timestamp ORDER BY timestamp;",
354
+ "queryText": "SELECT t.timestamp, g.name AS \"TxGroup\", SUM(CASE WHEN gh.top_category in ('Cost of Revenue', 'Expenses', 'Other Expense') THEN t.value_usd ELSE 0 END) AS \"Expenses\" FROM general_ledger AS t JOIN txgroup_hierarchy gh ON t.txgroup_id = gh.txgroup_id INNER JOIN txgroups g USING (txgroup_id) WHERE t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND g.name IN (${Txgroup:sqlstring}) GROUP BY t.timestamp, g.name ORDER BY t.timestamp;",
393
355
  "queryType": "table",
394
- "rawQueryText": "SELECT t.timestamp, SUM(CASE WHEN gh.top_category in ('Cost of Revenue', 'Expenses', 'Other Expense') THEN t.value_usd ELSE 0 END) AS \"Total Expenses\" FROM general_ledger AS t JOIN txgroup_hierarchy gh ON t.txgroup_id = gh.txgroup_id INNER JOIN txgroups g USING (txgroup_id) WHERE t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND ('$Txgroup' like '{%' or g.name = '$Txgroup') GROUP BY timestamp ORDER BY timestamp;",
356
+ "rawQueryText": "SELECT t.timestamp, g.name AS \"TxGroup\", SUM(CASE WHEN gh.top_category in ('Cost of Revenue', 'Expenses', 'Other Expense') THEN t.value_usd ELSE 0 END) AS \"Expenses\" FROM general_ledger AS t JOIN txgroup_hierarchy gh ON t.txgroup_id = gh.txgroup_id INNER JOIN txgroups g USING (txgroup_id) WHERE t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND g.name IN (${Txgroup:sqlstring}) GROUP BY t.timestamp, g.name ORDER BY t.timestamp;",
395
357
  "refId": "A",
396
- "timeColumns": [
397
- "timestamp"
398
- ]
358
+ "timeColumns": ["timestamp"]
399
359
  }
400
360
  ],
401
361
  "title": "Weekly Cashflow",
@@ -426,56 +386,12 @@
426
386
  "id": "groupBy",
427
387
  "options": {
428
388
  "fields": {
429
- "Cost of Revenue": {
430
- "aggregations": [
431
- "sum"
432
- ],
433
- "operation": "aggregate"
434
- },
435
- "Expenses": {
436
- "aggregations": [
437
- "sum"
438
- ],
439
- "operation": "aggregate"
440
- },
441
- "Net": {
442
- "aggregations": [
443
- "sum"
444
- ],
445
- "operation": "aggregate"
446
- },
447
- "Other Expenses": {
448
- "aggregations": [
449
- "sum"
450
- ],
451
- "operation": "aggregate"
452
- },
453
- "Other Income": {
454
- "aggregations": [
455
- "sum"
456
- ],
457
- "operation": "aggregate"
458
- },
459
- "Revenue": {
460
- "aggregations": [
461
- "sum"
462
- ],
463
- "operation": "aggregate"
464
- },
465
- "Timestamp": {
389
+ "TxGroup": {
466
390
  "aggregations": [],
467
391
  "operation": "groupby"
468
392
  },
469
- "Total Expenses": {
470
- "aggregations": [
471
- "sum"
472
- ],
473
- "operation": "aggregate"
474
- },
475
- "Total Revenue": {
476
- "aggregations": [
477
- "sum"
478
- ],
393
+ "Expenses": {
394
+ "aggregations": ["sum"],
479
395
  "operation": "aggregate"
480
396
  },
481
397
  "timestamp": {
@@ -484,9 +400,18 @@
484
400
  }
485
401
  }
486
402
  }
403
+ },
404
+ {
405
+ "id": "partitionByValues",
406
+ "options": {
407
+ "fields": ["TxGroup"],
408
+ "keepFields": false,
409
+ "naming": {
410
+ "asLabels": false
411
+ }
412
+ }
487
413
  }
488
- ],
489
- "type": "timeseries"
414
+ ]
490
415
  }
491
416
  ],
492
417
  "preload": false,
@@ -501,12 +426,13 @@
501
426
  "text": "All",
502
427
  "value": "$__all"
503
428
  },
504
- "definition": "SELECT DISTINCT t.name FROM treasury_txs a INNER JOIN txgroup_hierarchy gh ON a.txgroup_id = gh.txgroup_id LEFT JOIN txgroups t ON gh.txgroup_id = t.txgroup_id where gh.top_category = 'Revenue' or gh.top_category = 'Other Income';",
429
+ "definition": "SELECT DISTINCT t.name FROM treasury_txs a INNER JOIN txgroup_hierarchy gh ON a.txgroup_id = gh.txgroup_id LEFT JOIN txgroups t ON gh.txgroup_id = t.txgroup_id WHERE (gh.top_category = 'Expenses' OR gh.top_category = 'Cost of Revenue' OR gh.top_category = 'Other Expense') AND a.timestamp >= $__from/1000 AND a.timestamp <= $__to/1000;",
505
430
  "description": "",
506
431
  "includeAll": true,
432
+ "label": "Tx Group",
507
433
  "name": "Txgroup",
508
434
  "options": [],
509
- "query": "SELECT DISTINCT t.name FROM treasury_txs a INNER JOIN txgroup_hierarchy gh ON a.txgroup_id = gh.txgroup_id LEFT JOIN txgroups t ON gh.txgroup_id = t.txgroup_id where gh.top_category = 'Revenue' or gh.top_category = 'Other Income';",
435
+ "query": "SELECT DISTINCT t.name FROM treasury_txs a INNER JOIN txgroup_hierarchy gh ON a.txgroup_id = gh.txgroup_id LEFT JOIN txgroups t ON gh.txgroup_id = t.txgroup_id WHERE (gh.top_category = 'Expenses' OR gh.top_category = 'Cost of Revenue' OR gh.top_category = 'Other Expense') AND a.timestamp >= $__from/1000 AND a.timestamp <= $__to/1000;",
510
436
  "refresh": 2,
511
437
  "regex": "",
512
438
  "sort": 5,
@@ -522,5 +448,5 @@
522
448
  "timezone": "",
523
449
  "title": "Expenses Over Time",
524
450
  "uid": "62bccd38-918c-4395-9180-8f7f911e9ddf",
525
- "version": 2
451
+ "version": 7
526
452
  }
@@ -42,7 +42,8 @@
42
42
  "value": 80
43
43
  }
44
44
  ]
45
- }
45
+ },
46
+ "unit": "currencyUSD"
46
47
  },
47
48
  "overrides": []
48
49
  },
@@ -60,9 +61,7 @@
60
61
  "orientation": "auto",
61
62
  "percentChangeColorMode": "standard",
62
63
  "reduceOptions": {
63
- "calcs": [
64
- "lastNotNull"
65
- ],
64
+ "calcs": ["lastNotNull"],
66
65
  "fields": "",
67
66
  "values": false
68
67
  },
@@ -74,17 +73,14 @@
74
73
  "targets": [
75
74
  {
76
75
  "datasource": "SQLite",
77
- "queryText": "SELECT SUM(t.value_usd) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) inner join txgroups t USING (txgroup_id) WHERE gh.top_category = 'Revenue' AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND ('$Txgroup' like '{%' or t.name = '$Txgroup')",
76
+ "queryText": "SELECT SUM(t.value_usd) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) inner join txgroups t USING (txgroup_id) WHERE gh.top_category = 'Revenue' AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND t.name IN (${Txgroup:sqlstring})",
78
77
  "queryType": "table",
79
- "rawQueryText": "SELECT SUM(t.value_usd) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) inner join txgroups t USING (txgroup_id) WHERE gh.top_category = 'Revenue' AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND ('$Txgroup' like '{%' or t.name = '$Txgroup')",
78
+ "rawQueryText": "SELECT SUM(t.value_usd) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) inner join txgroups t USING (txgroup_id) WHERE gh.top_category = 'Revenue' AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND t.name IN (${Txgroup:sqlstring})",
80
79
  "refId": "A",
81
- "timeColumns": [
82
- "time",
83
- "ts"
84
- ]
80
+ "timeColumns": ["time", "ts"]
85
81
  }
86
82
  ],
87
- "title": "Total Revenue",
83
+ "title": "Revenue",
88
84
  "type": "stat"
89
85
  },
90
86
  {
@@ -107,7 +103,8 @@
107
103
  "value": 80
108
104
  }
109
105
  ]
110
- }
106
+ },
107
+ "unit": "currencyUSD"
111
108
  },
112
109
  "overrides": []
113
110
  },
@@ -125,9 +122,7 @@
125
122
  "orientation": "auto",
126
123
  "percentChangeColorMode": "standard",
127
124
  "reduceOptions": {
128
- "calcs": [
129
- "lastNotNull"
130
- ],
125
+ "calcs": ["lastNotNull"],
131
126
  "fields": "",
132
127
  "values": false
133
128
  },
@@ -139,14 +134,11 @@
139
134
  "targets": [
140
135
  {
141
136
  "datasource": "SQLite",
142
- "queryText": "SELECT SUM(t.value_usd) / ((($__to - $__from) / 1000.0 / 60 / 60 / 24 / 30.436875)) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) INNER JOIN txgroups t USING (txgroup_id) WHERE gh.top_category = 'Revenue' AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND ('$Txgroup' like '{%' or t.name = '$Txgroup')",
137
+ "queryText": "SELECT SUM(t.value_usd) / ((($__to - $__from) / 1000.0 / 60 / 60 / 24 / 30.436875)) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) INNER JOIN txgroups t USING (txgroup_id) WHERE gh.top_category = 'Revenue' AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND t.name IN (${Txgroup:sqlstring})",
143
138
  "queryType": "table",
144
- "rawQueryText": "SELECT SUM(t.value_usd) / ((($__to - $__from) / 1000.0 / 60 / 60 / 24 / 30.436875)) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) INNER JOIN txgroups t USING (txgroup_id) WHERE gh.top_category = 'Revenue' AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND ('$Txgroup' like '{%' or t.name = '$Txgroup')",
139
+ "rawQueryText": "SELECT SUM(t.value_usd) / ((($__to - $__from) / 1000.0 / 60 / 60 / 24 / 30.436875)) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) INNER JOIN txgroups t USING (txgroup_id) WHERE gh.top_category = 'Revenue' AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND t.name IN (${Txgroup:sqlstring})",
145
140
  "refId": "A",
146
- "timeColumns": [
147
- "time",
148
- "ts"
149
- ]
141
+ "timeColumns": ["time", "ts"]
150
142
  }
151
143
  ],
152
144
  "title": "Monthly Revenue",
@@ -172,7 +164,8 @@
172
164
  "value": 80
173
165
  }
174
166
  ]
175
- }
167
+ },
168
+ "unit": "currencyUSD"
176
169
  },
177
170
  "overrides": []
178
171
  },
@@ -190,9 +183,7 @@
190
183
  "orientation": "auto",
191
184
  "percentChangeColorMode": "standard",
192
185
  "reduceOptions": {
193
- "calcs": [
194
- "lastNotNull"
195
- ],
186
+ "calcs": ["lastNotNull"],
196
187
  "fields": "",
197
188
  "values": false
198
189
  },
@@ -204,14 +195,11 @@
204
195
  "targets": [
205
196
  {
206
197
  "datasource": "SQLite",
207
- "queryText": "SELECT SUM(t.value_usd) / ((($__to - $__from) / 1000.0 / 60 / 60 / 24 / 7)) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) INNER JOIN txgroups t USING (txgroup_id) WHERE gh.top_category = 'Revenue' AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND ('$Txgroup' like '{%' or t.name = '$Txgroup')",
198
+ "queryText": "SELECT SUM(t.value_usd) / ((($__to - $__from) / 1000.0 / 60 / 60 / 24 / 7)) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) INNER JOIN txgroups t USING (txgroup_id) WHERE gh.top_category = 'Revenue' AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND t.name IN (${Txgroup:sqlstring})",
208
199
  "queryType": "table",
209
- "rawQueryText": "SELECT SUM(t.value_usd) / ((($__to - $__from) / 1000.0 / 60 / 60 / 24 / 7)) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) INNER JOIN txgroups t USING (txgroup_id) WHERE gh.top_category = 'Revenue' AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND ('$Txgroup' like '{%' or t.name = '$Txgroup')",
200
+ "rawQueryText": "SELECT SUM(t.value_usd) / ((($__to - $__from) / 1000.0 / 60 / 60 / 24 / 7)) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) INNER JOIN txgroups t USING (txgroup_id) WHERE gh.top_category = 'Revenue' AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND t.name IN (${Txgroup:sqlstring})",
210
201
  "refId": "A",
211
- "timeColumns": [
212
- "time",
213
- "ts"
214
- ]
202
+ "timeColumns": ["time", "ts"]
215
203
  }
216
204
  ],
217
205
  "title": "Weekly Revenue",
@@ -237,7 +225,8 @@
237
225
  "value": 80
238
226
  }
239
227
  ]
240
- }
228
+ },
229
+ "unit": "currencyUSD"
241
230
  },
242
231
  "overrides": []
243
232
  },
@@ -255,9 +244,7 @@
255
244
  "orientation": "auto",
256
245
  "percentChangeColorMode": "standard",
257
246
  "reduceOptions": {
258
- "calcs": [
259
- "lastNotNull"
260
- ],
247
+ "calcs": ["lastNotNull"],
261
248
  "fields": "",
262
249
  "values": false
263
250
  },
@@ -269,14 +256,11 @@
269
256
  "targets": [
270
257
  {
271
258
  "datasource": "SQLite",
272
- "queryText": "SELECT SUM(t.value_usd) / ((($__to - $__from) / 1000.0 / 60 / 60 / 24)) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) INNER JOIN txgroups t USING (txgroup_id) WHERE gh.top_category = 'Revenue' AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND ('$Txgroup' like '{%' or t.name = '$Txgroup')",
259
+ "queryText": "SELECT SUM(t.value_usd) / ((($__to - $__from) / 1000.0 / 60 / 60 / 24)) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) INNER JOIN txgroups t USING (txgroup_id) WHERE gh.top_category = 'Revenue' AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND t.name IN (${Txgroup:sqlstring})",
273
260
  "queryType": "table",
274
- "rawQueryText": "SELECT SUM(t.value_usd) / ((($__to - $__from) / 1000.0 / 60 / 60 / 24)) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) INNER JOIN txgroups t USING (txgroup_id) WHERE gh.top_category = 'Revenue' AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND ('$Txgroup' like '{%' or t.name = '$Txgroup')",
261
+ "rawQueryText": "SELECT SUM(t.value_usd) / ((($__to - $__from) / 1000.0 / 60 / 60 / 24)) AS total_revenue FROM general_ledger t JOIN txgroup_hierarchy gh USING (txgroup_id) INNER JOIN txgroups t USING (txgroup_id) WHERE gh.top_category = 'Revenue' AND t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND t.name IN (${Txgroup:sqlstring})",
275
262
  "refId": "A",
276
- "timeColumns": [
277
- "time",
278
- "ts"
279
- ]
263
+ "timeColumns": ["time", "ts"]
280
264
  }
281
265
  ],
282
266
  "title": "Daily Revenue",
@@ -337,33 +321,10 @@
337
321
  "value": 80
338
322
  }
339
323
  ]
340
- }
324
+ },
325
+ "unit": "currencyUSD"
341
326
  },
342
- "overrides": [
343
- {
344
- "matcher": {
345
- "id": "byName",
346
- "options": "Net (sum)"
347
- },
348
- "properties": [
349
- {
350
- "id": "custom.drawStyle",
351
- "value": "line"
352
- },
353
- {
354
- "id": "custom.stacking",
355
- "value": {
356
- "group": "A",
357
- "mode": "none"
358
- }
359
- },
360
- {
361
- "id": "custom.fillOpacity",
362
- "value": 19
363
- }
364
- ]
365
- }
366
- ]
327
+ "overrides": []
367
328
  },
368
329
  "gridPos": {
369
330
  "h": 12,
@@ -372,9 +333,10 @@
372
333
  "y": 4
373
334
  },
374
335
  "id": 11,
336
+ "type": "timeseries",
375
337
  "options": {
376
338
  "legend": {
377
- "calcs": [],
339
+ "calcs": ["sum"],
378
340
  "displayMode": "list",
379
341
  "placement": "bottom",
380
342
  "showLegend": true
@@ -389,13 +351,11 @@
389
351
  "targets": [
390
352
  {
391
353
  "datasource": "SQLite",
392
- "queryText": "SELECT t.timestamp, SUM(CASE WHEN gh.top_category in ('Revenue', 'Other Income') THEN t.value_usd ELSE 0 END) AS \"Total Revenue\" FROM general_ledger AS t JOIN txgroup_hierarchy gh ON t.txgroup_id = gh.txgroup_id INNER JOIN txgroups g USING (txgroup_id) WHERE t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND ('$Txgroup' like '{%' or g.name = '$Txgroup') GROUP BY timestamp ORDER BY timestamp;",
354
+ "queryText": "SELECT t.timestamp, g.name AS \"TxGroup\", SUM(CASE WHEN gh.top_category in ('Revenue', 'Other Income') THEN t.value_usd ELSE 0 END) AS \"Revenue\" FROM general_ledger AS t JOIN txgroup_hierarchy gh ON t.txgroup_id = gh.txgroup_id INNER JOIN txgroups g USING (txgroup_id) WHERE t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND g.name IN (${Txgroup:sqlstring}) GROUP BY t.timestamp, g.name ORDER BY t.timestamp;",
393
355
  "queryType": "table",
394
- "rawQueryText": "SELECT t.timestamp, SUM(CASE WHEN gh.top_category in ('Revenue', 'Other Income') THEN t.value_usd ELSE 0 END) AS \"Total Revenue\" FROM general_ledger AS t JOIN txgroup_hierarchy gh ON t.txgroup_id = gh.txgroup_id INNER JOIN txgroups g USING (txgroup_id) WHERE t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND ('$Txgroup' like '{%' or g.name = '$Txgroup') GROUP BY timestamp ORDER BY timestamp;",
356
+ "rawQueryText": "SELECT t.timestamp, g.name AS \"TxGroup\", SUM(CASE WHEN gh.top_category in ('Revenue', 'Other Income') THEN t.value_usd ELSE 0 END) AS \"Revenue\" FROM general_ledger AS t JOIN txgroup_hierarchy gh ON t.txgroup_id = gh.txgroup_id INNER JOIN txgroups g USING (txgroup_id) WHERE t.timestamp >= $__from/1000 AND t.timestamp <= $__to/1000 AND g.name IN (${Txgroup:sqlstring}) GROUP BY t.timestamp, g.name ORDER BY t.timestamp;",
395
357
  "refId": "A",
396
- "timeColumns": [
397
- "timestamp"
398
- ]
358
+ "timeColumns": ["timestamp"]
399
359
  }
400
360
  ],
401
361
  "title": "Weekly Cashflow",
@@ -426,56 +386,12 @@
426
386
  "id": "groupBy",
427
387
  "options": {
428
388
  "fields": {
429
- "Cost of Revenue": {
430
- "aggregations": [
431
- "sum"
432
- ],
433
- "operation": "aggregate"
434
- },
435
- "Expenses": {
436
- "aggregations": [
437
- "sum"
438
- ],
439
- "operation": "aggregate"
440
- },
441
- "Net": {
442
- "aggregations": [
443
- "sum"
444
- ],
445
- "operation": "aggregate"
446
- },
447
- "Other Expenses": {
448
- "aggregations": [
449
- "sum"
450
- ],
451
- "operation": "aggregate"
452
- },
453
- "Other Income": {
454
- "aggregations": [
455
- "sum"
456
- ],
457
- "operation": "aggregate"
458
- },
459
- "Revenue": {
460
- "aggregations": [
461
- "sum"
462
- ],
463
- "operation": "aggregate"
464
- },
465
- "Timestamp": {
389
+ "TxGroup": {
466
390
  "aggregations": [],
467
391
  "operation": "groupby"
468
392
  },
469
- "Total Expenses": {
470
- "aggregations": [
471
- "sum"
472
- ],
473
- "operation": "aggregate"
474
- },
475
- "Total Revenue": {
476
- "aggregations": [
477
- "sum"
478
- ],
393
+ "Revenue": {
394
+ "aggregations": ["sum"],
479
395
  "operation": "aggregate"
480
396
  },
481
397
  "timestamp": {
@@ -484,9 +400,18 @@
484
400
  }
485
401
  }
486
402
  }
403
+ },
404
+ {
405
+ "id": "partitionByValues",
406
+ "options": {
407
+ "fields": ["TxGroup"],
408
+ "keepFields": false,
409
+ "naming": {
410
+ "asLabels": false
411
+ }
412
+ }
487
413
  }
488
- ],
489
- "type": "timeseries"
414
+ ]
490
415
  }
491
416
  ],
492
417
  "preload": false,
@@ -501,12 +426,13 @@
501
426
  "text": "All",
502
427
  "value": "$__all"
503
428
  },
504
- "definition": "SELECT DISTINCT t.name FROM treasury_txs a INNER JOIN txgroup_hierarchy gh ON a.txgroup_id = gh.txgroup_id LEFT JOIN txgroups t ON gh.txgroup_id = t.txgroup_id where gh.top_category = 'Revenue' or gh.top_category = 'Other Income';",
429
+ "definition": "SELECT DISTINCT t.name FROM treasury_txs a INNER JOIN txgroup_hierarchy gh ON a.txgroup_id = gh.txgroup_id LEFT JOIN txgroups t ON gh.txgroup_id = t.txgroup_id WHERE (gh.top_category = 'Revenue' OR gh.top_category = 'Other Income') AND a.timestamp >= $__from/1000 AND a.timestamp <= $__to/1000;",
505
430
  "description": "",
506
431
  "includeAll": true,
432
+ "label": "Tx Group",
507
433
  "name": "Txgroup",
508
434
  "options": [],
509
- "query": "SELECT DISTINCT t.name FROM treasury_txs a INNER JOIN txgroup_hierarchy gh ON a.txgroup_id = gh.txgroup_id LEFT JOIN txgroups t ON gh.txgroup_id = t.txgroup_id where gh.top_category = 'Revenue' or gh.top_category = 'Other Income';",
435
+ "query": "SELECT DISTINCT t.name FROM treasury_txs a INNER JOIN txgroup_hierarchy gh ON a.txgroup_id = gh.txgroup_id LEFT JOIN txgroups t ON gh.txgroup_id = t.txgroup_id WHERE (gh.top_category = 'Revenue' OR gh.top_category = 'Other Income') AND a.timestamp >= $__from/1000 AND a.timestamp <= $__to/1000;",
510
436
  "refresh": 2,
511
437
  "regex": "",
512
438
  "sort": 5,
@@ -522,5 +448,5 @@
522
448
  "timezone": "",
523
449
  "title": "Revenue Over Time",
524
450
  "uid": "5284bb56-b9fb-4f36-b971-eb125bfdac7d",
525
- "version": 2
451
+ "version": 4
526
452
  }