From 727ee25aeb5fcaf84e2cf009b2eacd3a86bcb3ca Mon Sep 17 00:00:00 2001
From: zrg <z18737863051@163.com>
Date: 星期四, 28 十一月 2024 12:55:23 +0800
Subject: [PATCH] 新增 环境检测方案,环境检测单

---
 WebTM/views/质量管理/质量报表/QC_InspectionFormReport.html |  147 +++++++++++++++++++++++++++++++++++--------------
 1 files changed, 105 insertions(+), 42 deletions(-)

diff --git "a/WebTM/views/\350\264\250\351\207\217\347\256\241\347\220\206/\350\264\250\351\207\217\346\212\245\350\241\250/QC_InspectionFormReport.html" "b/WebTM/views/\350\264\250\351\207\217\347\256\241\347\220\206/\350\264\250\351\207\217\346\212\245\350\241\250/QC_InspectionFormReport.html"
index 5500596..a2676c7 100644
--- "a/WebTM/views/\350\264\250\351\207\217\347\256\241\347\220\206/\350\264\250\351\207\217\346\212\245\350\241\250/QC_InspectionFormReport.html"
+++ "b/WebTM/views/\350\264\250\351\207\217\347\256\241\347\220\206/\350\264\250\351\207\217\346\212\245\350\241\250/QC_InspectionFormReport.html"
@@ -185,20 +185,37 @@
                                 </div>
                             </div>
                         </div>
-                        <div>
+                        <div class="layui-tab layui-tab-card">
                             <table class="" id="mainTable" lay-filter="mainTable"></table>
-                            <div id="histogram_Avg" style="width:99.5%;height:calc(100vh);margin-top:5px;">
+                            <ul class="layui-tab-title">
+                                <li class="layui-this">x虅绠″埗鍥�</li>
+                                <li>R绠″埗鍥�</li>
+                                <li>妫�娴嬪��</li>
+                            </ul>
+                            <div class="layui-tab-content">
+                                <div class="layui-tab-item layui-show">
+                                    <!--x虅绠″埗鍥�-->
+                                    <div id="histogram_Avg" style="width: 99.5%; height: calc(100vh);">
 
-                            </div>
-                            <div id="histogram_Diff" style="width:99.5%;height:calc(100vh);margin-top:15px;">
+                                    </div>
+                                </div>
+                                <div class="layui-tab-item layui-show">
+                                    <!--R绠″埗鍥�-->
+                                    <div id="histogram_Diff" style="width: 99.5%; height: calc(100vh);">
 
-                            </div>
-                            <div id="histogram_SJZ" style="width:99.5%;height:calc(100vh);margin-top:15px;">
+                                    </div>
+                                </div>
+                                <div class="layui-tab-item layui-show">
+                                    <!--妫�娴嬪��-->
+                                    <div id="histogram_SJZ" style="width: 99.5%; height: calc(100vh);">
 
+                                    </div>
+                                </div>
                             </div>
                         </div>
                         <script type="text/html" id="toolbarDemo">
                             <div class="layui-btn-container">
+                                <button type="button" class="layui-btn layui-btn-sm" lay-event="btn_Export" id="btn_Export"><i class="layui-icon layui-icon-export"></i>瀵煎嚭</button>
                                 <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-exit"><i class="layui-icon layui-icon-return"></i>閫�鍑�</button>
                                 <button type="button" class="layui-btn layui-btn-sm" lay-event="HideColumn"><i class="layui-icon layui-icon-form"></i>闅愯棌鍒楄缃�</button>
                             </div>
@@ -230,6 +247,7 @@
             //鏌ヨ鏉′欢
             var sWhere = "";
             var option = [];
+            var ins;                //鐢ㄤ簬瀵煎嚭excel
             var HModName = "QC_InspectionFormReport";
             var optionAVG = [];
             var optionS = [];
@@ -256,6 +274,9 @@
                     //闅愯棌鍒楄缃�
                     case 'HideColumn':
                         get_HideColumn();
+                        break;
+                    //瀵煎嚭鎸夐挳
+                    case 'btn_Export': btn_Export();
                         break;
                 };
             });
