Просмотр исходного кода

Merge branch 'master' of http://s.dev01.dkiboss.com:9001/DK-MES-2.0/IMEX.mes.web

李士越 10 месяцев назад
Родитель
Сommit
cdb99e8f3c

+ 12 - 10
wwwroot/mes/rpt/rpt014/rpt_index_detail.html

@@ -36,8 +36,12 @@
     <div data-options="region:'west',plain:true,border:false,split:true,title:'详细条码'" style="width:50%">
         <!--表格-->
         <table id="DataGridMasterGrid"
-               data-options="toolbar: '#tb',method:'get',border:false,singleSelect:true,fit:true,fitColumns:true,onDblClickCell:dgDblclickcellleftdetail">
+               data-options="toolbar: '#tb',method:'get',border:false,singleSelect:true,fit:true,fitColumns:true,rownumbers:true,onDblClickCell:dgDblclickcellleftdetail">
             <thead>
+                <tr> 
+                    <th data-options="field:'产品编码',title:'产品编码',width:220,align:'center',sortable:false"></th> 
+                    <th data-options="field:'产品条码',title:'产品条码',width:250,align:'center',sortable:false"></th>
+                </tr>
             </thead>
         </table>
 
@@ -45,8 +49,12 @@
     <div data-options="region:'east',plain:true,border:false,split:true,title:'改判条码'"style="width:50%">
         <!--表格-->
         <table id="DataGridMasterGridChange"
-               data-options="toolbar: '#tb',method:'get',border:false,singleSelect:true,fit:true,fitColumns:true,onDblClickCell:dgDblclickcellrightdetail">
+               data-options="toolbar: '#tb',method:'get',border:false,singleSelect:true,fit:true,fitColumns:true,rownumbers:true,onDblClickCell:dgDblclickcellrightdetail">
             <thead>
+                <tr> 
+                    <th data-options="field:'产品编码',title:'产品编码',width:220,align:'center',sortable:false"></th>
+                    <th data-options="field:'产品条码',title:'产品条码',width:250,align:'center',sortable:false"></th>
+                </tr>
             </thead>
         </table>
     </div>
@@ -57,14 +65,6 @@
         function dgDblclickcellleftdetail(index, fields, value) {         
             if (fields == "产品条码") { 
                 window.location.href = '../rpt042/rpt_index.html?barcode=' + value;
-                //window.open('../rpt042/rpt_index.html?barcode=' + value, '_blank', 'width=' + 1366 + ',height=' + 768 + ',left=' + left + ',top=' + top + ',toolbar=no,menubar=no,location=no,status=no');
-                // $('#tabs').tabsOpen({ id: 999, title: '产品跟踪表', url: '../rpt042/rpt_index.html?barcode=' + value, closable: true });
-                //$('#DataGridMasterGrid').datagridDialog({
-                //    title:  '产品跟踪',
-                //    width: 1024,
-                //    height: 720,
-                //    url: '../rpt042/rpt_index.html?barcode='  + row["产品条码"]
-                //});
             }
         }
 
@@ -106,6 +106,7 @@
                 url: 'rptnew_detail.ashx?fields=' + params["fields"] + "&index=" + params["index"] + "&gs=" + params["gs"],
                 fixWidth: 140,
                 mergeWidth: 80,
+                pagination: false,
                 splitChar: '_'
             });
             $('#DataGridMasterGridChange').datagridLoadRpt({
@@ -115,6 +116,7 @@
                 url: 'rptnew_detail_change.ashx?fields=' + params["fields"] + "&index=" + params["index"] + "&gs=" + params["gs"],
                 fixWidth: 140,
                 mergeWidth: 80,
+                pagination: false,
                 splitChar: '_'
             });
         });

+ 50 - 23
wwwroot/mes/rpt/rpt014/rpt_index_new.html

@@ -55,7 +55,7 @@
         <!--表格-->
         <table class="easyui-datagrid"
                id="DataGridMasterGrid"
-               data-options="toolbar: '#tb',method:'get',border:false,singleSelect:true,fit:true,fitColumns:true,onDblClickCell:dgDblclickcelldetail">
+               data-options="toolbar: '#tb',method:'get',border:false,singleSelect:true,fit:true,fitColumns:false,onDblClickCell:dgDblclickcelldetail">
             <thead>
             </thead>
         </table>
@@ -76,51 +76,53 @@
         });
 
 
