From d86d6a6dca39eff9cbd9073c9e23e58308864e51 Mon Sep 17 00:00:00 2001
From: yyt <306727702@qq.com>
Date: 星期二, 23 一月 2024 08:25:58 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 jcdm-quartz/src/main/java/com/jcdm/quartz/task/RyTask.java                                           |   60 ++++
 jcdm-main/src/main/resources/mapper/bs/orderScheduling/BsOrderSchedulingMapper.xml                   |   32 ++
 jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/controller/BsOrderSchedulingController.java |    2 
 jcdm-ui/src/views/main/bs/beatSetting/index.vue                                                      |    2 
 jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/domain/BsOrderScheduling.java               |   74 ++++
 jcdm-ui/src/views/dashboard/PanelGroup.vue                                                           |   46 ++
 jcdm-main/src/main/java/com/jcdm/main/bs/formulaChild/controller/BsFormulaChildInfoController.java   |   35 ++
 jcdm-quartz/pom.xml                                                                                  |    5 
 jcdm-main/src/main/java/com/jcdm/main/webservice/service/ReportingForWork.java                       |   78 +++++
 jcdm-ui/src/views/main/kb/engineCheck/index.vue                                                      |   37 -
 jcdm-ui/src/views/main/cfkb/Instructions/index.vue                                                   |   42 ++
 jcdm-ui/src/views/main/da/paramCollection/index.vue                                                  |  108 +------
 jcdm-ui/src/views/main/bs/orderScheduling/index.vue                                                  |   28 +
 jcdm-main/src/main/resources/mapper/da/paramCollection/DaParamCollectionMapper.xml                   |    1 
 jcdm-ui/src/api/main/bs/formulaChild/formulaChild.js                                                 |    9 
 jcdm-ui/src/views/main/pr/tightenReport/index.vue                                                    |  223 ++++++++++++++
 jcdm-main/src/main/java/com/jcdm/main/webservice/service/ReceivingServices.java                      |   66 +++
 17 files changed, 699 insertions(+), 149 deletions(-)

diff --git a/jcdm-main/src/main/java/com/jcdm/main/bs/formulaChild/controller/BsFormulaChildInfoController.java b/jcdm-main/src/main/java/com/jcdm/main/bs/formulaChild/controller/BsFormulaChildInfoController.java
index 8ff0157..ec79b6f 100644
--- a/jcdm-main/src/main/java/com/jcdm/main/bs/formulaChild/controller/BsFormulaChildInfoController.java
+++ b/jcdm-main/src/main/java/com/jcdm/main/bs/formulaChild/controller/BsFormulaChildInfoController.java
@@ -51,20 +51,45 @@
             formulaChildInfo.setAddress(formulaChildInfo.getTechRequirement());
             formulaChildInfo.setImg(formulaChildInfo.getPicture());
         }
+
+        return getDataTable(list);
+    }
+
+    /**
+     * 鏌ヨ宸ヨ壓娴佺▼
+     * @param bsFormulaChildInfo query
+     * @return list
+     */
+    @PostMapping("/getProductProcess")
+    public TableDataInfo getProductProcess(@RequestBody BsFormulaChildInfo bsFormulaChildInfo)
+    {
+        List<BsFormulaChildInfo> list = bsFormulaChildInfoService.selectBsFormulaChildInfoList(bsFormulaChildInfo);
+        for (BsFormulaChildInfo formulaChildInfo : list) {
+            formulaChildInfo.setSort(formulaChildInfo.getStepSort());
+            formulaChildInfo.setAddress(formulaChildInfo.getTechRequirement());
+            formulaChildInfo.setImg(formulaChildInfo.getPicture());
+        }
         list = list.stream()
                 .filter(x -> !ZERO.equals(x.getSort())).sorted(Comparator.comparing(BsFormulaChildInfo::getSort)).collect(Collectors.toList());
         return getDataTable(list);
     }
 
     /**
-     * 鏌ヨ宸ヨ壓娴佺▼
-     * @param productProcessQuery query
+     * 鏌ヨ宸ヨ壓鏂囦欢
+     * @param bsFormulaChildInfo query
      * @return list
      */
-    @PostMapping("/getProductProcess")
-    public TableDataInfo getProductProcess(@RequestBody ProductProcessQuery productProcessQuery)
+    @PostMapping("/getMainProductProcess")
+    public TableDataInfo getMainProductProcess(@RequestBody BsFormulaChildInfo bsFormulaChildInfo)
     {
-        List<BsFormulaChildInfo> list = productProcessService.getProductProcess(productProcessQuery);
+        List<BsFormulaChildInfo> list = bsFormulaChildInfoService.selectBsFormulaChildInfoList(bsFormulaChildInfo);
+        for (BsFormulaChildInfo formulaChildInfo : list) {
+            formulaChildInfo.setSort(formulaChildInfo.getStepSort());
+            formulaChildInfo.setAddress(formulaChildInfo.getTechRequirement());
+            formulaChildInfo.setImg(formulaChildInfo.getPicture());
+        }
+        list = list.stream()
+                .filter(x -> ZERO.equals(x.getSort())).sorted(Comparator.comparing(BsFormulaChildInfo::getSort)).collect(Collectors.toList());
         return getDataTable(list);
     }
 
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 897b358..745adeb 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/java/com/jcdm/main/bs/orderScheduling/domain/BsOrderScheduling.java b/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/domain/BsOrderScheduling.java
index ad4499b..1907f60 100644
--- a/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/domain/BsOrderScheduling.java
+++ b/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/domain/BsOrderScheduling.java
@@ -5,6 +5,8 @@
 import com.jcdm.common.annotation.Excel;
 import com.jcdm.common.core.domain.BaseEntity;
 
