Sfoglia il codice sorgente

修改了数据查看,页面

sujunling 2 anni fa
parent
commit
bc41247803

+ 19 - 6
src/api/dataAdmin/mrerdr.ts

@@ -11,12 +11,12 @@ const interfaceType = { apiUrl2: true };
 /**
  * @description:地图,场景,文件,组件集成列表处理接口
  */
-export function MSFAList(p) {
+export function MSFAList(p, callback) {
     const formData = new FormData();
     formData.append('interfaceName', 'antu.space.provider.sservicebase.ServiceBaseMetaDataViewProvider');
     formData.append('methodName', 'getResourcePagedList');
     formData.append('args[]', session.getItem('tokenV2'));
-    var obj = { type: p.type, pageIndex: p.page, pageSize: p.pageSize }
+    var obj = { type: p.type, pageIndex: p.page || 1, pageSize: p.pageSize || 10 }
     if (p.tagValue) obj.tagValue = p.tagValue;
     if (p.filterValue) obj.filterValue = p.filterValue;
     if (p.status != null && p.status != undefined && !isNaN(p.status)) {
@@ -36,6 +36,7 @@ export function MSFAList(p) {
                 }
                 result.total = result.totalItems;
                 console.log(p.type + "资源列表:", result);
+                callback && callback(result.totalItems)
                 resolve(result);
             })
     })
@@ -46,7 +47,7 @@ export function MSFAList(p) {
  */
 export function mapList(p) {
     p.type = 'MR';
-    return MSFAList(p)
+    return MSFAList(p, null)
 }
 
 /**
@@ -54,7 +55,7 @@ export function mapList(p) {
  */
 export function sceneList(p) {
     p.type = 'ER';
-    return MSFAList(p)
+    return MSFAList(p, null)
 }
 
 /**
@@ -62,7 +63,7 @@ export function sceneList(p) {
  */
 export function fileList(p) {
     p.type = 'DR';
-    return MSFAList(p)
+    return MSFAList(p, null)
 }
 
 /**
@@ -71,5 +72,17 @@ export function fileList(p) {
 export function assList(p) {
     p.status = Number(p.status);
     p.type = 'SR';
-    return MSFAList(p)
+    return MSFAList(p, null)
+}
+
+/**
+ * @description:资源查看页面,的数据统计
+ */
+export function MEDSTotal(p, id) {
+    MSFAList(p, (e) => {
+        var dom = document.getElementById(id);
+        if (dom) {
+            dom.innerHTML = e;
+        }
+    })
 }

+ 13 - 5
src/views/dataAdmin/assembly/index.vue

@@ -1,7 +1,7 @@
 <template>
   <div>
     <BasicTable :rowSelection="{ type: 'checkbox' }" @register="registerTable" :clickToRowSelect="false">
-      <template #toolbar>
+      <template #toolbar v-if="props.isChild">
         <Authority>
           <a-button type="primary" @click="handleCreate">新增组件</a-button>
         </Authority>
@@ -34,6 +34,7 @@
             label: '编辑',
             icon: '' /**clarity:note-edit-line*/,
             color: 'warning',
+            ifShow: props.isChild,
             disabled: record.status == 3 ? false : true,
             onClick: handleEdit.bind(null, record),
           },
@@ -41,7 +42,7 @@
             label: '提交审核',
             color: 'warning',
             icon: '' /**clarity:note-edit-line*/,
-            // ifShow: record.servicealiasname,
+            ifShow: props.isChild,
             disabled: record.status == 3 ? false : true,
             // ifShow: record.servicealiasname,
             onClick: sendApprove.bind(null, record),
@@ -50,7 +51,7 @@
             label: '删除',
             icon: '' /**ant-design:delete-outlined'*/,
             color: 'error',
-            ifShow: record.roleType != RoleEnum.SYS_ADMIN,
+            ifShow: props.isChild,
             disabled: record.status == 3 ? false : true,
             onClick: deleteSelect.bind(null, record),
             // popConfirm: {
