x-spreadsheet在线表格插件 集成odoo模块,集成了在线打印,模型数据批量新增,修改接口,excel导出,以上功能统一做了封装,直接按照指定格式调用即可。
1.前端调用:
<record model="ir.actions.client" id="x_spreadsheet_action">
<field name="name">Excel</field>
<field name="tag">x_spreadsheet_temp</field>
</record>
<menuitem name="Excel" id="spreadSheet_menu" action="x_spreadsheet_action" sequence="1"/>
2.后端python调用
def test(self):
return {
'name':'excel',
'type': 'ir.actions.client',
'tag': 'x_spreadsheet_temp',
'params': {
'model':self._context.get('active_model', None),
'method':'load',
'fields':'default_code%name%list_price%categ_id',
'load_id':'all',
'rows_len':1000,
'file_name':'产品'
}
}
3. 数据载入,数据新增,数据修改 统一调用封装的方法和后端api来处理。适用于所有数据模型,其他代码不用写,不用关注
常用方法实例:
//载入中文语言包
x_spreadsheet.locale('zh-cn');
//引用js后,初始化
var xs = x_spreadsheet('#x-spreadsheet-demo');
// 加载数据
xs.loadData(data);
// 获取数据 d
const d = xs.getData();
// 如
xs.change(function(data){
// 默认会返回整个数据 json
});
xs.on('cell-selected', function(cell, ri, ci) {
// to do ...
});
使用效果:
自定义工具栏 +事件绑定,配合api可以做很多功能实现。
打印
多样式定义:
后端封装开发功能。