+import java.util.Date;
+
 /**
  * 璁㈠崟鎺掍骇瀵硅薄 bs_order_scheduling
  * 
@@ -120,6 +122,78 @@
 
     private String endTime;
 
+    /** 鍚堢涓婄嚎鏃堕棿 */
+    @Excel(name = "鍚堢涓婄嚎鏃堕棿")
+    private Date boxClosingOnlineTime;
+
+    /** 鍚堢涓嬬嚎鏃堕棿 */
+    @Excel(name = "鍚堢涓嬬嚎鏃堕棿")
+    private Date closingBoxOfflineTime;
+
+    /** 鎬昏涓婄嚎鏃堕棿 */
+    @Excel(name = "鎬昏涓婄嚎鏃堕棿")
+    private Date finalAssemblyLaunchTime;
+
+    /** 鎬昏涓嬬嚎鏃堕棿 */
+    @Excel(name = "鎬昏涓嬬嚎鏃堕棿")
+    private Date finalAssemblyOfflineTime;
+
+    /** CVT涓婄嚎鏃堕棿 */
+    @Excel(name = "CVT涓婄嚎鏃堕棿")
+    private Date cvtLaunchTime;
+
+    /** CVT涓嬬嚎鏃堕棿 */
+    @Excel(name = "CVT涓嬬嚎鏃堕棿")
+    private Date cvtOfflineTime;
+
+    public Date getBoxClosingOnlineTime() {
+        return boxClosingOnlineTime;
+    }
+
+    public void setBoxClosingOnlineTime(Date boxClosingOnlineTime) {
+        this.boxClosingOnlineTime = boxClosingOnlineTime;
+    }
+
+    public Date getClosingBoxOfflineTime() {
+        return closingBoxOfflineTime;
+    }
+
+    public void setClosingBoxOfflineTime(Date closingBoxOfflineTime) {
+        this.closingBoxOfflineTime = closingBoxOfflineTime;
+    }
+
+    public Date getFinalAssemblyLaunchTime() {
+        return finalAssemblyLaunchTime;
+    }
+
+    public void setFinalAssemblyLaunchTime(Date finalAssemblyLaunchTime) {
+        this.finalAssemblyLaunchTime = finalAssemblyLaunchTime;
+    }
+
+    public Date getFinalAssemblyOfflineTime() {
+        return finalAssemblyOfflineTime;
+    }
+
+    public void setFinalAssemblyOfflineTime(Date finalAssemblyOfflineTime) {
+        this.finalAssemblyOfflineTime = finalAssemblyOfflineTime;
+    }
+
+    public Date getCvtLaunchTime() {
+        return cvtLaunchTime;
+    }
+
+    public void setCvtLaunchTime(Date cvtLaunchTime) {
+        this.cvtLaunchTime = cvtLaunchTime;
+    }
+
+    public Date getCvtOfflineTime() {
+        return cvtOfflineTime;
+    }
+
+    public void setCvtOfflineTime(Date cvtOfflineTime) {
+        this.cvtOfflineTime = cvtOfflineTime;
+    }
+
     public String[] getDateConditions() {
         return dateConditions;
     }
diff --git a/jcdm-main/src/main/java/com/jcdm/main/webservice/service/ReceivingServices.java b/jcdm-main/src/main/java/com/jcdm/main/webservice/service/ReceivingServices.java
index af08e28..7bcd85e 100644
--- a/jcdm-main/src/main/java/com/jcdm/main/webservice/service/ReceivingServices.java
+++ b/jcdm-main/src/main/java/com/jcdm/main/webservice/service/ReceivingServices.java
@@ -2,6 +2,9 @@
 
 
 import cn.hutool.json.JSONObject;
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.ObjectMapper;
 import com.google.gson.Gson;
 import com.google.gson.JsonObject;
 import com.jcdm.main.da.collectionParamConf.service.IDaCollectionParamConfService;
@@ -40,16 +43,28 @@
 //        test1();
 
 //        String serviceUrl = "http://podqapp.cfmoto.com.cn:50200/XISOAPAdapter/MessageServlet?senderParty=&senderService=BC_MES&receiverParty=&receiverService=&interface=SI_ZPP_CF_MES_005_SYN_OUT&interfaceNamespace=http://cfmoto.com/xi/MES";
