浏览代码

新增流程配置

tengmingxue 2 年之前
父节点
当前提交
02f1f1a42f

+ 206 - 0
src/views/dataAdmin/dataAdmin/configProcess/AddProcess.vue

@@ -0,0 +1,206 @@
+<template>
+  <BasicModal
+    width="1200px"
+    v-bind="$attrs"
+    @register="registerModal"
+    :title="getTitle"
+    @ok="handleSubmit"
+    :useWrapper="true"
+    :minHeight="500"
+  >
+    <div class="process-cofig">
+      <a-form
+        ref="formRef"
+        :model="formState"
+        :rules="rules"
+        :label-col="labelCol"
+        :wrapper-col="wrapperCol"
+      >
+        <div class="info-item">
+          <div class="title">基本信息</div>
+          <div class="form-continer">
+            <a-form-item label="业务类型" name="type">
+              <a-select v-model:value="formState.type" placeholder="请选择业务类型">
+                <template v-for="item in dicBusiness" :key="item.value">
+                  <a-select-option :value="item.value">{{ item.label }}</a-select-option>
+                </template>
+              </a-select>
+            </a-form-item>
+          </div>
+        </div>
+        <div class="info-item">
+          <div class="title">步骤配置</div>
+          <div class="form-continer"></div>
+        </div>
+      </a-form>
+    </div>
+  </BasicModal>
+</template>
+<script lang="ts">
+import { ValidateErrorEntity } from 'ant-design-vue/es/form/interface';
+import { defineComponent, ref, computed, unref, reactive, onMounted, watch, UnwrapRef, toRaw } from 'vue';
+import { BasicModal, useModalInner } from '/@/components/Modal';
+import { BasicForm, useForm } from '/@/components/Form/index';
+import { busType, accountFormSchema, accountFormSchema2 } from './configData';
+import { Upload } from 'ant-design-vue';
+import { useMessage } from '/@/hooks/web/useMessage';
+import { addFileResource } from '../../api/fileUploadApi';
+interface FormState {
+  type: string;
+  steps: Object[];
+}
+export default defineComponent({
+  name: 'AccountModal',
+  components: {
+    BasicModal,
+    BasicForm,
+    Upload,
+  },
+  emits: ['success', 'register'],
+  setup(_, { emit }) {
+    const formRef = ref();
+    let show1 = ref(true);
+    const isUpdate = ref(true);
+    const rowId = ref('');
+    const postData = reactive({});
+    const formState: UnwrapRef<FormState> = reactive({
+      type: '',
+      steps: [],
+    });
+    const rules = {
+      type: [{ required: true, message: '请选择业务类型', trigger: 'change' }],
+      steps: [{ required: true, message: '请配置审核步骤', trigger: 'change', type: 'array' }],
+    };
+    const dicBusiness = busType;
+    onMounted(async () => {});
+    const [registerForm, { setFieldsValue, resetFields, validate }] = useForm({
+      labelWidth: 100,
+      schemas: show1 ? accountFormSchema : accountFormSchema2,
+      showActionButtonGroup: false,
+      actionColOptions: {
+        span: 18,
+      },
+    });
+
+    const [registerModal, { setModalProps, closeModal }] = useModalInner(async (data) => {
+      await resetFields();
+      setModalProps({ confirmLoading: false });
+      isUpdate.value = !!data?.isUpdate;
+      if (unref(isUpdate)) {
+        rowId.value = data.record.id;
+        setFieldsValue(data.record);
+      }
+    });
+    const getTitle = computed(() => (!unref(isUpdate) ? '新增' : '编辑'));
+
+    async function handleSubmit() {
+      setModalProps({ confirmLoading: true });
+      try {
+        const { createMessage } = useMessage();
+        const values = await validate(['parentId']);
+        Object.assign(postData, values);
+
+        console.log('准备传递的参数' + JSON.stringify(postData));
+
+        await addFileResource(paramsToFormData(postData as any), unref(isUpdate));
+        closeModal();
+        emit('success');
+        createMessage.success(unref(isUpdate) ? '编辑成功' : '新增成功');
+      } finally {
+        setTimeout(() => {
+          setModalProps({ confirmLoading: false });
+        }, 300);
+      }
+    }
+    function preProcessData(data) {
+      Object.keys(data).forEach((item) => {
+        if (typeof data[item] === 'undefined' || data[item] === null || data[item] === '') {
+          delete data[item];
+        }
+      });
+      return data;
+    }
+
+    function paramsToFormData(obj) {
+      const data = preProcessData(obj);
+      const formData = new FormData();
+      Object.keys(data).forEach((key) => {
+        if (data[key] instanceof Array) {
+          data[key].forEach((item) => {
+            formData.append(key, item);
+          });
+          return;
+        }
+        formData.append(key, obj[key]);
+      });
+      return formData;
+    }
+
+    // 菜单点击事件
+    const menuClick = (value) => {
+      console.log('canshu1111' + JSON.stringify(value));
+      if (value.key == 'mail1') {
+        show1.value = true;
+      } else {
+        show1.value = false;
+      }
+    };
+
+    const onSubmit = () => {
+      formRef.value
+        .validate()
+        .then(() => {
+          console.log('values', formState, toRaw(formState));
+        })
+        .catch((error: ValidateErrorEntity<FormState>) => {
+          console.log('error', error);
+        });
+    };
+    const resetForm = () => {
+      formRef.value.resetFields();
+    };
+
+    return {
+      formRef,
+      formState,
+      rules,
+      dicBusiness,
+      labelCol: { span: 2 },
+      wrapperCol: { span: 4 },
+      registerModal,
+      registerForm,
+      handleSubmit,
+      getTitle,
+      menuClick,
+      show1,
+      onSubmit,
+      resetForm,
+    };
+  },
+});
+</script>
+<style scoped lang="less">
+.process-cofig {
+  height: 50vh;
+  padding: 0 20px;
+  .info-item {
+    width: 100%;
+    height: auto;
+    margin-bottom: 20px;
+    .title {
+      padding-left: 10px;
+      border-left: 3px solid #2d74e7;
+      height: 16px;
+      line-height: 16px;
+      font-family: Source Han Sans CN;
+      font-size: 16px;
+      font-weight: 300;
+      letter-spacing: 0px;
+      color: #333333;
+    }
+    .form-continer {
+      padding-top: 20px;
+    }
+  }
+}
+</style>