-        //手动加载数据
-        function getUserDefectGroupNameData() {  
+        //手动加载数据可选缺陷
+        function getUserDefectGroupNameData() {
             $.post('rptdefectuser.ashx?m=master', null, function (data) {
                 var row = JSON.parse(data);
-                if (row["success"] == true) {                  
-                    if (row.rows != null && row.rows.length > 0) {                        
-                        for (var i = 0; i < row.rows.length; i++) { 
+                if (row["success"] == true) {
+                    if (row.rows != null && row.rows.length > 0) {
+                        for (var i = 0; i < row.rows.length; i++) {
                             name += row.rows[i]["DEFECTGROUPNAME"] + ",";
-                        } 
+                        }
                         name = name.substring(0, name.length - 1);
                         $('#defectMaster').combobox('setValue', row.rows);
                         $('#defectMaster').combobox('setText', name);
-                    } else {
-                        //$("#defectMaster").val("");
-                        $('#defectMaster').combobox('setValue', "");
-                        $('#defectMaster').combobox('setText', '');
-                    } 
-                }              
+                        console.log("getUserDefectGroupNameData>0", name,row.rows);
+                    } else {                     
+                        let arr = ['原料缺陷_铁脏', '原料缺陷_铜脏', '原料缺陷_合计', '成型缺陷_糙活', '成型缺陷_成裂', '成型缺陷_成脏', '成型缺陷_成走', '成型缺陷_孔不良', '成型缺陷_漏气', '成型缺陷_泥绺', '成型缺陷_排水不良', '成型缺陷_坯脏', '成型缺陷_注泡', '成型缺陷_棕眼', '成型缺陷_炸圈', '成型缺陷_卡球', '成型缺陷_合计', '施釉缺陷_爆釉', '施釉缺陷_标不良', '施釉缺陷_脱釉', '施釉缺陷_釉薄', '施釉缺陷_釉磕', '施釉缺陷_釉绺', '施釉缺陷_釉脏', '施釉缺陷_釉粘', '施釉缺陷_釉泡', '施釉缺陷_波纹', '施釉缺陷_合计', '出装窑缺陷_蹭釉', '出装窑缺陷_出磕', '出装窑缺陷_划釉', '出装窑缺陷_落脏', '出装窑缺陷_装磕', '出装窑缺陷_装粘', '出装窑缺陷_装脏', '出装窑缺陷_装走', '出装窑缺陷_合计', '烧窑缺陷_过火泡', '烧窑缺陷_桔釉', '烧窑缺陷_麻坑', '烧窑缺陷_烧裂', '烧窑缺陷_烧生', '烧窑缺陷_窑脏', '烧窑缺陷_烧炸', '烧窑缺陷_烟熏', '烧窑缺陷_风惊', '烧窑缺陷_水滴', '烧窑缺陷_针孔', '烧窑缺陷_合计', '其他缺陷_崩脏', '其他缺陷_坯磕', '其他缺陷_研磨', '其他缺陷_复烧修补不良', '其他缺陷_合计', '研磨缺陷_眼', '研磨缺陷_底', '研磨缺陷_底和面', '研磨缺陷_面', '研磨缺陷_边', '研磨缺陷_研磨配盖', '研磨缺陷_合计'];
+                        $('#defectMaster').combobox('setValue', arr);
+                        $('#defectMaster').combobox('setText', '原料缺陷_铁脏,原料缺陷_铜脏,原料缺陷_合计,成型缺陷_糙活,成型缺陷_成裂,成型缺陷_成脏,成型缺陷_成走,成型缺陷_孔不良,成型缺陷_漏气,成型缺陷_泥绺,成型缺陷_排水不良,成型缺陷_坯脏,成型缺陷_注泡,成型缺陷_棕眼,成型缺陷_炸圈,成型缺陷_卡球,成型缺陷_合计,施釉缺陷_爆釉,施釉缺陷_标不良,施釉缺陷_脱釉,施釉缺陷_釉薄,施釉缺陷_釉磕,施釉缺陷_釉绺,施釉缺陷_釉脏,施釉缺陷_釉粘,施釉缺陷_釉泡,施釉缺陷_波纹,施釉缺陷_合计,出装窑缺陷_蹭釉,出装窑缺陷_出磕,出装窑缺陷_划釉,出装窑缺陷_落脏,出装窑缺陷_装磕,出装窑缺陷_装粘,出装窑缺陷_装脏,出装窑缺陷_装走,出装窑缺陷_合计,烧窑缺陷_过火泡,烧窑缺陷_桔釉,烧窑缺陷_麻坑,烧窑缺陷_烧裂,烧窑缺陷_烧生,烧窑缺陷_窑脏,烧窑缺陷_烧炸,烧窑缺陷_烟熏,烧窑缺陷_风惊,烧窑缺陷_水滴,烧窑缺陷_针孔,烧窑缺陷_合计,其他缺陷_崩脏,其他缺陷_坯磕,其他缺陷_研磨,其他缺陷_复烧修补不良,其他缺陷_合计,研磨缺陷_眼,研磨缺陷_底,研磨缺陷_底和面,研磨缺陷_面,研磨缺陷_边,研磨缺陷_研磨配盖,研磨缺陷_合计');
+                        console.log("getUserDefectGroupNameData=0", arr);
+                    }
+                }
 
             });
         }
- 
+
         //搜索提交
         function tbSearchSubmit() {
             var isNotcheck = 0;
             if ($('#chkNotHave').checkbox('options').checked) {
                 isNotcheck = 1;
             }
-            
+
             let json = $('#ffMaster').serializeJson();
             // 查询条件的暂存
             localStorage.setItem("SearchSubmit", JSON.stringify(json));
             json["name"] = name;
-            console.log("tbSearchSubmit",json);
-            // 插入查询缺陷的条件  
+            // 插入查询缺陷的条件
             if ($('#ffMaster').form("validate")) {
                 if ($('#chkMonitor').checkbox('options').checked) {
                     $('#DataGridMasterGrid').datagridLoadRpt({
                         title: '',
                         idField: 'SID',
                         queryParams: json,
-                        url: 'rptnew.ashx?m=jiezhauang&id=' + request('id') + '&isNotcheck=' + isNotcheck ,
+                        url: 'rptnew.ashx?m=jiezhauang&id=' + request('id') + '&isNotcheck=' + isNotcheck,
                         fixWidth: 140,
                         mergeWidth: 80,
-                        splitChar: '_'
+                        splitChar: '_',
+                        onLoadSuccess: onLoadSuccess
                     });
                     t = 1
                 }
@@ -129,16 +131,41 @@
                         title: '',
                         idField: 'SID',
                         queryParams: json,
-                        url: 'rptnew.ashx?m=master&id=' + request('id') + '&isNotcheck=' + isNotcheck  ,
+                        url: 'rptnew.ashx?m=master&id=' + request('id') + '&isNotcheck=' + isNotcheck,
                         fixWidth: 140,
                         mergeWidth: 80,
-                        splitChar: '_'
+                        splitChar: '_',
+                        onLoadSuccess: onLoadSuccess
                     });
                     t = 2
                 }
             }
         }
 
+        function onLoadSuccess(data) {
+           
+            if ($('#procedureidMaster').val() == "13" || $('#procedureidMaster').val() == "35") {
+                $('#DataGridMasterGrid').datagrid('autoSizeColumn', '出窑数');
+                $('#DataGridMasterGrid').datagrid('autoSizeColumn', 'A级');
+                $('#DataGridMasterGrid').datagrid('autoSizeColumn', 'U级');
+                $('#DataGridMasterGrid').datagrid('autoSizeColumn', 'AA级');
+                $('#DataGridMasterGrid').datagrid('autoSizeColumn', '去AA');
+                $('#DataGridMasterGrid').datagrid('autoSizeColumn', 'R级');
+                $('#DataGridMasterGrid').datagrid('autoSizeColumn', 'F级');
+                $('#DataGridMasterGrid').datagrid('autoSizeColumn', 'UA率');
+            } else {
+                $('#DataGridMasterGrid').datagrid('autoSizeColumn', '检验数');
+                $('#DataGridMasterGrid').datagrid('autoSizeColumn', 'AA级');
+                $('#DataGridMasterGrid').datagrid('autoSizeColumn', '研磨');
+                $('#DataGridMasterGrid').datagrid('autoSizeColumn', '直接冷补');
+                $('#DataGridMasterGrid').datagrid('autoSizeColumn', '研磨后冷补');
+                $('#DataGridMasterGrid').datagrid('autoSizeColumn', '堵漏气');
+                $('#DataGridMasterGrid').datagrid('autoSizeColumn', '刷洗不良');
+                $('#DataGridMasterGrid').datagrid('autoSizeColumn', '再去AA');
+                $('#DataGridMasterGrid').datagrid('autoSizeColumn', 'F级');
+            }
+        }
+
         // 2021-6-11 dongyan  添加 结转数据开关 选择结转测试复选框 将除时间外的条件禁用
         function tbChangeState(checked) {
             if (checked) {
@@ -151,7 +178,7 @@
         }
 
         function tbChangeDefect(e) {
-            console.log("tbChangeDefect",e);
+            console.log("tbChangeDefect", e);
         }
 
         //导出
@@ -204,7 +231,7 @@
         // 点击某行某列
         function dgDblclickcelldetail(index, fields, value) {
             var row = $('#DataGridMasterGrid').datagrid('getRows')[index];
-            console.log(index, fields, value, row); 
+            console.log(index, fields, value, row);
             if (row["产品名称"] == null || row["产品名称"] == "") {
                 return;
             }

+ 30 - 259
wwwroot/mes/rpt/rpt014/rptnew.ashx

@@ -195,49 +195,11 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                     }
                 }
             }
