codeMan 2 vuotta sitten
vanhempi
commit
747244919c

+ 2 - 2
node_modules/.vite/deps/@ant-design_icons-vue.js

@@ -57,10 +57,10 @@ import {
   svgBaseProps,
   useInsertStyles,
   warning
-} from "./chunk-BOZTDRRV.js";
+} from "./chunk-5XDXAD5U.js";
 import {
   createVNode
-} from "./chunk-3NMN3MUW.js";
+} from "./chunk-IDMHQ7FM.js";
 import "./chunk-4EOJPDL2.js";
 
 // node_modules/@ant-design/icons-svg/es/asn/AccountBookFilled.js

Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
node_modules/.vite/deps/@ant-design_icons-vue.js.map


+ 34 - 34
node_modules/.vite/deps/_metadata.json

@@ -1,107 +1,107 @@
 {
-  "hash": "4374df86",
-  "browserHash": "569aaaec",
+  "hash": "0d9d205c",
+  "browserHash": "81d05683",
   "optimized": {
     "@ant-design/icons-vue": {
       "src": "../../@ant-design/icons-vue/es/index.js",
       "file": "@ant-design_icons-vue.js",
-      "fileHash": "f1f31ea5",
+      "fileHash": "8e02ca6b",
       "needsInterop": false
     },
     "ant-design-vue": {
       "src": "../../ant-design-vue/es/index.js",
       "file": "ant-design-vue.js",
-      "fileHash": "bfd8e4fa",
+      "fileHash": "829568bd",
       "needsInterop": false
     },
     "ant-design-vue/es/locale/zh_CN": {
       "src": "../../ant-design-vue/es/locale/zh_CN.js",
       "file": "ant-design-vue_es_locale_zh_CN.js",
-      "fileHash": "c30f749f",
+      "fileHash": "a361d9d2",
       "needsInterop": false
     },
     "axios": {
       "src": "../../axios/index.js",
       "file": "axios.js",
-      "fileHash": "3abc17ec",
+      "fileHash": "7514f3e7",
       "needsInterop": false
     },
     "dayjs": {
       "src": "../../dayjs/dayjs.min.js",
       "file": "dayjs.js",
-      "fileHash": "b2b743af",
+      "fileHash": "e5d604b4",
       "needsInterop": true
     },
     "dayjs/locale/zh-cn": {
       "src": "../../dayjs/locale/zh-cn.js",
       "file": "dayjs_locale_zh-cn.js",
-      "fileHash": "5cd59bb2",
+      "fileHash": "0ba0e49e",
       "needsInterop": true
     },
     "js-md5": {
       "src": "../../js-md5/src/md5.js",
       "file": "js-md5.js",
-      "fileHash": "bd43d209",
+      "fileHash": "5f92d7e8",
+      "needsInterop": true
+    },
+    "less": {
+      "src": "../../less/dist/less.js",
+      "file": "less.js",
+      "fileHash": "1b1eb850",
       "needsInterop": true
     },
     "mathjs": {
       "src": "../../mathjs/lib/esm/index.js",
       "file": "mathjs.js",
-      "fileHash": "156f6ef5",
+      "fileHash": "a09badc9",
       "needsInterop": false
     },
     "pinia": {
       "src": "../../pinia/dist/pinia.mjs",
       "file": "pinia.js",
-      "fileHash": "0eb43ba2",
+      "fileHash": "24af44a4",
       "needsInterop": false
     },
     "pinia-plugin-persist": {
       "src": "../../pinia-plugin-persist/dist/pinia-persist.es.js",
       "file": "pinia-plugin-persist.js",
-      "fileHash": "6a023e4e",
+      "fileHash": "029824d5",
       "needsInterop": false
     },
     "vue": {
       "src": "../../vue/dist/vue.runtime.esm-bundler.js",
       "file": "vue.js",
-      "fileHash": "41933eaa",
+      "fileHash": "7bb21984",
       "needsInterop": false
     },
     "vue-router": {
       "src": "../../vue-router/dist/vue-router.mjs",
       "file": "vue-router.js",
-      "fileHash": "346bff36",
+      "fileHash": "6e6e5f1d",
       "needsInterop": false
-    },
-    "less": {
-      "src": "../../less/dist/less.js",
-      "file": "less.js",
-      "fileHash": "966ee37d",
-      "needsInterop": true
     }
   },
   "chunks": {
-    "chunk-5OBJFL24": {
-      "file": "chunk-5OBJFL24.js"
+    "chunk-TQOCY6B2": {
+      "file": "chunk-TQOCY6B2.js"
     },
-    "chunk-BOZTDRRV": {
-      "file": "chunk-BOZTDRRV.js"
+    "chunk-VCGGRANA": {
+      "file": "chunk-VCGGRANA.js"
     },
-    "chunk-3NMN3MUW": {
-      "file": "chunk-3NMN3MUW.js"
+    "chunk-5XDXAD5U": {
+      "file": "chunk-5XDXAD5U.js"
     },
-    "chunk-BCNMYODF": {
-      "file": "chunk-BCNMYODF.js"
+    "chunk-IDMHQ7FM": {
+      "file": "chunk-IDMHQ7FM.js"
     },
-    "chunk-XMOLR7NX": {
-      "file": "chunk-XMOLR7NX.js"
+    "chunk-UVFXKAFZ": {
+      "file": "chunk-UVFXKAFZ.js"
     },
-    "chunk-KBUAZBQ3": {
-      "file": "chunk-KBUAZBQ3.js"
+    "chunk-WT3GSKHH": {
+      "file": "chunk-WT3GSKHH.js"
     },
-    "chunk-WNF2IDJY": {
-      "file": "chunk-WNF2IDJY.js"
+    "chunk-XMOLR7NX": {
+      "file": "chunk-XMOLR7NX.js"
     },
     "chunk-4EOJPDL2": {
       "file": "chunk-4EOJPDL2.js"

+ 10 - 10
node_modules/.vite/deps/ant-design-vue.js

@@ -1,3 +1,6 @@
+import {
+  _extends
+} from "./chunk-VCGGRANA.js";
 import {
   ArrowLeftOutlined_default,
   ArrowRightOutlined_default,
@@ -54,7 +57,7 @@ import {
   ZoomOutOutlined_default,
   generate,
   presetPrimaryColors
-} from "./chunk-BOZTDRRV.js";
+} from "./chunk-5XDXAD5U.js";
 import {
   Comment,
   Fragment,
@@ -101,22 +104,19 @@ import {
   watchEffect,
   withDirectives,
   withModifiers
-} from "./chunk-3NMN3MUW.js";
+} from "./chunk-IDMHQ7FM.js";
 import {
   _objectSpread2,
   zh_CN_default
-} from "./chunk-BCNMYODF.js";
-import {
-  require_dayjs_min
-} from "./chunk-XMOLR7NX.js";
-import {
-  _extends
-} from "./chunk-KBUAZBQ3.js";
+} from "./chunk-UVFXKAFZ.js";
 import {
   _defineProperty,
   _toPropertyKey,
   _typeof
-} from "./chunk-WNF2IDJY.js";
+} from "./chunk-WT3GSKHH.js";
+import {
+  require_dayjs_min
+} from "./chunk-XMOLR7NX.js";
 import {
   __commonJS,
   __export,

Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
node_modules/.vite/deps/ant-design-vue.js.map


+ 2 - 2
node_modules/.vite/deps/ant-design-vue_es_locale_zh_CN.js

@@ -1,8 +1,8 @@
 import {
   _objectSpread2,
   zh_CN_default
-} from "./chunk-BCNMYODF.js";
-import "./chunk-WNF2IDJY.js";
+} from "./chunk-UVFXKAFZ.js";
+import "./chunk-WT3GSKHH.js";
 import "./chunk-4EOJPDL2.js";
 
 // node_modules/ant-design-vue/es/vc-picker/locale/zh_CN.js

Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
node_modules/.vite/deps/ant-design-vue_es_locale_zh_CN.js.map


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
node_modules/.vite/deps/axios.js.map


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
node_modules/.vite/deps/js-md5.js.map


+ 2 - 2
node_modules/.vite/deps/mathjs.js

@@ -1,9 +1,9 @@
 import {
   _extends
-} from "./chunk-KBUAZBQ3.js";
+} from "./chunk-VCGGRANA.js";
 import {
   _defineProperty
-} from "./chunk-WNF2IDJY.js";
+} from "./chunk-WT3GSKHH.js";
 import {
   __commonJS,
   __export,

Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
node_modules/.vite/deps/mathjs.js.map


+ 1 - 1
node_modules/.vite/deps/pinia-plugin-persist.js.map

@@ -1,7 +1,7 @@
 {
   "version": 3,
   "sources": ["../../pinia-plugin-persist/dist/pinia-persist.es.js"],
-  "sourcesContent": ["const updateStorage = (strategy, store) => {\n  const storage = strategy.storage || sessionStorage;\n  const storeKey = strategy.key || store.$id;\n  if (strategy.paths) {\n    const partialState = strategy.paths.reduce((finalObj, key) => {\n      finalObj[key] = store.$state[key];\n      return finalObj;\n    }, {});\n    storage.setItem(storeKey, JSON.stringify(partialState));\n  } else {\n    storage.setItem(storeKey, JSON.stringify(store.$state));\n  }\n};\nvar index = ({ options, store }) => {\n  var _a, _b, _c, _d;\n  if ((_a = options.persist) == null ? void 0 : _a.enabled) {\n    const defaultStrat = [{\n      key: store.$id,\n      storage: sessionStorage\n    }];\n    const strategies = ((_c = (_b = options.persist) == null ? void 0 : _b.strategies) == null ? void 0 : _c.length) ? (_d = options.persist) == null ? void 0 : _d.strategies : defaultStrat;\n    strategies.forEach((strategy) => {\n      const storage = strategy.storage || sessionStorage;\n      const storeKey = strategy.key || store.$id;\n      const storageResult = storage.getItem(storeKey);\n      if (storageResult) {\n        store.$patch(JSON.parse(storageResult));\n        updateStorage(strategy, store);\n      }\n    });\n    store.$subscribe(() => {\n      strategies.forEach((strategy) => {\n        updateStorage(strategy, store);\n      });\n    });\n  }\n};\nexport { index as default, updateStorage };\n"],
+  "sourcesContent": ["const updateStorage = (strategy, store) => {\r\n  const storage = strategy.storage || sessionStorage;\r\n  const storeKey = strategy.key || store.$id;\r\n  if (strategy.paths) {\r\n    const partialState = strategy.paths.reduce((finalObj, key) => {\r\n      finalObj[key] = store.$state[key];\r\n      return finalObj;\r\n    }, {});\r\n    storage.setItem(storeKey, JSON.stringify(partialState));\r\n  } else {\r\n    storage.setItem(storeKey, JSON.stringify(store.$state));\r\n  }\r\n};\r\nvar index = ({ options, store }) => {\r\n  var _a, _b, _c, _d;\r\n  if ((_a = options.persist) == null ? void 0 : _a.enabled) {\r\n    const defaultStrat = [{\r\n      key: store.$id,\r\n      storage: sessionStorage\r\n    }];\r\n    const strategies = ((_c = (_b = options.persist) == null ? void 0 : _b.strategies) == null ? void 0 : _c.length) ? (_d = options.persist) == null ? void 0 : _d.strategies : defaultStrat;\r\n    strategies.forEach((strategy) => {\r\n      const storage = strategy.storage || sessionStorage;\r\n      const storeKey = strategy.key || store.$id;\r\n      const storageResult = storage.getItem(storeKey);\r\n      if (storageResult) {\r\n        store.$patch(JSON.parse(storageResult));\r\n        updateStorage(strategy, store);\r\n      }\r\n    });\r\n    store.$subscribe(() => {\r\n      strategies.forEach((strategy) => {\r\n        updateStorage(strategy, store);\r\n      });\r\n    });\r\n  }\r\n};\r\nexport { index as default, updateStorage };\r\n"],
   "mappings": ";;;AAAA,IAAM,gBAAgB,CAAC,UAAU,UAAU;AACzC,QAAM,UAAU,SAAS,WAAW;AACpC,QAAM,WAAW,SAAS,OAAO,MAAM;AACvC,MAAI,SAAS,OAAO;AAClB,UAAM,eAAe,SAAS,MAAM,OAAO,CAAC,UAAU,QAAQ;AAC5D,eAAS,GAAG,IAAI,MAAM,OAAO,GAAG;AAChC,aAAO;AAAA,IACT,GAAG,CAAC,CAAC;AACL,YAAQ,QAAQ,UAAU,KAAK,UAAU,YAAY,CAAC;AAAA,EACxD,OAAO;AACL,YAAQ,QAAQ,UAAU,KAAK,UAAU,MAAM,MAAM,CAAC;AAAA,EACxD;AACF;AACA,IAAI,QAAQ,CAAC,EAAE,SAAS,MAAM,MAAM;AAClC,MAAI,IAAI,IAAI,IAAI;AAChB,OAAK,KAAK,QAAQ,YAAY,OAAO,SAAS,GAAG,SAAS;AACxD,UAAM,eAAe,CAAC;AAAA,MACpB,KAAK,MAAM;AAAA,MACX,SAAS;AAAA,IACX,CAAC;AACD,UAAM,eAAe,MAAM,KAAK,QAAQ,YAAY,OAAO,SAAS,GAAG,eAAe,OAAO,SAAS,GAAG,WAAW,KAAK,QAAQ,YAAY,OAAO,SAAS,GAAG,aAAa;AAC7K,eAAW,QAAQ,CAAC,aAAa;AAC/B,YAAM,UAAU,SAAS,WAAW;AACpC,YAAM,WAAW,SAAS,OAAO,MAAM;AACvC,YAAM,gBAAgB,QAAQ,QAAQ,QAAQ;AAC9C,UAAI,eAAe;AACjB,cAAM,OAAO,KAAK,MAAM,aAAa,CAAC;AACtC,sBAAc,UAAU,KAAK;AAAA,MAC/B;AAAA,IACF,CAAC;AACD,UAAM,WAAW,MAAM;AACrB,iBAAW,QAAQ,CAAC,aAAa;AAC/B,sBAAc,UAAU,KAAK;AAAA,MAC/B,CAAC;AAAA,IACH,CAAC;AAAA,EACH;AACF;",
   "names": []
 }

+ 2 - 2
node_modules/.vite/deps/pinia.js

@@ -1,6 +1,6 @@
 import {
   setupDevtoolsPlugin
-} from "./chunk-5OBJFL24.js";
+} from "./chunk-TQOCY6B2.js";
 import {
   computed,
   effectScope,
@@ -19,7 +19,7 @@ import {
   toRefs,
   unref,
   watch
-} from "./chunk-3NMN3MUW.js";
+} from "./chunk-IDMHQ7FM.js";
 import "./chunk-4EOJPDL2.js";
 
 // node_modules/pinia/node_modules/vue-demi/lib/index.mjs

+ 2 - 2
node_modules/.vite/deps/vue-router.js

@@ -1,6 +1,6 @@
 import {
   setupDevtoolsPlugin
-} from "./chunk-5OBJFL24.js";
+} from "./chunk-TQOCY6B2.js";
 import {
   computed,
   defineComponent,
@@ -18,7 +18,7 @@ import {
   unref,
   watch,
   watchEffect
-} from "./chunk-3NMN3MUW.js";
+} from "./chunk-IDMHQ7FM.js";
 import "./chunk-4EOJPDL2.js";
 
 // node_modules/vue-router/dist/vue-router.mjs

+ 1 - 1
node_modules/.vite/deps/vue.js

@@ -145,7 +145,7 @@ import {
   withMemo,
   withModifiers,
   withScopeId
-} from "./chunk-3NMN3MUW.js";
+} from "./chunk-IDMHQ7FM.js";
 import "./chunk-4EOJPDL2.js";
 export {
   BaseTransition,

+ 2 - 2
src/router/modelNormal.js

@@ -61,10 +61,10 @@ const moduleNormal = [
   },
   {
     path: '/vacation',
-    name: 'vacationmag',
+    name: 'vacation',
     meta: {
       title: '节假日管理',
-      name: 'vacationmag',
+      name: 'vacation',
       keepAlive:false
     },
     component: () => import(/* webpackChunkName: "about" */ '@/system/moduleNormal/systemSet/vacationMag/index.vue')

+ 9 - 2
src/system/moduleNormal/systemSet/systemRemind/index.vue

@@ -1,19 +1,26 @@
 <template>
   <listTemp ref="list" keyRouteName="accountno" :param="param" :tableName="'systemRemindTable'" :searchType="searchType">
-    <template #operation>
-      <!-- <add @onSuccess="onSuccess"></add> -->
+    <template #tb_cell="{data}">
+      <template v-if="data.column.dataIndex == 'operation'">
+        <Edit :data="data.record" @onSuccess="onSuccess"></Edit>
+      </template>
     </template>
   </listTemp>
 </template>
 
 <script setup>
   import listTemp from '@/components/listTemplate/index.vue'
+  import Edit from './modules/Edit.vue'
   import {ref, onMounted} from 'vue'
 
   let searchType = ref([
     {label:'搜索',key:'condition',type:'input'}
   ])
   let param = ref({id:20221220153101,content:{pageNumber:1,pageSize:20,where:{condition:''}}})
+  let list = ref()
+  let onSuccess = () => {
+    list.value.tableData()
+  }
 </script>
 
 <style  scoped>

+ 160 - 0
src/system/moduleNormal/systemSet/systemRemind/modules/Edit.vue

@@ -0,0 +1,160 @@
+<template>
+  <a-button type="link" @click="editBtn" :disabled="!utils.hasPermission('update')">编 辑</a-button>
+  <a-drawer
+    v-model:visible="visible"
+    class="custom-class"
+    title="编辑系统提醒"
+    placement="right"
+    width="900"
+    :closable="false"
+    @close="visible = false"
+  >
+    <a-form ref="formRef" :model="form" size="small" layout="vertical" mode="multiple">
+      <a-row :gutter="16">
+        <a-col :span="12">
+          <a-form-item  label="提醒名称" name="remindname" :rules="[{ required: true, message: '请输入提醒名称' }]">
+            <a-input v-model:value="form.remindname" placeholder="请输入提醒名称"></a-input>
+          </a-form-item>
+        </a-col>
+        <a-col :span="12">
+          <a-form-item  label="提醒标题" name="remindtitle" :rules="[{ required: true, message: '请输入提醒标题' }]">
+            <a-input v-model:value="form.remindtitle" placeholder="请输入提醒标题"></a-input>
+          </a-form-item>
+        </a-col>
+        <a-col :span="12">
+          <a-form-item  label="提醒方式" name="remindmode" :rules="[{ required: true, message: '请输入提醒名称' }]">
+            <a-select
+              v-model:value="form.remindmode"
+              mode="multiple"
+            >
+              <a-select-option value="短信" label="短信"></a-select-option>
+              <a-select-option value="邮件" label="邮件"></a-select-option>
+              <a-select-option value="弹框" label="弹框"></a-select-option>
+            </a-select>
+          </a-form-item>
+        </a-col>
+        <a-col :span="24">
+          <a-form-item  label="提醒内容" name="content" :rules="[{ required: true, message: '请输入提醒内容' }]">
+            <a-input v-model:value="form.content" placeholder="请输入提醒内容"></a-input>
+          </a-form-item>
+        </a-col>
+        <a-col :span="24">
+          <a-form-item  label="备注说明" name="remarks">
+            <a-input v-model:value="form.remarks" placeholder="请输入备注说明"></a-input>
+          </a-form-item>
+        </a-col>
+        <a-col :span="24">
+          <a-form-item  label="角色权限" name="isrole">
+            <a-checkbox v-model:checked="form.isrole" :true-label="1" :false-label="0"></a-checkbox>
+          </a-form-item>
+        </a-col>
+        <a-col :span="24" v-if="form.isrole">
+          <a-form-item  label="角色选择" name="rolename">
+            <selectRole ref="Role" @selectRoles="selectRoles">
+              <template v-slot:input>
+                <a-input-search
+                  v-model:value="form.rolename"
+                  enter-button="添加"
+                  size="large"
+                  readonly
+                  @search="$refs.Role.modeVisible=true"
+                />
+              </template>
+            </selectRole>
+          </a-form-item>
+        </a-col>
+        <a-col :span="24">
+          <a-form-item  label="人员权限" name="isuser">
+            <a-checkbox v-model:checked="form.isuser" :true-label="1" :false-label="0"></a-checkbox>
+          </a-form-item>
+        </a-col>
+        <a-col :span="24" v-if="form.isuser">
+          <a-form-item  label="人员选择" name="username">
+            <selectPeople ref="People" @selectPeople="selectPeoples">
+              <template v-slot:input>
+                <a-input-search
+                  v-model:value="form.username"
+                  enter-button="添加"
+                  size="large"
+                  readonly
+                  @search="$refs.People.modeVisible=true"
+                />
+              </template>
+            </selectPeople>
+          </a-form-item>
+        </a-col>
+      </a-row>
+
+    </a-form>
+    <template #extra>
+      <a-space>
+        <a-button @click="visible=false">关闭</a-button>
+        <a-button type="primary" @click="onSubmit">保存</a-button>
+      </a-space>
+    </template>
+  </a-drawer>
+</template>
+
+<script setup>
+import selectRole from './selectRole.vue'
+import selectPeople from './selectPeople.vue'
+import {ref,defineProps,defineEmits} from 'vue'
+import Api from '@/api/api'
+import utils from '@/utils/utils'
+let props = defineProps({
+  data: Object
+})
+let emit = defineEmits(['onSuccess'])
+let visible = ref(false)
+let form = ref({
+  sys_remind_configid:0,
+  remindtitle:'',
+  remindmode:[],
+  content:'',
+  isrole:1,
+  roleids:[],
+  rolename:'',
+  isuser:1,
+  userids:[],
+  username:'',
+  issql:1,
+  sqlstr:''
+})
+let formRef = ref()
+
+let editBtn = () => {
+  visible.value = true
+  form.value = Object.assign({},form.value,props.data)
+  form.value.rolename = Object.values(form.value.rolemsg).join(',')
+  form.value.username = Object.values(form.value.usermsg).join(',')
+}
+
+let selectRoles = (data) => {
+  form.value.rolename = data.map(item => item.rolename).join(',')
+  form.value.roleids = data.map(item => item.roleid)
+  console.log('触发',form.value);
+}
+
+let selectPeoples = (data) => {
+  form.value.username = data.map(item => item.name).join(',')
+  form.value.userids = data.map(item => item.userid)
+}
+
+let onSubmit = async () => {
+  let isCheck = await formRef.value.validateFields()
+  if (!isCheck) return
+  let res = await Api.requested({
+    id:20221220153201,
+    content: form.value
+  })
+  utils.message(res,'编辑成功',()=>{
+    visible.value = false
+    emit('onSuccess')
+  })
+}
+
+</script>
+
+<style scoped>
+
+</style>

+ 53 - 0
src/system/moduleNormal/systemSet/systemRemind/modules/selectPeople.vue

@@ -0,0 +1,53 @@
+<template>
+  <a-modal
+    v-model:visible="modeVisible"
+    class="custom-class"
+    title="选择人员"
+    placement="right"
+    width="1000px"
+    :closable="false"
+    @close="visible=false"
+    @ok="submit">
+    <normalTable rowKey="optiontypemxid" ref="list" size="small" :param="param" :columns="utils.TBLayout('staffTable')" @onSelect="onSelect">
+      <template #tb_cell="{data}">
+        {{ data.record[data.column.dataIndex] }}
+      </template>
+    </normalTable>
+  </a-modal>
+  <slot name="input"></slot>
+</template>
+
+<script setup>
+import {ref, defineProps, defineEmits} from 'vue'
+import utils from '@/utils/utils'
+import normalTable from '@/template/normalTable/index.vue'
+let modeVisible = ref(false)
+let param = ref({
+  "id": 20221031141102,
+  "content": {
+    "pageSize":20,
+    "pageNumber":1,
+    "where": {
+      "condition": "",
+    }
+  }
+})
+let emit = defineEmits(['selectPeople'])
+let result = ref('')
+let submit = () => {
+  emit('selectPeople',result.value)
+  modeVisible.value = false
+}
+let onSelect = (data) => {
+  console.log(data);
+  result.value = data
+}
+defineExpose({
+  modeVisible,
+})
+
+</script>
+
+<style scoped>
+
+</style>

+ 53 - 0
src/system/moduleNormal/systemSet/systemRemind/modules/selectRole.vue

@@ -0,0 +1,53 @@
+<template>
+  <a-modal
+    v-model:visible="modeVisible"
+    class="custom-class"
+    title="选择角色"
+    placement="right"
+    width="1000px"
+    :closable="false"
+    @close="visible=false"
+    @ok="submit">
+    <normalTable rowKey="roleid" ref="list" size="small" :param="param" :columns="utils.TBLayout('roleTable')" @onSelect="onSelect">
+      <template #tb_cell="{data}">
+        {{ data.record[data.column.dataIndex] }}
+      </template>
+    </normalTable>
+  </a-modal>
+  <slot name="input"></slot>
+</template>
+
+<script setup>
+import {ref, defineProps, defineEmits} from 'vue'
+import utils from '@/utils/utils'
+import normalTable from '@/template/normalTable/index.vue'
+let modeVisible = ref(false)
+let param = ref({
+  "id": 20221101131902,
+  "content": {
+    "pageSize":20,
+    "pageNumber":1,
+    "where": {
+      "condition": "",
+    }
+  }
+})
+let emit = defineEmits(['selectRoles'])
+let result = ref('')
+let submit = () => {
+  emit('selectRoles',result.value)
+  modeVisible.value = false
+}
+let onSelect = (data) => {
+  console.log(data);
+  result.value = data
+}
+defineExpose({
+  modeVisible,
+})
+
+</script>
+
+<style scoped>
+
+</style>

+ 1 - 1
src/system/moduleNormal/systemSet/vacationMag/index.vue

@@ -13,7 +13,7 @@
   const list = ref()
   let searchType = ref([
     {label:'范围',key:'isnext',type:'select',dataSource:[{remarks:'今年',value:'0'},{remarks:'明年',value:'1'}]},
-    // {label:'时间范围',key:'dateRange',type:'datepickerRange',objKeys:['begindate','enddate']},
+    {label:'时间范围',key:'dateRange',type:'datepickerRange',objKeys:['begindate','enddate']},
   ])
   let param = ref({
     "content": {

Kaikkia tiedostoja ei voida näyttää, sillä liian monta tiedostoa muuttui tässä diffissä