|
|
@@ -331,8 +331,7 @@ public class FormingKanban : IHttpHandler, IReadOnlySessionState
|
|
|
TP_PM_DEFECT dfc
|
|
|
LEFT JOIN TP_MST_DEFECT df ON df.DEFECTID = dfc.DEFECTID
|
|
|
WHERE
|
|
|
- dfc.DEFECTNAME in ('坯脏','棕眼','裂底','裂圈','裂鼻子','裂水道','裂管','沾接裂','裂眼',
|
|
|
- '糙活','变形','渣','管道渣','孔眼不良','睹眼','眼歪','丢气孔','丢眼','坯磕','卡球')
|
|
|
+ dfc.DEFECTCODE IN ( '01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '28', '34', '35', '12', '13', '14', '15', '16', '17', '18', '19', '23', '25')
|
|
|
AND dfc.VALUEFLAG = 1
|
|
|
AND TRUNC(dfc.CREATETIME)=TRUNC(SYSDATE)
|
|
|
GROUP BY
|
|
|
@@ -354,8 +353,7 @@ public class FormingKanban : IHttpHandler, IReadOnlySessionState
|
|
|
FROM
|
|
|
TP_PM_DEFECT dfc
|
|
|
WHERE
|
|
|
- dfc.DEFECTNAME in ('坯脏','棕眼','裂底','裂圈','裂鼻子','裂水道','裂管','沾接裂','裂眼',
|
|
|
- '糙活','变形','渣','管道渣','孔眼不良','睹眼','眼歪','丢气孔','丢眼','坯磕','卡球')
|
|
|
+ dfc.DEFECTCODE IN ( '01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '28', '34', '35', '12', '13', '14', '15', '16', '17', '18', '19', '23', '25')
|
|
|
AND dfc.VALUEFLAG = 1
|
|
|
AND TRUNC(dfc.CREATETIME)=TRUNC(SYSDATE)
|
|
|
GROUP BY
|
|
|
@@ -375,8 +373,7 @@ public class FormingKanban : IHttpHandler, IReadOnlySessionState
|
|
|
TP_PM_DEFECT dfc
|
|
|
LEFT JOIN TP_MST_DEFECT df ON df.DEFECTID = dfc.DEFECTID
|
|
|
WHERE
|
|
|
- dfc.DEFECTNAME in ('坯脏','棕眼','裂底','裂圈','裂鼻子','裂水道','裂管','沾接裂','裂眼',
|
|
|
- '糙活','变形','渣','管道渣','孔眼不良','睹眼','眼歪','丢气孔','丢眼','坯磕','卡球')
|
|
|
+ dfc.DEFECTCODE IN ( '01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '28', '34', '35', '12', '13', '14', '15', '16', '17', '18', '19', '23', '25')
|
|
|
AND dfc.VALUEFLAG = 1
|
|
|
AND TRUNC(dfc.CREATETIME)=TRUNC(SYSDATE)
|
|
|
GROUP BY
|
|
|
@@ -422,40 +419,70 @@ public class FormingKanban : IHttpHandler, IReadOnlySessionState
|
|
|
|
|
|
if (context.Request["m"].ToString() == "Alltotal")
|
|
|
{
|
|
|
- string sqlStr = @"with 打磨 AS (
|
|
|
+ string sqlStr = @"with 缺陷 AS (
|
|
|
SELECT
|
|
|
- COUNT(dfc.BARCODE) 缺陷数量
|
|
|
- FROM TP_PM_DEFECT dfc
|
|
|
- LEFT JOIN TP_MST_DEFECT df ON df.DEFECTID = dfc.DEFECTID
|
|
|
- WHERE dfc.VALUEFLAG=1
|
|
|
- AND dfc.DEFECTNAME IN ('糙活','变形','渣','管道渣','孔眼不良','睹眼','眼歪','丢气孔','丢眼','坯磕' )
|
|
|
- and TRUNC(dfc.CREATETIME)=TRUNC(SYSDATE)
|
|
|
- ),
|
|
|
- 擦洗 AS (
|
|
|
- SELECT
|
|
|
- COUNT(dfc.BARCODE) 缺陷数量
|
|
|
- FROM TP_PM_DEFECT dfc
|
|
|
- LEFT JOIN TP_MST_DEFECT df ON df.DEFECTID = dfc.DEFECTID
|
|
|
- WHERE dfc.VALUEFLAG=1
|
|
|
- AND dfc.DEFECTNAME IN ('坯脏','棕眼','裂圈','裂鼻子','裂水道','裂管','沾接裂','裂眼','糙活')
|
|
|
- and TRUNC(dfc.CREATETIME)=TRUNC(SYSDATE)
|
|
|
+ COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (4,36,53) AND PDS.VALUEFLAG=1 AND df.DEFECTCODE IN ( '10', '12', '13', '14', '15', '16', '17', '18', '19', '23', '25' , '35' ) THEN to_char(DF.BARCODE||df.DEFECTCODE ) ELSE NULL END ) 打磨缺陷数量,
|
|
|
+COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (5,36,52) AND PDS.VALUEFLAG=1 AND df.DEFECTCODE IN ( '01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '28', '34', '35' ) THEN to_char(DF.BARCODE||df.DEFECTCODE ) ELSE NULL END ) 擦洗缺陷数量
|
|
|
+ FROM( SELECT * FROM(
|
|
|
+ SELECT
|
|
|
+ BARCODE,REWORKPROCEDUREID,GROUTINGLINECODE,GOODSCODE,GOODSNAME,LOGONAME,GOODSLEVELTYPEID,GOODSSPECIFICATION,DICTIONARYVALUE,
|
|
|
+ HIGHPRESSUREFLAG,PROCEDUREID,GOODSTYPENAME,GOODSTYPECODE,LUSTERWAREWEIGHT,
|
|
|
+ row_number() over (partition by BARCODE order by GOODSLEVELTYPEID DESC ) as rownums
|
|
|
+ FROM(
|
|
|
+ SELECT
|
|
|
+ DISTINCT pd.BARCODE,
|
|
|
+ PD.REWORKPROCEDUREID,
|
|
|
+ pd.GROUTINGLINECODE,
|
|
|
+ pd.GOODSCODE,
|
|
|
+ pd.GOODSNAME,
|
|
|
+ LOGO.LOGONAME,
|
|
|
+ good.GOODSSPECIFICATION,good.LUSTERWAREWEIGHT,
|
|
|
+ TP_MST_DataDictionary.DICTIONARYVALUE,
|
|
|
+ GL.HIGHPRESSUREFLAG,
|
|
|
+ pd.PROCEDUREID AS PROCEDUREID,
|
|
|
+ gtp.GOODSTYPENAME,gtp.GOODSTYPECODE,
|
|
|
+ CASE WHEN PDL.GOODSLEVELTYPEID < PD.GOODSLEVELTYPEID THEN PD.GOODSLEVELTYPEID
|
|
|
+ WHEN PD.GOODSLEVELTYPEID < PDL.GOODSLEVELTYPEID THEN PDL.GOODSLEVELTYPEID
|
|
|
+ WHEN PDL.GOODSLEVELTYPEID IS NULL THEN PD.GOODSLEVELTYPEID
|
|
|
+ WHEN PD.GOODSLEVELTYPEID = PDL.GOODSLEVELTYPEID THEN PD.GOODSLEVELTYPEID
|
|
|
+ ELSE NULL END GOODSLEVELTYPEID
|
|
|
+ FROM TP_PM_PRODUCTIONDATA pd
|
|
|
+ INNER JOIN TP_PM_GROUTINGDAILYDETAIL gd ON gd.barcode=pd.barcode
|
|
|
+ LEFT JOIN TP_PM_PRODUCTIONDATA PDL ON PDL.BARCODE=PD.BARCODE AND PDL.PROCEDUREID=60 AND PDL.VALUEFLAG=1
|
|
|
+ LEFT JOIN TP_MST_GOODS good on good.GOODSID=PD.GOODSID
|
|
|
+ LEFT JOIN TP_MST_GOODSTYPE gtp ON good.GOODSTYPEID=gtp.GOODSTYPEID
|
|
|
+ LEFT JOIN TP_MST_LOGO logo ON logo.LOGOID=gd.LOGOID
|
|
|
+ LEFT JOIN TP_PC_GROUTINGLINE GL ON GL.GROUTINGLINEID=gd.GROUTINGLINEID
|
|
|
+ LEFT JOIN TP_MST_DataDictionary ON TP_MST_DataDictionary.DICTIONARYID=good.GLAZETYPEID AND TP_MST_DataDictionary.DictionaryType = 'TPC002'
|
|
|
+ WHERE PD.PROCEDUREID IN(16) AND PD.VALUEFLAG=1 AND PD.CREATETIME >= TRUNC(SYSDATE)
|
|
|
+ ) )WHERE rownums=1
|
|
|
+ ) PD
|
|
|
+ LEFT JOIN TP_PM_DEFECT df ON DF.BARCODE=PD.BARCODE AND DF.VALUEFLAG=1 AND DF.PROCEDUREID NOT IN(61,28)
|
|
|
+ LEFT JOIN TP_MST_DEFECT DEFECT ON DEFECT.DEFECTID=DF.DEFECTID AND DEFECT.VALUEFLAG=1
|
|
|
+ INNER JOIN TP_PM_PRODUCTIONDATA PDS ON PDS.BARCODE = PD.BARCODE AND PDS.VALUEFLAG=1
|
|
|
),
|
|
|
+
|
|
|
一烧产量 AS
|
|
|
(
|
|
|
SELECT COUNT( * ) 出窑数 FROM TP_PM_PRODUCTIONDATA WHERE PROCEDUREID IN (15,16) AND GOODSLEVELID IN (1,4,5) AND TRUNC( CREATETIME ) = trunc(sysdate) and VALUEFLAG=1
|
|
|
),
|
|
|
检验数 AS
|
|
|
(
|
|
|
- SELECT COUNT( * ) 一烧出窑数 FROM TP_PM_PRODUCTIONDATA WHERE PROCEDUREID =16 and VALUEFLAG=1 AND TRUNC(CREATETIME)=TRUNC(SYSDATE)
|
|
|
+ select TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (4,36,53) AND PDS.VALUEFLAG=1 THEN PD.BARCODE ELSE NULL END )) 打磨出窑量,
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (5,36,52) AND PDS.VALUEFLAG=1 THEN PD.BARCODE ELSE NULL END )) 擦洗出窑量 FROM TP_PM_PRODUCTIONDATA PD
|
|
|
+ INNER JOIN TP_PM_PRODUCTIONDATA pds on pds.BARCODE=pd.BARCODE
|
|
|
+ LEFT JOIN TP_PM_GROUTINGDAILYDETAIL gd ON gd.barcode=pd.barcode
|
|
|
+ LEFT JOIN TP_PC_GROUTINGLINE GL ON GL.GROUTINGLINEID=gd.GROUTINGLINEID
|
|
|
+ WHERE PD.VALUEFLAG=1 AND PD.PROCEDUREID=16
|
|
|
+ AND pd.CREATETIME>=TRUNC(SYSDATE)
|
|
|
)
|
|
|
SELECT
|
|
|
一烧产量.出窑数 ,
|
|
|
- DECODE( NVL( 打磨.缺陷数量, 0 ),0,'0%',TO_CHAR((NVL( 打磨.缺陷数量, 0 ) / DECODE( NVL( 检验数.一烧出窑数, 1 ), 0, 1, NVL( 检验数.一烧出窑数, 1 ) ) ) * 100,'fm99990.00' ) || '%' ) as 打磨缺陷率,
|
|
|
- DECODE( NVL( 擦洗.缺陷数量, 0 ),0,'0%',TO_CHAR((NVL( 擦洗.缺陷数量, 0 ) / DECODE( NVL( 检验数.一烧出窑数, 1 ), 0, 1, NVL( 检验数.一烧出窑数, 1 ) ) ) * 100,'fm99990.00' ) || '%' ) as 擦洗缺陷率
|
|
|
+ DECODE( NVL( 打磨缺陷数量, 0 ),0,'0%',TO_CHAR((NVL( 打磨缺陷数量, 0 ) / DECODE( NVL( 检验数.打磨出窑量, 1 ), 0, 1, NVL( 检验数.打磨出窑量, 1 ) ) ) * 100,'fm99990.00' ) || '%' ) as 打磨缺陷率,
|
|
|
+ DECODE( NVL( 擦洗缺陷数量, 0 ),0,'0%',TO_CHAR((NVL( 擦洗缺陷数量, 0 ) / DECODE( NVL( 检验数.擦洗出窑量, 1 ), 0, 1, NVL( 检验数.擦洗出窑量, 1 ) ) ) * 100,'fm99990.00' ) || '%' ) as 擦洗缺陷率
|
|
|
FROM
|
|
|
- 打磨
|
|
|
- LEFT JOIN 检验数 on 1=1
|
|
|
- LEFT JOIN 擦洗 on 1=1
|
|
|
+ 缺陷
|
|
|
+ LEFT JOIN 检验数 on 1=1
|
|
|
LEFT JOIN 一烧产量 ON 1=1";
|
|
|
//直接获取不分页数据
|
|
|
DataTable dt = conn.ExecuteDatatable(sqlStr);
|
|
|
@@ -487,8 +514,7 @@ public class FormingKanban : IHttpHandler, IReadOnlySessionState
|
|
|
WHERE
|
|
|
PD.VALUEFLAG = '1' --有效
|
|
|
AND TMDP.VALUEFLAG = '1' --有效
|
|
|
- AND TMDP.DEFECTNAME in ('坯脏','棕眼','裂底','裂圈','裂鼻子','裂水道','裂管','沾接裂','裂眼',
|
|
|
- '糙活','变形','渣','管道渣','孔眼不良','睹眼','眼歪','丢气孔','丢眼','坯磕','卡球')
|
|
|
+ AND TMDP.DEFECTCODE IN ( '10', '12', '13', '14', '15', '16', '17', '18', '19', '23', '25' , '35' )
|
|
|
AND TRUNC( TMDP.CREATETIME ) = trunc(sysdate)
|
|
|
UNION ALL
|
|
|
|
|
|
@@ -514,8 +540,7 @@ public class FormingKanban : IHttpHandler, IReadOnlySessionState
|
|
|
WHERE
|
|
|
PD.VALUEFLAG = '1' --有效
|
|
|
AND TMDP.VALUEFLAG = '1' --有效
|
|
|
- AND TMDP.DEFECTNAME in ('坯脏','棕眼','裂底','裂圈','裂鼻子','裂水道','裂管','沾接裂','裂眼',
|
|
|
- '糙活','变形','渣','管道渣','孔眼不良','睹眼','眼歪','丢气孔','丢眼','坯磕','卡球')
|
|
|
+ AND TMDP.DEFECTCODE IN ( '01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '28', '34', '35' )
|
|
|
AND TRUNC( TMDP.CREATETIME ) = trunc(sysdate) ";
|
|
|
//直接获取不分页数据
|
|
|
DataTable dt = conn.ExecuteDatatable(sqlStr);
|