-            #endregion
-
-            //       using (IDataAccess conn = DataAccess.Create())
-            //       {
-            //           col = conn.ExecuteDatatable(@"
-            //SELECT
-            //	DG.DEFECTGROUPTYPE AS TNO,
-            //	DG.DEFECTGROUPID AS DNO,
-            //	(case when INSTR(to_char(dg.defectgroupname), '施釉缺陷') > 0 then '施釉缺陷' else  to_char(dg.defectgroupname) end ) || '_' || to_char(D.DEFECTNAME) AS DEFECT 
-            //FROM
-            //	TP_MST_DEFECTGROUP DG
-            //	LEFT JOIN TP_MST_DEFECT D ON DG.DEFECTID = D.DEFECTID 
-            //WHERE 
-            //	DG.DEFECTGROUPTYPE LIKE '每窑%' and  DG.defectgrouptype != '每窑4'
-            //UNION
-
-            //SELECT
-            //	DG.DEFECTGROUPTYPE AS TNO,
-            //	9999 AS DNO,
-            //	(case when INSTR(to_char(dg.defectgroupname), '施釉缺陷') > 0 then '施釉缺陷' else  to_char(dg.defectgroupname) end ) || '_合计' AS DEFECT 
-            //FROM
-            //	(select * from TP_MST_DEFECTGROUP WHERE DEFECTGROUPTYPE LIKE '每窑%'  and  DG.defectgrouptype != '每窑4') DG
-            //GROUP BY 
-            //	DG.DEFECTGROUPTYPE,
-            //	(case when INSTR(to_char(dg.defectgroupname), '施釉缺陷') > 0 then '施釉缺陷' else  to_char(dg.defectgroupname) end )
-
-            //ORDER BY
-            //	TNO,DNO
-            //");
-            //       }
-
-            //       for (int i = 0; i < col.Rows.Count; i++)
-            //       {
-            //           if (defectStr.IndexOf("'" + col.Rows[i]["DEFECT"].ToString() + "'") < 0)
-            //           {
-            //               if (i > 0) defectStr += ",";
-            //               defectStr += "'" + col.Rows[i]["DEFECT"].ToString() + "' AS " + col.Rows[i]["DEFECT"].ToString();
-            //           }
-            //       }
+            #endregion 
             #endregion
             using (IDataAccess conn = DataAccess.Create())
             {
-                if (proc == "13")
+                if (proc == "13" || proc == "35")
                 {
                     //读取报表数据
                     sqlStr = @"
@@ -290,7 +252,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 				           
 			            WHERE
                            PD.PROCEDUREID = @PROCEDUREID@
-                           AND PD.VALUEFLAG = '1'  AND PD.CHECKBATCHNO = 1
+                           AND PD.CHECKFLAG = 1
                            AND PD.CREATETIME >= @DATEBEGIN@
                            AND PD.CREATETIME < @DATEEND@
                            AND (PD.KILNID = @KILNID@ OR @KILNID@ IS NULL) 
@@ -300,36 +262,43 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 			            SELECT
 					            TO_CHAR(PD.PRODUCTIONDATAID),
 					            MAX( PMAX.PRODUCTIONDATAID ) MPDID,
-					            PD.GOODSLEVELTYPEID,
-					            PD.GOODSID,
-					            PD.REWORKPROCEDUREID,
+					            PDD.GOODSLEVELTYPEID,
+					            PDD.GOODSID,
+					            PDD.REWORKPROCEDUREID,
 								0 LB_NUM,
 					            0 B_NUM, 
 					            0 OUT_K,
 					            CASE WHEN sum( PMAX.PRODUCTIONDATAID ) > 0 THEN 1 ELSE 0 END H_FLAG, 
                                 0 Waste
 			            FROM
-				            TP_PM_PRODUCTIONDATA PD
-			                LEFT JOIN TP_PM_PRODUCTIONDATA PMAX ON PMAX.GROUTINGDAILYDETAILID = PD.GROUTINGDAILYDETAILID 
-			                AND PMAX.PRODUCTIONDATAID < PD.PRODUCTIONDATAID AND PMAX.VALUEFLAG = '1' AND PMAX.PROCEDUREMODEL = '1'
-				            /*20  研磨 22  直接冷补 23  研磨后冷补(非回收) 37  堵漏气 41  刷洗不良*/
-				            AND PMAX.PROCEDUREID IN (20, 22, 23, 37, 41)
-				            
-				            INNER JOIN TP_PC_GROUTINGLINE GL ON GL.GROUTINGLINEID = PD.GROUTINGLINEID 
-			            WHERE
-                           PD.VALUEFLAG = '1'
-                           AND PD.PROCEDUREID = @PROCEDUREID@
-                           AND PD.CHECKBATCHNO = 1
+				            ( SELECT MAX(PD.PRODUCTIONDATAID) PRODUCTIONDATAID
+										  ,PD.GOODSID
+										  ,PD.GROUTINGDAILYDETAILID
+										  ,TO_CHAR(PD.CREATETIME, 'YYYY-MM-DD')
+							 FROM TP_PM_PRODUCTIONDATA PD 
+							  INNER JOIN TP_PC_GROUTINGLINE GL ON GL.GROUTINGLINEID = PD.GROUTINGLINEID
+								WHERE
+                           PD.PROCEDUREID = @PROCEDUREID@
+                            -- AND PD.VALUEFLAG = '1'
+                           -- AND PD.CHECKBATCHNO = 1 
                            AND PD.CREATETIME >= @DATEBEGIN@
                            AND PD.CREATETIME < @DATEEND@
                            AND (PD.KILNID = @KILNID@ OR @KILNID@ IS NULL) 
                             AND PD.GOODSCODE IN({goodsCodes})
                            AND GL.BUILDINGNO {BUILDINGNO}
+							 GROUP BY PD.GOODSID ,PD.GROUTINGDAILYDETAILID ,TO_CHAR(PD.CREATETIME, 'YYYY-MM-DD')  
+							) PD
+			                LEFT JOIN TP_PM_PRODUCTIONDATA PMAX ON PMAX.GROUTINGDAILYDETAILID = PD.GROUTINGDAILYDETAILID 
+			                AND PMAX.PRODUCTIONDATAID < PD.PRODUCTIONDATAID AND PMAX.VALUEFLAG = '1' AND PMAX.PROCEDUREMODEL = '1'
+				            /*20  研磨 22  直接冷补 23  研磨后冷补(非回收) 37  堵漏气 41  刷洗不良*/
+				            AND PMAX.PROCEDUREID IN (20, 22, 23, 37, 41)
+				             INNER JOIN TP_PM_PRODUCTIONDATA PDD ON PDD.PRODUCTIONDATAID = PD.PRODUCTIONDATAID 
+			             
 			            GROUP BY
 				            PD.PRODUCTIONDATAID,
-				            PD.GOODSLEVELTYPEID,
-				            PD.GOODSID,
-				            PD.REWORKPROCEDUREID                              
+				            PDD.GOODSLEVELTYPEID,
+				            PDD.GOODSID,
+				            PDD.REWORKPROCEDUREID                              
 				            ) T
 			            LEFT JOIN TP_PM_PRODUCTIONDATA RPD ON RPD.PRODUCTIONDATAID = T.MPDID
 			            INNER JOIN TP_MST_GOODS G ON G.GOODSID = T.GOODSID
@@ -440,205 +409,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 				ORDER BY TA.GOODSTYPENAME,TA.GOODSCODE
                 ".Replace("{DEFECT}", defectStr).Replace("{BUILDINGNO}", buding).Replace("{goodsCodes}", goodssql);
                 }
