From b51361558da5e1763bc37a0ca7195ce7bc5eb251 Mon Sep 17 00:00:00 2001
From: wujian <14790700720@163.com>
Date: 星期一, 22 一月 2024 18:39:05 +0800
Subject: [PATCH] add生产报表-拧紧数据

---
 jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/controller/BsOrderSchedulingController.java |    2 
 jcdm-ui/src/views/main/kb/engineCheck/index.vue                                                      |   37 +--
 jcdm-ui/src/views/main/da/paramCollection/index.vue                                                  |  108 +----------
 jcdm-main/src/main/resources/mapper/da/paramCollection/DaParamCollectionMapper.xml                   |    1 
 jcdm-ui/src/views/main/pr/tightenReport/index.vue                                                    |  223 ++++++++++++++++++++++++
 jcdm-ui/src/views/main/kb/prepareOnline/index.vue                                                    |  111 ++++++++---
 6 files changed, 331 insertions(+), 151 deletions(-)

diff --git a/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/controller/BsOrderSchedulingController.java b/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/controller/BsOrderSchedulingController.java
index 48cd9bc..7058b2c 100644
--- a/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/controller/BsOrderSchedulingController.java
+++ b/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/controller/BsOrderSchedulingController.java
@@ -41,7 +41,7 @@
     @GetMapping("/list")
     public TableDataInfo list(BsOrderScheduling bsOrderScheduling)
     {
-        startPage();
+//        startPage();
         List<BsOrderScheduling> list = bsOrderSchedulingService.selectBsOrderSchedulingList(bsOrderScheduling);
         return getDataTable(list);
     }
diff --git a/jcdm-main/src/main/resources/mapper/da/paramCollection/DaParamCollectionMapper.xml b/jcdm-main/src/main/resources/mapper/da/paramCollection/DaParamCollectionMapper.xml
index 8699587..f8bfd29 100644
--- a/jcdm-main/src/main/resources/mapper/da/paramCollection/DaParamCollectionMapper.xml
+++ b/jcdm-main/src/main/resources/mapper/da/paramCollection/DaParamCollectionMapper.xml
@@ -38,6 +38,7 @@
         <include refid="selectDaParamCollectionVo"/>
         <where>  
             <if test="workOrderNo != null  and workOrderNo != ''"> and work_order_no = #{workOrderNo}</if>
+            <if test="type != null  and type != ''"> and type = #{type}</if>
             <if test="sfcCode != null  and sfcCode != ''"> and sfc_code = #{sfcCode}</if>
             <if test="productCode != null  and productCode != ''"> and product_code = #{productCode}</if>
             <if test="productionLine != null  and productionLine != ''"> and production_line = #{productionLine}</if>
diff --git a/jcdm-ui/src/views/main/da/paramCollection/index.vue b/jcdm-ui/src/views/main/da/paramCollection/index.vue
index 223ef78..7721cd3 100644
--- a/jcdm-ui/src/views/main/da/paramCollection/index.vue
+++ b/jcdm-ui/src/views/main/da/paramCollection/index.vue
@@ -74,86 +74,26 @@
     <el-table v-loading="loading" border :data="paramCollectionList" @selection-change="handleSelectionChange" v-if="paramCollectionList.length > 0">
       <el-table-column type="selection" width="55" align="center" />
       <el-table-column label="涓婚敭id" align="center" prop="id" />
