Browse Source

验厂服务器的报表

姜永辉 6 tháng trước cách đây
mục cha
commit
91ad4693aa

+ 1 - 1
wwwroot/Web.config

@@ -14,7 +14,7 @@
   <appSettings>
     <add key="ProductCheckServer" value="http://10.0.8.2:1234"/>
 	  <!--验厂标识 true:  false: -->
-	<!--<add key="FactoryInspectionFlag" value="false"/>--> 
+	<add key="FactoryInspectionFlag" value="true"/> 
   </appSettings>
   <system.web>
     <customErrors mode="Off"/>

+ 63 - 42
wwwroot/mes/rpt/rpt008/rpt.ashx

@@ -7,8 +7,7 @@ using System.Data;
 using System.Text;
 using System.Collections;
 using System.Collections.Generic;
-using Newtonsoft.Json;
-using Newtonsoft.Json.Linq;
+using System.Configuration;
 using Curtain.DataAccess;
 using DK.XuWei.WebMes;
 
@@ -16,8 +15,17 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 {
     public void ProcessRequest(HttpContext context)
     {
+        // 验厂标识 true:  false:
+        string strFactoryInspectionFlag = ConfigurationManager.AppSettings["FactoryInspectionFlag"] + "";
+        string strFactoryInspection = "";
+        string strFactoryInspectionCheckTime = "";
+        if ("true".Equals(strFactoryInspectionFlag))
+        {
+            strFactoryInspection = " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where TP.CREATETIME >= thc.DAY_YMD_START and TP.CREATETIME < thc.DAY_YMD_END ) ";
+            strFactoryInspectionCheckTime = " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where TP.CHECKTIME >= thc.DAY_YMD_START and TP.CHECKTIME < thc.DAY_YMD_END ) ";
+        }
         context.Response.ContentType = "text/plain";
-        using(IDataAccess conn = DataAccess.Create())
+        using (IDataAccess conn = DataAccess.Create())
         {
             #region 产品编码
             List<CDAParameter> goodsnull = new List<CDAParameter>();
@@ -29,7 +37,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 
             string goodssql = @"SELECT GOODSCODE 
                                         FROM TP_MST_GOODS where 1=1 ";
-            if (goodsCodes.Length > 1 || goodsCodes[0]!="")
+            if (goodsCodes.Length > 1 || goodsCodes[0] != "")
             {
 
                 if (context.Request["isNotcheck"].ToString() == "1")
@@ -49,7 +57,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                     }
                 }
             }
-            #endregion 
+            #endregion
 
             string buding = null;
             if (context.Request["buildingnoMaster"].ToString() != "" && context.Request["buildingnoMaster"].ToString() != null)
@@ -64,20 +72,20 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 
                 }
             }
-            if (context.Request["buildingnoMaster"].ToString() == "" || context.Request["buildingnoMaster"].ToString()==null)
+            if (context.Request["buildingnoMaster"].ToString() == "" || context.Request["buildingnoMaster"].ToString() == null)
             {
                 buding = "IN(" + "'1#','2#','0#'" + ")";
             }
 
             //主表
-            if(context.Request["m"].ToString()=="master")
+            if (context.Request["m"].ToString() == "master")
             {
                 string sqlStr = null;
                 int errorLineNo = 0;
                 conn.BeginTransaction();
                 try
                 {
-                        string sqltmp = @" insert into TMP_PROD_HG_BZ(FLAG,GROUTINGDAILYDETAILID,MPDID,OUT_K_B,OUT_K_R,OUT_K_ALL,
+                    string sqltmp = @" insert into TMP_PROD_HG_BZ(FLAG,GROUTINGDAILYDETAILID,MPDID,OUT_K_B,OUT_K_R,OUT_K_ALL,
                                                             OK_B,OK_R,OK_H,OK_RH,OK_ALL,END_B,END_R,END_H,END_RH,END_ALL,HGP,BZGP)(SELECT distinct 1 FLAG
                                       ,TP.GROUTINGDAILYDETAILID,null  mpdid
                                       ,decode(TP.PROCEDUREID, 13, 1, 0) OUT_K_B
@@ -98,9 +106,9 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                                   FROM TP_PM_PRODUCTIONDATA TP
                                  WHERE TP.PROCEDUREID IN (13, 35)
                                    AND TP.Checkflag = 1
-                                   AND TP.Createtime >= date'" + Convert.ToDateTime(context.Request["datebeginMaster"]).ToString("yyyy-MM-dd")+@"'
-                                   AND TP.Createtime <= date'" + Convert.ToDateTime(context.Request["dateendMaster"]).AddSeconds(1).ToString("yyyy-MM-dd")+@"' 
-
+                                   AND TP.Createtime >= date'" + Convert.ToDateTime(context.Request["datebeginMaster"]).ToString("yyyy-MM-dd") + @"'
+                                   AND TP.Createtime <= date'" + Convert.ToDateTime(context.Request["dateendMaster"]).AddSeconds(1).ToString("yyyy-MM-dd") + @"' 
+                                     {strFactoryInspection}		       
                                    
                                  UNION ALL
                                 SELECT 2 FLAG
@@ -137,9 +145,9 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                                           FROM TP_PM_PRODUCTIONDATA TP
                                         
                                          WHERE   TP.PROCEDUREID IN (13, 35)
-                                           AND TP.checktime >= date'" + Convert.ToDateTime(context.Request["datebeginMaster"]).ToString("yyyy-MM-dd")+@"'
-                                           AND TP.checktime <= date'" + Convert.ToDateTime(context.Request["dateendMaster"]).AddSeconds(1).ToString("yyyy-MM-dd")+@"'
-                                       
+                                           AND TP.checktime >= date'" + Convert.ToDateTime(context.Request["datebeginMaster"]).ToString("yyyy-MM-dd") + @"'
+                                           AND TP.checktime <= date'" + Convert.ToDateTime(context.Request["dateendMaster"]).AddSeconds(1).ToString("yyyy-MM-dd") + @"'
+                                       {strFactoryInspectionCheckTime}  
                                          GROUP BY TP.GROUTINGDAILYDETAILID 
                                             ) P  inner JOIN tp_pm_productiondata pdd ON pdd.productiondataid = p.productiondataid
                                    LEFT JOIN tp_pm_productiondata rpd
@@ -175,9 +183,9 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                                           FROM TP_PM_PRODUCTIONDATA TP
                                         
                                          WHERE   TP.PROCEDUREID IN (13, 35)
-                                           AND TP.createtime >= date'" + Convert.ToDateTime(context.Request["datebeginMaster"]).ToString("yyyy-MM-dd")+@"'
-                                           AND TP.createtime <= date'" + Convert.ToDateTime(context.Request["dateendMaster"]).AddSeconds(1).ToString("yyyy-MM-dd")+@"'
-                                       
+                                           AND TP.createtime >= date'" + Convert.ToDateTime(context.Request["datebeginMaster"]).ToString("yyyy-MM-dd") + @"'
+                                           AND TP.createtime <= date'" + Convert.ToDateTime(context.Request["dateendMaster"]).AddSeconds(1).ToString("yyyy-MM-dd") + @"'
+                                       {strFactoryInspection}
                                          GROUP BY TP.GROUTINGDAILYDETAILID 
                                             ) P  inner JOIN tp_pm_productiondata pdd ON pdd.productiondataid = p.productiondataid
                                    LEFT JOIN tp_pm_productiondata rpd
@@ -201,8 +209,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                                       ,0 OK_ALL
                                       ,CASE
                                          WHEN SUM(CASE
-                                                    WHEN TP.PROCEDUREID = 13 and RPD.groutingdailydetailid is  null  AND TP.checktime >= date'" + Convert.ToDateTime(context.Request["datebeginMaster"]).ToString("yyyy-MM-dd")+@"'
-                                           AND TP.checktime <= date'" + Convert.ToDateTime(context.Request["dateendMaster"]).AddSeconds(1).ToString("yyyy-MM-dd")+@"' THEN
+                                                    WHEN TP.PROCEDUREID = 13 and RPD.groutingdailydetailid is  null  AND TP.checktime >= date'" + Convert.ToDateTime(context.Request["datebeginMaster"]).ToString("yyyy-MM-dd") + @"'
+                                           AND TP.checktime <= date'" + Convert.ToDateTime(context.Request["dateendMaster"]).AddSeconds(1).ToString("yyyy-MM-dd") + @"' THEN
                                                      1
                                                     ELSE
                                                      0
@@ -213,8 +221,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                                        END END_B
                                       ,CASE
                                          WHEN SUM(CASE
-                                                    WHEN TP.PROCEDUREID = 35   and RPD.groutingdailydetailid is  null  AND TP.checktime >= date'" + Convert.ToDateTime(context.Request["datebeginMaster"]).ToString("yyyy-MM-dd")+@"'
-                                           AND TP.checktime <= date'" + Convert.ToDateTime(context.Request["dateendMaster"]).AddSeconds(1).ToString("yyyy-MM-dd")+@"'  THEN
+                                                    WHEN TP.PROCEDUREID = 35   and RPD.groutingdailydetailid is  null  AND TP.checktime >= date'" + Convert.ToDateTime(context.Request["datebeginMaster"]).ToString("yyyy-MM-dd") + @"'
+                                           AND TP.checktime <= date'" + Convert.ToDateTime(context.Request["dateendMaster"]).AddSeconds(1).ToString("yyyy-MM-dd") + @"'  THEN
                                                      1
                                                     ELSE
                                                      0
@@ -251,8 +259,9 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                                    from TP_PM_ProductionData INNER JOIN  TP_PM_ProductionData TP on TP.barcode=TP_PM_ProductionData.BARCODE and TP.CHECKBATCHNO = 1  and TP.VALUEFLAG=1
                                            AND TP.GOODSLEVELTYPEID IN (4, 5)
                                            AND TP.PROCEDUREID IN (13, 35)
-                                           AND TP.CREATETIME >= date'" + Convert.ToDateTime(context.Request["datebeginMaster"]).ToString("yyyy-MM-dd")+@"'
-                                           AND TP.CREATETIME <=  date'" + Convert.ToDateTime(context.Request["dateendMaster"]).AddSeconds(1).ToString("yyyy-MM-dd")+@"'  
+                                           AND TP.CREATETIME >= date'" + Convert.ToDateTime(context.Request["datebeginMaster"]).ToString("yyyy-MM-dd") + @"'
+                                           AND TP.CREATETIME <=  date'" + Convert.ToDateTime(context.Request["dateendMaster"]).AddSeconds(1).ToString("yyyy-MM-dd") + @"'  
+                                            {strFactoryInspection}
                                         LEFT JOIN TP_PM_PRODUCTIONDATA RPD
                                     ON RPD.BARCODE = TP_PM_ProductionData.BARCODE
                                     AND rpd.valueflag = '1'
@@ -260,8 +269,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                                    AND RPD.Procedureid IN (20, 22, 23, 37, 41) 
 			                where TP_PM_ProductionData.ValueFlag = '1'
                             and TP_PM_ProductionData.ProcedureID = 15 
-                            and TP_PM_ProductionData.CREATETIME>= date'" + Convert.ToDateTime(context.Request["datebeginMaster"]).ToString("yyyy-MM-dd")+@"'  
-                            and TP_PM_ProductionData.CREATETIME<= date'" + Convert.ToDateTime(context.Request["dateendMaster"]).AddSeconds(1).ToString("yyyy-MM-dd")+@"' 
+                            and TP_PM_ProductionData.CREATETIME>= date'" + Convert.ToDateTime(context.Request["datebeginMaster"]).ToString("yyyy-MM-dd") + @"'  
+                            and TP_PM_ProductionData.CREATETIME<= date'" + Convert.ToDateTime(context.Request["dateendMaster"]).AddSeconds(1).ToString("yyyy-MM-dd") + @"' 
                             GROUP BY TP_PM_ProductionData.groutingdailydetailid
 
                          UNION ALL
@@ -300,10 +309,11 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                                     AND tp.valueflag = 1
                                      AND TP.GOODSLEVELTYPEID IN (4, 5)
                                      AND TP.PROCEDUREID = 13
-                                     AND TP.CREATETIME >= date'" + Convert.ToDateTime(context.Request["datebeginMaster"]).ToString("yyyy-MM-dd")+@"'
-                                     AND TP.CREATETIME <= date'" + Convert.ToDateTime(context.Request["dateendMaster"]).AddSeconds(1).ToString("yyyy-MM-dd")+@"'
-                                    AND (TP.checktime < date'" + Convert.ToDateTime(context.Request["datebeginMaster"]).ToString("yyyy-MM-dd")+@"'
-                                     or TP.checktime > date'" + Convert.ToDateTime(context.Request["dateendMaster"]).AddSeconds(1).ToString("yyyy-MM-dd")+@"' )
+                                     AND TP.CREATETIME >= date'" + Convert.ToDateTime(context.Request["datebeginMaster"]).ToString("yyyy-MM-dd") + @"'
+                                     AND TP.CREATETIME <= date'" + Convert.ToDateTime(context.Request["dateendMaster"]).AddSeconds(1).ToString("yyyy-MM-dd") + @"' 
+                                        {strFactoryInspection}
+                                    AND (TP.checktime < date'" + Convert.ToDateTime(context.Request["datebeginMaster"]).ToString("yyyy-MM-dd") + @"'
+                                     or TP.checktime > date'" + Convert.ToDateTime(context.Request["dateendMaster"]).AddSeconds(1).ToString("yyyy-MM-dd") + @"' )
                                      AND to_char(tp.createtime, 'YYYY-MM-DD') <> to_char(tp.checktime, 'YYYY-MM-DD')
                                     AND to_char(tp.createtime, 'YYYY-MM-DD') <> to_char(pmax.createtime, 'YYYY-MM-DD')
                                    GROUP BY TP.PRODUCTIONDATAID
@@ -355,8 +365,9 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                                                 AND tp.valueflag = 1
                                                  AND TP.GOODSLEVELTYPEID IN (4, 5)
                                                  AND TP.PROCEDUREID = 13
-                                                 AND TP.CREATETIME >= date'" + Convert.ToDateTime(context.Request["datebeginMaster"]).ToString("yyyy-MM-dd")+@"'
-                                                 AND TP.CREATETIME <= date'" + Convert.ToDateTime(context.Request["dateendMaster"]).AddSeconds(1).ToString("yyyy-MM-dd")+@"' 
+                                                 AND TP.CREATETIME >= date'" + Convert.ToDateTime(context.Request["datebeginMaster"]).ToString("yyyy-MM-dd") + @"'
+                                                 AND TP.CREATETIME <= date'" + Convert.ToDateTime(context.Request["dateendMaster"]).AddSeconds(1).ToString("yyyy-MM-dd") + @"' 
+                                                    {strFactoryInspection}
                                                  AND to_char(tp.createtime, 'YYYY-MM-DD') <> to_char(tp.checktime, 'YYYY-MM-DD')
                                                GROUP BY TP.PRODUCTIONDATAID
                                                        ,TP.GROUTINGDAILYDETAILID
@@ -375,15 +386,23 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                                         LEFT JOIN tp_pm_productiondata_semicheck pds ON pds.productiondataid = tp.productiondataid
                                 where TP_PM_ProductionData.ValueFlag = '0'
                                   and TP_PM_ProductionData.ProcedureID = 15 
-                                  and TP_PM_ProductionData.CREATETIME>= date'" + Convert.ToDateTime(context.Request["datebeginMaster"]).ToString("yyyy-MM-dd")+@"' 
-                                  and TP_PM_ProductionData.CREATETIME<= date'" + Convert.ToDateTime(context.Request["dateendMaster"]).AddSeconds(1).ToString("yyyy-MM-dd")+@"'   ) ";
-                        conn.ExecuteNonQuery(sqltmp );
+                                  and TP_PM_ProductionData.CREATETIME>= date'" + Convert.ToDateTime(context.Request["datebeginMaster"]).ToString("yyyy-MM-dd") + @"' 
+                                  and TP_PM_ProductionData.CREATETIME<= date'" + Convert.ToDateTime(context.Request["dateendMaster"]).AddSeconds(1).ToString("yyyy-MM-dd") + @"'   ) ";
+
+                    if (sqltmp.Contains("{strFactoryInspection}"))
+                    {
+                        sqltmp = sqltmp.Replace("{strFactoryInspection}", strFactoryInspection);
+                    }
+                     if (sqltmp.Contains("{strFactoryInspectionCheckTime}"))
+                    {
+                        sqltmp = sqltmp.Replace("{strFactoryInspectionCheckTime}", strFactoryInspectionCheckTime);
+                    }
+                    conn.ExecuteNonQuery(sqltmp);
 
                     if (buding != "IN('1#','2#')")
                     {
                         errorLineNo = 1;
-                        
-                             
+
                         sqlStr = @"
                 SELECT DECODE(GID, 7, T.楼号 || '合计' , 15, T.楼号 || '总计', T.楼号) AS 楼号
                       ,DECODE(GID, 15, '--', T.产品编码) AS 产品编码
@@ -465,7 +484,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                                   or t.包装数_本烧回收<>0 or t.包装数_重烧<>0 or t.包装数_重烧回收<>0 
                             ".Replace("{BUILDINGNO}", buding).Replace("{goodsCodes}", goodssql);
                     }
-                    else {
+                    else
+                    {
                         errorLineNo = 2;
                         sqlStr = @"
                 SELECT 					 	DECODE(GID, 7, '总计', '1#+2#') AS 楼号
@@ -574,7 +594,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
             }
 
             //子表
-            if(context.Request["m"].ToString()=="detail")
+            if (context.Request["m"].ToString() == "detail")
             {
                 //读取报表数据
                 string sqlStr = @"
@@ -592,8 +612,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 
                 //获取分页数据    
                 int total = 0;
-                DataTable dt = conn.SelectPages(page, rows,out total, sqlStr, sqlPara.ToArray());
-                string jsonStr =  new JsonResult(dt) { total = total}.ToJson();
+                DataTable dt = conn.SelectPages(page, rows, out total, sqlStr, sqlPara.ToArray());
+                string jsonStr = new JsonResult(dt) { total = total }.ToJson();
 
                 context.Response.Write(jsonStr);
             }
@@ -605,7 +625,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 string sqlStr = null;
                 if (buding != "IN('1#','2#')")
                 {
-                    sqlStr=@"SELECT
+                    sqlStr = @"SELECT
 	                          DECODE(GID, 7, T.BUILDINGNO || '合计' , 15, T.BUILDINGNO || '总计', T.BUILDINGNO) AS 楼号
                              ,DECODE(GID, 15, '--', T.GOODSCODE) AS 产品编码
                              ,DECODE(GID, 15, '--', T.GOODSNAME) AS 产品名称
@@ -661,7 +681,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 								) T".Replace("{BUILDINGNO}", buding);
 
                 }
