Jelajahi Sumber

险峰优化

qinhb 4 bulan lalu
induk
melakukan
7da21e708a

+ 27 - 0
src/api/storage/index.ts

@@ -69,3 +69,30 @@ export function syncPositionVehicle(
     data: queryParams,
   });
 }
+export function queryWarningUser(
+    queryParams: object
+): AxiosPromise<any> {
+  return request({
+    url: "/api/v1/warningUser/page",
+    method: "post",
+    data: queryParams,
+  });
+}
+export function delWarningUser(
+    queryParams: object
+): AxiosPromise<any> {
+  return request({
+    url: "/api/v1/warningUser/del",
+    method: "post",
+    data: queryParams,
+  });
+}
+export function addWarningUser(
+    queryParams: object
+): AxiosPromise<any> {
+  return request({
+    url: "/api/v1/warningUser/add",
+    method: "post",
+    data: queryParams,
+  });
+}

+ 4 - 4
src/views/base/craftManagement/process/index.vue

@@ -26,7 +26,7 @@
           >删除</el-button
         >
       </template>
-      <template #menu-right="{}">
+<!--      <template #menu-right="{}">
         <el-dropdown split-button
           >导入
           <template #dropdown>
@@ -42,13 +42,13 @@
             </el-dropdown-menu>
           </template>
         </el-dropdown>
-        <!-- <el-button
+        &lt;!&ndash; <el-button
           class="ml-3"
           @click="exportData('/api/v1/plan/order/export')"
         >
           <template #icon> <i-ep-download /> </template>导出
-        </el-button> -->
-      </template>
+        </el-button> &ndash;&gt;
+      </template>-->
     </avue-crud>
     <ExcelUpload ref="uploadRef" @finished="uploadFinished" />
   </div>

+ 17 - 5
src/views/base/craftManagement/route/index.vue

@@ -39,10 +39,18 @@
               <el-dropdown-item
                 @click="downloadTemplate('/api/v1/op/route/template')"
               >
-                <i-ep-download />下载模板
+                <i-ep-download />下载工艺模板
               </el-dropdown-item>
-              <el-dropdown-item @click="importExcelData">
-                <i-ep-top />导入数据
+              <el-dropdown-item
+                  @click="downloadTemplate('/api/v1/op/route/template1')"
+              >
+                <i-ep-download />下载工序模板
+              </el-dropdown-item>
+              <el-dropdown-item @click="importExcelData(0)">
+                <i-ep-top />导入工艺数据
+              </el-dropdown-item>
+              <el-dropdown-item @click="importExcelData(1)">
+                <i-ep-top />导入工序数据
               </el-dropdown-item>
             </el-dropdown-menu>
           </template>
@@ -184,9 +192,13 @@ const uploadFinished = () => {
   page.currentPage = 1;
   dataList();
 };
-const importExcelData = () => {
+const importExcelData = (type) => {
   if (uploadRef.value) {
-    uploadRef.value.show("/api/v1/op/route/import");
+    if(type === 0){
+      uploadRef.value.show("/api/v1/op/route/import");
+    }else{
+      uploadRef.value.show("/api/v1/op/route/import1");
+    }
   }
 };
 

+ 6 - 6
src/views/plan/order/index.vue

@@ -396,13 +396,13 @@ option.value = {
         },
       ],
     },
