ezhizao_zx 4 сар өмнө
parent
commit
4a56242c24

+ 22 - 87
src/views/business/certificate/index.vue

@@ -2,54 +2,24 @@
   <div class="page-container row-container">
   <div class="page-container row-container">
     <section class="list-part-container" style="flex: 2">
     <section class="list-part-container" style="flex: 2">
       <!-- 搜索区域 -->
       <!-- 搜索区域 -->
-      <el-form
-        class="list-search-container"
-        :model="queryParams"
-        ref="queryRef"
-        :inline="true"
-      >
+      <el-form class="list-search-container" :model="queryParams" ref="queryRef" :inline="true">
         <el-form-item class="section-title" label="合格证打印" />
         <el-form-item class="section-title" label="合格证打印" />
         <el-form-item label="批次号:">
         <el-form-item label="批次号:">
-          <el-input
-            placeholder="请输入批次号"
-            v-model.trim="queryParams.lotCode"
-            @keydown.enter.prevent
-            clearable
-            style="width: 200px"
-          />
+          <el-input placeholder="请输入批次号" v-model.trim="queryParams.lotCode" @keydown.enter.prevent clearable
+            style="width: 200px" />
         </el-form-item>
         </el-form-item>
         <el-form-item label="炉号:">
         <el-form-item label="炉号:">
-          <el-input
-            placeholder="请输入炉号"
-            v-model.trim="queryParams.furnaceNumber"
-            @keydown.enter.prevent
-            clearable
-            style="width: 200px"
-          />
+          <el-input placeholder="请输入炉号" v-model.trim="queryParams.furnaceNumber" @keydown.enter.prevent clearable
+            style="width: 200px" />
         </el-form-item>
         </el-form-item>
         <el-form-item label="产品描述:">
         <el-form-item label="产品描述:">
-          <el-input
-            placeholder="请输入产品描述"
-            v-model.trim="queryParams.productDescription"
-            @keydown.enter.prevent
-            clearable
-            style="width: 200px"
-          />
+          <el-input placeholder="请输入产品描述" v-model.trim="queryParams.productDescription" @keydown.enter.prevent clearable
+            style="width: 200px" />
         </el-form-item>
         </el-form-item>
         <el-form-item label="包装线:">
         <el-form-item label="包装线:">
-          <el-select
-            placeholder="请选择包装线"
-            v-model.trim="queryParams.packageResourceGroupId"
-            @keydown.enter.prevent
-            clearable
-            style="width: 200px"
-          >
-            <el-option
-              v-for="item in packageLineList"
-              :key="item.id"
-              :label="item.name"
-              :value="item.id"
-            />
+          <el-select placeholder="请选择包装线" v-model.trim="queryParams.packageResourceGroupId" @keydown.enter.prevent
+            clearable style="width: 200px">
+            <el-option v-for="item in packageLineList" :key="item.id" :label="item.name" :value="item.id" />
           </el-select>
           </el-select>
         </el-form-item>
         </el-form-item>
         <el-form-item>
         <el-form-item>
@@ -60,63 +30,28 @@
       <!-- 列表区域 -->
       <!-- 列表区域 -->
       <div class="el-table-container">
       <div class="el-table-container">
         <div class="el-table-inner-container">
         <div class="el-table-inner-container">
-          <el-table
-            ref="certificateTable"
-            v-loading="loading"
-            row-key="id"
-            @row-click="handleRow"
-            :data="certificateList"
-            height="100%"
-          >
+          <el-table ref="certificateTable" v-loading="loading" row-key="id" @row-click="handleRow"
+            :data="certificateList" height="100%">
             <el-table-column type="selection" width="55" align="center" />"
             <el-table-column type="selection" width="55" align="center" />"