+ 74 - 0
src/views/dataAdmin/dataAdmin/configProcess/configData.js

@@ -0,0 +1,74 @@
+/*
+ * @Author: tengmingxue 1473375109@qq.com
+ * @Date: 2023-08-28 21:12:52
+ * @LastEditors: tengmingxue 1473375109@qq.com
+ * @LastEditTime: 2023-08-28 23:04:01
+ * @FilePath: \xld-gis-admin\src\views\dataAdmin\dataAdmin\configProcess\configData.js
+ * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
+ */
+
+
+export const columns = [
+  {
+    title: '流程业务',
+    dataIndex: 'serviceid',
+  },
+  {
+    title: '启用状态',
+    dataIndex: 'status',
+    slots: { customRender: 'status' },
+  },
+  {
+    title: '维护人',
+    dataIndex: 'typename',
+  },
+  {
+    title: '维护时间',
+    dataIndex: 'publisher',
+    slots: { customRender: 'pdate' },
+  }
+];
+
+export const searchFormSchema = [
+  {
+    field: 'status',
+    label: '启动状态',
+    component: 'Select',
+    componentProps: {
+      options:
+        [
+          { label: '启用', value: 1 },
+          { label: '停用', value: 0 },
+        ],
+    },
+    colProps: { span: 6 },
+  },
+  {
+    field: 'processName',
+    label: '流程名称',
+    component: 'Input',
+    colProps: { span: 6 },
+    componentProps: {
+      maxLength: 255,
+    },
+  },
+]
+
+// 新增表单配置
+export const accountFormSchema = []
+
+
+// 新增表单配置
+export const accountFormSchema2 = []
+
+
+export const busType = [
+  { value: '0', label: '地图资源上传' },
+  { value: '1', label: '场景资源上传' },
+  { value: '2', label: '文件资源上传' },
+  { value: '3', label: '地图资源申请' },
+  { value: '4', label: '场景资源申请' },
+  { value: '5', label: '文件资源申请' },
+  { value: '6', label: '组件资源上传' },
+  { value: '7', label: '组件资源申请' },
+]

