renewed company_defaults

This commit is contained in:
Ali 2026-03-26 17:44:45 +04:00
parent ad1f6783b5
commit fa1efba44d
2 changed files with 58 additions and 8 deletions

38
TASK_CONTEXT.md Normal file
View File

@ -0,0 +1,38 @@
# Следующая задача: экспорт/импорт счетов Company
## Задача
Добавить кнопку "Export Defaults" в форму/список Company, которая выгружает все поля-ссылки на Account (Link to Account) в JSON. При установке на новой базе — проставлять эти счета в Company через setup_wizard_complete.
## Паттерн (уже реализован для Salary Component и Leave Type)
- Экспорт: Python `@frappe.whitelist()` функция → возвращает данные → JS скачивает как JSON
- JSON хранится в `jey_erp/default_data/company_defaults.json`
- Импорт: в `setup_wizard_handler.py` новая функция, вызывается из `setup_wizard_complete` в hooks.py
- Account хранится как `account_name` (без суффикса компании), при импорте резолвится через `frappe.db.get_value("Account", {"account_name": ..., "company": company}, "name")`
## Структура приложения
- `/home/frappe/frappe-bench/apps/jey_erp/jey_erp/`
- `custom/` — Python экспорт-функции (salary_component_export.py, account_export.py, leave_type_export.py)
- `public/js/` — JS кнопки (salary_component_list.js, account_list.js, leave_type_list.js)
- `default_data/` — JSON файлы (salary_components.json, leave_types.json)
- `setup/setup_wizard_handler.py` — импорт при установке
- `hooks.py` — регистрация всего
## hooks.py ключевые строки
```python
doctype_list_js = {
"Currency Exchange": "public/js/currency_exchange_list.js",
"Salary Component": "public/js/salary_component_list.js",
"Account": "public/js/account_list.js",
"Leave Type": "public/js/leave_type_list.js",
}
setup_wizard_complete = [
"jey_erp.setup.setup_wizard_handler.create_default_salary_components",
"jey_erp.setup.setup_wizard_handler.create_default_leave_types",
]
```
## Git
- jey_erp: branch `main`, remote `upstream`
- az_locale: branch `develop`, remote `upstream`
- Команда пуша: `git push upstream main`

View File

@ -1,11 +1,23 @@
{
"default_bank_account": "224.3",
"default_cash_account": "225",
"default_receivable_account": "233",
"default_payable_account": "538",
"default_bank_account": "223.1",
"default_cash_account": "221",
"default_receivable_account": "211",
"write_off_account": "731.6",
"exchange_gain_loss_account": "751",
"unrealized_exchange_gain_loss_account": "332",
"default_payable_account": "538.1",
"default_expense_account": "701.5",
"default_income_account": "601",
"default_inventory_account": "207",
"accumulated_depreciation_account": "235",
"capital_work_in_progress_account": "123.2"
"default_deferred_revenue_account": "442",
"default_deferred_expense_account": "242",
"default_inventory_account": "205",
"stock_adjustment_account": "731.12",
"stock_received_but_not_billed": "515.2",
"accumulated_depreciation_account": "112",
"depreciation_expense_account": "731.11",
"disposal_account": "731.1",
"capital_work_in_progress_account": "123.2",
"asset_received_but_not_billed": "531.1",
"default_discount_account": "603",
"default_operating_cost_account": "731"
}