-            <el-table-column
-              label="行号"
-              type="index"
-              width="80"
-              align="center"
-            />
-            <el-table-column
-              label="产品编码"
-              prop="productCode"
-              align="center"
-            />
-            <el-table-column
-              label="产品描述"
-              prop="productDescription"
-              align="center"
-            />
-            <el-table-column
-              label="客户名称"
-              prop="companyAlias"
-              align="center"
-            />
+            <el-table-column label="行号" type="index" width="80" align="center" />
+            <el-table-column label="产品编码" prop="productCode" align="center" />
+            <el-table-column label="产品描述" prop="productDescription" align="center" />
+            <el-table-column label="客户名称" prop="companyAlias" align="center" />
             <el-table-column label="炉号" prop="furnaceNumber" align="center" />
             <el-table-column label="炉号" prop="furnaceNumber" align="center" />
             <el-table-column label="批次号" prop="lotCode" align="center" />
             <el-table-column label="批次号" prop="lotCode" align="center" />
-            <el-table-column
-              label="打印次数"
-              prop="printCount"
-              align="center"
-            />
+            <el-table-column label="创建时间" prop="submitTime" align="center" />
+            <el-table-column label="打印次数" prop="printCount" align="center" />
             <el-table-column label="操作">
             <el-table-column label="操作">
               <template #default="scope">
               <template #default="scope">
-                <el-button type="primary" @click="handleInfo(scope.row)"
-                  >详情</el-button
-                >
-                <el-button type="primary" @click="handleHistory(scope.row)"
-                  >历史记录</el-button
-                >
+                <el-button type="primary" @click="handleInfo(scope.row)">详情</el-button>
+                <el-button type="primary" @click="handleHistory(scope.row)">历史记录</el-button>
               </template>
               </template>
             </el-table-column>
             </el-table-column>
           </el-table>
           </el-table>
         </div>
         </div>
       </div>
       </div>
-      <pagination
-        v-show="total > 0"
-        :total="total"
-        v-model:page="queryParams.pageNum"
-        v-model:limit="queryParams.pageSize"
-        @pagination="getList"
-      />
+      <pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum"
+        v-model:limit="queryParams.pageSize" @pagination="getList" />
     </section>
     </section>
     <form-dialog ref="formRef" :getList="handleQuery" />
     <form-dialog ref="formRef" :getList="handleQuery" />
     <HistoryDialog ref="historyDialogRef" />
     <HistoryDialog ref="historyDialogRef" />

+ 2 - 0
src/views/business/lot/InBatchesDialog.vue

@@ -205,6 +205,8 @@ function loadLot() {
       baseLot.value.isWasteRecycling = res.data.isWasteRecycling
       baseLot.value.isWasteRecycling = res.data.isWasteRecycling
       baseLot.value.requisitionDepartmentName = res.data.requisitionDepartmentName
       baseLot.value.requisitionDepartmentName = res.data.requisitionDepartmentName
       baseLot.value.requisitionDepartmentId = res.data.requisitionDepartmentId
       baseLot.value.requisitionDepartmentId = res.data.requisitionDepartmentId
+      baseLot.value.splitCount = res.data.splitCount
+      baseLot.value.fromCount = res.data.fromCount
       carriers.value.push(...res.data.carriers.map(v => ({ value: v.id, label: v.code })))
       carriers.value.push(...res.data.carriers.map(v => ({ value: v.id, label: v.code })))
     }
     }
   })
   })

+ 60 - 227
src/views/business/lot/index.vue

@@ -1,65 +1,33 @@
 <template>
 <template>
   <div class="page-container column-container">
   <div class="page-container column-container">
     <!-- 搜索区 -->
     <!-- 搜索区 -->
-    <el-form
-      class="list-search-container"
-      :model="queryParams"
-      ref="queryRef"
-      :inline="true"
-    >
+    <el-form class="list-search-container" :model="queryParams" ref="queryRef" :inline="true">
       <el-form-item label="产品描述:">
       <el-form-item label="产品描述:">
-        <el-input
-          placeholder="请输入产品描述"
-          v-model="queryParams.productDescription"
-          style="width: 150px"
-          clearable
-          @keyup.enter="handleQuerydaywork"
-          @keydown.enter.prevent
-        />
+        <el-input placeholder="请输入产品描述" v-model="queryParams.productDescription" style="width: 150px" clearable
+          @keyup.enter="handleQuerydaywork" @keydown.enter.prevent />
       </el-form-item>
       </el-form-item>
       <el-form-item label="生产计划单号:">
       <el-form-item label="生产计划单号:">