-      <el-table-column label="宸ュ崟缂栧彿" align="center" prop="workOrderNo">
-<!--        <template slot-scope="scope">-->
-<!--          <dict-tag :options="dict.type.${column.dictType}" :value="scope.row.workOrderNo"/>-->
-<!--        </template>-->
-      </el-table-column>
-      <el-table-column label="鎬绘垚搴忓垪鍙�" align="center" width="100" prop="sfcCode">
-<!--        <template slot-scope="scope">-->
-<!--          <dict-tag :options="dict.type.${column.dictType}" :value="scope.row.sfcCode"/>-->
-<!--        </template>-->
-      </el-table-column>
-      <el-table-column label="浜у搧缂栧彿" align="center" prop="productCode">
-<!--        <template slot-scope="scope">-->
-<!--          <dict-tag :options="dict.type.${column.dictType}" :value="scope.row.productCode"/>-->
-<!--        </template>-->
-      </el-table-column>
-      <el-table-column label="浜х嚎缂栧彿" align="center" prop="productionLine">
-<!--        <template slot-scope="scope">-->
-<!--          <dict-tag :options="dict.type.${column.dictType}" :value="scope.row.productionLine"/>-->
-<!--        </template>-->
-      </el-table-column>
-      <el-table-column label="宸ヤ綅缂栧彿" align="center" prop="locationCode">
-<!--        <template slot-scope="scope">-->
-<!--          <dict-tag :options="dict.type.${column.dictType}" :value="scope.row.locationCode"/>-->
-<!--        </template>-->
-      </el-table-column>
-      <el-table-column label="璁惧缂栧彿" align="center" prop="equipmentNo">
-<!--        <template slot-scope="scope">-->
-<!--          <dict-tag :options="dict.type.${column.dictType}" :value="scope.row.equipmentNo"/>-->
-<!--        </template>-->
-      </el-table-column>
-      <el-table-column label="鍙傛暟缂栫爜" align="center" prop="paramCode">
-<!--        <template slot-scope="scope">-->
-<!--          <dict-tag :options="dict.type.${column.dictType}" :value="scope.row.paramCode"/>-->
-<!--        </template>-->
-      </el-table-column>
-      <el-table-column label="鍙傛暟鍊�" align="center" prop="paramValue">
-<!--        <template slot-scope="scope">-->
-<!--          <dict-tag :options="dict.type.${column.dictType}" :value="scope.row.paramValue"/>-->
-<!--        </template>-->
-      </el-table-column>
-      <el-table-column label="鍙傛暟涓婇檺" align="center" prop="paramUpper">
-<!--        <template slot-scope="scope">-->
-<!--          <dict-tag :options="dict.type.${column.dictType}" :value="scope.row.paramUpper"/>-->
-<!--        </template>-->
-      </el-table-column>
-      <el-table-column label="鍙傛暟涓嬮檺" align="center" prop="paramLower">
-<!--        <template slot-scope="scope">-->
-<!--          <dict-tag :options="dict.type.${column.dictType}" :value="scope.row.paramLower"/>-->
-<!--        </template>-->
-      </el-table-column>
-      <el-table-column label="鏍囧噯鍊�" align="center" prop="paramStandard">
-<!--        <template slot-scope="scope">-->
-<!--          <dict-tag :options="dict.type.${column.dictType}" :value="scope.row.paramStandard"/>-->
-<!--        </template>-->
-      </el-table-column>
+      <el-table-column label="宸ュ崟缂栧彿" align="center" prop="workOrderNo"></el-table-column>
+      <el-table-column label="鎬绘垚搴忓垪鍙�" align="center" width="100" prop="sfcCode"></el-table-column>
+      <el-table-column label="浜у搧缂栧彿" align="center" prop="productCode"></el-table-column>
+      <el-table-column label="浜х嚎缂栧彿" align="center" prop="productionLine"></el-table-column>
+      <el-table-column label="宸ヤ綅缂栧彿" align="center" prop="locationCode"></el-table-column>
+      <el-table-column label="璁惧缂栧彿" align="center" prop="equipmentNo"></el-table-column>
+      <el-table-column label="鍙傛暟缂栫爜" align="center" prop="paramCode"></el-table-column>
+      <el-table-column label="鍙傛暟鍊�" align="center" prop="paramValue"></el-table-column>
+      <el-table-column label="鍙傛暟涓婇檺" align="center" prop="paramUpper"></el-table-column>
+      <el-table-column label="鍙傛暟涓嬮檺" align="center" prop="paramLower"></el-table-column>
+      <el-table-column label="鏍囧噯鍊�" align="center" prop="paramStandard"></el-table-column>
       <el-table-column label="閲囬泦鏃堕棿" align="center" prop="collectionTime" width="180">
         <template slot-scope="scope">
           <span>{{ parseTime(scope.row.collectionTime, '{y}-{m}-{d}') }}</span>
         </template>
       </el-table-column>
