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