hongrunxia há 1 ano atrás
pai
commit
506f7376d3

+ 2 - 2
src/components/Table/src/components/editable/EditableCell.vue

@@ -112,8 +112,8 @@
 
         return {
           size: 'small',
-          getPopupContainer: () => unref(table?.wrapRef.value) ?? document.body,
-          getCalendarContainer: () => unref(table?.wrapRef.value) ?? document.body,
+          // getPopupContainer: () => unref(table?.wrapRef.value) ?? document.body,
+          // getCalendarContainer: () => unref(table?.wrapRef.value) ?? document.body,
           placeholder: createPlaceholderMessage(unref(getComponent)),
           ...apiSelectProps,
           ...omit(compProps, 'onChange'),

+ 1 - 1
src/views/vent/comment/EditRowTable.vue

@@ -12,7 +12,7 @@
   </div>
 </template>
 <script lang="ts">
-  import { defineComponent, ref, nextTick, onMounted } from 'vue';
+  import { defineComponent, ref, nextTick } from 'vue';
   import { BasicTable, useTable, TableAction, BasicColumn, ActionItem, EditRecordRow } from '/@/components/Table';
   import { useMessage } from '/@/hooks/web/useMessage';
   // import { nextTick } from 'process';

+ 8 - 8
src/views/vent/deviceManager/comment/NormalTable.vue

@@ -1,5 +1,5 @@
 <template>
-  <div>
+  <div style="position: fixed;">
     <BasicTable @register="registerTable" :rowSelection="rowSelection">
       <template #tableTitle>
         <a-button preIcon="ant-design:plus-outlined" type="primary" @click="handleAdd">新增</a-button>
@@ -20,8 +20,8 @@
           </a-button>
         </a-dropdown>
       </template>
-      <template #action="{ record }">
-        <TableAction :actions="getActions(record)" :dropDownActions="getDropDownAction(record)" />
+      <template #action="{ record, column }">
+        <TableAction :actions="getActions(record, column)" />
       </template>
       <template #bodyCell="{ column, record }">
         <slot name="filterCell" v-bind="{ column, record }"></slot>
@@ -34,7 +34,7 @@
 <script lang="ts" name="system-user" setup>
   //ts语法
   import { ref, provide, reactive, toRaw, defineExpose } from 'vue';
-  import { BasicTable, TableAction } from '/@/components/Table';
+  import { BasicTable, TableAction, ActionItem, EditRecordRow, BasicColumn } from '/@/components/Table';
   import { useModal } from '/@/components/Modal';
   import DeviceModal from './DeviceModal.vue';
   // import { getToken } from '/@/utils/auth';
@@ -213,21 +213,21 @@
    * 操作列定义
    * @param record
    */
-  function getActions(record) {
+  function getActions(record: EditRecordRow, column: BasicColumn): ActionItem[]  {
     return [
       {
         label: '编辑',
-        onClick: handleEdit.bind(null, record),
+        onClick: handleEdit.bind(null, record, column),
       },
       {
         label: '删除',
         popConfirm: {
           title: '是否确认删除',
-          confirm: handleDelete.bind(null, record),
+          confirm: handleDelete.bind(null, record, column),
         },
       },
       // {
-      //   label: '查看',
+      //   label: '查看',wss
       //   onClick: handleDetail.bind(null, record),
       // },
     ];

+ 15 - 2
src/views/vent/monitorManager/deviceMonitor/index.vue

@@ -14,7 +14,7 @@
         </a-tree>
       </div>
     </div>
-    <!-- <div class="location-icon" :class="{  'location-btn-show': !locationSettingShow, 'location-btn-hide': locationSettingShow, }" @click="showTree('location', true)" >
+    <div class="location-icon" :class="{  'location-btn-show': !locationSettingShow, 'location-btn-hide': locationSettingShow, }" @click="showTree('location', true)" >
       <SvgIcon size="18" name="put-away" />
       <span class="location-text">定位图标显示</span>
     </div>
@@ -38,7 +38,7 @@
           </template>
         </div>
       </div>
-    </div> -->
+    </div>
    
     <div class="bottom-tabs-box" @mousedown="setDivHeight" id="monitorBox">
       <div class="to-small" @click="toHome"></div>
@@ -338,6 +338,18 @@ function goDetail(record?) {
     } else if (deviceType.value.indexOf("fanlocal") != -1) {
       const newPage = router.resolve({ path: '/monitorChannel/monitor-fan-local' })
       window.open(newPage.href, '_blank')
+    } else if (deviceType.value.indexOf("nitrogen") != -1) {
+      const newPage = router.resolve({ path: '/compressor-home' })
+      window.open(newPage.href, '_blank')
+    } else if (deviceType.value.indexOf("pulping") != -1) {
+      const newPage = router.resolve({ path: '/grout-home' })
+      window.open(newPage.href, '_blank')
+    } else if (deviceType.value.indexOf("pressurefan") != -1) {
+      const newPage = router.resolve({ path: '/nitrogen/home' })
+      window.open(newPage.href, '_blank')
+    } else if (deviceType.value.indexOf("chamber") != -1) {
+      const newPage = router.resolve({ path: '/chamber-home' })
+      window.open(newPage.href, '_blank')
     } else {
       message.info('待开发。。。')
     }
@@ -440,6 +452,7 @@ onUnmounted(() => {
 })
 
 </script>
+
 <style lang="less" scoped >
 @import '/@/design/vent/modal.less';
 @ventSpace: zxm;

+ 9 - 7
src/views/vent/performance/fileDetail/commen/fileSystem.vue

@@ -57,19 +57,21 @@
   }
   // 删除
   const onDeltet = (node) => {
+    console.log(node,'shanchu')
     const pid = node.pid;
-    if (pid) {
+    if (pid && !node.children) {
       const parent = findParent(pid, props.list);
       parent.splice(
         parent.findIndex((item) => item.id == node.id),
         1
       );
-    } else {
-      props.list.splice(
-        props.list.findIndex((item) => item.id == node.id),
-        1
-      );
-    }
+    } 
+    // else {
+    //   props.list.splice(
+    //     props.list.findIndex((item) => item.id == node.id),
+    //     1
+    //   );
+    // }
 
     emit('deleteNode', {
       ...node,

+ 1 - 1
src/views/vent/performance/fileDetail/commen/treeList.vue

@@ -21,7 +21,7 @@
         <span class="vtl-node-content ellipsis" v-if="!editable && !model.isAdd">
           {{ model.title }}
         </span>
-        <input v-else class="vtl-input" type="text" ref="nodeInput" v-model="model.title" @blur="setUnEditable" />
+        <input v-else class="vtl-input" type="text" ref="nodeInput" v-model="model.title" @keyup.enter.native="setUnEditable" @blur="setUnEditable" />
       </div>
       <div class="vtl-operation" v-show="isHover && !editable && !model.isAdd">
         <!-- <span @click.stop.prevent="addChildFolder" v-if="isFolder">

+ 33 - 21
src/views/vent/performance/fileDetail/index.vue

@@ -31,8 +31,9 @@
         </div>
         <div class="list">
           <!-- <div class="bd-t"></div> -->
-          <NormalTable v-if="alive" :selfParam="selfParam" :searchParam="fileName" :nodeParam="nodeParam" :columns="columns" :list="getTree"
-            :deleteById="deleteById" :downLoad="downLoad" designScope="file-detail" title="文件详情" />
+          <NormalTable v-if="alive" :selfParam="selfParam" :searchParam="fileName" :nodeParam="nodeParam"
+            :columns="columns" :list="getTree" :deleteById="deleteById" :downLoad="downLoad" designScope="file-detail"
+            title="文件详情" />
           <!-- <div class="bd-b"></div> -->
         </div>
       </div>
@@ -50,9 +51,9 @@
           <JDictSelectTag v-model:value="formState.fileType" placeholder="请选择文件类型" dictCode="file_type"
             style="width: 500px;" />
         </a-form-item>
-        <a-form-item label="文件类型">
+        <a-form-item label="文件上传">
           <a-upload :before-upload="beforeUpload" @remove="handleRemove" :multiple="false" :file-list="fileList">
-            <a-button type="primary" preIcon="ant-design:cloud-upload-outlined">文件上传</a-button>
+            <a-button type="primary" preIcon="ant-design:cloud-upload-outlined">选择文件</a-button>
           </a-upload>
         </a-form-item>
       </a-form>
@@ -66,16 +67,16 @@ import { useMessage } from '/@/hooks/web/useMessage';
 import fileSystem from './commen/fileSystem.vue';
 import { SvgIcon } from '/@/components/Icon';
 import treeIcon from './commen/Icon/treeIcon.vue';
-import { ref, onMounted, reactive, nextTick,watch } from 'vue';
+import { ref, onMounted, reactive, nextTick, watch } from 'vue';
 import NormalTable from '../comment/NormalTable.vue';
 import { columns } from './fileDetail.data';
 import { getTree, createFile, editMenu, delMenu, uploadApi, downLoad, deleteById } from './fileDetail.api';
 import JDictSelectTag from '/@/components/Form/src/jeecg/components/JDictSelectTag.vue';
 
-let selfParam=reactive({//各矿参数
-  sysOrgCode:'',
-  bpmStatus:null,
-  flag:false
+let selfParam = reactive({//各矿参数
+  sysOrgCode: '',
+  bpmStatus: null,
+  flag: false
 })
 let router = useRouter(); //路由
 const { createMessage } = useMessage();
@@ -158,8 +159,8 @@ let list2trees = (data) => {
 let getTreeList = async () => {
   listArr.length = 0;
   let data = await getTree({ parentId: '' });
-  let list = list2trees(data.records);
-  console.log(list, 'list');
+  let datas = data.records.filter(v => v.fileType == null)
+  let list = list2trees(datas);
   listArr.push(...list);
   console.log(listArr, '树节点数据');
   selected.id = listArr[0].id
@@ -188,7 +189,6 @@ const onClick = (node) => {
 // };
 //添加文件
 const onAddNode = async (node) => {
-  console.log('新增111', node);
   let data = await createFile({ fileName: node.newName, type: 'FOL', parentId: node.id });
   console.log(data, '新增文件返回');
   getTreeList();
@@ -211,6 +211,8 @@ const onDeltet = (node) => {
   console.log(node, '删除菜单');
   if (node.pid == 'root') {
     createMessage.warning('根节点不能被删除!');
+  }else if(node.children){
+    createMessage.warning('该节点无法被删除,请先删除该节点下的子节点!');
   } else {
     delMenu({ id: node.id }).then((res) => {
       console.log(res, '删除文件');
@@ -230,13 +232,19 @@ let onSearch = () => {
 let beforeUpload = (file) => {
   console.log(file, '选中文件');
   fileList.length = 0;
-  fileList.push(file)
-  const formData = new FormData();
-  formData.append('file', file);
-  formData.append('parentId', selected.id);
-  formData.append('isApprove', formState.isApprove);
-  formData.append('fileType', formState.fileType);
-  startUpload.value = formData
+  let index = file.name.indexOf('.')
+  let name = file.name.substring(index + 1)
+  if (name == 'png' || name=='jpg' || name=='gif' || name=='psd' || name=='webp') {
+    createMessage.warning('禁止上传图片类型的文件!');
+  } else {
+    const formData = new FormData();
+    formData.append('file', file);
+    formData.append('parentId', selected.id);
+    formData.append('isApprove', formState.isApprove);
+    formData.append('fileType', formState.fileType);
+    startUpload.value = formData
+    fileList.push(file)
+  }
 };
 // 文件移除
 let handleRemove = (file) => {
@@ -265,8 +273,8 @@ onMounted(() => {
   padding: 15px;
   position: relative;
   margin-top: 100px;
-  background: url(../../../../assets/images/files/homes/bd.png) no-repeat center;
-  background-size: contain;
+  // background: url(../../../../assets/images/files/homes/bd.png) no-repeat center;
+  // background-size: contain;
   
   &::after{
     display: block;
@@ -431,4 +439,8 @@ onMounted(() => {
   }
 }
 
+
+::v-deep .zxm-form-item-control-input {
+  width: 90%;
+}
 </style>