-                else if (proc == "35")
-                {
-                    //读取报表数据
-                    sqlStr = @"
-            SELECT 
-	            TA.GOODSNAME AS 产品名称,
-				TA.GOODSCODE AS 产品编码,
-DECODE( TA.GID, 3, '合计', TA.GOODSTYPENAME ) AS 产品类别,
-	            DECODE( TA.OUT_K, 0, NULL, TA.OUT_K ) AS 出窑数, 
-	            DECODE( TA.COUNT_U4, 0, NULL, TA.COUNT_U4 ) AS U级,
-	            DECODE( TA.COUNT_U5  , 0, NULL, TA.COUNT_U5   ) A级,
-	            DECODE( TA.COUNT_AA, 0, NULL, TA.COUNT_AA ) AS AA级, 
-	            DECODE( TA.COUNT_R, 0, NULL, TA.COUNT_R ) AS R级, 
-	            DECODE( TA.COUNT_U7, 0, NULL, TA.COUNT_U7 ) AS 去AA,  
-	            DECODE( TA.Waste, 0, NULL, TA.Waste ) AS F级,
-	            CASE WHEN TA.OUT_K IS NULL OR TA.OUT_K = 0 THEN NULL ELSE ROUND( ( TA.COUNT_U4 + TA.COUNT_U5 + TA.COUNT_AA ) / TA.OUT_K, 4 ) * 100 END AS UA率,
-	            TD.* 
-            FROM
-		            (
-		            SELECT
-			           GROUPING_ID ( GT.GOODSTYPECODE, G.GOODSCODE ) GID,
-			            GT.GOODSTYPECODE,
-			            GT.GOODSTYPENAME,
-			            G.GOODSCODE,
-			            G.GOODSNAME, 
-			            SUM( T.OUT_K ) OUT_K,
-			            SUM( CASE WHEN T.H_FLAG = 0 AND T.GOODSLEVELTYPEID = 4 THEN 1 ELSE 0 END ) COUNT_U4, -- 直接正品
-			            SUM( CASE WHEN T.H_FLAG = 0 AND T.GOODSLEVELTYPEID = 5 THEN 1 ELSE 0 END ) COUNT_U5, -- 直接副品
-			            SUM( CASE WHEN  T.GOODSLEVELTYPEID = 7 THEN 1 ELSE 0 END ) COUNT_U7, -- 直接次品
-			            SUM( CASE WHEN T.H_FLAG = 0 AND T.GOODSLEVELTYPEID = 6 AND T.REWORKPROCEDUREID = 19 THEN 1 ELSE 0 END ) AS COUNT_R,  
-			            SUM( CASE WHEN RPD.PROCEDUREID IN ( 22, 23, 37, 20, 41 ) THEN 1 ELSE 0 END ) COUNT_L, --  研磨、堵漏气、刷洗不良、直接冷补、研磨冷补
-			            SUM( CASE WHEN T.GOODSLEVELTYPEID IN ( 4, 5 ) AND RPD.PROCEDUREID IN ( 22, 23, 37, 20, 41 ) THEN 1 ELSE 0 END ) COUNT_AA, -- 研磨、堵漏气、刷洗不良、直接冷补、研磨冷补合格数
- 
-						SUM( CASE WHEN  T.GOODSLEVELTYPEID = 20 THEN 1 ELSE 0 END ) Waste -- 直接报废
-		            FROM
-			            (
-			            SELECT
-					            PD.PRODUCTIONDATAID,
-					            NULL MPDID,
-					            0 GOODSLEVELTYPEID,
-					            PD.GOODSID,
-					            0 REWORKPROCEDUREID,
-								0 LB_NUM,
-					            0 B_NUM, 
-					            1 OUT_K,
-					            -1 H_FLAG,
-                                0 Waste
-			            FROM
-				            TP_PM_PRODUCTIONDATA PD
-				            INNER JOIN TP_PC_GROUTINGLINE GL ON GL.GROUTINGLINEID = PD.GROUTINGLINEID  
-				           
-			            WHERE
-                           PD.PROCEDUREID = @PROCEDUREID@
-                            AND PD.VALUEFLAG = '1'  AND PD.CHECKBATCHNO = 1
-                           AND PD.CREATETIME >= @DATEBEGIN@
-                           AND PD.CREATETIME < @DATEEND@
-                           AND (PD.KILNID = @KILNID@ OR @KILNID@ IS NULL) 
-                           AND PD.GOODSCODE IN({goodsCodes})
-                           AND GL.BUILDINGNO {BUILDINGNO}
-			            UNION ALL
-			            SELECT
-					            PD.PRODUCTIONDATAID,
-					            MAX( PMAX.PRODUCTIONDATAID ) MPDID,
-					            PD.GOODSLEVELTYPEID,
-					            PD.GOODSID,
-					            PD.REWORKPROCEDUREID,
-								0 LB_NUM,
-					            0 B_NUM,  
-					            0 OUT_K,
-					            CASE WHEN sum( PMAX.PRODUCTIONDATAID ) > 0 THEN 1 ELSE 0 END H_FLAG, 
-                                0 Waste
-			            FROM
-				            TP_PM_PRODUCTIONDATA PD
-			                LEFT JOIN TP_PM_PRODUCTIONDATA PMAX ON PMAX.GROUTINGDAILYDETAILID = PD.GROUTINGDAILYDETAILID 
-			                AND PMAX.PRODUCTIONDATAID < PD.PRODUCTIONDATAID AND PMAX.VALUEFLAG = '1' AND PMAX.PROCEDUREMODEL = '1'
-				            /*20  研磨 22  直接冷补 23  研磨后冷补(非回收) 37  堵漏气 41  刷洗不良*/
-				            AND PMAX.PROCEDUREID IN (20, 22, 23, 37, 41)
-				            
-				            INNER JOIN TP_PC_GROUTINGLINE GL ON GL.GROUTINGLINEID = PD.GROUTINGLINEID 
-			            WHERE
-                           PD.VALUEFLAG = '1'
-                           AND PD.PROCEDUREID = @PROCEDUREID@
-                           AND PD.CHECKBATCHNO = 1
-                           AND PD.CREATETIME >= @DATEBEGIN@
-                           AND PD.CREATETIME < @DATEEND@
-                           AND (PD.KILNID = @KILNID@ OR @KILNID@ IS NULL) 
-                            AND PD.GOODSCODE IN({goodsCodes})
-                           AND GL.BUILDINGNO {BUILDINGNO}
-			            GROUP BY
-				            PD.PRODUCTIONDATAID,
-				            PD.GOODSLEVELTYPEID,
-				            PD.GOODSID,
-				            PD.REWORKPROCEDUREID                             
-				            ) T
-			            LEFT JOIN TP_PM_PRODUCTIONDATA RPD ON RPD.PRODUCTIONDATAID = T.MPDID
-			            INNER JOIN TP_MST_GOODS G ON G.GOODSID = T.GOODSID
-			            INNER JOIN TP_MST_GOODSTYPE GT ON GT.GOODSTYPEID = G.GOODSTYPEID 
-			            GROUP BY
-				            GROUPING SETS ( ( GT.GOODSTYPECODE, GT.GOODSTYPENAME, G.GOODSCODE, G.GOODSNAME ), ( GT.GOODSTYPECODE, GT.GOODSTYPENAME ), ( ) ) 
-				            ) TA
-	            LEFT JOIN (
-	            SELECT
-		            * 
-	            FROM
-		            (
-			            SELECT
-				            CASE WHEN TT.GID IN ( 12, 13, 15 ) THEN 3 WHEN TT.GID IN ( 4, 5, 7 ) THEN 1 ELSE 0 END AS D_GID,
-				            TT.GOODSTYPECODE D_GOODSTYPECODE, --,TT.GOODSTYPENAME D_
-				            TT.GOODSCODE D_GOODSCODE,
-				            CASE WHEN TT.GID IN ( 1, 5, 13 ) THEN TT.DEFECT || '合计' WHEN TT.GID IN ( 3, 7, 15 ) THEN '合计' ELSE TT.DEFECT END AS DEFECT,
-			              TT.CNUM 
-					FROM (SELECT grouping_id(ppp.goodstypecode
-                                               ,ppp.goodscode
-                                               ,(case when INSTR(to_char(ppp.defectgroupname), '施釉缺陷') > 0 then '施釉缺陷' else  to_char(ppp.defectgroupname) end )
-                                               ,ppp.defectname) AS gid
-                                   ,ppp.goodstypecode
-                                   ,ppp.goodstypename
-                                   ,ppp.goodscode
-                                   ,(case when INSTR(to_char(ppp.defectgroupname), '施釉缺陷') > 0 then '施釉缺陷' else  to_char(ppp.defectgroupname) end )
-                                   ,to_char((case when INSTR(to_char(ppp.defectgroupname), '施釉缺陷') > 0 then '施釉缺陷' else  to_char(ppp.defectgroupname) end ) || '_' || ppp.defectname) AS defect
-                                   ,SUM(CASE
-                                            WHEN ppp.defectid = 11
-                                                 AND (ppp.goodsleveltypeid = 4 OR ppp.goodsleveltypeid = 5) THEN
-                                             0
-                                            ELSE
-                                             1
-                                        END) AS cnum
-                             
-                               FROM (SELECT DISTINCT gt.goodstypecode
-                                                    ,gt.goodstypename
-                                                    ,g.goodscode
-                                                    ,pdp.defectgroupname
-                                                    ,to_char(pdp.defectgroupname || '_' ||
-                                                             m.defectname) AS defect
-                                                    ,d.defectid
-                                                    ,m.defectname
-                                                    ,p.goodsleveltypeid
-                                                    ,pp.productiondataid			             
-							FROM
-				            TP_PM_PRODUCTIONDATA P
-							inner join   tp_pm_productiondata pp on p.groutingdailydetailid = pp.groutingdailydetailid  and pp.valueflag = '1'
-				            INNER JOIN TP_MST_GOODS G ON G.GOODSID = P.GOODSID
-				            INNER JOIN TP_MST_GOODSTYPE GT ON GT.GOODSTYPEID = G.GOODSTYPEID
-				            INNER JOIN TP_PC_GROUTINGLINE L ON P.GROUTINGLINEID = L.GROUTINGLINEID
-				            INNER JOIN TP_PM_DEFECT D ON P.PRODUCTIONDATAID = D.PRODUCTIONDATAID --AND (P.GOODSLEVELTYPEID NOT IN (4, 5) OR D.DEFECTID <> 11)
-				            INNER JOIN TP_MST_DEFECT M ON ( M.DEFECTID = D.DEFECTID AND M.DEFECTID > 0 )
-				            LEFT JOIN TP_PC_PROCEDURE PR ON PR.PROCEDUREID = D.DEFECTPROCEDUREID
-				            INNER JOIN TP_MST_DEFECTGROUP PDP ON PDP.DEFECTID = D.DEFECTID AND PDP.DEFECTGROUPTYPE LIKE '每窑%'
-				            AND ( 
-									--( PDP.PROCEDUREID1 = PR.PROCEDUREID OR PDP.PROCEDUREID2 = PR.PROCEDUREID )
-									--xuwei 2020-09-01 add 重烧的没有责任工序也算
-									--OR @PROCEDUREID@ = 35
-									-- 20250417 改为用 是否走过 tp_mst_defectgroup 缺陷工序分组的 工序id1 工序id2 为基准
-									pdp.procedureid1 = pp.procedureid OR pdp.procedureid2 = pp.procedureid
-								) 
-			            WHERE
-				            P.VALUEFLAG = '1'
-                            AND P.PROCEDUREID = @PROCEDUREID@
-                            AND P.CHECKBATCHNO = 1
-							--xuwei fix 2020-10-09 begin
-                            AND P.CHECKTIME >= @DATEBEGIN@
-                            AND P.CHECKTIME < @DATEEND@
-                            --AND P.CREATETIME >= @DATEBEGIN@
-                            --AND P.CREATETIME < @DATEEND@
-							--xuwei fix 2020-10-09 end 
-
-                            AND P.GOODSLEVELTYPEID <> 4
-                            AND (P.KILNID = @KILNID@ OR @KILNID@ IS NULL)
-                            -- AND (P.GOODSCODE = @GOODSCODE@ OR @GOODSCODE@ IS NULL)
-                            --AND (INSTR((@GOODSCODE@),P.GOODSCODE)>0 OR @GOODSCODE@ IS NULL)
-                             AND P.GOODSCODE IN({goodsCodes})
-                            AND L.BUILDINGNO {BUILDINGNO}) ppp
-				            --XUWEI 2020-07-10 ADD
-				            --AND (NOT D.DEFECTPROCEDUREID IS NULL)
-			            GROUP BY GROUPING SETS((ppp.goodstypecode, ppp.goodstypename, ppp.goodscode, (case when INSTR(to_char(ppp.defectgroupname), '施釉缺陷') > 0 then '施釉缺陷' else  to_char(ppp.defectgroupname) end ), ppp.defectname),
-                              (ppp.goodstypecode, ppp.goodstypename, ppp.goodscode, (case when INSTR(to_char(ppp.defectgroupname), '施釉缺陷') > 0 then '施釉缺陷' else  to_char(ppp.defectgroupname) end )),
-                              (ppp.goodstypecode, ppp.goodstypename, ppp.goodscode),
-                              (ppp.goodstypecode, ppp.goodstypename, (case when INSTR(to_char(ppp.defectgroupname), '施釉缺陷') > 0 then '施釉缺陷' else  to_char(ppp.defectgroupname) end ), ppp.defectname),
-                              (ppp.goodstypecode, ppp.goodstypename, (case when INSTR(to_char(ppp.defectgroupname), '施釉缺陷') > 0 then '施釉缺陷' else  to_char(ppp.defectgroupname) end )),
-                              (ppp.goodstypecode, ppp.goodstypename),
-                              ((case when INSTR(to_char(ppp.defectgroupname), '施釉缺陷') > 0 then '施釉缺陷' else  to_char(ppp.defectgroupname) end ), ppp.defectname),
-                              ((case when INSTR(to_char(ppp.defectgroupname), '施釉缺陷') > 0 then '施釉缺陷' else  to_char(ppp.defectgroupname) end )),())
-                              ORDER BY ppp.goodstypecode
-                                      ,ppp.goodscode
-                                      ,(case when INSTR(to_char(ppp.defectgroupname), '施釉缺陷') > 0 then '施釉缺陷' else  to_char(ppp.defectgroupname) end )
-                                      ,ppp.defectname) tt) PIVOT (
-			            SUM( CNUM ) FOR DEFECT IN ({DEFECT},'合计' AS 合计 
-			            ) 
-		            ) 
-	            ) TD ON TA.GID = TD.D_GID 
-	            AND 
-	            (
-		            ( TA.GID = 0 AND TA.GOODSTYPECODE = TD.D_GOODSTYPECODE AND TA.GOODSCODE = TD.D_GOODSCODE ) 
-		            OR ( TA.GID = 1 AND TA.GOODSTYPECODE = TD.D_GOODSTYPECODE ) 
-		            OR ( TA.GID = 3 ) 
-	            )
-				ORDER BY TA.GOODSTYPENAME,TA.GOODSCODE
-                ".Replace("{DEFECT}", defectStr).Replace("{BUILDINGNO}", buding).Replace("{goodsCodes}", goodssql);
-                }
+                 
                 else
                 {
                     //读取报表数据
@@ -694,8 +465,8 @@ DECODE( TA.GID, 3, '合计', TA.GOODSTYPENAME ) AS 产品类别,
 								  PD.PROCEDUREID in ( 13 ,35)
 								   AND  PD.VALUEFLAG = '1'
 								   AND PD.CHECKBATCHNO = 1
-								   AND PD.CREATETIME >= @DATEBEGIN@
-								   AND PD.CREATETIME < @DATEEND@
+								   AND PD.CHECKTIME >= @DATEBEGIN@
+								   AND PD.CHECKTIME < @DATEEND@
 								   AND (PD.KILNID = @KILNID@ OR @KILNID@ IS NULL) 
 									AND PD.GOODSCODE IN({goodsCodes})
 								   AND GL.BUILDINGNO {BUILDINGNO}

+ 59 - 218
wwwroot/mes/rpt/rpt014/rptnew_detail.ashx

@@ -102,7 +102,44 @@ public class rptnew_detail : IHttpHandler, IReadOnlySessionState
             }
             #endregion
             // 各个列的明细数据
