refactor: мигрировать на новую систему документов поступления
Удалена старая одноэтапная система incoming и оставлена только новая двухэтапная система IncomingDocument (черновик → проведение). Изменения: - URL структура изменена с /incoming-documents/ на /incoming/ - URL names: incoming-document-* → incoming-* - Удалены старые views, forms, templates для Incoming/IncomingBatch - Обновлена навигация и все ссылки в шаблонах - Модели IncomingBatch/Incoming сохранены как внутренняя архитектура Удалено ~1590 строк кода: - inventory/views/incoming.py (389 строк) - inventory/forms.py (206 строк старых форм) - inventory/admin.py (56 строк) - 4 шаблона incoming/*.html (895 строк) Обновлено: - inventory/urls.py - новая URL структура - inventory/views/incoming_document.py - обновлены redirects - Все шаблоны с ссылками на incoming 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -45,7 +45,7 @@ class IncomingDocumentCreateView(LoginRequiredMixin, CreateView):
|
||||
created_by=self.request.user
|
||||
)
|
||||
messages.success(self.request, f'Документ {document.document_number} создан')
|
||||
return redirect('inventory:incoming-document-detail', pk=document.pk)
|
||||
return redirect('inventory:incoming-detail', pk=document.pk)
|
||||
|
||||
|
||||
class IncomingDocumentDetailView(LoginRequiredMixin, DetailView):
|
||||
@@ -110,7 +110,7 @@ class IncomingDocumentAddItemView(LoginRequiredMixin, View):
|
||||
for error in errors:
|
||||
messages.error(request, f'{field}: {error}')
|
||||
|
||||
return redirect('inventory:incoming-document-detail', pk=pk)
|
||||
return redirect('inventory:incoming-detail', pk=pk)
|
||||
|
||||
|
||||
class IncomingDocumentUpdateItemView(LoginRequiredMixin, View):
|
||||
@@ -146,7 +146,7 @@ class IncomingDocumentUpdateItemView(LoginRequiredMixin, View):
|
||||
return JsonResponse({'success': False, 'error': str(e)}, status=400)
|
||||
messages.error(request, str(e))
|
||||
|
||||
return redirect('inventory:incoming-document-detail', pk=pk)
|
||||
return redirect('inventory:incoming-detail', pk=pk)
|
||||
|
||||
|
||||
class IncomingDocumentRemoveItemView(LoginRequiredMixin, View):
|
||||
@@ -174,7 +174,7 @@ class IncomingDocumentRemoveItemView(LoginRequiredMixin, View):
|
||||
return JsonResponse({'success': False, 'error': str(e)}, status=400)
|
||||
messages.error(request, str(e))
|
||||
|
||||
return redirect('inventory:incoming-document-detail', pk=pk)
|
||||
return redirect('inventory:incoming-detail', pk=pk)
|
||||
|
||||
|
||||
class IncomingDocumentConfirmView(LoginRequiredMixin, View):
|
||||
@@ -197,7 +197,7 @@ class IncomingDocumentConfirmView(LoginRequiredMixin, View):
|
||||
except ValidationError as e:
|
||||
messages.error(request, str(e))
|
||||
|
||||
return redirect('inventory:incoming-document-detail', pk=pk)
|
||||
return redirect('inventory:incoming-detail', pk=pk)
|
||||
|
||||
|
||||
class IncomingDocumentCancelView(LoginRequiredMixin, View):
|
||||
@@ -213,5 +213,5 @@ class IncomingDocumentCancelView(LoginRequiredMixin, View):
|
||||
except ValidationError as e:
|
||||
messages.error(request, str(e))
|
||||
|
||||
return redirect('inventory:incoming-document-list')
|
||||
return redirect('inventory:incoming-list')
|
||||
|
||||
|
||||
Reference in New Issue
Block a user