+ 188 - 0
src/views/dataAdmin/dataAdmin/configProcess/index.vue

@@ -0,0 +1,188 @@
+<!-- 文件型资源上传 -->
+<template>
+  <div style="height: 100%; width: 100%; margin-top: 0; padding: 0">
+    <!-- 使用搜索框和表格封装组件 -->
+    <BasicTable
+      :rowSelection="{ type: 'checkbox' }"
+      @register="registerTable"
+      :clickToRowSelect="false"
+    >
+      <!-- 表格右上角按钮 -->
+      <template #toolbar>
+        <Authority>
+          <a-button type="primary" @click="addMethod">新增流程</a-button>
+        </Authority>
+        <!-- :value="authList.deleteAuth" -->
+        <Authority>
+          <Popconfirm
+            title="您确定要批量删除数据"
+            ok-text="确定"
+            cancel-text="取消"
+            @confirm="handleDeleteOrBatchDelete(null)"
+          >
+            <a-button type="primary" color="error" :disabled="hasBatchDelete"> 批量删除 </a-button>
+          </Popconfirm>
+        </Authority>
+      </template>
+      <!-- 表格操作栏 -->
+      <template #action="{ record }">
+        <TableAction
+          :actions="[
+            {
+              label: '查看',
+              onClick: handleEdit.bind(null, record),
+            },
+            {
+              label: '编辑',
+              onClick: handleEdit.bind(null, record),
+            },
+            {
+              label: '删除',
+              color: 'error',
+              ifShow: true,
+              popConfirm: {
+                title: '是否确认删除',
+                confirm: handleDeleteOrBatchDelete.bind(null, record),
+              },
+            },
+          ]"
+        />
+      </template>
+      <template #pdate="{ record }">
+        <Tag :color="'red'">
+          {{ record.publishdate ? moment(record.publishdate).format('YYYY-MM-DD HH:mm:ss') : '' }}
+        </Tag>
+      </template>
+      <template #status="{ record }">
+        <a-switch
+          checked-children="启用"
+          un-checked-children="停用"
+          v-model:checked="record.status"
+          @change="changeCheck(record)"
+        />
+      </template>
+    </BasicTable>
+    <!-- 新增和编辑 -->
+    <!-- <RoleDrawer @register="registerDrawer" @success="handleSuccess" /> -->
+    <AddProcess @register="registerModal" @success="handleSuccess"></AddProcess>
+  </div>
+</template>
+
+<script>
+import { defineComponent, nextTick } from 'vue';
+import { BasicTable, TableAction, useTable } from '/@/components/Table';
+import { Authority } from '/@/components/Authority';
+import { useModal } from '/@/components/Modal';
+import { Popconfirm } from 'ant-design-vue';
+import { getFileListByPage, delFileResource } from '../../api/fileUploadApi';
+import { columns, searchFormSchema } from './configData';
+import { list } from '/@/api/resource/files';
+import { useBatchDelete } from '/@/hooks/web/useBatchDelete';
+import AddProcess from './AddProcess.vue';
+import Moment from 'moment';
+
+export default defineComponent({
+  name: 'configProcess',
+  components: { BasicTable, Authority, Popconfirm, TableAction, AddProcess },
+  setup() {
+    //按钮的权限控制标识
+    const bottomAuthority = 'sys:process:config:';
+    const authList = {
+      addAuth: bottomAuthority + 'processAdd', //新增权限控制
+      deleteAuth: bottomAuthority + 'processDelete', //删除权限控制
+      editAuth: bottomAuthority + 'processEdit', //编辑权限控制
+    };
+    const moment = Moment;
+    // 新增和编辑界面
+    const [registerModal, { openModal: openModal }] = useModal();
+    // 新增和编辑界面操作函数
+    function handleSuccess() {
+      reload();
+    }
+    // 配置下方表格
+    const [registerTable, { setProps, reload, setSelectedRowKeys }] = useTable({
+      // 表格题目
+      title: '流程配置列表',
+      // 分页查询请求函数
+      api: list,
+      // 表头
+      columns,
+      // 查询条件框配置
+      // formConfig: {
+      //   labelWidth: 120,
+      //   schemas: searchFormSchema,
+      // },
+      useSearchForm: false,
+      showTableSetting: true,
+      bordered: true,
+      // 表格控制序号显示
+      showIndexColumn: true,
+      // 表格操作栏
+      actionColumn: {
+        width: 200,
+        title: '操作',
+        dataIndex: 'action',
+        slots: { customRender: 'action' },
+        fixed: 'right',
+      },
+      pagination: {
+        hideOnSinglePage: false,
+      },
+    });
+    //
+    const { hasBatchDelete, handleDeleteOrBatchDelete, selectionOptions, resetSelectedRowKeys } =
+      useBatchDelete(delFileResource, handleSuccess, setProps);
+    //
+    selectionOptions.rowSelection.getCheckboxProps = (record) => {
+      // Demo:status为1的选择框禁用
+      if (record.status === 1) {
+        return { disabled: true };
+      } else {
+        return { disabled: false };
+      }
+    };
+    //
+    nextTick(() => {
+      setProps(selectionOptions);
+    });
+    // 新增
+    function addMethod() {
+      openModal(true, {
+        isUpdate: false,
+      });
+    }
+    // 编辑
+    function handleEdit(record) {
+      // openDrawer(true, {
+      //   record,
+      //   isUpdate: true,
+      // });
+    }
+
+    function changeCheck(row) {
+      console.log(row);
+    }
+
+    return {
+      moment,
+      registerModal,
+      authList,
+      registerTable,
+      addMethod,
+      handleEdit,
+      handleSuccess,
+      hasBatchDelete,
+      handleDeleteOrBatchDelete,
+      changeCheck,
+    };
+  },
+});
+</script>
+<style scoped lang="less">
+:deep(.vben-basic-table) {
+  height: 100% !important;
+  .ant-table-wrapper {
+    height: 100% !important;
+  }
+}
+</style>

