diff --git a/src/api/TrackPull/typings.d.ts b/src/api/TrackPull/typings.d.ts index 31a439f..4bb07a0 100644 --- a/src/api/TrackPull/typings.d.ts +++ b/src/api/TrackPull/typings.d.ts @@ -195,7 +195,7 @@ declare namespace API { /** 客户 */ customer?: string; /** 拉取单号类型 */ - orderType?: TrackOrderType; + orderNoType?: TrackOrderType; /** 优先级 */ priority?: number; /** 服务商拉取频率(分钟) */ @@ -213,7 +213,7 @@ declare namespace API { /** 客户 */ customer?: string; /** 拉取单号类型 */ - orderType?: TrackOrderType; + orderNoType?: TrackOrderType; /** 优先级 */ priority?: number; /** 服务商拉取频率(分钟) */ @@ -232,7 +232,7 @@ declare namespace API { /** 客户 */ customer?: string; /** 拉取单号类型 */ - orderType?: TrackOrderType; + orderNoType?: TrackOrderType; /** 优先级 */ priority?: number; /** 服务商拉取频率(分钟) */ diff --git a/src/api/TrackPush/typings.d.ts b/src/api/TrackPush/typings.d.ts index e550554..2d3f057 100644 --- a/src/api/TrackPush/typings.d.ts +++ b/src/api/TrackPush/typings.d.ts @@ -43,6 +43,8 @@ declare namespace API { type EditTrackPushContentInput = { /** 扩展字段参数值 */ expandFieldsValue?: string; + /** 自定义列键值对,JSON 字符串,如 "{\"trackingNumber\":\"string\",\"trackNo\":\"string\"}" */ + extraConfig?: string; id?: number; options?: OptionTypeNoNull; orderNoType?: TrackOrderType; @@ -154,6 +156,8 @@ declare namespace API { }; type GetTrackPushContentPageOutputVO = { + /** 自定义列键值对 JSON 字符串 */ + extraConfig?: string; /** 轨迹内容代码 */ code?: string; /** 轨迹内容id */ diff --git a/src/components/CustomLeftMenu/index.vue b/src/components/CustomLeftMenu/index.vue index c0303e0..eb13c2b 100644 --- a/src/components/CustomLeftMenu/index.vue +++ b/src/components/CustomLeftMenu/index.vue @@ -607,7 +607,7 @@ .map-count { font-size: 12px; font-weight: 600; - color: #87f6ff; + color: #3f9370; padding: 0; min-width: auto; text-align: left; @@ -616,7 +616,7 @@ color: rgba(255, 255, 255, 0.4); } .count-num { - color: #87f6ff; + color: #3f9370; } } diff --git a/src/components/CustomList/index.vue b/src/components/CustomList/index.vue index f95c56a..8075988 100644 --- a/src/components/CustomList/index.vue +++ b/src/components/CustomList/index.vue @@ -20,6 +20,8 @@ sectionTitle?: string; /** 新增列输入框占位 */ addPlaceholder?: string; + /** 自定义表头弹窗内的提示文案 */ + columnModalTip?: string; /** 左侧固定列配置 */ fixedLeftColumns: TableColumnConfig[]; /** 右侧固定列配置(如操作列) */ @@ -38,6 +40,7 @@ { sectionTitle: '自定义列管理', addPlaceholder: '输入列名后点击加号添加', + columnModalTip: '', tableHeight: 600, showCheckbox: false, columnsKey: 'customList', @@ -188,6 +191,7 @@ title: col.title, minWidth: props.customColumnMinWidth, width: undefined, + align: 'left', slots: { default: col.field }, })); const right = props.fixedRightColumns || []; @@ -270,7 +274,7 @@ +
{{ columnModalTip }}
@@ -416,6 +421,16 @@ min-height: 0; } + .column-modal-tip { + margin-bottom: 12px; + padding: 8px 12px; + font-size: 12px; + color: #86909c; + background-color: #f7f8fa; + border-radius: 6px; + line-height: 1.5; + } + .column-management-section { padding: 8px 16px; background-color: #f8f9fa; @@ -435,6 +450,8 @@ display: flex; flex-wrap: wrap; gap: 8px; + max-height: 640px; + overflow-y: auto; .column-item { display: flex; diff --git a/src/components/InterfaceDetail/index.vue b/src/components/InterfaceDetail/index.vue index 800e1e6..80b0b1f 100644 --- a/src/components/InterfaceDetail/index.vue +++ b/src/components/InterfaceDetail/index.vue @@ -626,9 +626,39 @@ } } + // 位置字典(用于固定配置-位置列展示) + const fieldPositionDict = ref<{ key: number | string; value: string }[]>([]); + async function loadFieldPositionDict() { + try { + const res: any = await getDictionaryGetList({ type: 'FieldPosition' }); + fieldPositionDict.value = res?.data || res || []; + } catch { + fieldPositionDict.value = []; + } + } + function formatFieldPositionsDisplay(row: any): string { + const list = row?.fieldPositionList; + if (list && Array.isArray(list) && list.length > 0) { + const labels = list.map((k: number | string) => { + const item = fieldPositionDict.value.find((d) => String(d.key) === String(k)); + return item?.value ?? k; + }); + return labels.filter(Boolean).join(',') || '-'; + } + const fp = row?.fieldPositions; + if (Array.isArray(fp) && fp.length > 0) { + return fp.map((k: number | string) => { + const item = fieldPositionDict.value.find((d) => String(d.key) === String(k)); + return item?.value ?? k; + }).filter(Boolean).join(',') || '-'; + } + return typeof fp === 'string' ? fp : '-'; + } + // 初始化时加载参数类型列表和参数占位符列表 loadParameterTypeList(); loadParameterPlaceholderList(); + loadFieldPositionDict(); // 固定配置:加载 async function loadFixedParams() { @@ -1562,7 +1592,7 @@