Parcourir la source

产品合格数的改判的数据bug

姜永辉 il y a 8 mois
Parent
commit
d0b54eb1e8
2 fichiers modifiés avec 16 ajouts et 8 suppressions
  1. 5 0
      wwwroot/mes/rpt/rpt008/rpt.ashx
  2. 11 8
      wwwroot/mes/rpt/rpt037/rpt.ashx

+ 5 - 0
wwwroot/mes/rpt/rpt008/rpt.ashx

@@ -255,6 +255,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                                      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 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
                                            ,TP.GROUTINGDAILYDETAILID
                                            ,TP.PROCEDUREID) P
@@ -262,6 +263,10 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                                         ON rpd.productiondataid = p.maxproductiondataid AND rpd.procedureid = 13
                                     --   去除复检的质量登记
                                      LEFT JOIN tp_pm_productiondata_semicheck pds ON pds.productiondataid = p.productiondataid
+-- 没有回收的数据
+                                        where not exists ( select 1 from tp_pm_productiondata rpdd where  rpdd.GROUTINGDAILYDETAILID = p.GROUTINGDAILYDETAILID
+                                       AND rpdd.procedureid IN (20, 22, 23, 37, 35) AND rpdd.productiondataid < p.productiondataid
+                                       AND rpd.productiondataid < rpdd.productiondataid AND rpdd.valueflag = '1')
                                    UNION ALL   
                                     SELECT 5 FLAG
                                             ,TP_PM_ProductionData.groutingdailydetailid

+ 11 - 8
wwwroot/mes/rpt/rpt037/rpt.ashx

@@ -51,12 +51,12 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 		                    PD3.CREATETIME,
 		                    PD4.USERCODE,
 		                    PD4.USERNAME,
-		                    PD4.BARCODE,
+		                    PD4.groutingdailydetailid,
 							PD4.CHECKFLAG,
-							PD4.GOODSLEVELTYPEID
+							PD4.GOODSLEVELTYPEID,pd4.productiondataid
 	                    FROM
 		                    (
-                                SELECT pmax.barcode
+                                SELECT pmax.groutingdailydetailid
                                     ,MAX(pmax.createtime) AS createtime
                                 FROM tp_pm_productiondata tp
                                 LEFT JOIN tp_pm_productiondata pmax
@@ -65,7 +65,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                                 AND pmax.checkflag IS NOT NULL
                                 AND pmax.procedureid = tp.procedureid
                                 WHERE tp.checkflag <> 1                           
-                                AND to_char(pmax.createtime, 'yyyy-mm-dd') <>  to_char(tp.createtime, 'yyyy-mm-dd')" ;
+                                AND to_char(pmax.createtime, 'yyyy-mm-dd') <  to_char(tp.createtime, 'yyyy-mm-dd')" ;
                     //获取查询条件       
                     if ((!string.IsNullOrEmpty(context.Request["TAMPERCREATETIMEBEGIN"]))&&(!string.IsNullOrEmpty(context.Request["TAMPERCREATETIMEEND"])))
                     {
@@ -81,13 +81,16 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                     {
                         sqlStr += "AND (tp.GOODSNAME LIKE @goodscodeMaster@ OR @goodscodeMaster@ IS NULL)"; 
                     }                    
-						 sqlStr += @"	 GROUP BY pmax.barcode ) PD3 
-						 INNER JOIN TP_PM_PRODUCTIONDATA PD4 ON PD4.BARCODE=PD3.BARCODE AND PD3.CREATETIME=PD4.CREATETIME AND   pd4.checkflag IS NOT NULL
-	                    ) PD2 ON PD.BARCODE = PD2.BARCODE
+						 sqlStr += @"	 GROUP BY pmax.groutingdailydetailid ) PD3 
+						 INNER JOIN TP_PM_PRODUCTIONDATA PD4 ON PD4.groutingdailydetailid=PD3.groutingdailydetailid AND PD3.CREATETIME=PD4.CREATETIME AND   pd4.checkflag IS NOT NULL
+	                    ) PD2 ON PD.groutingdailydetailid = PD2.groutingdailydetailid
 	                    LEFT JOIN TP_SYS_GOODSLEVELTYPE TSGL2 ON PD2.GOODSLEVELTYPEID = TSGL2.GOODSLEVELTYPEID
 	                    LEFT JOIN TP_PC_GROUTINGLINE GRO ON GRO.GROUTINGLINEID = PD.GROUTINGLINEID
 	                    LEFT JOIN TP_PM_DEFECT DEFECT ON DEFECT.BARCODE = PD.BARCODE 
-                    WHERE  PD.CHECKFLAG <> 1  AND to_char( PD2.CREATETIME, 'yyyy-mm-dd' ) <> to_char( PD.CREATETIME, 'yyyy-mm-dd' )   ";
+                    WHERE  PD.CHECKFLAG <> 1  and not exists ( select 1 from tp_pm_productiondata rpd where  rpd.groutingdailydetailid = pd.groutingdailydetailid
+   AND rpd.procedureid IN (20, 22, 23, 37, 35) AND rpd.productiondataid < pd.productiondataid
+   AND pd2.productiondataid < rpd.productiondataid AND rpd.valueflag = '1' AND rpd.createtime < pd.createtime
+   AND pd2.createtime < rpd.createtime) AND to_char( PD2.CREATETIME, 'yyyy-mm-dd' ) < to_char( PD.CREATETIME, 'yyyy-mm-dd' )   ";
 
             #endregion
             //获取查询条件