fenglinyong 2 лет назад
Родитель
Сommit
e9f4c46b7b

+ 459 - 390
wwwroot/main/Procedure/test14/GlazingBeats.ashx

@@ -13,386 +13,372 @@ using System.Collections.Generic;
 
 public class SmallKanban : IHttpHandler
 {
-
-    public void ProcessRequest(HttpContext context)
-    {
-        using (IDataAccess conn = DataAccess.Create())
-        {
-            string morningMintimes = DateTime.Now.ToString("yyyy-MM-dd") + " 07:30:00";
-            string morningMaxtimes = DateTime.Now.ToString("yyyy-MM-dd") + " 12:00:00";
-            string afterMintimes = DateTime.Now.ToString("yyyy-MM-dd") + " 13:30:00";
-            string afterMaxtimes = DateTime.Now.ToString("yyyy-MM-dd") + " 16:00:00";
-            DateTime datetime = DateTime.Now;
-            int hour = datetime.Hour;
-            //服务器时间
-            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());
-            }
-            //总产量
-            if (context.Request["m"].ToString() == "Output")
-            {
-                string sqlStr = @"SELECT COUNT(DISTINCT BARCODE ) AS 产量
+	public void ProcessRequest(HttpContext context)
+	{
+		using (IDataAccess conn = DataAccess.Create())
+		{
+			string morningMintimes = DateTime.Now.ToString("yyyy-MM-dd") + " 07:30:00";
+			string morningMaxtimes = DateTime.Now.ToString("yyyy-MM-dd") + " 12:00:00";
+			string afterMintimes = DateTime.Now.ToString("yyyy-MM-dd") + " 13:30:00";
+			string afterMaxtimes = DateTime.Now.ToString("yyyy-MM-dd") + " 16:00:00";
+			DateTime datetime = DateTime.Now;
+			int hour = datetime.Hour;
+			//服务器时间
+			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());
+			}
+			//总产量
+			if (context.Request["m"].ToString() == "Output")
+			{
+				string sqlStr = @"SELECT COUNT(DISTINCT BARCODE ) AS 产量
                                                           FROM TP_PM_PRODUCTIONDATA WHERE PROCEDUREID=40 AND TRUNC(CREATETIME)=TRUNC(SYSDATE) AND VALUEFLAG=1  AND USERCODE='JS2'";
-                DataTable dt = conn.ExecuteDatatable(sqlStr);
-                context.Response.Write(new JsonResult(dt).ToJson());
-            }
-            //平均节拍
-            if (context.Request["m"].ToString() == "AvgBeat")
-            {
-                List<CDAParameter> sqlPara = new List<CDAParameter>();
-                sqlPara.Add(new CDAParameter("DATEBEGIN", morningMintimes, DataType.DateTime));
-                sqlPara.Add(new CDAParameter("DATEEND", afterMaxtimes, DataType.DateTime));
-			
-                string sqlStr = "";
-                if (hour < 12)
-                {
-				sqlPara.Add(new CDAParameter("ONE", DateTime.Now.ToString("yyyy-MM-dd") + " 07:35:00", DataType.DateTime));
-                sqlPara.Add(new CDAParameter("TWO", DateTime.Now.ToString("yyyy-MM-dd") + " 07:40:00", DataType.DateTime));
-				sqlPara.Add(new CDAParameter("THREE", DateTime.Now.ToString("yyyy-MM-dd") + " 08:00:00", DataType.DateTime));
-                sqlPara.Add(new CDAParameter("FOUR", DateTime.Now.ToString("yyyy-MM-dd") + " 08:30:00", DataType.DateTime));
-				sqlPara.Add(new CDAParameter("FIVE", DateTime.Now.ToString("yyyy-MM-dd") + " 07:31:00", DataType.DateTime));
-                    sqlStr = @"WITH time1 AS (
-	SELECT
-		Times,产量 
-	FROM
-		(
-		SELECT
-			MIN( CREATETIME ) AS Times,
-			COUNT( DISTINCT BARCODE ) AS 产量 
-		FROM
-			TP_PM_PRODUCTIONDATA 
-		WHERE
-			PROCEDUREID = 40 
-			AND CREATETIME >= ( SYSDATE - 5 / 24 / 60 ) 
-			AND CREATETIME <= SYSDATE 
-			AND USERCODE = 'JS2' 
-		) 
-	),
-	time2 AS (
-	SELECT
-		* 
-	FROM
-		(
-		SELECT
-			Times,产量 
-		FROM
-			(
-			SELECT
-				MIN( CREATETIME ) AS Times,
-				COUNT( DISTINCT BARCODE ) AS 产量 
-			FROM
-				TP_PM_PRODUCTIONDATA 
-			WHERE
-				PROCEDUREID = 40
-				AND CREATETIME >= ( SYSDATE - 10 / 24 / 60 ) 
-				AND CREATETIME <= SYSDATE 
-				AND VALUEFLAG = 1 
-				AND USERCODE = 'JS2' 
-			) 
-		) 
-	),
-	time3 AS (
-	SELECT
-		Times,产量 
-	FROM
-		(
-		SELECT
-			MIN( CREATETIME ) AS Times,
-			COUNT( DISTINCT BARCODE ) AS 产量 
-		FROM
-			TP_PM_PRODUCTIONDATA 
-		WHERE
-			PROCEDUREID = 40
-			AND CREATETIME >= ( SYSDATE - 30 / 24 / 60 ) 
-			AND CREATETIME <= SYSDATE 
-			AND VALUEFLAG = 1 
-			AND USERCODE = 'JS2' 
-		) 
-	),
-	time4 AS (
-	SELECT
-		Times,产量 
-	FROM
-		(
-		SELECT
-			MIN( CREATETIME ) AS Times,
-			COUNT( DISTINCT BARCODE ) AS 产量 
-		FROM
-			TP_PM_PRODUCTIONDATA 
-		WHERE
-			PROCEDUREID = 40 
-			AND CREATETIME >= ( SYSDATE - 1 / 24 ) 
-			AND CREATETIME <= SYSDATE 
-			AND VALUEFLAG = 1 
-			AND USERCODE = 'JS2' 
-		) 
-	),
-	time5 AS (
-	SELECT
-		Times,产量 
-	FROM
-		(
-		SELECT
-			MIN( CREATETIME ) AS Times,
-			COUNT( DISTINCT BARCODE ) AS 产量 
-		FROM
-			TP_PM_PRODUCTIONDATA 
-		WHERE
-			PROCEDUREID = 40
-			AND VALUEFLAG = 1 
-			AND USERCODE = 'JS2' 
-			AND  CREATETIME  >= ( SYSDATE - 4 / 24 / 60 ) 
-			AND CREATETIME <= SYSDATE 
-		) 
-	) SELECT
-	CASE WHEN SYSDATE<@ONE@  THEN 0 ELSE 
-	DECODE(
-		NVL( 300, 0 ),
-		0,
-		0,
-		TO_CHAR(
-			( 300 / DECODE( NVL( time1.产量, 1 ), 0, 1, NVL( time1.产量, 1 ) ) ),
-			'fm99990.0' 
-		) 
-	)  END one,
+				DataTable dt = conn.ExecuteDatatable(sqlStr);
+				context.Response.Write(new JsonResult(dt).ToJson());
+			}
+			//平均节拍
+			if (context.Request["m"].ToString() == "AvgBeat")
+			{
+				List<CDAParameter> sqlPara = new List<CDAParameter>();
+				sqlPara.Add(new CDAParameter("DATEBEGIN", morningMintimes, DataType.DateTime));
+				sqlPara.Add(new CDAParameter("DATEEND", afterMaxtimes, DataType.DateTime));
+				string sqlStr = "";
+				if (hour < 12)
+				{
+					sqlPara.Add(new CDAParameter("ONE", DateTime.Now.ToString("yyyy-MM-dd") + " 07:35:00", DataType.DateTime));
+					sqlPara.Add(new CDAParameter("TWO", DateTime.Now.ToString("yyyy-MM-dd") + " 07:40:00", DataType.DateTime));
+					sqlPara.Add(new CDAParameter("THREE", DateTime.Now.ToString("yyyy-MM-dd") + " 08:00:00", DataType.DateTime));
+					sqlPara.Add(new CDAParameter("FOUR", DateTime.Now.ToString("yyyy-MM-dd") + " 08:30:00", DataType.DateTime));
+					sqlPara.Add(new CDAParameter("FIVE", DateTime.Now.ToString("yyyy-MM-dd") + " 07:31:00", DataType.DateTime));
+					sqlStr = @"WITH time1 AS (
+											SELECT
+												Times,产量 
+											FROM
+												(
+												SELECT
+													MIN( CREATETIME ) AS Times,
+													COUNT( DISTINCT BARCODE ) AS 产量 
+												FROM
+													TP_PM_PRODUCTIONDATA 
+												WHERE
+													PROCEDUREID = 40 
+													AND CREATETIME >= ( SYSDATE - 5 / 24 / 60 ) 
+													AND CREATETIME <= SYSDATE 
+													AND USERCODE = 'JS2' 
+												) 
+											),
+											time2 AS (
+											SELECT
+												* 
+											FROM
+												(
+												SELECT
+													Times,产量 
+												FROM
+													(
+													SELECT
+														MIN( CREATETIME ) AS Times,
+														COUNT( DISTINCT BARCODE ) AS 产量 
+													FROM
+														TP_PM_PRODUCTIONDATA 
+													WHERE
+														PROCEDUREID = 40
+														AND CREATETIME >= ( SYSDATE - 10 / 24 / 60 ) 
+														AND CREATETIME <= SYSDATE 
+														AND VALUEFLAG = 1 
+														AND USERCODE = 'JS2' 
+													) 
+												) 
+											),
+											time3 AS (
+											SELECT
+												Times,产量 
+											FROM
+												(
+												SELECT
+													MIN( CREATETIME ) AS Times,
+													COUNT( DISTINCT BARCODE ) AS 产量 
+												FROM
+													TP_PM_PRODUCTIONDATA 
+												WHERE
+													PROCEDUREID = 40
+													AND CREATETIME >= ( SYSDATE - 30 / 24 / 60 ) 
+													AND CREATETIME <= SYSDATE 
+													AND VALUEFLAG = 1 
+													AND USERCODE = 'JS2' 
+												) 
+											),
+											time4 AS (
+											SELECT
+												Times,产量 
+											FROM
+												(
+												SELECT
+													MIN( CREATETIME ) AS Times,
+													COUNT( DISTINCT BARCODE ) AS 产量 
+												FROM
+													TP_PM_PRODUCTIONDATA 
+												WHERE
+													PROCEDUREID = 40 
+													AND CREATETIME >= ( SYSDATE - 1 / 24 ) 
+													AND CREATETIME <= SYSDATE 
+													AND VALUEFLAG = 1 
+													AND USERCODE = 'JS2' 
+												) 
+											),
+											time5 AS (
+											SELECT
+												Times,产量 
+											FROM
+												(
+												SELECT
+													MIN( CREATETIME ) AS Times,
+													COUNT( DISTINCT BARCODE ) AS 产量 
+												FROM
+													TP_PM_PRODUCTIONDATA 
+												WHERE
+													PROCEDUREID = 40
+													AND VALUEFLAG = 1 
+													AND USERCODE = 'JS2' 
+													AND  CREATETIME  >= ( SYSDATE - 4 / 24 / 60 ) 
+													AND CREATETIME <= SYSDATE 
+												) 
+											) SELECT
+											CASE WHEN SYSDATE<@ONE@  THEN 0 ELSE 
+											DECODE(
+												NVL( 300, 0 ),
+												0,
+												0,
+												TO_CHAR(
+													( 300 / DECODE( NVL( time1.产量, 1 ), 0, 1, NVL( time1.产量, 1 ) ) ),
+													'fm99990.0' 
+												) 
+											)  END one,
 	
-		CASE WHEN SYSDATE<@TWO@  THEN 0 ELSE 
-	DECODE(
-		NVL( 600, 0 ),
-		0,
-		0,
-		TO_CHAR(
-			( 600 / DECODE( NVL( time2.产量, 1 ), 0, 1, NVL( time2.产量, 1 ) ) ),
-			'fm99990.0' 
-		) 
-	) END two,
-		CASE WHEN SYSDATE<@THREE@  THEN 0 ELSE 
-	DECODE(
-		NVL( 1800, 0 ),
-		0,
-		0,
-		TO_CHAR(
-			( 1800 / DECODE( NVL( time3.产量, 1 ), 0, 1, NVL( time3.产量, 1 ) ) ),
-			'fm99990.0' 
-		) 
-	) END three,
-		CASE WHEN SYSDATE<@FOUR@  THEN 0 ELSE 
-	DECODE(
-		NVL( 3600, 0 ),
-		0,
-		0,
-		TO_CHAR(
-			( 3600 / DECODE( NVL( time4.产量, 1 ), 0, 1, NVL( time4.产量, 1 ) ) ),
-			'fm99990.0' 
-		) 
-	) END four,
-		CASE WHEN SYSDATE<@FIVE@  THEN 0 ELSE 
-	DECODE(
-		NVL( 240, 0 ),
-		0,
-		0,
-		TO_CHAR(
-			( 240 / DECODE( NVL( time5.产量, 1 ), 0, 1, NVL( time5.产量, 1 ) ) ),
-			'fm99990.0' 
-		) 
-	) END FIVE 
-FROM
-	time1
-	LEFT JOIN time2 ON 1 = 1
-	LEFT JOIN time3 ON 1 = 1
-	LEFT JOIN time4 ON 1 = 1
-	LEFT JOIN time5 ON 1 =1";
-
-                }
-                else if (hour > 12) { 
-				sqlPara.Add(new CDAParameter("ONE", (DateTime.Now.ToString("yyyy-MM-dd") + " 13:35:00"), DataType.DateTime));
-                sqlPara.Add(new CDAParameter("TWO", (DateTime.Now.ToString("yyyy-MM-dd") + " 13:40:00" ), DataType.DateTime));
-				sqlPara.Add(new CDAParameter("THREE", (DateTime.Now.ToString("yyyy-MM-dd") + " 14:00:00"), DataType.DateTime));
-                sqlPara.Add(new CDAParameter("FOUR", (DateTime.Now.ToString("yyyy-MM-dd") + " 14:30:00"), DataType.DateTime));
-				sqlPara.Add(new CDAParameter("FIVE", (DateTime.Now.ToString("yyyy-MM-dd") + " 13:31:00"), DataType.DateTime));
-                      sqlStr = @"WITH time1 AS (
-	SELECT
-		Times,产量 
-	FROM
-		(
-		SELECT
-			MIN( CREATETIME ) AS Times,
-			COUNT( DISTINCT BARCODE ) AS 产量 
-		FROM
-			TP_PM_PRODUCTIONDATA 
-		WHERE
-			PROCEDUREID = 40
-			AND CREATETIME >= ( SYSDATE - 5 / 24 / 60 ) 
-			AND CREATETIME <= SYSDATE 
-			AND USERCODE = 'JS2' 
-		) 
-	),
-	time2 AS (
-	SELECT
-		* 
-	FROM
-		(
-		SELECT
-			Times,产量 
-		FROM
-			(
-			SELECT
-				MIN( CREATETIME ) AS Times,
-				COUNT( DISTINCT BARCODE ) AS 产量 
-			FROM
-				TP_PM_PRODUCTIONDATA 
-			WHERE
-				PROCEDUREID = 40 
-				AND CREATETIME >= ( SYSDATE - 10 / 24 / 60 ) 
-				AND CREATETIME <= SYSDATE 
-				AND VALUEFLAG = 1 
-				AND USERCODE = 'JS2' 
-			) 
-		) 
-	),
-	time3 AS (
-	SELECT
-		Times,产量 
-	FROM
-		(
-		SELECT
-			MIN( CREATETIME ) AS Times,
-			COUNT( DISTINCT BARCODE ) AS 产量 
-		FROM
-			TP_PM_PRODUCTIONDATA 
-		WHERE
-			PROCEDUREID = 40
-			AND CREATETIME >= ( SYSDATE - 30 / 24 / 60 ) 
-			AND CREATETIME <= SYSDATE 
-			AND VALUEFLAG = 1 
-			AND USERCODE = 'JS2' 
-		) 
-	),
-	time4 AS (
-	SELECT
-		Times,产量 
-	FROM
-		(
-		SELECT
-			MIN( CREATETIME ) AS Times,
-			COUNT( DISTINCT BARCODE ) AS 产量 
-		FROM
-			TP_PM_PRODUCTIONDATA 
-		WHERE
-			PROCEDUREID = 40
-			AND CREATETIME >= ( SYSDATE - 1 / 24 ) 
-			AND CREATETIME <= SYSDATE 
-			AND VALUEFLAG = 1 
-			AND USERCODE = 'JS2' 
-		) 
-	),
-	time5 AS (
-	SELECT
-		Times,产量 
-	FROM
-		(
-		SELECT
-			MIN( CREATETIME ) AS Times,
-			COUNT( DISTINCT BARCODE ) AS 产量 
-		FROM
-			TP_PM_PRODUCTIONDATA 
-		WHERE
-			PROCEDUREID = 40
-			AND VALUEFLAG = 1 
-			AND USERCODE = 'JS2' 
-			AND  CREATETIME  >= ( SYSDATE - 4 / 24 / 60 ) 
-			AND CREATETIME <= SYSDATE 
-		) 
-	) SELECT
-	CASE WHEN SYSDATE<@ONE@  THEN 0 ELSE 
-	DECODE(
-		NVL( 300, 0 ),
-		0,
-		0,
-		TO_CHAR(
-			( 300 / DECODE( NVL( time1.产量, 1 ), 0, 1, NVL( time1.产量, 1 ) ) ),
-			'fm99990.0' 
-		) 
-	)  END one,
+												CASE WHEN SYSDATE<@TWO@  THEN 0 ELSE 
+											DECODE(
+												NVL( 600, 0 ),
+												0,
+												0,
+												TO_CHAR(
+													( 600 / DECODE( NVL( time2.产量, 1 ), 0, 1, NVL( time2.产量, 1 ) ) ),
+													'fm99990.0' 
+												) 
+											) END two,
+												CASE WHEN SYSDATE<@THREE@  THEN 0 ELSE 
+											DECODE(
+												NVL( 1800, 0 ),
+												0,
+												0,
+												TO_CHAR(
+													( 1800 / DECODE( NVL( time3.产量, 1 ), 0, 1, NVL( time3.产量, 1 ) ) ),
+													'fm99990.0' 
+												) 
+											) END three,
+												CASE WHEN SYSDATE<@FOUR@  THEN 0 ELSE 
+											DECODE(
+												NVL( 3600, 0 ),
+												0,
+												0,
+												TO_CHAR(
+													( 3600 / DECODE( NVL( time4.产量, 1 ), 0, 1, NVL( time4.产量, 1 ) ) ),
+													'fm99990.0' 
+												) 
+											) END four,
+												CASE WHEN SYSDATE<@FIVE@  THEN 0 ELSE 
+											DECODE(
+												NVL( 240, 0 ),
+												0,
+												0,
+												TO_CHAR(
+													( 240 / DECODE( NVL( time5.产量, 1 ), 0, 1, NVL( time5.产量, 1 ) ) ),
+													'fm99990.0' 
+												) 
+											) END FIVE 
+										FROM
+											time1
+											LEFT JOIN time2 ON 1 = 1
+											LEFT JOIN time3 ON 1 = 1
+											LEFT JOIN time4 ON 1 = 1
+											LEFT JOIN time5 ON 1 =1";
+				}
+				else if (hour > 12)
+				{
+					sqlPara.Add(new CDAParameter("ONE", (DateTime.Now.ToString("yyyy-MM-dd") + " 13:35:00"), DataType.DateTime));
+					sqlPara.Add(new CDAParameter("TWO", (DateTime.Now.ToString("yyyy-MM-dd") + " 13:40:00"), DataType.DateTime));
+					sqlPara.Add(new CDAParameter("THREE", (DateTime.Now.ToString("yyyy-MM-dd") + " 14:00:00"), DataType.DateTime));
+					sqlPara.Add(new CDAParameter("FOUR", (DateTime.Now.ToString("yyyy-MM-dd") + " 14:30:00"), DataType.DateTime));
+					sqlPara.Add(new CDAParameter("FIVE", (DateTime.Now.ToString("yyyy-MM-dd") + " 13:31:00"), DataType.DateTime));
+					sqlStr = @"WITH time1 AS (
+											SELECT
+												Times,产量 
+											FROM
+												(
+												SELECT
+													MIN( CREATETIME ) AS Times,
+													COUNT( DISTINCT BARCODE ) AS 产量 
+												FROM
+													TP_PM_PRODUCTIONDATA 
+												WHERE
+													PROCEDUREID = 40
+													AND CREATETIME >= ( SYSDATE - 5 / 24 / 60 ) 
+													AND CREATETIME <= SYSDATE 
+													AND USERCODE = 'JS2' 
+												) 
+											),
+											time2 AS (
+											SELECT
+												* 
+											FROM
+												(
+												SELECT
+													Times,产量 
+												FROM
+													(
+													SELECT
+														MIN( CREATETIME ) AS Times,
+														COUNT( DISTINCT BARCODE ) AS 产量 
+													FROM
+														TP_PM_PRODUCTIONDATA 
+													WHERE
+														PROCEDUREID = 40 
+														AND CREATETIME >= ( SYSDATE - 10 / 24 / 60 ) 
+														AND CREATETIME <= SYSDATE 
+														AND VALUEFLAG = 1 
+														AND USERCODE = 'JS2' 
+													) 
+												) 
+											),
+											time3 AS (
+											SELECT
+												Times,产量 
+											FROM
+												(
+												SELECT
+													MIN( CREATETIME ) AS Times,
+													COUNT( DISTINCT BARCODE ) AS 产量 
+												FROM
+													TP_PM_PRODUCTIONDATA 
+												WHERE
+													PROCEDUREID = 40
+													AND CREATETIME >= ( SYSDATE - 30 / 24 / 60 ) 
+													AND CREATETIME <= SYSDATE 
+													AND VALUEFLAG = 1 
+													AND USERCODE = 'JS2' 
+												) 
+											),
+											time4 AS (
+											SELECT
+												Times,产量 
+											FROM
+												(
+												SELECT
+													MIN( CREATETIME ) AS Times,
+													COUNT( DISTINCT BARCODE ) AS 产量 
+												FROM
+													TP_PM_PRODUCTIONDATA 
+												WHERE
+													PROCEDUREID = 40
+													AND CREATETIME >= ( SYSDATE - 1 / 24 ) 
+													AND CREATETIME <= SYSDATE 
+													AND VALUEFLAG = 1 
+													AND USERCODE = 'JS2' 
+												) 
+											),
+											time5 AS (
+											SELECT
+												Times,产量 
+											FROM
+												(
+												SELECT
+													MIN( CREATETIME ) AS Times,
+													COUNT( DISTINCT BARCODE ) AS 产量 
+												FROM
+													TP_PM_PRODUCTIONDATA 
+												WHERE
+													PROCEDUREID = 40
+													AND VALUEFLAG = 1 
+													AND USERCODE = 'JS2' 
+													AND  CREATETIME  >= ( SYSDATE - 4 / 24 / 60 ) 
+													AND CREATETIME <= SYSDATE 
+												) 
+											) SELECT
+											CASE WHEN SYSDATE<@ONE@  THEN 0 ELSE 
+											DECODE(
+												NVL( 300, 0 ),
+												0,
+												0,
+												TO_CHAR(
+													( 300 / DECODE( NVL( time1.产量, 1 ), 0, 1, NVL( time1.产量, 1 ) ) ),
+													'fm99990.0' 
+												) 
+											)  END one,
 	
-		CASE WHEN SYSDATE<@TWO@  THEN 0 ELSE 
-	DECODE(
-		NVL( 600, 0 ),
-		0,
-		0,
-		TO_CHAR(
-			( 600 / DECODE( NVL( time2.产量, 1 ), 0, 1, NVL( time2.产量, 1 ) ) ),
-			'fm99990.0' 
-		) 
-	) END two,
-		CASE WHEN SYSDATE<@THREE@  THEN 0 ELSE 
-	DECODE(
-		NVL( 1800, 0 ),
-		0,
-		0,
-		TO_CHAR(
-			( 1800 / DECODE( NVL( time3.产量, 1 ), 0, 1, NVL( time3.产量, 1 ) ) ),
-			'fm99990.0' 
-		) 
-	) END three,
-		CASE WHEN SYSDATE<@FOUR@  THEN 0 ELSE 
-	DECODE(
-		NVL( 3600, 0 ),
-		0,
-		0,
-		TO_CHAR(
-			( 3600 / DECODE( NVL( time4.产量, 1 ), 0, 1, NVL( time4.产量, 1 ) ) ),
-			'fm99990.0' 
-		) 
-	) END four,
-		CASE WHEN SYSDATE<@FIVE@  THEN 0 ELSE 
-	DECODE(
-		NVL( 240, 0 ),
-		0,
-		0,
-		TO_CHAR(
-			( 240 / DECODE( NVL( time5.产量, 1 ), 0, 1, NVL( time5.产量, 1 ) ) ),
-			'fm99990.0' 
-		) 
-	) END FIVE 
-FROM
-	time1
-	LEFT JOIN time2 ON 1 = 1
-	LEFT JOIN time3 ON 1 = 1
-	LEFT JOIN time4 ON 1 = 1
-	LEFT JOIN time5 ON 1 =1";
-                    
-                    }
-
-
-
-
-
-
+												CASE WHEN SYSDATE<@TWO@  THEN 0 ELSE 
+											DECODE(
+												NVL( 600, 0 ),
+												0,
+												0,
+												TO_CHAR(
+													( 600 / DECODE( NVL( time2.产量, 1 ), 0, 1, NVL( time2.产量, 1 ) ) ),
+													'fm99990.0' 
+												) 
+											) END two,
+												CASE WHEN SYSDATE<@THREE@  THEN 0 ELSE 
+											DECODE(
+												NVL( 1800, 0 ),
+												0,
+												0,
+												TO_CHAR(
+													( 1800 / DECODE( NVL( time3.产量, 1 ), 0, 1, NVL( time3.产量, 1 ) ) ),
+													'fm99990.0' 
+												) 
+											) END three,
+												CASE WHEN SYSDATE<@FOUR@  THEN 0 ELSE 
+											DECODE(
+												NVL( 3600, 0 ),
+												0,
+												0,
+												TO_CHAR(
+													( 3600 / DECODE( NVL( time4.产量, 1 ), 0, 1, NVL( time4.产量, 1 ) ) ),
+													'fm99990.0' 
+												) 
+											) END four,
+												CASE WHEN SYSDATE<@FIVE@  THEN 0 ELSE 
+											DECODE(
+												NVL( 240, 0 ),
+												0,
+												0,
+												TO_CHAR(
+													( 240 / DECODE( NVL( time5.产量, 1 ), 0, 1, NVL( time5.产量, 1 ) ) ),
+													'fm99990.0' 
+												) 
+											) END FIVE 
+										FROM
+											time1
+											LEFT JOIN time2 ON 1 = 1
+											LEFT JOIN time3 ON 1 = 1
+											LEFT JOIN time4 ON 1 = 1
+											LEFT JOIN time5 ON 1 =1";
+				}
+				DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
+				context.Response.Write(new JsonResult(dt).ToJson());
+			}
 
