From 4f3f1c217048c798df59a6ebaae21a17cb5e1f28 Mon Sep 17 00:00:00 2001 From: Oscar Date: Sat, 18 Sep 2021 11:12:48 -0500 Subject: [PATCH] Refactory report --- move_by_products.ods => move_by_products.fods | Bin products.ods => products.fods | Bin shipment.py | 64 ++++++++++++++---- shipment_detailed.fods | Bin 14807 -> 14488 bytes stock.xml | 8 +-- view/print_shipment_detailed_start_form.xml | 3 +- warehouse.ods => warehouse.fods | Bin ...se_detailed.ods => warehouse_detailed.fods | Bin 8 files changed, 57 insertions(+), 18 deletions(-) rename move_by_products.ods => move_by_products.fods (100%) rename products.ods => products.fods (100%) rename warehouse.ods => warehouse.fods (100%) rename warehouse_detailed.ods => warehouse_detailed.fods (100%) diff --git a/move_by_products.ods b/move_by_products.fods similarity index 100% rename from move_by_products.ods rename to move_by_products.fods diff --git a/products.ods b/products.fods similarity index 100% rename from products.ods rename to products.fods diff --git a/shipment.py b/shipment.py index f0835ee..8601f52 100644 --- a/shipment.py +++ b/shipment.py @@ -2,7 +2,9 @@ # this repository contains the full copyright notices and license terms. from datetime import date from decimal import Decimal +from operator import itemgetter from sql import Table + from trytond.pool import Pool, PoolMeta from trytond.wizard import Wizard, StateTransition, StateView, Button, StateReport from trytond.transaction import Transaction @@ -10,6 +12,12 @@ from trytond.model import ModelView, fields from trytond.report import Report from trytond.pyson import Eval +type_shipment = { + 'out': 'Envio a Clientes', + 'in': 'Envio de Proveedor', + 'internal': 'Envio Interno', +} + class ShipmentIn(metaclass=PoolMeta): 'Shipment In' @@ -287,30 +295,62 @@ class ShipmentDetailedReport(Report): report_context = super().get_context(records, header, data) pool = Pool() + company = Transaction().context.get('company.rec_name') model = 'stock.shipment.' + data['type_shipment'] ModelShipment = pool.get(model) + Move = pool.get('stock.move') + Product = pool.get('product.product') dom_shipment = [ ('company', '=', data['company']), ('effective_date', '>=', data['start_date']), ('effective_date', '<=', data['end_date']) ] - shipments = ModelShipment.search(dom_shipment, + fields_names = ['id'] + shipments = ModelShipment.search_read(dom_shipment, + fields_names=fields_names, order=[('effective_date', 'ASC')] ) + shipments = [model + ',' + str(sh['id']) for sh in shipments] - _records = [] - for s in shipments: - for m in s.moves: - value = { - 'oc': s.to_location.parent.operation_center.name if s.to_location.parent.operation_center else '', - 'move': m, - 'shipment': s - } - _records.append(value) + fields_names = [ + 'product.account_category.name', 'product.name', 'product.cost_price', + 'quantity', + ] + moves = Move.search_read( + ('shipment', 'in', shipments), + fields_names=fields_names + ) - report_context['records'] = _records + dgetter = itemgetter('product.', 'quantity') + product_browse = Product.browse + for m in moves: + product, quantity = dgetter(m) + product_, = product_browse([product['id']]) + try: + # FIXME + # oc = s.to_location.parent.operation_center.name + pass + except: + oc = '' + + cost_price = product['cost_price'] + category = product.get('account_category.', '') + if category: + category = category['name'] + + m.update({ + 'oc': '', + 'product': product['name'], + 'cost_price': cost_price, + 'category': category, + 'cost_base': float(cost_price) * quantity, + 'cost_w_tax': float(product_.cost_price_taxed) * quantity, + }) + + report_context['records'] = moves + report_context['company'] = company report_context['Decimal'] = Decimal - report_context['data'] = data + report_context['kind'] = type_shipment[data['type_shipment']] return report_context diff --git a/shipment_detailed.fods b/shipment_detailed.fods index 78ff720617eff6a6bd5be7bd2761e93f58f0316e..5a75650d2dffbd3da0cadce23f42a78196645735 100644 GIT binary patch delta 10107 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 R5d1x`FXEwwMrZ#k`d^Rd0Qdj^ delta 10406 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 Move by Product stock_co.move_by_product - stock_co/move_by_products.ods + stock_co/move_by_products.fods ods False @@ -49,7 +49,7 @@ this repository contains the full copyright notices and license terms. --> Warehouse stock_co.warehouse_stock.report - stock_co/warehouse.ods + stock_co/warehouse.fods ods False @@ -69,7 +69,7 @@ this repository contains the full copyright notices and license terms. --> Warehouse Detailed stock_co.warehouse_stock_detailed.report - stock_co/warehouse_detailed.ods + stock_co/warehouse_detailed.fods ods False @@ -89,7 +89,7 @@ this repository contains the full copyright notices and license terms. --> Print Products stock_co.print_products.report - stock_co/products.ods + stock_co/products.fods ods False diff --git a/view/print_shipment_detailed_start_form.xml b/view/print_shipment_detailed_start_form.xml index af076d9..909045d 100644 --- a/view/print_shipment_detailed_start_form.xml +++ b/view/print_shipment_detailed_start_form.xml @@ -3,12 +3,11 @@ this repository contains the full copyright notices and license terms. -->