Browse Source

全部看板样式+大致取数

忠帅 张 2 năm trước cách đây
mục cha
commit
abafd89be0

+ 1 - 2
wwwroot/main/DashBoard/api/GetDashBoard.ashx

@@ -17,14 +17,13 @@ public class GetDashBoard : IHttpHandler,IRequiresSessionState
     {
         //看板数据
         JArray array = new JArray();
-
         array.Add(new JObject(new JProperty("name", "【正式】成型看板"),new JProperty("url", "/main/Procedure/FormingKanban/FormingKanban.html")));
         array.Add(new JObject(new JProperty("name", "【正式】精修看板"),new JProperty("url", "/main/Procedure/RefinementKanban/RefinementKanban.html")));
         array.Add(new JObject(new JProperty("name", "【正式】半检看板"),new JProperty("url", "/main/Procedure/HalfCheckKanban/HalfCheckKanban.html")));
         array.Add(new JObject(new JProperty("name", "【测试】施釉看板"),new JProperty("url", "/main/Procedure/GlazedKanban/GlazedKanban.html")));
         array.Add(new JObject(new JProperty("name", "【测试】烧成看板"),new JProperty("url", "/main/Procedure/BurnIntoKanban/BurnIntoKanban.html")));
         array.Add(new JObject(new JProperty("name", "【测试】成检看板"),new JProperty("url", "/main/Procedure/Boardkanban/Boardkanban.html")));
-
+        array.Add(new JObject(new JProperty("name", "【测试】包装看板"),new JProperty("url", "/main/Procedure/PackagingKanban/PackagingKanban.html")));
         context.Response.Write(array.ToString());
     }
 

+ 6 - 3
wwwroot/main/Procedure/Boardkanban/Boardkanban.ashx

@@ -225,7 +225,7 @@ public class  FormingKanban : IHttpHandler, IReadOnlySessionState
 												检验数 
 												AS 
 												(
-												 SELECT COUNT( * ) 一烧出窑数 FROM TP_PM_PRODUCTIONDATA WHERE PROCEDUREID = 14  AND TRUNC( CREATETIME ) = trunc(sysdate) 
+												SELECT COUNT( * ) 一烧出窑数 FROM TP_PM_PRODUCTIONDATA WHERE PROCEDUREID IN (14,56)  and VALUEFLAG=1 	AND TRUNC(CREATETIME)=TRUNC(SYSDATE)
 												) 
 	
 												SELECT
@@ -368,8 +368,11 @@ public class  FormingKanban : IHttpHandler, IReadOnlySessionState
 												NVL( 一烧出窑量.一烧出窑量, 0 ) 一烧出窑量,
 												CASE WHEN 一烧出窑量.一烧出窑量 is NULL THEN '0%' ELSE 
 												DECODE( NVL( 缺陷.缺陷数量, 0 ),0,'0%',
-												TO_CHAR((  ( NVL( 一烧出窑量.一烧出窑量, 1 )- NVL( 缺陷.缺陷数量, 0 )  )      
-												             / DECODE( NVL( 一烧出窑量.一烧出窑量, 1 ), 0, 1, NVL( 一烧出窑量.一烧出窑量, 1 ) ) ) * 100,'fm99990.0' ) ) END  一烧合格率
+												TO_CHAR( CASE WHEN (  ( NVL( 一烧出窑量.一烧出窑量, 1 )- NVL( 缺陷.缺陷数量, 0 )  ) / DECODE( NVL( 一烧出窑量.一烧出窑量, 1 ), 0, 1, NVL( 一烧出窑量.一烧出窑量, 1 ) ) ) * 100<=0
+												THEN 0 
+												ELSE 
+												(  ( NVL( 一烧出窑量.一烧出窑量, 1 )- NVL( 缺陷.缺陷数量, 0 )  ) / DECODE( NVL( 一烧出窑量.一烧出窑量, 1 ), 0, 1, NVL( 一烧出窑量.一烧出窑量, 1 ) ) ) * 100 end
+												,'fm99990.0' ) ) END  一烧合格率
 												FROM 时间
 												left JOIN 缺陷 ON 时间.SJ=缺陷.SJ
 												left JOIN 一烧产量 ON 缺陷.SJ=一烧产量.SJ

+ 9 - 17
wwwroot/main/Procedure/Boardkanban/Boardkanban.html

@@ -283,24 +283,16 @@
 			$.get('Boardkanban.ashx?m=DefectDetail', function (data) {
 				var json = JSON.parse(data);
 				if (json["success"] == true) {
-					$('#qxname1').text(json["rows"][0]["缺陷名称"]);
-					$('#qxname2').text(json["rows"][1]["缺陷名称"]);
-					$('#qxname3').text(json["rows"][2]["缺陷名称"]);
-					$('#qxname4').text(json["rows"][3]["缺陷名称"]);
-
-					$('#sl1').text(json["rows"][0]["缺陷数量"]);
-					$('#sl2').text(json["rows"][1]["缺陷数量"]);
-					$('#sl3').text(json["rows"][2]["缺陷数量"]);
-					$('#sl4').text(json["rows"][3]["缺陷数量"]);
-                    $('#sl5').text(json["rows"][0]["其他缺陷数量"]);
-
-
-					$('#qxl1').text(json["rows"][0]["缺陷率"]);
-					$('#qxl2').text(json["rows"][1]["缺陷率"]);
-					$('#qxl3').text(json["rows"][2]["缺陷率"]);
-					$('#qxl4').text(json["rows"][3]["缺陷率"]);
+					$('#sl5').text(json["rows"][0]["其他缺陷数量"]);
 					$('#qxl5').text(json["rows"][0]["其他缺陷率"]);
-
+					for (var i = 0; i < json["rows"].length; i++) {
+						var qx = '#qxname' + (i + 1);
+						var sl = '#sl' + (i + 1);
+						var qxl = '#qxl' + (i + 1);
+						$(qx).text(json["rows"][i]["缺陷名称"]);
+						$(sl).text(json["rows"][i]["缺陷数量"]);
+						$(qxl).text(json["rows"][i]["缺陷率"]);
+					}
 				}
 			});
 		}

+ 9 - 17
wwwroot/main/Procedure/BurnIntoKanban/BurnIntoKanban.html