-//
+//        String serviceUrl = "http://podqapp.cfmoto.com.cn:50200/XISOAPAdapter/MessageServlet?senderParty=&senderService=BC_MES&receiverParty=&receiverService=&interface=SI_ZPP_CF_BC_001_SYN_OUT&interfaceNamespace=http://cfmoto.com/xi/MES";
+////        String content = "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:urn=\"urn:sap-com:document:sap:rfc:functions\">\n" +
+////                "   <soapenv:Header/>\n" +
+////                "   <soapenv:Body>\n" +
+////                "      <urn:ZPP_CF_MES_005>\n" +
+////                "         <!--Optional:-->\n" +
+////                "         <IV_WERKS>1000</IV_WERKS>\n" +
+////                "         <!--Optional:-->\n" +
+////                "         <IV_ZSCTZD>A0055577</IV_ZSCTZD>\n" +
+////                "      </urn:ZPP_CF_MES_005>\n" +
+////                "   </soapenv:Body>\n" +
+////                "</soapenv:Envelope>";
 //        String content = "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:urn=\"urn:sap-com:document:sap:rfc:functions\">\n" +
 //                "   <soapenv:Header/>\n" +
 //                "   <soapenv:Body>\n" +
-//                "      <urn:ZPP_CF_MES_005>\n" +
-//                "         <!--Optional:-->\n" +
-//                "         <IV_WERKS>1000</IV_WERKS>\n" +
-//                "         <!--Optional:-->\n" +
-//                "         <IV_ZSCTZD>A0055577</IV_ZSCTZD>\n" +
-//                "      </urn:ZPP_CF_MES_005>\n" +
+//                "      <urn:ZPP_BC_001>\n" +
+//                "         <IV_AUFNR>000010569212</IV_AUFNR>\n" +
+//                "          <IV_VORNR>0010</IV_VORNR>\n" +
+//                "           <IV_LMNGA>1</IV_LMNGA>\n" +
+//                "           <IV_XMNGA>0</IV_XMNGA>   \n" +
+//                "         <IV_STATU>1</IV_STATU>  \n" +
+//                "      </urn:ZPP_BC_001>\n" +
 //                "   </soapenv:Body>\n" +
 //                "</soapenv:Envelope>";
 //        // HttpClient鍙戦�丼OAP璇锋眰
@@ -79,10 +94,10 @@
 //            InputStream is = postMethod.getResponseBodyAsStream();
 //            // 鑾峰彇璇锋眰缁撴灉瀛楃涓�
 //            String result = IOUtils.toString(is);
-//            String jsonStr = xmlToJSON2(result);
-//            Gson gson = new Gson();
-//            // 灏唈son瀛楃涓茶浆鎹㈡垚瀵硅薄
-//            ItemList itemList = gson.fromJson(jsonStr, ItemList.class);
+////            String jsonStr = xmlToJSON2(result);
+////            Gson gson = new Gson();
+////            // 灏唈son瀛楃涓茶浆鎹㈡垚瀵硅薄
+////            ItemList itemList = gson.fromJson(jsonStr, ItemList.class);
 //            System.out.println("杩斿洖缁撴灉:" + result);
 //        } else {
 //            System.out.println("閿欒浠g爜锛�" + status + ":" + postMethod.getResponseBodyAsString());
@@ -195,4 +210,33 @@
         return etData.toString();
     }
 
+    /**
+     * 鏂瑰紡--璐�
+     * 浣跨敤hutool宸ュ叿鍖呬腑鐨勫伐鍏疯浆鍖�
+     * @param xmlStr
+     * @return
+     */
+    public static String xmlToJSON3(String xmlStr){
+        String status = "";
+        if(xmlStr.contains("EV_STATUS")){
+            JSONObject jsonObject1 = cn.hutool.json.XML.toJSONObject(xmlStr, true);
+
+            ObjectMapper objectMapper = new ObjectMapper();
+            JsonNode rootNode = null;
+            try {
+                rootNode = objectMapper.readTree(String.valueOf(jsonObject1));
+            } catch (JsonProcessingException e) {
+                throw new RuntimeException(e);
+            }
+            String evStatus = rootNode
+                    .path("SOAP:Envelope")
+                    .path("SOAP:Body")
+                    .path("n0:ZPP_BC_001.Response")
+                    .path("EV_STATUS")
+                    .asText();
+            status = evStatus;
+        }
+        return status;
+    }
+
 }