-
-                DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
-
-
-
-                context.Response.Write(new JsonResult(dt).ToJson());
-            }
-
-            //当天节拍
-            if (context.Request["m"].ToString() == "ALL")
-            {
-                List<CDAParameter> sqlPara = new List<CDAParameter>();
-                sqlPara.Add(new CDAParameter("DATEBEGIN", morningMintimes, DataType.DateTime));
-                sqlPara.Add(new CDAParameter("DATEEND", afterMaxtimes, DataType.DateTime));
-                sqlPara.Add(new CDAParameter("MIDDAY", morningMaxtimes, DataType.DateTime));
-                string sqlStr = @"with 秒 as (   SELECT
+			//当天节拍
+			if (context.Request["m"].ToString() == "ALL")
+			{
+				List<CDAParameter> sqlPara = new List<CDAParameter>();
+				sqlPara.Add(new CDAParameter("DATEBEGIN", morningMintimes, DataType.DateTime));
+				sqlPara.Add(new CDAParameter("DATEEND", afterMaxtimes, DataType.DateTime));
+				sqlPara.Add(new CDAParameter("MIDDAY", morningMaxtimes, DataType.DateTime));
+				string sqlStr = @"with 秒 as (   SELECT
 									CASE WHEN MAXCREATETIME <=@MIDDAY@
 									THEN   second ELSE (second - 5400) END  second
 										FROM(
@@ -410,20 +396,103 @@ FROM
                                                        FROM TP_PM_PRODUCTIONDATA WHERE PROCEDUREID=40 AND VALUEFLAG=1 AND USERCODE='JS2' 
                                                             AND CREATETIME>=@DATEBEGIN@   AND CREATETIME<=@DATEEND@ )
         													LEFT JOIN 秒 ON 1=1";
-                DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
-                context.Response.Write(new JsonResult(dt).ToJson());
-            }
-
-
-        }
-    }
+				DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
+				context.Response.Write(new JsonResult(dt).ToJson());
+			}
 
