diff options
| author | it-fixcomart <it@fixcomart.co.id> | 2024-12-13 14:14:49 +0700 |
|---|---|---|
| committer | it-fixcomart <it@fixcomart.co.id> | 2024-12-13 14:14:49 +0700 |
| commit | 61427e249985af385de6619e8b362d249a68c688 (patch) | |
| tree | e8c596f8fac5b40623f26260b44dfc0425428274 /indoteknik_api | |
| parent | 0391f0df5d30cd81b4281c3d5082bf96671bd97b (diff) | |
<iman> update pengajuan tempo
Diffstat (limited to 'indoteknik_api')
| -rw-r--r-- | indoteknik_api/controllers/api_v1/partner.py | 57 | ||||
| -rw-r--r-- | indoteknik_api/models/res_partner.py | 41 |
2 files changed, 80 insertions, 18 deletions
diff --git a/indoteknik_api/controllers/api_v1/partner.py b/indoteknik_api/controllers/api_v1/partner.py index ebf5de08..c0088d38 100644 --- a/indoteknik_api/controllers/api_v1/partner.py +++ b/indoteknik_api/controllers/api_v1/partner.py @@ -138,6 +138,8 @@ class Partner(controller.Controller): 'npwp': [], 'alamat_lengkap_text': [], 'street': [], + 'email': [], + 'mobile': [] }) # Mengambil id_user dari request @@ -297,6 +299,8 @@ class Partner(controller.Controller): 'street': ['alias:street_tempo'], 'state': ['alias:state_id_tempo'], 'city': ['alias:city_id_tempo'], + 'district': ['alias:district_id_tempo'], + 'subDistrict': ['alias:subDistrict_id_tempo'], 'zip': ['alias:zip_tempo'], 'mobile': ['alias:mobile_tempo'], 'bankName': ['alias:bank_name_tempo'], @@ -304,6 +308,8 @@ class Partner(controller.Controller): 'accountNumber': ['alias:account_number_tempo'], 'website': ['alias:website_tempo'], 'estimasi': ['alias:estimasi_tempo'], + 'portal': ['alias:portal'], + 'bersedia': ['alias:bersedia'], 'tempoDuration': ['alias:tempo_duration'], 'tempoLimit': ['alias:tempo_limit'], @@ -327,27 +333,38 @@ class Partner(controller.Controller): 'streetPengiriman': ['alias:street_pengiriman'], 'statePengiriman': ['alias:state_id_pengiriman'], 'cityPengiriman': ['alias:city_id_pengiriman'], + 'districtPengiriman': ['alias:district_id_pengiriman'], + 'subDistrictPengiriman': ['alias:subDistrict_id_pengiriman'], 'zipPengiriman': ['alias:zip_pengiriman'], 'invoicePicTittle': ['alias:invoice_pic_tittle'], 'invoicePic': ['alias:invoice_pic'], 'streetInvoice': ['alias:street_invoice'], 'stateInvoice': ['alias:state_id_invoice'], 'cityInvoice': ['alias:city_id_invoice'], + 'districtInvoice': ['alias:district_id_invoice'], + 'subDistrictInvoice': ['alias:subDistrict_id_invoice'], + 'zipInvoice': ['alias:zip_invoice'], + 'isSameAddrees':['alias:is_same_address'], + 'isSameAddreesStreet':['alias:is_same_address_street'], }) - # Konversi nilai 'true' ke boolean True - is_same_address = kw.get('isSameAddrees', 'false').lower() == 'true' - is_same_address_street = kw.get('isSameAddreesStreet', 'false').lower() == 'true' - - # Tambahkan nilai yang dikonversi ke params - if kw.get('isSameAddrees') != '': - params['value']['is_same_address'] = is_same_address - if kw.get('isSameAddreesStreet') != '': - params['value']['is_same_address_street'] = is_same_address_street + # # Konversi nilai 'true' ke boolean True + # is_same_address = kw.get('isSameAddrees', 'false').lower() == 'true' + # is_same_address_street = kw.get('isSameAddreesStreet', 'false').lower() == 'true' + # + # # Tambahkan nilai yang dikonversi ke params + # if 'isSameAddress' in kw: + # params['value']['is_same_address'] = is_same_address + # if 'is_same_address_street' in kw: + # params['value']['is_same_address_street'] = is_same_address_street if not params['valid']: return self.response(code=400, description=params) - + if params['value']['portal']: + if params['value']['portal'] == 'ada': + params['value']['portal'] = True + else: + params['value']['portal'] = False # Filter data baru yang dikirim (non-kosong, boolean False tetap masuk) new_data = {key: value for key, value in params['value'].items() if value != ''} @@ -413,13 +430,17 @@ class Partner(controller.Controller): ] dokumen_kirim_barang_ids = kw.get('dokumenPengiriman') + dokumen_kirim_input = kw.get('dokumenKirimInput', '') dokumen_kirim_barang_input = kw.get('dokumenPengirimanInput', '') dokumen_kirim_barang = [] if dokumen_kirim_barang_ids: dokumen_kirim_ids = list(map(int, dokumen_kirim_barang_ids.split(','))) dokumen_kirim_barang = [dokumen_kirim[i] for i in dokumen_kirim_ids if 0 <= i < len(dokumen_kirim)] - + if dokumen_kirim_input: + input_items = [item.strip() for item in dokumen_kirim_input.split(',')] + dokumen_kirim_barang.extend(item for item in input_items if item and item not in dokumen_kirim_barang) + pengajuan_tempo.dokumen_kirim_input = dokumen_kirim_input if dokumen_kirim_barang: pengajuan_tempo.dokumen_pengiriman = ', '.join(dokumen_kirim_barang) if dokumen_kirim_barang_input: @@ -468,6 +489,18 @@ class Partner(controller.Controller): if dokumen['documentName'] == 'dokumenNib': pengajuan_tempo.dokumen_nib = [(6, 0, [sppkp_attachment.id])] + elif dokumen['documentName'] == 'dokumenSiup': + pengajuan_tempo.dokumen_siup = [(6, 0, [sppkp_attachment.id])] + + elif dokumen['documentName'] == 'dokumenTdp': + pengajuan_tempo.dokumen_tdp = [(6, 0, [sppkp_attachment.id])] + + elif dokumen['documentName'] == 'dokumenSkdp': + pengajuan_tempo.dokumen_skdp = [(6, 0, [sppkp_attachment.id])] + + elif dokumen['documentName'] == 'dokumenSkt': + pengajuan_tempo.dokumen_skt = [(6, 0, [sppkp_attachment.id])] + elif dokumen['documentName'] == 'dokumenNpwp': pengajuan_tempo.dokumen_npwp = [(6, 0, [sppkp_attachment.id])] @@ -503,7 +536,7 @@ class Partner(controller.Controller): except json.JSONDecodeError: return http.Response(status=400, json_body={'error': 'Invalid JSON format for formDokumen'}) - + if tempo_request: # pengajuan_tempo.user_id = id template = pengajuan_tempo.env.ref('indoteknik_custom.mail_template_res_user_company_request_tempo_review') template.send_mail(pengajuan_tempo.id, force_send=True) diff --git a/indoteknik_api/models/res_partner.py b/indoteknik_api/models/res_partner.py index f73101db..258d8143 100644 --- a/indoteknik_api/models/res_partner.py +++ b/indoteknik_api/models/res_partner.py @@ -28,6 +28,8 @@ class ResPartner(models.Model): 'street' : pengajuan_tempo.street_tempo, 'state' : pengajuan_tempo.state_id_tempo.id, 'city' : pengajuan_tempo.city_id_tempo.id, + 'district' : pengajuan_tempo.district_id_tempo.id, + 'subDistrict' : pengajuan_tempo.subDistrict_id_tempo.id, 'zip' : pengajuan_tempo.zip_tempo, 'mobile' : pengajuan_tempo.mobile_tempo, 'bank_name' : pengajuan_tempo.bank_name_tempo, @@ -35,6 +37,8 @@ class ResPartner(models.Model): 'account_number' : pengajuan_tempo.account_number_tempo, 'website' : pengajuan_tempo.website_tempo if pengajuan_tempo.website_tempo else '', 'estimasi' : pengajuan_tempo.estimasi_tempo, + 'bersedia' : pengajuan_tempo.bersedia, + 'portal' : 'ada' if pengajuan_tempo.portal else 'tidak', 'tempo_duration' : pengajuan_tempo.tempo_duration.id, 'tempo_limit' : pengajuan_tempo.tempo_limit, 'category_produk': ','.join([str(cat.id) for cat in pengajuan_tempo.category_produk_ids]) if pengajuan_tempo.category_produk_ids else '', @@ -59,16 +63,22 @@ class ResPartner(models.Model): 'street_pengiriman' : pengajuan_tempo.street_pengiriman if pengajuan_tempo.street_pengiriman else '', 'state_pengiriman' : pengajuan_tempo.state_id_pengiriman.id if pengajuan_tempo.state_id_pengiriman else '', 'city_pengiriman' : pengajuan_tempo.city_id_pengiriman.id if pengajuan_tempo.city_id_pengiriman else '', + 'district_pengiriman': pengajuan_tempo.district_id_pengiriman.id if pengajuan_tempo.district_id_pengiriman else '', + 'subDistrict_pengiriman': pengajuan_tempo.subDistrict_id_pengiriman.id if pengajuan_tempo.subDistrict_id_pengiriman else '', 'zip_pengiriman' : pengajuan_tempo.zip_pengiriman if pengajuan_tempo.zip_pengiriman else '', 'invoice_pic_tittle' : pengajuan_tempo.invoice_pic_tittle if pengajuan_tempo.invoice_pic_tittle else '', 'invoice_pic' : pengajuan_tempo.invoice_pic if pengajuan_tempo.invoice_pic else '', 'street_invoice' : pengajuan_tempo.street_invoice if pengajuan_tempo.street_invoice else '', 'state_invoice' : pengajuan_tempo.state_id_invoice.id if pengajuan_tempo.state_id_invoice else '', 'city_invoice' : pengajuan_tempo.city_id_invoice.id if pengajuan_tempo.city_id_invoice else '', + 'district_invoice': pengajuan_tempo.district_id_invoice.id if pengajuan_tempo.district_id_invoice else '', + 'subDistrict_invoice': pengajuan_tempo.subDistrict_id_invoice.id if pengajuan_tempo.subDistrict_id_invoice else '', + 'zip_invoice': pengajuan_tempo.zip_invoice if pengajuan_tempo.zip_invoice else '', 'tukar_invoice_input' : pengajuan_tempo.tukar_invoice if pengajuan_tempo.tukar_invoice else '', 'tukar_invoice_input_pembayaran' : pengajuan_tempo.jadwal_bayar if pengajuan_tempo.jadwal_bayar else '', 'dokumen_pengiriman' : ','.join(dokumen_pengiriman) if dokumen_pengiriman else '', 'dokumen_pengiriman_input' : pengajuan_tempo.dokumen_pengiriman_input if pengajuan_tempo.dokumen_pengiriman_input else '', + 'dokumen_kirim_input' : pengajuan_tempo.dokumen_kirim_input if pengajuan_tempo.dokumen_kirim_input else '', 'dokumen_pengiriman_invoice' : pengajuan_tempo.dokumen_invoice if pengajuan_tempo.dokumen_invoice else '', 'is_same_addrees': pengajuan_tempo.is_same_address if pengajuan_tempo.is_same_address else False, 'is_same_addrees_street': pengajuan_tempo.is_same_address_street if pengajuan_tempo.is_same_address_street else False, @@ -85,12 +95,6 @@ class ResPartner(models.Model): ] if pengajuan_tempo.supplier_ids else '', # Dokumen - 'dokumen_nib': - { - 'name': pengajuan_tempo.dokumen_nib.name, - 'base64': pengajuan_tempo.dokumen_nib.local_url, - } - if pengajuan_tempo.dokumen_nib else '', 'dokumen_npwp': { 'name': pengajuan_tempo.dokumen_npwp.name, @@ -100,6 +104,31 @@ class ResPartner(models.Model): 'name': pengajuan_tempo.dokumen_sppkp.name, 'base64': pengajuan_tempo.dokumen_sppkp.local_url, } if pengajuan_tempo.dokumen_sppkp else '', + 'dokumen_nib': + { + 'name': pengajuan_tempo.dokumen_nib.name, + 'base64': pengajuan_tempo.dokumen_nib.local_url, + }if pengajuan_tempo.dokumen_nib else '', + 'dokumen_siup': + { + 'name': pengajuan_tempo.dokumen_siup.name, + 'base64': pengajuan_tempo.dokumen_siup.local_url, + }if pengajuan_tempo.dokumen_siup else '', + 'dokumen_tdp': + { + 'name': pengajuan_tempo.dokumen_tdp.name, + 'base64': pengajuan_tempo.dokumen_tdp.local_url, + }if pengajuan_tempo.dokumen_tdp else '', + 'dokumen_skdp': + { + 'name': pengajuan_tempo.dokumen_skdp.name, + 'base64': pengajuan_tempo.dokumen_skdp.local_url, + }if pengajuan_tempo.dokumen_skdp else '', + 'dokumen_skt': + { + 'name': pengajuan_tempo.dokumen_skt.name, + 'base64': pengajuan_tempo.dokumen_skt.local_url, + }if pengajuan_tempo.dokumen_skt else '', 'dokumen_akta_perubahan': { 'name': pengajuan_tempo.dokumen_akta_perubahan.name, 'base64': pengajuan_tempo.dokumen_akta_perubahan.local_url, |