diff --git a/jcdm-main/src/main/java/com/jcdm/main/webservice/service/ReportingForWork.java b/jcdm-main/src/main/java/com/jcdm/main/webservice/service/ReportingForWork.java
new file mode 100644
index 0000000..9447ace
--- /dev/null
+++ b/jcdm-main/src/main/java/com/jcdm/main/webservice/service/ReportingForWork.java
@@ -0,0 +1,78 @@
+package com.jcdm.main.webservice.service;
+
+import org.apache.commons.httpclient.HttpClient;
+import org.apache.commons.httpclient.UsernamePasswordCredentials;
+import org.apache.commons.httpclient.auth.AuthScope;
+import org.apache.commons.httpclient.methods.PostMethod;
+import org.apache.commons.httpclient.methods.RequestEntity;
+import org.apache.commons.httpclient.methods.StringRequestEntity;
+import org.apache.commons.io.IOUtils;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.UnsupportedEncodingException;
+
+public class ReportingForWork {
+    public static void main(String[] args) throws IOException {
+        String serviceUrl = "http://podqapp.cfmoto.com.cn:50200/XISOAPAdapter/MessageServlet?senderParty=&senderService=BC_MES&receiverParty=&receiverService=&interface=SI_ZPP_CF_BC_001_SYN_OUT&interfaceNamespace=http://cfmoto.com/xi/MES";
+//        String content = "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:urn=\"urn:sap-com:document:sap:rfc:functions\">\n" +
+//                "   <soapenv:Header/>\n" +
+//                "   <soapenv:Body>\n" +
+//                "      <urn:ZPP_CF_MES_005>\n" +
+//                "         <!--Optional:-->\n" +
+//                "         <IV_WERKS>1000</IV_WERKS>\n" +
+//                "         <!--Optional:-->\n" +
+//                "         <IV_ZSCTZD>A0055577</IV_ZSCTZD>\n" +
+//                "      </urn:ZPP_CF_MES_005>\n" +
+//                "   </soapenv:Body>\n" +
+//                "</soapenv:Envelope>";
+        String content = "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:urn=\"urn:sap-com:document:sap:rfc:functions\">\n" +
+                "   <soapenv:Header/>\n" +
+                "   <soapenv:Body>\n" +
+                "      <urn:ZPP_BC_001>\n" +
+                "         <IV_AUFNR>000010569212</IV_AUFNR>\n" +
+                "          <IV_VORNR>0010</IV_VORNR>\n" +
+                "           <IV_LMNGA>1</IV_LMNGA>\n" +
+                "           <IV_XMNGA>0</IV_XMNGA>   \n" +
+                "         <IV_STATU>1</IV_STATU>  \n" +
+                "      </urn:ZPP_BC_001>\n" +
+                "   </soapenv:Body>\n" +
+                "</soapenv:Envelope>";
+        // HttpClient鍙戦�丼OAP璇锋眰
+        int timeout = 10000;
+        HttpClient client = new HttpClient();
+        //濡傛灉闇�瑕佺敤鎴峰悕瀵嗙爜楠岃瘉锛涗笉闇�瑕侀獙璇佺櫥褰曞垯涓嶉渶瑕佷互涓�4琛�
+        String username = "POMESUSER";
+        String password = "12345tgb";
+        UsernamePasswordCredentials creds = new UsernamePasswordCredentials(username, password);
+        client.getState().setCredentials(AuthScope.ANY, creds);
+
+        PostMethod postMethod = new PostMethod(serviceUrl);
+        // 璁剧疆杩炴帴瓒呮椂
+        client.getHttpConnectionManager().getParams().setConnectionTimeout(timeout);
+        // 璁剧疆璇诲彇鏃堕棿瓒呮椂
+        client.getHttpConnectionManager().getParams().setSoTimeout(timeout);
+        // 鐒跺悗鎶奡oap璇锋眰鏁版嵁娣诲姞鍒癙ostMethod涓�
+        RequestEntity requestEntity = new StringRequestEntity(content, "text/xml", "UTF-8");
+
+        // 璁剧疆璇锋眰澶撮儴锛屽惁鍒欏彲鑳戒細鎶� 鈥渘o SOAPAction header鈥� 鐨勯敊璇�
+        postMethod.setRequestHeader("SOAPAction", "");
+        // 璁剧疆璇锋眰浣�
+        postMethod.setRequestEntity(requestEntity);
+        int status = client.executeMethod(postMethod);
+
+        if (status == 200) {// 鎴愬姛
+            InputStream is = postMethod.getResponseBodyAsStream();
+            // 鑾峰彇璇锋眰缁撴灉瀛楃涓�
+            String result = IOUtils.toString(is);
+//            String jsonStr = xmlToJSON2(result);
+//            Gson gson = new Gson();
+//            // 灏唈son瀛楃涓茶浆鎹㈡垚瀵硅薄
+//            ItemList itemList = gson.fromJson(jsonStr, ItemList.class);
+            System.out.println("杩斿洖缁撴灉:" + result);
+        } else {
+            System.out.println("閿欒浠g爜锛�" + status + ":" + postMethod.getResponseBodyAsString());
+        }
+    }
+}
+
diff --git a/jcdm-main/src/main/resources/mapper/bs/orderScheduling/BsOrderSchedulingMapper.xml b/jcdm-main/src/main/resources/mapper/bs/orderScheduling/BsOrderSchedulingMapper.xml
index d64a55c..39d1b06 100644
--- a/jcdm-main/src/main/resources/mapper/bs/orderScheduling/BsOrderSchedulingMapper.xml
+++ b/jcdm-main/src/main/resources/mapper/bs/orderScheduling/BsOrderSchedulingMapper.xml
@@ -32,11 +32,17 @@
         <result property="updateTime"    column="update_time"    />
         <result property="remarks"    column="remarks"    />
         <result property="report30"    column="report_30"    />
+        <result property="boxClosingOnlineTime"    column="box_closing_online_time"    />
+        <result property="closingBoxOfflineTime"    column="closing_box_offline_time"    />
+        <result property="finalAssemblyLaunchTime"    column="final_assembly_launch_time"    />
+        <result property="finalAssemblyOfflineTime"    column="final_assembly_offline_time"    />
+        <result property="cvtLaunchTime"    column="cvt_launch_time"    />
+        <result property="cvtOfflineTime"    column="cvt_offline_time"    />
 
     </resultMap>
 
     <sql id="selectBsOrderSchedulingVo">