@@ -425,6 +446,7 @@
                                 optionAVG[0] = data1.data[limit + 1];
                                 optionS[0] = data1.data[limit + 2];
                                 table.render(option);
+                                ins = table.render(option);
                                 set_PPK();
                                 set_CPK();
                                 set_Line();
@@ -446,6 +468,7 @@
                 var x_AVG = 0;
                 var x_SUM = 0;
                 var x_PPK = 0;
+                var x_CPK = 0;
                 var numCount = 0
                 var c4 = [0.7979, 0.8862, 0.9213, 0.9400, 0.9515, 0.9594, 0.9650, 0.9693, 0.9727, 0.9754, 0.9776, 0.9794, 0.9810, 0.9823, 0.9835, 0.9845, 0.9854, 0.9862, 0.9869, 0.9876, 0.9882, 0.9887, 0.9892, 0.9896];
 
@@ -467,7 +490,7 @@
                 }
 
                 x_PPK = Math.sqrt(calc(x_SUM, (numCount - 1), "/"));
-
+                x_CPK = Math.sqrt(calc(x_SUM, numCount, "/"));
                 var limit = $("#limit").val();
                 if (parseInt(limit) >= 9) {
                     $("#HCenterline_S").val(x_PPK.toFixed(4));
@@ -477,21 +500,53 @@
                 if (limit == 1) {
                     $("#HControlUpperLimit_X").val(calc(x_AVG, calc(x_PPK, 3, "*"), "+"))
                     $("#HControlLowerLimit_X").val(calc(x_AVG, calc(x_PPK, 3, "*"), "-"))
-                }
 
-                //涓婇檺
-                if ($("#HUpLimit").val() != "" && $("#HDownLimit").val() == "") {
-                    var HUpLimit = calc(calc(calc(parseFloat($("#HUpLimit").val()), parseFloat($("#HTargetVal").val()), "+"), x_AVG, "-"), calc(calc(3, x_PPK, "*"), c4[option.data.length - 4], "/"), "/");
-                    $("#HPPK").val(HUpLimit.toFixed(4));
-                }
-                //涓嬮檺
-                else if ($("#HDownLimit").val() != "" && $("#HUpLimit").val() == "") {
-                    var HDownLimit = calc(calc(x_AVG, calc(parseFloat($("#HDownLimit").val()), parseFloat($("#HTargetVal").val()), "+"), "-"), calc(calc(3, x_PPK, "*"), c4[option.data.length - 4], "/"), "/");
-                    $("#HPPK").val(HDownLimit.toFixed(4));
+                    //璁$畻鏍锋湰閲忎负1 鐨� ppk
+                    var min = calc(calc(x_AVG, calc(parseFloat($("#HDownLimit").val()), parseFloat($("#HTargetVal").val()), "+"), "-"), calc(3, x_PPK, "*"), "/");
+                    var max = calc(calc(calc(parseFloat($("#HUpLimit").val()), parseFloat($("#HTargetVal").val()), "+"), x_AVG, "-"), calc(3, x_PPK, "*"), "/");
+                    var DataHCPK = min > max ? max : min;
+                    $("#HPPK").val(DataHCPK);
+
+                    //璁$畻鏍锋湰閲忎负1 鐨� cpk
+                  
+                    var cpkSum = 0;
+                    var CPK_U = 0;
+                    var CPK_N = 0;
+                    for (var i = 1; i < option.cols[0].length; i++) {
+                        for (var j = 0; j < option.data.length - 3; j++) {
+                            if (i == 1) {
+                                CPK_U = option.data[j][option.cols[0][i].field];
+                            } else {
+                                CPK_N = option.data[j][option.cols[0][i].field];
+                                var data_un = CPK_U > CPK_N ? calc(CPK_U, CPK_N, "-") : calc(CPK_N, CPK_U, "-");
+                                cpkSum = calc(cpkSum, data_un, "+");
+                                CPK_U = CPK_N;
+                            }
+                        }
+                    }
+                    cpkSum = calc(cpkSum, option.cols[0].length - 2, "/");
+                    var HAVG_CPK = calc(cpkSum, 1.128, "/");
+
+                    min = calc(calc(x_AVG, calc(parseFloat($("#HDownLimit").val()), parseFloat($("#HTargetVal").val()), "+"), "-"), calc(3, HAVG_CPK, "*"), "/");
+                    max = calc(calc(calc(parseFloat($("#HUpLimit").val()), parseFloat($("#HTargetVal").val()), "+"), x_AVG, "-"), calc(3, HAVG_CPK, "*"), "/");
+                    DataHCPK = min > max ? max : min;
+
+                    $("#HCPK").val(DataHCPK);
                 } else {
-                    var HUpLimit = calc(calc(calc(parseFloat($("#HUpLimit").val()), parseFloat($("#HTargetVal").val()), "+"), x_AVG, "-"), calc(calc(3, x_PPK, "*"), c4[option.data.length - 4], "/"), "/");
-                    var HDownLimit = (x_AVG - calc(parseFloat($("#HDownLimit").val()), parseFloat($("#HTargetVal").val()), "+")) / ((3 * x_PPK) / c4[option.data.length - 4]);
-                    $("#HPPK").val(HUpLimit > HDownLimit ? HDownLimit.toFixed(4) : HUpLimit.toFixed(4));
+                    //涓婇檺
+                    if ($("#HUpLimit").val() != "" && $("#HDownLimit").val() == "") {
+                        var HUpLimit = calc(calc(calc(parseFloat($("#HUpLimit").val()), parseFloat($("#HTargetVal").val()), "+"), x_AVG, "-"), calc(calc(3, x_PPK, "*"), c4[option.data.length - 4], "/"), "/");
+                        $("#HPPK").val(HUpLimit.toFixed(4));
+                    }
+                    //涓嬮檺
+                    else if ($("#HDownLimit").val() != "" && $("#HUpLimit").val() == "") {
+                        var HDownLimit = calc(calc(x_AVG, calc(parseFloat($("#HDownLimit").val()), parseFloat($("#HTargetVal").val()), "+"), "-"), calc(calc(3, x_PPK, "*"), c4[option.data.length - 4], "/"), "/");
+                        $("#HPPK").val(HDownLimit.toFixed(4));
+                    } else {
+                        var HUpLimit = calc(calc(calc(parseFloat($("#HUpLimit").val()), parseFloat($("#HTargetVal").val()), "+"), x_AVG, "-"), calc(calc(3, x_PPK, "*"), c4[option.data.length - 4], "/"), "/");
+                        var HDownLimit = (x_AVG - calc(parseFloat($("#HDownLimit").val()), parseFloat($("#HTargetVal").val()), "+")) / ((3 * x_PPK) / c4[option.data.length - 4]);
+                        $("#HPPK").val(HUpLimit > HDownLimit ? HDownLimit.toFixed(4) : HUpLimit.toFixed(4));
+                    }
                 }
             }
 
