1
0
mirror of https://github.com/LaCasemate/fab-manager.git synced 2024-12-01 12:24:28 +01:00
Commit Graph

460 Commits

Author SHA1 Message Date
Sylvain
af3def0e2e (feat) save the accounting data in DB
Previously, the accounting data were built on demand,
extracting the data from the invoices on-the-fly.
This is intended to be used only once in a while, so there was
no performance issue with that.
Now, we want those data to be accessed from the OpenAPI,
so building them on-the-fly would be very much
intensive and resouces heavy. So we build them each nights
using a scheduled worker and save them in the database
2022-12-21 14:11:40 +01:00
Sylvain
7868f31a58 (feat) advanced accounting parameters
for: machines, spaces, trainings, events
2022-12-21 14:05:15 +01:00
Du Peng
f47440c85a (feat) add machine category 2022-12-20 18:45:53 +01:00
Guilherme Chaguri
dea9663f37 Added reservation deadline parameter 2022-11-29 17:02:01 -03:00
Sylvain
509dd0eb5f (feat) soft destroy machines/spaces 2022-11-22 14:17:25 +01:00
Du Peng
6d448e0af2 (merge) merge dev and product-store 2022-10-26 09:37:31 +02:00
Sylvain
f9f60cba17 (wip) allow admin to reserve for himself 2022-10-24 17:39:16 +02:00
Du Peng
3fc232ad55 (bug) cannot run seed for create statistic index 2022-10-18 17:29:32 +02:00
Du Peng
ebbbb47e67 (bug) cannot show order statstic 2022-10-18 12:44:19 +02:00
Sylvain
11c8b25357 (feat) hide the store to members/visitors 2022-10-12 16:48:39 +02:00
Sylvain
e851188354 (feat) default privacy policy to include store cookie 2022-10-12 15:06:21 +02:00
Sylvain
0016f248d8 (feat) report store orders in the stats 2022-10-12 11:42:15 +02:00
Sylvain
d9e8d0e40d (wip) report store statistics in UI 2022-10-11 17:23:45 +02:00
Sylvain
3a8082db97 (merge) Merge remote-tracking branch 'origin/product-store_cart' into product-store 2022-10-04 09:41:47 +02:00
Sylvain
e51592061a (feat) count products in categories 2022-10-03 15:56:46 +02:00
Du Peng
ac671ea26d (feat) check cart item amount/available/quantity_min/stock before checkout 2022-09-27 19:44:39 +02:00
Sylvain
1c5abf663d (quality) remove useless code 2022-09-27 11:28:33 +02:00
Sylvain
d6fbd90c7c (feat) ability to disable the store 2022-09-27 11:14:27 +02:00
Sylvain
a41e5a93e5 (feat) products filtering for admin view 2022-09-20 15:30:44 +02:00
Du Peng
f015e23a85 (wip) change order state by admin 2022-09-15 20:19:19 +02:00
Du Peng
b87355bc5a (feat) orders filter by admin 2022-09-14 19:54:24 +02:00
Du Peng
185589407f (feat) order invoice 2022-09-09 16:35:49 +02:00
Du Peng
981cffa27d pay cart with coupon code 2022-08-26 20:10:21 +02:00
Du Peng
3a669109b5 order extends to payment document 2022-08-26 15:56:20 +02:00
Du Peng
49aa54193d rename operator id to operator_profile_id in order 2022-08-26 11:55:35 +02:00
Du Peng
7c59d44785 add payment method in order after payment 2022-08-26 11:24:42 +02:00
Du Peng
939927fb73 add wallet transaction id to order 2022-08-26 11:19:09 +02:00
Du Peng
8059512f19 add order item id to product stock movement for sold 2022-08-26 11:06:09 +02:00
Du Peng
97ee15cf78 rename order amount to total 2022-08-26 10:46:30 +02:00
Du Peng
193c21a583 payment of cart by stripe/payzen/local 2022-08-25 08:52:17 +02:00
Du Peng
ab800a519f store cart 2022-08-19 20:03:09 +02:00
Du Peng
1cef45e3d7 add product stock mouvements 2022-08-08 18:04:14 +02:00
Du Peng
f345fc2443 add is_main to product image 2022-08-03 20:16:21 +02:00
Du Peng
5e1436eda4 create/edit product form 2022-08-03 10:18:00 +02:00
Du Peng
1e3e7854b2 Product model/controller 2022-08-03 10:16:36 +02:00
Du Peng
432b60ca9a store product category create/list/update/delete 2022-08-03 10:16:08 +02:00
Sylvain
98b1919de2 Make the username column optionnal (#375) 2022-07-27 09:59:23 +02:00
Sylvain
bb7eec924c Usage of the rails logger instead of printing to standard output 2022-07-26 17:27:33 +02:00
Sylvain
7134b8ffac (bug) fix notification with slots 2022-07-20 16:20:09 +02:00
Sylvain
37b24a8d2f refactor slots model 2022-07-18 17:18:01 +02:00
Sylvain
783e86d9cc (bug) fix slots creation 2022-07-18 17:18:00 +02:00
Sylvain
b2fd2e1b48 build all slots at reservation creation time 2022-07-18 17:18:00 +02:00
Sylvain
dbf624c17f rollback migration 2022-07-18 17:18:00 +02:00
Sylvain
8be2425275 (wip) refactoring slots to be unique per availability time-slot 2022-07-18 17:18:00 +02:00
Sylvain
2172c102c9 (bug) use arrays for OIDC scopes in front and DB.
Send the scope as a string separated with spaces to the OIDC provider.
2022-06-01 09:27:49 +02:00
Sylvain
e914567cf1 (bug) fix multi select behavior 2022-05-31 17:06:06 +02:00
Du Peng
41d931aba0 Fix a bug: Missing of description of PlanCategory migration 2022-05-17 16:45:17 +02:00
Du Peng
3e34b3c7a7 add user validation required setting, user proof of identity upload and organization custom field 2022-05-11 16:57:44 +02:00
Sylvain
e45872956c (ui) Option to prevent users from changing their group 2022-05-11 15:45:49 +02:00
Sylvain
ac1d518ddc (ui) option to disable the machines module 2022-05-11 11:54:00 +02:00
Sylvain
6ec6a8c4c9 (api) save which data is really mapped from the sso 2022-05-04 14:05:36 +02:00
vincent
6ee7335a4d Override React-select styles 2022-05-04 13:22:14 +02:00
vincent
4c6942eba4 merge 2022-05-04 13:02:40 +02:00
Sylvain
6c46e5ec81 (api) automatically configure some openID parameters: redirect_uri, display, response_mode 2022-05-04 12:28:48 +02:00
vincent
86403cb1f2 Override React-select styles 2022-05-04 12:25:08 +02:00
Sylvain
7b1403dac9 (db) distringuish between oid client configuration and client_auth_method 2022-05-04 12:16:38 +02:00
Sylvain
9ead3b5e8d (db) add profile_url to OpenIdConnectProvider 2022-05-04 12:16:38 +02:00
Sylvain
b4e53d2039 (db) table to save OpenID connect configuration
Also refactored OAuth2Mapping to allow usage with any types of providers
2022-05-04 12:16:38 +02:00
vincent
4a995b3bd8 merge 2022-05-04 11:30:42 +02:00
Nicolas Florentin
5e5822c89f Fix a bug: edge case of birthday in the future in seeds.rb, we should use Date.current instead of DateTime.current since birthday is a date (see https://github.com/sleede/fab-manager/issues/344) 2022-05-04 08:50:10 +02:00
Sylvain
0c51aff748 (feat) OAuth2 scopes are now configurable from the interface
Previously, scopes were supported through OAUTH2_SCOPE since v5.3.1.
BREAKING CHANGE: update your oauth2 provider configuration if you need scopes support
2022-03-22 16:40:09 +01:00
Sylvain
dc8c36029b (doc) fix comment in migration 2022-03-21 12:50:03 +01:00
Sylvain
36d85c0cf7 (bug) unable to delete an administrator who had closed an accounting period 2022-03-16 17:10:27 +01:00
Sylvain
49dd0d2dab (bug) a sentence was not linked to a translation key 2022-03-08 15:48:06 +01:00
Nicolas Florentin
e37cde2f0d removes dead code about OpenAPI (open_api_calls_count_tracings) 2022-02-25 15:39:56 +01:00
Sylvain
e4a0798b8a (bug) statistics not built
for instances with plans created before v4.3.3, the StatisticType.key does not match Plan.duration because of a behavior change in rails framework. (v4.3.3 introduces a framework upgrade)
2022-01-18 14:01:34 +01:00
Sylvain
a38d3e31b1 use explicit payment method for check in paymentSchedules and do not include the payment method in the footprint 2022-01-11 16:15:43 +01:00
Sylvain
e1256ec551 Ability to disable public account creation 2022-01-04 15:27:58 +01:00
Sylvain
dc242fc7be Default false for extended_prices_in_same_day 2021-12-23 08:34:25 +00:00
Sylvain
ffb0f3e19e ability to limit extended prices to slots in the same day 2021-12-21 16:32:02 +01:00
Sylvain
5ebc1017d2 save prices duration in db 2021-12-20 15:47:57 +01:00
Sylvain
840c536c75 Ability to configure data sources for preventing booking on overlapping slots 2021-10-22 14:50:02 +02:00
Sylvain
1a672b0644 stave start date in subscription schedule 2021-10-18 15:19:58 +02:00
Sylvain
315e899540 [WIP] fix tests 2021-10-14 18:20:10 +02:00
Du Peng
f2dd1bbcd2 add an option Subscription valid for purchase and use of a prepaid pack 2021-09-20 19:43:05 +02:00
Du Peng
4222e87e39 Disable SQL format for the schema 2021-07-01 16:17:37 +02:00
Sylvain
4e030300cb [bug] unable to filter by multiple user IDs in OpenAPI
Also: tests for OpenAPI user trainings
2021-06-28 10:17:26 +02:00
Sylvain
f16cbc44ff WIP: buy pack modal 2021-06-25 17:24:34 +02:00
Sylvain
0345d22582 delete & disable packs 2021-06-24 17:59:05 +02:00
Sylvain
d54f30e048 WIP: interface to configure packs 2021-06-21 17:39:48 +02:00
Sylvain
7ac60f6ef3 data architecture of prepaid-packs 2021-06-21 14:58:49 +02:00
Sylvain
11579fede4 ability to disable the public agenda 2021-06-15 11:57:43 +02:00
Sylvain
7ba2d58f50 update VCR to 6.0.0
Also: - updated cassettes
- Automated stripe secrets filtering in cassettes
- Improved display when no plan-categories exists
2021-06-11 14:29:30 +02:00
Sylvain
dfd2ac52dd updated SQL structure 2021-06-09 07:54:14 +02:00
Sylvain
e1e446ab3f API+ interface to CRUD plan categories 2021-06-08 16:43:43 +02:00
Sylvain
4e18a03de6 fix ADMINSYS script 2021-06-07 15:03:48 +02:00
Sylvain
fda942d386 fix invalid footprints after regeneration in migrations 2021-06-07 14:38:47 +02:00
Sylvain
5d7c024056 fix stripe_ids data migration 2021-06-07 14:15:39 +02:00
Sylvain
39fe153267 fix table name in rollback migration 2021-06-07 09:56:03 +02:00
Sylvain
54fe1fea92 migrate invoices marked as paid with stripe 2021-06-03 15:06:24 +02:00
Sylvain
5f4c322fd5 migrate payment schedule items marked as paid with stripe 2021-06-03 15:02:48 +02:00
Sylvain
4e109f7edb retrieve gateway objects with multiple ids 2021-06-03 09:48:21 +02:00
Sylvain
87cd41794e WIP: payzen subscription
TODO: retreive the payzen subscription from PayZen::Item
2021-06-02 20:07:53 +02:00
Sylvain
0b2310e57a updated changelog 2021-05-31 17:17:00 +02:00
Sylvain
55b0e25ee9 generate footprints in a reproductible way 2021-05-31 12:53:28 +02:00
Sylvain
36e173fb43 test presence of footprint debug data 2021-05-31 12:19:28 +02:00
Sylvain
d942d46632 WIP: migration to object[]
TODO: fix running tests, fix front-end
2021-05-28 17:34:20 +02:00
Sylvain
5f5ec8dbb6 remove references to Invoice.invoiced 2021-05-27 15:58:55 +02:00
Sylvain
13f50c0e33 remove references to WalletService.transactable 2021-05-27 13:43:54 +02:00
Sylvain
16df7f9506 fix data migrations + update test fixtures 2021-05-27 11:31:07 +02:00
Sylvain
6b90e73195 migrate database to object[] to store multiple boughts items 2021-05-25 17:28:35 +02:00
Sylvain
c7a59c8cb7 WIP: refactoring to singularize the booking process
We need to achieve only one process for all booking, not one for subscription, one for reservations, etc.
Moreover we must store one object per invoice_item/payment_schedule_object and stop using Invoice.invoiced or PaymentSchedule.scheduled
2021-05-21 18:25:18 +02:00
Sylvain
358400d69e fix rollback with payzen objects in Db 2021-05-12 16:42:56 +02:00
Sylvain
bc6ef8ef50 WIP: move backend code base to new architecture
- from stripe only to payment gateway abstract
- from reservation params style to unified cart_items

TODO: fix not passing tests,
subscriptions/renew_as_admin_test.rb fails because InvoiceItem(9).amount = nil
2021-04-23 17:54:59 +02:00
Sylvain
26dfbef5e1 WIP: refactor models to use payment_gateway_objects 2021-04-21 17:38:06 +02:00
Sylvain
434ec9c205 refactored Invoices to get rid of stripe references 2021-04-20 17:22:53 +02:00
Sylvain
a897d37b2d improved footprint debug process 2021-04-16 16:03:10 +02:00
Sylvain
4ffd357841 WIP: migrate stripe ids in DB 2021-04-16 12:25:48 +02:00
Sylvain
343b2f7d23 refactor code related to archiving 2021-04-16 10:34:02 +02:00
Sylvain
141f4f31b1 Merge branch 'dev' into payzen 2021-03-10 15:23:56 +01:00
Sylvain
9d747db095 Ability to disable the trainings module 2021-03-10 13:25:53 +01:00
Sylvain
3ea06826ad WIP: select gateway 2021-03-03 15:28:56 +01:00
Sylvain
0e7226c85c handle stripe requires_action 2021-02-08 15:28:47 +01:00
Sylvain
def0778a4d basic inteface to retrieve payment schedules 2021-01-25 17:42:30 +01:00
Sylvain
01a0612a4b fix create invoice for each due date 2021-01-25 14:37:07 +01:00
Sylvain
65277800e2 fix creation subcription on stripe 2020-12-23 16:25:24 +01:00
Sylvain
f661428db2 better error handling in stripe::subscription creation process 2020-12-23 15:29:56 +01:00
Sylvain
32b0222da5 save payment schedules PDF to a persistant volume storage 2020-12-22 16:39:37 +01:00
Sylvain
40c78974b8 refactoring of reservation:pay_and_save
TODO: debug with tests,
refactor subscription:pay_and_save on the same template
2020-12-16 18:33:43 +01:00
Sylvain
908ccf5bab handle reservations+subscription w/ schedule
integration testing for payment schedule
debug reservation process
2020-12-14 17:42:23 +01:00
Sylvain
678af0de1f using stripe api + improved ui + ui to configure schedules reference
TODO: as an admin, I can select if payment_method = (stripe || local)
2020-11-16 16:37:40 +01:00
Sylvain
b5504d2342 create stripe subscription with all data 2020-11-12 16:44:55 +01:00
Sylvain
ed5b90cbdc add stp_product_id to all items that can be scheduled 2020-11-12 12:14:51 +01:00
Sylvain
78847bdb4b WIP: create subscription on stripe 2020-11-10 17:02:21 +01:00
Sylvain
45800034c0 link payment_schedule_item with invoice 2020-11-10 13:43:09 +01:00
Sylvain
21bd1312bc compute payment schedule + basic display 2020-11-03 16:50:11 +01:00
Sylvain
6be51feeb2 save stp_price_id for each plan 2020-10-27 16:03:20 +01:00
Sylvain
840be2c6c0 renamed RepaymentSchedule to PaymentSchedule 2020-10-27 16:02:41 +01:00
Sylvain
52f3bd956f database structure for payment schedule 2020-10-27 11:32:20 +01:00
Sylvain
181ec38192 Removed fab-manager email address from the seeds 2020-10-26 16:40:50 +01:00
Sylvain
13bc5334cc ability to configure until when the events are shown on the home page 2020-09-29 09:39:32 +02:00
Sylvain
730ebb8742 updated db structure 2020-08-31 10:58:39 +02:00
Sylvain
d708f0a3e7 [bug] unable to search for projects on OpenLab 2020-08-24 16:19:03 +02:00
Sylvain
15b9c7b4b9 test export availabilites 2020-07-22 11:16:43 +02:00
Sylvain
19fb816d36 Enhanced rake task to create fixtures for test cases 2020-07-22 09:45:20 +02:00
Sylvain
7bf06ff23e debug footprints 2020-07-21 19:25:21 +02:00
Sylvain
69373d3def [bug] unable to seed the database 2020-07-21 09:08:20 +02:00
Sylvain
4fbd88ffd7 beta preview of the upgrade script 2020-06-30 16:11:12 +02:00
Sylvain
e644e4894a using unaccent to build project search index + updated doc 2020-06-30 15:58:39 +02:00
Sylvain
06470c1366 upgrade pg_trgm from 1.1 to 1.3 2020-06-29 14:40:21 +02:00
Sylvain
9596d74914 include postgresql-client in dockerfile to deal with rails db tasks 2020-06-29 10:54:42 +02:00
Sylvain
e95b270433 multiples fixes
- improved project search
- fix db schema (sql)
- improved doc
- removed es_language_analyzer var (deprecated)
2020-06-24 17:22:38 +02:00
Sylvain
8137418904 improved test for accounting periods 2020-06-24 15:25:17 +02:00
Sylvain
e288f66997 use search index to speed up projects searches 2020-06-23 17:06:59 +02:00
Sylvain
1a6cd356bf WIP: using postgres for full-text search in projects 2020-06-22 16:28:05 +02:00
Sylvain
40dd39304e enable/disable statistics module fomr the UI 2020-06-17 12:20:51 +02:00
Sylvain
42872ab107 configure wallet from UI 2020-06-15 12:44:43 +02:00
Sylvain
f46c78a476 read email_confirmation_required from the UI 2020-06-15 11:57:13 +02:00
Sylvain
48bcf0b838 configure invoices prefix from the DB 2020-06-15 10:58:15 +02:00
Sylvain
78518e17fb read stripe_currency from the UI
We prevent the currency from being changed if any stripe payment was made, because a stripe user cannot made pay with different currencies. If we try to charge a user with a different currency than the currency he used for a previous payment, this will fail; so we must prevent this case
2020-06-10 16:37:11 +02:00