-      <el-table-column label="鐘舵��" align="center" prop="state">
-<!--        <template slot-scope="scope">-->
-<!--          <dict-tag :options="dict.type.${column.dictType}" :value="scope.row.state"/>-->
-<!--        </template>-->
-      </el-table-column>
-      <el-table-column label="鍙傛暟鍚嶇О" align="center" prop="paramName">
-<!--        <template slot-scope="scope">-->
-<!--          <dict-tag :options="dict.type.${column.dictType}" :value="scope.row.paramName"/>-->
-<!--        </template>-->
-      </el-table-column>
-      <el-table-column label="鍗曚綅" align="center" prop="unit">
-<!--        <template slot-scope="scope">-->
-<!--          <dict-tag :options="dict.type.${column.dictType}" :value="scope.row.unit"/>-->
-<!--        </template>-->
-      </el-table-column>
-      <el-table-column label="绫诲瀷" align="center" prop="type">
-<!--        <template slot-scope="scope">-->
-<!--          <dict-tag :options="dict.type.${column.dictType}" :value="scope.row.type"/>-->
-<!--        </template>-->
-      </el-table-column>
+      <el-table-column label="鐘舵��" align="center" prop="state"></el-table-column>
+      <el-table-column label="鍙傛暟鍚嶇О" align="center" prop="paramName"></el-table-column>
+      <el-table-column label="鍗曚綅" align="center" prop="unit"></el-table-column>
+      <el-table-column label="绫诲瀷" align="center" prop="type"></el-table-column>
       <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width" >
         <template slot-scope="scope">
           <el-button
@@ -230,18 +170,6 @@
             placeholder="璇烽�夋嫨閲囬泦鏃堕棿">
           </el-date-picker>
         </el-form-item>
-<!--        <el-form-item label="棰勭暀瀛楁1" prop="spareField1">-->
-<!--          <el-input v-model="form.spareField1" type="textarea" placeholder="璇疯緭鍏ュ唴瀹�" />-->
-<!--        </el-form-item>-->
-<!--        <el-form-item label="棰勭暀瀛楁2" prop="spareField2">-->
-<!--          <el-input v-model="form.spareField2" type="textarea" placeholder="璇疯緭鍏ュ唴瀹�" />-->
-<!--        </el-form-item>-->
-<!--        <el-form-item label="鍒涘缓鐢ㄦ埛" prop="createUser">-->
-<!--          <el-input v-model="form.createUser" type="textarea" placeholder="璇疯緭鍏ュ唴瀹�" />-->
-<!--        </el-form-item>-->
-<!--        <el-form-item label="鏇存敼鐢ㄦ埛" prop="updateUser">-->
-<!--          <el-input v-model="form.updateUser" type="textarea" placeholder="璇疯緭鍏ュ唴瀹�" />-->
-<!--        </el-form-item>-->
         <el-form-item label="鐘舵��" prop="state">
           <el-input v-model="form.state" placeholder="璇疯緭鍏ョ姸鎬�" />
         </el-form-item>
@@ -253,12 +181,6 @@
         </el-form-item>
         <el-form-item label="绫诲瀷" prop="type">
           <el-select v-model="form.type" placeholder="璇烽�夋嫨绫诲瀷">
-<!--            <el-option-->
-<!--              v-for="dict in dict.type.${dictType}"-->
-<!--              :key="dict.value"-->
-<!--              :label="dict.label"-->
-<!--              :value="dict.value"-->
-<!--            ></el-option>-->
           </el-select>
         </el-form-item>
       </el-form>
diff --git a/jcdm-ui/src/views/main/kb/engineCheck/index.vue b/jcdm-ui/src/views/main/kb/engineCheck/index.vue
index 65d5a51..858494b 100644
--- a/jcdm-ui/src/views/main/kb/engineCheck/index.vue
+++ b/jcdm-ui/src/views/main/kb/engineCheck/index.vue
@@ -1,6 +1,6 @@
 <template>
   <div class="app-container">
-    <el-card  style="height: 70px;margin-bottom: 10px" class="box-card" >
+    <el-card   class="box-card" >
       <template>
         <div class="container">
           <el-row type="flex" justify="center"  style="text-align: center" >
@@ -11,50 +11,41 @@
         </div>
       </template>
     </el-card>
