增加添加删除列
This commit is contained in:
80
quality_control/static/src/js/quality.check.measures.line.js
Normal file
80
quality_control/static/src/js/quality.check.measures.line.js
Normal file
@@ -0,0 +1,80 @@
|
||||
/** @odoo-module **/
|
||||
|
||||
import { patch } from "@web/core/utils/patch";
|
||||
import { ListRenderer } from "@web/views/list/list_renderer";
|
||||
import { X2ManyField } from '@web/views/fields/x2many/x2many_field';
|
||||
import { registry } from '@web/core/registry';
|
||||
|
||||
|
||||
export class QualityCheckMeasureLineTree extends X2ManyField {
|
||||
setup() {
|
||||
super.setup();
|
||||
}
|
||||
|
||||
get rendererProps() {
|
||||
const props = super.rendererProps;
|
||||
return props;
|
||||
}
|
||||
}
|
||||
|
||||
patch(ListRenderer.prototype, 'custom_measure_line_tree_patch', {
|
||||
setup() {
|
||||
this._super.apply(this, arguments);
|
||||
console.log('custom_measure_line_tree_patch');
|
||||
console.log(owl);
|
||||
owl.onMounted(() => {
|
||||
console.log($(this.__owl__.bdom.el).find('tfoot'));
|
||||
$(this.__owl__.bdom.el).find('tfoot').hide()
|
||||
})
|
||||
|
||||
owl.onRendered(() => {
|
||||
setTimeout(() => {
|
||||
const $dom = $(this.__owl__.bdom.el)
|
||||
const $thead = $dom.find('thead').find('th');
|
||||
const $total_qty = this.props.list.records[0].data.total_qty;
|
||||
const hideKey = []
|
||||
const width = $dom.find('[data-name=measure_value1]').width();
|
||||
$thead.each(function () {
|
||||
const key = $(this).attr('data-name');
|
||||
if (key && key.indexOf('measure_value') >= 0) {
|
||||
const keyNum = Number(key.replace('measure_value', ''));
|
||||
if (keyNum > $total_qty) {
|
||||
hideKey.push(key);
|
||||
}
|
||||
}
|
||||
});
|
||||
$dom.find(':hidden').show().css('width', width);
|
||||
const hideDom = hideKey.map(_ => {
|
||||
return `[data-name="${_}"],[name="${_}"]`
|
||||
})
|
||||
$dom.find(hideDom.join(',')).hide()
|
||||
const $cloNum = $dom.find('.o_data_row').children('td:visible').length;
|
||||
$dom.find('.o_data_row').siblings('tr').children('td').prop('colspan', $cloNum);
|
||||
$dom.find('tfoot').hide()
|
||||
}, 50);
|
||||
})
|
||||
|
||||
},
|
||||
|
||||
|
||||
// get hasSelectors() {
|
||||
// return this.withSelectorColumn || (this.props.allowSelectors && !this.env.isSmall);
|
||||
// },
|
||||
|
||||
|
||||
_renderRow(list) {
|
||||
console.log('list', list);
|
||||
// if(!this.__owl__.bdom || !this.__owl__.bdom.el) return;
|
||||
// const $row = $(this.__owl__.bdom.el).find('tbody').children('tr');
|
||||
return '';
|
||||
},
|
||||
|
||||
getContext() {
|
||||
return this.context;
|
||||
},
|
||||
getContext() {
|
||||
return this.context;
|
||||
},
|
||||
})
|
||||
|
||||
registry.category('fields').add('custom_measure_line_tree', QualityCheckMeasureLineTree);
|
||||
Reference in New Issue
Block a user