-        <el-input
-          placeholder="请输入生产计划单号"
-          v-model="queryParams.productionPlanNo"
-          style="width: 120px"
-          clearable
-          @keyup.enter="handleQuerydaywork"
-          @keydown.enter.prevent
-        />
+        <el-input placeholder="请输入生产计划单号" v-model="queryParams.productionPlanNo" style="width: 120px" clearable
+          @keyup.enter="handleQuerydaywork" @keydown.enter.prevent />
       </el-form-item>
       </el-form-item>
       <!-- <el-form-item label="序号:">
       <!-- <el-form-item label="序号:">
         <el-input placeholder="请输入序号" v-model.trim="queryParams.lineNumber" style="width: 130px" clearable
         <el-input placeholder="请输入序号" v-model.trim="queryParams.lineNumber" style="width: 130px" clearable
           @keyup.enter="handleQuerydaywork" @keydown.enter.prevent />
           @keyup.enter="handleQuerydaywork" @keydown.enter.prevent />
       </el-form-item> -->
       </el-form-item> -->
       <el-form-item label="批次号:">
       <el-form-item label="批次号:">
-        <el-input
-          placeholder="请输入批次号"
-          v-model="queryParams.lotCode"
-          style="width: 130px"
-          clearable
-          @keyup.enter="handleQuerydaywork"
-          @keydown.enter.prevent
-        />
+        <el-input placeholder="请输入批次号" v-model="queryParams.lotCode" style="width: 130px" clearable
+          @keyup.enter="handleQuerydaywork" @keydown.enter.prevent />
       </el-form-item>
       </el-form-item>
       <el-form-item label="工段:">
       <el-form-item label="工段:">
         <!-- <el-select-v2 v-model="queryParams.deptId" :options="deptList" placeholder="请选择工段" style="width: 140px" /> -->
         <!-- <el-select-v2 v-model="queryParams.deptId" :options="deptList" placeholder="请选择工段" style="width: 140px" /> -->
-        <el-autocomplete
-          v-model.trim="deptName"
-          clearable
-          :fetch-suggestions="queryDeptSearchAsync"
-          placeholder="请选择工段"
-          @select="handleDeptSelect"
-          style="width: 140px"
-          @clear="handleClearDept"
-        >
+        <el-autocomplete v-model.trim="deptName" clearable :fetch-suggestions="queryDeptSearchAsync" placeholder="请选择工段"
+          @select="handleDeptSelect" style="width: 140px" @clear="handleClearDept">
           <template #default="{ item }">
           <template #default="{ item }">
-            <div
-              style="
+            <div style="
                 display: flex;
                 display: flex;
                 flex-direction: row;
                 flex-direction: row;
                 justify-content: space-between;
                 justify-content: space-between;
-              "
-            >
+              ">
               <div class="name" style="font-size: 12px">
               <div class="name" style="font-size: 12px">
                 {{ item.deptName }}
                 {{ item.deptName }}
               </div>
               </div>
@@ -68,33 +36,15 @@
         </el-autocomplete>
         </el-autocomplete>
       </el-form-item>
       </el-form-item>
       <el-form-item label="标识:">
       <el-form-item label="标识:">
-        <el-select
-          style="width: 160px"
-          multiple
-          v-model="queryParams.flags"
-          collapse-tags
-          collapse-tags-tooltip
-          clearable
-          placeholder="请选择标识"
-          @change="handleFlagChange"
-        >
-          <el-option
-            v-for="item in is_identification"
-            :key="item.value"
-            :label="item.label"
-            :value="item.value"
-          ></el-option>
+        <el-select style="width: 160px" multiple v-model="queryParams.flags" collapse-tags collapse-tags-tooltip
+          clearable placeholder="请选择标识" @change="handleFlagChange">
+          <el-option v-for="item in is_identification" :key="item.value" :label="item.label"
+            :value="item.value"></el-option>
         </el-select>
         </el-select>
       </el-form-item>
       </el-form-item>
       <el-form-item label="工序:">
       <el-form-item label="工序:">