@@ -284,24 +284,16 @@
 			$.get('BurnIntoKanban.ashx?m=DefectDetail', function (data) {
 				var json = JSON.parse(data);
 				if (json["success"] == true) {
-					$('#qxname1').text(json["rows"][0]["缺陷名称"]);
-					$('#qxname2').text(json["rows"][1]["缺陷名称"]);
-					$('#qxname3').text(json["rows"][2]["缺陷名称"]);
-					$('#qxname4').text(json["rows"][3]["缺陷名称"]);
-
-					$('#sl1').text(json["rows"][0]["缺陷数量"]);
-					$('#sl2').text(json["rows"][1]["缺陷数量"]);
-					$('#sl3').text(json["rows"][2]["缺陷数量"]);
-					$('#sl4').text(json["rows"][3]["缺陷数量"]);
-                    $('#sl5').text(json["rows"][0]["其他缺陷数量"]);
-
-
-					$('#qxl1').text(json["rows"][0]["缺陷率"]);
-					$('#qxl2').text(json["rows"][1]["缺陷率"]);
-					$('#qxl3').text(json["rows"][2]["缺陷率"]);
-					$('#qxl4').text(json["rows"][3]["缺陷率"]);
+					$('#sl5').text(json["rows"][0]["其他缺陷数量"]);
 					$('#qxl5').text(json["rows"][0]["其他缺陷率"]);
-
+					for (var i = 0; i < json["rows"].length; i++) {
+						var qx = '#qxname' + (i + 1);
+						var sl = '#sl' + (i + 1);
+						var qxl = '#qxl' + (i + 1);
+						$(qx).text(json["rows"][i]["缺陷名称"]);
+						$(sl).text(json["rows"][i]["缺陷数量"]);
+						$(qxl).text(json["rows"][i]["缺陷率"]);
+					}
 				}
 			});
 		}

+ 4 - 4
wwwroot/main/Procedure/FormingKanban/FormingKanban.ashx

@@ -26,12 +26,12 @@ public class FormingKanban : IHttpHandler, IReadOnlySessionState
                 context.Response.Write(json.ToString());
             }
             int day = Convert.ToInt32(DateTime.Now.ToString("dd"));
-            string first = " ADD_MONTHS(TRUNC(SYSDATE, 'MM'), -1) + 25";
-            string second = "ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 0) + 25";
+        string first = " (ADD_MONTHS(TRUNC(SYSDATE, 'MM'), -1) + 25)+16/24";
+            string second = " (ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 0) + 25)+15/24 +59/(24*60)";
             if (day > 25)
             {
-                first = "ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 0) + 25";
-                second = "ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 1) + 25";
+                first = "(ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 0) + 25)+16/24";
+                second = "A(ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 1) + 25)+15/24 +59/(24*60)";
             }
             if (context.Request["m"].ToString() == "WorkshopSection")
             {

+ 10 - 14
wwwroot/main/Procedure/FormingKanban/FormingKanban.html

@@ -257,20 +257,16 @@
 				var json = JSON.parse(data);
                 if (json["success"] == true) {
                     if (json["rows"].length>0) {
-					$('#qxname1').text(json["rows"][0]["缺陷名称"]);
-					$('#qxname2').text(json["rows"][1]["缺陷名称"]);
-					$('#qxname3').text(json["rows"][2]["缺陷名称"]);
-					$('#qxname4').text(json["rows"][3]["缺陷名称"]);
-					$('#sl1').text(json["rows"][0]["缺陷数量"]);
-					$('#sl2').text(json["rows"][1]["缺陷数量"]);
-					$('#sl3').text(json["rows"][2]["缺陷数量"]);
-					$('#sl4').text(json["rows"][3]["缺陷数量"]);
-                    $('#sl5').text(json["rows"][0]["其他缺陷数量"]);
-					$('#qxl1').text(json["rows"][0]["缺陷率"]);
-					$('#qxl2').text(json["rows"][1]["缺陷率"]);
-					$('#qxl3').text(json["rows"][2]["缺陷率"]);
-					$('#qxl4').text(json["rows"][3]["缺陷率"]);
-					$('#qxl5').text(json["rows"][0]["其他缺陷率"]);
+						$('#sl5').text(json["rows"][0]["其他缺陷数量"]);
+						$('#qxl5').text(json["rows"][0]["其他缺陷率"]);
+						for (var i = 0; i < json["rows"].length; i++) {
+							var qx = '#qxname' + (i + 1);
+							var sl = '#sl' + (i + 1);
+							var qxl = '#qxl' + (i + 1);
+							$(qx).text(json["rows"][i]["缺陷名称"]);
+							$(sl).text(json["rows"][i]["缺陷数量"]);
+							$(qxl).text(json["rows"][i]["缺陷率"]);
+						}
                     }
 				}
 			});

+ 9 - 10
wwwroot/main/Procedure/GlazedKanban/GlazedKanban.ashx

@@ -28,15 +28,14 @@ public class  FormingKanban : IHttpHandler, IReadOnlySessionState
 				context.Response.Write(json.ToString());
 			}
 			 