-            string sqlDetail = "";
+            string sqlDetail = @" SELECT  DISTINCT '" + gs + @"' 产品编码,  T.Barcode  产品条码				            
+			            FROM
+				            (SELECT
+					            PDD.Barcode,
+					            MAX( PMAX.PRODUCTIONDATAID ) MPDID,
+					            PDD.GOODSLEVELTYPEID,
+					            PDD.GOODSID,
+					            PDD.REWORKPROCEDUREID, 
+					            CASE WHEN sum( PMAX.PRODUCTIONDATAID ) > 0 THEN 1 ELSE 0 END H_FLAG
+			            FROM
+				            ( SELECT MAX(PD.PRODUCTIONDATAID) PRODUCTIONDATAID
+										  ,PD.GOODSID
+										  ,PD.GROUTINGDAILYDETAILID
+										  ,TO_CHAR(PD.CREATETIME, 'YYYY-MM-DD')
+							 FROM TP_PM_PRODUCTIONDATA PD 
+							  INNER JOIN TP_PC_GROUTINGLINE GL ON GL.GROUTINGLINEID = PD.GROUTINGLINEID
+								WHERE
+                           PD.PROCEDUREID in ( {PROCEDUREID} ) 
+                            -- AND PD.VALUEFLAG = '1'
+                           -- AND PD.CHECKBATCHNO = 1 
+                           AND PD.CREATETIME >= @DATEBEGIN@
+                           AND PD.CREATETIME < @DATEEND@
+                           AND (PD.KILNID = @KILNID@ OR @KILNID@ IS NULL) 
+                            AND PD.GOODSCODE IN( '" + gs + @"' )
+                           AND GL.BUILDINGNO {BUILDINGNO}
+							 GROUP BY PD.GOODSID ,PD.GROUTINGDAILYDETAILID ,TO_CHAR(PD.CREATETIME, 'YYYY-MM-DD')  
+							) PD
+			                LEFT JOIN TP_PM_PRODUCTIONDATA PMAX ON PMAX.GROUTINGDAILYDETAILID = PD.GROUTINGDAILYDETAILID 
+			                AND PMAX.PRODUCTIONDATAID < PD.PRODUCTIONDATAID AND PMAX.VALUEFLAG = '1' AND PMAX.PROCEDUREMODEL = '1'
+				            /*20  研磨 22  直接冷补 23  研磨后冷补(非回收) 37  堵漏气 41  刷洗不良*/
+				            AND PMAX.PROCEDUREID IN (20, 22, 23, 37, 41)
+				             INNER JOIN TP_PM_PRODUCTIONDATA PDD ON PDD.PRODUCTIONDATAID = PD.PRODUCTIONDATAID 
+			             
+			            GROUP BY
+				            PDD.Barcode,
+				            PDD.GOODSLEVELTYPEID,
+				            PDD.GOODSID,
+				            PDD.REWORKPROCEDUREID    ) T  ";
             switch (fields)
             {
                 case "出窑数":
@@ -114,7 +151,7 @@ public class rptnew_detail : IHttpHandler, IReadOnlySessionState
 				           
 			            WHERE
                            PD.PROCEDUREID in ( {PROCEDUREID} )
-                            AND PD.VALUEFLAG = '1'  AND PD.CHECKBATCHNO = 1
+                           AND  PD.CHECKFLAG = 1
                            AND PD.CREATETIME >= @DATEBEGIN@
                            AND PD.CREATETIME < @DATEEND@
                            AND (PD.KILNID = @KILNID@ OR @KILNID@ IS NULL) 
@@ -124,152 +161,22 @@ public class rptnew_detail : IHttpHandler, IReadOnlySessionState
                     }
                 case "U级":
                     {
-                        sqlDetail = @" SELECT  DISTINCT '" + gs + @"' 产品编码,  Barcode  产品条码				            
-			            FROM
-				            (SELECT to_char(pd.Barcode)  Barcode
-                              ,MAX(pmax.productiondataid) mpdid
-                              ,pd.goodsleveltypeid
-                              ,pd.goodsid 
-                              ,CASE
-                                   WHEN SUM(pmax.productiondataid) > 0 THEN
-                                    1
-                                   ELSE
-                                    0
-                               END h_flag 
-                          FROM tp_pm_productiondata pd
-                          LEFT JOIN tp_pm_productiondata pmax
-                            ON pmax.groutingdailydetailid = pd.groutingdailydetailid
-                           AND pmax.productiondataid < pd.productiondataid
-                           AND pmax.valueflag = '1'
-                           AND pmax.proceduremodel = '1'
-                              /*20  研磨 22  直接冷补 23  研磨后冷补(非回收) 37  堵漏气 41  刷洗不良*/
-                           AND pmax.procedureid IN (20, 22, 23, 37, 41)
-                         INNER JOIN tp_pc_groutingline gl
-                            ON gl.groutinglineid = pd.groutinglineid
-                         WHERE pd.valueflag = '1'
-                           AND pd.procedureid in ( {PROCEDUREID} )
-                           AND pd.checkbatchno = 1
-                           AND pd.createtime >= @DATEBEGIN@
-                           AND pd.createtime < @DATEEND@
-                           AND (pd.kilnid = @KILNID@ OR @KILNID@ IS NULL)
-                           AND pd.goodscode IN( '" + gs + @"' )
-                           AND gl.buildingno {BUILDINGNO}
-                         GROUP BY pd.Barcode
-                                 ,pd.goodsleveltypeid
-                                 ,pd.goodsid  ) T where T.GOODSLEVELTYPEID = 4 and T.H_FLAG = 0";
-
+                        sqlDetail += @"  where T.GOODSLEVELTYPEID = 4 and T.H_FLAG = 0";
                         break;
                     }
                 case "A级":
                     {
-                        sqlDetail = @" SELECT  DISTINCT '" + gs + @"' 产品编码,  Barcode  产品条码				            
-			            FROM
-				            (SELECT to_char(pd.Barcode) Barcode
-                              ,MAX(pmax.productiondataid) mpdid
-                              ,pd.goodsleveltypeid
-                              ,pd.goodsid 
-                              ,CASE
-                                   WHEN SUM(pmax.productiondataid) > 0 THEN
-                                    1
-                                   ELSE
-                                    0
-                               END h_flag 
-                          FROM tp_pm_productiondata pd
-                          LEFT JOIN tp_pm_productiondata pmax
-                            ON pmax.groutingdailydetailid = pd.groutingdailydetailid
-                           AND pmax.productiondataid < pd.productiondataid
-                           AND pmax.valueflag = '1'
-                           AND pmax.proceduremodel = '1'
-                              /*20  研磨 22  直接冷补 23  研磨后冷补(非回收) 37  堵漏气 41  刷洗不良*/
-                           AND pmax.procedureid IN (20, 22, 23, 37, 41)
-                         INNER JOIN tp_pc_groutingline gl
-                            ON gl.groutinglineid = pd.groutinglineid
-                         WHERE pd.valueflag = '1'
-                           AND pd.procedureid in ( {PROCEDUREID} )
-                           AND pd.checkbatchno = 1
-                           AND pd.createtime >= @DATEBEGIN@
-                           AND pd.createtime < @DATEEND@
-                           AND (pd.kilnid = @KILNID@ OR @KILNID@ IS NULL)
-                           AND pd.goodscode IN( '" + gs + @"' )
-                           AND gl.buildingno {BUILDINGNO}
-                         GROUP BY pd.Barcode
-                                 ,pd.goodsleveltypeid
-                                 ,pd.goodsid  ) T where T.GOODSLEVELTYPEID = 5 and T.H_FLAG = 0";
+                        sqlDetail += @"  where T.GOODSLEVELTYPEID = 5 and T.H_FLAG = 0";
                         break;
                     }
                 case "AA级":
                     {
-                        sqlDetail = @" SELECT  DISTINCT '" + gs + @"' 产品编码, T.Barcode  产品条码				            
-			            FROM
-				            (SELECT to_char(pd.Barcode) Barcode
-                              ,MAX(pmax.productiondataid) mpdid
-                              ,pd.goodsleveltypeid
-                              ,pd.goodsid 
-                              ,CASE
-                                   WHEN SUM(pmax.productiondataid) > 0 THEN
-                                    1
-                                   ELSE
-                                    0
-                               END h_flag 
-                          FROM tp_pm_productiondata pd
-                          LEFT JOIN tp_pm_productiondata pmax
-                            ON pmax.groutingdailydetailid = pd.groutingdailydetailid
-                           AND pmax.productiondataid < pd.productiondataid
-                           AND pmax.valueflag = '1'
-                           AND pmax.proceduremodel = '1'
-                              /*20  研磨 22  直接冷补 23  研磨后冷补(非回收) 37  堵漏气 41  刷洗不良*/
-                           AND pmax.procedureid IN (20, 22, 23, 37, 41)
-                         INNER JOIN tp_pc_groutingline gl
-                            ON gl.groutinglineid = pd.groutinglineid
-                         WHERE pd.valueflag = '1'
-                           AND pd.procedureid in ( {PROCEDUREID} )
-                           AND pd.checkbatchno = 1
-                           AND pd.createtime >= @DATEBEGIN@
-                           AND pd.createtime < @DATEEND@
-                           AND (pd.kilnid = @KILNID@ OR @KILNID@ IS NULL)
-                           AND pd.goodscode IN( '" + gs + @"' )
-                           AND gl.buildingno {BUILDINGNO}
-                         GROUP BY pd.Barcode
-                                 ,pd.goodsleveltypeid
-                                 ,pd.goodsid  ) T  LEFT JOIN TP_PM_PRODUCTIONDATA RPD ON RPD.PRODUCTIONDATAID = T.MPDID where  T.GOODSLEVELTYPEID IN ( 4, 5 ) AND RPD.PROCEDUREID IN ( 22, 23, 37, 20, 41 )  ";
+                        sqlDetail += @"    LEFT JOIN TP_PM_PRODUCTIONDATA RPD ON RPD.PRODUCTIONDATAID = T.MPDID where  T.GOODSLEVELTYPEID IN ( 4, 5 ) AND RPD.PROCEDUREID IN ( 22, 23, 37, 20, 41 )  ";
                         break;
                     }
                 case "去AA":
                     {
-                        sqlDetail = @" SELECT  DISTINCT '" + gs + @"' 产品编码,   T.Barcode  产品条码				            
-			            FROM
-				            (SELECT to_char(pd.Barcode) Barcode
-                              ,MAX(pmax.productiondataid) mpdid
-                              ,pd.goodsleveltypeid
-                              ,pd.goodsid 
-                              ,CASE
-                                   WHEN SUM(pmax.productiondataid) > 0 THEN
-                                    1
-                                   ELSE
-                                    0
-                               END h_flag 
-                          FROM tp_pm_productiondata pd
-                          LEFT JOIN tp_pm_productiondata pmax
-                            ON pmax.groutingdailydetailid = pd.groutingdailydetailid
-                           AND pmax.productiondataid < pd.productiondataid
-                           AND pmax.valueflag = '1'
-                           AND pmax.proceduremodel = '1'
-                              /*20  研磨 22  直接冷补 23  研磨后冷补(非回收) 37  堵漏气 41  刷洗不良*/
-                           AND pmax.procedureid IN (20, 22, 23, 37, 41)
-                         INNER JOIN tp_pc_groutingline gl
-                            ON gl.groutinglineid = pd.groutinglineid
-                         WHERE pd.valueflag = '1'
-                           AND pd.procedureid in ( {PROCEDUREID} )
-                           AND pd.checkbatchno = 1
-                           AND pd.createtime >= @DATEBEGIN@
-                           AND pd.createtime < @DATEEND@
-                           AND (pd.kilnid = @KILNID@ OR @KILNID@ IS NULL)
-                           AND pd.goodscode IN( '" + gs + @"' )
-                           AND gl.buildingno {BUILDINGNO}
-                         GROUP BY pd.Barcode
-                                 ,pd.goodsleveltypeid
-                                 ,pd.goodsid  ) T  
-                                where  T.GOODSLEVELTYPEID = 7  ";
+                        sqlDetail += @"  where  T.GOODSLEVELTYPEID = 7  ";
                         break;
                     }
                 case "检验数":
