Commit graph

1478 commits

Author SHA1 Message Date
Patrick Gansterer
d48320f9e0 Add CSV download for User 2021-03-08 17:28:08 +01:00
Patrick Gansterer
47d9c79617 Use ActiveJob instead of Resque directly
This allows us to directly pass entities to the job.
2021-03-08 12:30:58 +01:00
Patrick Gansterer
4b7cbf111f Fix small issues after 401c8f5 and 67ad202 2021-03-05 14:14:56 +01:00
Patrick Gansterer
ea2862fdef Run rubocop --fix-layout and remove encoding comments 2021-03-02 09:12:19 +01:00
lentschi
9a7d4bf07d
Add option to send mails when an order has been received 2021-02-27 17:24:25 +01:00
wvengen
f45afb7dd4 Fix error handling in single coop installs (PR #841) 2021-02-26 15:24:33 +01:00
Patrick Gansterer
7a6779ebfd Add API v1 finance_overview endpoint 2021-02-24 15:50:22 +01:00
Patrick Gansterer
4752a0aaa9 Add method to parse bank transactions as JSON
This implements parsing of the Account Information Service format as
defined in the Berlin Group Group NextGenPSD2 XS2A Framework, which
is widely used across various European banks.

This is a first step to replace the current bank import features with
a standardized JSON interface.
2021-02-24 14:59:55 +01:00
twothreenine
226c11737f
Improve reference calculator
fix rounding error, add currency symbol, better(?) translation for headline
2021-02-22 11:40:36 +01:00
twothreenine
401c8f50a8
better readable IBAN (#824)
display IBANs in groups of 4 digits with whitespaces in between
2021-02-20 12:16:21 +01:00
Patrick Gansterer
00f1dddd3d Add admin interface to enable the self service functionality 2021-02-18 18:09:40 +01:00
Patrick Gansterer
e6061e6760 Add API v1 financial_transactions POST endpoint
In a first step we allow members to create financial transactions
for their own ordergroup.
2021-02-18 18:09:40 +01:00
Patrick Gansterer
9d68abd908 Add require_config_enabled to Api::V1::BaseController 2021-02-18 18:09:40 +01:00
Patrick Gansterer
17434a038a Move require_minimum_balance and require_enough_apples to BaseController
This allows us to use them in other controllers too.
2021-02-18 18:09:40 +01:00
wvengen
f7c7b56bd0
Split order close method (PR #829) 2021-02-17 18:42:52 +01:00
wvengen
69732cca0d API v1 article_categories endpoint 2021-02-17 17:07:39 +01:00
wvengen
e1d50e5b9c API v1 group_order_articles endpoints 2021-02-17 17:07:39 +01:00
wvengen
ed9192c47f API v1 order_articles endpoints 2021-02-17 17:07:39 +01:00
wvengen
127ae83f04 API v1 orders endpoints 2021-02-17 17:07:39 +01:00
Patrick Gansterer
7d5155bef6 Add option to ignore financial transaction when calculating the balance 2021-02-17 14:07:03 +01:00
Patrick Gansterer
a30d0d4453 Add option to create a new FinancialTransaction at a FinancialLink 2021-02-17 13:52:39 +01:00
Patrick Gansterer
0e77a0e77c Add button to create a new empty FinacialLink 2021-02-17 13:52:39 +01:00
Patrick Gansterer
1656efd845 Add transport to OrderPDF 2021-02-12 15:18:03 +01:00
Patrick Gansterer
88228022e3 API v1 Add financial_transaction_type to FinancialTransactions output 2021-02-12 15:17:25 +01:00
Patrick Gansterer
be269101f8 API v1 financial_transaction_types endpoint 2021-02-12 15:17:25 +01:00
Patrick Gansterer
48391f818f API v1 financial_transaction_classes endpoint 2021-02-12 15:17:25 +01:00
Patrick Gansterer
aad4fbd5b6 Add option to set all received items to zero
When an order could not be delivered, this option makes it easy to
set all amounts to zero with only one click.
2021-02-12 15:07:21 +01:00
Patrick Gansterer
9f2e630266 Add CSV downloads for BankTransaction and Invoice 2021-02-12 14:55:59 +01:00
Patrick Gansterer
e0c0834690 Show stockorder in PDFs
When generating a PDF, which contains a order from a supplier and stock,
we want show that some articles are from stock instead of showing the
original supplier, since the people want to know where to look for their
products during pickup.
2021-02-08 01:05:29 +01:00
Patrick Gansterer
6e4b9696a2 Do not show deleted articles and suppliers for new deleiveries 2021-02-08 01:05:21 +01:00
Patrick Gansterer
d0e73ea1ff Improve selecting deliveries/orders when creating an invoice
When creating an invoice after balancing an order, it's not
possible to  the corresponding order. Change the elements in
the select box to the latest ended/delivered items (which
have not been assigned already) instead.
2021-02-08 01:05:13 +01:00
Patrick Gansterer
373d137f9f Hide IBAN of BankTransactions when empty 2021-02-08 01:04:57 +01:00
Patrick Gansterer
979439f967 Hide stock order button in stock orders 2021-02-08 01:04:46 +01:00
lentschi
45a8911ca6
Add option to ignore delivered amounts in order group distribution (#765) 2021-02-05 16:19:05 +01:00
Florian Lentsch
e3c720589d On #779 Use new received state for 'Receive' button in orders index
This slightly increases the performance as the associated order_articles
no longer need to be fetched.
2021-02-05 12:06:29 +01:00
lentschi
085562dbf4
#779 Received state for orders (PR #789, #779) 2021-02-03 20:57:53 +01:00
lentschi
67ad202859
Fix permission issue in pickups (PR #800, #799) 2021-01-30 11:21:00 +01:00
Patrick Gansterer
b22dda4638 Run select_foodcoop as the first before_action
When e.g. authenticate is run as before_action, it could use the wrong
database in a multicoop installation, if select_foodcoop is not run first.
2020-11-09 12:33:46 +01:00
JuliusR
4043433539 fix searching in external article database (#772) 2020-10-17 12:21:04 +02:00
Patrick Gansterer
3d5043fd05 Set updated_by when changing an GroupOrder via controller 2020-10-10 20:40:22 +02:00
Patrick Gansterer
beaca7d384 Make user in Task model optional to support old database entries 2020-10-10 20:39:40 +02:00
wvengen
78c4ebcb4b Make navigation API more robust.
Fixes https://github.com/foodcoops/foodsoft/issues/755.
2020-10-07 14:45:22 +02:00
Patrick Gansterer
44a198c7bc Adopt Rails 5 belongs_to_required_by_default 2020-09-05 14:40:11 +02:00
Patrick Gansterer
2557645f4f Rails 5.0 2020-09-05 14:40:11 +02:00
Patrick Gansterer
785313ac23 Make StockEvent a base class for Delivery and StockTaking
This helps to share code between the two entities and allows easier
extensions in the future.
2020-09-05 13:52:18 +02:00
Patrick Gansterer
a5582e9542 Rename Delivery.delivered_on to date
This aligns it with column names of StockTaking and us to use inheritance
in a next step to share common code between the entities.
2020-09-05 13:52:18 +02:00
wvengen
7b2072251e Fix i18n reference 2020-09-05 13:28:56 +02:00
Patrick Gansterer
266e9337be Various small rails 5 adoptions 2020-09-04 12:54:42 +02:00
Patrick Gansterer
3a6276aece Ensure that the article_id is set for every article_price
This addresses the TODO from dc92de771e.
2020-09-04 12:29:17 +02:00
Patrick Gansterer
271af8f59f Update HAML 2020-09-04 12:26:44 +02:00
Patrick Gansterer
5f60844a13 Change supplier_id of stock orders to NULL 2020-09-04 12:26:19 +02:00
Patrick Gansterer
f221a081dd Rename config tab roles to security 2020-08-12 13:32:37 +02:00
Patrick Gansterer
4c567fece1 Add transport costs to Order 2020-08-07 00:52:43 +02:00
Patrick Gansterer
67ab647eb0 Remove number_display.rb 2020-08-03 15:31:34 +02:00
Patrick Gansterer
5f2e319469 Add at least one BankAccount to the reference_calculator 2020-08-01 17:37:43 +02:00
Patrick Gansterer
d52315287d Use the correct Unicode character in MarkAsDeletedWithName 2020-07-31 21:44:46 +02:00
Patrick Gansterer
d90d188dbf Add SupplierCategory
This allows the categorization of suppliers. For a better reporting
it is necessary to split the expenses of the invoices.
E.g. we want to be able to generate independent sums of general cost
like the rent or electricity and the cost of the bought articles.
2020-07-30 17:46:07 +02:00
Patrick Gansterer
645c142bf6 Add FinancialLinksController#incomplete 2020-07-30 17:19:02 +02:00
Patrick Gansterer
057f3ec8ea Add welcome mail 2020-07-30 17:14:14 +02:00
Patrick Gansterer
3f25138997 Add option to create foodcoop transaction when creating a collection
This option can be used, if a kind of "double-entry accounting" is used
and every transaction should have a corresponding transaction.
2020-07-29 18:11:51 +02:00
Patrick Gansterer
fc22a97f52 Nullify deliveries and orders depending on an invoice (#718) 2020-07-29 15:12:48 +02:00
Florian Lentsch
5eb8abf431 Potential fix for one of the issues mentioned in #49
Reduces the number of SQL queries used on group_orders/index and
group_orders/archive, but adds extra  complexity to the code
2020-07-29 13:15:11 +02:00
Patrick Gansterer
602f663245 Add UI to show and create financial transactions for the foodcoop 2020-07-29 11:43:45 +02:00
Patrick Gansterer
1a49bee42d Adopt model to allow FinancialTransaction without an ordergroup
This will allow us to add accounting for the foodcoop itself, to support
listing for spendings independent of the order (e.g. rent, electricity).
2020-07-29 11:43:31 +02:00
Patrick Gansterer
e16f03eebf Add reference_calculator 2020-07-29 11:02:58 +02:00
wvengen
b96ce06d94
API v1 financial_transactions endpoints (#627) 2020-07-25 14:18:59 +00:00
Patrick Gansterer
dbb7407005 Clear IBAN when deleting a supplier 2020-06-22 16:35:22 +02:00
Patrick Gansterer
0aa853c53d Add information text to the receive view 2020-06-22 16:35:22 +02:00
Patrick Gansterer
5a9cc811c9 Add download for articles 2020-06-22 16:35:22 +02:00
Patrick Gansterer
b6f5295267 Add created_by user to Task 2020-04-11 00:04:49 +02:00
Patrick Gansterer
18e38be6be Create new FinancialLink for reverted FinancialTransaction 2020-04-11 00:04:49 +02:00
Patrick Gansterer
9b889dd643 Add option to create ordergroup together with user 2020-04-11 00:04:49 +02:00
Patrick Gansterer
a3946ed3d4 Add missing authorization for InvoicesController 2020-04-11 00:04:35 +02:00
Patrick Gansterer
3b79c05ffe Add link to unpaid invoices to invoice index page 2020-04-11 00:03:55 +02:00
Patrick Gansterer
08065a09ec Sort suppliers in dropdown menu for new deliveries 2020-04-10 23:59:06 +02:00
Patrick Gansterer
a3defc5463 Add FinacialTransaction create_collection for ordergroup custom fields
Custom fields of an ordergroup can set financial_transaction_source to
true, to act as an source for a new collection of FinacialTransaction.

A typical usecase would be a variable membership fee, which will be stored
in a custom field on the ordergroup. When a new membership period begins
a collection with all membership fees can be created with one click.
2020-03-23 17:40:18 +01:00
Patrick Gansterer
d73c206e29 Fix copy operation for stock orders
Stock orders have the supplier_id set to zero, which will be ignored
in the url-method by rails. Only use the order_id to fix this.
2020-03-23 17:20:21 +01:00
Patrick Gansterer
3fb3fa409b Limit financial overview items to speed up loading
If a foodcoop does not use the balancing feature the list of unfinished
orders will be very long and needs a significant amount of time to load.
2020-03-23 16:29:30 +01:00
Patrick Gansterer
739914ad43 Show only started orders to members for ordering 2020-03-23 16:25:54 +01:00
Patrick Gansterer
ab912877c3 Fix query in HomeController::ordergroup 2020-03-23 16:23:13 +01:00
Patrick Gansterer
526ea51eac Update Haml files for usage with version 5 2020-03-23 16:19:37 +01:00
Patrick Gansterer
e606f606da Convert configuration parameters to Hash for passing to FoodsoftConfig
This is required for compatibility with Rails 5.0.
2020-03-23 16:18:58 +01:00
Patrick Gansterer
f8a4341c76 Remove unused edit variable in articles_by-views
The edit version is already handled in group_order_article_edit_result().
2020-03-23 16:09:30 +01:00
Patrick Gansterer
17059a8104 Adopt model to reference GroupOrder in generated FinancialTransaction 2020-03-17 09:38:44 +01:00
Patrick Gansterer
ecb4a8a4ba Add method to close all invoices with an invoice direct
When the charge_members_manually option is active there is no need for an
explicit balancing step. This new function allows to close_direct all
orders which have an assigned invoice, which is usually indication enough
to find orders which can be closed finally.
2020-02-28 12:17:27 +01:00
Patrick Gansterer
226d2dda74 Validate the format of FinancialTransactionType.name_short 2020-02-24 14:56:45 +01:00
Patrick Gansterer
5d84156bd8 Add BankAccountConnector to implement bank import methods in plugins 2020-02-24 14:30:03 +01:00
Patrick Gansterer
d476993321 Add polls plugin 2020-02-24 14:27:22 +01:00
Patrick Gansterer
640e230d88 Fix usage of task_params in TasksController 2020-02-18 19:06:26 +01:00
Patrick Gansterer
f15ca8610b Add pickup date to order_result message 2020-02-18 19:04:10 +01:00
Patrick Gansterer
341f86d98e Fix invoice redirect 2020-02-18 19:02:34 +01:00
Patrick Gansterer
9babb6cfe9 Fix rendering of financial transaction types sums 2019-11-11 13:57:06 +01:00
Patrick Gansterer
9757e7a216 Fix Mailer.upcoming_tasks 2019-11-11 11:26:55 +01:00
Patrick Gansterer
de94220758 Add FoodsoftConfig.scope to ExceptionNotifier.notify_exception 2019-11-11 11:18:51 +01:00
Patrick Gansterer
db4c29ff1b Make the uniqueness of the name of a group expicit in the model 2019-11-11 11:12:27 +01:00
Patrick Gansterer
eb8241cf04 Fix rescue in Admin::MailDeliveryStatusController#destroy 2019-11-11 11:11:33 +01:00
Patrick Gansterer
1d9856ff93 Handle nil values correctly in User.authenticateUser 2019-11-11 11:10:26 +01:00
Patrick Gansterer
e498f9cb58 Add default roles for users
Some foodcoops want to give some roles to every member by default,
without adding every users to a workgroup.
2019-11-04 11:39:33 +01:00
Patrick Gansterer
ff76fa60c0 Allow deletion of financial transactions 2019-11-01 20:56:00 +01:00
Patrick Gansterer
260ef90f6b Add option to create a financial_link when creating financial_transaction
If multiple financial transaction belong to a bank transaction, it
is sometimes easier to create them as a collection and add the bank
transaction instead of adding all financial transaction to a link
created via a bank transaction.
2019-10-30 22:27:18 +01:00