-   <el-row :gutter="5"  style="margin-top: 10px">
-     <el-col :span="10" style=" height:600px;width:800px"  >
-       <el-card class="bottom-card">
-         <el-descriptions :column="1" >
-           <el-descriptions-item>
+   <el-row :gutter="0"  >
+
+     <el-col :span="14">
+       <el-card   class="box-card" >
              <el-form ref="form" :model="form"  label-width="200px" style="height: 60px;margin-top: 20px" >
                <el-form-item prop="engineNo" >
-      	     <span slot="label" style="font-size:45px;color:black"><strong>鍙戝姩鏈哄彿</strong></span>
+      	     <span slot="label" style="font-size:40px;color:black"><strong>鍙戝姩鏈哄彿</strong></span>
                  <el-input style="font-size:30px" v-model="form.engineNo" placeholder="璇疯緭鍏ュ彂鍔ㄦ満鍙�" clearable  @keyup.enter.native="EngineNohandleChange" >
                    <el-button slot="append" plain type="info" @click="EngineNohandleChange(form.engineNo)" icon="el-icon-search"></el-button>
                  </el-input>
                </el-form-item>
              </el-form>
-           </el-descriptions-item>
-           <el-descriptions-item>
              <el-form ref="form" :model="form"  label-width="200px" style="height: 60px;margin-top: 20px" >
                <el-form-item   prop="productType" >
-      	        <span slot="label" style="font-size:45px;color:black"><strong>鏈哄瀷</strong></span>
+      	        <span slot="label" style="font-size:40px;color:black"><strong>鏈哄瀷</strong></span>
                  <el-input disabled style="font-size:30px"  value="form.productType" v-model="form.productType" placeholder="" />
                </el-form-item>
              </el-form>
-           </el-descriptions-item>
-           <el-descriptions-item>
              <el-form ref="form" :model="form"  label-width="200px" style="height: 60px;margin-top: 20px" >
                <el-form-item   prop="orderNo" >
-      	     <span  slot="label" style="font-size:45px;color:black"><strong>宸ュ崟缂栧彿</strong></span>
+      	     <span  slot="label" style="font-size:40px;color:black"><strong>宸ュ崟缂栧彿</strong></span>
                  <el-input disabled style="font-size:30px" v-model="form.orderNo" placeholder="" />
                </el-form-item>
              </el-form>
-           </el-descriptions-item>
-           <el-descriptions-item>
              <el-form ref="form" :model="form"  label-width="200px" style="height: 60px;margin-top: 20px" >
                <el-form-item   prop="currentWorkstation" >
-      	     <span slot="label" style="font-size:45px;color:black"><strong>璐ㄩ噺鐘舵��</strong></span>
+      	     <span slot="label" style="font-size:40px;color:black"><strong>璐ㄩ噺鐘舵��</strong></span>
                  <el-input disabled style="font-size:30px" v-model:value="form.add" placeholder="" />
                </el-form-item>
              </el-form>
-           </el-descriptions-item>
-         </el-descriptions>
          <el-divider></el-divider>
          <el-row :gutter="10" class="mb8" type="flex" justify="center"  style="text-align: center">
            <el-col :span="1.5">
              <el-button plain  :disabled="buttondisabled" type="primary" style="width:400px;height:160px" v-hasPermi="['bs:formula:add']" @click="forceOnline">
-               <span   class="el-icon-thumb"   style="font-size:45px;color:black"></span>
+               <span   class="el-icon-thumb"   style="font-size:40px;color:black"></span>
                <span style="font-size:45px;color:black"><strong>寮哄埗涓婄嚎</strong></span>
              </el-button>
            </el-col>
@@ -62,17 +53,17 @@
        </el-card>
      </el-col>
 
-     <el-col :span="14"  inline style="height:600px;width:600px  ">
+     <el-col :span="10"  inline >
        <el-tabs type="border-card"  >
          <el-card>
-         <el-col :span="14"style="height: 270px;width:800px  ">
+         <el-col :span="14"style="height: 248px;width:800px  ">
            <span style="font-size:25px"><strong>璐ㄩ噺鐘舵��</strong></span>
            <el-divider></el-divider>
            {{this.form.engineCheckList}}
          </el-col>
          </el-card>
          <el-card style="margin-top: 10px" >
-         <el-col :span="14"style="height: 270px;width:800px  ">
+         <el-col :span="14"style="height: 248px;width:800px  ">
            <span style="font-size:25px"><strong>鏈�缁堢粨鏋�</strong></span>
            <el-divider></el-divider>
            {{queryParams.productType}}
