Browse Source

Merge pull request #93 from coopiteasy/9.0-operation-request-effective-date-field

[ADD][9.0] easy_my_coop: effective date field on operation request
pull/136/head
Houssine BAKKALI 4 years ago
committed by GitHub
parent
commit
a4256e1c08
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 5
      easy_my_coop/i18n/fr_BE.po
  2. 16
      easy_my_coop/models/operation_request.py
  3. 16
      easy_my_coop/view/operation_request_view.xml

5
easy_my_coop/i18n/fr_BE.po

@ -2135,6 +2135,11 @@ msgstr "Date de la demande"
msgid "Request date"
msgstr "Date de la demande"
#. module: easy_my_coop
#: model:ir.model.fields,field_description:easy_my_coop.field_operation_request_effective_date
msgid "Effective date"
msgstr "Date effective"
#. module: easy_my_coop
#: model:ir.ui.view,arch_db:easy_my_coop.view_subscription_request_filter
msgid "Request type"

16
easy_my_coop/models/operation_request.py

@ -23,6 +23,7 @@ class operation_request(models.Model):
request_date = fields.Date(string='Request date',
default=lambda self: self.get_date_now())
effective_date = fields.Date(string='Effective date')
partner_id = fields.Many2one('res.partner',
string='Cooperator',
domain=[('member', '=', True)],
@ -87,6 +88,15 @@ class operation_request(models.Model):
invoice = fields.Many2one('account.invoice',
string="Invoice")
@api.multi
@api.constrains("effective_date")
def _constrain_effective_date(self):
for obj in self:
if obj.effective_date > fields.Datetime.now():
raise ValidationError(
_("The effective date can not be in the future.")
)
@api.multi
def approve_operation(self):
for rec in self:
@ -219,7 +229,11 @@ class operation_request(models.Model):
def execute_operation(self):
self.ensure_one()
effective_date = self.get_date_now()
if self.effective_date:
effective_date = self.effective_date
else:
effective_date = self.get_date_now()
self.effective_date = effective_date
sub_request = self.env['subscription.request']
for rec in self:

16
easy_my_coop/view/operation_request_view.xml

@ -6,11 +6,12 @@
<field name="arch" type="xml">
<tree string="Operation requests" colors="green:state in ('approved'); blue:state in ('draft');grey: state in ('done')">
<field name="request_date"/>
<field name="partner_id"/>
<field name="operation_type"/>
<field name="quantity"/>
<field name="user_id"/>
<field name="state"/>
<field name="effective_date"/>
<field name="partner_id"/>
<field name="operation_type"/>
<field name="quantity"/>
<field name="user_id"/>
<field name="state"/>
</tree>
</field>
</record>
@ -33,10 +34,11 @@
<group>
<group>
<field name="request_date" attrs="{'readonly':[('state','!=','draft')]}"/>
<field name="effective_date" attrs="{'readonly':[('state','!=','draft')]}"/>
<field name="operation_type" attrs="{'readonly':[('state','!=','draft')]}"/>
<field name="receiver_not_member" attrs="{'invisible':[('operation_type','!=','transfer')]}"/>
<field name="receiver_not_member" attrs="{'invisible':[('operation_type','!=','transfer')],'readonly':[('state','!=','draft')]}"/>
<field name="partner_id" options="{'no_create':True}" attrs="{'readonly':[('state','!=','draft')]}"/>
<field name="partner_id_to" options="{'no_create':True}" attrs="{'invisible':['|',('operation_type','!=','transfer'), ('receiver_not_member','=',True)]}"/>
<field name="partner_id_to" options="{'no_create':True}" attrs="{'invisible':['|',('operation_type','!=','transfer'), ('receiver_not_member','=',True)],'readonly':[('state','!=','draft')]}"/>
</group>
<group>
<field name="user_id"/>

Loading…
Cancel
Save