-        <el-input
-          placeholder="请输入工序"
-          v-model="queryParams.processAlias"
-          style="width: 130px"
-          clearable
-          @keyup.enter="handleQuerydaywork"
-          @keydown.enter.prevent
-        />
+        <el-input placeholder="请输入工序" v-model="queryParams.processAlias" style="width: 130px" clearable
+          @keyup.enter="handleQuerydaywork" @keydown.enter.prevent />
         <!-- <el-select-v2 v-model="processAlias" :options="processList" placeholder="请选择工序" style="width: 140px"
         <!-- <el-select-v2 v-model="processAlias" :options="processList" placeholder="请选择工序" style="width: 140px"
           @change="handleProcessChange" /> -->
           @change="handleProcessChange" /> -->
         <!-- <el-autocomplete
         <!-- <el-autocomplete
@@ -122,201 +72,78 @@
         </el-autocomplete> -->
         </el-autocomplete> -->
       </el-form-item>
       </el-form-item>
       <el-form-item label="时间:">
       <el-form-item label="时间:">
-        <el-date-picker
-          v-model="queryParams.startTime"
-          type="date"
-          value-format="YYYY-MM-DD"
-          :editable="false"
-          :clearable="false"
-          placeholder="请选择开始时间"
-          style="width: 130px"
-          @change="handleDateChange"
-        />
+        <el-date-picker v-model="queryParams.startTime" type="date" value-format="YYYY-MM-DD" :editable="false"
+          :clearable="false" placeholder="请选择开始时间" style="width: 130px" @change="handleDateChange" />
         <span>到</span>
         <span>到</span>
-        <el-date-picker
-          v-model="queryParams.endTime"
-          type="date"
-          value-format="YYYY-MM-DD"
-          :editable="false"
-          :clearable="false"
-          placeholder="请选择结束时间"
-          style="width: 130px"
-          @change="handleDateChange"
-        />
+        <el-date-picker v-model="queryParams.endTime" type="date" value-format="YYYY-MM-DD" :editable="false"
+          :clearable="false" placeholder="请选择结束时间" style="width: 130px" @change="handleDateChange" />
       </el-form-item>
       </el-form-item>
       <el-form-item>
       <el-form-item>
-        <el-button type="info" icon="Search" @click="handleQuerydaywork"
-          >搜索</el-button
-        >
+        <el-button type="info" icon="Search" @click="handleQuerydaywork">搜索</el-button>
       </el-form-item>
       </el-form-item>
       <div style="margin-top: 20px">
       <div style="margin-top: 20px">
         <!-- <el-button type="primary" @click="handleWasteRecycling"
         <!-- <el-button type="primary" @click="handleWasteRecycling"
           :disabled="selections.length == 0 || selections.length > 1"
           :disabled="selections.length == 0 || selections.length > 1"
           v-hasPermi="['business:lot:wasteRecycling']">添加废品回用</el-button> -->
           v-hasPermi="['business:lot:wasteRecycling']">添加废品回用</el-button> -->
