Commit graph

551 commits

Author SHA1 Message Date
Patrick Gansterer
645c142bf6 Add FinancialLinksController#incomplete 2020-07-30 17:19:02 +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
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
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
a3946ed3d4 Add missing authorization for InvoicesController 2020-04-11 00:04:35 +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
ab912877c3 Fix query in HomeController::ordergroup 2020-03-23 16:23:13 +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
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
5d84156bd8 Add BankAccountConnector to implement bank import methods in plugins 2020-02-24 14:30:03 +01:00
Patrick Gansterer
640e230d88 Fix usage of task_params in TasksController 2020-02-18 19:06:26 +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
eb8241cf04 Fix rescue in Admin::MailDeliveryStatusController#destroy 2019-11-11 11:11:33 +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
Patrick Gansterer
c559a31a9e Fix and clean up bank account translations for English and German 2019-10-30 12:42:41 +01:00
Patrick Gansterer
1550eedb5a Add additional eager loading annotations 2019-10-30 11:53:44 +01:00
Patrick Gansterer
39aff78f11 Remove protected_attributes gem
We do not enforce the rules, so removing it and switching the existing
annotations to strong_parameters does not make our situation worse.
2019-10-29 18:09:24 +01:00
Patrick Gansterer
d4ab0a055f Fix "Cannot infer root key from collection type." in UserController 2019-10-29 17:46:04 +01:00
Patrick Gansterer
8e2ca5e7d7 Add automatic generation of financial transactions and links 2019-10-29 13:52:56 +01:00
Patrick Gansterer
2100c738af Change deprecated *_filter methods to *_action 2019-10-29 09:41:01 +01:00
JuliusR
71bdf3bfcc Allow to copy articles (PR #673, #541) 2019-10-14 07:25:34 +00:00
JuliusR
2d0a81c92d Fix and cleanup stock takings (PR #667) 2019-05-14 14:24:41 +00:00
wvengen
e9be38b3e9 Add OAuth scopes
https://github.com/foodcoops/foodsoft/issues/582#issuecomment-442513237
2019-04-03 17:20:44 +00:00
wvengen
25deefced1 Move setting availability to sync method 2019-03-24 22:14:10 +01:00
Patrick Gansterer
5dab748fe3 Move sending of PDF into new ActiveSupport::Concern 2019-02-02 12:30:42 +01:00
Patrick Gansterer
52323b98b8 Fix create_collection in FinancialTransactionsController 2019-01-17 20:27:43 +01:00
Patrick Gansterer
71fd6f2a24 Add CSV download for ordergroups 2019-01-15 04:50:32 +01:00
Patrick Gansterer
389f205a6b Add set_balance to FinancialTransactions#new_collection (fixes #438)
A new checkbox will allow user to set the balance to a given ABSOLUTE value
in addition to changing it by a RELATIVE value. This can be used if the
balance is tracked outside of foodsoft and should be syncroniced or for
setting the balance to zero for multiple ordergroups.
2019-01-15 04:44:16 +01:00
Patrick Gansterer
8c6d48da86 Avoid ActionView::MissingTemplate occurred in sessions#new
Some browser request /:foodcoop/login with the HTTP-Accept-Header set
to "image/webp,image/*;q=0.8", which leads to an internal server error
due to a not existing template. Call respond_to to allow only html and
respond with the correct "406 Not Acceptable" HTTP status code.
2019-01-15 04:18:47 +01:00
wvengen
554be093b9 API v1 navigation endpoint 2018-10-13 20:41:47 +02:00
wvengen
9c5a5d9492 API v1 config endpoint 2018-10-13 20:41:47 +02:00
wvengen
110c7cc3e9 API v1 user endpoint 2018-10-13 20:41:47 +02:00
wvengen
fd96b6ccc1
Prepare for API v1 (PR #570) 2018-10-13 20:16:35 +02:00
Patrick Gansterer
4eef0f07d5 Fix internal server error at invoices 2018-10-12 15:47:16 +02:00
Patrick Gansterer
903086ab97 Add import route for bank_transactions 2018-10-12 15:47:02 +02:00
Patrick Gansterer
707501e3f8 Add edit functionality for financial links 2018-10-12 13:18:23 +02:00
Patrick Gansterer
f0a55fb951 Add model and views for bank accounts 2018-10-11 22:29:15 +02:00
Patrick Gansterer
66e9629858 Fix balancing with financial_transaction_types 2018-06-11 15:54:18 +02:00
Patrick Gansterer
ac11ba1cc1 Add pickups role 2018-01-25 18:09:29 +01:00
Patrick Gansterer
209ad615b4 Add view to sort orders by pickup day 2017-12-09 12:56:34 +01:00
Patrick Gansterer
dae4d075fe Add UI to manage the financial transaction types and classes 2017-12-09 11:51:23 +01:00
Patrick Gansterer
924f346b4c Show the financial transaction type if there are more than one type #367 2017-12-09 11:51:23 +01:00
Patrick Gansterer
e7657b987f Update model to support financial transactions #367
This change introduces two new data types to group the financial
transactions. Now every transaction has a "type", which itself belongs
to a "class".
Types should be used add structured information to an transaction, instead
of writing it into the notice textfield. E.g. this could be used to have
different types depending on the source of money (cash vs. bank transfer).
Classes are shown as different columns in the tables and will be uses to
group transactions of specific types. They should be used if not the whole
amount of ordergroup should be used to order food. E.g. if there is a
deposit or membership fee, which is independent of the normal credit.
This will allow us to implement additional features based on classes in
the future. E.g. the sum of transactions in the "membership fee" class
must be positive to allow food orders or show a big warning if it is bellow
a certain value.
2017-12-09 11:51:23 +01:00
Patrick Gansterer
47e4a9afdf Show only 2 tasks of the same periodic_task_group at dashboard 2017-10-28 20:17:45 +02:00
Patrick Gansterer
ad96159336 Sort the task at dashboard by due_date 2017-10-28 20:17:45 +02:00
Patrick Gansterer
53bb096046 Add FinancialLinks
For now this is only usefull for plugins, since there is no UI.
2017-10-28 20:17:16 +02:00
Patrick Gansterer
6989e2f4f7 Add view for unpaid invoices 2017-10-26 21:27:26 +02:00
Patrick Gansterer
564492afe4 Add an option to automatically finish an order 2017-10-12 21:14:29 +02:00
Patrick Gansterer
7d112516a1 Fix error code when opening an invalid group order 2017-10-12 01:28:26 +02:00
Patrick Gansterer
f509f85327 Save the timestamp of the last mail to supplier and confirm resending it 2017-10-11 23:48:27 +02:00
Patrick Gansterer
f27bbc2ffa Add a button to send the order to the supplier 2017-10-10 23:45:37 +02:00
Patrick Gansterer
b4ce8c31cc Use only the HTML format during rendering of error responses 2017-10-10 20:24:50 +02:00
Patrick Gansterer
8fe633fc42 Include nested objects in database queries of Finance::BaseController 2017-10-02 19:06:39 +02:00
Patrick Gansterer
97abcabffa Log mail delivery errors to database and add an UI for it 2017-10-02 16:02:39 +02:00
Patrick Gansterer
01950b48a1 Add Discourse SSO to allow login into Discourse via Foodsoft 2017-10-01 00:48:05 +02:00
Patrick Gansterer
52dc7b1387 Raise a RoutingError for unknown foodcoop in multi_coop_installs
This gives the correct error code for request to files in the root
folder (e.g. /apple-touch-icon.png), which do not exist.
2017-09-25 10:16:03 +02:00
Patrick Gansterer
0edc780ec7 Add Discourse plugin 2017-09-22 13:58:00 +02:00
Patrick Gansterer
f8662c9184 Redirect to root_url of default_scope when no slug is given 2017-08-29 23:40:48 +02:00
Patrick Gansterer
329ac66cf1 Show only undeleted users in user select input fields (PR #486) 2017-08-21 11:27:02 +02:00
Patrick Gansterer
c6297f2864 Sort workgroups of tasks by name 2017-08-20 01:08:47 +02:00
Patrick Gansterer
c312bd5ebd Fall back to default_scope if an invalid foodcoop is provided
Before this change foodsoft redirect to the last active foodcoop, when
an invalid foodcoop is provided. After this change the default_scope
will be used all the time to avoid data disclosure.
2017-07-08 00:09:42 +02:00
Patrick Gansterer
8ed87730a8 Fix listing of shared suppliers 2017-03-04 13:17:46 +01:00
wvengen
be287cf67e Fix new stock article failing 2016-05-20 21:30:56 +02:00
Patrick Gansterer
749791bb7a Add possibility to add an attachment to an invoice #345 2016-05-06 15:04:58 +02:00
wvengen
8d5467ab7c Merge pull request #355 from foodcoop1040/expeted_delivery_date
Add expected delivery date
2016-05-04 17:42:29 +02:00
Patrick Gansterer
f286dd6053 Add pickup date
This additional date helps users to find the correct order if the time
between end and pickup varies a lot.
2016-04-29 15:28:05 +02:00
wvengen
6a7b0ae409 Fix sync ignored article count 2016-04-16 21:15:53 +02:00
wvengen
4433a665e4 Merge pull request #421 from foodcoop1040/edit_links
Add page to edit deliveries and orders linked to an invoice
2016-03-11 13:39:27 +01:00
Patrick Gansterer
efb929e64f Allow editing of linked deliveries and orders at invoice 2016-03-11 13:23:13 +01:00
Patrick Gansterer
9c4d9d5c20 Add stock group order
This allows us to add additional items to an order, which do not belong
a specific user, but will be put into stock. The benefit of this change
is that we use the same order for ordergroups and stock.
2016-03-11 13:15:16 +01:00
Patrick Gansterer
e16a0fb336 Add config option to disable the invites
Some foodcoops require that an admin adds all users to have more control
over the users.
2016-03-06 13:56:33 +01:00
Patrick Gansterer
b05ac2ab64 Add deleted_at for User
Do not remove the user from the database. Mark as deleted instead.
2016-03-04 19:03:52 +01:00
Patrick Gansterer
4cae94eff9 Sort Task index 2016-03-04 17:14:43 +01:00
Patrick Gansterer
9ae7c05a89 Create next tasks directly after creating a periodic task 2016-03-04 17:13:16 +01:00
Patrick Gansterer
1315103a7d Add role_invoices
This new role allows users to create invoices without role_finance. Users
can then only modify their own created invoices until somebody with the
role_finance sets the paid_on value.
2016-03-04 16:06:02 +01:00
Patrick Gansterer
273969ac90 Change sort order of ordergroups to ascending
Since we sort usually sort list ascending it seams strange to do this
different for ordergroups. So align the sort order with the other lists.
2016-03-04 15:59:35 +01:00
Patrick Gansterer
460cf1e82c Change relationship of invoices #390
This change will allow us to have invoices for more than one order/delivery
in the future. There are no UI changes for now.
2016-03-04 15:55:39 +01:00
Patrick Gansterer
3d6f908102 Add created_by to invoice and show it 2016-02-24 00:39:07 +01:00
wvengen
a03789e048 Add optional boxfill phase to orders 2015-11-13 18:10:46 +01:00
wvengen
c1413ff817 Allow clearing default order schedule 2015-10-23 14:53:01 +02:00
wvengen
9efa9d5d43 Handle errors using Gaffe 2015-07-21 00:08:17 +02:00
wvengen
b07e855235 Make compatible with Ruby 2.0 2015-06-05 15:35:19 +02:00
wvengen
ec03d579d0 Merge branch 'feature/edit-recurring-task'
Conflicts:
	config/locales/en.yml
2015-05-08 20:10:23 +02:00
wvengen
a00e7c94be Rework user-interface for editing recurring tasks 2015-05-08 17:39:20 +02:00
Robert
a8a434ef7b Move due date according to delta 2015-05-01 21:31:06 +02:00
Robert
fd51b07e21 Allow editing recurring task groups, basic functionality for #152 2015-05-01 21:14:16 +02:00
wvengen
aa7a2a31ae Bundle update & restructure tests (RSpec 3) 2015-04-25 17:14:37 +02:00
wvengen
5d47171b76 Improve upload error handling 2015-04-17 18:44:38 +02:00
wvengen
c30ec67548 Allow synchronising units when uploading 2015-04-11 02:52:57 +02:00
wvengen
4d1e102f47 Checkbox to remove articles not in upload 2015-04-11 02:52:57 +02:00