ztl 2 лет назад
Родитель
Сommit
e8c534136c
2 измененных файлов с 105 добавлено и 85 удалено
  1. 87 67
      wwwroot/main/Procedure/test6/demo.ashx
  2. 18 18
      wwwroot/main/Procedure/test6/demo.html

+ 87 - 67
wwwroot/main/Procedure/test6/demo.ashx

@@ -658,9 +658,11 @@ FROM
 												AND TPPD.ISREFIRE = 0 
 												AND PGD.TESTFLAG = 0 
 												AND TPPD.VALUEFLAG = 1 
+												AND PGD.RECYCLINGFLAG = '0'
+												AND TPPD.AccountID = 1
+												AND TPPD.KILNID IN ( 1, 2, 5 )
 												AND TPPD.checkflag = '1' 
 												AND TPPD.CREATETIME >= trunc( SYSDATE - 6 ) 
-												AND ( SUBSTR( TPGL.GROUTINGLINENAME, 1, 3 ) = 'C05' OR SUBSTR( TPGL.GROUTINGLINECODE, 1, 3 ) = 'C06' ) 
 											GROUP BY
 												to_char( TPPD.CREATETIME, 'yyyymmdd' ) 
 											ORDER BY
@@ -718,10 +720,11 @@ FROM
 														AND TPPD.GOODSLEVELID IN ( 6, 7 ) 
 														AND TPPD.CHECKBATCHNO = 1 
 														AND TPGL.TESTFLAG = 0 
-														AND TMD.DEFECTTYPEID <> 14 
+														AND TMD.DEFECTTYPEID IN ( 15, 16,8)
+														AND TPD.DEFECTNAME is not null
 														AND TPPD.VALUEFLAG = 1 
 														AND TPPD.ISREFIRE = 0 
-														AND ( SUBSTR( TPGL.GROUTINGLINENAME, 1, 3 ) = 'C05' OR SUBSTR( TPGL.GROUTINGLINECODE, 1, 3 ) = 'C06' ) 
+														AND ( SUBSTR( TPGL.GROUTINGLINENAME, 1, 3 ) = 'C05A' OR SUBSTR( TPGL.GROUTINGLINECODE, 1, 3 ) = 'C06' ) 
 													) T ON T.BARCODE = TPPD.BARCODE 
 												WHERE
 													TPPD.CHECKTIME >= trunc( SYSDATE - 6 ) 
@@ -730,7 +733,7 @@ FROM
 													AND TPGL.TESTFLAG = 0 
 													AND TPPD.VALUEFLAG = 1 
 													AND TPPD.ISREFIRE = 0 
-													AND ( SUBSTR( TPGL.GROUTINGLINENAME, 1, 3 ) = 'C05' OR SUBSTR( TPGL.GROUTINGLINECODE, 1, 3 ) = 'C06' ) 
+													AND ( SUBSTR( TPGL.GROUTINGLINENAME, 1, 3 ) = 'C05A' OR SUBSTR( TPGL.GROUTINGLINECODE, 1, 3 ) = 'C06' ) 
 												) T1 
 											GROUP BY
 												to_char( T1.CREATETIME, 'yyyymmdd' ) 
@@ -856,15 +859,28 @@ FROM
 		T.GOODSCODE,
 		T.高压注浆数量,
 		T.成型数,
-	CASE
-			
-			WHEN T.成型数 > 0 THEN
-			TO_CHAR( T.成型数 / T.高压注浆数量 * 100, '9,990.00' ) || '%' ELSE 0 || '%' 
-		END AS 注成率,
+-- 	CASE
+-- 			
+-- 			WHEN T.成型数 > 0 THEN
+-- 			TO_CHAR( T.成型数 / T.高压注浆数量 * 100, '9,990.00' ) || '%' ELSE 0 || '%' 
+-- 		END AS 注成率,
+		CASE
+			WHEN T.成型数 = 0 
+			AND T.高压注浆数量 > 0 THEN
+				'0%' 
+				WHEN T.成型数 > 0 
+				AND T.高压注浆数量 = 0 THEN
+					'100.00%' 
+					WHEN T.成型数 = 0 
+					AND T.高压注浆数量 = 0 THEN
+						'100.00%' 
+						WHEN T.成型数 >= 1 
+						AND T.高压注浆数量 >= 1 THEN
+							TO_CHAR( T.成型数 / T.高压注浆数量 * 100, '9,990.00' ) || '%' ELSE '0%' 
+							END AS 注成率,
 		T.半检数量,
 		T.半检合格数量,
 	CASE
