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

修正成检看板综合产量

konghe 1 год назад
Родитель
Сommit
e97f39f442
1 измененных файлов с 35 добавлено и 31 удалено
  1. 35 31
      wwwroot/main/Procedure/Boardkanban/Boardkanban.ashx

+ 35 - 31
wwwroot/main/Procedure/Boardkanban/Boardkanban.ashx

@@ -184,71 +184,75 @@ WHERE
 													),
 													重烧产量 as (
 													select count(1) 重烧产量 from 
-(
+(select * from (
 SELECT
-	BARCODE,GOODSCODE,GOODSLEVELTYPEID 
-,row_number() over (partition by BARCODE order by GOODSLEVELTYPEID DESC ) as rownums 
+	BARCODE,GOODSCODE,GOODSLEVELTYPEID ,CREATETIME
+,row_number() over (partition by BARCODE order by CREATETIME DESC ) as rownums 
 	FROM(
-	SELECT DISTINCT
-									PD.PRODUCTIONDATAID,
+	SELECT DISTINCT 
 									PD.BARCODE,
 									PD.GOODSCODE,
 									PD.GOODSNAME,
 									gtp.GOODSTYPECODE,
-									CASE WHEN PDS.GOODSLEVELTYPEID < PD.GOODSLEVELTYPEID  THEN PD.GOODSLEVELTYPEID 
-									     WHEN PD.GOODSLEVELTYPEID  < PDS.GOODSLEVELTYPEID THEN PDS.GOODSLEVELTYPEID
-											 WHEN PDS.GOODSLEVELTYPEID IS NULL  THEN PD.GOODSLEVELTYPEID
-											 WHEN PD.GOODSLEVELTYPEID  = PDS.GOODSLEVELTYPEID THEN PD.GOODSLEVELTYPEID
+									CASE WHEN PDS.CREATETIME < PD.CREATETIME  THEN PD.GOODSLEVELTYPEID 
+									     WHEN PD.CREATETIME  < PDS.CREATETIME THEN PDS.GOODSLEVELTYPEID
+											 WHEN PDS.CREATETIME IS NULL  THEN PD.GOODSLEVELTYPEID
+											 WHEN PD.CREATETIME  = PDS.CREATETIME THEN PD.GOODSLEVELTYPEID
 											 ELSE NULL END GOODSLEVELTYPEID,
-									PD.REWORKPROCEDUREID ,
+									CASE WHEN PDS.CREATETIME < PD.CREATETIME  THEN PD.CREATETIME 
+									     WHEN PD.CREATETIME  < PDS.CREATETIME THEN PDS.CREATETIME
+											 WHEN PDS.CREATETIME IS NULL  THEN PD.CREATETIME
+											 WHEN PD.CREATETIME  = PDS.CREATETIME THEN PD.CREATETIME
+											 ELSE NULL END CREATETIME,
 									gtp.GOODSTYPENAME,good.LUSTERWAREWEIGHT
 								FROM
-									TP_PM_PRODUCTIONDATA pd
+									(select   BARCODE,CREATETIME,GOODSID,GOODSNAME,VALUEFLAG,PROCEDUREID,GOODSLEVELTYPEID,GOODSCODE, row_number() over (partition by BARCODE order by CREATETIME DESC ) as timerownums from  TP_PM_PRODUCTIONDATA  where PROCEDUREID=28 and VALUEFLAG=1) pd
 									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_PM_PRODUCTIONDATA pds ON PDS.BARCODE=PD.BARCODE AND PDS.PROCEDUREID=61 AND PDS.VALUEFLAG=1
 									INNER  JOIN TP_PM_PRODUCTIONDATA PDL ON PDL.BARCODE=PD.BARCODE AND PDL.PROCEDUREID=24
 								WHERE
-									PD.VALUEFLAG = 1 
-									AND PD.PROCEDUREID = 28
-									AND pd.CREATETIME>= {first} AND pd.CREATETIME<= {second}
+									timerownums = 1 
+									
 
 									)
-)   where rownums=1 and   GOODSLEVELTYPEID in(4,5) 
+)   where   GOODSLEVELTYPEID in(4,5)  and rownums=1) where CREATETIME>= {first} AND CREATETIME<= {second}
 													),
 													冷修产量 as (
 													select count(1) 冷修产量 from 
-(
+(select * from (
 SELECT
-	BARCODE,GOODSCODE,GOODSLEVELTYPEID 
-,row_number() over (partition by BARCODE order by GOODSLEVELTYPEID DESC ) as rownums 
+	BARCODE,GOODSCODE,GOODSLEVELTYPEID ,CREATETIME
+,row_number() over (partition by BARCODE order by CREATETIME DESC ) as rownums 
 	FROM(
-	SELECT DISTINCT
-									PD.PRODUCTIONDATAID,
+	SELECT DISTINCT 
 									PD.BARCODE,
 									PD.GOODSCODE,
 									PD.GOODSNAME,
 									gtp.GOODSTYPECODE,
-									CASE WHEN PDS.GOODSLEVELTYPEID < PD.GOODSLEVELTYPEID  THEN PD.GOODSLEVELTYPEID 
-									     WHEN PD.GOODSLEVELTYPEID  < PDS.GOODSLEVELTYPEID THEN PDS.GOODSLEVELTYPEID
-											 WHEN PDS.GOODSLEVELTYPEID IS NULL  THEN PD.GOODSLEVELTYPEID
-											 WHEN PD.GOODSLEVELTYPEID  = PDS.GOODSLEVELTYPEID THEN PD.GOODSLEVELTYPEID
+									CASE WHEN PDS.CREATETIME < PD.CREATETIME  THEN PD.GOODSLEVELTYPEID 
+									     WHEN PD.CREATETIME  < PDS.CREATETIME THEN PDS.GOODSLEVELTYPEID
+											 WHEN PDS.CREATETIME IS NULL  THEN PD.GOODSLEVELTYPEID
+											 WHEN PD.CREATETIME  = PDS.CREATETIME THEN PD.GOODSLEVELTYPEID
 											 ELSE NULL END GOODSLEVELTYPEID,
-									PD.REWORKPROCEDUREID ,
+									CASE WHEN PDS.CREATETIME < PD.CREATETIME  THEN PD.CREATETIME 
+									     WHEN PD.CREATETIME  < PDS.CREATETIME THEN PDS.CREATETIME
+											 WHEN PDS.CREATETIME IS NULL  THEN PD.CREATETIME
+											 WHEN PD.CREATETIME  = PDS.CREATETIME THEN PD.CREATETIME
+											 ELSE NULL END CREATETIME,
 									gtp.GOODSTYPENAME,good.LUSTERWAREWEIGHT
 								FROM
-									TP_PM_PRODUCTIONDATA pd
+									(select   BARCODE,CREATETIME,GOODSID,GOODSNAME,VALUEFLAG,PROCEDUREID,GOODSLEVELTYPEID,GOODSCODE, row_number() over (partition by BARCODE order by CREATETIME DESC ) as timerownums from  TP_PM_PRODUCTIONDATA  where PROCEDUREID=28 and VALUEFLAG=1) pd
 									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_PM_PRODUCTIONDATA pds ON PDS.BARCODE=PD.BARCODE AND PDS.PROCEDUREID=61 AND PDS.VALUEFLAG=1
 									INNER  JOIN TP_PM_PRODUCTIONDATA PDL ON PDL.BARCODE=PD.BARCODE AND PDL.PROCEDUREID=42
 								WHERE
-									PD.VALUEFLAG = 1 
-									AND PD.PROCEDUREID = 28
-									AND pd.CREATETIME>= {first} AND pd.CREATETIME<= {second}
+									timerownums = 1 
+									
 
-									)
-)   where rownums=1 and   GOODSLEVELTYPEID in(4,5) 
+									) 
+)   where  GOODSLEVELTYPEID in(4,5) and rownums=1) where CREATETIME>= {first} AND CREATETIME<= {second}
 													)
 													SELECT 
 													一烧出窑量.一烧出窑量,