-    public bool IsReusable
-    {
-        get
-        {
-            return false;
-        }
-    }
+			//耽误时长
+			if (context.Request["m"].ToString() == "DANWU")
+			{
+				List<CDAParameter> sqlPara = new List<CDAParameter>();
+				sqlPara.Add(new CDAParameter("LINGDIANRIQI", DateTime.Now.ToString("yyyy-MM-dd") + " 00:00:00", DataType.DateTime));
+				sqlPara.Add(new CDAParameter("SHIERDIANRIQI", DateTime.Now.ToString("yyyy-MM-dd") + " 12:00:00", DataType.DateTime));
+				sqlPara.Add(new CDAParameter("DANGQIANRIQI", DateTime.Now.ToString("yyyy-MM-dd") + " 12:00:00", DataType.DateTime));
+				string sqlStr = @"
+					SELECT
+						TRUNC(FLOOR(SUM( CZ ))/TRUNC(60))||'.'||MOD((SUM( CZ )),60) AS DANWU
+					FROM
+						(
+						SELECT
+							ROUND( TO_NUMBER( (T.CREATETIME) - LAG (T.CREATETIME) OVER ( ORDER BY T.CREATETIME ) ) * 86400 ) - 26 AS CZ 
+						FROM
+							TP_PM_PRODUCTIONDATA T 
+						WHERE
+							PROCEDUREID = 39 
+							AND CREATETIME >= (
+								SELECT
+									CREATETIME 
+								FROM
+									TP_PM_PRODUCTIONDATA 
+								WHERE
+									PROCEDUREID = 39 
+									AND CREATETIME >= @LINGDIANRIQI@
+									AND CREATETIME < SYSDATE
+									AND USERCODE = 'JS1'
+									FETCH FIRST 1 ROWS ONLY
+								)
+							AND CREATETIME <= (
+								SELECT
+									CREATETIME 
+								FROM
+									TP_PM_PRODUCTIONDATA 
+								WHERE
+									PROCEDUREID = 39 
+									AND CREATETIME >= @LINGDIANRIQI@
+									AND CREATETIME < @SHIERDIANRIQI@
+									AND CREATETIME <= SYSDATE
+									AND USERCODE = 'JS1'
+								ORDER BY CREATETIME DESC
+									FETCH FIRST 1 ROWS ONLY
+								)
+							AND USERCODE = 'JS1' 
+						UNION ALL
+						SELECT
+							ROUND( TO_NUMBER( (T.CREATETIME) - LAG (T.CREATETIME) OVER ( ORDER BY T.CREATETIME ) ) * 86400 ) - 26 AS CZ 
+						FROM
+							TP_PM_PRODUCTIONDATA T 
+						WHERE
+							PROCEDUREID = 39 
+							AND CREATETIME >= (
+								SELECT
+									CREATETIME 
+								FROM
+									TP_PM_PRODUCTIONDATA 
+								WHERE
+									PROCEDUREID = 39 
+									AND CREATETIME >= @SHIERDIANRIQI@
+									AND CREATETIME < SYSDATE
+									AND USERCODE = 'JS1'
+									FETCH FIRST 1 ROWS ONLY	
+								)
+							AND CREATETIME <= (
+								SELECT
+									CREATETIME 
+								FROM
+									TP_PM_PRODUCTIONDATA 
+								WHERE
+									PROCEDUREID = 39 
+									AND CREATETIME >= @SHIERDIANRIQI@
+									AND CREATETIME <= SYSDATE
+									AND USERCODE = 'JS1'
+								ORDER BY CREATETIME DESC
+								FETCH FIRST 1 ROWS ONLY
+								)
+							AND USERCODE = 'JS1' 
+						) T 
+					WHERE
+						T.CZ > 0
+				";
+				DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
+				context.Response.Write(new JsonResult(dt).ToJson());
+			}
+		}
+	}
 