@@ -122,7 +123,13 @@ import { assList } from '/@/api/dataAdmin/mrerdr';
 export default defineComponent({
   name: 'RoleManagement',
   components: { BasicTable, MapDrawer, MapSourceModal, TableAction, Authority, Switch, Popconfirm },
-  setup() {
+  props: {
+    isChild: {
+      type: Boolean,
+      default: true,
+    }
+  },
+  setup(props) {
     const [registerModal, { openModal }] = useModal();
     const [registerTable, { setProps, reload, setSelectedRowKeys, getSelectRows }] = useTable({
       title: '组件资源列表',
@@ -138,7 +145,7 @@ export default defineComponent({
       bordered: true,
       showIndexColumn: true,
       actionColumn: {
-        width: 250,
+        width: props.isChild ? 250 : 100,
         title: '操作',
         dataIndex: 'action',
         slots: { customRender: 'action' },
@@ -273,6 +280,7 @@ export default defineComponent({
     }
 
     return {
+      props,
       handleSee,
       deleteSelect,
       sendApprove,

+ 13 - 4
src/views/dataAdmin/dataAdmin/fileResourceUpload/index.vue

@@ -4,7 +4,7 @@
     <!-- 使用搜索框和表格封装组件 -->
     <BasicTable :rowSelection="{ type: 'checkbox' }" @register="registerTable" :clickToRowSelect="false">
       <!-- 表格右上角按钮 -->
-      <template #toolbar>
+      <template #toolbar v-if="props.isChild">
         <Authority>
           <a-button type="primary" @click="addMethod">新增文件</a-button>
         </Authority>
@@ -35,6 +35,7 @@
             //auth: 'api:yt:role:saveOrUpdateRoleInfoWithMenu:update',
             //icon: 'clarity:note-edit-line',
             color: 'warning',
+            ifShow: props.isChild,
             disabled: record.status == 3 ? false : true,
             onClick: handleEdit.bind(null, record),
           },
@@ -43,6 +44,7 @@
             //auth: 'api:yt:role:saveOrUpdateRoleInfoWithMenu:update',
             //icon: 'clarity:note-edit-line',
             color: 'warning',
+            ifShow: props.isChild,
             disabled: record.status == 3 ? false : true,
             onClick: sendApprove.bind(null, record),
           },
@@ -51,7 +53,7 @@
             //auth: 'api:yt:role:delete',
             //icon: 'ant-design:delete-outlined',
             color: 'error',
-            ifShow: true,
+            ifShow: props.isChild,
             disabled: record.status == 3 ? false : true,
             onClick: handleDelete.bind(null, record),
           },
@@ -124,7 +126,13 @@ import uiTool from '/@/utils/uiTool';
 export default defineComponent({
   name: 'mapUpload',
   components: { BasicTable, Authority, Popconfirm, TableAction, AddMethod },
-  setup() {
+  props: {
+    isChild: {
+      type: Boolean,
+      default: true,
+    }
+  },
+  setup(props) {
     //按钮的权限控制标识
     const bottomAuthority = 'api:dataresource:fileupload:';
     const authList = {
@@ -160,7 +168,7 @@ export default defineComponent({
       showIndexColumn: true,
       // 表格操作栏
       actionColumn: {
-        width: 250,
+        width: props.isChild ? 250 : 100,
         title: '操作',
         dataIndex: 'action',
         slots: { customRender: 'action' },
@@ -313,6 +321,7 @@ export default defineComponent({
     }
 
     return {
+      props,
       getKeywords,
       moment,
       createMessage,

+ 13 - 5
src/views/dataAdmin/dataAdmin/mapUpload/index.vue

@@ -1,7 +1,7 @@
 <template>
   <div class="p-4">
     <BasicTable :rowSelection="{ type: 'checkbox' }" @register="registerTable" :clickToRowSelect="false">
-      <template #toolbar>
+      <template #toolbar v-if="props.isChild">
         <Authority>
           <a-button type="primary" @click="handleCreate">新增地图</a-button>
         </Authority>
@@ -34,6 +34,7 @@
             label: '编辑',
             icon: '' /**clarity:note-edit-line*/,
             color: 'warning',
+            ifShow: props.isChild,
             disabled: record.status == 3 ? false : true,
             onClick: handleEdit.bind(null, record),
           },
@@ -41,7 +42,7 @@
             label: '提交审核',
             icon: '',
             color: 'warning',
-            // ifShow: record.nodename === '',
+            ifShow: props.isChild,
             disabled: record.status == 3 ? false : true,
             onClick: sendApprove.bind(null, record),
           },
@@ -49,7 +50,7 @@
             label: '删除',
             icon: '' /**ant-design:delete-outlined'*/,
             color: 'error',
-            ifShow: record.roleType != RoleEnum.SYS_ADMIN,
+            ifShow: props.isChild,
             disabled: record.status == 3 ? false : true,
             onClick: handleDelete.bind(null, record),
           },
@@ -116,7 +117,13 @@ import uiTool from '/@/utils/uiTool';
 export default defineComponent({
   name: 'RoleManagement',
   components: { BasicTable, MapDrawer, MapSourceModal, TableAction, Authority, Switch, Popconfirm },
-  setup() {
+  props: {
+    isChild: {
+      type: Boolean,
+      default: true,
+    }
+  },
+  setup(props) {
     const tagValue = ref('');
     const [registerModal, { openModal }] = useModal();
     const [registerTable, { setProps, reload, setSelectedRowKeys, getSelectRows }] = useTable({
@@ -132,7 +139,7 @@ export default defineComponent({
       bordered: true,
       showIndexColumn: true,
       actionColumn: {
-        width: 250,
+        width: props.isChild ? 250 : 100,
         title: '操作',
         dataIndex: 'action',
         slots: { customRender: 'action' },
@@ -279,6 +286,7 @@ export default defineComponent({
     onBeforeMount(async () => { });
 
     return {
+      props,
       getKeywords,
       moment,
       createMessage,

+ 13 - 5
src/views/dataAdmin/dataAdmin/sceneResourceUpload/index.vue

@@ -4,7 +4,7 @@
     <!-- 使用搜索框和表格封装组件 -->
     <BasicTable :rowSelection="{ type: 'checkbox' }" @register="registerTable" :clickToRowSelect="false">
       <!-- 表格右上角按钮 -->
-      <template #toolbar>
+      <template #toolbar v-if="props.isChild">
         <Authority>
           <a-button type="primary" @click="addMethod">新增场景</a-button>
         </Authority>
@@ -34,6 +34,7 @@
             //auth: 'api:yt:role:saveOrUpdateRoleInfoWithMenu:update',
             icon: '', //'clarity:note-edit-line',
             color: 'warning',
+            ifShow: props.isChild,
             disabled: record.status == 3 ? false : true,
             onClick: handleEdit.bind(null, record),
           },
@@ -41,7 +42,7 @@
             label: '提交审核',
             icon: '',
             color: 'warning',
-            // ifShow: record.nodename === '',
+            ifShow: props.isChild,
             disabled: record.status == 3 ? false : true,
             onClick: sendApprove.bind(null, record),
           },
@@ -50,7 +51,7 @@
             //auth: 'api:yt:role:delete',
             icon: '', //'ant-design:delete-outlined',
             color: 'error',
-            ifShow: true,
+            ifShow: props.isChild,
             disabled: record.status == 3 ? false : true,
             onClick: handleDelete.bind(null, record),
           },
@@ -125,7 +126,13 @@ import uiTool from '/@/utils/uiTool';
 export default defineComponent({
   name: 'mapUpload',
   components: { BasicTable, Authority, Popconfirm, TableAction, AddMethod },
-  setup() {
+  props: {
+    isChild: {
+      type: Boolean,
+      default: true,
+    }
+  },
+  setup(props) {
     const moment = Moment;
     const { createMessage } = useMessage();
     //按钮的权限控制标识
@@ -162,7 +169,7 @@ export default defineComponent({
       showIndexColumn: true,
       // 表格操作栏
       actionColumn: {
-        width: 250,
+        width: props.isChild ? 250 : 100,
         title: '操作',
         dataIndex: 'action',
         slots: { customRender: 'action' },
@@ -289,6 +296,7 @@ export default defineComponent({
     }
 
     return {
+      props,
       getKeywords,
       moment,
       createMessage,

+ 25 - 177
src/views/dataAdmin/dataView/index.vue

@@ -2,206 +2,49 @@
   <div class="examine-container">
     <div class="left-container">
       <template v-for="source in sourceTypes" :key="source.name">
-        <div
-          class="soure-item-row"
-          :class="{ active: current === source.name }"
-          @click="current = source.name"
-        >
-          {{ `${source.name}(${source.num})` }}
+        <div class="soure-item-row" :class="{ active: current === source.name }" @click="current = source.name">
+          {{ source.name }}( <span :id="'sjck' + source.type">{{ getNum(source.type, 'sjck') }} </span>)
         </div>
       </template>
     </div>
     <div class="right-container">
-      <BasicTable :rowSelection="{ type: 'checkbox' }" rowKey="serviceid" @register="registerTable">
-        <template #action="{ record }">
-          <TableAction
-            :actions="[
-              {
-                label: '浏览',
-                icon: '' /**clarity:note-edit-line*/,
-                onClick: handleEdit.bind(null, record),
-              },
-              {
-                label: '详情',
-                icon: '' /**clarity:note-edit-line*/,
-                onClick: handleEdit.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 }">
-          <Tag :style="`color:${record.status === 3 || record.status === 3 ? 'red' : ''};`">
-            {{
-              record.status === 0
-                ? '待审核'
-                : record.status === 1
-                ? '审核通过'
-                : record.status === 2
-                ? '审核不通过'
-                : record.status === 3
-                ? '被驳回'
-                : '未提交'
-            }}
-          </Tag>
-        </template>
-      </BasicTable>
-      <MapSourceModal @register="registerModal" @success="handleSuccess" />
+      <MapList :isChild="false" v-if="current == '地图资源'"></MapList>
+      <SceneList :isChild="false" v-if="current == '场景资源'"></SceneList>
+      <FileList :isChild="false" v-if="current == '文件资源'"></FileList>
+      <AssList :isChild="false" v-if="current == '组件资源'"></AssList>
     </div>
   </div>
 </template>
 <script lang="ts">
-import { defineComponent, nextTick, onBeforeMount, reactive, ref, toRef } from 'vue';
-import { BasicTable, useTable, TableAction } from '/@/components/Table';
-import { delRole, getRoleListByPage, setRoleStatus } from '/@/api/system/system';
-// import { useDrawer } from '/@/components/Drawer';
-import { useModal } from '/@/components/Modal';
-import MapSourceModal from './MapSourceModal.vue';
-import { columns, searchFormSchema } from './map.data';
+import { defineComponent, ref } from 'vue';
 import { RoleEnum } from '/@/enums/roleEnum';
-import { Authority } from '/@/components/Authority';
-import { useBatchDelete } from '/@/hooks/web/useBatchDelete';
-import { useMessage } from '/@/hooks/web/useMessage';
-import { Switch, Popconfirm } from 'ant-design-vue';
-import { list } from '/@/api/resource/map';
-import Moment from 'moment';
-import { active } from 'sortablejs';
+import MapList from '../dataAdmin/mapUpload/index.vue';
+import SceneList from '../dataAdmin/sceneResourceUpload/index.vue';
+import FileList from '../dataAdmin/fileResourceUpload/index.vue';
+import AssList from '../assembly/index.vue';
+import { MEDSTotal } from '/@/api/dataAdmin/mrerdr';
 
 export default defineComponent({
   name: 'RoleManagement',
-  components: { BasicTable, MapSourceModal, TableAction, Authority, Switch, Popconfirm },
+  components: { MapList, SceneList, FileList, AssList },
   setup() {
     let current = ref('地图资源');
-    //const [registerDrawer, { openDrawer }] = useDrawer();
-    const [registerModal, { openModal }] = useModal();
-    const [registerTable, { getSelectRows, setProps, reload, setSelectedRowKeys }] = useTable({
-      title: '地图资源列表',
-      api: list, //求接口
-      //dataSource: dataSources, //表格的数据
-      columns,
-      rowKey: 'serviceid',
-      formConfig: {
-        labelWidth: 100,
-        schemas: searchFormSchema,
-      },
-      useSearchForm: true,
-      showTableSetting: true,
-      bordered: true,
-      showIndexColumn: true,
-      actionColumn: {
-        width: 200,
-        title: '操作',
-        dataIndex: 'action',
-        slots: { customRender: 'action' },
-        fixed: 'right',
-      },
-      pagination: {
-        hideOnSinglePage: false,
-      },
-      clickToRowSelect: true, //点击当前行多选框不选中,默认是true
-      rowSelection: { type: 'checkbox' }, //是否有多选功能
-      tableSetting: {
-        redo: true,
-        size: true,
-        setting: false,
-        fullScreen: false
-      },
-    });
-    const moment = Moment;
-
     const sourceTypes = ref([
-      { name: '地图资源', num: 4 },
-      { name: '场景资源', num: 5 },
-      { name: '文件资源', num: 10 },
-      { name: '组件资源', num: 2 },
+      { name: '地图资源', type: 'MR', num: 0 },
+      { name: '场景资源', type: 'ER', num: 0 },
+      { name: '文件资源', type: 'DR', num: 0 },
+      { name: '组件资源', type: 'SR', num: 0 },
     ]);
-    const { hasBatchDelete, handleDeleteOrBatchDelete, selectionOptions, resetSelectedRowKeys } =
-      useBatchDelete(delRole, handleSuccess, setProps);
-    selectionOptions.rowSelection.getCheckboxProps = (record: Recordable) => {
-      // Demo:status为1的选择框禁用
-      if (record.status === 1) {
-        return { disabled: true };
-      } else {
-        return { disabled: false };
-      }
-    };
-    nextTick(() => {
-      setProps(selectionOptions);
-    });
-
-    function handleCreate() {
-      // openDrawer(true, {
-      //   isUpdate: false,
-      // });
-      openModal(true, {
-        isUpdate: false,
-      });
-    }
 
-    function handleEdit(record: Recordable) {
-      // openDrawer(true, {
-      //   record,
-      //   isUpdate: true,
-      // });
-      openModal(true, {
-        record,
-        isUpdate: true,
-      });
+    function getNum(type, name) {
+      MEDSTotal({ type: type }, name + type)
     }
 
-    function handleSuccess() {
-      openModal(false, {
-        isUpdate: false,
-      });
-      reload();
-    }
-
-    const statusChange = async (checked, record) => {
-      setProps({
-        loading: true,
-      });
-      setSelectedRowKeys([]);
-      resetSelectedRowKeys();
-      const newStatus = checked ? 1 : 0;
-      const { createMessage } = useMessage();
-      try {
-        await setRoleStatus(record.id, newStatus);
-        if (newStatus) {
-          createMessage.success(`启用成功`);
-        } else {
-          createMessage.success('禁用成功');
-        }
-      } finally {
-        setProps({
-          loading: false,
-        });
-        reload();
-      }
-    };
-    const batchExamine = () => {
-      console.log('审核数据',getSelectRows())
-    };
-
-    onBeforeMount(async () => {});
-
     return {
+      getNum,
       current,
-      moment,
       sourceTypes,
-      registerTable,
-      registerModal,
-      handleCreate,
-      handleEdit,
-      handleSuccess,
       RoleEnum,
-      hasBatchDelete,
-      handleDeleteOrBatchDelete,
-      statusChange,
-      batchExamine,
     };
   },
 });
@@ -211,6 +54,7 @@ export default defineComponent({
   display: flex;
   height: 100%;
   width: 100%;
+
   .left-container {
     width: 240px;
     height: calc(100% - 32px);
@@ -218,6 +62,8 @@ export default defineComponent({
     padding: 10px 20px;
     background-color: #fff;
     border-radius: 2px;
+    cursor: pointer;
+
     .soure-item-row {
       height: 34px;
       width: 100%;
@@ -231,11 +77,13 @@ export default defineComponent({
       background: #eff0f5;
       border-radius: 2px;
     }
+
     .active {
       background: #0671dd;
       color: #fff;
     }
   }
+
   .right-container {
     width: calc(100% - 260px);
     height: 100%;