1、报价、销售订单列表视图添加平台订单号字段。2、销售订单详情的采购链接按采购类型拆分为委外加工和采购的跳转链接;
This commit is contained in:
@@ -58,9 +58,11 @@ class ReSaleOrder(models.Model):
|
||||
delivery_warning = fields.Selection([('normal', '正常'), ('warning', '告警'), ('overdue', '逾期')], string='时效',
|
||||
tracking=True)
|
||||
|
||||
order_code = fields.Char('平台订单号', readonly=True)
|
||||
|
||||
# 业务平台分配工厂后在智能工厂先创建销售订单
|
||||
def sale_order_create(self, company_id, delivery_name, delivery_telephone, delivery_address,
|
||||
deadline_of_delivery, payments_way, pay_way, state='sale'):
|
||||
deadline_of_delivery, payments_way, pay_way, order_number, state='sale'):
|
||||
now_time = datetime.datetime.now()
|
||||
partner = self.get_customer()
|
||||
data = {
|
||||
@@ -76,6 +78,7 @@ class ReSaleOrder(models.Model):
|
||||
'address_of_delivery': delivery_address,
|
||||
'payments_way': payments_way,
|
||||
'pay_way': pay_way,
|
||||
'order_code': order_number,
|
||||
}
|
||||
if deadline_of_delivery:
|
||||
# deadline_of_delivery字段存在为false字符串情况
|
||||
@@ -158,6 +161,68 @@ class ReSaleOrder(models.Model):
|
||||
if not line.tax_id:
|
||||
raise UserError('请对【订单行】中的【税】进行选择')
|
||||
|
||||
consignment_purchase_order_count = fields.Integer(
|
||||
"Number of consignment Purchase Order Generated",
|
||||
compute='_compute_purchase_order_count')
|
||||
|
||||
@api.depends('order_line.purchase_line_ids.order_id')
|
||||
def _compute_purchase_order_count(self):
|
||||
for order in self:
|
||||
order.purchase_order_count = len(order._get_purchase_orders().filtered(
|
||||
lambda po: po.purchase_type not in ['consignment']))
|
||||
order.consignment_purchase_order_count = len(order._get_purchase_orders().filtered(
|
||||
lambda po: po.purchase_type in ['consignment']))
|
||||
|
||||
def action_view_purchase_orders(self):
|
||||
"""
|
||||
采购
|
||||
"""
|
||||
self.ensure_one()
|
||||
purchase_order_ids = self._get_purchase_orders().filtered(
|
||||
lambda po: po.purchase_type not in ['consignment']).ids
|
||||
action = {
|
||||
'res_model': 'purchase.order',
|
||||
'type': 'ir.actions.act_window',
|
||||
}
|
||||
if len(purchase_order_ids) == 1:
|
||||
action.update({
|
||||
'view_mode': 'form',
|
||||
'res_id': purchase_order_ids[0],
|
||||
})
|
||||
else:
|
||||
action.update({
|
||||
'name': _("从 %s生成采购订单", self.name),
|
||||
'domain': [('id', 'in', purchase_order_ids)],
|
||||
'view_mode': 'tree,form',
|
||||
})
|
||||
return action
|
||||
|
||||
def action_view_consignment_purchase_orders(self):
|
||||
"""
|
||||
委外加工
|
||||
"""
|
||||
self.ensure_one()
|
||||
consignment_purchase_order_ids = self._get_purchase_orders().filtered(
|
||||
lambda po: po.purchase_type in ['consignment']).ids
|
||||
action = {
|
||||
'res_model': 'purchase.order',
|
||||
'type': 'ir.actions.act_window',
|
||||
}
|
||||
if len(consignment_purchase_order_ids) == 1:
|
||||
action.update({
|
||||
'view_mode': 'form',
|
||||
'res_id': consignment_purchase_order_ids[0],
|
||||
})
|
||||
else:
|
||||
action.update({
|
||||
'name': _("从 %s生成委外加工订单", self.name),
|
||||
'domain': [('id', 'in', consignment_purchase_order_ids)],
|
||||
'view_mode': 'tree,form',
|
||||
})
|
||||
return action
|
||||
|
||||
|
||||
|
||||
|
||||
class ResaleOrderLine(models.Model):
|
||||
_inherit = 'sale.order.line'
|
||||
@@ -255,7 +320,7 @@ class RePurchaseOrder(models.Model):
|
||||
else:
|
||||
server_template = self.env['product.template'].search(
|
||||
[('server_product_process_parameters_id', '=', pp.surface_technics_parameters_id.id),
|
||||
('detailed_type', '=', 'service')])
|
||||
('detailed_type', '=', 'service')])
|
||||
server_product_process.append((0, 0, {
|
||||
'product_id': server_template.product_variant_id.id,
|
||||
'product_qty': 1,
|
||||
|
||||
Reference in New Issue
Block a user