houssine
5 years ago
1 changed files with 103 additions and 103 deletions
@ -1,103 +1,103 @@ |
|||||
|
|
||||
from datetime import datetime |
|
||||
|
|
||||
from odoo import api, fields, models |
|
||||
|
|
||||
|
|
||||
class LoanIssueLine(models.Model): |
|
||||
_name = 'loan.issue.line' |
|
||||
_description = 'Loan Issue Line' |
|
||||
_order = 'date desc, id' |
|
||||
|
|
||||
@api.multi |
|
||||
@api.depends('quantity', 'face_value') |
|
||||
def _compute_amount(self): |
|
||||
for line in self: |
|
||||
line.amount = line.face_value * line.quantity |
|
||||
|
|
||||
name = fields.Char(string="Reference") |
|
||||
loan_issue_id = fields.Many2one('loan.issue', |
|
||||
string="Loan issue", |
|
||||
required=True) |
|
||||
interest_lines = fields.One2many('loan.interest.line', |
|
||||
'issue_line', |
|
||||
string="Interest lines") |
|
||||
quantity = fields.Integer(string='quantity', |
|
||||
required=True) |
|
||||
face_value = fields.Monetary(related='loan_issue_id.face_value', |
|
||||
currency_field='company_currency_id', |
|
||||
store=True, |
|
||||
readonly=True) |
|
||||
partner_id = fields.Many2one('res.partner', |
|
||||
string="Subscriber", |
|
||||
required=True) |
|
||||
date = fields.Date(string="Subscription date", |
|
||||
default=lambda self: datetime.strftime(datetime.now(), |
|
||||
'%Y-%m-%d'), |
|
||||
required=True) |
|
||||
amount = fields.Monetary(string="Subscribed amount", |
|
||||
currency_field='company_currency_id', |
|
||||
compute='_compute_amount', |
|
||||
store=True) |
|
||||
state = fields.Selection([('draft', 'Draft'), |
|
||||
('subscribed', 'Subscribed'), |
|
||||
('waiting', 'Waiting payment'), |
|
||||
('paid', 'paid'), |
|
||||
('cancelled', 'Cancelled'), |
|
||||
('ended', 'Ended')], |
|
||||
string="State", |
|
||||
required=True, |
|
||||
default="draft") |
|
||||
company_currency_id = fields.Many2one('res.currency', |
|
||||
related='company_id.currency_id', |
|
||||
string="Company Currency", |
|
||||
readonly=True) |
|
||||
company_id = fields.Many2one('res.company', |
|
||||
related='loan_issue_id.company_id', |
|
||||
string="Company", |
|
||||
readonly=True) |
|
||||
|
|
||||
def get_loan_sub_mail_template(self): |
|
||||
return self.env.ref('easy_my_coop_loan.loan_subscription_confirmation', |
|
||||
False) |
|
||||
|
|
||||
def get_loan_pay_req_mail_template(self): |
|
||||
return self.env.ref('easy_my_coop_loan.loan_issue_payment_request', |
|
||||
False) |
|
||||
|
|
||||
@api.model |
|
||||
def create(self, vals): |
|
||||
confirmation_mail_template = self.get_loan_sub_mail_template() |
|
||||
|
|
||||
line = super(LoanIssueLine, self).create(vals) |
|
||||
confirmation_mail_template.send_mail(line.id) |
|
||||
|
|
||||
return line |
|
||||
|
|
||||
@api.multi |
|
||||
def action_draft(self): |
|
||||
for line in self: |
|
||||
line.write({'state': 'draft'}) |
|
||||
|
|
||||
@api.multi |
|
||||
def action_validate(self): |
|
||||
for line in self: |
|
||||
line.write({'state': 'subscribed'}) |
|
||||
|
|
||||
@api.multi |
|
||||
def action_request_payment(self): |
|
||||
pay_req_mail_template = self.get_loan_pay_req_mail_template() |
|
||||
|
|
||||
for line in self: |
|
||||
pay_req_mail_template.send_mail(line.id) |
|
||||
line.write({'state': 'waiting'}) |
|
||||
|
|
||||
@api.multi |
|
||||
def action_cancel(self): |
|
||||
for line in self: |
|
||||
line.write({'state': 'cancelled'}) |
|
||||
|
|
||||
@api.multi |
|
||||
def action_paid(self): |
|
||||
for line in self: |
|
||||
line.write({'state': 'paid'}) |
|
||||
|
|
||||
|
from datetime import datetime |
||||
|
|
||||
|
from odoo import api, fields, models |
||||
|
|
||||
|
|
||||
|
class LoanIssueLine(models.Model): |
||||
|
_name = 'loan.issue.line' |
||||
|
_description = 'Loan Issue Line' |
||||
|
_order = 'date desc, id' |
||||
|
|
||||
|
@api.multi |
||||
|
@api.depends('quantity', 'face_value') |
||||
|
def _compute_amount(self): |
||||
|
for line in self: |
||||
|
line.amount = line.face_value * line.quantity |
||||
|
|
||||
|
name = fields.Char(string="Reference") |
||||
|
loan_issue_id = fields.Many2one('loan.issue', |
||||
|
string="Loan issue", |
||||
|
required=True) |
||||
|
interest_lines = fields.One2many('loan.interest.line', |
||||
|
'issue_line', |
||||
|
string="Interest lines") |
||||
|
quantity = fields.Integer(string='quantity', |
||||
|
required=True) |
||||
|
face_value = fields.Monetary(related='loan_issue_id.face_value', |
||||
|
currency_field='company_currency_id', |
||||
|
store=True, |
||||
|
readonly=True) |
||||
|
partner_id = fields.Many2one('res.partner', |
||||
|
string="Subscriber", |
||||
|
required=True) |
||||
|
date = fields.Date(string="Subscription date", |
||||
|
default=lambda self: datetime.strftime(datetime.now(), |
||||
|
'%Y-%m-%d'), |
||||
|
required=True) |
||||
|
amount = fields.Monetary(string="Subscribed amount", |
||||
|
currency_field='company_currency_id', |
||||
|
compute='_compute_amount', |
||||
|
store=True) |
||||
|
state = fields.Selection([('draft', 'Draft'), |
||||
|
('subscribed', 'Subscribed'), |
||||
|
('waiting', 'Waiting payment'), |
||||
|
('paid', 'paid'), |
||||
|
('cancelled', 'Cancelled'), |
||||
|
('ended', 'Ended')], |
||||
|
string="State", |
||||
|
required=True, |
||||
|
default="draft") |
||||
|
company_currency_id = fields.Many2one('res.currency', |
||||
|
related='company_id.currency_id', |
||||
|
string="Company Currency", |
||||
|
readonly=True) |
||||
|
company_id = fields.Many2one('res.company', |
||||
|
related='loan_issue_id.company_id', |
||||
|
string="Company", |
||||
|
readonly=True) |
||||
|
|
||||
|
def get_loan_sub_mail_template(self): |
||||
|
return self.env.ref('easy_my_coop_loan.loan_subscription_confirmation', |
||||
|
False) |
||||
|
|
||||
|
def get_loan_pay_req_mail_template(self): |
||||
|
return self.env.ref('easy_my_coop_loan.loan_issue_payment_request', |
||||
|
False) |
||||
|
|
||||
|
@api.model |
||||
|
def create(self, vals): |
||||
|
line = super(LoanIssueLine, self).create(vals) |
||||
|
|
||||
|
confirmation_mail_template = line.get_loan_sub_mail_template() |
||||
|
confirmation_mail_template.send_mail(line.id) |
||||
|
|
||||
|
return line |
||||
|
|
||||
|
@api.multi |
||||
|
def action_draft(self): |
||||
|
for line in self: |
||||
|
line.write({'state': 'draft'}) |
||||
|
|
||||
|
@api.multi |
||||
|
def action_validate(self): |
||||
|
for line in self: |
||||
|
line.write({'state': 'subscribed'}) |
||||
|
|
||||
|
@api.multi |
||||
|
def action_request_payment(self): |
||||
|
pay_req_mail_template = self.get_loan_pay_req_mail_template() |
||||
|
|
||||
|
for line in self: |
||||
|
pay_req_mail_template.send_mail(line.id) |
||||
|
line.write({'state': 'waiting'}) |
||||
|
|
||||
|
@api.multi |
||||
|
def action_cancel(self): |
||||
|
for line in self: |
||||
|
line.write({'state': 'cancelled'}) |
||||
|
|
||||
|
@api.multi |
||||
|
def action_paid(self): |
||||
|
for line in self: |
||||
|
line.write({'state': 'paid'}) |
Write
Preview
Loading…
Cancel
Save
Reference in new issue