diff options
| author | it-fixcomart <it@fixcomart.co.id> | 2024-12-06 17:08:46 +0700 |
|---|---|---|
| committer | it-fixcomart <it@fixcomart.co.id> | 2024-12-06 17:08:46 +0700 |
| commit | af85c0d2248728fe33675dcec6e513eefd6553a4 (patch) | |
| tree | f8d4aef19486ef22e990e02c12de904fd65c71cc /indoteknik_api | |
| parent | 0aad5455df5d36ef87ab1cbd52030a3cf0bef1d8 (diff) | |
<iman> update pengajuan tempo
Diffstat (limited to 'indoteknik_api')
| -rw-r--r-- | indoteknik_api/controllers/api_v1/partner.py | 97 | ||||
| -rw-r--r-- | indoteknik_api/models/res_partner.py | 23 | ||||
| -rw-r--r-- | indoteknik_api/models/res_users.py | 6 |
3 files changed, 47 insertions, 79 deletions
diff --git a/indoteknik_api/controllers/api_v1/partner.py b/indoteknik_api/controllers/api_v1/partner.py index 0522e8e1..d8464add 100644 --- a/indoteknik_api/controllers/api_v1/partner.py +++ b/indoteknik_api/controllers/api_v1/partner.py @@ -308,22 +308,27 @@ class Partner(controller.Controller): 'tempoLimit': ['alias:tempo_limit'], # informasi perusahaan + 'direkturTittle': ['alias:direktur_tittle'], 'direkturName': ['alias:direktur_name'], 'direkturMobile': ['alias:direktur_mobile'], 'direkturEmail': ['alias:direktur_email'], + 'purchasingTittle': ['alias:purchasing_tittle'], 'purchasingName': ['alias:purchasing_name'], 'purchasingMobile': ['alias:purchasing_mobile'], 'purchasingEmail': ['alias:purchasing_email'], + 'financeTittle': ['alias:finance_tittle'], 'financeName': ['alias:finance_name'], 'financeMobile': ['alias:finance_mobile'], 'financeEmail': ['alias:finance_email'], # Pengiriman + 'PICTittle': ['alias:pic_tittle'], 'PICName': ['alias:pic_name'], 'streetPengiriman': ['alias:street_pengiriman'], 'statePengiriman': ['alias:state_id_pengiriman'], 'cityPengiriman': ['alias:city_id_pengiriman'], 'zipPengiriman': ['alias:zip_pengiriman'], + 'invoicePicTittle': ['alias:invoice_pic_tittle'], 'invoicePic': ['alias:invoice_pic'], 'streetInvoice': ['alias:street_invoice'], 'stateInvoice': ['alias:state_id_invoice'], @@ -384,37 +389,13 @@ class Partner(controller.Controller): category_ids = list(map(int, category_produk_ids.split(','))) pengajuan_tempo.category_produk_ids = [(6, 0, category_ids)] - every_weekday = True if kw.get('everyWeekday') == "true" else False - every_weekday_input = kw.get('everyWeekdayInput') - every_week = True if kw.get('everyWeek') == 'true' else False - every_week_input = kw.get('everyWeekInput') - tukar_invoice = True if kw.get('tukarInvoice') == 'true' else False tukar_invoice_input = kw.get('tukarInvoiceInput') - jadwal_tukar_invoice = "" - if every_weekday: - jadwal_tukar_invoice += f"setiap hari {every_weekday_input}" - if every_week: - jadwal_tukar_invoice += f", setiap {every_week_input}" - if tukar_invoice or tukar_invoice_input: - jadwal_tukar_invoice += f", {tukar_invoice_input}" - if jadwal_tukar_invoice: - pengajuan_tempo.tukar_invoice = jadwal_tukar_invoice - - every_weekday_pembayaran = True if kw.get('everyWeekdayPembayaran') == 'true' else False - every_weekday_input_pembayaran = kw.get('everyWeekdayInputPembayaran') - every_week_pembayaran = True if kw.get('everyWeekPembayaran') == 'true' else False - every_week_input_pembayaran = kw.get('everyWeekInputPembayaran') - tukar_invoice_pembayaran = True if kw.get('tukarInvoicePembayaran') == 'true' else False + if tukar_invoice_input: + pengajuan_tempo.tukar_invoice = tukar_invoice_input + tukar_invoice_input_pembayaran = kw.get('tukarInvoiceInputPembayaran') - jadwal_tukar_invoice_pembayaran = "" - if every_weekday_pembayaran: - jadwal_tukar_invoice_pembayaran += f"setiap hari {every_weekday_input_pembayaran}" - if every_week_pembayaran: - jadwal_tukar_invoice_pembayaran += f", setiap {every_week_input_pembayaran}" - if tukar_invoice_pembayaran or tukar_invoice_input_pembayaran: - jadwal_tukar_invoice_pembayaran += f", {tukar_invoice_input_pembayaran}" - if jadwal_tukar_invoice_pembayaran: - pengajuan_tempo.jadwal_bayar = jadwal_tukar_invoice_pembayaran + if tukar_invoice_input_pembayaran: + pengajuan_tempo.jadwal_bayar = tukar_invoice_input_pembayaran dokumen_kirim = [ 'Surat Tanda Terima Barang (STTB)', @@ -431,11 +412,10 @@ class Partner(controller.Controller): 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_barang_input: - input_items = [item.strip() for item in dokumen_kirim_barang_input.split(',')] - dokumen_kirim_barang.extend(item for item in input_items if item and item not in dokumen_kirim_barang) if dokumen_kirim_barang: pengajuan_tempo.dokumen_pengiriman = ', '.join(dokumen_kirim_barang) + if dokumen_kirim_barang_input: + pengajuan_tempo.dokumen_pengiriman_input = dokumen_kirim_barang_input dokumen = [ 'Invoice Pembelian', @@ -445,18 +425,9 @@ class Partner(controller.Controller): 'Good Receipt (GR)' ] - dokumen_invoice_ids = kw.get('dokumenPengirimanInvoice') - dokumen_invoice_input = kw.get('dokumenPengirimanInvoiceInput', '') - dokumen_invoice = "" - - if dokumen_invoice_ids: - dokumen_ids = list(map(int, dokumen_invoice_ids.split(','))) - dokumen_invoice = [dokumen[i] for i in dokumen_ids if 0 <= i < len(dokumen)] - if dokumen_invoice_input: - input_items = [item.strip() for item in dokumen_invoice_input.split(',')] - dokumen_invoice.extend(item for item in input_items if item and item not in dokumen_invoice) + dokumen_invoice = kw.get('dokumenPengirimanInvoice', '') if dokumen_invoice: - pengajuan_tempo.dokumen_invoice = ', '.join(dokumen_invoice) + pengajuan_tempo.dokumen_invoice = dokumen_invoice form_dokumen_data = kw.get('formDocs', False) if form_dokumen_data: @@ -477,37 +448,39 @@ class Partner(controller.Controller): 'mimetype': mimetype }) - if dokumen['documentName'] == 'dokumenNib' and dokumen['details']['base64'] != '' : - pengajuan_tempo.dokumen_nib = [(4, sppkp_attachment.id)] + if dokumen['documentName'] == 'dokumenNib': + pengajuan_tempo.dokumen_nib = [(6, 0, [sppkp_attachment.id])] - elif dokumen['documentName'] == 'dokumenNpwp' and dokumen['details']['base64'] != '' : - pengajuan_tempo.dokumen_npwp = [(4, sppkp_attachment.id)] + elif dokumen['documentName'] == 'dokumenNpwp': + pengajuan_tempo.dokumen_npwp = [(6, 0, [sppkp_attachment.id])] - elif dokumen['documentName'] == 'dokumenSppkp' and dokumen['details']['base64'] != '' : - pengajuan_tempo.dokumen_sppkp = [(4, sppkp_attachment.id)] + elif dokumen['documentName'] == 'dokumenSppkp': + pengajuan_tempo.dokumen_sppkp = [(6, 0, [sppkp_attachment.id])] - elif dokumen['documentName'] == 'dokumenAktaPerubahan' and dokumen['details']['base64'] != '' : - pengajuan_tempo.dokumen_akta_perubahan = [(4, sppkp_attachment.id)] + elif dokumen['documentName'] == 'dokumenAktaPerubahan': + pengajuan_tempo.dokumen_akta_perubahan = [(6, 0, [sppkp_attachment.id])] - elif dokumen['documentName'] == 'dokumenKtpDirut' and dokumen['details']['base64'] != '' : - pengajuan_tempo.dokumen_ktp_dirut = [(4, sppkp_attachment.id)] + elif dokumen['documentName'] == 'dokumenKtpDirut': + pengajuan_tempo.dokumen_ktp_dirut = [(6, 0, [sppkp_attachment.id])] - elif dokumen['documentName'] == 'dokumenAktaPendirian' and dokumen['details']['base64'] != '' : - pengajuan_tempo.dokumen_akta_pendirian = [(4, sppkp_attachment.id)] + elif dokumen['documentName'] == 'dokumenAktaPendirian': + pengajuan_tempo.dokumen_akta_pendirian = [(6, 0, [sppkp_attachment.id])] - elif dokumen['documentName'] == 'dokumenLaporanKeuangan' and dokumen['details']['base64'] != '' : - pengajuan_tempo.dokumen_laporan_keuangan = [(4, sppkp_attachment.id)] + elif dokumen['documentName'] == 'dokumenLaporanKeuangan': + pengajuan_tempo.dokumen_laporan_keuangan = [(6, 0, [sppkp_attachment.id])] - elif dokumen['documentName'] == 'dokumenFotoKantor' and dokumen['details']['base64'] != '' : - pengajuan_tempo.dokumen_foto_kantor = [(4, sppkp_attachment.id)] + elif dokumen['documentName'] == 'dokumenFotoKantor': + pengajuan_tempo.dokumen_foto_kantor = [(6, 0, [sppkp_attachment.id])] - elif dokumen['documentName'] == 'dokumen_tempat_bekerja' and dokumen['details']['base64'] != '' : - pengajuan_tempo.dokumen_tempat_bekerja = [(4, sppkp_attachment.id)] + elif dokumen['documentName'] == 'dokumenTempatBekerja': + pengajuan_tempo.dokumen_tempat_bekerja = [(6, 0, [sppkp_attachment.id])] - formatted_text = ''.join([' ' + char if char.isupper() and i != 0 else char for i, char in enumerate(dokumen['documentName'])]) + formatted_text = ''.join([' ' + char if char.isupper() and i != 0 else char for i, char in + enumerate(dokumen['documentName'])]) teks = formatted_text.strip().title() pengajuan_tempo.message_post(body=teks, attachment_ids=[sppkp_attachment.id]) + except json.JSONDecodeError: return http.Response(status=400, json_body={'error': 'Invalid JSON format for formDokumen'}) if tempo_request: diff --git a/indoteknik_api/models/res_partner.py b/indoteknik_api/models/res_partner.py index 7b3c8d47..f73101db 100644 --- a/indoteknik_api/models/res_partner.py +++ b/indoteknik_api/models/res_partner.py @@ -22,21 +22,6 @@ class ResPartner(models.Model): dokumen_pengiriman_list = [dokumen.strip() for dokumen in pengajuan_tempo_dokumen_pengiriman.split(',')] dokumen_pengiriman = [mapping_dokumen.get(dokumen, '4') for dokumen in dokumen_pengiriman_list] - dokumen = [ - ['Invoice Pembelian','0'], - ['Surat Jalan','1'], - ['Berita Acara Serah Terima (BAST)','2'], - ['Faktur Pajak','3'], - ['Good Receipt (GR)','4'] - ] - dokumen_invoice = [] - if pengajuan_tempo.dokumen_invoice: - pengajuan_tempo_dokumen_invoice = pengajuan_tempo.dokumen_invoice - mapping_dokumen = {item[0]: item[1] for item in dokumen} - dokumen_invoice_list = [dokumen.strip() for dokumen in pengajuan_tempo_dokumen_invoice.split(',')] - dokumen_invoice = [mapping_dokumen.get(dokumen, '4') for dokumen in dokumen_invoice_list] - - data = { 'name' : pengajuan_tempo.name_tempo.name, 'industry_id' : pengajuan_tempo.industry_id_tempo.id, @@ -55,22 +40,27 @@ class ResPartner(models.Model): 'category_produk': ','.join([str(cat.id) for cat in pengajuan_tempo.category_produk_ids]) if pengajuan_tempo.category_produk_ids else '', # Kontak Perusahaan + 'direktur_tittle': pengajuan_tempo.direktur_tittle if pengajuan_tempo.direktur_tittle else '', 'direktur_name' : pengajuan_tempo.direktur_name if pengajuan_tempo.direktur_name else '', 'direktur_mobile' : pengajuan_tempo.direktur_mobile if pengajuan_tempo.direktur_mobile else '', 'direktur_email' : pengajuan_tempo.direktur_email if pengajuan_tempo.direktur_email else '', + 'purchasing_tittle': pengajuan_tempo.purchasing_tittle if pengajuan_tempo.purchasing_tittle else '', 'purchasing_name' : pengajuan_tempo.purchasing_name if pengajuan_tempo.purchasing_name else '', 'purchasing_mobile' : pengajuan_tempo.purchasing_mobile if pengajuan_tempo.purchasing_mobile else '', 'purchasing_email' : pengajuan_tempo.purchasing_email if pengajuan_tempo.purchasing_email else '', + 'finance_tittle': pengajuan_tempo.finance_tittle if pengajuan_tempo.finance_tittle else '', 'finance_name' : pengajuan_tempo.finance_name if pengajuan_tempo.finance_name else '', 'finance_mobile' : pengajuan_tempo.finance_mobile if pengajuan_tempo.finance_mobile else '', 'finance_email' : pengajuan_tempo.finance_email if pengajuan_tempo.finance_email else '', # Pengiriman + 'PIC_tittle' : pengajuan_tempo.pic_tittle if pengajuan_tempo.pic_tittle else '', 'PIC_name' : pengajuan_tempo.pic_name if pengajuan_tempo.pic_name else '', '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 '', '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 '', @@ -78,7 +68,8 @@ class ResPartner(models.Model): '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_invoice' : ','.join(dokumen_invoice) if dokumen_invoice else '', + 'dokumen_pengiriman_input' : pengajuan_tempo.dokumen_pengiriman_input if pengajuan_tempo.dokumen_pengiriman_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, 'supplier_ids': [ diff --git a/indoteknik_api/models/res_users.py b/indoteknik_api/models/res_users.py index 0c7dd96f..93204a96 100644 --- a/indoteknik_api/models/res_users.py +++ b/indoteknik_api/models/res_users.py @@ -16,7 +16,11 @@ class ResUsers(models.Model): } partner_tempo = '' is_tempo_request = request.env['user.pengajuan.tempo.request'].search([('user_company_id', '=', main_partner.id)], limit=1) - tempo_progres = 'review' if is_tempo_request.state_tempo in ('draft','approval_sales','approval_finance') else '' + tempo_progres = ( + 'review' if is_tempo_request.state_tempo in ('draft', 'approval_sales', 'approval_finance') else + 'rejected' if is_tempo_request.state_tempo == 'reject' else + 'approve' if is_tempo_request.state_tempo == 'approval_director' else '' + ) if main_partner: partner_tempo = main_partner.get_check_payment_term() |
