summaryrefslogtreecommitdiff
path: root/indoteknik_api
diff options
context:
space:
mode:
authorit-fixcomart <it@fixcomart.co.id>2024-12-06 17:08:46 +0700
committerit-fixcomart <it@fixcomart.co.id>2024-12-06 17:08:46 +0700
commitaf85c0d2248728fe33675dcec6e513eefd6553a4 (patch)
treef8d4aef19486ef22e990e02c12de904fd65c71cc /indoteknik_api
parent0aad5455df5d36ef87ab1cbd52030a3cf0bef1d8 (diff)
<iman> update pengajuan tempo
Diffstat (limited to 'indoteknik_api')
-rw-r--r--indoteknik_api/controllers/api_v1/partner.py97
-rw-r--r--indoteknik_api/models/res_partner.py23
-rw-r--r--indoteknik_api/models/res_users.py6
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()