-			
 			WHEN T.半检合格数量 = 0 
 			AND T.半检数量 > 0 THEN
 				'0%' 
@@ -1016,56 +1032,58 @@ FROM
 															AND bj.GOODSCODE = TMG.Goodscode
 															LEFT JOIN (--成检数量
 															SELECT DISTINCT
-																COUNT( PD.BARCODE ) CJNUM,
-																PGD.GROUTINGLINECODE,
-																PGD.USERCODE,
-																PGD.GOODSCODE,
-																to_char( PD.CREATETIME, 'yyyymm' ) AS CREATETIME 
-															FROM
-																TP_PM_PRODUCTIONDATA PD
-																INNER JOIN TP_PM_GROUTINGDAILYDETAIL PGD ON PGD.BARCODE = PD.BARCODE
-																LEFT JOIN TP_PC_GROUTINGLINE TPGL ON TPGL.GROUTINGLINEID = PGD.GROUTINGLINEID 
-															WHERE
-																PD.PROCEDUREID IN ( 104 ) 
-																AND PGD.TESTFLAG = 0 
-																AND PD.VALUEFLAG = 1 
-																AND TPGL.HIGHPRESSUREFLAG = 1 
-																AND SUBSTR( TPGL.GROUTINGLINENAME, 1, 4 ) = 'C05A' 
-																AND PD.CREATETIME >= TRUNC( SYSDATE ) 
-															GROUP BY
-																PGD.GROUTINGLINECODE,
-																PGD.USERCODE,
-																PGD.GOODSCODE,
-																to_char( PD.CREATETIME, 'yyyymm' ) 
+																			COUNT( PD.BARCODE ) CJNUM,
+																			PGD.GROUTINGLINECODE,
+																			PGD.USERCODE,
+																			PGD.GOODSCODE,
+																			to_char( PD.CREATETIME, 'yyyymm' ) AS CREATETIME 
+																		FROM
+																			TP_PM_PRODUCTIONDATA PD
+																			INNER JOIN TP_PM_GROUTINGDAILYDETAIL PGD ON PGD.BARCODE = PD.BARCODE
+																			LEFT JOIN TP_PC_GROUTINGLINE TPGL ON TPGL.GROUTINGLINEID = PGD.GROUTINGLINEID 
+																		WHERE ( ( pd.procedureid = 11 AND pd.valueflag = '1' ) 
+																					OR ( pd.procedureid = 104 AND pd.isrefire = '0' AND pd.checkflag = '1' ) )
+																			AND pd.procedureid IN ( 11, 104 ) 
+																			AND PGD.RECYCLINGFLAG = '0'
+																			AND pd.AccountID = 1
+																			AND PD.KILNID IN ( 1, 2, 5 ) 
+																			AND PD.CREATETIME >= trunc( SYSDATE, 'mm' ) 
+																		GROUP BY
+																			PGD.GROUTINGLINECODE,
+																			PGD.USERCODE,
+																			PGD.GOODSCODE,
+																			to_char( PD.CREATETIME, 'yyyymm' ) 
 															) CJ ON CJ.GROUTINGLINECODE = TPPD.GROUTINGLINECODE 
 															AND CJ.USERCODE = TPPD.USERCODE 
 															AND CJ.GOODSCODE = TMG.Goodscode
 															LEFT JOIN (--成检不合格
 															SELECT DISTINCT
-																COUNT( PD.BARCODE ) CJBHGNUM,
-																PGD.GROUTINGLINECODE,
-																PGD.USERCODE,
-																PGD.GOODSCODE,
-																to_char( PD.CREATETIME, 'yyyymm' ) AS CREATETIME 
-															FROM
-																TP_PM_PRODUCTIONDATA PD
-																INNER JOIN TP_PM_GROUTINGDAILYDETAIL PGD ON PGD.BARCODE = PD.BARCODE
-																LEFT JOIN TP_PC_GROUTINGLINE TPGL ON TPGL.GROUTINGLINEID = PGD.GROUTINGLINEID 
-															WHERE
-																pd.valueflag = '1' 
-																AND PGD.TESTFLAG = 0 
-																AND pd.modeltype IN ( - 1, - 4, - 5 ) 
-																AND pd.CHECKBATCHNO = 1 
-																AND pd.GOODSLEVELID IN ( 6, 7 ) 
-																AND length( pd.kilncarbatchno ) > 0 
-																AND TPGL.HIGHPRESSUREFLAG = 1 
-																AND SUBSTR( TPGL.GROUTINGLINENAME, 1, 4 ) = 'C05A' 
-																AND PD.CREATETIME >= TRUNC( SYSDATE ) 
-															GROUP BY
-																PGD.GROUTINGLINECODE,
-																PGD.USERCODE,
-																PGD.GOODSCODE,
-																to_char( PD.CREATETIME, 'yyyymm' ) 
+																			COUNT( PD.BARCODE ) CJBHGNUM,
+																			PGD.GROUTINGLINECODE,
+																			PGD.USERCODE,
+																			PGD.GOODSCODE,
+																			to_char( PD.CREATETIME, 'yyyymm' ) AS CREATETIME 
+																		FROM
+																			TP_PM_PRODUCTIONDATA PD
+																			INNER JOIN TP_PM_GROUTINGDAILYDETAIL PGD ON PGD.BARCODE = PD.BARCODE
+																			LEFT JOIN TP_PC_GROUTINGLINE TPGL ON TPGL.GROUTINGLINEID = PGD.GROUTINGLINEID 
+																			LEFT JOIN TP_PM_DEFECT TPD ON PGD.BARCODE = TPD.BARCODE 
+																			LEFT JOIN TP_MST_DEFECT TMD ON TPD.DEFECTID = TMD.DEFECTID 
+																		WHERE
+																			pd.valueflag = '1' 
+																			AND PD.modeltype IN ( - 1, - 4, - 5 ) 
+																			AND PD.CHECKBATCHNO = 1 
+																			AND PGD.RECYCLINGFLAG = '0' 
+																			AND pd.GOODSLEVELID IN ( 6, 7 )
+																			AND TMD.DEFECTTYPEID IN ( 15, 16,8)
+																			AND TPD.DEFECTNAME is not null
+																			AND length( pd.kilncarbatchno ) > 0 
+																			AND PD.CREATETIME >= trunc( SYSDATE, 'mm' ) 
+																		GROUP BY
+																			PGD.GROUTINGLINECODE,
+																			PGD.USERCODE,
+																			PGD.GOODSCODE,
+																			to_char( PD.CREATETIME, 'yyyymm' ) 
 															) CJBHG ON CJBHG.GROUTINGLINECODE = TPPD.GROUTINGLINECODE 
 															AND CJBHG.USERCODE = TPPD.USERCODE 
 															AND CJBHG.GOODSCODE = TMG.Goodscode 
