Browse Source

import adherents

dev-rcn
root 3 years ago
parent
commit
20c02f9353
2 changed files with 50 additions and 3 deletions
  1. +4
    -3
      models/membership.py
  2. +46
    -0
      models/membership_import.py

+ 4
- 3
models/membership.py View File

@ -170,6 +170,7 @@ class kalachakra_membership(models.Model):
m.amount=45
def unlink(self):
if self.partner_id.super_member==False:
self.partner_id.member_status='not member'
return super(kalachakra_membership, self).unlink()
for rec in self:
if rec.partner_id.super_member==False:
rec.partner_id.member_status='not member'
super(kalachakra_membership, rec).unlink()

+ 46
- 0
models/membership_import.py View File

@ -75,6 +75,52 @@ class membershipimport(models.Model):
return True
def import_membership_csv_files_v2(self):
files= self.env["opendons.partnerdraftfile"].search([('source_name','=','membership')])
for f in files:
decrypted = base64.b64decode(f.file).decode('utf-8-sig')
source_name=f.source_name
membership_product=self.env['product.product'].sudo().search([('membership_product','=',True)],limit=1)
with io.StringIO(decrypted) as fp:
reader = csv.DictReader(fp, delimiter=";", quotechar='"')
for row in reader:
vals={}
vals['partner_id']=False
vals['product_id']=membership_product.id
vals['start_date']=False
vals['state']='done'
vals['payment_state']='paid'
type_rec=''
for key, value in row.items():
#on cherche le contact
if key=='id':
partner=self.env['res.partner'].search([('external_id','=',value)])
if partner:
vals['partner_id']=partner.id
if key=='Date adhesion':
year_m=value[12:16]
month_m=value[17:19]
day_m=value[20:22]
start_date=datetime.strptime(year_m+'-'+month_m+'-'+day_m, '%Y-%m-%d')
vals['start_date']=start_date
vals['end_date']=start_date+relativedelta(years=1)
if vals['partner_id'] and vals['start_date']:
self.env['kalachakra.membership'].create(vals)
return True
def update_super_member(self):
partner=self.env['res.partner'].search([])


Loading…
Cancel
Save