-        <el-button
-          :disabled="selections.length !== 1"
-          type="primary"
-          @click="showInBatch"
-          v-hasPermi="['business:lot:inBatch']"
-          >分批</el-button
-        >
-        <el-button
-          type="primary"
-          :disabled="once"
-          @click="handleOnceSingleChange"
-          v-hasPermi="['business:lot:onceSingleChange']"
-          >单批单改</el-button
-        >
-        <el-button
-          type="primary"
-          :disabled="multi"
-          @click="handleMultiSingleChange"
-          v-hasPermi="['business:lot:multiSingleChange']"
-          >多批单改</el-button
-        >
+        <el-button :disabled="selections.length !== 1" type="primary" @click="showInBatch"
+          v-hasPermi="['business:lot:inBatch']">分批</el-button>
+        <el-button type="primary" :disabled="once" @click="handleOnceSingleChange"
+          v-hasPermi="['business:lot:onceSingleChange']">单批单改</el-button>
+        <el-button type="primary" :disabled="multi" @click="handleMultiSingleChange"
+          v-hasPermi="['business:lot:multiSingleChange']">多批单改</el-button>
+        <el-button :disabled="selections.length !== 1" type="primary" @click="recoverBatch"
+          v-hasPermi="['business:lot:inBatch']">分批恢复</el-button>
       </div>
       </div>
     </el-form>
     </el-form>
     <!-- 列表区 -->
     <!-- 列表区 -->
     <div class="el-table-container">
     <div class="el-table-container">
       <div class="el-table-inner-container">
       <div class="el-table-inner-container">
-        <el-table
-          ref="dayworkTable"
-          v-loading="loading"
-          row-key="lotId"
-          @selection-change="handleSelectionChange"
-          height="100%"
-          :data="lotList"
-        >
+        <el-table ref="dayworkTable" v-loading="loading" row-key="lotId" @selection-change="handleSelectionChange"
+          height="100%" :data="lotList">
           <el-table-column type="selection" width="40" align="center" />
           <el-table-column type="selection" width="40" align="center" />
-          <el-table-column
-            label="客户简称"
-            prop="companyAlias"
-            width="120"
-            align="center"
-          />
-          <el-table-column
-            label="生产计划单号"
-            width="100"
-            prop="productionPlanNo"
-            align="center"
-          />
-          <el-table-column
-            label="序号"
-            width="60"
-            prop="lineNumber"
-            align="center"
-          />
-
-          <el-table-column
-            label="批次号"
-            prop="lotCode"
-            align="center"
-            width="150px"
-          >
+          <el-table-column label="客户简称" prop="companyAlias" width="120" align="center" />
+          <el-table-column label="生产计划单号" width="100" prop="productionPlanNo" align="center" />
+          <el-table-column label="序号" width="60" prop="lineNumber" align="center" />
+
+          <el-table-column label="批次号" prop="lotCode" align="center" width="150px">
             <template #default="scope">
             <template #default="scope">
-              <el-button
-                link
-                type="primary"
-                @click="handleColumnClick(scope.row.lotCode)"
-                ><span>{{ scope.row.lotCode }}</span></el-button
-              >
+              <el-button link type="primary" @click="handleColumnClick(scope.row.lotCode)"><span>{{ scope.row.lotCode
+                  }}</span></el-button>
             </template>
             </template>
           </el-table-column>
           </el-table-column>
-          <el-table-column
-            label="产品描述"
-            prop="productDescription"
-            align="center"
-          />
-          <el-table-column
-            label="图纸版本"
-            width="80"
-            prop="technologyVersion"
-            align="center"
-          />
-          <el-table-column
-            label="投产量"
-            width="100"
-            prop="productionQuantity"
-            align="center"
-          />
-          <el-table-column
-            label="下达日期"
-            prop="createTime"
-            width="100"
-            align="center"
-          >
+          <el-table-column label="产品描述" prop="productDescription" align="center" />
+          <el-table-column label="图纸版本" width="80" prop="technologyVersion" align="center" />
+          <el-table-column label="投产量" width="100" prop="productionQuantity" align="center" />
+          <el-table-column label="下达日期" prop="createTime" width="100" align="center">
             <template #default="scope">
             <template #default="scope">
               <span>{{
               <span>{{
                 proxy.moment(scope.row.createTime).format("YYYY-MM-DD")
                 proxy.moment(scope.row.createTime).format("YYYY-MM-DD")
               }}</span>
               }}</span>
             </template>
             </template>
           </el-table-column>
           </el-table-column>
