Commit Graph

2563 Commits

Author SHA1 Message Date
tundebabzy
78fb12663a fix test 2018-03-01 11:27:48 +01:00
tundebabzy
b91ec79494 update tests and more tweaks 2018-03-01 10:47:00 +01:00
tundebabzy
7eabbd93e1 update start date alone after restarting subscription 2018-03-01 09:09:23 +01:00
tundebabzy
2a11c18383 set initial invoice period based on subscription start 2018-03-01 08:47:38 +01:00
tundebabzy
a93fa16bce freeze screen while waiting for updates on subscription 2018-03-01 08:45:56 +01:00
tundebabzy
328adedbc8 adds start field to record subscrption start date 2018-03-01 08:45:01 +01:00
tundebabzy
d9fec69a70 update test case, fix bugs 2018-03-01 05:34:02 +01:00
tundebabzy
8f37926ca8 add ability to cancel, restart and refresh subscription 2018-03-01 04:57:23 +01:00
tundebabzy
2cccad0274 more tests and quick fix 2018-02-28 12:45:09 +01:00
tundebabzy
a5bc057ad4 adds missing 'translatability' 2018-02-28 12:24:16 +01:00
tundebabzy
86ee455cbc more tests and bug fix 2018-02-28 12:21:08 +01:00
tundebabzy
b3d5777e55 more test cases and bug fixes 2018-02-28 12:11:19 +01:00
tundebabzy
3aaf693abd adds task -process 2018-02-28 05:12:18 +01:00
tundebabzy
95a4ca9429 update test cases 2018-02-27 18:09:06 +01:00
tundebabzy
9bf029a16e generate new invoice only when current_invoice_end is past 2018-02-27 15:19:02 +01:00
tundebabzy
45b6a1719f refactor:
- current_invoice _start and end should be determined by trial period or billing period
- adds new functions to get billing period data
2018-02-27 15:14:19 +01:00
tundebabzy
c634ca8737 adds validation to billing_interval_count in Subscription Plan 2018-02-27 14:12:39 +01:00
tundebabzy
3c26a7e862 adjusts query so multiple plans can be used to create single invoice 2018-02-27 09:36:29 +01:00
tundebabzy
559d01e176 allows to rename subscription plan 2018-02-27 09:13:35 +01:00
tundebabzy
07313c281a adds more assertions to test cases 2018-02-27 09:00:13 +01:00
tundebabzy
048bcbf080 more tests and code fixes 2018-02-26 22:17:06 +01:00
tundebabzy
b84e9519c2 Subscriptions doctype - subscriber should be set only once 2018-02-26 20:35:20 +01:00
tundebabzy
1ea5055967 fix another date comparison bug 2018-02-26 20:17:59 +01:00
tundebabzy
4d8175f9d9 adds test cases and fix resulting bugs 2018-02-26 18:56:05 +01:00
tundebabzy
cd700efc0b only generate invoice after_insert if subscription is not in trial period 2018-02-26 16:26:36 +01:00
tundebabzy
0091c86e80 fix date comparison bug 2018-02-26 16:18:55 +01:00
tundebabzy
08a11b4d1f sets default for days_until_due to 0 2018-02-26 16:13:45 +01:00
tundebabzy
d3fdcd9da5 set after_insert methods:
- if subscription is not in trial period, generate sales invoice
2018-02-26 16:10:47 +01:00
tundebabzy
b72aac6729 adds validation:
- ensure trial period dates are in order
2018-02-26 15:56:47 +01:00
tundebabzy
7a2c6df645 sets Subscription doc status in before_save 2018-02-26 15:55:32 +01:00
tundebabzy
3010996cc5 adds before_insert methods:
- set current_invoice_start
- set current_invoice_end
2018-02-26 15:51:32 +01:00
tundebabzy
35e92c7d29 removes start field from Subscriptions 2018-02-26 15:25:26 +01:00
tundebabzy
6e014331c5 removes end_date from Subscriptions doctype 2018-02-26 14:05:54 +01:00
tundebabzy
2b5298238e adds prorate field to Subscription Settings 2018-02-26 13:58:29 +01:00
tundebabzy
2dee342501 Subscriptions doctype - trial start and end are set_only_once 2018-02-26 13:34:25 +01:00
tundebabzy
cbe4f5b6b3 changes to subscription settings 2018-02-26 11:22:53 +01:00
tundebabzy
066958a794 subscription_invoice doctype changes 2018-02-26 11:22:05 +01:00
tundebabzy
8457bb2c7e change in Subscription Settings 2018-02-26 08:13:41 +01:00
tundebabzy
9016890ecf adds Subscription Settings doctype 2018-02-26 06:15:31 +01:00
tundebabzy
988f5ca38b hide trial_period_end and invoices if empty 2018-02-26 05:14:10 +01:00
tundebabzy
bbac07d9d2 use naming series for Subscriptions 2018-02-26 05:07:56 +01:00
tundebabzy
dda6234cab remove subscription name and name by subscriber 2018-02-26 04:52:13 +01:00
tundebabzy
7c455ad4b6 display invoices section field only if there are invoices 2018-02-26 04:50:45 +01:00
tundebabzy
4ca5e81aa3 adds description for billing_interval_count in subscription plan 2018-02-26 04:47:19 +01:00
tundebabzy
4d31255d5c customer field in Subscriber should be Link 2018-02-26 04:40:53 +01:00
tundebabzy
a07811b67f adds new doctype - Subscriptions
- encapsulates subscription
- linked to a subscriber
- subscription can contain many plans
- contains history of generated invoices
2018-02-26 04:25:30 +01:00
tundebabzy
2581e2e5d7 New doctype - Subscription Plan:
- Plan is to be linked to a Product
- Plan will be used to create Invoice items
- Subscriber can have multiple plans
- Contains billing cycle information
2018-02-24 11:31:42 +01:00
tundebabzy
007919c03f New doctype - Subscriber:
- Encapsulates a subscriber to a service or product
- Contains subscription specific information
2018-02-24 11:19:06 +01:00
Nabin Hait
cf72d7f135 Fixed merge conflict 2018-02-22 14:47:26 +05:30
tundebabzy
cad22dbe39 Cutomisable Cash Flow Reports (#12969)
* add child doctype - Cash Flow Mapping Account

* adds new doctype - Cash Flow Mapping

* adds new doctype - Cash Flow Mapper

* adds new doctype Cash Flow Mapping Template

* adds new doctype Cash Flow Mapping Template

* adds adjustments to Cash Flow Mapper:
- remove fields from Cash Flow Mapping Template Details
- update in Cash FLow Mapper

* get cash_flow_accouts from Cash Flow Mapping

* change `tmp` to `mappers` and make sure `mappers` is sorted by its `position` field

* changes description from 'Net Profit/Loss' to 'Profit for the year'

* set `net_profit_loss` `parent_account` properly

* modify `get_account_type_based_data`:
- changed signature such that `account_type` parameter is now `account_name`
- where clause in query is now based on `name`

* remove zero rows

* de-duplicates row, summing similar accounts in the process

* makes gl sum calculation use `parent_account` as a condition

* add the `section_leader` immediately after adding net profit, sorts `accounts` by `is_working_capital` field

* adds `is_working_capital` to "account_types" so that we can use this to determine when to add "Changes in working capital" for operating activities

* add "Movement in working capital" subheader

* refactor code for readability

* adds new fields to `Cash Flow Mapping`:
- `is_interest_paid` to allow me recognise accounts for 'Interest Paid'
- `is_income_tax_paid` to allow me recognise accounts for 'Income Taxes Paid'

* allow `Cash Flow Mapping` to be renamable

* adds new field - `section_subtotal` useful for only Operating Activities

* changes `Cash Flow Mapping` doctype fields:
- remove `is_income_tax`_field
- add `is_income_tax_liability` field to identify tax payable accounts
- add `is_income_tax_expense` field to identify tax expense accounts in P or L

* calculates and shows tax paid adjustment in cash flow statement

* renames `is_interest_paid` to `is_finance_cost`

* - adds finance costs calculation
- correctly sets opening balance dates

* prevents users from selecting extra options in Cash Flow Mapping

* adds validation to prevent selecting multiple options

* adds new fields to Cash Flow Mapping

* calculate non cash p or l items (2nd pass)

* separates default cash flow generation from custom

* adds new setting to Accounts Settings:
- allow user elect to use customised cash flow report

* clean up

* removes mandatory constraint from accounts field

* allow rename, disallow create and delete

* adds patch to add default Cash Flow Mappers

* refactors custom_cashflow

* add article to explain configuration

* refactor

* further refactor

* final clean up (hopefully)

* clean up for codacy

* more codacy fixes

* more codacy fixes

* fix broken patch

* rename article to .md

* create default mappers after install

* PEP 8

* create the tables in `after_install` call
2018-02-22 11:08:36 +05:30