GoodERP
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

57 lignes
2.3KB

  1. # -*- coding: utf-8 -*-
  2. from odoo import _
  3. from datetime import date
  4. from odoo import models, fields, api
  5. from odoo.exceptions import UserError
  6. class SellSummaryPartnerWizard(models.TransientModel):
  7. _name = 'sell.summary.partner.wizard'
  8. _description = '销售汇总表(按客户)向导'
  9. @api.model
  10. def _default_date_start(self):
  11. return self.env.user.company_id.start_date
  12. @api.model
  13. def _default_date_end(self):
  14. return date.today()
  15. date_start = fields.Date('开始日期', default=_default_date_start,
  16. help='报表汇总的开始日期,默认为公司启用日期')
  17. date_end = fields.Date('结束日期', default=_default_date_end,
  18. help='报表汇总的结束日期,默认为当前日期')
  19. partner_id = fields.Many2one('partner', '客户',
  20. help='只统计选定的客户')
  21. goods_id = fields.Many2one('goods', '商品',
  22. help='只统计选定的商品')
  23. c_category_id = fields.Many2one('core.category', '客户类别',
  24. domain=[('type', '=', 'customer')],
  25. context={'type': 'customer'},
  26. help='只统计选定的客户类别')
  27. warehouse_id = fields.Many2one('warehouse', '仓库',
  28. help='只统计选定的仓库')
  29. company_id = fields.Many2one(
  30. 'res.company',
  31. string='公司',
  32. change_default=True,
  33. default=lambda self: self.env.company)
  34. def button_ok(self):
  35. self.ensure_one()
  36. if self.date_end < self.date_start:
  37. raise UserError(_('开始日期不能大于结束日期!\n 所选的开始日期:%s 结束日期:%s') %
  38. (self.date_start, self.date_end))
  39. read_fields = ['date_start', 'date_end', 'partner_id',
  40. 'goods_id', 'c_category_id', 'warehouse_id']
  41. return {
  42. 'name': _('销售汇总表(按客户)'),
  43. 'view_mode': 'list',
  44. 'res_model': 'sell.summary.partner',
  45. 'type': 'ir.actions.act_window',
  46. 'target': 'main',
  47. 'context': self.read(read_fields)[0],
  48. 'limit': 65535,
  49. }
上海开阖软件有限公司 沪ICP备12045867号-1