-                else {
+                else
+                {
                     sqlStr = @"SELECT
 	                         DECODE(GID, 7, T.BUILDINGNO || '合计' , 15, T.BUILDINGNO || '总计', T.BUILDINGNO) AS 楼号
 	                        ,DECODE(GID, 15, '--', T.GOODSCODE) AS 产品编码

+ 70 - 13
wwwroot/mes/rpt/rpt014/rptnew.ashx

@@ -6,8 +6,7 @@ using System.Web.SessionState;
 using System.Collections;
 using System.Collections.Generic;
 using System.Data;
-using Newtonsoft.Json;
-using Newtonsoft.Json.Linq;
+using System.Configuration;
 using Curtain.DataAccess;
 using DK.XuWei.WebMes;
 
@@ -27,6 +26,15 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 
     public void ProcessRequest(HttpContext context)
     {
+        // 验厂标识 true:  false:
+        string strFactoryInspectionFlag = ConfigurationManager.AppSettings["FactoryInspectionFlag"] + "";
+        string strFactoryInspection = "";
+        string strFactoryInspectionCheckTime = "";
+        if ("true".Equals(strFactoryInspectionFlag))
+        {
+            strFactoryInspection = " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where pd.createtime >= thc.DAY_YMD_START and pd.createtime < thc.DAY_YMD_END ) ";
+            strFactoryInspectionCheckTime = " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where pd.CHECKTIME >= thc.DAY_YMD_START and pd.CHECKTIME < thc.DAY_YMD_END ) ";
+        }
         context.Response.ContentType = "text/plain";
         proc = context.Request["procedureidMaster"].ToString();
         //获取每窑  全部 
@@ -220,7 +228,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 								WHERE
                            PD.PROCEDUREID = " + proc + @" 
 						    AND PD.CHECKTIME >= date'" + Convert.ToDateTime(context.Request["datebeginMaster"]).ToString("yyyy-MM-dd") + @"'
-                            AND PD.CHECKTIME <= date'" + Convert.ToDateTime(context.Request["dateendMaster"]).AddSeconds(1).ToString("yyyy-MM-dd") + @"'
+                            AND PD.CHECKTIME <= date'" + Convert.ToDateTime(context.Request["dateendMaster"]).AddSeconds(1).ToString("yyyy-MM-dd") + @"' {strFactoryInspectionCheckTime}
                            AND (PD.KILNID = " + (string.IsNullOrEmpty(context.Request["kilnidMaster"] + "") ? "''" : context.Request["kilnidMaster"]) + @" OR " + (string.IsNullOrEmpty(context.Request["kilnidMaster"] + "") ? "''" : context.Request["kilnidMaster"]) + @" IS NULL) 
                             AND PD.GOODSCODE IN( " + goodssql + @")
                            AND GL.BUILDINGNO " + buding + @" 
@@ -242,6 +250,11 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 									pdp.procedureid1 = ppdg.procedureid OR pdp.procedureid2 = ppdg.procedureid
 								) 
 			              ) ";
+
+                    if (sqltmp.Contains("{strFactoryInspectionCheckTime}"))
+                    {
+                        sqltmp = sqltmp.Replace("{strFactoryInspectionCheckTime}", strFactoryInspectionCheckTime);
+                    }
                     int count = conn.ExecuteNonQuery(sqltmp);
 
 
@@ -297,7 +310,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                            PD.PROCEDUREID = @PROCEDUREID@
                            AND PD.CHECKFLAG = 1
                            AND PD.CREATETIME >= @DATEBEGIN@
-                           AND PD.CREATETIME < @DATEEND@
+                           AND PD.CREATETIME < @DATEEND@ 
+{strFactoryInspection}
                            AND (PD.KILNID = @KILNID@ OR @KILNID@ IS NULL) 
                            AND PD.GOODSCODE IN({goodsCodes})
                            AND GL.BUILDINGNO {BUILDINGNO}
@@ -326,7 +340,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                           -- AND PD.CREATETIME >= @DATEBEGIN@
                           -- AND PD.CREATETIME < @DATEEND@
 						   AND PD.CHECKTIME >= @DATEBEGIN@
-                           AND PD.CHECKTIME < @DATEEND@
+                           AND PD.CHECKTIME < @DATEEND@ 
+{strFactoryInspectionCheckTime}
                            AND (PD.KILNID = @KILNID@ OR @KILNID@ IS NULL) 
                             AND PD.GOODSCODE IN({goodsCodes})
                            AND GL.BUILDINGNO {BUILDINGNO} 
@@ -367,6 +382,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                            -- AND PD.CHECKBATCHNO = 1  
                            AND PD.CREATETIME >= @DATEBEGIN@
                            AND PD.CREATETIME < @DATEEND@ 
+{strFactoryInspection}
                            AND (PD.KILNID = @KILNID@ OR @KILNID@ IS NULL) 
                             AND PD.GOODSCODE IN({goodsCodes})
                            AND GL.BUILDINGNO {BUILDINGNO}
@@ -521,6 +537,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 									   -- AND PD.CHECKBATCHNO = 1  
 									   AND PD.CREATETIME >= @DATEBEGIN@
 									   AND PD.CREATETIME < @DATEEND@ 
+{strFactoryInspection}
 									   AND (PD.KILNID = @KILNID@ OR @KILNID@ IS NULL) 
 										AND PD.GOODSCODE IN({goodsCodes})
 									   AND GL.BUILDINGNO {BUILDINGNO}
@@ -558,6 +575,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 									   -- AND PD.CHECKBATCHNO = 1  
 									   AND PD.CREATETIME >= @DATEBEGIN@
 									   AND PD.CREATETIME < @DATEEND@ 
+{strFactoryInspection}
 									   AND (PD.KILNID = @KILNID@ OR @KILNID@ IS NULL) 
 										AND PD.GOODSCODE IN({goodsCodes})
 									   AND GL.BUILDINGNO {BUILDINGNO}
@@ -641,6 +659,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 										   --AND PD.CHECKBATCHNO = 1
 										   AND PD.createtime >= @DATEBEGIN@
 										   AND PD.createtime < @DATEEND@
+{strFactoryInspection}
 										   AND PD.GOODSLEVELTYPEID = 20
 										   AND (PD.KILNID = @KILNID@ OR @KILNID@ IS NULL) 
 										   AND PD.GOODSCODE IN({goodsCodes})
@@ -671,6 +690,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 											  -- AND PD.CHECKBATCHNO = 1
 										   AND PD.CREATETIME >= @DATEBEGIN@
 										   AND PD.CREATETIME < @DATEEND@
+{strFactoryInspection}
 										   --AND PD.CHECKBATCHNO > 1
 										   AND PD.GOODSLEVELTYPEID <> 4	
 										   AND (PD.KILNID = @KILNID@ OR @KILNID@ IS NULL) 
@@ -814,6 +834,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 									   -- AND PD.CHECKBATCHNO = 1  
 									   AND PD.CREATETIME >= @DATEBEGIN@
 									   AND PD.CREATETIME < @DATEEND@ 
+{strFactoryInspection}
 									   AND (PD.KILNID = @KILNID@ OR @KILNID@ IS NULL) 
 										AND PD.GOODSCODE IN({goodsCodes})
 									   AND GL.BUILDINGNO {BUILDINGNO}
@@ -851,6 +872,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 									   -- AND PD.CHECKBATCHNO = 1  
 									   AND PD.CREATETIME >= @DATEBEGIN@
 									   AND PD.CREATETIME < @DATEEND@ 
+{strFactoryInspection}
 									   AND (PD.KILNID = @KILNID@ OR @KILNID@ IS NULL) 
 										AND PD.GOODSCODE IN({goodsCodes})
 									   AND GL.BUILDINGNO {BUILDINGNO}
@@ -887,6 +909,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 									   -- AND PD.CHECKBATCHNO = 1  
 									   AND PD.CREATETIME >= @DATEBEGIN@
 									   AND PD.CREATETIME < @DATEEND@ 
+{strFactoryInspection}
 									   AND (PD.KILNID = @KILNID@ OR @KILNID@ IS NULL) 
 										AND PD.GOODSCODE IN({goodsCodes})
 									   AND GL.BUILDINGNO {BUILDINGNO}
@@ -971,6 +994,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 										   --AND PD.CHECKBATCHNO = 1
 										   AND PD.createtime >= @DATEBEGIN@
 										   AND PD.createtime < @DATEEND@
+{strFactoryInspection}
 										   AND PD.GOODSLEVELTYPEID = 20
 										   AND (PD.KILNID = @KILNID@ OR @KILNID@ IS NULL) 
 										   AND PD.GOODSCODE IN({goodsCodes})
@@ -1001,6 +1025,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 											  -- AND PD.CHECKBATCHNO = 1
 										   AND PD.CREATETIME >= @DATEBEGIN@
 										   AND PD.CREATETIME < @DATEEND@
+{strFactoryInspection}
 										   --AND PD.CHECKBATCHNO > 1
 										   AND PD.GOODSLEVELTYPEID <> 4	
 										   AND (PD.KILNID = @KILNID@ OR @KILNID@ IS NULL) 
@@ -1133,6 +1158,14 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 sqlStr = sqlStr.Replace("@PROCEDUREID@", pid != "" ? pid : " NULL ");
                 sqlStr = sqlStr.Replace("@GOODSCODE@", " '' ");
                 sqlStr = sqlStr.Replace("@GOODSNAME@", " '' ");
+                if (sqlStr.Contains("{strFactoryInspection}"))
+                {
+                    sqlStr = sqlStr.Replace("{strFactoryInspection}", strFactoryInspection);
+                }
+                if (sqlStr.Contains("{strFactoryInspectionCheckTime}"))
+                {
+                    sqlStr = sqlStr.Replace("{strFactoryInspectionCheckTime}", strFactoryInspectionCheckTime);
+                }
                 // 250717 存储过程的临时表 不好用
                 DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
 
@@ -1188,8 +1221,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 context.Response.Write(jsonStr);
             }
         }
-		 // 结转250731
-		if (context.Request["m"].ToString() == "jiezhauang")
+        // 结转250731
+        if (context.Request["m"].ToString() == "jiezhauang")
         {
             #region 产品编码
             if (context.Request["GOODSCODE"] != "" || context.Request["GOODSCODE"] != null)
@@ -1338,7 +1371,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 								WHERE
                            PD.PROCEDUREID = " + proc + @" 
 						    AND PD.CHECKTIME >= date'" + Convert.ToDateTime(context.Request["datebeginMaster"] + "-01").ToString("yyyy-MM-dd") + @"'
-                            AND PD.CHECKTIME <= date'" + Convert.ToDateTime(context.Request["dateendMaster"]+ "-01").AddMonths(1).AddDays(-1).ToString("yyyy-MM-dd") + @"'                            
+                            AND PD.CHECKTIME <= date'" + Convert.ToDateTime(context.Request["dateendMaster"] + "-01").AddMonths(1).AddDays(-1).ToString("yyyy-MM-dd") + @"'  {strFactoryInspectionCheckTime}                          
                            AND GL.BUILDINGNO " + buding + @" 
 							 AND pd.goodsleveltypeid <> 4
 							 GROUP BY  PD.GROUTINGDAILYDETAILID  
@@ -1358,6 +1391,10 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 									pdp.procedureid1 = ppdg.procedureid OR pdp.procedureid2 = ppdg.procedureid
 								) 
 			              ) ";
+                    if (sqltmp.Contains("{strFactoryInspectionCheckTime}"))
+                    {
+                        sqltmp = sqltmp.Replace("{strFactoryInspectionCheckTime}", strFactoryInspectionCheckTime);
+                    }
                     int count = conn.ExecuteNonQuery(sqltmp);
 
 
@@ -1413,7 +1450,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                            PD.PROCEDUREID = @PROCEDUREID@
                            AND PD.CHECKFLAG = 1
                            AND PD.CREATETIME >= @DATEBEGIN@
-                           AND PD.CREATETIME < @DATEEND@                    
+                           AND PD.CREATETIME < @DATEEND@    
+{strFactoryInspection}
                            AND GL.BUILDINGNO {BUILDINGNO}
 			            UNION ALL
 						  --U级 A级 F级 去AA级 R级
@@ -1439,6 +1477,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                             --AND PD.CHECKBATCHNO = 1  
                            AND PD.CREATETIME >= @DATEBEGIN@
                            AND PD.CREATETIME < @DATEEND@
+{strFactoryInspection}
 						   AND PD.CHECKTIME >= @DATEBEGIN@
                            AND PD.CHECKTIME < @DATEEND@ 
                            AND GL.BUILDINGNO {BUILDINGNO} 
@@ -1480,6 +1519,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                            -- AND PD.CHECKBATCHNO = 1  
                            AND PD.CREATETIME >= @DATEBEGIN@
                            AND PD.CREATETIME < @DATEEND@  
+{strFactoryInspection}
                            AND GL.BUILDINGNO {BUILDINGNO}
 							 GROUP BY PD.GOODSID,PD.BARCODE ,PD.GROUTINGDAILYDETAILID ,pd.KILNCARBATCHNO   
 							) PD
@@ -1633,6 +1673,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 									   -- AND PD.CHECKBATCHNO = 1  
 									   AND PD.CREATETIME >= @DATEBEGIN@
 									   AND PD.CREATETIME < @DATEEND@  
+{strFactoryInspection}
 									   AND GL.BUILDINGNO {BUILDINGNO}
 										 GROUP BY PD.GOODSID,PD.BARCODE ,PD.GROUTINGDAILYDETAILID  
 										) PD
@@ -1668,6 +1709,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 									   -- AND PD.CHECKBATCHNO = 1  
 									   AND PD.CREATETIME >= @DATEBEGIN@
 									   AND PD.CREATETIME < @DATEEND@  
+{strFactoryInspection}
 									   AND GL.BUILDINGNO {BUILDINGNO}
 										 GROUP BY PD.GOODSID,PD.BARCODE ,PD.GROUTINGDAILYDETAILID  
 										) PD INNER JOIN TP_PM_PRODUCTIONDATA PDD ON PDD.PRODUCTIONDATAID = PD.PRODUCTIONDATAID
@@ -1749,6 +1791,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 										   --AND PD.CHECKBATCHNO = 1
 										   AND PD.createtime >= @DATEBEGIN@
 										   AND PD.createtime < @DATEEND@
+{strFactoryInspection}
 										   AND PD.GOODSLEVELTYPEID = 20 
 										   AND GL.BUILDINGNO {BUILDINGNO}
 										 GROUP BY PD.PRODUCTIONDATAID
@@ -1777,6 +1820,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 											  -- AND PD.CHECKBATCHNO = 1
 										   AND PD.CREATETIME >= @DATEBEGIN@
 										   AND PD.CREATETIME < @DATEEND@
+{strFactoryInspection}
 										   --AND PD.CHECKBATCHNO > 1
 										   AND PD.GOODSLEVELTYPEID <> 4	 
 										   AND GL.BUILDINGNO {BUILDINGNO}
@@ -1918,6 +1962,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 									   -- AND PD.CHECKBATCHNO = 1  
 									   AND PD.CREATETIME >= @DATEBEGIN@
 									   AND PD.CREATETIME < @DATEEND@  
+{strFactoryInspection}
 									   AND GL.BUILDINGNO {BUILDINGNO}
 										 GROUP BY PD.GOODSID,PD.BARCODE ,PD.GROUTINGDAILYDETAILID  
 										) PD
@@ -1953,6 +1998,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 									   -- AND PD.CHECKBATCHNO = 1  
 									   AND PD.CREATETIME >= @DATEBEGIN@
 									   AND PD.CREATETIME < @DATEEND@  
+{strFactoryInspection}
 									   AND GL.BUILDINGNO {BUILDINGNO}
 										 GROUP BY PD.GOODSID,PD.BARCODE ,PD.GROUTINGDAILYDETAILID    
 										) PD
@@ -1987,6 +2033,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 									   -- AND PD.CHECKBATCHNO = 1  
 									   AND PD.CREATETIME >= @DATEBEGIN@
 									   AND PD.CREATETIME < @DATEEND@  
+{strFactoryInspection}
 									   AND GL.BUILDINGNO {BUILDINGNO}
 										 GROUP BY PD.GOODSID,PD.BARCODE ,PD.GROUTINGDAILYDETAILID    
 										) PD
@@ -2069,6 +2116,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 										   --AND PD.CHECKBATCHNO = 1
 										   AND PD.createtime >= @DATEBEGIN@
 										   AND PD.createtime < @DATEEND@
+{strFactoryInspection}
 										   AND PD.GOODSLEVELTYPEID = 20 
 										   AND GL.BUILDINGNO {BUILDINGNO}
 										 GROUP BY PD.PRODUCTIONDATAID
@@ -2097,6 +2145,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 											  -- AND PD.CHECKBATCHNO = 1
 										   AND PD.CREATETIME >= @DATEBEGIN@
 										   AND PD.CREATETIME < @DATEEND@
+{strFactoryInspection}
 										   --AND PD.CHECKBATCHNO > 1
 										   AND PD.GOODSLEVELTYPEID <> 4	 
 										   AND GL.BUILDINGNO {BUILDINGNO}
@@ -2212,8 +2261,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 //=========================================================
                 //sqlStr = sqlStr.Replace("@DATEBEGIN@", "DATE'" + Convert.ToDateTime(context.Request["datebeginMaster"])  + "'");
                 //sqlStr = sqlStr.Replace("@DATEEND@", "DATE'" + Convert.ToDateTime(context.Request["dateendMaster"]).AddSeconds(1) + "'");
-                sqlStr = sqlStr.Replace("@DATEBEGIN@", "to_date('" + Convert.ToDateTime(context.Request["datebeginMaster"]+ "-01") + "','yyyy-mm-dd hh24:mi:ss')");
-                sqlStr = sqlStr.Replace("@DATEEND@", "to_date('" + Convert.ToDateTime(context.Request["dateendMaster"]+ "-01").AddMonths(1).AddDays(-1) + "','yyyy-mm-dd hh24:mi:ss')");
+                sqlStr = sqlStr.Replace("@DATEBEGIN@", "to_date('" + Convert.ToDateTime(context.Request["datebeginMaster"] + "-01") + "','yyyy-mm-dd hh24:mi:ss')");
+                sqlStr = sqlStr.Replace("@DATEEND@", "to_date('" + Convert.ToDateTime(context.Request["dateendMaster"] + "-01").AddMonths(1).AddDays(-1) + "','yyyy-mm-dd hh24:mi:ss')");
                 sqlStr = sqlStr.Replace("@KILNID@", context.Request["kilnidMaster"].ToString() != "" ? context.Request["kilnidMaster"].ToString() : " NULL ");
                 string pid = context.Request["procedureidMaster"].ToString();
                 if (pid == "888")
@@ -2227,9 +2276,17 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 sqlStr = sqlStr.Replace("@PROCEDUREID@", pid != "" ? pid : " NULL ");
                 sqlStr = sqlStr.Replace("@GOODSCODE@", " '' ");
                 sqlStr = sqlStr.Replace("@GOODSNAME@", " '' ");
-					// 250717 存储过程的临时表 不好用
+                if (sqlStr.Contains("{strFactoryInspection}"))
+                {
+                    sqlStr = sqlStr.Replace("{strFactoryInspection}", strFactoryInspection);
+                }
+                if (sqlStr.Contains("{strFactoryInspectionCheckTime}"))
+                {
+                    sqlStr = sqlStr.Replace("{strFactoryInspectionCheckTime}", strFactoryInspectionCheckTime);
+                }
+                // 250717 存储过程的临时表 不好用
                 DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
- 
+
 
                 dt.Columns.Remove("D_GID");
                 dt.Columns.Remove("D_goodstypecode");

+ 7 - 3
wwwroot/mes/rpt/rpt016/rpt.ashx

@@ -7,8 +7,7 @@ using System.Data;
 using System.Text;
 using System.Collections;
 using System.Collections.Generic;
-using Newtonsoft.Json;
-using Newtonsoft.Json.Linq;
+using System.Configuration;
 using Curtain.DataAccess;
 using DK.XuWei.WebMes;
 
@@ -19,6 +18,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
         context.Response.ContentType = "text/plain";
         using (IDataAccess conn = DataAccess.Create())
         {
+            // 验厂标识 true:  false:
+            string strFactoryInspectionFlag = ConfigurationManager.AppSettings["FactoryInspectionFlag"] + "";
             //主表
             if (context.Request["m"].ToString() == "master")
             {
@@ -96,7 +97,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                     //                ";
 
                     //优化 陈强 2021-09-02
-                    string sqlStr =@"
+                    string sqlStr = @"
                         SELECT UPD.USERCODE AS 工号,
                                CDU.STAFFNAME AS 姓名,
                                J.JOBSNAME AS 工种,
@@ -156,6 +157,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                                  WHERE 
                                     T.CREATETIME >= @DATEBEGIN@
 						            AND T.CREATETIME < @DATEEND@ 
+" + ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where T.CREATETIME  >= thc.DAY_YMD_START and T.CREATETIME  < thc.DAY_YMD_END )  " : " ") + @"
                                     AND T.MODELTYPE = -1
                                  GROUP BY T.PRODUCTIONDATAID, T.GOODSLEVELTYPEID ,D.DEFECTID) TT
 				 
@@ -239,6 +241,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 					WHERE
 						T.CREATETIME >= @DATEBEGIN@
 						AND T.CREATETIME < @DATEEND@ 
+" + ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where T.CREATETIME  >= thc.DAY_YMD_START and T.CREATETIME  < thc.DAY_YMD_END )  " : " ") + @"
 						AND T.MODELTYPE = -1 
 					GROUP BY
 						T.PRODUCTIONDATAID
@@ -317,6 +320,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 					WHERE
 						T.CREATETIME >= @DATEBEGIN@
 						AND T.CREATETIME < @DATEEND@ 
+" + ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where T.CREATETIME  >= thc.DAY_YMD_START and T.CREATETIME  < thc.DAY_YMD_END )  " : " ") + @"
 						AND T.MODELTYPE = -1 
 					GROUP BY
 						T.PRODUCTIONDATAID,

+ 22 - 31
wwwroot/mes/rpt/rpt017/rpt.ashx

@@ -7,8 +7,7 @@ using System.Data;
 using System.Text;
 using System.Collections;
 using System.Collections.Generic;
-using Newtonsoft.Json;
-using Newtonsoft.Json.Linq;
+using System.Configuration;
 using Curtain.DataAccess;
 using DK.XuWei.WebMes;
 