-				int day = Convert.ToInt32(DateTime.Now.ToString("dd"));
-							string first = " ADD_MONTHS(TRUNC(SYSDATE, 'MM'), -1) + 25";
-							string second = " ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 0) + 25";
-							if (day > 25)
-							{
-									first = "ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 0) + 25";
-									second = "ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 1) + 25";
-							}
-
+			int day = Convert.ToInt32(DateTime.Now.ToString("dd"));
+			string first = " (ADD_MONTHS(TRUNC(SYSDATE, 'MM'), -1) + 25)+16/24";
+            string second = " (ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 0) + 25)+15/24 +59/(24*60)";
+            if (day > 25)
+            {
+                first = "(ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 0) + 25)+16/24";
+                second = "A(ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 1) + 25)+15/24 +59/(24*60)";
+            }
 			if (context.Request["m"].ToString() == "StaffTable")
             {
                 string sqlStr = @"SELECT
@@ -339,7 +338,7 @@ SELECT
 												检验数 
 												AS 
 												(
-												 SELECT COUNT( * ) 一烧出窑数 FROM TP_PM_PRODUCTIONDATA WHERE PROCEDUREID IN (14,56)   and GOODSLEVELID in (4) and VALUEFLAG=1 AND TRUNC( CREATETIME ) = trunc(sysdate) 
+												SELECT COUNT( * ) 一烧出窑数 FROM TP_PM_PRODUCTIONDATA WHERE PROCEDUREID IN (14,56)  and VALUEFLAG=1 	AND TRUNC(CREATETIME)=TRUNC(SYSDATE)
 												) 
 	
 												SELECT

+ 10 - 17
wwwroot/main/Procedure/GlazedKanban/GlazedKanban.html

@@ -284,24 +284,17 @@
 				var json = JSON.parse(data);
                 if (json["success"] == true) {
                     if (json["rows"].length > 0) {
-                   
-					$('#qxname1').text(json["rows"][0]["缺陷名称"]);
-					$('#qxname2').text(json["rows"][1]["缺陷名称"]);
-					$('#qxname3').text(json["rows"][2]["缺陷名称"]);
-					$('#qxname4').text(json["rows"][3]["缺陷名称"]);
+                        $('#sl5').text(json["rows"][0]["其他缺陷数量"]);
+						$('#qxl5').text(json["rows"][0]["其他缺陷率"]);
+                        for (var i = 0; i < json["rows"].length; i++) {
+                            var qx = '#qxname' + (i + 1);
+                            var sl = '#sl' + (i + 1);
+                            var qxl = '#qxl' + (i + 1);
+							$(qx).text(json["rows"][i]["缺陷名称"]);
+							$(sl).text(json["rows"][i]["缺陷数量"]);
+							$(qxl).text(json["rows"][i]["缺陷率"]);
+                        }
 
-					$('#sl1').text(json["rows"][0]["缺陷数量"]);
-					$('#sl2').text(json["rows"][1]["缺陷数量"]);
-					$('#sl3').text(json["rows"][2]["缺陷数量"]);
-					$('#sl4').text(json["rows"][3]["缺陷数量"]);
-                    $('#sl5').text(json["rows"][0]["其他缺陷数量"]);
-
-
-					$('#qxl1').text(json["rows"][0]["缺陷率"]);
-					$('#qxl2').text(json["rows"][1]["缺陷率"]);
-					$('#qxl3').text(json["rows"][2]["缺陷率"]);
-					$('#qxl4').text(json["rows"][3]["缺陷率"]);
-					$('#qxl5').text(json["rows"][0]["其他缺陷率"]);
                     }
 				}
 			});

+ 33 - 18
wwwroot/main/Procedure/HalfCheckKanban/HalfCheckKanban.ashx

