From b6c698c8833836971184a0a9c2645a15f8174d37 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期四, 08 五月 2025 16:31:18 +0800
Subject: [PATCH] Merge branch 'master' into positec

---
 src/menu/components/table/base-table/options.jsx |  291 ++++++++++++++++++++++++++-------------------------------
 1 files changed, 134 insertions(+), 157 deletions(-)

diff --git a/src/menu/components/table/base-table/options.jsx b/src/menu/components/table/base-table/options.jsx
index c6caecc..f88acc1 100644
--- a/src/menu/components/table/base-table/options.jsx
+++ b/src/menu/components/table/base-table/options.jsx
@@ -1,59 +1,8 @@
 /**
  * @description Wrap琛ㄥ崟閰嶇疆淇℃伅
  */
-export default function (wrap, action = [], columns = []) {
-  let roleList = sessionStorage.getItem('sysRoles')
-  let appType = sessionStorage.getItem('appType')
-
-  if (roleList) {
-    try {
-      roleList = JSON.parse(roleList)
-    } catch (e) {
-      roleList = []
-    }
-  } else {
-    roleList = []
-  }
-
+export default function (wrap, action = [], columns = [], toolBtns = []) {
   const wrapForm = [
-    {
-      type: 'text',
-      field: 'title',
-      label: '鏍囬',
-      initval: wrap.title || '',
-      required: false
-    },
-    {
-      type: 'text',
-      field: 'name',
-      label: '缁勪欢鍚嶇О',
-      initval: wrap.name || '',
-      tooltip: '鐢ㄤ簬缁勪欢闂寸殑鍖哄垎銆�',
-      required: true
-    },
-    {
-      type: 'number',
-      field: 'width',
-      label: '瀹藉害',
-      initval: wrap.width || 24,
-      tooltip: '鏍呮牸甯冨眬锛屾瘡琛岀瓑鍒嗕负24鍒椼��',
-      min: 1,
-      max: 24,
-      precision: 0,
-      required: true
-    },
-    {
-      type: 'number',
-      field: 'height',
-      label: '楂樺害',
-      initval: wrap.height || '',
-      tooltip: '琛ㄦ牸楂樺害锛岀┖鍊兼椂楂樺害鑷�傚簲銆�',
-      min: 10,
-      max: 3000,
-      precision: 0,
-      required: false,
-      forbid: appType === 'mob'
-    },
     {
       type: 'radio',
       field: 'tableType',
@@ -71,6 +20,17 @@
     },
     {
       type: 'radio',
+      field: 'parity',
+      label: '濂囧伓寮傝壊',
+      initval: wrap.parity || 'false',
+      required: false,
+      options: [
+        {value: 'true', label: '鍚敤'},
+        {value: 'false', label: '绂佺敤'},
+      ]
+    },
+    {
+      type: 'radio',
       field: 'bordered',
       label: '杈规',
       initval: wrap.bordered || 'true',
@@ -82,26 +42,25 @@
     },
     {
       type: 'radio',
-      field: 'tableHeader',
-      label: '琛ㄥご',
-      initval: wrap.tableHeader || 'show',
+      field: 'actionfixed',
+      label: '鍥哄畾鎸夐挳',
+      initval: wrap.actionfixed !== 'true' ? 'false' : 'true',
       required: false,
       options: [
-        {value: 'show', label: '鏄剧ず'},
-        {value: 'hidden', label: '闅愯棌'},
+        {value: 'true', label: '鍚敤'},
+        {value: 'false', label: '绂佺敤'},
       ]
     },
     {
-      type: 'radio',
-      field: 'collapse',
-      label: '鍙敹璧�',
-      initval: wrap.collapse || 'false',
+      type: 'checkbox',
+      field: 'colfixed',
+      label: '鍥哄畾鍒�',
+      initval: wrap.colfixed || [],
       required: false,
       options: [
-        {value: 'true', label: '鏄�'},
-        {value: 'false', label: '鍚�'},
-      ],
-      forbid: appType === 'mob' || appType === 'pc'
+        {value: 'first', label: '棣栧垪'},
+        {value: 'last', label: '灏惧垪'},
+      ]
     },
     {
       type: 'radio',
@@ -119,40 +78,40 @@
     },
     {
       type: 'radio',
-      field: 'mode',
-      label: '妯″紡',
-      initval: wrap.mode || 'default',
+      field: 'searchSize',
+      label: '鎼滅储鏍峰紡',
+      initval: wrap.searchSize === 'middle' ? '' : wrap.searchSize || '',
       required: false,
       options: [
-        {value: 'default', label: '甯歌'},
-        {value: 'ghost', label: '閫忔槑'},
+        {value: '', label: '榛樿'},
+        {value: 'small', label: '灏忛棿璺�'},
+        {value: 'updown', label: '涓婁笅鎺掑垪'},
+      ],
+    },
+    {
+      type: 'radio',
+      field: 'tableMode',
+      label: '鍔犺浇妯″紡',
+      initval: wrap.tableMode || 'compatible',
+      tooltip: '浣跨敤鎬ラ�熸ā寮忔椂锛岃〃鏍间腑鐨勬爣璁般�佸弻鍑讳簨浠躲�佹牸寮忓寲銆佽鍚堝苟銆佸垪鍚堝苟銆佸墠缂�銆佸悗缂�銆佸瓧娈甸�忚绛夋晥鏋滃皢鏃犳晥锛屼笖鏁版嵁閮戒細浠ユ枃鏈牸寮忔樉绀恒��',
+      required: false,
+      options: [
+        {value: 'compatible', label: '鍏煎'},
+        {value: 'fast', label: '鎬ラ��'},
       ]
     },
     {
       type: 'radio',
-      field: 'selected',
-      label: '棣栬閫変腑',
-      initval: wrap.selected || 'false',
-      tooltip: '褰撴寜閽墽琛屽畬鎴愬苟杩斿洖涓婚敭鍊兼椂锛岄粯璁ら�変腑涓婚敭鍊煎搴旇銆�',
+      field: 'mask',
+      label: '閬僵',
+      initval: wrap.mask || 'show',
+      tooltip: '鏁版嵁鍔犺浇鏃讹紝鏄惁鏄剧ず鍔犺浇涓殑閬僵銆�',
       required: false,
       options: [
-        {value: 'false', label: '鏃�'},
-        {value: 'init', label: '鍒濆鍖�'},
-        {value: 'always', label: '鏁版嵁鍔犺浇'},
+        {value: 'show', label: '鏄剧ず'},
+        {value: 'hidden', label: '闅愯棌'},
       ]
     },
-    // {
-    //   type: 'radio',
-    //   field: 'show',
-    //   label: '鎼滅储鎸夐挳',
-    //   initval: wrap.show || 'true',
-    //   tooltip: '鎼滅储鏉′欢瀛樺湪鏃讹紝鍙�夋嫨鏄惁鏄剧ず鎼滅储鎸夐挳銆�',
-    //   required: false,
-    //   options: [
-    //     {value: 'true', label: '鏄剧ず'},
-    //     {value: 'false', label: '闅愯棌'},
-    //   ]
-    // },
     {
       type: 'color',
       field: 'borderColor',
@@ -161,36 +120,45 @@
       tooltip: '榛樿鍊� #e8e8e8銆�',
       required: false
     },
-    // {
-    //   type: 'color',
-    //   field: 'color',
-    //   label: '瀛椾綋棰滆壊',
-    //   initval: wrap.color || 'rgba(0, 0, 0, 0.65)',
-    //   tooltip: '榛樿鍊� rgba(0, 0, 0, 0.65)銆�',
-    //   required: false
-    // },
-    // {
-    //   type: 'number',
-    //   field: 'fontSize',
-    //   label: '瀛椾綋澶у皬',
-    //   initval: wrap.fontSize || 14,
-    //   min: 12,
-    //   max: 30,
-    //   precision: 0,
-    //   required: false
-    // },
-    // {
-    //   type: 'number',
-    //   field: 'advanceWidth',
-    //   label: '楂樼骇鎼滅储',
-    //   initval: wrap.advanceWidth || 1000,
-    //   tooltip: '楂樼骇鎼滅储寮圭獥鐨勫搴︼紝娉細褰撳搴﹀�煎皬浜�100鏃惰〃绀哄崰绐楀彛鐨勭櫨鍒嗘瘮锛屽ぇ浜�100鏃惰〃绀哄搴︾殑缁濆鍊笺��',
-    //   min: 10,
-    //   max: 3000,
-    //   precision: 0,
-    //   required: false,
-    //   forbid: appType === 'mob'
-    // },
+    {
+      type: 'radio',
+      field: 'vertical',
+      label: '鍨傜洿瀵归綈',
+      initval: wrap.vertical || 'middle',
+      tooltip: '鍗曞厓鏍肩殑鍨傜洿瀵归綈鏂瑰紡銆�',
+      required: false,
+      options: [
+        {value: 'top', label: '鍚戜笂'},
+        {value: 'middle', label: '灞呬腑'},
+        {value: 'bottom', label: '鍚戜笅'},
+      ]
+    },
+    {
+      type: 'select',
+      field: 'selected',
+      label: '鏁版嵁閫変腑',
+      initval: wrap.selected || 'false',
+      tooltip: '鍒濆鍖栵細鏁版嵁鍔犺浇鏃堕�変腑棣栬鏁版嵁锛屼粎鎵ц涓�娆°�傛暟鎹姞杞斤細姣忔鏁版嵁鍔犺浇鏃跺潎閫変腑棣栬锛堝綋鎸夐挳鎵ц瀹屾垚骞惰繑鍥炰富閿�兼椂锛岄粯璁ら�変腑涓婚敭鍊煎搴旇锛夈�傞�変腑鏍囪锛氳繑鍥炴暟鎹腑瀛樺湪 selected 瀛楁锛屼笖鍊间负 true 鐨勬暟鎹閫変腑銆傛湰鍦拌褰曪細鏁版嵁鍒锋柊鏃朵笂娆¤閫変腑鐨勮灏嗚嚜鍔ㄩ�変腑銆傛敞锛氬惎鐢ㄦ棤浜哄�煎畧鏃舵棤鏁堛��',
+      required: false,
+      options: [
+        {value: 'false', label: '鏃�'},
+        {value: 'init', label: '鍒濆鍖�'},
+        {value: 'always', label: '鏁版嵁鍔犺浇'},
+        {value: 'sign', label: '閫変腑鏍囪'},
+        {value: 'local', label: '鏈湴璁板綍'},
+      ],
+    },
+    {
+      type: 'number',
+      field: 'height',
+      label: '鏈�澶ч珮搴�',
+      initval: wrap.height || '',
+      tooltip: '琛ㄦ牸鍐呭鍖虹殑鏈�澶ч珮搴︼紙涓嶅寘鍚〃澶达級锛岀┖鍊兼椂楂樺害鑷�傚簲銆傛敞锛氬皬浜庣瓑浜�100澶т簬0鏃朵负楂樺害鐨勭櫨鍒嗘瘮锛屽皬浜�0鏃朵负绐楀彛楂樺害鍑忓幓姝ゅ�笺��',
+      min: -1000,
+      max: 3000,
+      precision: 0,
+      required: false,
+    },
     {
       type: 'select',
       field: 'doubleClick',
@@ -199,8 +167,27 @@
       tooltip: '鍙屽嚮琛ㄦ牸涓锛岃Е鍙戠殑鎸夐挳銆�',
       required: false,
       allowClear: true,
-      options: action.map(item => ({value: item.uuid, label: item.label})),
-      forbid: appType === 'mob'
+      options: [...toolBtns, ...action].map(item => ({value: item.uuid, label: item.label})),
+    },
+    {
+      type: 'select',
+      field: 'autoExec',
+      label: '鑷姩鎵ц',
+      initval: wrap.autoExec || '',
+      tooltip: '鍒濆鍖栬嚜鍔ㄦ墽琛屾寜閽��',
+      required: false,
+      options: toolBtns.map(item => ({value: item.uuid, label: item.label}))
+    },
+    {
+      type: 'select',
+      field: 'tipField',
+      label: '淇℃伅鎻愮ず',
+      initval: wrap.tipField || '',
+      tooltip: '榧犳爣鎮诞浜庤涓婃柟鏃剁殑鎻愮ず淇℃伅銆�',
+      required: false,
+      allowClear: true,
+      joint: true,
+      options: columns
     },
     {
       type: 'select',
@@ -210,6 +197,7 @@
       tooltip: '鐢ㄤ簬鎺у埗琛屾暟鎹槸鍚﹀彲閫夋嫨銆�',
       required: false,
       allowClear: true,
+      joint: true,
       options: columns,
       controlFields: [
         {field: 'controlVal', notNull: true},
@@ -224,49 +212,38 @@
       required: false
     },
     {
-      type: 'radio',
-      field: 'empty',
-      label: '绌哄�奸殣钘�',
-      initval: wrap.empty || 'show',
-      tooltip: '褰撴煡璇㈡暟鎹负绌烘椂锛岄殣钘忚缁勪欢銆�',
-      required: false,
-      options: [
-        {value: 'show', label: '鍚�'},
-        {value: 'hidden', label: '鏄�'},
-      ],
+      type: 'number',
+      field: 'btnlimit',
+      label: '鎸夐挳闄愬埗',
+      initval: wrap.btnlimit || '',
+      tooltip: '鎸夐挳鏁伴噺闄愬埗锛岃秴鍑虹殑鎸夐挳浼氬湪鏇村涓笅鎷夋樉绀猴紝娉細鏇村涓殑鎸夐挳涓嶈缁戝畾鍙屽嚮浜嬩欢銆�',
+      min: 3,
+      max: 3000,
+      precision: 0,
+      required: false
+    },
+    {
+      type: 'number',
+      field: 'maxPageSize',
+      label: '姣忛〉鏈�澶ф暟',
+      initval: wrap.maxPageSize || '',
+      tooltip: '鍒嗛〉鏃舵瘡椤靛彲鏄剧ず鐨勬渶澶ф暟閲忋��',
+      min: 10,
+      max: 500,
+      precision: 0,
+      required: false
     },
     {
       type: 'radio',
-      field: 'supKey',
-      label: '涓婄骇涓婚敭',
-      initval: wrap.supKey || 'true',
-      tooltip: '褰撹缃笂绾х粍浠舵椂锛屼笂绾т富閿�间负绌烘槸鍚﹁繘琛屾暟鎹煡璇€��',
-      required: false,
-      options: [
-        {value: 'true', label: '楠岃瘉'},
-        {value: 'false', label: '蹇界暐'},
-      ],
-    },
-    {
-      type: 'radio',
-      field: 'permission',
-      label: '鏉冮檺楠岃瘉',
-      initval: wrap.permission || 'false',
+      field: 'cacheSearch',
+      label: '鎼滅储缂撳瓨',
+      initval: wrap.cacheSearch || 'false',
+      tooltip: '鍚敤鎼滅储鏉′欢缂撳瓨鍚庯紝鍦ㄨ彍鍗曞埛鏂版椂鎼滅储鏉′欢涓嶅彉銆�',
       required: false,
       options: [
         {value: 'true', label: '鍚敤'},
         {value: 'false', label: '绂佺敤'},
-      ],
-      forbid: !appType
-    },
-    {
-      type: 'multiselect',
-      field: 'blacklist',
-      label: '榛戝悕鍗�',
-      initval: wrap.blacklist || [],
-      required: false,
-      options: roleList,
-      forbid: !!appType
+      ]
     },
   ]
 

--
Gitblit v1.8.0