diff options
| author | it-fixcomart <it@fixcomart.co.id> | 2025-01-13 17:03:43 +0700 |
|---|---|---|
| committer | it-fixcomart <it@fixcomart.co.id> | 2025-01-13 17:03:43 +0700 |
| commit | ef3ed689e8c8dc1de79e3744055fa12a97aefd35 (patch) | |
| tree | 3fc463e608b5df435486ebca16e3636f623918d7 /indoteknik_api | |
| parent | 7b3a5a327bcae3b70d2e0bead9921f069c574647 (diff) | |
<iman> update merchant
Diffstat (limited to 'indoteknik_api')
| -rw-r--r-- | indoteknik_api/controllers/api_v1/lead.py | 41 |
1 files changed, 26 insertions, 15 deletions
diff --git a/indoteknik_api/controllers/api_v1/lead.py b/indoteknik_api/controllers/api_v1/lead.py index 61a37dc6..5749f5e5 100644 --- a/indoteknik_api/controllers/api_v1/lead.py +++ b/indoteknik_api/controllers/api_v1/lead.py @@ -31,9 +31,13 @@ class Lead(controller.Controller): @http.route('/api/v1/merchant', auth='public', methods=['POST', 'OPTIONS'], csrf=False) @controller.Controller.must_authorized() def create_merchant(self, **kw): + merchant_request = True if kw.get('merchant_request') == 'true' else False params = self.get_request_params(kw, { - "name_merchant": ["required"], - "pic_merchant":[], + # informasi perusahaan + "name_merchant": [], + "pejabat_name": [], + "pic_merchant": [], + "pic_position": [], "address": [], "state": [], "city": [], @@ -48,6 +52,11 @@ class Lead(controller.Controller): "email_finance": [], "phone": [], "mobile": [], + "bisnis_type": [], + "category_perusahaan": [], + "description": [], + + # informasi vendor "harga_tayang": [], "file_dokumenKtpDirut ": [], "file_kartuNama": [], @@ -57,24 +66,26 @@ class Lead(controller.Controller): "file_fotoKantor": [], "file_dataProduk": [], "file_pricelist": [], - "description": [], }) - filtered_params = {key: value for key, value in params['value'].items() if value} - lead = request.env['user.form.merchant'].create(filtered_params) - partner_id = int(kw.get('partner_id')) - partner = request.env['res.partner'].search([('id', '=', partner_id)], limit=1) + main_partner = partner.get_main_parent() + + filtered_params = {key: value for key, value in params['value'].items() if value} + form_merchant = request.env['user.form.merchant'].search([('partner_id', '=', main_partner.id)], limit=1) + if form_merchant: + form_merchant.write(filtered_params) + else: + lead = request.env['user.form.merchant'].create(filtered_params) + lead.partner_id = main_partner.id if not params['valid']: return self.response(code=400, description=params) - - main_partner = partner.get_main_parent() - - user_merchant_request = request.env['user.merchant.request'].create({ - 'user_id': partner.id, - 'merchant_id': lead.id, - 'user_company_id': main_partner.id - }) + if merchant_request: + user_merchant_request = request.env['user.merchant.request'].create({ + 'user_id': partner.id, + 'merchant_id': lead.id, + 'user_company_id': main_partner.id + }) return self.response(True) |
