From 145cb213e3dd14a88e685b86b336cfca5629bb15 Mon Sep 17 00:00:00 2001
From: 叶松 <2217086471@qq.com>
Date: 星期二, 10 十月 2023 16:36:51 +0800
Subject: [PATCH] 钢筋笼明细和管片明细完成

---
 web/src/views/DuctpiecePLM/PlanManage/RebardemandIndex.vue |  122 ++++++++++++++++++++++++++++++++++++++++
 1 files changed, 122 insertions(+), 0 deletions(-)

diff --git a/web/src/views/DuctpiecePLM/PlanManage/RebardemandIndex.vue b/web/src/views/DuctpiecePLM/PlanManage/RebardemandIndex.vue
index 6fb0035..180c111 100644
--- a/web/src/views/DuctpiecePLM/PlanManage/RebardemandIndex.vue
+++ b/web/src/views/DuctpiecePLM/PlanManage/RebardemandIndex.vue
@@ -76,6 +76,8 @@
             <div 
               v-for="(element, ids) in item.needNums"
               :key="ids" 
+              @click="showDetails(item,element)"
+              style="cursor: pointer;"
               class="number_item"
               :class="{
                 'item_f': element.needNums > element.okNum
@@ -96,6 +98,48 @@
         :total="total">
       </el-pagination>
     </div>
+    <!-- 钢筋笼明细弹框 -->
+    <el-dialog
+      class="prop_dialog"
+      title="钢筋笼明细"
+      :visible.sync="asyncBeardetails"
+      width="65%">
+      <div class="bears_content">
+        <el-table
+          v-loading="loadingDetails"
+          :data="bearDetails"
+          height="100%">
+          <el-table-column align="center" label="序号" width="60">
+            <template #default="scope">
+              <span>{{(pageNum - 1) * pageSize + scope.$index + 1}}</span>
+            </template>
+          </el-table-column>
+          <el-table-column prop="produceNumber" label="钢筋笼编号" align="center" width="160"></el-table-column>
+          <el-table-column prop="proName" label="项目名称" align="center" width="250" show-overflow-tooltip></el-table-column>
+          <el-table-column prop="sizeName" label="尺寸" align="center" ></el-table-column>
+          <el-table-column prop="reinforcementName" label="配筋" align="center"></el-table-column>
+          <el-table-column prop="blockName" label="块号" align="center" ></el-table-column>
+          <el-table-column prop="groupName" label="生产班组" align="center" ></el-table-column>
+          <el-table-column prop="quality_time" label="质检时间" align="center" width="160"></el-table-column>
+          <el-table-column prop="createUser" label="制作人" align="center" ></el-table-column>
+          <el-table-column prop="checkName" label="质检人" align="center" ></el-table-column>
+          <el-table-column prop="isQualified" label="质量标注" align="center" ></el-table-column>
+          <el-table-column prop="isModel" label="是否入模" align="center" ></el-table-column>
+        </el-table>
+      </div>
+      <div class="bear_footer">
+        <el-pagination
+          background
+          @current-change="changeDetailsPageNum"
+          @size-change="changeDetailsPageSize"
+          :current-page="pageNumDetails"
+          :page-sizes="[10, 20, 50, 100]"
+          :page-size="pageSizeDetails"
+          layout="total, sizes, prev, pager, next, jumper"
+          :total="totalDetails">
+        </el-pagination>
+      </div>
+    </el-dialog>
     <!-- 新增计划信息 修改计划信息 -->
     <el-dialog
       class="prop_dialog"
@@ -197,9 +241,19 @@
         pageSize: 6,
         total: 0,
         loading: true,
+        bearDetails:[],//钢筋笼明细
+        pageNumDetails:1,
+        pageSizeDetails:10,
+        totalDetails:0,
+        loadingDetails:true,
+        proId:null,
+        sizeId:null,
+        reinforcementId:null,
+        years:null,
         rebardemandList: [],
         asyncTitle: true, // true 新增计划信息 false 修改计划信息
         asyncRebardemand: false, // 弹窗
+        asyncBeardetails:false,
         formcRebardemand: {}, // 表单信息
         rulescRebardemand: {
           proId: [{
@@ -271,6 +325,48 @@
         }).catch(() => {
           this.loading = false
         });
+      },
+      //展示钢筋笼明细弹框
+      showDetails(val,num){
+        this.asyncBeardetails = true
+        this.proId = val.proId
+        this.sizeId = val.sizeId
+        this.reinforcementId = val.reinforcementId
+        this.years = val.years
+        this.searchBearDetails(val.proId,val.sizeId,num.reinforcementId,val.years)
+      },
+      //查询钢筋笼明细
+      searchBearDetails(proId,sizeId,reinforcementId,years){
+        this.loadingDetails = true;
+        this.bearDetails = [];
+        this.$api.Production.detailsBearProducts({
+          proId: proId,
+          sizeId:sizeId,
+          reinforcementId:reinforcementId,
+          years:years,
+          pageNum: this.pageNumDetails,
+          pageSize: this.pageSizeDetails
+        }).then((res) => {
+          if(res.statusMsg === 'ok') {
+            this.totalDetails = res.data.total;
+            this.bearDetails = res.data.list;
+          }else{
+            this.$message.warning(res.statusMsg)
+          }
+          this.loadingDetails = false;
+        }).catch(() => {
+          this.loadingDetails = false
+        });
+      },
+      // 切换钢筋笼明细页数
+      changeDetailsPageNum(page) {
+        this.pageNumDetails = page;
+        this.searchBearDetails(this.proId,this.sizeId,this.reinforcementId,this.years);
+      },
+      // 切换钢筋笼明细每页条数
+      changeDetailsPageSize(size) {
+        this.pageSizeDetails = size;
+        this.searchBearDetails(this.proId,this.sizeId,this.reinforcementId,this.years);
       },
       // 打开添加信息 
       propInsert() {
@@ -437,6 +533,32 @@
 <style lang="scss" scoped>
 @import '../../../style/layout-main.scss';
 
+.bears_content{
+  height: 500px;
+  /deep/ .el-table th.el-table__cell{
+    background:#082F57!important;
+    color: #18F6F8;
+    border-right: 1px solid #18F6F8!important;
+    border-bottom: 1px solid #18F6F8!important;
+    border-top: 1px solid #18F6F8!important;
+    &:last-child{
+      border-right-color:transparent!important;
+    }
+  }
+  /deep/.el-table .el-table__cell{
+    border-left: 1px solid #18F6F8!important;
+    border-right: 1px solid #18F6F8!important;
+    border-bottom: 1px solid #18F6F8!important;
+  }
+  /deep/.el-table tr:nth-of-type(even){
+    background: transparent;
+  }
+}
+.bear_footer{
+  text-align: right;
+  line-height: 20px;
+  margin: 15px 0 15px;
+}
 .manin_rebar_content {
   position: relative;
   display: flex;

--
Gitblit v1.9.3