@@ -298,8 +205,8 @@ public class rptnew_detail : IHttpHandler, IReadOnlySessionState
                          INNER JOIN tp_pc_groutingline gl
                             ON gl.groutinglineid = pd.groutinglineid
                          WHERE   pd.procedureid in ( {PROCEDUREID} ) 
-                           AND pd.createtime >= @DATEBEGIN@
-                           AND pd.createtime < @DATEEND@
+                           AND pd.CHECKTIME >= @DATEBEGIN@
+                           AND pd.CHECKTIME < @DATEEND@
                            AND (pd.kilnid = @KILNID@ OR @KILNID@ IS NULL)
                            AND pd.goodscode IN( '" + gs + @"' )
                            AND gl.buildingno {BUILDINGNO}
@@ -335,8 +242,8 @@ public class rptnew_detail : IHttpHandler, IReadOnlySessionState
                          INNER JOIN tp_pc_groutingline gl
                             ON gl.groutinglineid = pd.groutinglineid
                          WHERE   pd.procedureid in ( {PROCEDUREID} ) 
-                           AND pd.createtime >= @DATEBEGIN@
-                           AND pd.createtime < @DATEEND@
+                           AND pd.CHECKTIME >= @DATEBEGIN@
+                           AND pd.CHECKTIME < @DATEEND@
                            AND (pd.kilnid = @KILNID@ OR @KILNID@ IS NULL)
                            AND pd.goodscode IN( '" + gs + @"' )
                            AND gl.buildingno {BUILDINGNO}
