修改取消列表,修改出厂检验报告

This commit is contained in:
hyyy
2025-03-19 14:45:04 +08:00
parent a75e236f1f
commit 9093770ce1
4 changed files with 36 additions and 10 deletions

View File

@@ -119,12 +119,10 @@ patch(ListRenderer.prototype, 'jikimo_frontend.ListRenderer', {
this.listherHeaderBodyNum()
})
const treeModifiers = this.getFieldModifiers(this.props.archInfo.__rawArch);
// console.log('treeModifiers', treeModifiers);
if(treeModifiers) {
this.props.merge_key = treeModifiers.merge_key;
this.props.merge_fields = treeModifiers.merge_fields.split(',');
const data = this.setColumns(this.props.merge_key);
console.log('data', data);
owl.onMounted(() => {
this.mergeColumns(this.props.merge_fields, data)
})
@@ -176,19 +174,28 @@ patch(ListRenderer.prototype, 'jikimo_frontend.ListRenderer', {
}
},
setColumns( merge_key) {
merge_key = merge_key.split(',')
const data = this.props.list.records
let sourceIndex = 0;
let sourceValue = ''
let sourceValue = merge_key.reduce((acc, key) => {
acc[key] = '';
return acc;
}, {});
data.forEach((item, index) => {
if(!item.colspan) {
item.colspan = 1;
}
if(item.data[merge_key] === sourceValue) {
const itemValue = merge_key.reduce((acc, key) => {
acc[key] = item.data[key];
return acc;
}, {});
if(JSON.stringify(itemValue) == JSON.stringify(sourceValue)) {
data[sourceIndex].colspan ++ ;
item.colspan = 0;
} else {
sourceIndex = index;
sourceValue = item.data[merge_key];
sourceValue = itemValue;
}
})
return data
@@ -211,14 +218,25 @@ patch(ListRenderer.prototype, 'jikimo_frontend.ListRenderer', {
const dom = this.tableRef.el
const thead = $(dom).children('thead')
const tbody = $(dom).children('tbody')
let row_no = 0
tbody.children('tr.o_data_row').each(function () {
const tr = $(this)
const td = tr.children('td')
const index = $(this).index()
const col = data[index].colspan
row_no ++
if(col == 0) {
row_no --
}
td.eq(0).text(row_no).attr('rowspan', col)
if(col == 0) {
td.eq(0).remove()
}
td.each(function () {
if(merge_fields.indexOf($(this).attr('name')) >= 0) {
$(this).attr('rowspan', data[index].colspan)
if(data[index].colspan == 0) {
$(this).attr('rowspan', col)
if(col == 0) {
$(this).remove()
}
}