Odoo 13 POS 中的客户过滤器

问题描述

我需要过滤 odoo 13 POS 客户按钮中的客户列表。我已经用 js 编写了代码并将其添加到 XML 文件中,但它不起作用。代码在下面提到。有人能找出我错在哪里吗?

odoo.define('customer_filter_pos.customer_filter_pos',function (require) {

var models = require('point_of_sale.models');
var rpc = require('web.rpc');
models.load_fields('res.partner','parent_id');

var _super_posmodel = models.PosModel.prototype;

models.PosModel = models.PosModel.extend({
initialize: function (session,attributes) {
var partner_model = _.find(this.models,function(model){
return model.model === 'res.partner';
});
partner_model.domain.push(['parent_id','=',false]);
return _super_posmodel.initialize.call(this,session,attributes);
},});

models.PosModel = models.PosModel.extend({

load_new_partners: function(load_new_partners){
var self = this;
var def = new $.Deferred();
var fields = _.find(this.models,function(model){ return model.model === 'res.partner'; }).fields;
var domain = [['customer',true],['write_date','>',this.db.get_partner_write_date()],['parent_id',false]];
rpc.query({
model: 'res.partner',method: 'search_read',args: [domain,fields],},{
timeout: 3000,shadow: true,})
.then(function(partners){
if (self.db.add_partners(partners)) { // check if the partners we got were real updates
def.resolve();
} else {
def.reject();
}
},function(type,err){ def.reject(); });
return def;
}
});
});

解决方法

你可以试试这个代码。你可以随意更改域。谢谢@kenly,他告诉我的,它对我有用。

while true
   print("What's your name ? \n"); 
   name = readline()
   println("The name is ",name)
   print("\n\n")
   print("Continue ? [y/n]\n")
   # maybe check if the answer is not "y" or "n"
   answer = readline()
   if answer == "n"
       break
   end
end