@@ -348,79 +255,13 @@ public class rptnew_detail : IHttpHandler, IReadOnlySessionState
                     }
                 case "F级":
                     {
-                        sqlDetail = @" SELECT  DISTINCT '" + gs + @"' 产品编码,  Barcode  产品条码				            
-			            FROM
-				            (SELECT to_char(pd.Barcode) Barcode
-                              ,MAX(pmax.productiondataid) mpdid
-                              ,pd.goodsleveltypeid
-                              ,pd.goodsid 
-                              ,CASE
-                                   WHEN SUM(pmax.productiondataid) > 0 THEN
-                                    1
-                                   ELSE
-                                    0
-                               END h_flag 
-                          FROM tp_pm_productiondata pd
-                          LEFT JOIN tp_pm_productiondata pmax
-                            ON pmax.groutingdailydetailid = pd.groutingdailydetailid
-                           AND pmax.productiondataid < pd.productiondataid
-                           AND pmax.valueflag = '1'
-                           AND pmax.proceduremodel = '1'
-                              /*20  研磨 22  直接冷补 23  研磨后冷补(非回收) 37  堵漏气 41  刷洗不良*/
-                           AND pmax.procedureid IN (20, 22, 23, 37, 41)
-                         INNER JOIN tp_pc_groutingline gl
-                            ON gl.groutinglineid = pd.groutinglineid
-                         WHERE pd.valueflag = '1'
-                           AND pd.procedureid in ( {PROCEDUREID} )
-                           AND pd.checkbatchno = 1
-                           AND pd.createtime >= @DATEBEGIN@
-                           AND pd.createtime < @DATEEND@
-                           AND (pd.kilnid = @KILNID@ OR @KILNID@ IS NULL)
-                           AND pd.goodscode IN( '" + gs + @"' )
-                           AND gl.buildingno {BUILDINGNO}
-                         GROUP BY pd.Barcode
-                                 ,pd.goodsleveltypeid
-                                 ,pd.goodsid  ) T where T.GOODSLEVELTYPEID = 20   and T.H_FLAG = "
+                        sqlDetail += @"  where T.GOODSLEVELTYPEID = 20   and T.H_FLAG = "
                         + ((proc == "13" || proc == "35") ? 0 : 1);
                         break;
                     }
                 case "R级":
                     {
-                        sqlDetail = @" SELECT  DISTINCT '" + gs + @"' 产品编码,  Barcode  产品条码				            
-			            FROM
-				            (SELECT to_char(pd.Barcode) Barcode
-                              ,MAX(pmax.productiondataid) mpdid
-                              ,pd.goodsleveltypeid
-                              ,pd.goodsid 
-                              ,PD.REWORKPROCEDUREID
-                              ,CASE
-                                   WHEN SUM(pmax.productiondataid) > 0 THEN
-                                    1
-                                   ELSE
-                                    0
-                               END h_flag 
-                          FROM tp_pm_productiondata pd
-                          LEFT JOIN tp_pm_productiondata pmax
-                            ON pmax.groutingdailydetailid = pd.groutingdailydetailid
-                           AND pmax.productiondataid < pd.productiondataid
-                           AND pmax.valueflag = '1'
-                           AND pmax.proceduremodel = '1'
-                              /*20  研磨 22  直接冷补 23  研磨后冷补(非回收) 37  堵漏气 41  刷洗不良*/
-                           AND pmax.procedureid IN (20, 22, 23, 37, 41)
-                         INNER JOIN tp_pc_groutingline gl
-                            ON gl.groutinglineid = pd.groutinglineid
-                         WHERE pd.valueflag = '1'
-                           AND pd.procedureid in ( {PROCEDUREID} )
-                           AND pd.checkbatchno = 1
-                           AND pd.createtime >= @DATEBEGIN@
-                           AND pd.createtime < @DATEEND@
-                           AND (pd.kilnid = @KILNID@ OR @KILNID@ IS NULL)
-                           AND pd.goodscode IN( '" + gs + @"' )
-                           AND gl.buildingno {BUILDINGNO}
-                         GROUP BY pd.Barcode
-                                 ,pd.goodsleveltypeid
-                                 ,pd.goodsid
-                                 ,pd.reworkprocedureid ) T where T.GOODSLEVELTYPEID = 6 AND T.REWORKPROCEDUREID = 19 and T.H_FLAG = 0";
+                        sqlDetail += @"   where T.GOODSLEVELTYPEID = 6 AND T.REWORKPROCEDUREID = 19 and T.H_FLAG = 0";
                         break;
                     }
                 case "研磨":
