def maintenance_view(request): data = get_abstract_data() maintenance_devices = MaintenanceDevice.objects.filter(deleted=False) data['maintenance_devices'] = (device.as_dict() for device in maintenance_devices) data['inventory_serials'] = [ device.serial_number for device in InventoryDevice.objects.filter( delivered=False, deleted=False, maintenance_device__isnull=True) ] data['devices_and_spareparts'] = { device.pk: [sparepart.as_dict() for sparepart in device.spareparts.all()] for device in maintenance_devices } data['spareparts'] = [ sparepart.name for sparepart in Sparepart.objects.filter(deleted=False) ] return render(request, 'devices/maintenance.html', context=data)
def device_detail(request, serial_number): data = get_abstract_data() inventory_devices = InventoryDevice.objects.filter( serial_number=serial_number, deleted=False) inventory_device = inventory_devices.first() if not inventory_device: inventory_device = InventoryDevice.objects.filter( serial_number=serial_number).first() company_name = inventory_device.reception_receipt.company_name device_type = inventory_device.device_type all_devices = [ device.as_dict(for_detail=True) for device in inventory_devices ] new_data = { 'serial_number': serial_number, 'company_name': company_name, 'device_type': device_type, 'devices': all_devices } data.update(**new_data) return render(request, 'devices/device-detail.html', context=data)
def daily_attendance_view(request): data = get_abstract_data() data['attendances'] = Attendance.objects.filter(date=timezone.now().date()) return render(request, 'attendance/daily-attendance.html', context=data)
def expense_archive_list(request): data = get_abstract_data() data['daily_expenses'] = DailyExpense.objects.exclude( date=timezone.now().date()) return render(request, 'expenses/expense-archive-list.html', context=data)
def device_inventory_view(request): data = get_abstract_data() devices = InventoryDevice.objects.filter(delivered=False, deleted=False) data['inventory_devices'] = devices return render(request, 'devices/device-inventory.html', context=data)
def delivery_receipt_archive_view(request): data = get_abstract_data() data['delivery_receipts'] = DeliveryReceipt.objects.all() return render(request, 'receipts/delivery-receipt-archive.html', context=data)
def reception_receipt_archive_view(request): data = get_abstract_data() data['reception_receipts'] = ReceptionReceipt.objects.all() return render(request, 'receipts/reception-receipt-archive.html', context=data)
def sparepart_inventory_list(request): data = get_abstract_data() data['spareparts'] = Sparepart.objects.filter(deleted=False) return render(request, 'devices/sparepart-inventory-list.html', context=data)
def delivery_receipt_detail(request, pk): data = get_abstract_data() receipt = DeliveryReceipt.objects.get(pk=pk) data['receipt'] = receipt.as_dict(for_receipt=True) data['receipt_json'] = json.dumps(receipt.as_dict(for_receipt=True)) return render(request, 'receipts/delivery-receipt-detail.html', context=data)
def totals_view(request): data = get_abstract_data() year = datetime.datetime.now().year totals_data = utils.get_totals(year, 'EX') data.update(months=range(1, 13), **totals_data) return render(request, 'expenses/totals.html', context=data)
def sparepart_inventory_detail(request, pk): data = get_abstract_data() sparepart = Sparepart.objects.get(pk=pk) data['devices'] = (device.as_dict() for device in MaintenanceDevice.objects.filter( spareparts__sparepart__name=sparepart.name)) return render(request, 'devices/sparepart-inventory-detail.html', context=data)
def total_filter_view(request): data = get_abstract_data() data.update( revenue_categories=[ category.name for category in ExpenseCategory.objects.filter(category_type='RV') ], expense_categories=[ category.name for category in ExpenseCategory.objects.filter(category_type='EX') ]) return render(request, 'expenses/total-filter.html', context=data)
def daily_expenses_view(request): data = get_abstract_data(view='daily-expenses') utils.close_old_days() data['expenses'] = Expense.objects.filter(date=timezone.now().date()) data['revenue_categories'] = [ category.as_dict() for category in ExpenseCategory.objects.filter(category_type='RV') ] data['expense_categories'] = [ category.as_dict() for category in ExpenseCategory.objects.filter(category_type='EX') ] return render(request, 'expenses/daily-expenses.html', context=data)
def new_delivery_receipt_view(request): data = get_abstract_data() data['current_delivery_id'] = DeliveryReceipt.objects.last().id + 1 if DeliveryReceipt.objects.exists() else 1 receipt_getter = ReceiptGetter() data['new_delivery_receipt_serials'] = get_receipts_data('delivery', 'serial') data['new_delivery_receipt_companies'] = receipt_getter.get_companies('delivery') data['new_delivery_receipt_types'] = receipt_getter.get_types('delivery') data['inner_reprs'] = receipt_getter.get_representatives('inner') data['outer_reprs'] = receipt_getter.get_representatives('outer') data['data'] = dict(request.GET) data['company'] = request.GET.get('company', '') return render(request, 'receipts/new-delivery-receipt.html', context=data)
def loans_view(request): data = get_abstract_data() loans = utils.get_formatted_loans_or_custodies(Loan) total_loans = sum([loan.amount for loan in Loan.objects.all()]) if total_loans > 0: label = 'اجمالى المستحقات: {} جم'.format(total_loans) else: label = 'اجمالى السلف: {} جم'.format(total_loans) data.update(loans=loans, total_loans_label=label) return render(request, 'expenses/loans.html', context=data)
def custody_view(request): data = get_abstract_data() custs = utils.get_formatted_loans_or_custodies(Custody) total_custody = sum([cust.amount for cust in Custody.objects.all()]) if total_custody > 0: label = 'اجمالى المستحقات: {} جم'.format(total_custody) else: label = 'اجمالى العهدة: {} جم'.format(total_custody) data.update(custs=custs, total_custs_label=label) return render(request, 'expenses/custody.html', context=data)
def total_filter_view(request): data = get_abstract_data() inventory_devices = InventoryDevice.objects.filter(delivered=False, deleted=False) archive_devices = ArchiveDevice.objects.filter(deleted=False) serials = list( set([device.serial_number for device in inventory_devices] + [ device.inventory_device.serial_number for device in archive_devices ])) receipt_getter = ReceiptGetter() companies = receipt_getter.get_companies('reception') types = receipt_getter.get_types('reception') data.update(**{'serials': serials, 'companies': companies, 'types': types}) return render(request, 'devices/total-filter-view.html', context=data)
def expense_archive_detail(request, pk): data = get_abstract_data() expense = DailyExpense.objects.get(pk=pk) data['daily_expense'] = expense.as_dict(include_closing_data=True, include_expenses=True) data['revenue_categories'] = [ category.as_dict() for category in ExpenseCategory.objects.filter(category_type='RV') ] data['expense_categories'] = [ category.as_dict() for category in ExpenseCategory.objects.filter(category_type='EX') ] data.update(next_id=getattr(expense.get_next(), 'id', expense.id), prev_id=getattr(expense.get_prev(), 'id', expense.id)) return render(request, 'expenses/expense-archive-detail.html', context=data)
def device_archive_view(request): data = get_abstract_data() return render(request, 'devices/device-archive.html', context=data)