Fix bank movement get and process
Some checks failed
Update odoo 18 / update (push) Has been cancelled

This commit is contained in:
mgite 2024-11-15 01:49:28 +04:00
parent 9a4ba18ff8
commit 0561c3a324
2 changed files with 53 additions and 52 deletions

3
.env
View File

@ -14,6 +14,5 @@ DBUSER="odoo"
PASSWORD="odoo"
ADDONS="--addons-path=/opt/odoo/addons/,/opt/odoo/customaddons/$CUSTOMADDONS_DIR"
# ARGS=""
# ARGS="-d bross"
ARGS="-d cybro_hms -u bross_hms,exely_integration,bross_bank_management"
ARGS="-d bross_hms_dev -u bross_hms,exely_integration,bross_bank_management"
# DEBUG="-m debugpy --listen 0.0.0.0:5678 --wait-for-client"

View File

@ -77,19 +77,25 @@ class BankMovements(models.Model):
today_formatted_date = datetime.now().strftime('%Y-%m-%dT00:00:00.000')
res = client.get_account_movements_by_date_range('111111', '2024-01-01T00:00:00.000', today_formatted_date)
self.create_or_update_raw_data(res, 'bank.raw.movements', res['data'])
if not res['data']:
raise UserError(_('No data found for movements'))
for movement in res['data']['movements']:
self.create_or_update_raw_data(movement, 'bank.raw.movements', movement['movementId'])
pages = math.ceil(int(res['data']['pager']['totalcount']) / int(res['data']['pager']['pagesize']))
if pages > 1:
for page in range(1, pages):
res = client.get_account_movements_by_date_range_next_page('111111', page, 700, '2024-01-01T00:00:00.000', today_formatted_date)
self.create_or_update_raw_data(res, 'bank.raw.movements', res['data'])
for movement in res['data']['movements']:
self.create_or_update_raw_data(movement, 'bank.raw.movements', movement['movementId'])
def process_movements(self):
to_process_movements = self.env['bank.raw.movements'].search([])
for info in to_process_movements:
data = json.loads(info.json_data)
for rec in to_process_movements:
movement = json.loads(rec.json_data)
for movement in data['data']['movements']:
account_number = movement['accountNumber']
account_name = movement['accountName']
amount = movement['amount']['amount']
@ -140,10 +146,6 @@ class BankMovements(models.Model):
'taxpayer_name': taxpayer_name
})
# movement_id = '013762510743.2'
# movements_by_id = client.get_account_movements_by_id('111111', movement_id)
# self.create_or_update_raw_data(movements_by_id, 'bank.raw.movements', movements_by_id['data'].get('movementId'))