فهرست منبع

不合格处置日期

jxq 3 هفته پیش
والد
کامیت
1b16f12c36
4فایلهای تغییر یافته به همراه117 افزوده شده و 93 حذف شده
  1. 1 1
      src/components/Search/index.vue
  2. 1 0
      src/layout/components/AppMain/index.vue
  3. 77 73
      src/views/unqualified/add.vue
  4. 38 19
      src/views/unqualified/index.vue

+ 1 - 1
src/components/Search/index.vue

@@ -7,7 +7,7 @@
           <el-input
             class="tep"
             v-model="searchForm[option.prop]"
-            placeholder="Please input"
+            placeholder="请输入"
             clearable
           />
         </div>

+ 1 - 0
src/layout/components/AppMain/index.vue

@@ -84,6 +84,7 @@ const cachedViews = computed(() => useTagsViewStore().cachedViews); // 缓存页
 }
 
 .main-container {
+  width: 100%;
   padding: 10px;
   height: calc(100vh - 86px);
   overflow: auto;

+ 77 - 73
src/views/unqualified/add.vue

@@ -28,7 +28,7 @@
               />
             </el-select>
           </el-form-item>
-<!--
+          <!--
           <el-form-item label="检验批号" hidden>
             <div>{{ selectedOrder.workOrderCode }}</div>
           </el-form-item>-->
@@ -50,16 +50,16 @@
           </el-form-item>
           <el-form-item label="产品分类" prop="type">
             <el-select
-                v-model="saleForm.type"
-                value-key="value"
-                placeholder="请选择产品分类"
-                style="width: 100%"
+              v-model="saleForm.type"
+              value-key="value"
+              placeholder="请选择产品分类"
+              style="width: 100%"
             >
               <el-option
-                  v-for="item in typeList"
-                  :key="item.dictValue"
-                  :label="item.dictLabel"
-                  :value="item.dictValue"
+                v-for="item in typeList"
+                :key="item.dictValue"
+                :label="item.dictLabel"
+                :value="item.dictValue"
               />
             </el-select>
           </el-form-item>
@@ -68,62 +68,61 @@
           </el-form-item>
           <el-form-item label="检验批号或生产批号" prop="checkProduceNo">
             <el-input v-model="saleForm.checkProduceNo"></el-input>
-            <input v-model="saleForm.workOrderCode" hidden="true"/>
+            <input v-model="saleForm.workOrderCode" hidden="true" />
           </el-form-item>
           <el-form-item label="数量" prop="num">
-            <el-input v-model="saleForm.num" type="number"/>
+            <el-input v-model="saleForm.num" type="number" />
           </el-form-item>
           <el-form-item label="供方单位" prop="company">
-            <el-input v-model="saleForm.company"/>
+            <el-input v-model="saleForm.company" />
           </el-form-item>
           <el-form-item label="审核类型" prop="auditType">
             <el-select
-                v-model="saleForm.auditType"
-                value-key="value"
-                placeholder="请选择审核类型"
-                style="width: 100%"
+              v-model="saleForm.auditType"
+              value-key="value"
+              placeholder="请选择审核类型"
+              style="width: 100%"
             >
               <el-option
-                  v-for="item in auditTypes"
-                  :key="item.dictValue"
-                  :label="item.dictLabel"
-                  :value="item.dictValue"
+                v-for="item in auditTypes"
+                :key="item.dictValue"
+                :label="item.dictLabel"
+                :value="item.dictValue"
               />
             </el-select>
           </el-form-item>
           <el-form-item label="审理级别" prop="level">
             <el-select
-                v-model="saleForm.level"
-                value-key="value"
-                placeholder="请选择审理级别"
-                style="width: 100%"
+              v-model="saleForm.level"
+              value-key="value"
+              placeholder="请选择审理级别"
+              style="width: 100%"
             >
               <el-option
-                  v-for="item in levelTypes"
-                  :key="item.dictValue"
-                  :label="item.dictLabel"
-                  :value="item.dictValue"
+                v-for="item in levelTypes"
+                :key="item.dictValue"
+                :label="item.dictLabel"
+                :value="item.dictValue"
               />
             </el-select>
           </el-form-item>
           <el-form-item label="发生阶段" prop="stage">
-            <el-input v-model="saleForm.stage"/>
+            <el-input v-model="saleForm.stage" />
           </el-form-item>
           <el-form-item label="发生日期" prop="happenTime">
             <el-date-picker
-                v-model="remark1.happenTime"
-                type="date"
-                :disabled-date="disabledDate1"
-                placeholder="请选择日期"
-                clearable
-                format="YYYY年MM月DD日"
-                value-format="YYYY年MM月DD日"
-                style="width: 100%"
+              v-model="remark1.happenTime"
+              type="date"
+              :disabled-date="disabledDate1"
+              placeholder="请选择日期"
+              clearable
+              format="YYYY年MM月DD日"
+              value-format="YYYY年MM月DD日"
+              style="width: 100%"
             />
           </el-form-item>
         </el-form>
 
-
         <el-form
           ref="remark1Ref"
           :model="remark1"
@@ -135,7 +134,7 @@
             <el-input v-model="remark1.content" type="textarea" />
           </el-form-item>
           <el-form-item label="填表人" prop="user">
-<!--            <el-select
+            <!--            <el-select
               v-model="remark1.user"
               placeholder="请选择"
               style="width: 100%"
@@ -148,23 +147,22 @@
               />
             </el-select>-->
             <el-tree-select
-                v-model="remark1.user"
-                :data="userList"
-                filterable
+              v-model="remark1.user"
+              :data="userList"
+              filterable
             />
           </el-form-item>
           <el-form-item label="检验人" prop="user1">
             <el-tree-select
-                v-model="remark1.user1"
-                :data="userList"
-                filterable
+              v-model="remark1.user1"
+              :data="userList"
+              filterable
             />
           </el-form-item>
           <el-form-item label="日期" prop="time">
             <el-date-picker
               v-model="remark1.time"
               type="date"
-              :disabled-date="disabledDate"
               placeholder="请选择日期"
               clearable
               format="YYYY年MM月DD日"
@@ -174,9 +172,9 @@
           </el-form-item>
           <el-form-item label="下一步处理人" prop="nextRemarkUser">
             <el-tree-select
-                v-model="remark1.nextRemarkUser"
-                :data="userList"
-                filterable
+              v-model="remark1.nextRemarkUser"
+              :data="userList"
+              filterable
             />
           </el-form-item>
         </el-form>
@@ -197,23 +195,24 @@ import { getOrderList } from "@/api/sales/index";
 import { getUserTree } from "@/api/user/index";
 import { useDictionaryStore } from "@/store";
 const drawerVisible = ref(false);
-const disabledDate = (time)=> {
+const disabledDate = (time) => {
   //选择今天以及今天之后的日期
-  return time.getTime() < Date.now() - 8.64e7;//如果没有后面的-8.64e7就是不可以选择
+  return time.getTime() < Date.now() - 8.64e7; //如果没有后面的-8.64e7就是不可以选择
   //选择今天以及今天之前的日期
   //return time.getTime() > Date.now() - 8.64e7;//如果没有后面的-8.64e7就是不可以选择今天的
-}
-const disabledDate1 = (time)=> {
+};
+const disabledDate1 = (time) => {
   //选择今天以及今天之后的日期
-  return time.getTime() > Date.now() - 8.64e7;//如果没有后面的-8.64e7就是不可以选择
+  return time.getTime() > Date.now() - 8.64e7; //如果没有后面的-8.64e7就是不可以选择
   //选择今天以及今天之前的日期
   //return time.getTime() > Date.now() - 8.64e7;//如果没有后面的-8.64e7就是不可以选择今天的
-}
+};
 const { dicts } = useDictionaryStore();
-const auditTypes = dicts.unqualified_audit_type
+const auditTypes = dicts.unqualified_audit_type;
 const levelTypes = ref([
-  {dictValue: "0",dictLabel: "一级"},{dictValue: "1",dictLabel: "二级"}
-])
+  { dictValue: "0", dictLabel: "一级" },
+  { dictValue: "1", dictLabel: "二级" },
+]);
 const baseInfoRef = ref(null);
 const saleForm = reactive({
   customer: "",
@@ -234,35 +233,37 @@ const remark1 = reactive({
 });
 
 const rules = {
-  type: [
-    { required: true, message: "请选择产品分类", trigger: "blur" },
-  ],
+  type: [{ required: true, message: "请选择产品分类", trigger: "blur" }],
   componentName: [
     { required: true, message: "请输入器件名称及型号", trigger: "blur" },
   ],
-  num: [
-    { required: true, message: "请输入数量", trigger: "blur" },
-  ],
-  auditType: [
-    { required: true, message: "请选择审核类型", trigger: "blur" },
-  ],
+  num: [{ required: true, message: "请输入数量", trigger: "blur" }],
+  auditType: [{ required: true, message: "请选择审核类型", trigger: "blur" }],
   seqs: [{ required: true, message: "请选择订单信息", trigger: "change" }],
-  checkProduceNo: [{ required: true, message: "请输入检验批号或生产批号", trigger: "change" }],
+  checkProduceNo: [
+    { required: true, message: "请输入检验批号或生产批号", trigger: "change" },
+  ],
   level: [{ required: true, message: "请选择审理级别", trigger: "change" }],
   company: [{ required: true, message: "请输入供方单位", trigger: "change" }],
-  happenTime: [{ required: true, message: "请选择发生时间", trigger: "change" }],
+  happenTime: [
+    { required: true, message: "请选择发生时间", trigger: "change" },
+  ],
   stage: [{ required: true, message: "请输入发生阶段", trigger: "change" }],
 };
 const rules1 = {
   content: [
-    { required: true, message: "请输入不合格现象(质量问题)描述", trigger: "blur" },
+    {
+      required: true,
+      message: "请输入不合格现象(质量问题)描述",
+      trigger: "blur",
+    },
     { min: 2, max: 200, message: "长度在 2 到 200 个字符", trigger: "blur" },
   ],
   user: [
     { required: true, message: "请输入姓名", trigger: "blur" },
     { min: 2, max: 20, message: "长度在 2 到 20 个字符", trigger: "blur" },
   ],
-  user1:[{ required: true, message: "检验人员不能为空", trigger: "blur" }],
+  user1: [{ required: true, message: "检验人员不能为空", trigger: "blur" }],
   time: [{ required: true, message: "请选择日期", trigger: "change" }],
   nextRemarkUser: [
     { required: true, message: "请选择处理人", trigger: "change" },
@@ -273,7 +274,7 @@ const rules1 = {
 // 订单相关信息
 const orders = ref([]);
 const opOptions = ref([...dicts.spc_operation]);
-const typeList = dicts.sales_info_type
+const typeList = dicts.sales_info_type;
 const selectedOrder = ref({});
 const selectOrderCode = ref("");
 const getOrders = async () => {
@@ -289,7 +290,10 @@ const getOrders = async () => {
 };
 const orderSelect = (value) => {
   selectedOrder.value = value;
-  seqList.value = selectedOrder.value.seqs.map((item, index) => ({ value: item, label: item }));
+  seqList.value = selectedOrder.value.seqs.map((item, index) => ({
+    value: item,
+    label: item,
+  }));
   saleForm.seqs = [];
 };
 

+ 38 - 19
src/views/unqualified/index.vue

@@ -1,7 +1,7 @@
 <template>
-  <div class="container">
+  <div class="container2">
     <div class="header">
-      <Search :searchOptions="searchForm" ref="searchRef" @dataList="getData"/>
+      <Search :searchOptions="searchForm" ref="searchRef" @dataList="getData" />
     </div>
     <div class="table">
       <el-button
@@ -16,15 +16,24 @@
         <el-table-column prop="materialModel" label="产品型号" />
         <el-table-column prop="type" label="产品分类" />
         <el-table-column prop="workOrderCode" label="生产批号" />
-        <el-table-column prop="seqs" label="管号" width="200" overhidden="true"/>
+        <el-table-column
+          prop="seqs"
+          label="管号"
+          width="200"
+          overhidden="true"
+        />
         <el-table-column prop="seqNum" label="数量" />
         <el-table-column prop="componentName" label="器件名称及型号" />
         <el-table-column prop="num" label="数量" />
         <el-table-column prop="company" label="供方单位" overhidden="true" />
-        <el-table-column prop="currentUserName" label="审核人" overhidden="true" />
+        <el-table-column
+          prop="currentUserName"
+          label="审核人"
+          overhidden="true"
+        />
         <el-table-column prop="auditType" label="审核类型">
           <template #default="{ row }">
-              {{ getTextByAuditType(row.auditType) }}
+            {{ getTextByAuditType(row.auditType) }}
           </template>
         </el-table-column>
         <el-table-column prop="state" label="审核状态">
@@ -52,7 +61,10 @@
             >
             <el-button
               link
-              v-if="(row.state === 0 || row.state === 1) && userStore.user.username == row.currentUserName"
+              v-if="
+                (row.state === 0 || row.state === 1) &&
+                userStore.user.username == row.currentUserName
+              "
               @click="handle(row)"
               type="primary"
               >处理</el-button
@@ -87,7 +99,7 @@
 
 <script setup>
 import Search from "@/components/Search/index.vue";
-import { useSpcStore,useUserStore,useDictionaryStore } from "@/store";
+import { useSpcStore, useUserStore, useDictionaryStore } from "@/store";
 const { dicts } = useDictionaryStore();
 import { deleteFeedback, getUnqualifiedData } from "@/api/unqualified/index";
 import Add from "@/views/unqualified/add.vue";
@@ -104,7 +116,7 @@ defineOptions({
   name: "SPCUnqualified",
 });
 const userStore = useUserStore();
-const auditTypes = dicts.unqualified_audit_type
+const auditTypes = dicts.unqualified_audit_type;
 const store = useSpcStore();
 
 const router = useRouter();
@@ -173,9 +185,9 @@ const handle6Ref = ref(null);
 const handle7Ref = ref(null);
 const handle = (row) => {
   if (row.remark2 && !JSON.parse(row.remark2).content) {
-    if(row.auditType == '1'){
+    if (row.auditType == "1") {
       handle20Ref.value && handle20Ref.value.showDrawer(row); // 处理
-    }else{
+    } else {
       handle21Ref.value && handle21Ref.value.showDrawer(row); // 处理
     }
   } else if (row.remark3 && !JSON.parse(row.remark3).content) {
@@ -188,7 +200,7 @@ const handle = (row) => {
     handle6Ref.value && handle6Ref.value.showDrawer(row); // 处理
   } else if (row.remark7 && !JSON.parse(row.remark7).content) {
     handle7Ref.value && handle7Ref.value.showDrawer(row); // 处理
-  }else{
+  } else {
     ElMessage.info("该工单正在处理中。。。");
   }
 };
@@ -199,13 +211,20 @@ const toDetail = (row) => {
   detailRef.value && detailRef.value.showDrawer(row); // 详情
 };
 const getTextByAuditType = (state) => {
-  if(state){
-    const item = auditTypes.filter((v)=>{
-      console.log("dictValue:"  + v.dictValue + ",state:" + state  + "..." + (v.dictValue === state))
-      return v.dictValue === state
-    })
-    if(item.length > 0){
-      return item[0].dictLabel
+  if (state) {
+    const item = auditTypes.filter((v) => {
+      console.log(
+        "dictValue:" +
+          v.dictValue +
+          ",state:" +
+          state +
+          "..." +
+          (v.dictValue === state)
+      );
+      return v.dictValue === state;
+    });
+    if (item.length > 0) {
+      return item[0].dictLabel;
     }
   }
 };
@@ -245,7 +264,7 @@ onMounted(() => {
 </script>
 
 <style scoped lang="scss">
-.container {
+.container2 {
   background-color: white;
   width: 100%;
   height: 100%;