@@ -450,8 +291,8 @@ public class rptnew_detail : IHttpHandler, IReadOnlySessionState
                          WHERE pd.valueflag = '1'
                            AND pd.procedureid in ( {PROCEDUREID} )
                            AND pd.checkbatchno = 1
-                           AND pd.createtime >= @DATEBEGIN@
-                           AND pd.createtime < @DATEEND@
+                           AND pd.CHECKTIME >= @DATEBEGIN@
+                           AND pd.CHECKTIME < @DATEEND@
                            AND (pd.kilnid = @KILNID@ OR @KILNID@ IS NULL)
                            AND pd.goodscode IN( '" + gs + @"' )
                            AND gl.buildingno {BUILDINGNO}
@@ -487,8 +328,8 @@ public class rptnew_detail : IHttpHandler, IReadOnlySessionState
                          WHERE pd.valueflag = '1'
                            AND pd.procedureid in ( {PROCEDUREID} )
                            AND pd.checkbatchno = 1
-                           AND pd.createtime >= @DATEBEGIN@
-                           AND pd.createtime < @DATEEND@
+                           AND pd.CHECKTIME >= @DATEBEGIN@
+                           AND pd.CHECKTIME < @DATEEND@
                            AND (pd.kilnid = @KILNID@ OR @KILNID@ IS NULL)
                            AND pd.goodscode IN( '" + gs + @"' )
                            AND gl.buildingno {BUILDINGNO}
@@ -524,8 +365,8 @@ public class rptnew_detail : IHttpHandler, IReadOnlySessionState
                          WHERE pd.valueflag = '1'
                            AND pd.procedureid in ( {PROCEDUREID} )
                            AND pd.checkbatchno = 1
-                           AND pd.createtime >= @DATEBEGIN@
-                           AND pd.createtime < @DATEEND@
+                           AND pd.CHECKTIME >= @DATEBEGIN@
+                           AND pd.CHECKTIME < @DATEEND@
                            AND (pd.kilnid = @KILNID@ OR @KILNID@ IS NULL)
                            AND pd.goodscode IN( '" + gs + @"' )
                            AND gl.buildingno {BUILDINGNO}
@@ -561,8 +402,8 @@ public class rptnew_detail : IHttpHandler, IReadOnlySessionState
                          WHERE pd.valueflag = '1'
                            AND pd.procedureid in ( {PROCEDUREID} )
                            AND pd.checkbatchno = 1
-                           AND pd.createtime >= @DATEBEGIN@
-                           AND pd.createtime < @DATEEND@
+                           AND pd.CHECKTIME >= @DATEBEGIN@
+                           AND pd.CHECKTIME < @DATEEND@
                            AND (pd.kilnid = @KILNID@ OR @KILNID@ IS NULL)
                            AND pd.goodscode IN( '" + gs + @"' )
                            AND gl.buildingno {BUILDINGNO}
@@ -598,8 +439,8 @@ public class rptnew_detail : IHttpHandler, IReadOnlySessionState
                          WHERE pd.valueflag = '1'
                            AND pd.procedureid in ( {PROCEDUREID} )
                            AND pd.checkbatchno = 1
-                           AND pd.createtime >= @DATEBEGIN@
-                           AND pd.createtime < @DATEEND@
+                           AND pd.CHECKTIME >= @DATEBEGIN@
+                           AND pd.CHECKTIME < @DATEEND@
                            AND (pd.kilnid = @KILNID@ OR @KILNID@ IS NULL)
                            AND pd.goodscode IN( '" + gs + @"' )
                            AND gl.buildingno {BUILDINGNO}

+ 1 - 1
wwwroot/mes/rpt/rpt014/rptnew_detail_change.ashx

@@ -98,7 +98,7 @@ public class rptnew_detail : IHttpHandler, IReadOnlySessionState
 				            INNER JOIN TP_PC_GROUTINGLINE GL ON GL.GROUTINGLINEID = PD.GROUTINGLINEID   
 			            WHERE
                            PD.PROCEDUREID in ( {PROCEDUREID} )
-                           AND PD.VALUEFLAG = '1'  AND PD.CHECKBATCHNO = 1
+                           AND PD.CHECKFLAG = 1
                            AND PD.CREATETIME >= @DATEBEGIN@
                            AND PD.CREATETIME < @DATEEND@
                            AND to_char(PD.createtime, 'YYYY-MM-DD') <> to_char(PD.checktime, 'YYYY-MM-DD')