-        select id, order_no, engine_no, product_type, model, production_status, working_hours, current_workstation, quality_status, whether_or_print, report_10, report_20, combined_box_time, final_assembly_time, operator, operate_time, status, spare_field_1, spare_field_2, spare_field_3, spare_field_4, create_user, create_time, update_user, update_time, remarks, report_30 from bs_order_scheduling
+        select id, order_no, engine_no, product_type, model, production_status, working_hours, current_workstation, quality_status, whether_or_print, report_10, report_20, combined_box_time, final_assembly_time, operator, operate_time, status, spare_field_1, spare_field_2, spare_field_3, spare_field_4, create_user, create_time, update_user, update_time, remarks, report_30, box_closing_online_time, closing_box_offline_time, final_assembly_launch_time, final_assembly_offline_time, cvt_launch_time, cvt_offline_time from bs_order_scheduling
     </sql>
 
     <select id="selectBsOrderSchedulingList" parameterType="BsOrderScheduling" resultMap="BsOrderSchedulingResult">
@@ -67,6 +73,12 @@
             <if test="remarks != null  and remarks != ''"> and remarks = #{remarks}</if>
             <if test="report30 != null  and report30 != ''"> and report_30 = #{report30}</if>
             <if test="dateConditions != null  and dateConditions != ''"> and operate_time BETWEEN #{startTime} AND #{endTime}</if>
+            <if test="boxClosingOnlineTime != null  and boxClosingOnlineTime != ''"> and box_closing_online_time = #{boxClosingOnlineTime}</if>
+            <if test="closingBoxOfflineTime != null  and closingBoxOfflineTime != ''"> and closing_box_offline_time = #{closingBoxOfflineTime}</if>
+            <if test="finalAssemblyLaunchTime != null  and finalAssemblyLaunchTime != ''"> and final_assembly_launch_time = #{finalAssemblyLaunchTime}</if>
+            <if test="finalAssemblyOfflineTime != null  and finalAssemblyOfflineTime != ''"> and final_assembly_offline_time = #{finalAssemblyOfflineTime}</if>
+            <if test="cvtLaunchTime != null  and cvtLaunchTime != ''"> and cvt_launch_time = #{cvtLaunchTime}</if>
+            <if test="cvtOfflineTime != null  and cvtOfflineTime != ''"> and cvt_offline_time = #{cvtOfflineTime}</if>
 
 
         </where>
@@ -118,6 +130,12 @@
             <if test="updateTime != null">update_time,</if>
             <if test="remarks != null">remarks,</if>
             <if test="report30 != null">report_30,</if>
+            <if test="boxClosingOnlineTime != null">box_closing_online_time,</if>
+            <if test="closingBoxOfflineTime != null">closing_box_offline_time,</if>
+            <if test="finalAssemblyLaunchTime != null">final_assembly_launch_time,</if>
+            <if test="finalAssemblyOfflineTime != null">final_assembly_offline_time,</if>
+            <if test="cvtLaunchTime != null">cvt_launch_time,</if>
+            <if test="cvtOfflineTime != null">cvt_offline_time,</if>
          </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
             <if test="orderNo != null">#{orderNo},</if>
@@ -146,6 +164,12 @@
             <if test="updateTime != null">#{updateTime},</if>
             <if test="remarks != null">#{remarks},</if>
             <if test="report30 != null">#{report30},</if>
+            <if test="boxClosingOnlineTime != null">#{boxClosingOnlineTime},</if>
+            <if test="closingBoxOfflineTime != null">#{closingBoxOfflineTime},</if>
+            <if test="finalAssemblyLaunchTime != null">#{finalAssemblyLaunchTime},</if>
+            <if test="finalAssemblyOfflineTime != null">#{finalAssemblyOfflineTime},</if>
+            <if test="cvtLaunchTime != null">#{cvtLaunchTime},</if>
+            <if test="cvtOfflineTime != null">#{cvtOfflineTime},</if>
 
         </trim>
     </insert>
@@ -179,6 +203,12 @@
             <if test="updateTime != null">update_time = #{updateTime},</if>
             <if test="remarks != null">remarks = #{remarks},</if>
             <if test="report30 != null">report_30 = #{report30},</if>
+            <if test="boxClosingOnlineTime != null">box_closing_online_time = #{boxClosingOnlineTime},</if>
+            <if test="closingBoxOfflineTime != null">closing_box_offline_time = #{closingBoxOfflineTime},</if>
+            <if test="finalAssemblyLaunchTime != null">final_assembly_launch_time = #{finalAssemblyLaunchTime},</if>
+            <if test="finalAssemblyOfflineTime != null">final_assembly_offline_time = #{finalAssemblyOfflineTime},</if>
+            <if test="cvtLaunchTime != null">cvt_launch_time = #{cvtLaunchTime},</if>
+            <if test="cvtOfflineTime != null">cvt_offline_time = #{cvtOfflineTime},</if>
 
         </trim>
         where id = #{id}
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-quartz/pom.xml b/jcdm-quartz/pom.xml
index 145876e..fd2d43a 100644
--- a/jcdm-quartz/pom.xml
+++ b/jcdm-quartz/pom.xml
@@ -35,6 +35,11 @@
             <artifactId>jcdm-common</artifactId>
         </dependency>
 