@@ -535,30 +590,32 @@
                     $("#HControlUpperLimit_X").val(calc(x_AVG, calc(A2[$("#limit").val() - 1], s_AVG, "*"), "+"))
                     $("#HControlLowerLimit_X").val(calc(x_AVG, calc(A2[$("#limit").val() - 1], s_AVG, "*"), "-"))
                 }
-              
-      
+           
                 //宸�� 鎺у埗涓婇檺 鎺у埗涓嬮檺
                 $("#HControlUpperLimit_S").val(calc(D4[$("#limit").val() - 1], s_AVG, "*"));
-                $("#HControlLowerLimit_S").val(calc(D3[$("#limit").val() - 1], s_AVG, "*"))
+                $("#HControlLowerLimit_S").val(calc(D3[$("#limit").val() - 1], s_AVG, "*"));
+                var limit = $("#limit").val();
 
-                //涓婇檺
-                if ($("#HUpLimit").val() != "" && $("#HDownLimit").val() == "") {
-                    var HUpLimit = calc(calc(calc(parseFloat($("#HUpLimit").val()), parseFloat($("#HTargetVal").val()), "+"), x_AVG, "-"), (3 * s_CPK), "/");
-                    $("#HCPK").val(HUpLimit.toFixed(4));
-                }
-                //涓嬮檺
-                else if ($("#HDownLimit").val() != "" && $("#HUpLimit").val() == "") {
-                    var HDownLimit = calc(calc(x_AVG, calc(parseFloat($("#HDownLimit").val()), parseFloat($("#HTargetVal").val()), "+"), "-"), (3 * s_CPK), "/");
-                    $("#HCPK").val(HDownLimit.toFixed(4));
-                }  else {
-                    var HUpLimit = calc(calc(calc(parseFloat($("#HUpLimit").val()), parseFloat($("#HTargetVal").val()), "+"), x_AVG, "-"), (3 * s_CPK), "/");
-                    var HDownLimit = calc(calc(x_AVG, calc(parseFloat($("#HDownLimit").val()), parseFloat($("#HTargetVal").val()), "+"), "-"), (3 * s_CPK), "/");
-                    if (s_CPK == 0) {
-                        $("#HCPK").val(0);
-                    } else {
-                        $("#HCPK").val(HUpLimit > HDownLimit ? HDownLimit.toFixed(4) : HUpLimit.toFixed(4));
+                if (limit > 1) {
+                    //涓婇檺
+                    if ($("#HUpLimit").val() != "" && $("#HDownLimit").val() == "") {
+                        var HUpLimit = calc(calc(calc(parseFloat($("#HUpLimit").val()), parseFloat($("#HTargetVal").val()), "+"), x_AVG, "-"), (3 * s_CPK), "/");
+                        $("#HCPK").val(HUpLimit.toFixed(4));
                     }
+                    //涓嬮檺
+                    else if ($("#HDownLimit").val() != "" && $("#HUpLimit").val() == "") {
+                        var HDownLimit = calc(calc(x_AVG, calc(parseFloat($("#HDownLimit").val()), parseFloat($("#HTargetVal").val()), "+"), "-"), (3 * s_CPK), "/");
+                        $("#HCPK").val(HDownLimit.toFixed(4));
+                    } else {
+                        var HUpLimit = calc(calc(calc(parseFloat($("#HUpLimit").val()), parseFloat($("#HTargetVal").val()), "+"), x_AVG, "-"), (3 * s_CPK), "/");
+                        var HDownLimit = calc(calc(x_AVG, calc(parseFloat($("#HDownLimit").val()), parseFloat($("#HTargetVal").val()), "+"), "-"), (3 * s_CPK), "/");
+                        if (s_CPK == 0) {
+                            $("#HCPK").val(0);
+                        } else {
+                            $("#HCPK").val(HUpLimit > HDownLimit ? HDownLimit.toFixed(4) : HUpLimit.toFixed(4));
+                        }
 
+                    }
                 }
             }
 
@@ -651,6 +708,12 @@
                 return sum;
             }
 
