跳至内容
菜单
此问题已终结
该问题已被关闭 原因: not enough information given to provide help
Hoang Long VU2024年11月12日 02时38分23秒
1 回复
849 查看

Hello, 

Im actually try to make my first custom module. 

But i cant understand where i made an mistake. If someone can give a hand for this. 


Thank you

<?xml version="1.0" encoding="UTF-8"?>
<odoo>
  <record id="sale_order_form_view_inherit" model="ir.ui.view">
    <field name="name">sale.order.form.view.inherit</field>
    <field name="model">sale.order</field>
    <field name="inherit_id" ref="sale.view_order_form"/>
    <field name="arch" type="xml">
      <xpath expr="//header/field[@name='state']" position="replace">
        <field name="state" widget="statusbar" statusbar_visible="draft,sent,waiting,sale"/>
      </xpath>
      <xpath expr="//header" position="inside">
        <button name="action_payment_receive" type="object" string="Confirm Payment"
                attrs="{'invisible': [('state', '!=', 'waiting')]}"/>
      </xpath>
    </field>
  </record>
</odoo>




形象
丢弃
编写者 最佳答案
from odoo import models, fields

class SaleOrder(models.Model):
    _inherit = 'sale.order'
    ​state = fields.Selection(selection_add=[('waiting', 'Waiting Payment')])
    def action_confirm(self):
        for order in self:
            if order.payment_term_id.id != 1:             
                super(SaleOrder, order).action_confirm()
            else:
                order.write({'state': 'waiting'})
        return True

    def action_payment_receive(self):
        for order in self:
            super(SaleOrder, order).action_confirm()
        return True
形象
丢弃
相关帖文 回复 查看 活动
0
7月 25
410
0
7月 25
1044
1
5月 25
1523
1
4月 25
1532
1
6月 25
1026