-          <el-table-column
-            label="当前工段"
-            width="100"
-            prop="deptName"
-            align="center"
-          />
-          <el-table-column
-            label="当前工序"
-            width="120"
-            prop="processAlias"
-            align="center"
-          />
+          <el-table-column label="当前工段" width="100" prop="deptName" align="center" />
+          <el-table-column label="当前工序" width="120" prop="processAlias" align="center" />
           <el-table-column label="标识" width="300" align="center">
           <el-table-column label="标识" width="300" align="center">
             <template #default="scope">
             <template #default="scope">
-              <el-tag
-                v-if="scope.row.isWaste == 1"
-                class="spacing"
-                type="danger"
-                >{{ "批废" }}</el-tag
-              >
-              <el-tag
-                v-if="scope.row.isAmend == 1"
-                class="spacing"
-                type="danger"
-                >{{ "工艺修改" }}</el-tag
-              >
-              <el-tag
-                v-if="scope.row.isWasteRecycling == 1"
-                class="spacing"
-                type="primary"
-                >{{ "废品回用" }}</el-tag
-              >
-              <el-tag
-                v-if="scope.row.isSuperaddition == 1"
-                class="spacing"
-                type="warning"
-                >{{ "追增" }}</el-tag
-              >
+              <el-tag v-if="scope.row.isWaste == 1" class="spacing" type="danger">{{ "批废" }}</el-tag>
+              <el-tag v-if="scope.row.isAmend == 1" class="spacing" type="danger">{{ "工艺修改" }}</el-tag>
+              <el-tag v-if="scope.row.isWasteRecycling == 1" class="spacing" type="primary">{{ "废品回用" }}</el-tag>
+              <el-tag v-if="scope.row.isSuperaddition == 1" class="spacing" type="warning">{{ "追增" }}</el-tag>
             </template>
             </template>
           </el-table-column>
           </el-table-column>
           <el-table-column label="母批号" prop="fromCode" align="center">
           <el-table-column label="母批号" prop="fromCode" align="center">
             <template #default="scope">
             <template #default="scope">
-              <el-button
-                link
-                type="primary"
-                width="150px"
-                @click="handleColumnClick(scope.row.fromCode)"
-                ><span>{{ scope.row.fromCode }}</span></el-button
-              >
+              <el-button link type="primary" width="150px" @click="handleColumnClick(scope.row.fromCode)"><span>{{
+                scope.row.fromCode }}</span></el-button>
             </template>
             </template>
           </el-table-column>
           </el-table-column>
         </el-table>
         </el-table>
       </div>
       </div>
     </div>
     </div>
     <!-- 分页 -->
     <!-- 分页 -->
-    <pagination
-      v-show="total > 0"
-      :total="total"
-      v-model:page="queryParams.pageNum"
-      v-model:limit="queryParams.pageSize"
-      @pagination="getLot"
-    />
-    <waste-recycling-dialog
-      ref="wasteRecyclingDialogRef"
-      @handleSaveSuccess="getLot"
-    ></waste-recycling-dialog>
+    <pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum"
+      v-model:limit="queryParams.pageSize" @pagination="getLot" />
+    <waste-recycling-dialog ref="wasteRecyclingDialogRef" @handleSaveSuccess="getLot"></waste-recycling-dialog>
     <InBatchesDialog ref="inBatchesDialogRef" :getList="handleQuerydaywork" />
     <InBatchesDialog ref="inBatchesDialogRef" :getList="handleQuerydaywork" />
     <once-change ref="onceChangeRef" @handleSaveSuccess="getLot" />
     <once-change ref="onceChangeRef" @handleSaveSuccess="getLot" />
     <multi-change ref="multiChangeRef" @handleSaveSuccess="getLot" />
     <multi-change ref="multiChangeRef" @handleSaveSuccess="getLot" />
@@ -670,6 +497,12 @@ const checkRecycle = () => {
   return selections.value.some((v) => v.isWasteRecycling == 1);
   return selections.value.some((v) => v.isWasteRecycling == 1);
 };
 };
 
 
+const recoverBatch = () => {
+  // 当前行
+  // 判断当前行是否可以复原
+
+}
+
 onMounted(() => {
 onMounted(() => {
   getDept();
   getDept();
   // getLot();
   // getLot();