This commit is contained in:
hyyy
2025-03-14 10:52:50 +08:00
parent f9525beb65
commit f66ff6339d
3 changed files with 6 additions and 82 deletions

View File

@@ -1,76 +0,0 @@
/** @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);
owl.onMounted(() => {
$(this.__owl__.bdom.el).find('tfoot').hide()
})
owl.onRendered(() => {
setTimeout(() => {
const $dom = $(this.__owl__?.bdom?.el)
if(!$dom || !$dom.length) return
const $thead = $dom.find('thead').find('th');
if(!this.props.list.records || this.props.list.records.length == 0) return
const $total_qty = this.props.list.records[0].data.column_nums;
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').eq(0).children('td:visible').length;
$dom.find('.o_data_row').siblings('tr:not(.o_data_row)').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;
},
})
registry.category('fields').add('custom_measure_line_tree', QualityCheckMeasureLineTree);

View File

@@ -8,11 +8,11 @@
<field name="sequence"/> <field name="sequence"/>
<field name="column_nums"/> <field name="column_nums"/>
<field name="measure_item"/> <field name="measure_item"/>
<field name="measure_value1"/> <field name="measure_value1" attrs="{ 'column_invisible': [('parent.column_nums', '&lt;', 1)] }"/>
<field name="measure_value2"/> <field name="measure_value2" attrs="{ 'column_invisible': [('parent.column_nums', '&lt;', 2)] }"/>
<field name="measure_value3"/> <field name="measure_value3" attrs="{ 'column_invisible': [('parent.column_nums', '&lt;', 3)] }"/>
<field name="measure_value4"/> <field name="measure_value4" attrs="{ 'column_invisible': [('parent.column_nums', '&lt;', 4)] }"/>
<field name="measure_value5"/> <field name="measure_value5" attrs="{ 'column_invisible': [('parent.column_nums', '&lt;', 5)] }"/>
<field name="measure_result"/> <field name="measure_result"/>
<field name="remark"/> <field name="remark"/>
<button name="del_measure_value" type="object" string="删除" class="btn-danger"/> <button name="del_measure_value" type="object" string="删除" class="btn-danger"/>

View File

@@ -341,7 +341,7 @@
</div> </div>
<br/> <br/>
<div class="o_row"> <div class="o_row">
<field name="measure_line_ids" widget="custom_measure_line_tree"/> <field name="measure_line_ids" widget="tree"/>
</div> </div>
</page> </page>
<page string="出厂检验报告" name="out_check" attrs="{'invisible': [('is_out_check', '=', False)]}"> <page string="出厂检验报告" name="out_check" attrs="{'invisible': [('is_out_check', '=', False)]}">