diff --git a/sf_manufacturing/models/product_template.py b/sf_manufacturing/models/product_template.py index 496f3372..c127132c 100644 --- a/sf_manufacturing/models/product_template.py +++ b/sf_manufacturing/models/product_template.py @@ -640,6 +640,10 @@ class ResProductMo(models.Model): 'part_number': item.get('part_number') or '', 'active': True, } + tax_id = self.env['account.tax'].sudo().search( + [('type_tax_use', '=', 'sale'), ('amount', '=', item.get('tax')), ('price_include', '=', 'True')]) + if tax_id: + vals.update({'taxes_id':[(6,0,[int(tax_id)])]}) copy_product_id.sudo().write(vals) product_id.product_tmpl_id.active = False return copy_product_id @@ -947,6 +951,7 @@ class SfMaintenanceEquipmentAndProductTemplate(models.Model): raise ValidationError("机床基坐标获取失败") + class SfMaintenanceEquipmentTool(models.Model): _name = 'maintenance.equipment.tool' _description = '机床刀位' diff --git a/sf_sale/models/quick_easy_order.py b/sf_sale/models/quick_easy_order.py index b4ed6f31..081807a4 100644 --- a/sf_sale/models/quick_easy_order.py +++ b/sf_sale/models/quick_easy_order.py @@ -371,6 +371,7 @@ class QuickEasyOrder(models.Model): product_bom_purchase.bom_create_line_has(purchase_embryo) order_id.with_user(self.env.ref("base.user_admin")).sale_order_create_line(product, item) except Exception as e: + logging.error('工厂创建销售订单和产品失败,请联系管理员'.format(e)) # self.cr.rollback() return UserError('工厂创建销售订单和产品失败,请联系管理员') diff --git a/sf_sale/models/sale_order.py b/sf_sale/models/sale_order.py index b7dae97f..31a89c00 100644 --- a/sf_sale/models/sale_order.py +++ b/sf_sale/models/sale_order.py @@ -55,7 +55,7 @@ class ReSaleOrder(models.Model): deadline_of_delivery, payments_way, pay_way): now_time = datetime.datetime.now() partner = self.get_customer() - order_id = self.env['sale.order'].sudo().create({ + data ={ 'company_id': company_id.id, 'date_order': now_time, 'name': self.env['ir.sequence'].next_by_code('sale.order', sequence_date=now_time), @@ -66,10 +66,18 @@ class ReSaleOrder(models.Model): 'person_of_delivery': delivery_name, 'telephone_of_delivery': delivery_telephone, 'address_of_delivery': delivery_address, - 'deadline_of_delivery': deadline_of_delivery, 'payments_way': payments_way, 'pay_way': pay_way, - }) + } + if deadline_of_delivery: + # deadline_of_delivery字段存在为false字符串情况 + if not isinstance(deadline_of_delivery, str): + data.update({'deadline_of_delivery': deadline_of_delivery}) + else: + if deadline_of_delivery!="False": + data.update({'deadline_of_delivery': deadline_of_delivery}) + + order_id = self.env['sale.order'].sudo().create(data) return order_id def write(self, vals):