+	public bool IsReusable
+	{
+		get
+		{
+			return false;
+		}
+	}
 }

+ 20 - 6
wwwroot/main/Procedure/test14/GlazingBeats.html

@@ -76,10 +76,12 @@
 			lodTable();
 			ThatDayBeat();
 			Output();
+			DANWUTIME();
 			doGetData = setInterval(function () { Output(); }, 8900);
 			doGetData = setInterval(function () { loadServerTime(); }, 60000);
 			doGetData = setInterval(function () { ThatDayBeat(); }, 5000);
 			doGetData = setInterval(function () { lodTable(); }, 58000);
+			doGetData = setInterval(function () { DANWUTIME(); }, 6000);
 		});
 		//取服务器时间
 		function loadServerTime() {
@@ -90,10 +92,12 @@
 				}
 			});
 		}
+
 		function lodTable() {
 			ThatDayBeat();
 			AvgBeat();
 		}
+
 		function Output() { //总产量
 			$.get('GlazingBeats.ashx?m=Output', function (data) {
 				var json = JSON.parse(data);
@@ -102,9 +106,10 @@
 
 				}
 			});
-		} //总计
+		} 
 
-		function AvgBeat() { //分钟时间节拍
+		//分钟时间节拍
+		function AvgBeat() { 
 			$.get('GlazingBeats.ashx?m=AvgBeat', function (data) {
 				var json = JSON.parse(data);
 				if (json['success'] == true) {
@@ -126,11 +131,10 @@
 					;
 				}
 			});
-		} //分钟计
-
-
+		}
 
-		function ThatDayBeat() { //当天节拍
+		//当天节拍
+		function ThatDayBeat() { 
 			$.get('GlazingBeats.ashx?m=ALL', function (data) {
 				var json = JSON.parse(data);
 				if (json['success'] == true) {
@@ -139,6 +143,16 @@
 			});
 		}
 
+		//耽误时长
+		function DANWUTIME() { 
+			$.get('GlazingBeats.ashx?m=DANWU', function (data) {
+				var json = JSON.parse(data);
+				if (json['success'] == true) {
+					$('#sjdwsc').html(json["rows"][0]["DANWU"]);
+				}
+			});
+		}
+
 	</script>
 
 	<style>