Ver código fonte

Merge branch 'qingban' of http://maven.jgiot.com:7012/jiaxiaoqiang/JG-ADMIN-TEMP into qingban

qinhb 3 semanas atrás
pai
commit
fb5714d92b

+ 13 - 0
src/views/base/apply/excelDataBbox.vue

@@ -14,6 +14,7 @@
 import { ref } from "vue";
 import { updateProExcel } from "@/api/excel/index.ts";
 import ExcelView from "@/components/ExcelView/index.vue";
+import { uploadExcelBlob } from "@/api/apply/index";
 const setting = ref([]);
 const props = defineProps({
   data: {
@@ -309,6 +310,18 @@ watch(
   },
   { immediate: true }
 );
+onMounted(() => {
+  if(props.data.state === '3'){
+
+    setTimeout(() => {
+      let blobPromese = excelViewRef.value.toGetExcelBlob();
+      blobPromese.then((res) => {
+        console.log("=========", res);
+        uploadExcelBlob(res, props.data.id);
+      });
+    }, 1000);
+  }
+});
 </script>
 <style lang="scss" scoped>
 .exView {

+ 103 - 107
src/views/base/craftManagement/route/components/processComponent.vue

@@ -22,7 +22,7 @@
       </el-space>
     </div>
     <div class="types">
-      <el-dropdown @command="handleCommand">
+      <el-dropdown @command="handleCommand" :hide-on-click="false">
         <div class="typeBox addBtn">
           <el-icon class="icon"><CirclePlus /></el-icon>
           <div class="name">添加组件</div>
@@ -93,7 +93,7 @@
           type="primary"
           @click="bindCreate"
           style="margin-bottom: 15px"
-        >绑定双规格</el-button
+          >绑定双规格</el-button
         >
         <el-button
           type="primary"
@@ -108,34 +108,42 @@
         <SetExcel />
       </div>
     </div>
-    <el-dialog  v-model="dialog.visible"
-                :title="dialog.title"
-                width="900px"
-                @close="dialog.visible = false"
-                :destroy-on-close="true">
+    <el-dialog
+      v-model="dialog.visible"
+      :title="dialog.title"
+      width="900px"
+      @close="dialog.visible = false"
+      :destroy-on-close="true"
+    >
       <el-container>
         <el-aside width="200px" style="overflow: hidden">
-          <avue-tree :option="optionTree"
-                     :data="treeData"
-                     v-model="formTree"
-                     @node-click="nodeClick"
-                     @save="saveRow"
-                     @update="updateRow"
-                     @del="delRow"></avue-tree>
+          <avue-tree
+            :option="optionTree"
+            :data="treeData"
+            v-model="formTree"
+            @node-click="nodeClick"
+            @save="saveRow"
+            @update="updateRow"
+            @del="delRow"
+          ></avue-tree>
         </el-aside>
         <el-main>
           <el-button
             type="primary"
             @click="creatGroupData"
             style="margin-bottom: 15px"
-          >新增</el-button
+            >新增</el-button
           >
-          <BottomTable ref="tableTreeRef" :tableType="tableType" :groupId="groupId" :isTree="'1'"/>
+          <BottomTable
+            ref="tableTreeRef"
+            :tableType="tableType"
+            :groupId="groupId"
+            :isTree="'1'"
+          />
         </el-main>
       </el-container>
     </el-dialog>
   </div>
-
 </template>
 <script setup>
 import { Back, Document, CirclePlus, Delete } from "@element-plus/icons-vue";
@@ -143,8 +151,15 @@ import { VueDraggable } from "vue-draggable-plus";
 import BottomTable from "@/views/base/craftManagement/route/components/bottomTable.vue";
 import SetExcel from "./setExcel/index.vue";
 import { comTypes } from "@/views/base/craftManagement/route/components/configs";
-import { saveCompoents, getCompoentsList,treeDataList,treeDataSave,treeDataDel,treeDataUpdate } from "@/api/craft/process/index";
-const formTree=ref(null);
+import {
+  saveCompoents,
+  getCompoentsList,
+  treeDataList,
+  treeDataSave,
+  treeDataDel,
+  treeDataUpdate,
+} from "@/api/craft/process/index";
+const formTree = ref(null);
 import { useCommonStoreHook, useDictionaryStoreHook } from "@/store";
 import {
   processesByRouteId,
@@ -169,104 +184,85 @@ const loadTopList = () => {
     isChanged.value = false;
   });
 };
-const bindCreate=()=>{
-  treeDataList(treeParam.value).then(
-    (data)=>{
-      if(data.code==='200'){
-        treeData.value=data.data;
-      }
+const bindCreate = () => {
+  treeDataList(treeParam.value).then((data) => {
+    if (data.code === "200") {
+      treeData.value = data.data;
     }
-  )
-  dialog.visible=true;
-
-}
+  });
+  dialog.visible = true;
+};
 //查询工艺路线的一些信息
-const routeInfo = ref()
+const routeInfo = ref();
 const loadRouteInfo = async () => {
   const res = await processesByRouteId(route.fullPath.split("/")[6]);
   if (res.data) {
-    routeInfo.value = res.data
+    routeInfo.value = res.data;
   }
-}
+};
 //弹窗传递分组id
 const groupId = ref(null);
-const nodeClick =(data)=>{
-  groupId.value=data.id;
-}
+const nodeClick = (data) => {
+  groupId.value = data.id;
+};
 const treeSave = ref({});
-const saveRow=(node, data, done, loading)=>{
-   console.log(data);
-    treeSave.value.operationId = route.fullPath.split("/")[4];
-    treeSave.value.label=data.label;
-    treeSave.value.value=data.label;
-    treeSave.value.materialType=materialType.value;
-    treeDataSave(treeSave.value).then(
-      (res)=>{
-        if(res.code==='200'){
-           ElMessage.success("操作成功!");
-          treeDataList(dataDetail.value).then(
-            (res)=>{
-              treeData.value=res.data;
-            }
-          )
-        }
+const saveRow = (node, data, done, loading) => {
+  console.log(data);
+  treeSave.value.operationId = route.fullPath.split("/")[4];
+  treeSave.value.label = data.label;
+  treeSave.value.value = data.label;
+  treeSave.value.materialType = materialType.value;
+  treeDataSave(treeSave.value)
+    .then((res) => {
+      if (res.code === "200") {
+        ElMessage.success("操作成功!");
+        treeDataList(dataDetail.value).then((res) => {
+          treeData.value = res.data;
+        });
       }
-    ).finally(
-       done()
-    );
-}
+    })
+    .finally(done());
+};
 
 const delRow = (data, done) => {
-  ElMessageBox.confirm('此操作将永久删除此分组, 是否继续?', '提示', {
-    confirmButtonText: '确定',
-    cancelButtonText: '取消',
-    type: 'warning'
-  }).then(() => {
-
-    treeDataDel(data.data).then(
-      (resouce)=>{
+  ElMessageBox.confirm("此操作将永久删除此分组, 是否继续?", "提示", {
+    confirmButtonText: "确定",
+    cancelButtonText: "取消",
+    type: "warning",
+  })
+    .then(() => {
+      treeDataDel(data.data).then((resouce) => {
         done();
-        if(resouce.code==="200"){
+        if (resouce.code === "200") {
           ElMessage.success("删除成功");
-
-        }else {
+        } else {
           ElMessage.error(resouce.msg);
-          treeDataList(dataDetail.value).then(
-            (res)=>{
-              treeData.value=res.data;
-            }
-          )
+          treeDataList(dataDetail.value).then((res) => {
+            treeData.value = res.data;
+          });
         }
-      }
-
-    )
-  }).catch(() => {
-    ElMessage.info('已取消删除')
-  })
-}
-const dataDetail=ref({});
+      });
+    })
+    .catch(() => {
+      ElMessage.info("已取消删除");
+    });
+};
+const dataDetail = ref({});
 const updateRow = (node, data, done, loading) => {
-  treeDataUpdate(data).then(
-    (resouce)=>{
-      done();
-      if(resouce.code==="200"){
-        ElMessage.success("修改成功");
-
-        treeDataList(dataDetail.value).then(
-          (res)=>{
-            treeData.value=res.data;
-          }
-        )
+  treeDataUpdate(data).then((resouce) => {
+    done();
+    if (resouce.code === "200") {
+      ElMessage.success("修改成功");
 
-      }else {
-        ElMessage.error(resouce.msg);
-      }
+      treeDataList(dataDetail.value).then((res) => {
+        treeData.value = res.data;
+      });
+    } else {
+      ElMessage.error(resouce.msg);
     }
-
-  )
-}
+  });
+};
 const optionTree = {
-
   formOption: {
     labelWidth: 100,
     column: [
@@ -285,15 +281,15 @@ const optionTree = {
 };
 const treeData = ref(null);
 const treeParam = ref({});
-treeParam.value.operationId=route.fullPath.split("/")[4]
+treeParam.value.operationId = route.fullPath.split("/")[4];
 onMounted(async () => {
   prodtCode.value = route.fullPath.split("/")[5];
   routerId.value = route.fullPath.split("/")[6];
   await loadTopList();
   loadRouteInfo();
-  dataDetail.value.operationId=route.fullPath.split("/")[4]
-  treeParam.value.materialType="1";
-  dataDetail.value.materialType="1";
+  dataDetail.value.operationId = route.fullPath.split("/")[4];
+  treeParam.value.materialType = "1";
+  dataDetail.value.materialType = "1";
 });
 
 // 顶部====================
@@ -302,13 +298,13 @@ const back = () => {
 };
 
 const save = async () => {
-  selectProComs.value.forEach(item1 => {
-    comTypes.find(item2 => {
+  selectProComs.value.forEach((item1) => {
+    comTypes.find((item2) => {
       if (item2.compentName === item1.compentName) {
-        item1.index = item2.index
+        item1.index = item2.index;
       }
     });
-  })
+  });
   selectProComs.value = selectProComs.value.sort((a, b) => {
     return a.index - b.index;
   });
@@ -424,8 +420,8 @@ const getTipContent = (itemValue) => {
 const materialType = ref("1");
 const materialTypeChange = (val) => {
   materialType.value = val;
-  dataDetail.value.materialType=val;
-  treeParam.value.materialType=val;
+  dataDetail.value.materialType = val;
+  treeParam.value.materialType = val;
   if (val === "1") {
     tableType.value = "wuliaocaiji";
   } else {

+ 5 - 4
src/views/system/user/components/dept-tree.vue

@@ -64,10 +64,11 @@ function handleNodeClick(data: { [key: string]: any }) {
 
 onBeforeMount?.(() => {
   treeList().then((response) => {
-    if (response.data) {
-      deptId.value = response.data[0].id;
-      emits("node-click");
-    }
+    // lupeng说默认不让传
+    // if (response.data) {
+    //   deptId.value = response.data[0].id;
+    //   emits("node-click");
+    // }
     deptList.value = response.data;
   });
 });

+ 35 - 31
src/views/system/user/index.vue

@@ -48,19 +48,19 @@
           <template #header>
             <div class="flex justify-between">
               <div>
-                <el-button
-                  v-hasPerm="['sys:user:add']"
-                  type="primary"
-                  @click="openDialog('user-form')"
-                  ><i-ep-plus />新增</el-button
-                >
-                <el-button
-                  v-hasPerm="['sys:user:delete']"
-                  type="danger"
-                  :disabled="removeIds.length === 0"
-                  @click="handleDelete()"
-                  ><i-ep-delete />删除</el-button
-                >
+                <!--                <el-button-->
+                <!--                  v-hasPerm="['sys:user:add']"-->
+                <!--                  type="primary"-->
+                <!--                  @click="openDialog('user-form')"-->
+                <!--                  ><i-ep-plus />新增</el-button-->
+                <!--                >-->
+                <!--                <el-button-->
+                <!--                  v-hasPerm="['sys:user:delete']"-->
+                <!--                  type="danger"-->
+                <!--                  :disabled="removeIds.length === 0"-->
+                <!--                  @click="handleDelete()"-->
+                <!--                  ><i-ep-delete />删除</el-button-->
+                <!--                >-->
               </div>
               <div>
                 <el-dropdown split-button>
@@ -144,15 +144,15 @@
             />
             <el-table-column label="操作" fixed="right" width="220">
               <template #default="scope">
-                <el-button
-                  v-hasPerm="['sys:user:reset_pwd']"
-                  type="primary"
-                  size="small"
-                  link
-                  v-if="scope.row.id !== '1'"
-                  @click="resetPassword(scope.row)"
-                  ><i-ep-refresh-left />重置密码</el-button
-                >
+                <!--                <el-button-->
+                <!--                  v-hasPerm="['sys:user:reset_pwd']"-->
+                <!--                  type="primary"-->
+                <!--                  size="small"-->
+                <!--                  link-->
+                <!--                  v-if="scope.row.id !== '1'"-->
+                <!--                  @click="resetPassword(scope.row)"-->
+                <!--                  ><i-ep-refresh-left />重置密码</el-button-->
+                <!--                >-->
                 <el-button
                   v-hasPerm="['sys:user:edit']"
                   type="primary"
@@ -162,15 +162,15 @@
                   @click="openDialog('user-form', scope.row)"
                   ><i-ep-edit />编辑</el-button
                 >
-                <el-button
-                  v-hasPerm="['sys:user:del']"
-                  type="primary"
-                  link
-                  size="small"
-                  v-if="scope.row.id !== '1'"
-                  @click="handleDelete(scope.row.id)"
-                  ><i-ep-delete />删除</el-button
-                >
+                <!--                <el-button-->
+                <!--                  v-hasPerm="['sys:user:del']"-->
+                <!--                  type="primary"-->
+                <!--                  link-->
+                <!--                  size="small"-->
+                <!--                  v-if="scope.row.id !== '1'"-->
+                <!--                  @click="handleDelete(scope.row.id)"-->
+                <!--                  ><i-ep-delete />删除</el-button-->
+                <!--                >-->
               </template>
             </el-table-column>
           </el-table>
@@ -216,6 +216,7 @@
             <el-form-item label="用户昵称" prop="nickName">
               <el-input
                 v-model="formData.nickName"
+                :disabled="!!formData.id"
                 placeholder="请输入用户昵称"
               />
             </el-form-item>
@@ -228,6 +229,7 @@
               <el-input
                 v-model="formData.employeeCode"
                 placeholder="请输入员工编号"
+                :disabled="!!formData.id"
               />
             </el-form-item>
           </el-col>
@@ -546,6 +548,8 @@ async function loadDeptOptions() {
  *
  * @param type 弹窗类型  用户表单:user-form | 用户导入:user-import
  * @param id 用户ID
+ * @param {string} type
+ * @param {*} row
  */
 async function openDialog(type, row) {
   dialog.visible = true;

+ 1 - 1
tsconfig.json

@@ -12,7 +12,7 @@
     "lib": ["esnext", "dom"],
     "baseUrl": ".",
     "allowJs": true,
-    "noImplicitAny": true,
+    "noImplicitAny": false,
     "paths": {
       "@/*": ["src/*"]
     },