@@ -17,12 +17,12 @@ public class FormingKanban : IHttpHandler, IReadOnlySessionState
         {
 
             int day = Convert.ToInt32(DateTime.Now.ToString("dd"));
-            string first = " ADD_MONTHS(TRUNC(SYSDATE, 'MM'), -1) + 25";
-            string second = " ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 0) + 25";
+              string first = " (ADD_MONTHS(TRUNC(SYSDATE, 'MM'), -1) + 25)+16/24";
+            string second = " (ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 0) + 25)+15/24 +59/(24*60)";
             if (day > 25)
             {
-                first = "ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 0) + 25";
-                second = "ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 1) + 25";
+                first = "(ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 0) + 25)+16/24";
+                second = "A(ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 1) + 25)+15/24 +59/(24*60)";
             }
             if (context.Request["m"].ToString() == "fwq")
             {
@@ -68,19 +68,34 @@ public class FormingKanban : IHttpHandler, IReadOnlySessionState
 
             if (context.Request["m"].ToString() == "pie1")
             {
-                string sqlStr = @"SELECT
-										DECODE( NVL( 良品数, 0 ),0,'0',TO_CHAR((NVL( 良品数, 0 ) / DECODE( NVL( 半检数, 1 ), 0, 1, NVL( 半检数, 1 ) ) ) ,'fm99990.00' )*100 ) as 良品率
-										FROM(
-										SELECT
-										SUM( CASE WHEN PD.GOODSLEVELTYPEID is null THEN 1 ELSE 0 END)
-										+SUM(CASE WHEN PD.GOODSLEVELTYPEID in (1,4) THEN 1 ELSE 0 END)as 良品数,
-										COUNT(pda.BARCODE) as 半检数
-										FROM TP_PM_PRODUCTIONDATA pd
-										INNER  JOIN ( SELECT BARCODE FROM TP_PM_PRODUCTIONDATA 
-										WHERE PROCEDUREID  IN ( 6,40,31 ) AND TRUNC(CREATETIME ) = trunc(sysdate)  
-										) PDA ON PDA.BARCODE=PD.BARCODE
-										WHERE TRUNC(pd.CREATETIME ) = trunc(sysdate)   and  pd.VALUEFLAG=1
-										)";
+                string sqlStr = @"with 半检缺陷 AS (
+											SELECT
+												COUNT(dfc.BARCODE) 缺陷数量
+												FROM TP_PM_DEFECT dfc
+												LEFT JOIN TP_MST_DEFECT df ON df.DEFECTID = dfc.DEFECTID 
+												WHERE dfc.VALUEFLAG=1
+												and TRUNC(dfc.CREATETIME)=TRUNC(SYSDATE)
+												AND  dfc.DEFECTNAME IN ('坯脏','棕眼','裂底','裂圈','裂鼻子','裂水道','裂管','沾接裂','裂眼','板折',
+												'糙活','变形','渣','管道渣','孔眼不良','睹眼','眼歪','丢气孔','丢眼','坏磕','漏气','空泡','水封不良','冲刷不好','泥埂','断浆迹','模迹','重皮','气泡','眼扁','水绺','卡球') 
+												),
+												检验数 AS 
+												(
+											  SELECT COUNT( * ) 出窑数 FROM TP_PM_PRODUCTIONDATA WHERE PROCEDUREID IN (15,16)  AND GOODSLEVELID=4 AND TRUNC( CREATETIME ) = trunc(sysdate)    and VALUEFLAG=1 
+												)
+												SELECT
+												检验数.出窑数 ,
+												DECODE( NVL( 半检缺陷.缺陷数量, 0 ),0,'0%',TO_CHAR(
+												CASE WHEN (1- NVL( 半检缺陷.缺陷数量, 0 ) / DECODE( NVL( 检验数.出窑数, 1 ), 0, 1, NVL( 检验数.出窑数, 1 ) ) ) * 100 >=100
+												THEN 100 else  ( 1- NVL( 半检缺陷.缺陷数量, 0 ) / DECODE( NVL( 检验数.出窑数, 1 ), 0, 1, NVL( 检验数.出窑数, 1 ) ) ) * 100 END
+												,'fm99990.0' ) || '%' ) as 合格率,
+												
+												DECODE( NVL( 半检缺陷.缺陷数量, 0 ),0,'0%',TO_CHAR(
+												CASE WHEN ( NVL(半检缺陷.缺陷数量, 0 ) / DECODE( NVL( 检验数.出窑数, 1 ), 0, 1, NVL( 检验数.出窑数, 1 ) ) ) * 100 >=100
+												THEN 100 else  (NVL( 半检缺陷.缺陷数量, 0 ) / DECODE( NVL( 检验数.出窑数, 1 ), 0, 1, NVL( 检验数.出窑数, 1 ) ) ) * 100 END
+												,'fm99990.0' ) || '%' ) as 缺陷率
+												FROM  
+												半检缺陷
+												LEFT JOIN 检验数 on 1=1";
                 //直接获取不分页数据
                 DataTable dt = conn.ExecuteDatatable(sqlStr);
                 string jsonStr = new JsonResult(dt).ToJson();
@@ -368,7 +383,7 @@ public class FormingKanban : IHttpHandler, IReadOnlySessionState
 												检验数 
 												AS 
 												(
-												SELECT COUNT( * ) 一烧出窑数 FROM TP_PM_PRODUCTIONDATA WHERE PROCEDUREID IN (14,56)   and GOODSLEVELID in (4) and VALUEFLAG=1  AND TRUNC( CREATETIME ) = trunc(sysdate) 
+												SELECT COUNT( * ) 一烧出窑数 FROM TP_PM_PRODUCTIONDATA WHERE PROCEDUREID IN (14,56)  and VALUEFLAG=1 	AND TRUNC(CREATETIME)=TRUNC(SYSDATE) 
 												) 
 	
 												SELECT

+ 13 - 19
wwwroot/main/Procedure/HalfCheckKanban/HalfCheckKanban.html

@@ -292,23 +292,16 @@
 			$.get('HalfCheckKanban.ashx?m=DefectDetail', function (data) {
                 var json = JSON.parse(data);
 				if (json["success"] == true) {
-					$('#qxname1').text(json["rows"][0]["缺陷名称"]);
-					$('#qxname2').text(json["rows"][1]["缺陷名称"]);
-					$('#qxname3').text(json["rows"][2]["缺陷名称"]);
-					$('#qxname4').text(json["rows"][3]["缺陷名称"]);
-
-					$('#sl1').text(json["rows"][0]["缺陷数量"]);
-					$('#sl2').text(json["rows"][1]["缺陷数量"]);
-					$('#sl3').text(json["rows"][2]["缺陷数量"]);
-					$('#sl4').text(json["rows"][3]["缺陷数量"]);
-                    $('#sl5').text(json["rows"][0]["其他缺陷数量"]);
-
-
-					$('#qxl1').text(json["rows"][0]["缺陷率"]);
-					$('#qxl2').text(json["rows"][1]["缺陷率"]);
-					$('#qxl3').text(json["rows"][2]["缺陷率"]);
-					$('#qxl4').text(json["rows"][3]["缺陷率"]);
+					$('#sl5').text(json["rows"][0]["其他缺陷数量"]);
 					$('#qxl5').text(json["rows"][0]["其他缺陷率"]);
+					for (var i = 0; i < json["rows"].length; i++) {
+						var qx = '#qxname' + (i + 1);
+						var sl = '#sl' + (i + 1);
+						var qxl = '#qxl' + (i + 1);
+							$(qx).text(json["rows"][i]["缺陷名称"]);
+							$(sl).text(json["rows"][i]["缺陷数量"]);
+							$(qxl).text(json["rows"][i]["缺陷率"]);
+					}
 
 				}
 			});
@@ -329,10 +322,11 @@
 			$.get("HalfCheckKanban.ashx?m=pie1", function (data) {
 			var json = JSON.parse(data);
                 if (json["success"] == true) {
-                    var firs = parseFloat(json["rows"][0]["良品率"]);
+                    var firs = parseFloat(json["rows"][0]["合格率"]);
 					var lpv = firs.toFixed(2);
-                    var sencond = 100.00 - parseFloat(json["rows"][0]["良品率"]);
-					window.DefectA.data.datasets[0].data = [lpv, sencond];
+                    var sencond = 100.00 - parseFloat(json["rows"][0]["合格率"]);
+					var sec = sencond.toFixed(2);
+					window.DefectA.data.datasets[0].data = [lpv, sec];
 				window.DefectA.update();
 			}
 		});

+ 193 - 9
wwwroot/main/Procedure/PackagingKanban/PackagingKanban.ashx

@@ -1,17 +1,201 @@
-<%@ WebHandler Language="C#" Class="PackagingKanban" %>
+<%@ WebHandler Language="C#" Class="FormingKanban" %>
 
 using System;
 using System.Web;
-
-public class PackagingKanban : IHttpHandler {
-    
-    public void ProcessRequest (HttpContext context) {
+using System.Web.SessionState;
+using System.Configuration;
+using System.Data;
+using Curtain.DataAccess;
+using Curtain.Log;
+using DK.XuWei.WebMes;
+using Newtonsoft.Json.Linq;
+using System.Collections.Generic;
+public class  FormingKanban : IHttpHandler, IReadOnlySessionState
+{
+    public void ProcessRequest(HttpContext context)
+    {
         context.Response.ContentType = "text/plain";
-        context.Response.Write("Hello World");
+        using (IDataAccess conn = DataAccess.Create())
+        {
+        	if (context.Request["m"].ToString() == "fwq")
+			{
+				string time = DateTime.Now.ToString("yyyy年MM月dd日 HH:mm ");
+				Dictionary<string, string> d = new Dictionary<string, string>();
+				JObject json = new JObject(
+						  new JProperty("success", true),
+						  new JProperty("sj", time)
+						);
+				context.Response.Write(json.ToString());
+			}
+			   int day = Convert.ToInt32(DateTime.Now.ToString("dd"));
+            string first = " (ADD_MONTHS(TRUNC(SYSDATE, 'MM'), -1) + 25)+16/24";
+            string second = " (ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 0) + 25)+15/24 +59/(24*60)";
+            if (day > 25)
+            {
+                first = "(ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 0) + 25)+16/24";
+                second = "A(ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 1) + 25)+15/24 +59/(24*60)";
+            }
+
+				if (context.Request["m"].ToString() == "MonthSum")
+							{
+								string sqlStr = @"SELECT
+														COUNT(DISTINCT BARCODE) as 数量
+														FROM TP_PM_PRODUCTIONDATA pd
+														WHERE pd.PROCEDUREID=17
+														AND pd.VALUEFLAG=1
+														AND pd.ACCOUNTID=1
+														AND pd.CREATETIME=TRUNC(SYSDATE)
+														";
+								//直接获取不分页数据
+								DataTable dt = conn.ExecuteDatatable(sqlStr);
+								string jsonStr = new JsonResult(dt).ToJson();
+								context.Response.Write(jsonStr);
+							}
+
+        	if (context.Request["m"].ToString() == "GoodsSum")
+			{
+				string sqlStr = @"SELECT
+									GOODSCODE,
+									GOODSNAME,
+									COUNT(GOODSCODE) as 数量
+									FROM TP_PM_PRODUCTIONDATA
+									WHERE PROCEDUREID=17
+									AND VALUEFLAG=1
+									AND ACCOUNTID=1
+									AND CREATETIME=TRUNC(SYSDATE)";
+                //直接获取不分页数据
+                DataTable dt = conn.ExecuteDatatable(sqlStr);
+                string jsonStr = new JsonResult(dt).ToJson();
+                context.Response.Write(jsonStr);
+			}
+
+			    if (context.Request["m"].ToString() == "Alltotal")
+            {
+                string sqlStr = @"SELECT
+						COUNT(DISTINCT BARCODE) as 数量
+						FROM TP_PM_PRODUCTIONDATA pd
+						WHERE pd.PROCEDUREID=17
+						AND pd.VALUEFLAG=1
+						AND pd.ACCOUNTID=1
+						AND pd.CREATETIME >={first}  AND pd.CREATETIME <{second} ".Replace("{first}",first).Replace("{second}",second);
+                //直接获取不分页数据
+                DataTable dt = conn.ExecuteDatatable(sqlStr);
+                string jsonStr = new JsonResult(dt).ToJson();
+                context.Response.Write(jsonStr);
+            }
+
+                 	if (context.Request["m"].ToString() == "MonthTable")
+			{
+				string sqlStr = @"SELECT
+										us.USERNAME,
+										pd.GOODSCODE,
+										pd.GOODSNAME,
+										COUNT(pd.GOODSCODE) as 数量
+										FROM TP_PM_PRODUCTIONDATA pd
+										LEFT JOIN TP_MST_USER us ON us.USERID=pd.USERID
+										WHERE pd.PROCEDUREID=17
+										AND pd.VALUEFLAG=1
+										AND pd.ACCOUNTID=1
+										AND pd.CREATETIME=TRUNC(SYSDATE)
+										GROUP BY us.USERNAME,pd.GOODSCODE,pd.GOODSNAME";
+                //直接获取不分页数据
+                DataTable dt = conn.ExecuteDatatable(sqlStr);
+                string jsonStr = new JsonResult(dt).ToJson();
+                context.Response.Write(jsonStr);
+			}
+
+		if (context.Request["m"].ToString() == "rate")//折线图
+			{
+				string sqlStr = @"WITH 包装 AS(
+								SELECT
+													*
+													FROM(
+													select 
+													pdg.SJ,
+													  SUM(pdg.A313 +pdg.A21)  AS  包装数量
+													 from ( select 
+															pdata.SJ,			
+															pdata.productionlineid,
+														   pdata.goodstypename2,
+														   pdata.goodstypename,
+														   pdata.goodscode,
+														   pdata.goodsspecification,
+														   pdata.GOODSMODEL,
+														   pdata.GLAZETYPE
+													, sum(pdata.A313) as A313
+													, sum(pdata.A21) as A21
+													  from (  select
+															TO_CHAR(pd.CREATETIME,'MM-DD')AS SJ,
+														   pd.productionlineid,
+														   gt2.goodstypename goodstypename2,
+														   gt.goodstypename,
+														   g.goodscode,
+														   g.goodsspecification,
+														   g.GOODSMODEL,
+														   dd.dictionaryvalue GLAZETYPE
+													, sum(decode(pd.procedureid, 17, 1, 0)) as A313
+													, sum(decode(pd.procedureid, 0, 0, 0)) as A21
+													  from tp_pm_productiondata pd
+													 inner join tp_mst_goods g
+														on g.goodsid = pd.goodsid
+													 inner join tp_mst_goodstype gt
+														on gt.goodstypeid = g.goodstypeid
+													 inner join tp_mst_goodstype gt2
+														on gt2.goodstypecode = substr(gt.goodstypecode, 0, 6)
+													   and gt2.accountid = gt.accountid
+													 inner join tp_mst_datadictionary dd
+														on dd.dictionaryid = g.GLAZETYPEID
+													 where pd.valueflag = '1'
+													   and pd.accountid = '1'
+												AND pd.CREATETIME 	 >={first}  AND pd.CREATETIME <{second}
+														AND exists (Select 1  from TP_MST_UserPurview up where up.PurviewType= 7 and (up.PurviewID = -1 or up.PurviewID= pd.ProductionLineId)) group by
+														TO_CHAR(pd.CREATETIME,'MM-DD'), 
+														   pd.productionlineid,
+														   gt2.goodstypename,
+														   gt.goodstypename,
+														   g.goodscode,
+														   g.goodsspecification,
+														   g.GOODSMODEL,
+														   dd.dictionaryvalue
+													 order by gt2.goodstypename, g.goodscode ) pdata
+													 group by 
+													pdata. SJ,
+													  pdata.productionlineid,
+														   pdata.goodstypename2,
+														   pdata.goodstypename,
+														   pdata.goodscode,
+														   pdata.goodsspecification,
+														   pdata.GOODSMODEL,
+														   pdata.GLAZETYPE
+													 ) pdg
+													 							GROUP BY pdg.SJ
+																				ORDER BY pdg.SJ
+														)
+							)
+														SELECT
+														SJ,
+														包装数量
+														FROM 包装" .Replace("{first}",first).Replace("{second}",second);
+                //直接获取不分页数据
+                DataTable dt = conn.ExecuteDatatable(sqlStr);
+                string jsonStr = new JsonResult(dt).ToJson();
+                context.Response.Write(jsonStr);
+			}
+        }
     }
- 
-    public bool IsReusable {
-        get {
+
+    public decimal toNumber(object o)
+    {
+        if (o != DBNull.Value)
+            return Convert.ToDecimal(o);
+        else
+            return 0;
+    }
+
+    public bool IsReusable
+    {
+        get
+        {
             return false;
         }
     }

+ 162 - 163
wwwroot/main/Procedure/PackagingKanban/PackagingKanban.html

@@ -35,7 +35,7 @@
                         <td style="width: 8%; height: 60px; font-size: 30px; text-align: left" colspan="2"><strong><span id="sj" style="color:white;">0000-00-00 00:00:00</span></strong></td>
                     </tr>
                     <tr class="tr_bg_dark_warning">
-                        <td style="width: 5%; height: 200px; font-size: 35px; text-align: center " class="td, th" rowspan="3"><br />月包装量:<span id="yjyl">加载中...</span><br /></td>
+                        <td style="width: 5%; height: 200px; font-size: 35px; text-align: center " class="td, th" rowspan="3"><br />月包装量:<span id="yjyl">0</span><br /></td>
                     </tr>
                 </table>
             </div>
@@ -46,61 +46,25 @@
                 <div style="width: 50%;height:530px;padding-right:20px;">
                     <table cellspacing="0" cellpadding="0" border="0" style="width:100%;">
                         <tr class="tr_title_warning">
-                            <td colspan="9" style="color:white;">包装数量:----</td>
+                            <td colspan="9" style="color:white;">包装数量:<span id="sum">---</span></td>
                         </tr>
                         <tr class="tr_title_warning">
-                            <td>产品型号</td>
+                            <td>产品编码</td>
                             <td>产品名称</td>
                             <td>包装数量</td>
                         </tr>
-
-                        <tr class="tr_bg_light_warning" style="height:30px;">
-                            <td style="font-size: 18px; width: 11%">测试员工</td>
-                            <td style="font-size: 18px; width: 11%">测试编码</td>
-                            <td style="font-size: 18px; width: 11%">测试名称</td>
-                        </tr>
-                        <tr class="tr_bg_light_warning" style="height:30px;">
-                            <td style="font-size: 18px; width: 11%">测试员工</td>
-                            <td style="font-size: 18px; width: 11%">测试编码</td>
-                            <td style="font-size: 18px; width: 11%">测试名称</td>
-                        </tr>
-                        <tr class="tr_bg_light_warning" style="height:30px;">
-                            <td style="font-size: 18px; width: 11%">测试员工</td>
-                            <td style="font-size: 18px; width: 11%">测试编码</td>
-                            <td style="font-size: 18px; width: 11%">测试名称</td>
-                        </tr>
-                        <tr class="tr_bg_light_warning" style="height:30px;">
-                            <td style="font-size: 18px; width: 11%">测试员工</td>
-                            <td style="font-size: 18px; width: 11%">测试编码</td>
-                            <td style="font-size: 18px; width: 11%">测试名称</td>
-
-                        </tr>
-                        <tr class="tr_bg_light_warning" style="height:30px;">
-                            <td style="font-size: 18px; width: 11%">测试员工</td>
-                            <td style="font-size: 18px; width: 11%">测试编码</td>
-                            <td style="font-size: 18px; width: 11%">测试名称</td>
-                        </tr>
-                        <tr class="tr_bg_light_warning" style="height:30px;">
-                            <td style="font-size: 18px; width: 11%">测试员工</td>
-                            <td style="font-size: 18px; width: 11%">测试编码</td>
-                            <td style="font-size: 18px; width: 11%">测试名称</td>
-                        </tr>
-                        <tr class="tr_bg_light_warning" style="height:30px;">
-                            <td style="font-size: 18px; width: 11%">测试员工</td>
-                            <td style="font-size: 18px; width: 11%">测试编码</td>
-                            <td style="font-size: 18px; width: 11%">测试名称</td>
-                        </tr>
-                        <tr class="tr_bg_light_warning" style="height:30px;">
-                            <td style="font-size: 18px; width: 11%">测试员工</td>
-                            <td style="font-size: 18px; width: 11%">测试编码</td>
-                            <td style="font-size: 18px; width: 11%">测试名称</td>
-                        </tr>
-                        <tr class="tr_bg_light_warning" style="height:30px;">
-                            <td style="font-size: 18px; width: 11%">测试员工</td>
-                            <td style="font-size: 18px; width: 11%">测试编码</td>
-                            <td style="font-size: 18px; width: 11%">测试名称</td>
-                        </tr>
                     </table>
+                    <div style=" height:440px;overflow:hidden;">
+                        <table id="dayTable_template" style="display:none;">
+                            <tr class="tr_bg_light_warning" style="height:30px;">
+                                <td style="font-size: 18px; width: 33%; height: 30px; ">{产品编码}</td>
+                                <td style="font-size: 18px; width: 34%; height: 30px; ">{产品名称}</td>
+                                <td style="font-size: 18px; width: 33%; height: 30px; ">{包装数量}</td>
+                            </tr>
+                        </table>
+                        <table id="dayTable" style="width: 100%; ">
+                        </table>
+                    </div>
                 </div>
                 <div style="width: 50%;height:530px;padding-right:20px;">
                     <table cellspacing="0" cellpadding="0" border="0" style="width:100%;">
@@ -113,62 +77,19 @@
                             <td>产品名称</td>
                             <td>包装数量</td>
                         </tr>
-
-                        <tr class="tr_bg_light_warning" style="height:30px;">
-                            <td style="font-size: 18px; width: 11%">测试员工</td>
-                            <td style="font-size: 18px; width: 11%">测试编码</td>
-                            <td style="font-size: 18px; width: 11%">测试名称</td>
-                            <td style="font-size: 18px; width: 11%">200</td>
-                        </tr>
-                        <tr class="tr_bg_light_warning" style="height:30px;">
-                            <td style="font-size: 18px; width: 11%">测试员工</td>
-                            <td style="font-size: 18px; width: 11%">测试编码</td>
-                            <td style="font-size: 18px; width: 11%">测试名称</td>
-                            <td style="font-size: 18px; width: 11%">200</td>
-                        </tr>
-                        <tr class="tr_bg_light_warning" style="height:30px;">
-                            <td style="font-size: 18px; width: 11%">测试员工</td>
-                            <td style="font-size: 18px; width: 11%">测试编码</td>
-                            <td style="font-size: 18px; width: 11%">测试名称</td>
-                            <td style="font-size: 18px; width: 11%">200</td>
-                        </tr>
-                        <tr class="tr_bg_light_warning" style="height:30px;">
-                            <td style="font-size: 18px; width: 11%">测试员工</td>
-                            <td style="font-size: 18px; width: 11%">测试编码</td>
-                            <td style="font-size: 18px; width: 11%">测试名称</td>
-                            <td style="font-size: 18px; width: 11%">200</td>
-                        </tr>
-                        <tr class="tr_bg_light_warning" style="height:30px;">
-                            <td style="font-size: 18px; width: 11%">测试员工</td>
-                            <td style="font-size: 18px; width: 11%">测试编码</td>
-                            <td style="font-size: 18px; width: 11%">测试名称</td>
-                            <td style="font-size: 18px; width: 11%">200</td>
-                        </tr>
-                        <tr class="tr_bg_light_warning" style="height:30px;">
-                            <td style="font-size: 18px; width: 11%">测试员工</td>
-                            <td style="font-size: 18px; width: 11%">测试编码</td>
-                            <td style="font-size: 18px; width: 11%">测试名称</td>
-                            <td style="font-size: 18px; width: 11%">200</td>
-                        </tr>
-                        <tr class="tr_bg_light_warning" style="height:30px;">
-                            <td style="font-size: 18px; width: 11%">测试员工</td>
-                            <td style="font-size: 18px; width: 11%">测试编码</td>
-                            <td style="font-size: 18px; width: 11%">测试名称</td>
-                            <td style="font-size: 18px; width: 11%">200</td>
-                        </tr>
-                        <tr class="tr_bg_light_warning" style="height:30px;">
-                            <td style="font-size: 18px; width: 11%">测试员工</td>
-                            <td style="font-size: 18px; width: 11%">测试编码</td>
-                            <td style="font-size: 18px; width: 11%">测试名称</td>
-                            <td style="font-size: 18px; width: 11%">200</td>
-                        </tr>
-                        <tr class="tr_bg_light_warning" style="height:30px;">
-                            <td style="font-size: 18px; width: 11%">测试员工</td>
-                            <td style="font-size: 18px; width: 11%">测试编码</td>
-                            <td style="font-size: 18px; width: 11%">测试名称</td>
-                            <td style="font-size: 18px; width: 11%">200</td>
-                        </tr>
                     </table>
+
+                    <div style=" height:440px;overflow:hidden;">
+                        <table id="Table_template" style="display:none;">
+                            <tr class="tr_bg_light_warning" style="height:30px;">
+                                <td style="font-size: 18px; width: 33%; height: 30px; ">{产品编码}</td>
+                                <td style="font-size: 18px; width: 34%; height: 30px; ">{产品名称}</td>
+                                <td style="font-size: 18px; width: 33%; height: 30px; ">{包装数量}</td>
+                            </tr>
+                        </table>
+                        <table id="Table" style="width: 100%; ">
+                        </table>
+                    </div>
                 </div>
                 <!--<div style="width: 25%;height:530px;">
             <div style="color:white;font-size:20px;font-weight:600; text-align:center">每月产量计划达成</div>
@@ -179,63 +100,125 @@
     </div>
 
     <script>
-
+		var refreshTime1 = 80000;
+		var currentTime1 = 0;
+		var doGetData;
+        var doGetTime;
+        //第一表
+		var dayInterval;
+        var dayTableRowCount = 0;
+        //第二表
+		var TableInterval;
+		var TableRowCount = 0;
+		var monthInterval;
+		var monthTableRowCount = 0;
         $(document).ready(function () {
+			loadData();
             initData();
-            doGetData = setInterval(function () { timeUpdate(); }, 2000);
+            Scroll();
+            SumScroll();
+			doGetData = setInterval(function () { SumScroll(); }, 2000);
+			doGetData = setInterval(function () { loadData(); }, 2000);
+			doGetData = setInterval(function () { loadServerTime(); }, 5000);//系统时间
         });
-
-        function timeUpdate() {
-            loadData();
-
+        function Scroll() {
+            loadTable();
+            loadDayTable();
         }
-
+		function dayTableScroll() {
+			var scrollHeight = $("#dayTable_template").find("tr").outerHeight();
+			$("#dayTable").animate({ marginTop: -scrollHeight, }, 500,
+				function () {
+					$(this).css({ marginTop: "0px", }).find("tr:first").appendTo(this);
+					if (dayTableRowCount > -1) {
+						dayTableRowCount--;
+					} else {
+						clearInterval(dayInterval);
+						loadDayTable();
+					}
+				}
+			);
+		}
+		function loadDayTable() {
+			$.get("PackagingKanban.ashx?m=MonthTable", function (data) {
+				var json = JSON.parse(data);
+				if (json["success"] == true) {
+					$("#dayTable").html("");
+					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]['产品分级']);
+						$("#dayTable").append(temp);
+					}
+					dayTableRowCount = json["rows"].length;
+					dayInterval = setInterval(dayTableScroll, 6000);
+				}
+			});
+        }
+		function TableScroll() {
+			var scrollHeight = $("#Table_template").find("tr").outerHeight();
+			$("#Table").animate({ marginTop: -scrollHeight, }, 500,
+				function () {
+					$(this).css({ marginTop: "0px", }).find("tr:first").appendTo(this);
+					if (TableRowCount > -1) {
+						TableRowCount--;
+					} else {
+						clearInterval(TableInterval);
+						loadTable();
+					}
+				}
+			);
+        }
+		function loadTable() {
+			$.get("PackagingKanban.ashx?m=MonthTable", function (data) {
+				var json = JSON.parse(data);
+				if (json["success"] == true) {
+					$("#dayTable").html("");
+					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]['产品分级']);
+						$("#dayTable").append(temp);
+					}
+					TableRowCount = json["rows"].length;
+					TableInterval = setInterval(TableScroll, 6000);
+				}
+			});
+		}
+		function loadServerTime() {
+			$.get('PackagingKanban.ashx?m=fwq', function (data) {
+				var json = JSON.parse(data);
+				if (json["success"] == true) {
+					$('#sj').html(json["sj"]);
+				}
+			});
+		}
         function loadData() {
-            //31天产量
-            window.DayCL.data.datasets[0].data = [
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5,
-                randomScalingFactor(8) + 5
-            ];
-          
-            window.DayCL.update();
-
-            //产量计划达成
-            window.MonthCL.data.datasets[0].data = [
-                randomScalingFactor(1000),
-                randomScalingFactor(1000)
-            ];
-            window.MonthCL.update();
+			$.get("PackagingKanban.ashx?m=rate", function (data) {
+				clearData();
+				var json = JSON.parse(data);
+				if (json["success"] == true) {
+					for (var n = 0; n < json["rows"].length; n++) {
+						window.DayCL.data.labels.push(json["rows"][n]["SJ"]);
+						window.DayCL.data.datasets[0].data[n] = (json["rows"][n]["包装数量"]);
+					}
+				}
+				window.DayCL.update();
+			});
         }
-
+		function clearData() {
+			//清除数据
+			window.DayCL.data.labels = [];
+			//window.DayCL.data.datasets[0].data = [0, 0, 0, 0, 0, 0, 0];
+			window.DayCL.data.datasets[0].data = [];
+			window.DayCL.update();
+		}
         function initData() {
             window.chartColors = {
                 red: 'rgb(255, 99, 132)',
@@ -248,7 +231,6 @@
             };
 
             var color = Chart.helpers.color;
-
             window.randomScalingFactor = function (num) {
                 return Math.round(Math.random() * num);
             }
@@ -260,14 +242,14 @@
             //每小时产量=========================================
             window.configDayCL = {
                 data: {
-                    labels: ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31"],
+					labels: [],
                     datasets: [{
                         label: "包装数量",
                         backgroundColor: color(window.chartColors.orange).alpha(0.6).rgbString(),
                         borderColor: window.chartColors.orange,
                         borderWidth: 2,
                         pointRadius: 15,
-                        data: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+                        data: [],
                         fill: false,
                     }]
                 },
@@ -279,7 +261,7 @@
                     },
                     title: {
                         display: false,
-                        text: '每小时产量'
+                        text: '每产量'
                     },
                     tooltips: {
                         mode: 'index',
@@ -311,9 +293,26 @@
             window.DayCL = new Chart(ctxDayCL, configDayCL);
 
         }
-
-
-
+        function DaySum() {
+			$.get('PackagingKanban.ashx?m=MonthSum', function (data) {
+				var json = JSON.parse(data);
+				if (json["success"] == true) {
+					$('#sum').text(json["rows"][0]["数量"]);
+				}
+			});
+        }
+        function MonthSum() {
+			$.get('PackagingKanban.ashx?m=Alltotal', function (data) {
+				var json = JSON.parse(data);
+				if (json["success"] == true) {
+					$('#yjyl').text(json["rows"][0]["数量"]);
+				}
+			});
+        }
+        function SumScroll() {
+            DaySum();
+            MonthSum();
+        }
     </script>
 
     <script src="/Plugins/chartjs-2.8.0/chart-2.8.min.js"></script>

+ 5 - 5
wwwroot/main/Procedure/RefinementKanban/RefinementKanban.ashx

@@ -28,12 +28,12 @@ public class  FormingKanban : IHttpHandler, IReadOnlySessionState
 				context.Response.Write(json.ToString());
 			}
 			   int day = Convert.ToInt32(DateTime.Now.ToString("dd"));
-            string first = " ADD_MONTHS(TRUNC(SYSDATE, 'MM'), -1) + 25";
-            string second = " ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 0) + 25";
+         string first = " (ADD_MONTHS(TRUNC(SYSDATE, 'MM'), -1) + 25)+16/24";
+            string second = " (ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 0) + 25)+15/24 +59/(24*60)";
             if (day > 25)
             {
-                first = "ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 0) + 25";
-                second = "ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 1) + 25";
+                first = "(ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 0) + 25)+16/24";
+                second = "A(ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 1) + 25)+15/24 +59/(24*60)";
             }
 			if (context.Request["m"].ToString() == "StaffTable")
             {
@@ -391,7 +391,7 @@ public class  FormingKanban : IHttpHandler, IReadOnlySessionState
 												检验数 
 												AS 
 												(
-												SELECT COUNT( * ) 一烧出窑数 FROM TP_PM_PRODUCTIONDATA WHERE PROCEDUREID IN (14,56)  and VALUEFLAG=1 	AND TRUNC(CREATETIME)=TRUNC(SYSDATE) 
+												SELECT COUNT( * ) 一烧出窑数 FROM TP_PM_PRODUCTIONDATA WHERE PROCEDUREID IN (14,56)  and VALUEFLAG=1 	AND TRUNC(CREATETIME)=TRUNC(SYSDATE)
 												) 
 	
 												SELECT

+ 9 - 17
wwwroot/main/Procedure/RefinementKanban/RefinementKanban.html

@@ -286,24 +286,16 @@
 			$.get('RefinementKanban.ashx?m=DefectDetail', function (data) {
 				var json = JSON.parse(data);
 				if (json["success"] == true) {
-					$('#qxname1').text(json["rows"][0]["缺陷名称"]);
-					$('#qxname2').text(json["rows"][1]["缺陷名称"]);
-					$('#qxname3').text(json["rows"][2]["缺陷名称"]);
-					$('#qxname4').text(json["rows"][3]["缺陷名称"]);
-
-					$('#sl1').text(json["rows"][0]["缺陷数量"]);
-					$('#sl2').text(json["rows"][1]["缺陷数量"]);
-					$('#sl3').text(json["rows"][2]["缺陷数量"]);
-					$('#sl4').text(json["rows"][3]["缺陷数量"]);
-                    $('#sl5').text(json["rows"][0]["其他缺陷数量"]);
-
-
-					$('#qxl1').text(json["rows"][0]["缺陷率"]);
-					$('#qxl2').text(json["rows"][1]["缺陷率"]);
-					$('#qxl3').text(json["rows"][2]["缺陷率"]);
-					$('#qxl4').text(json["rows"][3]["缺陷率"]);
+					$('#sl5').text(json["rows"][0]["其他缺陷数量"]);
 					$('#qxl5').text(json["rows"][0]["其他缺陷率"]);
-
+					for (var i = 0; i < json["rows"].length; i++) {
+						var qx = '#qxname' + (i + 1);
+						var sl = '#sl' + (i + 1);
+						var qxl = '#qxl' + (i + 1);
+						$(qx).text(json["rows"][i]["缺陷名称"]);
+						$(sl).text(json["rows"][i]["缺陷数量"]);
+						$(qxl).text(json["rows"][i]["缺陷率"]);
+					}
 				}
 			});
 		}