Junjie
2026-04-11 814c4e8a608d4abfcef031826222f969bc61b8a0
src/main/webapp/static/js/basMap/basMap.js
@@ -499,7 +499,7 @@
    }
    function isSearchableField(field) {
        return !!field && field.kind !== 'image' && !field.textarea;
        return !!field && field.kind !== 'image' && !field.textarea && ['data', 'lastData', 'originData'].indexOf(field.field) === -1;
    }
    function isSortableField(field) {
@@ -556,7 +556,9 @@
    }
    function createDefaultVisibleColumnKeys() {
        return fieldMeta.map(function (field) {
        return fieldMeta.filter(function (field) {
            return ['data', 'lastData', 'originData'].indexOf(field.field) === -1;
        }).map(function (field) {
            return field.field;
        });
    }
@@ -842,6 +844,18 @@
                        mode: 'create',
                        submitting: false
                    },
                    payloadDialog: {
                        visible: false,
                        loading: false,
                        row: null,
                        data: {
                            id: null,
                            lev: '',
                            data: '',
                            lastData: '',
                            originData: ''
                        }
                    },
                    layoutTimer: null,
                    tableResizeHandler: null,
                    dialogForm: createFormDefaults(),
@@ -1092,16 +1106,82 @@
                    this.dialog.visible = true;
                    this.$nextTick(this.resetDialogState);
                },
                createEmptyPayloadData: function () {
                    return {
                        id: null,
                        lev: '',
                        data: '',
                        lastData: '',
                        originData: ''
                    };
                },
                openPayloadDialog: function (row) {
                    var self = this;
                    if (!row || isEmptyValue(row[self.primaryKeyField])) {
                        self.$message.warning('当前记录不存在');
                        return;
                    }
                    self.payloadDialog.visible = true;
                    self.payloadDialog.loading = true;
                    self.payloadDialog.row = row;
                    self.payloadDialog.data = self.createEmptyPayloadData();
                    $.ajax({
                        url: baseUrl + '/' + simpleEntityName + '/payload/' + encodeURIComponent(row[self.primaryKeyField]) + '/auth',
                        method: 'GET',
                        headers: self.authHeaders(),
                        success: function (res) {
                            self.payloadDialog.loading = false;
                            if (self.handleForbidden(res)) {
                                return;
                            }
                            if (!res || res.code !== 200) {
                                self.$message.error((res && res.msg) ? res.msg : '加载地图数据失败');
                                return;
                            }
                            self.payloadDialog.data = $.extend({}, self.createEmptyPayloadData(), res.data || {});
                        },
                        error: function () {
                            self.payloadDialog.loading = false;
                            self.$message.error('加载地图数据失败');
                        }
                    });
                },
                openEditDialog: function (row) {
                    var self = this;
                    if (!row || isEmptyValue(row[self.primaryKeyField])) {
                        self.$message.warning('当前记录不存在');
                        return;
                    }
                    self.dialog.mode = 'edit';
                    self.dialog.visible = true;
                    self.$nextTick(function () {
                        self.resetDialogState();
                        fillFormFromRow(row, self.dialogForm, self.dialogDisplay);
                        if (self.$refs.dialogForm) {
                            self.$refs.dialogForm.clearValidate();
                        }
                        self.dialog.submitting = true;
                        $.ajax({
                            url: baseUrl + '/' + simpleEntityName + '/' + encodeURIComponent(row[self.primaryKeyField]) + '/auth',
                            method: 'GET',
                            headers: self.authHeaders(),
                            success: function (res) {
                                self.dialog.submitting = false;
                                if (self.handleForbidden(res)) {
                                    return;
                                }
                                if (!res || res.code !== 200) {
                                    self.$message.error((res && res.msg) ? res.msg : '加载详情失败');
                                    self.dialog.visible = false;
                                    return;
                                }
                                fillFormFromRow(res.data || {}, self.dialogForm, self.dialogDisplay);
                                if (self.$refs.dialogForm) {
                                    self.$refs.dialogForm.clearValidate();
                                }
                            },
                            error: function () {
                                self.dialog.submitting = false;
                                self.dialog.visible = false;
                                self.$message.error('加载详情失败');
                            }
                        });
                    });
                },
                buildDialogPayload: function () {