buildSaleOrderForm static method

OdooView buildSaleOrderForm()

Implementation

static OdooView buildSaleOrderForm() {
  return OdooView.create(
    name: 'Sale Order Form',
    model: 'sale.order',
    viewType: ViewType.form,
  ).copyWith(
    id: 'view_sale_order_form_custom',
    topLevelFields: [
      _f('state', OdooFieldType.selection, label: 'Status', widget: 'statusbar'),
    ],
    groups: [
      _g('Order Details', [
        _f('name', OdooFieldType.char, label: 'Order Reference', readonly: true),
        _f('partner_id', OdooFieldType.many2one, label: 'Customer', required: true),
        _f('date_order', OdooFieldType.datetime, label: 'Order Date'),
        _f('validity_date', OdooFieldType.date, label: 'Expiration'),
        _f('user_id', OdooFieldType.many2one, label: 'Salesperson'),
        _f('team_id', OdooFieldType.many2one, label: 'Sales Team'),
      ]),
      _g('Pricing', [
        _f('pricelist_id', OdooFieldType.many2one, label: 'Pricelist'),
        _f('currency_id', OdooFieldType.many2one, label: 'Currency'),
        _f('payment_term_id', OdooFieldType.many2one, label: 'Payment Terms'),
      ]),
    ],
    pages: [
      NotebookPage(
        id: 'page_order_lines',
        label: 'Order Lines',
        fields: [
          _f('order_line', OdooFieldType.one2many, label: 'Order Lines'),
        ],
      ),
      NotebookPage(
        id: 'page_other_info',
        label: 'Other Information',
        groups: [
          _g('Shipping', [
            _f('commitment_date', OdooFieldType.datetime, label: 'Delivery Date'),
            _f('warehouse_id', OdooFieldType.many2one, label: 'Warehouse'),
          ]),
          _g('Invoicing', [
            _f('invoice_status', OdooFieldType.selection, label: 'Invoice Status'),
            _f('partner_invoice_id', OdooFieldType.many2one, label: 'Invoice Address'),
            _f('partner_shipping_id', OdooFieldType.many2one, label: 'Delivery Address'),
          ]),
        ],
      ),
    ],
  );
}