diff options
Diffstat (limited to 'indoteknik_custom/models/purchasing_job.py')
| -rw-r--r-- | indoteknik_custom/models/purchasing_job.py | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/indoteknik_custom/models/purchasing_job.py b/indoteknik_custom/models/purchasing_job.py index 18235d47..43da2458 100644 --- a/indoteknik_custom/models/purchasing_job.py +++ b/indoteknik_custom/models/purchasing_job.py @@ -38,5 +38,52 @@ class PurchasingJob(models.Model): def generate_request_po(self): # print(1) + # TODO create document automatic purchase for job in self: print(job.product_id.name) + + +class OutstandingSales(models.Model): + _name = 'v.sales.outstanding' + _auto = False + _rec_name = 'move_id' + + id = fields.Integer() + move_id = fields.Many2one('stock.move', string='Move') + picking_id = fields.Many2one('stock.picking', string='Picking') + product_id = fields.Many2one('product.product', string='Product') + sale_id = fields.Many2one('sale.order', string='Sale') + sale_line_id = fields.Many2one('sale.order.line', string='Sale Line') + partner_id = fields.Many2one('res.partner', string='Partner') + partner_invoice_id = fields.Many2one('res.partner', string='Invoice Partner') + salesperson_id = fields.Many2one('res.users', string='Salesperson') + origin = fields.Char(string='Origin') + salesperson = fields.Char(string='Sales Name') + item_code = fields.Char(string='Item Code') + product = fields.Char(string='Product') + outgoing = fields.Float(string='Outgoing') + brand = fields.Char(string='Brand') + invoice_partner = fields.Char(string='Invoice Partner') + + def init(self): + tools.drop_view_if_exists(self.env.cr, self._table) + self.env.cr.execute(""" + CREATE OR REPLACE VIEW v_sales_outstanding AS ( + select sm.id, sm.id as move_id, sp.id as picking_id, sm.product_id, so.id as sale_id, + sol.id as sale_line_id, rp.id as partner_id, so.user_id as salesperson_id, so.partner_invoice_id, + sp.origin, rp2.name as salesperson, coalesce(pp.default_code, pt.default_code) as item_code, pt.name as product, + sm.product_uom_qty as outgoing, xm.x_name as brand, rp.name as invoice_partner + from stock_move sm + join stock_picking sp on sp.id = sm.picking_id + join sale_order_line sol on sol.id = sm.sale_line_id + join sale_order so on so.id = sol.order_id + join res_partner rp on rp.id = so.partner_invoice_id + join res_users ru on ru.id = so.user_id + join res_partner rp2 on rp2.id = ru.partner_id + join product_product pp on pp.id = sm.product_id + join product_template pt on pt.id = pp.product_tmpl_id + left join x_manufactures xm on xm.id = pt.x_manufacture + where sp.state in ('draft', 'waiting', 'confirmed', 'assigned') + and sp.name like '%OUT%' + ) + """) |
