diff options
| author | stephanchrst <stephanchrst@gmail.com> | 2025-05-23 09:38:49 +0700 |
|---|---|---|
| committer | stephanchrst <stephanchrst@gmail.com> | 2025-05-23 09:38:49 +0700 |
| commit | f66710c029d678ecf580808b5aee3821c90d9598 (patch) | |
| tree | 7fd881203cf48bda9118ace64a418cc15fe6f7ae | |
| parent | dbf09bbf792809e84d2d0330a992e42b3a5c6994 (diff) | |
Revert "Merge branch 'CR/form-merchant' into odoo-backup"
This reverts commit f6f59e660af6c4229ada54f7313d68867df1ba15, reversing
changes made to 68378dd2fb8d61b282a672ca0f09033d15d82283.
| -rw-r--r-- | indoteknik_api/controllers/api_v1/lead.py | 207 | ||||
| -rw-r--r-- | indoteknik_api/controllers/api_v1/sale_order.py | 24 | ||||
| -rw-r--r-- | indoteknik_api/controllers/api_v1/user.py | 4 | ||||
| -rw-r--r-- | indoteknik_api/models/res_partner.py | 95 | ||||
| -rwxr-xr-x | indoteknik_custom/__manifest__.py | 2 | ||||
| -rwxr-xr-x | indoteknik_custom/models/__init__.py | 2 | ||||
| -rw-r--r-- | indoteknik_custom/models/res_partner.py | 184 | ||||
| -rwxr-xr-x | indoteknik_custom/models/sale_order.py | 46 | ||||
| -rw-r--r-- | indoteknik_custom/models/user_form_merchant.py | 98 | ||||
| -rw-r--r-- | indoteknik_custom/models/user_merchant_request.py | 125 | ||||
| -rwxr-xr-x | indoteknik_custom/security/ir.model.access.csv | 4 | ||||
| -rw-r--r-- | indoteknik_custom/views/res_partner.xml | 60 | ||||
| -rwxr-xr-x | indoteknik_custom/views/sale_order.xml | 13 | ||||
| -rw-r--r-- | indoteknik_custom/views/user_form_merchant.xml | 109 | ||||
| -rw-r--r-- | indoteknik_custom/views/user_merchant_request.xml | 112 |
15 files changed, 3 insertions, 1082 deletions
diff --git a/indoteknik_api/controllers/api_v1/lead.py b/indoteknik_api/controllers/api_v1/lead.py index 389f36b8..d5cc7c5c 100644 --- a/indoteknik_api/controllers/api_v1/lead.py +++ b/indoteknik_api/controllers/api_v1/lead.py @@ -1,9 +1,6 @@ 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) @@ -29,206 +26,4 @@ class Lead(controller.Controller): lead = request.env['crm.lead'].create(params['value']) - return self.response(True) - - @http.route('/api/v1/merchant/<id>', 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, { - # informasi perusahaan - "name_merchant": [], - "pejabat_name": [], - "pic_merchant": [], - "pic_position": [], - "address": [], - "state": ['number'], - "city": ['number'], - "district": ['number'], - "subDistrict": ['number'], - "zip": [], - "bank_name": [], - "rekening_name": [], - "account_number": [], - "email_company": [], - "email_sales": [], - "email_finance": [], - "phone": [], - "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": [], - "tempo_garansi": [], - "is_order_quantity": [], - "explain_garansi": [], - "custom_sertifikat_produk": [], - - # # 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) - 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 direturn' - - 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('custom_tenggat_waktu') - - if params['value']['is_order_quantity']: - if params['value']['is_order_quantity'] == 'ya': - params['value']['is_order_quantity'] = kw.get('minimum_pembelian') - else: - params['value']['is_order_quantity'] = 'Tidak ada minimum order quantity' - - 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: - category_ids = list(map(int, category_produk_ids.split(','))) - 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: - user_merchant_request = request.env['user.merchant.request'].create({ - 'user_id': partner.id, - 'merchant_id': form_merchant.id, - 'user_company_id': main_partner.id - }) - - return self.response(True) - - @http.route('/api/v1/detail-merchant/<id>', 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_merchant(form_merchant) - return self.response(form_merchant) - - @http.route('/api/v1/check-merchant/<id>', 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 + return self.response(True)
\ No newline at end of file diff --git a/indoteknik_api/controllers/api_v1/sale_order.py b/indoteknik_api/controllers/api_v1/sale_order.py index d5208fb1..98b13cad 100644 --- a/indoteknik_api/controllers/api_v1/sale_order.py +++ b/indoteknik_api/controllers/api_v1/sale_order.py @@ -54,20 +54,6 @@ 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 @@ -79,7 +65,6 @@ 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, @@ -157,15 +142,6 @@ 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 967bbcc9..b5b7e055 100644 --- a/indoteknik_api/controllers/api_v1/user.py +++ b/indoteknik_api/controllers/api_v1/user.py @@ -60,9 +60,7 @@ class User(controller.Controller): 'user': self.response_with_token(user), } return self.response(data) - except Exception as e: - respon = str(e) - print(respon) + except: return self.response({ 'is_auth': False, 'reason': 'NOT_FOUND' diff --git a/indoteknik_api/models/res_partner.py b/indoteknik_api/models/res_partner.py index 2cebab83..3a98f3bc 100644 --- a/indoteknik_api/models/res_partner.py +++ b/indoteknik_api/models/res_partner.py @@ -175,99 +175,4 @@ class ResPartner(models.Model): } if pengajuan_tempo.dokumen_tempat_bekerja else '', } - return data - - def api_single_response_merchant(self, form_merchant, with_detail=''): - sertifikat = [ - ['TKDN', '0'], - ['SNI', '1'], - ['K3L', '2'], - ] - dokumen_sertifikat = [] - if form_merchant.sertifikat_produk: - form_merchant_dokumen_sertifikat = form_merchant.sertifikat_produk - mapping_dokumen = {item[0]: item[1] for item in sertifikat} - dokumen_pengiriman_list = [dokumen.strip() for dokumen in form_merchant_dokumen_sertifikat.split(',')] - dokumen_sertifikat = [mapping_dokumen.get(dokumen, '3') for dokumen in dokumen_pengiriman_list] - data = { - 'name_merchant' : form_merchant.name_merchant, - 'pejabat_name' : form_merchant.pejabat_name, - 'pic_merchant' : form_merchant.pic_merchant, - 'pic_position' : form_merchant.pic_position, - 'address' : form_merchant.address, - 'state' : form_merchant.state.id, - 'city' : form_merchant.city.id, - 'district' : form_merchant.district.id, - 'subDistrict' : form_merchant.subDistrict.id, - 'zip' : form_merchant.zip, - 'bank_name' : form_merchant.bank_name, - 'rekening_name' : form_merchant.rekening_name, - 'account_number' : form_merchant.account_number, - 'email_company' : form_merchant.email_company, - 'email_sales' : form_merchant.email_sales, - 'email_finance' : form_merchant.email_finance, - 'phone' : form_merchant.phone, - 'mobile' : form_merchant.mobile, - 'bisnis_type' : form_merchant.bisnis_type, - 'category_perusahaan': form_merchant.category_perusahaan, - 'website' : form_merchant.website, - - # informasi Vendor - 'harga_tayang' : form_merchant.harga_tayang, - 'category_produk': ','.join([str(cat.id) for cat in form_merchant.category_produk_ids]) if form_merchant.category_produk_ids else '', - 'merk_dagang' : form_merchant.merk_dagang, - 'is_pengajuan_tempo' : 'ada' if form_merchant.is_pengajuan_tempo else 'tidak', - 'tempo_duration' : form_merchant.tempo_duration.id, - 'kredit_limit' : form_merchant.kredit_limit, - 'waktu_pengiriman' : form_merchant.waktu_pengiriman, - 'terhitung_sejak' : form_merchant.terhitung_sejak, - - - # syarat perdagangan - 'is_kembali_barang': 'tidak' if form_merchant.is_kembali_barang == 'Tidak dapat direturn' else 'ya', - 'text_return': form_merchant.is_kembali_barang if form_merchant.is_kembali_barang != 'Tidak dapat direturn' else '', - 'tenggat_waktu': form_merchant.tenggat_waktu, - 'sertifikat_produk': ','.join(dokumen_sertifikat) if dokumen_sertifikat else '', - 'custom_sertifikat_produk': '' if form_merchant.custom_sertifikat_produk == 'false' else form_merchant.custom_sertifikat_produk, - 'tempo_garansi': form_merchant.tempo_garansi, - 'explain_garansi': form_merchant.explain_garansi, - 'is_order_quantity': 'ya' if form_merchant.is_order_quantity != 'Tidak ada minimum order quantity' else 'tidak', - 'minimum_pembelian': form_merchant.is_order_quantity, - - #dokumen - 'file_npwp': - { - 'name': form_merchant.file_npwp.name, - } if form_merchant.file_npwp else '', - 'file_sppkp': { - 'name': form_merchant.file_sppkp.name, - } if form_merchant.file_sppkp else '', - 'file_dokumenKtpDirut': - { - 'name': form_merchant.file_dokumenKtpDirut.name, - }if form_merchant.file_dokumenKtpDirut else '', - 'file_kartuNama': - { - 'name': form_merchant.file_kartuNama.name, - }if form_merchant.file_kartuNama else '', - 'file_suratPernyataan': - { - 'name': form_merchant.file_suratPernyataan.name, - }if form_merchant.file_suratPernyataan else '', - 'file_fotoKantor': - { - 'name': form_merchant.file_fotoKantor.name - }if form_merchant.file_fotoKantor else '', - 'file_dataProduk': - { - 'name': form_merchant.file_dataProduk.name, - }if form_merchant.file_dataProduk else '', - 'file_pricelist': { - 'name': form_merchant.file_pricelist.name, - } if form_merchant.file_pricelist else '', - - - - } - return data
\ No newline at end of file diff --git a/indoteknik_custom/__manifest__.py b/indoteknik_custom/__manifest__.py index d93db041..9fe3dcdb 100755 --- a/indoteknik_custom/__manifest__.py +++ b/indoteknik_custom/__manifest__.py @@ -31,8 +31,6 @@ 'views/web_logging/web_utm_source.xml', 'views/user_company_request.xml', 'views/user_pengajuan_tempo_request.xml', - 'views/user_form_merchant.xml', - 'views/user_merchant_request.xml', 'views/vit_kelurahan.xml', 'views/vit_kecamatan.xml', 'views/vit_kota.xml', diff --git a/indoteknik_custom/models/__init__.py b/indoteknik_custom/models/__init__.py index e17f68d1..08fa9803 100755 --- a/indoteknik_custom/models/__init__.py +++ b/indoteknik_custom/models/__init__.py @@ -144,8 +144,6 @@ from . import stock_immediate_transfer from . import coretax_fatur from . import public_holiday from . import ir_actions_report -from . import user_form_merchant -from . import user_merchant_request from . import barcoding_product from . import sales_order_koli from . import stock_backorder_confirmation diff --git a/indoteknik_custom/models/res_partner.py b/indoteknik_custom/models/res_partner.py index ff07c94c..191a44c9 100644 --- a/indoteknik_custom/models/res_partner.py +++ b/indoteknik_custom/models/res_partner.py @@ -161,86 +161,6 @@ class ResPartner(models.Model): "this feature", tracking=3) telegram_id = fields.Char(string="Telegram") - # MERCHANT - # informasi perusahaan - name_merchant = fields.Char(string='Name') - pejabat_name = fields.Char(string='Pejabat Name') - pic_merchant = fields.Char(string='PIC Merchant', required=True) - pic_position = fields.Char(string='Jabatan PIC') - address_merchant = fields.Char(string='Alamat') - state_merchant = fields.Many2one('res.country.state', string='State') - city_merchant = fields.Many2one('vit.kota', string='Kota') - district_merchant = fields.Many2one('vit.kecamatan', string='Kecamatan') - subDistrict_merchant = fields.Many2one('vit.kelurahan', string='Kelurahan') - zip_merchant = fields.Char(string='Kode Pos') - bank_name_merchant = fields.Char(string='Nama Bank') - rekening_name_merchant = fields.Char(string='Nama Rekening') - account_number_merchant = fields.Char(string='Nomor Rekening Bank') - email_company_merchant = fields.Char(string='Email Perusahaan') - email_sales_merchant = fields.Char(string='Email Sales') - email_finance_merchant = fields.Char(string='Email Finance') - phone_merchant = fields.Char(string='No. Telepon Perusahaan') - mobile_merchant = fields.Char(string='No. Handphone') - bisnis_type = fields.Selection([ - ('1', 'PT'), - ('2', 'CV'), - ('3', 'Perorangan'), - ]) - website_merchant = fields.Char(string='Website') - category_perusahaan = fields.Selection([ - ('1', 'Principal (Pemegang merk/Produsen)'), - ('2', 'Sole Distributor (Distributor Tunggal)'), - ('3', 'Authorized Distributor (Distributor Resmi)'), - ('4', 'Importer (Pengimpor Barang)'), - ('5', 'Wholesaler (Pedagang Besar)'), - ]) - # Informasi Vendor - harga_tayang = fields.Char(string='Harga Tayang (HET)') - category_produk_ids_merchant = fields.Many2many( - 'product.public.category', - string='Kategori Produk Merchant', - domain=lambda self: self._get_default_category_domain(), - relation='res_partner_category_produk_ids_merchant_rel' # Nama tabel relasi berbeda - ) - - @api.model - def _get_default_category_domain(self): - return [('parent_id', '=', False)] - - merk_dagang = fields.Char(string='Merk Dagang') - is_pengajuan_tempo = fields.Boolean(string='Apakah anda memiliki Form Pengajuan Tempo?') - tempo_duration_merchant = fields.Many2one('account.payment.term', string='Durasi Tempo') - kredit_limit = fields.Char(string='Kredit Limit') - waktu_pengiriman = fields.Char(string='Waktu Pengiriman') - terhitung_sejak = fields.Selection([ - ('1', 'Terima PO'), - ('2', 'Barang Dikirimkan'), - ('3', 'Tukar Faktur'), - ]) - - # syarat dagang - is_kembali_barang = fields.Char(string='Syarat Pengembalian Barang') - tenggat_waktu = fields.Char(string='Tenggat Waktu Perubahan Harga') - sertifikat_produk = fields.Char(string='Dokumen/Sertifikat yang Dimiliki Oleh Brand') - custom_sertifikat_produk = fields.Char(string='Dokumen/Sertifikat Lainnya') - tempo_garansi = fields.Selection([ - ('1', '6 Bulan Garansi'), - ('2', '1 Tahun Garansi'), - ('3', '2 Tahun Garansi'), - ]) - explain_garansi = fields.Char(string='Garansi Yang Dimaksudkan') - is_order_quantity = fields.Char(string='Apakah Memiliki Minimum Order Quantity (MOQ)') - - # dokumen - file_npwp = fields.Many2one('ir.attachment', string="NPWP Perusahaan", tracking=3) - file_sppkp = fields.Many2one('ir.attachment', string="SPPKP Perusahaan", tracking=3) - file_dokumenKtpDirut = fields.Many2one('ir.attachment', string="KTP Dirut/Direktur", tracking=3) - file_kartuNama = fields.Many2one('ir.attachment', string="Kartu Nama", tracking=3) - file_suratPernyataan = fields.Many2one('ir.attachment', string="Surat Pernyataan Nomor Rekening", tracking=3) - file_fotoKantor = fields.Many2one('ir.attachment', string="Foto Gudang / Kantor Bagian Depan", tracking=3) - file_dataProduk = fields.Many2one('ir.attachment', string="Data Produk (Item Name, Gambar, Deskripsi)", tracking=3) - file_pricelist = fields.Many2one('ir.attachment', string="Pricelist", tracking=3) - @api.model def _default_payment_term(self): return self.env.ref('__export__.account_payment_term_26_484409e2').id @@ -409,60 +329,6 @@ class ResPartner(models.Model): vals['dokumen_foto_kantor'] = vals.get('dokumen_foto_kantor', self.dokumen_foto_kantor) vals['dokumen_tempat_bekerja'] = vals.get('dokumen_tempat_bekerja', self.dokumen_tempat_bekerja) - # MERCHANT - # Informasi Perusahaan - vals['name_merchant'] = vals.get('name_merchant', self.name_merchant) - vals['pejabat_name'] = vals.get('pejabat_name', self.pejabat_name) - vals['pic_merchant'] = vals.get('pic_merchant', self.pic_merchant) - vals['pic_position'] = vals.get('pic_position', self.pic_position) - vals['address_merchant'] = vals.get('address_merchant', self.address_merchant) - vals['state_merchant'] = vals.get('state_merchant', self.state_merchant) - vals['city_merchant'] = vals.get('city_merchant', self.city_merchant) - vals['district_merchant'] = vals.get('district_merchant', self.district_merchant) - vals['subDistrict_merchant'] = vals.get('subDistrict_merchant', self.subDistrict_merchant) - vals['zip_merchant'] = vals.get('zip_merchant', self.zip_merchant) - vals['bank_name_merchant'] = vals.get('bank_name_merchant', self.bank_name_merchant) - vals['rekening_name_merchant'] = vals.get('rekening_name_merchant', self.rekening_name_merchant) - vals['account_number_merchant'] = vals.get('account_number_merchant', self.account_number_merchant) - vals['email_company_merchant'] = vals.get('email_company_merchant', self.email_company_merchant) - vals['email_sales_merchant'] = vals.get('email_sales_merchant', self.email_sales_merchant) - vals['email_finance_merchant'] = vals.get('email_finance_merchant', self.email_finance_merchant) - vals['phone_merchant'] = vals.get('phone_merchant', self.phone_merchant) - vals['mobile_merchant'] = vals.get('mobile_merchant', self.mobile_merchant) - vals['bisnis_type'] = vals.get('bisnis_type', self.bisnis_type) - vals['website_merchant'] = vals.get('website_merchant', self.website_merchant) - vals['category_perusahaan'] = vals.get('category_perusahaan', self.category_perusahaan) - - # Informasi Vendor - vals['harga_tayang'] = vals.get('harga_tayang', self.harga_tayang) - vals['category_produk_ids_merchant'] = vals.get('category_produk_ids_merchant', self.category_produk_ids_merchant) - vals['merk_dagang'] = vals.get('merk_dagang', self.merk_dagang) - vals['is_pengajuan_tempo'] = vals.get('is_pengajuan_tempo', self.is_pengajuan_tempo) - vals['tempo_duration_merchant'] = vals.get('tempo_duration_merchant', self.tempo_duration_merchant) - vals['kredit_limit'] = vals.get('kredit_limit', self.kredit_limit) - vals['waktu_pengiriman'] = vals.get('waktu_pengiriman', self.waktu_pengiriman) - vals['terhitung_sejak'] = vals.get('terhitung_sejak', self.terhitung_sejak) - - # Syarat Dagang - vals['is_kembali_barang'] = vals.get('is_kembali_barang', self.is_kembali_barang) - vals['tenggat_waktu'] = vals.get('tenggat_waktu', self.tenggat_waktu) - vals['sertifikat_produk'] = vals.get('sertifikat_produk', self.sertifikat_produk) - vals['custom_sertifikat_produk'] = vals.get('custom_sertifikat_produk', self.custom_sertifikat_produk) - vals['tempo_garansi'] = vals.get('tempo_garansi', self.tempo_garansi) - vals['explain_garansi'] = vals.get('explain_garansi', self.explain_garansi) - vals['is_order_quantity'] = vals.get('is_order_quantity', self.is_order_quantity) - - # Dokumen - vals['file_dokumenKtpDirut'] = vals.get('file_dokumenKtpDirut', self.file_dokumenKtpDirut) - vals['file_kartuNama'] = vals.get('file_kartuNama', self.file_kartuNama) - vals['file_npwp'] = vals.get('file_npwp', self.file_npwp) - vals['file_sppkp'] = vals.get('file_sppkp', self.file_sppkp) - vals['file_suratPernyataan'] = vals.get('file_suratPernyataan', self.file_suratPernyataan) - vals['file_fotoKantor'] = vals.get('file_fotoKantor', self.file_fotoKantor) - vals['file_dataProduk'] = vals.get('file_dataProduk', self.file_dataProduk) - vals['file_pricelist'] = vals.get('file_pricelist', self.file_pricelist) - vals['description'] = vals.get('description', self.description) - # Simpan hanya field yang perlu di-update pada child vals_for_child = { 'customer_type': vals.get('customer_type'), @@ -534,55 +400,7 @@ class ResPartner(models.Model): 'dokumen_tempat_bekerja': vals.get('dokumen_tempat_bekerja'), # internal_notes - 'comment': vals.get('comment'), - - # Merchant - 'name_merchant': vals.get('name_merchant'), - 'pejabat_name': vals.get('pejabat_name'), - 'pic_merchant': vals.get('pic_merchant'), - 'pic_position': vals.get('pic_position'), - 'address_merchant': vals.get('address_merchant'), - 'state_merchant': vals.get('state_merchant'), - 'city_merchant': vals.get('city_merchant'), - 'district_merchant': vals.get('district_merchant'), - 'subDistrict_merchant': vals.get('subDistrict_merchant'), - 'zip_merchant': vals.get('zip_merchant'), - 'bank_name_merchant': vals.get('bank_name_merchant'), - 'rekening_name_merchant': vals.get('rekening_name_merchant'), - 'account_number_merchant': vals.get('account_number_merchant'), - 'email_company_merchant': vals.get('email_company_merchant'), - 'email_sales_merchant': vals.get('email_sales_merchant'), - 'email_finance_merchant': vals.get('email_finance_merchant'), - 'phone_merchant': vals.get('phone_merchant'), - 'mobile_merchant': vals.get('mobile_merchant'), - 'bisnis_type': vals.get('bisnis_type'), - 'website_merchant': vals.get('website_merchant'), - 'category_perusahaan': vals.get('category_perusahaan'), - 'harga_tayang': vals.get('harga_tayang'), - 'category_produk_ids_merchant': vals.get('category_produk_ids_merchant'), - 'merk_dagang': vals.get('merk_dagang'), - 'is_pengajuan_tempo': vals.get('is_pengajuan_tempo'), - 'tempo_duration_merchant': vals.get('tempo_duration_merchant'), - 'kredit_limit': vals.get('kredit_limit'), - 'waktu_pengiriman': vals.get('waktu_pengiriman'), - 'terhitung_sejak': vals.get('terhitung_sejak'), - 'is_kembali_barang': vals.get('is_kembali_barang'), - 'tenggat_waktu': vals.get('tenggat_waktu'), - 'sertifikat_produk': vals.get('sertifikat_produk'), - 'custom_sertifikat_produk': vals.get('custom_sertifikat_produk'), - 'tempo_garansi': vals.get('tempo_garansi'), - 'explain_garansi': vals.get('explain_garansi'), - 'is_order_quantity': vals.get('is_order_quantity'), - - 'file_dokumenKtpDirut': vals.get('file_dokumenKtpDirut'), - 'file_kartuNama': vals.get('file_kartuNama'), - 'file_npwp': vals.get('file_npwp'), - 'file_sppkp': vals.get('file_sppkp'), - 'file_suratPernyataan': vals.get('file_suratPernyataan'), - 'file_fotoKantor': vals.get('file_fotoKantor'), - 'file_dataProduk': vals.get('file_dataProduk'), - 'file_pricelist': vals.get('file_pricelist'), - 'description': vals.get('description'), + 'comment': vals.get('comment') } # Lakukan update pada semua child secara rekursif diff --git a/indoteknik_custom/models/sale_order.py b/indoteknik_custom/models/sale_order.py index 6028a1d0..bdf8f1eb 100755 --- a/indoteknik_custom/models/sale_order.py +++ b/indoteknik_custom/models/sale_order.py @@ -336,12 +336,6 @@ class SaleOrder(models.Model): date_unhold = fields.Datetime(string='Date Unhold', tracking=True, readonly=True, help='Waktu ketika SO di Unhold' ) - ready_to_ship_status_detail = fields.Char( - string='Status Shipping Detail', - compute='_compute_ready_to_ship_status_detail' - ) - - def _compute_total_margin_excl_third_party(self): for order in self: if order.amount_untaxed == 0: @@ -2012,45 +2006,5 @@ class SaleOrder(models.Model): if any(fields in vals for fields in ['delivery_amt', 'carrier_id', 'shipping_cost_covered']): self._validate_delivery_amt() if any(field in vals for field in ["order_line", "client_order_ref"]): -<<<<<<< HEAD self._calculate_etrts_date() return res -======= - self._calculate_etrts_date() - return res - - # @api.depends('commitment_date') - def _compute_ready_to_ship_status_detail(self): - for order in self: - eta = order.commitment_date - - match_lines = self.env['purchase.order.sales.match'].search([ - ('sale_id', '=', order.id) - ]) - - if match_lines: - for match in match_lines: - po = match.purchase_order_id - product = match.product_id - - po_line = self.env['purchase.order.line'].search([ - ('order_id', '=', po.id), - ('product_id', '=', product.id) - ], limit=1) - - stock_move = self.env['stock.move'].search([ - ('purchase_line_id', '=', po_line.id) - ], limit=1) - picking_in = stock_move.picking_id - - result_date = picking_in.date_done if picking_in else None - if result_date: - status = "Early" if result_date < eta else "Delay" - result_date_str = result_date.strftime('%m/%d/%Y') - eta_str = eta.strftime('%m/%d/%Y') - order.ready_to_ship_status_detail = f"Expected: {eta_str} | Realtime: {result_date_str} | {status}" - else: - order.ready_to_ship_status_detail = "On Track" - else: - order.ready_to_ship_status_detail = 'On Track' ->>>>>>> CR/form-merchant diff --git a/indoteknik_custom/models/user_form_merchant.py b/indoteknik_custom/models/user_form_merchant.py deleted file mode 100644 index a804e93f..00000000 --- a/indoteknik_custom/models/user_form_merchant.py +++ /dev/null @@ -1,98 +0,0 @@ -from odoo import models, fields, api -from odoo.exceptions import UserError -from odoo.http import request - - -class UserFormMerchant(models.Model): - _name = 'user.form.merchant' - _inherit = ['mail.thread', 'mail.activity.mixin'] - - name = fields.Char(string='Name') - # informasi peruhsaan - name_merchant = fields.Char(string='Name') - pejabat_name = fields.Char(string='Pejabat Name') - pic_merchant = fields.Char(string='PIC Merchant') - pic_position = fields.Char(string='Jabatan PIC') - partner_id = fields.Many2one('res.partner', string='Company') - address = fields.Char(string='Alamat') - state = fields.Many2one('res.country.state', string='State') - city = fields.Many2one('vit.kota', string='Kota') - district = fields.Many2one('vit.kecamatan', string='Kecamatan') - subDistrict = fields.Many2one('vit.kelurahan', string='Kelurahan') - zip = fields.Char(string='Kode Pos') - bank_name = fields.Char(string='Nama Bank') - rekening_name = fields.Char(string='Nama Rekening') - account_number = fields.Char(string='Nomor Rekening Bank') - email_company = fields.Char(string='Email Perusahaan') - email_sales = fields.Char(string='Email Sales') - email_finance = fields.Char(string='Email Finance') - phone = fields.Char(string='No. Telepon Perusahaan') - mobile = fields.Char(string='No. Handphone') - bisnis_type = fields.Selection([ - ('1', 'PT'), - ('2', 'CV'), - ('3', 'Perorangan'), - ]) - website = fields.Char(string='Website') - category_perusahaan = fields.Selection([ - ('1', 'Principal (Pemegang merk/Produsen)'), - ('2', 'Sole Distributor (Distributor Tunggal)'), - ('3', 'Authorized Distributor (Distributor Resmi)'), - ('4', 'Importer (Pengimpor Barang)'), - ('5', 'Wholesaler (Pedagang Besar)'), - ]) - description = fields.Text(string='Deskripsi') - - # imformasi Vendor - harga_tayang = fields.Char(string='Harga Tayang (HET)') - category_produk_ids = fields.Many2many('product.public.category', string='Kategori Produk yang Digunakan', - domain=lambda self: self._get_default_category_domain()) - - @api.model - def _get_default_category_domain(self): - return [('parent_id', '=', False)] - - merk_dagang = fields.Char(string='Merk Dagang') - is_pengajuan_tempo = fields.Boolean(string='Apakah anda memiliki Form Pengajuan Tempo?') - tempo_duration = fields.Many2one('account.payment.term', string='Durasi Tempo') - kredit_limit = fields.Char(string='Kredit Limit') - waktu_pengiriman = fields.Char(string='Waktu Pengiriman') - terhitung_sejak = fields.Selection([ - ('1', 'Terima PO'), - ('2', 'Barang Dikirimkan'), - ('3', 'Tukar Faktur'), - ]) - - # syarat dagang - is_kembali_barang = fields.Char(string='Syarat Pengembalian Barang') - tenggat_waktu = fields.Char(string='Tenggat Waktu Perubahan Harga') - sertifikat_produk = fields.Char(string='Dokumen/Sertifikat yang Dimiliki Oleh Brand') - custom_sertifikat_produk = fields.Char(string='Dokumen/Sertifikat Lainnya') - tempo_garansi = fields.Selection([ - ('1', '6 Bulan Garansi'), - ('2', '1 Tahun Garansi'), - ('3', '2 Tahun Garansi'), - ]) - explain_garansi = fields.Char(string='Garansi Yang Dimaksudkan') - is_order_quantity = fields.Char(string='Apakah Memiliki Minimum Order Quantity (MOQ)') - - # dokumen - file_npwp = fields.Many2one('ir.attachment', string="NPWP Perusahaan", tracking=3) - file_sppkp = fields.Many2one('ir.attachment', string="SPPKP Perusahaan", tracking=3) - file_dokumenKtpDirut = fields.Many2one('ir.attachment', string="KTP Dirut/Direktur", tracking=3) - file_kartuNama = fields.Many2one('ir.attachment', string="Kartu Nama", tracking=3) - file_suratPernyataan = fields.Many2one('ir.attachment', string="Surat Pernyataan Nomor Rekening", tracking=3) - file_fotoKantor = fields.Many2one('ir.attachment', string="Foto Gudang / Kantor Bagian Depan", tracking=3) - file_dataProduk = fields.Many2one('ir.attachment', string="Data Produk (Item Name, Gambar, Deskripsi)", tracking=3) - file_pricelist = fields.Many2one('ir.attachment', string="Pricelist", tracking=3) - - @api.depends('name', 'name_merchant') - def name_get(self): - result = [] - for record in self: - if record.name_merchant: - display_name = record.name_merchant - else: - display_name = "DETAIL FORM MERCHANT" - result.append((record.id, display_name)) - return result
\ No newline at end of file diff --git a/indoteknik_custom/models/user_merchant_request.py b/indoteknik_custom/models/user_merchant_request.py deleted file mode 100644 index dd571cdc..00000000 --- a/indoteknik_custom/models/user_merchant_request.py +++ /dev/null @@ -1,125 +0,0 @@ -from odoo import models, fields, api, _ -from odoo.exceptions import UserError -from odoo.http import request - - -class RejectReasonWizardMerchant(models.TransientModel): - _name = 'reject.reason.wizard.merchant' - _description = 'Wizard for Reject Reason' - - request_id = fields.Many2one('user.merchant.request', string='Request') - reason_reject = fields.Text(string='Reason for Rejection', required=True) - - def confirm_reject(self): - merchant = self.request_id - if merchant: - merchant.write({'reason_reject': self.reason_reject}) - merchant.state_merchant = 'reject' - return {'type': 'ir.actions.act_window_close'} - - -class ConfirmApprovalWizardMerchant(models.TransientModel): - _name = 'confirm.approval.wizard.merchant' - _description = 'Wizard Konfirmasi Approval' - - merchant_id = fields.Many2one('user.merchant.request', string='Merchant', required=True) - - def confirm_approval(self): - merchant = self.merchant_id - if merchant.state_merchant == 'draft': - merchant.state_merchant = 'approved' - - -class UserMerchantRequest(models.Model): - _name = 'user.merchant.request' - _inherit = ['mail.thread', 'mail.activity.mixin'] - _rec_name = 'user_id' - - user_id = fields.Many2one('res.partner', string='User') - merchant_id = fields.Many2one('user.form.merchant', string='Form Merchant') - user_company_id = fields.Many2one('res.partner', string='Company') - state_merchant = fields.Selection([ - ('draft', 'Pengajuan Merchant'), - ('approved', 'Approved Merchant'), - ('reject', 'Rejected'), - ], string='Status', readonly=True, copy=False, index=True, track_visibility='onchange', default='draft') - reason_reject = fields.Char(string='Reaject Reason') - - def button_approve(self): - for merchant in self: - return { - 'type': 'ir.actions.act_window', - 'name': 'Konfirmasi Approve', - 'res_model': 'confirm.approval.wizard.merchant', - 'view_mode': 'form', - 'target': 'new', - 'context': { - 'default_merchant_id': merchant.id, - }} - - def button_reject(self): - return { - 'type': 'ir.actions.act_window', - 'name': _('Reject Reason'), - 'res_model': 'reject.reason.wizard.merchant', - 'view_mode': 'form', - 'target': 'new', - 'context': {'default_request_id': self.id}, - } - - def write(self, vals): - is_approve = True if self.state_merchant == 'approved' or vals.get('state_merchant') == 'approved' else False - if is_approve: - # Informasi Perusahaan - self.user_company_id.name_merchant = self.merchant_id.name_merchant - self.user_company_id.pejabat_name = self.merchant_id.pejabat_name - self.user_company_id.pic_merchant = self.merchant_id.pic_merchant - self.user_company_id.pic_position = self.merchant_id.pic_position - self.user_company_id.address_merchant = self.merchant_id.address - self.user_company_id.state_merchant = self.merchant_id.state - self.user_company_id.city_merchant = self.merchant_id.city - self.user_company_id.district_merchant = self.merchant_id.district - self.user_company_id.subDistrict_merchant = self.merchant_id.subDistrict - self.user_company_id.zip_merchant = self.merchant_id.zip - self.user_company_id.bank_name_merchant = self.merchant_id.bank_name - self.user_company_id.rekening_name_merchant = self.merchant_id.rekening_name - self.user_company_id.account_number_merchant = self.merchant_id.account_number - self.user_company_id.email_company_merchant = self.merchant_id.email_company - self.user_company_id.email_sales_merchant = self.merchant_id.email_sales - self.user_company_id.email_finance_merchant = self.merchant_id.email_finance - self.user_company_id.phone_merchant = self.merchant_id.phone - self.user_company_id.mobile_merchant = self.merchant_id.mobile - self.user_company_id.bisnis_type = self.merchant_id.bisnis_type - self.user_company_id.website_merchant = self.merchant_id.website - self.user_company_id.category_perusahaan = self.merchant_id.category_perusahaan - - # Informasi Vendor - self.user_company_id.harga_tayang = self.merchant_id.harga_tayang - self.user_company_id.category_produk_ids_merchant = self.merchant_id.category_produk_ids - self.user_company_id.merk_dagang = self.merchant_id.merk_dagang - self.user_company_id.is_pengajuan_tempo = self.merchant_id.is_pengajuan_tempo - self.user_company_id.tempo_duration_merchant = self.merchant_id.tempo_duration - self.user_company_id.kredit_limit = self.merchant_id.kredit_limit - self.user_company_id.waktu_pengiriman = self.merchant_id.waktu_pengiriman - self.user_company_id.terhitung_sejak = self.merchant_id.terhitung_sejak - - # Syarat Perdagangan - self.user_company_id.is_kembali_barang = self.merchant_id.is_kembali_barang - self.user_company_id.tenggat_waktu = self.merchant_id.tenggat_waktu - self.user_company_id.sertifikat_produk = self.merchant_id.sertifikat_produk - self.user_company_id.tempo_garansi = self.merchant_id.tempo_garansi - self.user_company_id.explain_garansi = self.merchant_id.explain_garansi - self.user_company_id.is_order_quantity = self.merchant_id.is_order_quantity - - # Dokumen - self.user_company_id.file_npwp = self.merchant_id.file_npwp - self.user_company_id.file_sppkp = self.merchant_id.file_sppkp - self.user_company_id.file_dokumenKtpDirut = self.merchant_id.file_dokumenKtpDirut - self.user_company_id.file_kartuNama = self.merchant_id.file_kartuNama - self.user_company_id.file_suratPernyataan = self.merchant_id.file_suratPernyataan - self.user_company_id.file_fotoKantor = self.merchant_id.file_fotoKantor - self.user_company_id.file_dataProduk = self.merchant_id.file_dataProduk - self.user_company_id.file_pricelist = self.merchant_id.file_pricelist - self.user_company_id.description = self.merchant_id.description - - return super(UserMerchantRequest, self).write(vals)
\ No newline at end of file diff --git a/indoteknik_custom/security/ir.model.access.csv b/indoteknik_custom/security/ir.model.access.csv index 28fc760d..601f04c5 100755 --- a/indoteknik_custom/security/ir.model.access.csv +++ b/indoteknik_custom/security/ir.model.access.csv @@ -169,10 +169,6 @@ access_User_pengajuan_tempo_line,access.user.pengajuan.tempo.line,model_user_pen access_user_pengajuan_tempo,access.user.pengajuan.tempo,model_user_pengajuan_tempo,,1,1,1,1 access_reject_reason_wizard,reject.reason.wizard,model_reject_reason_wizard,,1,1,1,0 access_confirm_approval_wizard,confirm.approval.wizard,model_confirm_approval_wizard,,1,1,1,0 -access_user_form_merchant,access.user.form.merchant,model_user_form_merchant,,1,1,1,1 -access_user_merchant_request,access.user.merchant.request,model_user_merchant_request,,1,1,1,1 -access_reject_reason_wizard_merchant,reject.reason.wizard.merchant,model_reject_reason_wizard_merchant,,1,1,1,0 -access_confirm_approval_wizard_merchant,confirm.approval.wizard.merchant,model_confirm_approval_wizard_merchant,,1,1,1,0 access_hr_public_holiday,confirm.hr.public.holiday,model_hr_public_holiday,,1,1,1,0 access_barcode_product,access.barcode.product,model_barcode_product,,1,1,1,1 access_barcoding_product,access.barcoding.product,model_barcoding_product,,1,1,1,1 diff --git a/indoteknik_custom/views/res_partner.xml b/indoteknik_custom/views/res_partner.xml index 5160523f..cb9fa3ac 100644 --- a/indoteknik_custom/views/res_partner.xml +++ b/indoteknik_custom/views/res_partner.xml @@ -190,66 +190,6 @@ </group> </page> </notebook> - <notebook> - <page string="Merchant"> - <group> - <group string="Informasi Perusahaan"> - <field name="name_merchant" /> - <field name="pejabat_name" /> - <field name="pic_merchant" /> - <field name="pic_position" /> - <field name="address_merchant" /> - <field name="state_merchant" /> - <field name="city_merchant" /> - <field name="district_merchant" /> - <field name="subDistrict_merchant" /> - <field name="zip_merchant" /> - <field name="bank_name_merchant" /> - <field name="rekening_name_merchant" /> - <field name="account_number_merchant" /> - <field name="email_company_merchant" widget="email"/> - <field name="email_sales_merchant" widget="email"/> - <field name="email_finance_merchant" widget="email"/> - <field name="phone_merchant" widget="phone"/> - <field name="mobile_merchant" widget="phone"/> - <field name="bisnis_type" /> - <field name="website_merchant" /> - <field name="category_perusahaan" /> - </group> - <group string="Syarat Perdagangan"> - <field name="is_kembali_barang" /> - <field name="tenggat_waktu" /> - <field name="sertifikat_produk" /> - <field name="tempo_garansi" /> - <field name="explain_garansi" /> - <field name="is_order_quantity" /> - </group> - <group string="Informasi Vendor"> - <field name="harga_tayang" /> - <field name="category_produk_ids_merchant" widget="many2many_tags" /> - <field name="merk_dagang" /> - <field name="is_pengajuan_tempo" /> - <field name="tempo_duration_merchant" /> - <field name="kredit_limit" /> - <field name="waktu_pengiriman" /> - <field name="terhitung_sejak" /> - </group> - <group string="Dokumen"> - <field name="file_npwp" /> - <field name="file_sppkp" /> - <field name="file_dokumenKtpDirut" /> - <field name="file_kartuNama" /> - <field name="file_suratPernyataan" /> - <field name="file_fotoKantor" /> - <field name="file_dataProduk" /> - <field name="file_pricelist" /> - </group> - <group> -<!-- <field name="description" />--> - </group> - </group> - </page> - </notebook> </field> </record> </data> diff --git a/indoteknik_custom/views/sale_order.xml b/indoteknik_custom/views/sale_order.xml index 92d13fa7..a599a7b8 100755 --- a/indoteknik_custom/views/sale_order.xml +++ b/indoteknik_custom/views/sale_order.xml @@ -103,7 +103,6 @@ <field name="compute_fullfillment" invisible="1" /> </field> <field name="tag_ids" position="after"> -<<<<<<< HEAD <field name="eta_date_start"/> <t t-esc="' to '"/> <field name="eta_date" readonly="1"/> @@ -113,18 +112,6 @@ <field name="percent_margin_after_delivery_purchase"/> <field name="total_weight"/> <field name="pareto_status"/> -======= - <field name="eta_date_start" /> - <t t-esc="' to '" /> - <field name="eta_date" readonly="1" /> - <field name="expected_ready_to_ship" /> - <field name="ready_to_ship_status_detail"/> - <field name="flash_sale" /> - <field name="margin_after_delivery_purchase" /> - <field name="percent_margin_after_delivery_purchase" /> - <field name="total_weight" /> - <field name="pareto_status" /> ->>>>>>> CR/form-merchant </field> <field name="analytic_account_id" position="after"> <field name="customer_type" readonly="1"/> diff --git a/indoteknik_custom/views/user_form_merchant.xml b/indoteknik_custom/views/user_form_merchant.xml deleted file mode 100644 index ae5a0f9f..00000000 --- a/indoteknik_custom/views/user_form_merchant.xml +++ /dev/null @@ -1,109 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<odoo> - <record id="user_form_merchant_tree" model="ir.ui.view"> - <field name="name">user.form.merchant.tree</field> - <field name="model">user.form.merchant</field> - <field name="arch" type="xml"> - <tree create="1" default_order="create_date desc"> - <field name="name_merchant"/> - <field name="email_company"/> - <field name="phone"/> - <field name="description"/> - <field name="create_date"/> - </tree> - </field> - </record> - - <record id="user_form_merchant_form" model="ir.ui.view"> - <field name="name">user.form.merchant.form</field> - <field name="model">user.form.merchant</field> - <field name="arch" type="xml"> - <form create="0"> - <sheet> - <group> - <group string="Informasi Perusahaan" > - <field name="name_merchant" /> - <field name="pejabat_name" /> - <field name="pic_merchant" /> - <field name="pic_position" /> - <field name="address" /> - <field name="state" /> - <field name="city" /> - <field name="district" /> - <field name="subDistrict" /> - <field name="zip" /> - <field name="bank_name" /> - <field name="rekening_name" /> - <field name="account_number" /> - <field name="email_company" widget="email"/> - <field name="email_sales" widget="email"/> - <field name="email_finance" widget="email"/> - <field name="phone" widget="phone"/> - <field name="mobile" widget="phone"/> - <field name="bisnis_type" /> - <field name="website" /> - <field name="category_perusahaan" /> - </group> - </group> - <group string="Informasi Vendor"> - <group> - <field name="harga_tayang" /> - <field name="category_produk_ids" widget="many2many_tags"/> - <field name="merk_dagang" /> - <field name="is_pengajuan_tempo" /> - <field name="tempo_duration" /> - <field name="kredit_limit" /> - <field name="waktu_pengiriman" /> - <field name="terhitung_sejak" /> - </group> - - </group> - <group string="Syarat Perdagangan"> - <group> - <field name="is_kembali_barang" /> - <field name="tenggat_waktu" /> - <field name="sertifikat_produk" /> -<!-- <field name="custom_sertifikat_produk" />--> - <field name="tempo_garansi" /> - <field name="explain_garansi" /> - <field name="is_order_quantity" /> - - </group> - </group> - <group string="Dokumen"> - <group> - <field name="file_npwp" /> - <field name="file_sppkp" /> - <field name="file_dokumenKtpDirut" /> - <field name="file_kartuNama" /> - <field name="file_suratPernyataan" /> - <field name="file_fotoKantor" /> - <field name="file_dataProduk" /> - <field name="file_pricelist" /> - </group> - <group> -<!-- <field name="description" />--> - </group> - </group> - </sheet> - </form> - </field> - </record> - - <record id="action_user_form_merchant" model="ir.actions.act_window"> - <field name="name">User Form Merchant</field> - <field name="type">ir.actions.act_window</field> - <field name="res_model">user.form.merchant</field> - <field name="view_mode">tree,form</field> - </record> - - -<!-- <menuitem--> -<!-- id="menu_user_form_merchant"--> -<!-- name="User Form Merchant"--> -<!-- parent="res_partner_menu_user"--> -<!-- sequence="1"--> -<!-- action="action_user_form_merchant"--> -<!-- />--> - -</odoo>
\ No newline at end of file diff --git a/indoteknik_custom/views/user_merchant_request.xml b/indoteknik_custom/views/user_merchant_request.xml deleted file mode 100644 index e4f309fd..00000000 --- a/indoteknik_custom/views/user_merchant_request.xml +++ /dev/null @@ -1,112 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<odoo> - <record id="user_merchant_request_tree" model="ir.ui.view"> - <field name="name">user.merchant.request.tree</field> - <field name="model">user.merchant.request</field> - <field name="arch" type="xml"> - <tree create="1" default_order="create_date desc"> - <field name="user_id"/> - <field name="merchant_id"/> - <field name="state_merchant" decoration-success="state_merchant == 'approved'" decoration-danger="state_merchant == 'reject'" widget="badge" optional="show"/> - <field name="create_date"/> - </tree> - </field> - </record> - - <record id="user_merchant_request_form" model="ir.ui.view"> - <field name="name">user.merchant.request.form</field> - <field name="model">user.merchant.request</field> - <field name="arch" type="xml"> - <form create="0"> - <header> - <button name="button_approve" - string="Approve Merchant" - attrs="{'invisible': [('state_merchant', 'in', ['approved','reject'])]}" - type="object" - class="oe_highlight"/> - <button name="button_reject" - string="Reject" - attrs="{'invisible': [('state_merchant', 'in', ['approved','reject'])]}" - type="object" - groups="purchase.group_purchase_manager" - class="oe_highlight"/> - <field name="state_merchant" widget="statusbar" - statusbar_visible="draft,approved" - statusbar_colors='{"reject":"red"}'/> - </header> - <sheet> - <group> - <group> - <field name="user_id" readonly="1"/> - <field name="merchant_id"/> - </group> - </group> - </sheet> - <div class="oe_chatter"> - <field name="message_ids" widget="mail_thread"/> - </div> - </form> - </field> -</record> - - - - - <!-- Wizard for Reject Reason --> -<record id="view_reject_reason_wizard_merchant_form" model="ir.ui.view"> - <field name="name">reject.reason.wizard.merchant.form</field> - <field name="model">reject.reason.wizard.merchant</field> - <field name="arch" type="xml"> - <form string="Reject Reason"> - <group> - <field name="reason_reject" widget="text"/> - </group> - <footer> - <button string="Confirm" type="object" name="confirm_reject" class="btn-primary"/> - <button string="Cancel" class="btn-secondary" special="cancel"/> - </footer> - </form> - </field> -</record> - -<record id="action_reject_reason_wizard_merchant" model="ir.actions.act_window"> - <field name="name">Reject Reason</field> - <field name="res_model">reject.reason.wizard.merchant</field> - <field name="view_mode">form</field> - <field name="target">new</field> -</record> - - -<record id="view_confirm_approval_wizard_merchant_form" model="ir.ui.view"> - <field name="name">confirm.approval.wizard.merchant.form</field> - <field name="model">confirm.approval.wizard.merchant</field> - <field name="arch" type="xml"> - <form string="Konfirmasi Approval"> - <group> - <p>Apakah Anda yakin ingin mengapprove merchant ini?</p> - </group> - <footer> - <button string="Batal" class="btn-secondary" special="cancel"/> - <button string="Konfirmasi" type="object" name="confirm_approval" class="btn-primary"/> - </footer> - </form> - </field> -</record> - - - - <record id="action_user_merchant_request" model="ir.actions.act_window"> - <field name="name">User Merchant Request</field> - <field name="type">ir.actions.act_window</field> - <field name="res_model">user.merchant.request</field> - <field name="view_mode">tree,form</field> - </record> - - <menuitem - id="menu_user_merchant_request" - name="User Merchant Request" - parent="res_partner_menu_user" - sequence="2" - action="action_user_merchant_request" - /> -</odoo>
\ No newline at end of file |
