Browse Source

payment batch create donation 02:00

master
root 3 years ago
parent
commit
0455d55d31
4 changed files with 75 additions and 7 deletions
  1. +53
    -1
      models/payment_batch.py
  2. +4
    -4
      views/operation.xml
  3. +2
    -0
      views/partner.xml
  4. +16
    -2
      views/payment_batch.xml

+ 53
- 1
models/payment_batch.py View File

@ -33,15 +33,25 @@ class opendons_payment_batch(models.Model):
# )
partner_id=fields.Many2one(
'res.partner',
string='Partner',
index=True,
track_visibility='onchange',
ondelete='restrict'
)
operation_id=fields.Many2one(
'opendons.operation',
string='Operation',
index=True,
domain=[('state', '=', 'exported')],
track_visibility='onchange',
ondelete='restrict'
)
segment_id=fields.Many2one(
'opendons.segment',
string='Segment',
@ -71,9 +81,51 @@ class opendons_payment_batch(models.Model):
res = {}
res['domain']={'segment_id':[('operation_id', '=', self.operation_id.id)]}
return res
@api.onchange("payment_input")
def _onchange_payment_input(self):
if self.payment_input:
inpt=self.payment_input.split(';')
if len(inpt)!=4:raise ValidationError('input string not valid')
partner_id=int(inpt[0])
key=inpt[1]
operation_id=int(inpt[2])
segment_id=int(inpt[3])
partner = self.env['res.partner'].sudo().search(['&',('id','=',int(partner_id)),('key','=',key)])
operation = self.env['res.partner'].sudo().search([('id','=',int(operation_id))])
segment = self.env['res.partner'].sudo().search([('id','=',int(segment_id))])
if not partner : ValidationError('partner not found')
if not operation : ValidationError('operation not found')
if not segment : ValidationError('segment not found')
self.partner_id=partner_id
self.operation_id=operation_id
self.segment_id=segment_id
res=self.action_ajouter_payment()
def action_ajouter_payment(self):
vals={}
vals['payment_batch_id']=self.id
vals['partner_id']=self.partner_id.id
vals['operation_id']=self.operation_id.id
vals['segment_id']=self.segment_id.id
vals['donation_date']=fields.Date.context_today(self)
self.env['donation.donation'].create(vals)
return True
class opendons_payment_batch_lines(models.Model):


+ 4
- 4
views/operation.xml View File

@ -29,7 +29,7 @@
<field name="arch" type="xml">
<tree>
<field name="code"/>
<field name="id"/>
<field name="name"/>
<field name="chanel"/>
<field name="partner_count"/>
@ -48,7 +48,7 @@
<field name="arch" type="xml">
<tree decoration-danger="exclusion == True">
<field name="sequence" widget="handle"/>
<field name="code"/>
<field name="id"/>
<field name="name"/>
<field name="logical_operator"/>
<field name="operation_id"/>
@ -143,7 +143,7 @@
<sheet>
<group name="operation">
<field name="code"/>
<field name="id"/>
<field name="name"/>
<field name="chanel"/>
<field name="cost"/>
@ -176,7 +176,7 @@
<sheet>
<group name="segment">
<field name="operation_id"/>
<field name="code"/>
<field name="id"/>
<field name="name"/>
<field name="logical_operator"/>


+ 2
- 0
views/partner.xml View File

@ -58,7 +58,9 @@
<field id="company" class="o_text_overflow" name="name" default_focus="1" placeholder="e.g. Lumber Inc" attrs="{'required' : [('type', '=', 'contact'),('is_company', '=', True)], 'invisible': [('is_company','=', False)]}"/>
<field id="individual" class="o_text_overflow" name="name" default_focus="1" placeholder="e.g. Brandom Freeman" attrs="{'required' : [('type', '=', 'contact'), ('is_company', '=', False)], 'invisible': [('is_company','=', True)]}"/>
<field name="firstname" attrs="{'invisible':[('is_company','=',True)]}"/>
<field name="id"/>
<field name="key"/>
<field name="parent_id" string="Company Name"
widget="res_partner_many2one"


+ 16
- 2
views/payment_batch.xml View File

@ -1,5 +1,18 @@
<odoo>
<data>
<template id="assets_backend" name="js assets" inherit_id="web.assets_backend">
<xpath expr="." position="inside">
<script
type="text/javascript"
src="/opendons/static/src/js/payment_batch.js">
</script>
<!-- <link
href="/custom_module_name/static/src/css/filenmae.css"
rel="stylesheet"
type="text/css"/> -->
</xpath>
</template>
<record model="ir.ui.view" id="opendons.payment_batch">
<field name="name">opendons_payment_batch list</field>
<field name="model">opendons_payment_batch</field>
@ -27,11 +40,12 @@
<field name="create_date"/>
<field name="create_uid"/>
<field name="payment_mode_id"/>
<field name="payment_input"/>
<field name="partner_id"/>
<field name="operation_id"/>
<field name="segment_id"/>
<field name="payment_input"/>
<field name="company_id" invisible="1"/>
<field name="company_id" invisible="1"/>
</group>
<button name="action_ajouter_payment" type="object" string="Ajouter" class="oe_highlight"/>


Loading…
Cancel
Save