| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041 |
- <%@ WebHandler Language="C#" Class="rpt" %>
- using System;
- using System.Web;
- using System.Web.SessionState;
- using System.Configuration;
- using System.Data;
- using Curtain.DataAccess;
- using Curtain.Log;
- using DK.XuWei.WebMes;
- using Newtonsoft.Json.Linq;
- using System.Collections.Generic;
- using System.Linq;
- public class rpt : IHttpHandler, IReadOnlySessionState
- {
- public void ProcessRequest(HttpContext context)
- {
- context.Response.ContentType = "text/plain";
- using (IDataAccess conn = DataAccess.Create())
- {
- //成检大小件TOP3缺陷占比
- if (context.Request["m"].ToString() == "Load03")
- {
- string sqlStr = @"
- WITH 出窑数 AS (
- SELECT
- SUM(DECODE(T.OUTKILNCOUNT, 1, 1, 0)) ONEOUTKILNCOUNT,
- SUM(DECODE(T.OUTKILNCOUNT, 2, 1, 0)) TWOOUTKILNCOUNT,
- SUM(DECODE(T.OUTKILNCOUNT, 3, 1, 0)) THREEOUTKILNCOUNT
- FROM (
- SELECT
- CASE WHEN ((INSTR(GDD.GROUTINGLINECODE, 'A') = 1 OR INSTR(GDD.GROUTINGLINECODE, 'D') = 1) AND INSTR(GT.GOODSTYPECODE, '001002') = 1) THEN 1
- WHEN ((INSTR(GDD.GROUTINGLINECODE, 'B') = 1 OR INSTR(GDD.GROUTINGLINECODE, 'D') = 1) AND INSTR(GT.GOODSTYPECODE, '001001') = 1) THEN 2
- WHEN INSTR(GDD.GROUTINGLINECODE, 'C') = 1 THEN 3
- ELSE 0 END OUTKILNCOUNT
- FROM
- TP_PM_PRODUCTIONDATA PD
- INNER JOIN TP_PM_GROUTINGDAILYDETAIL GDD ON GDD.GROUTINGDAILYDETAILID = PD.GROUTINGDAILYDETAILID
- INNER JOIN TP_MST_GOODS G ON G.GOODSID = GDD.GOODSID
- INNER JOIN TP_MST_GOODSTYPE GT ON G.GOODSTYPEID = GT.GOODSTYPEID
- WHERE
- (( PD.PROCEDUREID <> 104 AND PD.VALUEFLAG = '1' ) OR ( PD.PROCEDUREID = 104 AND PD.CHECKFLAG = '1' ))
- AND (11 IS NULL OR ((11 = 11 AND ( ( PD.PROCEDUREID = 11 ) OR ( PD.PROCEDUREID = 104 AND PD.ISREFIRE = '0' ) ) ) ) )
- AND ( 0 IS NULL OR GDD.RECYCLINGFLAG = 0 )
- AND PD.ACCOUNTID = 1
- AND PD.PROCEDUREID IN ( 11, 104 )
- AND PD.KILNID IN ( 1, 2, 5 )
- AND PD.CREATETIME >= TRUNC(sysdate-7)
- AND TRUNC(PD.CREATETIME)<=TRUNC(SYSDATE)
- ) T
- ),
- 一车间前三缺陷数量 AS(
- SELECT
- *
- FROM(
- SELECT
- '一车间'AS workshops,
- COUNT( DISTINCT 缺陷条码) 缺陷数量,
- 缺陷名称
- FROM
- (
- SELECT
- DISTINCT
- defect.BARCODE 缺陷条码,
- df.S_NAME 缺陷名称
- FROM TP_PM_DEFECT defect
- INNER JOIN TP_PM_GROUTINGDAILYDETAIL gdd on gdd.barcode=defect.barcode
- LEFT JOIN TP_MST_GOODS GOODS ON GOODS.GOODSID=GDD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GTP ON GTP.GOODSTYPEID=GOODS.GOODSTYPEID
- LEFT JOIN TP_MST_DEFECT df ON df.defectid =defect.defectID
- WHERE defect.CREATETIME>=TRUNC(sysdate-7)
- AND TRUNC(defect.CREATETIME)<=TRUNC(SYSDATE)
- AND defect.VALUEFLAG=1
- AND ((INSTR(gdd.GROUTINGLINECODE, 'A') = 1 OR INSTR(gdd.GROUTINGLINECODE, 'D') = 1) AND INSTR(GTP.GOODSTYPECODE, '001002') = 1)
- AND gdd.VALUEFLAG=1
- )
- GROUP BY 缺陷名称
- ORDER BY COUNT( 缺陷条码) DESC
- )
- WHERE ROWNUM<=3
- )
- ,
- 二车间前三缺陷数量 AS(
- SELECT
- *
- FROM(
- SELECT
- '二车间'AS workshops,
- COUNT( DISTINCT 缺陷条码) 缺陷数量,
- 缺陷名称
- FROM
- (
- SELECT
- DISTINCT
- defect.BARCODE 缺陷条码,
- df.S_NAME 缺陷名称
- FROM TP_PM_DEFECT defect
- INNER JOIN TP_PM_GROUTINGDAILYDETAIL gdd on gdd.barcode=defect.barcode
- LEFT JOIN TP_MST_GOODS GOODS ON GOODS.GOODSID=GDD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GTP ON GTP.GOODSTYPEID=GOODS.GOODSTYPEID
- LEFT JOIN TP_MST_DEFECT df ON df.defectid =defect.defectID
- WHERE defect.CREATETIME>=TRUNC(sysdate-7)
- AND TRUNC(defect.CREATETIME)<=TRUNC(SYSDATE)
- AND defect.VALUEFLAG=1
- AND ((INSTR(GDD.GROUTINGLINECODE, 'B') = 1 OR INSTR(GDD.GROUTINGLINECODE, 'D') = 1) AND INSTR(GTP.GOODSTYPECODE, '001001') = 1)
- AND gdd.VALUEFLAG=1
-
- )
- GROUP BY 缺陷名称
- ORDER BY COUNT( 缺陷条码) DESC
- )
- WHERE ROWNUM<=3
- ),
- 三车间前三缺陷数量 AS(
- SELECT
- *
- FROM(
- SELECT
- '三车间' AS workshops,
- COUNT( DISTINCT 缺陷条码) 缺陷数量,
- 缺陷名称
- FROM
- (
- SELECT
- DISTINCT
- defect.BARCODE 缺陷条码,
- df.S_NAME 缺陷名称
- FROM TP_PM_DEFECT defect
- INNER JOIN TP_PM_GROUTINGDAILYDETAIL gdd on gdd.barcode=defect.barcode
- LEFT JOIN TP_MST_GOODS GOODS ON GOODS.GOODSID=GDD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GTP ON GTP.GOODSTYPEID=GOODS.GOODSTYPEID
- LEFT JOIN TP_MST_DEFECT df ON df.defectid =defect.defectID
- WHERE defect.CREATETIME>=TRUNC(sysdate-7)
- AND TRUNC(defect.CREATETIME)<=TRUNC(SYSDATE)
- AND defect.VALUEFLAG=1
- AND INSTR(GDD.GROUTINGLINECODE, 'C') = 1
- AND gdd.VALUEFLAG=1
-
-
- )
- GROUP BY 缺陷名称
- ORDER BY COUNT( 缺陷条码) DESC
- )
- WHERE ROWNUM<=3
- )
- SELECT
- 一车间前三缺陷数量.workshops,
- DECODE( NVL( 一车间前三缺陷数量.缺陷数量, 0 ), 0, '0%', TO_CHAR( ( NVL( 一车间前三缺陷数量.缺陷数量, 0 ) / DECODE( NVL( 出窑数.ONEOUTKILNCOUNT, 1 ), 0, 1, NVL( 出窑数.ONEOUTKILNCOUNT, 1 ) ) ) * 100, 'fm99990.0' ) ) 缺陷占比, 一车间前三缺陷数量.缺陷名称
- FROM
- 一车间前三缺陷数量
- LEFT JOIN 出窑数 on 1=1
-
- UNION ALL
-
- SELECT
- 二车间前三缺陷数量.workshops,
- DECODE( NVL( 二车间前三缺陷数量.缺陷数量, 0 ), 0, '0%', TO_CHAR( ( NVL( 二车间前三缺陷数量.缺陷数量, 0 ) / DECODE( NVL( 出窑数.TWOOUTKILNCOUNT, 1 ), 0, 1, NVL( 出窑数.TWOOUTKILNCOUNT, 1 ) ) ) * 100, 'fm99990.0' ) ) 缺陷占比, 二车间前三缺陷数量.缺陷名称
- FROM
- 二车间前三缺陷数量
- LEFT JOIN 出窑数 on 1=1
-
- UNION ALL
-
- SELECT
- 三车间前三缺陷数量.workshops,
- DECODE( NVL( 三车间前三缺陷数量.缺陷数量, 0 ), 0, '0%', TO_CHAR( ( NVL( 三车间前三缺陷数量.缺陷数量, 0 ) / DECODE( NVL( 出窑数.THREEOUTKILNCOUNT, 1 ), 0, 1, NVL( 出窑数.THREEOUTKILNCOUNT, 1 ) ) ) * 100, 'fm99990.0' ) ) 缺陷占比, 三车间前三缺陷数量.缺陷名称
- FROM
- 三车间前三缺陷数量
- LEFT JOIN 出窑数 on 1=1";
- //直接获取不分页数据
- DataTable dt = conn.ExecuteDatatable(sqlStr);
- string jsonStr = new JsonResult(dt).ToJson();
- context.Response.Write(jsonStr);
- }
- if (context.Request["m"].ToString() == "Load02")
- {
- //直接获取不分页数据
- string sqlStr = @"WITH 一车间前三缺陷数量 AS (
- SELECT
- *
- FROM(
- SELECT
- workshops,
- COUNT( DISTINCT 缺陷条码) 缺陷数量,
- 缺陷名称
- FROM
- (
- SELECT
- '一车间' workshops,
- CASE WHEN semicheck.GOODSLEVELTYPEID IN (2,13) or semicheck.SEMICHECKTYPE is not NULL THEN semicheck.BARCODE ELSE NULL END 缺陷条码,
- SEMIDEFCET.S_NAME 缺陷名称
- FROM TP_PM_SEMICHECK semicheck
- LEFT JOIN TP_PM_SEMICHECKDEFECT semicheckdefect on semicheckdefect.SEMICHECKID=semicheck.SEMICHECKID
- LEFT JOIN TP_MST_SEMICHECKDEFECT SEMIDEFCET ON SEMIDEFCET.DEFECTID=semicheckdefect.DEFECTID
- INNER JOIN TP_PM_GROUTINGDAILYDETAIL gdd on gdd.barcode=semicheck.barcode
- INNER JOIN TP_PM_PRODUCTIONDATA pd on pd.barcode=gdd.barcode AND pd.PROCEDUREID IN(1,17)
- LEFT JOIN TP_MST_GOODS GOODS ON GOODS.GOODSID=GDD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GTP ON GTP.GOODSTYPEID=GOODS.GOODSTYPEID
- WHERE semicheck.CREATETIME>=TRUNC(sysdate-7)
- AND TRUNC(semicheck.CREATETIME)<=TRUNC(SYSDATE)
- AND semicheck.VALUEFLAG=1
- AND INSTR(GTP.GOODSTYPECODE, '001002') = 1
- AND gdd.VALUEFLAG=1
- AND pd.VALUEFLAG=1
- )
- GROUP BY workshops,缺陷名称
- ORDER BY COUNT( DISTINCT 缺陷条码) DESC
- )
- WHERE ROWNUM<=3
- ),
- 二车间前三缺陷数量 AS (
- SELECT
- *
- FROM(
- SELECT
- workshops,
- COUNT( DISTINCT 缺陷条码) 缺陷数量,
- 缺陷名称
- FROM
- (
- SELECT
- '二车间' workshops,
- CASE WHEN semicheck.GOODSLEVELTYPEID IN (2,13) or semicheck.SEMICHECKTYPE is not NULL THEN semicheck.BARCODE ELSE NULL END 缺陷条码,
- SEMIDEFCET.S_NAME 缺陷名称
- FROM TP_PM_SEMICHECK semicheck
- LEFT JOIN TP_PM_SEMICHECKDEFECT semicheckdefect on semicheckdefect.SEMICHECKID=semicheck.SEMICHECKID
- LEFT JOIN TP_MST_SEMICHECKDEFECT SEMIDEFCET ON SEMIDEFCET.DEFECTID=semicheckdefect.DEFECTID
- INNER JOIN TP_PM_GROUTINGDAILYDETAIL gdd on gdd.barcode=semicheck.barcode
- INNER JOIN TP_PM_PRODUCTIONDATA pd on pd.barcode=gdd.barcode AND pd.PROCEDUREID IN(1,17)
- LEFT JOIN TP_MST_GOODS GOODS ON GOODS.GOODSID=GDD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GTP ON GTP.GOODSTYPEID=GOODS.GOODSTYPEID
- WHERE semicheck.CREATETIME>=TRUNC(sysdate-7)
- AND TRUNC(semicheck.CREATETIME)<=TRUNC(SYSDATE)
- AND semicheck.VALUEFLAG=1
- AND INSTR(GTP.GOODSTYPECODE, '001001') = 1
- AND gdd.VALUEFLAG=1
- AND pd.VALUEFLAG=1
- )
- GROUP BY workshops,缺陷名称
- ORDER BY COUNT( DISTINCT 缺陷条码) DESC
- )
- WHERE ROWNUM<=3
- ),
- 三车间前三缺陷数量 AS (
- SELECT
- *
- FROM(
- SELECT
- workshops,
- COUNT( DISTINCT 缺陷条码) 缺陷数量,
- 缺陷名称
- FROM
- (
- SELECT
- '三车间' workshops,
- CASE WHEN semicheck.GOODSLEVELTYPEID IN (2,13) or semicheck.SEMICHECKTYPE is not NULL THEN semicheck.BARCODE ELSE NULL END 缺陷条码,
- SEMIDEFCET.S_NAME 缺陷名称
- FROM TP_PM_SEMICHECK semicheck
- LEFT JOIN TP_PM_SEMICHECKDEFECT semicheckdefect on semicheckdefect.SEMICHECKID=semicheck.SEMICHECKID
- LEFT JOIN TP_MST_SEMICHECKDEFECT SEMIDEFCET ON SEMIDEFCET.DEFECTID=semicheckdefect.DEFECTID
- INNER JOIN TP_PM_GROUTINGDAILYDETAIL gdd on gdd.barcode=semicheck.barcode
- INNER JOIN TP_PM_PRODUCTIONDATA pd on pd.barcode=gdd.barcode AND pd.PROCEDUREID IN(118,92 ,88)
- LEFT JOIN TP_MST_GOODS GOODS ON GOODS.GOODSID=GDD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GTP ON GTP.GOODSTYPEID=GOODS.GOODSTYPEID
- WHERE semicheck.CREATETIME>=TRUNC(sysdate-7)
- AND TRUNC(semicheck.CREATETIME)<=TRUNC(SYSDATE)
- AND semicheck.VALUEFLAG=1
- AND gdd.VALUEFLAG=1
- AND pd.VALUEFLAG=1
- )
- GROUP BY workshops,缺陷名称
- ORDER BY COUNT( DISTINCT 缺陷条码) DESC
- )
- WHERE ROWNUM<=3
- ),
- 一车间产量 AS (
- SELECT '一车间' AS 车间, COUNT(DISTINCT PD.BARCODE )AS 检验量 FROM TP_PM_PRODUCTIONDATA PD
- LEFT JOIN TP_MST_GOODS GOODS ON GOODS.GOODSID=PD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GTP ON GTP.GOODSTYPEID=GOODS.GOODSTYPEID
- WHERE PD.VALUEFLAG=1 AND PD.PROCEDUREID IN(1,17)AND PD.CREATETIME>=TRUNC(sysdate-7) AND TRUNC(PD.CREATETIME)<=TRUNC(SYSDATE)
- AND INSTR(GTP.GOODSTYPECODE, '001002') = 1
-
- ),
- 二车间产量 AS (
-
- SELECT '二车间' AS 车间, COUNT(DISTINCT PD.BARCODE )AS 检验量 FROM TP_PM_PRODUCTIONDATA PD
- LEFT JOIN TP_MST_GOODS GOODS ON GOODS.GOODSID=PD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GTP ON GTP.GOODSTYPEID=GOODS.GOODSTYPEID
- WHERE PD.VALUEFLAG=1 AND PD.PROCEDUREID IN(1,17)AND PD.CREATETIME>=TRUNC(sysdate-7) AND TRUNC(PD.CREATETIME)<=TRUNC(SYSDATE)
- AND INSTR(GTP.GOODSTYPECODE, '001001') = 1
-
-
- ),三车间产量 AS (
-
- SELECT '三车间' AS 车间, COUNT(DISTINCT PD.BARCODE )AS 检验量 FROM TP_PM_PRODUCTIONDATA PD
- LEFT JOIN TP_MST_GOODS GOODS ON GOODS.GOODSID=PD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GTP ON GTP.GOODSTYPEID=GOODS.GOODSTYPEID
- WHERE PD.VALUEFLAG=1 AND PD.PROCEDUREID IN(118,92 ,88)AND PD.CREATETIME>=TRUNC(sysdate-7) AND TRUNC(PD.CREATETIME)<=TRUNC(SYSDATE)
- )
- SELECT
- 一车间前三缺陷数量.workshops,
- DECODE( NVL( 一车间前三缺陷数量.缺陷数量, 0 ), 0, '0%', TO_CHAR( ( NVL( 一车间前三缺陷数量.缺陷数量, 0 ) / DECODE( NVL( 一车间产量.检验量, 1 ), 0, 1, NVL( 一车间产量.检验量, 1 ) ) ) * 100, 'fm99990.0' ) ) 缺陷占比, 一车间前三缺陷数量.缺陷名称
- FROM
- 一车间前三缺陷数量
- LEFT JOIN 一车间产量 on 1=1
-
- UNION ALL
-
- SELECT
- 二车间前三缺陷数量.workshops,
- DECODE( NVL( 二车间前三缺陷数量.缺陷数量, 0 ), 0, '0%', TO_CHAR( ( NVL( 二车间前三缺陷数量.缺陷数量, 0 ) / DECODE( NVL( 二车间产量.检验量, 1 ), 0, 1, NVL( 二车间产量.检验量, 1 ) ) ) * 100, 'fm99990.0' ) ) 缺陷占比, 二车间前三缺陷数量.缺陷名称
- FROM
- 二车间前三缺陷数量
- LEFT JOIN 二车间产量 on 1=1
-
- UNION ALL
-
- SELECT
- 三车间前三缺陷数量.workshops,
- DECODE( NVL( 三车间前三缺陷数量.缺陷数量, 0 ), 0, '0%', TO_CHAR( ( NVL( 三车间前三缺陷数量.缺陷数量, 0 ) / DECODE( NVL( 三车间产量.检验量, 1 ), 0, 1, NVL( 三车间产量.检验量, 1 ) ) ) * 100, 'fm99990.0' ) ) 缺陷占比, 三车间前三缺陷数量.缺陷名称
- FROM
- 三车间前三缺陷数量
- LEFT JOIN 三车间产量 on 1=1
- ";
- DataTable dt = conn.ExecuteDatatable(sqlStr);
- string jsonStr = new JsonResult(dt).ToJson();
- context.Response.Write(jsonStr);
- }
- if (context.Request["m"].ToString() == "Load05")
- {
- string sqlStr = @" SELECT '连体'AS 产品类别,
- H.缺陷名称,
- H.缺陷数,
- H.缺陷占比,
- H.上周比,
- CASE WHEN H.上周比 > H.缺陷占比 THEN '下降↓'
- ELSE '上升↑'
- END 对比趋势
- FROM(
- SELECT
- TT.DEFECTNAME 缺陷名称,
- TT2.COUNT 出窑数,
- TT.COUNT 缺陷数,
- TO_CHAR((TT.COUNT/TT2.COUNT)* 100,'fm99990.0') || '%' AS 缺陷占比,
- TT4.COUNT 上个月缺陷数量,
- TT6.COUNT 上个月出窑数,
- TO_CHAR((TT4.COUNT/TT6.COUNT)* 100,'fm99990.0') || '%' AS 上周比
- FROM(
- SELECT ROWNUM id,T.DEFECTID,T.DEFECTNAME,T.count FROM (
- SELECT
- TMD.S_NAME DEFECTNAME,
- TMD.DEFECTID,
- COUNT( 1 ) count
- FROM
- TP_PM_PRODUCTIONDATA TPPD
- LEFT JOIN TP_PM_DEFECT TPD ON TPPD.BARCODE = TPD.BARCODE
- LEFT JOIN TP_MST_DEFECT TMD ON TPD.DEFECTID = TMD.DEFECTID
- LEFT JOIN TP_MST_GOODS GD ON GD.GOODSID=TPPD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GDTYPE ON GD.GOODSTYPEID=GDTYPE.GOODSTYPEID
- WHERE
- TPPD.PROCEDUREID IN (125,131)
- AND TPPD.GOODSLEVELTYPEID = 7
- AND TPD.VALUEFLAG = 1
- AND TPPD.VALUEFLAG = 1
- AND GDTYPE.GOODSTYPECODE='001001001'
- AND TMD.VALUEFLAG = 1
- AND TPPD.CREATETIME >=TRUNC(NEXT_DAY(SYSDATE-8,1)+1)
- AND TPPD.CREATETIME< TRUNC(NEXT_DAY(SYSDATE-8,1)+7)+1
- GROUP BY
- TMD.S_NAME,TMD.DEFECTID
- ORDER BY
- count DESC)T
- WHERE ROWNUM<=3
- )TT
- FULL JOIN(
- SELECT
- ROWNUM id,
- T2.count
- FROM(
- SELECT
- COUNT(1) count
- FROM
- TP_PM_PRODUCTIONDATA TPPD
- LEFT JOIN TP_MST_GOODS GD ON GD.GOODSID=TPPD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GDTYPE ON GD.GOODSTYPEID=GDTYPE.GOODSTYPEID
- WHERE
- TPPD.PROCEDUREID IN (104,11)
- AND TPPD.ISREFIRE = 0
- AND GDTYPE.GOODSTYPECODE='001001001'
- AND TPPD.VALUEFLAG = 1
- AND TPPD.CREATETIME >=TRUNC(NEXT_DAY(SYSDATE-8,1)+1)
- AND TPPD.CREATETIME< TRUNC(NEXT_DAY(SYSDATE-8,1)+7)+1
- UNION ALL
- SELECT
- COUNT(1) count
- FROM
- TP_PM_PRODUCTIONDATA TPPD
- LEFT JOIN TP_MST_GOODS GD ON GD.GOODSID=TPPD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GDTYPE ON GD.GOODSTYPEID=GDTYPE.GOODSTYPEID
- WHERE
- TPPD.PROCEDUREID IN (104,11)
- AND TPPD.ISREFIRE = 0
- AND GDTYPE.GOODSTYPECODE='001001001'
- AND TPPD.VALUEFLAG = 1
- AND TPPD.CREATETIME >=TRUNC(NEXT_DAY(SYSDATE-8,1)+1)
- AND TPPD.CREATETIME< TRUNC(NEXT_DAY(SYSDATE-8,1)+7)+1
- UNION ALL
- SELECT
- COUNT(1)
- FROM
- TP_PM_PRODUCTIONDATA TPPD
- LEFT JOIN TP_MST_GOODS GD ON GD.GOODSID=TPPD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GDTYPE ON GD.GOODSTYPEID=GDTYPE.GOODSTYPEID
- WHERE
- TPPD.PROCEDUREID IN (104,11)
- AND TPPD.ISREFIRE = 0
- AND GDTYPE.GOODSTYPECODE='001001001'
- AND TPPD.VALUEFLAG = 1
- AND TPPD.CREATETIME >=TRUNC(NEXT_DAY(SYSDATE-8,1)+1)
- AND TPPD.CREATETIME< TRUNC(NEXT_DAY(SYSDATE-8,1)+7)+1
- )T2)TT2 ON TT.id = TT2.id
- FULL JOIN(
- SELECT ROWNUM id,T4.DEFECTNAME,T4.count FROM (
- SELECT
- TMD.S_NAME DEFECTNAME,
- COUNT( 1 ) count
- FROM
- TP_PM_PRODUCTIONDATA TPPD
- LEFT JOIN TP_PM_DEFECT TPD ON TPPD.BARCODE = TPD.BARCODE
- LEFT JOIN TP_MST_DEFECT TMD ON TPD.DEFECTID = TMD.DEFECTID
- LEFT JOIN TP_MST_GOODS GD ON GD.GOODSID=TPPD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GDTYPE ON GD.GOODSTYPEID=GDTYPE.GOODSTYPEID
- WHERE
- TPPD.PROCEDUREID IN (125,131)
- AND TPPD.GOODSLEVELTYPEID = 7
- AND GDTYPE.GOODSTYPECODE='001001001'
- AND TPD.VALUEFLAG = 1
- AND TPPD.VALUEFLAG = 1
- AND TMD.VALUEFLAG = 1
- AND TPPD.CREATETIME >= TRUNC(NEXT_DAY(SYSDATE-8,1)-6)
- AND TPPD.CREATETIME < TRUNC(NEXT_DAY(SYSDATE-8,1)+1)
- GROUP BY
- TMD.S_NAME
- ORDER BY
- count DESC)T4 WHERE ROWNUM <= 3 )TT4 ON TT.id = TT4.id
- FULL JOIN(
- SELECT
- ROWNUM id,
- T6.count
- FROM(
- SELECT
- COUNT(1) count
- FROM
- TP_PM_PRODUCTIONDATA TPPD
- LEFT JOIN TP_MST_GOODS GD ON GD.GOODSID=TPPD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GDTYPE ON GD.GOODSTYPEID=GDTYPE.GOODSTYPEID
- WHERE
- TPPD.PROCEDUREID IN (104,11)
- AND TPPD.ISREFIRE = 0
- AND GDTYPE.GOODSTYPECODE='001001001'
- AND TPPD.VALUEFLAG = 1
- AND TPPD.CREATETIME >= TRUNC(NEXT_DAY(SYSDATE-8,1)-6)
- AND TPPD.CREATETIME < TRUNC(NEXT_DAY(SYSDATE-8,1)+1)
- UNION ALL
- SELECT
- COUNT(1) count
- FROM
- TP_PM_PRODUCTIONDATA TPPD
- LEFT JOIN TP_MST_GOODS GD ON GD.GOODSID=TPPD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GDTYPE ON GD.GOODSTYPEID=GDTYPE.GOODSTYPEID
- WHERE
- TPPD.PROCEDUREID IN (104,11)
- AND TPPD.ISREFIRE = 0
- AND GDTYPE.GOODSTYPECODE='001001001'
- AND TPPD.VALUEFLAG = 1
- AND TPPD.CREATETIME >= TRUNC(NEXT_DAY(SYSDATE-8,1)-6)
- AND TPPD.CREATETIME < TRUNC(NEXT_DAY(SYSDATE-8,1)+1)
- UNION ALL
- SELECT
- COUNT(1)
- FROM
- TP_PM_PRODUCTIONDATA TPPD
- LEFT JOIN TP_MST_GOODS GD ON GD.GOODSID=TPPD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GDTYPE ON GD.GOODSTYPEID=GDTYPE.GOODSTYPEID
- WHERE
- TPPD.PROCEDUREID IN (104,11)
- AND TPPD.ISREFIRE = 0
- AND GDTYPE.GOODSTYPECODE='001001001'
- AND TPPD.VALUEFLAG = 1
- AND TPPD.CREATETIME >= TRUNC(NEXT_DAY(SYSDATE-8,1)-6)
- AND TPPD.CREATETIME < TRUNC(NEXT_DAY(SYSDATE-8,1)+1)
- )T6)TT6 ON TT.id = TT6.id
-
- )H
- WHERE H.缺陷数 IS NOT NULL
- UNION ALL
- SELECT
- '智能',
- H.缺陷名称,
- H.缺陷数,
- H.缺陷占比,
- H.上周比,
- CASE WHEN H.上周比 > H.缺陷占比 THEN '下降↓'
- ELSE '上升↑'
- END 对比趋势
- FROM(
- SELECT
- TT.DEFECTNAME 缺陷名称,
- TT2.COUNT 出窑数,
- TT.COUNT 缺陷数,
- TO_CHAR((TT.COUNT/TT2.COUNT)* 100,'fm99990.0') || '%' AS 缺陷占比,
- TT4.COUNT 上个月缺陷数量,
- TT6.COUNT 上个月出窑数,
- TO_CHAR((TT4.COUNT/TT6.COUNT)* 100,'fm99990.0') || '%' AS 上周比
- FROM(
- SELECT ROWNUM id,T.DEFECTID,T.DEFECTNAME,T.count FROM (
- SELECT
- TMD.S_NAME DEFECTNAME,
- TMD.DEFECTID,
- COUNT( 1 ) count
- FROM
- TP_PM_PRODUCTIONDATA TPPD
- LEFT JOIN TP_PM_DEFECT TPD ON TPPD.BARCODE = TPD.BARCODE
- LEFT JOIN TP_MST_DEFECT TMD ON TPD.DEFECTID = TMD.DEFECTID
- LEFT JOIN TP_MST_GOODS GD ON GD.GOODSID=TPPD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GDTYPE ON GD.GOODSTYPEID=GDTYPE.GOODSTYPEID
- WHERE
- TPPD.PROCEDUREID IN (125,131)
- AND TPPD.GOODSLEVELTYPEID = 7
- AND TPD.VALUEFLAG = 1
- AND TPPD.VALUEFLAG = 1
- AND GDTYPE.GOODSTYPECODE='001001003'
- AND TMD.VALUEFLAG = 1
- AND TPPD.CREATETIME >=TRUNC(NEXT_DAY(SYSDATE-8,1)+1)
- AND TPPD.CREATETIME< TRUNC(NEXT_DAY(SYSDATE-8,1)+7)+1
- GROUP BY
- TMD.S_NAME,TMD.DEFECTID
- ORDER BY
- count DESC)T
- WHERE ROWNUM<=3
- )TT
- FULL JOIN(
- SELECT
- ROWNUM id,
- T2.count
- FROM(
- SELECT
- COUNT(1) count
- FROM
- TP_PM_PRODUCTIONDATA TPPD
- LEFT JOIN TP_MST_GOODS GD ON GD.GOODSID=TPPD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GDTYPE ON GD.GOODSTYPEID=GDTYPE.GOODSTYPEID
- WHERE
- TPPD.PROCEDUREID IN (104,11)
- AND TPPD.ISREFIRE = 0
- AND GDTYPE.GOODSTYPECODE='001001003'
- AND TPPD.VALUEFLAG = 1
- AND TPPD.CREATETIME >=TRUNC(NEXT_DAY(SYSDATE-8,1)+1)
- AND TPPD.CREATETIME< TRUNC(NEXT_DAY(SYSDATE-8,1)+7)+1
- UNION ALL
- SELECT
- COUNT(1) count
- FROM
- TP_PM_PRODUCTIONDATA TPPD
- LEFT JOIN TP_MST_GOODS GD ON GD.GOODSID=TPPD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GDTYPE ON GD.GOODSTYPEID=GDTYPE.GOODSTYPEID
- WHERE
- TPPD.PROCEDUREID IN (104,11)
- AND TPPD.ISREFIRE = 0
- AND GDTYPE.GOODSTYPECODE='001001003'
- AND TPPD.VALUEFLAG = 1
- AND TPPD.CREATETIME >=TRUNC(NEXT_DAY(SYSDATE-8,1)+1)
- AND TPPD.CREATETIME< TRUNC(NEXT_DAY(SYSDATE-8,1)+7)+1
- UNION ALL
- SELECT
- COUNT(1)
- FROM
- TP_PM_PRODUCTIONDATA TPPD
- LEFT JOIN TP_MST_GOODS GD ON GD.GOODSID=TPPD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GDTYPE ON GD.GOODSTYPEID=GDTYPE.GOODSTYPEID
- WHERE
- TPPD.PROCEDUREID IN (104,11)
- AND TPPD.ISREFIRE = 0
- AND GDTYPE.GOODSTYPECODE='001001003'
- AND TPPD.VALUEFLAG = 1
- AND TPPD.CREATETIME >=TRUNC(NEXT_DAY(SYSDATE-8,1)+1)
- AND TPPD.CREATETIME< TRUNC(NEXT_DAY(SYSDATE-8,1)+7)+1
-
- )T2)TT2 ON TT.id = TT2.id
- FULL JOIN(
- SELECT ROWNUM id,T4.DEFECTNAME,T4.count FROM (
- SELECT
- TMD.S_NAME DEFECTNAME,
- COUNT( 1 ) count
- FROM
- TP_PM_PRODUCTIONDATA TPPD
- LEFT JOIN TP_PM_DEFECT TPD ON TPPD.BARCODE = TPD.BARCODE
- LEFT JOIN TP_MST_DEFECT TMD ON TPD.DEFECTID = TMD.DEFECTID
- LEFT JOIN TP_MST_GOODS GD ON GD.GOODSID=TPPD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GDTYPE ON GD.GOODSTYPEID=GDTYPE.GOODSTYPEID
- WHERE
- TPPD.PROCEDUREID IN (125,131)
- AND TPPD.GOODSLEVELTYPEID = 7
- AND GDTYPE.GOODSTYPECODE='001001003'
- AND TPD.VALUEFLAG = 1
- AND TPPD.VALUEFLAG = 1
- AND TMD.VALUEFLAG = 1
- AND TPPD.CREATETIME >= TRUNC(NEXT_DAY(SYSDATE-8,1)-6)
- AND TPPD.CREATETIME < TRUNC(NEXT_DAY(SYSDATE-8,1)+1)
- GROUP BY
- TMD.S_NAME
- ORDER BY
- count DESC)T4 WHERE ROWNUM <= 3 )TT4 ON TT.id = TT4.id
- FULL JOIN(
- SELECT
- ROWNUM id,
- T6.count
- FROM(
- SELECT
- COUNT(1) count
- FROM
- TP_PM_PRODUCTIONDATA TPPD
- LEFT JOIN TP_MST_GOODS GD ON GD.GOODSID=TPPD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GDTYPE ON GD.GOODSTYPEID=GDTYPE.GOODSTYPEID
- WHERE
- TPPD.PROCEDUREID IN (104,11)
- AND TPPD.ISREFIRE = 0
- AND GDTYPE.GOODSTYPECODE='001001003'
- AND TPPD.VALUEFLAG = 1
- AND TPPD.CREATETIME >= TRUNC(NEXT_DAY(SYSDATE-8,1)-6)
- AND TPPD.CREATETIME < TRUNC(NEXT_DAY(SYSDATE-8,1)+1)
- UNION ALL
- SELECT
- COUNT(1) count
- FROM
- TP_PM_PRODUCTIONDATA TPPD
- LEFT JOIN TP_MST_GOODS GD ON GD.GOODSID=TPPD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GDTYPE ON GD.GOODSTYPEID=GDTYPE.GOODSTYPEID
- WHERE
- TPPD.PROCEDUREID IN (104,11)
- AND TPPD.ISREFIRE = 0
- AND GDTYPE.GOODSTYPECODE='001001003'
- AND TPPD.VALUEFLAG = 1
- AND TPPD.CREATETIME >= TRUNC(NEXT_DAY(SYSDATE-8,1)-6)
- AND TPPD.CREATETIME < TRUNC(NEXT_DAY(SYSDATE-8,1)+1)
- UNION ALL
- SELECT
- COUNT(1)
- FROM
- TP_PM_PRODUCTIONDATA TPPD
- LEFT JOIN TP_MST_GOODS GD ON GD.GOODSID=TPPD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GDTYPE ON GD.GOODSTYPEID=GDTYPE.GOODSTYPEID
- WHERE
- TPPD.PROCEDUREID IN (104,11)
- AND TPPD.ISREFIRE = 0
- AND GDTYPE.GOODSTYPECODE='001001003'
- AND TPPD.VALUEFLAG = 1
- AND TPPD.CREATETIME >= TRUNC(NEXT_DAY(SYSDATE-8,1)-6)
- AND TPPD.CREATETIME < TRUNC(NEXT_DAY(SYSDATE-8,1)+1)
- )T6)TT6 ON TT.id = TT6.id
-
- )H
- WHERE H.缺陷数 IS NOT NULL
-
- UNION ALL
-
- SELECT
- '小件',
- H.缺陷名称,
- H.缺陷数,
- H.缺陷占比,
- H.上周比,
- CASE WHEN H.上周比 > H.缺陷占比 THEN '下降↓'
- ELSE '上升↑'
- END 对比趋势
- FROM(
- SELECT
- TT.DEFECTNAME 缺陷名称,
- TT2.COUNT 出窑数,
- TT.COUNT 缺陷数,
- TO_CHAR((NVL(TT.COUNT,0)/TT2.COUNT)* 100,'fm99990.0') || '%' AS 缺陷占比,
- TT4.COUNT 上个月缺陷数量,
- TT6.COUNT 上个月出窑数,
- TO_CHAR((NVL(TT4.COUNT, 0)/TT6.COUNT)* 100,'fm99990.0') || '%' AS 上周比
- FROM(
- SELECT ROWNUM id,T.DEFECTID,T.DEFECTNAME,T.count FROM (
- SELECT
- TMD.S_NAME DEFECTNAME,
- TMD.DEFECTID,
- COUNT( 1 ) count
- FROM
- TP_PM_PRODUCTIONDATA TPPD
- LEFT JOIN TP_PM_DEFECT TPD ON TPPD.BARCODE = TPD.BARCODE
- LEFT JOIN TP_MST_DEFECT TMD ON TPD.DEFECTID = TMD.DEFECTID
- LEFT JOIN TP_MST_GOODS GD ON GD.GOODSID=TPPD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GDTYPE ON GD.GOODSTYPEID=GDTYPE.GOODSTYPEID
- WHERE
- TPPD.PROCEDUREID IN (125,131)
- AND TPPD.GOODSLEVELTYPEID = 7
- AND TPD.VALUEFLAG = 1
- AND TPPD.VALUEFLAG = 1
- AND SUBSTR( GDTYPE.GOODSTYPECODE,0,6)='001002'
- AND TMD.VALUEFLAG = 1
- AND TPPD.CREATETIME >=TRUNC(NEXT_DAY(SYSDATE-8,1)+1)
- AND TPPD.CREATETIME< TRUNC(NEXT_DAY(SYSDATE-8,1)+7)+1
- GROUP BY
- TMD.S_NAME,TMD.DEFECTID
- ORDER BY
- count DESC)T
- WHERE ROWNUM<=3
- )TT
- FULL JOIN(
- SELECT
- ROWNUM id,
- T2.count
- FROM(
- SELECT
- COUNT(1) count
- FROM
- TP_PM_PRODUCTIONDATA TPPD
- LEFT JOIN TP_MST_GOODS GD ON GD.GOODSID=TPPD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GDTYPE ON GD.GOODSTYPEID=GDTYPE.GOODSTYPEID
- WHERE
- TPPD.PROCEDUREID IN (104,11)
- AND TPPD.ISREFIRE = 0
- AND SUBSTR( GDTYPE.GOODSTYPECODE,0,6)='001002'
- AND TPPD.VALUEFLAG = 1
- AND TPPD.CREATETIME >=TRUNC(NEXT_DAY(SYSDATE-8,1)+1)
- AND TPPD.CREATETIME< TRUNC(NEXT_DAY(SYSDATE-8,1)+7)+1
- UNION ALL
- SELECT
- COUNT(1) count
- FROM
- TP_PM_PRODUCTIONDATA TPPD
- LEFT JOIN TP_MST_GOODS GD ON GD.GOODSID=TPPD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GDTYPE ON GD.GOODSTYPEID=GDTYPE.GOODSTYPEID
- WHERE
- TPPD.PROCEDUREID IN (104,11)
- AND TPPD.ISREFIRE = 0
- AND SUBSTR( GDTYPE.GOODSTYPECODE,0,6)='001002'
- AND TPPD.VALUEFLAG = 1
- AND TPPD.CREATETIME >=TRUNC(NEXT_DAY(SYSDATE-8,1)+1)
- AND TPPD.CREATETIME< TRUNC(NEXT_DAY(SYSDATE-8,1)+7)+1
- UNION ALL
- SELECT
- COUNT(1)
- FROM
- TP_PM_PRODUCTIONDATA TPPD
- LEFT JOIN TP_MST_GOODS GD ON GD.GOODSID=TPPD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GDTYPE ON GD.GOODSTYPEID=GDTYPE.GOODSTYPEID
- WHERE
- TPPD.PROCEDUREID IN (104,11)
- AND TPPD.ISREFIRE = 0
- AND SUBSTR( GDTYPE.GOODSTYPECODE,0,6)='001002'
- AND TPPD.VALUEFLAG = 1
- AND TPPD.CREATETIME >=TRUNC(NEXT_DAY(SYSDATE-8,1)+1)
- AND TPPD.CREATETIME< TRUNC(NEXT_DAY(SYSDATE-8,1)+7)+1
- )T2)TT2 ON TT.id = TT2.id
- FULL JOIN(
- SELECT ROWNUM id,T4.DEFECTNAME,T4.count FROM (
- SELECT
- TMD.S_NAME DEFECTNAME,
- COUNT( 1 ) count
- FROM
- TP_PM_PRODUCTIONDATA TPPD
- LEFT JOIN TP_PM_DEFECT TPD ON TPPD.BARCODE = TPD.BARCODE
- LEFT JOIN TP_MST_DEFECT TMD ON TPD.DEFECTID = TMD.DEFECTID
- LEFT JOIN TP_MST_GOODS GD ON GD.GOODSID=TPPD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GDTYPE ON GD.GOODSTYPEID=GDTYPE.GOODSTYPEID
- WHERE
- TPPD.PROCEDUREID IN (125,131)
- AND TPPD.GOODSLEVELTYPEID = 7
- AND SUBSTR( GDTYPE.GOODSTYPECODE,0,6)='001002'
- AND TPD.VALUEFLAG = 1
- AND TPPD.VALUEFLAG = 1
- AND TMD.VALUEFLAG = 1
- AND TPPD.CREATETIME >= TRUNC(NEXT_DAY(SYSDATE-8,1)-6)
- AND TPPD.CREATETIME < TRUNC(NEXT_DAY(SYSDATE-8,1)+1)
- GROUP BY
- TMD.S_NAME
- ORDER BY
- count DESC)T4 WHERE ROWNUM <= 3 )TT4 ON TT.id = TT4.id
- FULL JOIN(
- SELECT
- ROWNUM id,
- T6.count
- FROM(
- SELECT
- COUNT(1) count
- FROM
- TP_PM_PRODUCTIONDATA TPPD
- LEFT JOIN TP_MST_GOODS GD ON GD.GOODSID=TPPD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GDTYPE ON GD.GOODSTYPEID=GDTYPE.GOODSTYPEID
- WHERE
- TPPD.PROCEDUREID IN (104,11)
- AND TPPD.ISREFIRE = 0
- AND SUBSTR(GDTYPE.GOODSTYPECODE,0,6)='001002'
- AND TPPD.VALUEFLAG = 1
- AND TPPD.CREATETIME >= TRUNC(NEXT_DAY(SYSDATE-8,1)-6)
- AND TPPD.CREATETIME < TRUNC(NEXT_DAY(SYSDATE-8,1)+1)
- UNION ALL
- SELECT
- COUNT(1) count
- FROM
- TP_PM_PRODUCTIONDATA TPPD
- LEFT JOIN TP_MST_GOODS GD ON GD.GOODSID=TPPD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GDTYPE ON GD.GOODSTYPEID=GDTYPE.GOODSTYPEID
- WHERE
- TPPD.PROCEDUREID IN (104,11)
- AND TPPD.ISREFIRE = 0
- AND SUBSTR( GDTYPE.GOODSTYPECODE,0,6)='001002'
- AND TPPD.VALUEFLAG = 1
- AND TPPD.CREATETIME >= TRUNC(NEXT_DAY(SYSDATE-8,1)-6)
- AND TPPD.CREATETIME < TRUNC(NEXT_DAY(SYSDATE-8,1)+1)
- UNION ALL
- SELECT
- COUNT(1)
- FROM
- TP_PM_PRODUCTIONDATA TPPD
- LEFT JOIN TP_MST_GOODS GD ON GD.GOODSID=TPPD.GOODSID
- LEFT JOIN TP_MST_GOODSTYPE GDTYPE ON GD.GOODSTYPEID=GDTYPE.GOODSTYPEID
- WHERE
- TPPD.PROCEDUREID IN (104,11)
- AND TPPD.ISREFIRE = 0
- AND SUBSTR( GDTYPE.GOODSTYPECODE,0,6)='001002'
- AND TPPD.VALUEFLAG = 1
- AND TPPD.CREATETIME >= TRUNC(NEXT_DAY(SYSDATE-8,1)-6)
- AND TPPD.CREATETIME < TRUNC(NEXT_DAY(SYSDATE-8,1)+1)
- )T6)TT6 ON TT.id = TT6.id
-
- )H
- WHERE H.缺陷数 IS NOT NULL ";
- DataTable dt = conn.ExecuteDatatable(sqlStr);
- string jsonStr = new JsonResult(dt).ToJson();
- context.Response.Write(jsonStr);
- }
- if (context.Request["m"].ToString() == "Load01")
- {
- // string sqlStr = "WITH 本烧出窑总数 AS (\n" +
- //" SELECT\n" +
- //" SUM(\n" +
- //" CASE WHEN (\n" +
- //" ( INSTR( GDD.GROUTINGLINECODE, 'A' ) = 1 OR INSTR( GDD.GROUTINGLINECODE, 'D' ) = 1 ) \n" +
- //" AND INSTR( GT.GOODSTYPECODE, '001002' ) = 1 \n" +
- //" ) THEN\n" +
- //" 1 ELSE 0 \n" +
- //" END \n" +
- //" ) ONESUBSTANDARDCOUNT,\n" +
- //" SUM(\n" +
- //" CASE WHEN (\n" +
- //" ( INSTR( GDD.GROUTINGLINECODE, 'B' ) = 1 OR INSTR( GDD.GROUTINGLINECODE, 'D' ) = 1 ) \n" +
- //" AND INSTR( GT.GOODSTYPECODE, '001001' ) = 1 \n" +
- //" ) THEN\n" +
- //" 1 ELSE 0 \n" +
- //" END \n" +
- //" ) TWOSUBSTANDARDCOUNT,\n" +
- //" SUM( CASE WHEN INSTR( GDD.GROUTINGLINECODE, 'C' ) = 1 THEN 1 ELSE 0 END ) THREESUBSTANDARDCOUNT \n" +
- //"FROM\n" +
- //" TP_PM_PRODUCTIONDATA PD\n" +
- //" LEFT JOIN TP_PM_GROUTINGDAILYDETAIL GDD ON GDD.BARCODE = PD.BARCODE\n" +
- //" INNER JOIN TP_MST_GOODS G ON G.GOODSID = GDD.GOODSID\n" +
- //" INNER JOIN TP_MST_GOODSTYPE GT ON G.GOODSTYPEID = GT.GOODSTYPEID \n" +
- //"WHERE\n" +
- //" PD.ACCOUNTID = 1 \n" +
- //" AND (\n" +
- //" (\n" +
- //" 11 = 11 \n" +
- //" AND (\n" +
- //" ( PD.PROCEDUREID = 11 AND PD.VALUEFLAG = '1' AND PD.ISREFIRE = '0' ) \n" +
- //" OR ( PD.PROCEDUREID = 104 AND PD.ISREFIRE = '0' AND PD.CHECKFLAG = '1' ) \n" +
- //" ) \n" +
- //" ) \n" +
- //" OR (\n" +
- //" 11 = 58 \n" +
- //" AND (\n" +
- //" ( PD.PROCEDUREID = 58 AND PD.VALUEFLAG = '1' ) \n" +
- //" OR ( PD.PROCEDUREID = 104 AND PD.ISREFIRE = '6' AND PD.CHECKFLAG = '1' ) \n" +
- //" ) \n" +
- //" ) \n" +
- //" OR ( 11 NOT IN ( 11, 58 ) AND PD.VALUEFLAG = '1' AND PD.PROCEDUREID = 11 ) \n" +
- //" ) \n" +
- //" AND PD.CREATETIME >= TRUNC( SYSDATE - 7 ) \n" +
- //" AND TRUNC( PD.CREATETIME ) < TRUNC( SYSDATE ) \n" +
- //" ),\n" +
- //" 重烧出窑总数 AS (\n" +
- //" SELECT\n" +
- //" SUM(\n" +
- //" CASE WHEN (\n" +
- //" ( INSTR( GDD.GROUTINGLINECODE, 'A' ) = 1 OR INSTR( GDD.GROUTINGLINECODE, 'D' ) = 1 ) \n" +
- //" AND INSTR( GT.GOODSTYPECODE, '001002' ) = 1 \n" +
- //" ) THEN\n" +
- //" 1 ELSE 0 \n" +
- //" END \n" +
- //" ) ONESUBSTANDARDCOUNT,\n" +
- //" SUM(\n" +
- //" CASE WHEN (\n" +
- //" ( INSTR( GDD.GROUTINGLINECODE, 'B' ) = 1 OR INSTR( GDD.GROUTINGLINECODE, 'D' ) = 1 ) \n" +
- //" AND INSTR( GT.GOODSTYPECODE, '001001' ) = 1 \n" +
- //" ) THEN\n" +
- //" 1 ELSE 0 \n" +
- //" END \n" +
- //" ) TWOSUBSTANDARDCOUNT,\n" +
- //"--本烧三车间次品数\n" +
- //" SUM( CASE WHEN INSTR( GDD.GROUTINGLINECODE, 'C' ) = 1 THEN 1 ELSE 0 END ) THREESUBSTANDARDCOUNT \n" +
- //"FROM\n" +
- //" TP_PM_PRODUCTIONDATA PD\n" +
- //" LEFT JOIN TP_PM_GROUTINGDAILYDETAIL GDD ON GDD.BARCODE = PD.BARCODE\n" +
- //" INNER JOIN TP_MST_GOODS G ON G.GOODSID = GDD.GOODSID\n" +
- //" INNER JOIN TP_MST_GOODSTYPE GT ON G.GOODSTYPEID = GT.GOODSTYPEID \n" +
- //"WHERE\n" +
- //" PD.ACCOUNTID = 1 \n" +
- //" AND (\n" +
- //" (\n" +
- //" 58 = 11 \n" +
- //" AND (\n" +
- //" ( PD.PROCEDUREID = 11 AND PD.VALUEFLAG = '1' AND PD.ISREFIRE = '0' ) \n" +
- //" OR ( PD.PROCEDUREID = 104 AND PD.ISREFIRE = '0' AND PD.CHECKFLAG = '1' ) \n" +
- //" ) \n" +
- //" ) \n" +
- //" OR (\n" +
- //" 58 = 58 \n" +
- //" AND (\n" +
- //" ( PD.PROCEDUREID = 58 AND PD.VALUEFLAG = '1' ) \n" +
- //" OR ( PD.PROCEDUREID = 104 AND PD.ISREFIRE = '6' AND PD.CHECKFLAG = '1' ) \n" +
- //" ) \n" +
- //" ) \n" +
- //" OR ( 58 NOT IN ( 11, 58 ) AND PD.VALUEFLAG = '1' AND PD.PROCEDUREID = 58 ) \n" +
- //" ) \n" +
- //" AND PD.CREATETIME >= TRUNC( SYSDATE - 7 ) \n" +
- //" AND TRUNC( PD.CREATETIME ) < TRUNC( SYSDATE ) \n" +
- //" ),\n" +
- //" 本烧次品重烧数 AS (\n" +
- //" SELECT\n" +
- //" SUM(\n" +
- //" CASE WHEN (\n" +
- //" GOODSLEVELTYPEID = 7 \n" +
- //" AND (\n" +
- //" ( INSTR( GROUTINGLINECODE, 'A' ) = 1 OR INSTR( GROUTINGLINECODE, 'D' ) = 1 ) \n" +
- //" AND INSTR( GOODSTYPECODE, '001002' ) = 1 \n" +
- //" ) \n" +
- //" ) THEN\n" +
- //" 1 ELSE 0 \n" +
- //" END \n" +
- //" ) ONESUBSTANDARDCOUNT,\n" +
- //" SUM(\n" +
- //" CASE WHEN (\n" +
- //" GOODSLEVELTYPEID = 7 \n" +
- //" AND (\n" +
- //" ( INSTR( GROUTINGLINECODE, 'B' ) = 1 OR INSTR( GROUTINGLINECODE, 'D' ) = 1 ) \n" +
- //" AND INSTR( GOODSTYPECODE, '001001' ) = 1 \n" +
- //" ) \n" +
- //" ) THEN\n" +
- //" 1 ELSE 0 \n" +
- //" END \n" +
- //" ) TWOSUBSTANDARDCOUNT,\n" +
- //" SUM( CASE WHEN ( GOODSLEVELTYPEID = 7 AND INSTR( GROUTINGLINECODE, 'C' ) = 1 ) THEN 1 ELSE 0 END ) THREESUBSTANDARDCOUNT,\n" +
- //" SUM(\n" +
- //" CASE WHEN (\n" +
- //" GOODSLEVELTYPEID = 6 \n" +
- //" AND (\n" +
- //" ( INSTR( GROUTINGLINECODE, 'A' ) = 1 OR INSTR( GROUTINGLINECODE, 'D' ) = 1 ) \n" +
- //" AND INSTR( GOODSTYPECODE, '001002' ) = 1 \n" +
- //" ) \n" +
- //" ) THEN\n" +
- //" 1 ELSE 0 \n" +
- //" END \n" +
- //" ) ONEREFIRECOUNT,\n" +
- //" SUM(\n" +
- //" CASE WHEN (\n" +
- //" GOODSLEVELTYPEID = 6 \n" +
- //" AND (\n" +
- //" ( INSTR( GROUTINGLINECODE, 'B' ) = 1 OR INSTR( GROUTINGLINECODE, 'D' ) = 1 ) \n" +
- //" AND INSTR( GOODSTYPECODE, '001001' ) = 1 \n" +
- //" ) \n" +
- //" ) THEN\n" +
- //" 1 ELSE 0 \n" +
- //" END \n" +
- //" ) TWOREFIRECOUNT,\n" +
- //"--本烧三车间重烧数\n" +
- //" SUM( CASE WHEN ( GOODSLEVELTYPEID = 6 AND INSTR( GROUTINGLINECODE, 'C' ) = 1 ) THEN 1 ELSE 0 END ) THREEREFIRECOUNT \n" +
- //"FROM\n" +
- //" (\n" +
- //" SELECT DISTINCT\n" +
- //" PD.BARCODE,\n" +
- //" GT.GOODSTYPECODE,\n" +
- //" GDD.GROUTINGLINECODE,\n" +
- //" PD.GOODSLEVELTYPEID \n" +
- //" FROM\n" +
- //" TP_PM_PRODUCTIONDATA PD\n" +
- //" LEFT JOIN TP_PM_GROUTINGDAILYDETAIL GDD ON PD.BARCODE = GDD.BARCODE\n" +
- //" INNER JOIN TP_PM_DEFECT D ON D.PRODUCTIONDATAID = PD.PRODUCTIONDATAID\n" +
- //" INNER JOIN TP_MST_GOODS G ON G.GOODSID = GDD.GOODSID\n" +
- //" INNER JOIN TP_MST_GOODSTYPE GT ON G.GOODSTYPEID = GT.GOODSTYPEID \n" +
- //" WHERE\n" +
- //" PD.VALUEFLAG = '1' \n" +
- //" AND PD.ACCOUNTID = 1 \n" +
- //" AND LENGTH( PD.KILNCARBATCHNO ) > 0 \n" +
- //" AND PD.CREATETIME >= TRUNC( SYSDATE - 7 ) \n" +
- //" AND TRUNC( PD.CREATETIME ) < TRUNC( SYSDATE ) \n" +
- //" AND PD.MODELTYPE IN ( - 1, - 4, - 5 ) \n" +
- //" AND PD.CHECKBATCHNO = 1 \n" +
- //" AND ( ( 11 <> 58 AND PD.ISREFIRE = '0' ) OR ( 11 = 58 AND PD.ISREFIRE = '6' ) ) \n" +
- //" AND GDD.RECYCLINGFLAG = '0' \n" +
- //" ) T \n" +
- //" ),\n" +
- //" 重烧次品重烧数 AS (\n" +
- //" SELECT\n" +
- //" SUM(\n" +
- //" CASE WHEN (\n" +
- //" GOODSLEVELTYPEID = 7 \n" +
- //" AND (\n" +
- //" ( INSTR( GROUTINGLINECODE, 'A' ) = 1 OR INSTR( GROUTINGLINECODE, 'D' ) = 1 ) \n" +
- //" AND INSTR( GOODSTYPECODE, '001002' ) = 1 \n" +
- //" ) \n" +
- //" ) THEN\n" +
- //" 1 ELSE 0 \n" +
- //" END \n" +
- //" ) ONESUBSTANDARDCOUNT,\n" +
- //" SUM(\n" +
- //" CASE WHEN (\n" +
- //" GOODSLEVELTYPEID = 7 \n" +
- //" AND (\n" +
- //" ( INSTR( GROUTINGLINECODE, 'B' ) = 1 OR INSTR( GROUTINGLINECODE, 'D' ) = 1 ) \n" +
- //" AND INSTR( GOODSTYPECODE, '001001' ) = 1 \n" +
- //" ) \n" +
- //" ) THEN\n" +
- //" 1 ELSE 0 \n" +
- //" END \n" +
- //" ) TWOSUBSTANDARDCOUNT,\n" +
- //" SUM( CASE WHEN ( GOODSLEVELTYPEID = 7 AND INSTR( GROUTINGLINECODE, 'C' ) = 1 ) THEN 1 ELSE 0 END ) THREESUBSTANDARDCOUNT,\n" +
- //" SUM(\n" +
- //" CASE WHEN (\n" +
- //" GOODSLEVELTYPEID = 6 \n" +
- //" AND (\n" +
- //" ( INSTR( GROUTINGLINECODE, 'A' ) = 1 OR INSTR( GROUTINGLINECODE, 'D' ) = 1 ) \n" +
- //" AND INSTR( GOODSTYPECODE, '001002' ) = 1 \n" +
- //" ) \n" +
- //" ) THEN\n" +
- //" 1 ELSE 0 \n" +
- //" END \n" +
- //" ) ONEREFIRECOUNT,\n" +
- //" SUM(\n" +
- //" CASE WHEN (\n" +
- //" GOODSLEVELTYPEID = 6 \n" +
- //" AND (\n" +
- //" ( INSTR( GROUTINGLINECODE, 'B' ) = 1 OR INSTR( GROUTINGLINECODE, 'D' ) = 1 ) \n" +
- //" AND INSTR( GOODSTYPECODE, '001001' ) = 1 \n" +
- //" ) \n" +
- //" ) THEN\n" +
- //" 1 ELSE 0 \n" +
- //" END \n" +
- //" ) TWOREFIRECOUNT,\n" +
- //" SUM( CASE WHEN ( GOODSLEVELTYPEID = 6 AND INSTR( GROUTINGLINECODE, 'C' ) = 1 ) THEN 1 ELSE 0 END ) THREEREFIRECOUNT \n" +
- //"FROM\n" +
- //" (\n" +
- //" SELECT DISTINCT\n" +
- //" PD.BARCODE,\n" +
- //" GT.GOODSTYPECODE,\n" +
- //" GDD.GROUTINGLINECODE,\n" +
- //" PD.GOODSLEVELTYPEID \n" +
- //" FROM\n" +
- //" TP_PM_PRODUCTIONDATA PD\n" +
- //" LEFT JOIN TP_PM_GROUTINGDAILYDETAIL GDD ON PD.BARCODE = GDD.BARCODE\n" +
- //" INNER JOIN TP_PM_DEFECT D ON D.PRODUCTIONDATAID = PD.PRODUCTIONDATAID\n" +
- //" INNER JOIN TP_MST_GOODS G ON G.GOODSID = GDD.GOODSID\n" +
- //" INNER JOIN TP_MST_GOODSTYPE GT ON G.GOODSTYPEID = GT.GOODSTYPEID \n" +
- //" WHERE\n" +
- //" PD.VALUEFLAG = '1' \n" +
- //" AND PD.ACCOUNTID = 1 \n" +
- //" AND LENGTH( PD.KILNCARBATCHNO ) > 0 \n" +
- //" AND PD.CREATETIME >= TRUNC( SYSDATE - 7 ) \n" +
- //" AND TRUNC( PD.CREATETIME ) < TRUNC( SYSDATE ) \n" +
- //" AND PD.MODELTYPE IN ( - 1, - 4, - 5 ) \n" +
- //" AND PD.CHECKBATCHNO = 1 \n" +
- //" AND ( ( 58 <> 58 AND PD.ISREFIRE = '0' ) OR ( 58 = 58 AND PD.ISREFIRE = '6' ) ) \n" +
- //" AND GDD.RECYCLINGFLAG = '0' \n" +
- //" ) T \n" +
- //" ) SELECT\n" +
- //" 本烧出窑总数.ONESUBSTANDARDCOUNT AS 一车间,\n" +
- //" 本烧出窑总数.TWOSUBSTANDARDCOUNT AS 二车间,\n" +
- //" 本烧出窑总数.THREESUBSTANDARDCOUNT AS 三车间 \n" +
- //"FROM\n" +
- //" 本烧出窑总数 UNION ALL\n" +
- //"SELECT\n" +
- //" ROUND( ( ( 本烧出窑总数.ONESUBSTANDARDCOUNT - 本烧次品重烧数.ONESUBSTANDARDCOUNT - 本烧次品重烧数.ONEREFIRECOUNT ) / 本烧出窑总数.ONESUBSTANDARDCOUNT ) * 100, 1 ) AS 一车间,\n" +
- //" ROUND( ( ( 本烧出窑总数.TWOSUBSTANDARDCOUNT - 本烧次品重烧数.TWOSUBSTANDARDCOUNT - 本烧次品重烧数.TWOREFIRECOUNT ) / 本烧出窑总数.TWOSUBSTANDARDCOUNT ) * 100, 1 ) AS 二车间,\n" +
- //" ROUND( ( ( 本烧出窑总数.THREESUBSTANDARDCOUNT - 本烧次品重烧数.THREESUBSTANDARDCOUNT - 本烧次品重烧数.THREEREFIRECOUNT ) / 本烧出窑总数.THREESUBSTANDARDCOUNT ) * 100, 1 ) AS 三车间 \n" +
- //"FROM\n" +
- //" 本烧出窑总数\n" +
- //" LEFT JOIN 本烧次品重烧数 ON 1 = 1 UNION ALL\n" +
- //"SELECT\n" +
- //" ROUND(\n" +
- //" (\n" +
- //" ( ( 本烧出窑总数.ONESUBSTANDARDCOUNT -本烧次品重烧数.ONESUBSTANDARDCOUNT -本烧次品重烧数.ONEREFIRECOUNT ) + ( 重烧出窑总数.ONESUBSTANDARDCOUNT -重烧次品重烧数.ONESUBSTANDARDCOUNT -重烧次品重烧数.ONEREFIRECOUNT ) ) /本烧出窑总数.ONESUBSTANDARDCOUNT \n" +
- //" ) * 100,\n" +
- //" 1 \n" +
- //" ) AS 一车间,\n" +
- //" ROUND(\n" +
- //" (\n" +
- //" ( ( 本烧出窑总数.TWOSUBSTANDARDCOUNT -本烧次品重烧数.TWOSUBSTANDARDCOUNT -本烧次品重烧数.TWOREFIRECOUNT ) + ( 重烧出窑总数.TWOSUBSTANDARDCOUNT -重烧次品重烧数.TWOSUBSTANDARDCOUNT -重烧次品重烧数.TWOREFIRECOUNT ) ) /本烧出窑总数.TWOSUBSTANDARDCOUNT \n" +
- //" ) * 100,\n" +
- //" 1 \n" +
- //" ) AS 二车间,\n" +
- //" ROUND(\n" +
- //" (\n" +
- //" ( ( 本烧出窑总数.THREESUBSTANDARDCOUNT -本烧次品重烧数.THREESUBSTANDARDCOUNT -本烧次品重烧数.THREEREFIRECOUNT ) + ( 重烧出窑总数.THREESUBSTANDARDCOUNT -重烧次品重烧数.THREESUBSTANDARDCOUNT -重烧次品重烧数.THREEREFIRECOUNT ) ) /本烧出窑总数.THREESUBSTANDARDCOUNT \n" +
- //" ) * 100,\n" +
- //" 1 \n" +
- //" ) AS 三车间 \n" +
- //"FROM\n" +
- //" 本烧出窑总数\n" +
- //" LEFT JOIN 本烧次品重烧数 ON 1 = 1\n" +
- //" LEFT JOIN 重烧出窑总数 ON 1 = 1\n" +
- //" LEFT JOIN 重烧次品重烧数 ON 1 = 1";
- //DataTable dt = conn.ExecuteDatatable(sqlStr);
- //string jsonStr = new JsonResult(dt).ToJson();
- //context.Response.Write(jsonStr);
- string 本烧出窑总数sql = @" SELECT
- SUM(
- CASE WHEN (
- ( INSTR( GDD.GROUTINGLINECODE, 'A' ) = 1 OR INSTR( GDD.GROUTINGLINECODE, 'D' ) = 1 )
- AND INSTR( GT.GOODSTYPECODE, '001002' ) = 1
- ) THEN
- 1 ELSE 0
- END
- ) ONESUBSTANDARDCOUNT,
- SUM(
- CASE WHEN (
- ( INSTR( GDD.GROUTINGLINECODE, 'B' ) = 1 OR INSTR( GDD.GROUTINGLINECODE, 'D' ) = 1 )
- AND INSTR( GT.GOODSTYPECODE, '001001' ) = 1
- ) THEN
- 1 ELSE 0
- END
- ) TWOSUBSTANDARDCOUNT,
- SUM( CASE WHEN INSTR( GDD.GROUTINGLINECODE, 'C' ) = 1 THEN 1 ELSE 0 END ) THREESUBSTANDARDCOUNT
- FROM
- TP_PM_PRODUCTIONDATA PD
- LEFT JOIN TP_PM_GROUTINGDAILYDETAIL GDD ON GDD.BARCODE = PD.BARCODE
- INNER JOIN TP_MST_GOODS G ON G.GOODSID = GDD.GOODSID
- INNER JOIN TP_MST_GOODSTYPE GT ON G.GOODSTYPEID = GT.GOODSTYPEID
- WHERE
- PD.ACCOUNTID = 1
- AND (
- (
- 11 = 11
- AND (
- ( PD.PROCEDUREID = 11 AND PD.VALUEFLAG = '1' AND PD.ISREFIRE = '0' )
- OR ( PD.PROCEDUREID = 104 AND PD.ISREFIRE = '0' AND PD.CHECKFLAG = '1' )
- )
- )
- OR (
- 11 = 58
- AND (
- ( PD.PROCEDUREID = 58 AND PD.VALUEFLAG = '1' )
- OR ( PD.PROCEDUREID = 104 AND PD.ISREFIRE = '6' AND PD.CHECKFLAG = '1' )
- )
- )
- OR ( 11 NOT IN ( 11, 58 ) AND PD.VALUEFLAG = '1' AND PD.PROCEDUREID = 11 )
- )
- AND PD.CREATETIME >= TRUNC( SYSDATE - 7 )
- AND TRUNC( PD.CREATETIME ) < TRUNC( SYSDATE ) ";
- DataTable dt1 = conn.ExecuteDatatable(本烧出窑总数sql);
- var 本烧出窑总数 = new List<sqlResultOne>();
- for (int i = 0; i < dt1.Rows.Count; i++)
- {
- 本烧出窑总数.Add(new sqlResultOne()
- {
- ONESUBSTANDARDCOUNT = double.Parse(dt1.Rows[i]["ONESUBSTANDARDCOUNT"].ToString()),
- TWOSUBSTANDARDCOUNT = double.Parse(dt1.Rows[i]["TWOSUBSTANDARDCOUNT"].ToString()),
- THREESUBSTANDARDCOUNT = double.Parse(dt1.Rows[i]["THREESUBSTANDARDCOUNT"].ToString())
- });
- }
- string 重烧出窑总数sql = @"SELECT
- SUM(
- CASE WHEN (
- ( INSTR( GDD.GROUTINGLINECODE, 'A' ) = 1 OR INSTR( GDD.GROUTINGLINECODE, 'D' ) = 1 )
- AND INSTR( GT.GOODSTYPECODE, '001002' ) = 1
- ) THEN
- 1 ELSE 0
- END
- ) ONESUBSTANDARDCOUNT,
- SUM(
- CASE WHEN (
- ( INSTR( GDD.GROUTINGLINECODE, 'B' ) = 1 OR INSTR( GDD.GROUTINGLINECODE, 'D' ) = 1 )
- AND INSTR( GT.GOODSTYPECODE, '001001' ) = 1
- ) THEN
- 1 ELSE 0
- END
- ) TWOSUBSTANDARDCOUNT,
- --本烧三车间次品数
- SUM( CASE WHEN INSTR( GDD.GROUTINGLINECODE, 'C' ) = 1 THEN 1 ELSE 0 END ) THREESUBSTANDARDCOUNT
- FROM
- TP_PM_PRODUCTIONDATA PD
- LEFT JOIN TP_PM_GROUTINGDAILYDETAIL GDD ON GDD.BARCODE = PD.BARCODE
- INNER JOIN TP_MST_GOODS G ON G.GOODSID = GDD.GOODSID
- INNER JOIN TP_MST_GOODSTYPE GT ON G.GOODSTYPEID = GT.GOODSTYPEID
- WHERE
- PD.ACCOUNTID = 1
- AND (
- (
- 58 = 11
- AND (
- ( PD.PROCEDUREID = 11 AND PD.VALUEFLAG = '1' AND PD.ISREFIRE = '0' )
- OR ( PD.PROCEDUREID = 104 AND PD.ISREFIRE = '0' AND PD.CHECKFLAG = '1' )
- )
- )
- OR (
- 58 = 58
- AND (
- ( PD.PROCEDUREID = 58 AND PD.VALUEFLAG = '1' )
- OR ( PD.PROCEDUREID = 104 AND PD.ISREFIRE = '6' AND PD.CHECKFLAG = '1' )
- )
- )
- OR ( 58 NOT IN ( 11, 58 ) AND PD.VALUEFLAG = '1' AND PD.PROCEDUREID = 58 )
- )
- AND PD.CREATETIME >= TRUNC( SYSDATE - 7 )
- AND TRUNC( PD.CREATETIME ) < TRUNC( SYSDATE ) ";
- DataTable dt2 = conn.ExecuteDatatable(重烧出窑总数sql);
- var 重烧出窑总数 = new List<sqlResultOne>();
- for (int i = 0; i < dt2.Rows.Count; i++)
- {
- 重烧出窑总数.Add(new sqlResultOne()
- {
- ONESUBSTANDARDCOUNT = double.Parse(dt2.Rows[i]["ONESUBSTANDARDCOUNT"].ToString()),
- TWOSUBSTANDARDCOUNT = double.Parse(dt2.Rows[i]["TWOSUBSTANDARDCOUNT"].ToString()),
- THREESUBSTANDARDCOUNT = double.Parse(dt2.Rows[i]["THREESUBSTANDARDCOUNT"].ToString())
- });
- }
- string 本烧次品重烧数sql = @" SELECT
- SUM(
- CASE WHEN (
- GOODSLEVELTYPEID = 7
- AND (
- ( INSTR( GROUTINGLINECODE, 'A' ) = 1 OR INSTR( GROUTINGLINECODE, 'D' ) = 1 )
- AND INSTR( GOODSTYPECODE, '001002' ) = 1
- )
- ) THEN
- 1 ELSE 0
- END
- ) ONESUBSTANDARDCOUNT,
- SUM(
- CASE WHEN (
- GOODSLEVELTYPEID = 7
- AND (
- ( INSTR( GROUTINGLINECODE, 'B' ) = 1 OR INSTR( GROUTINGLINECODE, 'D' ) = 1 )
- AND INSTR( GOODSTYPECODE, '001001' ) = 1
- )
- ) THEN
- 1 ELSE 0
- END
- ) TWOSUBSTANDARDCOUNT,
- SUM( CASE WHEN ( GOODSLEVELTYPEID = 7 AND INSTR( GROUTINGLINECODE, 'C' ) = 1 ) THEN 1 ELSE 0 END ) THREESUBSTANDARDCOUNT,
- SUM(
- CASE WHEN (
- GOODSLEVELTYPEID = 6
- AND (
- ( INSTR( GROUTINGLINECODE, 'A' ) = 1 OR INSTR( GROUTINGLINECODE, 'D' ) = 1 )
- AND INSTR( GOODSTYPECODE, '001002' ) = 1
- )
- ) THEN
- 1 ELSE 0
- END
- ) ONEREFIRECOUNT,
- SUM(
- CASE WHEN (
- GOODSLEVELTYPEID = 6
- AND (
- ( INSTR( GROUTINGLINECODE, 'B' ) = 1 OR INSTR( GROUTINGLINECODE, 'D' ) = 1 )
- AND INSTR( GOODSTYPECODE, '001001' ) = 1
- )
- ) THEN
- 1 ELSE 0
- END
- ) TWOREFIRECOUNT,
- --本烧三车间重烧数
- SUM( CASE WHEN ( GOODSLEVELTYPEID = 6 AND INSTR( GROUTINGLINECODE, 'C' ) = 1 ) THEN 1 ELSE 0 END ) THREEREFIRECOUNT
- FROM
- (
- SELECT DISTINCT
- PD.BARCODE,
- GT.GOODSTYPECODE,
- GDD.GROUTINGLINECODE,
- PD.GOODSLEVELTYPEID
- FROM
- TP_PM_PRODUCTIONDATA PD
- LEFT JOIN TP_PM_GROUTINGDAILYDETAIL GDD ON PD.BARCODE = GDD.BARCODE
- INNER JOIN TP_PM_DEFECT D ON D.PRODUCTIONDATAID = PD.PRODUCTIONDATAID
- INNER JOIN TP_MST_GOODS G ON G.GOODSID = GDD.GOODSID
- INNER JOIN TP_MST_GOODSTYPE GT ON G.GOODSTYPEID = GT.GOODSTYPEID
- WHERE
- PD.VALUEFLAG = '1'
- AND PD.ACCOUNTID = 1
- AND LENGTH( PD.KILNCARBATCHNO ) > 0
- AND PD.CREATETIME >= TRUNC( SYSDATE - 7 )
- AND TRUNC( PD.CREATETIME ) < TRUNC( SYSDATE )
- AND PD.MODELTYPE IN ( - 1, - 4, - 5 )
- AND PD.CHECKBATCHNO = 1
- AND ( ( 11 <> 58 AND PD.ISREFIRE = '0' ) OR ( 11 = 58 AND PD.ISREFIRE = '6' ) )
- AND GDD.RECYCLINGFLAG = '0'
- ) T ";
- DataTable dt3 = conn.ExecuteDatatable(本烧次品重烧数sql);
- var 本烧次品重烧数 = new List<sqlResultTwo>();
- for (int i = 0; i < dt3.Rows.Count; i++)
- {
- 本烧次品重烧数.Add(new sqlResultTwo()
- {
- ONESUBSTANDARDCOUNT = double.Parse(dt3.Rows[i]["ONESUBSTANDARDCOUNT"].ToString()),
- TWOSUBSTANDARDCOUNT = double.Parse(dt3.Rows[i]["TWOSUBSTANDARDCOUNT"].ToString()),
- THREESUBSTANDARDCOUNT = double.Parse(dt3.Rows[i]["THREESUBSTANDARDCOUNT"].ToString()),
- ONEREFIRECOUNT = double.Parse(dt3.Rows[i]["ONEREFIRECOUNT"].ToString()),
- TWOREFIRECOUNT = double.Parse(dt3.Rows[i]["TWOREFIRECOUNT"].ToString()),
- THREEREFIRECOUNT = double.Parse(dt3.Rows[i]["THREEREFIRECOUNT"].ToString()),
- });
- }
- string 重烧次品重烧数sql = @"SELECT
- SUM(
- CASE WHEN (
- GOODSLEVELTYPEID = 7
- AND (
- ( INSTR( GROUTINGLINECODE, 'A' ) = 1 OR INSTR( GROUTINGLINECODE, 'D' ) = 1 )
- AND INSTR( GOODSTYPECODE, '001002' ) = 1
- )
- ) THEN
- 1 ELSE 0
- END
- ) ONESUBSTANDARDCOUNT,
- SUM(
- CASE WHEN (
- GOODSLEVELTYPEID = 7
- AND (
- ( INSTR( GROUTINGLINECODE, 'B' ) = 1 OR INSTR( GROUTINGLINECODE, 'D' ) = 1 )
- AND INSTR( GOODSTYPECODE, '001001' ) = 1
- )
- ) THEN
- 1 ELSE 0
- END
- ) TWOSUBSTANDARDCOUNT,
- SUM( CASE WHEN ( GOODSLEVELTYPEID = 7 AND INSTR( GROUTINGLINECODE, 'C' ) = 1 ) THEN 1 ELSE 0 END ) THREESUBSTANDARDCOUNT,
- SUM(
- CASE WHEN (
- GOODSLEVELTYPEID = 6
- AND (
- ( INSTR( GROUTINGLINECODE, 'A' ) = 1 OR INSTR( GROUTINGLINECODE, 'D' ) = 1 )
- AND INSTR( GOODSTYPECODE, '001002' ) = 1
- )
- ) THEN
- 1 ELSE 0
- END
- ) ONEREFIRECOUNT,
- SUM(
- CASE WHEN (
- GOODSLEVELTYPEID = 6
- AND (
- ( INSTR( GROUTINGLINECODE, 'B' ) = 1 OR INSTR( GROUTINGLINECODE, 'D' ) = 1 )
- AND INSTR( GOODSTYPECODE, '001001' ) = 1
- )
- ) THEN
- 1 ELSE 0
- END
- ) TWOREFIRECOUNT,
- SUM( CASE WHEN ( GOODSLEVELTYPEID = 6 AND INSTR( GROUTINGLINECODE, 'C' ) = 1 ) THEN 1 ELSE 0 END ) THREEREFIRECOUNT
- FROM
- (
- SELECT DISTINCT
- PD.BARCODE,
- GT.GOODSTYPECODE,
- GDD.GROUTINGLINECODE,
- PD.GOODSLEVELTYPEID
- FROM
- TP_PM_PRODUCTIONDATA PD
- LEFT JOIN TP_PM_GROUTINGDAILYDETAIL GDD ON PD.BARCODE = GDD.BARCODE
- INNER JOIN TP_PM_DEFECT D ON D.PRODUCTIONDATAID = PD.PRODUCTIONDATAID
- INNER JOIN TP_MST_GOODS G ON G.GOODSID = GDD.GOODSID
- INNER JOIN TP_MST_GOODSTYPE GT ON G.GOODSTYPEID = GT.GOODSTYPEID
- WHERE
- PD.VALUEFLAG = '1'
- AND PD.ACCOUNTID = 1
- AND LENGTH( PD.KILNCARBATCHNO ) > 0
- AND PD.CREATETIME >= TRUNC( SYSDATE - 7 )
- AND TRUNC( PD.CREATETIME ) < TRUNC( SYSDATE )
- AND PD.MODELTYPE IN ( - 1, - 4, - 5 )
- AND PD.CHECKBATCHNO = 1
- AND ( ( 58 <> 58 AND PD.ISREFIRE = '0' ) OR ( 58 = 58 AND PD.ISREFIRE = '6' ) )
- AND GDD.RECYCLINGFLAG = '0'
- ) T ";
- DataTable dt4 = conn.ExecuteDatatable(重烧次品重烧数sql);
- var 重烧次品重烧数 = new List<sqlResultTwo>();
- for (int i = 0; i < dt4.Rows.Count; i++)
- {
- 重烧次品重烧数.Add(new sqlResultTwo()
- {
- ONESUBSTANDARDCOUNT = double.Parse(dt4.Rows[i]["ONESUBSTANDARDCOUNT"].ToString()),
- TWOSUBSTANDARDCOUNT = double.Parse(dt4.Rows[i]["TWOSUBSTANDARDCOUNT"].ToString()),
- THREESUBSTANDARDCOUNT = double.Parse(dt4.Rows[i]["THREESUBSTANDARDCOUNT"].ToString()),
- ONEREFIRECOUNT = double.Parse(dt4.Rows[i]["ONEREFIRECOUNT"].ToString()),
- TWOREFIRECOUNT = double.Parse(dt4.Rows[i]["TWOREFIRECOUNT"].ToString()),
- THREEREFIRECOUNT = double.Parse(dt4.Rows[i]["THREEREFIRECOUNT"].ToString()),
- });
- }
- var results = new List<Result>();
- // 第一个SELECT
- var firstSelect = 本烧出窑总数.Select(ex => new Result
- {
- 一车间 = ex.ONESUBSTANDARDCOUNT,
- 二车间 = ex.TWOSUBSTANDARDCOUNT,
- 三车间 = ex.THREESUBSTANDARDCOUNT
- }).Cast<Result>();
- results.AddRange(firstSelect);
- // 第二个SELECT
- var secondSelect = from b in 本烧出窑总数
- join bc in 本烧次品重烧数 on 1 equals 1 into bcj
- from bc in bcj.DefaultIfEmpty()
- select new Result
- {
- 一车间 = Math.Round(((b.ONESUBSTANDARDCOUNT - bc.ONESUBSTANDARDCOUNT - bc.ONEREFIRECOUNT) / (double)b.ONESUBSTANDARDCOUNT) * 100, 1),
- 二车间 = Math.Round(((b.TWOSUBSTANDARDCOUNT - bc.TWOSUBSTANDARDCOUNT - bc.TWOREFIRECOUNT) / (double)b.TWOSUBSTANDARDCOUNT) * 100, 1),
- 三车间 = Math.Round(((b.THREESUBSTANDARDCOUNT - bc.THREESUBSTANDARDCOUNT - bc.THREEREFIRECOUNT) / (double)b.THREESUBSTANDARDCOUNT) * 100, 1)
- };
- results.AddRange(secondSelect);
- // 第三个SELECT
- var thirdSelect = from b in 本烧出窑总数
- join bc in 本烧次品重烧数 on 1 equals 1 into bcj
- from bc in bcj.DefaultIfEmpty()
- join z in 本烧出窑总数 on 1 equals 1 into zj
- from z in zj.DefaultIfEmpty()
- join zc in 重烧次品重烧数 on 1 equals 1 into zcj
- from zc in zcj.DefaultIfEmpty()
- select new Result
- {
- 一车间 = Math.Round(
- (((b.ONESUBSTANDARDCOUNT - (bc != null ? bc.ONESUBSTANDARDCOUNT : 0) - (bc != null ? bc.ONEREFIRECOUNT : 0)) +
- ((z != null ? z.ONESUBSTANDARDCOUNT : 0) - (zc != null ? zc.ONESUBSTANDARDCOUNT : 0) - (zc != null ? zc.ONEREFIRECOUNT : 0))) /
- (double)(b.ONESUBSTANDARDCOUNT != 0 ? b.ONESUBSTANDARDCOUNT : 1)) * 100,
- 1),
- 二车间 = Math.Round(
- (((b.TWOSUBSTANDARDCOUNT - (bc != null ? bc.TWOSUBSTANDARDCOUNT : 0) - (bc != null ? bc.TWOREFIRECOUNT : 0)) +
- ((z != null ? z.TWOSUBSTANDARDCOUNT : 0) - (zc != null ? zc.TWOSUBSTANDARDCOUNT : 0) - (zc != null ? zc.TWOREFIRECOUNT : 0))) /
- (double)(b.TWOSUBSTANDARDCOUNT != 0 ? b.TWOSUBSTANDARDCOUNT : 1)) * 100,
- 1),
- 三车间 = Math.Round(
- (((b.THREESUBSTANDARDCOUNT - (bc != null ? bc.THREESUBSTANDARDCOUNT : 0) - (bc != null ? bc.THREEREFIRECOUNT : 0)) +
- ((z != null ? z.THREESUBSTANDARDCOUNT : 0) - (zc != null ? zc.THREESUBSTANDARDCOUNT : 0) - (zc != null ? zc.THREEREFIRECOUNT : 0))) /
- (double)(b.THREESUBSTANDARDCOUNT != 0 ? b.THREESUBSTANDARDCOUNT : 1)) * 100,
- 1)
- };
- results.AddRange(thirdSelect);
- DataTable dt = new DataTable();
- dt.Columns.Add("一车间");
- dt.Columns.Add("二车间");
- dt.Columns.Add("三车间");
- foreach (var item in results)
- {
- DataRow dr = dt.NewRow();
- dr["一车间"] = item.一车间;
- dr["二车间"] = item.二车间;
- dr["三车间"] = item.三车间;
- dt.Rows.Add(dr);
- }
- string jsonStr = new JsonResult(dt).ToJson();
- context.Response.Write(jsonStr);
- }
- if (context.Request["m"].ToString() == "Load07")
- {
- string sqlStr = @"SELECT
- --成型小件
- MAX( (
- SELECT
- SUM( CASE WHEN ( INSTR( GT.GOODSTYPECODE, '001002' ) = 1 ) THEN 1 ELSE 0 END ) AS SMALLPACK
- FROM TP_PM_GROUTINGDAILYDETAIL GDD
- INNER JOIN TP_MST_GOODS G ON GDD.GOODSID = G.GOODSID
- INNER JOIN TP_MST_GOODSTYPE GT ON G.GOODSTYPEID = GT.GOODSTYPEID
- WHERE GDD.VALUEFLAG = 1
- AND GDD.CREATETIME >= TRUNC( sysdate - 7 )
- AND TRUNC( GDD.CREATETIME ) < TRUNC( SYSDATE )
- ) ) AS SMALLGDD,
- --成型大件
- MAX( (
- SELECT
- SUM( CASE WHEN ( INSTR( GT.GOODSTYPECODE, '001001' ) = 1 ) THEN 1 ELSE 0 END ) AS SMALLPACK
- FROM TP_PM_GROUTINGDAILYDETAIL GDD
- INNER JOIN TP_MST_GOODS G ON GDD.GOODSID = G.GOODSID
- INNER JOIN TP_MST_GOODSTYPE GT ON G.GOODSTYPEID = GT.GOODSTYPEID
- WHERE GDD.VALUEFLAG = 1
- AND GDD.CREATETIME >= TRUNC( sysdate - 7 )
- AND TRUNC( GDD.CREATETIME ) < TRUNC( SYSDATE )
- AND SUBSTR(GDD.GROUTINGLINECODE, 0, 4) NOT IN ('C05B','C05C')
- ) ) AS BIGGDD,
- --半检小件
- SUM(CASE WHEN (INSTR( GT.GOODSTYPECODE, '001002' ) = 1) AND PD.PROCEDUREID IN (1,17,118,92,88) THEN 1 ELSE 0 END ) AS SMALLHALF,
- --半检大件
- SUM(CASE WHEN (INSTR( GT.GOODSTYPECODE, '001001' ) = 1) AND PD.PROCEDUREID IN (1,17,118,92,88) THEN 1 ELSE 0 END ) AS BIGHALF,
- --施釉小件
- SUM(CASE WHEN (INSTR( GT.GOODSTYPECODE, '001002' ) = 1) AND PD.PROCEDUREID IN (65,99) THEN 1 ELSE 0 END ) AS SMALLGLAZE,
- --施釉大件
- SUM(CASE WHEN (INSTR( GT.GOODSTYPECODE, '001001' ) = 1) AND PD.PROCEDUREID IN (65,99) THEN 1 ELSE 0 END ) AS BIGGLAZE,
- --烧成小件
- SUM(CASE WHEN (INSTR( GT.GOODSTYPECODE, '001002' ) = 1) AND PD.PROCEDUREID IN (10,103) THEN 1 ELSE 0 END ) AS SMALLKILN,
- --烧成大件
- SUM(CASE WHEN (INSTR( GT.GOODSTYPECODE, '001001' ) = 1) AND PD.PROCEDUREID IN (10,103) THEN 1 ELSE 0 END ) AS BIGKILN,
- --成检小件
- SUM(CASE WHEN (INSTR( GT.GOODSTYPECODE, '001002' ) = 1) AND PD.PROCEDUREID IN (11,104) THEN 1 ELSE 0 END ) AS SMALLCHECK,
- --成检大件
- SUM(CASE WHEN (INSTR( GT.GOODSTYPECODE, '001001' ) = 1) AND PD.PROCEDUREID IN (11,104) THEN 1 ELSE 0 END ) AS BIGCHECK,
- --包装小件
- MAX( (
- SELECT
- SUM( CASE WHEN ( INSTR( GT.GOODSTYPECODE, '001002' ) = 1 ) THEN 1 ELSE 0 END ) AS SMALLPACK
- FROM TP_PM_FINISHEDPRODUCT F
- INNER JOIN TP_MST_GOODS G ON F.GOODSID = G.GOODSID
- INNER JOIN TP_MST_GOODSTYPE GT ON G.GOODSTYPEID = GT.GOODSTYPEID
- WHERE F.VALUEFLAG = 1
- AND F.CREATETIME >= TRUNC( sysdate - 7 )
- AND TRUNC( F.CREATETIME ) < TRUNC( SYSDATE )
- ) ) AS SMALLPACK,
- MAX( (
- SELECT
- SUM( CASE WHEN ( INSTR( GT.GOODSTYPECODE, '001001' ) = 1 ) THEN 1 ELSE 0 END ) AS SMALLPACK
- FROM TP_PM_FINISHEDPRODUCT F
- INNER JOIN TP_MST_GOODS G ON F.GOODSID = G.GOODSID
- INNER JOIN TP_MST_GOODSTYPE GT ON G.GOODSTYPEID = GT.GOODSTYPEID
- WHERE F.VALUEFLAG = 1
- AND F.CREATETIME >= TRUNC( sysdate - 7 )
- AND TRUNC( F.CREATETIME ) < TRUNC( SYSDATE )
- ) ) AS BIGPACK
- FROM
- TP_PM_PRODUCTIONDATA PD
- INNER JOIN TP_MST_GOODS G ON G.GOODSID = PD.GOODSID
- INNER JOIN TP_MST_GOODSTYPE GT ON G.GOODSTYPEID = GT.GOODSTYPEID
- WHERE
- PD.VALUEFLAG = 1
- AND PD.CREATETIME >= TRUNC( sysdate - 7 )
- AND TRUNC( PD.CREATETIME ) < TRUNC( SYSDATE )
-
-
- ";
- DataTable dt = conn.ExecuteDatatable(sqlStr);
- string jsonStr = new JsonResult(dt).ToJson();
- context.Response.Write(jsonStr);
- }
- if (context.Request["m"].ToString() == "Load06")
- {
- // string sqlStr = @"WITH 一车间半检产量 AS (
- // SELECT
- // COUNT( DISTINCT PD.BARCODE ) AS ONEHALFCHECK
- // FROM
- // TP_PM_PRODUCTIONDATA PD
- // LEFT JOIN TP_MST_GOODS GOODS ON GOODS.GOODSID = PD.GOODSID
- // LEFT JOIN TP_MST_GOODSTYPE GTP ON GTP.GOODSTYPEID = GOODS.GOODSTYPEID
- // WHERE
- // PD.VALUEFLAG = 1
- // AND PD.PROCEDUREID IN ( 1, 17 )
- // AND PD.CREATETIME >= TRUNC( sysdate-7 )
- // AND TRUNC( PD.CREATETIME ) <= TRUNC( SYSDATE )
- // AND INSTR( GTP.GOODSTYPECODE, '001002' ) = 1
- // ),
- // 二车间半检产量 AS (
- // SELECT
- // COUNT( DISTINCT PD.BARCODE ) AS TWOHALFCHECK
- // FROM
- // TP_PM_PRODUCTIONDATA PD
- // LEFT JOIN TP_MST_GOODS GOODS ON GOODS.GOODSID = PD.GOODSID
- // LEFT JOIN TP_MST_GOODSTYPE GTP ON GTP.GOODSTYPEID = GOODS.GOODSTYPEID
- // WHERE
- // PD.VALUEFLAG = 1
- // AND PD.PROCEDUREID IN ( 1, 17 )
- // AND PD.CREATETIME >= TRUNC( sysdate-7 )
- // AND TRUNC( PD.CREATETIME ) <= TRUNC( SYSDATE )
- // AND INSTR( GTP.GOODSTYPECODE, '001001' ) = 1
- // ),
- // 三车间半检产量 AS (
- // SELECT
- // COUNT( DISTINCT PD.BARCODE ) AS THREEHALFCHECK
- // FROM
- // TP_PM_PRODUCTIONDATA PD
- // LEFT JOIN TP_MST_GOODS GOODS ON GOODS.GOODSID = PD.GOODSID
- // LEFT JOIN TP_MST_GOODSTYPE GTP ON GTP.GOODSTYPEID = GOODS.GOODSTYPEID
- // WHERE
- // PD.VALUEFLAG = 1
- // AND PD.PROCEDUREID IN ( 118, 92, 88 )
- // AND PD.CREATETIME >= TRUNC( sysdate-7 )
- // AND TRUNC( PD.CREATETIME ) <= TRUNC( SYSDATE )
- // ),
- // 车间干补数 AS (
- // SELECT
- // SUM( CASE WHEN ( ( INSTR( GDD.GROUTINGLINECODE, 'A' ) = 1 OR INSTR( GDD.GROUTINGLINECODE, 'D' ) = 1 ) AND INSTR( GT.GOODSTYPECODE, '001002' ) = 1 ) THEN 1 ELSE 0 END ) AS ONESPECIALREPAIR,
- // SUM( CASE WHEN ( ( INSTR( GDD.GROUTINGLINECODE, 'B' ) = 1 OR INSTR( GDD.GROUTINGLINECODE, 'D' ) = 1 ) AND INSTR( GT.GOODSTYPECODE, '001001' ) = 1 ) THEN 1 ELSE 0 END ) AS TWOSPECIALREPAIR,
- // SUM( CASE WHEN INSTR( GDD.GROUTINGLINECODE, 'C' ) = 1 THEN 1 ELSE 0 END ) AS THREESPECIALREPAIR
- // FROM
- // TP_PM_PRODUCTIONDATA PD
- // LEFT JOIN TP_PM_GROUTINGDAILYDETAIL GDD ON PD.BARCODE = GDD.BARCODE
- // LEFT JOIN TP_MST_GOODS GOODS ON GOODS.GOODSID = GDD.GOODSID
- // LEFT JOIN TP_MST_GOODSTYPE GT ON GT.GOODSTYPEID = GOODS.GOODSTYPEID
- // WHERE
- // PD.PROCEDUREID = 18
- // AND PD.CREATETIME >= TRUNC( sysdate-7 )
- // AND TRUNC( PD.CREATETIME ) <= TRUNC( SYSDATE )
- // ),
- // 本烧出窑总数 AS (
- // SELECT
- // --本烧一车间数
- // SUM( CASE WHEN ( ( INSTR( GDD.GROUTINGLINECODE, 'A' ) = 1 OR INSTR( GDD.GROUTINGLINECODE, 'D' ) = 1 ) AND INSTR( GT.GOODSTYPECODE, '001002' ) = 1 ) THEN 1 ELSE 0 END ) ONESUBSTANDARDCOUNT,
- // --本烧二车间数
- // SUM( CASE WHEN ( ( INSTR( GDD.GROUTINGLINECODE, 'B' ) = 1 OR INSTR( GDD.GROUTINGLINECODE, 'D' ) = 1 ) AND INSTR( GT.GOODSTYPECODE, '001001' ) = 1 ) THEN 1 ELSE 0 END ) TWOSUBSTANDARDCOUNT,
- // --本烧三车间数
- // SUM( CASE WHEN INSTR( GDD.GROUTINGLINECODE, 'C' ) = 1 THEN 1 ELSE 0 END ) THREESUBSTANDARDCOUNT
- // FROM
- // TP_PM_PRODUCTIONDATA PD
- // LEFT JOIN TP_PM_GROUTINGDAILYDETAIL GDD ON GDD.BARCODE = PD.BARCODE
- // INNER JOIN TP_MST_GOODS G ON G.GOODSID = GDD.GOODSID
- // INNER JOIN TP_MST_GOODSTYPE GT ON G.GOODSTYPEID = GT.GOODSTYPEID
- // WHERE
- // PD.ACCOUNTID = 1
- // AND (
- // ( 11 = 11 AND ( ( PD.PROCEDUREID = 11 AND PD.VALUEFLAG = '1' AND PD.ISREFIRE = '0' ) OR ( PD.PROCEDUREID = 104 AND PD.ISREFIRE = '0' AND PD.CHECKFLAG = '1' ) ) )
- // OR
- // ( 11 = 58 AND ( ( PD.PROCEDUREID = 58 AND PD.VALUEFLAG = '1' ) OR ( PD.PROCEDUREID = 104 AND PD.ISREFIRE = '6' AND PD.CHECKFLAG = '1' ) ) )
- // OR
- // ( 11 NOT IN ( 11, 58 ) AND PD.VALUEFLAG = '1' AND PD.PROCEDUREID = 11 )
- // )
- // AND PD.CREATETIME >= TRUNC( sysdate-7 )
- // AND TRUNC( PD.CREATETIME ) <= TRUNC( SYSDATE )
- // ),
- // 车间冷补数 AS (
- // SELECT
- // SUM( CASE WHEN ( ( INSTR( GDD.GROUTINGLINECODE, 'A' ) = 1 OR INSTR( GDD.GROUTINGLINECODE, 'D' ) = 1 ) AND INSTR( GT.GOODSTYPECODE, '001002' ) = 1 ) THEN 1 ELSE 0 END ) AS ONELENGBU,
- // SUM( CASE WHEN ( ( INSTR( GDD.GROUTINGLINECODE, 'B' ) = 1 OR INSTR( GDD.GROUTINGLINECODE, 'D' ) = 1 ) AND INSTR( GT.GOODSTYPECODE, '001001' ) = 1 ) THEN 1 ELSE 0 END ) AS TWOLENGBU,
- // SUM( CASE WHEN INSTR( GDD.GROUTINGLINECODE, 'C' ) = 1 THEN 1 ELSE 0 END ) AS THREELENGBU
- // FROM
- // TP_PM_PRODUCTIONDATA PD
- // LEFT JOIN TP_PM_GROUTINGDAILYDETAIL GDD ON PD.BARCODE = GDD.BARCODE
- // LEFT JOIN TP_MST_GOODS GOODS ON GOODS.GOODSID = GDD.GOODSID
- // LEFT JOIN TP_MST_GOODSTYPE GT ON GT.GOODSTYPEID = GOODS.GOODSTYPEID
- // WHERE
- // PD.PROCEDUREID IN (113,135)
- // AND PD.CREATETIME >= TRUNC( sysdate-7 )
- // AND TRUNC( PD.CREATETIME ) <= TRUNC( SYSDATE )
- // )
- // SELECT
- // TO_CHAR(ROUND(车间干补数.ONESPECIALREPAIR / 一车间半检产量.ONEHALFCHECK, 6) * 100,'fm99990.0') AS ONESPECIALREPAIR,
- // TO_CHAR(ROUND(车间干补数.TWOSPECIALREPAIR /二车间半检产量.TWOHALFCHECK, 6) * 100,'fm99990.0') AS TWOSPECIALREPAIR,
- // TO_CHAR(ROUND(车间干补数.THREESPECIALREPAIR / 三车间半检产量.THREEHALFCHECK, 6) * 100,'fm99990.0') AS THREESPECIALREPAIR,
- // TO_CHAR(ROUND(车间冷补数.ONELENGBU / 本烧出窑总数.ONESUBSTANDARDCOUNT, 6) * 100,'fm99990.0') AS ONELENGBU,
- // TO_CHAR(ROUND(车间冷补数.TWOLENGBU / 本烧出窑总数.TWOSUBSTANDARDCOUNT, 6) * 100,'fm99990.0') AS TWOLENGBU,
- // TO_CHAR(ROUND(车间冷补数.THREELENGBU / 本烧出窑总数.THREESUBSTANDARDCOUNT, 6) * 100,'fm99990.0') AS THREELENGBU
- // FROM
- // 车间干补数
- // INNER JOIN 车间冷补数 ON 1 = 1
- // LEFT JOIN 一车间半检产量 ON 1 = 1
- // LEFT JOIN 二车间半检产量 ON 1 = 1
- // LEFT JOIN 三车间半检产量 ON 1 = 1
- // LEFT JOIN 本烧出窑总数 ON 1 = 1
- //";
- string sqlStr = @"with 成检检验数 AS (
- SELECT
- pd.GOODSCODE,
- COUNT( DISTINCT pd.BARCODE) AS 数量 FROM TP_PM_PRODUCTIONDATA pd
- INNER JOIN TP_PM_GROUTINGDAILYDETAIL gdd on gdd.BARCODE=pd.BARCODE AND gdd.TESTMOULDFLAG=0
- WHERE pd.PROCEDUREID IN( 125,131)
- AND pd.VALUEFLAG=1
- AND pd.CREATETIME >=TRUNC(NEXT_DAY(SYSDATE-8,1)+1)
- AND pd.CREATETIME< TRUNC(NEXT_DAY(SYSDATE-8,1)+7)+1
- GROUP BY pd.GOODSCODE
- ),成检废品数 AS (
- SELECT
- pd.GOODSCODE,
- COUNT( DISTINCT pd.BARCODE) AS 数量 FROM TP_PM_PRODUCTIONDATA pd
- INNER JOIN TP_PM_GROUTINGDAILYDETAIL gdd on gdd.BARCODE=pd.BARCODE AND gdd.TESTMOULDFLAG=0
- WHERE pd.PROCEDUREID IN( 125,131)
- AND pd.VALUEFLAG=1
- AND pd.GOODSLEVELTYPEID in(7,13)
- AND pd.CREATETIME >=TRUNC(NEXT_DAY(SYSDATE-8,1)+1)
- AND pd.CREATETIME< TRUNC(NEXT_DAY(SYSDATE-8,1)+7)+1
- GROUP BY pd.GOODSCODE
- )
- SELECT
- *
- FROM(
- SELECT
- '成检' 工序,
- TO_CHAR(成检检验数.GOODSCODE) AS GOODSCODE,
- 成检检验数.数量 AS 检验数,
- DECODE(NVL(成检废品数.数量, 0),0,'0%',TO_CHAR(((NVL(成检废品数.数量, 0)) /DECODE(NVL(成检检验数.数量, 1),0,1,NVL(成检检验数.数量, 1))) * 100,'fm99990.0')) AS 废品率
- FROM 成检检验数
- LEFT JOIN 成检废品数 ON 成检废品数.GOODSCODE=成检检验数.GOODSCODE
- ORDER BY DECODE(NVL(成检废品数.数量, 0),0,'0%',TO_CHAR(((NVL(成检废品数.数量, 0)) /DECODE(NVL(成检检验数.数量, 1),0,1,NVL(成检检验数.数量, 1))) * 100,'fm99990.0')) DESC
- ) WHERE ROWNUM<6";
- DataTable dt = conn.ExecuteDatatable(sqlStr);
- string jsonStr = new JsonResult(dt).ToJson();
- context.Response.Write(jsonStr);
- }
- if (context.Request["m"].ToString() == "Load09")
- {
- string sqlStr = @"SELECT
- TO_CHAR(TT.plandate, 'MM-DD')AS plandate ,
- TT.INSPECTIONQUANTITY,
- DECODE(NVL(TT.INSPECTIONQUANTITY, 0),0,0,TO_CHAR(((NVL(TT.INSPECTIONQUANTITY, 0)) /DECODE(NVL(TT.PLANINSPECTIONQUANTITY, 1),0,1,NVL(TT.PLANINSPECTIONQUANTITY, 1))) * 100,'fm99990.0')) AS WANCHENGLV,
- 100 - DECODE(NVL(TT.BUHEGESHU, 0) ,0 ,0,TO_CHAR(((NVL(TT.BUHEGESHU, 0)) / DECODE(NVL(TT.INSPECTIONQUANTITY, 1), 0, 1, NVL(TT.INSPECTIONQUANTITY, 1))) * 100,'fm99990.0')) AS HEGELV
- FROM (
- SELECT
- t.plandate
- ,SUM(t.planquantity) PLANINSPECTIONQUANTITY
- ,SUM(t.INSPECTIONQUANTITY) INSPECTIONQUANTITY
- ,SUM(t.unqualifiedquantity) BUHEGESHU
- FROM (SELECT
- fp.plandate
- ,SUM(fp.planinspectionquantity) planquantity
- ,SUM(fp.inspectionquantity) INSPECTIONQUANTITY
- ,COUNT(DISTINCT fd.barcode) unqualifiedquantity
- FROM tp_pm_fqcitemsplan fp
- LEFT JOIN tp_pm_fqcitemsdata fd
- ON fd.planid = fp.planid
- AND fd.isqualified = 0
- WHERE fp.plandate > TRUNC(SYSDATE - 7)
- AND fp.plandate <= TRUNC(SYSDATE)
- AND fp.configtype IN ('大件', '小件')
- AND fp.planinspectionquantity <> 0
- GROUP BY fp.plandate) t
- GROUP BY t.plandate
- ) TT ORDER BY plandate ";
- DataTable dt = conn.ExecuteDatatable(sqlStr);
- string jsonStr = new JsonResult(dt).ToJson();
- context.Response.Write(jsonStr);
- }
- if (context.Request["m"].ToString() == "Load04")
- {
- string sqlStr = @"SELECT
- *
- FROM
- (
- SELECT
- ne.GOODCODE,
- COUNT( DISTINCT FD.BARCODE ) AS COUNTS
- FROM
- TP_PM_FINISHEDPRODUCT FD
- INNER JOIN TP_MST_GOODSNEW ne ON ne.GOODCODE = FD.GOODSCODE
- WHERE
- FD.VALUEFLAG = 1
- AND FD.CREATETIME >= TRUNC( SYSDATE - 7 )
- GROUP BY
- ne.GOODCODE
- )
- WHERE
- ROWNUM <6";
- DataTable dt = conn.ExecuteDatatable(sqlStr);
- string jsonStr = new JsonResult(dt).ToJson();
- context.Response.Write(jsonStr);
- }
- #region 模具库存周转率,产品 SKU 周转率
- //if (context.Request["m"].ToString() == "Load10") 请勿删除 根据要求后期可能会再次使用
- // { List<CDAParameter> sqlPara = new List<CDAParameter>();
- // sqlPara.Add(new CDAParameter("DATEBEGIN", DateTime.Now.AddDays(-1).ToString("yyyy-MM-dd")+ " 00:00:00", DataType.DateTime));
- // sqlPara.Add(new CDAParameter("DATEEND", DateTime.Now.AddDays(0).ToString("yyyy-MM-dd")+ " 23:59:59", DataType.DateTime));
- // string sqlStr = @"SELECT
- // *
- // FROM
- // (
- // SELECT
- // TO_CHAR( '模具' || GOODSCODE ) AS 地点,
- // GOODSCODE,
- // 时间差值,
- // to_char( TO_CHAR( ( NVL( 时间差值, 0 ) / NVL( 产量, 1 ) / 24 ), 'fm9999990.0' ) ) 周转周期
- // FROM
- // (
- // SELECT
- // mch.GOODSCODE,
- // SUM( mch.时间差 ) AS 时间差值,
- // COUNT( DISTINCT goodsmould.MOULDCODE ) AS 产量
- // FROM
- // (
- // SELECT
- // mch.MOULDCODE,
- // mch.GOODSCODE,
- // TO_CHAR( ( ceil( ( ( mch.CREATETIME - mchh.CREATETIME ) ) * 24 ) ), 'fm9999990' ) AS 时间差
- // FROM
- // tp_pc_mouldchangehistory mch
- // LEFT JOIN tp_pc_mouldchangehistory mchh ON mchh.MOULDCODE = mch.MOULDCODE
- // AND mchh.operationtype = 1
- // WHERE
- // mch.accountid = 1
- // AND mch.operationtype = 6 --operationtype=1 新增入库 operationtype=6 库存上线(出库) -1为变更型号
- // AND mch.operationtype >- 1
- // AND mch.createtime >= @DATEBEGIN@
- // AND mch.createtime <= @DATEEND@
- // ) mch
- // LEFT JOIN tp_pc_mouldchangehistory goodsmould ON goodsmould.MOULDCODE = mch.MOULDCODE
- // WHERE
- // goodsmould.accountid = 1
- // AND goodsmould.operationtype = 6
- // AND goodsmould.operationtype >- 1
- // AND goodsmould.createtime >= @DATEBEGIN@
- // AND goodsmould.createtime <= @DATEEND@
- // GROUP BY
- // mch.GOODSCODE
- // ORDER BY
- // SUM( mch.时间差 ) DESC
- // )
- // ORDER BY
- // TO_NUMBER( ( TO_CHAR( ( NVL( 时间差值, 0 ) / NVL( 产量, 1 ) ), 'fm9999990.0000' ) ) ) DESC
- // )
- // WHERE
- // ROWNUM <= 4 UNION ALL
- // SELECT
- // *
- // FROM
- // (
- // SELECT
- // TO_CHAR( '精坯' || GOODSCODE ) AS 地点,
- // GOODSCODE,
- // 时间差值,
- // to_char( TO_CHAR( ( NVL( 时间差值, 0 ) / NVL( 产量, 1 ) / 24 ), 'fm9999990.0' ) ) 周转周期
- // FROM
- // (
- // SELECT
- // inoutPD.GOODSCODE,
- // SUM( 时间差 ) AS 时间差值,
- // COUNT( DISTINCT GOODSPD.BARCODE ) 产量
- // FROM
- // (
- // SELECT
- // OUTPD.BARCODE,
- // OUTPD.GOODSCODE,
- // TO_CHAR( ( ceil( ( ( OUTPD.CREATETIME - INPD.CREATETIME ) * 24 ) ) ), 'fm9999990' ) AS 时间差
- // FROM
- // TP_PM_PRODUCTIONDATA OUTPD
- // INNER JOIN TP_PM_PRODUCTIONDATA INPD ON OUTPD.BARCODE = INPD.BARCODE
- // AND INPD.PROCEDUREID IN ( 53, 97 )
- // AND INPD.VALUEFLAG = 1
- // WHERE
- // OUTPD.PROCEDUREID IN ( 119, 64, 81 )
- // AND OUTPD.VALUEFLAG = 1
- // AND OUTPD.createtime >= @DATEBEGIN@
- // AND OUTPD.createtime <= @DATEEND@
- // ) inoutPD
- // INNER JOIN TP_PM_PRODUCTIONDATA GOODSPD ON GOODSPD.BARCODE = inoutPD.BARCODE
- // WHERE
- // GOODSPD.PROCEDUREID IN ( 119, 64, 81 )
- // AND GOODSPD.VALUEFLAG = 1
- // AND GOODSPD.createtime >= @DATEBEGIN@
- // AND GOODSPD.createtime <= @DATEEND@
- // GROUP BY
- // inoutPD.GOODSCODE
- // )
- // ORDER BY
- // TO_NUMBER( ( TO_CHAR( ( NVL( 时间差值, 0 ) / NVL( 产量, 1 ) ), 'fm9999990.0000' ) ) ) DESC
- // )
- // WHERE
- // ROWNUM <= 3 UNION ALL
- // SELECT
- // *
- // FROM
- // (
- // SELECT
- // TO_CHAR( '施釉' || GOODSCODE ) AS 地点,
- // GOODSCODE,
- // 时间差值,
- // to_char( TO_CHAR( ( NVL( 时间差值, 0 ) / NVL( 产量, 1 ) / 24 ), 'fm9999990.0' ) ) 周转周期
- // FROM
- // (
- // SELECT
- // inoutPD.GOODSCODE,
- // SUM( 时间差 ) AS 时间差值,
- // COUNT( DISTINCT GOODSPD.BARCODE ) 产量
- // FROM
- // (
- // SELECT
- // OUTPD.BARCODE,
- // OUTPD.GOODSCODE,
- // TO_CHAR( ( ceil( ( ( OUTPD.CREATETIME - INPD.CREATETIME ) * 24 ) ) ), 'fm9999990' ) AS 时间差
- // FROM
- // TP_PM_PRODUCTIONDATA OUTPD
- // INNER JOIN TP_PM_PRODUCTIONDATA INPD ON OUTPD.BARCODE = INPD.BARCODE
- // AND INPD.PROCEDUREID IN ( 99, 65 )
- // AND INPD.VALUEFLAG = 1
- // WHERE
- // OUTPD.PROCEDUREID IN ( 5, 101 )
- // AND OUTPD.VALUEFLAG = 1
- // AND OUTPD.createtime >= @DATEBEGIN@
- // AND OUTPD.createtime <= @DATEEND@
- // ) inoutPD
- // INNER JOIN TP_PM_PRODUCTIONDATA GOODSPD ON GOODSPD.BARCODE = inoutPD.BARCODE
- // WHERE
- // GOODSPD.PROCEDUREID IN ( 5, 101 )
- // AND GOODSPD.VALUEFLAG = 1
- // AND GOODSPD.createtime >= @DATEBEGIN@
- // AND GOODSPD.createtime <= @DATEEND@
- // GROUP BY
- // inoutPD.GOODSCODE
- // )
- // ORDER BY
- // TO_NUMBER( ( TO_CHAR( ( NVL( 时间差值, 0 ) / NVL( 产量, 1 ) ), 'fm9999990.0000' ) ) ) DESC
- // )
- // WHERE
- // ROWNUM <=3";
- // DataTable dt = conn.ExecuteDatatable(sqlStr, sqlPara.ToArray());
- // string jsonStr = new JsonResult(dt).ToJson();
- // context.Response.Write(jsonStr);
- // }
- #endregion
- if (context.Request["m"].ToString() == "Load91")
- {
- string sqlStr = @"
- SELECT
- TO_char(T.ALLCOUNT) AS 缺陷数,
- TO_char(T.INSPECTITEM) AS 缺陷名称,
- TO_char(T.SUMCOUNT)缺陷总数,
- TO_char(T.SUMCOUNT1)抽检数,
- TO_char(DECODE(NVL(T.ALLCOUNT, 0) ,0 ,'0%' ,TO_CHAR(((NVL(T.ALLCOUNT, 0)) / DECODE(NVL(T.SUMCOUNT1, 1) ,0 ,1 ,NVL(T.SUMCOUNT1, 1))) * 100 ,'fm99990.0'))) AS 缺陷占比
- FROM (
- SELECT
- COUNT(1) ALLCOUNT,
- TP_PM_FQCITEMSDATA.INSPECTITEM,
- SUM1.SUMCOUNT,
- SUM2.SUMCOUNT1
- FROM TP_PM_FQCITEMSDATA
- LEFT JOIN (
- SELECT
- COUNT(1) SUMCOUNT,
- VALUEFLAG
- FROM TP_PM_FQCITEMSDATA
- WHERE TP_PM_FQCITEMSDATA.VALUEFLAG = 1
- AND TRUNC(TP_PM_FQCITEMSDATA.CREATETIME) = TRUNC(SYSDATE)
- AND TP_PM_FQCITEMSDATA.INSPECTTYPE IN (616, 617, 653, 654, 647)
- AND TP_PM_FQCITEMSDATA.ISQUALIFIED = 0
- GROUP BY
- VALUEFLAG
- ) SUM1 ON SUM1.VALUEFLAG = TP_PM_FQCITEMSDATA.VALUEFLAG
- LEFT JOIN (
- SELECT
- COUNT(1) SUMCOUNT1,
- INSPECTITEM
- FROM TP_PM_FQCITEMSDATA
- WHERE TP_PM_FQCITEMSDATA.VALUEFLAG = 1
- AND TRUNC(TP_PM_FQCITEMSDATA.CREATETIME) = TRUNC(SYSDATE)
- AND TP_PM_FQCITEMSDATA.INSPECTTYPE IN (616, 617, 653, 654, 647)
- GROUP BY
- INSPECTITEM
- ) SUM2 ON SUM2.INSPECTITEM = TP_PM_FQCITEMSDATA.INSPECTITEM
- WHERE TP_PM_FQCITEMSDATA.VALUEFLAG = 1
- AND TRUNC(TP_PM_FQCITEMSDATA.CREATETIME)
- = TRUNC(SYSDATE)
- AND TP_PM_FQCITEMSDATA.INSPECTTYPE IN (616, 617, 653, 654, 647)
- AND TP_PM_FQCITEMSDATA.ISQUALIFIED = 0
- GROUP BY
- TP_PM_FQCITEMSDATA.INSPECTITEM,
- SUM1.SUMCOUNT,
- SUM2.SUMCOUNT1
- ORDER BY
- ALLCOUNT DESC
- ) T
- WHERE ROWNUM < 6";
- DataTable dt = conn.ExecuteDatatable(sqlStr);
- string jsonStr = new JsonResult(dt).ToJson();
- context.Response.Write(jsonStr);
- }
- if (context.Request["m"].ToString() == "Load10")
- {
- string sqlStr = @"WITH 半检检验数 AS (
- SELECT
- pd.GOODSCODE,
- COUNT( DISTINCT pd.BARCODE) AS 数量
- FROM TP_PM_PRODUCTIONDATA pd
- INNER JOIN TP_PM_GROUTINGDAILYDETAIL gdd on gdd.BARCODE=pd.BARCODE AND gdd.TESTMOULDFLAG=0
- WHERE pd.PROCEDUREID IN( 117,89,95,61)
- AND pd.VALUEFLAG=1
- AND pd.CREATETIME >=TRUNC(NEXT_DAY(SYSDATE-8,1)+1)
- AND pd.CREATETIME< TRUNC(NEXT_DAY(SYSDATE-8,1)+7)+1
- GROUP BY pd.GOODSCODE
- ),
- 半检废品数 AS (
- SELECT
- pd.GOODSCODE,
- COUNT( DISTINCT pd.BARCODE) AS 数量 FROM TP_PM_SEMICHECK pd
- INNER JOIN TP_PM_GROUTINGDAILYDETAIL gdd on gdd.BARCODE=pd.BARCODE AND gdd.TESTMOULDFLAG=0
- WHERE pd.PROCEDUREID IN( 117,89,95,61,90,96)
- AND pd.VALUEFLAG=1
- AND pd.GOODSLEVELTYPEID in(7,13,14)
- AND pd.CREATETIME >=TRUNC(NEXT_DAY(SYSDATE-8,1)+1)
- AND pd.CREATETIME< TRUNC(NEXT_DAY(SYSDATE-8,1)+7)+1
- GROUP BY pd.GOODSCODE
- )
- SELECT
- *
- FROM(
- SELECT
- '半检' 工序,
- TO_CHAR(半检检验数.GOODSCODE) AS GOODSCODE,
- 半检检验数.数量 AS 检验数,
- DECODE(NVL(半检废品数.数量, 0),0,'0%',TO_CHAR(((NVL(半检废品数.数量, 0)) /DECODE(NVL(半检检验数.数量, 1),0,1,NVL(半检检验数.数量, 1))) * 100,'fm99990.0')) AS 废品率
- FROM 半检检验数
- LEFT JOIN 半检废品数 ON 半检废品数.GOODSCODE=半检检验数.GOODSCODE
- ORDER BY DECODE(NVL(半检废品数.数量, 0),0,'0%',TO_CHAR(((NVL(半检废品数.数量, 0)) /DECODE(NVL(半检检验数.数量, 1),0,1,NVL(半检检验数.数量, 1))) * 100,'fm99990.0')) DESC
- ) WHERE ROWNUM<6
-
- ";
- DataTable dt = conn.ExecuteDatatable(sqlStr);
- string jsonStr = new JsonResult(dt).ToJson();
- context.Response.Write(jsonStr);
- }
- }
- }
- public bool IsReusable
- {
- get
- {
- return false;
- }
- }
- public class sqlResultOne
- {
- public double ONESUBSTANDARDCOUNT { get; set; }
- public double TWOSUBSTANDARDCOUNT { get; set; }
- public double THREESUBSTANDARDCOUNT { get; set; }
- }
- public class sqlResultTwo : sqlResultOne
- {
- public double ONEREFIRECOUNT { get; set; }
- public double TWOREFIRECOUNT { get; set; }
- public double THREEREFIRECOUNT { get; set; }
- }
- public class Result
- {
- public double 一车间 { get; set; }
- public double 二车间 { get; set; }
- public double 三车间 { get; set; }
- }
- }
|