+            //#region 瀵煎嚭Execel
+            function btn_Export() {
+                table.exportFile(ins.config.id, option.data, "xls");
+            }
+            //#endregion
+
             //鎶樼嚎鍥�
             function set_Line() {
                 //#region銆愭姌绾垮浘銆�
@@ -682,7 +745,7 @@
 
                 option_ZXT_Avg = {
                     title: {
-                        text: '骞冲潎鍊�',
+                        text: 'x虅绠″埗鍥�',
                         left: 'center'
                     },
                     grid: {
@@ -741,7 +804,7 @@
 
                 option_ZXT_Diff = {
                     title: {
-                        text: '宸��',
+                        text: 'R绠″埗鍥�',
                         left: 'center'
                     },
                     grid: {
@@ -971,7 +1034,7 @@
                 //Type 2 鏍规嵁閫変腑鐨勭墿鏂欏幓鏌ヨ鏁版嵁
                 var sWheres = "";
                 if (Type == 1) {
-                    sWheres = " and 妫�楠岄」鐩唬鐮�='" + $("#HQCCheckItemNumber").val() + "'";
+                    sWheres = " and 妫�楠岄」鐩唬鐮�='" + $("#HQCCheckItemNumber").val() + "' and 鐗╂枡浠g爜='" + $("#HMaterNumber").val() + "'";
                 }
                 if (Type == 2) {
                     sWheres = " and 鐗╂枡浠g爜='" + $("#HMaterNumber").val() + "'";

--
Gitblit v1.9.1