+ 126 - 0
src/views/dataAdmin/dataAdmin/configProcess/uploadFileList.vue

@@ -0,0 +1,126 @@
+<template>
+  <a-table :columns="columns" :dataSource="dataSource" bordered :customRow="rowClick">
+    <template v-for="col in ['scode', 'sname']" #[col]="{ text, record }" :key="col">
+      <span>
+        <a-input
+          v-if="editableData[record.key]"
+          v-model:value="editableData[record.key][col]"
+          style="margin: -5px 0"
+          @mouseleave="mouseleave(editableData, record.key, col)"
+        />
+        <template v-else>
+          {{ text }}
+        </template>
+      </span>
+    </template>
+    <template #opera="{ record }">
+      <a-upload v-model:file-list="imgList" name="file" :multiple="false" action="">
+        <span
+          style="
+            color: #0671dd;
+            font-size: 14px;
+            font-weight: 500;
+            line-height: 16px;
+            letter-spacing: 0px;
+          "
+          >选择</span
+        >
+      </a-upload>
+    </template>
+    <template #operation="{ record }">
+      <DeleteOutlined
+        style="
+          color: #f8252c;
+          font-size: 16px;
+          font-weight: 500;
+          line-height: 16px;
+          cursor: pointer;
+        "
+        @click="del(record)"
+      />
+    </template>
+  </a-table>
+</template>
+  <script lang="ts">
+import { defineComponent, ref, computed, unref, reactive, onMounted,watch } from 'vue';
+import { DeleteOutlined } from '@ant-design/icons-vue';
+import { cloneDeep } from 'lodash-es';
+import { fileFields } from './fileUploadData';
+const props = {
+    fileList:{type:Array,default:[]}
+}
+export default defineComponent({
+  name: 'AccountModal',
+  components: { DeleteOutlined },
+  emits: ['success', 'register'],
+  props,
+  setup(props, { emit }) {
+    const fileList =  ref(props.fileList);
+    let imgList = ref([])
+    let editableData = reactive({});
+    onMounted(async () => {});
+    const columns = fileFields;
+    let dataSource = [
+      {
+        xh: 1,
+        key: 'A001',
+        sname: '资源名称',
+        scode: 's-001',
+        type: 'ppt',
+        operation: '',
+        status: '已提交',
+      },
+      {
+        xh: 2,
+        key: 'A002',
+        sname: '资源名称1',
+        scode: 's-002',
+        type: 'ppt',
+        operation: '',
+        status: '已提交',
+      },
+    ];
+    watch(()=>props.fileList,(list)=>{
+        fileList.value = list
+        console.log('上传数据列表',list)
+    })
+
+    const rowClick = (record, index) => {
+      return {
+        onclick: () => {
+          editableData[record.key] = cloneDeep(record);
+        },
+        onContextmenu: (event) => {},
+        onMouseenter: (event) => {}, // 鼠标移入行
+        onMouseleave: (event) => {},
+      };
+    };
+    const mouseleave = (editData, key, col) => {
+      const updateValue = editData[key][col];
+      //保存数据
+      dataSource.forEach((item) => {
+        if (item.key === key && updateValue != '') item[col] = updateValue;
+      });
+      //清空editableData
+      //editableData = reactive({});
+    };
+    const del = (row) => {
+      editableData = reactive({});
+      dataSource = dataSource.filter((item) => item.key != row.key);
+    };
+    return {
+      columns,
+      dataSource,
+      editableData,
+      rowClick,
+      mouseleave,
+      fileList,
+      imgList,
+      del,
+    };
+  },
+});
+</script>
+  <style scoped lang="less">
+</style>
+  

