mirror of
https://github.com/DeNNiiInc/dbgate.git
synced 2026-05-02 09:03:58 +00:00
db diff object counts
This commit is contained in:
@@ -80,15 +80,26 @@
|
|||||||
return { sql: dmp.s };
|
return { sql: dmp.s };
|
||||||
}
|
}
|
||||||
|
|
||||||
function filterDiffRows(rows, values, filter) {
|
function filterDiffRowsByFlag(rows, values, skip = null) {
|
||||||
let res = rows
|
let res = rows;
|
||||||
.filter(row => filterName(filter, row.sourcePureName, row.targetPureName))
|
|
||||||
.filter(row => !values?.hideAdded || row.state != 'added')
|
if (skip != 'added') {
|
||||||
.filter(row => !values?.hideRemoved || row.state != 'removed')
|
res = res.filter(row => !values?.hideAdded || row.state != 'added');
|
||||||
.filter(row => !values?.hideChanged || row.state != 'changed')
|
}
|
||||||
.filter(row => !values?.hideEqual || row.state != 'equal');
|
if (skip != 'removed') {
|
||||||
|
res = res.filter(row => !values?.hideRemoved || row.state != 'removed');
|
||||||
|
}
|
||||||
|
if (skip != 'changed') {
|
||||||
|
res = res.filter(row => !values?.hideChanged || row.state != 'changed');
|
||||||
|
}
|
||||||
|
if (skip != 'equal') {
|
||||||
|
res = res.filter(row => !values?.hideEqual || row.state != 'equal');
|
||||||
|
}
|
||||||
|
|
||||||
for (const objectTypeField of _.keys(DbDiffCompareDefs)) {
|
for (const objectTypeField of _.keys(DbDiffCompareDefs)) {
|
||||||
|
if (skip == objectTypeField) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
if (values && values[`hide_${objectTypeField}`]) {
|
if (values && values[`hide_${objectTypeField}`]) {
|
||||||
res = res.filter(row => row.objectTypeField != objectTypeField);
|
res = res.filter(row => row.objectTypeField != objectTypeField);
|
||||||
}
|
}
|
||||||
@@ -96,6 +107,14 @@
|
|||||||
|
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function filterDiffRows(rows, values, filter) {
|
||||||
|
let res = rows.filter(row => filterName(filter, row.sourcePureName, row.targetPureName));
|
||||||
|
|
||||||
|
res = filterDiffRowsByFlag(rows, values);
|
||||||
|
|
||||||
|
return res;
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
@@ -365,28 +384,44 @@
|
|||||||
label="Added"
|
label="Added"
|
||||||
{values}
|
{values}
|
||||||
field="hideAdded"
|
field="hideAdded"
|
||||||
count={diffRowsAll.filter(x => x.state == 'added').length}
|
count={filterDiffRowsByFlag(
|
||||||
|
diffRowsAll.filter(x => x.state == 'added'),
|
||||||
|
$values,
|
||||||
|
'added'
|
||||||
|
).length}
|
||||||
/>
|
/>
|
||||||
<RowsFilterSwitcher
|
<RowsFilterSwitcher
|
||||||
icon="img minus"
|
icon="img minus"
|
||||||
label="Removed"
|
label="Removed"
|
||||||
{values}
|
{values}
|
||||||
field="hideRemoved"
|
field="hideRemoved"
|
||||||
count={diffRowsAll.filter(x => x.state == 'removed').length}
|
count={filterDiffRowsByFlag(
|
||||||
|
diffRowsAll.filter(x => x.state == 'removed'),
|
||||||
|
$values,
|
||||||
|
'removed'
|
||||||
|
).length}
|
||||||
/>
|
/>
|
||||||
<RowsFilterSwitcher
|
<RowsFilterSwitcher
|
||||||
icon="img changed"
|
icon="img changed"
|
||||||
label="Changed"
|
label="Changed"
|
||||||
{values}
|
{values}
|
||||||
field="hideChanged"
|
field="hideChanged"
|
||||||
count={diffRowsAll.filter(x => x.state == 'changed').length}
|
count={filterDiffRowsByFlag(
|
||||||
|
diffRowsAll.filter(x => x.state == 'changed'),
|
||||||
|
$values,
|
||||||
|
'changed'
|
||||||
|
).length}
|
||||||
/>
|
/>
|
||||||
<RowsFilterSwitcher
|
<RowsFilterSwitcher
|
||||||
icon="img equal"
|
icon="img equal"
|
||||||
label="Equal"
|
label="Equal"
|
||||||
{values}
|
{values}
|
||||||
field="hideEqual"
|
field="hideEqual"
|
||||||
count={diffRowsAll.filter(x => x.state == 'equal').length}
|
count={filterDiffRowsByFlag(
|
||||||
|
diffRowsAll.filter(x => x.state == 'equal'),
|
||||||
|
$values,
|
||||||
|
'equal'
|
||||||
|
).length}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
{#each _.keys(DbDiffCompareDefs) as objectTypeField}
|
{#each _.keys(DbDiffCompareDefs) as objectTypeField}
|
||||||
@@ -395,7 +430,11 @@
|
|||||||
label={DbDiffCompareDefs[objectTypeField].plural}
|
label={DbDiffCompareDefs[objectTypeField].plural}
|
||||||
{values}
|
{values}
|
||||||
field={'hide_' + objectTypeField}
|
field={'hide_' + objectTypeField}
|
||||||
count={diffRowsAll.filter(x => x.objectTypeField == objectTypeField).length}
|
count={filterDiffRowsByFlag(
|
||||||
|
diffRowsAll.filter(x => x.objectTypeField == objectTypeField),
|
||||||
|
$values,
|
||||||
|
objectTypeField
|
||||||
|
).length}
|
||||||
/>
|
/>
|
||||||
{/each}
|
{/each}
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Reference in New Issue
Block a user