@@ -1265,12 +1283,12 @@ FROM
 																												TP_PM_PRODUCTIONDATA PD
 																												INNER JOIN TP_PM_GROUTINGDAILYDETAIL PGD ON PGD.BARCODE = PD.BARCODE
 																												LEFT JOIN TP_PC_GROUTINGLINE TPGL ON TPGL.GROUTINGLINEID = PGD.GROUTINGLINEID 
-																											WHERE
-																												PD.PROCEDUREID IN ( 104 ) 
-																												AND PD.VALUEFLAG = 1 
-																												AND PGD.TESTFLAG = 0 
-																												AND TPGL.HIGHPRESSUREFLAG = 1 
-																												AND SUBSTR( TPGL.GROUTINGLINENAME, 1, 4 ) = 'C05A' 
+																											WHERE ( ( pd.procedureid = 11 AND pd.valueflag = '1' ) 
+																														OR ( pd.procedureid = 104 AND pd.isrefire = '0' AND pd.checkflag = '1' ) )
+																												AND pd.procedureid IN ( 11, 104 ) 
+																												AND PGD.RECYCLINGFLAG = '0'
+																												AND pd.AccountID = 1
+																												AND PD.KILNID IN ( 1, 2, 5 ) 
 																												AND PD.CREATETIME >= trunc( SYSDATE, 'mm' ) 
 																											GROUP BY
 																												PGD.GROUTINGLINECODE,
