78 lines
3.1 KiB
Markdown
78 lines
3.1 KiB
Markdown
# Plastic Products For Disposal Act - Implementation Summary
|
||
|
||
**Date:** 2026-01-29
|
||
**Status:** ✅ Completed
|
||
|
||
## Overview
|
||
|
||
Добавлена поддержка "Plastic Products For Disposal Act" в Purchase Invoice e-taxes интеграцию. Следует тому же паттерну что и Metal Scrap Reception Act.
|
||
|
||
## Что реализовано
|
||
|
||
### 1. Custom Fields (jey_erp app)
|
||
- Добавлена опция "Plastic Products For Disposal Act" в `act_kind` dropdown
|
||
- Теперь 4 опции:
|
||
- Agricultural Products Act
|
||
- Metal Scrap Reception Act
|
||
- Tire Products For Disposal Act
|
||
- **Plastic Products For Disposal Act** (NEW)
|
||
|
||
### 2. Backend API (invoice_az app)
|
||
|
||
**Новая функция:**
|
||
- `generate_plastic_disposal_serial_number(token)` - генерирует серийный номер
|
||
- Endpoint: `/api/po/invoice/public/v1/act/generateSerialNumber/plasticProductsForDisposalAct`
|
||
- Returns: `{"success": True, "serial_number": "PP25012912345"}`
|
||
|
||
**Изменённые функции:**
|
||
- `validate_invoice_for_sending()` - добавлена валидация (только Taxable, Tax Free запрещён)
|
||
- `send_purchase_invoice_to_etaxes()` - добавлен роутинг к функции plastic disposal
|
||
- `build_act_payload()` - добавлен kind: "plasticProductsForDisposalAct"
|
||
|
||
### 3. Frontend UI (invoice_az app)
|
||
- Обновлена логика текста кнопки: "Send Plastic Disposal Act to E-Taxes"
|
||
|
||
### 4. Documentation (CLAUDE.md)
|
||
- Добавлен plastic disposal endpoint
|
||
- Обновлена документация workflow
|
||
|
||
## Технические детали
|
||
|
||
**API:**
|
||
- Endpoint: `https://new.e-taxes.gov.az/api/po/invoice/public/v1/act/generateSerialNumber/plasticProductsForDisposalAct`
|
||
- Kind: `"plasticProductsForDisposalAct"`
|
||
|
||
**Правила валидации (как Metal Scrap):**
|
||
- ✅ Только "Taxable" (5% налог)
|
||
- ❌ "Tax Free" (0% налог) НЕ разрешён
|
||
- Ошибка если любой item имеет tax_type = "Tax Free"
|
||
|
||
## Deployment выполнен
|
||
|
||
1. ✅ Updated custom fields
|
||
2. ✅ Applied: `bench --site site1 execute jey_erp.custom_fields.create_custom_fields`
|
||
3. ✅ Built assets: `bench build --app invoice_az`
|
||
4. ✅ Cleared cache: `bench --site site1 clear-cache`
|
||
|
||
## Как использовать
|
||
|
||
1. Создать Purchase Invoice с Individual supplier
|
||
2. Отметить `purchase_type` checkbox
|
||
3. Выбрать `act_kind` = "Plastic Products For Disposal Act"
|
||
4. Добавить items с product_group_code
|
||
5. Установить все items на tax_type = "Taxable"
|
||
6. Submit документ
|
||
7. Нажать "Send Plastic Disposal Act to E-Taxes"
|
||
8. Подписать с "Sign Act with ASAN Imza"
|
||
|
||
## Результат
|
||
|
||
✅ **Полностью готово к работе!**
|
||
|
||
Пользователи могут:
|
||
- Выбрать "Plastic Products For Disposal Act" из dropdown
|
||
- Отправлять plastic disposal акты в E-Taxes
|
||
- Видеть правильный текст кнопки
|
||
- Получать валидацию на tax-free items
|
||
- Подписывать акты с ASAN Imza
|