GoodERP
Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

48 lines
1.7KB

  1. from datetime import date, timedelta
  2. from odoo import models, fields, api
  3. from odoo import _
  4. from odoo.exceptions import UserError
  5. class SellTopTenWizard(models.TransientModel):
  6. _name = 'sell.top.ten.wizard'
  7. _description = '销量前十商品向导'
  8. @api.model
  9. def _default_date_start(self):
  10. '''返回6天前的日期'''
  11. now = date.today()
  12. return (now - timedelta(days=6)).strftime('%Y-%m-%d')
  13. @api.model
  14. def _default_date_end(self):
  15. return date.today()
  16. date_start = fields.Date('开始日期', default=_default_date_start,
  17. help='报表汇总的开始日期,默认为一周前日期')
  18. date_end = fields.Date('结束日期', default=_default_date_end,
  19. help='报表汇总的结束日期,默认为当前日期')
  20. warehouse_id = fields.Many2one('warehouse', '仓库',
  21. help='只统计选定的仓库')
  22. company_id = fields.Many2one(
  23. 'res.company',
  24. string='公司',
  25. change_default=True,
  26. default=lambda self: self.env.company)
  27. def button_ok(self):
  28. self.ensure_one()
  29. if self.date_end < self.date_start:
  30. raise UserError('开始日期不能大于结束日期!\n 所选的开始日期:%s 结束日期:%s' %
  31. (self.date_start, self.date_end))
  32. return {
  33. 'name': _('销量前十商品'),
  34. 'view_mode': 'list',
  35. 'res_model': 'sell.top.ten',
  36. 'type': 'ir.actions.act_window',
  37. 'target': 'main',
  38. 'context': self.read(['date_start', 'date_end', 'warehouse_id'])[0],
  39. }
上海开阖软件有限公司 沪ICP备12045867号-1