+        <dependency>
+            <groupId>com.jcdm</groupId>
+            <artifactId>jcdm-main</artifactId>
+        </dependency>
+
     </dependencies>
 
 </project>
\ No newline at end of file
diff --git a/jcdm-quartz/src/main/java/com/jcdm/quartz/task/RyTask.java b/jcdm-quartz/src/main/java/com/jcdm/quartz/task/RyTask.java
index d0f1e89..5752e5b 100644
--- a/jcdm-quartz/src/main/java/com/jcdm/quartz/task/RyTask.java
+++ b/jcdm-quartz/src/main/java/com/jcdm/quartz/task/RyTask.java
@@ -1,7 +1,13 @@
 package com.jcdm.quartz.task;
 
+import com.jcdm.main.bs.orderScheduling.domain.BsOrderScheduling;
+import com.jcdm.main.bs.orderScheduling.service.IBsOrderSchedulingService;
+import com.jcdm.main.webservice.service.ReceivingServices;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 import com.jcdm.common.utils.StringUtils;
+
+import java.util.List;
 
 /**
  * 瀹氭椂浠诲姟璋冨害娴嬭瘯
@@ -25,4 +31,58 @@
     {
         System.out.println("鎵ц鏃犲弬鏂规硶");
     }
+
+    @Autowired
+    private IBsOrderSchedulingService bsOrderSchedulingService;
+    String url = "http://podqapp.cfmoto.com.cn:50200/XISOAPAdapter/MessageServlet?senderParty=&senderService=BC_MES&receiverParty=&receiverService=&interface=SI_ZPP_CF_BC_001_SYN_OUT&interfaceNamespace=http://cfmoto.com/xi/MES";
+    public void workReportingTasks(){
+        report10();
+        report20();
+    }
+
+    public void report10(){
+        BsOrderScheduling bsOrderScheduling = new BsOrderScheduling();
+        bsOrderScheduling.setReport10("0");
+        List<BsOrderScheduling> bsOrderSchedulings = bsOrderSchedulingService.selectBsOrderSchedulingList(bsOrderScheduling);
+        for (BsOrderScheduling orderScheduling : bsOrderSchedulings) {
+            String xmlResult = ReceivingServices.getInterfaceInformationXml(url, getProductionPlanInformationXml(orderScheduling.getOrderNo(), "0010"));
+            String status = ReceivingServices.xmlToJSON3(xmlResult);
+            if(status.equals("1")){
+                orderScheduling.setReport10("1");
+                int i = bsOrderSchedulingService.updateBsOrderScheduling(orderScheduling);
+                System.out.println("鏇存柊鐘舵�佹垚鍔�");
+            }
+        }
+    }
+
+    public void report20(){
+        BsOrderScheduling bsOrderScheduling = new BsOrderScheduling();
+        bsOrderScheduling.setReport20("0");
+        List<BsOrderScheduling> bsOrderSchedulings = bsOrderSchedulingService.selectBsOrderSchedulingList(bsOrderScheduling);
+        for (BsOrderScheduling orderScheduling : bsOrderSchedulings) {
+            String xmlResult = ReceivingServices.getInterfaceInformationXml(url, getProductionPlanInformationXml(orderScheduling.getOrderNo(), "0790"));
+            String status = ReceivingServices.xmlToJSON3(xmlResult);
+            if(status.equals("1")){
+                orderScheduling.setReport10("1");
+                int i = bsOrderSchedulingService.updateBsOrderScheduling(orderScheduling);
+                System.out.println("鏇存柊鐘舵�佹垚鍔�");
+            }
+        }
+    }
+
+    public static String getProductionPlanInformationXml(String orderNo,String location){
+        String content = "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:urn=\"urn:sap-com:document:sap:rfc:functions\">\n" +
+                "   <soapenv:Header/>\n" +
+                "   <soapenv:Body>\n" +
+                "      <urn:ZPP_BC_001>\n" +
+                "         <IV_AUFNR>"+orderNo+"</IV_AUFNR>\n" +
+                "          <IV_VORNR>"+location+"</IV_VORNR>\n" +
+                "           <IV_LMNGA>1</IV_LMNGA>\n" +
+                "           <IV_XMNGA>0</IV_XMNGA>   \n" +
+                "         <IV_STATU>1</IV_STATU>  \n" +
+                "      </urn:ZPP_BC_001>\n" +
+                "   </soapenv:Body>\n" +
+                "</soapenv:Envelope>";
+        return content;
+    }
 }
diff --git a/jcdm-ui/src/api/main/bs/formulaChild/formulaChild.js b/jcdm-ui/src/api/main/bs/formulaChild/formulaChild.js
index fade52c..aef47eb 100644
--- a/jcdm-ui/src/api/main/bs/formulaChild/formulaChild.js
+++ b/jcdm-ui/src/api/main/bs/formulaChild/formulaChild.js
@@ -18,6 +18,15 @@
   })
 }
 
+// 鏌ヨ宸ヨ壓鏂囦欢
+export function getMainProductProcess(query) {
+  return request({
+    url: '/bs/formulaChild/getMainProductProcess',
+    method: 'post',
+    data: query
+  })
+}
+
 // 鏌ヨ閰嶆柟閰嶇疆瀛愪俊鎭缁�
 export function getFormulaChild(id) {
   return request({
diff --git a/jcdm-ui/src/views/dashboard/PanelGroup.vue b/jcdm-ui/src/views/dashboard/PanelGroup.vue
index f7b6b93..7301305 100644
--- a/jcdm-ui/src/views/dashboard/PanelGroup.vue
+++ b/jcdm-ui/src/views/dashboard/PanelGroup.vue
@@ -1,6 +1,7 @@
 <template>
   <el-row :gutter="40" class="panel-group">
-    <el-col :xs="12" :sm="12" :lg="6" class="card-panel-col">
+    <div class="top2">鍗曟棩绱浜ч噺</div>
+    <el-col :xs="12" :sm="12" :lg="4" class="card-panel-col">
       <div class="card-panel" @click="handleSetLineChartData('newVisitis')">
         <div class="card-panel-icon-wrapper icon-people">
           <svg-icon icon-class="peoples" class-name="card-panel-icon" />
@@ -13,7 +14,7 @@
         </div>
       </div>
     </el-col>
-    <el-col :xs="12" :sm="12" :lg="6" class="card-panel-col">
+    <el-col :xs="12" :sm="12" :lg="4" class="card-panel-col">
       <div class="card-panel" @click="handleSetLineChartData('messages')">
         <div class="card-panel-icon-wrapper icon-message">
           <svg-icon icon-class="message" class-name="card-panel-icon" />
@@ -26,7 +27,7 @@
         </div>
       </div>
     </el-col>
-    <el-col :xs="12" :sm="12" :lg="6" class="card-panel-col">
+    <el-col :xs="12" :sm="12" :lg="4" class="card-panel-col">
       <div class="card-panel" @click="handleSetLineChartData('purchases')">
         <div class="card-panel-icon-wrapper icon-money">
           <svg-icon icon-class="money" class-name="card-panel-icon" />
@@ -39,7 +40,7 @@
         </div>
       </div>
     </el-col>
-    <el-col :xs="12" :sm="12" :lg="6" class="card-panel-col">
+    <el-col :xs="12" :sm="12" :lg="4" class="card-panel-col">
       <div class="card-panel" @click="handleSetLineChartData('shoppings')">
         <div class="card-panel-icon-wrapper icon-shopping">
           <svg-icon icon-class="shopping" class-name="card-panel-icon" />
@@ -52,7 +53,38 @@
         </div>
       </div>
     </el-col>
+
+    <el-col :xs="12" :sm="12" :lg="4" class="card-panel-col">
+      <div class="card-panel" @click="handleSetLineChartData('shoppings')">
+        <div class="card-panel-icon-wrapper icon-shopping">
+          <svg-icon icon-class="shopping" class-name="card-panel-icon" />
+        </div>
+        <div class="card-panel-description">
+          <div class="card-panel-text">
+            CVT涓婄嚎
+          </div>
+          <count-to :start-val="0" :end-val="13600" :duration="3600" class="card-panel-num" />
+        </div>
+      </div>
+    </el-col>
+
+    <el-col :xs="12" :sm="12" :lg="4" class="card-panel-col">
+      <div class="card-panel" @click="handleSetLineChartData('shoppings')">
+        <div class="card-panel-icon-wrapper icon-shopping">
+          <svg-icon icon-class="shopping" class-name="card-panel-icon" />
+        </div>
+        <div class="card-panel-description">
+          <div class="card-panel-text">
+            CVT涓嬬嚎
+          </div>
+          <count-to :start-val="0" :end-val="13600" :duration="3600" class="card-panel-num" />
+        </div>
+      </div>
+    </el-col>
+
+
   </el-row>
+
 </template>
 
 <script>
@@ -71,6 +103,12 @@
 </script>
 
 <style lang="scss" scoped>
+.top2{
+  font-size: 26px;
+  font-weight: bold;
+  margin-bottom: 16px;
+}
+
 .panel-group {
   margin-top: 18px;
 
diff --git a/jcdm-ui/src/views/main/bs/beatSetting/index.vue b/jcdm-ui/src/views/main/bs/beatSetting/index.vue
index 6179c36..ca3770f 100644
--- a/jcdm-ui/src/views/main/bs/beatSetting/index.vue
+++ b/jcdm-ui/src/views/main/bs/beatSetting/index.vue
@@ -78,7 +78,7 @@
           </el-table-column>
           <el-table-column label="浜у搧鍚嶇О" align="center" prop="productName">
           </el-table-column>
-          <el-table-column label="鑺傛媿" align="center" prop="beat">
+          <el-table-column label="鑺傛媿(S)" align="center" prop="beat">
           </el-table-column>
           <el-table-column fixed="right" width="200" label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
             <template slot-scope="scope">
diff --git a/jcdm-ui/src/views/main/bs/orderScheduling/index.vue b/jcdm-ui/src/views/main/bs/orderScheduling/index.vue
index 38f14ba..3117645 100644
--- a/jcdm-ui/src/views/main/bs/orderScheduling/index.vue
+++ b/jcdm-ui/src/views/main/bs/orderScheduling/index.vue
@@ -194,12 +194,24 @@
           <el-table-column label="CVT鎶ュ伐" align="center" prop="report30">
 
           </el-table-column>
-          <el-table-column label="鍚堢涓婄嚎" align="center" prop="combinedBoxTime">
-
+          <el-table-column label="鍚堢涓婄嚎鏃堕棿" align="center" prop="boxClosingOnlineTime" width="160">
           </el-table-column>
-          <el-table-column label="鎬昏涓嬬嚎" align="center" prop="finalAssemblyTime">
-
+          <el-table-column label="鍚堢涓嬬嚎鏃堕棿" align="center" prop="closingBoxOfflineTime" width="160">
           </el-table-column>
+          <el-table-column label="鎬昏涓婄嚎鏃堕棿" align="center" prop="finalAssemblyLaunchTime" width="160">
+          </el-table-column>
+          <el-table-column label="鎬昏涓嬬嚎鏃堕棿" align="center" prop="finalAssemblyOfflineTime" width="160">
+          </el-table-column>
+          <el-table-column label="CVT涓婄嚎鏃堕棿" align="center" prop="cvtLaunchTime" width="160">
+          </el-table-column>
+          <el-table-column label="CVT涓嬬嚎鏃堕棿" align="center" prop="cvtOfflineTime" width="160">
+          </el-table-column>
+<!--          <el-table-column label="鍚堢涓婄嚎" align="center" prop="combinedBoxTime">-->
+
+<!--          </el-table-column>-->
+<!--          <el-table-column label="鎬昏涓嬬嚎" align="center" prop="finalAssemblyTime">-->
+
+<!--          </el-table-column>-->
           <el-table-column label="鎿嶄綔浜�" align="center" prop="operator">
 
           </el-table-column>
@@ -516,7 +528,13 @@
         updateUser: null,
         updateTime: null,
         remarks: null,
-        report30: null
+        report30: null,
+        boxClosingOnlineTime: null,
+        closingBoxOfflineTime: null,
+        finalAssemblyLaunchTime: null,
+        finalAssemblyOfflineTime: null,
+        cvtLaunchTime: null,
+        cvtOfflineTime: null
       };
       this.resetForm("form");
     },
diff --git a/jcdm-ui/src/views/main/cfkb/Instructions/index.vue b/jcdm-ui/src/views/main/cfkb/Instructions/index.vue
index 835ee13..8e5781f 100644
--- a/jcdm-ui/src/views/main/cfkb/Instructions/index.vue
+++ b/jcdm-ui/src/views/main/cfkb/Instructions/index.vue
@@ -69,17 +69,36 @@
 
       </el-col>
     </el-row>
+    <div>
+      <el-dialog
+        title="宸ヨ壓鏂囦欢"
+        :visible.sync="dialogVisible"
+        width="70%"
+        lock-scroll="false"
+        @close="closeMethod"
+
+      >
+        <div><el-image style="height: 1090px;width: 960px;margin-left: 33px" :src="mainProcessSrc"></el-image></div>
+        <span slot="footer" class="dialog-footer">
+    <el-button type="primary" @click="dialogVisible = false">纭� 瀹�</el-button>
+  </span>
+      </el-dialog>
+    </div>
   </div>
+
 </template>
 
 <script>
-import {listFormulaChild, getProductProcess} from "@/api/main/bs/formulaChild/formulaChild";
+import {getMainProductProcess, getProductProcess} from "@/api/main/bs/formulaChild/formulaChild";
 import {listStationConf,getIp} from "@/api/main/sc/stationConf";
 
 export default {
   name: "index",
   data() {
     return {
+      dialogVisible: false,
+      mainProcessSrc: '',
+      mainProcess: [],
       isClickd: '', // 鍒濆鍖栦负鏈偣鍑荤姸鎬�
       locationCode: "鏈厤缃�",
       locationName: "鏈厤缃伐浣�",
@@ -173,6 +192,9 @@
       });
 
     },
+    closeMethod(){
+      this.mainProcessSrc = ''
+    },
     //鑾峰彇褰撳墠鏃堕棿
     getNowTime () {
       let speed = 1000
@@ -242,7 +264,13 @@
       this.getUpOrDown(1)
     },
     processDocuments(){
-
+      getMainProductProcess(this.queryParams).then(res => {
+        this.mainProcess = res.rows
+        if (res.rows!=null && res.rows.length>0){
+          this.mainProcessSrc = res.rows[0].img
+        }
+      })
+      this.dialogVisible = true
     },
     changeProducts(val){
 
@@ -257,7 +285,7 @@
       /** 鏌ヨ閰嶆柟閰嶇疆瀛愪俊鎭垪琛� */
       this.queryParams.productCode = val;
       this.queryParams.processesCode = this.locationCode
-      listFormulaChild(this.queryParams).then(response => {
+      getProductProcess(this.queryParams).then(response => {
         this.tableData = [];
         this.cleanImg()
         this.tableData = response.rows;
@@ -340,6 +368,12 @@
 .active {
   background-color: #31b431; /* 鐐瑰嚮鍚庣殑鑳屾櫙鑹� */
 }
-
+::v-deep .el-dialog {
+  height: 90%;
+  overflow-y: auto;
+}
+::v-deep .el-dialog__footer{
+  margin-top: 10px;
+}
 
 </style>
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/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