@@ -1291,15 +1309,17 @@ FROM
 																												TP_PM_PRODUCTIONDATA PD
 																												INNER JOIN TP_PM_GROUTINGDAILYDETAIL PGD ON PGD.BARCODE = PD.BARCODE
 																												LEFT JOIN TP_PC_GROUTINGLINE TPGL ON TPGL.GROUTINGLINEID = PGD.GROUTINGLINEID 
+																												LEFT JOIN TP_PM_DEFECT TPD ON PGD.BARCODE = TPD.BARCODE 
+																												LEFT JOIN TP_MST_DEFECT TMD ON TPD.DEFECTID = TMD.DEFECTID 
 																											WHERE
 																												pd.valueflag = '1' 
-																												AND PGD.TESTFLAG = 0 
-																												AND pd.modeltype IN ( - 1, - 4, - 5 ) 
-																												AND pd.CHECKBATCHNO = 1 
-																												AND pd.GOODSLEVELID IN ( 6, 7 ) 
+																												AND PD.modeltype IN ( - 1, - 4, - 5 ) 
+																												AND PD.CHECKBATCHNO = 1 
+																												AND PGD.RECYCLINGFLAG = '0' 
+																												AND pd.GOODSLEVELID IN ( 6, 7 )
+																												AND TMD.DEFECTTYPEID IN ( 15, 16,8)
+																												AND TPD.DEFECTNAME is not null
 																												AND length( pd.kilncarbatchno ) > 0 
-																												AND TPGL.HIGHPRESSUREFLAG = 1 
-																												AND SUBSTR( TPGL.GROUTINGLINENAME, 1, 4 ) = 'C05A' 
 																												AND PD.CREATETIME >= trunc( SYSDATE, 'mm' ) 
 																											GROUP BY
 																												PGD.GROUTINGLINECODE,

+ 18 - 18
wwwroot/main/Procedure/test6/demo.html

@@ -27,7 +27,7 @@
                 <div style="width: 100%; height: 680px;">
                     <table cellspacing="0" cellpadding="0" border="0" style="width:100%;">
                         <tr class="tr_title_warning">
-                            <td colspan="3" style="color: white;">产线信息</td>
+                            <td colspan="2" style="color: white;">产线信息</td>
                             <td colspan="3" style="color: white;">日注浆</td>
                             <td colspan="3" style="color: white;">日半检</td>
                             <td colspan="3" style="color: white;">日成检</td>
@@ -36,7 +36,7 @@
                             <td colspan="3" style="color: white;">月成检</td>
                         </tr>
                         <tr class="tr_title_warning">
-                            <td style="width:7%;">成型线</td>
+                            <!--<td style="width:7%;">成型线</td>-->
                             <td style="width:4.5%;">工号</td>
                             <td style="width:7.5%;">产品</td>
                             <td style="width:4.5%;">注浆数</td>
@@ -63,7 +63,7 @@
                         <div>
                             <table id="dayTable_template" style="display:none;">
                                 <tr class="tr_title_warning" style="height: 60px;">
-                                    <td style="width: 7.1%;  font-size: 14px;">{成型线}</td>
+                                    <!--<td style="width: 7.1%;  font-size: 14px;">{成型线}</td>-->
                                     <td style="width: 4.5%; font-size: 14px;">{工号}</td>
                                     <td style="width: 7.5%; font-size: 14px;">{产品}</td>
                                     <td style="width: 4.5%; font-size: 14px;">{日注浆数}</td>   
@@ -95,15 +95,15 @@
 
             <!--缺陷统计-->
             <div style="width:100%;height:230px;display:flex;flex-direction:row;">
-                <div style="width: 20%; height: 230px;">
+                <div style="width: 26%; height: 230px;">
                     <div style="color:white;font-size:20px;font-weight:600; text-align:center">成型各项趋势图</div>
                     <canvas id="canvasDayZL" style="-moz-user-select: none; -webkit-user-select: none; -ms-user-select: none; height: 200px; width: 100%"></canvas>
                 </div>