-    {
+   /* {
       label: "计划单号",
       prop: "planCode",
       search: true,
       width: 130,
       overHidden: true,
-    },
+    },*/
     {
       label: "订单类型",
       prop: "orderType",
@@ -519,13 +519,13 @@ option.value = {
       disabled: true,
       prop: "materialModel",
     },
-    {
+   /* {
       label: "工作令号",
       width: 130,
       overHidden: true,
       prop: "workOrder",
-    },
-    {
+    },*/
+  /*  {
       label: "部(组)件代号",
       width: 130,
       overHidden: true,
@@ -536,7 +536,7 @@ option.value = {
       width: 130,
       overHidden: true,
       prop: "assemblyName",
-    },
+    },*/
     {
       label: "订单状态",
       prop: "orderState",

+ 3 - 0
src/views/plan/prepareTemplate/index.vue

@@ -204,6 +204,9 @@ const openDialog = (type, row) => {
     form.value.materialName = "";
     form.value.materialModel = "";
     form.value.template = [];
+    templates.value.forEach((item)=>{
+      form.value.template.push(item.dictValue)
+    })
     clickTemplates.value = [];
     dialog1.visible = true;
   } else if (type === 1) {

+ 85 - 23
src/views/storage/warningRole/index.vue

@@ -1,26 +1,22 @@
 <template>
   <div class="mainContentBox" style="width:50%; float: left;">
     <avue-crud
-        ref="crudRef"
+        ref="crudRef1"
         v-model="form"
         :data="data"
         :option="option"
-        @row-save="createRow"
-        @row-update="updateRow"
-        @row-del="deleteRow"
+        @row-update="userSave"
         @row-click="rowClick"
     >
     </avue-crud>
   </div>
   <div class="mainContentBox" style="width:50%;float: left;">
     <avue-crud
-        ref="crudRef"
+        ref="crudRef2"
         v-model="form"
         :data="data1"
         :option="option1"
-        @row-save="createRow"
-        @row-update="updateRow"
-        @row-del="deleteRow"
+        @row-del="delUser"
     >
     </avue-crud>
   </div>
@@ -29,23 +25,43 @@
 import { ref, getCurrentInstance } from "vue";
 import { useCrud } from "@/hooks/userCrud";
 import {queryDictDataByType } from "@/api/system/dict"
+import {queryWarningUser,delWarningUser,addWarningUser} from "@/api/storage"
+import {getUserList} from "@/api/system/user"
 import { useCommonStoreHook } from "@/store";
-import dictDataUtil from "@/common/configs/dictDataUtil";
 const { isShowTable, tableType } = toRefs(useCommonStoreHook());
+const crudRef1 = ref(null);
+const crudRef2 = ref(null);
 const rowClick = (row) => {
-
+  selectRow.value = row
+  crudRef1.value.setCurrentRow(row);
+  queryUsers(row.dictValue)
 };
-
+const selectRow = ref()
+const userSave =(row,done, loading)=>{
+  loading()
+  row.roleCode = row.dictValue
+  let userObj = []
+  row.userName.forEach(item=>{
+    const user = userList.value.filter((u)=>u.userName == item)[0]
+    userObj.push({"userId": user.id,"userName": item})
+  })
+  row.users = userObj;
+  //createRow(row,done, loading)
+  addWarningUser(row).then(()=>{
+    rowClick(selectRow.value)
+  })
+  done()
+}
 // 传入一个url,后面不带/
 const { form, data, option, search, page, toDeleteIds, Methords, Utils } =
   useCrud({
-    src: "/api/v1/wmsOrder",
+    src: "/api/v1/warningUser",
   });
 const { dataList, createRow, updateRow, deleteRow, searchChange, resetChange } = Methords; //增删改查
 const { selectionChange, multipleDelete } = Methords; //选中和批量删除事件
 const { checkBtnPerm, downloadTemplate, exportData } = Utils; //按钮权限等工具
-
-const crudRef = ref(null); //crudRef.value 获取avue-crud对象
+const userList = ref([])
+//crudRef.value 获取avue-crud对象
 // 设置表格列或者其他自定义的option
 option.value = Object.assign(option.value, {
   delBtn: false,
@@ -55,12 +71,28 @@ option.value = Object.assign(option.value, {
   menu: true,
   addBtn: false,
   searchBtn: false,
+  toolBtn: false,
+  highlightCurrentRow: true,
   column: [
     {
       label: "角色名称",
       prop: "dictLabel",
       overHidden: true,
       type: "select",
+      editDisplay: false,
+    },
+    {
+      label: "用户名称",
+      prop: "userName",
+      overHidden: true,
+      hide: true,
+      type: "select",   //下拉框类型
+      multiple: true,
+      dicData: userList,
+      props: {
+        label: "userName",
+        value: "userName",
+      },
     },
   ],
 });
@@ -73,27 +105,57 @@ const option1 = ref({
   menu: true,
   addBtn: false,
   searchBtn: false,
+  refreshBtn: false,
   column: [
     {
       label: "用户名称",
-      prop: "dictLabel",
+      prop: "userName",
       overHidden: true,
-      type: "select",
-      dicUrl:
-          dictDataUtil.request_url + dictDataUtil.TYPE_CODE.warning_role,
-      props: {
-        label: "dictLabel",
-        value: "dictValue",
-      },
     },
   ],
 });
 const queryRoles = () => {
   queryDictDataByType("warning_role").then((res)=>{
-    data.value =res.data
+    data.value = res.data
+    rowClick(data.value[0])
+    data.value.forEach(item=>{
+      let users = []
+      queryWarningUser({roleCode: item.dictValue}).then((u)=>{
+        u.data.records.forEach((uu)=>{
+          users.push(uu.userName)
+        })
+        item.userName = users
+      })
+    })
   });
 };
+const delUser = (row)=>{
+  ElMessageBox.confirm("确定要删除数据吗?", "提示", {
+    confirmButtonText: "确定",
+    cancelButtonText: "取消",
+    type: "warning",
+    lockScroll: false,
+  }).then(() => {
+    delWarningUser(row).then((res)=>{
+      queryRoles()
+    });
+  });
+}
+
+const queryUsers = (code)=>{
+  data1.value = []
+  queryWarningUser({roleCode: code}).then((res)=>{
+    data1.value = res.data.records
+  })
+
+}
+const queryUserList = ()=>{
+  getUserList({}).then((res)=>{
+    userList.value = res.data
+  })
+}
 onMounted(() => {
+  queryUserList()
   // console.log("crudRef", crudRef)
   //search.value.type = '2'
   queryRoles();

+ 12 - 12
src/views/system/user/index.vue

@@ -14,7 +14,7 @@
             <el-form-item label="关键字" prop="keywords">
               <el-input
                 v-model="queryParams.keywords"
-                placeholder="用户名/昵称/手机号"
+                placeholder="账号/姓名/工作证号"
                 clearable
                 style="width: 200px"
                 @keyup.enter="handleQuery"
@@ -90,7 +90,7 @@
           >
             <el-table-column type="selection" width="50" align="center" />
             <el-table-column
-              label="用户名"
+              label="账号"
               width="120"
               align="center"
               prop="userName"
@@ -103,7 +103,7 @@
             />
             <el-table-column
                 key="employeeCode"
-                label="员工编号"
+                label="工作证号"
                 align="center"
                 prop="employeeCode"
             />
@@ -209,27 +209,27 @@
       >
         <el-row :gutter="22">
           <el-col :span="11">
-            <el-form-item label="用户名" prop="userName">
+            <el-form-item label="账号" prop="userName">
               <el-input
                   v-model="formData.userName"
                   :disabled="!!formData.id"
-                  placeholder="请输入用户名"
+                  placeholder="请输入账号"
               />
             </el-form-item>
           </el-col>
             <el-col :span="11">
-            <el-form-item label="用户昵称" prop="nickName">
-              <el-input v-model="formData.nickName" placeholder="请输入用户昵称" />
+            <el-form-item label="姓名" prop="nickName">
+              <el-input v-model="formData.nickName" placeholder="请输入姓名" />
             </el-form-item>
           </el-col>
         </el-row>
 
         <el-row :gutter="22">
           <el-col :span="11">
-            <el-form-item label="员工编号" prop="employeeCode">
+            <el-form-item label="工作证号" prop="employeeCode">
               <el-input
                   v-model="formData.employeeCode"
-                  placeholder="请输入员工编号"
+                  placeholder="请输入工作证号"
               />
             </el-form-item>
           </el-col>
@@ -440,9 +440,9 @@ const importData = reactive({
 
 // 校验规则
 const rules = reactive({
-  userName: [{ required: true, message: "用户名不能为空", trigger: "blur" }],
-  nickName: [{ required: true, message: "用户昵称不能为空", trigger: "blur" }],
-  employeeCode: [{ required: true, message: "员工编号不能为空", trigger: "blur" }],
+  userName: [{ required: true, message: "账号不能为空", trigger: "blur" }],
+  nickName: [{ required: true, message: "姓名不能为空", trigger: "blur" }],
+  employeeCode: [{ required: true, message: "工作证号不能为空", trigger: "blur" }],
   deptIds: [{ required: true, message: "所属部门不能为空", trigger: "blur" }],
   roleIds: [{ required: true, message: "用户角色不能为空", trigger: "blur" }],
   postIds: [{ required: true, message: "用户岗位不能为空", trigger: "blur" }],