@@ -22,6 +21,15 @@ public class rpt : IHttpHandler, IReadOnlySessionState
             //主表
             if (context.Request["m"].ToString() == "master")
             {
+                // 验厂标识 true:  false:
+                string strFactoryInspectionFlag = ConfigurationManager.AppSettings["FactoryInspectionFlag"] + "";
+                string strFactoryInspection = "";
+                string strFactoryInspectionCheckTime = "";
+                if ("true".Equals(strFactoryInspectionFlag))
+                {
+                    strFactoryInspection = " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where p.CREATETIME >= thc.DAY_YMD_START and p.CREATETIME < thc.DAY_YMD_END ) ";
+                    strFactoryInspectionCheckTime = " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where TP.CREATETIME >= thc.DAY_YMD_START and TP.CREATETIME < thc.DAY_YMD_END ) ";
+                }
                 List<CDAParameter> sqlPara = new List<CDAParameter>();
 
                 //读取报表数据
@@ -41,7 +49,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 						PP.商标 AS 商标,
 	                    SUM( PP.CHECKNUM1 ) AS 检验数_本烧,
 	                    SUM( PP.CHECKNUM2 ) AS 检验数_重烧,";
-                if (context.Request["XDLdatebeginMaster"] != "" && context.Request["XDLdateendMaster"] != ""  &&context.Request["XDLdatebeginMaster"] != null && context.Request["XDLdateendMaster"] != null  ) {
+                if (context.Request["XDLdatebeginMaster"] != "" && context.Request["XDLdateendMaster"] != "" && context.Request["XDLdatebeginMaster"] != null && context.Request["XDLdateendMaster"] != null)
+                {
                     sqlStr += @"
                     CASE WHEN   PP.GOODSMODEL IS NULL THEN 0 ELSE  
                         MAX((SELECT COUNT(*) FROM TP_PM_PRODUCTIONDATA pd WHERE pd.VALUEFLAG=1 AND pd.GOODSID=pp.GOODSID and pd.PROCEDUREID=52
@@ -124,6 +133,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                                 AND ( P.USERCODE = @USERCODE@ OR @USERCODE@ IS NULL )
                                 AND P.CREATETIME >= @DATEBEGIN@ 
                                 AND P.CREATETIME <= @DATEEND@
+                                 {strFactoryInspection}
                                 AND ( L.BUILDINGNO = @BUILDINGNO@ OR @BUILDINGNO@ IS NULL )
                                 AND (Gg.LOGOID = @LOGOID@ OR @LOGOID@ IS NULL)
                                 AND (Gg.GLAZETYPEID = @GLAZETYPEID@ OR @GLAZETYPEID@ IS NULL)
@@ -214,6 +224,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                                         AND ( TP.USERCODE = @USERCODE@ OR @USERCODE@ IS NULL )
                                         AND TP.CREATETIME >= @DATEBEGIN@
                                         AND TP.CREATETIME <= @DATEEND@
+                                        {strFactoryInspectionCheckTime}
                                         AND ( L.BUILDINGNO = @BUILDINGNO@ OR @BUILDINGNO@ IS NULL )
                                         AND (Gg.LOGOID = @LOGOID@ OR @LOGOID@ IS NULL)
                                         AND (Gg.GLAZETYPEID = @GLAZETYPEID@ OR @GLAZETYPEID@ IS NULL)
@@ -281,7 +292,14 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 sqlPara.Add(new CDAParameter("GLAZETYPEID", context.Request["glazetypeidMaster"]));
                 sqlPara.Add(new CDAParameter("LOGOID", context.Request["logoidMaster"]));
                 sqlPara.Add(new CDAParameter("JOBSID", context.Request["jobsidMaster"]));
-
+                if (sqlStr.Contains("{strFactoryInspection}"))
+                {
+                    sqlStr = sqlStr.Replace("{strFactoryInspection}", strFactoryInspection);
+                }
+                if (sqlStr.Contains("{strFactoryInspectionCheckTime}"))
+                {
+                    sqlStr = sqlStr.Replace("{strFactoryInspectionCheckTime}", strFactoryInspectionCheckTime);
+                }
                 //直接获取不分页数据
                 DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
                 string jsonStr = new JsonResult(dt) { total = dt.Rows.Count }.ToJson();
@@ -322,14 +340,6 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 					AJ.GOODSMODEL";
                 //获取查询条件
                 List<CDAParameter> sqlPara = new List<CDAParameter>();
-                //sqlPara.Add(new CDAParameter("DATEBEGIN", Convert.ToDateTime(context.Request["datebeginMaster"]), DataType.DateTime));
-                // sqlPara.Add(new CDAParameter("DATEEND", Convert.ToDateTime(context.Request["dateendMaster"]), DataType.DateTime));
-                //sqlPara.Add(new CDAParameter("BUILDINGNO", context.Request["buildingnoMaster"]));
-                // sqlPara.Add(new CDAParameter("PROCEDUREID", context.Request["procedureidMaster"]));
-                // sqlPara.Add(new CDAParameter("GOODSMODEL", context.Request["goodsmodelMaster"]));
-                // sqlPara.Add(new CDAParameter("USERCODE", context.Request["usercodeMaster"]));
-                // sqlPara.Add(new CDAParameter("USERNAME", context.Request["usernameMaster"]));
-                // sqlPara.Add(new CDAParameter("JOBSID", context.Request["jobsidMaster"]));
                 sqlPara.Add(new CDAParameter("BEGINMONTH", context.Request["datebeginMaster"].Substring(0, context.Request["datebeginMaster"].IndexOf("-")) + context.Request["datebeginMaster"].Substring(context.Request["datebeginMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
                 sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
 
@@ -349,25 +359,6 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 //string jsonStr = new JsonResult(dt) { total = dt.Rows.Count }.ToJson();
                 context.Response.Write(jsonStr);
             }
-
-            //from\n +
-            //( +
-            //SELECT\n +
-            //grouping_id(JOBSNAME,GOODSMODEL) gid,\n+
-            //USERCODE,STAFFNAME ,JOBSNAME ,GOODSMODEL ,\n +
-            //sum( CHECKNUM1 ) AS CHECKNUM1,\n +
-            //sum( CHECKNUM2 ) AS CHECKNUM2,\n +
-            //sum(CHECKNUM3) AS CHECKNUM3,\n +
-            //sum( CHECKNUM4 ) AS CHECKNUM4,\n +
-            //sum( OK_B ) AS OK_B,\n +
-            //sum( OK_R ) AS OK_R,\n +
-            //sum( OK_L ) AS OK_L,\n +
-            //sum( OK_ALL ) AS OK_ALL,\n +
-            //sum( OK_P ) AS OK_P,\n +
-            //sum( DNUM1 ) AS DNUM1,\n +
-            //sum( DNUM2 ) AS DNUM2,\n +
-            //sum( DNUM3 ) AS DNUM3,\n +
-            //sum( DNUM4 ) AS DNUM4\n +
         }
 
     }

+ 8 - 2
wwwroot/mes/rpt/rpt018/rpt.ashx

@@ -7,8 +7,7 @@ using System.Data;
 using System.Text;
 using System.Collections;
 using System.Collections.Generic;
-using Newtonsoft.Json;
-using Newtonsoft.Json.Linq;
+using System.Configuration;
 using Curtain.DataAccess;
 using DK.XuWei.WebMes;
 
@@ -20,6 +19,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
         context.Response.ContentType = "text/plain";
         using (IDataAccess conn = DataAccess.Create())
         {
+                // 验厂标识 true:  false:
+            string strFactoryInspectionFlag = ConfigurationManager.AppSettings["FactoryInspectionFlag"] + "";
             //主表
             if (context.Request["m"].ToString() == "master")
             {
@@ -146,6 +147,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 "           AND TS.GOODSLEVELTYPEID IN (8, 9)\n" +
                 "           AND TS.AUDITDATE >= @DATEBEGIN@\n" +
                 "           AND TS.AUDITDATE < @DATEEND@\n" +
+                ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where TS.AUDITDATE   >= thc.DAY_YMD_START and TS.AUDITDATE   < thc.DAY_YMD_END )  " : " ")   + 
                 "           AND TS.PROCEDUREID IN (3\n" +
                 "                                 ,26\n" +
                 "                                 ,27\n" +
@@ -235,6 +237,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 "         WHERE TS.DATATYPE = 11\n" +
                 "           AND TS.CREATETIME >= @DATEBEGIN@\n" +
                 "           AND TS.CREATETIME < @DATEEND@\n" +
+                ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where TS.CREATETIME   >= thc.DAY_YMD_START and TS.CREATETIME   < thc.DAY_YMD_END )  " : " ")   + 
+
                 "           AND TS.OTHERID IN (3\n" +
                 "                                 ,26\n" +
                 "                                 ,27\n" +
@@ -334,6 +338,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                     "           AND TS.GOODSLEVELTYPEID IN (8, 9)\n" +
                     "           AND TS.AUDITDATE >= @DATEBEGIN@\n" +
                     "           AND TS.AUDITDATE < @DATEEND@\n" +
+                     ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where TS.AUDITDATE  >= thc.DAY_YMD_START and TS.AUDITDATE   < thc.DAY_YMD_END )  " : " ")   + 
                     "           AND TS.PROCEDUREID IN (3\n" +
                     "                                 ,26\n" +
                     "                                 ,27\n" +
@@ -391,6 +396,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 "         WHERE TS.DATATYPE = 11\n" +
                 "           AND TS.CREATETIME >= @DATEBEGIN@\n" +
                 "           AND TS.CREATETIME < @DATEEND@\n" +
+                ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where TS.CREATETIME  >= thc.DAY_YMD_START and TS.CREATETIME   < thc.DAY_YMD_END )  " : " ")   +
                 "           AND TS.OTHERID IN (3\n" +
                 "                                 ,26\n" +
                 "                                 ,27\n" +

+ 5 - 2
wwwroot/mes/rpt/rpt019/rpt.ashx

@@ -7,8 +7,7 @@ using System.Data;
 using System.Text;
 using System.Collections;
 using System.Collections.Generic;
-using Newtonsoft.Json;
-using Newtonsoft.Json.Linq;
+using System.Configuration;
 using Curtain.DataAccess;
 using DK.XuWei.WebMes;
 
@@ -20,6 +19,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
         context.Response.ContentType = "text/plain";
         using (IDataAccess conn = DataAccess.Create())
         {
+                // 验厂标识 true:  false:
+            string strFactoryInspectionFlag = ConfigurationManager.AppSettings["FactoryInspectionFlag"] + "";
             //主表
             if (context.Request["m"].ToString() == "master")
             {
@@ -128,6 +129,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 "            ON GL.GROUTINGLINEID = TS.GROUTINGLINEID\n" +
                 "         WHERE TS.CREATETIME >= @DATEBEGIN@\n" +
                 "           AND TS.CREATETIME < @DATEEND@\n" +
+                  ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where TS.CREATETIME  >= thc.DAY_YMD_START and TS.CREATETIME   < thc.DAY_YMD_END )  " : " ")   + 
                 "           AND (TS.PROCEDUREID IN (28, 24,34, 21, 31) OR (TS.PROCEDUREID=13 AND TS.CHECKFLAG=1))\n" +
                 "           ) T\n" +
                 " WHERE (@FNAME_FLAG@ IS NULL OR T.FNAME_FLAG = @FNAME_FLAG@) \n" +
@@ -252,6 +254,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 "            ON GL.GROUTINGLINEID = TS.GROUTINGLINEID\n" +
                     "         WHERE TS.CREATETIME >= @DATEBEGIN@\n" +
                     "           AND TS.CREATETIME < @DATEEND@\n" +
+                      ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where TS.CREATETIME  >= thc.DAY_YMD_START and TS.CREATETIME   < thc.DAY_YMD_END )  " : " ")   + 
                     "           AND (TS.PROCEDUREID IN (28, 24,34, 21, 31) OR (TS.PROCEDUREID=13 AND TS.CHECKFLAG=1))\n" +
                     "           ) T\n" +
                     " LEFT JOIN TA_IMEX_kingdee_Goodscode K ON T.GOODS_CODE = K.K_NAME AND T.FNAME = K.K_WAREHOUSE\n" +

+ 15 - 12
wwwroot/mes/rpt/rpt020/rpt.ashx

@@ -7,8 +7,7 @@ using System.Data;
 using System.Text;
 using System.Collections;
 using System.Collections.Generic;
-using Newtonsoft.Json;
-using Newtonsoft.Json.Linq;
+using System.Configuration;
 using Curtain.DataAccess;
 using DK.XuWei.WebMes;
 
@@ -20,6 +19,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
         context.Response.ContentType = "text/plain";
         using (IDataAccess conn = DataAccess.Create())
         {
+            // 验厂标识 true:  false:
+            string strFactoryInspectionFlag = ConfigurationManager.AppSettings["FactoryInspectionFlag"] + "";
             //主表
             if (context.Request["m"].ToString() == "master")
             {
@@ -120,6 +121,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 "          FROM TP_PM_PRODUCTIONDATA TS\n" +
                 "         WHERE TS.CREATETIME >= @DATEBEGIN@\n" +
                 "           AND TS.CREATETIME < @DATEEND@\n" +
+                ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where TS.CREATETIME  >= thc.DAY_YMD_START and TS.CREATETIME   < thc.DAY_YMD_END )  " : " ")   + 
                 "           AND TS.PROCEDUREID IN (3, 26, 28, 24,34, 21, 31)\n" +
                 //"        UNION ALL\n" +
                 //"        SELECT 1 AS DNUM\n" +
@@ -154,7 +156,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 sqlPara_z.Add(new CDAParameter("DATEOUT", Convert.ToDateTime(context.Request["dateendMaster"]), DataType.DateTime));
                 sqlPara_z.Add(new CDAParameter("DATEBEGIN", Convert.ToDateTime(context.Request["datebeginMaster"]), DataType.DateTime));
                 sqlPara_z.Add(new CDAParameter("DATEEND", Convert.ToDateTime(context.Request["dateendMaster"]).AddDays(1), DataType.DateTime));
-                sqlPara_z.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"]+ ""));
+                sqlPara_z.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"] + ""));
 
                 //直接获取不分页数据
                 DataTable dt_z = conn.ExecuteDatatable(sqlString, sqlPara_z.ToArray());
@@ -224,6 +226,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                     "            ON TS.GOODSID = G.GOODSID\n" +
                     "         WHERE TS.CREATETIME >= @DATEBEGIN@\n" +
                     "           AND TS.CREATETIME < @DATEEND@\n" +
+                    ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where TS.CREATETIME  >= thc.DAY_YMD_START and TS.CREATETIME   < thc.DAY_YMD_END )  " : " ")   + 
                     "           AND TS.PROCEDUREID IN (3, 26, 28, 24,34, 21, 31)\n" +
                     //"        UNION ALL\n" +
                     //"        SELECT 'J' || G.GOODSMODEL AS GOODS_CODE\n" +
@@ -256,7 +259,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 
                 sqlPara.Add(new CDAParameter("DATEBEGIN", Convert.ToDateTime(context.Request["datebeginMaster"]), DataType.DateTime));
                 sqlPara.Add(new CDAParameter("DATEEND", Convert.ToDateTime(context.Request["dateendMaster"]).AddDays(1), DataType.DateTime));
-                sqlPara.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"]+ ""));
+                sqlPara.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"] + ""));
 
                 //直接获取不分页数据
                 DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
@@ -266,7 +269,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 context.Response.Write(jsonStr);
             }
 
-            if(context.Request["m"].ToString() == "jiezhauang")
+            if (context.Request["m"].ToString() == "jiezhauang")
             {
                 //2021-8-4 dongyan  新增结转功能 选择结转checkbox 查询结转数据
                 //数据插入到 JZ_RPT020_M
@@ -294,22 +297,22 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 
                 //获取查询条件
                 List<CDAParameter> sqlPara = new List<CDAParameter>();
-               sqlPara.Add(new CDAParameter("BEGINMONTH", context.Request["datebeginMaster"].Substring(0, context.Request["datebeginMaster"].IndexOf("-")) + context.Request["datebeginMaster"].Substring(context.Request["datebeginMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-				sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
+                sqlPara.Add(new CDAParameter("BEGINMONTH", context.Request["datebeginMaster"].Substring(0, context.Request["datebeginMaster"].IndexOf("-")) + context.Request["datebeginMaster"].Substring(context.Request["datebeginMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
+                sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
 
-                sqlPara.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"]+ ""));
+                sqlPara.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"] + ""));
                 //直接获取不分页数据
                 DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
                 string jsonStr = new JsonResult(dt) { total = dt.Rows.Count }.ToJson();
 
                 context.Response.Write(jsonStr);
             }
-            if(context.Request["m"].ToString() == "jiezhuan")
+            if (context.Request["m"].ToString() == "jiezhuan")
             {
                 //2021-8-4 dongyan  新增结转功能 选择结转checkbox 查询结转数据
                 //将数据插入到 JZ_RPT020_D 并通过条件查询结转数据
                 //2021-8-04 dongyan 添加全条件查询
-                string sqlStr = @"SELECT" +"\n"+
+                string sqlStr = @"SELECT" + "\n" +
      "ROW_NO AS" + " " + "\"行号\"," +
     "BILL_NO_FBILLNO AS" + " " + "\"单据号_FBillno\"," +
     "BILL_NO_FTRANTYPE AS" + " " + "\"单据号_FTrantype\"," +
@@ -343,9 +346,9 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 //获取查询条件
                 List<CDAParameter> sqlPara = new List<CDAParameter>();
                 sqlPara.Add(new CDAParameter("BEGINMONTH", context.Request["datebeginMaster"].Substring(0, context.Request["datebeginMaster"].IndexOf("-")) + context.Request["datebeginMaster"].Substring(context.Request["datebeginMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-				sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
+                sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
 
-                sqlPara.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"]+ ""));
+                sqlPara.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"] + ""));
                 //直接获取不分页数据
                 DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
                 string jsonStr = new JsonResult(dt) { total = dt.Rows.Count }.ToJson();

+ 115 - 107
wwwroot/mes/rpt/rpt021/rpt.ashx

@@ -7,8 +7,7 @@ using System.Data;
 using System.Text;
 using System.Collections;
 using System.Collections.Generic;
-using Newtonsoft.Json;
-using Newtonsoft.Json.Linq;
+using System.Configuration;
 using Curtain.DataAccess;
 using DK.XuWei.WebMes;
 
@@ -16,9 +15,12 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 {
     public void ProcessRequest(HttpContext context)
     {
+        // 验厂标识 true:  false:
+        string strFactoryInspectionFlag = ConfigurationManager.AppSettings["FactoryInspectionFlag"] + "";
         context.Response.ContentType = "text/plain";
         using (IDataAccess conn = DataAccess.Create())
         {
+
             List<CDAParameter> goodsnull = new List<CDAParameter>();
             string[] goodsCodes = new string[] { };
             string goodsStr = "";
@@ -31,7 +33,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                                         GOODSCODE 
                                         FROM TP_MST_GOODS
                                         WHERE VALUEFLAG=1";
-            if (goodsCodes.Length > 1 || goodsCodes[0] != ""){ 
+            if (goodsCodes.Length > 1 || goodsCodes[0] != "")
+            {
                 if (context.Request["isNotcheck"].ToString() == "1")
                 {
                     goodssql += @" AND GOODSCODE NOT LIKE ('%" + goodsCodes[0] + "%') ";
@@ -48,26 +51,26 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                         goodssql += @" OR GOODSCODE  LIKE ('%" + goodsCodes[i] + "%') ";
                     }
                 }
-        }
+            }
 
-        // DataTable goodsTable = conn.ExecuteDatatable(goodssql,goodsnull.ToArray());
+            // DataTable goodsTable = conn.ExecuteDatatable(goodssql,goodsnull.ToArray());
 
 
 
-        //if (goodsTable.Rows.Count > 0)
-        //{
-          //  for (int i = 0; i < goodsTable.Rows.Count; i++)
-           // {
-           //     if (i > 0) goodsStr += ",";
-           //     goodsStr += "'" + goodsTable.Rows[i]["GOODSCODE"].ToString() + "'";
-           // }
-      //  }
-        //主表
-        if (context.Request["m"].ToString() == "master")
-        {
-            //读取报表数据
+            //if (goodsTable.Rows.Count > 0)
+            //{
+            //  for (int i = 0; i < goodsTable.Rows.Count; i++)
+            // {
+            //     if (i > 0) goodsStr += ",";
+            //     goodsStr += "'" + goodsTable.Rows[i]["GOODSCODE"].ToString() + "'";
+            // }
+            //  }
+            //主表
+            if (context.Request["m"].ToString() == "master")
+            {
+                //读取报表数据
 
-            string sqlStr = @"
+                string sqlStr = @"
 SELECT DECODE(GID
              ,7
              ,TT.组别 || '[小计]'
@@ -191,6 +194,7 @@ SELECT GROUPING_ID ( PT.M_USERNAME, PT.LINE_NO,PT.GROUTINGLINEID, PT.GOODS_CODE,
                            AND GGDD.GROUTINGFLAG = '1'
                            AND GGDD.GROUTINGDATE >= @DATEBEGIN@
                            AND GGDD.GROUTINGDATE < @DATEEND@
+" + ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where  GGDD.GROUTINGDATE  >= thc.DAY_YMD_START and  GGDD.GROUTINGDATE  < thc.DAY_YMD_END )  " : " ") + @" 
                           AND  GOODS.GOODSCODE IN({goodsCodes})
                          GROUP BY GGDD.GROUTINGDAILYID
                                  ,GGDD.GROUTINGDATE
@@ -220,6 +224,7 @@ SELECT GROUPING_ID ( PT.M_USERNAME, PT.LINE_NO,PT.GROUTINGLINEID, PT.GOODS_CODE,
                        AND PP.PROCEDUREID IN (3, 26)
                        AND PP.CREATETIME >= @DATEBEGIN@
                        AND PP.CREATETIME < @DATEEND@
+" + ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where  PP.CREATETIME  >= thc.DAY_YMD_START and   PP.CREATETIME   < thc.DAY_YMD_END )  " : " ") + @" 
                       AND  GOODS.GOODSCODE IN({goodsCodes})
                      GROUP BY PP.GROUTINGLINEID
                              ,GOODS.GOODSMODEL
@@ -269,120 +274,123 @@ SELECT GROUPING_ID ( PT.M_USERNAME, PT.LINE_NO,PT.GROUTINGLINEID, PT.GOODS_CODE,
                  ,COALESCE(G.GOODSMODEL, P.GOODSMODEL, GL2.GOODSMODEL)
                  ,NVL(G.USERCODE, P.USERCODE)) PT
  GROUP BY GROUPING SETS((PT.M_USERNAME, PT.LINE_NO,PT.GROUTINGLINEID,PT.GL_MOULDQUANTITY, PT.GOODS_CODE, PT.G_USERCODE, PT.G_USERNAME, PT.HIGHPRESSUREFLAG, PT.GOODSTYPECODE2),(PT.M_USERNAME, PT.LINE_NO, PT.HIGHPRESSUREFLAG),(PT.M_USERNAME))
- ORDER BY PT.M_USERNAME, PT.LINE_NO, PT.G_USERCODE, PT.GOODS_CODE) TT".Replace("{goodsCodes}", goodssql);
-            //获取查询条件
-            DateTime datebegin = Convert.ToDateTime(context.Request["datebeginMaster"]);
-            DateTime dateend = Convert.ToDateTime(context.Request["dateendMaster"]);
+ ORDER BY PT.M_USERNAME, PT.LINE_NO, PT.G_USERCODE, PT.GOODS_CODE) TT";
 
-            List<CDAParameter> sqlPara = new List<CDAParameter>();
-            //sqlPara.Add(new CDAParameter("ACCOUNTID", context.Session["accountId"].ToString()));
 
-            sqlPara.Add(new CDAParameter("DATEBEGIN", datebegin, DataType.DateTime));
-            sqlPara.Add(new CDAParameter("DATEEND", dateend.AddSeconds(1), DataType.DateTime));
-            sqlPara.Add(new CDAParameter("BUILDINGNO", context.Request["buildingnoMaster"]));
-            //sqlPara.Add(new CDAParameter("PROCEDUREID", context.Request["procedureidMaster"]));
-            //sqlPara.Add(new CDAParameter("GOODSCODE", context.Request["goodscodeMaster"]));
-            sqlPara.Add(new CDAParameter("USERNAME", context.Request["usernameMaster"]));
+                sqlStr = sqlStr.Replace("{goodsCodes}", goodssql);
+                //获取查询条件
+                DateTime datebegin = Convert.ToDateTime(context.Request["datebeginMaster"]);
+                DateTime dateend = Convert.ToDateTime(context.Request["dateendMaster"]);
 
-            int days = (dateend.Date - datebegin.Date).Days + 1;
-            days -= DayOfWeeksInDays(datebegin, days, DayOfWeek.Sunday);
-            sqlPara.Add(new CDAParameter("DAYS", days));
+                List<CDAParameter> sqlPara = new List<CDAParameter>();
+                //sqlPara.Add(new CDAParameter("ACCOUNTID", context.Session["accountId"].ToString()));
 
-            //if(context.Request["USERID"] is object)
-            //{
-            //    sqlStr += " AND m.USERID = @USERID@ ";
-            //    sqlPara.Add(new CDAParameter("USERID", context.Request["USERID"].ToString()));
-            //}
+                sqlPara.Add(new CDAParameter("DATEBEGIN", datebegin, DataType.DateTime));
+                sqlPara.Add(new CDAParameter("DATEEND", dateend.AddSeconds(1), DataType.DateTime));
+                sqlPara.Add(new CDAParameter("BUILDINGNO", context.Request["buildingnoMaster"]));
+                //sqlPara.Add(new CDAParameter("PROCEDUREID", context.Request["procedureidMaster"]));
+                //sqlPara.Add(new CDAParameter("GOODSCODE", context.Request["goodscodeMaster"]));
+                sqlPara.Add(new CDAParameter("USERNAME", context.Request["usernameMaster"]));
 
-            //获取分页参数
-            //int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-            //int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
-            //string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "";
-            //string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
+                int days = (dateend.Date - datebegin.Date).Days + 1;
+                days -= DayOfWeeksInDays(datebegin, days, DayOfWeek.Sunday);
+                sqlPara.Add(new CDAParameter("DAYS", days));
 
-            //获取分页数据    
-            //int total = 0;
-            //DataTable dt = conn.SelectPages(page, rows, out total, sqlStr, sqlPara.ToArray());
-            //string jsonStr = new JsonResult(dt) { total = total }.ToJson();
+                //if(context.Request["USERID"] is object)
+                //{
+                //    sqlStr += " AND m.USERID = @USERID@ ";
+                //    sqlPara.Add(new CDAParameter("USERID", context.Request["USERID"].ToString()));
+                //}
 
-            //直接获取不分页数据
-            DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
-            string jsonStr = new JsonResult(dt) { total = dt.Rows.Count }.ToJson();
+                //获取分页参数
+                //int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
+                //int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+                //string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "";
+                //string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 
+                //获取分页数据    
+                //int total = 0;
+                //DataTable dt = conn.SelectPages(page, rows, out total, sqlStr, sqlPara.ToArray());
+                //string jsonStr = new JsonResult(dt) { total = total }.ToJson();
 
-            context.Response.Write(jsonStr);
-        }
+                //直接获取不分页数据
+                DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
+                string jsonStr = new JsonResult(dt) { total = dt.Rows.Count }.ToJson();
 
-        //子表
-        if (context.Request["m"].ToString() == "detail")
-        {
-            //读取报表数据
-            string sqlStr = @"
+
+                context.Response.Write(jsonStr);
+            }
+
+            //子表
+            if (context.Request["m"].ToString() == "detail")
+            {
+                //读取报表数据
+                string sqlStr = @"
 
                 ";
 
-            //获取查询条件
-            List<CDAParameter> sqlPara = new List<CDAParameter>();
+                //获取查询条件
+                List<CDAParameter> sqlPara = new List<CDAParameter>();
 
-            //获取分页参数
-            int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-            int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
-            string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
-            string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
+                //获取分页参数
+                int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
+                int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+                string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
+                string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 
-            //获取分页数据    
-            int total = 0;
-            DataTable dt = conn.SelectPages(page, rows, out total, sqlStr, sqlPara.ToArray());
-            string jsonStr = new JsonResult(dt) { total = total }.ToJson();
+                //获取分页数据    
+                int total = 0;
+                DataTable dt = conn.SelectPages(page, rows, out total, sqlStr, sqlPara.ToArray());
+                string jsonStr = new JsonResult(dt) { total = total }.ToJson();
 
-            context.Response.Write(jsonStr);
+                context.Response.Write(jsonStr);
+            }
         }
     }
-}
 
-/// <summary>
-/// 在指定日期内有几个星期几
-/// days 小于1时,返回 -1
-/// weeks 未指定时,默认星期日
-/// </summary>
-/// <param name="beginDate"></param>
-/// <param name="days"></param>
-/// <param name="weeks"></param>
-/// <returns></returns>
-public static int DayOfWeeksInDays(DateTime beginDate, int days, DayOfWeek week)
-{
-    if (days < 1)
+    /// <summary>
+    /// 在指定日期内有几个星期几
+    /// days 小于1时,返回 -1
+    /// weeks 未指定时,默认星期日
+    /// </summary>
+    /// <param name="beginDate"></param>
+    /// <param name="days"></param>
+    /// <param name="weeks"></param>
+    /// <returns></returns>
+    public static int DayOfWeeksInDays(DateTime beginDate, int days, DayOfWeek week)
     {
-        return -1;
+        if (days < 1)
+        {
+            return -1;
+        }
+        DayOfWeek dw = beginDate.DayOfWeek;
+        int ws = (days + (int)dw - (int)week - 1) / 7;
+        if (dw <= week)
+        {
+            ws += 1;
+        }
+        return ws;
     }
-    DayOfWeek dw = beginDate.DayOfWeek;
-    int ws = (days + (int)dw - (int)week - 1) / 7;
-    if (dw <= week)
+    /// <summary>
+    /// 在指定日期内有几个星期几
+    /// endDate 小于 beginDate 时,返回 -1
+    /// weeks 未指定时,默认星期日
+    /// </summary>
+    /// <param name="beginDate"></param>
+    /// <param name="endDate"></param>
+    /// <param name="weeks"></param>
+    /// <returns></returns>
+    public static int DayOfWeeksInDays(DateTime beginDate, DateTime endDate, DayOfWeek week)
     {
-        ws += 1;
+        return DayOfWeeksInDays(beginDate, (endDate.Date - beginDate.Date).Days + 1, week);
     }
-    return ws;
-}
-/// <summary>
-/// 在指定日期内有几个星期几
-/// endDate 小于 beginDate 时,返回 -1
-/// weeks 未指定时,默认星期日
-/// </summary>
-/// <param name="beginDate"></param>
-/// <param name="endDate"></param>
-/// <param name="weeks"></param>
-/// <returns></returns>
-public static int DayOfWeeksInDays(DateTime beginDate, DateTime endDate, DayOfWeek week)
-{
-    return DayOfWeeksInDays(beginDate, (endDate.Date - beginDate.Date).Days + 1, week);
-}
 
-public bool IsReusable
-{
-    get
+    public bool IsReusable
     {
-        return false;
+        get
+        {
+            return false;
+        }
     }
-}
 
 }

+ 16 - 12
wwwroot/mes/rpt/rpt022/rpt.ashx

@@ -7,8 +7,7 @@ using System.Data;
 using System.Text;
 using System.Collections;
 using System.Collections.Generic;
-using Newtonsoft.Json;
-using Newtonsoft.Json.Linq;
+using System.Configuration;
 using Curtain.DataAccess;
 using DK.XuWei.WebMes;
 
@@ -17,8 +16,11 @@ public class rpt : IHttpHandler, IReadOnlySessionState
     public void ProcessRequest(HttpContext context)
     {
         context.Response.ContentType = "text/plain";
-        using(IDataAccess conn = DataAccess.Create())
+        using (IDataAccess conn = DataAccess.Create())
         {
+            // 验厂标识 true:  false:
+            string strFactoryInspectionFlag = ConfigurationManager.AppSettings["FactoryInspectionFlag"] + "";
+
             #region 产品编码
             List<CDAParameter> goodsnull = new List<CDAParameter>();
             string[] goodsCodes = new string[] { };
@@ -34,7 +36,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                                         WHERE VALUEFLAG=1";
 
 
-            if (goodsCodes.Length > 1 || goodsCodes[0]!="")
+            if (goodsCodes.Length > 1 || goodsCodes[0] != "")
             {
 
                 if (context.Request["isNotcheck"].ToString() == "1")
@@ -65,9 +67,9 @@ public class rpt : IHttpHandler, IReadOnlySessionState
             //        goodsStr += "'" + goodsTable.Rows[i]["GOODSCODE"].ToString() + "'";
             //    }
             //}
-            #endregion 
+            #endregion
             //主表
-            if(context.Request["m"].ToString()=="master")
+            if (context.Request["m"].ToString() == "master")
             {
                 //确定modeltype 成型工序 需要附加条件 modeltype=5 
                 string modelType = "AND PB.MODELTYPE = 5";
@@ -85,7 +87,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 				";
                 DataTable pTable = conn.ExecuteDatatable(sqlStr);
                 string colStr = "";
-                for(int i=0;i<pTable.Rows.Count;i++)
+                for (int i = 0; i < pTable.Rows.Count; i++)
                 {
                     if (i > 0) colStr += ",";
                     colStr += "'" + pTable.Rows[i]["DEFECTNAME"].ToString() + "' AS " + pTable.Rows[i]["DEFECTNAME"].ToString();
@@ -141,6 +143,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 									AND P.GOODSLEVELTYPEID <> 4 
 									AND P.CHECKTIME >= @DATEBEGIN@ 
 									AND P.CHECKTIME <= @DATEEND@
+									" + ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where P.CHECKTIME  >= thc.DAY_YMD_START and P.CHECKTIME  < thc.DAY_YMD_END )  " : " ") + @" 
 									AND P.ISREFIRE = '0' 
 									--AND L.BUILDINGNO = @BUILDINGNO@
 									AND ( PB.PROCEDUREID = 1 )
@@ -191,6 +194,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 								AND P.PROCEDUREID = 13 AND P.CHECKBATCHNO = 1
 								AND P.CHECKTIME >= @DATEBEGIN@ 
 								AND P.CHECKTIME <= @DATEEND@
+								" + ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where P.CHECKTIME  >= thc.DAY_YMD_START and P.CHECKTIME  < thc.DAY_YMD_END )  " : " ") + @" 
 								--AND L.BUILDINGNO = @BUILDINGNO@
 								AND ( PB.PROCEDUREID = 1 )
 								AND P.ISREFIRE = '0' 
@@ -206,8 +210,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 							工号, 产品编码
 						) PC ON (PC.GID = 3 AND PD.工号 = PC.工号 AND PD.产品编码 IS NULL ) OR ( PD.工号 = PC.工号 AND PD.产品编码 = PC.产品编码 )
 
-                ".Replace("{COLSTR}",colStr).Replace("{MODELTYPE}",modelType)
-                 .Replace("{goodsCodes}", goodssql);
+                ";
+                sqlStr = sqlStr.Replace("{COLSTR}", colStr).Replace("{MODELTYPE}", modelType).Replace("{goodsCodes}", goodssql);
 
                 //获取查询条件
                 List<CDAParameter> sqlPara = new List<CDAParameter>();
@@ -230,7 +234,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
             }
 
             //子表
-            if(context.Request["m"].ToString()=="detail")
+            if (context.Request["m"].ToString() == "detail")
             {
                 //读取报表数据
                 string sqlStr = @"
@@ -248,8 +252,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 
                 //获取分页数据    
                 int total = 0;
-                DataTable dt = conn.SelectPages(page, rows,out total, sqlStr, sqlPara.ToArray());
-                string jsonStr =  new JsonResult(dt) { total = total}.ToJson();
+                DataTable dt = conn.SelectPages(page, rows, out total, sqlStr, sqlPara.ToArray());
+                string jsonStr = new JsonResult(dt) { total = total }.ToJson();
 
                 context.Response.Write(jsonStr);
             }

+ 16 - 13
wwwroot/mes/rpt/rpt024/rpt.ashx

@@ -7,8 +7,7 @@ using System.Data;
 using System.Text;
 using System.Collections;
 using System.Collections.Generic;
-using Newtonsoft.Json;
-using Newtonsoft.Json.Linq;
+using System.Configuration;
 using Curtain.DataAccess;
 using DK.XuWei.WebMes;
 
@@ -17,10 +16,12 @@ public class rpt : IHttpHandler, IReadOnlySessionState
     public void ProcessRequest(HttpContext context)
     {
         context.Response.ContentType = "text/plain";
-        using(IDataAccess conn = DataAccess.Create())
+        using (IDataAccess conn = DataAccess.Create())
         {
+            // 验厂标识 true:  false:
+            string strFactoryInspectionFlag = ConfigurationManager.AppSettings["FactoryInspectionFlag"] + "";
             //主表
-            if(context.Request["m"].ToString()=="master")
+            if (context.Request["m"].ToString() == "master")
             {
                 //默认 本烧13 重烧35 全包含
                 //string procedureId = "13,35";
@@ -109,6 +110,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 								AND P.PROCEDUREID IN ( 13,35 ) 
 								AND P.CHECKTIME >= @DATEBEGIN@ 
 								AND P.CHECKTIME <= @DATEEND@
+" + ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where P.CHECKTIME  >= thc.DAY_YMD_START and P.CHECKTIME  < thc.DAY_YMD_END )  " : " ") + @" 
 							GROUP BY
 								P.CHECKTIME,
 								P.GROUTINGLINEID,
@@ -179,6 +181,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 								AND P.PROCEDUREID IN ( 13,35 ) 
 								AND P.CREATETIME >= @DATEBEGIN@ 
 								AND P.CREATETIME <= @DATEEND@
+" + ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where P.CREATETIME  >= thc.DAY_YMD_START and P.CREATETIME  < thc.DAY_YMD_END )  " : " ") + @" 
 							GROUP BY
 								P.CREATETIME,
 								P.GROUTINGLINEID,
@@ -245,7 +248,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
             }
 
             //子表
-            if(context.Request["m"].ToString()=="detail")
+            if (context.Request["m"].ToString() == "detail")
             {
                 //读取报表数据
                 string sqlStr = @"
@@ -263,13 +266,13 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 
                 //获取分页数据    
                 int total = 0;
-                DataTable dt = conn.SelectPages(page, rows,out total, sqlStr, sqlPara.ToArray());
-                string jsonStr =  new JsonResult(dt) { total = total}.ToJson();
+                DataTable dt = conn.SelectPages(page, rows, out total, sqlStr, sqlPara.ToArray());
+                string jsonStr = new JsonResult(dt) { total = total }.ToJson();
 
                 context.Response.Write(jsonStr);
             }
 
-			 if(context.Request["m"].ToString() == "jiezhauang")
+            if (context.Request["m"].ToString() == "jiezhauang")
             {
                 //读取报表数据
                 string sqlStr = @" SELECT
@@ -302,15 +305,15 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 ";
 
                 //获取查询条件
-               //获取查询条件
+                //获取查询条件
                 List<CDAParameter> sqlPara = new List<CDAParameter>();
                 //sqlPara.Add(new CDAParameter("ACCOUNTID", context.Session["accountId"].ToString()));
 
                 sqlPara.Add(new CDAParameter("DATEBEGIN", Convert.ToDateTime(context.Request["datebeginMaster"]), DataType.DateTime));
                 sqlPara.Add(new CDAParameter("DATEEND", Convert.ToDateTime(context.Request["dateendMaster"]), DataType.DateTime));
                 sqlPara.Add(new CDAParameter("BUILDINGNO", context.Request["buildingnoMaster"]));
-				sqlPara.Add(new CDAParameter("BEGINMONTH", context.Request["datebeginMaster"].Substring(0, context.Request["datebeginMaster"].IndexOf("-")) + context.Request["datebeginMaster"].Substring(context.Request["datebeginMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-				sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
+                sqlPara.Add(new CDAParameter("BEGINMONTH", context.Request["datebeginMaster"].Substring(0, context.Request["datebeginMaster"].IndexOf("-")) + context.Request["datebeginMaster"].Substring(context.Request["datebeginMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
+                sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
 
 
                 //获取分页参数
@@ -321,8 +324,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 
                 //获取分页数据    
                 int total = 0;
-                DataTable dt = conn.SelectPages(page, rows,out total, sqlStr, sqlPara.ToArray());
-                string jsonStr =  new JsonResult(dt) { total = total}.ToJson();
+                DataTable dt = conn.SelectPages(page, rows, out total, sqlStr, sqlPara.ToArray());
+                string jsonStr = new JsonResult(dt) { total = total }.ToJson();
 
                 context.Response.Write(jsonStr);
             }

+ 14 - 12
wwwroot/mes/rpt/rpt025/rpt.ashx

@@ -7,8 +7,7 @@ using System.Data;
 using System.Text;
 using System.Collections;
 using System.Collections.Generic;
-using Newtonsoft.Json;
-using Newtonsoft.Json.Linq;
+using System.Configuration;
 using Curtain.DataAccess;
 using DK.XuWei.WebMes;
 
@@ -16,11 +15,13 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 {
     public void ProcessRequest(HttpContext context)
     {
+        // 验厂标识 true:  false:
+        string strFactoryInspectionFlag = ConfigurationManager.AppSettings["FactoryInspectionFlag"] + "";
         context.Response.ContentType = "text/plain";
-        using(IDataAccess conn = DataAccess.Create())
+        using (IDataAccess conn = DataAccess.Create())
         {
             //主表
-            if(context.Request["m"].ToString()=="master")
+            if (context.Request["m"].ToString() == "master")
             {
                 //读取报表数据
                 string sqlStr = @"
@@ -50,6 +51,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 	                    WHERE
 		                    T.CREATETIME >= @DATEBEGIN@ 
 		                    AND T.CREATETIME < @DATEEND@ 
+" + ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where T.CREATETIME  >= thc.DAY_YMD_START and T.CREATETIME  < thc.DAY_YMD_END )  " : " ") + @" 
 		                    AND GLD.GROUTINGCOUNT > 0 
 		                    AND T.GMOULDRECORDTYPE IN ( 3, 5, 6, 7 ) 
 		                    AND ( T.GMOULDRECORDTYPE <> 5 OR ( G1.GOODSMODEL <> G2.GOODSMODEL ) ) 
@@ -112,7 +114,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
             }
 
             //子表
-            if(context.Request["m"].ToString()=="detail")
+            if (context.Request["m"].ToString() == "detail")
             {
                 //读取报表数据
                 string sqlStr = @"
@@ -130,15 +132,15 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 
                 //获取分页数据    
                 int total = 0;
-                DataTable dt = conn.SelectPages(page, rows,out total, sqlStr, sqlPara.ToArray());
-                string jsonStr =  new JsonResult(dt) { total = total}.ToJson();
+                DataTable dt = conn.SelectPages(page, rows, out total, sqlStr, sqlPara.ToArray());
+                string jsonStr = new JsonResult(dt) { total = total }.ToJson();
 
                 context.Response.Write(jsonStr);
             }
 
-             if (context.Request["m"].ToString() == "jiezhauang")
+            if (context.Request["m"].ToString() == "jiezhauang")
             {
-                    //读取报表数据
+                //读取报表数据
                 string sqlStr = @"
                     SELECT GROUPNAME as 组别,
                             GROUTINGLINENAME AS 线号,
@@ -167,7 +169,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 sqlPara.Add(new CDAParameter("LINENO", context.Request["linenoMaster"]));
                 sqlPara.Add(new CDAParameter("GOODSMODEL", context.Request["goodsmodelMaster"]));
                 sqlPara.Add(new CDAParameter("BEGINMONTH", context.Request["datebeginMaster"].Substring(0, context.Request["datebeginMaster"].IndexOf("-")) + context.Request["datebeginMaster"].Substring(context.Request["datebeginMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-				sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
+                sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
 
                 //获取分页参数
                 int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
@@ -177,8 +179,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 
                 //获取分页数据    
                 int total = 0;
-                DataTable dt = conn.SelectPages(page, rows,out total, sqlStr, sqlPara.ToArray());
-                string jsonStr =  new JsonResult(dt) { total = total}.ToJson();
+                DataTable dt = conn.SelectPages(page, rows, out total, sqlStr, sqlPara.ToArray());
+                string jsonStr = new JsonResult(dt) { total = total }.ToJson();
 
                 context.Response.Write(jsonStr);
             }

+ 65 - 60
wwwroot/mes/rpt/rpt027/rpt.ashx

@@ -7,8 +7,7 @@ using System.Data;
 using System.Text;
 using System.Collections;
 using System.Collections.Generic;
-using Newtonsoft.Json;
-using Newtonsoft.Json.Linq;
+using System.Configuration;
 using Curtain.DataAccess;
 using DK.XuWei.WebMes;
 
@@ -16,6 +15,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 {
     public void ProcessRequest(HttpContext context)
     {
+        // 验厂标识 true:  false:
+        string strFactoryInspectionFlag = ConfigurationManager.AppSettings["FactoryInspectionFlag"] + "";
         // 合并到一期
         context.Response.ContentType = "text/plain";
         using (IDataAccess conn = DataAccess.Create())
@@ -147,6 +148,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 "           AND TS.GOODSLEVELTYPEID = 8\n" +
                 "           AND TS.BACKOUTTIME >= @DATEBEGIN@\n" +
                 "           AND TS.BACKOUTTIME < @DATEEND@\n" +
+                 ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where TS.BACKOUTTIME  >= thc.DAY_YMD_START and TS.BACKOUTTIME   < thc.DAY_YMD_END )  " : " ")   + 
                 "           AND TS.PROCEDUREID IN (3\n" +
                 "                                 ,26\n" +
                 "                                 ,27\n" +
@@ -237,6 +239,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 "         WHERE TS.DATATYPE = 12\n" +
                 "           AND TS.CREATETIME >= @DATEBEGIN@\n" +
                 "           AND TS.CREATETIME < @DATEEND@\n" +
+                ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where TS.CREATETIME  >= thc.DAY_YMD_START and TS.CREATETIME   < thc.DAY_YMD_END )  " : " ")   +
                 "           AND TS.OTHERID IN (3\n" +
                 "                                 ,26\n" +
                 "                                 ,27\n" +
@@ -263,7 +266,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 sqlPara_z.Add(new CDAParameter("DATEOUT", Convert.ToDateTime(context.Request["dateendMaster"]), DataType.DateTime));
                 sqlPara_z.Add(new CDAParameter("DATEBEGIN", Convert.ToDateTime(context.Request["datebeginMaster"]), DataType.DateTime));
                 sqlPara_z.Add(new CDAParameter("DATEEND", Convert.ToDateTime(context.Request["dateendMaster"]).AddDays(1), DataType.DateTime));
-                sqlPara_z.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"]+ ""));
+                sqlPara_z.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"] + ""));
 
                 DataTable dt_z = conn.ExecuteDatatable(sqlString, sqlPara_z.ToArray());
                 string jsonStr = new JsonResult(dt_z) { total = dt_z.Rows.Count }.ToJson();
@@ -337,6 +340,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                     "           AND TS.GOODSLEVELTYPEID = 8\n" +
                     "           AND TS.BACKOUTTIME >= @DATEBEGIN@\n" +
                     "           AND TS.BACKOUTTIME < @DATEEND@\n" +
+                    ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where TS.BACKOUTTIME  >= thc.DAY_YMD_START and TS.BACKOUTTIME   < thc.DAY_YMD_END )  " : " ")   +
                     "           AND TS.PROCEDUREID IN (3\n" +
                     "                                 ,26\n" +
                     "                                 ,27\n" +
@@ -395,6 +399,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 "         WHERE TS.DATATYPE = 12\n" +
                 "           AND TS.CREATETIME >= @DATEBEGIN@\n" +
                 "           AND TS.CREATETIME < @DATEEND@\n" +
+                ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where TS.CREATETIME  >= thc.DAY_YMD_START and TS.CREATETIME   < thc.DAY_YMD_END )  " : " ")   +
                 "           AND TS.OTHERID IN (3\n" +
                 "                                 ,26\n" +
                 "                                 ,27\n" +
@@ -423,7 +428,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 List<CDAParameter> sqlPara = new List<CDAParameter>();
                 sqlPara.Add(new CDAParameter("DATEBEGIN", Convert.ToDateTime(context.Request["datebeginMaster"]), DataType.DateTime));
                 sqlPara.Add(new CDAParameter("DATEEND", Convert.ToDateTime(context.Request["dateendMaster"]).AddDays(1), DataType.DateTime));
-                sqlPara.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"]+ ""));
+                sqlPara.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"] + ""));
 
                 //直接获取不分页数据
                 DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
@@ -436,35 +441,35 @@ public class rpt : IHttpHandler, IReadOnlySessionState
             //2021-8-4 陈强 添加全条件查询
             if (context.Request["m"] == "jiezhuan")
             {
-                
-                    string sqlString = "SELECT \"DATE1\"            AS \"审核日期\",\n" +
-                    "       DATE2            AS \"日期\",\n" + 
-                    "       ZNAME            AS \"制单人_FName\",\n" + 
-                    "       NUMBERNO         AS \"编号\",\n" + 
-                    "       SNAME            AS \"审核人_FName\",\n" + 
-                    "       HLZ              AS \"红蓝字\",\n" + 
-                    "       INVOICENO        AS \"单据号\",\n" + 
-                    "       ORGANIZATIONCODE AS \"领料部门 _FNumber\",\n" + 
-                    "       ORGANIZATIONNAME AS \"领料部门 _FName\",\n" + 
-                    "       USERING          AS \"用途\",\n" + 
-                    "       CNUM1            AS \"领料 _FNumber\",\n" + 
-                    "       CNUM2            AS \"领料 _FName\",\n" + 
-                    "       CNUM2            AS \"领料 _FName\",\n" + 
-                    "       CNUM3            AS \"发货 _FNumber\",\n" + 
-                    "       CNUM4            AS \"发货 _FName\",\n" + 
-                    "       CNUM5            AS \"客户 _FNumber\",\n" + 
-                    "       CNUM6            AS \"客户 _FName\",\n" + 
-                    "       CNUM7            AS \"出库类型_FNumber\"\n" + 
-                    "  FROM JZ_RPT027\n" + 
-                    " WHERE FORWARDTIME >= @BEGINMONTH@\n" + 
-                    "   AND FORWARDTIME <= @ENDMONTH@\n" + 
-                    "   AND (FNAME_FLAG = @FNAME_FLAG@ OR @FNAME_FLAG@ is null)";
+
+                string sqlString = "SELECT \"DATE1\"            AS \"审核日期\",\n" +
+                "       DATE2            AS \"日期\",\n" +
+                "       ZNAME            AS \"制单人_FName\",\n" +
+                "       NUMBERNO         AS \"编号\",\n" +
+                "       SNAME            AS \"审核人_FName\",\n" +
+                "       HLZ              AS \"红蓝字\",\n" +
+                "       INVOICENO        AS \"单据号\",\n" +
+                "       ORGANIZATIONCODE AS \"领料部门 _FNumber\",\n" +
+                "       ORGANIZATIONNAME AS \"领料部门 _FName\",\n" +
+                "       USERING          AS \"用途\",\n" +
+                "       CNUM1            AS \"领料 _FNumber\",\n" +
+                "       CNUM2            AS \"领料 _FName\",\n" +
+                "       CNUM2            AS \"领料 _FName\",\n" +
+                "       CNUM3            AS \"发货 _FNumber\",\n" +
+                "       CNUM4            AS \"发货 _FName\",\n" +
+                "       CNUM5            AS \"客户 _FNumber\",\n" +
+                "       CNUM6            AS \"客户 _FName\",\n" +
+                "       CNUM7            AS \"出库类型_FNumber\"\n" +
+                "  FROM JZ_RPT027\n" +
+                " WHERE FORWARDTIME >= @BEGINMONTH@\n" +
+                "   AND FORWARDTIME <= @ENDMONTH@\n" +
+                "   AND (FNAME_FLAG = @FNAME_FLAG@ OR @FNAME_FLAG@ is null)";
 
                 //获取查询条件
                 List<CDAParameter> sqlPara = new List<CDAParameter>();
                 sqlPara.Add(new CDAParameter("BEGINMONTH", context.Request["datebeginMaster"].Substring(0, context.Request["datebeginMaster"].IndexOf("-")) + context.Request["datebeginMaster"].Substring(context.Request["datebeginMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-				sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-                sqlPara.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"]+ ""));
+                sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
+                sqlPara.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"] + ""));
 
                 //直接获取不分页数据
                 DataTable dt = conn.ExecuteDatatable(sqlString, sqlPara.ToArray());
@@ -472,41 +477,41 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 
                 context.Response.Write(jsonStr);
             }
-            if (context.Request["m"] =="jiezhuandetial")
+            if (context.Request["m"] == "jiezhuandetial")
             {
-                
-                    string sqlString = "SELECT CNUM1  AS \"行号\",\n" +
-                    "       CNUM2  AS \"单据号_FBillno\",\n" + 
-                    "       CNUM3  AS \"单据号_FTrantype\",\n" + 
-                    "       CNUM4  AS \"产品代码_FNumber\",\n" + 
-                    "       CNUM5  AS \"产品代码_FName\",\n" + 
-                    "       CNUM6  AS \"产品代码_FModel\",\n" + 
-                    "       CNUM7  AS \"辅助属性_FNumber\",\n" + 
-                    "       CNUM8  AS \"辅助属性_FName\",\n" + 
-                    "       CNUM9  AS \"辅助属性_FClassName\",\n" + 
-                    "       CNUM10 AS \"单位_FNumber\",\n" + 
-                    "       CNUM11 AS \"单位_FName\",\n" + 
-                    "       CNUM12 AS \"单价\",\n" + 
-                    "       CNUM13 AS \"数量\",\n" + 
-                    "       CNUM14 AS \"金额\",\n" + 
-                    "       CNUM15 AS \"备注\",\n" + 
-                    "       CNUM16 AS \"基本单位数量\",\n" + 
-                    "       CNUM17 AS \"生产_采购日期\",\n" + 
-                    "       CNUM18 AS \"发货仓库_FNumber\",\n" + 
-                    "       CNUM19 AS \"发货仓库_FName\",\n" + 
-                    "       CNUM20 AS \"仓位_FName\",\n" + 
-                    "       CNUM21 AS \"仓位_FGroupName\"\n" + 
-                    "  FROM JZ_RPT027_D\n" + 
-                    " WHERE FORWARDTIME >= @BEGINMONTH@\n" + 
-                    "   AND FORWARDTIME <= @ENDMONTH@\n" + 
-                    "   AND (@FNAME_FLAG@ IS NULL OR FNAME_FLAG = @FNAME_FLAG@)"+
-                    " ORDER BY CNUM4, CNUM5, CNUM19";
 
-                     //获取查询条件
+                string sqlString = "SELECT CNUM1  AS \"行号\",\n" +
+                "       CNUM2  AS \"单据号_FBillno\",\n" +
+                "       CNUM3  AS \"单据号_FTrantype\",\n" +
+                "       CNUM4  AS \"产品代码_FNumber\",\n" +
+                "       CNUM5  AS \"产品代码_FName\",\n" +
+                "       CNUM6  AS \"产品代码_FModel\",\n" +
+                "       CNUM7  AS \"辅助属性_FNumber\",\n" +
+                "       CNUM8  AS \"辅助属性_FName\",\n" +
+                "       CNUM9  AS \"辅助属性_FClassName\",\n" +
+                "       CNUM10 AS \"单位_FNumber\",\n" +
+                "       CNUM11 AS \"单位_FName\",\n" +
+                "       CNUM12 AS \"单价\",\n" +
+                "       CNUM13 AS \"数量\",\n" +
+                "       CNUM14 AS \"金额\",\n" +
+                "       CNUM15 AS \"备注\",\n" +
+                "       CNUM16 AS \"基本单位数量\",\n" +
+                "       CNUM17 AS \"生产_采购日期\",\n" +
+                "       CNUM18 AS \"发货仓库_FNumber\",\n" +
+                "       CNUM19 AS \"发货仓库_FName\",\n" +
+                "       CNUM20 AS \"仓位_FName\",\n" +
+                "       CNUM21 AS \"仓位_FGroupName\"\n" +
+                "  FROM JZ_RPT027_D\n" +
+                " WHERE FORWARDTIME >= @BEGINMONTH@\n" +
+                "   AND FORWARDTIME <= @ENDMONTH@\n" +
+                "   AND (@FNAME_FLAG@ IS NULL OR FNAME_FLAG = @FNAME_FLAG@)" +
+                " ORDER BY CNUM4, CNUM5, CNUM19";
+
+                //获取查询条件
                 List<CDAParameter> sqlPara = new List<CDAParameter>();
                 sqlPara.Add(new CDAParameter("BEGINMONTH", context.Request["datebeginMaster"].Substring(0, context.Request["datebeginMaster"].IndexOf("-")) + context.Request["datebeginMaster"].Substring(context.Request["datebeginMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-				sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-                sqlPara.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"]+ ""));
+                sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
+                sqlPara.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"] + ""));
 
                 //直接获取不分页数据
                 DataTable dt = conn.ExecuteDatatable(sqlString, sqlPara.ToArray());

+ 31 - 28
wwwroot/mes/rpt/rpt028/rpt.ashx

@@ -7,8 +7,7 @@ using System.Data;
 using System.Text;
 using System.Collections;
 using System.Collections.Generic;
-using Newtonsoft.Json;
-using Newtonsoft.Json.Linq;
+using System.Configuration;
 using Curtain.DataAccess;
 using DK.XuWei.WebMes;
 
@@ -16,6 +15,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 {
     public void ProcessRequest(HttpContext context)
     {
+        // 验厂标识 true:  false:
+        string strFactoryInspectionFlag = ConfigurationManager.AppSettings["FactoryInspectionFlag"] + "";
         // 合并到一期
         context.Response.ContentType = "text/plain";
         using (IDataAccess conn = DataAccess.Create())
@@ -127,6 +128,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 "          FROM TP_PM_PRODUCTIONDATA TS\n" +
                 "         WHERE TS.BACKOUTTIME >= @DATEBEGIN@\n" +
                 "           AND TS.BACKOUTTIME < @DATEEND@\n" +
+                  ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where TS.BACKOUTTIME  >= thc.DAY_YMD_START and TS.BACKOUTTIME   < thc.DAY_YMD_END )  " : " ")   + 
                 "           AND TS.PROCEDUREID IN (28, 24,34, 21, 31)) T\n" + //13 质量登记不能撤销
                 " WHERE (@FNAME_FLAG@ IS NULL OR T.FNAME_FLAG = @FNAME_FLAG@) \n" +
                 " GROUP BY T.FNAME_CODE, T.FNAME, T.FNAME_FLAG\n" +
@@ -137,7 +139,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 sqlPara.Add(new CDAParameter("DATEOUT", Convert.ToDateTime(context.Request["dateendMaster"]), DataType.DateTime));
                 sqlPara.Add(new CDAParameter("DATEBEGIN", Convert.ToDateTime(context.Request["datebeginMaster"]), DataType.DateTime));
                 sqlPara.Add(new CDAParameter("DATEEND", Convert.ToDateTime(context.Request["dateendMaster"]).AddDays(1), DataType.DateTime));
-                sqlPara.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"]+ ""));
+                sqlPara.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"] + ""));
 
                 //直接获取不分页数据
                 DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
@@ -227,6 +229,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                     "            ON TS.GOODSID = G.GOODSID\n" +
                     "         WHERE TS.BACKOUTTIME >= @DATEBEGIN@\n" +
                     "           AND TS.BACKOUTTIME < @DATEEND@\n" +
+                      ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where TS.BACKOUTTIME  >= thc.DAY_YMD_START and TS.BACKOUTTIME   < thc.DAY_YMD_END )  " : " ")   + 
                     "           AND TS.PROCEDUREID IN (28, 24,34, 21, 31)) T\n" + //13 质量登记不能撤销
                     " LEFT JOIN TA_IMEX_kingdee_Goodscode K ON T.GOODS_CODE = K.K_NAME AND T.FNAME = K.K_WAREHOUSE\n" +
                     " LEFT JOIN TA_IMEX_kingdee_Goodscode K2 ON K2.K_NAME = T.GOODS_CODE2 AND K2.buildingno = K.buildingno\n" +
@@ -238,7 +241,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 List<CDAParameter> sqlPara = new List<CDAParameter>();
                 sqlPara.Add(new CDAParameter("DATEBEGIN", Convert.ToDateTime(context.Request["datebeginMaster"]), DataType.DateTime));
                 sqlPara.Add(new CDAParameter("DATEEND", Convert.ToDateTime(context.Request["dateendMaster"]).AddDays(1), DataType.DateTime));
-                sqlPara.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"]+ ""));
+                sqlPara.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"] + ""));
 
                 //直接获取不分页数据
                 DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
@@ -246,44 +249,44 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 
                 context.Response.Write(jsonStr);
             }
-             if(context.Request["m"].ToString() == "jiezhauang")
+            if (context.Request["m"].ToString() == "jiezhauang")
             {
                 //2021-8-2 dongyan  新增结转功能 选择结转checkbox 查询结转数据
                 //将数据插入到 JZ_RPT028 并通过条件查询结转数据
                 //2021-8-02 dongyan 添加全条件查询
-                string sqlStr = @"SELECT SDATE AS" +" " +"审核日期,"+
-    "CDATE AS" +" " +"\"日期\","+
-    "PREPARE_FNAME AS" +" " +"\"制单人_FName\","+
-    "NO AS" +" "+"\"编 号\"," +
-    "SH_FNAME AS " + " " +"\"审核人 _FName\"," +
-    "HL_CHARACTERS AS" +" " +"\"红蓝字\"," +
-    "OBJ_TYPE AS" +" " +"\"事务类型\"," +
-    "BILL_NO AS" +" " +"\"单据号\"," +
-    "LLBM_FNUMBER AS" +" " +"\"领料部门_FNumber\"," +
-    "LLBM_FNAME AS" + " " +"\"领料部门_FName\"," +
-    "PURPOSE AS " +" " +"\"领料用途\"," +
-    "LL_FNUMBER AS " +" "+"\"领料_FNumber\"," +
-    "LL_FNAME AS" +" "+"\"领料_FName\"," +
-    "FL_FNUMBER AS " + " " +"\"发料_FNumber\"," +
+                string sqlStr = @"SELECT SDATE AS" + " " + "审核日期," +
+    "CDATE AS" + " " + "\"日期\"," +
+    "PREPARE_FNAME AS" + " " + "\"制单人_FName\"," +
+    "NO AS" + " " + "\"编 号\"," +
+    "SH_FNAME AS " + " " + "\"审核人 _FName\"," +
+    "HL_CHARACTERS AS" + " " + "\"红蓝字\"," +
+    "OBJ_TYPE AS" + " " + "\"事务类型\"," +
+    "BILL_NO AS" + " " + "\"单据号\"," +
+    "LLBM_FNUMBER AS" + " " + "\"领料部门_FNumber\"," +
+    "LLBM_FNAME AS" + " " + "\"领料部门_FName\"," +
+    "PURPOSE AS " + " " + "\"领料用途\"," +
+    "LL_FNUMBER AS " + " " + "\"领料_FNumber\"," +
+    "LL_FNAME AS" + " " + "\"领料_FName\"," +
+    "FL_FNUMBER AS " + " " + "\"发料_FNumber\"," +
     "FL_FNAME AS " + " " + "\"发料_FName\"," +
      "DC_FLAG AS " + " " + "\"倒冲标记\"\n" +
-"FROM" +"\n" +
-    "JZ_RPT028_M" +"\n" +
+"FROM" + "\n" +
+    "JZ_RPT028_M" + "\n" +
     "WHERE (@FNAME_FLAG@ IS NULL OR FNAME_FLAG = @FNAME_FLAG@)\n" +
-    "AND FORWARDTIME >= @BEGINMONTH@\n"+
+    "AND FORWARDTIME >= @BEGINMONTH@\n" +
     "AND FORWARDTIME <= @ENDMONTH@";
                 //获取查询条件
                 List<CDAParameter> sqlPara = new List<CDAParameter>();
                 sqlPara.Add(new CDAParameter("BEGINMONTH", context.Request["datebeginMaster"].Substring(0, context.Request["datebeginMaster"].IndexOf("-")) + context.Request["datebeginMaster"].Substring(context.Request["datebeginMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-				sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-                sqlPara.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"]+ ""));
+                sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
+                sqlPara.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"] + ""));
                 //直接获取不分页数据
                 DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
                 string jsonStr = new JsonResult(dt) { total = dt.Rows.Count }.ToJson();
 
                 context.Response.Write(jsonStr);
             }
-            if(context.Request["m"].ToString() == "jiezhuan")
+            if (context.Request["m"].ToString() == "jiezhuan")
             {
                 //2021-8-2 dongyan  新增结转功能 选择结转checkbox 查询结转数据
                 //数据插入到 JZ_RPT028 并通过条件查询结转数据
@@ -327,11 +330,11 @@ public class rpt : IHttpHandler, IReadOnlySessionState
     "AND FORWARDTIME <= @ENDMONTH@\n" +
     "GROUP BY\n" +
     "GROUPING SETS((INTERNAL_CODE,ROW_NO,BILL_NO_FBILLNO,BILL_NO_FTRANTYPE,K_CODE,GOODS_CODE,GOODS_CODE_MO,AUXILIARY_FNUMBER,AUXILIARY_FNAME,AUXILIARY_FCLASSNAME,K_CODES,GOODS_CODES,CBDX_FITEMCLASSID,CBDXZ_FNUMBER,CBDXZ_FNAME,CBDXZ_FITEMCLASSID,UNIT_FNUMBER,UNIT_NAME,PRICE,BATCHNO,QUOTA,CUSTOMER_BOM,REMARK,PRODUCE_DATE,EFF_DATE,FLCK_FNUMBER,FLCK_FNAME,STORING_FNAME,STORING_FGROUPNAME,AUXILIARY_NUM))";
-                       //获取查询条件
+                //获取查询条件
                 List<CDAParameter> sqlPara = new List<CDAParameter>();
                 sqlPara.Add(new CDAParameter("BEGINMONTH", context.Request["datebeginMaster"].Substring(0, context.Request["datebeginMaster"].IndexOf("-")) + context.Request["datebeginMaster"].Substring(context.Request["datebeginMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-				sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-                sqlPara.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"]+ ""));
+                sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
+                sqlPara.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"] + ""));
                 //直接获取不分页数据
                 DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
                 string jsonStr = new JsonResult(dt) { total = dt.Rows.Count }.ToJson();

+ 13 - 10
wwwroot/mes/rpt/rpt029/rpt.ashx

@@ -7,8 +7,7 @@ using System.Data;
 using System.Text;
 using System.Collections;
 using System.Collections.Generic;
-using Newtonsoft.Json;
-using Newtonsoft.Json.Linq;
+using System.Configuration;
 using Curtain.DataAccess;
 using DK.XuWei.WebMes;
 
@@ -16,6 +15,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 {
     public void ProcessRequest(HttpContext context)
     {
+        // 验厂标识 true:  false:
+        string strFactoryInspectionFlag = ConfigurationManager.AppSettings["FactoryInspectionFlag"] + "";
         // 合并到一期
         context.Response.ContentType = "text/plain";
         using (IDataAccess conn = DataAccess.Create())
@@ -121,6 +122,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 "          FROM TP_PM_PRODUCTIONDATA TS\n" +
                 "         WHERE TS.BACKOUTTIME >= @DATEBEGIN@\n" +
                 "           AND TS.BACKOUTTIME < @DATEEND@\n" +
+                ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where TS.BACKOUTTIME  >= thc.DAY_YMD_START and TS.BACKOUTTIME   < thc.DAY_YMD_END )  " : " ")  +
                 "           AND TS.PROCEDUREID IN (3, 26, 28, 24,34, 21, 31)\n" +
                 ") T\n" +
                 " WHERE (@FNAME_FLAG@ IS NULL OR T.FNAME_FLAG = @FNAME_FLAG@) \n" +
@@ -133,7 +135,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 sqlPara_z.Add(new CDAParameter("DATEOUT", Convert.ToDateTime(context.Request["dateendMaster"]), DataType.DateTime));
                 sqlPara_z.Add(new CDAParameter("DATEBEGIN", Convert.ToDateTime(context.Request["datebeginMaster"]), DataType.DateTime));
                 sqlPara_z.Add(new CDAParameter("DATEEND", Convert.ToDateTime(context.Request["dateendMaster"]).AddDays(1), DataType.DateTime));
-                sqlPara_z.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"]+ ""));
+                sqlPara_z.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"] + ""));
 
                 //直接获取不分页数据
                 DataTable dt_z = conn.ExecuteDatatable(sqlString, sqlPara_z.ToArray());
@@ -204,7 +206,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                     "            ON TS.GOODSID = G.GOODSID\n" +
                     "         WHERE TS.BACKOUTTIME >= @DATEBEGIN@\n" +
                     "           AND TS.BACKOUTTIME < @DATEEND@\n" +
-                    "           AND TS.PROCEDUREID IN (3, 26, 28, 24,34, 21, 31)\n" +
+                    ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where TS.BACKOUTTIME  >= thc.DAY_YMD_START and TS.BACKOUTTIME   < thc.DAY_YMD_END )  " : " ")  +
+                    "           AND TS.PROCEDUREID IN (3, 26, 28, 24,34, 21, 31) \n" +
                     ") T\n" +
                     " LEFT JOIN TA_IMEX_kingdee_Goodscode K ON T.GOODS_CODE = K.K_NAME AND T.FNAME = K.K_WAREHOUSE\n" +
                     " GROUP BY K.K_CODE, T.GOODS_CODE, T.FNAME\n" +
@@ -215,7 +218,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 
                 sqlPara.Add(new CDAParameter("DATEBEGIN", Convert.ToDateTime(context.Request["datebeginMaster"]), DataType.DateTime));
                 sqlPara.Add(new CDAParameter("DATEEND", Convert.ToDateTime(context.Request["dateendMaster"]).AddDays(1), DataType.DateTime));
-                sqlPara.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"]+ ""));
+                sqlPara.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"] + ""));
 
                 //直接获取不分页数据
                 DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
@@ -225,7 +228,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 context.Response.Write(jsonStr);
             }
 
-            if(context.Request["m"].ToString() == "jiezhauang")
+            if (context.Request["m"].ToString() == "jiezhauang")
             {
                 //2021-8-4 dongyan  新增结转功能 选择结转checkbox 查询结转数据
                 //数据插入到 JZ_RPT020_M
@@ -254,15 +257,15 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 //获取查询条件
                 List<CDAParameter> sqlPara = new List<CDAParameter>();
                 sqlPara.Add(new CDAParameter("BEGINMONTH", context.Request["datebeginMaster"].Substring(0, context.Request["datebeginMaster"].IndexOf("-")) + context.Request["datebeginMaster"].Substring(context.Request["datebeginMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-				sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-                sqlPara.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"]+ ""));
+                sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
+                sqlPara.Add(new CDAParameter("FNAME_FLAG", context.Request["warehouseMaster"] + ""));
                 //直接获取不分页数据
                 DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
                 string jsonStr = new JsonResult(dt) { total = dt.Rows.Count }.ToJson();
 
                 context.Response.Write(jsonStr);
             }
-            if(context.Request["m"].ToString() == "jiezhuan")
+            if (context.Request["m"].ToString() == "jiezhuan")
             {
                 //2021-8-4 dongyan  新增结转功能 选择结转checkbox 查询结转数据
                 //将数据插入到 JZ_RPT020_D 并通过条件查询结转数据
@@ -277,7 +280,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 //获取查询条件
                 List<CDAParameter> sqlPara = new List<CDAParameter>();
                 sqlPara.Add(new CDAParameter("BEGINMONTH", context.Request["datebeginMaster"].Substring(0, context.Request["datebeginMaster"].IndexOf("-")) + context.Request["datebeginMaster"].Substring(context.Request["datebeginMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-				sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
+                sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
                 //直接获取不分页数据
                 DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
                 string jsonStr = new JsonResult(dt) { total = dt.Rows.Count }.ToJson();

+ 84 - 81
wwwroot/mes/rpt/rpt030/rpt.ashx

@@ -7,8 +7,7 @@ using System.Data;
 using System.Text;
 using System.Collections;
 using System.Collections.Generic;
-using Newtonsoft.Json;
-using Newtonsoft.Json.Linq;
+using System.Configuration;
 using Curtain.DataAccess;
 using DK.XuWei.WebMes;
 
@@ -16,6 +15,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 {
     public void ProcessRequest(HttpContext context)
     {
+        // 验厂标识 true:  false:
+        string strFactoryInspectionFlag = ConfigurationManager.AppSettings["FactoryInspectionFlag"] + "";
         context.Response.ContentType = "text/plain";
         using (IDataAccess conn = DataAccess.Create())
         {
@@ -23,14 +24,14 @@ public class rpt : IHttpHandler, IReadOnlySessionState
             if (context.Request["m"].ToString() == "master")
             {
                 //读取报表数据
-/*
-38 二期转一期
-39 一期转二期
-编    号
-审核人_FName
-事务类型
-单据号
-*/
+                /*
+                38 二期转一期
+                39 一期转二期
+                编    号
+                审核人_FName
+                事务类型
+                单据号
+                */
                 string sqlStr =
                 "SELECT to_char(@DATEOUT@, 'yyyy-mm-dd') AS 审核日期\n" +
                 "      ,to_char(@DATEOUT@, 'yyyy-mm-dd') AS 日期\n" +
@@ -59,6 +60,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 "          FROM TP_PM_PRODUCTIONDATA TS\n" +
                 "         WHERE TS.CREATETIME >= @DATEBEGIN@\n" +
                 "           AND TS.CREATETIME < @DATEEND@\n" +
+                ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where TS.CREATETIME  >= thc.DAY_YMD_START and TS.CREATETIME   < thc.DAY_YMD_END )  " : " ")   +
                 "           AND TS.PROCEDUREID IN (38,39))\n";
 
                 //获取查询条件
@@ -91,7 +93,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                     "       ,'*' AS \"辅助属性_FClassName\"\n" +
                     "       ,0 AS \"基本缺省调拨数量\"\n" +
                     "       ,0 AS \"基本调入仓库存量\"\n" +
-                    "       ,'' AS \"批号\"\n" +                    
+                    "       ,'' AS \"批号\"\n" +
                     "       ,'个' AS \"单位_FNumber\"\n" +
                     "       ,'个' AS \"单位_FName\"\n" +
                     "       ,0 AS \"缺省调拨数量\"\n" +
@@ -153,6 +155,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                     "            ON TS.GOODSID = G.GOODSID\n" +
                     "         WHERE TS.CREATETIME >= @DATEBEGIN@\n" +
                     "           AND TS.CREATETIME < @DATEEND@\n" +
+                    ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where TS.CREATETIME  >= thc.DAY_YMD_START and TS.CREATETIME   < thc.DAY_YMD_END )  " : " ")   +
                     "           AND TS.PROCEDUREID IN (38,39) ) T\n" +
                     " LEFT JOIN TA_IMEX_kingdee_Goodscode K ON T.GOODS_CODE = K.K_NAME AND T.FNAME_OUT = K.K_WAREHOUSE\n" +
                     //" WHERE (@FNAME_FLAG@ IS NULL OR T.FNAME = @FNAME_FLAG@) \n" +
@@ -174,35 +177,35 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 
             if (context.Request["m"] == "jiezhuan")
             {
-                    string sqlStr =
-                "SELECT to_char(@DATEEND@, 'yyyy-mm-dd') AS 审核日期\n" +
-                "      ,to_char(@DATEEND@, 'yyyy-mm-dd') AS 日期\n" +
-                "      ,'张迪' AS \"制单人_FName\"\n" +
-                "       ,'' AS \"编    号\"\n" +
-                "       ,'张迪' AS \"审核人_FName\"\n" +
-                "       ,'' AS \"制单机构_FNumber\"\n" +
-                "       ,'' AS \"制单机构_FName\"\n" +
-                "       ,'41' AS \"事务类型\"\n" +
-                "       ,'' AS \"单据号\"\n" +
-                "       ,'01.094' AS \"验收_FNumber\"\n" +
-                "       ,'张迪' AS \"验收_FName\"\n" +
-                "       ,'01.094' AS \"保管_FNumber\"\n" +
-                "       ,'张迪' AS \"保管_FName\"\n" +
-                "       ,'0' AS \"源单类型\"\n" +
-                "       ,'' AS \"部门_FNumber\"\n" +
-                "       ,'' AS \"部门_FName\"\n" +
-                "       ,'' AS \"业务员_FNumber\"\n" +
-                "       ,'' AS \"业务员_FName\"\n" +
-                "       ,'01' AS \"调拨类型_FID\"\n" +
-                "       ,'同价调拨' AS \"调拨类型_FName\"\n" +
-                "       ,'433' AS \"调拨类型_FTypeID\"\n" +
-                "       ,'0' AS \"打印次数\"\n" +
-                "       ,'' AS \"合同号:\"\n" +
-                "  FROM DUAL WHERE EXISTS (SELECT 1 D\n" +
-                "          FROM TP_PM_PRODUCTIONDATA TS\n" +
-                "         WHERE TS.CREATETIME >= @DATEBEGIN@\n" +
-                "           AND TS.CREATETIME < @DATEEND@\n" +
-                "           AND TS.PROCEDUREID IN (38,39))\n";
+                string sqlStr =
+            "SELECT to_char(@DATEEND@, 'yyyy-mm-dd') AS 审核日期\n" +
+            "      ,to_char(@DATEEND@, 'yyyy-mm-dd') AS 日期\n" +
+            "      ,'张迪' AS \"制单人_FName\"\n" +
+            "       ,'' AS \"编    号\"\n" +
+            "       ,'张迪' AS \"审核人_FName\"\n" +
+            "       ,'' AS \"制单机构_FNumber\"\n" +
+            "       ,'' AS \"制单机构_FName\"\n" +
+            "       ,'41' AS \"事务类型\"\n" +
+            "       ,'' AS \"单据号\"\n" +
+            "       ,'01.094' AS \"验收_FNumber\"\n" +
+            "       ,'张迪' AS \"验收_FName\"\n" +
+            "       ,'01.094' AS \"保管_FNumber\"\n" +
+            "       ,'张迪' AS \"保管_FName\"\n" +
+            "       ,'0' AS \"源单类型\"\n" +
+            "       ,'' AS \"部门_FNumber\"\n" +
+            "       ,'' AS \"部门_FName\"\n" +
+            "       ,'' AS \"业务员_FNumber\"\n" +
+            "       ,'' AS \"业务员_FName\"\n" +
+            "       ,'01' AS \"调拨类型_FID\"\n" +
+            "       ,'同价调拨' AS \"调拨类型_FName\"\n" +
+            "       ,'433' AS \"调拨类型_FTypeID\"\n" +
+            "       ,'0' AS \"打印次数\"\n" +
+            "       ,'' AS \"合同号:\"\n" +
+            "  FROM DUAL WHERE EXISTS (SELECT 1 D\n" +
+            "          FROM TP_PM_PRODUCTIONDATA TS\n" +
+            "         WHERE TS.CREATETIME >= @DATEBEGIN@\n" +
+            "           AND TS.CREATETIME < @DATEEND@\n" +
+            "           AND TS.PROCEDUREID IN (38,39))\n";
 
                 //获取查询条件
                 List<CDAParameter> sqlPara = new List<CDAParameter>();
@@ -218,50 +221,50 @@ public class rpt : IHttpHandler, IReadOnlySessionState
             }
             if (context.Request["m"] == "jiezhuandetial")
             {
-                    
-                            string sqlString = "SELECT\n" +
-                            "\tCNUM0 AS \"行号\",\n" + 
-                            "\tCNUM1 AS \"单据号 _FBillno\",\n" + 
-                            "\tCNUM2 AS \"单据号 _FTrantype\",\n" + 
-                            "\tCNUM3 AS \"物料代码 _FNumber\",\n" + 
-                            "\tCNUM4 AS \"物料代码 _FName\",\n" + 
-                            "\tCNUM5 AS \"物料代码 _FModel\",\n" + 
-                            "\tCNUM6 AS \"辅助属性 _FNumber\",\n" + 
-                            "\tCNUM7 AS \"辅助属性 _FName\",\n" + 
-                            "\tCNUM8 AS \"辅助属性 _FClassName\",\n" + 
-                            "\tCNUM9 AS \"基本缺省调拨数量\",\n" + 
-                            "\tCNUM10 AS \"基本调入仓库存量\",\n" + 
-                            "\tCNUM11 AS \"批号\",\n" + 
-                            "\tCNUM12 AS \"单位 _FNumber\",\n" + 
-                            "\tCNUM13 AS \"单位 _FName\",\n" + 
-                            "\tCNUM14 AS \"缺省调拨数量\",\n" + 
-                            "\tCNUM15 AS \"调入仓库存量\",\n" + 
-                            "\tCNUM16 AS \"数量\",\n" + 
-                            "\tCNUM17 AS \"单位成本\",\n" + 
-                            "\tCNUM18 AS \"基本单位数量\",\n" + 
-                            "\tCNUM19 AS \"成本\",\n" + 
-                            "\tCNUM20 AS \"调拨单价\",\n" + 
-                            "\tCNUM21 AS \"调拨金额\",\n" + 
-                            "\tCNUM22 AS \"备注\",\n" + 
-                            "\tCNUM23 AS \"生产 _采购日期\",\n" + 
-                            "\tCNUM24 AS \"保质期(天)\",\n" + 
-                            "\tCNUM25 AS \"有效期至\",\n" + 
-                            "\tCNUM26 AS \"调出仓库 _FNumber\",\n" + 
-                            "\tCNUM27 AS \"调出仓库 _FName\",\n" + 
-                            "\tCNUM28 AS \"调出仓位 _FName\",\n" + 
-                            "\tCNUM29 AS \"调入仓库 _FNumber\",\n" + 
-                            "\tCNUM30 AS \"调入仓库 _FName\",\n" + 
-                            "\tCNUM31 AS \"辅助数量 \"\n" + 
-                            "FROM\n" + 
-                            "\tJZ_RPT030\n" + 
-                            "WHERE\n" + 
-                            "\tFORWARDTIME >= @BEGINMONTH@\n" + 
-                            "\tAND FORWARDTIME <= @ENDMONTH@";
 
-                    //获取查询条件
+                string sqlString = "SELECT\n" +
+                "\tCNUM0 AS \"行号\",\n" +
+                "\tCNUM1 AS \"单据号 _FBillno\",\n" +
+                "\tCNUM2 AS \"单据号 _FTrantype\",\n" +
+                "\tCNUM3 AS \"物料代码 _FNumber\",\n" +
+                "\tCNUM4 AS \"物料代码 _FName\",\n" +
+                "\tCNUM5 AS \"物料代码 _FModel\",\n" +
+                "\tCNUM6 AS \"辅助属性 _FNumber\",\n" +
+                "\tCNUM7 AS \"辅助属性 _FName\",\n" +
+                "\tCNUM8 AS \"辅助属性 _FClassName\",\n" +
+                "\tCNUM9 AS \"基本缺省调拨数量\",\n" +
+                "\tCNUM10 AS \"基本调入仓库存量\",\n" +
+                "\tCNUM11 AS \"批号\",\n" +
+                "\tCNUM12 AS \"单位 _FNumber\",\n" +
+                "\tCNUM13 AS \"单位 _FName\",\n" +
+                "\tCNUM14 AS \"缺省调拨数量\",\n" +
+                "\tCNUM15 AS \"调入仓库存量\",\n" +
+                "\tCNUM16 AS \"数量\",\n" +
+                "\tCNUM17 AS \"单位成本\",\n" +
+                "\tCNUM18 AS \"基本单位数量\",\n" +
+                "\tCNUM19 AS \"成本\",\n" +
+                "\tCNUM20 AS \"调拨单价\",\n" +
+                "\tCNUM21 AS \"调拨金额\",\n" +
+                "\tCNUM22 AS \"备注\",\n" +
+                "\tCNUM23 AS \"生产 _采购日期\",\n" +
+                "\tCNUM24 AS \"保质期(天)\",\n" +
+                "\tCNUM25 AS \"有效期至\",\n" +
+                "\tCNUM26 AS \"调出仓库 _FNumber\",\n" +
+                "\tCNUM27 AS \"调出仓库 _FName\",\n" +
+                "\tCNUM28 AS \"调出仓位 _FName\",\n" +
+                "\tCNUM29 AS \"调入仓库 _FNumber\",\n" +
+                "\tCNUM30 AS \"调入仓库 _FName\",\n" +
+                "\tCNUM31 AS \"辅助数量 \"\n" +
+                "FROM\n" +
+                "\tJZ_RPT030\n" +
+                "WHERE\n" +
+                "\tFORWARDTIME >= @BEGINMONTH@\n" +
+                "\tAND FORWARDTIME <= @ENDMONTH@";
+
+                //获取查询条件
                 List<CDAParameter> sqlPara = new List<CDAParameter>();
                 sqlPara.Add(new CDAParameter("BEGINMONTH", context.Request["datebeginMaster"].Substring(0, context.Request["datebeginMaster"].IndexOf("-")) + context.Request["datebeginMaster"].Substring(context.Request["datebeginMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-				sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
+                sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
 
                 //直接获取不分页数据
                 DataTable dt = conn.ExecuteDatatable(sqlString, sqlPara.ToArray());

+ 5 - 3
wwwroot/mes/rpt/rpt031/rpt.ashx

@@ -7,8 +7,7 @@ using System.Data;
 using System.Text;
 using System.Collections;
 using System.Collections.Generic;
-using Newtonsoft.Json;
-using Newtonsoft.Json.Linq;
+using System.Configuration;
 using Curtain.DataAccess;
 using DK.XuWei.WebMes;
 
@@ -19,6 +18,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
         context.Response.ContentType = "text/plain";
         using (IDataAccess conn = DataAccess.Create())
         {
+            // 验厂标识 true:  false:
+            string strFactoryInspectionFlag = ConfigurationManager.AppSettings["FactoryInspectionFlag"] + "";
             //主表
             if (context.Request["m"].ToString() == "master")
             {
@@ -95,6 +96,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                     "           AND PD.VALUEFLAG = '1'\n" +
                     "           AND PD.CREATETIME >= @DATEBEGIN@ \n" +
                     "           AND PD.CREATETIME <= @DATEEND@ \n" +
+                     ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where PD.CREATETIME  >= thc.DAY_YMD_START and PD.CREATETIME   < thc.DAY_YMD_END )  " : " ")  +
                     "           AND MPD.PRODUCTIONDATAID > PD.PRODUCTIONDATAID\n" +
                     "           AND MPD.MODELTYPE = -1\n" +
                     "           AND MPD.VALUEFLAG = '1'\n" +
@@ -237,7 +239,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 List<CDAParameter> sqlPara = new List<CDAParameter>();
                 sqlPara.Add(new CDAParameter("BUILDINGNO", context.Request["buildingnoMaster"]));
                 sqlPara.Add(new CDAParameter("BEGINMONTH", context.Request["datebeginMaster"].Substring(0, context.Request["datebeginMaster"].IndexOf("-")) + context.Request["datebeginMaster"].Substring(context.Request["datebeginMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-				sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
+                sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
                 //获取分页参数
                 int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
                 int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;

+ 15 - 10
wwwroot/mes/rpt/rpt032/rpt.ashx

@@ -7,8 +7,7 @@ using System.Data;
 using System.Text;
 using System.Collections;
 using System.Collections.Generic;
-using Newtonsoft.Json;
-using Newtonsoft.Json.Linq;
+using System.Configuration;
 using Curtain.DataAccess;
 using DK.XuWei.WebMes;
 
@@ -17,7 +16,9 @@ public class rpt : IHttpHandler, IReadOnlySessionState
     public void ProcessRequest(HttpContext context)
     {
         context.Response.ContentType = "text/plain";
-        using(IDataAccess conn = DataAccess.Create())
+        // 验厂标识 true:  false:
+        string strFactoryInspectionFlag = ConfigurationManager.AppSettings["FactoryInspectionFlag"] + "";
+        using (IDataAccess conn = DataAccess.Create())
         {
             //主表
             if (context.Request["m"].ToString() == "master")
@@ -142,6 +143,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                            AND PD.CHECKFLAG = 1
                            AND PD.CREATETIME >= @DATEBEGIN@
                            AND PD.CREATETIME < @DATEEND@
+     " + ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where PD.CREATETIME >= thc.DAY_YMD_START and PD.CREATETIME < thc.DAY_YMD_END )  " : " ") + @"  
                            AND (PD.KILNID = @KILNID@ OR @KILNID@ IS NULL)
                            AND (PD.GOODSCODE = @GOODSCODE@ OR @GOODSCODE@ IS NULL)
                            AND GL.BUILDINGNO = @BUILDINGNO@
@@ -177,6 +179,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                            AND PD.CHECKBATCHNO = 1
                            AND PD.CREATETIME >= @DATEBEGIN@
                            AND PD.CREATETIME < @DATEEND@
+" + ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where PD.CREATETIME >= thc.DAY_YMD_START and PD.CREATETIME < thc.DAY_YMD_END )  " : " ") + @" 
                            AND (PD.KILNID = @KILNID@ OR @KILNID@ IS NULL)
                            AND (PD.GOODSCODE = @GOODSCODE@ OR @GOODSCODE@ IS NULL)
                            AND GL.BUILDINGNO = @BUILDINGNO@
@@ -232,6 +235,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                             AND P.CHECKBATCHNO = 1
                             AND P.CREATETIME >= @DATEBEGIN@
                             AND P.CREATETIME < @DATEEND@
+" + ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where P.CREATETIME >= thc.DAY_YMD_START and P.CREATETIME < thc.DAY_YMD_END )  " : " ") + @" 
                             AND P.GOODSLEVELTYPEID <> 4
                             AND (P.KILNID = @KILNID@ OR @KILNID@ IS NULL)
                             AND (P.GOODSCODE = @GOODSCODE@ OR @GOODSCODE@ IS NULL)
@@ -268,7 +272,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 		            OR ( TA.GID = 1 AND TA.GOODSTYPECODE = TD.D_GOODSTYPECODE ) 
 		            OR ( TA.GID = 3 )
 	            )
-                ".Replace("{DEFECT}", defectStr);
+                ";
+                sqlStr = sqlStr.Replace("{DEFECT}", defectStr);
 
 
                 //获取查询条件
@@ -299,7 +304,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 DataTable dt = conn.SelectPages(page, rows, out total, sqlStr, sqlPara.ToArray());
                 //直接获取不分页数据
                 // DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
-                if (dt != null &&dt.Rows.Count > 0)
+                if (dt != null && dt.Rows.Count > 0)
                 {
                     dt.Columns.Remove("D_GID");
                     dt.Columns.Remove("D_goodstypecode");
@@ -322,12 +327,12 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 
 
                 //string jsonStr = new JsonResult(dt) { total = dt.Rows.Count }.ToJson();
-                string jsonStr = new JsonResult(dt) { total = total}.ToJson();
+                string jsonStr = new JsonResult(dt) { total = total }.ToJson();
                 context.Response.Write(jsonStr);
             }
 
             //子表
-            if(context.Request["m"].ToString()=="detail")
+            if (context.Request["m"].ToString() == "detail")
             {
                 //读取报表数据
                 string sqlStr = @"
@@ -345,8 +350,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 
                 //获取分页数据    
                 int total = 0;
-                DataTable dt = conn.SelectPages(page, rows,out total, sqlStr, sqlPara.ToArray());
-                string jsonStr =  new JsonResult(dt) { total = total}.ToJson();
+                DataTable dt = conn.SelectPages(page, rows, out total, sqlStr, sqlPara.ToArray());
+                string jsonStr = new JsonResult(dt) { total = total }.ToJson();
 
                 context.Response.Write(jsonStr);
             }
@@ -359,7 +364,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 
                 string sqlStr = @"
 				SELECT";
-                sqlStr+= @"
+                sqlStr += @"
 	decode( jz.GOODSTYPENAME, NULL, '合计', jz.GOODSTYPENAME ) AS 产品类别,
 	jz.GOODSNAME AS 产品名称,
 	sum(jz.OUT_K) AS 出窑数,

+ 17 - 15
wwwroot/mes/rpt/rpt033/rpt.ashx

@@ -7,8 +7,7 @@ using System.Data;
 using System.Text;
 using System.Collections;
 using System.Collections.Generic;
-using Newtonsoft.Json;
-using Newtonsoft.Json.Linq;
+using System.Configuration;
 using Curtain.DataAccess;
 using DK.XuWei.WebMes;
 
@@ -16,11 +15,13 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 {
     public void ProcessRequest(HttpContext context)
     {
+        // 验厂标识 true:  false:
+        string strFactoryInspectionFlag = ConfigurationManager.AppSettings["FactoryInspectionFlag"] + "";
         context.Response.ContentType = "text/plain";
-        using(IDataAccess conn = DataAccess.Create())
+        using (IDataAccess conn = DataAccess.Create())
         {
             //主表
-            if(context.Request["m"].ToString()=="master")
+            if (context.Request["m"].ToString() == "master")
             {
                 //读取报表数据
                 string sqlStr = @"
@@ -58,6 +59,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 			                    AND PROCEDUREID = 15 
 			                    AND P.CREATETIME >= @DATEBEGIN@ 
 			                    AND P.CREATETIME <= @DATEEND@ 
+     " + ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where P.CREATETIME >= thc.DAY_YMD_START and P.CREATETIME < thc.DAY_YMD_END )  " : " ") + @"  
 		                    GROUP BY
 			                    GROUPING SETS (
 				                    ( U.USERCODE, H.STAFFNAME, J.JOBSNAME, T.GOODSTYPENAME ),
@@ -118,7 +120,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
             }
 
             //子表
-            if(context.Request["m"].ToString()=="detail")
+            if (context.Request["m"].ToString() == "detail")
             {
                 //读取报表数据
                 string sqlStr = @"
@@ -136,13 +138,13 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 
                 //获取分页数据    
                 int total = 0;
-                DataTable dt = conn.SelectPages(page, rows,out total, sqlStr, sqlPara.ToArray());
-                string jsonStr =  new JsonResult(dt) { total = total}.ToJson();
+                DataTable dt = conn.SelectPages(page, rows, out total, sqlStr, sqlPara.ToArray());
+                string jsonStr = new JsonResult(dt) { total = total }.ToJson();
 
                 context.Response.Write(jsonStr);
             }
-      		 if(context.Request["m"].ToString() == "jiezhauang")
-             {
+            if (context.Request["m"].ToString() == "jiezhauang")
+            {
                 //读取报表数据
                 string sqlStr = @"
                     SELECT
@@ -168,10 +170,10 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 List<CDAParameter> sqlPara = new List<CDAParameter>();
                 //sqlPara.Add(new CDAParameter("ACCOUNTID", context.Session["accountId"].ToString()));
 
-              //  sqlPara.Add(new CDAParameter("DATEBEGIN", Convert.ToDateTime(context.Request["datebeginMaster"]), DataType.DateTime));
-              //  sqlPara.Add(new CDAParameter("DATEEND", Convert.ToDateTime(context.Request["dateendMaster"]).AddSeconds(1), DataType.DateTime));
+                //  sqlPara.Add(new CDAParameter("DATEBEGIN", Convert.ToDateTime(context.Request["datebeginMaster"]), DataType.DateTime));
+                //  sqlPara.Add(new CDAParameter("DATEEND", Convert.ToDateTime(context.Request["dateendMaster"]).AddSeconds(1), DataType.DateTime));
                 sqlPara.Add(new CDAParameter("BEGINMONTH", context.Request["datebeginMaster"].Substring(0, context.Request["datebeginMaster"].IndexOf("-")) + context.Request["datebeginMaster"].Substring(context.Request["datebeginMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-				sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
+                sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
                 //获取分页参数
                 int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
                 int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
@@ -180,14 +182,14 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 
                 //获取分页数据    
                 int total = 0;
-                DataTable dt = conn.SelectPages(page, rows,out total, sqlStr, sqlPara.ToArray());
-                string jsonStr =  new JsonResult(dt) { total = total}.ToJson();
+                DataTable dt = conn.SelectPages(page, rows, out total, sqlStr, sqlPara.ToArray());
+                string jsonStr = new JsonResult(dt) { total = total }.ToJson();
 
                 context.Response.Write(jsonStr);
             }
 
 
-        
+
 
         }
 

+ 24 - 18
wwwroot/mes/rpt/rpt034/rpt.ashx

@@ -7,8 +7,7 @@ using System.Data;
 using System.Text;
 using System.Collections;
 using System.Collections.Generic;
-using Newtonsoft.Json;
-using Newtonsoft.Json.Linq;
+using System.Configuration;
 using Curtain.DataAccess;
 using DK.XuWei.WebMes;
 
@@ -16,19 +15,21 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 {
     public void ProcessRequest(HttpContext context)
     {
+        // 验厂标识 true:  false:
+        string strFactoryInspectionFlag = ConfigurationManager.AppSettings["FactoryInspectionFlag"] + "";
         context.Response.ContentType = "text/plain";
-        using(IDataAccess conn = DataAccess.Create())
+        using (IDataAccess conn = DataAccess.Create())
         {
             //主表
-            if(context.Request["m"].ToString()=="master")
+            if (context.Request["m"].ToString() == "master")
             {
                 //循环线工序
                 string procedureId = "16,33";
-                if(context.Request["buildingnoMaster"].ToString()=="1#")
+                if (context.Request["buildingnoMaster"].ToString() == "1#")
                 {
                     procedureId = "33";
                 }
-                if(context.Request["buildingnoMaster"].ToString()=="2#")
+                if (context.Request["buildingnoMaster"].ToString() == "2#")
                 {
                     procedureId = "16";
                 }
@@ -68,6 +69,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 							AND P.CHECKBATCHNO = '1' 
 			                AND P.CHECKTIME >= @DATEBEGIN@ 
 			                AND P.CHECKTIME < @DATEEND@
+     " + ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where P.CREATETIME >= thc.DAY_YMD_START and P.CREATETIME < thc.DAY_YMD_END )  " : " ") + @"  
                             AND (H.STAFFNAME = @STAFFNAME@ OR @STAFFNAME@ IS NULL)
 						GROUP BY
 							U.USERCODE,
@@ -128,6 +130,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 									AND P.CHECKBATCHNO = '1' 
 									AND P.CHECKTIME >= @DATEBEGIN@ 
 									AND P.CHECKTIME < @DATEEND@
+     " + ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where P.CHECKTIME >= thc.DAY_YMD_START and P.CHECKTIME < thc.DAY_YMD_END )  " : " ") + @"  
 									AND (H.STAFFNAME = @STAFFNAME@ OR @STAFFNAME@ IS NULL)
 								GROUP BY
 									GROUPING SETS (
@@ -159,7 +162,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 						AND P1.姓名 = P2.姓名s 
 						AND P1.产品 = P2.产品s
 						AND P1.日期 = P2.日期s
-                ".Replace("{PROCEDUREID}", procedureId) ;
+                ".Replace("{PROCEDUREID}", procedureId);
 
 
                 //获取查询条件
@@ -200,12 +203,15 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 
                 //获取分页数据
                 int total = 0;
-                DataTable  dt = conn.SelectPages(page, rows, out total, sqlStr, sqlPara.ToArray());
-                dt.Columns.Remove("工号s");
-                dt.Columns.Remove("姓名s");
-                dt.Columns.Remove("日期s");
-                dt.Columns.Remove("产品s");
-                dt.Columns.Remove("缺陷数量s");
+                DataTable dt = conn.SelectPages(page, rows, out total, sqlStr, sqlPara.ToArray());
+                if (dt != null)
+                {
+                    dt.Columns.Remove("工号s");
+                    dt.Columns.Remove("姓名s");
+                    dt.Columns.Remove("日期s");
+                    dt.Columns.Remove("产品s");
+                    dt.Columns.Remove("缺陷数量s");
+                }
 
                 string jsonStr = new JsonResult(dt) { total = total }.ToJson();
 
@@ -214,7 +220,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
             }
 
             //子表
-            if(context.Request["m"].ToString()=="detail")
+            if (context.Request["m"].ToString() == "detail")
             {
                 //读取报表数据
                 string sqlStr = @"
@@ -232,8 +238,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 
                 //获取分页数据    
                 int total = 0;
-                DataTable dt = conn.SelectPages(page, rows,out total, sqlStr, sqlPara.ToArray());
-                string jsonStr =  new JsonResult(dt) { total = total}.ToJson();
+                DataTable dt = conn.SelectPages(page, rows, out total, sqlStr, sqlPara.ToArray());
+                string jsonStr = new JsonResult(dt) { total = total }.ToJson();
 
                 context.Response.Write(jsonStr);
             }
@@ -288,8 +294,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 
                 //获取分页数据    
                 int total = 0;
-                DataTable dt = conn.SelectPages(page, rows,out total, sqlStr, sqlPara.ToArray());
-                string jsonStr =  new JsonResult(dt) { total = total}.ToJson();
+                DataTable dt = conn.SelectPages(page, rows, out total, sqlStr, sqlPara.ToArray());
+                string jsonStr = new JsonResult(dt) { total = total }.ToJson();
 
                 context.Response.Write(jsonStr);
             }

+ 101 - 99
wwwroot/mes/rpt/rpt035/rpt.ashx

@@ -7,8 +7,7 @@ using System.Data;
 using System.Text;
 using System.Collections;
 using System.Collections.Generic;
-using Newtonsoft.Json;
-using Newtonsoft.Json.Linq;
+using System.Configuration;
 using Curtain.DataAccess;
 using DK.XuWei.WebMes;
 
@@ -17,10 +16,12 @@ public class rpt : IHttpHandler, IReadOnlySessionState
     public void ProcessRequest(HttpContext context)
     {
         context.Response.ContentType = "text/plain";
-        using(IDataAccess conn = DataAccess.Create())
+        // 验厂标识 true:  false:
+        string strFactoryInspectionFlag = ConfigurationManager.AppSettings["FactoryInspectionFlag"] + "";
+        using (IDataAccess conn = DataAccess.Create())
         {
             //主表
-            if(context.Request["m"].ToString()=="master")
+            if (context.Request["m"].ToString() == "master")
             {
                 //获取变量
                 string checkProcedureId = context.Request["procedureidMaster"].ToString();
@@ -38,9 +39,9 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 	                    G.DEFECTGROUPTYPE LIKE '大帐%' 
 	                    AND G.DEFECTGROUPNAME = @GROUPNAME@
 				",
-                    new CDAParameter("GROUPNAME",groupName)
+                    new CDAParameter("GROUPNAME", groupName)
                 );
-                for(int i=0;i<dtProcedure.Rows.Count;i++)
+                for (int i = 0; i < dtProcedure.Rows.Count; i++)
                 {
                     if (procedureId != "") procedureId += ",";
                     procedureId += dtProcedure.Rows[i]["PROCEDUREID"].ToString();
@@ -58,8 +59,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                     WHERE
 	                    G.DEFECTGROUPTYPE LIKE '大帐%' 
 	                    AND G.DEFECTGROUPNAME = @GROUPNAME@
-				".Replace("{GROUPNAME}",groupName),
-                    new CDAParameter("GROUPNAME",groupName)
+				".Replace("{GROUPNAME}", groupName),
+                    new CDAParameter("GROUPNAME", groupName)
                 );
                 if (dtDefect.Rows.Count > 0) defectStr = dtDefect.Rows[0]["DEFECTSTR"].ToString();
 
@@ -124,6 +125,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 				                    AND P.PROCEDUREID = {CHECKPROCEDUREID} 
 				                    AND P.CREATETIME >= @DATEBEGIN@ 
 				                    AND P.CREATETIME < @DATEEND@ 
+     " + ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where P.CREATETIME >= thc.DAY_YMD_START and P.CREATETIME < thc.DAY_YMD_END )  " : " ") + @"  
 			                    GROUP BY
 				                    GROUPING SETS (
 					                    ( P.GOODSNAME, U.USERCODE, D.DEFECTPROCEDUREID, D.DEFECTNAME ),
@@ -144,9 +146,9 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 "
             .Replace("{PROCEDUREID}", procedureId)
             .Replace("{CHECKPROCEDUREID}", checkProcedureId)
-            .Replace("{CHECKUSERCODE}",checkUserCode)
-            .Replace("{GROUPNAME}",groupName)
-            .Replace("{DEFECTSTR}",defectStr);
+            .Replace("{CHECKUSERCODE}", checkUserCode)
+            .Replace("{GROUPNAME}", groupName)
+            .Replace("{DEFECTSTR}", defectStr);
 
                 //获取查询条件
                 List<CDAParameter> sqlPara = new List<CDAParameter>();
@@ -195,7 +197,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
             }
 
             //子表
-            if(context.Request["m"].ToString()=="detail")
+            if (context.Request["m"].ToString() == "detail")
             {
                 //读取报表数据
                 string sqlStr = @"
@@ -213,15 +215,15 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 
                 //获取分页数据    
                 int total = 0;
-                DataTable dt = conn.SelectPages(page, rows,out total, sqlStr, sqlPara.ToArray());
-                string jsonStr =  new JsonResult(dt) { total = total}.ToJson();
+                DataTable dt = conn.SelectPages(page, rows, out total, sqlStr, sqlPara.ToArray());
+                string jsonStr = new JsonResult(dt) { total = total }.ToJson();
 
                 context.Response.Write(jsonStr);
             }
 
-            if(context.Request["m"].ToString() == "jiezhauang" && context.Request["groupname"].ToString() == "成型缺陷")
+            if (context.Request["m"].ToString() == "jiezhauang" && context.Request["groupname"].ToString() == "成型缺陷")
             {
-                    string sqlStr = @"SELECT
+                string sqlStr = @"SELECT
 	                    GOODSNAME_FRONT AS 产品,
 	                    USERCODE_FRONT AS 工号,
 	                    sum( OUT_COUNT ) AS 出窑数,
@@ -248,23 +250,23 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 	                    GROUPING SETS ( ( GOODSNAME_FRONT, USERCODE_FRONT ) )
                         ORDER BY GOODSNAME_FRONT,USERCODE_FRONT
                     ";
-                     //获取查询条件
-                    List<CDAParameter> sqlPara = new List<CDAParameter>();
-                    sqlPara.Add(new CDAParameter("DATEBEGIN", Convert.ToDateTime(context.Request["datebeginMaster"]), DataType.DateTime));
-                    sqlPara.Add(new CDAParameter("DATEEND", Convert.ToDateTime(context.Request["dateendMaster"]), DataType.DateTime));
-                    sqlPara.Add(new CDAParameter("PROCEDUREID", context.Request["procedureidMaster"]));
-                    sqlPara.Add(new CDAParameter("USERCODE", context.Request["usercodeMaster"]));
-                    sqlPara.Add(new CDAParameter("BEGINMONTH", context.Request["datebeginMaster"].Substring(0, context.Request["datebeginMaster"].IndexOf("-")) + context.Request["datebeginMaster"].Substring(context.Request["datebeginMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-				sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-                     //直接获取不分页数据
-                    DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
-                    string jsonStr = new JsonResult(dt) { total = dt.Rows.Count }.ToJson();
-                    context.Response.Write(jsonStr);
+                //获取查询条件
+                List<CDAParameter> sqlPara = new List<CDAParameter>();
+                sqlPara.Add(new CDAParameter("DATEBEGIN", Convert.ToDateTime(context.Request["datebeginMaster"]), DataType.DateTime));
+                sqlPara.Add(new CDAParameter("DATEEND", Convert.ToDateTime(context.Request["dateendMaster"]), DataType.DateTime));
+                sqlPara.Add(new CDAParameter("PROCEDUREID", context.Request["procedureidMaster"]));
+                sqlPara.Add(new CDAParameter("USERCODE", context.Request["usercodeMaster"]));
+                sqlPara.Add(new CDAParameter("BEGINMONTH", context.Request["datebeginMaster"].Substring(0, context.Request["datebeginMaster"].IndexOf("-")) + context.Request["datebeginMaster"].Substring(context.Request["datebeginMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
+                sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
+                //直接获取不分页数据
+                DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
+                string jsonStr = new JsonResult(dt) { total = dt.Rows.Count }.ToJson();
+                context.Response.Write(jsonStr);
             }
-            else if(context.Request["m"].ToString() == "jiezhauang" && context.Request["groupname"].ToString() == "施釉缺陷")
+            else if (context.Request["m"].ToString() == "jiezhauang" && context.Request["groupname"].ToString() == "施釉缺陷")
             {
-                    
-                    string sqlStr = @"SELECT
+
+                string sqlStr = @"SELECT
 	                    GOODSNAME_FRONT AS 产品,
 	                    USERCODE_FRONT AS 工号,
 	                    sum( OUT_COUNT ) AS 出窑数,
@@ -290,23 +292,23 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 	                    GROUPING SETS ( ( GOODSNAME_FRONT, USERCODE_FRONT ) )
                         ORDER BY GOODSNAME_FRONT,USERCODE_FRONT
                     ";
-                     //获取查询条件
-                    List<CDAParameter> sqlPara = new List<CDAParameter>();
-                    sqlPara.Add(new CDAParameter("DATEBEGIN", Convert.ToDateTime(context.Request["datebeginMaster"]), DataType.DateTime));
-                    sqlPara.Add(new CDAParameter("DATEEND", Convert.ToDateTime(context.Request["dateendMaster"]), DataType.DateTime));
-                    sqlPara.Add(new CDAParameter("PROCEDUREID", context.Request["procedureidMaster"]));
-                    sqlPara.Add(new CDAParameter("USERCODE", context.Request["usercodeMaster"]));
-                    sqlPara.Add(new CDAParameter("BEGINMONTH", context.Request["datebeginMaster"].Substring(0, context.Request["datebeginMaster"].IndexOf("-")) + context.Request["datebeginMaster"].Substring(context.Request["datebeginMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-				sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-                     //直接获取不分页数据
-                    DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
-                    string jsonStr = new JsonResult(dt) { total = dt.Rows.Count }.ToJson();
-                    context.Response.Write(jsonStr);
+                //获取查询条件
+                List<CDAParameter> sqlPara = new List<CDAParameter>();
+                sqlPara.Add(new CDAParameter("DATEBEGIN", Convert.ToDateTime(context.Request["datebeginMaster"]), DataType.DateTime));
+                sqlPara.Add(new CDAParameter("DATEEND", Convert.ToDateTime(context.Request["dateendMaster"]), DataType.DateTime));
+                sqlPara.Add(new CDAParameter("PROCEDUREID", context.Request["procedureidMaster"]));
+                sqlPara.Add(new CDAParameter("USERCODE", context.Request["usercodeMaster"]));
+                sqlPara.Add(new CDAParameter("BEGINMONTH", context.Request["datebeginMaster"].Substring(0, context.Request["datebeginMaster"].IndexOf("-")) + context.Request["datebeginMaster"].Substring(context.Request["datebeginMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
+                sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
+                //直接获取不分页数据
+                DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
+                string jsonStr = new JsonResult(dt) { total = dt.Rows.Count }.ToJson();
+                context.Response.Write(jsonStr);
             }
-            else if(context.Request["m"].ToString() == "jiezhauang" && context.Request["groupname"].ToString() == "循环线施釉缺陷")
+            else if (context.Request["m"].ToString() == "jiezhauang" && context.Request["groupname"].ToString() == "循环线施釉缺陷")
             {
-                    
-                    string sqlStr = @"SELECT
+
+                string sqlStr = @"SELECT
 	                    GOODSNAME_FRONT AS 产品,
 	                    USERCODE_FRONT AS 工号,
 	                    sum( OUT_COUNT ) AS 出窑数,
@@ -332,22 +334,22 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 	                    GROUPING SETS ( ( GOODSNAME_FRONT, USERCODE_FRONT ) )
                         ORDER BY GOODSNAME_FRONT,USERCODE_FRONT
                     ";
-                     //获取查询条件
-                    List<CDAParameter> sqlPara = new List<CDAParameter>();
-                    sqlPara.Add(new CDAParameter("DATEBEGIN", Convert.ToDateTime(context.Request["datebeginMaster"]), DataType.DateTime));
-                    sqlPara.Add(new CDAParameter("DATEEND", Convert.ToDateTime(context.Request["dateendMaster"]), DataType.DateTime));
-                    sqlPara.Add(new CDAParameter("PROCEDUREID", context.Request["procedureidMaster"]));
-                    sqlPara.Add(new CDAParameter("USERCODE", context.Request["usercodeMaster"]));
-                    sqlPara.Add(new CDAParameter("BEGINMONTH", context.Request["datebeginMaster"].Substring(0, context.Request["datebeginMaster"].IndexOf("-")) + context.Request["datebeginMaster"].Substring(context.Request["datebeginMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-				sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-                     //直接获取不分页数据
-                    DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
-                    string jsonStr = new JsonResult(dt) { total = dt.Rows.Count }.ToJson();
-                    context.Response.Write(jsonStr);
+                //获取查询条件
+                List<CDAParameter> sqlPara = new List<CDAParameter>();
+                sqlPara.Add(new CDAParameter("DATEBEGIN", Convert.ToDateTime(context.Request["datebeginMaster"]), DataType.DateTime));
+                sqlPara.Add(new CDAParameter("DATEEND", Convert.ToDateTime(context.Request["dateendMaster"]), DataType.DateTime));
+                sqlPara.Add(new CDAParameter("PROCEDUREID", context.Request["procedureidMaster"]));
+                sqlPara.Add(new CDAParameter("USERCODE", context.Request["usercodeMaster"]));
+                sqlPara.Add(new CDAParameter("BEGINMONTH", context.Request["datebeginMaster"].Substring(0, context.Request["datebeginMaster"].IndexOf("-")) + context.Request["datebeginMaster"].Substring(context.Request["datebeginMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
+                sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
+                //直接获取不分页数据
+                DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
+                string jsonStr = new JsonResult(dt) { total = dt.Rows.Count }.ToJson();
+                context.Response.Write(jsonStr);
             }
-            else if(context.Request["m"].ToString() == "jiezhauang" && context.Request["groupname"].ToString() == "登窑缺陷")
+            else if (context.Request["m"].ToString() == "jiezhauang" && context.Request["groupname"].ToString() == "登窑缺陷")
             {
-                    string sqlStr = @"SELECT
+                string sqlStr = @"SELECT
 	                    GOODSNAME_FRONT AS 产品,
 	                    USERCODE_FRONT AS 工号,
 	                    sum( OUT_COUNT ) AS 出窑数,
@@ -369,23 +371,23 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 	                    GROUPING SETS ( ( GOODSNAME_FRONT, USERCODE_FRONT ) )
                         ORDER BY GOODSNAME_FRONT,USERCODE_FRONT
                     ";
-                     //获取查询条件
-                    List<CDAParameter> sqlPara = new List<CDAParameter>();
-                    sqlPara.Add(new CDAParameter("DATEBEGIN", Convert.ToDateTime(context.Request["datebeginMaster"]), DataType.DateTime));
-                    sqlPara.Add(new CDAParameter("DATEEND", Convert.ToDateTime(context.Request["dateendMaster"]), DataType.DateTime));
-                    sqlPara.Add(new CDAParameter("PROCEDUREID", context.Request["procedureidMaster"]));
-                    sqlPara.Add(new CDAParameter("USERCODE", context.Request["usercodeMaster"]));
-                    sqlPara.Add(new CDAParameter("BEGINMONTH", context.Request["datebeginMaster"].Substring(0, context.Request["datebeginMaster"].IndexOf("-")) + context.Request["datebeginMaster"].Substring(context.Request["datebeginMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-				sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-                     //直接获取不分页数据
-                    DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
-                    string jsonStr = new JsonResult(dt) { total = dt.Rows.Count }.ToJson();
-                    context.Response.Write(jsonStr);
+                //获取查询条件
+                List<CDAParameter> sqlPara = new List<CDAParameter>();
+                sqlPara.Add(new CDAParameter("DATEBEGIN", Convert.ToDateTime(context.Request["datebeginMaster"]), DataType.DateTime));
+                sqlPara.Add(new CDAParameter("DATEEND", Convert.ToDateTime(context.Request["dateendMaster"]), DataType.DateTime));
+                sqlPara.Add(new CDAParameter("PROCEDUREID", context.Request["procedureidMaster"]));
+                sqlPara.Add(new CDAParameter("USERCODE", context.Request["usercodeMaster"]));
+                sqlPara.Add(new CDAParameter("BEGINMONTH", context.Request["datebeginMaster"].Substring(0, context.Request["datebeginMaster"].IndexOf("-")) + context.Request["datebeginMaster"].Substring(context.Request["datebeginMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
+                sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
+                //直接获取不分页数据
+                DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
+                string jsonStr = new JsonResult(dt) { total = dt.Rows.Count }.ToJson();
+                context.Response.Write(jsonStr);
             }
 
-            else if(context.Request["m"].ToString() == "jiezhauang" && context.Request["groupname"].ToString() == "烧窑缺陷")
+            else if (context.Request["m"].ToString() == "jiezhauang" && context.Request["groupname"].ToString() == "烧窑缺陷")
             {
-                    string sqlStr = @"SELECT
+                string sqlStr = @"SELECT
 	                    GOODSNAME_FRONT AS 产品,
 	                    USERCODE_FRONT AS 工号,
 	                    sum( OUT_COUNT ) AS 出窑数,
@@ -412,22 +414,22 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 	                    GROUPING SETS ( ( GOODSNAME_FRONT, USERCODE_FRONT ) )
                         ORDER BY GOODSNAME_FRONT,USERCODE_FRONT
                     ";
-                     //获取查询条件
-                    List<CDAParameter> sqlPara = new List<CDAParameter>();
-                    sqlPara.Add(new CDAParameter("DATEBEGIN", Convert.ToDateTime(context.Request["datebeginMaster"]), DataType.DateTime));
-                    sqlPara.Add(new CDAParameter("DATEEND", Convert.ToDateTime(context.Request["dateendMaster"]), DataType.DateTime));
-                    sqlPara.Add(new CDAParameter("PROCEDUREID", context.Request["procedureidMaster"]));
-                    sqlPara.Add(new CDAParameter("USERCODE", context.Request["usercodeMaster"]));
-                    sqlPara.Add(new CDAParameter("BEGINMONTH", context.Request["datebeginMaster"].Substring(0, context.Request["datebeginMaster"].IndexOf("-")) + context.Request["datebeginMaster"].Substring(context.Request["datebeginMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-				sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-                     //直接获取不分页数据
-                    DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
-                    string jsonStr = new JsonResult(dt) { total = dt.Rows.Count }.ToJson();
-                    context.Response.Write(jsonStr);
+                //获取查询条件
+                List<CDAParameter> sqlPara = new List<CDAParameter>();
+                sqlPara.Add(new CDAParameter("DATEBEGIN", Convert.ToDateTime(context.Request["datebeginMaster"]), DataType.DateTime));
+                sqlPara.Add(new CDAParameter("DATEEND", Convert.ToDateTime(context.Request["dateendMaster"]), DataType.DateTime));
+                sqlPara.Add(new CDAParameter("PROCEDUREID", context.Request["procedureidMaster"]));
+                sqlPara.Add(new CDAParameter("USERCODE", context.Request["usercodeMaster"]));
+                sqlPara.Add(new CDAParameter("BEGINMONTH", context.Request["datebeginMaster"].Substring(0, context.Request["datebeginMaster"].IndexOf("-")) + context.Request["datebeginMaster"].Substring(context.Request["datebeginMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
+                sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
+                //直接获取不分页数据
+                DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
+                string jsonStr = new JsonResult(dt) { total = dt.Rows.Count }.ToJson();
+                context.Response.Write(jsonStr);
             }
             else
             {
-                     string sqlStr = @"SELECT
+                string sqlStr = @"SELECT
 	                    GOODSNAME_FRONT AS 产品,
 	                    USERCODE_FRONT AS 工号,
 	                    sum( OUT_COUNT ) AS 出窑数,
@@ -445,18 +447,18 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 	                    GROUPING SETS ( ( GOODSNAME_FRONT, USERCODE_FRONT ) )
                         ORDER BY GOODSNAME_FRONT,USERCODE_FRONT
                     ";
-                     //获取查询条件
-                    List<CDAParameter> sqlPara = new List<CDAParameter>();
-                    sqlPara.Add(new CDAParameter("DATEBEGIN", Convert.ToDateTime(context.Request["datebeginMaster"]), DataType.DateTime));
-                    sqlPara.Add(new CDAParameter("DATEEND", Convert.ToDateTime(context.Request["dateendMaster"]), DataType.DateTime));
-                    sqlPara.Add(new CDAParameter("PROCEDUREID", context.Request["procedureidMaster"]));
-                    sqlPara.Add(new CDAParameter("USERCODE", context.Request["usercodeMaster"]));
-                    sqlPara.Add(new CDAParameter("BEGINMONTH", context.Request["datebeginMaster"].Substring(0, context.Request["datebeginMaster"].IndexOf("-")) + context.Request["datebeginMaster"].Substring(context.Request["datebeginMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-				sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
-                     //直接获取不分页数据
-                    DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
-                    string jsonStr = new JsonResult(dt) { total = dt.Rows.Count }.ToJson();
-                    context.Response.Write(jsonStr);
+                //获取查询条件
+                List<CDAParameter> sqlPara = new List<CDAParameter>();
+                sqlPara.Add(new CDAParameter("DATEBEGIN", Convert.ToDateTime(context.Request["datebeginMaster"]), DataType.DateTime));
+                sqlPara.Add(new CDAParameter("DATEEND", Convert.ToDateTime(context.Request["dateendMaster"]), DataType.DateTime));
+                sqlPara.Add(new CDAParameter("PROCEDUREID", context.Request["procedureidMaster"]));
+                sqlPara.Add(new CDAParameter("USERCODE", context.Request["usercodeMaster"]));
+                sqlPara.Add(new CDAParameter("BEGINMONTH", context.Request["datebeginMaster"].Substring(0, context.Request["datebeginMaster"].IndexOf("-")) + context.Request["datebeginMaster"].Substring(context.Request["datebeginMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
+                sqlPara.Add(new CDAParameter("ENDMONTH", context.Request["dateendMaster"].Substring(0, context.Request["dateendMaster"].IndexOf("-")) + context.Request["dateendMaster"].Substring(context.Request["dateendMaster"].IndexOf("-") + 1).PadLeft(2, '0')));
+                //直接获取不分页数据
+                DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
+                string jsonStr = new JsonResult(dt) { total = dt.Rows.Count }.ToJson();
+                context.Response.Write(jsonStr);
             }
         }
 

+ 16 - 12
wwwroot/mes/rpt/rpt036/rpt.ashx

@@ -7,8 +7,7 @@ using System.Data;
 using System.Text;
 using System.Collections;
 using System.Collections.Generic;
-using Newtonsoft.Json;
-using Newtonsoft.Json.Linq;
+using System.Configuration;
 using Curtain.DataAccess;
 using DK.XuWei.WebMes;
 
@@ -17,16 +16,18 @@ public class rpt : IHttpHandler, IReadOnlySessionState
     public void ProcessRequest(HttpContext context)
     {
         context.Response.ContentType = "text/plain";
-        using(IDataAccess conn = DataAccess.Create())
+        // 验厂标识 true:  false:
+        string strFactoryInspectionFlag = ConfigurationManager.AppSettings["FactoryInspectionFlag"] + "";
+        using (IDataAccess conn = DataAccess.Create())
         {
             //主表
             if (context.Request["m"].ToString() == "master")
             {
                 //读取报表数据
                 string sqlStr = null;
-                    //本月生产过渡表
-                    #region 
-                    sqlStr = @"
+                //本月生产过渡表
+                #region 
+                sqlStr = @"
                         select g.GOODSNAME 产品名称,g.GOODSSPECIFICATION 产品规格,g.GOODSMODEL 产品型号, last.* from (
                         SELECT DECODE(GROUPING_ID(TT.GOODS_CODE), 1, '合计', TT.GOODS_CODE) AS 产品编码
                               ,SUM(TT.A_J) AS 精坯期初
@@ -155,6 +156,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                                     AND PD.VALUEFLAG = 1
                                  WHERE T.CREATETIME >= @DATEBEGIN@
                                    AND T.CREATETIME < @DATEEND@
+     " + ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where T.CREATETIME >= thc.DAY_YMD_START and T.CREATETIME < thc.DAY_YMD_END )  " : " ") + @"  
                                    AND (
                                         T.PROCEDUREID = 3
                                         OR T.PROCEDUREID = 26
@@ -204,6 +206,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                                     ON T.GOODSID = G.GOODSID
                                  WHERE T.BACKOUTTIME >= @DATEBEGIN@
                                    AND T.BACKOUTTIME < @DATEEND@
+     " + ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where T.BACKOUTTIME  >= thc.DAY_YMD_START and T.BACKOUTTIME  < thc.DAY_YMD_END )  " : " ") + @"  
                                    AND (
                                         T.PROCEDUREID = 3
                                         OR T.PROCEDUREID = 26
@@ -238,6 +241,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                                     ON T.GOODSID = G.GOODSID
                                  WHERE T.CHECKTIME >= @DATEBEGIN@
                                    AND T.CHECKTIME < @DATEEND@
+     " + ("true".Equals(strFactoryInspectionFlag) ? " and not exists (select 1 from TP_HOLIDAY_CONFIG thc where T.CREATETIME >= thc.DAY_YMD_START and T.CREATETIME < thc.DAY_YMD_END )  " : " ") + @"  
                                    AND T.VALUEFLAG = '1'
                                    AND T.PROCEDUREID = 13
                                    AND T.CHECKBATCHNO = 1
@@ -248,7 +252,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                         ) last 
                         left join tp_mst_goods g on g.goodscode = last.产品编码  ORDER BY g.GOODSMODEL
                         ";
-                    #endregion
+                #endregion
 
                 //获取查询条件
                 List<CDAParameter> sqlPara = new List<CDAParameter>();
@@ -262,7 +266,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 
                 //清除0数据行 第0列是 产品型号 之后全是数据
                 int row = 0;
-                while(row < dt.Rows.Count)
+                while (row < dt.Rows.Count)
                 {
                     bool rowZero = true;
                     //第0列是产品型号 从第1列开始全是数据
@@ -285,12 +289,12 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                     }
                 }
 
-                string jsonStr = new JsonResult(dt) { total = dt.Rows.Count  }.ToJson();
+                string jsonStr = new JsonResult(dt) { total = dt.Rows.Count }.ToJson();
                 context.Response.Write(jsonStr);
             }
 
             //子表
-            if(context.Request["m"].ToString()=="detail")
+            if (context.Request["m"].ToString() == "detail")
             {
                 //读取报表数据
                 string sqlStr = @"
@@ -308,8 +312,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 
                 //获取分页数据    
                 int total = 0;
-                DataTable dt = conn.SelectPages(page, rows,out total, sqlStr, sqlPara.ToArray());
-                string jsonStr =  new JsonResult(dt) { total = total}.ToJson();
+                DataTable dt = conn.SelectPages(page, rows, out total, sqlStr, sqlPara.ToArray());
+                string jsonStr = new JsonResult(dt) { total = total }.ToJson();
 
                 context.Response.Write(jsonStr);
             }