-                <div style="width: 30%; height: 310px;">
+                <div style="width: 27%; height: 310px;">
                     <div style="color:white;font-size:20px;font-weight:600; text-align:center">半检缺陷(今日TOP3)</div>
                     <canvas id="canvasDefectA" style="-moz-user-select: none; -webkit-user-select: none; -ms-user-select: none; height: 200px; width: 100%"></canvas>
                 </div>
-                <div style="width: 30%; height: 230px;">
+                <div style="width: 27%; height: 230px;">
                     <div style="color:white;font-size:20px;font-weight:600; text-align:center">成检缺陷(今日TOP3)</div>
                     <canvas id="canvasDefectC" style="-moz-user-select: none; -webkit-user-select: none; -ms-user-select: none; height: 200px; width: 100%"></canvas>
                 </div>
@@ -131,7 +131,7 @@
                     for (var i = 0; i < json["rows"].length; i++) {
                         var temp = $("#dayTable_template").html();
                         temp = temp.replace("<tbody>", "").replace("</tbody>", "");
-                        temp = temp.replace('{成型线}', json["rows"][i]['成型线']);
+                        //temp = temp.replace('{成型线}', json["rows"][i]['成型线']);
                         temp = temp.replace('{工号}', json["rows"][i]['工号']);
                         temp = temp.replace('{产品}', json["rows"][i]['产品']);
                         temp = temp.replace('{日注浆数}', json["rows"][i]['日注浆数']);
@@ -157,32 +157,32 @@
                     var num = parseInt(json["rows"].length);
                     for (var i = 0; i < num; i++) {
                         //获取日半检合格率
-                        var rb = document.getElementById("dayTable").rows[i].cells[8].innerHTML;
+                        var rb = document.getElementById("dayTable").rows[i].cells[7].innerHTML;
                         var rb1 = parseInt(rb.replace(/[^\d.]/g, ""));
                         //获取日成检合格率
-                        var rc = document.getElementById("dayTable").rows[i].cells[11].innerHTML;
+                        var rc = document.getElementById("dayTable").rows[i].cells[10].innerHTML;
                         var rc1 = parseInt(rc.replace(/[^\d.]/g, ""));
                         //获取月半检合格率
-                        var yb = document.getElementById("dayTable").rows[i].cells[17].innerHTML;
+                        var yb = document.getElementById("dayTable").rows[i].cells[16].innerHTML;
                         var yb1 = parseInt(yb.replace(/[^\d.]/g, ""));  
                         //获取月成检合格率
-                        var yc = document.getElementById("dayTable").rows[i].cells[20].innerHTML;
+                        var yc = document.getElementById("dayTable").rows[i].cells[19].innerHTML;
                         var yc1 = parseInt(yc.replace(/[^\d.]/g, ""));
                         //判断日半检合格率
                         if (rb1 < 95) {
-                            document.getElementById("dayTable").rows[i].cells[8].style.color = 'red';
+                            document.getElementById("dayTable").rows[i].cells[7].style.color = 'red';
                         }
                         //判断日成检合格率
-                        if (rc1 < 92) {
-                            document.getElementById("dayTable").rows[i].cells[11].style.color = 'red';
+                        if (rc1 < 95) {
+                            document.getElementById("dayTable").rows[i].cells[10].style.color = 'red';
                         }
                         //判断月半检合格率
                         if (yb1 < 95) {
-                            document.getElementById("dayTable").rows[i].cells[17].style.color = 'red';
+                            document.getElementById("dayTable").rows[i].cells[16].style.color = 'red';
                         }
                         //判断月成检合格率
-                        if (yc1 < 92) {
-                            document.getElementById("dayTable").rows[i].cells[20].style.color = 'red';
+                        if (yc1 < 95) {
+                            document.getElementById("dayTable").rows[i].cells[19].style.color = 'red';
                         }
                     }
                     mainRowCount = json["rows"].length;
@@ -470,7 +470,7 @@
                                 labelString: 'Value'
                             },
                             ticks: {
-                                min: 80,
+                                min: 85,
                                 stepSize:5,
                                 max: 100
                             }