From a6acc141629f358f885f62e395986131c1ec1909 Mon Sep 17 00:00:00 2001 From: it-fixcomart Date: Fri, 27 Dec 2024 11:44:21 +0700 Subject: update merchant --- indoteknik_api/controllers/api_v1/lead.py | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'indoteknik_api/controllers/api_v1') diff --git a/indoteknik_api/controllers/api_v1/lead.py b/indoteknik_api/controllers/api_v1/lead.py index d5cc7c5c..6ca9d419 100644 --- a/indoteknik_api/controllers/api_v1/lead.py +++ b/indoteknik_api/controllers/api_v1/lead.py @@ -26,4 +26,29 @@ class Lead(controller.Controller): lead = request.env['crm.lead'].create(params['value']) + return self.response(True) + + @http.route('/api/v1/merchant', auth='public', methods=['POST', 'OPTIONS'], csrf=False) + @controller.Controller.must_authorized() + def create_merchant(self, **kw): + params = self.get_request_params(kw, { + "name": ["required"], + "contact_name": [], + "email_from": [], + "phone": [], + "file_npwp": [], + "file_nib": [], + "file_tdp": [], + "file_siup": [], + "file_quotation": [], + "description": [] + }) + + if not params['valid']: + return self.response(code=400, description=params) + + # params['value']['user_id'] = 20 + + # lead = request.env['crm.lead'].create(params['value']) + return self.response(True) \ No newline at end of file -- cgit v1.2.3 From efe91d5ed3170b1d8e2dc217a05261dfbd9687d5 Mon Sep 17 00:00:00 2001 From: it-fixcomart Date: Fri, 27 Dec 2024 14:58:24 +0700 Subject: update mechant --- indoteknik_api/controllers/api_v1/lead.py | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) (limited to 'indoteknik_api/controllers/api_v1') diff --git a/indoteknik_api/controllers/api_v1/lead.py b/indoteknik_api/controllers/api_v1/lead.py index 6ca9d419..f0cfa1be 100644 --- a/indoteknik_api/controllers/api_v1/lead.py +++ b/indoteknik_api/controllers/api_v1/lead.py @@ -33,14 +33,26 @@ class Lead(controller.Controller): def create_merchant(self, **kw): params = self.get_request_params(kw, { "name": ["required"], - "contact_name": [], - "email_from": [], + "address": [], + "state": [], + "city": [], + "district": [], + "subDistrict": [], + "zip": [], + "bank_name": [], + "rekening_name": [], + "account_number": [], + "email_company": [], + "email_sales": [], + "email_finnance": [], "phone": [], + "mobile": [], + "file_dokumenKtpDirut ": [], + "file_kartuNama": [], "file_npwp": [], - "file_nib": [], - "file_tdp": [], - "file_siup": [], - "file_quotation": [], + "file_sppkp": [], + "file_suratPernyataan": [], + "file_fotoKantor": [], "description": [] }) -- cgit v1.2.3 From 7d5204a92422848f617af2d0e50d7069bf9f7824 Mon Sep 17 00:00:00 2001 From: it-fixcomart Date: Mon, 30 Dec 2024 14:09:50 +0700 Subject: add form merchant --- indoteknik_api/controllers/api_v1/lead.py | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) (limited to 'indoteknik_api/controllers/api_v1') diff --git a/indoteknik_api/controllers/api_v1/lead.py b/indoteknik_api/controllers/api_v1/lead.py index f0cfa1be..7a964b21 100644 --- a/indoteknik_api/controllers/api_v1/lead.py +++ b/indoteknik_api/controllers/api_v1/lead.py @@ -32,7 +32,7 @@ class Lead(controller.Controller): @controller.Controller.must_authorized() def create_merchant(self, **kw): params = self.get_request_params(kw, { - "name": ["required"], + "name_merchant": ["required"], "address": [], "state": [], "city": [], @@ -44,7 +44,7 @@ class Lead(controller.Controller): "account_number": [], "email_company": [], "email_sales": [], - "email_finnance": [], + "email_finance": [], "phone": [], "mobile": [], "file_dokumenKtpDirut ": [], @@ -53,14 +53,24 @@ class Lead(controller.Controller): "file_sppkp": [], "file_suratPernyataan": [], "file_fotoKantor": [], - "description": [] + "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) if not params['valid']: return self.response(code=400, description=params) - # params['value']['user_id'] = 20 + main_partner = partner.get_main_parent() - # lead = request.env['crm.lead'].create(params['value']) + 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) \ No newline at end of file + return self.response(True) -- cgit v1.2.3 From b2b458d4a642271b98f23403c74eb7aad06cd71d Mon Sep 17 00:00:00 2001 From: it-fixcomart Date: Thu, 2 Jan 2025 08:52:13 +0700 Subject: update merchant --- indoteknik_api/controllers/api_v1/lead.py | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'indoteknik_api/controllers/api_v1') diff --git a/indoteknik_api/controllers/api_v1/lead.py b/indoteknik_api/controllers/api_v1/lead.py index 7a964b21..61a37dc6 100644 --- a/indoteknik_api/controllers/api_v1/lead.py +++ b/indoteknik_api/controllers/api_v1/lead.py @@ -33,6 +33,7 @@ class Lead(controller.Controller): def create_merchant(self, **kw): params = self.get_request_params(kw, { "name_merchant": ["required"], + "pic_merchant":[], "address": [], "state": [], "city": [], @@ -47,12 +48,15 @@ class Lead(controller.Controller): "email_finance": [], "phone": [], "mobile": [], + "harga_tayang": [], "file_dokumenKtpDirut ": [], "file_kartuNama": [], "file_npwp": [], "file_sppkp": [], "file_suratPernyataan": [], "file_fotoKantor": [], + "file_dataProduk": [], + "file_pricelist": [], "description": [], }) filtered_params = {key: value for key, value in params['value'].items() if value} -- cgit v1.2.3 From ef3ed689e8c8dc1de79e3744055fa12a97aefd35 Mon Sep 17 00:00:00 2001 From: it-fixcomart Date: Mon, 13 Jan 2025 17:03:43 +0700 Subject: update merchant --- indoteknik_api/controllers/api_v1/lead.py | 41 ++++++++++++++++++++----------- 1 file changed, 26 insertions(+), 15 deletions(-) (limited to 'indoteknik_api/controllers/api_v1') 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) -- cgit v1.2.3 From 932fd84a5eb71d62f2a138f3ddb9ab9c0ccb0385 Mon Sep 17 00:00:00 2001 From: it-fixcomart Date: Wed, 15 Jan 2025 13:20:21 +0700 Subject: update merchant --- indoteknik_api/controllers/api_v1/lead.py | 76 +++++++++++++++++++++++++++++-- 1 file changed, 72 insertions(+), 4 deletions(-) (limited to 'indoteknik_api/controllers/api_v1') diff --git a/indoteknik_api/controllers/api_v1/lead.py b/indoteknik_api/controllers/api_v1/lead.py index 5749f5e5..e8153fbf 100644 --- a/indoteknik_api/controllers/api_v1/lead.py +++ b/indoteknik_api/controllers/api_v1/lead.py @@ -28,10 +28,10 @@ class Lead(controller.Controller): return self.response(True) - @http.route('/api/v1/merchant', auth='public', methods=['POST', 'OPTIONS'], csrf=False) + @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 + merchant_request = True if kw.get('merchantRequest') == 'true' else False params = self.get_request_params(kw, { # informasi perusahaan "name_merchant": [], @@ -54,10 +54,28 @@ class Lead(controller.Controller): "mobile": [], "bisnis_type": [], "category_perusahaan": [], + "website": [], "description": [], # informasi vendor "harga_tayang": [], + "merk_dagang": [], + "tempo_duration": [], + "kredit_limit": [], + "is_pengajuan_tempo": [], + "waktu_pengiriman": [], + "terhitung_sejak": [], + + # Syarat Perdagangan + "is_kembali_barang": [], + "sertifikat_produk": [], + "custom_sertifikat_produk": [], + "is_order_quantity": [], + "explain_garansi": [], + + + + "file_dokumenKtpDirut ": [], "file_kartuNama": [], "file_npwp": [], @@ -67,10 +85,42 @@ class Lead(controller.Controller): "file_dataProduk": [], "file_pricelist": [], }) - partner_id = int(kw.get('partner_id')) + partner_id = int(kw.get('id')) partner = request.env['res.partner'].search([('id', '=', partner_id)], limit=1) main_partner = partner.get_main_parent() + if params['value']['is_pengajuan_tempo']: + if params['value']['is_pengajuan_tempo'] == 'ada': + params['value']['is_pengajuan_tempo'] = True + else: + params['value']['is_pengajuan_tempo'] = False + + if params['value']['is_kembali_barang']: + if params['value']['is_kembali_barang'] == 'ya': + params['value']['is_kembali_barang'] = kw.get('textReturn') + else: + params['value']['is_kembali_barang'] = 'Tidak dapat return' + + if kw.get('tenggat_waktu'): + if kw.get('tenggat_waktu') != 'custom': + params['value']['tenggat_waktu'] = kw.get('tenggat_waktu') + ' hari sejak data dikirimkan' + else: + params['value']['tenggat_waktu'] = kw.get('customTenggatWaktu') + + if kw.get('tempo_garansi'): + if kw.get('tempo_garansi') == '1': + params['value']['tempo_garansi'] = '6 Bulan Garansi' + elif kw.get('tempoTaransi') == '2': + params['value']['tempo_garansi'] = '1 Tahun Garansi' + else: + params['value']['tempo_garansi'] = '2 Tahun Garansi' + + if params['value']['is_order_quantity']: + if params['value']['is_order_quantity'] == 'ya': + params['value']['is_order_quantity'] = kw.get('minimumPembelian') + else: + params['value']['is_order_quantity'] = 'Tidak ada minimum order quantity' + 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: @@ -78,7 +128,11 @@ class Lead(controller.Controller): else: lead = request.env['user.form.merchant'].create(filtered_params) lead.partner_id = main_partner.id - + category_ids = '' + category_produk_ids = kw.get('categoryProduk', False) + if category_produk_ids: + category_ids = list(map(int, category_produk_ids.split(','))) + form_merchant.category_produk_ids = [(6, 0, category_ids)] if not params['valid']: return self.response(code=400, description=params) if merchant_request: @@ -89,3 +143,17 @@ class Lead(controller.Controller): }) return self.response(True) + + @http.route('/api/v1/detail-merchant/', auth='public', methods=['GET', 'OPTIONS']) + @controller.Controller.must_authorized() + def get_partner_detail_merchant(self, **kw): + params = self.get_request_params(kw, { + 'id': ['required', 'number'] + }) + partner = request.env['res.partner'].search([('id', '=', params['value']['id'])], limit=1) + main_partner = partner.get_main_parent() + form_merchant = request.env['user.form.merchant'].search([('partner_id', '=', main_partner.id)],limit=1) + if not form_merchant: + return self.response(code=404, description='form merchant not found') + form_merchant = request.env['res.partner'].api_single_response(form_merchant) + return self.response(form_merchant) -- cgit v1.2.3 From c7f6d959e0e7a2e8adc45cff515f2b5666f3e732 Mon Sep 17 00:00:00 2001 From: it-fixcomart Date: Mon, 20 Jan 2025 11:56:25 +0700 Subject: update merchant --- indoteknik_api/controllers/api_v1/lead.py | 89 +++++++++++++++++++++++-------- 1 file changed, 67 insertions(+), 22 deletions(-) (limited to 'indoteknik_api/controllers/api_v1') diff --git a/indoteknik_api/controllers/api_v1/lead.py b/indoteknik_api/controllers/api_v1/lead.py index e8153fbf..67856dad 100644 --- a/indoteknik_api/controllers/api_v1/lead.py +++ b/indoteknik_api/controllers/api_v1/lead.py @@ -1,6 +1,9 @@ from .. import controller from odoo import http from odoo.http import request +import base64 +import mimetypes +import json class Lead(controller.Controller): @http.route('/api/v1/lead', auth='public', methods=['POST', 'OPTIONS'], csrf=False) @@ -70,20 +73,20 @@ class Lead(controller.Controller): "is_kembali_barang": [], "sertifikat_produk": [], "custom_sertifikat_produk": [], + "tempo_garansi": [], "is_order_quantity": [], "explain_garansi": [], - - - - "file_dokumenKtpDirut ": [], - "file_kartuNama": [], - "file_npwp": [], - "file_sppkp": [], - "file_suratPernyataan": [], - "file_fotoKantor": [], - "file_dataProduk": [], - "file_pricelist": [], + # # dokumen + # + # "file_npwp": [], + # "file_sppkp": [], + # "file_dokumenKtpDirut ": [], + # "file_kartuNama": [], + # "file_suratPernyataan": [], + # "file_fotoKantor": [], + # "file_dataProduk": [], + # "file_pricelist": [], }) partner_id = int(kw.get('id')) partner = request.env['res.partner'].search([('id', '=', partner_id)], limit=1) @@ -105,22 +108,21 @@ class Lead(controller.Controller): if kw.get('tenggat_waktu') != 'custom': params['value']['tenggat_waktu'] = kw.get('tenggat_waktu') + ' hari sejak data dikirimkan' else: - params['value']['tenggat_waktu'] = kw.get('customTenggatWaktu') - - if kw.get('tempo_garansi'): - if kw.get('tempo_garansi') == '1': - params['value']['tempo_garansi'] = '6 Bulan Garansi' - elif kw.get('tempoTaransi') == '2': - params['value']['tempo_garansi'] = '1 Tahun Garansi' - else: - params['value']['tempo_garansi'] = '2 Tahun Garansi' + params['value']['tenggat_waktu'] = kw.get('custom_tenggat_waktu') if params['value']['is_order_quantity']: if params['value']['is_order_quantity'] == 'ya': - params['value']['is_order_quantity'] = kw.get('minimumPembelian') + params['value']['is_order_quantity'] = kw.get('minimum_pembelian') else: params['value']['is_order_quantity'] = 'Tidak ada minimum order quantity' + dokumen_kirim = [ + 'TKDN', + 'SNI', + 'Surat Terima Barang (STB)', + 'Lembar Penerimaan Barang (LPB)' + ] + 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: @@ -132,7 +134,50 @@ class Lead(controller.Controller): category_produk_ids = kw.get('categoryProduk', False) if category_produk_ids: category_ids = list(map(int, category_produk_ids.split(','))) - form_merchant.category_produk_ids = [(6, 0, category_ids)] + valid_category_ids = request.env['product.public.category'].search([('id', 'in', category_ids)]).ids + form_merchant.category_produk_ids = [(6, 0, valid_category_ids)] + + file_dokumen = kw.get('file_dokumen', False) + if file_dokumen: + form_dokumen = json.loads(file_dokumen) + + for dokumen in form_dokumen: + if form_dokumen[dokumen]['details']: + mimetype, _ = mimetypes.guess_type(form_dokumen[dokumen]['details']['name']) + mimetype = mimetype or 'application/octet-stream' + data = base64.b64decode(form_dokumen[dokumen]['details']['format']) + sppkp_attachment = request.env['ir.attachment'].create({ + 'name': form_dokumen[dokumen]['details']['name'], + 'type': 'binary', + 'datas': base64.b64encode(data), + 'res_model': 'user.form.merchant', + 'res_id': form_merchant.id, + 'mimetype': mimetype + }) + + if dokumen == 'file_npwp': + form_merchant.file_npwp = sppkp_attachment.id + + elif dokumen == 'file_sppkp': + form_merchant.file_sppkp = sppkp_attachment.id + + elif dokumen == 'file_dokumenKtpDirut': + form_merchant.file_dokumenKtpDirut = sppkp_attachment.id + + elif dokumen == 'file_kartuNama': + form_merchant.file_kartuNama = sppkp_attachment.id + + elif dokumen == 'file_suratPernyataan': + form_merchant.file_suratPernyataan = sppkp_attachment.id + + elif dokumen == 'file_fotoKantor': + form_merchant.file_fotoKantor = sppkp_attachment.id + + elif dokumen == 'file_dataProduk': + form_merchant.file_dataProduk = sppkp_attachment.id + + elif dokumen == 'file_pricelist': + form_merchant.file_pricelist = sppkp_attachment.id if not params['valid']: return self.response(code=400, description=params) if merchant_request: -- cgit v1.2.3 From ff20b62d6932c6be4ffb56f63f3c05be3aa72c06 Mon Sep 17 00:00:00 2001 From: it-fixcomart Date: Tue, 21 Jan 2025 13:43:29 +0700 Subject: update merchant --- indoteknik_api/controllers/api_v1/lead.py | 50 ++++++++++++++++++++----------- 1 file changed, 33 insertions(+), 17 deletions(-) (limited to 'indoteknik_api/controllers/api_v1') diff --git a/indoteknik_api/controllers/api_v1/lead.py b/indoteknik_api/controllers/api_v1/lead.py index 67856dad..7ff8a8e9 100644 --- a/indoteknik_api/controllers/api_v1/lead.py +++ b/indoteknik_api/controllers/api_v1/lead.py @@ -34,7 +34,7 @@ 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('merchantRequest') == 'true' else False + merchant_request = True if kw.get('merchant_request') == 'true' else False params = self.get_request_params(kw, { # informasi perusahaan "name_merchant": [], @@ -42,10 +42,10 @@ class Lead(controller.Controller): "pic_merchant": [], "pic_position": [], "address": [], - "state": [], - "city": [], - "district": [], - "subDistrict": [], + "state": ['number'], + "city": ['number'], + "district": ['number'], + "subDistrict": ['number'], "zip": [], "bank_name": [], "rekening_name": [], @@ -71,11 +71,10 @@ class Lead(controller.Controller): # Syarat Perdagangan "is_kembali_barang": [], - "sertifikat_produk": [], - "custom_sertifikat_produk": [], "tempo_garansi": [], "is_order_quantity": [], "explain_garansi": [], + "custom_sertifikat_produk": [], # # dokumen # @@ -102,7 +101,7 @@ class Lead(controller.Controller): if params['value']['is_kembali_barang'] == 'ya': params['value']['is_kembali_barang'] = kw.get('textReturn') else: - params['value']['is_kembali_barang'] = 'Tidak dapat return' + params['value']['is_kembali_barang'] = 'Tidak dapat direturn' if kw.get('tenggat_waktu'): if kw.get('tenggat_waktu') != 'custom': @@ -116,20 +115,37 @@ class Lead(controller.Controller): else: params['value']['is_order_quantity'] = 'Tidak ada minimum order quantity' - dokumen_kirim = [ - 'TKDN', - 'SNI', - 'Surat Terima Barang (STB)', - 'Lembar Penerimaan Barang (LPB)' - ] - - filtered_params = {key: value for key, value in params['value'].items() if value} + filtered_params = {key: value for key, value in params['value'].items() if kw.get(key) is not None} form_merchant = request.env['user.form.merchant'].search([('partner_id', '=', main_partner.id)], limit=1) + lead = [] if form_merchant: form_merchant.write(filtered_params) else: lead = request.env['user.form.merchant'].create(filtered_params) lead.partner_id = main_partner.id + + sertifikat = [ + 'TKDN', + 'SNI', + 'K3L', + ] + sertifikat_ids = kw.get('sertifikat_produk') + sertifikat_input = kw.get('custom_sertifikat_produk') + dokumen_sertifikat = [] + + if sertifikat_ids: + dokumen_kirim_ids = list(map(int, sertifikat_ids.split(','))) + dokumen_sertifikat = [sertifikat[i] for i in dokumen_kirim_ids if 0 <= i < len(sertifikat)] + if sertifikat_input != 'false' and sertifikat_input: + input_items = [item.strip() for item in sertifikat_input.split(',')] + dokumen_sertifikat.extend(item for item in input_items if item and item not in dokumen_sertifikat) + form_merchant.sertifikat_produk = sertifikat_input + else: + # Jika sertifikat_input kosong, hapus elemen custom (yang tidak ada di daftar `sertifikat`) + dokumen_sertifikat = [item for item in dokumen_sertifikat if item in sertifikat] + if dokumen_sertifikat: + form_merchant.sertifikat_produk = ', '.join(dokumen_sertifikat) + category_ids = '' category_produk_ids = kw.get('categoryProduk', False) if category_produk_ids: @@ -183,7 +199,7 @@ class Lead(controller.Controller): if merchant_request: user_merchant_request = request.env['user.merchant.request'].create({ 'user_id': partner.id, - 'merchant_id': lead.id, + 'merchant_id': form_merchant.id, 'user_company_id': main_partner.id }) -- cgit v1.2.3 From a571531bd8626f9bee25e89c62bbd9268ed30597 Mon Sep 17 00:00:00 2001 From: it-fixcomart Date: Wed, 22 Jan 2025 16:32:48 +0700 Subject: add checj progres merchant --- indoteknik_api/controllers/api_v1/lead.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'indoteknik_api/controllers/api_v1') diff --git a/indoteknik_api/controllers/api_v1/lead.py b/indoteknik_api/controllers/api_v1/lead.py index f2793838..e81a2781 100644 --- a/indoteknik_api/controllers/api_v1/lead.py +++ b/indoteknik_api/controllers/api_v1/lead.py @@ -218,3 +218,17 @@ class Lead(controller.Controller): return self.response(code=404, description='form merchant not found') form_merchant = request.env['res.partner'].api_single_response_merchant(form_merchant) return self.response(form_merchant) + + @http.route('/api/v1/check-merchant/', auth='public', methods=['GET', 'OPTIONS']) + @controller.Controller.must_authorized() + def get_partner_form_merchant(self, **kw): + params = self.get_request_params(kw, { + 'id': ['required', 'number'] + }) + partner = request.env['res.partner'].search([('id', '=', params['value']['id'])], limit=1) + main_partner = partner.get_main_parent() + form_merchant = request.env['user.merchant.request'].search([('user_company_id', '=', main_partner.id)], limit=1) + if form_merchant: + return self.response(form_merchant.state_merchant) + else: + return self.response(code=404, description='form merchant not found') \ No newline at end of file -- cgit v1.2.3 From 5ed0f18e6cdac093a8450de6d836ff179f9e1cf9 Mon Sep 17 00:00:00 2001 From: it-fixcomart Date: Fri, 16 May 2025 08:45:39 +0700 Subject: no message --- indoteknik_api/controllers/api_v1/lead.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'indoteknik_api/controllers/api_v1') diff --git a/indoteknik_api/controllers/api_v1/lead.py b/indoteknik_api/controllers/api_v1/lead.py index e81a2781..389f36b8 100644 --- a/indoteknik_api/controllers/api_v1/lead.py +++ b/indoteknik_api/controllers/api_v1/lead.py @@ -77,13 +77,13 @@ class Lead(controller.Controller): "custom_sertifikat_produk": [], # # dokumen - # - # "file_npwp": [], - # "file_sppkp": [], - # "file_dokumenKtpDirut ": [], - # "file_kartuNama": [], - # "file_suratPernyataan": [], - # "file_fotoKantor": [], + + "file_npwp": [], + "file_sppkp": [], + "file_dokumenKtpDirut ": [], + "file_kartuNama": [], + "file_suratPernyataan": [], + "file_fotoKantor": [], # "file_dataProduk": [], # "file_pricelist": [], }) -- cgit v1.2.3 From 558130bbf48c33ddfa6080450c80bc8801a570f0 Mon Sep 17 00:00:00 2001 From: it-fixcomart Date: Thu, 22 May 2025 15:34:03 +0700 Subject: form-merchant & quotation tampilan --- indoteknik_api/controllers/api_v1/sale_order.py | 24 ++++++++++++++++++++++++ indoteknik_api/controllers/api_v1/user.py | 4 +++- 2 files changed, 27 insertions(+), 1 deletion(-) (limited to 'indoteknik_api/controllers/api_v1') diff --git a/indoteknik_api/controllers/api_v1/sale_order.py b/indoteknik_api/controllers/api_v1/sale_order.py index 98b13cad..d5208fb1 100644 --- a/indoteknik_api/controllers/api_v1/sale_order.py +++ b/indoteknik_api/controllers/api_v1/sale_order.py @@ -54,6 +54,20 @@ class SaleOrder(controller.Controller): # sales = request.env['sale.order'].search_read([('name', '=', sale_number)], fields=['id', 'name', 'amount_total', 'state']) sales = request.env['sale.order'].search(query, limit=1) data = [] + INDONESIAN_MONTHS = { + 1: 'Januari', + 2: 'Februari', + 3: 'Maret', + 4: 'April', + 5: 'Mei', + 6: 'Juni', + 7: 'Juli', + 8: 'Agustus', + 9: 'September', + 10: 'Oktober', + 11: 'November', + 12: 'Desember', + } for sale in sales: product_name = '' product_not_in_id = 0 @@ -65,6 +79,7 @@ class SaleOrder(controller.Controller): 'id': sale.id, 'name': sale.name, 'date_order': self.time_to_str(sale.date_order, '%d/%m/%Y %H:%M:%S'), + 'expected_ready_to_ship': f"{sale.expected_ready_to_ship.day} {INDONESIAN_MONTHS[sale.expected_ready_to_ship.month]} {sale.expected_ready_to_ship.year}", 'state': sale.state, 'amount_untaxed': sale.amount_untaxed, 'amount_tax': sale.amount_tax, @@ -142,6 +157,15 @@ class SaleOrder(controller.Controller): sale_order = request.env['sale.order'].search(domain) if sale_order: data = request.env['sale.order'].api_v1_single_response(sale_order, context='with_detail') + if sale_order.expected_ready_to_ship: + bulan_id = [ + "Januari", "Februari", "Maret", "April", "Mei", "Juni", + "Juli", "Agustus", "September", "Oktober", "November", "Desember" + ] + tanggal = sale_order.expected_ready_to_ship.day + bulan = bulan_id[sale_order.expected_ready_to_ship.month - 1] + tahun = sale_order.expected_ready_to_ship.year + data['expected_ready_to_ship'] = f"{tanggal} {bulan} {tahun}" return self.response(data) diff --git a/indoteknik_api/controllers/api_v1/user.py b/indoteknik_api/controllers/api_v1/user.py index b5b7e055..967bbcc9 100644 --- a/indoteknik_api/controllers/api_v1/user.py +++ b/indoteknik_api/controllers/api_v1/user.py @@ -60,7 +60,9 @@ class User(controller.Controller): 'user': self.response_with_token(user), } return self.response(data) - except: + except Exception as e: + respon = str(e) + print(respon) return self.response({ 'is_auth': False, 'reason': 'NOT_FOUND' -- cgit v1.2.3