+ 19 - 19
src/views/dataAdmin/dataAdmin/fileResourceUpload/fileUploadData.js

@@ -1,3 +1,4 @@
+import { serviceTags, serviceTypes, checkStatus } from '../sysDic'
 export const columns = [
   {
     title: '资源编号',
@@ -54,9 +55,10 @@ export const searchFormSchema = [
     label: '资源标签',
     component: 'Select',
     componentProps: {
-      options: [
-        { label: '无', value: 0 },
-      ],
+      options: serviceTags
+      // [
+      //   { label: '无', value: 0 },
+      // ],
     },
     colProps: { span: 6 },
   },
@@ -74,11 +76,7 @@ export const searchFormSchema = [
     label: '审核状态',
     component: 'Select',
     componentProps: {
-      options: [
-        { label: '审核不通过', value: 2 },
-        { label: '审核中', value: 1 },
-        { label: '审核通过', value: 0 },
-      ],
+      options: checkStatus
     },
     colProps: { span: 6 },
   },
@@ -105,7 +103,7 @@ export const accountFormSchema = [
     field: 'parentId',
     label: '服务类型',
     required: true,
-    component: 'TreeSelect',
+    component: 'Select',
     colProps: { span: 12 },
     componentProps: {
       replaceFields: {
@@ -115,22 +113,24 @@ export const accountFormSchema = [
       },
       maxTagCount: 10,
       getPopupContainer: () => document.body,
+      options: serviceTypes
     },
   },
   {
     field: 'parentId',
     label: '系统标签',
     required: true,
-    component: 'TreeSelect',
+    component: 'Select',
     colProps: { span: 12 },
     componentProps: {
       replaceFields: {
-        title: 'name',
-        key: 'id',
-        value: 'id',
+        title: 'label',
+        key: 'value',
+        value: 'value',
       },
       maxTagCount: 10,
       getPopupContainer: () => document.body,
+      options:serviceTags
     },
   },
   {
@@ -375,7 +375,7 @@ export const fileFields = [
     title: '序号',
     dataIndex: 'xh',
     width: '10%',
-    align:'center'
+    align: 'center'
   },
   {
     title: '资源名称',
@@ -388,32 +388,32 @@ export const fileFields = [
     dataIndex: 'scode',
     width: '20%',
     slots: { customRender: 'scode' },
-    align:'center'
+    align: 'center'
   },
   {
     title: '格式',
     dataIndex: 'type',
     width: '10%',
-    align:'center'
+    align: 'center'
   },
   {
     title: '缩略图',
     dataIndex: 'operation',
     width: '20%',
     slots: { customRender: 'opera' },
-    align:'center'
+    align: 'center'
   },
   {
     title: '状态',
     dataIndex: 'status',
     width: '10%',
-    align:'center'
+    align: 'center'
   },
   {
     title: '操作',
     dataIndex: 'operation',
     width: '10%',
     slots: { customRender: 'operation' },
-    align:'center'
+    align: 'center'
   },
 ];

+ 1 - 2
src/views/dataAdmin/dataAdmin/mapUpload/MapSourceModal.vue

@@ -2,7 +2,7 @@
  * @Author: tengmingxue 1473375109@qq.com
  * @Date: 2023-08-15 16:19:10
  * @LastEditors: tengmingxue 1473375109@qq.com
- * @LastEditTime: 2023-08-21 13:39:20
+ * @LastEditTime: 2023-08-28 13:57:55
  * @FilePath: \xld-gis-admin\src\views\resource\map\MapSourceModal.vue
  * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
 -->
@@ -31,7 +31,6 @@
 import { defineComponent, ref, computed, unref, reactive, onMounted } from 'vue';
 import { BasicModal, useModalInner } from '/@/components/Modal';
 import { BasicForm, useForm } from '/@/components/Form/index';
-import { formSchema } from './map.data';
 import { BasicTree } from '/@/components/Tree';
 import { PlusOutlined } from '@ant-design/icons-vue';
 import SourceDetail from './SourceDetail.vue';

+ 4 - 4
src/views/dataAdmin/dataAdmin/mapUpload/SourceDetail.vue

@@ -2,7 +2,7 @@
  * @Author: tengmingxue 1473375109@qq.com
  * @Date: 2023-08-15 22:08:21
  * @LastEditors: tengmingxue 1473375109@qq.com
- * @LastEditTime: 2023-08-21 11:47:31
+ * @LastEditTime: 2023-08-28 14:26:58
  * @FilePath: \xld-gis-admin\src\views\resource\map\SourceDetail.vue
  * @Description: 地图资源明细界面
 -->
@@ -85,8 +85,8 @@
               class="label-form-item"
             >
               <a-select v-model:value="formState.servicetype" :disabled="isView">
-                <template v-for="tag in serviceTypes" :key="tag.id">
-                  <a-select-option :value="tag.id">{{ tag.name }}</a-select-option>
+                <template v-for="tag in serviceTypes" :key="tag.value">
+                  <a-select-option :value="tag.value">{{ tag.label }}</a-select-option>
                 </template>
               </a-select>
             </a-form-item>
@@ -312,7 +312,7 @@ import {
   respDept,
   collectDept,
   EPSGCodes,
-} from './map.data';
+} from '../sysDic';
 import { session } from '/@/utils/Memory.js';
 const props = {
   formData: { type: Object, default: ref(null) },

+ 1 - 46
src/views/dataAdmin/dataAdmin/mapUpload/map.data.ts

@@ -1,53 +1,8 @@
 import { BasicColumn } from '/@/components/Table';
 import { FormSchema } from '/@/components/Table';
 import { RoleEnum } from '/@/enums/roleEnum';
-import { getServiceTypes,queryServiceTags,queryDicsByName,queryCoors } from '/@/api/resource/map';
+import { serviceTags,checkStatus } from '../sysDic'
 
-const resTag = await queryServiceTags()
-let listTag = []
-resTag.map(item => {
-  listTag.push({
-    label: item.name,
-    value: item.code
-  })
-})
-/**
- * 密级字典
-*/
-export const secrets = await queryDicsByName('密级')
-/**
- * 服务标签
-*/
-export const serviceTags = listTag;
-/**
- * 坐标系列表
-*/
-export const sysCoors = await queryCoors()
-/**
- * 服务类型
-*/
-export const serviceTypes = await getServiceTypes()
-/**
- * 责任处室
-*/
-export const respDept = await queryDicsByName('责任处室')
-/**
- * 保管单位
-*/
-export const collectDept = await queryDicsByName('保管单位')
-/**
- * EPSG code
-*/
-export const EPSGCodes = await queryDicsByName('EPSG code')
-
-
-const checkStatus = [
-  { label: '未提交', value: 1 },
-  { label: '审核中', value: 2 },
-  { label: '审核不通过', value: 3 },
-  { label: '被驳回', value: 4 },
-  { label: '审核通过', value: 5 },
-]
 export enum KeysTypeEnum {
   DISABLED = 'disabled',
   ENABLED = 'enabled',

+ 64 - 0
src/views/dataAdmin/dataAdmin/sysDic.ts

@@ -0,0 +1,64 @@
+/*
+ * @Author: tengmingxue 1473375109@qq.com
+ * @Date: 2023-08-28 13:46:21
+ * @LastEditors: tengmingxue 1473375109@qq.com
+ * @LastEditTime: 2023-08-28 21:53:01
+ * @FilePath: \xld-gis-admin\src\views\dataAdmin\dataAdmin\sysDic.ts
+ * @Description: 系统字典
+ */
+import { getServiceTypes,queryServiceTags,queryDicsByName,queryCoors } from '/@/api/resource/map';
+
+const resTag = await queryServiceTags()
+let listTag = []
+resTag.map(item => {
+  listTag.push({
+    label: item.name,
+    value: item.code
+  })
+})
+/**
+ * 密级字典
+*/
+export const secrets = await queryDicsByName('密级')
+/**
+ * 服务标签
+*/
+export const serviceTags = listTag;
+/**
+ * 坐标系列表
+*/
+export const sysCoors = await queryCoors()
+/**
+ * 服务类型
+*/
+const resTypes = await getServiceTypes()
+let listType = []
+resTypes.map(item => {
+    listType.push({
+    label: item.name,
+    value: item.id
+  })
+})
+export const serviceTypes = listType
+/**
+ * 责任处室
+*/
+export const respDept = await queryDicsByName('责任处室')
+
+/**
+ * 保管单位
+*/
+export const collectDept = await queryDicsByName('保管单位')
+/**
+ * EPSG code
+*/
+export const EPSGCodes = await queryDicsByName('EPSG code')
+
+
+export const checkStatus = [
+  { label: '未提交', value: 1 },
+  { label: '审核中', value: 2 },
+  { label: '审核不通过', value: 3 },
+  { label: '被驳回', value: 4 },
+  { label: '审核通过', value: 5 },
+]