42 lines
1.2 KiB
Python
42 lines
1.2 KiB
Python
from odoo import http
|
|
from odoo.http import request
|
|
|
|
class PartnerBankController(http.Controller):
|
|
|
|
@http.route('/api/create_partner_bank', type='json', auth='user', methods=['POST'], csrf=False)
|
|
def create_partner_bank(self, **kwargs):
|
|
|
|
data = request.jsonrequest or {}
|
|
|
|
partner_id = data.get('partner_id')
|
|
bank_id = data.get('bank_id')
|
|
acc_number = data.get('acc_number')
|
|
|
|
if not partner_id:
|
|
return {'error': 'partner_id is required'}
|
|
|
|
if not bank_id:
|
|
return {'error': 'bank_id is required'}
|
|
|
|
if not acc_number:
|
|
return {'error': 'acc_number is required'}
|
|
|
|
partner = request.env['res.partner'].sudo().browse(int(partner_id))
|
|
if not partner.exists():
|
|
return {'error': 'Partner not found'}
|
|
|
|
bank = request.env['res.bank'].sudo().browse(int(bank_id))
|
|
if not bank.exists():
|
|
return {'error': 'Bank not found'}
|
|
|
|
partner_bank = request.env['res.partner.bank'].sudo().create({
|
|
'partner_id': partner.id,
|
|
'bank_id': bank.id,
|
|
'acc_number': acc_number,
|
|
})
|
|
|
|
return {
|
|
'success': True,
|
|
'bank_account_id': partner_bank.id
|
|
}
|