From 540468234806ad327064f7e7b94ca3620b655a95 Mon Sep 17 00:00:00 2001 From: RB Date: Tue, 12 Mar 2024 23:49:07 +0800 Subject: [PATCH] style --- .../resources/web/assets/css/list-page.css | 38 ++++++++++++++----- .../assets/js/general/rb-datalist.common.js | 20 +++++++--- .../web/assets/js/general/rb-forms.append.js | 9 +---- 3 files changed, 46 insertions(+), 21 deletions(-) diff --git a/src/main/resources/web/assets/css/list-page.css b/src/main/resources/web/assets/css/list-page.css index 846d7ae98..4de5f8238 100644 --- a/src/main/resources/web/assets/css/list-page.css +++ b/src/main/resources/web/assets/css/list-page.css @@ -185,6 +185,10 @@ See LICENSE and COMMERCIAL in the project root for license information. overflow: auto; } +.record-merge-table table > thead > tr > th { + border-bottom-color: #aaa; +} + .record-merge-table table th { min-width: 200px; } @@ -195,25 +199,41 @@ See LICENSE and COMMERCIAL in the project root for license information. } .record-merge-table table td.active { + border: 1px double #34a853; background-color: #f5f8fd; - background-color: #dee2e6; -} - -.record-merge-table table td.sysfield { - cursor: not-allowed; } .record-merge-table table td.active::after { font-family: 'Material Design Icons', serif; content: '\F012C'; position: absolute; - right: 7px; - top: 5px; + right: 6px; + top: 6px; color: #34a853; - font-size: 1.12rem; + font-size: 1rem; font-weight: bold; } +.record-merge-table table tbody tr:first-child td.active::before { + height: 1px; + line-height: 1; + font-size: 0; + content: ''; + position: absolute; + background-color: #34a853; + top: -1px; + left: 0; + width: 100%; +} + +.record-merge-table table td.sysfield { + cursor: not-allowed; +} + .record-merge-table table tr.bt2 { - border-top: 2px solid #dee2e6; + border-top: 2px solid #aaa; +} + +.record-merge-table table tr.bt2 label { + margin-top: 2px; } diff --git a/src/main/resources/web/assets/js/general/rb-datalist.common.js b/src/main/resources/web/assets/js/general/rb-datalist.common.js index 93c75abd7..41ead78df 100644 --- a/src/main/resources/web/assets/js/general/rb-datalist.common.js +++ b/src/main/resources/web/assets/js/general/rb-datalist.common.js @@ -1842,6 +1842,7 @@ CellRenders.addRender('TAG', function (v, s, k) { class RecordMerger extends RbModalHandler { constructor(props) { super(props) + this.state.keepMain = props.ids[0] } render() { @@ -1861,11 +1862,12 @@ class RecordMerger extends RbModalHandler { idData.map((item, idx) => { if (idx === 0) return null return ( - - {item[1]} + this.setState({ keepMain: item[0] })}> + {item[1]} + {this.state.keepMain === item[0] && {$L('主')}} ) })} @@ -1991,7 +1993,6 @@ class RecordMerger extends RbModalHandler { merged[field] = id || null } }) - console.log(merged) const details = [] $(this._$mergeDetails) @@ -1999,15 +2000,24 @@ class RecordMerger extends RbModalHandler { .each(function () { details.push($(this).val()) }) - const url = `/app/${this.props.entity}/record-merge/merge?ids=${this.props.ids.join(',')}&deleteAfter=${del || false}&mergeDetails=${details.join(',')}` + + let ids = this.props.ids + ids.remove(this.state.keepMain) + ids = [this.state.keepMain, ...ids] + + const url = `/app/${this.props.entity}/record-merge/merge?ids=${ids.join(',')}&deleteAfter=${del || false}&mergeDetails=${details.join(',')}` const $btn = $(this._$btn).find('.btn').button('loading') $.post(url, JSON.stringify(merged), (res) => { if (res.error_code === 0) { this.hide() RbHighbar.success($L('合并成功')) this.props.listRef.reload() + setTimeout(() => { - CellRenders.clickView({ id: res.data, entity: this.props.entity }) + window.RbViewModal.create({ id: res.data, entity: this.props.entity }) + if (window.RbListPage) { + location.hash = `!/View/${this.props.entity}/${res.data}` + } }, 500) } else { RbHighbar.error(res.error_msg) diff --git a/src/main/resources/web/assets/js/general/rb-forms.append.js b/src/main/resources/web/assets/js/general/rb-forms.append.js index df21e2e22..9b3298225 100644 --- a/src/main/resources/web/assets/js/general/rb-forms.append.js +++ b/src/main/resources/web/assets/js/general/rb-forms.append.js @@ -736,18 +736,13 @@ class RepeatedViewer extends RbModalHandler { return {o || {$L('无')}} })} - + ) } - - openView(id) { - if (window.RbViewModal) window.RbViewModal.create({ id: id, entity: this.props.entity }) - else window.open(`${rb.baseUrl}/app/entity/view?id=${id}`) - } } // -- LiteForm