@@ -163,7 +154,6 @@
           else{
             this.reset();
             this.buttondisabled = true
-            // this.$modal.msgError('杈撳叆鐨勫彂鍔ㄦ満鍙锋湁璇�');
             const h = this.$createElement;
             this.$message({
               message: h('p',null, [
@@ -202,7 +192,6 @@
 <style scoped>
 ::v-deep .el-input__inner{
   height: 50px;
-  width: 450px;
 }
 ::v-deep .el-form-item__label {
   line-height: 50px;
diff --git a/jcdm-ui/src/views/main/kb/prepareOnline/index.vue b/jcdm-ui/src/views/main/kb/prepareOnline/index.vue
index 3ee50f3..f259571 100644
--- a/jcdm-ui/src/views/main/kb/prepareOnline/index.vue
+++ b/jcdm-ui/src/views/main/kb/prepareOnline/index.vue
@@ -1,44 +1,64 @@
 <template>
   <div class="app-container">
-    <el-card class="box-card">
-      <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="68px">
-        <el-form-item label-width="120" label="宸ヨ壓娴佺▼缂栫爜" prop="routeCode">
+    <el-card class="box-card" >
+      <el-form :model="queryParams.orderNo" ref="queryForm" :inline="true" label-width="68px" >
+        <el-form-item label-width="120" label="宸ュ崟缂栧彿:" prop="orderNo">
           <el-input
-            v-model="queryParams.routeCode"
-            placeholder="璇疯緭鍏ュ伐鑹烘祦绋嬬紪鐮�"
+            v-model="queryParams.orderNo"
+            placeholder="璇疯緭鍏ュ伐鍗曠紪鍙�"
             clearable
             @keyup.enter.native="handleQuery"
           />
         </el-form-item>
-        <el-form-item style="float: right">
-          <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button>
+        <el-form-item style="margin-left: 20px">
+          <el-button type="primary" icon="el-icon-refresh" @click="handleQuery">鏌ヨ</el-button>
         </el-form-item>
+        <el-form-item style="margin-left: 360px">
+          <el-checkbox-group v-model="queryParams.isRepairFlag">
+            <el-checkbox  name="type"></el-checkbox>
+          </el-checkbox-group>
+        </el-form-item>
+        <el-form-item label-width="120" label="杩斾慨鍙戝姩鏈哄彿:" prop="engineNo" style="margin-left: 5px">
+
+          <el-input
+            :disabled="!queryParams.isRepairFlag"
+            v-model="queryParams.engineNo"
+            clearable
+            @keyup.enter.native="handleQuery"
+          />
+        </el-form-item>
+
+
       </el-form>
     </el-card>
     <el-row :gutter="0">
-      <el-col :span="18">
-        <div style="height: 490px; overflow: auto">
-          <el-card style="margin-top: 10px" class="box-card">
-            <el-table border v-loading="loading" :data="dataList" height="490"
+      <el-col :span="20">
+        <div style="height: 490px;">
+          <el-card style="margin-top: 10px; height: 490px; " class="box-card">
+            <el-table border v-loading="loading" :data="dataList" height="460"
                       style="width: 100%" v-if="dataList.length > 0">
-              <el-table-column type="selection" width="55" align="center" />
-              <el-table-column :show-overflow-tooltip='true' label="宸ュ崟缂栧彿" width="130" align="center" prop="orderNo">
+
+              <el-table-column :show-overflow-tooltip='true' label="宸ュ崟缂栧彿" width="230" align="center" prop="orderNo">
               </el-table-column>
-              <el-table-column  :show-overflow-tooltip='true' label="浜у搧灏忕郴鍒�" width="130" align="center" prop="model">
+              <el-table-column  :show-overflow-tooltip='true' label="浜у搧灏忕郴鍒�" width="230" align="center" prop="model">
               </el-table-column>
-              <el-table-column label="SN娴佹按鍙�" width="180" align="center" prop="engineNo">
+              <el-table-column :show-overflow-tooltip='true' label="SN娴佹按鍙�" width="230" align="center" prop="engineNo">
               </el-table-column>
               <el-table-column label="鐘舵��" width="80" align="center" prop="productionStatus">
+<!--                <template slot-scope="scope">-->
+<!--                  <span v-if="scope.row.productionStatus === '1'">鏄�</span>-->
+<!--                  <span v-if="scope.row.productionStatus === '0'">鍚�</span>-->
+<!--                </template>-->
                 <template slot-scope="scope">
-                  <span v-if="scope.row.whetherOrPrint === '1'">鏄�</span>
-                  <span v-if="scope.row.whetherOrPrint === '0'">鍚�</span>
+                  <dict-tag :options="dict.type.order_scheduling_produce_status" :value="scope.row.productionStatus"/>
                 </template>
               </el-table-column>
-              <el-table-column label="鏄惁鎵撳嵃" align="center" prop="whetherOrPrint">
+              <el-table-column label="鏄惁鎵撳嵃" width="80"  align="center" prop="whetherOrPrint">
+
                 <template slot-scope="scope">
-                  <span v-if="scope.row.whetherOrPrint === '1'">鏄�</span>
-                  <span v-if="scope.row.whetherOrPrint === '0'">鍚�</span>
+                  <dict-tag :options="dict.type.print_status" :value="scope.row.whetherOrPrint"/>
                 </template>
+
               </el-table-column>
               <el-table-column label="鎵撳嵃鏃堕棿" align="center" prop="null">
               </el-table-column>
@@ -50,9 +70,19 @@
         </div>
 
       </el-col>
-      <el-col :span="6">
+      <el-col :span="4">
         <el-card style="margin-top: 10px; min-height: 490px" class="box-card">
+          <div style="min-width: 180px;min-height: 185px">
+            <vue-qr
+              v-if="qrCode !==''"
+              ref="qrCode"
+              :text="qrCode"
+              width="180"
+              height="180"
+            ></vue-qr>
+          </div>
 
+          <el-button type="success" style="margin-top: 190px; margin-left: 50px; width: 100px">绯荤粺璁剧疆</el-button>
         </el-card>
       </el-col>
     </el-row>
@@ -66,19 +96,18 @@
 import VueQr from 'vue-qr'
 export default {
   name: "index",
-  dicts: ['sys_normal_disable'],
+  dicts: ['sys_normal_disable','order_scheduling_produce_status','print_status'],
+  components: {
+    VueQr,
+  },
   data(){
     return{
+      qrCode: '',
       // 鏌ヨ鍙傛暟
       queryParams: {
-        pageNum: 1,
-        pageSize: 10,
-        routeCode: null,
-        routeName: null,
-        productCode: null,
-        productName: null,
-        status: null,
-        dataSource: null,
+        orderNo: '',
+        isRepairFlag: '',
+        engineNo: ''
       },
       dataList: []
     }
@@ -86,13 +115,23 @@
   methods:{
     /** 鎼滅储鎸夐挳鎿嶄綔 */
     handleQuery() {
-      this.queryParams.pageNum = 1;
       this.getList();
     },
     getList(){
       listOrderScheduling(this.queryParams).then(response => {
         console.log("--------------------"+response.rows)
         this.dataList = response.rows
+        if (this.queryParams.orderNo === '' || this.queryParams.orderNo === null){
+          this.qrCode = ''
+        }else {
+          if (this.dataList.length > 0){
+            this.qrCode = this.queryParams.orderNo
+          }else {
+            this.qrCode = ''
+          }
+        }
+        console.log("qrcode",this.qrCode)
+
       });
     },
     filterTag(value, row) {
@@ -101,7 +140,8 @@
     filterHandler(value, row, column) {
       const property = column['property'];
       return row[property] === value;
-    }
+    },
+
   },
   mounted() {
     this.getList()
@@ -110,5 +150,10 @@
 </script>
 
 <style scoped>
-
+::v-deep .el-form-item__label{
+  font-size: large;
+}
+::v-deep .el-card__body{
+  padding: 15px 20px 0px 20px;
+}
 </style>
diff --git a/jcdm-ui/src/views/main/pr/tightenReport/index.vue b/jcdm-ui/src/views/main/pr/tightenReport/index.vue
new file mode 100644
index 0000000..36f9cc4
--- /dev/null
+++ b/jcdm-ui/src/views/main/pr/tightenReport/index.vue
@@ -0,0 +1,223 @@
+<template>
+  <div class="app-container">
+    <el-card class="box-card" >
+      <el-form :model="queryParams" ref="queryForm" :inline="true"  v-show="showSearch" label-width="68px" >
+        <el-form-item label-width="120" label="绠变綋缂栫爜:" prop="sfcCode">
+          <el-input clearable
+            v-model="queryParams.sfcCode"
+            placeholder="璇疯緭鍏ョ浣撶紪鐮�"
+            @keyup.enter.native="handleQuery"/>
+        </el-form-item>
+        <el-form-item label-width="120" label="宸ヤ綅鍙�:" prop="locationCode">
+          <el-input clearable
+            v-model="queryParams.locationCode"
+            placeholder="璇疯緭鍏ュ伐浣嶅彿"
+            @keyup.enter.native="handleQuery"/>
+        </el-form-item>
+
+        <el-form-item label-width="120"  label="閲囬泦鏃堕棿" prop="startDate">
+            <el-date-picker
+              v-model="dateRange"
+              type="daterange"
+              range-separator="鑷�"
+              start-placeholder="寮�濮嬫棩鏈�"
+              end-placeholder="缁撴潫鏃ユ湡">
+            </el-date-picker>
+            <button @click="fetchData">鏌ヨ</button>
+        </el-form-item>
+        <el-form-item style="float: right">
+          <el-button type="primary" icon="el-icon-refresh" @click="handleQuery">鏌ヨ</el-button>
+          <el-button type=""    icon="el-icon-refresh"  @click="resetQuery">閲嶇疆</el-button>
+        </el-form-item>
+      </el-form>
+    </el-card>
+
+    <el-card style="margin-top: 10px" class="box-card">
+      <el-table v-loading="loading" border :data="tightenReportList" @selection-change="handleSelectionChange" v-if="tightenReportList.length > 0">
+        <el-table-column type="selection" width="55" align="center" />
+        <el-table-column label="绠变綋缂栫爜" align="center" width="200" prop="sfcCode"></el-table-column>
+        <el-table-column label="宸ヤ綅" align="center" prop="locationCode"></el-table-column>
+        <el-table-column label="鍙傛暟缂栫爜" align="center" prop="paramCode"></el-table-column>
+        <el-table-column label="鍙傛暟鍚嶇О" align="center" prop="paramName"></el-table-column>
+        <el-table-column label="鍙傛暟鍊�" align="center" prop="paramValue"></el-table-column>
+        <el-table-column label="閲囬泦鏃堕棿" align="center" prop="collectionTime" width="180">
+          <template slot-scope="scope">
+            <span>{{ parseTime(scope.row.collectionTime, '{y}-{m}-{d}') }}</span>
+          </template>
+        </el-table-column>
+        <el-table-column label="鐘舵��" align="center" prop="state"></el-table-column>
+        <el-table-column label="鍗曚綅" align="center" prop="unit"></el-table-column>
+      </el-table>
+      <el-empty v-else>
+        <span slot="description">鏆傛棤鏁版嵁</span>
+      </el-empty>
+    </el-card>
+
+    <pagination
+      v-show="total>0"
+      :total="total"
+      :page.sync="queryParams.pageNum"
+      :limit.sync="queryParams.pageSize"
+      @pagination="getList"
+    />
+
+  </div>
+</template>
+<script>
+import { listParamCollection, getParamCollection, delParamCollection, addParamCollection, updateParamCollection } from "@/api/main/da/paramCollection/paramCollection";
+export default {
+  name: "index",
+  computed: {
+  },
+  dicts: ['sys_normal_disable','order_scheduling_produce_status','print_status'],
+  components: {
+  },
+  data(){
+    return{
+      dateRange: '',
+      // 鐢ㄤ簬瀛樺偍閫夋嫨鐨勬棩鏈熻寖鍥�
+      total: 0,
+      ids: [],
+      tightenReportList: [],
+      loading: true,
+      single: true,
+      // 闈炲涓鐢�
+      multiple: true,
+      // 鏄剧ず鎼滅储鏉′欢
+      showSearch: true,
+      // 鏌ヨ鍙傛暟
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        workOrderNo: null,
+        sfcCode: null,
+        productCode: null,
+        productionLine: null,
+        locationCode: null,
+        equipmentNo: null,
+        paramCode: null,
+        paramValue: null,
+        paramUpper: null,
+        paramLower: null,
+        paramStandard: null,
+        collectionTime: null,
+        spareField1: null,
+        spareField2: null,
+        createUser: null,
+        createTime: null,
+        updateUser: null,
+        updateTime: null,
+        state: null,
+        paramName: null,
+        unit: null,
+        type: '鎷х揣鏁版嵁',
+        startDate: null,
+        endDate: null
+      },
+    }
+  },
+  created() {
+    this.getList();
+  },
+  methods:{
+
+    async fetchData() {
+      // 鏋勫缓API璇锋眰鐨刄RL锛屼娇鐢ㄩ�夋嫨鐨勬棩鏈熻寖鍥翠綔涓烘煡璇㈠弬鏁�
+      const url = `@/api/main/da/paramCollection/paramCollection?startDate=${this.dateRange[0]}&endDate=${this.dateRange[1]}`;
+
+      try {
+        // 鍙戦�丄PI璇锋眰锛岃幏鍙栨煡璇㈢粨鏋�
+        const response = await fetch(url);
+        const data = await response.json();
+        console.log(data); // 澶勭悊鏌ヨ缁撴灉锛屾瘮濡傚湪鎺у埗鍙拌緭鍑烘垨鏄剧ず鍦ㄩ〉闈笂
+      } catch (error) {
+        console.error('Error fetching data:', error);
+      }
+    },
+  },
+
+  reset() {
+      this.form = {
+        id: null,
+        workOrderNo: null,
+        sfcCode: null,
+        productCode: null,
+        productionLine: null,
+        locationCode: null,
+        equipmentNo: null,
+        paramCode: null,
+        paramValue: null,
+        paramUpper: null,
+        paramLower: null,
+        paramStandard: null,
+        collectionTime: null,
+        spareField1: null,
+        spareField2: null,
+        createUser: null,
+        createTime: null,
+        updateUser: null,
+        updateTime: null,
+        state: null,
+        paramName: null,
+        unit: null,
+        type: '鎷х揣鏁版嵁',
+      };
+      this.resetForm("form");
+    },
+    /** 鎼滅储鎸夐挳鎿嶄綔 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 閲嶇疆鎸夐挳鎿嶄綔 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    // 澶氶�夋閫変腑鏁版嵁
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.id)
+      this.single = selection.length!==1
+      this.multiple = !selection.length
+    },
+
+    getList() {
+      this.loading = true;
+      // const startDate = new Date(this.queryParams.startDate);
+      // const endDate = new Date(this.queryParams.endDate);
+      // const resultList = [];
+      // // 鏋勫缓鏌ヨ鏉′欢锛屼娇鐢≒aramCollection琛ㄧ殑createtime浣滀负鍒ゆ柇鏉′欢
+      // const query = {
+      //   createTime: date // 浣跨敤褰撳墠鏃ユ湡浣滀负鏌ヨ鏉′欢
+      // };
+      // for (let date = startDate; date <= endDate; date.setDate(date.getDate() + 1)) {
+      //   // 鏍规嵁褰撳墠鏃ユ湡鎵ц鏌ヨ鎿嶄綔锛屽苟灏嗙粨鏋滄坊鍔犲埌缁撴灉鏁扮粍涓�
+      //   listParamCollection(query).then(response => {
+      //     resultList.push(...response.rows);
+      //     // 鍒ゆ柇鏄惁鏄渶鍚庝竴涓棩鏈燂紝濡傛灉鏄紝鍒欐洿鏂伴〉闈㈡暟鎹�
+      //     if (date.getTime() === endDate.getTime()) {
+      //       this.tightenReportList = resultList;
+      //       this.total = resultList.length;
+      //       this.loading = false;
+      //     }
+      //   });
+      // }
+      listParamCollection(this.queryParams).then(response => {
+        this.tightenReportList = response.rows;
+        this.total = response.total;
+        this.loading = false;
+      });
+    },
+
+
+}
+</script>
+
+<style scoped>
+::v-deep .el-form-item__label{
+  font-size: large;
+}
+::v-deep .el-card__body{
+  padding: 15px 20px 0px 20px;
+}
+</style>

--
Gitblit v1.9.3