7b1e7e867c3b1670d5a7f17192d99a6a7b5b3616.svn-base 796 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856985798589859986098619862986398649865986698679868986998709871987298739874987598769877987898799880988198829883988498859886988798889889989098919892989398949895989698979898989999009901990299039904990599069907990899099910991199129913991499159916991799189919992099219922992399249925992699279928992999309931993299339934993599369937993899399940994199429943994499459946994799489949995099519952995399549955995699579958995999609961996299639964996599669967996899699970997199729973997499759976997799789979998099819982998399849985998699879988998999909991999299939994999599969997999899991000010001100021000310004100051000610007100081000910010100111001210013100141001510016100171001810019100201002110022100231002410025100261002710028100291003010031100321003310034100351003610037100381003910040100411004210043100441004510046100471004810049100501005110052100531005410055100561005710058100591006010061100621006310064100651006610067100681006910070100711007210073100741007510076100771007810079100801008110082100831008410085100861008710088100891009010091100921009310094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208102091021010211102121021310214102151021610217102181021910220102211022210223102241022510226102271022810229102301023110232102331023410235102361023710238102391024010241102421024310244102451024610247102481024910250102511025210253102541025510256102571025810259102601026110262102631026410265102661026710268102691027010271102721027310274102751027610277102781027910280102811028210283102841028510286102871028810289102901029110292102931029410295102961029710298102991030010301103021030310304103051030610307103081030910310103111031210313103141031510316103171031810319103201032110322103231032410325103261032710328103291033010331103321033310334103351033610337103381033910340103411034210343103441034510346103471034810349103501035110352103531035410355103561035710358103591036010361103621036310364103651036610367103681036910370103711037210373103741037510376103771037810379103801038110382103831038410385103861038710388103891039010391103921039310394103951039610397103981039910400104011040210403104041040510406104071040810409104101041110412104131041410415104161041710418104191042010421104221042310424104251042610427104281042910430104311043210433104341043510436104371043810439104401044110442104431044410445104461044710448104491045010451104521045310454104551045610457104581045910460104611046210463104641046510466104671046810469104701047110472104731047410475104761047710478104791048010481104821048310484104851048610487104881048910490104911049210493104941049510496104971049810499105001050110502105031050410505105061050710508105091051010511105121051310514105151051610517105181051910520105211052210523105241052510526105271052810529105301053110532105331053410535105361053710538105391054010541105421054310544105451054610547105481054910550105511055210553105541055510556105571055810559105601056110562105631056410565105661056710568105691057010571105721057310574105751057610577105781057910580105811058210583105841058510586105871058810589105901059110592105931059410595105961059710598105991060010601106021060310604106051060610607106081060910610106111061210613106141061510616106171061810619106201062110622106231062410625106261062710628106291063010631106321063310634106351063610637106381063910640106411064210643106441064510646106471064810649106501065110652106531065410655106561065710658106591066010661106621066310664106651066610667106681066910670106711067210673106741067510676106771067810679106801068110682106831068410685106861068710688106891069010691106921069310694106951069610697106981069910700107011070210703107041070510706107071070810709107101071110712107131071410715107161071710718107191072010721107221072310724107251072610727107281072910730107311073210733107341073510736107371073810739107401074110742107431074410745107461074710748107491075010751107521075310754107551075610757107581075910760107611076210763107641076510766107671076810769107701077110772107731077410775107761077710778107791078010781107821078310784107851078610787107881078910790107911079210793107941079510796107971079810799108001080110802108031080410805108061080710808108091081010811108121081310814108151081610817108181081910820108211082210823108241082510826108271082810829108301083110832108331083410835108361083710838108391084010841108421084310844108451084610847108481084910850108511085210853108541085510856108571085810859108601086110862108631086410865108661086710868108691087010871108721087310874108751087610877108781087910880108811088210883108841088510886108871088810889108901089110892108931089410895108961089710898108991090010901109021090310904109051090610907109081090910910109111091210913109141091510916109171091810919109201092110922109231092410925109261092710928109291093010931109321093310934109351093610937109381093910940109411094210943109441094510946109471094810949109501095110952109531095410955109561095710958109591096010961109621096310964109651096610967109681096910970109711097210973109741097510976109771097810979109801098110982109831098410985109861098710988109891099010991109921099310994109951099610997109981099911000110011100211003110041100511006110071100811009110101101111012110131101411015110161101711018110191102011021110221102311024110251102611027110281102911030110311103211033110341103511036110371103811039110401104111042110431104411045110461104711048110491105011051110521105311054110551105611057110581105911060110611106211063110641106511066110671106811069110701107111072110731107411075110761107711078110791108011081110821108311084110851108611087110881108911090110911109211093110941109511096110971109811099111001110111102111031110411105111061110711108111091111011111111121111311114111151111611117111181111911120111211112211123111241112511126111271112811129111301113111132111331113411135111361113711138111391114011141111421114311144111451114611147111481114911150111511115211153111541115511156111571115811159111601116111162111631116411165111661116711168111691117011171111721117311174111751117611177111781117911180111811118211183111841118511186111871118811189111901119111192111931119411195111961119711198111991120011201112021120311204112051120611207112081120911210112111121211213112141121511216112171121811219112201122111222112231122411225112261122711228112291123011231112321123311234112351123611237112381123911240112411124211243112441124511246112471124811249112501125111252112531125411255112561125711258112591126011261112621126311264112651126611267112681126911270112711127211273112741127511276112771127811279112801128111282112831128411285112861128711288112891129011291112921129311294112951129611297112981129911300113011130211303113041130511306113071130811309113101131111312113131131411315113161131711318113191132011321113221132311324113251132611327113281132911330113311133211333113341133511336113371133811339113401134111342113431134411345113461134711348113491135011351113521135311354113551135611357113581135911360113611136211363113641136511366113671136811369113701137111372113731137411375113761137711378113791138011381113821138311384113851138611387113881138911390113911139211393113941139511396113971139811399114001140111402114031140411405114061140711408114091141011411114121141311414114151141611417114181141911420114211142211423114241142511426114271142811429114301143111432114331143411435114361143711438114391144011441114421144311444114451144611447114481144911450114511145211453114541145511456114571145811459114601146111462114631146411465114661146711468114691147011471114721147311474114751147611477114781147911480114811148211483114841148511486114871148811489114901149111492114931149411495114961149711498114991150011501115021150311504115051150611507115081150911510115111151211513115141151511516115171151811519115201152111522115231152411525115261152711528115291153011531115321153311534115351153611537115381153911540115411154211543115441154511546115471154811549115501155111552115531155411555115561155711558115591156011561115621156311564115651156611567115681156911570115711157211573115741157511576115771157811579115801158111582115831158411585115861158711588115891159011591115921159311594115951159611597115981159911600116011160211603116041160511606116071160811609116101161111612116131161411615116161161711618116191162011621116221162311624116251162611627116281162911630116311163211633116341163511636116371163811639116401164111642116431164411645116461164711648116491165011651116521165311654116551165611657116581165911660116611166211663116641166511666116671166811669116701167111672116731167411675116761167711678116791168011681116821168311684116851168611687116881168911690116911169211693116941169511696116971169811699117001170111702117031170411705117061170711708117091171011711117121171311714117151171611717117181171911720117211172211723117241172511726117271172811729117301173111732117331173411735117361173711738117391174011741117421174311744117451174611747117481174911750117511175211753117541175511756117571175811759117601176111762117631176411765117661176711768117691177011771117721177311774117751177611777117781177911780117811178211783117841178511786117871178811789117901179111792117931179411795117961179711798117991180011801118021180311804118051180611807118081180911810118111181211813118141181511816118171181811819118201182111822118231182411825118261182711828118291183011831118321183311834118351183611837118381183911840118411184211843118441184511846118471184811849118501185111852118531185411855118561185711858118591186011861118621186311864118651186611867118681186911870118711187211873118741187511876118771187811879118801188111882118831188411885118861188711888118891189011891118921189311894118951189611897118981189911900119011190211903119041190511906119071190811909119101191111912119131191411915119161191711918119191192011921119221192311924119251192611927119281192911930119311193211933119341193511936119371193811939119401194111942119431194411945119461194711948119491195011951119521195311954119551195611957119581195911960119611196211963119641196511966119671196811969119701197111972119731197411975119761197711978119791198011981119821198311984119851198611987119881198911990119911199211993119941199511996119971199811999120001200112002120031200412005120061200712008120091201012011120121201312014120151201612017120181201912020120211202212023120241202512026120271202812029120301203112032120331203412035120361203712038120391204012041120421204312044120451204612047120481204912050120511205212053120541205512056120571205812059120601206112062120631206412065120661206712068120691207012071120721207312074120751207612077120781207912080120811208212083120841208512086120871208812089120901209112092120931209412095120961209712098120991210012101121021210312104121051210612107121081210912110121111211212113121141211512116121171211812119121201212112122121231212412125121261212712128121291213012131121321213312134121351213612137121381213912140121411214212143121441214512146121471214812149121501215112152121531215412155121561215712158121591216012161121621216312164121651216612167121681216912170121711217212173121741217512176121771217812179121801218112182121831218412185121861218712188121891219012191121921219312194121951219612197121981219912200122011220212203122041220512206122071220812209122101221112212122131221412215122161221712218122191222012221122221222312224122251222612227122281222912230122311223212233122341223512236122371223812239122401224112242122431224412245122461224712248122491225012251122521225312254122551225612257122581225912260122611226212263122641226512266122671226812269122701227112272122731227412275122761227712278122791228012281122821228312284122851228612287122881228912290122911229212293122941229512296122971229812299123001230112302123031230412305123061230712308123091231012311123121231312314123151231612317123181231912320123211232212323123241232512326123271232812329123301233112332123331233412335123361233712338123391234012341123421234312344123451234612347123481234912350123511235212353123541235512356123571235812359123601236112362123631236412365123661236712368123691237012371123721237312374123751237612377123781237912380123811238212383123841238512386123871238812389123901239112392123931239412395123961239712398123991240012401124021240312404124051240612407124081240912410124111241212413124141241512416124171241812419124201242112422124231242412425124261242712428124291243012431124321243312434124351243612437124381243912440124411244212443124441244512446124471244812449124501245112452124531245412455124561245712458124591246012461124621246312464124651246612467124681246912470124711247212473124741247512476124771247812479124801248112482124831248412485124861248712488124891249012491124921249312494124951249612497124981249912500125011250212503125041250512506125071250812509125101251112512125131251412515125161251712518125191252012521125221252312524125251252612527125281252912530125311253212533125341253512536125371253812539125401254112542125431254412545125461254712548125491255012551125521255312554125551255612557125581255912560125611256212563125641256512566125671256812569125701257112572125731257412575125761257712578125791258012581125821258312584125851258612587125881258912590125911259212593125941259512596125971259812599126001260112602126031260412605126061260712608126091261012611126121261312614126151261612617126181261912620126211262212623126241262512626126271262812629126301263112632126331263412635126361263712638126391264012641126421264312644126451264612647126481264912650126511265212653126541265512656126571265812659126601266112662126631266412665126661266712668126691267012671126721267312674126751267612677126781267912680126811268212683126841268512686126871268812689126901269112692126931269412695126961269712698126991270012701127021270312704127051270612707127081270912710127111271212713127141271512716127171271812719127201272112722127231272412725127261272712728127291273012731127321273312734127351273612737127381273912740127411274212743127441274512746127471274812749127501275112752127531275412755127561275712758127591276012761127621276312764127651276612767127681276912770127711277212773127741277512776127771277812779127801278112782127831278412785127861278712788127891279012791127921279312794127951279612797127981279912800128011280212803128041280512806128071280812809128101281112812128131281412815128161281712818128191282012821128221282312824128251282612827128281282912830128311283212833128341283512836128371283812839128401284112842128431284412845128461284712848128491285012851128521285312854128551285612857128581285912860128611286212863128641286512866128671286812869128701287112872128731287412875128761287712878128791288012881128821288312884128851288612887128881288912890128911289212893128941289512896128971289812899129001290112902129031290412905129061290712908129091291012911129121291312914129151291612917129181291912920129211292212923129241292512926129271292812929129301293112932129331293412935129361293712938129391294012941129421294312944129451294612947129481294912950129511295212953129541295512956129571295812959129601296112962129631296412965129661296712968
  1. package QCM.QCM03.QCM0302;
  2. import CoreFS.SA01.CoreIComponent;
  3. import CoreFS.SA06.CoreReturnObject;
  4. import QCM.COMMUNAL.QCM02.SqlJoint;
  5. import QCM.COMMUNAL.ResultModel;
  6. import QCM.COMMUNAL.VO.*;
  7. import QCM.QCM03.QCM0301.QcmJhyElementsServiceImpl;
  8. import QCM.QCM03.QCM0303.QcmJudgeMeasureServiceImpl;
  9. import com.alibaba.fastjson.JSON;
  10. import com.alibaba.fastjson.JSONArray;
  11. import com.alibaba.fastjson.JSONObject;
  12. import com.alibaba.fastjson.annotation.JSONField;
  13. import com.alibaba.fastjson.serializer.SerializerFeature;
  14. import org.apache.axis.client.Call;
  15. import org.apache.axis.client.Service;
  16. import org.apache.commons.collections.CollectionUtils;
  17. import org.apache.commons.lang.StringUtils;
  18. import org.apache.http.HttpResponse;
  19. import org.apache.http.HttpStatus;
  20. import org.apache.http.client.HttpClient;
  21. import org.apache.http.client.methods.HttpPost;
  22. import org.apache.http.entity.StringEntity;
  23. import org.apache.http.impl.client.DefaultHttpClient;
  24. import org.apache.http.message.BasicHeader;
  25. import org.apache.http.protocol.HTTP;
  26. import org.apache.ibatis.session.SqlSession;
  27. import org.apache.log4j.Logger;
  28. import pda.WebService1Impl;
  29. import java.io.BufferedReader;
  30. import java.io.InputStream;
  31. import java.io.InputStreamReader;
  32. import java.sql.CallableStatement;
  33. import java.sql.Connection;
  34. import java.sql.ResultSet;
  35. import java.text.SimpleDateFormat;
  36. import java.util.*;
  37. import javax.xml.namespace.QName;
  38. import javax.xml.rpc.ParameterMode;
  39. public class QcmJudgePhysicalServiceImpl extends CoreIComponent{
  40. private Logger logger = Logger.getLogger(this.getClass().getName());
  41. CoreReturnObject cro = new CoreReturnObject();
  42. ResultModel rm = null;
  43. ResultSet rs = null;
  44. SqlSession SqlSession =
  45. QCM.COMMUNAL.SqlSessionBuilder.openSqlSession();
  46. QCM.COMMUNAL.OrderSqMapper mapper = SqlSession.getMapper(QCM.COMMUNAL.OrderSqMapper.class);
  47. public String StrSky(String begintime,String endtime){
  48. String sql = "select (to_date('"+endtime+"','yyyy-MM-dd') - to_date('"+begintime+"','yyyy-MM-dd')) SKY from dual";
  49. HashMap list = mapper.queryOne(sql);
  50. Double ble = Double.parseDouble(list.get("SKY").toString());
  51. String tstr="查询时间不能大于半年,请核实查询时间条件!";
  52. if(ble>=0 && ble <=185 ){
  53. tstr="TRUE";
  54. }
  55. return tstr;
  56. }
  57. /**
  58. * 质量判定-材质判定管理-获取材质判定记录信息
  59. * bbatchno 起始轧批号
  60. * ebatchno 最终轧批号
  61. * desing_key 销售订单号
  62. * psc 产品规范编码
  63. * starttime 开始时间
  64. * endtime 结束时间
  65. * */
  66. public CoreReturnObject doQueryQcmJudgePhysical(String bbatchno,String ebatchno,String design_key,String psc,String starttime,String endtime,String type,String prodline,String certinstname,String heat_no) {
  67. try {
  68. if (!SqlJoint.IsNullOrSpace(starttime) && !SqlJoint.IsNullOrSpace(endtime) && SqlJoint.IsNullOrSpace(bbatchno)) {
  69. String sky=StrSky(starttime,endtime);
  70. if(!sky.equals("TRUE")){
  71. SqlSession.close();
  72. cro.setV_errCode(-1);
  73. cro.setV_errMsg(sky);
  74. return cro;
  75. }
  76. }
  77. String Str="";
  78. String StrWeight="";
  79. String StrWeightZ="(select THEORYWEIGHT from kcz_turnofflist@xgcx kc where kc.BILLETID = t.SPECIMEN_NO)";
  80. String StrWeightH="(select THEORYWEIGHT from kch_turnofflist@xgcx kc where kc.BILLETID = t.SPECIMEN_NO)";
  81. String StrWeightX=",(select THEORYWEIGHT from kcx_turnofflist@xgcx kc where kc.BILLETID = t.SPECIMEN_NO) WEIGHT";//线棒只有一张表
  82. //String sqls = "select phy_id from qcm_jhy_sample_r_ord where judge_status = '1'";
  83. if(!SqlJoint.IsNullOrSpace(design_key)){
  84. Str+=" and t.design_key like '%"+design_key+"%'";
  85. }
  86. if(!SqlJoint.IsNullOrSpace(psc)){
  87. Str+=" and t.psc like '%"+psc+"%'";
  88. }
  89. if(!SqlJoint.IsNullOrSpace(bbatchno)){
  90. Str+=" and t.batch_no >= '"+bbatchno+"'";
  91. }
  92. if(!SqlJoint.IsNullOrSpace(ebatchno)){
  93. Str+=" and t.batch_no <='"+ebatchno+"'";
  94. }
  95. if(!SqlJoint.IsNullOrSpace(heat_no)){
  96. Str += " and t.heat_no like '%"+heat_no+"%'";
  97. }
  98. if(!SqlJoint.IsNullOrSpace(type)){
  99. //卷板
  100. if(type.equals("0")){
  101. Str += " and T.pline_code in ('LT1','SZ1','RZ1')";
  102. }
  103. //中厚板
  104. else if(type.equals("1")){
  105. Str += " and T.pline_code in ('ZB1','HB1')";
  106. }
  107. //线棒
  108. else if(type.equals("2")){
  109. Str += " and T.pline_code in ('GX1','BC1','BC2','GX2')";
  110. StrWeight=StrWeightX;
  111. }
  112. }
  113. if(prodline.equals("中板线")){
  114. Str += " and t.pline_code in ('ZB1') ";
  115. StrWeight=",(select THEORYWEIGHT from kcz_turnofflist@xgcx kc where kc.BILLETID = t.SPECIMEN_NO) WEIGHT";
  116. }else if(prodline.equals("厚板线")){
  117. Str += " and t.pline_code in ('HB1') ";
  118. StrWeight=",(select THEORYWEIGHT from kch_turnofflist@xgcx kc where kc.BILLETID = t.SPECIMEN_NO) WEIGHT";
  119. }else if(prodline.equals("热连轧")){
  120. Str += " and t.pline_code in ('RZ1') ";
  121. }else if(prodline.equals("酸轧")){
  122. Str += " and t.pline_code in ('SZ1') ";
  123. }else if(prodline.equals("连退")){
  124. Str += " and t.pline_code in ('LT1') ";
  125. }else if(prodline.equals("高棒")){
  126. Str += " and t.pline_code in ('GX1') ";
  127. }else if(prodline.equals("棒二")){
  128. Str += " and t.pline_code in ('BC2') ";
  129. }else if(prodline.equals("高线")){
  130. Str += " and t.pline_code in ('GX2') ";
  131. }else if(type.equals("1")){
  132. StrWeight = ", case when t.PLINE_CODE = 'ZB1' then " +StrWeightZ
  133. + " when t.PLINE_CODE = 'HB1' then " + StrWeightH
  134. +" end WEIGHT";
  135. }
  136. if(!SqlJoint.IsNullOrSpace(certinstname) && !certinstname.equals("全部")){
  137. Str += " and t.CERT_INST_NAME = '"+certinstname+"'";
  138. }
  139. if(!SqlJoint.IsNullOrSpace(starttime) && !SqlJoint.IsNullOrSpace(endtime)&& SqlJoint.IsNullOrSpace(bbatchno) && SqlJoint.IsNullOrSpace(ebatchno))
  140. {
  141. Str += " and to_date(to_char(JUDGE_TTIME,'yyyy-mm-dd'),'yyyy-mm-dd') between to_date('"+starttime+"','yyyy-mm-dd') and to_date('"+endtime+"','yyyy-mm-dd') ";
  142. }
  143. SimpleDateFormat sf = new SimpleDateFormat("yyyyMMdd");
  144. String a=starttime;
  145. String b = endtime;
  146. Long c = sf.parse(b).getTime()-sf.parse(a).getTime();
  147. long d = c/1000/60/60/24;//天
  148. String sql = "";
  149. if(d>3 && SqlJoint.IsNullOrSpace(bbatchno)){
  150. sql = "select t.* "+StrWeight
  151. + " from (select T.PHY_ID,T.SMP_NO,T.HEAT_NO, T.BATCH_NO,T.INSPECTION_LOT, "
  152. + " T.BOARD_NO, T.DESIGN_KEY, T.PSC,T.DELIVERY_STATE_CODE,T.DELIVERY_STATE_DESC, case when t.thick > -1 and t.thick < 1 and t.thick != 0 then '0' || round(t.thick,7) else '' || round(t.thick,7) end thick, "
  153. + " T.WIDTH, T.LENGTH, T.CERT_INST_CODE,T.CERT_INST_NAME, T.SMP_TYPE_NAME, "//T.SMP_TYPE_CODE,
  154. + " T.PLINE_CODE,T.PLINE_NAME, PHY_RESULT_CODE, PHY_RESULT_DESC, "
  155. + " T.PHY_MEMO, T.JUDGE_NAME,T.JUDGE_TTIME,T.PSC_DESC,T.PROD_CODE,T.PROD_NAME,T.STEEL_CODE,t.cancel_memo,t.cancel_name, "
  156. +" (select max(memo) from qcm_ord_design_memo a where a.design_key = t.DESIGN_KEY) order_memo, "
  157. + " T.STEEL_NAME, T.STD_CODE,T.STD_NAME,(select max(a.material_no) from qcm_jhy_sample_consign_d a "
  158. + " where a.smp_no = t.smp_no "
  159. + " and a.specimen_no in "
  160. + " (select MAX(x.specimen_no) "
  161. + " from qcm_judge_physical_result x "
  162. + " where x.phy_id = t.phy_id)) specimen_no,\n" +
  163. " (select max(a.process_nos) from qcm_jhy_sample_consign_d a "
  164. + " where a.smp_no = t.smp_no "
  165. + " and a.specimen_no in "
  166. + " (select x.specimen_no "
  167. + " from qcm_judge_physical_result x "
  168. + " where x.phy_id = t.phy_id)) materailcoilno,\n" +
  169. " (select case when count(1) >0 then '预测' else 'lims' end rownum1 from QCM_JHY_SAMPLE_CONSIGN_D z,QCM_JHY_INSP_PHYSICS i "
  170. + " where z.specimen_no = i.specimen_no "
  171. + " and i.create_name = 'QMS' "
  172. + " and z.smp_no = t.smp_no) source," +
  173. " (select case when max(a.Smp_Type_Code) = '3' then '件件取样' when max(a.Smp_Type_Code) = '4' then '按母板取样' "
  174. + " when max(a.Smp_Type_Code) = '1' then '复样' when max(a.Smp_Type_Code) = '0' and "
  175. + " max(t.CERT_INST_CODE) in ('IC003', 'IC004','IC001', 'IC010', '5000','') then '初样' when max(a.Smp_Type_Code) is null then '初样' else '认证样' end\n" +
  176. " from qcm_jhy_sample_consign_d a\n" +
  177. " where a.smp_no = t.smp_no"
  178. + " and a.specimen_no in "
  179. + " (select x.specimen_no "
  180. + " from qcm_judge_physical_result x "
  181. + " where x.phy_id = t.phy_id)) smp_type_code,\n" +
  182. " (select max(to_char(t1.create_time,'yyyy-MM-dd hh24:mi:ss')) upload_time\n" +
  183. " from qcm_jhy_insp_physics t1\n" +
  184. " where t1.specimen_no in (select specimen_no from QCM_JHY_SAMPLE_CONSIGN_D where smp_no = t.smp_no)) upload_time,case when (select count(*) from qcm_jhy_sample_r_ord v where v.phy_id=t.phy_id) = 0 then '是' else '否' end isvalid"
  185. /*+ "(select max(INSTORAGECLASS) "
  186. + " from (SELECT C2N@xgcx(INCLASSTEAM) INSTORAGECLASS, billetid "
  187. + " FROM KCZ_TURNOFFLIST@xgcx "
  188. + " union all "
  189. + " SELECT C2N@xgcx(INSTORAGECLASS) INSTORAGECLASS, "
  190. + " billetid "
  191. + " FROM KCH_TURNOFFLIST@xgcx) "
  192. + " where billetid like t.batch_no || '%') INSTORAGECLASS, "
  193. + " (select max(PRODUCECLASS) "
  194. + " from (SELECT C2N@xgcx(PCLASSTEAM) PRODUCECLASS, billetid "
  195. + " FROM KCZ_TURNOFFLIST@xgcx "
  196. + " union all "
  197. + " SELECT C2N@xgcx(PRODUCECLASS) PRODUCECLASS, billetid "
  198. + " FROM KCH_TURNOFFLIST@xgcx) "
  199. + " where billetid LIKE t.batch_no || '%') PRODUCECLASS "*/
  200. + " from QCM_JUDGE_PHYSICAL t where 1=1 "+Str+" ) t order by t.batch_no,specimen_no,judge_ttime desc";
  201. }else{
  202. sql = "select t.* " +StrWeight
  203. + " from (select T.PHY_ID,T.SMP_NO,T.HEAT_NO, T.BATCH_NO,T.INSPECTION_LOT, "
  204. + " T.BOARD_NO, T.DESIGN_KEY, T.PSC,T.DELIVERY_STATE_CODE,T.DELIVERY_STATE_DESC, case when t.thick > -1 and t.thick < 1 and t.thick != 0 then '0' || round(t.thick,7) else '' || round(t.thick,7) end thick, "
  205. + " T.WIDTH, T.LENGTH, T.CERT_INST_CODE,T.CERT_INST_NAME, T.SMP_TYPE_NAME, "//T.SMP_TYPE_CODE,
  206. + " T.PLINE_CODE,T.PLINE_NAME, PHY_RESULT_CODE, PHY_RESULT_DESC, "
  207. + " T.PHY_MEMO, T.JUDGE_NAME,T.JUDGE_TTIME,T.PSC_DESC,T.PROD_CODE,T.PROD_NAME,T.STEEL_CODE,t.cancel_memo,t.cancel_name, "
  208. +" (select max(memo) from qcm_ord_design_memo a where a.design_key = t.DESIGN_KEY) order_memo, "
  209. + " T.STEEL_NAME, T.STD_CODE,T.STD_NAME,(select max(a.material_no) from qcm_jhy_sample_consign_d a "
  210. + " where a.smp_no = t.smp_no "
  211. + " and a.specimen_no in "
  212. + " (select MAX(x.specimen_no) "
  213. + " from qcm_judge_physical_result x "
  214. + " where x.phy_id = t.phy_id)) specimen_no,\n" +
  215. " (select max(a.process_nos) from qcm_jhy_sample_consign_d a "
  216. + " where a.smp_no = t.smp_no "
  217. + " and a.specimen_no in "
  218. + " (select x.specimen_no "
  219. + " from qcm_judge_physical_result x "
  220. + " where x.phy_id = t.phy_id)) materailcoilno,\n" +
  221. " (select case when count(1) >0 then '预测' else 'lims' end rownum1 from QCM_JHY_SAMPLE_CONSIGN_D z,QCM_JHY_INSP_PHYSICS i "
  222. + " where z.specimen_no = i.specimen_no "
  223. + " and i.create_name = 'QMS' "
  224. + " and z.smp_no = t.smp_no) source," +
  225. " (select case when max(a.Smp_Type_Code) = '3' then '件件取样' when max(a.Smp_Type_Code) = '4' then '按母板取样' "
  226. + " when max(a.Smp_Type_Code) = '1' then '复样' when max(a.Smp_Type_Code) = '0' and "
  227. + " max(t.CERT_INST_CODE) in ('IC003', 'IC004','IC001', 'IC010', '5000','') then '初样' when max(a.Smp_Type_Code) is null then '初样' else '认证样' end\n" +
  228. " from qcm_jhy_sample_consign_d a\n" +
  229. " where a.smp_no = t.smp_no"
  230. + " and a.specimen_no in "
  231. + " (select x.specimen_no "
  232. + " from qcm_judge_physical_result x "
  233. + " where x.phy_id = t.phy_id)) smp_type_code,\n" +
  234. " (select max(to_char(t1.create_time,'yyyy-MM-dd hh24:mi:ss')) upload_time\n" +
  235. " from qcm_jhy_insp_physics t1\n" +
  236. " where t1.specimen_no in (select specimen_no from QCM_JHY_SAMPLE_CONSIGN_D where smp_no = t.smp_no)) upload_time,case when (select count(*) from qcm_jhy_sample_r_ord v where v.phy_id=t.phy_id) = 0 then '是' else '否' end isvalid," +
  237. " case "+
  238. " when t.batch_no like 'Z%' then "+
  239. " (SELECT max(C2N@xgcx(INCLASSTEAM)) PRODUCECLASS"+
  240. " FROM KCZ_TURNOFFLIST@xgcx"+
  241. " where billetid LIKE t.batch_no || '%')"+
  242. " else"+
  243. " (SELECT max(C2N@xgcx(INSTORAGECLASS)) PRODUCECLASS"+
  244. " FROM KCH_TURNOFFLIST@xgcx"+
  245. " where billetid LIKE t.batch_no || '%')"+
  246. " end INSTORAGECLASS,"+
  247. " case"+
  248. " when t.batch_no like 'Z%' then"+
  249. " (SELECT max(C2N@xgcx(PCLASSTEAM)) PRODUCECLASS"+
  250. " FROM KCZ_TURNOFFLIST@xgcx"+
  251. " where billetid LIKE t.batch_no || '%')"+
  252. " else"+
  253. " (SELECT max(C2N@xgcx(PRODUCECLASS)) PRODUCECLASS"+
  254. " FROM KCH_TURNOFFLIST@xgcx"+
  255. " where billetid LIKE t.batch_no || '%')"+
  256. " end PRODUCECLASS "
  257. /*+ "(select max(INSTORAGECLASS) "
  258. + " from (SELECT C2N@xgcx(INCLASSTEAM) INSTORAGECLASS, billetid "
  259. + " FROM KCZ_TURNOFFLIST@xgcx "
  260. + " union all "
  261. + " SELECT C2N@xgcx(INSTORAGECLASS) INSTORAGECLASS, "
  262. + " billetid "
  263. + " FROM KCH_TURNOFFLIST@xgcx) "
  264. + " where billetid like t.batch_no || '%') INSTORAGECLASS, "
  265. + " (select max(PRODUCECLASS) "
  266. + " from (SELECT C2N@xgcx(PCLASSTEAM) PRODUCECLASS, billetid "
  267. + " FROM KCZ_TURNOFFLIST@xgcx "
  268. + " union all "
  269. + " SELECT C2N@xgcx(PRODUCECLASS) PRODUCECLASS, billetid "
  270. + " FROM KCH_TURNOFFLIST@xgcx) "
  271. + " where billetid LIKE t.batch_no || '%') PRODUCECLASS "*/
  272. + "from QCM_JUDGE_PHYSICAL t where 1=1 "+Str+" ) t order by t.batch_no,specimen_no,judge_ttime desc";
  273. }
  274. //Str += " and T.phy_id in ("+sqls+")";
  275. //System.out.println(sql);
  276. List<QcmJudgePhysical> list = mapper.queryQcmJudgePhysical(sql);
  277. cro.setResult(list);
  278. } catch (Exception e) {
  279. SqlSession.rollback();
  280. cro.setV_errCode(-1);
  281. cro.setV_errMsg("材质判定记录信息获取失败!"+e.getMessage());
  282. }
  283. SqlSession.close();
  284. return cro;
  285. }
  286. /**
  287. * 质量判定-材质判定管理-获取材质判定记录信息
  288. * bbatchno 起始轧批号
  289. * ebatchno 最终轧批号
  290. * desing_key 销售订单号
  291. * psc 产品规范编码
  292. * starttime 开始时间
  293. * endtime 结束时间
  294. * */
  295. public CoreReturnObject doQueryQcmJudgePhysicalB(String bbatchno,String ebatchno,String design_key,String psc,String starttime,String endtime,String type,String prodline,String certinstname,String heat_no) {
  296. try {
  297. String Str="";
  298. //String sqls = "select phy_id from qcm_jhy_sample_r_ord where judge_status = '1'";
  299. if(!SqlJoint.IsNullOrSpace(design_key)){
  300. Str+=" and t.design_key like '%"+design_key+"%'";
  301. }
  302. if(!SqlJoint.IsNullOrSpace(psc)){
  303. Str+=" and t.psc like '%"+psc+"%'";
  304. }
  305. if(!SqlJoint.IsNullOrSpace(bbatchno)){
  306. Str+=" and t.batch_no >= '"+bbatchno+"'";
  307. }
  308. if(!SqlJoint.IsNullOrSpace(ebatchno)){
  309. Str+=" and t.batch_no <='"+ebatchno+"'";
  310. }
  311. if(!SqlJoint.IsNullOrSpace(heat_no)){
  312. Str += " and t.heat_no like '%"+heat_no+"%'";
  313. }
  314. if(!SqlJoint.IsNullOrSpace(type)){
  315. //卷板
  316. if(type.equals("0")){
  317. Str += " and T.pline_code in ('LT1','SZ1','RZ1')";
  318. }
  319. //中厚板
  320. else if(type.equals("1")){
  321. Str += " and T.pline_code in ('ZB1','HB1')";
  322. }
  323. //线棒
  324. else if(type.equals("2")){
  325. Str += " and T.pline_code in ('GX1','BC1','BC2','GX2')";
  326. }
  327. }
  328. if(prodline.equals("中板线")){
  329. Str += " and t.pline_code in ('ZB1') ";
  330. }else if(prodline.equals("厚板线")){
  331. Str += " and t.pline_code in ('HB1') ";
  332. }else if(prodline.equals("热连轧")){
  333. Str += " and t.pline_code in ('RZ1') ";
  334. }else if(prodline.equals("酸轧")){
  335. Str += " and t.pline_code in ('SZ1') ";
  336. }else if(prodline.equals("连退")){
  337. Str += " and t.pline_code in ('LT1') ";
  338. }else if(prodline.equals("高棒")){
  339. Str += " and t.pline_code in ('GX1') ";
  340. }else if(prodline.equals("棒二")){
  341. Str += " and t.pline_code in ('BC2') ";
  342. }else if(prodline.equals("高线")){
  343. Str += " and t.pline_code in ('GX2') ";
  344. }
  345. if(!SqlJoint.IsNullOrSpace(certinstname) && !certinstname.equals("全部")){
  346. Str += " and t.CERT_INST_NAME = '"+certinstname+"'";
  347. }
  348. if(!SqlJoint.IsNullOrSpace(starttime) && !SqlJoint.IsNullOrSpace(endtime)&& SqlJoint.IsNullOrSpace(bbatchno) && SqlJoint.IsNullOrSpace(ebatchno))
  349. {
  350. Str += " and to_date(to_char(JUDGE_TTIME,'yyyy-mm-dd'),'yyyy-mm-dd') between to_date('"+starttime+"','yyyy-mm-dd') and to_date('"+endtime+"','yyyy-mm-dd') ";
  351. }
  352. //Str += " and T.phy_id in ("+sqls+")";
  353. String sql = "select t.* from (select T.PHY_ID,T.SMP_NO,T.HEAT_NO, T.BATCH_NO,T.INSPECTION_LOT, "
  354. + " T.BOARD_NO, T.DESIGN_KEY, T.PSC,T.DELIVERY_STATE_CODE,T.DELIVERY_STATE_DESC, case when t.thick > -1 and t.thick < 1 and t.thick != 0 then '0' || round(t.thick,7) else '' || round(t.thick,7) end thick, "
  355. + " T.WIDTH, T.LENGTH, T.CERT_INST_CODE,T.CERT_INST_NAME, T.SMP_TYPE_NAME, "//T.SMP_TYPE_CODE,
  356. + " T.PLINE_CODE,T.PLINE_NAME, PHY_RESULT_CODE, PHY_RESULT_DESC, "
  357. + " T.PHY_MEMO, T.JUDGE_NAME,T.JUDGE_TTIME,T.PSC_DESC,T.PROD_CODE,T.PROD_NAME,T.STEEL_CODE,t.cancel_memo, t.cancel_name,"
  358. +" (select max(memo) from qcm_ord_design_memo a where a.design_key = t.DESIGN_KEY) order_memo, "
  359. + " T.STEEL_NAME, T.STD_CODE,T.STD_NAME,(select max(a.material_no) from qcm_jhy_sample_consign_d a "
  360. + " where a.smp_no = t.smp_no "
  361. + " and a.specimen_no in "
  362. + " (select MAX(x.specimen_no) "
  363. + " from qcm_judge_physical_result x "
  364. + " where x.phy_id = t.phy_id)) specimen_no,\n" +
  365. " (select max(a.process_nos) from qcm_jhy_sample_consign_d a "
  366. + " where a.smp_no = t.smp_no "
  367. + " and a.specimen_no in "
  368. + " (select x.specimen_no "
  369. + " from qcm_judge_physical_result x "
  370. + " where x.phy_id = t.phy_id)) materailcoilno,\n" +
  371. " (select case when max(a.Smp_Type_Code) = '3' then '件件取样' when max(a.Smp_Type_Code) = '4' then '按母板取样' "
  372. + " when max(a.Smp_Type_Code) = '1' then '复样' when max(a.Smp_Type_Code) = '0' and "
  373. + " max(t.CERT_INST_CODE) in ('IC003', 'IC004','IC001', 'IC010', '5000','') then '初样' when max(a.Smp_Type_Code) is null then '初样' else '认证样' end\n" +
  374. " from qcm_jhy_sample_consign_d a\n" +
  375. " where a.smp_no = t.smp_no"
  376. + " and a.specimen_no in "
  377. + " (select x.specimen_no "
  378. + " from qcm_judge_physical_result x "
  379. + " where x.phy_id = t.phy_id)) smp_type_code,\n" +
  380. " (select max(to_char(t1.create_time,'yyyy-MM-dd hh24:mi:ss')) upload_time\n" +
  381. " from qcm_jhy_insp_physics t1\n" +
  382. " where t1.specimen_no in (select specimen_no from QCM_JHY_SAMPLE_CONSIGN_D where smp_no = t.smp_no)) upload_time,case when (select count(*) from qcm_jhy_sample_r_ord v where v.phy_id=t.phy_id) = 0 then '是' else '否' end isvalid from QCM_JUDGE_PHYSICAL t where 1=1 "+Str+" ) t order by t.batch_no,specimen_no,judge_ttime desc";
  383. List<QcmJudgePhysical> list = mapper.queryQcmJudgePhysical(sql);
  384. cro.setResult(list);
  385. } catch (Exception e) {
  386. SqlSession.rollback();
  387. cro.setV_errCode(-1);
  388. cro.setV_errMsg("材质判定记录信息获取失败!"+e.getMessage());
  389. }
  390. SqlSession.close();
  391. return cro;
  392. }
  393. /**
  394. * 质量判定-材质判定管理-获取材质判定记录信息
  395. * bbatchno 起始轧批号
  396. * ebatchno 最终轧批号
  397. * desing_key 销售订单号
  398. * psc 产品规范编码
  399. * starttime 开始时间
  400. * endtime 结束时间
  401. * */
  402. public CoreReturnObject doQueryQcmJudgePhysicalJ(String bbatchno,String ebatchno,String design_key,String psc,String starttime,String endtime,String type,String prodline,String certinstname,String material_no,String heat_no) {
  403. try {
  404. if (!SqlJoint.IsNullOrSpace(starttime) && !SqlJoint.IsNullOrSpace(endtime) && SqlJoint.IsNullOrSpace(bbatchno)) {
  405. String sky=StrSky(starttime,endtime);
  406. if(!sky.equals("TRUE")){
  407. SqlSession.close();
  408. cro.setV_errCode(-1);
  409. cro.setV_errMsg(sky);
  410. return cro;
  411. }
  412. }
  413. String Str="";
  414. String StrWeight="";
  415. String StrWeightR=" (select c.ACT_WGT / 1000 from tbh02_coil_comm c, QCM_JUDGE_COIL_RESULT b where c.OLD_SAMPL_NO = b.coil_no "
  416. +" and b.coil_no = t.specimen_no and rownum = 1) ";
  417. String StrWeightS=" (select c.ACT_WGT / 1000 from c_tbl02_coil_comm c, QCM_JUDGE_COIL_RESULT b where c.OLD_SAMPL_NO = b.coil_no "
  418. +" and b.coil_no = t.specimen_no and rownum = 1) ";
  419. String StrWeightL=" (select c.ACT_WGT / 1000 from c_tbc02_coil_comm c, QCM_JUDGE_COIL_RESULT b where c.OLD_SAMPL_NO = b.coil_no "
  420. +" and b.coil_no = t.specimen_no and rownum = 1) ";
  421. //String sqls = "select phy_id from qcm_jhy_sample_r_ord where judge_status = '1'";
  422. if(!SqlJoint.IsNullOrSpace(design_key)){
  423. Str+=" and t.design_key like '%"+design_key+"%'";
  424. }
  425. if(!SqlJoint.IsNullOrSpace(psc)){
  426. Str+=" and t.psc like '%"+psc+"%'";
  427. }
  428. if(!SqlJoint.IsNullOrSpace(bbatchno)){
  429. Str+=" and t.batch_no >= '"+bbatchno+"'";
  430. }
  431. if(!SqlJoint.IsNullOrSpace(ebatchno)){
  432. Str+=" and t.batch_no <='"+ebatchno+"'";
  433. }
  434. if(!SqlJoint.IsNullOrSpace(heat_no)){
  435. Str += " and t.heat_no like '%"+heat_no+"%'";
  436. }
  437. if(!SqlJoint.IsNullOrSpace(type)){
  438. //卷板
  439. if(type.equals("0")){
  440. Str += " and T.pline_code in ('LT1','SZ1','RZ1')";
  441. }
  442. //中厚板
  443. else if(type.equals("1")){
  444. Str += " and T.pline_code in ('ZB1','HB1')";
  445. }
  446. //线棒
  447. else if(type.equals("2")){
  448. Str += " and T.pline_code in ('GX1','BC1','BC2','GX2')";
  449. }
  450. }
  451. if(prodline.equals("热连轧")){
  452. Str += " and t.pline_code in ('RZ1') ";
  453. StrWeight=",(select c.ACT_WGT / 1000 from tbh02_coil_comm c, QCM_JUDGE_COIL_RESULT b where c.OLD_SAMPL_NO = b.coil_no "
  454. +" and b.coil_no = t.specimen_no and rownum = 1) WEIGHT";
  455. }else if(prodline.equals("酸轧")){
  456. Str += " and t.pline_code in ('SZ1') ";
  457. StrWeight=" ,(select c.ACT_WGT / 1000 from c_tbl02_coil_comm c, QCM_JUDGE_COIL_RESULT b where c.OLD_SAMPL_NO = b.coil_no "
  458. +" and b.coil_no = t.specimen_no and rownum = 1) WEIGHT ";
  459. }else if(prodline.equals("连退")){
  460. Str += " and t.pline_code in ('LT1') ";
  461. StrWeight=" ,(select c.ACT_WGT / 1000 from c_tbc02_coil_comm c, QCM_JUDGE_COIL_RESULT b where c.OLD_SAMPL_NO = b.coil_no "
  462. +" and b.coil_no = t.specimen_no and rownum = 1) WEIGHT ";
  463. }else if(type.equals("0")){
  464. StrWeight = ", case when t.PLINE_CODE = 'RZ1' then " +StrWeightR
  465. + " when t.PLINE_CODE = 'SZ1' then " + StrWeightS
  466. + " when t.PLINE_CODE = 'LT1' then " + StrWeightL
  467. +" end WEIGHT";
  468. }
  469. if(!SqlJoint.IsNullOrSpace(certinstname) && !certinstname.equals("全部")){
  470. Str += " and t.CERT_INST_NAME = '"+certinstname+"'";
  471. }
  472. if(!SqlJoint.IsNullOrSpace(starttime) && !SqlJoint.IsNullOrSpace(endtime)&& SqlJoint.IsNullOrSpace(bbatchno) && SqlJoint.IsNullOrSpace(ebatchno))
  473. {
  474. Str += " and to_date(to_char(JUDGE_TTIME,'yyyy-mm-dd'),'yyyy-mm-dd') between to_date('"+starttime+"','yyyy-mm-dd') and to_date('"+endtime+"','yyyy-mm-dd') ";
  475. }
  476. //Str += " and T.phy_id in ("+sqls+")";
  477. String sql = "select * from (select t.* "+StrWeight
  478. + " from (select T.PHY_ID,T.SMP_NO,T.HEAT_NO, T.BATCH_NO,T.INSPECTION_LOT, "
  479. + " T.BOARD_NO, T.DESIGN_KEY, T.PSC,T.DELIVERY_STATE_CODE,T.DELIVERY_STATE_DESC, case when t.thick > -1 and t.thick < 1 and t.thick != 0 then '0' || round(t.thick,7) else '' || round(t.thick,7) end thick, "
  480. + " T.WIDTH, T.LENGTH, T.CERT_INST_CODE,T.CERT_INST_NAME, T.SMP_TYPE_NAME, "//T.SMP_TYPE_CODE,
  481. + " T.PLINE_CODE,T.PLINE_NAME, PHY_RESULT_CODE, PHY_RESULT_DESC, "
  482. + " T.PHY_MEMO, T.JUDGE_NAME,T.JUDGE_TTIME,T.PSC_DESC,T.PROD_CODE,T.PROD_NAME,T.STEEL_CODE,t.cancel_memo,t.cancel_name, "
  483. +" (select max(memo) from qcm_ord_design_memo a where a.design_key = t.DESIGN_KEY) order_memo, "
  484. + " T.STEEL_NAME, T.STD_CODE,T.STD_NAME,(select max(a.material_no) from qcm_jhy_sample_consign_d a "
  485. + " where a.smp_no = t.smp_no "
  486. + " and a.specimen_no in "
  487. + " (select MAX(x.specimen_no) "
  488. + " from qcm_judge_physical_result x "
  489. + " where x.phy_id = t.phy_id)) specimen_no,\n" +
  490. " (select decode(max(a.smp_type_code),'3','件件取样', '1', '复样', '0', '初样')\n" +
  491. " from qcm_jhy_sample_consign_d a\n" +
  492. " where a.smp_no = t.smp_no"
  493. + " and a.specimen_no in "
  494. + " (select x.specimen_no "
  495. + " from qcm_judge_physical_result x "
  496. + " where x.phy_id = t.phy_id)) smp_type_code,\n" +
  497. " (select max(to_char(t1.create_time,'yyyy-MM-dd hh24:mi:ss')) upload_time\n" +
  498. " from qcm_jhy_insp_physics t1\n" +
  499. " where t1.specimen_no in (select specimen_no from QCM_JHY_SAMPLE_CONSIGN_D where smp_no = t.smp_no)) upload_time,case when (select count(*) from qcm_jhy_sample_r_ord v where v.phy_id=t.phy_id) = 0 then '是' else '否' end isvalid from QCM_JUDGE_PHYSICAL t where 1=1 "+Str+" ) t order by t.batch_no,specimen_no,judge_ttime desc) where specimen_no like '"+material_no+"'||'%'";
  500. // System.out.println(sql);
  501. List<QcmJudgePhysical> list = mapper.queryQcmJudgePhysical(sql);
  502. cro.setResult(list);
  503. } catch (Exception e) {
  504. SqlSession.rollback();
  505. cro.setV_errCode(-1);
  506. cro.setV_errMsg("材质判定记录信息获取失败!"+e.getMessage());
  507. }
  508. SqlSession.close();
  509. return cro;
  510. }
  511. /**
  512. * 质量判定-材质判定管理-获取材质判定记录信息
  513. * bbatchno 起始轧批号
  514. * ebatchno 最终轧批号
  515. * desing_key 销售订单号
  516. * psc 产品规范编码
  517. * starttime 开始时间
  518. * endtime 结束时间
  519. * */
  520. public CoreReturnObject doQueryQcmJudgePhysicalY(String bbatchno,String ebatchno,String design_key,String psc,String starttime,String endtime,String type,String prodline,String certinstname,String material_no,String heat_no) {
  521. try {
  522. if (!SqlJoint.IsNullOrSpace(starttime) && !SqlJoint.IsNullOrSpace(endtime) && SqlJoint.IsNullOrSpace(bbatchno)) {
  523. String sky=StrSky(starttime,endtime);
  524. if(!sky.equals("TRUE")){
  525. SqlSession.close();
  526. cro.setV_errCode(-1);
  527. cro.setV_errMsg(sky);
  528. return cro;
  529. }
  530. }
  531. String Str="";
  532. String StrWeight=",(select ytg.FACTWEIGHT / 1000 from YDM_PRODUCT_DETAIL@LINK_YTG ytg where ytg.coilno = t.specimen_no) WEIGHT ";
  533. //String sqls = "select phy_id from qcm_jhy_sample_r_ord where judge_status = '1'";
  534. if(!SqlJoint.IsNullOrSpace(design_key)){
  535. Str+=" and t.design_key like '%"+design_key+"%'";
  536. }
  537. if(!SqlJoint.IsNullOrSpace(psc)){
  538. Str+=" and t.psc like '%"+psc+"%'";
  539. }
  540. if(!SqlJoint.IsNullOrSpace(bbatchno)){
  541. Str+=" and t.batch_no >= '"+bbatchno+"'";
  542. }
  543. if(!SqlJoint.IsNullOrSpace(ebatchno)){
  544. Str+=" and t.batch_no <='"+ebatchno+"'";
  545. }
  546. if(!SqlJoint.IsNullOrSpace(heat_no)){
  547. Str += " and t.heat_no like '%"+heat_no+"%'";
  548. }
  549. /*if(!SqlJoint.IsNullOrSpace(type)){
  550. //卷板
  551. if(type.equals("0")){
  552. Str += " and T.pline_code in ('LT1','SZ1','RZ1')";
  553. }
  554. //中厚板
  555. else if(type.equals("1")){
  556. Str += " and T.pline_code in ('ZB1','HB1')";
  557. }
  558. //线棒
  559. else if(type.equals("2")){
  560. Str += " and T.pline_code in ('GX1','BC1','BC2','GX2')";
  561. }
  562. }*/
  563. Str += " and t.pline_code in ('YT1') ";
  564. if(!SqlJoint.IsNullOrSpace(certinstname) && !certinstname.equals("全部")){
  565. Str += " and t.CERT_INST_NAME = '"+certinstname+"'";
  566. }
  567. if(!SqlJoint.IsNullOrSpace(starttime) && !SqlJoint.IsNullOrSpace(endtime)&& SqlJoint.IsNullOrSpace(bbatchno) && SqlJoint.IsNullOrSpace(ebatchno))
  568. {
  569. Str += " and to_date(to_char(JUDGE_TTIME,'yyyy-mm-dd'),'yyyy-mm-dd') between to_date('"+starttime+"','yyyy-mm-dd') and to_date('"+endtime+"','yyyy-mm-dd') ";
  570. }
  571. //Str += " and T.phy_id in ("+sqls+")";
  572. String sql = "select * from (select t.* "+StrWeight
  573. + " from (select T.PHY_ID,T.SMP_NO,T.HEAT_NO, T.BATCH_NO,T.INSPECTION_LOT, "
  574. + " T.BOARD_NO, T.DESIGN_KEY, T.PSC,T.DELIVERY_STATE_CODE,T.DELIVERY_STATE_DESC, case when t.thick > -1 and t.thick < 1 and t.thick != 0 then '0' || round(t.thick,7) else '' || round(t.thick,7) end thick, "
  575. + " T.WIDTH, T.LENGTH, T.CERT_INST_CODE,T.CERT_INST_NAME, T.SMP_TYPE_NAME, "//T.SMP_TYPE_CODE,
  576. + " T.PLINE_CODE,T.PLINE_NAME, PHY_RESULT_CODE, PHY_RESULT_DESC, "
  577. + " T.PHY_MEMO, T.JUDGE_NAME,T.JUDGE_TTIME,T.PSC_DESC,T.PROD_CODE,T.PROD_NAME,T.STEEL_CODE,t.cancel_memo,t.cancel_name, "
  578. +" (select max(memo) from qcm_ord_design_memo a where a.design_key = t.DESIGN_KEY) order_memo, "
  579. + " T.STEEL_NAME, T.STD_CODE,T.STD_NAME,(select max(a.material_no) from qcm_jhy_sample_consign_d a "
  580. + " where a.smp_no = t.smp_no "
  581. + " and a.specimen_no in "
  582. + " (select MAX(x.specimen_no) "
  583. + " from qcm_judge_physical_result x "
  584. + " where x.phy_id = t.phy_id)) specimen_no,\n" +
  585. " (select decode(max(a.smp_type_code),'3','件件取样', '1', '复样', '0', '初样')\n" +
  586. " from qcm_jhy_sample_consign_d a\n" +
  587. " where a.smp_no = t.smp_no"
  588. + " and a.specimen_no in "
  589. + " (select x.specimen_no "
  590. + " from qcm_judge_physical_result x "
  591. + " where x.phy_id = t.phy_id)) smp_type_code,\n" +
  592. " (select max(to_char(t1.create_time,'yyyy-MM-dd hh24:mi:ss')) upload_time\n" +
  593. " from qcm_jhy_insp_physics t1\n" +
  594. " where t1.specimen_no in (select specimen_no from QCM_JHY_SAMPLE_CONSIGN_D where smp_no = t.smp_no)) upload_time,case when (select count(*) from qcm_jhy_sample_r_ord v where v.phy_id=t.phy_id) = 0 then '是' else '否' end isvalid from QCM_JUDGE_PHYSICAL t where 1=1 "+Str+" ) t order by t.batch_no,specimen_no,judge_ttime desc) where specimen_no like '"+material_no+"'||'%'";
  595. // System.out.println(sql);
  596. List<QcmJudgePhysical> list = mapper.queryQcmJudgePhysical(sql);
  597. cro.setResult(list);
  598. } catch (Exception e) {
  599. SqlSession.rollback();
  600. cro.setV_errCode(-1);
  601. cro.setV_errMsg("材质判定记录信息获取失败!"+e.getMessage());
  602. }
  603. SqlSession.close();
  604. return cro;
  605. }
  606. /**
  607. * 取消判定 检验号
  608. */
  609. @SuppressWarnings("rawtypes")
  610. public CoreReturnObject CancelJudge(String phy_id,String inspection_lot,String smp_no,String username,String remark) throws Exception{
  611. try{
  612. //判断是否进行了综合判定
  613. String sql = "select * from zj_result_all@xgcx where BILLETID_JY = '"+inspection_lot+"'";
  614. List<HashMap> list1 = mapper.query(sql);
  615. sql = "select * from QCM_JUDGE_COIL_RESULT where INSPECTION_LOT = '"+inspection_lot+"'";
  616. //List<QcmJudgePhy>
  617. List<HashMap> list2 = mapper.query(sql);
  618. sql = "select * from QCM_JUDGE_YT_COIL_RESULT where INSPECTION_LOT = '"+inspection_lot+"'";
  619. List<HashMap> list3 = mapper.query(sql);
  620. sql = "select * from qcm_judge_physical where inspection_lot = '"+inspection_lot+"' and smp_no = '"+smp_no+"'";
  621. List<QcmJudgePhysical> qjc= mapper.queryQcmJudgePhysical(sql);
  622. sql = "select * from qcm_jhy_sample_r_ord where smp_no = '"+smp_no+"'";
  623. List<HashMap> listz = mapper.query(sql);
  624. if(listz.size() >0 && listz.get(0).get("INSPECTION_LOT") == null){
  625. throw new Exception("该轧批做了复样,不能取消判定!");
  626. }
  627. if(list1.size() >0 || list2.size() >0 || list3.size() >0){
  628. if(list1.size()>0){
  629. for(HashMap list:list1){
  630. if(!list.get("JUDGERESULT").toString().equals("0")){
  631. throw new Exception("该检验号下已有物料号做了综合判定,不能取消判定!");
  632. }
  633. /*if(!list.get("PHYSRESULT").toString().equals("0") && qjc.get(0).getCert_inst_name().equals("检测中心")){
  634. throw new Exception("该检验号已经做了材质最终判定,不能取消判定!");
  635. }*/
  636. if(list.get("PIC_IS_LOCK").toString().equals("1")){
  637. throw new Exception("该检验号已锁定,不能取消判定!");
  638. }
  639. //清楚库存初判结果
  640. ZjResultAll zra = new ZjResultAll();
  641. if(qjc.get(0).getCert_inst_name().equals("检测中心")){
  642. zra.setPhyfstsid("");
  643. zra.setPhyfstsresult("0");
  644. zra.setPhyfstsresult_desc("");
  645. }
  646. zra.setBilletid(list.get("BILLETID").toString());
  647. zra.setPhysid("");
  648. zra.setPhysresult_desc("");
  649. zra.setPhysresult("0");
  650. mapper.UpdateJugeResultB(zra);
  651. }
  652. }else if(list2.size() >0){
  653. for(HashMap list:list2){
  654. if(!list.get("JUDGERESULT").toString().equals("0")){
  655. throw new Exception("该检验号下已有物料号做了材质最终判定,不能取消判定!");
  656. }
  657. /*if(!list.get("PHYSRESULT").toString().equals("0") && qjc.get(0).getCert_inst_name().equals("检测中心")){
  658. throw new Exception("该检验号已经做了材质最终判定,不能取消判定!");
  659. }*/
  660. if(list.get("PIC_IS_LOCK").toString().equals("1")){
  661. throw new Exception("该检验号已锁定,不能取消判定!");
  662. }
  663. //清楚库存初判结果
  664. QcmJudgeCoilResult zra = new QcmJudgeCoilResult();
  665. if(qjc.get(0).getCert_inst_name().equals("检测中心")){
  666. zra.setPhyfstsid("");
  667. zra.setPhyfstsresult("0");
  668. zra.setPhyfstsresult_desc("");
  669. }
  670. zra.setCoil_no(list.get("COIL_NO").toString());
  671. zra.setPhysid("");
  672. zra.setPhysresult_desc("");
  673. zra.setPhysresult("0");
  674. mapper.UpdateJugeResultJ(zra);
  675. }
  676. }else{
  677. for(HashMap list:list3){
  678. if(!list.get("JUDGERESULT").toString().equals("0")){
  679. throw new Exception("该检验号下已有物料号做了材质最终判定,不能取消判定!");
  680. }
  681. /*if(!list.get("PHYSRESULT").toString().equals("0") && qjc.get(0).getCert_inst_name().equals("检测中心")){
  682. throw new Exception("该检验号已经做了材质最终判定,不能取消判定!");
  683. }*/
  684. if(list.get("PIC_IS_LOCK").toString().equals("1")){
  685. throw new Exception("该检验号已锁定,不能取消判定!");
  686. }
  687. //清楚库存初判结果
  688. QcmJudgeYtCoilResult zra = new QcmJudgeYtCoilResult();
  689. if(qjc.get(0).getCert_inst_name().equals("检测中心")){
  690. zra.setPhyfstsid("");
  691. zra.setPhyfstsresult("0");
  692. zra.setPhyfstsresult_desc("");
  693. }
  694. zra.setCoil_no(list.get("COIL_NO").toString());
  695. zra.setPhysid("");
  696. zra.setPhysresult_desc("");
  697. zra.setPhysresult("0");
  698. mapper.UpdateJugeResultY(zra);
  699. }
  700. }
  701. }/*else{
  702. throw new Exception("未找到该检验号下的库存信息!");
  703. }*/
  704. mapper.CancelPhysical(phy_id, remark,username);
  705. //清空判定记录表以及试样与合同信息表成分判定记录号
  706. QcmJhySampleROrd qsrd = new QcmJhySampleROrd();
  707. qsrd.setInspection_lot(inspection_lot);
  708. qsrd.setSmp_no(smp_no);
  709. mapper.UpdateQcmJhySampleROrd1(qsrd);
  710. QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
  711. qjog.setOperate_name(username);
  712. qjog.setProd_line(qjc.get(0).getPline_code());
  713. qjog.setOperate_type("取消材质判定");
  714. qjog.setParams(smp_no);
  715. qjog.setBatchno(qjc.get(0).getBatch_no());
  716. qjog.setMemo(remark);
  717. mapper.insertQcmJudgeOperateLog(qjog);
  718. SqlSession.commit();
  719. }catch(Exception e){
  720. SqlSession.rollback();
  721. cro.setV_errCode(-1);
  722. cro.setV_errMsg(e.getMessage());
  723. logger.info(new Date().toString() + " QCM.QCM03.QCM0302.QcmJudgePhysicalServiceImpl.CancelJudge:【" + inspection_lot + "," + smp_no + "】" + e);
  724. }
  725. SqlSession.close();
  726. return cro;
  727. }
  728. /**
  729. * 单个物料材质重判 检验号
  730. */
  731. @SuppressWarnings("rawtypes")
  732. public CoreReturnObject PhyRejudge(String smp_no,String material_no,String batch_no,String smp_type_code,String design_key,String pline_code,String username) throws Exception{
  733. try{
  734. //判断是否进行了综合判定
  735. String sql = "select * from zj_result_all@xgcx where BILLETID = '"+material_no+"'";
  736. List<HashMap> list1 = mapper.query(sql);
  737. sql = "select * from QCM_JUDGE_COIL_RESULT where coil_no = '"+material_no+"'";
  738. //List<QcmJudgePhy>
  739. List<HashMap> list2 = mapper.query(sql);
  740. List<QcmJudgePhysical> qjc= mapper.queryQcmJudgePhysical(sql);
  741. if(list1.size() >0 || list2.size() >0){
  742. if(list1.size()>0){
  743. for(HashMap list:list1){
  744. if(!list.get("JUDGERESULT").toString().equals("0")){
  745. throw new Exception("该物料号做了综合判定,不能材质重判!");
  746. }
  747. }
  748. }else{
  749. for(HashMap list:list2){
  750. if(!list.get("JUDGERESULT").toString().equals("0")){
  751. throw new Exception("该物料号做了材质最终判定,不能材质重判!");
  752. }
  753. }
  754. }
  755. List<QcmJhySampleROrd> qjsr = mapper.queryQcmJhySampleROrd1("select * from qcm_jhy_sample_r_ord where smp_no = '"+smp_no+"'");
  756. QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
  757. qjog.setOperate_name(username);
  758. qjog.setOperate_type("单吊材质判定");
  759. qjog.setParams(smp_no);
  760. qjog.setBatchno(qjsr.get(0).getBatch_no());
  761. qjog.setProd_line(qjsr.get(0).getPline_code());
  762. mapper.insertQcmJudgeOperateLog(qjog);
  763. HashMap hs = new HashMap();
  764. hs.put("BATCH_NO", batch_no);
  765. hs.put("SMP_NO", smp_no);
  766. hs.put("MATERIAL_NO", material_no);
  767. hs.put("SMP_TYPE_CODE", smp_type_code);
  768. hs.put("DESIGN_KEY", design_key);
  769. hs.put("PLINE_CODE", pline_code);
  770. hs.put("CREATE_NAME", username);
  771. WebService1Impl web = new WebService1Impl();
  772. //复样
  773. try {
  774. String result = web.sentenceDuplicateSample(hs);
  775. if(!result.equals("1")){
  776. throw new Exception(result);
  777. }
  778. } catch (Exception e) {
  779. // TODO Auto-generated catch block
  780. throw new Exception(e.getMessage());
  781. }
  782. }else{
  783. throw new Exception("未找到库存信息!");
  784. }
  785. SqlSession.commit();
  786. }catch(Exception e){
  787. SqlSession.rollback();
  788. cro.setV_errCode(-1);
  789. cro.setV_errMsg(e.getMessage());
  790. logger.info(new Date().toString() + " QCM.QCM03.QCM0302.QcmJudgePhysicalServiceImpl.PhyRejudge:【" + material_no + "," + batch_no + "," + smp_type_code + "," + design_key + "," + pline_code + "," + username + "】" + e);
  791. }
  792. SqlSession.close();
  793. return cro;
  794. }
  795. /***
  796. * 调用综合判定:外部接口调用
  797. * @param sum
  798. * @return
  799. */
  800. /*@SuppressWarnings({ "rawtypes", "unused" })
  801. public String ultimateJudgeAutoS(String material_no, String username)throws Exception{
  802. try{
  803. List<HashMap> hashmap = doQueryMaterialInfoZhb("('"+material_no+"')");
  804. if(hashmap.size() == 0){
  805. hashmap = doQueryMaterialInfoBX(material_no);
  806. }
  807. if(hashmap.size() == 0){
  808. hashmap = doQueryMaterialInfoJ(material_no);
  809. }
  810. String sql = "select * from zj_result_all@xgcx where BILLETID = '"+material_no+"'";
  811. int flag = 0;
  812. int count = 0;
  813. List<HashMap> list1 = mapper.query(sql);
  814. sql = "select * from QCM_JUDGE_COIL_RESULT where coil_no = '"+material_no+"'";
  815. List<HashMap> list2 = mapper.query(sql);
  816. if(list1.size() >0 || list2.size() >0){
  817. if(list1.size()>0){
  818. for(HashMap list:list1){
  819. if(!list.get("JUDGERESULT").toString().equals("0")){
  820. return "N";
  821. }
  822. if(list.get("CIC_IS_LOCK").toString().equals("1")){
  823. return "N";
  824. }
  825. if(list.get("PIC_IS_LOCK").toString().equals("1")){
  826. return "N";
  827. }
  828. if(list.get("SIC_IS_LOCK").toString().equals("1")){
  829. return "N";
  830. }
  831. if(list.get("DIC_IS_LOCK").toString().equals("1")){
  832. return "N";
  833. }
  834. if(list.get("R_CIC_IS_LOCK").toString().equals("1")){
  835. return "N";
  836. }
  837. if(list.get("SFU_IS_LOCK").toString().equals("1") || list.get("SFD_IS_LOCK").toString().equals("1") || list.get("SFE_IS_LOCK").toString().equals("1")){
  838. return "N";
  839. }
  840. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"C")){
  841. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_cic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  842. if(list.get("CHEMRESULT").toString().equals("0") && count >0){
  843. return "N";
  844. }
  845. }
  846. if(list.get("R_CHEMRESULT").toString().equals("0")){
  847. return "N";
  848. }
  849. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"A")){
  850. if(list.get("R_CHEMRESULT").toString().equals("0")){
  851. return "N";
  852. }
  853. }
  854. if(list.get("SURFACERESULT").toString().equals("0")){
  855. return "N";
  856. }
  857. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_pic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  858. if(list.get("PHYSRESULT").toString().equals("0") && count >0){
  859. return "N";
  860. }
  861. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_sic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  862. if(list.get("SIZERESULT").toString().equals("0") && count > 0){
  863. return "N";
  864. }
  865. //count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_dic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  866. if(list.get("SPYRESULT").toString().equals("0")){
  867. return "N";
  868. }
  869. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"C")){
  870. flag += "1".equals(list.get("CHEMRESULT").toString()) ? 0 : 1;
  871. }
  872. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"A")){
  873. flag += "1".equals(list.get("R_CHEMRESULT").toString()) ? 0 : 1;
  874. }
  875. flag += "1".equals(list.get("SURFACERESULT").equals("0")?"1":list.get("SURFACERESULT").toString()) ? 0 : 1;
  876. flag += "1".equals(list.get("PHYSRESULT").equals("0")?"1":list.get("PHYSRESULT").toString()) ? 0 : 1;
  877. flag += "1".equals(list.get("SIZERESULT").equals("0")?"1":list.get("SIZERESULT").toString()) ? 0 : 1;
  878. flag += "1".equals(list.get("SPYRESULT").equals("0")?"1":list.get("SPYRESULT").toString()) ? 0 : 1;
  879. QcmJudgeUltimate qju=new QcmJudgeUltimate();
  880. //获取判定记录号当天的最大值
  881. Date now = new Date();
  882. String opr_time = new SimpleDateFormat("yyyyMMddHHmmss").format(now); //操作时间
  883. SimpleDateFormat sdf=new SimpleDateFormat("yyMMdd");
  884. String date=sdf.format(now);
  885. count=0;
  886. String type1 = "";
  887. if(material_no.startsWith("Z")||material_no.startsWith("H")){
  888. type1 = "ZB";
  889. }else{
  890. type1 = "ZX";
  891. }
  892. sql ="select * from qcm_judge_ultimate where UTM_ID like '"+type1+date+"%' order by UTM_ID desc";
  893. List<QcmJudgeUltimate> listUl=mapper.QcmJudgeUltimate(sql);
  894. if (listUl!=null&&listUl.size()>0) {
  895. String s=listUl.get(0).getUtm_id();
  896. count=Integer.parseInt(s.substring(s.length()-4,s.length()));
  897. }
  898. count++;
  899. String utm_id=type1+sdf.format(now)+String.format("%04d",count);
  900. qju.setUtm_id(utm_id);
  901. //更新库存表综合判定结果
  902. ZjResultAll zra = new ZjResultAll();
  903. zra.setBilletid(material_no);
  904. zra.setJudgeid(utm_id);
  905. zra.setJudgeresult(flag == 0 ? "1" :"2");
  906. zra.setJudgeresult_desc(flag == 0 ? "合格" : "不合格");
  907. if(list.get("CHEMRESULT").toString().equals("3") || list.get("SURFACERESULT").toString().equals("3") || list.get("PHYSRESULT").toString().equals("3") ||list.get("SIZERESULT").toString().equals("3") ||list.get("SPYRESULT").toString().equals("3")){
  908. zra.setJudgeresult("3");
  909. zra.setJudgeresult_desc("次品");
  910. }
  911. if(list.get("CHEMRESULT").toString().equals("4") || list.get("SURFACERESULT").toString().equals("4") || list.get("PHYSRESULT").toString().equals("4") ||list.get("SIZERESULT").toString().equals("4") ||list.get("SPYRESULT").toString().equals("4")){
  912. zra.setJudgeresult("4");
  913. zra.setJudgeresult_desc("废品");
  914. }
  915. if(zra.getJudgeresult().equals("2")){
  916. return "N";
  917. }
  918. mapper.UpdateJugeResultB(zra);
  919. //插入综合判定记录表
  920. qju.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  921. qju.setHeat_no(hashmap.get(0).get("HEAT_NO")==null?"":hashmap.get(0).get("HEAT_NO").toString());
  922. qju.setBatch_no(hashmap.get(0).get("BATCHNO")==null?"":hashmap.get(0).get("BATCHNO").toString());
  923. qju.setBoard_no(hashmap.get(0).get("BOARD_NO")==null?"":hashmap.get(0).get("BOARD_NO").toString());
  924. qju.setInspection_lot(hashmap.get(0).get("BILLET_JY").toString());
  925. qju.setMaterial_no(material_no);
  926. qju.setUtm_id(utm_id);
  927. qju.setUtm_memo("");
  928. qju.setUtm_result_code(zra.getJudgeresult());
  929. qju.setUtm_result_desc(zra.getJudgeresult_desc());
  930. qju.setCic_id(list1.get(0).get("CHEMID") == null?"":list1.get(0).get("CHEMID").toString());
  931. qju.setCic_result_code(list1.get(0).get("CHEMRESULT")==null?"":list1.get(0).get("CHEMRESULT").toString());
  932. qju.setCic_result_desc(list1.get(0).get("CHEMRESULT_DESC")==null?"":list1.get(0).get("CHEMRESULT_DESC").toString());
  933. qju.setR_cic_id(list1.get(0).get("R_CHEMID") == null?"":list1.get(0).get("R_CHEMID").toString());
  934. qju.setR_cic_result_code(list1.get(0).get("R_CHEMRESULT")==null?"":list1.get(0).get("R_CHEMRESULT").toString());
  935. qju.setR_cic_result_desc(list1.get(0).get("R_CHEMRESULT_DESC")==null?"":list1.get(0).get("R_CHEMRESULT_DESC").toString());
  936. qju.setPic_id(list1.get(0).get("PHYSID") == null?"":list1.get(0).get("PHYSID").toString());
  937. qju.setPic_result_code(list1.get(0).get("PHYSRESULT")==null?"":list1.get(0).get("PHYSRESULT").toString());
  938. qju.setPic_result_desc(list1.get(0).get("PHYSRESULT_DESC")==null?"":list1.get(0).get("PHYSRESULT_DESC").toString());
  939. qju.setSic_id(list1.get(0).get("SIZEID") == null?"":list1.get(0).get("SIZEID").toString());
  940. qju.setSic_result_code(list1.get(0).get("SIZERESULT")==null?"":list1.get(0).get("SIZERESULT").toString());
  941. qju.setSic_result_desc(list1.get(0).get("SIZERESULT_DESC")==null?"":list1.get(0).get("SIZERESULT_DESC").toString());
  942. qju.setDic_id(list1.get(0).get("SPYID")==null?"":list1.get(0).get("SPYID").toString());
  943. qju.setDic_result_code(list1.get(0).get("SPYRESULT")==null?"":list1.get(0).get("SPYRESULT").toString());
  944. qju.setDic_result_desc(list1.get(0).get("SPYRESULT_DESC")==null?"":list1.get(0).get("SPYRESULT_DESC").toString());
  945. qju.setSfd_id(list1.get(0).get("SURFACEID")==null?"":list1.get(0).get("SURFACEID").toString());
  946. qju.setSfd_result_code(list1.get(0).get("UD_SURFACE_RESULT")==null?"":list1.get(0).get("UD_SURFACE_RESULT").toString());
  947. qju.setSfd_result_desc(list1.get(0).get("UD_SURFACE_RESULT_DESC")==null?"":list1.get(0).get("UD_SURFACE_RESULT_DESC").toString());
  948. qju.setSfu_id(list1.get(0).get("SURFACEID")==null?"":list1.get(0).get("SURFACEID").toString());
  949. qju.setSfu_result_code(list1.get(0).get("UP_SURFACE_RESULT")==null?"":list1.get(0).get("UP_SURFACE_RESULT").toString());
  950. qju.setSfu_result_desc(list1.get(0).get("UP_SURFACE_RESULT_DESC")==null?"":list1.get(0).get("UP_SURFACE_RESULT_DESC").toString());
  951. qju.setSfe_id(list1.get(0).get("SURFACEID")==null?"":list1.get(0).get("SURFACEID").toString());
  952. qju.setSfe_result_code(list1.get(0).get("MARGINAL_RESULT")==null?"":list1.get(0).get("MARGINAL_RESULT").toString());
  953. qju.setSfe_result_desc(list1.get(0).get("MARGINAL_RESULT_DESC")==null?"":list1.get(0).get("MARGINAL_RESULT_DESC").toString());
  954. qju.setMst_id(list1.get(0).get("SURFACEID")==null?"":list1.get(0).get("SURFACEID").toString());
  955. qju.setMst_result_code(list1.get(0).get("SURFACERESULT")==null?"":list1.get(0).get("SURFACERESULT").toString());
  956. qju.setMst_result_desc(list1.get(0).get("SURFACERESULT_DESC")==null?"":list1.get(0).get("SURFACERESULT_DESC").toString());
  957. qju.setFst_id(list1.get(0).get("PHYFSTSID")==null?"":list1.get(0).get("PHYFSTSID").toString());
  958. qju.setFst_result_code(list1.get(0).get("PHYFSTSRESULT")==null?"":list1.get(0).get("PHYFSTSRESULT").toString());
  959. qju.setFst_result_desc(list1.get(0).get("PHYFSTSRESULT_DESC")==null?"":list1.get(0).get("PHYFSTSRESULT_DESC").toString());
  960. qju.setPsc(hashmap.get(0).get("PSC")==null?"":hashmap.get(0).get("PSC").toString());
  961. qju.setPsc_desc(hashmap.get(0).get("PSC_DESC")==null?"":hashmap.get(0).get("PSC_DESC").toString());
  962. qju.setProd_code(hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString());
  963. qju.setProd_name(hashmap.get(0).get("PROD_NAME")==null?"":hashmap.get(0).get("PROD_CODE").toString());
  964. qju.setSteel_code(hashmap.get(0).get("STEEL_CODE")==null?"":hashmap.get(0).get("STEEL_CODE").toString());
  965. qju.setSteel_name(hashmap.get(0).get("STEEL_NAME").toString());
  966. qju.setStd_code(hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString());
  967. qju.setStd_name(hashmap.get(0).get("STD_NAME")==null?"":hashmap.get(0).get("STD_NAME").toString());
  968. qju.setJudge_name(username);
  969. qju.setJudge_time(new Date());
  970. qju.setPline_code(hashmap.get(0).get("PLINE_CODE")==null?"":hashmap.get(0).get("PLINE_CODE").toString());
  971. qju.setPline_name(hashmap.get(0).get("PLINE_NAME")==null?"":hashmap.get(0).get("PLINE_NAME").toString());
  972. mapper.insertQcmJudgeUltimate(qju);
  973. if(zra.getJudgeresult().equals("1")){
  974. //发送熔炼成分实绩
  975. List<QcmJhyInspElements> chemresult1 = mapper.queryQcmJhyInspElements("select * from qcm_jhy_insp_elements t where t.assay_type = 'L' and t.heat_no = '"+hashmap.get(0).get("HEAT_NO").toString()+"'");
  976. if(chemresult1.size() > 0){
  977. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  978. qjus.setMaterial_no(material_no);
  979. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  980. qjus.setResult_type("C");
  981. qjus.setJudge_id(list.get("R_CHEMID") == null?"":list.get("R_CHEMID").toString());
  982. qjus.setCreate_name("system");
  983. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  984. }
  985. //发送成品成分实绩
  986. List<QcmJhyInspElements> chemresult2 = mapper.queryQcmJhyInspElements("select * from qcm_jhy_insp_elements t where t.assay_type = 'P' and t.INSPECTION_LOT = '"+hashmap.get(0).get("INSPECTION_LOT").toString()+"'");
  987. if(chemresult2.size() > 0){
  988. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  989. qjus.setMaterial_no(material_no);
  990. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  991. qjus.setResult_type("C");
  992. qjus.setJudge_id(list.get("CHEMID") == null?"":list.get("CHEMID").toString());
  993. qjus.setCreate_name("system");
  994. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  995. }
  996. //发送材质实绩
  997. List<QcmJhyPhyresult> phyresult1 = mapper.queryQcmJhyPhyresult("select * from qcm_jhy_insp_physics t where t.SPECIMEN_NO in (select SPECIMEN_NO from QCM_JHY_SAMPLE_CONSIGN_D where INSPECTION_LOT = '"+hashmap.get(0).get("INSPECTION_LOT").toString()+"')");
  998. if(phyresult1.size() > 0){
  999. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  1000. qjus.setMaterial_no(material_no);
  1001. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  1002. qjus.setResult_type("P");
  1003. qjus.setJudge_id(list.get("PHYSID") == null?"":list.get("PHYSID").toString());
  1004. qjus.setCreate_name("system");
  1005. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  1006. }
  1007. }
  1008. String judgeresult = "";
  1009. if(zra.getJudgeresult().equals("1")){
  1010. judgeresult = "40140101";
  1011. }else if(zra.getJudgeresult().equals("3")){
  1012. if(zra.getSurfaceresult() != null &&zra.getSurfaceresult().equals("3")){
  1013. judgeresult = "40140301";
  1014. }else{
  1015. judgeresult = "40140302";
  1016. }
  1017. }else if(zra.getJudgeresult().equals("4")){
  1018. judgeresult = "40140303";
  1019. }
  1020. String cj_result = "";
  1021. sql = "SELECT * FROM Qcm_Ord_Design_Std_Pic a where a.org_code <> '5000' and a.org_code <> 'IC003' and a.org_code <> 'IC004' "
  1022. +" and a.org_code <> 'IC001' and a.org_code <> 'IC010' and a.design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'";
  1023. List<HashMap> listcj = mapper.query(sql);
  1024. if (listcj!=null&&listcj.size()>0 && (material_no.startsWith("Z") || material_no.startsWith("H"))) {
  1025. cj_result = "40140103";
  1026. judgeresult = "40140103";
  1027. }
  1028. String steelname = hashmap.get(0).get("STEEL_NAME")==null?"":hashmap.get(0).get("STEEL_NAME").toString();
  1029. String phyid = list1.get(0).get("PHYSID")==null?"":list1.get(0).get("PHYSID").toString();
  1030. if(!phyid.equals("")){
  1031. sql= "select max(t.steel_name) steel_name from qcm_judge_physical t where t.phy_id in (select phy_id from qcm_judge_physical_utm_d d where d.pic_id = '"+phyid+"')";
  1032. List<HashMap> liststeel = mapper.query(sql);
  1033. if(liststeel != null && liststeel.size() >0 && liststeel.get(0).get("STEEL_NAME").toString().startsWith("SWRH82B-YL")){
  1034. steelname = liststeel.get(0).get("STEEL_NAME").toString();
  1035. }
  1036. }
  1037. judge_call(hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString(),hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString(),hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString(),hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString(),hashmap.get(0).get("PSC")==null?"":hashmap.get(0).get("PSC").toString(),judgeresult,"","","",cj_result,material_no,username,hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString(),hashmap.get(0).get("HT_NO")==null?"":hashmap.get(0).get("HT_NO").toString(),utm_id,hashmap.get(0).get("DESIGN_KEY")==null?"":hashmap.get(0).get("DESIGN_KEY").toString(),steelname);
  1038. }
  1039. }else{
  1040. for(HashMap list:list2){
  1041. if(!list.get("JUDGERESULT").toString().equals("0")){
  1042. return "N";
  1043. }
  1044. if(!list.get("CIC_IS_LOCK").toString().equals("0")){
  1045. return "N";
  1046. }
  1047. if(!list.get("PIC_IS_LOCK").toString().equals("0")){
  1048. return "N";
  1049. }
  1050. if(!list.get("SIC_IS_LOCK").toString().equals("0")){
  1051. return "N";
  1052. }
  1053. if(!list.get("R_CIC_IS_LOCK").toString().equals("0")){
  1054. return "N";
  1055. }
  1056. if(!list.get("DIC_IS_LOCK").toString().equals("0")){
  1057. return "N";
  1058. }
  1059. if(!list.get("SFU_IS_LOCK").toString().equals("0") || !list.get("SFD_IS_LOCK").toString().equals("0") || !list.get("SFE_IS_LOCK").toString().equals("0")){
  1060. return "N";
  1061. }
  1062. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"C")){
  1063. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_cic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  1064. if(list.get("CHEMRESULT").toString().equals("0") && count >0){
  1065. return "N";
  1066. }
  1067. }
  1068. if(list.get("R_CHEMRESULT").toString().equals("0")){
  1069. return "N";
  1070. }
  1071. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"A")){
  1072. if(list.get("R_CHEMRESULT").toString().equals("0")){
  1073. return "N";
  1074. }
  1075. }
  1076. if(list.get("SURFACERESULT").toString().equals("0")){
  1077. return "N";
  1078. }
  1079. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_pic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  1080. if(list.get("PHYSRESULT").toString().equals("0") && count >0){
  1081. return "N";
  1082. }
  1083. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_sic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  1084. if(list.get("SIZERESULT").toString().equals("0") && count >0){
  1085. return "N";
  1086. }
  1087. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_dic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  1088. if(list.get("SPYRESULT").toString().equals("0") && count > 0){
  1089. return "N";
  1090. }
  1091. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"C")){
  1092. flag += "1".equals(list.get("CHEMRESULT").toString()) ? 0 : 1;
  1093. }
  1094. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"A")){
  1095. flag += "1".equals(list.get("R_CHEMRESULT").toString()) ? 0 : 1;
  1096. }
  1097. flag += "1".equals(list.get("SURFACERESULT").equals("0")?"1":list.get("SURFACERESULT").toString()) ? 0 : 1;
  1098. flag += "1".equals(list.get("PHYSRESULT").equals("0")?"1":list.get("PHYSRESULT").toString()) ? 0 : 1;
  1099. flag += "1".equals(list.get("SIZERESULT").equals("0")?"1":list.get("SIZERESULT").toString()) ? 0 : 1;
  1100. flag += "1".equals(list.get("SPYRESULT").equals("0")?"1":list.get("SPYRESULT").toString()) ? 0 : 1;
  1101. QcmJudgeUltimate qju=new QcmJudgeUltimate();
  1102. //获取判定记录号当天的最大值
  1103. Date now = new Date();
  1104. String opr_time = new SimpleDateFormat("yyyyMMddHHmmss").format(now); //操作时间
  1105. SimpleDateFormat sdf=new SimpleDateFormat("yyMMdd");
  1106. String date=sdf.format(now);
  1107. count=0;
  1108. sql ="select * from qcm_judge_ultimate where UTM_ID like 'ZJ"+date+"%' order by UTM_ID desc";
  1109. List<QcmJudgeUltimate> listUl=mapper.QcmJudgeUltimate(sql);
  1110. if (listUl!=null&&listUl.size()>0) {
  1111. String s=listUl.get(0).getUtm_id();
  1112. count=Integer.parseInt(s.substring(s.length()-4,s.length()));
  1113. }
  1114. count++;
  1115. String utm_id="ZJ"+sdf.format(now)+String.format("%04d",count);
  1116. //更新库存表综合判定结果
  1117. QcmJudgeCoilResult zra = new QcmJudgeCoilResult();
  1118. zra.setCoil_no(material_no);
  1119. zra.setJudgeid(utm_id);
  1120. zra.setJudgeresult(flag == 0 ? "1" :"2");
  1121. zra.setJudgeresult_desc(flag == 0 ? "合格" : "不合格");
  1122. if(list.get("CHEMRESULT").toString().equals("3") || list.get("SURFACERESULT").toString().equals("3") || list.get("PHYSRESULT").toString().equals("3") ||list.get("SIZERESULT").toString().equals("3") ||list.get("SPYRESULT").toString().equals("3")){
  1123. zra.setJudgeresult("3");
  1124. zra.setJudgeresult_desc("次品");
  1125. }
  1126. if(list.get("CHEMRESULT").toString().equals("4") || list.get("SURFACERESULT").toString().equals("4") || list.get("PHYSRESULT").toString().equals("4") ||list.get("SIZERESULT").toString().equals("4") ||list.get("SPYRESULT").toString().equals("4")){
  1127. zra.setJudgeresult("4");
  1128. zra.setJudgeresult_desc("废品");
  1129. }
  1130. if(zra.getJudgeresult().equals("2")){
  1131. return "N";
  1132. }
  1133. mapper.UpdateJugeResultJ(zra);
  1134. //插入综合判定记录表
  1135. qju.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  1136. qju.setHeat_no(hashmap.get(0).get("HEAT_NO")==null?"":hashmap.get(0).get("HEAT_NO").toString());
  1137. qju.setBatch_no(hashmap.get(0).get("BATCHNO")==null?"":hashmap.get(0).get("BATCHNO").toString());
  1138. qju.setBoard_no(hashmap.get(0).get("BOARD_NO")==null?"":hashmap.get(0).get("BOARD_NO").toString());
  1139. qju.setInspection_lot(hashmap.get(0).get("INSPECTION_LOT").toString());
  1140. qju.setMaterial_no(material_no);
  1141. qju.setUtm_id(utm_id);
  1142. qju.setUtm_memo("");
  1143. qju.setUtm_result_code(zra.getJudgeresult());
  1144. qju.setUtm_result_desc(zra.getJudgeresult_desc());
  1145. qju.setCic_id(list2.get(0).get("CHEMID") == null?"":list2.get(0).get("CHEMID").toString());
  1146. qju.setCic_result_code(list2.get(0).get("CHEMRESULT")==null?"":list2.get(0).get("CHEMRESULT").toString());
  1147. qju.setCic_result_desc(list2.get(0).get("CHEMRESULT_DESC")==null?"":list2.get(0).get("CHEMRESULT_DESC").toString());
  1148. qju.setR_cic_id(list2.get(0).get("R_CHEMID") == null?"":list2.get(0).get("R_CHEMID").toString());
  1149. qju.setR_cic_result_code(list2.get(0).get("R_CHEMRESULT")==null?"":list2.get(0).get("R_CHEMRESULT").toString());
  1150. qju.setR_cic_result_desc(list2.get(0).get("R_CHEMRESULT_DESC")==null?"":list2.get(0).get("R_CHEMRESULT_DESC").toString());
  1151. qju.setPic_id(list2.get(0).get("PHYSID") == null?"":list2.get(0).get("PHYSID").toString());
  1152. qju.setPic_result_code(list2.get(0).get("PHYSRESULT")==null?"":list2.get(0).get("PHYSRESULT").toString());
  1153. qju.setPic_result_desc(list2.get(0).get("PHYSRESULT_DESC")==null?"":list2.get(0).get("PHYSRESULT_DESC").toString());
  1154. qju.setSic_id(list2.get(0).get("SIZEID") == null?"":list2.get(0).get("SIZEID").toString());
  1155. qju.setSic_result_code(list2.get(0).get("SIZERESULT")==null?"":list2.get(0).get("SIZERESULT").toString());
  1156. qju.setSic_result_desc(list2.get(0).get("SIZERESULT_DESC")==null?"":list2.get(0).get("SIZERESULT_DESC").toString());
  1157. qju.setDic_id(list2.get(0).get("SPYID")==null?"":list2.get(0).get("SPYID").toString());
  1158. qju.setDic_result_code(list2.get(0).get("SPYRESULT")==null?"":list2.get(0).get("SPYRESULT").toString());
  1159. qju.setDic_result_desc(list2.get(0).get("SPYRESULT_DESC")==null?"":list2.get(0).get("SPYRESULT_DESC").toString());
  1160. qju.setSfd_id(list2.get(0).get("SURFACEID")==null?"":list2.get(0).get("SURFACEID").toString());
  1161. qju.setSfd_result_code(list2.get(0).get("UD_SURFACE_RESULT")==null?"":list2.get(0).get("UD_SURFACE_RESULT").toString());
  1162. qju.setSfd_result_desc(list2.get(0).get("UD_SURFACE_RESULT_DESC")==null?"":list2.get(0).get("UD_SURFACE_RESULT_DESC").toString());
  1163. qju.setSfu_id(list2.get(0).get("SURFACEID")==null?"":list2.get(0).get("SURFACEID").toString());
  1164. qju.setSfu_result_code(list2.get(0).get("UP_SURFACE_RESULT")==null?"":list2.get(0).get("UP_SURFACE_RESULT").toString());
  1165. qju.setSfu_result_desc(list2.get(0).get("UP_SURFACE_RESULT_DESC")==null?"":list2.get(0).get("UP_SURFACE_RESULT_DESC").toString());
  1166. qju.setSfe_id(list2.get(0).get("SURFACEID")==null?"":list2.get(0).get("SURFACEID").toString());
  1167. qju.setSfe_result_code(list2.get(0).get("MARGINAL_RESULT")==null?"":list2.get(0).get("MARGINAL_RESULT").toString());
  1168. qju.setSfe_result_desc(list2.get(0).get("MARGINAL_RESULT_DESC")==null?"":list2.get(0).get("MARGINAL_RESULT_DESC").toString());
  1169. qju.setMst_id(list2.get(0).get("SURFACEID")==null?"":list2.get(0).get("SURFACEID").toString());
  1170. qju.setMst_result_code(list2.get(0).get("SURFACERESULT")==null?"":list2.get(0).get("SURFACERESULT").toString());
  1171. qju.setMst_result_desc(list2.get(0).get("SURFACERESULT_DESC")==null?"":list2.get(0).get("SURFACERESULT_DESC").toString());
  1172. qju.setFst_id(list2.get(0).get("PHYFSTSID")==null?"":list2.get(0).get("PHYFSTSID").toString());
  1173. qju.setFst_result_code(list2.get(0).get("PHYFSTSRESULT")==null?"":list2.get(0).get("PHYFSTSRESULT").toString());
  1174. qju.setFst_result_desc(list2.get(0).get("PHYFSTSRESULT_DESC")==null?"":list2.get(0).get("PHYFSTSRESULT_DESC").toString());
  1175. qju.setPsc(hashmap.get(0).get("PSC")==null?"":hashmap.get(0).get("PSC").toString());
  1176. qju.setPsc_desc(hashmap.get(0).get("PSC_DESC")==null?"":hashmap.get(0).get("PSC_DESC").toString());
  1177. qju.setProd_code(hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString());
  1178. qju.setProd_name(hashmap.get(0).get("PROD_NAME")==null?"":hashmap.get(0).get("PROD_CODE").toString());
  1179. qju.setSteel_code(hashmap.get(0).get("STEEL_CODE")==null?"":hashmap.get(0).get("STEEL_CODE").toString());
  1180. qju.setSteel_name(hashmap.get(0).get("STEEL_NAME").toString());
  1181. qju.setStd_code(hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString());
  1182. qju.setStd_name(hashmap.get(0).get("STD_NAME")==null?"":hashmap.get(0).get("STD_NAME").toString());
  1183. qju.setJudge_name(username);
  1184. qju.setJudge_time(new Date());
  1185. qju.setPline_code(hashmap.get(0).get("PLINE_CODE")==null?"":hashmap.get(0).get("PLINE_CODE").toString());
  1186. qju.setPline_name(hashmap.get(0).get("PLINE_NAME")==null?"":hashmap.get(0).get("PLINE_NAME").toString());
  1187. mapper.insertQcmJudgeUltimate(qju);
  1188. if(zra.getJudgeresult().equals("1"))
  1189. {
  1190. //发送熔炼成分实绩
  1191. List<QcmJhyInspElements> chemresult1 = mapper.queryQcmJhyInspElements("select * from qcm_jhy_insp_elements t where t.assay_type = 'L' and t.heat_no = '"+hashmap.get(0).get("HEAT_NO").toString()+"'");
  1192. if(chemresult1.size() > 0){
  1193. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  1194. qjus.setMaterial_no(material_no);
  1195. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  1196. qjus.setJudge_id(list.get("R_CHEMID") == null?"":list.get("R_CHEMID").toString());
  1197. qjus.setCreate_name("system");
  1198. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  1199. }
  1200. //发送成品成分实绩
  1201. List<QcmJhyInspElements> chemresult2 = mapper.queryQcmJhyInspElements("select * from qcm_jhy_insp_elements t where t.assay_type = 'P' and t.INSPECTION_LOT = '"+hashmap.get(0).get("INSPECTION_LOT").toString()+"'");
  1202. if(chemresult2.size() > 0){
  1203. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  1204. qjus.setMaterial_no(material_no);
  1205. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  1206. qjus.setResult_type("C");
  1207. qjus.setJudge_id(list.get("CHEMID") == null?"":list.get("CHEMID").toString());
  1208. qjus.setCreate_name("system");
  1209. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  1210. }
  1211. //发送材质实绩
  1212. List<QcmJhyPhyresult> phyresult1 = mapper.queryQcmJhyPhyresult("select * from qcm_jhy_insp_physics t where t.SPECIMEN_NO in (select SPECIMEN_NO from QCM_JHY_SAMPLE_CONSIGN_D where INSPECTION_LOT = '"+hashmap.get(0).get("INSPECTION_LOT").toString()+"')");
  1213. if(phyresult1.size() > 0){
  1214. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  1215. qjus.setMaterial_no(material_no);
  1216. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  1217. qjus.setResult_type("P");
  1218. qjus.setJudge_id(list.get("PHYSID") == null?"":list.get("PHYSID").toString());
  1219. qjus.setCreate_name("system");
  1220. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  1221. }
  1222. }
  1223. }
  1224. }
  1225. }
  1226. SqlSession.commit();
  1227. }catch(Exception ex){
  1228. cro.setV_errCode(-1);
  1229. cro.setV_errMsg(ex.getMessage());
  1230. SqlSession.rollback();
  1231. }
  1232. SqlSession.close();
  1233. return "Y";
  1234. }*/
  1235. /***
  1236. * 调用初判
  1237. * @param sum
  1238. * @return
  1239. */
  1240. @SuppressWarnings({ "rawtypes", "unused" })
  1241. public void FirstJudgeAutoByHuman(String material_no, String username) throws Exception{
  1242. try{
  1243. List<HashMap> hashmap = doQueryMaterialInfoBX(material_no);
  1244. if(!hashmap.get(0).get("PLINE_CODE").equals("ZB1") && !hashmap.get(0).get("PLINE_CODE").equals("HB1")){
  1245. throw new Exception("该物料号产线不是中厚板,请重新选择!");
  1246. }
  1247. String sql = "select * from zj_result_all@xgcx where BILLETID = '"+material_no+"'";
  1248. int flag = 0;
  1249. int count = 0;
  1250. //List<HashMap> list1 = mapper.query(sql);
  1251. ZjResultAll zra = new ZjResultAll();
  1252. List<HashMap> listM = mapper.query("select * from qcm_ord_design_sample_m a where a.org_name = '检测中心' and a.design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"' ");
  1253. if(listM.size() ==0){
  1254. zra.setBilletid(material_no);
  1255. zra.setPhyfstsresult("1");
  1256. zra.setPhyfstsresult_desc("合格");
  1257. mapper.UpdateJugeResultB(zra);
  1258. }
  1259. List<HashMap> list1 = mapper.query(sql);
  1260. if(list1.size() >0){
  1261. for(HashMap list:list1){
  1262. if(list.get("PHYFSTSRESULT").toString().equals("0")){
  1263. throw new Exception("该物料做了船检初判,不能再次判定!");
  1264. }
  1265. if(list.get("CIC_IS_LOCK").toString().equals("1")){
  1266. throw new Exception("成分已锁定,不能进行船检初判!");
  1267. }
  1268. if(list.get("PIC_IS_LOCK").toString().equals("1")){
  1269. throw new Exception("材质已锁定,不能进行船检初判!");
  1270. }
  1271. if(list.get("SIC_IS_LOCK").toString().equals("1")){
  1272. throw new Exception("公差已锁定,不能进行船检初判!");
  1273. }
  1274. if(list.get("DIC_IS_LOCK").toString().equals("1")){
  1275. throw new Exception("探伤已锁定,不能进行船检初判!");
  1276. }
  1277. if(list.get("R_CIC_IS_LOCK").toString().equals("1")){
  1278. throw new Exception("成分已锁定,不能进行船检初判!");
  1279. }
  1280. if(list.get("SFU_IS_LOCK").toString().equals("1") || list.get("SFD_IS_LOCK").toString().equals("1") || list.get("SFE_IS_LOCK").toString().equals("1")){
  1281. throw new Exception("表面已锁定,不能进行船检初判!");
  1282. }
  1283. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"C")){
  1284. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_cic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  1285. if(list.get("CHEMRESULT").toString().equals("0") && count >0){
  1286. throw new Exception("该物料未做成品成分判定,不能进行船检初判!"); }
  1287. }
  1288. if(list.get("R_CHEMRESULT").toString().equals("0")){
  1289. throw new Exception("该物料未做熔炼成分判定,不能进行船检初判!");
  1290. }
  1291. if(list.get("SURFACERESULT").toString().equals("0")){
  1292. throw new Exception("该物料未做表面检验,不能进行船检初判!");
  1293. }
  1294. if(list.get("PHYFSTSRESULT").toString().equals("0")){
  1295. throw new Exception("该物料未做材质初检,不能进行船检初判!");
  1296. }
  1297. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_sic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  1298. if(list.get("SIZERESULT").toString().equals("0") && count > 0){
  1299. throw new Exception("该物料未做公差检验,不能进行船检初判!");
  1300. }
  1301. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_dic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  1302. if(list.get("SPYRESULT").toString().equals("0") && count > 0){
  1303. throw new Exception("该物料未做探伤检验,不能进行船检初判!");
  1304. }
  1305. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"C")){
  1306. flag += "1".equals(list.get("CHEMRESULT").toString()) ? 0 : 1;
  1307. }
  1308. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"A")){
  1309. flag += "1".equals(list.get("R_CHEMRESULT").toString()) ? 0 : 1;
  1310. }
  1311. flag += "1".equals(list.get("SURFACERESULT").toString()) ? 0 : 1;
  1312. //flag += "1".equals(list.get("PHYSRESULT").equals("0")?"1":list.get("PHYSRESULT").toString()) ? 0 : 1;
  1313. flag += "1".equals(list.get("SIZERESULT").toString()) ? 0 : 1;
  1314. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_dic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  1315. if(count > 0){
  1316. flag += "1".equals(list.get("SPYRESULT").toString()) ? 0 : 1;
  1317. }
  1318. flag += "1".equals(list.get("PHYFSTSRESULT").toString())?0:1;
  1319. //更新库存表综合判定结果
  1320. zra.setBilletid(material_no);
  1321. zra.setFst_judgeresult(flag == 0 ? "1" :"2");
  1322. zra.setFst_judgeresult_desc(flag == 0 ? "合格" : "不合格");
  1323. mapper.UpdateJugeResultB(zra);
  1324. }
  1325. String judgeresult = "40140102";
  1326. String cj_result = "";
  1327. sql = "SELECT * FROM Qcm_Ord_Design_Std_Pic a where a.org_code <> '5000' and a.org_code <> 'IC003' and a.org_code <> 'IC004' "
  1328. +" and a.org_code <> 'IC010' and a.design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'";
  1329. List<HashMap> listcj = mapper.query(sql);
  1330. if (listcj!=null&&listcj.size()>0 && (material_no.startsWith("Z") || material_no.startsWith("H"))) {
  1331. cj_result = "40140102";
  1332. }
  1333. String steelname = hashmap.get(0).get("STEEL_NAME")==null?"":hashmap.get(0).get("STEEL_NAME").toString();
  1334. String phyid = list1.get(0).get("PHYSID")==null?"":list1.get(0).get("PHYSID").toString();
  1335. if(!phyid.equals("")){
  1336. sql= "select max(t.steel_name) steel_name from qcm_judge_physical t where t.phy_id in (select phy_id from qcm_judge_physical_utm_d d where d.pic_id = '"+phyid+"')";
  1337. List<HashMap> liststeel = mapper.query(sql);
  1338. if(liststeel != null && liststeel.size() >0 && liststeel.get(0).get("STEEL_NAME").toString().startsWith("SWRH82B-YL")){
  1339. steelname = liststeel.get(0).get("STEEL_NAME").toString();
  1340. }
  1341. }
  1342. judge_call(hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString(),hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString(),hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString(),hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString(),hashmap.get(0).get("PSC")==null?"":hashmap.get(0).get("PSC").toString(),judgeresult,"","","",cj_result,material_no,username,hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString(),hashmap.get(0).get("HT_NO")==null?"":hashmap.get(0).get("HT_NO").toString(),"",hashmap.get(0).get("DESIGN_KEY")==null?"":hashmap.get(0).get("DESIGN_KEY").toString(),steelname);
  1343. }
  1344. SqlSession.commit();
  1345. }catch(Exception ex){
  1346. cro.setV_errCode(-1);
  1347. cro.setV_errMsg(ex.getMessage());
  1348. SqlSession.rollback();
  1349. }
  1350. SqlSession.close();
  1351. }
  1352. /***
  1353. * 调用初判:后台自动调用
  1354. * @param sum
  1355. * @return
  1356. */
  1357. @SuppressWarnings({ "rawtypes", "unused" })
  1358. public void FirstJudgeAutoBySystem(List<HashMap> hashmap,String material_no, String username) throws Exception{
  1359. try{
  1360. if(!hashmap.get(0).get("PLINE_CODE").equals("ZB1") && !hashmap.get(0).get("PLINE_CODE").equals("HB1")){
  1361. return;
  1362. }
  1363. String sql = "select * from zj_result_all@xgcx where BILLETID = '"+material_no+"'";
  1364. int flag = 0;
  1365. int count = 0;
  1366. List<HashMap> list1 = mapper.query(sql);
  1367. ZjResultAll zra = new ZjResultAll();
  1368. List<HashMap> listM = mapper.query("select * from qcm_ord_design_sample_m a where a.org_name = '检测中心' and a.design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"' ");
  1369. if(listM.size() ==0){
  1370. zra.setBilletid(material_no);
  1371. zra.setPhyfstsresult("1");
  1372. zra.setPhyfstsresult_desc("合格");
  1373. mapper.UpdateJugeResultB(zra);
  1374. }
  1375. if(list1.size() >0){
  1376. for(HashMap list:list1){
  1377. if(list.get("PHYFSTSRESULT").toString().equals("0")){
  1378. continue;
  1379. }
  1380. if(list.get("CIC_IS_LOCK").toString().equals("1")){
  1381. continue;
  1382. }
  1383. if(list.get("PIC_IS_LOCK").toString().equals("1")){
  1384. continue;
  1385. }
  1386. if(list.get("SIC_IS_LOCK").toString().equals("1")){
  1387. continue;
  1388. }
  1389. if(list.get("DIC_IS_LOCK").toString().equals("1")){
  1390. continue;
  1391. }
  1392. if(list.get("R_CIC_IS_LOCK").toString().equals("1")){
  1393. continue;
  1394. }
  1395. if(list.get("SFU_IS_LOCK").toString().equals("1") || list.get("SFD_IS_LOCK").toString().equals("1") || list.get("SFE_IS_LOCK").toString().equals("1")){
  1396. continue;
  1397. }
  1398. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"C")){
  1399. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_cic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  1400. if(list.get("CHEMRESULT").toString().equals("0") && count >0){
  1401. continue;
  1402. }
  1403. }
  1404. if(list.get("R_CHEMRESULT").toString().equals("0")){
  1405. continue;
  1406. }
  1407. if(list.get("SURFACERESULT").toString().equals("0")){
  1408. continue;
  1409. }
  1410. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_pic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  1411. if(list.get("PHYFSTSRESULT").toString().equals("0") && count >0){
  1412. continue;
  1413. }
  1414. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_sic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  1415. if(list.get("SIZERESULT").toString().equals("0") && count > 0){
  1416. continue;
  1417. }
  1418. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_dic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  1419. if(list.get("SPYRESULT").toString().equals("0") && count > 0){
  1420. continue;
  1421. }
  1422. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"C")){
  1423. flag += "1".equals(list.get("CHEMRESULT").toString()) ? 0 : 1;
  1424. }
  1425. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"A")){
  1426. flag += "1".equals(list.get("R_CHEMRESULT").toString()) ? 0 : 1;
  1427. }
  1428. flag += "1".equals(list.get("SURFACERESULT").equals("0")?"1":list.get("SURFACERESULT").toString()) ? 0 : 1;
  1429. flag += "1".equals(list.get("PHYSRESULT").equals("0")?"1":list.get("PHYSRESULT").toString()) ? 0 : 1;
  1430. flag += "1".equals(list.get("SIZERESULT").equals("0")?"1":list.get("SIZERESULT").toString()) ? 0 : 1;
  1431. flag += "1".equals(list.get("SPYRESULT").equals("0")?"1":list.get("SPYRESULT").toString()) ? 0 : 1;
  1432. flag += "1".equals(list.get("PHYFSTSRESULT").equals("0")?"1":list.get("PHYFSTSRESULT").toString())?0:1;
  1433. if(flag == 0){
  1434. //更新库存表综合判定结果
  1435. zra.setBilletid(material_no);
  1436. zra.setFst_judgeresult(flag == 0 ? "1" :"2");
  1437. zra.setFst_judgeresult_desc(flag == 0 ? "合格" : "不合格");
  1438. mapper.UpdateJugeResultB(zra);
  1439. }
  1440. }
  1441. }
  1442. SqlSession.commit();
  1443. }catch(Exception ex){
  1444. cro.setV_errCode(-1);
  1445. cro.setV_errMsg(ex.getMessage());
  1446. SqlSession.rollback();
  1447. }
  1448. SqlSession.close();
  1449. }
  1450. /**
  1451. * 发送成分实绩
  1452. */
  1453. @JSONField(serialzeFeatures= SerializerFeature.DisableCircularReferenceDetect)
  1454. public String SendChemResult(List<QcmJhyInspElements> list)throws Exception{
  1455. JSONObject jsobj1 = new JSONObject();
  1456. JSONArray ttmaps = new JSONArray();
  1457. for(QcmJhyInspElements tfm : list)
  1458. {
  1459. JSONObject jsobj2 = new JSONObject();
  1460. jsobj2.put("CHEM_CODE", tfm.getChem_code());
  1461. jsobj2.put("CHEM_VALUE", tfm.getChem_value());
  1462. jsobj2.put("CHEM_NAME", tfm.getChem_name());
  1463. ttmaps.add(jsobj2);
  1464. }
  1465. jsobj1.put("CHEM", ttmaps);
  1466. jsobj1.put("SMP_NO", list.get(0).getSmp_no()==null?"":list.get(0).getSmp_no());
  1467. jsobj1.put("SPECIMEN_NO", list.get(0).getSpecimen_no()==null?"":list.get(0).getSpecimen_no());
  1468. jsobj1.put("ASSAY_NO", list.get(0).getAssay_no()==null?"":list.get(0).getAssay_no());
  1469. jsobj1.put("HEAT_NO", list.get(0).getHeat_no()==null?"":list.get(0).getHeat_no());
  1470. jsobj1.put("BATCH_NO", list.get(0).getBatch_no()==null?"":list.get(0).getBatch_no());
  1471. jsobj1.put("INSPECTION_LOT", list.get(0).getInspection_lot()==null?"":list.get(0).getInspection_lot());
  1472. jsobj1.put("MATERIAL_NO", list.get(0).getMaterial_no()==null?"":list.get(0).getMaterial_no());
  1473. jsobj1.put("PLINE_CODE", list.get(0).getPline_code()==null?"":list.get(0).getPline_code());
  1474. jsobj1.put("PLINE_NAME",list.get(0).getPline_name()==null?"":list.get(0).getPline_name());
  1475. jsobj1.put("STEEL_CODE",list.get(0).getSteel_code()==null?"":list.get(0).getSteel_code());
  1476. jsobj1.put("STEEL_NAME",list.get(0).getSteel_name()==null?"":list.get(0).getSteel_name());
  1477. jsobj1.put("ASSAY_TYPE",list.get(0).getAssay_type()==null?"":list.get(0).getAssay_type());
  1478. jsobj1.put("COIL_SORT",list.get(0).getCoil_sort()==null?"":list.get(0).getAssay_type());
  1479. jsobj1.put("SOURCE",list.get(0).getSource());
  1480. return jsobj1.toString();
  1481. /*String result = post(jsobj1,"http://172.16.4.250:10089/tcpdi/getMESTestRlt?queueid=SetChemResult");
  1482. if(result.contains("300")){
  1483. throw new Exception ("发送成分失败!");
  1484. }*/
  1485. }
  1486. /**
  1487. * 发送成分实绩
  1488. */
  1489. @JSONField(serialzeFeatures= SerializerFeature.DisableCircularReferenceDetect)
  1490. public String SendPhyResult(List<QcmJhyPhyresult> list)throws Exception{
  1491. JSONObject jsobj2 = new JSONObject();
  1492. JSONArray ttmaps = new JSONArray();
  1493. for(QcmJhyPhyresult tfm : list)
  1494. {
  1495. JSONObject jsobj1 = new JSONObject();
  1496. jsobj1.put("SPECIMEN_NO", tfm.getSpecimen_no()==null?"":tfm.getSpecimen_no());
  1497. jsobj1.put("SEQ",tfm.getSeq()==null?"":tfm.getSeq());
  1498. jsobj1.put("TEST_QTY",tfm.getTest_qty()==null?"":tfm.getTest_qty());
  1499. jsobj1.put("PHY_NAME_S",tfm.getPhy_name_s()==null?"":tfm.getPhy_name_s());
  1500. jsobj1.put("ITEM_NAME_D",tfm.getItem_name_d()==null?"":tfm.getItem_name_d());
  1501. jsobj1.put("PHY_NAME_M",tfm.getPhy_name_m()==null?"":tfm.getPhy_name_m());
  1502. jsobj1.put("PHY_NAME_L",tfm.getPhy_name_l()==null?"":tfm.getPhy_name_l());
  1503. jsobj1.put("PHY_CODE_M",tfm.getPhy_code_m()==null?"":tfm.getPhy_code_m());
  1504. jsobj1.put("PHY_CODE_L",tfm.getPhy_code_l()==null?"":tfm.getPhy_code_l());
  1505. jsobj1.put("ITEM_CODE_D",tfm.getItem_code_d()==null?"":tfm.getItem_code_d());
  1506. jsobj1.put("PHY_CODE_S",tfm.getPhy_code_s()==null?"":tfm.getPhy_code_s());
  1507. jsobj1.put("ITEM_CODE_T",tfm.getItem_code_t()==null?"":tfm.getItem_code_t());
  1508. jsobj1.put("ITEM_CODE_S",tfm.getItem_code_s()==null?"":tfm.getItem_code_s());
  1509. jsobj1.put("ITEM_NAME_T",tfm.getItem_name_t()==null?"":tfm.getItem_name_t());
  1510. jsobj1.put("ITEM_NAME_S",tfm.getItem_name_s()==null?"":tfm.getItem_name_s());
  1511. jsobj1.put("ITEM_CODE_L", tfm.getItem_code_l()==null?"":tfm.getItem_code_l());
  1512. jsobj1.put("ITEM_NAME_L", tfm.getItem_desc_l()==null?"":tfm.getItem_desc_l());
  1513. jsobj1.put("VAL1",tfm.getVal1()==null?"":tfm.getVal1());
  1514. jsobj1.put("VAL2",tfm.getVal2()==null?"":tfm.getVal2());
  1515. jsobj1.put("VAL3",tfm.getVal3()==null?"":tfm.getVal3());
  1516. jsobj1.put("AVG_VAL",tfm.getAvg_val()==null?"":tfm.getAvg_val());
  1517. ttmaps.add(jsobj1);
  1518. }
  1519. return ttmaps.toString();
  1520. /*String result = post(ttmaps.getJSONObject(0),"http://172.16.4.250:10089/tcpdi/getMESTestRlt?queueid=SetPHYResult");
  1521. if(result.contains("300")){
  1522. throw new Exception ("发送材质失败!");
  1523. }*/
  1524. }
  1525. /***
  1526. * 综合判定:
  1527. * @param sum
  1528. * @return
  1529. */
  1530. @SuppressWarnings({ "rawtypes", "unused" })
  1531. public CoreReturnObject LgultimateJudgeAuto(ArrayList<String> material_no_list, String username,String prodline,ArrayList<String> prod_name_list) throws Exception{
  1532. try{
  1533. if(CollectionUtils.isEmpty(material_no_list)) {
  1534. throw new Exception("请选择要判定的产品序号!");
  1535. }
  1536. if(CollectionUtils.isEmpty(prod_name_list)) {
  1537. throw new Exception("请选择要撤销判定的产品名称!");
  1538. }
  1539. if(material_no_list.size() != prod_name_list.size()) {
  1540. throw new Exception("产品序号和产品名称的个数不一致!");
  1541. }
  1542. JSONArray ttmaps = new JSONArray();
  1543. QcmJhyElementsServiceImpl qjes = new QcmJhyElementsServiceImpl();
  1544. for (int i = 0; i < material_no_list.size(); i++) {
  1545. String sql = "select * from qcm_judge_locking where material_no = '"+material_no_list.get(i)+"' and unlock_type_code is null";
  1546. List<QCMJudgeLocking> qjls = mapper.queryQCMJudgeLockings(sql);
  1547. if(qjls.size() > 0){
  1548. throw new Exception("该物料号已被质量异常锁定,请处理后再进行综合判定!");
  1549. }
  1550. int flag = 0;
  1551. List<HashMap> hashmap = (List<HashMap>) getLgRejudgeInfobyMaterial_no("", "", material_no_list.get(i), prodline, prod_name_list.get(i), "J").getResult();
  1552. QcmJudgeUltimate qju=new QcmJudgeUltimate();
  1553. if(hashmap.get(0).get("CHEMRESULT_LK") == null|| hashmap.get(0).get("CHEMRESULT_LK").toString().equals("") || hashmap.get(0).get("FACERESULT") == null || hashmap.get(0).get("FACERESULT").toString().equals("")){
  1554. throw new Exception("未满足综合判定结果!");
  1555. }
  1556. /*if(hashmap.get(0).get("FACERESULT") == null || hashmap.get(0).get("FACERESULT").toString().equals("")){
  1557. //炼钢表面自动判定
  1558. ArrayList<String> param1 = new ArrayList<String>();
  1559. param1.add(material_no_list.get(i));
  1560. param1.add("1");
  1561. param1.add("合格");
  1562. param1.add("512601");
  1563. param1.add("正品");
  1564. param1.add("");
  1565. param1.add(username);
  1566. param1.add("");
  1567. param1.add("");
  1568. param1.add(prodline);
  1569. param1.add(prod_name_list.get(i));
  1570. param1.add("");
  1571. param1.add("");
  1572. param1.add("");
  1573. QcmJudgeSurfaceServiceImpl qjsf = new QcmJudgeSurfaceServiceImpl();
  1574. qjsf.doLgAddFlawAuto(param1);
  1575. }
  1576. hashmap = (List<HashMap>) qjes.getLgRejudgeInfobyMaterial_no("", "", material_no_list.get(i), prodline, prod_name_list.get(i), "J").getResult();*/
  1577. flag += ("1".equals(hashmap.get(0).get("CHEMRESULT_LK").toString()) || "9".equals(hashmap.get(0).get("CHEMRESULT_LK").toString())) ? 0 : 1;
  1578. flag += ("1".equals(hashmap.get(0).get("FACERESULT").toString()) || "9".equals(hashmap.get(0).get("FACERESULT").toString())) ? 0 : 1;
  1579. String Judgeresult = (flag == 0 ? "1" :"2");
  1580. String Judgeresult_desc = (flag == 0 ? "合格" : "不合格");
  1581. if(hashmap.get(0).get("CHEMRESULT_LK").toString().equals("3") || hashmap.get(0).get("FACERESULT").toString().equals("3")){
  1582. Judgeresult ="3";
  1583. Judgeresult_desc = "次品";
  1584. }
  1585. if(hashmap.get(0).get("CHEMRESULT_LK").toString().equals("4") || hashmap.get(0).get("FACERESULT").toString().equals("4")){
  1586. Judgeresult ="4";
  1587. Judgeresult_desc = "废品";
  1588. }
  1589. if(prodline.equals("4001LGX") && (hashmap.get(0).get("DESIGN_KEY") == null || hashmap.get(0).get("DESIGN_KEY").toString().equals("")) && Judgeresult.equals("1")){
  1590. Judgeresult ="7";
  1591. Judgeresult_desc = "合格";
  1592. }
  1593. if(prodline.equals("4001LG0") && (hashmap.get(0).get("DESIGN_KEY") == null || hashmap.get(0).get("DESIGN_KEY").toString().equals("")) && Judgeresult.equals("1")){
  1594. Judgeresult ="9";
  1595. Judgeresult_desc = "合格";
  1596. }
  1597. if(prodline.equals("4001LGX")){
  1598. if(hashmap.get(0).get("CHEMRESULT_LK").toString().equals("2")){
  1599. Judgeresult ="5";
  1600. Judgeresult_desc = "待判品";
  1601. }else if(hashmap.get(0).get("FACERESULT").toString().equals("2")){
  1602. Judgeresult ="6";
  1603. Judgeresult_desc = "待修磨品";
  1604. }
  1605. }
  1606. List<QCMJudgeLocking> qj = mapper.queryQCMJudgeLockings("select * from qcm_judge_locking where lock_id = '"+hashmap.get(0).get("CHEMJUDGEID").toString()+"' and unlock_type_code is null");
  1607. if(qj.size() > 0){
  1608. throw new Exception("该检验结果已生成异常材处置,请完成异常材处置!");
  1609. }
  1610. qj = mapper.queryQCMJudgeLockings("select * from qcm_judge_locking where lock_id = '"+hashmap.get(0).get("FACECHECKID").toString()+"' and unlock_type_code is null");
  1611. if(qj.size() > 0){
  1612. throw new Exception("该检验结果已生成异常材处置,请完成异常材处置!");
  1613. }
  1614. //获取判定记录号当天的最大值
  1615. Date now = new Date();
  1616. String opr_time = new SimpleDateFormat("yyyyMMddHHmmss").format(now); //操作时间
  1617. SimpleDateFormat sdf=new SimpleDateFormat("yyMMdd");
  1618. String date=sdf.format(now);
  1619. int count=0;
  1620. String c = "";
  1621. if(prodline.equals("4001LG0")){
  1622. c="ZL";
  1623. }else{
  1624. c="ZD";
  1625. }
  1626. sql ="select * from (select * from qcm_judge_ultimate where UTM_ID like '"+c+date+"%' order by UTM_ID desc) where rownum <= 1";
  1627. List<QcmJudgeUltimate> listUl=mapper.QcmJudgeUltimate(sql);
  1628. if (listUl!=null&&listUl.size()>0) {
  1629. String s=listUl.get(0).getUtm_id();
  1630. count=Integer.parseInt(s.substring(s.length()-4,s.length()));
  1631. }
  1632. count++;
  1633. String utm_id=c+sdf.format(now)+String.format("%04d",count);
  1634. qju.setUtm_id(utm_id);
  1635. //插入综合判定记录表
  1636. qju.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  1637. qju.setHeat_no(hashmap.get(0).get("HEAT_NO")==null?"":hashmap.get(0).get("HEAT_NO").toString());
  1638. qju.setBatch_no(material_no_list.get(i));
  1639. qju.setBoard_no(material_no_list.get(i));
  1640. qju.setInspection_lot("");
  1641. qju.setMaterial_no(material_no_list.get(i));
  1642. qju.setUtm_id(utm_id);
  1643. qju.setUtm_memo(hashmap.get(0).get("REMARK")==null?"":hashmap.get(0).get("REMARK").toString());
  1644. qju.setUtm_result_code(Judgeresult.equals("7")?"1":Judgeresult);
  1645. qju.setUtm_result_desc(Judgeresult_desc);
  1646. if(Judgeresult.equals("9")){
  1647. qju.setUtm_result_code("1");
  1648. qju.setUtm_result_desc("订单外合格");
  1649. }
  1650. qju.setR_cic_id(hashmap.get(0).get("CHEMJUDGEID").toString());
  1651. qju.setR_cic_result_code(hashmap.get(0).get("CHEMRESULT_LK").toString());
  1652. qju.setR_cic_result_desc(hashmap.get(0).get("CHEMRESULT_LK").equals("1")?"合格":(hashmap.get(0).get("CHEMRESULT_LK").equals("2")?"不合格":(hashmap.get(0).get("CHEMRESULT_LK").equals("3")?"判次":(hashmap.get(0).get("CHEMRESULT_LK").equals("9")?"订单外合格":"判废"))));
  1653. qju.setSfd_id(hashmap.get(0).get("FACECHECKID").toString());
  1654. qju.setSfd_result_code(hashmap.get(0).get("FACERESULT").toString());
  1655. qju.setSfd_result_desc(hashmap.get(0).get("FACERESULT").equals("1")?"合格":(hashmap.get(0).get("FACERESULT").equals("2")?"不合格":(hashmap.get(0).get("FACERESULT").equals("3")?"判次":(hashmap.get(0).get("FACERESULT").equals("9")?"订单外合格":"判废"))));
  1656. qju.setSfe_id(hashmap.get(0).get("FACECHECKID").toString());
  1657. qju.setSfe_result_code(hashmap.get(0).get("FACERESULT").toString());
  1658. qju.setSfe_result_desc(hashmap.get(0).get("FACERESULT").equals("1")?"合格":(hashmap.get(0).get("FACERESULT").equals("2")?"不合格":(hashmap.get(0).get("FACERESULT").equals("3")?"判次":(hashmap.get(0).get("FACERESULT").equals("9")?"订单外合格":"判废"))));
  1659. qju.setSfu_id(hashmap.get(0).get("FACECHECKID").toString());
  1660. qju.setSfu_result_code(hashmap.get(0).get("FACERESULT").toString());
  1661. qju.setSfu_result_desc(hashmap.get(0).get("FACERESULT").equals("1")?"合格":(hashmap.get(0).get("FACERESULT").equals("2")?"不合格":(hashmap.get(0).get("FACERESULT").equals("3")?"判次":(hashmap.get(0).get("FACERESULT").equals("9")?"订单外合格":"判废"))));
  1662. qju.setPsc("");
  1663. qju.setPsc_desc("");
  1664. qju.setProd_code("");
  1665. qju.setCheck_remarks(hashmap.get(0).get("SPOT_CHECK_REMARK")==null?"":hashmap.get(0).get("SPOT_CHECK_REMARK").toString());
  1666. qju.setFix_remarks(hashmap.get(0).get("COPING_REMARK")==null?"":hashmap.get(0).get("COPING_REMARK").toString());
  1667. qju.setProd_name(hashmap.get(0).get("PROD_NAME")==null?"":hashmap.get(0).get("PROD_NAME").toString());
  1668. qju.setSteel_code(hashmap.get(0).get("GRADE_NAME").toString());
  1669. qju.setSteel_name(hashmap.get(0).get("GRADE_NAME").toString());
  1670. qju.setStd_code(hashmap.get(0).get("STD_NAME")==null?"":hashmap.get(0).get("STD_NAME").toString());
  1671. qju.setStd_name(hashmap.get(0).get("STD_NAME")==null?"":hashmap.get(0).get("STD_NAME").toString());
  1672. qju.setJudge_name(username);
  1673. qju.setJudge_time(new Date());
  1674. qju.setPline_code(hashmap.get(0).get("PLINE_CODE")==null?"":hashmap.get(0).get("PLINE_CODE").toString());
  1675. qju.setPline_name(hashmap.get(0).get("PLINE_NAME")==null?"":hashmap.get(0).get("PLINE_NAME").toString());
  1676. mapper.insertQcmJudgeUltimate(qju);
  1677. QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
  1678. qjog.setOperate_name(username);
  1679. qjog.setOperate_type("炼钢综合判定");
  1680. qjog.setParams(material_no_list.get(i));
  1681. qjog.setProd_line(hashmap.get(0).get("PLINE_CODE")==null?"":hashmap.get(0).get("PLINE_CODE").toString());
  1682. mapper.insertQcmJudgeOperateLog(qjog);
  1683. String is_fx = "1";
  1684. if(prodline.equals("4001LGX")){
  1685. is_fx = "0";
  1686. }
  1687. //调用综合判定接口
  1688. JSONObject jsobj1 = new JSONObject();
  1689. jsobj1.put("CHEMRESULT_LK", "");
  1690. jsobj1.put("FACERESULT","");
  1691. jsobj1.put("COMPREHENSIVERESULT",Judgeresult.equals("5")?"8":(Judgeresult.equals("6")?"7":(Judgeresult.equals("7")?"6":Judgeresult)));
  1692. jsobj1.put("CHEMJUDGEID","");
  1693. jsobj1.put("FACECHECKID","");
  1694. jsobj1.put("COMPREHENSIVEID",utm_id);
  1695. jsobj1.put("JUDGE_TYPE","J");
  1696. jsobj1.put("PROD_LINE",prodline);
  1697. jsobj1.put("ISJUDGE","1");
  1698. jsobj1.put("PROD_TYPE",prod_name_list.get(i));
  1699. jsobj1.put("SLAB_NO",material_no_list.get(i));
  1700. jsobj1.put("CHECKNO","");
  1701. jsobj1.put("OPTMAN", username);
  1702. jsobj1.put("ISFX", is_fx);
  1703. jsobj1.put("CHEMRESULT_FX", "");
  1704. ttmaps.add(jsobj1);
  1705. }
  1706. String url = "http://10.70.0.237:9000/LgdoChemJudgeService?wsdl";
  1707. String result = qjes.callWebserviceASMX(url,"ChemJudge",JSON.toJSONString(ttmaps));
  1708. JSONObject jo = JSONObject.parseObject(result);
  1709. if(jo.get("code").toString().equals("1")){
  1710. throw new Exception("综合判定失败!");
  1711. }
  1712. SqlSession.commit();
  1713. }catch(Exception ex){
  1714. cro.setV_errCode(-1);
  1715. cro.setV_errMsg(ex.getMessage());
  1716. SqlSession.rollback();
  1717. logger.info(new Date().toString() + " QCM.QCM03.QCM0302.QcmJudgePhysicalServiceImpl.LgultimateJudgeAuto:【" + material_no_list.toString() + "," +username + "," +prodline + "," +prod_name_list.toString() + "】" + ex);
  1718. }
  1719. SqlSession.close();
  1720. return cro;
  1721. }
  1722. /***
  1723. * 综合判定:
  1724. * @param sum
  1725. * @return
  1726. */
  1727. @SuppressWarnings({ "rawtypes", "unused" })
  1728. public void LgultimateJudgeAutoBySystem(String material_no, String username,String prodline,String prod_name) throws Exception{
  1729. try{
  1730. int flag = 0;
  1731. QcmJhyElementsServiceImpl qjes = new QcmJhyElementsServiceImpl();
  1732. List<HashMap> hashmap = (List<HashMap>) getLgRejudgeInfobyMaterial_no("", "", material_no, prodline, prod_name, "J").getResult();
  1733. if(hashmap.size() == 0){
  1734. throw new Exception("未找到库存信息!");
  1735. }
  1736. QcmJudgeUltimate qju=new QcmJudgeUltimate();
  1737. if(hashmap.get(0).get("CHEMRESULT_LK").toString().equals("0") || hashmap.get(0).get("FACERESULT").toString().equals("0") ||hashmap.get(0).get("CHEMRESULT_LK").toString().equals("") || hashmap.get(0).get("FACERESULT").toString().equals("")){
  1738. throw new Exception("未满足综合判定结果!");
  1739. }
  1740. if(hashmap.get(0).get("FACERESULT") == null || hashmap.get(0).get("CHEMRESULT_LK") == null||hashmap.get(0).get("FACERESULT").toString() == "" || hashmap.get(0).get("CHEMRESULT_LK").toString() == ""){
  1741. throw new Exception("未满足综合判定结果!");
  1742. }
  1743. flag += ("1".equals(hashmap.get(0).get("CHEMRESULT_LK").toString()) || "9".equals(hashmap.get(0).get("CHEMRESULT_LK").toString())) ? 0 : 1;
  1744. flag += ("1".equals(hashmap.get(0).get("FACERESULT").toString()) || "9".equals(hashmap.get(0).get("FACERESULT").toString())) ? 0 : 1;
  1745. String Judgeresult = (flag == 0 ? "1" :"2");
  1746. String Judgeresult_desc = (flag == 0 ? "合格" : "不合格");
  1747. if(hashmap.get(0).get("CHEMRESULT_LK").toString().equals("3") || hashmap.get(0).get("FACERESULT").toString().equals("3")){
  1748. Judgeresult ="3";
  1749. Judgeresult_desc = "次品";
  1750. }
  1751. if(hashmap.get(0).get("CHEMRESULT_LK").toString().equals("4") || hashmap.get(0).get("FACERESULT").toString().equals("4")){
  1752. Judgeresult ="4";
  1753. Judgeresult_desc = "废品";
  1754. }
  1755. if(prodline.equals("4001LGX") && (hashmap.get(0).get("DESIGN_KEY") == null || hashmap.get(0).get("DESIGN_KEY").toString().equals("")) && Judgeresult.equals("1")){
  1756. Judgeresult ="7";
  1757. Judgeresult_desc = "合格";
  1758. }
  1759. if(prodline.equals("4001LG0") && (hashmap.get(0).get("DESIGN_KEY") == null || hashmap.get(0).get("DESIGN_KEY").toString().equals("")) && Judgeresult.equals("1")){
  1760. Judgeresult ="9";
  1761. Judgeresult_desc = "合格";
  1762. }
  1763. if(prodline.equals("4001LGX")){
  1764. if(hashmap.get(0).get("CHEMRESULT_LK").toString().equals("2")){
  1765. Judgeresult ="5";
  1766. Judgeresult_desc = "待判品";
  1767. }else if(hashmap.get(0).get("FACERESULT").toString().equals("2")){
  1768. Judgeresult ="6";
  1769. Judgeresult_desc = "待修磨品";
  1770. }
  1771. }
  1772. List<QCMJudgeLocking> qj = mapper.queryQCMJudgeLockings("select * from qcm_judge_locking where lock_id = '"+hashmap.get(0).get("CHEMJUDGEID").toString()+"' and unlock_type_code is null");
  1773. if(qj.size() > 0){
  1774. throw new Exception("该检验结果已生成异常材处置,请完成异常材处置!");
  1775. }
  1776. qj = mapper.queryQCMJudgeLockings("select * from qcm_judge_locking where lock_id = '"+hashmap.get(0).get("FACECHECKID").toString()+"' and unlock_type_code is null");
  1777. if(qj.size() > 0){
  1778. throw new Exception("该检验结果已生成异常材处置,请完成异常材处置!");
  1779. }
  1780. qj = mapper.queryQCMJudgeLockings("select * from qcm_judge_locking where material_no = '"+material_no+"' and unlock_type_code is null");
  1781. if(qj.size() > 0){
  1782. throw new Exception("该检验结果已生成异常材处置,请完成异常材处置!");
  1783. }
  1784. //获取判定记录号当天的最大值
  1785. Date now = new Date();
  1786. String opr_time = new SimpleDateFormat("yyyyMMddHHmmss").format(now); //操作时间
  1787. SimpleDateFormat sdf=new SimpleDateFormat("yyMMdd");
  1788. String date=sdf.format(now);
  1789. int count=0;
  1790. String c = "";
  1791. if(prodline.equals("4001LG0")){
  1792. c="ZL";
  1793. }else{
  1794. c="ZD";
  1795. }
  1796. String sql ="select * from (select * from qcm_judge_ultimate where UTM_ID like '"+c+date+"%' order by UTM_ID desc) where rownum <= 1";
  1797. List<QcmJudgeUltimate> listUl=mapper.QcmJudgeUltimate(sql);
  1798. if (listUl!=null&&listUl.size()>0) {
  1799. String s=listUl.get(0).getUtm_id();
  1800. count=Integer.parseInt(s.substring(s.length()-4,s.length()));
  1801. }
  1802. count++;
  1803. String utm_id=c+sdf.format(now)+String.format("%04d",count);
  1804. qju.setUtm_id(utm_id);
  1805. //调用综合判定接口
  1806. String is_fx = "1";
  1807. if(prodline.equals("4001LGX")){
  1808. is_fx = "0";
  1809. }
  1810. //插入综合判定记录表
  1811. qju.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  1812. qju.setHeat_no(hashmap.get(0).get("HEAT_NO")==null?"":hashmap.get(0).get("HEAT_NO").toString());
  1813. qju.setBatch_no(material_no);
  1814. qju.setBoard_no(material_no);
  1815. qju.setInspection_lot("");
  1816. qju.setMaterial_no(material_no);
  1817. qju.setUtm_id(utm_id);
  1818. qju.setUtm_memo(hashmap.get(0).get("REMARK")==null?"":hashmap.get(0).get("REMARK").toString());
  1819. qju.setUtm_result_code(Judgeresult.equals("7")?"1":Judgeresult);
  1820. qju.setUtm_result_desc(Judgeresult_desc);
  1821. if(Judgeresult.equals("9")){
  1822. qju.setUtm_result_code("1");
  1823. qju.setUtm_result_desc("订单外合格");
  1824. }
  1825. qju.setR_cic_id(hashmap.get(0).get("CHEMJUDGEID").toString());
  1826. qju.setR_cic_result_code(hashmap.get(0).get("CHEMRESULT_LK").toString());
  1827. qju.setR_cic_result_desc(hashmap.get(0).get("CHEMRESULT_LK").equals("1")?"合格":(hashmap.get(0).get("CHEMRESULT_LK").equals("2")?"不合格":(hashmap.get(0).get("CHEMRESULT_LK").equals("3")?"判次":(hashmap.get(0).get("CHEMRESULT_LK").equals("9")?"订单外合格":"判废"))));
  1828. qju.setSfd_id(hashmap.get(0).get("FACECHECKID").toString());
  1829. qju.setSfd_result_code(hashmap.get(0).get("FACERESULT").toString());
  1830. qju.setSfd_result_desc(hashmap.get(0).get("FACERESULT").equals("1")?"合格":(hashmap.get(0).get("FACERESULT").equals("2")?"不合格":(hashmap.get(0).get("FACERESULT").equals("3")?"判次":(hashmap.get(0).get("FACERESULT").equals("9")?"订单外合格":"判废"))));
  1831. qju.setSfe_id(hashmap.get(0).get("FACECHECKID").toString());
  1832. qju.setSfe_result_code(hashmap.get(0).get("FACERESULT").toString());
  1833. qju.setSfe_result_desc(hashmap.get(0).get("FACERESULT").equals("1")?"合格":(hashmap.get(0).get("FACERESULT").equals("2")?"不合格":(hashmap.get(0).get("FACERESULT").equals("3")?"判次":(hashmap.get(0).get("FACERESULT").equals("9")?"订单外合格":"判废"))));
  1834. qju.setSfu_id(hashmap.get(0).get("FACECHECKID").toString());
  1835. qju.setSfu_result_code(hashmap.get(0).get("FACERESULT").toString());
  1836. qju.setSfu_result_desc(hashmap.get(0).get("FACERESULT").equals("1")?"合格":(hashmap.get(0).get("FACERESULT").equals("2")?"不合格":(hashmap.get(0).get("FACERESULT").equals("3")?"判次":(hashmap.get(0).get("FACERESULT").equals("9")?"订单外合格":"判废"))));
  1837. qju.setPsc("");
  1838. qju.setPsc_desc("");
  1839. qju.setProd_code("");
  1840. qju.setCheck_remarks(hashmap.get(0).get("SPOT_CHECK_REMARK")==null?"":hashmap.get(0).get("SPOT_CHECK_REMARK").toString());
  1841. qju.setFix_remarks(hashmap.get(0).get("COPING_REMARK")==null?"":hashmap.get(0).get("COPING_REMARK").toString());
  1842. qju.setProd_name(hashmap.get(0).get("PROD_NAME")==null?"":hashmap.get(0).get("PROD_NAME").toString());
  1843. qju.setSteel_code(hashmap.get(0).get("GRADE_NAME").toString());
  1844. qju.setSteel_name(hashmap.get(0).get("GRADE_NAME").toString());
  1845. qju.setStd_code(hashmap.get(0).get("STD_NAME")==null?"":hashmap.get(0).get("STD_NAME").toString());
  1846. qju.setStd_name(hashmap.get(0).get("STD_NAME")==null?"":hashmap.get(0).get("STD_NAME").toString());
  1847. qju.setJudge_name(username);
  1848. qju.setJudge_time(new Date());
  1849. qju.setPline_code(hashmap.get(0).get("PLINE_CODE")==null?"":hashmap.get(0).get("PLINE_CODE").toString());
  1850. qju.setPline_name(hashmap.get(0).get("PLINE_NAME")==null?"":hashmap.get(0).get("PLINE_NAME").toString());
  1851. mapper.insertQcmJudgeUltimate(qju);
  1852. JSONObject jsobj2 = new JSONObject();
  1853. JSONArray ttmaps = new JSONArray();
  1854. JSONObject jsobj1 = new JSONObject();
  1855. jsobj1.put("CHEMRESULT_LK", "");
  1856. jsobj1.put("FACERESULT","");
  1857. jsobj1.put("COMPREHENSIVERESULT",Judgeresult.equals("5")?"8":(Judgeresult.equals("6")?"7":(Judgeresult.equals("7")?"6":Judgeresult)));
  1858. jsobj1.put("CHEMJUDGEID","");
  1859. jsobj1.put("FACECHECKID","");
  1860. jsobj1.put("COMPREHENSIVEID",utm_id);
  1861. jsobj1.put("JUDGE_TYPE","J");
  1862. jsobj1.put("PROD_LINE",prodline);
  1863. jsobj1.put("ISJUDGE","1");
  1864. jsobj1.put("PROD_TYPE",prod_name);
  1865. jsobj1.put("SLAB_NO",material_no);
  1866. jsobj1.put("CHECKNO","");
  1867. jsobj1.put("OPTMAN", username);
  1868. jsobj1.put("ISFX", is_fx);
  1869. jsobj1.put("CHEMRESULT_FX", "");
  1870. ttmaps.add(jsobj1);
  1871. String url = "http://10.70.0.237:9000/LgdoChemJudgeService?wsdl";
  1872. String result = qjes.callWebserviceASMX(url,"ChemJudge",JSON.toJSONString(ttmaps));
  1873. JSONObject jo = JSONObject.parseObject(result);
  1874. if(jo.get("code").toString().equals("1")){
  1875. throw new Exception("综合判定失败!");
  1876. }
  1877. //judge_call(hashmap.get(0).get("STD_NAME"),hashmap.get(0).get("PROD_NAME"),hashmap.get(0).get("STD_NAME"),hashmap.get(0).get("PROD_NAME"),)
  1878. SqlSession.commit();
  1879. }catch(Exception ex){
  1880. cro.setV_errCode(-1);
  1881. cro.setV_errMsg(ex.getMessage());
  1882. SqlSession.rollback();
  1883. }
  1884. SqlSession.close();
  1885. }
  1886. /***
  1887. * 综合判定:强制合格、判次、判废
  1888. * 0625增加finally
  1889. * @param sum
  1890. * @return
  1891. */
  1892. @SuppressWarnings({ "rawtypes", "unused" })
  1893. public CoreReturnObject ultimateJudgeAutoByHuman(String material_no, String username,String memo,String judge_status) throws Exception{
  1894. try{
  1895. int count = 0;
  1896. List<HashMap> hashmap = doQueryMaterialInfoZhb(material_no);
  1897. if(hashmap.size() == 0){
  1898. hashmap = doQueryMaterialInfoBX(material_no);
  1899. }
  1900. if(hashmap.size() == 0){
  1901. hashmap = doQueryMaterialInfoJ(material_no);
  1902. }
  1903. String sql = "select * from zj_result_all@xgcx where BILLETID = '"+material_no+"'";
  1904. int flag = 0;
  1905. List<HashMap> list1 = mapper.query(sql);
  1906. sql = "select * from QCM_JUDGE_COIL_RESULT where coil_no = '"+material_no+"'";
  1907. List<HashMap> list2 = mapper.query(sql);
  1908. if(list1.size() >0 || list2.size() >0){
  1909. if(list1.size()>0){
  1910. for(HashMap list:list1){
  1911. if(!list.get("JUDGERESULT").toString().equals("0")){
  1912. throw new Exception("该物料做了综合判定,不能再次判定!");
  1913. }
  1914. if(list.get("CIC_IS_LOCK").toString().equals("1")){
  1915. throw new Exception("成分已锁定,不能进行综合判定!");
  1916. }
  1917. if(list.get("PIC_IS_LOCK").toString().equals("1")){
  1918. throw new Exception("材质已锁定,不能进行综合判定!");
  1919. }
  1920. if(list.get("R_CIC_IS_LOCK").toString().equals("1")){
  1921. throw new Exception("成分已锁定,不能进行综合判定!");
  1922. }
  1923. if(list.get("SIC_IS_LOCK").toString().equals("1")){
  1924. throw new Exception("公差已锁定,不能进行综合判定!");
  1925. }
  1926. if(list.get("DIC_IS_LOCK").toString().equals("1")){
  1927. throw new Exception("探伤已锁定,不能进行综合判定!");
  1928. }
  1929. if(list.get("SFU_IS_LOCK").toString().equals("1") || list.get("SFD_IS_LOCK").toString().equals("1") || list.get("SFE_IS_LOCK").toString().equals("1")){
  1930. throw new Exception("表面已锁定,不能进行综合判定!");
  1931. }
  1932. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"C")){
  1933. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_cic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  1934. if(list.get("CHEMRESULT").toString().equals("0") && count >0){
  1935. throw new Exception("该物料未做成品成分判定,不能进行综合判定!");
  1936. }
  1937. }
  1938. if(list.get("R_CHEMRESULT").toString().equals("0")){
  1939. throw new Exception("该物料未做熔炼成分判定,不能进行综合判定!");
  1940. }
  1941. /*if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"A")){
  1942. if(list.get("R_CHEMRESULT").toString().equals("0")){
  1943. throw new Exception("该物料未做熔炼成分判定,不能取进行综合判定!");
  1944. }
  1945. }*/
  1946. if(list.get("SURFACERESULT").toString().equals("0")){
  1947. throw new Exception("该物料未做表面检验,不能进行综合判定!");
  1948. }
  1949. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_pic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  1950. if(list.get("PHYSRESULT").toString().equals("0") && count > 0){
  1951. throw new Exception("该物料未做材质判定,不能进行综合判定!");
  1952. }
  1953. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from sel_pactdetail_new@xgcx where orderno = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"' and SAMPLINGREQUESTTIME is NOT null ").get(0).get("COUNT").toString());
  1954. if(list.get("PHYSRESULT").toString().equals("0") && count > 0){
  1955. throw new Exception("该物料未做材质判定,不能进行综合判定!");
  1956. }
  1957. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_sic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  1958. if(list.get("SIZERESULT").toString().equals("0") && count > 0){
  1959. throw new Exception("该物料未做公差检验,不能进行综合判定!");
  1960. }
  1961. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_dic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  1962. if(list.get("SPYRESULT").toString().equals("0") && count > 0){
  1963. throw new Exception("该物料未做探伤检验,不能进行综合判定!");
  1964. }
  1965. QcmJudgeUltimate qju=new QcmJudgeUltimate();
  1966. //获取判定记录号当天的最大值
  1967. Date now = new Date();
  1968. String opr_time = new SimpleDateFormat("yyyyMMddHHmmss").format(now); //操作时间
  1969. SimpleDateFormat sdf=new SimpleDateFormat("yyMMdd");
  1970. String date=sdf.format(now);
  1971. count=0;
  1972. String type1 = "";
  1973. if(material_no.startsWith("Z")||material_no.startsWith("H")){
  1974. type1 = "ZB";
  1975. }else{
  1976. type1 = "ZX";
  1977. }
  1978. sql ="select * from (select * from qcm_judge_ultimate where UTM_ID like '"+type1+date+"%' order by UTM_ID desc) where rownum <= 1";
  1979. List<QcmJudgeUltimate> listUl=mapper.QcmJudgeUltimate(sql);
  1980. if (listUl!=null&&listUl.size()>0) {
  1981. String s=listUl.get(0).getUtm_id();
  1982. count=Integer.parseInt(s.substring(s.length()-4,s.length()));
  1983. }
  1984. count++;
  1985. String utm_id=type1+sdf.format(now)+String.format("%04d",count);
  1986. qju.setUtm_id(utm_id);
  1987. //更新库存表综合判定结果
  1988. ZjResultAll zra = new ZjResultAll();
  1989. zra.setBilletid(material_no);
  1990. zra.setJudgeid(utm_id);
  1991. zra.setJudgeresult(judge_status);
  1992. zra.setJudgeresult_desc(judge_status.equals("1")?"合格":(judge_status.equals("3")?"次品":(judge_status.equals("4")?"废品":"")));
  1993. mapper.UpdateJugeResultB(zra);
  1994. //插入综合判定记录表
  1995. qju.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  1996. qju.setHeat_no(hashmap.get(0).get("HEAT_NO")==null?"":hashmap.get(0).get("HEAT_NO").toString());
  1997. qju.setBatch_no(hashmap.get(0).get("BATCHNO")==null?"":hashmap.get(0).get("BATCHNO").toString());
  1998. qju.setBoard_no(hashmap.get(0).get("BOARD_NO")==null?"":hashmap.get(0).get("BOARD_NO").toString());
  1999. qju.setInspection_lot(hashmap.get(0).get("INSPECTION_LOT") == null ?"":hashmap.get(0).get("INSPECTION_LOT").toString());
  2000. qju.setMaterial_no(material_no);
  2001. qju.setUtm_id(utm_id);
  2002. qju.setUtm_memo(memo);
  2003. qju.setUtm_result_code(zra.getJudgeresult());
  2004. qju.setUtm_result_desc(zra.getJudgeresult_desc());
  2005. qju.setCic_id(list1.get(0).get("CHEMID") == null?"":list1.get(0).get("CHEMID").toString());
  2006. qju.setCic_result_code(list1.get(0).get("CHEMRESULT")==null?"":list1.get(0).get("CHEMRESULT").toString());
  2007. qju.setCic_result_desc(list1.get(0).get("CHEMRESULT_DESC")==null?"":list1.get(0).get("CHEMRESULT_DESC").toString());
  2008. qju.setR_cic_id(list1.get(0).get("R_CHEMID") == null?"":list1.get(0).get("R_CHEMID").toString());
  2009. qju.setR_cic_result_code(list1.get(0).get("R_CHEMRESULT")==null?"":list1.get(0).get("R_CHEMRESULT").toString());
  2010. qju.setR_cic_result_desc(list1.get(0).get("R_CHEMRESULT_DESC")==null?"":list1.get(0).get("R_CHEMRESULT_DESC").toString());
  2011. qju.setPic_id(list1.get(0).get("PHYSID") == null?"":list1.get(0).get("PHYSID").toString());
  2012. qju.setPic_result_code(list1.get(0).get("PHYSRESULT")==null?"":list1.get(0).get("PHYSRESULT").toString());
  2013. qju.setPic_result_desc(list1.get(0).get("PHYSRESULT_DESC")==null?"":list1.get(0).get("PHYSRESULT_DESC").toString());
  2014. qju.setSic_id(list1.get(0).get("SIZEID") == null?"":list1.get(0).get("SIZEID").toString());
  2015. qju.setSic_result_code(list1.get(0).get("SIZERESULT")==null?"":list1.get(0).get("SIZERESULT").toString());
  2016. qju.setSic_result_desc(list1.get(0).get("SIZERESULT_DESC")==null?"":list1.get(0).get("SIZERESULT_DESC").toString());
  2017. qju.setDic_id(list1.get(0).get("SPYID")==null?"":list1.get(0).get("SPYID").toString());
  2018. qju.setDic_result_code(list1.get(0).get("SPYRESULT")==null?"":list1.get(0).get("SPYRESULT").toString());
  2019. qju.setDic_result_desc(list1.get(0).get("SPYRESULT_DESC")==null?"":list1.get(0).get("SPYRESULT_DESC").toString());
  2020. qju.setSfd_id(list1.get(0).get("SURFACEID")==null?"":list1.get(0).get("SURFACEID").toString());
  2021. qju.setSfd_result_code(list1.get(0).get("UD_SURFACE_RESULT")==null?"":list1.get(0).get("UD_SURFACE_RESULT").toString());
  2022. qju.setSfd_result_desc(list1.get(0).get("UD_SURFACE_RESULT_DESC")==null?"":list1.get(0).get("UD_SURFACE_RESULT_DESC").toString());
  2023. qju.setSfu_id(list1.get(0).get("SURFACEID")==null?"":list1.get(0).get("SURFACEID").toString());
  2024. qju.setSfu_result_code(list1.get(0).get("UP_SURFACE_RESULT")==null?"":list1.get(0).get("UP_SURFACE_RESULT").toString());
  2025. qju.setSfu_result_desc(list1.get(0).get("UP_SURFACE_RESULT_DESC")==null?"":list1.get(0).get("UP_SURFACE_RESULT_DESC").toString());
  2026. qju.setSfe_id(list1.get(0).get("SURFACEID")==null?"":list1.get(0).get("SURFACEID").toString());
  2027. qju.setSfe_result_code(list1.get(0).get("MARGINAL_RESULT")==null?"":list1.get(0).get("MARGINAL_RESULT").toString());
  2028. qju.setSfe_result_desc(list1.get(0).get("MARGINAL_RESULT_DESC")==null?"":list1.get(0).get("MARGINAL_RESULT_DESC").toString());
  2029. qju.setMst_id(list1.get(0).get("SURFACEID")==null?"":list1.get(0).get("SURFACEID").toString());
  2030. qju.setMst_result_code(list1.get(0).get("SURFACERESULT")==null?"":list1.get(0).get("SURFACERESULT").toString());
  2031. qju.setMst_result_desc(list1.get(0).get("SURFACERESULT_DESC")==null?"":list1.get(0).get("SURFACERESULT_DESC").toString());
  2032. qju.setFst_id(list1.get(0).get("PHYFSTSID")==null?"":list1.get(0).get("PHYFSTSID").toString());
  2033. qju.setFst_result_code(list1.get(0).get("PHYFSTSRESULT")==null?"":list1.get(0).get("PHYFSTSRESULT").toString());
  2034. qju.setFst_result_desc(list1.get(0).get("PHYFSTSRESULT_DESC")==null?"":list1.get(0).get("PHYFSTSRESULT_DESC").toString());
  2035. qju.setPsc(hashmap.get(0).get("PSC")==null?"":hashmap.get(0).get("PSC").toString());
  2036. qju.setPsc_desc(hashmap.get(0).get("PSC_DESC")==null?"":hashmap.get(0).get("PSC_DESC").toString());
  2037. qju.setProd_code(hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString());
  2038. qju.setProd_name(hashmap.get(0).get("PROD_NAME")==null?"":hashmap.get(0).get("PROD_NAME").toString());
  2039. qju.setSteel_code(hashmap.get(0).get("STEEL_CODE")==null?"":hashmap.get(0).get("STEEL_CODE").toString());
  2040. qju.setSteel_name(hashmap.get(0).get("STEEL_NAME").toString());
  2041. qju.setStd_code(hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString());
  2042. qju.setStd_name(hashmap.get(0).get("STD_NAME")==null?"":hashmap.get(0).get("STD_NAME").toString());
  2043. qju.setJudge_name(username);
  2044. qju.setJudge_time(new Date());
  2045. qju.setPline_code(hashmap.get(0).get("PLINE_CODE")==null?"":hashmap.get(0).get("PLINE_CODE").toString());
  2046. qju.setPline_name(hashmap.get(0).get("PLINE_NAME")==null?"":hashmap.get(0).get("PLINE_NAME").toString());
  2047. mapper.insertQcmJudgeUltimate(qju);
  2048. //调用一体化接口
  2049. //发送熔炼成分实绩
  2050. if(zra.getJudgeresult().equals("1")){
  2051. List<QcmJhyInspElements> chemresult1 = mapper.queryQcmJhyInspElements("select * from qcm_jhy_insp_elements t where t.assay_type = 'L' and t.heat_no = '"+hashmap.get(0).get("HEAT_NO").toString()+"'");
  2052. if(chemresult1.size() > 0){
  2053. String result = SendChemResult(chemresult1);
  2054. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  2055. qjus.setMaterial_no(material_no);
  2056. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  2057. //qjus.setJson_text(result);
  2058. qjus.setResult_type("C");
  2059. qjus.setJudge_id(list1.get(0).get("R_CHEMID") == null?"":list1.get(0).get("R_CHEMID").toString());
  2060. qjus.setCreate_name("system");
  2061. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  2062. }
  2063. //发送成品成分实绩
  2064. List<QcmJhyInspElements> chemresult2 = mapper.queryQcmJhyInspElements("select * from qcm_jhy_insp_elements t where t.assay_type = 'P' and t.INSPECTION_LOT = '"+hashmap.get(0).get("INSPECTION_LOT").toString()+"'");
  2065. if(chemresult2.size() > 0){
  2066. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  2067. String result = SendChemResult(chemresult2);
  2068. qjus.setMaterial_no(material_no);
  2069. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  2070. //qjus.setJson_text(result);
  2071. qjus.setResult_type("C");
  2072. qjus.setJudge_id(list1.get(0).get("CHEMID") == null?"":list1.get(0).get("CHEMID").toString());
  2073. qjus.setCreate_name("system");
  2074. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  2075. }
  2076. //发送材质实绩
  2077. List<QcmJhyPhyresult> phyresult1 = mapper.queryQcmJhyPhyresult("select * from qcm_jhy_insp_physics t where t.SPECIMEN_NO in (select SPECIMEN_NO from QCM_JHY_SAMPLE_CONSIGN_D where INSPECTION_LOT = '"+hashmap.get(0).get("INSPECTION_LOT").toString()+"')");
  2078. if(phyresult1.size() > 0){
  2079. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  2080. String result = SendPhyResult(phyresult1);
  2081. qjus.setMaterial_no(material_no);
  2082. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  2083. qjus.setJson_text(result);
  2084. qjus.setResult_type("P");
  2085. qjus.setJudge_id(list1.get(0).get("PHYSID") == null?"":list1.get(0).get("PHYSID").toString());
  2086. qjus.setCreate_name("system");
  2087. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  2088. }
  2089. }
  2090. String judgeresult = "";
  2091. if(zra.getJudgeresult().equals("1")){
  2092. judgeresult = "40140101";
  2093. }else if(zra.getJudgeresult().equals("3")){
  2094. if(zra.getSurfaceresult() != null && zra.getSurfaceresult().equals("3")){
  2095. judgeresult = "40140301";
  2096. }else{
  2097. judgeresult = "40140302";
  2098. }
  2099. }else if(zra.getJudgeresult().equals("4")){
  2100. judgeresult = "40140303";
  2101. }
  2102. String cj_result = "";
  2103. sql = "SELECT * FROM Qcm_Ord_Design_Std_Pic a where a.org_code <> '5000' and a.org_code <> 'IC003' and a.org_code <> 'IC004' "
  2104. +" and a.org_code <> 'IC001' and a.org_code <> 'IC010' and a.design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'";
  2105. List<HashMap> listcj = mapper.query(sql);
  2106. if (listcj!=null&&listcj.size()>0 && (material_no.startsWith("Z") || material_no.startsWith("H"))) {
  2107. sql = "SELECT * FROM Qcm_Ord_Design_Std_Pic a where a.org_code in ('IC011','IC012','IC013','IC014','IC015','IC016','IC017'"
  2108. + ",'IC018','IC019','IC020','IC021','IC022','IC023','IC024','IC025','IC026') and a.design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'";
  2109. List<HashMap> listfcj = mapper.query(sql);
  2110. if(listfcj.size() >0){
  2111. cj_result = "40140105";
  2112. judgeresult = "40140105";
  2113. }else{
  2114. cj_result = "40140103";
  2115. judgeresult = "40140103";
  2116. }
  2117. }
  2118. String steelname = hashmap.get(0).get("STEEL_NAME")==null?"":hashmap.get(0).get("STEEL_NAME").toString();
  2119. String phyid = list1.get(0).get("PHYSID")==null?"":list1.get(0).get("PHYSID").toString();
  2120. if(!phyid.equals("")){
  2121. sql= "select max(t.steel_name) steel_name from qcm_judge_physical t where t.phy_id in (select phy_id from qcm_judge_physical_utm_d d where d.pic_id = '"+phyid+"')";
  2122. List<HashMap> liststeel = mapper.query(sql);
  2123. if(liststeel != null && liststeel.size() >0 && liststeel.get(0).get("STEEL_NAME").toString().startsWith("SWRH82B-YL")){
  2124. steelname = liststeel.get(0).get("STEEL_NAME").toString();
  2125. }
  2126. }
  2127. judge_call(hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString(),hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString(),hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString(),hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString(),hashmap.get(0).get("PSC")==null?"":hashmap.get(0).get("PSC").toString(),judgeresult,"","","",cj_result,material_no,username,hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString(),hashmap.get(0).get("HT_NO")==null?"":hashmap.get(0).get("HT_NO").toString(),utm_id,hashmap.get(0).get("DESIGN_KEY")==null?"":hashmap.get(0).get("DESIGN_KEY").toString(),steelname);
  2128. }
  2129. }else{
  2130. for(HashMap list:list2){
  2131. if(!list.get("JUDGERESULT").toString().equals("0")){
  2132. throw new Exception("该检验号下已有物料号做了综合判定,不能再次判定!");
  2133. }
  2134. if(list.get("CIC_IS_LOCK").toString().equals("1")){
  2135. throw new Exception("成分已锁定,不能进行综合判定!");
  2136. }
  2137. if(list.get("PIC_IS_LOCK").toString().equals("1")){
  2138. throw new Exception("材质已锁定,不能进行综合判定!");
  2139. }
  2140. if(list.get("SIC_IS_LOCK").toString().equals("1")){
  2141. throw new Exception("公差已锁定,不能进行综合判定!");
  2142. }
  2143. if(list.get("R_CIC_IS_LOCK").toString().equals("1")){
  2144. throw new Exception("成分已锁定,不能进行综合判定!");
  2145. }
  2146. if(list.get("DIC_IS_LOCK").toString().equals("1")){
  2147. throw new Exception("探伤已锁定,不能进行综合判定!");
  2148. }
  2149. if(hashmap.get(0).get("DESIGN_KEY") == null){
  2150. throw new Exception("该物料没有订单,不能进行综合判定!");
  2151. }
  2152. if(list.get("SFU_IS_LOCK").toString().equals("1") || list.get("SFD_IS_LOCK").toString().equals("1") || list.get("SFE_IS_LOCK").toString().equals("1")){
  2153. throw new Exception("表面已锁定,不能进行综合判定!");
  2154. }
  2155. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"C")){
  2156. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_cic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  2157. if(list.get("CHEMRESULT").toString().equals("0") && count > 0){
  2158. throw new Exception("该物料未做成品成分判定,不能进行综合判定!");
  2159. }
  2160. }
  2161. if(list.get("R_CHEMRESULT").toString().equals("0")){
  2162. throw new Exception("该物料未做熔炼成分判定,不能进行综合判定!");
  2163. }
  2164. /*if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"A")){
  2165. if(list.get("R_CHEMRESULT").toString().equals("0")){
  2166. throw new Exception("该物料未做熔炼成分判定,不能取进行综合判定!");
  2167. }
  2168. }*/
  2169. if(list.get("SURFACERESULT").toString().equals("0")){
  2170. throw new Exception("该物料未做表面检验,不能进行综合判定!");
  2171. }
  2172. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_pic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  2173. if(list.get("PHYSRESULT").toString().equals("0") && count > 0){
  2174. throw new Exception("该物料未做材质判定,不能进行综合判定!");
  2175. }
  2176. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_sic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  2177. if(list.get("SIZERESULT").toString().equals("0") && count > 0){
  2178. throw new Exception("该物料未做公差检验,不能进行综合判定!");
  2179. }
  2180. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_dic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  2181. if(list.get("SPYRESULT").toString().equals("0") && count > 0){
  2182. throw new Exception("该物料未做探伤检验,不能进行综合判定!");
  2183. }
  2184. QcmJudgeUltimate qju=new QcmJudgeUltimate();
  2185. //获取判定记录号当天的最大值
  2186. Date now = new Date();
  2187. String opr_time = new SimpleDateFormat("yyyyMMddHHmmss").format(now); //操作时间
  2188. SimpleDateFormat sdf=new SimpleDateFormat("yyMMdd");
  2189. String date=sdf.format(now);
  2190. count=0;
  2191. sql ="select * from qcm_judge_ultimate where UTM_ID like 'ZJ"+date+"%' order by UTM_ID desc";
  2192. List<QcmJudgeUltimate> listUl=mapper.QcmJudgeUltimate(sql);
  2193. if (listUl!=null&&listUl.size()>0) {
  2194. String s=listUl.get(0).getUtm_id();
  2195. count=Integer.parseInt(s.substring(s.length()-4,s.length()));
  2196. }
  2197. count++;
  2198. String utm_id="ZJ"+sdf.format(now)+String.format("%04d",count);
  2199. //更新库存表综合判定结果
  2200. QcmJudgeCoilResult zra = new QcmJudgeCoilResult();
  2201. zra.setCoil_no(material_no);
  2202. zra.setJudgeid(utm_id);
  2203. zra.setJudgeresult(judge_status);
  2204. zra.setJudgeresult_desc(judge_status.equals("1")?"合格":(judge_status.equals("3")?"次品":(judge_status.equals("4")?"废品":"")));
  2205. mapper.UpdateJugeResultJ(zra);
  2206. //插入综合判定记录表
  2207. qju.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  2208. qju.setHeat_no(hashmap.get(0).get("HEAT_NO")==null?"":hashmap.get(0).get("HEAT_NO").toString());
  2209. qju.setBatch_no(hashmap.get(0).get("BATCHNO")==null?"":hashmap.get(0).get("BATCHNO").toString());
  2210. qju.setBoard_no(hashmap.get(0).get("BOARD_NO")==null?"":hashmap.get(0).get("BOARD_NO").toString());
  2211. qju.setInspection_lot(hashmap.get(0).get("INSPECTION_LOT") == null ?"":hashmap.get(0).get("INSPECTION_LOT").toString());
  2212. qju.setMaterial_no(material_no);
  2213. qju.setUtm_id(utm_id);
  2214. qju.setUtm_memo(memo);
  2215. qju.setUtm_result_code(zra.getJudgeresult());
  2216. qju.setUtm_result_desc(zra.getJudgeresult_desc());
  2217. qju.setCic_id(list2.get(0).get("CHEMID") == null?"":list2.get(0).get("CHEMID").toString());
  2218. qju.setCic_result_code(list2.get(0).get("CHEMRESULT")==null?"":list2.get(0).get("CHEMRESULT").toString());
  2219. qju.setCic_result_desc(list2.get(0).get("CHEMRESULT_DESC")==null?"":list2.get(0).get("CHEMRESULT_DESC").toString());
  2220. qju.setR_cic_id(list2.get(0).get("R_CHEMID") == null?"":list2.get(0).get("R_CHEMID").toString());
  2221. qju.setR_cic_result_code(list2.get(0).get("R_CHEMRESULT")==null?"":list2.get(0).get("R_CHEMRESULT").toString());
  2222. qju.setR_cic_result_desc(list2.get(0).get("R_CHEMRESULT_DESC")==null?"":list2.get(0).get("R_CHEMRESULT_DESC").toString());
  2223. qju.setPic_id(list2.get(0).get("PHYSID") == null?"":list2.get(0).get("PHYSID").toString());
  2224. qju.setPic_result_code(list2.get(0).get("PHYSRESULT")==null?"":list2.get(0).get("PHYSRESULT").toString());
  2225. qju.setPic_result_desc(list2.get(0).get("PHYSRESULT_DESC")==null?"":list2.get(0).get("PHYSRESULT_DESC").toString());
  2226. qju.setSic_id(list2.get(0).get("SIZEID") == null?"":list2.get(0).get("SIZEID").toString());
  2227. qju.setSic_result_code(list2.get(0).get("SIZERESULT")==null?"":list2.get(0).get("SIZERESULT").toString());
  2228. qju.setSic_result_desc(list2.get(0).get("SIZERESULT_DESC")==null?"":list2.get(0).get("SIZERESULT_DESC").toString());
  2229. qju.setDic_id(list2.get(0).get("SPYID")==null?"":list2.get(0).get("SPYID").toString());
  2230. qju.setDic_result_code(list2.get(0).get("SPYRESULT")==null?"":list2.get(0).get("SPYRESULT").toString());
  2231. qju.setDic_result_desc(list2.get(0).get("SPYRESULT_DESC")==null?"":list2.get(0).get("SPYRESULT_DESC").toString());
  2232. qju.setSfd_id(list2.get(0).get("SURFACEID")==null?"":list2.get(0).get("SURFACEID").toString());
  2233. qju.setSfd_result_code(list2.get(0).get("UD_SURFACE_RESULT")==null?"":list2.get(0).get("UD_SURFACE_RESULT").toString());
  2234. qju.setSfd_result_desc(list2.get(0).get("UD_SURFACE_RESULT_DESC")==null?"":list2.get(0).get("UD_SURFACE_RESULT_DESC").toString());
  2235. qju.setSfu_id(list2.get(0).get("SURFACEID")==null?"":list2.get(0).get("SURFACEID").toString());
  2236. qju.setSfu_result_code(list2.get(0).get("UP_SURFACE_RESULT")==null?"":list2.get(0).get("UP_SURFACE_RESULT").toString());
  2237. qju.setSfu_result_desc(list2.get(0).get("UP_SURFACE_RESULT_DESC")==null?"":list2.get(0).get("UP_SURFACE_RESULT_DESC").toString());
  2238. qju.setSfe_id(list2.get(0).get("SURFACEID")==null?"":list2.get(0).get("SURFACEID").toString());
  2239. qju.setSfe_result_code(list2.get(0).get("MARGINAL_RESULT")==null?"":list2.get(0).get("MARGINAL_RESULT").toString());
  2240. qju.setSfe_result_desc(list2.get(0).get("MARGINAL_RESULT_DESC")==null?"":list2.get(0).get("MARGINAL_RESULT_DESC").toString());
  2241. qju.setMst_id(list2.get(0).get("SURFACEID")==null?"":list2.get(0).get("SURFACEID").toString());
  2242. qju.setMst_result_code(list2.get(0).get("SURFACERESULT")==null?"":list2.get(0).get("SURFACERESULT").toString());
  2243. qju.setMst_result_desc(list2.get(0).get("SURFACERESULT_DESC")==null?"":list2.get(0).get("SURFACERESULT_DESC").toString());
  2244. qju.setFst_id(list2.get(0).get("PHYFSTSID")==null?"":list2.get(0).get("PHYFSTSID").toString());
  2245. qju.setFst_result_code(list2.get(0).get("PHYFSTSRESULT")==null?"":list2.get(0).get("PHYFSTSRESULT").toString());
  2246. qju.setFst_result_desc(list2.get(0).get("PHYFSTSRESULT_DESC")==null?"":list2.get(0).get("PHYFSTSRESULT_DESC").toString());
  2247. qju.setPsc(hashmap.get(0).get("PSC")==null?"":hashmap.get(0).get("PSC").toString());
  2248. qju.setPsc_desc(hashmap.get(0).get("PSC_DESC")==null?"":hashmap.get(0).get("PSC_DESC").toString());
  2249. qju.setProd_code(hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString());
  2250. qju.setProd_name(hashmap.get(0).get("PROD_NAME")==null?"":hashmap.get(0).get("PROD_NAME").toString());
  2251. qju.setSteel_code(hashmap.get(0).get("STEEL_CODE")==null?"":hashmap.get(0).get("STEEL_CODE").toString());
  2252. qju.setSteel_name(hashmap.get(0).get("STEEL_NAME").toString());
  2253. qju.setStd_code(hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString());
  2254. qju.setStd_name(hashmap.get(0).get("STD_NAME")==null?"":hashmap.get(0).get("STD_NAME").toString());
  2255. qju.setJudge_name(username);
  2256. qju.setJudge_time(new Date());
  2257. qju.setTic_id(list2.get(0).get("TIC_ID")==null?"":list2.get(0).get("TIC_ID").toString());
  2258. qju.setTic_result_code(list2.get(0).get("TIC_RESULT")==null?"":list2.get(0).get("TIC_RESULT").toString());
  2259. qju.setTic_result_desc(list2.get(0).get("TIC_RESULT_DESC")==null?"":list2.get(0).get("TIC_RESULT_DESC").toString());
  2260. qju.setPline_code(hashmap.get(0).get("PLINE_CODE")==null?"":hashmap.get(0).get("PLINE_CODE").toString());
  2261. qju.setPline_name(hashmap.get(0).get("PLINE_NAME")==null?"":hashmap.get(0).get("PLINE_NAME").toString());
  2262. mapper.insertQcmJudgeUltimate(qju);
  2263. if(zra.getJudgeresult().equals("1")){
  2264. //发送熔炼成分实绩
  2265. List<QcmJhyInspElements> chemresult1 = mapper.queryQcmJhyInspElements("select * from qcm_jhy_insp_elements t where t.assay_type = 'L' and t.heat_no = '"+hashmap.get(0).get("HEAT_NO").toString()+"'");
  2266. if(chemresult1.size() > 0){
  2267. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  2268. qjus.setMaterial_no(material_no);
  2269. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  2270. qjus.setResult_type("C");
  2271. qjus.setJudge_id(list.get("R_CHEMID") == null?"":list.get("R_CHEMID").toString());
  2272. qjus.setCreate_name("system");
  2273. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  2274. }
  2275. //发送成品成分实绩
  2276. List<QcmJhyInspElements> chemresult2 = mapper.queryQcmJhyInspElements("select * from qcm_jhy_insp_elements t where t.assay_type = 'P' and t.INSPECTION_LOT = '"+hashmap.get(0).get("INSPECTION_LOT").toString()+"'");
  2277. if(chemresult2.size() > 0){
  2278. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  2279. qjus.setMaterial_no(material_no);
  2280. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  2281. qjus.setResult_type("C");
  2282. qjus.setJudge_id(list.get("CHEMID") == null?"":list.get("CHEMID").toString());
  2283. qjus.setCreate_name("system");
  2284. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  2285. }
  2286. //发送材质实绩
  2287. List<QcmJhyPhyresult> phyresult1 = mapper.queryQcmJhyPhyresult("select * from qcm_jhy_insp_physics t where t.SPECIMEN_NO in (select SPECIMEN_NO from QCM_JHY_SAMPLE_CONSIGN_D where INSPECTION_LOT = '"+hashmap.get(0).get("INSPECTION_LOT").toString()+"')");
  2288. if(phyresult1.size() > 0){
  2289. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  2290. qjus.setMaterial_no(material_no);
  2291. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  2292. qjus.setResult_type("P");
  2293. qjus.setJudge_id(list.get("PHYSID") == null?"":list.get("PHYSID").toString());
  2294. qjus.setCreate_name("system");
  2295. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  2296. }
  2297. }
  2298. }
  2299. }
  2300. //判断产线是不是卷板,是的话调用存储过程COILJUDGE_STATUS
  2301. if(list2.size() > 0) {
  2302. hashmap = doQueryMaterialInfoJ(material_no);
  2303. if (hashmap.size() > 0) {
  2304. coiljudge_status_call(hashmap.get(0).get("PLINE_CODE").toString(), material_no, null, null, null, null, judge_status, null, null,"");
  2305. }
  2306. }
  2307. }else{
  2308. throw new Exception("未找到该检验号下的库存信息!");
  2309. }
  2310. QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
  2311. qjog.setOperate_name(username);
  2312. qjog.setOperate_type("综合判定");//qjog.setOperate_type("综合判定强制合格")
  2313. /*if(judge_status.equals("1")){
  2314. qjog.setOperate_type("综合判定强制合格");
  2315. }else if(judge_status.equals("3")){
  2316. qjog.setOperate_type("综合判定判次");
  2317. }else{
  2318. qjog.setOperate_type("综合判定");
  2319. }*/
  2320. qjog.setParams(material_no);
  2321. qjog.setBatchno(hashmap.get(0).get("BATCHNO")==null?"":hashmap.get(0).get("BATCHNO").toString());
  2322. qjog.setProd_line(hashmap.get(0).get("PLINE_CODE")==null?"":hashmap.get(0).get("PLINE_CODE").toString());
  2323. qjog.setMemo(memo);
  2324. qjog.setJudge_result(judge_status);
  2325. mapper.insertQcmJudgeOperateLog(qjog);
  2326. //cro = creatUltimateResultByHand(material_no,username);//手动进行综合判定
  2327. SqlSession.commit();
  2328. }catch(Exception ex){
  2329. cro.setV_errCode(-1);
  2330. cro.setV_errMsg(ex.getMessage());
  2331. SqlSession.rollback();
  2332. logger.info(new Date().toString() + " QCM.QCM03.QCM0302.QcmJudgePhysicalServiceImpl.ultimateJudgeAuto:【" + material_no + "," + username + "】" + ex);
  2333. }finally {
  2334. SqlSession.close();
  2335. }
  2336. //SqlSession.close();
  2337. return cro;
  2338. }
  2339. /***
  2340. * 综合判定:
  2341. * 0625增加finally
  2342. * @param sum
  2343. * @return
  2344. */
  2345. @SuppressWarnings({ "rawtypes", "unused" })
  2346. public CoreReturnObject ultimateJudgeAuto(String material_no, String username,String productname) throws Exception{
  2347. try{
  2348. int count = 0;
  2349. String utm_id = "";
  2350. List<HashMap> hashmap = doQueryMaterialInfoZhb(material_no);
  2351. if(hashmap.size() == 0){
  2352. hashmap = doQueryMaterialInfoBX(material_no);
  2353. }
  2354. if(hashmap.size() == 0){
  2355. hashmap = doQueryMaterialInfoJ(material_no);
  2356. }
  2357. if(hashmap.size() ==0){
  2358. hashmap = mapper.doQueryMaterialInfoY(material_no);
  2359. }
  2360. String sql = "select * from zj_result_all@xgcx where BILLETID = '"+material_no+"'";
  2361. int flag = 0;
  2362. String judge_result = "";
  2363. List<HashMap> list1 = mapper.query(sql);
  2364. sql = "select * from QCM_JUDGE_COIL_RESULT where coil_no = '"+material_no+"'";
  2365. List<HashMap> list2 = mapper.query(sql);
  2366. sql = "select * from QCM_JUDGE_YT_COIL_RESULT where coil_no = '"+material_no+"'";
  2367. List<HashMap> list3 = mapper.query(sql);
  2368. if(list1.size() >0 || list2.size() >0 || list3.size() >0){
  2369. if(list1.size()>0){
  2370. for(HashMap list:list1){
  2371. if(material_no.startsWith("Z") || material_no.startsWith("H")){
  2372. String pic_id = list.get("PHYSID")==null?"":list.get("PHYSID").toString();
  2373. List<String> listphy = new ArrayList<String>();
  2374. List<String> listphy1 = new ArrayList<String>();
  2375. List<String> listphy2 = new ArrayList<String>();
  2376. List<String> listp1 = new ArrayList<String>();
  2377. String billetid_jy = list.get("BILLETID_JY") == null?"":list.get("BILLETID_JY").toString();
  2378. if(billetid_jy.equals("")){
  2379. sql = "select * from qcm_judge_physical_utm_m a where a.pic_id = '"+list.get("PHYSID").toString()+"' ";
  2380. List<HashMap> list11 = mapper.query(sql);
  2381. if(list11.size() >0){
  2382. billetid_jy = list11.get(0).get("INSPECTION_LOT").toString();
  2383. }else
  2384. {
  2385. throw new Exception("检验号为空,不能判定!");
  2386. }
  2387. }
  2388. sql = "select * from qcm_jhy_sample_consign_d t,qcm_jhy_sample_r_ord r "
  2389. + " where t.smp_no = r.smp_no and r.inspection_lot is not null and t.rz_mixroll is not null "
  2390. + " and t.rz_old_sampl_no is not null and r.judge_status<>'1' "
  2391. + " and r.steel_code in ('Q235B','Q355B') and t.rz_mixroll in (select d.rz_mixroll from qcm_jhy_sample_consign_d d where d.inspection_lot = '"+billetid_jy+"') "
  2392. + " and t.rz_old_sampl_no in (select d.rz_old_sampl_no from qcm_jhy_sample_consign_d d where d.inspection_lot = '"+billetid_jy+"')";
  2393. List<HashMap> listyc = mapper.query(sql);
  2394. if(listyc.size() > 0 ){
  2395. throw new Exception("该预测区间存在未判或者不合格的数据,不能判定!");
  2396. }
  2397. String m= "";
  2398. List<QcmJudgePhysicalResult> qjpr1 = new ArrayList<QcmJudgePhysicalResult>();
  2399. sql = "select * from qcm_judge_physical_result where phy_id in (select phy_id "
  2400. + " from Qcm_Judge_Physical_Utm_d "
  2401. + " where pic_id = '"+pic_id+"')";
  2402. qjpr1 = mapper.queryQcmJudgePhysicalResult(sql);
  2403. for(QcmJudgePhysicalResult y:qjpr1)
  2404. {
  2405. String s = (y.getPhy_code_l()==null?"":y.getPhy_code_l()) + (y.getPhy_code_m()==null?"":y.getPhy_code_m()) + (y.getPhy_code_s()==null?"":y.getPhy_code_s()) + (y.getItem_code_d()==null?"":y.getItem_code_d())
  2406. + (y.getItem_code_t()==null?"":y.getItem_code_t());
  2407. listphy.add(s);
  2408. }
  2409. List<QcmOrdDesignStdPic> qrdsp = new ArrayList<QcmOrdDesignStdPic>();
  2410. sql = "select * from qcm_ord_design_std_pic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'";
  2411. qrdsp = mapper.queryQCMOrdDesignStdPic(sql);
  2412. for(QcmOrdDesignStdPic x:qrdsp){
  2413. String z = (x.getPhy_code_l()==null?"":x.getPhy_code_l()) + (x.getPhy_code_m()==null?"":x.getPhy_code_m()) + (x.getPhy_code_s()==null?"":x.getPhy_code_s()) + (x.getItem_code_d()==null?"":x.getItem_code_d())
  2414. + (x.getItem_code_t()==null?"":x.getItem_code_t());
  2415. String y = (x.getPhy_name_l()==null?"":x.getPhy_name_l()) + (x.getPhy_desc_m()==null?"":x.getPhy_desc_m()) + (x.getPhy_name_s()==null?"":x.getPhy_name_s()) + (x.getItem_name_d()==null?"":x.getItem_name_d())
  2416. + (x.getItem_name_s()==null?"":x.getItem_name_s()) + (x.getItem_name_t()==null?"":x.getItem_name_t());
  2417. if(!listphy.contains(z)){
  2418. throw new Exception("该材质判定未满足订单标准,不能判定,缺失"+y+" 检验项目!");
  2419. }
  2420. listphy2.add(z);
  2421. }
  2422. for(QcmJudgePhysicalResult y:qjpr1)
  2423. {
  2424. String s = (y.getPhy_code_l()==null?"":y.getPhy_code_l()) + (y.getPhy_code_m()==null?"":y.getPhy_code_m()) + (y.getPhy_code_s()==null?"":y.getPhy_code_s()) + (y.getItem_code_d()==null?"":y.getItem_code_d())
  2425. + (y.getItem_code_t()==null?"":y.getItem_code_t());
  2426. m = (y.getPhy_name_l()==null?"":y.getPhy_name_l()) + (y.getPhy_name_m()==null?"":y.getPhy_name_m()) + (y.getPhy_name_s()==null?"":y.getPhy_name_s()) + (y.getItem_name_d()==null?"":y.getItem_name_d())
  2427. + (y.getItem_name_s()==null?"":y.getItem_name_s()) + (y.getItem_name_t()==null?"":y.getItem_name_t());
  2428. if(!listphy2.contains(s) && (material_no.startsWith("Z") || material_no.startsWith("H")) && listphy2.size() >0){
  2429. throw new Exception("该材质判定未满足订单标准,不能判定,比标准多出"+m+" 检验项目!");
  2430. }
  2431. }
  2432. List<QcmJudgePhysicalUtmD> qjpu = new ArrayList<QcmJudgePhysicalUtmD>();
  2433. String sql1 = "select * "
  2434. + " from Qcm_Judge_Physical_Utm_d "
  2435. + " where pic_id = '"+pic_id+"'";
  2436. qjpu = mapper.queryQcmJudgePhysicalUtmD(sql1);
  2437. for(QcmJudgePhysicalUtmD t : qjpu){
  2438. String s = t.getCert_inst_code()+t.getSteel_name();
  2439. listphy1.add(s);
  2440. }
  2441. for(QcmOrdDesignStdPic x:qrdsp){
  2442. String z = x.getOrg_code()+x.getSteel_name();
  2443. String y = x.getOrg_name()+x.getSteel_name();
  2444. if(!listphy1.contains(z)){
  2445. throw new Exception("该材质判定未满足订单标准,不能判定,缺失"+y+" 标准!");
  2446. }
  2447. }
  2448. //模拟焊后卡控
  2449. sql = "select distinct z.smp_location from qcm_jhy_sample_consign_d_item z where z.specimen_no in (select distinct z.specimen_no from qcm_judge_physical_result z where z.smp_no in (select a.smp_no from qcm_judge_physical_utm_d a where a.pic_id = '"+pic_id+"')) and smp_location is not null";
  2450. List<HashMap> hashmapp = mapper.query(sql);
  2451. if(hashmapp.size() ==0){
  2452. sql = "select distinct z.smp_location from qcm_jhy_sample_consign_d z where z.specimen_no in (select distinct z.specimen_no from qcm_judge_physical_result z where z.smp_no in (select a.smp_no from qcm_judge_physical_utm_d a where a.pic_id = '"+pic_id+"')) and smp_location is not null";
  2453. hashmapp = mapper.query(sql);
  2454. }
  2455. for(HashMap p1:hashmapp){
  2456. listp1.add(p1.get("SMP_LOCATION").toString());
  2457. }
  2458. sql = "select distinct a.smp_position_desc from qcm_ord_design_std_pic_smp a where a.design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'";
  2459. List<HashMap> hashmapp1 = mapper.query(sql);
  2460. for(HashMap p2:hashmapp1){
  2461. String z= p2.get("SMP_POSITION_DESC").toString();
  2462. if(!listp1.contains(z)){
  2463. throw new Exception("该材质判定未满足订单标准,不能判定,缺失"+z+" 取样位置!");
  2464. }
  2465. }
  2466. }
  2467. if(!list.get("JUDGERESULT").toString().equals("0")){
  2468. throw new Exception("该物料做了综合判定,不能再次判定!");
  2469. }
  2470. if(list.get("CIC_IS_LOCK").toString().equals("1")){
  2471. throw new Exception("成分已锁定,不能进行综合判定!");
  2472. }
  2473. if(list.get("PIC_IS_LOCK").toString().equals("1")){
  2474. throw new Exception("材质已锁定,不能进行综合判定!");
  2475. }
  2476. if(list.get("R_CIC_IS_LOCK").toString().equals("1")){
  2477. throw new Exception("成分已锁定,不能进行综合判定!");
  2478. }
  2479. if(list.get("SIC_IS_LOCK").toString().equals("1")){
  2480. throw new Exception("公差已锁定,不能进行综合判定!");
  2481. }
  2482. if(list.get("DIC_IS_LOCK").toString().equals("1")){
  2483. throw new Exception("探伤已锁定,不能进行综合判定!");
  2484. }
  2485. if(list.get("SFU_IS_LOCK").toString().equals("1") || list.get("SFD_IS_LOCK").toString().equals("1") || list.get("SFE_IS_LOCK").toString().equals("1")){
  2486. throw new Exception("表面已锁定,不能进行综合判定!");
  2487. }
  2488. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"C")){
  2489. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_cic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  2490. if(list.get("CHEMRESULT").toString().equals("0") && count >0){
  2491. throw new Exception("该物料未做成品成分判定,不能进行综合判定!");
  2492. }
  2493. }
  2494. if(list.get("R_CHEMRESULT").toString().equals("0")){
  2495. throw new Exception("该物料未做熔炼成分判定,不能进行综合判定!");
  2496. }
  2497. /*if(list.get("BILLETID_JY") == null){
  2498. throw new Exception("该物料检验号为空,不能进行综合判定!");
  2499. }*/
  2500. String inspection_lot = hashmap.get(0).get("INSPECTION_LOT") == null ?"":hashmap.get(0).get("INSPECTION_LOT").toString();
  2501. /*if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"A")){
  2502. if(list.get("R_CHEMRESULT").toString().equals("0")){
  2503. throw new Exception("该物料未做熔炼成分判定,不能取进行综合判定!");
  2504. }
  2505. }*/
  2506. if(list.get("SURFACERESULT").toString().equals("0")){
  2507. throw new Exception("该物料未做表面检验,不能进行综合判定!");
  2508. }
  2509. int a = 2;
  2510. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_pic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  2511. a= count;
  2512. if(list.get("PHYSRESULT").toString().equals("0") && count > 0){
  2513. throw new Exception("该物料未做材质判定,不能进行综合判定!");
  2514. }
  2515. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from sel_pactdetail_new@xgcx where orderno = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"' and SAMPLINGREQUESTTIME is NOT null ").get(0).get("COUNT").toString());
  2516. if(a==0 && count > 0){
  2517. throw new Exception("该物料未做材质判定或订单标准没有,不能进行综合判定!");
  2518. }
  2519. /*sql = "select a.* from tbslsendlog@CXZCVIEW a join (select ORDERNO, MAX(TIMESTAMP) as TIMESTAMP "
  2520. + " from tbslsendlog@CXZCVIEW t "
  2521. + " where INFCODEA = 'SpecPhy' "
  2522. + " and t.orderno = '39R-2302-0001003' "
  2523. + " group by ORDERNO) b "
  2524. + " on a.ORDERNO = b.ORDERNO "
  2525. + " and a.TIMESTAMP = b.TIMESTAMP "
  2526. + " and a.INFCODEA = 'SpecPhy' "
  2527. + "and a.SENDSTSA not in ('200', 'true')";
  2528. List<HashMap> listzc = mapper.query(sql);
  2529. if(list.get("PHYSRESULT").toString().equals("0") && listzc.size() > 0){
  2530. throw new Exception("该物料未做材质判定,不能进行综合判定!");
  2531. }*/
  2532. if(count>0){
  2533. if(material_no.startsWith("Z") || material_no.startsWith("H")){
  2534. List<String> listphy2 = new ArrayList<String>();
  2535. List<HashMap> listy = mapper.query("SELECT max(x.process_nos) ht_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = '"+list.get("PHYSID").toString()+"')");
  2536. if(listy.get(0).get("HT_NO") == null){
  2537. throw new Exception("该物料委托处理号为空,不能进行综合判定!");
  2538. }
  2539. String s1 =hashmap.get(0).get("HT_NO").toString().substring(0, 1)+ hashmap.get(0).get("HT_NO").toString().substring(3, 4)+ hashmap.get(0).get("HT_NO").toString().substring(4, 5);
  2540. String s2 = listy.get(0).get("HT_NO").toString().substring(0, 1)+listy.get(0).get("HT_NO").toString().substring(3, 4)+listy.get(0).get("HT_NO").toString().substring(4, 5);
  2541. if(!s1.equals(s2)){
  2542. throw new Exception("该物料热处理号与委托热处理号不一致,不能进行综合判定!");
  2543. }
  2544. /*if(!hashmap.get(0).get("HT_NO").toString().equals(listy.get(0).get("HT_NO").toString())){
  2545. throw new Exception("该物料热处理号与委托热处理号不一致,不能进行综合判定!");
  2546. }*/
  2547. /*if(!hashmap.get(0).get("HT_NO").equals(listy.get(0).get("HT_NO").toString())){
  2548. throw new Exception("该物料热处理号与委托热处理号不一致,不能进行综合判定!");
  2549. }*/
  2550. List<HashMap> listST = mapper.query("select nvl(m.MAIN_STEEL_CODE,o.steel_code) steel_name,nvl(o.thick,0) thick,O.DESIGN_KEY from qcm_jhy_sample_r_ord o,qcm_ord_design_std_pic m where o.design_key = m.design_key and o.steel_code = m.steel_code and o.smp_no in (SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = '"+list.get("PHYSID").toString()+"') and rownum = 1 ");
  2551. if(!hashmap.get(0).get("STEEL_NAME").equals(listST.get(0).get("STEEL_NAME").toString())){
  2552. throw new Exception("该物料牌号与委托牌号不一致,不能进行综合判定!");
  2553. }
  2554. if(!hashmap.get(0).get("THICK").toString().trim().equals(listST.get(0).get("THICK").toString().trim())){
  2555. throw new Exception("该物料规格【"+hashmap.get(0).get("THICK")+"】与委托规格【"+listST.get(0).get("THICK").toString()+"】不一致,不能进行综合判定!");
  2556. }
  2557. if(!hashmap.get(0).get("DESIGN_KEY").equals(listST.get(0).get("DESIGN_KEY"))){
  2558. sql = "SELECT * FROM QCM_ORD_DESIGN_STD_PIC A WHERE a.design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"' AND A.SPECL_FL || A.PHY_CODE_L || A.PHY_CODE_M || A.PHY_CODE_S || A.ITEM_CODE_D || A.ITEM_CODE_T || A.ITEM_CODE_S || A.ORG_NAME || A.STDMIN || A.STDMAX NOT IN (SELECT B.SPECL_FL || B.PHY_CODE_L || B.PHY_CODE_M || B.PHY_CODE_S || B.ITEM_CODE_D || B.ITEM_CODE_T || B.ITEM_CODE_S || B.ORG_NAME || B.STDMIN || B.STDMAX FROM QCM_ORD_DESIGN_STD_PIC B WHERE B.DESIGN_KEY = '"+listST.get(0).get("DESIGN_KEY")+"')";
  2559. List<HashMap> list_s = mapper.query(sql);
  2560. if(list_s.size() >0){
  2561. throw new Exception("现订单标准与委托标准不一致,不能判定!");
  2562. }
  2563. }
  2564. List<HashMap> listpicsmp = mapper.query("select * from qcm_ord_design_std_pic_smp z where z.design_key ='"+hashmap.get(0).get("DESIGN_KEY").toString()+"'");
  2565. for(HashMap listsmp : listpicsmp){
  2566. listphy2.add(listsmp.get("SMP_RATE_CODE").toString());
  2567. }
  2568. if(listphy2.contains("C") || listphy2.contains("H") || listphy2.contains("I")){
  2569. listy = mapper.query("SELECT max(x.material_no) material_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = '"+list.get("PHYSID").toString()+"')");
  2570. if(!material_no.equals(listy.get(0).get("MATERIAL_NO").toString())){
  2571. throw new Exception("该物料号与委托取样产品序号不一致,不能进行综合判定!");
  2572. }
  2573. }else if(listphy2.contains("F") || listphy2.contains("B")){
  2574. listy = mapper.query("SELECT max(substr(x.material_no,1,10)) material_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = '"+list.get("PHYSID").toString()+"')");
  2575. if(!material_no.startsWith(listy.get(0).get("MATERIAL_NO").toString())){
  2576. throw new Exception("该物料号与委托取样产品序号母板不一致,不能进行综合判定!");
  2577. }
  2578. }else{
  2579. listy = mapper.query("SELECT max(x.batch_no) batch_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = '"+list.get("PHYSID").toString()+"')");
  2580. if(!material_no.startsWith(listy.get(0).get("BATCH_NO").toString())){
  2581. throw new Exception("该物料号与委托取样产品序号轧批号不一致,不能进行综合判定!");
  2582. }
  2583. }
  2584. /*if(hashmap.get(0).get("STEEL_NAME").equals("4140") || hashmap.get(0).get("STEEL_NAME").equals("JL4140")|| hashmap.get(0).get("STEEL_NAME").equals("JL4140-1")|| hashmap.get(0).get("STEEL_NAME").equals("JL4140H")|| hashmap.get(0).get("STEEL_NAME").equals("P20")|| hashmap.get(0).get("STEEL_NAME").equals("XF2312")|| hashmap.get(0).get("STEEL_NAME").equals("XF4140")|| hashmap.get(0).get("STEEL_NAME").equals("XF4140-1")|| hashmap.get(0).get("STEEL_NAME").equals("XFP80")|| hashmap.get(0).get("STEEL_NAME").equals("XG4140")|| hashmap.get(0).get("STEEL_NAME").equals("P20M")){
  2585. listy = mapper.query("SELECT max(x.material_no) material_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = '"+list.get("PHYSID").toString()+"')");
  2586. if(!material_no.equals(listy.get(0).get("MATERIAL_NO").toString())){
  2587. throw new Exception("该物料号与委托取样产品序号不一致,不能进行综合判定!");
  2588. }
  2589. }*/
  2590. }
  2591. }
  2592. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_sic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  2593. if(list.get("SIZERESULT").toString().equals("0") && count > 0){
  2594. throw new Exception("该物料未做公差检验,不能进行综合判定!");
  2595. }
  2596. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_dic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  2597. if(list.get("SPYRESULT").toString().equals("0") && count > 0){
  2598. throw new Exception("该物料未做探伤检验,不能进行综合判定!");
  2599. }
  2600. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"C")){
  2601. flag += "1".equals(list.get("CHEMRESULT").toString()) ? 0 : 1;
  2602. }
  2603. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"A")){
  2604. flag += "1".equals(list.get("R_CHEMRESULT").toString()) ? 0 : 1;
  2605. }
  2606. flag += "1".equals(list.get("SURFACERESULT").equals("0")?"1":list.get("SURFACERESULT").toString()) ? 0 : 1;
  2607. flag += "1".equals(list.get("PHYSRESULT").equals("0")?"1":list.get("PHYSRESULT").toString()) ? 0 : 1;
  2608. flag += "1".equals(list.get("SIZERESULT").equals("0")?"1":list.get("SIZERESULT").toString()) ? 0 : 1;
  2609. if(count >0){
  2610. flag += "1".equals(list.get("SPYRESULT").equals("0")?"1":list.get("SPYRESULT").toString()) ? 0 : 1;
  2611. }
  2612. QcmJudgeUltimate qju=new QcmJudgeUltimate();
  2613. //获取判定记录号当天的最大值
  2614. Date now = new Date();
  2615. String opr_time = new SimpleDateFormat("yyyyMMddHHmmss").format(now); //操作时间
  2616. SimpleDateFormat sdf=new SimpleDateFormat("yyMMdd");
  2617. String date=sdf.format(now);
  2618. //更新库存表综合判定结果
  2619. ZjResultAll zra = new ZjResultAll();
  2620. zra.setBilletid(material_no);
  2621. zra.setJudgeresult(flag == 0 ? "1" :"2");
  2622. zra.setJudgeresult_desc(flag == 0 ? "合格" : "不合格");
  2623. if(list.get("R_CHEMRESULT").toString().equals("3") || list.get("CHEMRESULT").toString().equals("3") || list.get("SURFACERESULT").toString().equals("3") || list.get("PHYSRESULT").toString().equals("3") ||list.get("SIZERESULT").toString().equals("3") ||list.get("SPYRESULT").toString().equals("3")){
  2624. zra.setJudgeresult("3");
  2625. zra.setJudgeresult_desc("次品");
  2626. }
  2627. if(list.get("R_CHEMRESULT").toString().equals("4") || list.get("CHEMRESULT").toString().equals("4") || list.get("SURFACERESULT").toString().equals("4") || list.get("PHYSRESULT").toString().equals("4") ||list.get("SIZERESULT").toString().equals("4") ||list.get("SPYRESULT").toString().equals("4")){
  2628. zra.setJudgeresult("4");
  2629. zra.setJudgeresult_desc("废品");
  2630. }
  2631. if(zra.getJudgeresult().equals("2")){
  2632. throw new Exception("综合判定不合格!");
  2633. }
  2634. if(a==0){
  2635. zra.setPhysid("");
  2636. zra.setPhysresult("0");
  2637. zra.setPhysresult_desc("");
  2638. }
  2639. //调用一体化接口
  2640. //发送熔炼成分实绩
  2641. if(zra.getJudgeresult().equals("1")){
  2642. //List<QcmJhyInspElements> chemresult1 = mapper.queryQcmJhyInspElements("select * from qcm_jhy_insp_elements t where t.assay_type = 'L' and t.heat_no = '"+hashmap.get(0).get("HEAT_NO").toString()+"'");
  2643. if(list1.get(0).get("R_CHEMID") != null){
  2644. //String result = SendChemResult(chemresult1);
  2645. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  2646. qjus.setMaterial_no(material_no);
  2647. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  2648. //qjus.setJson_text(result);
  2649. qjus.setResult_type("C");
  2650. qjus.setJudge_id(list1.get(0).get("R_CHEMID") == null?"":list1.get(0).get("R_CHEMID").toString());
  2651. qjus.setCreate_name("system");
  2652. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  2653. }
  2654. //发送成品成分实绩
  2655. //List<QcmJhyInspElements> chemresult2 = mapper.queryQcmJhyInspElements("select * from qcm_jhy_insp_elements t where t.assay_type = 'P' and t.INSPECTION_LOT = '"+inspection_lot+"'");
  2656. if(list1.get(0).get("CHEMID") != null){
  2657. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  2658. //String result = SendChemResult(chemresult2);
  2659. qjus.setMaterial_no(material_no);
  2660. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  2661. //qjus.setJson_text(result);
  2662. qjus.setResult_type("C");
  2663. qjus.setJudge_id(list1.get(0).get("CHEMID") == null?"":list1.get(0).get("CHEMID").toString());
  2664. qjus.setCreate_name("system");
  2665. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  2666. }
  2667. //发送材质实绩
  2668. //List<QcmJhyPhyresult> phyresult1 = mapper.queryQcmJhyPhyresult("select * from qcm_jhy_insp_physics t where t.SPECIMEN_NO in (select SPECIMEN_NO from QCM_JHY_SAMPLE_CONSIGN_D where INSPECTION_LOT = '"+inspection_lot+"')");
  2669. if(list1.get(0).get("PHYSID") != null && a>0){
  2670. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  2671. //String result = SendPhyResult(phyresult1);
  2672. qjus.setMaterial_no(material_no);
  2673. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  2674. //qjus.setJson_text(result);
  2675. qjus.setResult_type("P");
  2676. qjus.setJudge_id(list1.get(0).get("PHYSID") == null?"":list1.get(0).get("PHYSID").toString());
  2677. qjus.setCreate_name("system");
  2678. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  2679. }
  2680. }
  2681. String judgeresult = "";
  2682. if(zra.getJudgeresult().equals("1")){
  2683. judgeresult = "40140101";
  2684. }else if(zra.getJudgeresult().equals("3")){
  2685. if(zra.getSurfaceresult() != null && zra.getSurfaceresult().equals("3")){
  2686. judgeresult = "40140301";
  2687. }else{
  2688. judgeresult = "40140302";
  2689. }
  2690. }else if(zra.getJudgeresult().equals("4")){
  2691. judgeresult = "40140303";
  2692. }
  2693. String cj_result = "";
  2694. sql = "SELECT * FROM Qcm_Ord_Design_Std_Pic a where a.org_code <> '5000' and a.org_code <> 'IC003' and a.org_code <> 'IC004' "
  2695. +" and a.org_code <> 'IC001' and a.org_code <> 'IC010' and a.design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'";
  2696. List<HashMap> listcj = mapper.query(sql);
  2697. if (listcj!=null&&listcj.size()>0 && (material_no.startsWith("Z") || material_no.startsWith("H"))) {
  2698. sql = "SELECT * FROM Qcm_Ord_Design_Std_Pic a where a.org_code in ('IC011','IC012','IC013','IC014','IC015','IC016','IC017'"
  2699. + ",'IC018','IC019','IC020','IC021','IC022','IC023','IC024','IC025','IC026') and a.design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'";
  2700. List<HashMap> listfcj = mapper.query(sql);
  2701. if(listfcj.size() >0){
  2702. cj_result = "40140105";
  2703. judgeresult = "40140105";
  2704. }else{
  2705. cj_result = "40140103";
  2706. judgeresult = "40140103";
  2707. }
  2708. }
  2709. String steelname = hashmap.get(0).get("STEEL_NAME")==null?"":hashmap.get(0).get("STEEL_NAME").toString();
  2710. String phyid = list1.get(0).get("PHYSID")==null?"":list1.get(0).get("PHYSID").toString();
  2711. if(!phyid.equals("")){
  2712. sql= "select max(t.steel_name) steel_name from qcm_judge_physical t where t.phy_id in (select phy_id from qcm_judge_physical_utm_d d where d.pic_id = '"+phyid+"')";
  2713. List<HashMap> liststeel = mapper.query(sql);
  2714. if(liststeel != null && liststeel.size() >0 && liststeel.get(0).get("STEEL_NAME").toString().startsWith("SWRH82B-YL")){
  2715. steelname = liststeel.get(0).get("STEEL_NAME").toString();
  2716. }
  2717. }
  2718. String prod_code = hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString();
  2719. if(hashmap.get(0).get("DESIGN_KEY").toString().startsWith("19")){
  2720. prod_code = productname;
  2721. }
  2722. //插入综合判定记录表
  2723. qju.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  2724. qju.setHeat_no(hashmap.get(0).get("HEAT_NO")==null?"":hashmap.get(0).get("HEAT_NO").toString());
  2725. qju.setBatch_no(hashmap.get(0).get("BATCHNO")==null?"":hashmap.get(0).get("BATCHNO").toString());
  2726. qju.setBoard_no(hashmap.get(0).get("BOARD_NO")==null?"":hashmap.get(0).get("BOARD_NO").toString());
  2727. qju.setInspection_lot(inspection_lot);
  2728. qju.setMaterial_no(material_no);
  2729. qju.setUtm_memo("");
  2730. qju.setUtm_result_code(zra.getJudgeresult());
  2731. qju.setUtm_result_desc(zra.getJudgeresult_desc());
  2732. qju.setCic_id(list1.get(0).get("CHEMID") == null?"":list1.get(0).get("CHEMID").toString());
  2733. qju.setCic_result_code(list1.get(0).get("CHEMRESULT")==null?"":list1.get(0).get("CHEMRESULT").toString());
  2734. qju.setCic_result_desc(list1.get(0).get("CHEMRESULT_DESC")==null?"":list1.get(0).get("CHEMRESULT_DESC").toString());
  2735. qju.setR_cic_id(list1.get(0).get("R_CHEMID") == null?"":list1.get(0).get("R_CHEMID").toString());
  2736. qju.setR_cic_result_code(list1.get(0).get("R_CHEMRESULT")==null?"":list1.get(0).get("R_CHEMRESULT").toString());
  2737. qju.setR_cic_result_desc(list1.get(0).get("R_CHEMRESULT_DESC")==null?"":list1.get(0).get("R_CHEMRESULT_DESC").toString());
  2738. if(a==0){
  2739. qju.setPic_id("");
  2740. qju.setPic_result_code("0");
  2741. qju.setPic_result_desc("");
  2742. }else{
  2743. qju.setPic_id(list1.get(0).get("PHYSID") == null?"":list1.get(0).get("PHYSID").toString());
  2744. qju.setPic_result_code(list1.get(0).get("PHYSRESULT")==null?"":list1.get(0).get("PHYSRESULT").toString());
  2745. qju.setPic_result_desc(list1.get(0).get("PHYSRESULT_DESC")==null?"":list1.get(0).get("PHYSRESULT_DESC").toString());
  2746. }
  2747. qju.setSic_id(list1.get(0).get("SIZEID") == null?"":list1.get(0).get("SIZEID").toString());
  2748. qju.setSic_result_code(list1.get(0).get("SIZERESULT")==null?"":list1.get(0).get("SIZERESULT").toString());
  2749. qju.setSic_result_desc(list1.get(0).get("SIZERESULT_DESC")==null?"":list1.get(0).get("SIZERESULT_DESC").toString());
  2750. qju.setDic_id(list1.get(0).get("SPYID")==null?"":list1.get(0).get("SPYID").toString());
  2751. qju.setDic_result_code(list1.get(0).get("SPYRESULT")==null?"":list1.get(0).get("SPYRESULT").toString());
  2752. qju.setDic_result_desc(list1.get(0).get("SPYRESULT_DESC")==null?"":list1.get(0).get("SPYRESULT_DESC").toString());
  2753. qju.setSfd_id(list1.get(0).get("SURFACEID")==null?"":list1.get(0).get("SURFACEID").toString());
  2754. qju.setSfd_result_code(list1.get(0).get("UD_SURFACE_RESULT")==null?"":list1.get(0).get("UD_SURFACE_RESULT").toString());
  2755. qju.setSfd_result_desc(list1.get(0).get("UD_SURFACE_RESULT_DESC")==null?"":list1.get(0).get("UD_SURFACE_RESULT_DESC").toString());
  2756. qju.setSfu_id(list1.get(0).get("SURFACEID")==null?"":list1.get(0).get("SURFACEID").toString());
  2757. qju.setSfu_result_code(list1.get(0).get("UP_SURFACE_RESULT")==null?"":list1.get(0).get("UP_SURFACE_RESULT").toString());
  2758. qju.setSfu_result_desc(list1.get(0).get("UP_SURFACE_RESULT_DESC")==null?"":list1.get(0).get("UP_SURFACE_RESULT_DESC").toString());
  2759. qju.setSfe_id(list1.get(0).get("SURFACEID")==null?"":list1.get(0).get("SURFACEID").toString());
  2760. qju.setSfe_result_code(list1.get(0).get("MARGINAL_RESULT")==null?"":list1.get(0).get("MARGINAL_RESULT").toString());
  2761. qju.setSfe_result_desc(list1.get(0).get("MARGINAL_RESULT_DESC")==null?"":list1.get(0).get("MARGINAL_RESULT_DESC").toString());
  2762. qju.setMst_id(list1.get(0).get("SURFACEID")==null?"":list1.get(0).get("SURFACEID").toString());
  2763. qju.setMst_result_code(list1.get(0).get("SURFACERESULT")==null?"":list1.get(0).get("SURFACERESULT").toString());
  2764. qju.setMst_result_desc(list1.get(0).get("SURFACERESULT_DESC")==null?"":list1.get(0).get("SURFACERESULT_DESC").toString());
  2765. qju.setFst_id(list1.get(0).get("PHYFSTSID")==null?"":list1.get(0).get("PHYFSTSID").toString());
  2766. qju.setFst_result_code(list1.get(0).get("PHYFSTSRESULT")==null?"":list1.get(0).get("PHYFSTSRESULT").toString());
  2767. qju.setFst_result_desc(list1.get(0).get("PHYFSTSRESULT_DESC")==null?"":list1.get(0).get("PHYFSTSRESULT_DESC").toString());
  2768. qju.setPsc(hashmap.get(0).get("PSC")==null?"":hashmap.get(0).get("PSC").toString());
  2769. qju.setPsc_desc(hashmap.get(0).get("PSC_DESC")==null?"":hashmap.get(0).get("PSC_DESC").toString());
  2770. qju.setProd_code(hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString());
  2771. qju.setProd_name(hashmap.get(0).get("PROD_NAME")==null?"":hashmap.get(0).get("PROD_NAME").toString());
  2772. qju.setSteel_code(hashmap.get(0).get("STEEL_CODE")==null?"":hashmap.get(0).get("STEEL_CODE").toString());
  2773. qju.setSteel_name(hashmap.get(0).get("STEEL_NAME").toString());
  2774. qju.setStd_code(hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString());
  2775. qju.setStd_name(hashmap.get(0).get("STD_NAME")==null?"":hashmap.get(0).get("STD_NAME").toString());
  2776. qju.setJudge_name(username);
  2777. qju.setJudge_time(new Date());
  2778. qju.setPline_code(hashmap.get(0).get("PLINE_CODE")==null?"":hashmap.get(0).get("PLINE_CODE").toString());
  2779. qju.setPline_name(hashmap.get(0).get("PLINE_NAME")==null?"":hashmap.get(0).get("PLINE_NAME").toString());
  2780. count=0;
  2781. String type1 = "";
  2782. if(material_no.startsWith("Z")||material_no.startsWith("H")){
  2783. type1 = "ZB";
  2784. }else{
  2785. type1 = "ZX";
  2786. }
  2787. sql ="select * from (select * from qcm_judge_ultimate where UTM_ID like '"+type1+date+"%' order by UTM_ID desc) where rownum <= 1";
  2788. List<QcmJudgeUltimate> listUl=mapper.QcmJudgeUltimate(sql);
  2789. if (listUl!=null&&listUl.size()>0) {
  2790. String s=listUl.get(0).getUtm_id();
  2791. count=Integer.parseInt(s.substring(s.length()-4,s.length()));
  2792. }
  2793. count++;
  2794. utm_id=type1+sdf.format(now)+String.format("%04d",count);
  2795. zra.setJudgeid(utm_id);
  2796. mapper.UpdateJugeResultB(zra);
  2797. qju.setUtm_id(utm_id);
  2798. mapper.insertQcmJudgeUltimate(qju);
  2799. judge_call(hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString(),prod_code,hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString(),hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString(),hashmap.get(0).get("PSC")==null?"":hashmap.get(0).get("PSC").toString(),judgeresult,"","","",cj_result,material_no,username,hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString(),hashmap.get(0).get("HT_NO")==null?"":hashmap.get(0).get("HT_NO").toString(),utm_id,hashmap.get(0).get("DESIGN_KEY")==null?"":hashmap.get(0).get("DESIGN_KEY").toString(),steelname);
  2800. }
  2801. }else if(list2.size() >0){
  2802. for(HashMap list:list2){
  2803. if(!list.get("JUDGERESULT").toString().equals("0")){
  2804. throw new Exception("该检验号下已有物料号做了综合判定,不能再次判定!");
  2805. }
  2806. if(list.get("CIC_IS_LOCK").toString().equals("1")){
  2807. throw new Exception("成分已锁定,不能进行综合判定!");
  2808. }
  2809. if(list.get("PIC_IS_LOCK").toString().equals("1")){
  2810. throw new Exception("材质已锁定,不能进行综合判定!");
  2811. }
  2812. if(list.get("SIC_IS_LOCK").toString().equals("1")){
  2813. throw new Exception("公差已锁定,不能进行综合判定!");
  2814. }
  2815. if(list.get("R_CIC_IS_LOCK").toString().equals("1")){
  2816. throw new Exception("成分已锁定,不能进行综合判定!");
  2817. }
  2818. if(list.get("DIC_IS_LOCK").toString().equals("1")){
  2819. throw new Exception("探伤已锁定,不能进行综合判定!");
  2820. }
  2821. if(hashmap.get(0).get("DESIGN_KEY") == null){
  2822. throw new Exception("该物料没有订单,不能进行综合判定!");
  2823. }
  2824. if(list.get("SFU_IS_LOCK").toString().equals("1") || list.get("SFD_IS_LOCK").toString().equals("1") || list.get("SFE_IS_LOCK").toString().equals("1")){
  2825. throw new Exception("表面已锁定,不能进行综合判定!");
  2826. }
  2827. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"C")){
  2828. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_cic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  2829. if(list.get("CHEMRESULT").toString().equals("0") && count > 0){
  2830. throw new Exception("该物料未做成品成分判定,不能进行综合判定!");
  2831. }
  2832. }
  2833. if(list.get("R_CHEMRESULT").toString().equals("0")){
  2834. throw new Exception("该物料未做熔炼成分判定,不能进行综合判定!");
  2835. }
  2836. /*if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"A")){
  2837. if(list.get("R_CHEMRESULT").toString().equals("0")){
  2838. throw new Exception("该物料未做熔炼成分判定,不能取进行综合判定!");
  2839. }
  2840. }*/
  2841. if(list.get("SURFACERESULT").toString().equals("0")){
  2842. throw new Exception("该物料未做表面检验,不能进行综合判定!");
  2843. }
  2844. if(hashmap.get(0).get("PLINE_CODE").equals("RZ1")){
  2845. sql = "select GETCOOLTIME('"+material_no+"') RESULT from dual";
  2846. List<HashMap> listr = mapper.query(sql);
  2847. if(listr.size()>0 && listr.get(0).get("RESULT").equals("N")){
  2848. throw new Exception("该物料缓冷不合格,不能进行综合判定!");
  2849. }
  2850. }
  2851. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_pic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  2852. if(count > 0){
  2853. if(hashmap.get(0).get("PLINE_CODE").equals("LT1")){
  2854. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from QCM_ORD_DESIGN_SAMPLE_M where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"' AND PROCESS_CODE = 'LT1'").get(0).get("COUNT").toString());
  2855. }else if(hashmap.get(0).get("PLINE_CODE").equals("RZ1")){
  2856. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from QCM_ORD_DESIGN_SAMPLE_M where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"' AND PROCESS_CODE = 'RZ1'").get(0).get("COUNT").toString());
  2857. }else if(hashmap.get(0).get("PLINE_CODE").equals("SZ1")){
  2858. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from QCM_ORD_DESIGN_SAMPLE_M where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"' AND PROCESS_CODE = 'SZ1'").get(0).get("COUNT").toString());
  2859. }
  2860. }
  2861. if(list.get("PHYSRESULT").toString().equals("0") && count > 0){
  2862. throw new Exception("该物料未做材质判定,不能进行综合判定!");
  2863. }
  2864. if(hashmap.get(0).get("PLINE_CODE").equals("LT1")){
  2865. count = Integer.parseInt((String) mapper.query("select COUNT(1) count from tbb01_ord_prod t where t.ORD_NO || t.ORD_SEQ='"+hashmap.get(0).get("DESIGN_KEY").toString()+"' AND INSTR(SMP_MILL_PATH, 'LT1')>0 ").get(0).get("COUNT").toString());
  2866. if(list.get("PHYSRESULT").toString().equals("0") && count > 0){
  2867. throw new Exception("该物料未做材质判定,不能进行综合判定!");
  2868. }
  2869. }else if(hashmap.get(0).get("PLINE_CODE").equals("RZ1")){
  2870. count = Integer.parseInt((String) mapper.query("select COUNT(1) count from tbb01_ord_prod t where t.ORD_NO || t.ORD_SEQ='"+hashmap.get(0).get("DESIGN_KEY").toString()+"' AND INSTR(SMP_MILL_PATH, 'RZ1')>0 ").get(0).get("COUNT").toString());
  2871. if(list.get("PHYSRESULT").toString().equals("0") && count > 0){
  2872. throw new Exception("该物料未做材质判定,不能进行综合判定!");
  2873. }
  2874. }
  2875. if(!list.get("PHYSRESULT").toString().equals("0")){
  2876. sql = "select * from qcm_judge_physical_utm_m a where a.pic_id = '"+list.get("PHYSID").toString()+"'";
  2877. List<HashMap> listp1 = mapper.query(sql);
  2878. if(!listp1.get(0).get("PIC_RESULT_CODE").equals(list.get("PHYSRESULT").toString())){
  2879. throw new Exception("性能不相符,不能进行综合判定!");
  2880. }
  2881. }
  2882. /*sql = "select a.* from tbslsendlog@CXZCVIEW a join (select ORDERNO, MAX(TIMESTAMP) as TIMESTAMP "
  2883. + " from tbslsendlog@CXZCVIEW t "
  2884. + " where INFCODEA = 'SpecPhy' "
  2885. + " and t.orderno = '39R-2302-0001003' "
  2886. + " group by ORDERNO) b "
  2887. + " on a.ORDERNO = b.ORDERNO "
  2888. + " and a.TIMESTAMP = b.TIMESTAMP "
  2889. + " and a.INFCODEA = 'SpecPhy' "
  2890. + "and a.SENDSTSA not in ('200', 'true')";
  2891. List<HashMap> listzc = mapper.query(sql);
  2892. if(list.get("PHYSRESULT").toString().equals("0") && listzc.size() > 0){
  2893. throw new Exception("该物料未做材质判定,不能进行综合判定!");
  2894. }*/
  2895. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_sic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  2896. if(list.get("SIZERESULT").toString().equals("0") && count > 0){
  2897. throw new Exception("该物料未做公差检验,不能进行综合判定!");
  2898. }
  2899. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_dic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  2900. if(list.get("SPYRESULT").toString().equals("0") && count > 0){
  2901. throw new Exception("该物料未做探伤检验,不能进行综合判定!");
  2902. }
  2903. if(hashmap.get(0).get("DESIGN_KEY").toString().startsWith("39") || hashmap.get(0).get("DESIGN_KEY").toString().startsWith("49") || hashmap.get(0).get("DESIGN_KEY").toString().startsWith("59")){
  2904. throw new Exception("改判订单,不进行综合判定!");
  2905. }
  2906. if(hashmap.get(0).get("STEEL_NAME").toString().equals("X250") || hashmap.get(0).get("STEEL_NAME").toString().equals("X300") || hashmap.get(0).get("STEEL_NAME").toString().equals("X350") || hashmap.get(0).get("STEEL_NAME").toString().equals("X350D") || hashmap.get(0).get("STEEL_NAME").toString().equals("X470H") || hashmap.get(0).get("STEEL_NAME").toString().equals("X600") || hashmap.get(0).get("STEEL_NAME").toString().equals("X400") || hashmap.get(0).get("STEEL_NAME").toString().equals("X470H-1") || hashmap.get(0).get("STEEL_NAME").toString().equals("X600-1") || hashmap.get(0).get("STEEL_NAME").toString().equals("X600-2")){
  2907. if(list.get("TIC_RESULT").toString().equals("0")){
  2908. throw new Exception("该物料未做工艺检验,不能进行综合判定!");
  2909. }
  2910. if(list.get("TIC_IS_LOCK").toString().equals("1")){
  2911. throw new Exception("工艺已锁定,不能进行综合判定!");
  2912. }
  2913. }
  2914. String physid = "";
  2915. if(list2.get(0).get("PHYFSTSID")==null){
  2916. if(!list.get("PHYSRESULT").toString().equals("0")){
  2917. sql = "select a.phy_id from qcm_judge_physical_utm_d a where a.pic_id = '"+list2.get(0).get("PHYSID").toString()+"'";
  2918. List<HashMap> listp = mapper.query(sql);
  2919. physid = listp.get(0).get("PHY_ID").toString();
  2920. }
  2921. }else{
  2922. physid = list2.get(0).get("PHYFSTSID").toString();
  2923. }
  2924. //String physid = list2.get(0).get("PHYFSTSID")==null?"":list2.get(0).get("PHYFSTSID").toString();
  2925. sql ="select COUNT(*) COUNT from qcm_judge_locking a where a.lock_id = '"+physid+"' AND A.UNLOCK_TYPE_CODE IS NULL";
  2926. List<HashMap> listl = mapper.query(sql);
  2927. if(!listl.get(0).get("COUNT").toString().equals("0")){
  2928. throw new Exception("该性能对应检验号已锁定,不能进行综合判定!");
  2929. }
  2930. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"C")){
  2931. flag += "1".equals(list.get("CHEMRESULT").toString()) ? 0 : 1;
  2932. }
  2933. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"A")){
  2934. flag += "1".equals(list.get("R_CHEMRESULT").toString()) ? 0 : 1;
  2935. }
  2936. flag += "1".equals(list.get("SURFACERESULT").equals("0")?"1":list.get("SURFACERESULT").toString()) ? 0 : 1;
  2937. flag += "1".equals(list.get("PHYSRESULT").equals("0")?"1":list.get("PHYSRESULT").toString()) ? 0 : 1;
  2938. flag += "1".equals(list.get("SIZERESULT").equals("0")?"1":list.get("SIZERESULT").toString()) ? 0 : 1;
  2939. flag += "1".equals(list.get("SPYRESULT").equals("0")?"1":list.get("SPYRESULT").toString()) ? 0 : 1;
  2940. if(hashmap.get(0).get("STEEL_NAME").toString().equals("X250") || hashmap.get(0).get("STEEL_NAME").toString().equals("X300") || hashmap.get(0).get("STEEL_NAME").toString().equals("X350") || hashmap.get(0).get("STEEL_NAME").toString().equals("X350D")){
  2941. flag += "1".equals(list.get("TIC_RESULT").equals("0")?"1":list.get("TIC_RESULT").toString()) ? 0 : 1;
  2942. }
  2943. QcmJudgeUltimate qju=new QcmJudgeUltimate();
  2944. //获取判定记录号当天的最大值
  2945. Date now = new Date();
  2946. String opr_time = new SimpleDateFormat("yyyyMMddHHmmss").format(now); //操作时间
  2947. SimpleDateFormat sdf=new SimpleDateFormat("yyMMdd");
  2948. String date=sdf.format(now);
  2949. count=0;
  2950. sql ="select * from qcm_judge_ultimate where UTM_ID like 'ZJ"+date+"%' order by UTM_ID desc";
  2951. List<QcmJudgeUltimate> listUl=mapper.QcmJudgeUltimate(sql);
  2952. if (listUl!=null&&listUl.size()>0) {
  2953. String s=listUl.get(0).getUtm_id();
  2954. count=Integer.parseInt(s.substring(s.length()-4,s.length()));
  2955. }
  2956. count++;
  2957. utm_id="ZJ"+sdf.format(now)+String.format("%04d",count);
  2958. //更新库存表综合判定结果
  2959. QcmJudgeCoilResult zra = new QcmJudgeCoilResult();
  2960. zra.setCoil_no(material_no);
  2961. zra.setJudgeid(utm_id);
  2962. zra.setJudgeresult(flag == 0 ? "1" :"2");
  2963. zra.setJudgeresult_desc(flag == 0 ? "合格" : "不合格");
  2964. if(list.get("R_CHEMRESULT").toString().equals("3") || list.get("CHEMRESULT").toString().equals("3") || list.get("SURFACERESULT").toString().equals("3") || list.get("PHYSRESULT").toString().equals("3") ||list.get("SIZERESULT").toString().equals("3") ||list.get("SPYRESULT").toString().equals("3")){
  2965. zra.setJudgeresult("3");
  2966. zra.setJudgeresult_desc("次品");
  2967. }
  2968. if(list.get("R_CHEMRESULT").toString().equals("4") || list.get("CHEMRESULT").toString().equals("4") || list.get("SURFACERESULT").toString().equals("4") || list.get("PHYSRESULT").toString().equals("4") ||list.get("SIZERESULT").toString().equals("4") ||list.get("SPYRESULT").toString().equals("4")){
  2969. zra.setJudgeresult("4");
  2970. zra.setJudgeresult_desc("废品");
  2971. }
  2972. judge_result = zra.getJudgeresult();
  2973. /*if(zra.getJudgeresult().equals("2")){
  2974. throw new Exception("综合判定不合格!");
  2975. }*/
  2976. mapper.UpdateJugeResultJ(zra);
  2977. //插入综合判定记录表
  2978. qju.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  2979. qju.setHeat_no(hashmap.get(0).get("HEAT_NO")==null?"":hashmap.get(0).get("HEAT_NO").toString());
  2980. qju.setBatch_no(hashmap.get(0).get("BATCHNO")==null?"":hashmap.get(0).get("BATCHNO").toString());
  2981. qju.setBoard_no(hashmap.get(0).get("BOARD_NO")==null?"":hashmap.get(0).get("BOARD_NO").toString());
  2982. qju.setInspection_lot(hashmap.get(0).get("INSPECTION_LOT") == null ?"":hashmap.get(0).get("INSPECTION_LOT").toString());
  2983. qju.setMaterial_no(material_no);
  2984. qju.setUtm_id(utm_id);
  2985. qju.setUtm_memo("");
  2986. qju.setUtm_result_code(zra.getJudgeresult());
  2987. qju.setUtm_result_desc(zra.getJudgeresult_desc());
  2988. qju.setCic_id(list2.get(0).get("CHEMID") == null?"":list2.get(0).get("CHEMID").toString());
  2989. qju.setCic_result_code(list2.get(0).get("CHEMRESULT")==null?"":list2.get(0).get("CHEMRESULT").toString());
  2990. qju.setCic_result_desc(list2.get(0).get("CHEMRESULT_DESC")==null?"":list2.get(0).get("CHEMRESULT_DESC").toString());
  2991. qju.setR_cic_id(list2.get(0).get("R_CHEMID") == null?"":list2.get(0).get("R_CHEMID").toString());
  2992. qju.setR_cic_result_code(list2.get(0).get("R_CHEMRESULT")==null?"":list2.get(0).get("R_CHEMRESULT").toString());
  2993. qju.setR_cic_result_desc(list2.get(0).get("R_CHEMRESULT_DESC")==null?"":list2.get(0).get("R_CHEMRESULT_DESC").toString());
  2994. qju.setPic_id(list2.get(0).get("PHYSID") == null?"":list2.get(0).get("PHYSID").toString());
  2995. qju.setPic_result_code(list2.get(0).get("PHYSRESULT")==null?"":list2.get(0).get("PHYSRESULT").toString());
  2996. qju.setPic_result_desc(list2.get(0).get("PHYSRESULT_DESC")==null?"":list2.get(0).get("PHYSRESULT_DESC").toString());
  2997. qju.setSic_id(list2.get(0).get("SIZEID") == null?"":list2.get(0).get("SIZEID").toString());
  2998. qju.setSic_result_code(list2.get(0).get("SIZERESULT")==null?"":list2.get(0).get("SIZERESULT").toString());
  2999. qju.setSic_result_desc(list2.get(0).get("SIZERESULT_DESC")==null?"":list2.get(0).get("SIZERESULT_DESC").toString());
  3000. qju.setDic_id(list2.get(0).get("SPYID")==null?"":list2.get(0).get("SPYID").toString());
  3001. qju.setDic_result_code(list2.get(0).get("SPYRESULT")==null?"":list2.get(0).get("SPYRESULT").toString());
  3002. qju.setDic_result_desc(list2.get(0).get("SPYRESULT_DESC")==null?"":list2.get(0).get("SPYRESULT_DESC").toString());
  3003. qju.setSfd_id(list2.get(0).get("SURFACEID")==null?"":list2.get(0).get("SURFACEID").toString());
  3004. qju.setSfd_result_code(list2.get(0).get("UD_SURFACE_RESULT")==null?"":list2.get(0).get("UD_SURFACE_RESULT").toString());
  3005. qju.setSfd_result_desc(list2.get(0).get("UD_SURFACE_RESULT_DESC")==null?"":list2.get(0).get("UD_SURFACE_RESULT_DESC").toString());
  3006. qju.setSfu_id(list2.get(0).get("SURFACEID")==null?"":list2.get(0).get("SURFACEID").toString());
  3007. qju.setSfu_result_code(list2.get(0).get("UP_SURFACE_RESULT")==null?"":list2.get(0).get("UP_SURFACE_RESULT").toString());
  3008. qju.setSfu_result_desc(list2.get(0).get("UP_SURFACE_RESULT_DESC")==null?"":list2.get(0).get("UP_SURFACE_RESULT_DESC").toString());
  3009. qju.setSfe_id(list2.get(0).get("SURFACEID")==null?"":list2.get(0).get("SURFACEID").toString());
  3010. qju.setSfe_result_code(list2.get(0).get("MARGINAL_RESULT")==null?"":list2.get(0).get("MARGINAL_RESULT").toString());
  3011. qju.setSfe_result_desc(list2.get(0).get("MARGINAL_RESULT_DESC")==null?"":list2.get(0).get("MARGINAL_RESULT_DESC").toString());
  3012. qju.setMst_id(list2.get(0).get("SURFACEID")==null?"":list2.get(0).get("SURFACEID").toString());
  3013. qju.setMst_result_code(list2.get(0).get("SURFACERESULT")==null?"":list2.get(0).get("SURFACERESULT").toString());
  3014. qju.setMst_result_desc(list2.get(0).get("SURFACERESULT_DESC")==null?"":list2.get(0).get("SURFACERESULT_DESC").toString());
  3015. qju.setFst_id(list2.get(0).get("PHYFSTSID")==null?"":list2.get(0).get("PHYFSTSID").toString());
  3016. qju.setFst_result_code(list2.get(0).get("PHYFSTSRESULT")==null?"":list2.get(0).get("PHYFSTSRESULT").toString());
  3017. qju.setFst_result_desc(list2.get(0).get("PHYFSTSRESULT_DESC")==null?"":list2.get(0).get("PHYFSTSRESULT_DESC").toString());
  3018. qju.setPsc(hashmap.get(0).get("PSC")==null?"":hashmap.get(0).get("PSC").toString());
  3019. qju.setPsc_desc(hashmap.get(0).get("PSC_DESC")==null?"":hashmap.get(0).get("PSC_DESC").toString());
  3020. qju.setProd_code(hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString());
  3021. qju.setProd_name(hashmap.get(0).get("PROD_NAME")==null?"":hashmap.get(0).get("PROD_NAME").toString());
  3022. qju.setSteel_code(hashmap.get(0).get("STEEL_CODE")==null?"":hashmap.get(0).get("STEEL_CODE").toString());
  3023. qju.setSteel_name(hashmap.get(0).get("STEEL_NAME").toString());
  3024. qju.setStd_code(hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString());
  3025. qju.setStd_name(hashmap.get(0).get("STD_NAME")==null?"":hashmap.get(0).get("STD_NAME").toString());
  3026. qju.setJudge_name(username);
  3027. qju.setJudge_time(new Date());
  3028. qju.setTic_id(list2.get(0).get("TIC_ID")==null?"":list2.get(0).get("TIC_ID").toString());
  3029. qju.setTic_result_code(list2.get(0).get("TIC_RESULT")==null?"":list2.get(0).get("TIC_RESULT").toString());
  3030. qju.setTic_result_desc(list2.get(0).get("TIC_RESULT_DESC")==null?"":list2.get(0).get("TIC_RESULT_DESC").toString());
  3031. qju.setPline_code(hashmap.get(0).get("PLINE_CODE")==null?"":hashmap.get(0).get("PLINE_CODE").toString());
  3032. qju.setPline_name(hashmap.get(0).get("PLINE_NAME")==null?"":hashmap.get(0).get("PLINE_NAME").toString());
  3033. mapper.insertQcmJudgeUltimate(qju);
  3034. if(zra.getJudgeresult().equals("1")){
  3035. //发送熔炼成分实绩
  3036. //List<QcmJhyInspElements> chemresult1 = mapper.queryQcmJhyInspElements("select * from qcm_jhy_insp_elements t where t.assay_type = 'L' and t.heat_no = '"+hashmap.get(0).get("HEAT_NO").toString()+"'");
  3037. if(list.get("R_CHEMID") != null){
  3038. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  3039. qjus.setMaterial_no(material_no);
  3040. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  3041. qjus.setResult_type("C");
  3042. qjus.setJudge_id(list.get("R_CHEMID") == null?"":list.get("R_CHEMID").toString());
  3043. qjus.setCreate_name("system");
  3044. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  3045. }
  3046. //String inspection_lot = hashmap.get(0).get("INSPECTION_LOT") == null?"":hashmap.get(0).get("INSPECTION_LOT").toString();
  3047. //发送成品成分实绩
  3048. //List<QcmJhyInspElements> chemresult2 = mapper.queryQcmJhyInspElements("select * from qcm_jhy_insp_elements t where t.assay_type = 'P' and t.INSPECTION_LOT = '"+inspection_lot+"'");
  3049. if(list.get("CHEMID") != null){
  3050. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  3051. qjus.setMaterial_no(material_no);
  3052. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  3053. qjus.setResult_type("C");
  3054. qjus.setJudge_id(list.get("CHEMID") == null?"":list.get("CHEMID").toString());
  3055. qjus.setCreate_name("system");
  3056. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  3057. }
  3058. //发送材质实绩
  3059. //List<QcmJhyPhyresult> phyresult1 = mapper.queryQcmJhyPhyresult("select * from qcm_jhy_insp_physics t where t.SPECIMEN_NO in (select SPECIMEN_NO from QCM_JHY_SAMPLE_CONSIGN_D where INSPECTION_LOT = '"+inspection_lot+"')");
  3060. if(list.get("PHYSID") != null){
  3061. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  3062. qjus.setMaterial_no(material_no);
  3063. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  3064. qjus.setResult_type("P");
  3065. qjus.setJudge_id(list.get("PHYSID") == null?"":list.get("PHYSID").toString());
  3066. qjus.setCreate_name("system");
  3067. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  3068. }
  3069. }
  3070. }
  3071. }else{
  3072. for(HashMap list:list3){
  3073. if(!list.get("JUDGERESULT").toString().equals("0")){
  3074. throw new Exception("该检验号下已有物料号做了综合判定,不能再次判定!");
  3075. }
  3076. if(list.get("CIC_IS_LOCK").toString().equals("1")){
  3077. throw new Exception("成分已锁定,不能进行综合判定!");
  3078. }
  3079. if(list.get("PIC_IS_LOCK").toString().equals("1")){
  3080. throw new Exception("材质已锁定,不能进行综合判定!");
  3081. }
  3082. if(list.get("SIC_IS_LOCK").toString().equals("1")){
  3083. throw new Exception("公差已锁定,不能进行综合判定!");
  3084. }
  3085. if(list.get("R_CIC_IS_LOCK").toString().equals("1")){
  3086. throw new Exception("成分已锁定,不能进行综合判定!");
  3087. }
  3088. if(hashmap.get(0).get("DESIGN_KEY") == null){
  3089. throw new Exception("该物料没有订单,不能进行综合判定!");
  3090. }
  3091. if(list.get("SFU_IS_LOCK").toString().equals("1") || list.get("SFD_IS_LOCK").toString().equals("1") || list.get("SFE_IS_LOCK").toString().equals("1")){
  3092. throw new Exception("表面已锁定,不能进行综合判定!");
  3093. }
  3094. if(list.get("FINAL_PROCESSES").toString().equals("1")){
  3095. if(list.get("SURFACERESULT").toString().equals("0")){
  3096. throw new Exception("该物料未做表面检验,不能进行综合判定!");
  3097. }
  3098. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_cic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  3099. if(list.get("R_CHEMRESULT").toString().equals("0") && count>0){
  3100. throw new Exception("该物料未做熔炼成分判定,不能进行综合判定!");
  3101. }
  3102. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_pic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  3103. if(count > 0){
  3104. if(hashmap.get(0).get("PLINE_CODE").equals("YT1")){
  3105. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from QCM_ORD_DESIGN_SAMPLE_M where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"' AND PROCESS_CODE = 'YT1'").get(0).get("COUNT").toString());
  3106. }
  3107. }
  3108. if(list.get("PHYSRESULT").toString().equals("0") && count > 0){
  3109. throw new Exception("该物料未做材质判定,不能进行综合判定!");
  3110. }
  3111. if(!list.get("PHYSRESULT").toString().equals("0")){
  3112. sql = "select * from qcm_judge_physical_utm_m a where a.pic_id = '"+list.get("PHYSID").toString()+"'";
  3113. List<HashMap> listp1 = mapper.query(sql);
  3114. if(!listp1.get(0).get("PIC_RESULT_CODE").equals(list.get("PHYSRESULT").toString())){
  3115. throw new Exception("性能不相符,不能进行综合判定!");
  3116. }
  3117. }
  3118. }else{
  3119. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_sic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  3120. if(list.get("SURFACERESULT").toString().equals("0") && count > 0){
  3121. throw new Exception("该物料未做表面检验,不能进行综合判定!");
  3122. }
  3123. }
  3124. /*if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"A")){
  3125. if(list.get("R_CHEMRESULT").toString().equals("0")){
  3126. throw new Exception("该物料未做熔炼成分判定,不能取进行综合判定!");
  3127. }
  3128. }*/
  3129. /*sql = "select a.* from tbslsendlog@CXZCVIEW a join (select ORDERNO, MAX(TIMESTAMP) as TIMESTAMP "
  3130. + " from tbslsendlog@CXZCVIEW t "
  3131. + " where INFCODEA = 'SpecPhy' "
  3132. + " and t.orderno = '39R-2302-0001003' "
  3133. + " group by ORDERNO) b "
  3134. + " on a.ORDERNO = b.ORDERNO "
  3135. + " and a.TIMESTAMP = b.TIMESTAMP "
  3136. + " and a.INFCODEA = 'SpecPhy' "
  3137. + "and a.SENDSTSA not in ('200', 'true')";
  3138. List<HashMap> listzc = mapper.query(sql);
  3139. if(list.get("PHYSRESULT").toString().equals("0") && listzc.size() > 0){
  3140. throw new Exception("该物料未做材质判定,不能进行综合判定!");
  3141. }*/
  3142. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_sic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  3143. if(list.get("SIZERESULT").toString().equals("0") && count > 0){
  3144. throw new Exception("该物料未做公差检验,不能进行综合判定!");
  3145. }
  3146. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_dic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  3147. if(list.get("SPYRESULT").toString().equals("0") && count > 0){
  3148. throw new Exception("该物料未做探伤检验,不能进行综合判定!");
  3149. }
  3150. if(hashmap.get(0).get("DESIGN_KEY").toString().startsWith("39") || hashmap.get(0).get("DESIGN_KEY").toString().startsWith("49") || hashmap.get(0).get("DESIGN_KEY").toString().startsWith("59")){
  3151. throw new Exception("改判订单,不进行综合判定!");
  3152. }
  3153. String physid = "";
  3154. if(list3.get(0).get("PHYFSTSID")==null){
  3155. if(!list.get("PHYSRESULT").toString().equals("0")){
  3156. sql = "select a.phy_id from qcm_judge_physical_utm_d a where a.pic_id = '"+list3.get(0).get("PHYSID").toString()+"'";
  3157. List<HashMap> listp = mapper.query(sql);
  3158. physid = listp.get(0).get("PHY_ID").toString();
  3159. }
  3160. }else{
  3161. physid = list3.get(0).get("PHYFSTSID").toString();
  3162. }
  3163. //String physid = list2.get(0).get("PHYFSTSID")==null?"":list2.get(0).get("PHYFSTSID").toString();
  3164. sql ="select COUNT(*) COUNT from qcm_judge_locking a where a.lock_id = '"+physid+"' AND A.UNLOCK_TYPE_CODE IS NULL";
  3165. List<HashMap> listl = mapper.query(sql);
  3166. if(!listl.get(0).get("COUNT").toString().equals("0")){
  3167. throw new Exception("该性能对应检验号已锁定,不能进行综合判定!");
  3168. }
  3169. /*if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"C")){
  3170. flag += "1".equals(list.get("CHEMRESULT").toString()) ? 0 : 1;
  3171. }*/
  3172. /*if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"A")){
  3173. flag += "1".equals(list.get("R_CHEMRESULT").toString()) ? 0 : 1;
  3174. }*/
  3175. flag += "1".equals(list.get("R_CHEMRESULT").equals("0")?"1":list.get("R_CHEMRESULT").toString()) ? 0 : 1;
  3176. flag += "1".equals(list.get("SURFACERESULT").equals("0")?"1":list.get("SURFACERESULT").toString()) ? 0 : 1;
  3177. flag += "1".equals(list.get("PHYSRESULT").equals("0")?"1":list.get("PHYSRESULT").toString()) ? 0 : 1;
  3178. flag += "1".equals(list.get("SIZERESULT").equals("0")?"1":list.get("SIZERESULT").toString()) ? 0 : 1;
  3179. flag += "1".equals(list.get("SPYRESULT").equals("0")?"1":list.get("SPYRESULT").toString()) ? 0 : 1;
  3180. if(hashmap.get(0).get("STEEL_NAME").toString().equals("X250") || hashmap.get(0).get("STEEL_NAME").toString().equals("X300") || hashmap.get(0).get("STEEL_NAME").toString().equals("X350") || hashmap.get(0).get("STEEL_NAME").toString().equals("X350D")){
  3181. flag += "1".equals(list.get("TIC_RESULT").equals("0")?"1":list.get("TIC_RESULT").toString()) ? 0 : 1;
  3182. }
  3183. QcmJudgeUltimate qju=new QcmJudgeUltimate();
  3184. //获取判定记录号当天的最大值
  3185. Date now = new Date();
  3186. String opr_time = new SimpleDateFormat("yyyyMMddHHmmss").format(now); //操作时间
  3187. SimpleDateFormat sdf=new SimpleDateFormat("yyMMdd");
  3188. String date=sdf.format(now);
  3189. count=0;
  3190. sql ="select * from qcm_judge_ultimate where UTM_ID like 'ZY"+date+"%' order by UTM_ID desc";
  3191. List<QcmJudgeUltimate> listUl=mapper.QcmJudgeUltimate(sql);
  3192. if (listUl!=null&&listUl.size()>0) {
  3193. String s=listUl.get(0).getUtm_id();
  3194. count=Integer.parseInt(s.substring(s.length()-4,s.length()));
  3195. }
  3196. count++;
  3197. utm_id="ZY"+sdf.format(now)+String.format("%04d",count);
  3198. //更新库存表综合判定结果
  3199. QcmJudgeYtCoilResult zra = new QcmJudgeYtCoilResult();
  3200. zra.setCoil_no(material_no);
  3201. zra.setJudgeid(utm_id);
  3202. zra.setJudgeresult(flag == 0 ? "1" :"2");
  3203. zra.setJudgeresult_desc(flag == 0 ? "合格" : "不合格");
  3204. if(list.get("R_CHEMRESULT").toString().equals("3") || list.get("CHEMRESULT").toString().equals("3") || list.get("SURFACERESULT").toString().equals("3") || list.get("PHYSRESULT").toString().equals("3") ||list.get("SIZERESULT").toString().equals("3") ||list.get("SPYRESULT").toString().equals("3")){
  3205. zra.setJudgeresult("3");
  3206. zra.setJudgeresult_desc("次品");
  3207. }
  3208. if(list.get("R_CHEMRESULT").toString().equals("4") || list.get("CHEMRESULT").toString().equals("4") || list.get("SURFACERESULT").toString().equals("4") || list.get("PHYSRESULT").toString().equals("4") ||list.get("SIZERESULT").toString().equals("4") ||list.get("SPYRESULT").toString().equals("4")){
  3209. zra.setJudgeresult("4");
  3210. zra.setJudgeresult_desc("废品");
  3211. }
  3212. judge_result = zra.getJudgeresult();
  3213. /*if(zra.getJudgeresult().equals("2")){
  3214. throw new Exception("综合判定不合格!");
  3215. }*/
  3216. mapper.UpdateJugeResultY(zra);
  3217. //插入综合判定记录表
  3218. qju.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  3219. qju.setHeat_no(hashmap.get(0).get("HEAT_NO")==null?"":hashmap.get(0).get("HEAT_NO").toString());
  3220. qju.setBatch_no(hashmap.get(0).get("BATCHNO")==null?"":hashmap.get(0).get("BATCHNO").toString());
  3221. qju.setBoard_no(hashmap.get(0).get("BOARD_NO")==null?"":hashmap.get(0).get("BOARD_NO").toString());
  3222. qju.setInspection_lot(hashmap.get(0).get("INSPECTION_LOT") == null ?"":hashmap.get(0).get("INSPECTION_LOT").toString());
  3223. qju.setMaterial_no(material_no);
  3224. qju.setUtm_id(utm_id);
  3225. qju.setUtm_memo("");
  3226. qju.setUtm_result_code(zra.getJudgeresult());
  3227. qju.setUtm_result_desc(zra.getJudgeresult_desc());
  3228. qju.setCic_id(list3.get(0).get("CHEMID") == null?"":list3.get(0).get("CHEMID").toString());
  3229. qju.setCic_result_code(list3.get(0).get("CHEMRESULT")==null?"":list3.get(0).get("CHEMRESULT").toString());
  3230. qju.setCic_result_desc(list3.get(0).get("CHEMRESULT_DESC")==null?"":list3.get(0).get("CHEMRESULT_DESC").toString());
  3231. qju.setR_cic_id(list3.get(0).get("R_CHEMID") == null?"":list3.get(0).get("R_CHEMID").toString());
  3232. qju.setR_cic_result_code(list3.get(0).get("R_CHEMRESULT")==null?"":list3.get(0).get("R_CHEMRESULT").toString());
  3233. qju.setR_cic_result_desc(list3.get(0).get("R_CHEMRESULT_DESC")==null?"":list3.get(0).get("R_CHEMRESULT_DESC").toString());
  3234. qju.setPic_id(list3.get(0).get("PHYSID") == null?"":list3.get(0).get("PHYSID").toString());
  3235. qju.setPic_result_code(list3.get(0).get("PHYSRESULT")==null?"":list3.get(0).get("PHYSRESULT").toString());
  3236. qju.setPic_result_desc(list3.get(0).get("PHYSRESULT_DESC")==null?"":list3.get(0).get("PHYSRESULT_DESC").toString());
  3237. qju.setSic_id(list3.get(0).get("SIZEID") == null?"":list3.get(0).get("SIZEID").toString());
  3238. qju.setSic_result_code(list3.get(0).get("SIZERESULT")==null?"":list3.get(0).get("SIZERESULT").toString());
  3239. qju.setSic_result_desc(list3.get(0).get("SIZERESULT_DESC")==null?"":list3.get(0).get("SIZERESULT_DESC").toString());
  3240. qju.setDic_id(list3.get(0).get("SPYID")==null?"":list3.get(0).get("SPYID").toString());
  3241. qju.setDic_result_code(list3.get(0).get("SPYRESULT")==null?"":list3.get(0).get("SPYRESULT").toString());
  3242. qju.setDic_result_desc(list3.get(0).get("SPYRESULT_DESC")==null?"":list3.get(0).get("SPYRESULT_DESC").toString());
  3243. qju.setSfd_id(list3.get(0).get("SURFACEID")==null?"":list3.get(0).get("SURFACEID").toString());
  3244. qju.setSfd_result_code(list3.get(0).get("UD_SURFACE_RESULT")==null?"":list3.get(0).get("UD_SURFACE_RESULT").toString());
  3245. qju.setSfd_result_desc(list3.get(0).get("UD_SURFACE_RESULT_DESC")==null?"":list3.get(0).get("UD_SURFACE_RESULT_DESC").toString());
  3246. qju.setSfu_id(list3.get(0).get("SURFACEID")==null?"":list3.get(0).get("SURFACEID").toString());
  3247. qju.setSfu_result_code(list3.get(0).get("UP_SURFACE_RESULT")==null?"":list3.get(0).get("UP_SURFACE_RESULT").toString());
  3248. qju.setSfu_result_desc(list3.get(0).get("UP_SURFACE_RESULT_DESC")==null?"":list3.get(0).get("UP_SURFACE_RESULT_DESC").toString());
  3249. qju.setSfe_id(list3.get(0).get("SURFACEID")==null?"":list3.get(0).get("SURFACEID").toString());
  3250. qju.setSfe_result_code(list3.get(0).get("MARGINAL_RESULT")==null?"":list3.get(0).get("MARGINAL_RESULT").toString());
  3251. qju.setSfe_result_desc(list3.get(0).get("MARGINAL_RESULT_DESC")==null?"":list3.get(0).get("MARGINAL_RESULT_DESC").toString());
  3252. qju.setMst_id(list3.get(0).get("SURFACEID")==null?"":list3.get(0).get("SURFACEID").toString());
  3253. qju.setMst_result_code(list3.get(0).get("SURFACERESULT")==null?"":list3.get(0).get("SURFACERESULT").toString());
  3254. qju.setMst_result_desc(list3.get(0).get("SURFACERESULT_DESC")==null?"":list3.get(0).get("SURFACERESULT_DESC").toString());
  3255. qju.setFst_id(list3.get(0).get("PHYFSTSID")==null?"":list3.get(0).get("PHYFSTSID").toString());
  3256. qju.setFst_result_code(list3.get(0).get("PHYFSTSRESULT")==null?"":list3.get(0).get("PHYFSTSRESULT").toString());
  3257. qju.setFst_result_desc(list3.get(0).get("PHYFSTSRESULT_DESC")==null?"":list3.get(0).get("PHYFSTSRESULT_DESC").toString());
  3258. qju.setPsc(hashmap.get(0).get("PSC")==null?"":hashmap.get(0).get("PSC").toString());
  3259. qju.setPsc_desc(hashmap.get(0).get("PSC_DESC")==null?"":hashmap.get(0).get("PSC_DESC").toString());
  3260. qju.setProd_code(hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString());
  3261. qju.setProd_name(hashmap.get(0).get("PROD_NAME")==null?"":hashmap.get(0).get("PROD_NAME").toString());
  3262. qju.setSteel_code(hashmap.get(0).get("STEEL_CODE")==null?"":hashmap.get(0).get("STEEL_CODE").toString());
  3263. qju.setSteel_name(hashmap.get(0).get("STEEL_NAME").toString());
  3264. qju.setStd_code(hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString());
  3265. qju.setStd_name(hashmap.get(0).get("STD_NAME")==null?"":hashmap.get(0).get("STD_NAME").toString());
  3266. qju.setJudge_name(username);
  3267. qju.setJudge_time(new Date());
  3268. qju.setTic_id(list3.get(0).get("TIC_ID")==null?"":list3.get(0).get("TIC_ID").toString());
  3269. qju.setTic_result_code(list3.get(0).get("TIC_RESULT")==null?"":list3.get(0).get("TIC_RESULT").toString());
  3270. qju.setTic_result_desc(list3.get(0).get("TIC_RESULT_DESC")==null?"":list3.get(0).get("TIC_RESULT_DESC").toString());
  3271. qju.setPline_code(hashmap.get(0).get("PLINE_CODE")==null?"":hashmap.get(0).get("PLINE_CODE").toString());
  3272. qju.setPline_name(hashmap.get(0).get("PLINE_NAME")==null?"":hashmap.get(0).get("PLINE_NAME").toString());
  3273. mapper.insertQcmJudgeUltimate(qju);
  3274. if(zra.getJudgeresult().equals("1")){
  3275. //发送熔炼成分实绩
  3276. //List<QcmJhyInspElements> chemresult1 = mapper.queryQcmJhyInspElements("select * from qcm_jhy_insp_elements t where t.assay_type = 'L' and t.heat_no = '"+hashmap.get(0).get("HEAT_NO").toString()+"'");
  3277. if(list.get("R_CHEMID") != null){
  3278. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  3279. qjus.setMaterial_no(material_no);
  3280. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  3281. qjus.setResult_type("C");
  3282. qjus.setJudge_id(list.get("R_CHEMID") == null?"":list.get("R_CHEMID").toString());
  3283. qjus.setCreate_name("system");
  3284. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  3285. }
  3286. //String inspection_lot = hashmap.get(0).get("INSPECTION_LOT") == null?"":hashmap.get(0).get("INSPECTION_LOT").toString();
  3287. //发送成品成分实绩
  3288. //List<QcmJhyInspElements> chemresult2 = mapper.queryQcmJhyInspElements("select * from qcm_jhy_insp_elements t where t.assay_type = 'P' and t.INSPECTION_LOT = '"+inspection_lot+"'");
  3289. if(list.get("CHEMID") != null){
  3290. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  3291. qjus.setMaterial_no(material_no);
  3292. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  3293. qjus.setResult_type("C");
  3294. qjus.setJudge_id(list.get("CHEMID") == null?"":list.get("CHEMID").toString());
  3295. qjus.setCreate_name("system");
  3296. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  3297. }
  3298. //发送材质实绩
  3299. //List<QcmJhyPhyresult> phyresult1 = mapper.queryQcmJhyPhyresult("select * from qcm_jhy_insp_physics t where t.SPECIMEN_NO in (select SPECIMEN_NO from QCM_JHY_SAMPLE_CONSIGN_D where INSPECTION_LOT = '"+inspection_lot+"')");
  3300. if(list.get("PHYSID") != null){
  3301. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  3302. qjus.setMaterial_no(material_no);
  3303. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  3304. qjus.setResult_type("P");
  3305. qjus.setJudge_id(list.get("PHYSID") == null?"":list.get("PHYSID").toString());
  3306. qjus.setCreate_name("system");
  3307. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  3308. }
  3309. }
  3310. String url = "http://172.16.81.200/xinsteel.maketx/service/SlmFundFirstDetailService/receiveResUltimate";
  3311. JSONObject jsobj1 = new JSONObject();
  3312. JSONObject jsobj2 = new JSONObject();
  3313. JSONArray ttmaps = new JSONArray();
  3314. JSONArray ttmaps1 = new JSONArray();
  3315. jsobj1.put("utm_id", utm_id);
  3316. jsobj1.put("heat_no",hashmap.get(0).get("HEAT_NO")==null?"":hashmap.get(0).get("HEAT_NO").toString());
  3317. jsobj1.put("batch_no",hashmap.get(0).get("BATCHNO")==null?"":hashmap.get(0).get("BATCHNO").toString());
  3318. jsobj1.put("inspection_lot",hashmap.get(0).get("INSPECTION_LOT1") == null ?"":hashmap.get(0).get("INSPECTION_LOT1").toString());
  3319. jsobj1.put("material_no",material_no);
  3320. jsobj1.put("contract_line_no",hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  3321. jsobj1.put("cic_id",list3.get(0).get("CHEMID") == null?"":list3.get(0).get("CHEMID").toString());
  3322. jsobj1.put("pic_id",list3.get(0).get("PHYSID") == null?"":list3.get(0).get("PHYSID").toString());
  3323. jsobj1.put("sic_id",list3.get(0).get("SIZEID") == null?"":list3.get(0).get("SIZEID").toString());
  3324. jsobj1.put("sic_result_desc",list3.get(0).get("SIZERESULT_DESC")==null?"":list3.get(0).get("SIZERESULT_DESC").toString());
  3325. jsobj1.put("sfu_id",list3.get(0).get("SURFACEID")==null?"":list3.get(0).get("SURFACEID").toString());
  3326. jsobj1.put("sfu_result_desc",list3.get(0).get("SURFACERESULT_DESC")==null?"":list3.get(0).get("SURFACERESULT_DESC").toString());
  3327. jsobj1.put("utm_result_desc",zra.getJudgeresult_desc());
  3328. jsobj1.put("utm_reason","");
  3329. jsobj1.put("utm_memo","");
  3330. jsobj1.put("judge_name",username);
  3331. jsobj1.put("judge_time",now);
  3332. jsobj1.put("order_no",hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  3333. jsobj2.put("object", jsobj1);
  3334. ttmaps1.add(jsobj2);
  3335. String result = post1(JSON.toJSONString(ttmaps1),url);
  3336. JSONObject jo = JSONObject.parseObject(result);
  3337. if(!"200".equals(jo.get("state").toString())){
  3338. throw new Exception(jo.get("msgInfo").toString());
  3339. }
  3340. }
  3341. }
  3342. //判断产线是不是卷板,是的话调用存储过程COILJUDGE_STATUS
  3343. if(list2.size() > 0) {
  3344. hashmap = doQueryMaterialInfoJ(material_no);
  3345. if (hashmap.size() > 0) {
  3346. coiljudge_status_call(hashmap.get(0).get("PLINE_CODE").toString(), material_no, null, null, null, null, judge_result, null, null,"");
  3347. }
  3348. }
  3349. }else{
  3350. throw new Exception("未找到该检验号下的库存信息!");
  3351. }
  3352. QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
  3353. qjog.setOperate_name(username);
  3354. qjog.setOperate_type("综合判定");
  3355. qjog.setParams(material_no);
  3356. qjog.setBatchno(hashmap.get(0).get("BATCHNO")==null?"":hashmap.get(0).get("BATCHNO").toString());
  3357. qjog.setProd_line(hashmap.get(0).get("PLINE_CODE")==null?"":hashmap.get(0).get("PLINE_CODE").toString());
  3358. qjog.setJudge_result(judge_result);
  3359. mapper.insertQcmJudgeOperateLog(qjog);
  3360. //cro = creatUltimateResultByHand(material_no,username);//手动进行综合判定
  3361. SqlSession.commit();
  3362. }catch(Exception ex){
  3363. cro.setV_errCode(-1);
  3364. cro.setV_errMsg(ex.getMessage());
  3365. SqlSession.rollback();
  3366. logger.info(new Date().toString() + " QCM.QCM03.QCM0302.QcmJudgePhysicalServiceImpl.ultimateJudgeAuto:【" + material_no + "," + username + "】" + ex);
  3367. }finally {
  3368. SqlSession.close();
  3369. }
  3370. //SqlSession.close();
  3371. return cro;
  3372. }
  3373. /***
  3374. * 综合判定:
  3375. * 0625增加finally
  3376. * @param sum
  3377. * @return
  3378. */
  3379. @SuppressWarnings({ "rawtypes", "unused" })
  3380. public CoreReturnObject ultimateJudgeAutoY(String material_no, String username,String productname) throws Exception{
  3381. try{
  3382. int count = 0;
  3383. List<HashMap> hashmap = doQueryMaterialInfoZhb(material_no);
  3384. if(hashmap.size() == 0){
  3385. hashmap = doQueryMaterialInfoBX(material_no);
  3386. }
  3387. if(hashmap.size() == 0){
  3388. hashmap = doQueryMaterialInfoJ(material_no);
  3389. }
  3390. String sql = "select * from zj_result_all@xgcx where BILLETID = '"+material_no+"'";
  3391. int flag = 0;
  3392. String judge_result = "";
  3393. List<HashMap> list1 = mapper.query(sql);
  3394. if(list1.size() >0){
  3395. for(HashMap list:list1){
  3396. String pic_id = list.get("PHYSID")==null?"":list.get("PHYSID").toString();
  3397. List<String> listphy = new ArrayList<String>();
  3398. List<String> listphy1 = new ArrayList<String>();
  3399. List<String> listphy2 = new ArrayList<String>();
  3400. List<String> listp1 = new ArrayList<String>();
  3401. /*String billetid_jy = list.get("BILLETID_JY") == null?"":list.get("BILLETID_JY").toString();
  3402. if(billetid_jy.equals("")){
  3403. sql = "select * from qcm_judge_physical_utm_m a where a.pic_id = '"+list.get("PHYSID").toString()+"' ";
  3404. List<HashMap> list11 = mapper.query(sql);
  3405. if(list11.size() >0){
  3406. billetid_jy = list11.get(0).get("INSPECTION_LOT").toString();
  3407. }else
  3408. {
  3409. throw new Exception("检验号为空,不能判定!");
  3410. }
  3411. }
  3412. sql = "select * from qcm_jhy_sample_consign_d t,qcm_jhy_sample_r_ord r "
  3413. + " where t.smp_no = r.smp_no and r.inspection_lot is not null and t.rz_mixroll is not null "
  3414. + " and t.rz_old_sampl_no is not null and r.judge_status<>'1' "
  3415. + " and r.steel_code in ('Q235B','Q355B') and t.rz_mixroll in (select d.rz_mixroll from qcm_jhy_sample_consign_d d where d.inspection_lot = '"+billetid_jy+"') "
  3416. + " and t.rz_old_sampl_no in (select d.rz_old_sampl_no from qcm_jhy_sample_consign_d d where d.inspection_lot = '"+billetid_jy+"')";
  3417. List<HashMap> listyc = mapper.query(sql);
  3418. if(listyc.size() > 0){
  3419. throw new Exception("该预测区间存在未判或者不合格的数据,不能判定!");
  3420. }*/
  3421. String m="";
  3422. List<QcmJudgePhysicalResult> qjpr1 = new ArrayList<QcmJudgePhysicalResult>();
  3423. sql = "select * from qcm_judge_physical_result where phy_id in (select phy_id "
  3424. + " from Qcm_Judge_Physical_Utm_d "
  3425. + " where pic_id = '"+pic_id+"')";
  3426. qjpr1 = mapper.queryQcmJudgePhysicalResult(sql);
  3427. for(QcmJudgePhysicalResult y:qjpr1)
  3428. {
  3429. String s = (y.getPhy_code_l()==null?"":y.getPhy_code_l()) + (y.getPhy_code_m()==null?"":y.getPhy_code_m()) + (y.getPhy_code_s()==null?"":y.getPhy_code_s()) + (y.getItem_code_d()==null?"":y.getItem_code_d())
  3430. + (y.getItem_code_t()==null?"":y.getItem_code_t());
  3431. listphy.add(s);
  3432. }
  3433. List<QcmOrdDesignStdPic> qrdsp = new ArrayList<QcmOrdDesignStdPic>();
  3434. sql = "select * from qcm_ord_design_std_pic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'";
  3435. qrdsp = mapper.queryQCMOrdDesignStdPic(sql);
  3436. for(QcmOrdDesignStdPic x:qrdsp){
  3437. String z = (x.getPhy_code_l()==null?"":x.getPhy_code_l()) + (x.getPhy_code_m()==null?"":x.getPhy_code_m()) + (x.getPhy_code_s()==null?"":x.getPhy_code_s()) + (x.getItem_code_d()==null?"":x.getItem_code_d())
  3438. + (x.getItem_code_t()==null?"":x.getItem_code_t());
  3439. String y = (x.getPhy_name_l()==null?"":x.getPhy_name_l()) + (x.getPhy_desc_m()==null?"":x.getPhy_desc_m()) + (x.getPhy_name_s()==null?"":x.getPhy_name_s()) + (x.getItem_name_d()==null?"":x.getItem_name_d())
  3440. + (x.getItem_name_s()==null?"":x.getItem_name_s()) + (x.getItem_name_t()==null?"":x.getItem_name_t());
  3441. if(!listphy.contains(z)){
  3442. throw new Exception("该材质判定未满足订单标准,不能判定,缺失"+y+" 检验项目!");
  3443. }
  3444. listphy2.add(z);
  3445. }
  3446. for(QcmJudgePhysicalResult y:qjpr1)
  3447. {
  3448. String s = (y.getPhy_code_l()==null?"":y.getPhy_code_l()) + (y.getPhy_code_m()==null?"":y.getPhy_code_m()) + (y.getPhy_code_s()==null?"":y.getPhy_code_s()) + (y.getItem_code_d()==null?"":y.getItem_code_d())
  3449. + (y.getItem_code_t()==null?"":y.getItem_code_t());
  3450. m = (y.getPhy_name_l()==null?"":y.getPhy_name_l()) + (y.getPhy_name_m()==null?"":y.getPhy_name_m()) + (y.getPhy_name_s()==null?"":y.getPhy_name_s()) + (y.getItem_name_d()==null?"":y.getItem_name_d())
  3451. + (y.getItem_name_s()==null?"":y.getItem_name_s()) + (y.getItem_name_t()==null?"":y.getItem_name_t());
  3452. if(!listphy2.contains(s) && (material_no.startsWith("Z") || material_no.startsWith("H")) && listphy2.size() >0){
  3453. throw new Exception("该材质判定未满足订单标准,不能判定,比标准多出"+m+" 检验项目!");
  3454. }
  3455. }
  3456. List<QcmJudgePhysicalUtmD> qjpu = new ArrayList<QcmJudgePhysicalUtmD>();
  3457. String sql1 = "select * "
  3458. + " from Qcm_Judge_Physical_Utm_d "
  3459. + " where pic_id = '"+pic_id+"'";
  3460. qjpu = mapper.queryQcmJudgePhysicalUtmD(sql1);
  3461. for(QcmJudgePhysicalUtmD t : qjpu){
  3462. String s = t.getCert_inst_code()+t.getSteel_name();
  3463. listphy1.add(s);
  3464. }
  3465. for(QcmOrdDesignStdPic x:qrdsp){
  3466. String z = x.getOrg_code()+x.getSteel_name();
  3467. String y = x.getOrg_name()+x.getSteel_name();
  3468. if(!listphy1.contains(z)){
  3469. throw new Exception("该材质判定未满足订单标准,不能判定,缺失"+y+" 标准!");
  3470. }
  3471. }
  3472. //模拟焊后卡控
  3473. sql = "select distinct z.smp_location from qcm_jhy_sample_consign_d_item z where z.specimen_no in (select distinct z.specimen_no from qcm_judge_physical_result z where z.smp_no in (select a.smp_no from qcm_judge_physical_utm_d a where a.pic_id = '"+pic_id+"')) and smp_location is not null";
  3474. List<HashMap> hashmapp = mapper.query(sql);
  3475. if(hashmapp.size() ==0){
  3476. sql = "select distinct z.smp_location from qcm_jhy_sample_consign_d z where z.specimen_no in (select distinct z.specimen_no from qcm_judge_physical_result z where z.smp_no in (select a.smp_no from qcm_judge_physical_utm_d a where a.pic_id = '"+pic_id+"')) and smp_location is not null";
  3477. hashmapp = mapper.query(sql);
  3478. }
  3479. for(HashMap p1:hashmapp){
  3480. listp1.add(p1.get("SMP_LOCATION").toString());
  3481. }
  3482. sql = "select distinct a.smp_position_desc from qcm_ord_design_std_pic_smp a where a.design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'";
  3483. List<HashMap> hashmapp1 = mapper.query(sql);
  3484. for(HashMap p2:hashmapp1){
  3485. String z= p2.get("SMP_POSITION_DESC").toString();
  3486. if(!listp1.contains(z)){
  3487. throw new Exception("该材质判定未满足订单标准,不能判定,缺失"+z+" 取样位置!");
  3488. }
  3489. }
  3490. if(!list.get("JUDGERESULT").toString().equals("0")){
  3491. throw new Exception("该物料做了综合判定,不能再次判定!");
  3492. }
  3493. if(list.get("CIC_IS_LOCK").toString().equals("1")){
  3494. throw new Exception("成分已锁定,不能进行综合判定!");
  3495. }
  3496. if(list.get("PIC_IS_LOCK").toString().equals("1")){
  3497. throw new Exception("材质已锁定,不能进行综合判定!");
  3498. }
  3499. if(list.get("R_CIC_IS_LOCK").toString().equals("1")){
  3500. throw new Exception("成分已锁定,不能进行综合判定!");
  3501. }
  3502. if(list.get("SIC_IS_LOCK").toString().equals("1")){
  3503. throw new Exception("公差已锁定,不能进行综合判定!");
  3504. }
  3505. if(list.get("DIC_IS_LOCK").toString().equals("1")){
  3506. throw new Exception("探伤已锁定,不能进行综合判定!");
  3507. }
  3508. if(list.get("SFU_IS_LOCK").toString().equals("1") || list.get("SFD_IS_LOCK").toString().equals("1") || list.get("SFE_IS_LOCK").toString().equals("1")){
  3509. throw new Exception("表面已锁定,不能进行综合判定!");
  3510. }
  3511. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"C")){
  3512. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_cic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  3513. if(list.get("CHEMRESULT").toString().equals("0") && count >0){
  3514. throw new Exception("该物料未做成品成分判定,不能进行综合判定!");
  3515. }
  3516. }
  3517. if(list.get("R_CHEMRESULT").toString().equals("0")){
  3518. throw new Exception("该物料未做熔炼成分判定,不能进行综合判定!");
  3519. }
  3520. /*if(list.get("BILLETID_JY") == null){
  3521. throw new Exception("该物料检验号为空,不能进行综合判定!");
  3522. }*/
  3523. String inspection_lot = hashmap.get(0).get("INSPECTION_LOT") == null ?"":hashmap.get(0).get("INSPECTION_LOT").toString();
  3524. /*if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"A")){
  3525. if(list.get("R_CHEMRESULT").toString().equals("0")){
  3526. throw new Exception("该物料未做熔炼成分判定,不能取进行综合判定!");
  3527. }
  3528. }*/
  3529. if(list.get("SURFACERESULT").toString().equals("0")){
  3530. throw new Exception("该物料未做表面检验,不能进行综合判定!");
  3531. }
  3532. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_pic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  3533. if(list.get("PHYSRESULT").toString().equals("0") && count > 0){
  3534. throw new Exception("该物料未做材质判定,不能进行综合判定!");
  3535. }
  3536. /*sql = "select a.* from tbslsendlog@CXZCVIEW a join (select ORDERNO, MAX(TIMESTAMP) as TIMESTAMP "
  3537. + " from tbslsendlog@CXZCVIEW t "
  3538. + " where INFCODEA = 'SpecPhy' "
  3539. + " and t.orderno = '39R-2302-0001003' "
  3540. + " group by ORDERNO) b "
  3541. + " on a.ORDERNO = b.ORDERNO "
  3542. + " and a.TIMESTAMP = b.TIMESTAMP "
  3543. + " and a.INFCODEA = 'SpecPhy' "
  3544. + "and a.SENDSTSA not in ('200', 'true')";
  3545. List<HashMap> listzc = mapper.query(sql);
  3546. if(list.get("PHYSRESULT").toString().equals("0") && listzc.size() > 0){
  3547. throw new Exception("该物料未做材质判定,不能进行综合判定!");
  3548. }*/
  3549. if(count>0){
  3550. if(material_no.startsWith("Z") || material_no.startsWith("H")){
  3551. List<HashMap> listy = mapper.query("SELECT max(x.process_nos) ht_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = '"+list.get("PHYSID").toString()+"')");
  3552. if(listy.get(0).get("HT_NO") == null){
  3553. throw new Exception("该物料委托处理号为空,不能进行综合判定!");
  3554. }
  3555. String s1 =hashmap.get(0).get("HT_NO").toString().substring(0, 1)+ hashmap.get(0).get("HT_NO").toString().substring(3, 4)+ hashmap.get(0).get("HT_NO").toString().substring(4, 5);
  3556. String s2 = listy.get(0).get("HT_NO").toString().substring(0, 1)+listy.get(0).get("HT_NO").toString().substring(3, 4)+listy.get(0).get("HT_NO").toString().substring(4, 5);
  3557. if(!s1.equals(s2)){
  3558. throw new Exception("该物料热处理号与委托热处理号不一致,不能进行综合判定!");
  3559. }
  3560. /*if(!hashmap.get(0).get("HT_NO").toString().equals(listy.get(0).get("HT_NO").toString())){
  3561. throw new Exception("该物料热处理号与委托热处理号不一致,不能进行综合判定!");
  3562. }*/
  3563. /*if(!hashmap.get(0).get("HT_NO").equals(listy.get(0).get("HT_NO").toString())){
  3564. throw new Exception("该物料热处理号与委托热处理号不一致,不能进行综合判定!");
  3565. }*/
  3566. List<HashMap> listST = mapper.query("select nvl(m.MAIN_STEEL_CODE,o.steel_code) steel_name,nvl(o.thick,0) thick,O.DESIGN_KEY from qcm_jhy_sample_r_ord o,qcm_ord_design_std_pic m where o.design_key = m.design_key and o.steel_code = m.steel_code and o.smp_no in (SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = '"+list.get("PHYSID").toString()+"') and rownum = 1 ");
  3567. if(!hashmap.get(0).get("STEEL_NAME").equals(listST.get(0).get("STEEL_NAME").toString())){
  3568. throw new Exception("该物料牌号与委托牌号不一致,不能进行综合判定!");
  3569. }
  3570. if(!hashmap.get(0).get("THICK").toString().trim().equals(listST.get(0).get("THICK").toString().trim())){
  3571. throw new Exception("该物料规格【"+hashmap.get(0).get("THICK")+"】与委托规格【"+listST.get(0).get("THICK").toString()+"】不一致,不能进行综合判定!");
  3572. }
  3573. if(!hashmap.get(0).get("DESIGN_KEY").equals(listST.get(0).get("DESIGN_KEY")) && (material_no.startsWith("Z") || material_no.startsWith("H"))){
  3574. sql = "SELECT * FROM QCM_ORD_DESIGN_STD_PIC A WHERE a.design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"' AND A.SPECL_FL || A.PHY_DESC_L || A.PHY_DESC_M || A.PHY_NAME_S || A.ITEM_DESC_D || A.ITEM_DESC_T || A.ITEM_DESC_S || A.ORG_NAME || A.STDMIN || A.STDMAX NOT IN (SELECT B.SPECL_FL || B.PHY_DESC_L || B.PHY_DESC_M || B.PHY_NAME_S || B.ITEM_DESC_D || B.ITEM_DESC_T || B.ITEM_DESC_S || B.ORG_NAME || B.STDMIN || B.STDMAX FROM QCM_ORD_DESIGN_STD_PIC B WHERE B.DESIGN_KEY = '"+listST.get(0).get("DESIGN_KEY")+"')";
  3575. List<HashMap> list_s = mapper.query(sql);
  3576. if(list_s.size() >0){
  3577. throw new Exception("现订单标准与委托标准不一致,不能判定!");
  3578. }
  3579. }
  3580. List<HashMap> listpicsmp = mapper.query("select * from qcm_ord_design_std_pic_smp z where z.design_key ='"+hashmap.get(0).get("DESIGN_KEY").toString()+"'");
  3581. for(HashMap listsmp : listpicsmp){
  3582. listphy2.add(listsmp.get("SMP_RATE_CODE").toString());
  3583. }
  3584. if(listphy2.contains("C") || listphy2.contains("H") || listphy2.contains("I")){
  3585. listy = mapper.query("SELECT max(x.material_no) material_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = '"+list.get("PHYSID").toString()+"')");
  3586. if(!material_no.equals(listy.get(0).get("MATERIAL_NO").toString())){
  3587. throw new Exception("该物料号与委托取样产品序号不一致,不能进行综合判定!");
  3588. }
  3589. }else if(listphy2.contains("F") || listphy2.contains("B")){
  3590. listy = mapper.query("SELECT max(substr(x.material_no,1,10)) material_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = '"+list.get("PHYSID").toString()+"')");
  3591. if(!material_no.startsWith(listy.get(0).get("MATERIAL_NO").toString())){
  3592. throw new Exception("该物料号与委托取样产品序号母板不一致,不能进行综合判定!");
  3593. }
  3594. }else{
  3595. listy = mapper.query("SELECT max(x.batch_no) batch_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = '"+list.get("PHYSID").toString()+"')");
  3596. if(!material_no.startsWith(listy.get(0).get("BATCH_NO").toString())){
  3597. throw new Exception("该物料号与委托取样产品序号轧批号不一致,不能进行综合判定!");
  3598. }
  3599. }
  3600. }
  3601. }
  3602. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_sic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  3603. if(list.get("SIZERESULT").toString().equals("0") && count > 0){
  3604. throw new Exception("该物料未做公差检验,不能进行综合判定!");
  3605. }
  3606. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_dic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  3607. if(list.get("SPYRESULT").toString().equals("0") && count > 0){
  3608. throw new Exception("该物料未做探伤检验,不能进行综合判定!");
  3609. }
  3610. }
  3611. }else{
  3612. throw new Exception("未找到该检验号下的库存信息!");
  3613. }
  3614. QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
  3615. qjog.setOperate_name(username);
  3616. qjog.setOperate_type("预综合判定");
  3617. qjog.setParams(material_no);
  3618. qjog.setProd_line(hashmap.get(0).get("PLINE_CODE")==null?"":hashmap.get(0).get("PLINE_CODE").toString());
  3619. qjog.setJudge_result(judge_result);
  3620. mapper.insertQcmJudgeOperateLog(qjog);
  3621. //cro = creatUltimateResultByHand(material_no,username);//手动进行综合判定
  3622. SqlSession.commit();
  3623. }catch(Exception ex){
  3624. cro.setV_errCode(-1);
  3625. cro.setV_errMsg(ex.getMessage());
  3626. SqlSession.rollback();
  3627. logger.info(new Date().toString() + " QCM.QCM03.QCM0302.QcmJudgePhysicalServiceImpl.ultimateJudgeAutoY:【" + material_no + "," + username + "】" + ex);
  3628. }finally {
  3629. SqlSession.close();
  3630. }
  3631. //SqlSession.close();
  3632. return cro;
  3633. }
  3634. /**
  3635. * 牌号验证
  3636. */
  3637. public CoreReturnObject JudgeSteel(String material_no){
  3638. List<HashMap> hashmap = doQueryMaterialInfoZhb2(material_no);
  3639. String sql = "select * from zj_result_all@xgcx where BILLETID = '"+material_no+"'";
  3640. int flag = 0;
  3641. String judge_result = "";
  3642. List<HashMap> list1 = mapper.query(sql);
  3643. String phy_id = list1.get(0).get("PHYSID") == null?"":list1.get(0).get("PHYSID").toString();
  3644. String physresult = list1.get(0).get("PHYSRESULT") == null?"":list1.get(0).get("PHYSRESULT").toString();
  3645. if(physresult.equals("2")){
  3646. SqlSession.close();
  3647. cro.setV_errCode(-2);
  3648. cro.setV_errMsg("性能不合格");
  3649. return cro;
  3650. }
  3651. if(phy_id != null && !phy_id.equals("")){
  3652. List<HashMap> listST = mapper.query("SELECT max(x.STEEL_NAME) STEEL_NAME FROM QCM_JHY_SAMPLE_R_ORD x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = '"+list1.get(0).get("PHYSID").toString()+"')");
  3653. if(listST.size() >0){
  3654. if(hashmap.size() == 0){
  3655. SqlSession.close();
  3656. cro.setV_errCode(-2);
  3657. cro.setV_errMsg("找不到库存信息!");
  3658. return cro;
  3659. }
  3660. if(!hashmap.get(0).get("STEEL_NAME").equals(listST.get(0).get("STEEL_NAME").toString())){
  3661. SqlSession.close();
  3662. cro.setV_errCode(-2);
  3663. cro.setV_errMsg("判定牌号与性能委托牌号不一致");
  3664. return cro;
  3665. }
  3666. }
  3667. }else{
  3668. SqlSession.close();
  3669. cro.setV_errCode(-2);
  3670. cro.setV_errMsg("无性能实绩");
  3671. return cro;
  3672. }
  3673. SqlSession.close();
  3674. cro.setV_errCode(1);
  3675. return cro;
  3676. }
  3677. /***
  3678. * 非计划卷判废:
  3679. * @param sum
  3680. * @return
  3681. */
  3682. @SuppressWarnings({ "rawtypes", "unused" })
  3683. public CoreReturnObject ultimateJudgeAutoJF(String material_no, String username,String sflv_code,String sflv_name,String qx_ly,String qx_ly_name,String qx,String qx_name,String wrk_ord,String wrk_grp,String memo) throws Exception{
  3684. try{
  3685. int count = 0;
  3686. String sql ="select a.OLD_SAMPL_NO material_no,"
  3687. + "a.COIL_THK thick,"
  3688. + "a.COIL_WTH width,"
  3689. + "a.bahct_number batchno,"
  3690. + "a.stoveno heat_no,"
  3691. + "a.slab_no board_no,"
  3692. + "a.ACT_WGT/1000 weight,"
  3693. + "STL_GRD steel_name,"
  3694. + "a.SPEC_ABBSYM std_name,"
  3695. + "a.ORD_NO || a.ORD_SEQ design_key,"
  3696. + "c.PRDNM_CD DELIVERY_STATE_DESC,"
  3697. + " (select max(memo) from qcm_ord_design_memo a where a.design_key = a.ORD_NO || a.ORD_SEQ) order_remark, "
  3698. + " PKG_QUALITY_COMM.PK00_COMM('A01007',b.ORD_USE_TP) prod_name"
  3699. + " from kcj3_stufflist@xgcx a left join tba01_ord_line b"
  3700. + " on a.ord_no = b.ord_no and a.ord_seq = b.ord_seq left join tba01_ord_comm c "
  3701. + " on a.ord_no = c.ord_no "
  3702. + " where STORAGESTATUS = '501002' and isvalid <> '0' and a.OLD_SAMPL_NO = '"+material_no+"' ";
  3703. List<HashMap> hashmap = mapper.query(sql);
  3704. if(hashmap.size() ==0){
  3705. throw new Exception("找不到库存信息!");
  3706. }
  3707. if(hashmap.get(0).get("DESIGN_KEY")== null ||hashmap.get(0).get("DESIGN_KEY").toString().equals("")){
  3708. throw new Exception("订单号为空,不能判定!");
  3709. }
  3710. int flag = 0;
  3711. String judge_result = "";
  3712. QcmJudgeCoilResult zra = new QcmJudgeCoilResult();
  3713. String sid="";
  3714. List<QcmJudgeSurface> qjslisttt=new ArrayList<QcmJudgeSurface>();
  3715. //获取表检类型
  3716. String type = "U";
  3717. String id = "UK";
  3718. String Sf_result_code = "";
  3719. String Sf_result_desc = "";
  3720. if(sflv_name.equals("订单外")){
  3721. Sf_result_code = "2";
  3722. Sf_result_desc = "不合格";
  3723. }else if(sflv_name.equals("次品")){
  3724. Sf_result_code = "3";
  3725. Sf_result_desc = "次品";
  3726. }else if(sflv_name.equals("废品")){
  3727. Sf_result_code = "4";
  3728. Sf_result_desc = "废品";
  3729. }
  3730. String ymd = new SimpleDateFormat("yyMMdd").format(new Date());
  3731. sql = "select * from (select * from QCM_JUDGE_SURFACE where surface_id like '"+id+ ymd+"%' order by surface_id desc) where rownum <= 1 ";
  3732. List<QcmJudgeSurface> lists=mapper.queryQcmJudgeSurfaces(sql);
  3733. int icount = 0;
  3734. if (lists != null && lists.size() > 0) {
  3735. String s=lists.get(0).getSurface_id();
  3736. icount = Integer.parseInt(s.substring(s.length()-5,s.length()));
  3737. }
  3738. //生成检验索引码,编码规则:U/D/E+两位年/月/日+4位流水号,示例:E1803070001;
  3739. icount++;
  3740. sid=id+ymd + String.format("%05d",icount);
  3741. QcmJudgeSurface qjsf = new QcmJudgeSurface();
  3742. qjsf.setSurface_id(sid);
  3743. qjsf.setHeat_no(hashmap.get(0).get("HEAT_NO") == null ?"":hashmap.get(0).get("HEAT_NO").toString());
  3744. qjsf.setBatch_no(hashmap.get(0).get("BATCHNO") == null ?"":hashmap.get(0).get("BATCHNO").toString());
  3745. qjsf.setBoard_no(hashmap.get(0).get("BOARD_NO") == null ?"":hashmap.get(0).get("BOARD_NO").toString());
  3746. qjsf.setInspection_lot("");
  3747. qjsf.setMaterial_no(material_no);
  3748. qjsf.setSf_result_code(Sf_result_code);
  3749. qjsf.setSf_result_desc(Sf_result_desc);
  3750. qjsf.setLevel_code(sflv_code);
  3751. qjsf.setLevel_desc(sflv_name);
  3752. qjsf.setSf_type(type);
  3753. qjsf.setSf_memo(memo);
  3754. qjsf.setSfd_is_lock("1");
  3755. qjsf.setSfe_is_lock("1");
  3756. qjsf.setSfu_is_lock("1");
  3757. qjsf.setDesign_key(hashmap.get(0).get("DESIGN_KEY").toString());
  3758. qjsf.setOrder_no(hashmap.get(0).get("DESIGN_KEY").toString());
  3759. qjsf.setPline_code("4001JB1");
  3760. qjsf.setPline_name("板加");
  3761. qjsf.setWrk_ord(wrk_ord);
  3762. qjsf.setWrk_grp(wrk_grp);
  3763. qjsf.setJudge_name(username);
  3764. qjsf.setSf_memo(memo);
  3765. qjsf.setStd_code(hashmap.get(0).get("STD_NAME")==null?"":hashmap.get(0).get("STD_NAME").toString());
  3766. qjsf.setStd_name(hashmap.get(0).get("STD_NAME")== null?"":hashmap.get(0).get("STD_NAME").toString());
  3767. qjsf.setProd_code(hashmap.get(0).get("PROD_NAME")==null?"":hashmap.get(0).get("PROD_NAME").toString());
  3768. qjsf.setProd_name(hashmap.get(0).get("PROD_NAME")==null?"":hashmap.get(0).get("PROD_NAME").toString());
  3769. qjsf.setSteel_code(hashmap.get(0).get("STEEL_NAME") == null?"":hashmap.get(0).get("STEEL_NAME").toString());
  3770. qjsf.setSteel_name(hashmap.get(0).get("STEEL_NAME")==null?"":hashmap.get(0).get("STEEL_NAME").toString());
  3771. mapper.insertQcmJudgeSurface(qjsf);
  3772. QcmJudgeSurfaceFlaw qjsffs = new QcmJudgeSurfaceFlaw();
  3773. qjsffs.setSurface_id(sid);
  3774. qjsffs.setIs_repair("0");
  3775. qjsffs.setFlaw_seq(Long.parseLong("1"));
  3776. qjsffs.setFlaw_code(qx);
  3777. qjsffs.setFlaw_desc(qx_name);
  3778. qjsffs.setFlaw_type_code(qx_ly_name.contains("钢质")?"S":"R");
  3779. qjsffs.setFlaw_type_desc(qx_ly_name.contains("钢质")?"钢质":"轧质");
  3780. qjsffs.setFlaw_quantity(Long.parseLong("1"));
  3781. qjsffs.setCreate_name(username);
  3782. qjsffs.setPrimary_flag("1");
  3783. mapper.insertQcmJudgeSurfaceFlaw(qjsffs);
  3784. QcmJudgeUltimate qju=new QcmJudgeUltimate();
  3785. sql = "select * from qcm_judge_coil_result where coil_no = '"+material_no+"'";
  3786. List<HashMap> list1 = mapper.query(sql);
  3787. if(list1.size()>0){
  3788. for(HashMap list:list1){
  3789. if(!list.get("JUDGERESULT").toString().equals("0")){
  3790. flag = 1;
  3791. }
  3792. qju.setCic_id(list1.get(0).get("CHEMID") == null?"":list1.get(0).get("CHEMID").toString());
  3793. qju.setCic_result_code(list1.get(0).get("CHEMRESULT")==null?"":list1.get(0).get("CHEMRESULT").toString());
  3794. qju.setCic_result_desc(list1.get(0).get("CHEMRESULT_DESC")==null?"":list1.get(0).get("CHEMRESULT_DESC").toString());
  3795. qju.setR_cic_id(list1.get(0).get("R_CHEMID") == null?"":list1.get(0).get("R_CHEMID").toString());
  3796. qju.setR_cic_result_code(list1.get(0).get("R_CHEMRESULT")==null?"":list1.get(0).get("R_CHEMRESULT").toString());
  3797. qju.setR_cic_result_desc(list1.get(0).get("R_CHEMRESULT_DESC")==null?"":list1.get(0).get("R_CHEMRESULT_DESC").toString());
  3798. qju.setPic_id(list1.get(0).get("PHYSID") == null?"":list1.get(0).get("PHYSID").toString());
  3799. qju.setPic_result_code(list1.get(0).get("PHYSRESULT")==null?"":list1.get(0).get("PHYSRESULT").toString());
  3800. qju.setPic_result_desc(list1.get(0).get("PHYSRESULT_DESC")==null?"":list1.get(0).get("PHYSRESULT_DESC").toString());
  3801. qju.setSic_id(list1.get(0).get("SIZEID") == null?"":list1.get(0).get("SIZEID").toString());
  3802. qju.setSic_result_code(list1.get(0).get("SIZERESULT")==null?"":list1.get(0).get("SIZERESULT").toString());
  3803. qju.setSic_result_desc(list1.get(0).get("SIZERESULT_DESC")==null?"":list1.get(0).get("SIZERESULT_DESC").toString());
  3804. qju.setDic_id(list1.get(0).get("SPYID")==null?"":list1.get(0).get("SPYID").toString());
  3805. qju.setDic_result_code(list1.get(0).get("SPYRESULT")==null?"":list1.get(0).get("SPYRESULT").toString());
  3806. qju.setDic_result_desc(list1.get(0).get("SPYRESULT_DESC")==null?"":list1.get(0).get("SPYRESULT_DESC").toString());
  3807. qju.setSfd_id(sid);
  3808. qju.setSfd_result_code(Sf_result_code);
  3809. qju.setSfd_result_desc(Sf_result_desc);
  3810. qju.setSfu_id(sid);
  3811. qju.setSfu_result_code(Sf_result_code);
  3812. qju.setSfu_result_desc(Sf_result_desc);
  3813. qju.setSfe_id(sid);
  3814. qju.setSfe_result_code(Sf_result_code);
  3815. qju.setSfe_result_desc(Sf_result_desc);
  3816. qju.setMst_id(sid);
  3817. qju.setMst_result_code(Sf_result_code);
  3818. qju.setMst_result_desc(Sf_result_desc);
  3819. qju.setFst_id(list1.get(0).get("PHYFSTSID")==null?"":list1.get(0).get("PHYFSTSID").toString());
  3820. qju.setFst_result_code(list1.get(0).get("PHYFSTSRESULT")==null?"":list1.get(0).get("PHYFSTSRESULT").toString());
  3821. qju.setFst_result_desc(list1.get(0).get("PHYFSTSRESULT_DESC")==null?"":list1.get(0).get("PHYFSTSRESULT_DESC").toString());
  3822. qju.setUtm_result_code(Sf_result_code);
  3823. qju.setUtm_result_desc(Sf_result_desc);
  3824. qju.setUtm_memo(memo);
  3825. }
  3826. }
  3827. //获取判定记录号当天的最大值
  3828. Date now = new Date();
  3829. String opr_time = new SimpleDateFormat("yyyyMMddHHmmss").format(now); //操作时间
  3830. SimpleDateFormat sdf=new SimpleDateFormat("yyMMdd");
  3831. String date=sdf.format(now);
  3832. count=0;
  3833. String type1 = "";
  3834. type1 = "JF";
  3835. sql ="select * from (select * from qcm_judge_ultimate where UTM_ID like '"+type1+date+"%' order by UTM_ID desc) where rownum <= 1";
  3836. List<QcmJudgeUltimate> listUl=mapper.QcmJudgeUltimate(sql);
  3837. if (listUl!=null&&listUl.size()>0) {
  3838. String s=listUl.get(0).getUtm_id();
  3839. count=Integer.parseInt(s.substring(s.length()-4,s.length()));
  3840. }
  3841. count++;
  3842. String utm_id=type1+sdf.format(now)+String.format("%04d",count);
  3843. qju.setUtm_id(utm_id);
  3844. //更新库存表综合判定结果
  3845. /*zra.setCoil_no(material_no);
  3846. zra.setJudgeid(utm_id);
  3847. zra.setJudgeresult("4");
  3848. zra.setJudgeresult_desc("废品");
  3849. mapper.UpdateJugeResultJ(zra);*/
  3850. List<HashMap> hashmap1 = doQueryMaterialInfoJ(material_no);
  3851. //插入综合判定记录表
  3852. String design_key = hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString();
  3853. qju.setDesign_key(design_key);
  3854. qju.setHeat_no(hashmap.get(0).get("HEAT_NO")==null?"":hashmap.get(0).get("HEAT_NO").toString());
  3855. qju.setBatch_no(hashmap.get(0).get("BATCHNO")==null?"":hashmap.get(0).get("BATCHNO").toString());
  3856. qju.setBoard_no(hashmap.get(0).get("BOARD_NO")==null?"":hashmap.get(0).get("BOARD_NO").toString());
  3857. qju.setMaterial_no(material_no);
  3858. qju.setUtm_id(utm_id);
  3859. qju.setPsc(hashmap1.get(0).get("PSC")==null?"":hashmap1.get(0).get("PSC").toString());
  3860. qju.setPsc_desc(hashmap1.get(0).get("PSC_DESC")==null?"":hashmap1.get(0).get("PSC_DESC").toString());
  3861. qju.setProd_name(hashmap.get(0).get("PROD_NAME")==null?"":hashmap.get(0).get("PROD_NAME").toString());
  3862. qju.setSteel_name(hashmap.get(0).get("STEEL_NAME").toString());
  3863. qju.setStd_name(hashmap.get(0).get("STD_NAME")==null?"":hashmap.get(0).get("STD_NAME").toString());
  3864. qju.setJudge_name(username);
  3865. qju.setJudge_time(new Date());
  3866. qju.setPline_code("4001JB1");
  3867. qju.setPline_name("板加");
  3868. mapper.insertQcmJudgeUltimate(qju);
  3869. //调用板加接口
  3870. design_key = hashmap1.get(0).get("DESIGN_KEY")==null?"":hashmap1.get(0).get("DESIGN_KEY").toString();
  3871. Bjpf(material_no, Sf_result_code, Sf_result_code,username, design_key);
  3872. QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
  3873. qjog.setOperate_name(username);
  3874. qjog.setOperate_type("非计划卷板综合判定");
  3875. qjog.setParams(material_no);
  3876. qjog.setProd_line("4001JB1");
  3877. qjog.setBatchno(hashmap.get(0).get("BATCHNO")==null?"":hashmap.get(0).get("BATCHNO").toString());
  3878. qjog.setJudge_result(judge_result);
  3879. mapper.insertQcmJudgeOperateLog(qjog);
  3880. //cro = creatUltimateResultByHand(material_no,username);//手动进行综合判定
  3881. SqlSession.commit();
  3882. }catch(Exception ex){
  3883. cro.setV_errCode(-1);
  3884. cro.setV_errMsg(ex.getMessage());
  3885. SqlSession.rollback();
  3886. logger.info(new Date().toString() + " QCM.QCM03.QCM0302.QcmJudgePhysicalServiceImpl.ultimateJudgeAutoF:【" + material_no + "," + username + "】" + ex);
  3887. }
  3888. SqlSession.close();
  3889. return cro;
  3890. }
  3891. /***
  3892. * 非计划综合判定:
  3893. * 0625增加finally
  3894. * @param sum
  3895. * @return
  3896. */
  3897. @SuppressWarnings({ "rawtypes", "unused" })
  3898. public CoreReturnObject ultimateJudgeAutoF(String material_no, String username,String productname,String judgereason,String memo,String judge) throws Exception{
  3899. try{
  3900. int count = 0;
  3901. List<HashMap> hashmap = doQueryMaterialInfoZhb2(material_no);
  3902. if(hashmap.size() ==0){
  3903. throw new Exception("找不到库存信息!");
  3904. }
  3905. String sql = "select * from zj_result_all@xgcx where BILLETID = '"+material_no+"'";
  3906. int flag = 0;
  3907. String judge_result = "";
  3908. List<HashMap> list1 = mapper.query(sql);
  3909. if(list1.size()>0){
  3910. for(HashMap list:list1){
  3911. if(!list.get("JUDGERESULT").toString().equals("0")){
  3912. throw new Exception("该物料做了综合判定,不能再次判定!");
  3913. }
  3914. QcmJudgeUltimate qju=new QcmJudgeUltimate();
  3915. //获取判定记录号当天的最大值
  3916. Date now = new Date();
  3917. String opr_time = new SimpleDateFormat("yyyyMMddHHmmss").format(now); //操作时间
  3918. SimpleDateFormat sdf=new SimpleDateFormat("yyMMdd");
  3919. String date=sdf.format(now);
  3920. count=0;
  3921. String type1 = "";
  3922. if(material_no.startsWith("Z")||material_no.startsWith("H")){
  3923. type1 = "ZB";
  3924. }else{
  3925. type1 = "ZX";
  3926. }
  3927. sql ="select * from (select * from qcm_judge_ultimate where UTM_ID like '"+type1+date+"%' order by UTM_ID desc) where rownum <= 1";
  3928. List<QcmJudgeUltimate> listUl=mapper.QcmJudgeUltimate(sql);
  3929. if (listUl!=null&&listUl.size()>0) {
  3930. String s=listUl.get(0).getUtm_id();
  3931. count=Integer.parseInt(s.substring(s.length()-4,s.length()));
  3932. }
  3933. count++;
  3934. String utm_id=type1+sdf.format(now)+String.format("%04d",count);
  3935. qju.setUtm_id(utm_id);
  3936. //更新库存表综合判定结果
  3937. ZjResultAll zra = new ZjResultAll();
  3938. zra.setBilletid(material_no);
  3939. zra.setJudgeid(utm_id);
  3940. if(judge.equals("40140201")){
  3941. zra.setJudgeresult("5");
  3942. zra.setJudgeresult_desc("订单外");
  3943. }else if(judge.equals("40140301")){
  3944. zra.setJudgeresult("6");
  3945. zra.setJudgeresult_desc("表面次");
  3946. }else if(judge.equals("40140302")){
  3947. zra.setJudgeresult("7");
  3948. zra.setJudgeresult_desc("性能次");
  3949. }else if(judge.equals("40140303")){
  3950. zra.setJudgeresult("4");
  3951. zra.setJudgeresult_desc("废品");
  3952. }
  3953. mapper.UpdateJugeResultB(zra);
  3954. /*if(judge.equals("40140201")){
  3955. count = Integer.parseInt((String) mapper.query(sql = "select count(1) count from qcm_judge_locking a where a.material_no = '"+material_no+"' AND A.UNLOCK_TYPE_CODE IS NULL and design_key like '19%'").get(0).get("COUNT").toString());
  3956. if(count >0){
  3957. throw new Exception("物料已锁定,不能进行综合判定!");
  3958. }
  3959. }*/
  3960. //插入综合判定记录表
  3961. String design_key = hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString();
  3962. if(!design_key.startsWith("19")){
  3963. design_key = "";
  3964. }
  3965. qju.setDesign_key(design_key);
  3966. qju.setHeat_no(hashmap.get(0).get("HEAT_NO")==null?"":hashmap.get(0).get("HEAT_NO").toString());
  3967. qju.setBatch_no(hashmap.get(0).get("BATCHNO")==null?"":hashmap.get(0).get("BATCHNO").toString());
  3968. qju.setBoard_no(hashmap.get(0).get("BOARD_NO")==null?"":hashmap.get(0).get("BOARD_NO").toString());
  3969. qju.setInspection_lot(hashmap.get(0).get("INSPECTION_LOT") == null ?"":hashmap.get(0).get("INSPECTION_LOT").toString());
  3970. qju.setMaterial_no(material_no);
  3971. qju.setUtm_id(utm_id);
  3972. qju.setUtm_memo("");
  3973. qju.setUtm_result_code(zra.getJudgeresult());
  3974. qju.setUtm_result_desc(zra.getJudgeresult_desc());
  3975. qju.setCic_id(list1.get(0).get("CHEMID") == null?"":list1.get(0).get("CHEMID").toString());
  3976. qju.setCic_result_code(list1.get(0).get("CHEMRESULT")==null?"":list1.get(0).get("CHEMRESULT").toString());
  3977. qju.setCic_result_desc(list1.get(0).get("CHEMRESULT_DESC")==null?"":list1.get(0).get("CHEMRESULT_DESC").toString());
  3978. qju.setR_cic_id(list1.get(0).get("R_CHEMID") == null?"":list1.get(0).get("R_CHEMID").toString());
  3979. qju.setR_cic_result_code(list1.get(0).get("R_CHEMRESULT")==null?"":list1.get(0).get("R_CHEMRESULT").toString());
  3980. qju.setR_cic_result_desc(list1.get(0).get("R_CHEMRESULT_DESC")==null?"":list1.get(0).get("R_CHEMRESULT_DESC").toString());
  3981. qju.setPic_id(list1.get(0).get("PHYSID") == null?"":list1.get(0).get("PHYSID").toString());
  3982. qju.setPic_result_code(list1.get(0).get("PHYSRESULT")==null?"":list1.get(0).get("PHYSRESULT").toString());
  3983. qju.setPic_result_desc(list1.get(0).get("PHYSRESULT_DESC")==null?"":list1.get(0).get("PHYSRESULT_DESC").toString());
  3984. qju.setSic_id(list1.get(0).get("SIZEID") == null?"":list1.get(0).get("SIZEID").toString());
  3985. qju.setSic_result_code(list1.get(0).get("SIZERESULT")==null?"":list1.get(0).get("SIZERESULT").toString());
  3986. qju.setSic_result_desc(list1.get(0).get("SIZERESULT_DESC")==null?"":list1.get(0).get("SIZERESULT_DESC").toString());
  3987. qju.setDic_id(list1.get(0).get("SPYID")==null?"":list1.get(0).get("SPYID").toString());
  3988. qju.setDic_result_code(list1.get(0).get("SPYRESULT")==null?"":list1.get(0).get("SPYRESULT").toString());
  3989. qju.setDic_result_desc(list1.get(0).get("SPYRESULT_DESC")==null?"":list1.get(0).get("SPYRESULT_DESC").toString());
  3990. qju.setSfd_id(list1.get(0).get("SURFACEID")==null?"":list1.get(0).get("SURFACEID").toString());
  3991. qju.setSfd_result_code(list1.get(0).get("UD_SURFACE_RESULT")==null?"":list1.get(0).get("UD_SURFACE_RESULT").toString());
  3992. qju.setSfd_result_desc(list1.get(0).get("UD_SURFACE_RESULT_DESC")==null?"":list1.get(0).get("UD_SURFACE_RESULT_DESC").toString());
  3993. qju.setSfu_id(list1.get(0).get("SURFACEID")==null?"":list1.get(0).get("SURFACEID").toString());
  3994. qju.setSfu_result_code(list1.get(0).get("UP_SURFACE_RESULT")==null?"":list1.get(0).get("UP_SURFACE_RESULT").toString());
  3995. qju.setSfu_result_desc(list1.get(0).get("UP_SURFACE_RESULT_DESC")==null?"":list1.get(0).get("UP_SURFACE_RESULT_DESC").toString());
  3996. qju.setSfe_id(list1.get(0).get("SURFACEID")==null?"":list1.get(0).get("SURFACEID").toString());
  3997. qju.setSfe_result_code(list1.get(0).get("MARGINAL_RESULT")==null?"":list1.get(0).get("MARGINAL_RESULT").toString());
  3998. qju.setSfe_result_desc(list1.get(0).get("MARGINAL_RESULT_DESC")==null?"":list1.get(0).get("MARGINAL_RESULT_DESC").toString());
  3999. qju.setMst_id(list1.get(0).get("SURFACEID")==null?"":list1.get(0).get("SURFACEID").toString());
  4000. qju.setMst_result_code(list1.get(0).get("SURFACERESULT")==null?"":list1.get(0).get("SURFACERESULT").toString());
  4001. qju.setMst_result_desc(list1.get(0).get("SURFACERESULT_DESC")==null?"":list1.get(0).get("SURFACERESULT_DESC").toString());
  4002. qju.setFst_id(list1.get(0).get("PHYFSTSID")==null?"":list1.get(0).get("PHYFSTSID").toString());
  4003. qju.setFst_result_code(list1.get(0).get("PHYFSTSRESULT")==null?"":list1.get(0).get("PHYFSTSRESULT").toString());
  4004. qju.setFst_result_desc(list1.get(0).get("PHYFSTSRESULT_DESC")==null?"":list1.get(0).get("PHYFSTSRESULT_DESC").toString());
  4005. qju.setPsc(hashmap.get(0).get("PSC")==null?"":hashmap.get(0).get("PSC").toString());
  4006. qju.setPsc_desc(hashmap.get(0).get("PSC_DESC")==null?"":hashmap.get(0).get("PSC_DESC").toString());
  4007. qju.setProd_code(hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString());
  4008. qju.setProd_name(hashmap.get(0).get("PROD_NAME")==null?"":hashmap.get(0).get("PROD_NAME").toString());
  4009. qju.setSteel_code(hashmap.get(0).get("STEEL_CODE")==null?"":hashmap.get(0).get("STEEL_CODE").toString());
  4010. qju.setSteel_name(hashmap.get(0).get("STEEL_NAME").toString());
  4011. qju.setStd_code(hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString());
  4012. qju.setStd_name(hashmap.get(0).get("STD_NAME")==null?"":hashmap.get(0).get("STD_NAME").toString());
  4013. qju.setJudge_name(username);
  4014. qju.setJudge_time(new Date());
  4015. qju.setProduct_name(productname);
  4016. qju.setJudge_reason(judgereason);
  4017. qju.setJudge_memo(memo);
  4018. qju.setPline_code(hashmap.get(0).get("PLINE_CODE")==null?"":hashmap.get(0).get("PLINE_CODE").toString());
  4019. qju.setPline_name(hashmap.get(0).get("PLINE_NAME")==null?"":hashmap.get(0).get("PLINE_NAME").toString());
  4020. mapper.insertQcmJudgeUltimate(qju);
  4021. //调用一体化接口
  4022. //发送熔炼成分实绩
  4023. //if(zra.getJudgeresult().equals("1")){
  4024. List<QcmJhyInspElements> chemresult1 = mapper.queryQcmJhyInspElements("select * from qcm_jhy_insp_elements t where t.assay_type = 'L' and t.heat_no = '"+hashmap.get(0).get("HEAT_NO").toString()+"'");
  4025. if(chemresult1.size() > 0){
  4026. String result = SendChemResult(chemresult1);
  4027. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  4028. qjus.setMaterial_no(material_no);
  4029. qjus.setDesign_key(design_key.equals("")?"非计划":design_key);
  4030. //qjus.setJson_text(result);
  4031. qjus.setResult_type("C");
  4032. qjus.setJudge_id(list1.get(0).get("R_CHEMID") == null?"":list1.get(0).get("R_CHEMID").toString());
  4033. qjus.setCreate_name("system");
  4034. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  4035. }
  4036. String insplection_lot = hashmap.get(0).get("INSPECTION_LOT")==null?"":hashmap.get(0).get("INSPECTION_LOT").toString();
  4037. //发送成品成分实绩
  4038. List<QcmJhyInspElements> chemresult2 = mapper.queryQcmJhyInspElements("select * from qcm_jhy_insp_elements t where t.assay_type = 'P' and t.INSPECTION_LOT = '"+insplection_lot+"'");
  4039. if(chemresult2.size() > 0){
  4040. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  4041. String result = SendChemResult(chemresult2);
  4042. qjus.setMaterial_no(material_no);
  4043. qjus.setDesign_key(design_key.equals("")?"非计划":design_key);
  4044. //qjus.setJson_text(result);
  4045. qjus.setResult_type("C");
  4046. qjus.setJudge_id(list1.get(0).get("CHEMID") == null?"":list1.get(0).get("CHEMID").toString());
  4047. qjus.setCreate_name("system");
  4048. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  4049. }
  4050. //发送材质实绩
  4051. List<QcmJhyPhyresult> phyresult1 = mapper.queryQcmJhyPhyresult("select * from qcm_jhy_insp_physics t where t.SPECIMEN_NO in (select SPECIMEN_NO from QCM_JHY_SAMPLE_CONSIGN_D where INSPECTION_LOT = '"+insplection_lot+"')");
  4052. if(phyresult1.size() > 0){
  4053. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  4054. String result = SendPhyResult(phyresult1);
  4055. qjus.setMaterial_no(material_no);
  4056. qjus.setDesign_key(design_key.equals("")?"非计划":design_key);
  4057. qjus.setJson_text(result);
  4058. qjus.setResult_type("P");
  4059. qjus.setJudge_id(list1.get(0).get("PHYSID") == null?"":list1.get(0).get("PHYSID").toString());
  4060. qjus.setCreate_name("system");
  4061. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  4062. }
  4063. //}
  4064. String judgeresult = judge;
  4065. String cj_result = judge;
  4066. String steelname = hashmap.get(0).get("STEEL_NAME")==null?"":hashmap.get(0).get("STEEL_NAME").toString();
  4067. String phyid = list1.get(0).get("PHYSID")==null?"":list1.get(0).get("PHYSID").toString();
  4068. if(!phyid.equals("")){
  4069. sql= "select max(t.steel_name) steel_name from qcm_judge_physical t where t.phy_id in (select phy_id from qcm_judge_physical_utm_d d where d.pic_id = '"+phyid+"')";
  4070. List<HashMap> liststeel = mapper.query(sql);
  4071. if(liststeel != null && liststeel.size() >0 && liststeel.get(0).get("STEEL_NAME").toString().startsWith("SWRH82B-YL")){
  4072. steelname = liststeel.get(0).get("STEEL_NAME").toString();
  4073. }
  4074. }
  4075. String prod_code = hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString();
  4076. /*if(hashmap.get(0).get("DESIGN_KEY").toString().startsWith("19")){
  4077. prod_code = productname;
  4078. }*/
  4079. judge_call(hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString(),prod_code,hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString(),hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString(),hashmap.get(0).get("PSC")==null?"":hashmap.get(0).get("PSC").toString(),judgeresult,judgereason,memo,"",cj_result,material_no,username,productname,hashmap.get(0).get("HT_NO")==null?"":hashmap.get(0).get("HT_NO").toString(),utm_id,hashmap.get(0).get("DESIGN_KEY")==null?"":hashmap.get(0).get("DESIGN_KEY").toString(),steelname);
  4080. }
  4081. }else{
  4082. throw new Exception("未找到该检验号下的库存信息!");
  4083. }
  4084. QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
  4085. qjog.setOperate_name(username);
  4086. qjog.setOperate_type("非计划综合判定");
  4087. qjog.setParams(material_no);
  4088. qjog.setProd_line(hashmap.get(0).get("PLINE_CODE")==null?"":hashmap.get(0).get("PLINE_CODE").toString());
  4089. qjog.setBatchno(hashmap.get(0).get("BATCHNO")==null?"":hashmap.get(0).get("BATCHNO").toString());
  4090. qjog.setMemo(memo);
  4091. qjog.setJudge_result(judge_result);
  4092. mapper.insertQcmJudgeOperateLog(qjog);
  4093. //cro = creatUltimateResultByHand(material_no,username);//手动进行综合判定
  4094. SqlSession.commit();
  4095. }catch(Exception ex){
  4096. cro.setV_errCode(-1);
  4097. cro.setV_errMsg(ex.getMessage());
  4098. SqlSession.rollback();
  4099. logger.info(new Date().toString() + " QCM.QCM03.QCM0302.QcmJudgePhysicalServiceImpl.ultimateJudgeAutoF:【" + material_no + "," + username + "】" + ex);
  4100. }
  4101. finally {
  4102. SqlSession.close();
  4103. }
  4104. //SqlSession.close();
  4105. return cro;
  4106. }
  4107. /***
  4108. * 综合判定:
  4109. * 0625增加finally
  4110. * @param sum
  4111. * @return
  4112. */
  4113. @SuppressWarnings({ "rawtypes", "unused" })
  4114. public CoreReturnObject ultimateJudgeAutoCs(String material_no, String username,String productname) throws Exception{
  4115. try{
  4116. int count = 0;
  4117. List<HashMap> hashmap = doQueryMaterialInfoZhb(material_no);
  4118. if(hashmap.size() == 0){
  4119. hashmap = doQueryMaterialInfoBX(material_no);
  4120. }
  4121. if(hashmap.size() == 0){
  4122. hashmap = doQueryMaterialInfoJ(material_no);
  4123. }
  4124. String sql = "select * from zj_result_all@xgcx where BILLETID = '"+material_no+"'";
  4125. int flag = 0;
  4126. String judge_result = "";
  4127. List<HashMap> list1 = mapper.query(sql);
  4128. sql = "select * from QCM_JUDGE_COIL_RESULT where coil_no = '"+material_no+"'";
  4129. List<HashMap> list2 = mapper.query(sql);
  4130. if(list1.size() >0 || list2.size() >0){
  4131. if(list1.size()>0){
  4132. for(HashMap list:list1){
  4133. String pic_id = list.get("PHYSID")==null?"":list.get("PHYSID").toString();
  4134. List<String> listphy = new ArrayList<String>();
  4135. List<QcmJudgePhysicalResult> qjpr1 = new ArrayList<QcmJudgePhysicalResult>();
  4136. sql = "select * from qcm_judge_physical_result where phy_id in (select phy_id "
  4137. + " from Qcm_Judge_Physical_Utm_d "
  4138. + " where pic_id = '"+pic_id+"')";
  4139. qjpr1 = mapper.queryQcmJudgePhysicalResult(sql);
  4140. for(QcmJudgePhysicalResult y:qjpr1)
  4141. {
  4142. String s = (y.getPhy_code_l()==null?"":y.getPhy_code_l()) + (y.getPhy_code_m()==null?"":y.getPhy_code_m()) + (y.getPhy_code_s()==null?"":y.getPhy_code_s()) + (y.getItem_code_d()==null?"":y.getItem_code_d())
  4143. + (y.getItem_code_t()==null?"":y.getItem_code_t());
  4144. listphy.add(s);
  4145. }
  4146. List<QcmOrdDesignStdPic> qrdsp = new ArrayList<QcmOrdDesignStdPic>();
  4147. sql = "select * from qcm_ord_design_std_pic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'";
  4148. qrdsp = mapper.queryQCMOrdDesignStdPic(sql);
  4149. for(QcmOrdDesignStdPic x:qrdsp){
  4150. String z = (x.getPhy_code_l()==null?"":x.getPhy_code_l()) + (x.getPhy_code_m()==null?"":x.getPhy_code_m()) + (x.getPhy_code_s()==null?"":x.getPhy_code_s()) + (x.getItem_code_d()==null?"":x.getItem_code_d())
  4151. + (x.getItem_code_t()==null?"":x.getItem_code_t());
  4152. String y = (x.getPhy_name_l()==null?"":x.getPhy_name_l()) + (x.getPhy_desc_m()==null?"":x.getPhy_desc_m()) + (x.getPhy_name_s()==null?"":x.getPhy_name_s()) + (x.getItem_name_d()==null?"":x.getItem_name_d())
  4153. + (x.getItem_name_s()==null?"":x.getItem_name_s()) + (x.getItem_name_t()==null?"":x.getItem_name_t());
  4154. if(!listphy.contains(z)){
  4155. throw new Exception("该材质判定未满足订单标准,不能判定,缺失"+y+" 检验项目!");
  4156. }
  4157. }
  4158. if(!list.get("JUDGERESULT").toString().equals("0")){
  4159. throw new Exception("该物料做了综合判定,不能再次判定!");
  4160. }
  4161. if(list.get("CIC_IS_LOCK").toString().equals("1")){
  4162. throw new Exception("成分已锁定,不能进行综合判定!");
  4163. }
  4164. if(list.get("PIC_IS_LOCK").toString().equals("1")){
  4165. throw new Exception("材质已锁定,不能进行综合判定!");
  4166. }
  4167. if(list.get("R_CIC_IS_LOCK").toString().equals("1")){
  4168. throw new Exception("成分已锁定,不能进行综合判定!");
  4169. }
  4170. if(list.get("SIC_IS_LOCK").toString().equals("1")){
  4171. throw new Exception("公差已锁定,不能进行综合判定!");
  4172. }
  4173. if(list.get("DIC_IS_LOCK").toString().equals("1")){
  4174. throw new Exception("探伤已锁定,不能进行综合判定!");
  4175. }
  4176. if(list.get("SFU_IS_LOCK").toString().equals("1") || list.get("SFD_IS_LOCK").toString().equals("1") || list.get("SFE_IS_LOCK").toString().equals("1")){
  4177. throw new Exception("表面已锁定,不能进行综合判定!");
  4178. }
  4179. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"C")){
  4180. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_cic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  4181. if(list.get("CHEMRESULT").toString().equals("0") && count >0){
  4182. throw new Exception("该物料未做成品成分判定,不能进行综合判定!");
  4183. }
  4184. }
  4185. if(list.get("R_CHEMRESULT").toString().equals("0")){
  4186. throw new Exception("该物料未做熔炼成分判定,不能进行综合判定!");
  4187. }
  4188. /*if(list.get("BILLETID_JY") == null){
  4189. throw new Exception("该物料检验号为空,不能进行综合判定!");
  4190. }*/
  4191. /*if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"A")){
  4192. if(list.get("R_CHEMRESULT").toString().equals("0")){
  4193. throw new Exception("该物料未做熔炼成分判定,不能取进行综合判定!");
  4194. }
  4195. }*/
  4196. if(list.get("SURFACERESULT").toString().equals("0")){
  4197. throw new Exception("该物料未做表面检验,不能进行综合判定!");
  4198. }
  4199. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_pic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  4200. if(list.get("PHYSRESULT").toString().equals("0") && count > 0){
  4201. throw new Exception("该物料未做材质判定,不能进行综合判定!");
  4202. }
  4203. if(count>0){
  4204. if(material_no.startsWith("Z") || material_no.startsWith("H")){
  4205. List<HashMap> listy = mapper.query("SELECT max(x.process_nos) ht_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = '"+list.get("PHYSID").toString()+"')");
  4206. if(listy.get(0).get("HT_NO") == null){
  4207. throw new Exception("该物料委托处理号为空,不能进行综合判定!");
  4208. }
  4209. String s1 =hashmap.get(0).get("HT_NO").toString().substring(0, 1)+ hashmap.get(0).get("HT_NO").toString().substring(3, 4)+ hashmap.get(0).get("HT_NO").toString().substring(4, 5);
  4210. String s2 = listy.get(0).get("HT_NO").toString().substring(0, 1)+listy.get(0).get("HT_NO").toString().substring(3, 4)+listy.get(0).get("HT_NO").toString().substring(4, 5);
  4211. if(!s1.equals(s2)){
  4212. throw new Exception("该物料热处理号与委托热处理号不一致,不能进行综合判定!");
  4213. }
  4214. /*if(!hashmap.get(0).get("HT_NO").equals(listy.get(0).get("HT_NO").toString())){
  4215. throw new Exception("该物料热处理号与委托热处理号不一致,不能进行综合判定!");
  4216. }*/
  4217. List<HashMap> listST = mapper.query("SELECT max(x.STEEL_NAME) STEEL_NAME FROM QCM_JHY_SAMPLE_R_ORD x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = '"+list.get("PHYSID").toString()+"')");
  4218. if(!hashmap.get(0).get("STEEL_NAME").equals(listST.get(0).get("STEEL_NAME").toString())){
  4219. throw new Exception("该物料牌号与委托牌号不一致,不能进行综合判定!");
  4220. }
  4221. }
  4222. }
  4223. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_sic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  4224. if(list.get("SIZERESULT").toString().equals("0") && count > 0){
  4225. throw new Exception("该物料未做公差检验,不能进行综合判定!");
  4226. }
  4227. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_dic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  4228. if(list.get("SPYRESULT").toString().equals("0") && count > 0){
  4229. throw new Exception("该物料未做探伤检验,不能进行综合判定!");
  4230. }
  4231. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"C")){
  4232. flag += "1".equals(list.get("CHEMRESULT").toString()) ? 0 : 1;
  4233. }
  4234. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"A")){
  4235. flag += "1".equals(list.get("R_CHEMRESULT").toString()) ? 0 : 1;
  4236. }
  4237. flag += "1".equals(list.get("SURFACERESULT").equals("0")?"1":list.get("SURFACERESULT").toString()) ? 0 : 1;
  4238. flag += "1".equals(list.get("PHYSRESULT").equals("0")?"1":list.get("PHYSRESULT").toString()) ? 0 : 1;
  4239. flag += "1".equals(list.get("SIZERESULT").equals("0")?"1":list.get("SIZERESULT").toString()) ? 0 : 1;
  4240. if(count >0){
  4241. flag += "1".equals(list.get("SPYRESULT").equals("0")?"1":list.get("SPYRESULT").toString()) ? 0 : 1;
  4242. }
  4243. QcmJudgeUltimate qju=new QcmJudgeUltimate();
  4244. //获取判定记录号当天的最大值
  4245. Date now = new Date();
  4246. String opr_time = new SimpleDateFormat("yyyyMMddHHmmss").format(now); //操作时间
  4247. SimpleDateFormat sdf=new SimpleDateFormat("yyMMdd");
  4248. String date=sdf.format(now);
  4249. count=0;
  4250. String type1 = "";
  4251. if(material_no.startsWith("Z")||material_no.startsWith("H")){
  4252. type1 = "ZB";
  4253. }else{
  4254. type1 = "ZX";
  4255. }
  4256. sql ="select * from (select * from qcm_judge_ultimate where UTM_ID like '"+type1+date+"%' order by UTM_ID desc) where rownum <= 1";
  4257. List<QcmJudgeUltimate> listUl=mapper.QcmJudgeUltimate(sql);
  4258. if (listUl!=null&&listUl.size()>0) {
  4259. String s=listUl.get(0).getUtm_id();
  4260. count=Integer.parseInt(s.substring(s.length()-4,s.length()));
  4261. }
  4262. count++;
  4263. String utm_id=type1+sdf.format(now)+String.format("%04d",count);
  4264. qju.setUtm_id(utm_id);
  4265. //更新库存表综合判定结果
  4266. ZjResultAll zra = new ZjResultAll();
  4267. zra.setBilletid(material_no);
  4268. zra.setJudgeid(utm_id);
  4269. zra.setJudgeresult(flag == 0 ? "1" :"2");
  4270. zra.setJudgeresult_desc(flag == 0 ? "合格" : "不合格");
  4271. if(list.get("CHEMRESULT").toString().equals("3") || list.get("SURFACERESULT").toString().equals("3") || list.get("PHYSRESULT").toString().equals("3") ||list.get("SIZERESULT").toString().equals("3") ||list.get("SPYRESULT").toString().equals("3")){
  4272. zra.setJudgeresult("3");
  4273. zra.setJudgeresult_desc("次品");
  4274. }
  4275. if(list.get("CHEMRESULT").toString().equals("4") || list.get("SURFACERESULT").toString().equals("4") || list.get("PHYSRESULT").toString().equals("4") ||list.get("SIZERESULT").toString().equals("4") ||list.get("SPYRESULT").toString().equals("4")){
  4276. zra.setJudgeresult("4");
  4277. zra.setJudgeresult_desc("废品");
  4278. }
  4279. if(zra.getJudgeresult().equals("2")){
  4280. throw new Exception("综合判定不合格!");
  4281. }
  4282. mapper.UpdateJugeResultB(zra);
  4283. //插入综合判定记录表
  4284. String inspection_lot = hashmap.get(0).get("INSPECTION_LOT") == null ?"":hashmap.get(0).get("INSPECTION_LOT").toString();
  4285. qju.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  4286. qju.setHeat_no(hashmap.get(0).get("HEAT_NO")==null?"":hashmap.get(0).get("HEAT_NO").toString());
  4287. qju.setBatch_no(hashmap.get(0).get("BATCHNO")==null?"":hashmap.get(0).get("BATCHNO").toString());
  4288. qju.setBoard_no(hashmap.get(0).get("BOARD_NO")==null?"":hashmap.get(0).get("BOARD_NO").toString());
  4289. qju.setInspection_lot(inspection_lot);
  4290. qju.setMaterial_no(material_no);
  4291. qju.setUtm_id(utm_id);
  4292. qju.setUtm_memo("");
  4293. qju.setUtm_result_code(zra.getJudgeresult());
  4294. qju.setUtm_result_desc(zra.getJudgeresult_desc());
  4295. qju.setCic_id(list1.get(0).get("CHEMID") == null?"":list1.get(0).get("CHEMID").toString());
  4296. qju.setCic_result_code(list1.get(0).get("CHEMRESULT")==null?"":list1.get(0).get("CHEMRESULT").toString());
  4297. qju.setCic_result_desc(list1.get(0).get("CHEMRESULT_DESC")==null?"":list1.get(0).get("CHEMRESULT_DESC").toString());
  4298. qju.setR_cic_id(list1.get(0).get("R_CHEMID") == null?"":list1.get(0).get("R_CHEMID").toString());
  4299. qju.setR_cic_result_code(list1.get(0).get("R_CHEMRESULT")==null?"":list1.get(0).get("R_CHEMRESULT").toString());
  4300. qju.setR_cic_result_desc(list1.get(0).get("R_CHEMRESULT_DESC")==null?"":list1.get(0).get("R_CHEMRESULT_DESC").toString());
  4301. qju.setPic_id(list1.get(0).get("PHYSID") == null?"":list1.get(0).get("PHYSID").toString());
  4302. qju.setPic_result_code(list1.get(0).get("PHYSRESULT")==null?"":list1.get(0).get("PHYSRESULT").toString());
  4303. qju.setPic_result_desc(list1.get(0).get("PHYSRESULT_DESC")==null?"":list1.get(0).get("PHYSRESULT_DESC").toString());
  4304. qju.setSic_id(list1.get(0).get("SIZEID") == null?"":list1.get(0).get("SIZEID").toString());
  4305. qju.setSic_result_code(list1.get(0).get("SIZERESULT")==null?"":list1.get(0).get("SIZERESULT").toString());
  4306. qju.setSic_result_desc(list1.get(0).get("SIZERESULT_DESC")==null?"":list1.get(0).get("SIZERESULT_DESC").toString());
  4307. qju.setDic_id(list1.get(0).get("SPYID")==null?"":list1.get(0).get("SPYID").toString());
  4308. qju.setDic_result_code(list1.get(0).get("SPYRESULT")==null?"":list1.get(0).get("SPYRESULT").toString());
  4309. qju.setDic_result_desc(list1.get(0).get("SPYRESULT_DESC")==null?"":list1.get(0).get("SPYRESULT_DESC").toString());
  4310. qju.setSfd_id(list1.get(0).get("SURFACEID")==null?"":list1.get(0).get("SURFACEID").toString());
  4311. qju.setSfd_result_code(list1.get(0).get("UD_SURFACE_RESULT")==null?"":list1.get(0).get("UD_SURFACE_RESULT").toString());
  4312. qju.setSfd_result_desc(list1.get(0).get("UD_SURFACE_RESULT_DESC")==null?"":list1.get(0).get("UD_SURFACE_RESULT_DESC").toString());
  4313. qju.setSfu_id(list1.get(0).get("SURFACEID")==null?"":list1.get(0).get("SURFACEID").toString());
  4314. qju.setSfu_result_code(list1.get(0).get("UP_SURFACE_RESULT")==null?"":list1.get(0).get("UP_SURFACE_RESULT").toString());
  4315. qju.setSfu_result_desc(list1.get(0).get("UP_SURFACE_RESULT_DESC")==null?"":list1.get(0).get("UP_SURFACE_RESULT_DESC").toString());
  4316. qju.setSfe_id(list1.get(0).get("SURFACEID")==null?"":list1.get(0).get("SURFACEID").toString());
  4317. qju.setSfe_result_code(list1.get(0).get("MARGINAL_RESULT")==null?"":list1.get(0).get("MARGINAL_RESULT").toString());
  4318. qju.setSfe_result_desc(list1.get(0).get("MARGINAL_RESULT_DESC")==null?"":list1.get(0).get("MARGINAL_RESULT_DESC").toString());
  4319. qju.setMst_id(list1.get(0).get("SURFACEID")==null?"":list1.get(0).get("SURFACEID").toString());
  4320. qju.setMst_result_code(list1.get(0).get("SURFACERESULT")==null?"":list1.get(0).get("SURFACERESULT").toString());
  4321. qju.setMst_result_desc(list1.get(0).get("SURFACERESULT_DESC")==null?"":list1.get(0).get("SURFACERESULT_DESC").toString());
  4322. qju.setFst_id(list1.get(0).get("PHYFSTSID")==null?"":list1.get(0).get("PHYFSTSID").toString());
  4323. qju.setFst_result_code(list1.get(0).get("PHYFSTSRESULT")==null?"":list1.get(0).get("PHYFSTSRESULT").toString());
  4324. qju.setFst_result_desc(list1.get(0).get("PHYFSTSRESULT_DESC")==null?"":list1.get(0).get("PHYFSTSRESULT_DESC").toString());
  4325. qju.setPsc(hashmap.get(0).get("PSC")==null?"":hashmap.get(0).get("PSC").toString());
  4326. qju.setPsc_desc(hashmap.get(0).get("PSC_DESC")==null?"":hashmap.get(0).get("PSC_DESC").toString());
  4327. qju.setProd_code(hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString());
  4328. qju.setProd_name(hashmap.get(0).get("PROD_NAME")==null?"":hashmap.get(0).get("PROD_NAME").toString());
  4329. qju.setSteel_code(hashmap.get(0).get("STEEL_CODE")==null?"":hashmap.get(0).get("STEEL_CODE").toString());
  4330. qju.setSteel_name(hashmap.get(0).get("STEEL_NAME").toString());
  4331. qju.setStd_code(hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString());
  4332. qju.setStd_name(hashmap.get(0).get("STD_NAME")==null?"":hashmap.get(0).get("STD_NAME").toString());
  4333. qju.setJudge_name(username);
  4334. qju.setJudge_time(new Date());
  4335. qju.setPline_code(hashmap.get(0).get("PLINE_CODE")==null?"":hashmap.get(0).get("PLINE_CODE").toString());
  4336. qju.setPline_name(hashmap.get(0).get("PLINE_NAME")==null?"":hashmap.get(0).get("PLINE_NAME").toString());
  4337. mapper.insertQcmJudgeUltimate(qju);
  4338. //调用一体化接口
  4339. //发送熔炼成分实绩
  4340. if(zra.getJudgeresult().equals("1")){
  4341. List<QcmJhyInspElements> chemresult1 = mapper.queryQcmJhyInspElements("select * from qcm_jhy_insp_elements t where t.assay_type = 'L' and t.heat_no = '"+hashmap.get(0).get("HEAT_NO").toString()+"'");
  4342. if(chemresult1.size() > 0){
  4343. String result = SendChemResult(chemresult1);
  4344. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  4345. qjus.setMaterial_no(material_no);
  4346. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  4347. //qjus.setJson_text(result);
  4348. qjus.setResult_type("C");
  4349. qjus.setJudge_id(list1.get(0).get("R_CHEMID") == null?"":list1.get(0).get("R_CHEMID").toString());
  4350. qjus.setCreate_name("system");
  4351. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  4352. }
  4353. //发送成品成分实绩
  4354. List<QcmJhyInspElements> chemresult2 = mapper.queryQcmJhyInspElements("select * from qcm_jhy_insp_elements t where t.assay_type = 'P' and t.INSPECTION_LOT = '"+inspection_lot+"'");
  4355. if(chemresult2.size() > 0){
  4356. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  4357. String result = SendChemResult(chemresult2);
  4358. qjus.setMaterial_no(material_no);
  4359. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  4360. //qjus.setJson_text(result);
  4361. qjus.setResult_type("C");
  4362. qjus.setJudge_id(list1.get(0).get("CHEMID") == null?"":list1.get(0).get("CHEMID").toString());
  4363. qjus.setCreate_name("system");
  4364. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  4365. }
  4366. //发送材质实绩
  4367. List<QcmJhyPhyresult> phyresult1 = mapper.queryQcmJhyPhyresult("select * from qcm_jhy_insp_physics t where t.SPECIMEN_NO in (select SPECIMEN_NO from QCM_JHY_SAMPLE_CONSIGN_D where INSPECTION_LOT = '"+inspection_lot+"')");
  4368. if(phyresult1.size() > 0){
  4369. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  4370. String result = SendPhyResult(phyresult1);
  4371. qjus.setMaterial_no(material_no);
  4372. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  4373. qjus.setJson_text(result);
  4374. qjus.setResult_type("P");
  4375. qjus.setJudge_id(list1.get(0).get("PHYSID") == null?"":list1.get(0).get("PHYSID").toString());
  4376. qjus.setCreate_name("system");
  4377. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  4378. }
  4379. }
  4380. String judgeresult = "";
  4381. if(zra.getJudgeresult().equals("1")){
  4382. judgeresult = "40140101";
  4383. }else if(zra.getJudgeresult().equals("3")){
  4384. if(zra.getSurfaceresult() != null && zra.getSurfaceresult().equals("3")){
  4385. judgeresult = "40140301";
  4386. }else{
  4387. judgeresult = "40140302";
  4388. }
  4389. }else if(zra.getJudgeresult().equals("4")){
  4390. judgeresult = "40140303";
  4391. }
  4392. String cj_result = "";
  4393. sql = "SELECT * FROM Qcm_Ord_Design_Std_Pic a where a.org_code <> '5000' and a.org_code <> 'IC003' and a.org_code <> 'IC004' "
  4394. +" and a.org_code <> 'IC001' and a.org_code <> 'IC010' and a.design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'";
  4395. List<HashMap> listcj = mapper.query(sql);
  4396. if (listcj!=null&&listcj.size()>0 && (material_no.startsWith("Z") || material_no.startsWith("H"))) {
  4397. sql = "SELECT * FROM Qcm_Ord_Design_Std_Pic a where a.org_code in ('IC011','IC012','IC013','IC014','IC015','IC016','IC017'"
  4398. + ",'IC018','IC019','IC020','IC021','IC022','IC023','IC024','IC025','IC026') and a.design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'";
  4399. List<HashMap> listfcj = mapper.query(sql);
  4400. if(listfcj.size() >0){
  4401. cj_result = "40140105";
  4402. judgeresult = "40140105";
  4403. }else{
  4404. cj_result = "40140103";
  4405. judgeresult = "40140103";
  4406. }
  4407. }
  4408. String steelname = hashmap.get(0).get("STEEL_NAME")==null?"":hashmap.get(0).get("STEEL_NAME").toString();
  4409. String phyid = list1.get(0).get("PHYSID")==null?"":list1.get(0).get("PHYSID").toString();
  4410. if(!phyid.equals("")){
  4411. sql= "select max(t.steel_name) steel_name from qcm_judge_physical t where t.phy_id in (select phy_id from qcm_judge_physical_utm_d d where d.pic_id = '"+phyid+"')";
  4412. List<HashMap> liststeel = mapper.query(sql);
  4413. if(liststeel != null && liststeel.size() >0 && liststeel.get(0).get("STEEL_NAME").toString().startsWith("SWRH82B-YL")){
  4414. steelname = liststeel.get(0).get("STEEL_NAME").toString();
  4415. }
  4416. }
  4417. String prod_code = hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString();
  4418. if(hashmap.get(0).get("DESIGN_KEY").toString().startsWith("19")){
  4419. prod_code = productname;
  4420. }
  4421. judge_call(hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString(),prod_code,hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString(),hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString(),hashmap.get(0).get("PSC")==null?"":hashmap.get(0).get("PSC").toString(),judgeresult,"","","",cj_result,material_no,username,hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString(),hashmap.get(0).get("HT_NO")==null?"":hashmap.get(0).get("HT_NO").toString(),utm_id,hashmap.get(0).get("DESIGN_KEY")==null?"":hashmap.get(0).get("DESIGN_KEY").toString(),steelname);
  4422. }
  4423. }else{
  4424. for(HashMap list:list2){
  4425. if(!list.get("JUDGERESULT").toString().equals("0")){
  4426. throw new Exception("该检验号下已有物料号做了综合判定,不能再次判定!");
  4427. }
  4428. if(list.get("CIC_IS_LOCK").toString().equals("1")){
  4429. throw new Exception("成分已锁定,不能进行综合判定!");
  4430. }
  4431. if(list.get("PIC_IS_LOCK").toString().equals("1")){
  4432. throw new Exception("材质已锁定,不能进行综合判定!");
  4433. }
  4434. if(list.get("SIC_IS_LOCK").toString().equals("1")){
  4435. throw new Exception("公差已锁定,不能进行综合判定!");
  4436. }
  4437. if(list.get("R_CIC_IS_LOCK").toString().equals("1")){
  4438. throw new Exception("成分已锁定,不能进行综合判定!");
  4439. }
  4440. if(list.get("DIC_IS_LOCK").toString().equals("1")){
  4441. throw new Exception("探伤已锁定,不能进行综合判定!");
  4442. }
  4443. if(hashmap.get(0).get("DESIGN_KEY") == null){
  4444. throw new Exception("该物料没有订单,不能进行综合判定!");
  4445. }
  4446. if(list.get("SFU_IS_LOCK").toString().equals("1") || list.get("SFD_IS_LOCK").toString().equals("1") || list.get("SFE_IS_LOCK").toString().equals("1")){
  4447. throw new Exception("表面已锁定,不能进行综合判定!");
  4448. }
  4449. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"C")){
  4450. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_cic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  4451. if(list.get("CHEMRESULT").toString().equals("0") && count > 0){
  4452. throw new Exception("该物料未做成品成分判定,不能进行综合判定!");
  4453. }
  4454. }
  4455. if(list.get("R_CHEMRESULT").toString().equals("0")){
  4456. throw new Exception("该物料未做熔炼成分判定,不能进行综合判定!");
  4457. }
  4458. /*if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"A")){
  4459. if(list.get("R_CHEMRESULT").toString().equals("0")){
  4460. throw new Exception("该物料未做熔炼成分判定,不能取进行综合判定!");
  4461. }
  4462. }*/
  4463. if(list.get("SURFACERESULT").toString().equals("0")){
  4464. throw new Exception("该物料未做表面检验,不能进行综合判定!");
  4465. }
  4466. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_pic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  4467. if(count > 0){
  4468. if(hashmap.get(0).get("PLINE_CODE").equals("LT1")){
  4469. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from QCM_ORD_DESIGN_SAMPLE_M where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"' AND PROCESS_CODE = 'LT1'").get(0).get("COUNT").toString());
  4470. }else if(hashmap.get(0).get("PLINE_CODE").equals("RZ1")){
  4471. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from QCM_ORD_DESIGN_SAMPLE_M where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"' AND PROCESS_CODE = 'RZ1'").get(0).get("COUNT").toString());
  4472. }
  4473. }
  4474. if(list.get("PHYSRESULT").toString().equals("0") && count > 0){
  4475. throw new Exception("该物料未做材质判定,不能进行综合判定!");
  4476. }
  4477. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_sic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  4478. if(list.get("SIZERESULT").toString().equals("0") && count > 0){
  4479. throw new Exception("该物料未做公差检验,不能进行综合判定!");
  4480. }
  4481. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_dic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  4482. if(list.get("SPYRESULT").toString().equals("0") && count > 0){
  4483. throw new Exception("该物料未做探伤检验,不能进行综合判定!");
  4484. }
  4485. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"C")){
  4486. flag += "1".equals(list.get("CHEMRESULT").toString()) ? 0 : 1;
  4487. }
  4488. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"A")){
  4489. flag += "1".equals(list.get("R_CHEMRESULT").toString()) ? 0 : 1;
  4490. }
  4491. flag += "1".equals(list.get("SURFACERESULT").equals("0")?"1":list.get("SURFACERESULT").toString()) ? 0 : 1;
  4492. flag += "1".equals(list.get("PHYSRESULT").equals("0")?"1":list.get("PHYSRESULT").toString()) ? 0 : 1;
  4493. flag += "1".equals(list.get("SIZERESULT").equals("0")?"1":list.get("SIZERESULT").toString()) ? 0 : 1;
  4494. flag += "1".equals(list.get("SPYRESULT").equals("0")?"1":list.get("SPYRESULT").toString()) ? 0 : 1;
  4495. QcmJudgeUltimate qju=new QcmJudgeUltimate();
  4496. //获取判定记录号当天的最大值
  4497. Date now = new Date();
  4498. String opr_time = new SimpleDateFormat("yyyyMMddHHmmss").format(now); //操作时间
  4499. SimpleDateFormat sdf=new SimpleDateFormat("yyMMdd");
  4500. String date=sdf.format(now);
  4501. count=0;
  4502. sql ="select * from qcm_judge_ultimate where UTM_ID like 'ZJ"+date+"%' order by UTM_ID desc";
  4503. List<QcmJudgeUltimate> listUl=mapper.QcmJudgeUltimate(sql);
  4504. if (listUl!=null&&listUl.size()>0) {
  4505. String s=listUl.get(0).getUtm_id();
  4506. count=Integer.parseInt(s.substring(s.length()-4,s.length()));
  4507. }
  4508. count++;
  4509. String utm_id="ZJ"+sdf.format(now)+String.format("%04d",count);
  4510. //更新库存表综合判定结果
  4511. QcmJudgeCoilResult zra = new QcmJudgeCoilResult();
  4512. zra.setCoil_no(material_no);
  4513. zra.setJudgeid(utm_id);
  4514. zra.setJudgeresult(flag == 0 ? "1" :"2");
  4515. zra.setJudgeresult_desc(flag == 0 ? "合格" : "不合格");
  4516. if(list.get("CHEMRESULT").toString().equals("3") || list.get("SURFACERESULT").toString().equals("3") || list.get("PHYSRESULT").toString().equals("3") ||list.get("SIZERESULT").toString().equals("3") ||list.get("SPYRESULT").toString().equals("3")){
  4517. zra.setJudgeresult("3");
  4518. zra.setJudgeresult_desc("次品");
  4519. }
  4520. if(list.get("CHEMRESULT").toString().equals("4") || list.get("SURFACERESULT").toString().equals("4") || list.get("PHYSRESULT").toString().equals("4") ||list.get("SIZERESULT").toString().equals("4") ||list.get("SPYRESULT").toString().equals("4")){
  4521. zra.setJudgeresult("4");
  4522. zra.setJudgeresult_desc("废品");
  4523. }
  4524. judge_result = zra.getJudgeresult();
  4525. /*if(zra.getJudgeresult().equals("2")){
  4526. throw new Exception("综合判定不合格!");
  4527. }*/
  4528. mapper.UpdateJugeResultJ(zra);
  4529. //插入综合判定记录表
  4530. qju.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  4531. qju.setHeat_no(hashmap.get(0).get("HEAT_NO")==null?"":hashmap.get(0).get("HEAT_NO").toString());
  4532. qju.setBatch_no(hashmap.get(0).get("BATCHNO")==null?"":hashmap.get(0).get("BATCHNO").toString());
  4533. qju.setBoard_no(hashmap.get(0).get("BOARD_NO")==null?"":hashmap.get(0).get("BOARD_NO").toString());
  4534. qju.setInspection_lot(hashmap.get(0).get("INSPECTION_LOT") == null ?"":hashmap.get(0).get("INSPECTION_LOT").toString());
  4535. qju.setMaterial_no(material_no);
  4536. qju.setUtm_id(utm_id);
  4537. qju.setUtm_memo("");
  4538. qju.setUtm_result_code(zra.getJudgeresult());
  4539. qju.setUtm_result_desc(zra.getJudgeresult_desc());
  4540. qju.setCic_id(list2.get(0).get("CHEMID") == null?"":list2.get(0).get("CHEMID").toString());
  4541. qju.setCic_result_code(list2.get(0).get("CHEMRESULT")==null?"":list2.get(0).get("CHEMRESULT").toString());
  4542. qju.setCic_result_desc(list2.get(0).get("CHEMRESULT_DESC")==null?"":list2.get(0).get("CHEMRESULT_DESC").toString());
  4543. qju.setR_cic_id(list2.get(0).get("R_CHEMID") == null?"":list2.get(0).get("R_CHEMID").toString());
  4544. qju.setR_cic_result_code(list2.get(0).get("R_CHEMRESULT")==null?"":list2.get(0).get("R_CHEMRESULT").toString());
  4545. qju.setR_cic_result_desc(list2.get(0).get("R_CHEMRESULT_DESC")==null?"":list2.get(0).get("R_CHEMRESULT_DESC").toString());
  4546. qju.setPic_id(list2.get(0).get("PHYSID") == null?"":list2.get(0).get("PHYSID").toString());
  4547. qju.setPic_result_code(list2.get(0).get("PHYSRESULT")==null?"":list2.get(0).get("PHYSRESULT").toString());
  4548. qju.setPic_result_desc(list2.get(0).get("PHYSRESULT_DESC")==null?"":list2.get(0).get("PHYSRESULT_DESC").toString());
  4549. qju.setSic_id(list2.get(0).get("SIZEID") == null?"":list2.get(0).get("SIZEID").toString());
  4550. qju.setSic_result_code(list2.get(0).get("SIZERESULT")==null?"":list2.get(0).get("SIZERESULT").toString());
  4551. qju.setSic_result_desc(list2.get(0).get("SIZERESULT_DESC")==null?"":list2.get(0).get("SIZERESULT_DESC").toString());
  4552. qju.setDic_id(list2.get(0).get("SPYID")==null?"":list2.get(0).get("SPYID").toString());
  4553. qju.setDic_result_code(list2.get(0).get("SPYRESULT")==null?"":list2.get(0).get("SPYRESULT").toString());
  4554. qju.setDic_result_desc(list2.get(0).get("SPYRESULT_DESC")==null?"":list2.get(0).get("SPYRESULT_DESC").toString());
  4555. qju.setSfd_id(list2.get(0).get("SURFACEID")==null?"":list2.get(0).get("SURFACEID").toString());
  4556. qju.setSfd_result_code(list2.get(0).get("UD_SURFACE_RESULT")==null?"":list2.get(0).get("UD_SURFACE_RESULT").toString());
  4557. qju.setSfd_result_desc(list2.get(0).get("UD_SURFACE_RESULT_DESC")==null?"":list2.get(0).get("UD_SURFACE_RESULT_DESC").toString());
  4558. qju.setSfu_id(list2.get(0).get("SURFACEID")==null?"":list2.get(0).get("SURFACEID").toString());
  4559. qju.setSfu_result_code(list2.get(0).get("UP_SURFACE_RESULT")==null?"":list2.get(0).get("UP_SURFACE_RESULT").toString());
  4560. qju.setSfu_result_desc(list2.get(0).get("UP_SURFACE_RESULT_DESC")==null?"":list2.get(0).get("UP_SURFACE_RESULT_DESC").toString());
  4561. qju.setSfe_id(list2.get(0).get("SURFACEID")==null?"":list2.get(0).get("SURFACEID").toString());
  4562. qju.setSfe_result_code(list2.get(0).get("MARGINAL_RESULT")==null?"":list2.get(0).get("MARGINAL_RESULT").toString());
  4563. qju.setSfe_result_desc(list2.get(0).get("MARGINAL_RESULT_DESC")==null?"":list2.get(0).get("MARGINAL_RESULT_DESC").toString());
  4564. qju.setMst_id(list2.get(0).get("SURFACEID")==null?"":list2.get(0).get("SURFACEID").toString());
  4565. qju.setMst_result_code(list2.get(0).get("SURFACERESULT")==null?"":list2.get(0).get("SURFACERESULT").toString());
  4566. qju.setMst_result_desc(list2.get(0).get("SURFACERESULT_DESC")==null?"":list2.get(0).get("SURFACERESULT_DESC").toString());
  4567. qju.setFst_id(list2.get(0).get("PHYFSTSID")==null?"":list2.get(0).get("PHYFSTSID").toString());
  4568. qju.setFst_result_code(list2.get(0).get("PHYFSTSRESULT")==null?"":list2.get(0).get("PHYFSTSRESULT").toString());
  4569. qju.setFst_result_desc(list2.get(0).get("PHYFSTSRESULT_DESC")==null?"":list2.get(0).get("PHYFSTSRESULT_DESC").toString());
  4570. qju.setPsc(hashmap.get(0).get("PSC")==null?"":hashmap.get(0).get("PSC").toString());
  4571. qju.setPsc_desc(hashmap.get(0).get("PSC_DESC")==null?"":hashmap.get(0).get("PSC_DESC").toString());
  4572. qju.setProd_code(hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString());
  4573. qju.setProd_name(hashmap.get(0).get("PROD_NAME")==null?"":hashmap.get(0).get("PROD_NAME").toString());
  4574. qju.setSteel_code(hashmap.get(0).get("STEEL_CODE")==null?"":hashmap.get(0).get("STEEL_CODE").toString());
  4575. qju.setSteel_name(hashmap.get(0).get("STEEL_NAME").toString());
  4576. qju.setStd_code(hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString());
  4577. qju.setStd_name(hashmap.get(0).get("STD_NAME")==null?"":hashmap.get(0).get("STD_NAME").toString());
  4578. qju.setJudge_name(username);
  4579. qju.setJudge_time(new Date());
  4580. qju.setPline_code(hashmap.get(0).get("PLINE_CODE")==null?"":hashmap.get(0).get("PLINE_CODE").toString());
  4581. qju.setPline_name(hashmap.get(0).get("PLINE_NAME")==null?"":hashmap.get(0).get("PLINE_NAME").toString());
  4582. mapper.insertQcmJudgeUltimate(qju);
  4583. if(zra.getJudgeresult().equals("1")){
  4584. //发送熔炼成分实绩
  4585. List<QcmJhyInspElements> chemresult1 = mapper.queryQcmJhyInspElements("select * from qcm_jhy_insp_elements t where t.assay_type = 'L' and t.heat_no = '"+hashmap.get(0).get("HEAT_NO").toString()+"'");
  4586. if(chemresult1.size() > 0){
  4587. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  4588. qjus.setMaterial_no(material_no);
  4589. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  4590. qjus.setResult_type("C");
  4591. qjus.setJudge_id(list.get("R_CHEMID") == null?"":list.get("R_CHEMID").toString());
  4592. qjus.setCreate_name("system");
  4593. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  4594. }
  4595. String inspection_lot = hashmap.get(0).get("INSPECTION_LOT") == null?"":hashmap.get(0).get("INSPECTION_LOT").toString();
  4596. //发送成品成分实绩
  4597. List<QcmJhyInspElements> chemresult2 = mapper.queryQcmJhyInspElements("select * from qcm_jhy_insp_elements t where t.assay_type = 'P' and t.INSPECTION_LOT = '"+inspection_lot+"'");
  4598. if(chemresult2.size() > 0){
  4599. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  4600. qjus.setMaterial_no(material_no);
  4601. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  4602. qjus.setResult_type("C");
  4603. qjus.setJudge_id(list.get("CHEMID") == null?"":list.get("CHEMID").toString());
  4604. qjus.setCreate_name("system");
  4605. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  4606. }
  4607. //发送材质实绩
  4608. List<QcmJhyPhyresult> phyresult1 = mapper.queryQcmJhyPhyresult("select * from qcm_jhy_insp_physics t where t.SPECIMEN_NO in (select SPECIMEN_NO from QCM_JHY_SAMPLE_CONSIGN_D where INSPECTION_LOT = '"+inspection_lot+"')");
  4609. if(phyresult1.size() > 0){
  4610. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  4611. qjus.setMaterial_no(material_no);
  4612. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  4613. qjus.setResult_type("P");
  4614. qjus.setJudge_id(list.get("PHYSID") == null?"":list.get("PHYSID").toString());
  4615. qjus.setCreate_name("system");
  4616. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  4617. }
  4618. }
  4619. }
  4620. }
  4621. //判断产线是不是卷板,是的话调用存储过程COILJUDGE_STATUS
  4622. if(list2.size() > 0) {
  4623. hashmap = doQueryMaterialInfoJ(material_no);
  4624. if (hashmap.size() > 0) {
  4625. coiljudge_status_call(hashmap.get(0).get("PLINE_CODE").toString(), material_no, null, null, null, null, judge_result, null, null,"");
  4626. }
  4627. }
  4628. }else{
  4629. throw new Exception("未找到该检验号下的库存信息!");
  4630. }
  4631. QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
  4632. qjog.setOperate_name(username);
  4633. qjog.setOperate_type("综合判定");
  4634. qjog.setParams(material_no);
  4635. qjog.setProd_line(hashmap.get(0).get("PLINE_CODE")==null?"":hashmap.get(0).get("PLINE_CODE").toString());
  4636. qjog.setBatchno(hashmap.get(0).get("BATCHNO")==null?"":hashmap.get(0).get("BATCHNO").toString());
  4637. qjog.setJudge_result(judge_result);
  4638. mapper.insertQcmJudgeOperateLog(qjog);
  4639. //cro = creatUltimateResultByHand(material_no,username);//手动进行综合判定
  4640. SqlSession.commit();
  4641. }catch(Exception ex){
  4642. cro.setV_errCode(-1);
  4643. cro.setV_errMsg(ex.getMessage());
  4644. SqlSession.rollback();
  4645. logger.info(new Date().toString() + " QCM.QCM03.QCM0302.QcmJudgePhysicalServiceImpl.ultimateJudgeAuto:【" + material_no + "," + username + "】" + ex);
  4646. }finally {
  4647. SqlSession.close();
  4648. }
  4649. //SqlSession.close();
  4650. return cro;
  4651. }
  4652. /***
  4653. * 综合判定:强制合格
  4654. * 0625增加finally
  4655. * @param sum
  4656. * @return
  4657. */
  4658. @SuppressWarnings({ "rawtypes", "unused" })
  4659. public CoreReturnObject ultimateJudgeAutoQZ(String material_no, String username,String remark) throws Exception{
  4660. try{
  4661. int count = 0;
  4662. List<HashMap> hashmap = doQueryMaterialInfoZhb(material_no);
  4663. if(hashmap.size() == 0){
  4664. hashmap = doQueryMaterialInfoBX(material_no);
  4665. }
  4666. if(hashmap.size() == 0){
  4667. hashmap = doQueryMaterialInfoJ(material_no);
  4668. }
  4669. String sql = "select * from zj_result_all@xgcx where BILLETID = '"+material_no+"'";
  4670. int flag = 0;
  4671. String judge_result = "";
  4672. List<HashMap> list1 = mapper.query(sql);
  4673. sql = "select * from QCM_JUDGE_COIL_RESULT where coil_no = '"+material_no+"'";
  4674. List<HashMap> list2 = mapper.query(sql);
  4675. if(list1.size() >0 || list2.size() >0){
  4676. if(list1.size()>0){
  4677. for(HashMap list:list1){
  4678. String billetid_jy = list.get("BILLETID_JY") == null?"":list.get("BILLETID_JY").toString();
  4679. if(billetid_jy.equals("")){
  4680. throw new Exception("检验号为空,不能判定!");
  4681. }
  4682. sql = "select * from qcm_jhy_sample_consign_d t,qcm_jhy_sample_r_ord r "
  4683. + " where t.smp_no = r.smp_no and r.inspection_lot is not null and t.rz_mixroll is not null "
  4684. + " and t.rz_old_sampl_no is not null and r.judge_status<>'1' "
  4685. + " and r.steel_code in ('Q235B','Q355B') and t.rz_mixroll in (select d.rz_mixroll from qcm_jhy_sample_consign_d d where d.inspection_lot = '"+billetid_jy+"') "
  4686. + " and t.rz_old_sampl_no in (select d.rz_old_sampl_no from qcm_jhy_sample_consign_d d where d.inspection_lot = '"+billetid_jy+"')";
  4687. List<HashMap> listyc = mapper.query(sql);
  4688. if(listyc.size() > 0){
  4689. throw new Exception("该预测区间存在未判或者不合格的数据,不能判定!");
  4690. }
  4691. /*String pic_id = list.get("PHYSID")==null?"":list.get("PHYSID").toString();
  4692. List<String> listphy = new ArrayList<String>();
  4693. List<QcmJudgePhysicalResult> qjpr1 = new ArrayList<QcmJudgePhysicalResult>();
  4694. sql = "select * from qcm_judge_physical_result where phy_id in (select phy_id "
  4695. + " from Qcm_Judge_Physical_Utm_d "
  4696. + " where pic_id = '"+pic_id+"')";
  4697. qjpr1 = mapper.queryQcmJudgePhysicalResult(sql);
  4698. for(QcmJudgePhysicalResult y:qjpr1)
  4699. {
  4700. String s = (y.getPhy_code_l()==null?"":y.getPhy_code_l()) + (y.getPhy_code_m()==null?"":y.getPhy_code_m()) + (y.getPhy_code_s()==null?"":y.getPhy_code_s()) + (y.getItem_code_d()==null?"":y.getItem_code_d())
  4701. + (y.getItem_code_s()==null?"":y.getItem_code_s()) + (y.getItem_code_t()==null?"":y.getItem_code_t());
  4702. listphy.add(s);
  4703. }
  4704. List<QcmOrdDesignStdPic> qrdsp = new ArrayList<QcmOrdDesignStdPic>();
  4705. sql = "select * from qcm_ord_design_std_pic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'";
  4706. qrdsp = mapper.queryQCMOrdDesignStdPic(sql);
  4707. for(QcmOrdDesignStdPic x:qrdsp){
  4708. String z = (x.getPhy_code_l()==null?"":x.getPhy_code_l()) + (x.getPhy_code_m()==null?"":x.getPhy_code_m()) + (x.getPhy_code_s()==null?"":x.getPhy_code_s()) + (x.getItem_code_d()==null?"":x.getItem_code_d())
  4709. + (x.getItem_code_s()==null?"":x.getItem_code_s()) + (x.getItem_code_t()==null?"":x.getItem_code_t());
  4710. String y = (x.getPhy_name_l()==null?"":x.getPhy_name_l()) + (x.getPhy_desc_m()==null?"":x.getPhy_desc_m()) + (x.getPhy_name_s()==null?"":x.getPhy_name_s()) + (x.getItem_name_d()==null?"":x.getItem_name_d())
  4711. + (x.getItem_name_s()==null?"":x.getItem_name_s()) + (x.getItem_name_t()==null?"":x.getItem_name_t());
  4712. if(!listphy.contains(z)){
  4713. throw new Exception("该材质判定未满足订单标准,不能判定,缺失"+y+" 检验项目!");
  4714. }
  4715. }*/
  4716. if(!list.get("JUDGERESULT").toString().equals("0")){
  4717. throw new Exception("该物料做了综合判定,不能再次判定!");
  4718. }
  4719. if(list.get("CIC_IS_LOCK").toString().equals("1")){
  4720. throw new Exception("成分已锁定,不能进行综合判定!");
  4721. }
  4722. if(list.get("PIC_IS_LOCK").toString().equals("1")){
  4723. throw new Exception("材质已锁定,不能进行综合判定!");
  4724. }
  4725. if(list.get("R_CIC_IS_LOCK").toString().equals("1")){
  4726. throw new Exception("成分已锁定,不能进行综合判定!");
  4727. }
  4728. if(list.get("SIC_IS_LOCK").toString().equals("1")){
  4729. throw new Exception("公差已锁定,不能进行综合判定!");
  4730. }
  4731. if(list.get("DIC_IS_LOCK").toString().equals("1")){
  4732. throw new Exception("探伤已锁定,不能进行综合判定!");
  4733. }
  4734. if(list.get("SFU_IS_LOCK").toString().equals("1") || list.get("SFD_IS_LOCK").toString().equals("1") || list.get("SFE_IS_LOCK").toString().equals("1")){
  4735. throw new Exception("表面已锁定,不能进行综合判定!");
  4736. }
  4737. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"C")){
  4738. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_cic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  4739. if(list.get("CHEMRESULT").toString().equals("0") && count >0){
  4740. throw new Exception("该物料未做成品成分判定,不能进行综合判定!");
  4741. }
  4742. }
  4743. if(list.get("R_CHEMRESULT").toString().equals("0")){
  4744. throw new Exception("该物料未做熔炼成分判定,不能进行综合判定!");
  4745. }
  4746. /*if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"A")){
  4747. if(list.get("R_CHEMRESULT").toString().equals("0")){
  4748. throw new Exception("该物料未做熔炼成分判定,不能取进行综合判定!");
  4749. }
  4750. }*/
  4751. if(list.get("SURFACERESULT").toString().equals("0")){
  4752. throw new Exception("该物料未做表面检验,不能进行综合判定!");
  4753. }
  4754. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_pic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  4755. if(list.get("PHYSRESULT").toString().equals("0") && count > 0){
  4756. throw new Exception("该物料未做材质判定,不能进行综合判定!");
  4757. }
  4758. /*if(list.get("BILLETID_JY") == null){
  4759. throw new Exception("该物料检验号为空,不能进行综合判定!");
  4760. }*/
  4761. String inspection_lot = hashmap.get(0).get("INSPECTION_LOT") == null ?"":hashmap.get(0).get("INSPECTION_LOT").toString();
  4762. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_sic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  4763. if(list.get("SIZERESULT").toString().equals("0") && count > 0){
  4764. throw new Exception("该物料未做公差检验,不能进行综合判定!");
  4765. }
  4766. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_dic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  4767. if(list.get("SPYRESULT").toString().equals("0") && count > 0){
  4768. throw new Exception("该物料未做探伤检验,不能进行综合判定!");
  4769. }
  4770. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"C")){
  4771. flag += "1".equals(list.get("CHEMRESULT").toString()) ? 0 : 1;
  4772. }
  4773. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"A")){
  4774. flag += "1".equals(list.get("R_CHEMRESULT").toString()) ? 0 : 1;
  4775. }
  4776. flag += "1".equals(list.get("SURFACERESULT").equals("0")?"1":list.get("SURFACERESULT").toString()) ? 0 : 1;
  4777. flag += "1".equals(list.get("PHYSRESULT").equals("0")?"1":list.get("PHYSRESULT").toString()) ? 0 : 1;
  4778. flag += "1".equals(list.get("SIZERESULT").equals("0")?"1":list.get("SIZERESULT").toString()) ? 0 : 1;
  4779. if(count >0){
  4780. flag += "1".equals(list.get("SPYRESULT").equals("0")?"1":list.get("SPYRESULT").toString()) ? 0 : 1;
  4781. }
  4782. QcmJudgeUltimate qju=new QcmJudgeUltimate();
  4783. //获取判定记录号当天的最大值
  4784. Date now = new Date();
  4785. String opr_time = new SimpleDateFormat("yyyyMMddHHmmss").format(now); //操作时间
  4786. SimpleDateFormat sdf=new SimpleDateFormat("yyMMdd");
  4787. String date=sdf.format(now);
  4788. count=0;
  4789. String type1 = "";
  4790. if(material_no.startsWith("Z")||material_no.startsWith("H")){
  4791. type1 = "ZB";
  4792. }else{
  4793. type1 = "ZX";
  4794. }
  4795. sql ="select * from (select * from qcm_judge_ultimate where UTM_ID like '"+type1+date+"%' order by UTM_ID desc) where rownum <= 1";
  4796. List<QcmJudgeUltimate> listUl=mapper.QcmJudgeUltimate(sql);
  4797. if (listUl!=null&&listUl.size()>0) {
  4798. String s=listUl.get(0).getUtm_id();
  4799. count=Integer.parseInt(s.substring(s.length()-4,s.length()));
  4800. }
  4801. count++;
  4802. String utm_id=type1+sdf.format(now)+String.format("%04d",count);
  4803. qju.setUtm_id(utm_id);
  4804. //更新库存表综合判定结果
  4805. ZjResultAll zra = new ZjResultAll();
  4806. zra.setBilletid(material_no);
  4807. zra.setJudgeid(utm_id);
  4808. zra.setJudgeresult(flag == 0 ? "1" :"2");
  4809. zra.setJudgeresult_desc(flag == 0 ? "合格" : "不合格");
  4810. if(list.get("CHEMRESULT").toString().equals("3") || list.get("SURFACERESULT").toString().equals("3") || list.get("PHYSRESULT").toString().equals("3") ||list.get("SIZERESULT").toString().equals("3") ||list.get("SPYRESULT").toString().equals("3")){
  4811. zra.setJudgeresult("3");
  4812. zra.setJudgeresult_desc("次品");
  4813. }
  4814. if(list.get("CHEMRESULT").toString().equals("4") || list.get("SURFACERESULT").toString().equals("4") || list.get("PHYSRESULT").toString().equals("4") ||list.get("SIZERESULT").toString().equals("4") ||list.get("SPYRESULT").toString().equals("4")){
  4815. zra.setJudgeresult("4");
  4816. zra.setJudgeresult_desc("废品");
  4817. }
  4818. if(zra.getJudgeresult().equals("2")){
  4819. throw new Exception("综合判定不合格!");
  4820. }
  4821. mapper.UpdateJugeResultB(zra);
  4822. //插入综合判定记录表
  4823. qju.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  4824. qju.setHeat_no(hashmap.get(0).get("HEAT_NO")==null?"":hashmap.get(0).get("HEAT_NO").toString());
  4825. qju.setBatch_no(hashmap.get(0).get("BATCHNO")==null?"":hashmap.get(0).get("BATCHNO").toString());
  4826. qju.setBoard_no(hashmap.get(0).get("BOARD_NO")==null?"":hashmap.get(0).get("BOARD_NO").toString());
  4827. qju.setInspection_lot(inspection_lot);
  4828. qju.setMaterial_no(material_no);
  4829. qju.setUtm_id(utm_id);
  4830. qju.setUtm_memo("");
  4831. qju.setUtm_result_code(zra.getJudgeresult());
  4832. qju.setUtm_result_desc(zra.getJudgeresult_desc());
  4833. qju.setCic_id(list1.get(0).get("CHEMID") == null?"":list1.get(0).get("CHEMID").toString());
  4834. qju.setCic_result_code(list1.get(0).get("CHEMRESULT")==null?"":list1.get(0).get("CHEMRESULT").toString());
  4835. qju.setCic_result_desc(list1.get(0).get("CHEMRESULT_DESC")==null?"":list1.get(0).get("CHEMRESULT_DESC").toString());
  4836. qju.setR_cic_id(list1.get(0).get("R_CHEMID") == null?"":list1.get(0).get("R_CHEMID").toString());
  4837. qju.setR_cic_result_code(list1.get(0).get("R_CHEMRESULT")==null?"":list1.get(0).get("R_CHEMRESULT").toString());
  4838. qju.setR_cic_result_desc(list1.get(0).get("R_CHEMRESULT_DESC")==null?"":list1.get(0).get("R_CHEMRESULT_DESC").toString());
  4839. qju.setPic_id(list1.get(0).get("PHYSID") == null?"":list1.get(0).get("PHYSID").toString());
  4840. qju.setPic_result_code(list1.get(0).get("PHYSRESULT")==null?"":list1.get(0).get("PHYSRESULT").toString());
  4841. qju.setPic_result_desc(list1.get(0).get("PHYSRESULT_DESC")==null?"":list1.get(0).get("PHYSRESULT_DESC").toString());
  4842. qju.setSic_id(list1.get(0).get("SIZEID") == null?"":list1.get(0).get("SIZEID").toString());
  4843. qju.setSic_result_code(list1.get(0).get("SIZERESULT")==null?"":list1.get(0).get("SIZERESULT").toString());
  4844. qju.setSic_result_desc(list1.get(0).get("SIZERESULT_DESC")==null?"":list1.get(0).get("SIZERESULT_DESC").toString());
  4845. qju.setDic_id(list1.get(0).get("SPYID")==null?"":list1.get(0).get("SPYID").toString());
  4846. qju.setDic_result_code(list1.get(0).get("SPYRESULT")==null?"":list1.get(0).get("SPYRESULT").toString());
  4847. qju.setDic_result_desc(list1.get(0).get("SPYRESULT_DESC")==null?"":list1.get(0).get("SPYRESULT_DESC").toString());
  4848. qju.setSfd_id(list1.get(0).get("SURFACEID")==null?"":list1.get(0).get("SURFACEID").toString());
  4849. qju.setSfd_result_code(list1.get(0).get("UD_SURFACE_RESULT")==null?"":list1.get(0).get("UD_SURFACE_RESULT").toString());
  4850. qju.setSfd_result_desc(list1.get(0).get("UD_SURFACE_RESULT_DESC")==null?"":list1.get(0).get("UD_SURFACE_RESULT_DESC").toString());
  4851. qju.setSfu_id(list1.get(0).get("SURFACEID")==null?"":list1.get(0).get("SURFACEID").toString());
  4852. qju.setSfu_result_code(list1.get(0).get("UP_SURFACE_RESULT")==null?"":list1.get(0).get("UP_SURFACE_RESULT").toString());
  4853. qju.setSfu_result_desc(list1.get(0).get("UP_SURFACE_RESULT_DESC")==null?"":list1.get(0).get("UP_SURFACE_RESULT_DESC").toString());
  4854. qju.setSfe_id(list1.get(0).get("SURFACEID")==null?"":list1.get(0).get("SURFACEID").toString());
  4855. qju.setSfe_result_code(list1.get(0).get("MARGINAL_RESULT")==null?"":list1.get(0).get("MARGINAL_RESULT").toString());
  4856. qju.setSfe_result_desc(list1.get(0).get("MARGINAL_RESULT_DESC")==null?"":list1.get(0).get("MARGINAL_RESULT_DESC").toString());
  4857. qju.setMst_id(list1.get(0).get("SURFACEID")==null?"":list1.get(0).get("SURFACEID").toString());
  4858. qju.setMst_result_code(list1.get(0).get("SURFACERESULT")==null?"":list1.get(0).get("SURFACERESULT").toString());
  4859. qju.setMst_result_desc(list1.get(0).get("SURFACERESULT_DESC")==null?"":list1.get(0).get("SURFACERESULT_DESC").toString());
  4860. qju.setFst_id(list1.get(0).get("PHYFSTSID")==null?"":list1.get(0).get("PHYFSTSID").toString());
  4861. qju.setFst_result_code(list1.get(0).get("PHYFSTSRESULT")==null?"":list1.get(0).get("PHYFSTSRESULT").toString());
  4862. qju.setFst_result_desc(list1.get(0).get("PHYFSTSRESULT_DESC")==null?"":list1.get(0).get("PHYFSTSRESULT_DESC").toString());
  4863. qju.setPsc(hashmap.get(0).get("PSC")==null?"":hashmap.get(0).get("PSC").toString());
  4864. qju.setPsc_desc(hashmap.get(0).get("PSC_DESC")==null?"":hashmap.get(0).get("PSC_DESC").toString());
  4865. qju.setProd_code(hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString());
  4866. qju.setProd_name(hashmap.get(0).get("PROD_NAME")==null?"":hashmap.get(0).get("PROD_NAME").toString());
  4867. qju.setSteel_code(hashmap.get(0).get("STEEL_CODE")==null?"":hashmap.get(0).get("STEEL_CODE").toString());
  4868. qju.setSteel_name(hashmap.get(0).get("STEEL_NAME").toString());
  4869. qju.setStd_code(hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString());
  4870. qju.setStd_name(hashmap.get(0).get("STD_NAME")==null?"":hashmap.get(0).get("STD_NAME").toString());
  4871. qju.setJudge_name(username);
  4872. qju.setJudge_memo(remark);
  4873. qju.setJudge_time(new Date());
  4874. qju.setPline_code(hashmap.get(0).get("PLINE_CODE")==null?"":hashmap.get(0).get("PLINE_CODE").toString());
  4875. qju.setPline_name(hashmap.get(0).get("PLINE_NAME")==null?"":hashmap.get(0).get("PLINE_NAME").toString());
  4876. mapper.insertQcmJudgeUltimate(qju);
  4877. //调用一体化接口
  4878. //发送熔炼成分实绩
  4879. if(zra.getJudgeresult().equals("1")){
  4880. //List<QcmJhyInspElements> chemresult1 = mapper.queryQcmJhyInspElements("select * from qcm_jhy_insp_elements t where t.assay_type = 'L' and t.heat_no = '"+hashmap.get(0).get("HEAT_NO").toString()+"'");
  4881. if(list1.get(0).get("R_CHEMID") != null){
  4882. //String result = SendChemResult(chemresult1);
  4883. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  4884. qjus.setMaterial_no(material_no);
  4885. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  4886. //qjus.setJson_text(result);
  4887. qjus.setResult_type("C");
  4888. qjus.setJudge_id(list1.get(0).get("R_CHEMID") == null?"":list1.get(0).get("R_CHEMID").toString());
  4889. qjus.setCreate_name("system");
  4890. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  4891. }
  4892. //发送成品成分实绩
  4893. //List<QcmJhyInspElements> chemresult2 = mapper.queryQcmJhyInspElements("select * from qcm_jhy_insp_elements t where t.assay_type = 'P' and t.INSPECTION_LOT = '"+inspection_lot+"'");
  4894. if(list1.get(0).get("CHEMID") != null){
  4895. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  4896. //String result = SendChemResult(chemresult2);
  4897. qjus.setMaterial_no(material_no);
  4898. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  4899. //qjus.setJson_text(result);
  4900. qjus.setResult_type("C");
  4901. qjus.setJudge_id(list1.get(0).get("CHEMID") == null?"":list1.get(0).get("CHEMID").toString());
  4902. qjus.setCreate_name("system");
  4903. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  4904. }
  4905. //发送材质实绩
  4906. //List<QcmJhyPhyresult> phyresult1 = mapper.queryQcmJhyPhyresult("select * from qcm_jhy_insp_physics t where t.SPECIMEN_NO in (select SPECIMEN_NO from QCM_JHY_SAMPLE_CONSIGN_D where INSPECTION_LOT = '"+inspection_lot+"')");
  4907. if(list1.get(0).get("PHYSID") != null){
  4908. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  4909. //String result = SendPhyResult(phyresult1);
  4910. qjus.setMaterial_no(material_no);
  4911. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  4912. //qjus.setJson_text(result);
  4913. qjus.setResult_type("P");
  4914. qjus.setJudge_id(list1.get(0).get("PHYSID") == null?"":list1.get(0).get("PHYSID").toString());
  4915. qjus.setCreate_name("system");
  4916. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  4917. }
  4918. }
  4919. String judgeresult = "";
  4920. if(zra.getJudgeresult().equals("1")){
  4921. judgeresult = "40140101";
  4922. }else if(zra.getJudgeresult().equals("3")){
  4923. if(zra.getSurfaceresult() != null && zra.getSurfaceresult().equals("3")){
  4924. judgeresult = "40140301";
  4925. }else{
  4926. judgeresult = "40140302";
  4927. }
  4928. }else if(zra.getJudgeresult().equals("4")){
  4929. judgeresult = "40140303";
  4930. }
  4931. String cj_result = "";
  4932. sql = "SELECT * FROM Qcm_Ord_Design_Std_Pic a where a.org_code <> '5000' and a.org_code <> 'IC003' and a.org_code <> 'IC004' "
  4933. +" and a.org_code <> 'IC001' and a.org_code <> 'IC010' and a.design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'";
  4934. List<HashMap> listcj = mapper.query(sql);
  4935. if (listcj!=null&&listcj.size()>0 && (material_no.startsWith("Z") || material_no.startsWith("H"))) {
  4936. cj_result = "40140103";
  4937. judgeresult = "40140103";
  4938. }
  4939. String steelname = hashmap.get(0).get("STEEL_NAME")==null?"":hashmap.get(0).get("STEEL_NAME").toString();
  4940. String phyid = list1.get(0).get("PHYSID")==null?"":list1.get(0).get("PHYSID").toString();
  4941. if(!phyid.equals("")){
  4942. sql= "select max(t.steel_name) steel_name from qcm_judge_physical t where t.phy_id in (select phy_id from qcm_judge_physical_utm_d d where d.pic_id = '"+phyid+"')";
  4943. List<HashMap> liststeel = mapper.query(sql);
  4944. if(liststeel != null && liststeel.size() >0 && liststeel.get(0).get("STEEL_NAME").toString().startsWith("SWRH82B-YL")){
  4945. steelname = liststeel.get(0).get("STEEL_NAME").toString();
  4946. }
  4947. }
  4948. judge_call(hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString(),hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString(),hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString(),hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString(),hashmap.get(0).get("PSC")==null?"":hashmap.get(0).get("PSC").toString(),judgeresult,"","","",cj_result,material_no,username,hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString(),hashmap.get(0).get("HT_NO")==null?"":hashmap.get(0).get("HT_NO").toString(),utm_id,hashmap.get(0).get("DESIGN_KEY")==null?"":hashmap.get(0).get("DESIGN_KEY").toString(),steelname);
  4949. }
  4950. }else{
  4951. for(HashMap list:list2){
  4952. if(!list.get("JUDGERESULT").toString().equals("0")){
  4953. throw new Exception("该检验号下已有物料号做了综合判定,不能再次判定!");
  4954. }
  4955. if(list.get("CIC_IS_LOCK").toString().equals("1")){
  4956. throw new Exception("成分已锁定,不能进行综合判定!");
  4957. }
  4958. if(list.get("PIC_IS_LOCK").toString().equals("1")){
  4959. throw new Exception("材质已锁定,不能进行综合判定!");
  4960. }
  4961. if(list.get("SIC_IS_LOCK").toString().equals("1")){
  4962. throw new Exception("公差已锁定,不能进行综合判定!");
  4963. }
  4964. if(list.get("R_CIC_IS_LOCK").toString().equals("1")){
  4965. throw new Exception("成分已锁定,不能进行综合判定!");
  4966. }
  4967. if(list.get("DIC_IS_LOCK").toString().equals("1")){
  4968. throw new Exception("探伤已锁定,不能进行综合判定!");
  4969. }
  4970. if(hashmap.get(0).get("DESIGN_KEY") == null){
  4971. throw new Exception("该物料没有订单,不能进行综合判定!");
  4972. }
  4973. if(list.get("SFU_IS_LOCK").toString().equals("1") || list.get("SFD_IS_LOCK").toString().equals("1") || list.get("SFE_IS_LOCK").toString().equals("1")){
  4974. throw new Exception("表面已锁定,不能进行综合判定!");
  4975. }
  4976. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"C")){
  4977. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_cic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  4978. if(list.get("CHEMRESULT").toString().equals("0") && count > 0){
  4979. throw new Exception("该物料未做成品成分判定,不能进行综合判定!");
  4980. }
  4981. }
  4982. if(list.get("R_CHEMRESULT").toString().equals("0")){
  4983. throw new Exception("该物料未做熔炼成分判定,不能进行综合判定!");
  4984. }
  4985. /*if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"A")){
  4986. if(list.get("R_CHEMRESULT").toString().equals("0")){
  4987. throw new Exception("该物料未做熔炼成分判定,不能取进行综合判定!");
  4988. }
  4989. }*/
  4990. if(list.get("SURFACERESULT").toString().equals("0")){
  4991. throw new Exception("该物料未做表面检验,不能进行综合判定!");
  4992. }
  4993. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_pic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  4994. if(count > 0){
  4995. if(hashmap.get(0).get("PLINE_CODE").equals("LT1")){
  4996. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from QCM_ORD_DESIGN_SAMPLE_M where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"' AND PROCESS_CODE = 'LT1'").get(0).get("COUNT").toString());
  4997. }else if(hashmap.get(0).get("PLINE_CODE").equals("RZ1")){
  4998. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from QCM_ORD_DESIGN_SAMPLE_M where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"' AND PROCESS_CODE = 'RZ1'").get(0).get("COUNT").toString());
  4999. }
  5000. }
  5001. if(list.get("PHYSRESULT").toString().equals("0") && count > 0){
  5002. throw new Exception("该物料未做材质判定,不能进行综合判定!");
  5003. }
  5004. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_sic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  5005. if(list.get("SIZERESULT").toString().equals("0") && count > 0){
  5006. throw new Exception("该物料未做公差检验,不能进行综合判定!");
  5007. }
  5008. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_dic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  5009. if(list.get("SPYRESULT").toString().equals("0") && count > 0){
  5010. throw new Exception("该物料未做探伤检验,不能进行综合判定!");
  5011. }
  5012. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"C")){
  5013. flag += "1".equals(list.get("CHEMRESULT").toString()) ? 0 : 1;
  5014. }
  5015. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"A")){
  5016. flag += "1".equals(list.get("R_CHEMRESULT").toString()) ? 0 : 1;
  5017. }
  5018. flag += "1".equals(list.get("SURFACERESULT").equals("0")?"1":list.get("SURFACERESULT").toString()) ? 0 : 1;
  5019. flag += "1".equals(list.get("PHYSRESULT").equals("0")?"1":list.get("PHYSRESULT").toString()) ? 0 : 1;
  5020. flag += "1".equals(list.get("SIZERESULT").equals("0")?"1":list.get("SIZERESULT").toString()) ? 0 : 1;
  5021. flag += "1".equals(list.get("SPYRESULT").equals("0")?"1":list.get("SPYRESULT").toString()) ? 0 : 1;
  5022. QcmJudgeUltimate qju=new QcmJudgeUltimate();
  5023. //获取判定记录号当天的最大值
  5024. Date now = new Date();
  5025. String opr_time = new SimpleDateFormat("yyyyMMddHHmmss").format(now); //操作时间
  5026. SimpleDateFormat sdf=new SimpleDateFormat("yyMMdd");
  5027. String date=sdf.format(now);
  5028. count=0;
  5029. sql ="select * from qcm_judge_ultimate where UTM_ID like 'ZJ"+date+"%' order by UTM_ID desc";
  5030. List<QcmJudgeUltimate> listUl=mapper.QcmJudgeUltimate(sql);
  5031. if (listUl!=null&&listUl.size()>0) {
  5032. String s=listUl.get(0).getUtm_id();
  5033. count=Integer.parseInt(s.substring(s.length()-4,s.length()));
  5034. }
  5035. count++;
  5036. String utm_id="ZJ"+sdf.format(now)+String.format("%04d",count);
  5037. //更新库存表综合判定结果
  5038. QcmJudgeCoilResult zra = new QcmJudgeCoilResult();
  5039. zra.setCoil_no(material_no);
  5040. zra.setJudgeid(utm_id);
  5041. zra.setJudgeresult(flag == 0 ? "1" :"2");
  5042. zra.setJudgeresult_desc(flag == 0 ? "合格" : "不合格");
  5043. if(list.get("CHEMRESULT").toString().equals("3") || list.get("SURFACERESULT").toString().equals("3") || list.get("PHYSRESULT").toString().equals("3") ||list.get("SIZERESULT").toString().equals("3") ||list.get("SPYRESULT").toString().equals("3")){
  5044. zra.setJudgeresult("3");
  5045. zra.setJudgeresult_desc("次品");
  5046. }
  5047. if(list.get("CHEMRESULT").toString().equals("4") || list.get("SURFACERESULT").toString().equals("4") || list.get("PHYSRESULT").toString().equals("4") ||list.get("SIZERESULT").toString().equals("4") ||list.get("SPYRESULT").toString().equals("4")){
  5048. zra.setJudgeresult("4");
  5049. zra.setJudgeresult_desc("废品");
  5050. }
  5051. judge_result = zra.getJudgeresult();
  5052. /*if(zra.getJudgeresult().equals("2")){
  5053. throw new Exception("综合判定不合格!");
  5054. }*/
  5055. mapper.UpdateJugeResultJ(zra);
  5056. //插入综合判定记录表
  5057. qju.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  5058. qju.setHeat_no(hashmap.get(0).get("HEAT_NO")==null?"":hashmap.get(0).get("HEAT_NO").toString());
  5059. qju.setBatch_no(hashmap.get(0).get("BATCHNO")==null?"":hashmap.get(0).get("BATCHNO").toString());
  5060. qju.setBoard_no(hashmap.get(0).get("BOARD_NO")==null?"":hashmap.get(0).get("BOARD_NO").toString());
  5061. qju.setInspection_lot(hashmap.get(0).get("INSPECTION_LOT") == null ?"":hashmap.get(0).get("INSPECTION_LOT").toString());
  5062. qju.setMaterial_no(material_no);
  5063. qju.setUtm_id(utm_id);
  5064. qju.setUtm_memo("");
  5065. qju.setUtm_result_code(zra.getJudgeresult());
  5066. qju.setUtm_result_desc(zra.getJudgeresult_desc());
  5067. qju.setCic_id(list2.get(0).get("CHEMID") == null?"":list2.get(0).get("CHEMID").toString());
  5068. qju.setCic_result_code(list2.get(0).get("CHEMRESULT")==null?"":list2.get(0).get("CHEMRESULT").toString());
  5069. qju.setCic_result_desc(list2.get(0).get("CHEMRESULT_DESC")==null?"":list2.get(0).get("CHEMRESULT_DESC").toString());
  5070. qju.setR_cic_id(list2.get(0).get("R_CHEMID") == null?"":list2.get(0).get("R_CHEMID").toString());
  5071. qju.setR_cic_result_code(list2.get(0).get("R_CHEMRESULT")==null?"":list2.get(0).get("R_CHEMRESULT").toString());
  5072. qju.setR_cic_result_desc(list2.get(0).get("R_CHEMRESULT_DESC")==null?"":list2.get(0).get("R_CHEMRESULT_DESC").toString());
  5073. qju.setPic_id(list2.get(0).get("PHYSID") == null?"":list2.get(0).get("PHYSID").toString());
  5074. qju.setPic_result_code(list2.get(0).get("PHYSRESULT")==null?"":list2.get(0).get("PHYSRESULT").toString());
  5075. qju.setPic_result_desc(list2.get(0).get("PHYSRESULT_DESC")==null?"":list2.get(0).get("PHYSRESULT_DESC").toString());
  5076. qju.setSic_id(list2.get(0).get("SIZEID") == null?"":list2.get(0).get("SIZEID").toString());
  5077. qju.setSic_result_code(list2.get(0).get("SIZERESULT")==null?"":list2.get(0).get("SIZERESULT").toString());
  5078. qju.setSic_result_desc(list2.get(0).get("SIZERESULT_DESC")==null?"":list2.get(0).get("SIZERESULT_DESC").toString());
  5079. qju.setDic_id(list2.get(0).get("SPYID")==null?"":list2.get(0).get("SPYID").toString());
  5080. qju.setDic_result_code(list2.get(0).get("SPYRESULT")==null?"":list2.get(0).get("SPYRESULT").toString());
  5081. qju.setDic_result_desc(list2.get(0).get("SPYRESULT_DESC")==null?"":list2.get(0).get("SPYRESULT_DESC").toString());
  5082. qju.setSfd_id(list2.get(0).get("SURFACEID")==null?"":list2.get(0).get("SURFACEID").toString());
  5083. qju.setSfd_result_code(list2.get(0).get("UD_SURFACE_RESULT")==null?"":list2.get(0).get("UD_SURFACE_RESULT").toString());
  5084. qju.setSfd_result_desc(list2.get(0).get("UD_SURFACE_RESULT_DESC")==null?"":list2.get(0).get("UD_SURFACE_RESULT_DESC").toString());
  5085. qju.setSfu_id(list2.get(0).get("SURFACEID")==null?"":list2.get(0).get("SURFACEID").toString());
  5086. qju.setSfu_result_code(list2.get(0).get("UP_SURFACE_RESULT")==null?"":list2.get(0).get("UP_SURFACE_RESULT").toString());
  5087. qju.setSfu_result_desc(list2.get(0).get("UP_SURFACE_RESULT_DESC")==null?"":list2.get(0).get("UP_SURFACE_RESULT_DESC").toString());
  5088. qju.setSfe_id(list2.get(0).get("SURFACEID")==null?"":list2.get(0).get("SURFACEID").toString());
  5089. qju.setSfe_result_code(list2.get(0).get("MARGINAL_RESULT")==null?"":list2.get(0).get("MARGINAL_RESULT").toString());
  5090. qju.setSfe_result_desc(list2.get(0).get("MARGINAL_RESULT_DESC")==null?"":list2.get(0).get("MARGINAL_RESULT_DESC").toString());
  5091. qju.setMst_id(list2.get(0).get("SURFACEID")==null?"":list2.get(0).get("SURFACEID").toString());
  5092. qju.setMst_result_code(list2.get(0).get("SURFACERESULT")==null?"":list2.get(0).get("SURFACERESULT").toString());
  5093. qju.setMst_result_desc(list2.get(0).get("SURFACERESULT_DESC")==null?"":list2.get(0).get("SURFACERESULT_DESC").toString());
  5094. qju.setFst_id(list2.get(0).get("PHYFSTSID")==null?"":list2.get(0).get("PHYFSTSID").toString());
  5095. qju.setFst_result_code(list2.get(0).get("PHYFSTSRESULT")==null?"":list2.get(0).get("PHYFSTSRESULT").toString());
  5096. qju.setFst_result_desc(list2.get(0).get("PHYFSTSRESULT_DESC")==null?"":list2.get(0).get("PHYFSTSRESULT_DESC").toString());
  5097. qju.setPsc(hashmap.get(0).get("PSC")==null?"":hashmap.get(0).get("PSC").toString());
  5098. qju.setPsc_desc(hashmap.get(0).get("PSC_DESC")==null?"":hashmap.get(0).get("PSC_DESC").toString());
  5099. qju.setProd_code(hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString());
  5100. qju.setProd_name(hashmap.get(0).get("PROD_NAME")==null?"":hashmap.get(0).get("PROD_NAME").toString());
  5101. qju.setSteel_code(hashmap.get(0).get("STEEL_CODE")==null?"":hashmap.get(0).get("STEEL_CODE").toString());
  5102. qju.setSteel_name(hashmap.get(0).get("STEEL_NAME").toString());
  5103. qju.setStd_code(hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString());
  5104. qju.setStd_name(hashmap.get(0).get("STD_NAME")==null?"":hashmap.get(0).get("STD_NAME").toString());
  5105. qju.setJudge_name(username);
  5106. qju.setJudge_time(new Date());
  5107. qju.setPline_code(hashmap.get(0).get("PLINE_CODE")==null?"":hashmap.get(0).get("PLINE_CODE").toString());
  5108. qju.setPline_name(hashmap.get(0).get("PLINE_NAME")==null?"":hashmap.get(0).get("PLINE_NAME").toString());
  5109. mapper.insertQcmJudgeUltimate(qju);
  5110. if(zra.getJudgeresult().equals("1")){
  5111. //发送熔炼成分实绩
  5112. List<QcmJhyInspElements> chemresult1 = mapper.queryQcmJhyInspElements("select * from qcm_jhy_insp_elements t where t.assay_type = 'L' and t.heat_no = '"+hashmap.get(0).get("HEAT_NO").toString()+"'");
  5113. if(chemresult1.size() > 0){
  5114. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  5115. qjus.setMaterial_no(material_no);
  5116. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  5117. qjus.setResult_type("C");
  5118. qjus.setJudge_id(list.get("R_CHEMID") == null?"":list.get("R_CHEMID").toString());
  5119. qjus.setCreate_name("system");
  5120. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  5121. }
  5122. String inspection_lot = hashmap.get(0).get("INSPECTION_LOT") == null?"":hashmap.get(0).get("INSPECTION_LOT").toString();
  5123. //发送成品成分实绩
  5124. List<QcmJhyInspElements> chemresult2 = mapper.queryQcmJhyInspElements("select * from qcm_jhy_insp_elements t where t.assay_type = 'P' and t.INSPECTION_LOT = '"+inspection_lot+"'");
  5125. if(chemresult2.size() > 0){
  5126. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  5127. qjus.setMaterial_no(material_no);
  5128. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  5129. qjus.setResult_type("C");
  5130. qjus.setJudge_id(list.get("CHEMID") == null?"":list.get("CHEMID").toString());
  5131. qjus.setCreate_name("system");
  5132. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  5133. }
  5134. //发送材质实绩
  5135. List<QcmJhyPhyresult> phyresult1 = mapper.queryQcmJhyPhyresult("select * from qcm_jhy_insp_physics t where t.SPECIMEN_NO in (select SPECIMEN_NO from QCM_JHY_SAMPLE_CONSIGN_D where INSPECTION_LOT = '"+inspection_lot+"')");
  5136. if(phyresult1.size() > 0){
  5137. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  5138. qjus.setMaterial_no(material_no);
  5139. qjus.setDesign_key(hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString());
  5140. qjus.setResult_type("P");
  5141. qjus.setJudge_id(list.get("PHYSID") == null?"":list.get("PHYSID").toString());
  5142. qjus.setCreate_name("system");
  5143. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  5144. }
  5145. }
  5146. }
  5147. }
  5148. //判断产线是不是卷板,是的话调用存储过程COILJUDGE_STATUS
  5149. if(list2.size() > 0) {
  5150. hashmap = doQueryMaterialInfoJ(material_no);
  5151. if (hashmap.size() > 0) {
  5152. coiljudge_status_call(hashmap.get(0).get("PLINE_CODE").toString(), material_no, null, null, null, null, judge_result, null, null,"");
  5153. }
  5154. }
  5155. }else{
  5156. throw new Exception("未找到该检验号下的库存信息!");
  5157. }
  5158. QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
  5159. qjog.setOperate_name(username);
  5160. qjog.setOperate_type("强制综合判定");
  5161. qjog.setParams(material_no);
  5162. qjog.setBatchno(hashmap.get(0).get("BATCHNO")==null?"":hashmap.get(0).get("BATCHNO").toString());
  5163. qjog.setProd_line(hashmap.get(0).get("PLINE_CODE")==null?"":hashmap.get(0).get("PLINE_CODE").toString());
  5164. qjog.setJudge_result(judge_result);
  5165. qjog.setMemo(remark);
  5166. mapper.insertQcmJudgeOperateLog(qjog);
  5167. //cro = creatUltimateResultByHand(material_no,username);//手动进行综合判定
  5168. SqlSession.commit();
  5169. }catch(Exception ex){
  5170. cro.setV_errCode(-1);
  5171. cro.setV_errMsg(ex.getMessage());
  5172. SqlSession.rollback();
  5173. logger.info(new Date().toString() + " QCM.QCM03.QCM0302.QcmJudgePhysicalServiceImpl.ultimateJudgeAuto:【" + material_no + "," + username + "】" + ex);
  5174. }finally {
  5175. SqlSession.close();
  5176. }
  5177. //SqlSession.close();
  5178. return cro;
  5179. }
  5180. /***
  5181. * 非计划综合判定:
  5182. * 0625增加finally
  5183. * @param sum
  5184. * @return
  5185. */
  5186. @SuppressWarnings({ "rawtypes", "unused" })
  5187. public CoreReturnObject ultimateJudgeAutoF1(String material_no, String username) throws Exception{
  5188. try{
  5189. int count = 0;
  5190. String judge = "";
  5191. String judgereason = "";
  5192. String productname = "";
  5193. String memo = "";
  5194. int a = 0;
  5195. List<HashMap> hashmap = doQueryMaterialInfoZhb2(material_no);
  5196. if(hashmap.size() ==0){
  5197. throw new Exception("找不到库存信息!");
  5198. }
  5199. if(hashmap.get(0).get("DESIGN_KEY")==null){
  5200. throw new Exception("订单号为空,不能判定!");
  5201. }
  5202. if(!hashmap.get(0).get("DESIGN_KEY").toString().startsWith("19")){
  5203. throw new Exception("不是非计划订单,不能判定!");
  5204. }
  5205. if(!(hashmap.get(0).get("STEEL_NAME").toString().equals("Q235A") || hashmap.get(0).get("STEEL_NAME").toString().equals("Q235B")|| hashmap.get(0).get("STEEL_NAME").toString().equals("Q345A")|| hashmap.get(0).get("STEEL_NAME").toString().equals("Q345B")|| hashmap.get(0).get("STEEL_NAME").toString().equals("Q355B"))){
  5206. throw new Exception("不是非计划普锰,不能判定!");
  5207. }
  5208. String sql = "select * from zj_result_all@xgcx where BILLETID = '"+material_no+"'";
  5209. int flag = 0;
  5210. String judge_result = "";
  5211. List<HashMap> list1 = mapper.query(sql);
  5212. if(list1.size()>0){
  5213. for(HashMap list:list1){
  5214. //卡控
  5215. String pic_id = list.get("PHYSID")==null?"":list.get("PHYSID").toString();
  5216. List<String> listphy = new ArrayList<String>();
  5217. List<String> listphy1 = new ArrayList<String>();
  5218. List<String> listphy2 = new ArrayList<String>();
  5219. List<QcmJudgePhysicalResult> qjpr1 = new ArrayList<QcmJudgePhysicalResult>();
  5220. sql = "select * from qcm_judge_physical_result where phy_id in (select phy_id "
  5221. + " from Qcm_Judge_Physical_Utm_d "
  5222. + " where pic_id = '"+pic_id+"')";
  5223. qjpr1 = mapper.queryQcmJudgePhysicalResult(sql);
  5224. String m="";
  5225. for(QcmJudgePhysicalResult y:qjpr1)
  5226. {
  5227. String s = (y.getPhy_code_l()==null?"":y.getPhy_code_l()) + (y.getPhy_code_m()==null?"":y.getPhy_code_m()) + (y.getPhy_code_s()==null?"":y.getPhy_code_s()) + (y.getItem_code_d()==null?"":y.getItem_code_d())
  5228. + (y.getItem_code_t()==null?"":y.getItem_code_t());
  5229. listphy.add(s);
  5230. }
  5231. List<QcmOrdDesignStdPic> qrdsp = new ArrayList<QcmOrdDesignStdPic>();
  5232. for(QcmOrdDesignStdPic x:qrdsp){
  5233. String z = (x.getPhy_code_l()==null?"":x.getPhy_code_l()) + (x.getPhy_code_m()==null?"":x.getPhy_code_m()) + (x.getPhy_code_s()==null?"":x.getPhy_code_s()) + (x.getItem_code_d()==null?"":x.getItem_code_d())
  5234. + (x.getItem_code_t()==null?"":x.getItem_code_t());
  5235. String y = (x.getPhy_name_l()==null?"":x.getPhy_name_l()) + (x.getPhy_name_l()==null?"":x.getPhy_name_l()) + (x.getPhy_name_s()==null?"":x.getPhy_name_s()) + (x.getItem_name_d()==null?"":x.getItem_name_d())
  5236. + (x.getItem_name_s()==null?"":x.getItem_name_s()) + (x.getItem_name_t()==null?"":x.getItem_name_t());
  5237. if(!listphy.contains(z) && (material_no.startsWith("Z") || material_no.startsWith("H"))){
  5238. throw new Exception("该材质判定未满足订单标准,不能判定,缺失"+y+" 检验项目!");
  5239. }
  5240. listphy2.add(z);
  5241. }
  5242. for(QcmJudgePhysicalResult y:qjpr1)
  5243. {
  5244. String s = (y.getPhy_code_l()==null?"":y.getPhy_code_l()) + (y.getPhy_code_m()==null?"":y.getPhy_code_m()) + (y.getPhy_code_s()==null?"":y.getPhy_code_s()) + (y.getItem_code_d()==null?"":y.getItem_code_d())
  5245. + (y.getItem_code_t()==null?"":y.getItem_code_t());
  5246. m = (y.getPhy_name_l()==null?"":y.getPhy_name_l()) + (y.getPhy_name_m()==null?"":y.getPhy_name_m()) + (y.getPhy_name_s()==null?"":y.getPhy_name_s()) + (y.getItem_name_d()==null?"":y.getItem_name_d())
  5247. + (y.getItem_name_s()==null?"":y.getItem_name_s()) + (y.getItem_name_t()==null?"":y.getItem_name_t());
  5248. if(!listphy2.contains(s) && (material_no.startsWith("Z") || material_no.startsWith("H")) && listphy2.size() >0 ){
  5249. throw new Exception("该材质判定未满足订单标准,不能判定,比标准多出"+m+" 检验项目!");
  5250. }
  5251. }
  5252. List<QcmJudgePhysicalUtmD> qjpu = new ArrayList<QcmJudgePhysicalUtmD>();
  5253. String sql1 = "select * "
  5254. + " from Qcm_Judge_Physical_Utm_d "
  5255. + " where pic_id = '"+pic_id+"'";
  5256. qjpu = mapper.queryQcmJudgePhysicalUtmD(sql1);
  5257. for(QcmJudgePhysicalUtmD t : qjpu){
  5258. String s = t.getCert_inst_code()+t.getSteel_name();
  5259. listphy1.add(s);
  5260. }
  5261. sql = "select * from qcm_ord_design_std_pic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'";
  5262. qrdsp = mapper.queryQCMOrdDesignStdPic(sql);
  5263. for(QcmOrdDesignStdPic x:qrdsp){
  5264. String z = x.getOrg_code()+x.getSteel_name();
  5265. String y = x.getOrg_name()+x.getSteel_name();
  5266. if(!listphy1.contains(z)){
  5267. throw new Exception("该材质判定未满足订单标准,不能判定,缺失"+y+" 标准!");
  5268. }
  5269. }
  5270. if(!list.get("JUDGERESULT").toString().equals("0")){
  5271. throw new Exception("该物料做了综合判定,不能再次判定!");
  5272. }
  5273. count = Integer.parseInt((String) mapper.query(sql = "select count(1) count from qcm_judge_locking a where a.material_no = '"+material_no+"' AND A.UNLOCK_TYPE_CODE IS NULL and design_key like '19%'").get(0).get("COUNT").toString());
  5274. if(count >0){
  5275. throw new Exception("物料已锁定,不能进行综合判定!");
  5276. }
  5277. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_pic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  5278. if(list.get("PHYSRESULT").toString().equals("0") && count > 0){
  5279. throw new Exception("该物料未做材质判定,不能进行综合判定!");
  5280. }
  5281. if(CheckType(hashmap.get(0).get("DESIGN_KEY").toString(),"C")){
  5282. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_cic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  5283. if(list.get("CHEMRESULT").toString().equals("0") && count >0){
  5284. throw new Exception("该物料未做成品成分判定,不能进行综合判定!");
  5285. }
  5286. }
  5287. if(list.get("R_CHEMRESULT").toString().equals("0")){
  5288. throw new Exception("该物料未做熔炼成分判定,不能进行综合判定!");
  5289. }
  5290. if(list.get("SIZERESULT").toString().equals("0")){
  5291. throw new Exception("该物料未做公差检验,不能进行综合判定!");
  5292. }
  5293. count = Integer.parseInt((String) mapper.query("select COUNT(*) count from qcm_ord_design_std_dic where design_key = '"+hashmap.get(0).get("DESIGN_KEY").toString()+"'").get(0).get("COUNT").toString());
  5294. if(list.get("SPYRESULT").toString().equals("0") && count > 0){
  5295. throw new Exception("该物料未做探伤检验,不能进行综合判定!");
  5296. }
  5297. //公差
  5298. if(list.get("SIZEID") !=null){
  5299. sql = "select * from qcm_judge_measure a where a.sic_id = '"+list.get("SIZEID").toString()+"' ";
  5300. List<HashMap> listM= mapper.query(sql);
  5301. if(listM.get(0).get("SIC_RESULT_CODE").equals("0") && !listM.get(0).get("LEVEL_DESC").toString().contains("待处理")){
  5302. throw new Exception("检验结果与质量等级不匹配!");
  5303. }else if(listM.get(0).get("SIC_RESULT_CODE").equals("1") && !listM.get(0).get("LEVEL_DESC").toString().contains("正品")){
  5304. throw new Exception("检验结果与质量等级不匹配!");
  5305. }else if(listM.get(0).get("SIC_RESULT_CODE").equals("2") && (listM.get(0).get("LEVEL_DESC").toString().contains("正品") || listM.get(0).get("LEVEL_DESC").toString().contains("待处理"))){
  5306. throw new Exception("检验结果与质量等级不匹配!");
  5307. }
  5308. }
  5309. //表面
  5310. int z = 0;
  5311. if(list.get("UP_SURFACE_RESULT_ID_DESC") != null || list.get("UD_SURFACE_RESULT_ID_DESC") != null){
  5312. if(list.get("UP_SURFACE_RESULT_ID_DESC") != null){
  5313. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UP_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5314. List<HashMap> listM= mapper.query(sql);
  5315. if(listM.get(0).get("LEVEL_DESC").toString().contains("废品") || listM.get(0).get("LEVEL_DESC").toString().contains("次品")){
  5316. z=1;
  5317. }
  5318. }
  5319. if(z==0){
  5320. if(list.get("UD_SURFACE_RESULT_ID_DESC") != null){
  5321. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UD_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5322. List<HashMap> listM= mapper.query(sql);
  5323. if(listM.get(0).get("LEVEL_DESC").toString().contains("废品") || listM.get(0).get("LEVEL_DESC").toString().contains("次品")){
  5324. z=1;
  5325. }
  5326. }
  5327. }
  5328. }
  5329. //表面质量等级判次判废直接判次判废
  5330. if(z==0){
  5331. if(list.get("UP_SURFACE_RESULT").toString().equals("0") && list.get("UP_SURFACE_RESULT_ID_DESC") == null){
  5332. throw new Exception("上表面检验结果未录入!");
  5333. }
  5334. if(list.get("UD_SURFACE_RESULT").toString().equals("0") && list.get("UD_SURFACE_RESULT_ID_DESC") == null){
  5335. throw new Exception("下表面检验结果未录入!");
  5336. }
  5337. if(list.get("UP_SURFACE_RESULT_ID_DESC") !=null){
  5338. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UP_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5339. List<HashMap> listM= mapper.query(sql);
  5340. if(listM.get(0).get("SF_RESULT_CODE").equals("0") && !listM.get(0).get("LEVEL_DESC").toString().contains("待处理")){
  5341. throw new Exception("检验结果与质量等级不匹配!");
  5342. }else if(listM.get(0).get("SF_RESULT_CODE").equals("1") && !listM.get(0).get("LEVEL_DESC").toString().contains("正品")){
  5343. throw new Exception("检验结果与质量等级不匹配!");
  5344. }else if(listM.get(0).get("SF_RESULT_CODE").equals("2") && (listM.get(0).get("LEVEL_DESC").toString().contains("正品") || listM.get(0).get("LEVEL_DESC").toString().contains("待处理"))){
  5345. throw new Exception("检验结果与质量等级不匹配!");
  5346. }
  5347. }
  5348. if(list.get("UD_SURFACE_RESULT_ID_DESC") !=null){
  5349. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UD_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5350. List<HashMap> listM= mapper.query(sql);
  5351. if(listM.get(0).get("SF_RESULT_CODE").equals("0") && !listM.get(0).get("LEVEL_DESC").toString().contains("待处理")){
  5352. throw new Exception("检验结果与质量等级不匹配!");
  5353. }else if(listM.get(0).get("SF_RESULT_CODE").equals("1") && !listM.get(0).get("LEVEL_DESC").toString().contains("正品")){
  5354. throw new Exception("检验结果与质量等级不匹配!");
  5355. }else if(listM.get(0).get("SF_RESULT_CODE").equals("2") && (listM.get(0).get("LEVEL_DESC").toString().contains("正品") || listM.get(0).get("LEVEL_DESC").toString().contains("待处理"))){
  5356. throw new Exception("检验结果与质量等级不匹配!");
  5357. }
  5358. }
  5359. //判定结果与产品形态
  5360. //成分
  5361. if(list.get("R_CHEMRESULT").toString().equals("1")){
  5362. //探伤
  5363. if(list.get("SPYRESULT").toString().equals("1") || list.get("SPYRESULT").toString().equals("0")){
  5364. //性能
  5365. if(list.get("PHYSRESULT").toString().equals("1")){
  5366. //公差
  5367. if(list.get("SIZERESULT").toString().equals("1")){
  5368. //表面
  5369. if(list.get("SURFACERESULT").toString().equals("1")){
  5370. judge = "40140201";
  5371. productname = "491601";
  5372. }else if(list.get("UP_SURFACE_RESULT").toString().equals("2") || list.get("UD_SURFACE_RESULT").toString().equals("2")){
  5373. if(list.get("UP_SURFACE_RESULT").toString().equals("2")){
  5374. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UP_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5375. List<HashMap> listM= mapper.query(sql);
  5376. if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5377. judge = "40140201";
  5378. productname = "491603";
  5379. }else if(listM.get(0).get("LEVEL_DESC").toString().contains("订单外")){
  5380. judge = "40140201";
  5381. productname = "491601";
  5382. }
  5383. if(list.get("UD_SURFACE_RESULT").toString().equals("2")){
  5384. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UD_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5385. listM= mapper.query(sql);
  5386. if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5387. judge = "40140201";
  5388. productname = "491603";
  5389. }else if(listM.get(0).get("LEVEL_DESC").toString().contains("订单外")){
  5390. if(!productname.equals("491603")){
  5391. judge = "40140201";
  5392. productname = "491601";
  5393. }
  5394. }
  5395. }else if(list.get("UD_SURFACE_RESULT").toString().equals("0")){
  5396. if(productname.equals("491601")){
  5397. judge = "40140201";
  5398. productname = "491603";
  5399. }
  5400. }
  5401. }else{
  5402. if(list.get("UD_SURFACE_RESULT").toString().equals("2")){
  5403. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UD_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5404. List<HashMap> listM= mapper.query(sql);
  5405. if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5406. judge = "40140201";
  5407. productname = "491603";
  5408. }else if(listM.get(0).get("LEVEL_DESC").toString().contains("订单外")){
  5409. judge = "40140201";
  5410. productname = "491601";
  5411. }
  5412. if(list.get("UP_SURFACE_RESULT").toString().equals("0")){
  5413. if(productname.equals("491601")){
  5414. judge = "40140201";
  5415. productname = "491603";
  5416. }
  5417. }
  5418. }
  5419. }
  5420. }else if(list.get("UP_SURFACE_RESULT").toString().equals("0") || list.get("UD_SURFACE_RESULT").toString().equals("0")){
  5421. judge = "40140201";
  5422. productname = "491603";
  5423. }
  5424. }else if(list.get("SIZERESULT").toString().equals("2")){
  5425. sql = "select * from qcm_judge_measure a where a.sic_id = '"+list.get("SIZEID").toString()+"' ";
  5426. List<HashMap> listM= mapper.query(sql);
  5427. if(listM.get(0).get("LEVEL_DESC").toString().contains("废品")){
  5428. judge = "40140303";
  5429. productname = "491610";
  5430. }else if(listM.get(0).get("LEVEL_DESC").toString().contains("次品")){
  5431. judge = "40140301";
  5432. productname = "491609";
  5433. }else if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5434. judge = "40140201";
  5435. productname = "491608";
  5436. }else if(listM.get(0).get("LEVEL_DESC").toString().contains("订单外")){
  5437. judge = "40140201";
  5438. productname = "491601";
  5439. }
  5440. if(list.get("UP_SURFACE_RESULT").toString().equals("2") || list.get("UD_SURFACE_RESULT").toString().equals("2")){
  5441. if(list.get("UP_SURFACE_RESULT").toString().equals("2")){
  5442. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UP_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5443. listM= mapper.query(sql);
  5444. if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5445. if(!judge.equals("40140303") && !judge.equals("40140301")){
  5446. if(productname.equals("491601")){
  5447. judge = "40140201";
  5448. productname = "491603";
  5449. }else{
  5450. judge = "40140201";
  5451. productname = "491611";
  5452. }
  5453. }
  5454. }
  5455. if(list.get("UD_SURFACE_RESULT").toString().equals("2")){
  5456. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UD_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5457. listM= mapper.query(sql);
  5458. if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5459. if(!judge.equals("40140303") && !judge.equals("40140301")){
  5460. if(productname.equals("491608") || productname.equals("491611")){
  5461. judge = "40140201";
  5462. productname = "491611";
  5463. }else{
  5464. judge = "40140201";
  5465. productname = "491603";
  5466. }
  5467. }
  5468. }
  5469. }else if(list.get("UD_SURFACE_RESULT").toString().equals("0")){
  5470. if(!judge.equals("40140303") && !judge.equals("40140301")){
  5471. if(productname.equals("491608") || productname.equals("491611")){
  5472. judge = "40140201";
  5473. productname = "491611";
  5474. }else{
  5475. judge = "40140201";
  5476. productname = "491603";
  5477. }
  5478. }
  5479. }
  5480. }else{
  5481. if(list.get("UD_SURFACE_RESULT").toString().equals("2")){
  5482. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UD_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5483. listM= mapper.query(sql);
  5484. if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5485. if(!judge.equals("40140303") && !judge.equals("40140301")){
  5486. if(productname.equals("491601")){
  5487. judge = "40140201";
  5488. productname = "491603";
  5489. }else{
  5490. judge = "40140201";
  5491. productname = "491611";
  5492. }
  5493. }
  5494. }
  5495. if(list.get("UP_SURFACE_RESULT").toString().equals("0")){
  5496. if(!judge.equals("40140303") && !judge.equals("40140301")){
  5497. if(productname.equals("491608") || productname.equals("491611")){
  5498. judge = "40140201";
  5499. productname = "491611";
  5500. }else{
  5501. judge = "40140201";
  5502. productname = "491603";
  5503. }
  5504. }
  5505. }
  5506. }
  5507. }
  5508. }else if(list.get("UP_SURFACE_RESULT").toString().equals("0") || list.get("UD_SURFACE_RESULT").toString().equals("0")){
  5509. if(!judge.equals("40140303") && !judge.equals("40140301")){
  5510. if(productname.equals("491608") || productname.equals("491611")){
  5511. judge = "40140201";
  5512. productname = "491611";
  5513. }else{
  5514. judge = "40140201";
  5515. productname = "491603";
  5516. }
  5517. }
  5518. }
  5519. }
  5520. }else if(list.get("PHYSRESULT").toString().equals("2")){
  5521. judge = "40140201";
  5522. productname = "491612";
  5523. //公差
  5524. if(list.get("SIZERESULT").toString().equals("1")){
  5525. //表面
  5526. if(list.get("UP_SURFACE_RESULT").toString().equals("2") || list.get("UD_SURFACE_RESULT").toString().equals("2")){
  5527. if(list.get("UP_SURFACE_RESULT").toString().equals("2")){
  5528. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UP_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5529. List<HashMap> listM= mapper.query(sql);
  5530. if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5531. judge = "40140201";
  5532. productname = "491611";
  5533. }
  5534. if(list.get("UD_SURFACE_RESULT").toString().equals("2")){
  5535. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UD_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5536. listM= mapper.query(sql);
  5537. if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5538. if(!judge.equals("40140303") && !judge.equals("40140301")){
  5539. judge = "40140201";
  5540. productname = "491611";
  5541. }
  5542. }
  5543. }else if(list.get("UD_SURFACE_RESULT").toString().equals("0")){
  5544. judge = "40140201";
  5545. productname = "491611";
  5546. }
  5547. }else{
  5548. if(list.get("UD_SURFACE_RESULT").toString().equals("2")){
  5549. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UD_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5550. List<HashMap> listM= mapper.query(sql);
  5551. if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5552. judge = "40140201";
  5553. productname = "491611";
  5554. }
  5555. if(list.get("UP_SURFACE_RESULT").toString().equals("0")){
  5556. judge = "40140201";
  5557. productname = "491611";
  5558. }
  5559. }
  5560. }
  5561. }else if(list.get("UP_SURFACE_RESULT").toString().equals("0") || list.get("UD_SURFACE_RESULT").toString().equals("0")){
  5562. judge = "40140201";
  5563. productname = "491611";
  5564. }
  5565. }
  5566. else if(list.get("SIZERESULT").toString().equals("2")){
  5567. sql = "select * from qcm_judge_measure a where a.sic_id = '"+list.get("SIZEID").toString()+"' ";
  5568. List<HashMap> listM= mapper.query(sql);
  5569. if(listM.get(0).get("LEVEL_DESC").toString().contains("废品")){
  5570. judge = "40140303";
  5571. productname = "491610";
  5572. }else if(listM.get(0).get("LEVEL_DESC").toString().contains("次品")){
  5573. judge = "40140301";
  5574. productname = "491609";
  5575. }else if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5576. judge = "40140201";
  5577. productname = "491611";
  5578. }
  5579. }
  5580. }
  5581. }//探伤
  5582. else if(list.get("SPYRESULT").toString().equals("2")){
  5583. judge = "40140201";
  5584. productname = "491612";
  5585. a++;
  5586. //性能
  5587. if(list.get("PHYSRESULT").toString().equals("1")){
  5588. //公差
  5589. if(list.get("SIZERESULT").toString().equals("1")){
  5590. //表面
  5591. if(list.get("UP_SURFACE_RESULT").toString().equals("2") || list.get("UD_SURFACE_RESULT").toString().equals("2")){
  5592. if(list.get("UP_SURFACE_RESULT").toString().equals("2")){
  5593. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UP_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5594. List<HashMap> listM= mapper.query(sql);
  5595. if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5596. judge = "40140201";
  5597. productname = "491611";
  5598. }
  5599. if(list.get("UD_SURFACE_RESULT").toString().equals("2")){
  5600. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UD_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5601. listM= mapper.query(sql);
  5602. if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5603. if(!judge.equals("40140303") && !judge.equals("40140301")){
  5604. judge = "40140201";
  5605. productname = "491611";
  5606. }
  5607. }
  5608. }else if(list.get("UD_SURFACE_RESULT").toString().equals("0")){
  5609. judge = "40140201";
  5610. productname = "491611";
  5611. }
  5612. }else{
  5613. if(list.get("UD_SURFACE_RESULT").toString().equals("2")){
  5614. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UD_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5615. List<HashMap> listM= mapper.query(sql);
  5616. if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5617. judge = "40140201";
  5618. productname = "491611";
  5619. }
  5620. if(list.get("UP_SURFACE_RESULT").toString().equals("0")){
  5621. judge = "40140201";
  5622. productname = "491611";
  5623. }
  5624. }
  5625. }
  5626. }else if(list.get("UP_SURFACE_RESULT").toString().equals("0") || list.get("UD_SURFACE_RESULT").toString().equals("0")){
  5627. judge = "40140201";
  5628. productname = "491611";
  5629. }
  5630. }
  5631. else if(list.get("SIZERESULT").toString().equals("2")){
  5632. sql = "select * from qcm_judge_measure a where a.sic_id = '"+list.get("SIZEID").toString()+"' ";
  5633. List<HashMap> listM= mapper.query(sql);
  5634. if(listM.get(0).get("LEVEL_DESC").toString().contains("废品")){
  5635. judge = "40140303";
  5636. productname = "491610";
  5637. }else if(listM.get(0).get("LEVEL_DESC").toString().contains("次品")){
  5638. judge = "40140301";
  5639. productname = "491609";
  5640. }else if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5641. judge = "40140201";
  5642. productname = "491611";
  5643. }
  5644. }
  5645. }else if(list.get("PHYSRESULT").toString().equals("2")){
  5646. judge = "40140201";
  5647. productname = "491611";
  5648. a++;
  5649. //公差
  5650. if(list.get("SIZERESULT").toString().equals("1")){
  5651. //表面
  5652. if(list.get("UP_SURFACE_RESULT").toString().equals("2") || list.get("UD_SURFACE_RESULT").toString().equals("2")){
  5653. if(list.get("UP_SURFACE_RESULT").toString().equals("2")){
  5654. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UP_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5655. List<HashMap> listM= mapper.query(sql);
  5656. if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5657. judge = "40140201";
  5658. productname = "491611";
  5659. }
  5660. if(list.get("UD_SURFACE_RESULT").toString().equals("2")){
  5661. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UD_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5662. listM= mapper.query(sql);
  5663. if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5664. if(!judge.equals("40140303") && !judge.equals("40140301")){
  5665. judge = "40140201";
  5666. productname = "491611";
  5667. }
  5668. }
  5669. }else if(list.get("UD_SURFACE_RESULT").toString().equals("0")){
  5670. judge = "40140201";
  5671. productname = "491611";
  5672. }
  5673. }else{
  5674. if(list.get("UD_SURFACE_RESULT").toString().equals("2")){
  5675. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UD_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5676. List<HashMap> listM= mapper.query(sql);
  5677. if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5678. judge = "40140201";
  5679. productname = "491611";
  5680. }
  5681. if(list.get("UP_SURFACE_RESULT").toString().equals("0")){
  5682. judge = "40140201";
  5683. productname = "491611";
  5684. }
  5685. }
  5686. }
  5687. }else if(list.get("UP_SURFACE_RESULT").toString().equals("0") || list.get("UD_SURFACE_RESULT").toString().equals("0")){
  5688. judge = "40140201";
  5689. productname = "491611";
  5690. }
  5691. }
  5692. else if(list.get("SIZERESULT").toString().equals("2")){
  5693. sql = "select * from qcm_judge_measure a where a.sic_id = '"+list.get("SIZEID").toString()+"' ";
  5694. List<HashMap> listM= mapper.query(sql);
  5695. if(listM.get(0).get("LEVEL_DESC").toString().contains("废品")){
  5696. judge = "40140303";
  5697. productname = "491610";
  5698. }else if(listM.get(0).get("LEVEL_DESC").toString().contains("次品")){
  5699. judge = "40140301";
  5700. productname = "491609";
  5701. }else if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5702. judge = "40140201";
  5703. productname = "491611";
  5704. }
  5705. }
  5706. }else if(list.get("PHYSRESULT").toString().equals("2")){
  5707. judge = "40140201";
  5708. productname = "491612";
  5709. a++;
  5710. }
  5711. }
  5712. }else if(list.get("R_CHEMRESULT").toString().equals("2")){
  5713. judge = "40140201";
  5714. productname = "491607";
  5715. //探伤
  5716. if(list.get("SPYRESULT").toString().equals("0") || list.get("SPYRESULT").toString().equals("1")){
  5717. if(list.get("PHYSRESULT").toString().equals("1")){
  5718. //公差
  5719. if(list.get("SIZERESULT").toString().equals("1")){
  5720. //表面
  5721. if(list.get("UP_SURFACE_RESULT").toString().equals("2") || list.get("UD_SURFACE_RESULT").toString().equals("2")){
  5722. if(list.get("UP_SURFACE_RESULT").toString().equals("2")){
  5723. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UP_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5724. List<HashMap> listM= mapper.query(sql);
  5725. if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5726. judge = "40140201";
  5727. productname = "491611";
  5728. }
  5729. if(list.get("UD_SURFACE_RESULT").toString().equals("2")){
  5730. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UD_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5731. listM= mapper.query(sql);
  5732. if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5733. if(!judge.equals("40140303") && !judge.equals("40140301")){
  5734. judge = "40140201";
  5735. productname = "491611";
  5736. }
  5737. }
  5738. }else if(list.get("UD_SURFACE_RESULT").toString().equals("0")){
  5739. judge = "40140201";
  5740. productname = "491611";
  5741. }
  5742. }else{
  5743. if(list.get("UD_SURFACE_RESULT").toString().equals("2")){
  5744. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UD_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5745. List<HashMap> listM= mapper.query(sql);
  5746. if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5747. judge = "40140201";
  5748. productname = "491611";
  5749. }
  5750. if(list.get("UP_SURFACE_RESULT").toString().equals("0")){
  5751. judge = "40140201";
  5752. productname = "491611";
  5753. }
  5754. }
  5755. }
  5756. }else if(list.get("UP_SURFACE_RESULT").toString().equals("0") || list.get("UD_SURFACE_RESULT").toString().equals("0")){
  5757. judge = "40140201";
  5758. productname = "491611";
  5759. }
  5760. }
  5761. else if(list.get("SIZERESULT").toString().equals("2")){
  5762. sql = "select * from qcm_judge_measure a where a.sic_id = '"+list.get("SIZEID").toString()+"' ";
  5763. List<HashMap> listM= mapper.query(sql);
  5764. if(listM.get(0).get("LEVEL_DESC").toString().contains("废品")){
  5765. judge = "40140303";
  5766. productname = "491610";
  5767. }else if(listM.get(0).get("LEVEL_DESC").toString().contains("次品")){
  5768. judge = "40140301";
  5769. productname = "491609";
  5770. }else if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5771. judge = "40140201";
  5772. productname = "491611";
  5773. }
  5774. }
  5775. }else if(list.get("PHYSRESULT").toString().equals("2")){
  5776. //公差
  5777. if(list.get("SIZERESULT").toString().equals("1")){
  5778. //表面
  5779. if(list.get("UP_SURFACE_RESULT").toString().equals("2") || list.get("UD_SURFACE_RESULT").toString().equals("2")){
  5780. if(list.get("UP_SURFACE_RESULT").toString().equals("2")){
  5781. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UP_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5782. List<HashMap> listM= mapper.query(sql);
  5783. if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5784. judge = "40140201";
  5785. productname = "491611";
  5786. }
  5787. if(list.get("UD_SURFACE_RESULT").toString().equals("2")){
  5788. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UD_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5789. listM= mapper.query(sql);
  5790. if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5791. if(!judge.equals("40140303") && !judge.equals("40140301")){
  5792. judge = "40140201";
  5793. productname = "491611";
  5794. }
  5795. }
  5796. }else if(list.get("UD_SURFACE_RESULT").toString().equals("0")){
  5797. judge = "40140201";
  5798. productname = "491611";
  5799. }
  5800. }else{
  5801. if(list.get("UD_SURFACE_RESULT").toString().equals("2")){
  5802. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UD_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5803. List<HashMap> listM= mapper.query(sql);
  5804. if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5805. judge = "40140201";
  5806. productname = "491611";
  5807. }
  5808. if(list.get("UP_SURFACE_RESULT").toString().equals("0")){
  5809. judge = "40140201";
  5810. productname = "491611";
  5811. }
  5812. }
  5813. }
  5814. }else if(list.get("UP_SURFACE_RESULT").toString().equals("0") || list.get("UD_SURFACE_RESULT").toString().equals("0")){
  5815. judge = "40140201";
  5816. productname = "491611";
  5817. }
  5818. }
  5819. else if(list.get("SIZERESULT").toString().equals("2")){
  5820. sql = "select * from qcm_judge_measure a where a.sic_id = '"+list.get("SIZEID").toString()+"' ";
  5821. List<HashMap> listM= mapper.query(sql);
  5822. if(listM.get(0).get("LEVEL_DESC").toString().contains("废品")){
  5823. judge = "40140303";
  5824. productname = "491610";
  5825. }else if(listM.get(0).get("LEVEL_DESC").toString().contains("次品")){
  5826. judge = "40140301";
  5827. productname = "491609";
  5828. }else if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5829. judge = "40140201";
  5830. productname = "491611";
  5831. }
  5832. }
  5833. }
  5834. }else if(list.get("SPYRESULT").toString().equals("2")){
  5835. if(list.get("PHYSRESULT").toString().equals("1")){
  5836. //公差
  5837. if(list.get("SIZERESULT").toString().equals("1")){
  5838. //表面
  5839. if(list.get("UP_SURFACE_RESULT").toString().equals("2") || list.get("UD_SURFACE_RESULT").toString().equals("2")){
  5840. if(list.get("UP_SURFACE_RESULT").toString().equals("2")){
  5841. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UP_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5842. List<HashMap> listM= mapper.query(sql);
  5843. if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5844. judge = "40140201";
  5845. productname = "491611";
  5846. }
  5847. if(list.get("UD_SURFACE_RESULT").toString().equals("2")){
  5848. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UD_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5849. listM= mapper.query(sql);
  5850. if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5851. if(!judge.equals("40140303") && !judge.equals("40140301")){
  5852. judge = "40140201";
  5853. productname = "491611";
  5854. }
  5855. }
  5856. }else if(list.get("UD_SURFACE_RESULT").toString().equals("0")){
  5857. judge = "40140201";
  5858. productname = "491611";
  5859. }
  5860. }else{
  5861. if(list.get("UD_SURFACE_RESULT").toString().equals("2")){
  5862. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UD_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5863. List<HashMap> listM= mapper.query(sql);
  5864. if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5865. judge = "40140201";
  5866. productname = "491611";
  5867. }
  5868. if(list.get("UP_SURFACE_RESULT").toString().equals("0")){
  5869. judge = "40140201";
  5870. productname = "491611";
  5871. }
  5872. }
  5873. }
  5874. }else if(list.get("UP_SURFACE_RESULT").toString().equals("0") || list.get("UD_SURFACE_RESULT").toString().equals("0")){
  5875. judge = "40140201";
  5876. productname = "491611";
  5877. }
  5878. }
  5879. else if(list.get("SIZERESULT").toString().equals("2")){
  5880. sql = "select * from qcm_judge_measure a where a.sic_id = '"+list.get("SIZEID").toString()+"' ";
  5881. List<HashMap> listM= mapper.query(sql);
  5882. if(listM.get(0).get("LEVEL_DESC").toString().contains("废品")){
  5883. judge = "40140303";
  5884. productname = "491610";
  5885. }else if(listM.get(0).get("LEVEL_DESC").toString().contains("次品")){
  5886. judge = "40140301";
  5887. productname = "491609";
  5888. }else if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5889. judge = "40140201";
  5890. productname = "491611";
  5891. }
  5892. }
  5893. }else if(list.get("PHYSRESULT").toString().equals("2")){
  5894. //公差
  5895. if(list.get("SIZERESULT").toString().equals("1")){
  5896. //表面
  5897. if(list.get("UP_SURFACE_RESULT").toString().equals("2") || list.get("UD_SURFACE_RESULT").toString().equals("2")){
  5898. if(list.get("UP_SURFACE_RESULT").toString().equals("2")){
  5899. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UP_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5900. List<HashMap> listM= mapper.query(sql);
  5901. if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5902. judge = "40140201";
  5903. productname = "491611";
  5904. }
  5905. if(list.get("UD_SURFACE_RESULT").toString().equals("2")){
  5906. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UD_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5907. listM= mapper.query(sql);
  5908. if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5909. if(!judge.equals("40140303") && !judge.equals("40140301")){
  5910. judge = "40140201";
  5911. productname = "491611";
  5912. }
  5913. }
  5914. }else if(list.get("UD_SURFACE_RESULT").toString().equals("0")){
  5915. judge = "40140201";
  5916. productname = "491611";
  5917. }
  5918. }else{
  5919. if(list.get("UD_SURFACE_RESULT").toString().equals("2")){
  5920. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UD_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5921. List<HashMap> listM= mapper.query(sql);
  5922. if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5923. judge = "40140201";
  5924. productname = "491611";
  5925. }
  5926. if(list.get("UP_SURFACE_RESULT").toString().equals("0")){
  5927. judge = "40140201";
  5928. productname = "491611";
  5929. }
  5930. }
  5931. }
  5932. }else if(list.get("UP_SURFACE_RESULT").toString().equals("0") || list.get("UD_SURFACE_RESULT").toString().equals("0")){
  5933. judge = "40140201";
  5934. productname = "491611";
  5935. }
  5936. }
  5937. else if(list.get("SIZERESULT").toString().equals("2")){
  5938. sql = "select * from qcm_judge_measure a where a.sic_id = '"+list.get("SIZEID").toString()+"' ";
  5939. List<HashMap> listM= mapper.query(sql);
  5940. if(listM.get(0).get("LEVEL_DESC").toString().contains("废品")){
  5941. judge = "40140303";
  5942. productname = "491610";
  5943. }else if(listM.get(0).get("LEVEL_DESC").toString().contains("次品")){
  5944. judge = "40140301";
  5945. productname = "491609";
  5946. }else if(listM.get(0).get("LEVEL_DESC").toString().contains("协议品")){
  5947. judge = "40140201";
  5948. productname = "491611";
  5949. }
  5950. }
  5951. }
  5952. }
  5953. }
  5954. }else{
  5955. if(list.get("UP_SURFACE_RESULT_ID_DESC") != null){
  5956. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UP_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5957. List<HashMap> listM= mapper.query(sql);
  5958. if(listM.get(0).get("LEVEL_DESC").toString().contains("废品") ){
  5959. judge = "40140303";
  5960. productname = "491610";
  5961. }else if(listM.get(0).get("LEVEL_DESC").toString().contains("次品")){
  5962. judge = "40140301";
  5963. productname = "491609";
  5964. }
  5965. }
  5966. if(list.get("UD_SURFACE_RESULT_ID_DESC") != null){
  5967. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UD_SURFACE_RESULT_ID_DESC").toString()+"' ";
  5968. List<HashMap> listM= mapper.query(sql);
  5969. if(listM.get(0).get("LEVEL_DESC").toString().contains("废品") ){
  5970. judge = "40140303";
  5971. productname = "491610";
  5972. }else if(listM.get(0).get("LEVEL_DESC").toString().contains("次品")){
  5973. if(!judge.equals("40140303")){
  5974. judge = "40140301";
  5975. productname = "491609";
  5976. }
  5977. }
  5978. }
  5979. if(list.get("SIZEID") != null){
  5980. if(list.get("SIZERESULT").toString().equals("2")){
  5981. sql = "select * from qcm_judge_measure a where a.sic_id = '"+list.get("SIZEID").toString()+"' ";
  5982. List<HashMap> listM= mapper.query(sql);
  5983. if(listM.get(0).get("LEVEL_DESC").toString().contains("废品")){
  5984. judge = "40140303";
  5985. productname = "491610";
  5986. }
  5987. }
  5988. }
  5989. }
  5990. //判定原因
  5991. String pl = material_no.startsWith("Z")?"ZB1":"HB1";
  5992. if(judge.equals("40140303")){
  5993. if(list.get("SIZEID") != null){
  5994. if(list.get("SIZERESULT").toString().equals("2")){
  5995. sql = "select * from qcm_judge_measure a where a.sic_id = '"+list.get("SIZEID").toString()+"' ";
  5996. List<HashMap> listM= mapper.query(sql);
  5997. if(listM.get(0).get("LEVEL_DESC").toString().contains("废品")){
  5998. judgereason = "4013030361";
  5999. }
  6000. }
  6001. }
  6002. if(list.get("UP_SURFACE_RESULT_ID_DESC") != null){
  6003. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UP_SURFACE_RESULT_ID_DESC").toString()+"' ";
  6004. List<HashMap> listM= mapper.query(sql);
  6005. if(listM.get(0).get("LEVEL_DESC").toString().contains("废品") ){
  6006. if(!judgereason.equals("4013030361")){
  6007. //获取表面缺陷,根据表面缺陷判定是否钢质还是轧制
  6008. sql = "select * from qcm_judge_surface_flaw a left join qcm_base_defect b on a.flaw_desc = b.defect_desc where a.SURFACE_ID = '"+list.get("UP_SURFACE_RESULT_ID_DESC").toString()+"' and b.pline_code= '"+pl+"' ";
  6009. listM= mapper.query(sql);
  6010. for(HashMap listD:listM){
  6011. if(listD.get("DEFECT_TYPE_DESC").toString().contains("轧质")){
  6012. judgereason = "4013030361";
  6013. }else{
  6014. if(!judgereason.equals("4013030361")){
  6015. judgereason = "4013030351";
  6016. }
  6017. }
  6018. }
  6019. }
  6020. }
  6021. }
  6022. if(list.get("UP_SURFACE_RESULT_ID_DESC") != null){
  6023. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UP_SURFACE_RESULT_ID_DESC").toString()+"' ";
  6024. List<HashMap> listM= mapper.query(sql);
  6025. if(listM.get(0).get("LEVEL_DESC").toString().contains("废品") ){
  6026. if(!judgereason.equals("4013030361")){
  6027. //获取表面缺陷,根据表面缺陷判定是否钢质还是轧制
  6028. sql = "select * from qcm_judge_surface_flaw a left join qcm_base_defect b on a.flaw_desc = b.defect_desc where a.SURFACE_ID = '"+list.get("UD_SURFACE_RESULT_ID_DESC").toString()+"' and b.pline_code= '"+pl+"' ";
  6029. listM= mapper.query(sql);
  6030. for(HashMap listD:listM){
  6031. if(listD.get("DEFECT_TYPE_DESC").toString().contains("轧质")){
  6032. judgereason = "4013030361";
  6033. }else{
  6034. if(!judgereason.equals("4013030361")){
  6035. judgereason = "4013030351";
  6036. }
  6037. }
  6038. }
  6039. }
  6040. }
  6041. }
  6042. }else if(judge.equals("40140301")){
  6043. if(list.get("SIZEID") != null){
  6044. if(list.get("SIZERESULT").toString().equals("2")){
  6045. sql = "select * from qcm_judge_measure a where a.sic_id = '"+list.get("SIZEID").toString()+"' ";
  6046. List<HashMap> listM= mapper.query(sql);
  6047. if(listM.get(0).get("LEVEL_DESC").toString().contains("次品")){
  6048. judgereason = "4013030161";
  6049. }
  6050. }
  6051. }
  6052. if(list.get("UP_SURFACE_RESULT_ID_DESC") != null){
  6053. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UP_SURFACE_RESULT_ID_DESC").toString()+"' ";
  6054. List<HashMap> listM= mapper.query(sql);
  6055. if(listM.get(0).get("LEVEL_DESC").toString().contains("次品") ){
  6056. if(!judgereason.equals("4013030161")){
  6057. //获取表面缺陷,根据表面缺陷判定是否钢质还是轧制
  6058. sql = "select * from qcm_judge_surface_flaw a left join qcm_base_defect b on a.flaw_desc = b.defect_desc where a.SURFACE_ID = '"+list.get("UP_SURFACE_RESULT_ID_DESC").toString()+"' and b.pline_code= '"+pl+"' ";
  6059. listM= mapper.query(sql);
  6060. for(HashMap listD:listM){
  6061. if(listD.get("DEFECT_TYPE_DESC").toString().contains("轧质")){
  6062. judgereason = "4013030361";
  6063. }else{
  6064. if(!judgereason.equals("4013030361")){
  6065. judgereason = "4013030351";
  6066. }
  6067. }
  6068. }
  6069. }
  6070. }
  6071. }
  6072. if(list.get("UP_SURFACE_RESULT_ID_DESC") != null){
  6073. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UP_SURFACE_RESULT_ID_DESC").toString()+"' ";
  6074. List<HashMap> listM= mapper.query(sql);
  6075. if(listM.get(0).get("LEVEL_DESC").toString().contains("次品") ){
  6076. if(!judgereason.equals("4013030161")){
  6077. //获取表面缺陷,根据表面缺陷判定是否钢质还是轧制
  6078. sql = "select * from qcm_judge_surface_flaw a left join qcm_base_defect b on a.flaw_desc = b.defect_desc where a.SURFACE_ID = '"+list.get("UD_SURFACE_RESULT_ID_DESC").toString()+"' and b.pline_code= '"+pl+"' ";
  6079. listM= mapper.query(sql);
  6080. for(HashMap listD:listM){
  6081. if(listD.get("DEFECT_TYPE_DESC").toString().contains("轧质")){
  6082. judgereason = "4013030361";
  6083. }else{
  6084. if(!judgereason.equals("4013030361")){
  6085. judgereason = "4013030351";
  6086. }
  6087. }
  6088. }
  6089. }
  6090. }
  6091. }
  6092. }else if(judge.equals("40140201")){
  6093. //针对所引用的性能
  6094. if(judgereason.equals("")){
  6095. //判断是否包含夹杂
  6096. List<String> s = new ArrayList<String>();
  6097. List<String> l = new ArrayList<String>();
  6098. sql = "select * from qcm_judge_physical_utm_d z "
  6099. + " where z.pic_id in (select a.physid "
  6100. + " from zj_result_all@xgcx a "
  6101. + " where a.billetid = '"+material_no+"')";
  6102. List<HashMap> listM= mapper.query(sql);
  6103. if(listM.size() >0){
  6104. sql = "select * from qcm_judge_physical_result x where x.phy_id in (select z.phy_id from qcm_jhy_sample_r_ord z where z.smp_no in (select t.smp_no from qcm_jhy_sample_consign_d t "
  6105. + " where t.specimen_no in ( "
  6106. + " select SUBSTR(i.quote_memo,4) from qcm_jhy_sample_consign_d t,qcm_jhy_sample_consign_d_item i "
  6107. + " where t.specimen_no=i.specimen_no "
  6108. + " and t.smp_no ='"+listM.get(0).get("SMP_NO").toString()+"' "
  6109. + " and t.smp_type_code <>'D' "
  6110. + " AND T.SMP_TYPE_CODE = '0' "
  6111. + " AND i.quote_memo is not null "
  6112. + " group by i.quote_memo "
  6113. + " )))";
  6114. listM= mapper.query(sql);
  6115. }
  6116. for(HashMap listD:listM){
  6117. if(listD.get("DEFECT_FLAG").equals("1")){
  6118. judgereason = "4013020112";
  6119. }
  6120. if(listD.get("IS_PASS").toString().equals("1")){
  6121. s.add(listD.get("PHY_NAME_S").toString());
  6122. l.add(listD.get("PHY_NAME_L").toString());
  6123. }
  6124. }
  6125. if(judgereason.equals("")){
  6126. if(l.contains("夹杂")){
  6127. judgereason = "4013020191";
  6128. }else if(l.contains("拉伸")){
  6129. if(s.contains("屈服强度")){
  6130. judgereason = "4013020121";
  6131. }else if(s.contains("抗拉强度")){
  6132. judgereason = "4013020122";
  6133. }else if(s.contains("断后伸长率")){
  6134. judgereason = "4013020123";
  6135. }
  6136. }else if(l.contains("冲击")){
  6137. judgereason = "4013020124";
  6138. }else if(l.contains("金相")){
  6139. if(s.contains("晶粒度")){
  6140. judgereason = "4013020190";
  6141. }
  6142. }else if(l.contains("弯曲")){
  6143. judgereason = "4013020126";
  6144. }else if(l.contains("拉伸")){
  6145. if(s.contains("Z向断面收缩率单值")){
  6146. judgereason = "4013020125";
  6147. }
  6148. }
  6149. else{
  6150. judgereason = "4013020128";
  6151. }
  6152. }
  6153. }
  6154. //探伤
  6155. if(judgereason.equals("") || !judgereason.equals("4013020112")){
  6156. if(list.get("SPYRESULT").toString().equals("2")){
  6157. judgereason = "4013020130";
  6158. }
  6159. }
  6160. //成分
  6161. if(judgereason.equals("")){
  6162. sql = "select * from qcm_judge_chemical a where a.material_no = '"+material_no+"' and a.design_key not like '19%' order by a.judge_ttime desc";
  6163. List<HashMap> listM= mapper.query(sql);
  6164. if(listM.size() >0 && listM.get(0).get("CIC_RESULT_CODE").equals("2")){
  6165. judgereason = "4013020111";
  6166. }
  6167. }
  6168. //公差
  6169. if(judgereason.equals("")){
  6170. if(list.get("SIZEID") != null){
  6171. if(list.get("SIZERESULT").toString().equals("2")){
  6172. sql = "select * from qcm_judge_measure a where a.sic_id = '"+list.get("SIZEID").toString()+"' ";
  6173. List<HashMap> listM= mapper.query(sql);
  6174. if(listM.get(0).get("LEVEL_DESC").toString().contains("订单外")){
  6175. judgereason = "4013020104";
  6176. }
  6177. }
  6178. }
  6179. }
  6180. //表面
  6181. if(judgereason.equals("")){
  6182. if(list.get("UP_SURFACE_RESULT_ID_DESC") != null){
  6183. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UP_SURFACE_RESULT_ID_DESC").toString()+"' ";
  6184. List<HashMap> listM= mapper.query(sql);
  6185. if(listM.get(0).get("LEVEL_DESC").toString().contains("订单外") ||listM.get(0).get("LEVEL_DESC").toString().contains("正品")){
  6186. if(!judgereason.equals("4013030161")){
  6187. //获取表面缺陷,根据表面缺陷判定是否钢质还是轧制
  6188. sql = "select * from qcm_judge_surface_flaw a left join qcm_base_defect b on a.flaw_desc = b.defect_desc where a.SURFACE_ID = '"+list.get("UP_SURFACE_RESULT_ID_DESC").toString()+"' and b.pline_code= '"+pl+"' ";
  6189. listM= mapper.query(sql);
  6190. for(HashMap listD:listM){
  6191. if(listD.get("DEFECT_TYPE_DESC").toString().contains("轧质")){
  6192. judgereason = "4013020140";
  6193. }else{
  6194. if(!judgereason.equals("4013020140")){
  6195. judgereason = "4013020110";
  6196. }
  6197. }
  6198. }
  6199. }
  6200. }
  6201. }
  6202. if(list.get("UP_SURFACE_RESULT_ID_DESC") != null){
  6203. sql = "select * from qcm_judge_surface a where a.SURFACE_ID = '"+list.get("UP_SURFACE_RESULT_ID_DESC").toString()+"' ";
  6204. List<HashMap> listM= mapper.query(sql);
  6205. if(listM.get(0).get("LEVEL_DESC").toString().contains("订单外") ||listM.get(0).get("LEVEL_DESC").toString().contains("正品")){
  6206. if(!judgereason.equals("4013030161")){
  6207. //获取表面缺陷,根据表面缺陷判定是否钢质还是轧制
  6208. sql = "select * from qcm_judge_surface_flaw a left join qcm_base_defect b on a.flaw_desc = b.defect_desc where a.SURFACE_ID = '"+list.get("UD_SURFACE_RESULT_ID_DESC").toString()+"' and b.pline_code= '"+pl+"' ";
  6209. listM= mapper.query(sql);
  6210. for(HashMap listD:listM){
  6211. if(listD.get("DEFECT_TYPE_DESC").toString().contains("轧质")){
  6212. judgereason = "4013020140";
  6213. }else{
  6214. if(!judgereason.equals("4013020140")){
  6215. judgereason = "4013020110";
  6216. }
  6217. }
  6218. }
  6219. }
  6220. }
  6221. }
  6222. }
  6223. //无计划牌号
  6224. /*if(judgereason.equals("")){
  6225. if(hashmap.get(0).get("PLANORDERNO") ==null){
  6226. judgereason = "4013020127";
  6227. }
  6228. }*/
  6229. //其他原因
  6230. if(judgereason.equals("")){
  6231. judgereason = "4013020180";
  6232. }
  6233. }
  6234. if(judge.equals("")||judgereason.equals("")){
  6235. throw new Exception("检验结果为空或者判定原因为空,不能判定!");
  6236. }
  6237. QcmJudgeUltimate qju=new QcmJudgeUltimate();
  6238. //获取判定记录号当天的最大值
  6239. Date now = new Date();
  6240. String opr_time = new SimpleDateFormat("yyyyMMddHHmmss").format(now); //操作时间
  6241. SimpleDateFormat sdf=new SimpleDateFormat("yyMMdd");
  6242. String date=sdf.format(now);
  6243. count=0;
  6244. String type1 = "";
  6245. if(material_no.startsWith("Z")||material_no.startsWith("H")){
  6246. type1 = "ZB";
  6247. }else{
  6248. type1 = "ZX";
  6249. }
  6250. sql ="select * from (select * from qcm_judge_ultimate where UTM_ID like '"+type1+date+"%' order by UTM_ID desc) where rownum <= 1";
  6251. List<QcmJudgeUltimate> listUl=mapper.QcmJudgeUltimate(sql);
  6252. if (listUl!=null&&listUl.size()>0) {
  6253. String s=listUl.get(0).getUtm_id();
  6254. count=Integer.parseInt(s.substring(s.length()-4,s.length()));
  6255. }
  6256. count++;
  6257. String utm_id=type1+sdf.format(now)+String.format("%04d",count);
  6258. qju.setUtm_id(utm_id);
  6259. //更新库存表综合判定结果
  6260. ZjResultAll zra = new ZjResultAll();
  6261. zra.setBilletid(material_no);
  6262. zra.setJudgeid(utm_id);
  6263. if(judge.equals("40140201")){
  6264. zra.setJudgeresult("5");
  6265. zra.setJudgeresult_desc("订单外");
  6266. }else if(judge.equals("40140301")){
  6267. zra.setJudgeresult("6");
  6268. zra.setJudgeresult_desc("表面次");
  6269. }else if(judge.equals("40140302")){
  6270. zra.setJudgeresult("7");
  6271. zra.setJudgeresult_desc("性能次");
  6272. }else if(judge.equals("40140303")){
  6273. zra.setJudgeresult("4");
  6274. zra.setJudgeresult_desc("废品");
  6275. }
  6276. mapper.UpdateJugeResultB(zra);
  6277. if(1==1){
  6278. throw new Exception("人工测试,不能判定!");
  6279. }
  6280. //插入综合判定记录表
  6281. String design_key = hashmap.get(0).get("DESIGN_KEY") == null ?"":hashmap.get(0).get("DESIGN_KEY").toString();
  6282. if(!design_key.startsWith("19")){
  6283. design_key = "";
  6284. }
  6285. qju.setDesign_key(design_key);
  6286. qju.setHeat_no(hashmap.get(0).get("HEAT_NO")==null?"":hashmap.get(0).get("HEAT_NO").toString());
  6287. qju.setBatch_no(hashmap.get(0).get("BATCHNO")==null?"":hashmap.get(0).get("BATCHNO").toString());
  6288. qju.setBoard_no(hashmap.get(0).get("BOARD_NO")==null?"":hashmap.get(0).get("BOARD_NO").toString());
  6289. qju.setInspection_lot(hashmap.get(0).get("INSPECTION_LOT") == null ?"":hashmap.get(0).get("INSPECTION_LOT").toString());
  6290. qju.setMaterial_no(material_no);
  6291. qju.setUtm_id(utm_id);
  6292. qju.setUtm_memo("");
  6293. qju.setUtm_result_code(zra.getJudgeresult());
  6294. qju.setUtm_result_desc(zra.getJudgeresult_desc());
  6295. qju.setCic_id(list1.get(0).get("CHEMID") == null?"":list1.get(0).get("CHEMID").toString());
  6296. qju.setCic_result_code(list1.get(0).get("CHEMRESULT")==null?"":list1.get(0).get("CHEMRESULT").toString());
  6297. qju.setCic_result_desc(list1.get(0).get("CHEMRESULT_DESC")==null?"":list1.get(0).get("CHEMRESULT_DESC").toString());
  6298. qju.setR_cic_id(list1.get(0).get("R_CHEMID") == null?"":list1.get(0).get("R_CHEMID").toString());
  6299. qju.setR_cic_result_code(list1.get(0).get("R_CHEMRESULT")==null?"":list1.get(0).get("R_CHEMRESULT").toString());
  6300. qju.setR_cic_result_desc(list1.get(0).get("R_CHEMRESULT_DESC")==null?"":list1.get(0).get("R_CHEMRESULT_DESC").toString());
  6301. qju.setPic_id(list1.get(0).get("PHYSID") == null?"":list1.get(0).get("PHYSID").toString());
  6302. qju.setPic_result_code(list1.get(0).get("PHYSRESULT")==null?"":list1.get(0).get("PHYSRESULT").toString());
  6303. qju.setPic_result_desc(list1.get(0).get("PHYSRESULT_DESC")==null?"":list1.get(0).get("PHYSRESULT_DESC").toString());
  6304. qju.setSic_id(list1.get(0).get("SIZEID") == null?"":list1.get(0).get("SIZEID").toString());
  6305. qju.setSic_result_code(list1.get(0).get("SIZERESULT")==null?"":list1.get(0).get("SIZERESULT").toString());
  6306. qju.setSic_result_desc(list1.get(0).get("SIZERESULT_DESC")==null?"":list1.get(0).get("SIZERESULT_DESC").toString());
  6307. qju.setDic_id(list1.get(0).get("SPYID")==null?"":list1.get(0).get("SPYID").toString());
  6308. qju.setDic_result_code(list1.get(0).get("SPYRESULT")==null?"":list1.get(0).get("SPYRESULT").toString());
  6309. qju.setDic_result_desc(list1.get(0).get("SPYRESULT_DESC")==null?"":list1.get(0).get("SPYRESULT_DESC").toString());
  6310. qju.setSfd_id(list1.get(0).get("SURFACEID")==null?"":list1.get(0).get("SURFACEID").toString());
  6311. qju.setSfd_result_code(list1.get(0).get("UD_SURFACE_RESULT")==null?"":list1.get(0).get("UD_SURFACE_RESULT").toString());
  6312. qju.setSfd_result_desc(list1.get(0).get("UD_SURFACE_RESULT_DESC")==null?"":list1.get(0).get("UD_SURFACE_RESULT_DESC").toString());
  6313. qju.setSfu_id(list1.get(0).get("SURFACEID")==null?"":list1.get(0).get("SURFACEID").toString());
  6314. qju.setSfu_result_code(list1.get(0).get("UP_SURFACE_RESULT")==null?"":list1.get(0).get("UP_SURFACE_RESULT").toString());
  6315. qju.setSfu_result_desc(list1.get(0).get("UP_SURFACE_RESULT_DESC")==null?"":list1.get(0).get("UP_SURFACE_RESULT_DESC").toString());
  6316. qju.setSfe_id(list1.get(0).get("SURFACEID")==null?"":list1.get(0).get("SURFACEID").toString());
  6317. qju.setSfe_result_code(list1.get(0).get("MARGINAL_RESULT")==null?"":list1.get(0).get("MARGINAL_RESULT").toString());
  6318. qju.setSfe_result_desc(list1.get(0).get("MARGINAL_RESULT_DESC")==null?"":list1.get(0).get("MARGINAL_RESULT_DESC").toString());
  6319. qju.setMst_id(list1.get(0).get("SURFACEID")==null?"":list1.get(0).get("SURFACEID").toString());
  6320. qju.setMst_result_code(list1.get(0).get("SURFACERESULT")==null?"":list1.get(0).get("SURFACERESULT").toString());
  6321. qju.setMst_result_desc(list1.get(0).get("SURFACERESULT_DESC")==null?"":list1.get(0).get("SURFACERESULT_DESC").toString());
  6322. qju.setFst_id(list1.get(0).get("PHYFSTSID")==null?"":list1.get(0).get("PHYFSTSID").toString());
  6323. qju.setFst_result_code(list1.get(0).get("PHYFSTSRESULT")==null?"":list1.get(0).get("PHYFSTSRESULT").toString());
  6324. qju.setFst_result_desc(list1.get(0).get("PHYFSTSRESULT_DESC")==null?"":list1.get(0).get("PHYFSTSRESULT_DESC").toString());
  6325. qju.setPsc(hashmap.get(0).get("PSC")==null?"":hashmap.get(0).get("PSC").toString());
  6326. qju.setPsc_desc(hashmap.get(0).get("PSC_DESC")==null?"":hashmap.get(0).get("PSC_DESC").toString());
  6327. qju.setProd_code(hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString());
  6328. qju.setProd_name(hashmap.get(0).get("PROD_NAME")==null?"":hashmap.get(0).get("PROD_NAME").toString());
  6329. qju.setSteel_code(hashmap.get(0).get("STEEL_CODE")==null?"":hashmap.get(0).get("STEEL_CODE").toString());
  6330. qju.setSteel_name(hashmap.get(0).get("STEEL_NAME").toString());
  6331. qju.setStd_code(hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString());
  6332. qju.setStd_name(hashmap.get(0).get("STD_NAME")==null?"":hashmap.get(0).get("STD_NAME").toString());
  6333. qju.setJudge_name(username);
  6334. qju.setJudge_time(new Date());
  6335. qju.setProduct_name(productname);
  6336. qju.setJudge_reason(judgereason);
  6337. qju.setJudge_memo(memo);
  6338. qju.setPline_code(hashmap.get(0).get("PLINE_CODE")==null?"":hashmap.get(0).get("PLINE_CODE").toString());
  6339. qju.setPline_name(hashmap.get(0).get("PLINE_NAME")==null?"":hashmap.get(0).get("PLINE_NAME").toString());
  6340. mapper.insertQcmJudgeUltimate(qju);
  6341. //调用一体化接口
  6342. //发送熔炼成分实绩
  6343. //if(zra.getJudgeresult().equals("1")){
  6344. List<QcmJhyInspElements> chemresult1 = mapper.queryQcmJhyInspElements("select * from qcm_jhy_insp_elements t where t.assay_type = 'L' and t.heat_no = '"+hashmap.get(0).get("HEAT_NO").toString()+"'");
  6345. if(chemresult1.size() > 0){
  6346. //String result = SendChemResult(chemresult1);
  6347. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  6348. qjus.setMaterial_no(material_no);
  6349. qjus.setDesign_key(design_key.equals("")?"非计划":design_key);
  6350. //qjus.setJson_text(result);
  6351. qjus.setResult_type("C");
  6352. qjus.setJudge_id(list1.get(0).get("R_CHEMID") == null?"":list1.get(0).get("R_CHEMID").toString());
  6353. qjus.setCreate_name("system");
  6354. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  6355. }
  6356. String insplection_lot = hashmap.get(0).get("INSPECTION_LOT")==null?"":hashmap.get(0).get("INSPECTION_LOT").toString();
  6357. //发送成品成分实绩
  6358. List<QcmJhyInspElements> chemresult2 = mapper.queryQcmJhyInspElements("select * from qcm_jhy_insp_elements t where t.assay_type = 'P' and t.INSPECTION_LOT = '"+insplection_lot+"'");
  6359. if(chemresult2.size() > 0){
  6360. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  6361. //String result = SendChemResult(chemresult2);
  6362. qjus.setMaterial_no(material_no);
  6363. qjus.setDesign_key(design_key.equals("")?"非计划":design_key);
  6364. //qjus.setJson_text(result);
  6365. qjus.setResult_type("C");
  6366. qjus.setJudge_id(list1.get(0).get("CHEMID") == null?"":list1.get(0).get("CHEMID").toString());
  6367. qjus.setCreate_name("system");
  6368. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  6369. }
  6370. //发送材质实绩
  6371. List<QcmJhyPhyresult> phyresult1 = mapper.queryQcmJhyPhyresult("select * from qcm_jhy_insp_physics t where t.SPECIMEN_NO in (select SPECIMEN_NO from QCM_JHY_SAMPLE_CONSIGN_D where INSPECTION_LOT = '"+insplection_lot+"')");
  6372. if(phyresult1.size() > 0){
  6373. QcmJudgeUltimateSendinfo qjus = new QcmJudgeUltimateSendinfo();
  6374. //String result = SendPhyResult(phyresult1);
  6375. qjus.setMaterial_no(material_no);
  6376. qjus.setDesign_key(design_key.equals("")?"非计划":design_key);
  6377. //qjus.setJson_text(result);
  6378. qjus.setResult_type("P");
  6379. qjus.setJudge_id(list1.get(0).get("PHYSID") == null?"":list1.get(0).get("PHYSID").toString());
  6380. qjus.setCreate_name("system");
  6381. mapper.insertQcmJudgeUltimateSendinfo(qjus);
  6382. }
  6383. //}
  6384. String judgeresult = judge;
  6385. String cj_result = judge;
  6386. String steelname = hashmap.get(0).get("STEEL_NAME")==null?"":hashmap.get(0).get("STEEL_NAME").toString();
  6387. String phyid = list1.get(0).get("PHYSID")==null?"":list1.get(0).get("PHYSID").toString();
  6388. if(!phyid.equals("")){
  6389. sql= "select max(t.steel_name) steel_name from qcm_judge_physical t where t.phy_id in (select phy_id from qcm_judge_physical_utm_d d where d.pic_id = '"+phyid+"')";
  6390. List<HashMap> liststeel = mapper.query(sql);
  6391. if(liststeel != null && liststeel.size() >0 && liststeel.get(0).get("STEEL_NAME").toString().startsWith("SWRH82B-YL")){
  6392. steelname = liststeel.get(0).get("STEEL_NAME").toString();
  6393. }
  6394. }
  6395. String prod_code = hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString();
  6396. /*if(hashmap.get(0).get("DESIGN_KEY").toString().startsWith("19")){
  6397. prod_code = productname;
  6398. }*/
  6399. judge_call(hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString(),prod_code,hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString(),hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString(),hashmap.get(0).get("PSC")==null?"":hashmap.get(0).get("PSC").toString(),judgeresult,judgereason,memo,"",cj_result,material_no,username,productname,hashmap.get(0).get("HT_NO")==null?"":hashmap.get(0).get("HT_NO").toString(),utm_id,hashmap.get(0).get("DESIGN_KEY")==null?"":hashmap.get(0).get("DESIGN_KEY").toString(),steelname);
  6400. }
  6401. }else{
  6402. throw new Exception("未找到该检验号下的库存信息!");
  6403. }
  6404. QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
  6405. qjog.setOperate_name(username);
  6406. qjog.setOperate_type("非计划综合判定");
  6407. qjog.setParams(material_no);
  6408. qjog.setProd_line(hashmap.get(0).get("PLINE_CODE")==null?"":hashmap.get(0).get("PLINE_CODE").toString());
  6409. qjog.setBatchno(hashmap.get(0).get("BATCHNO")==null?"":hashmap.get(0).get("BATCHNO").toString());
  6410. qjog.setMemo(memo);
  6411. qjog.setJudge_result(judge_result);
  6412. mapper.insertQcmJudgeOperateLog(qjog);
  6413. //cro = creatUltimateResultByHand(material_no,username);//手动进行综合判定
  6414. SqlSession.commit();
  6415. }catch(Exception ex){
  6416. cro.setV_errCode(-1);
  6417. cro.setV_errMsg(ex.getMessage());
  6418. SqlSession.rollback();
  6419. logger.info(new Date().toString() + " QCM.QCM03.QCM0302.QcmJudgePhysicalServiceImpl.ultimateJudgeAutoF:【" + material_no + "," + username + "】" + ex);
  6420. }finally {
  6421. SqlSession.close();
  6422. }
  6423. //SqlSession.close();
  6424. return cro;
  6425. }
  6426. public static String post(JSONObject json,String URL) {
  6427. HttpClient client = new DefaultHttpClient();
  6428. HttpPost post = new HttpPost(URL);
  6429. post.setHeader("Content-Type", "application/x-www-form-urlencoded");
  6430. post.addHeader("Authorization", "Basic YWRtaW46");
  6431. String result = "";
  6432. try {
  6433. String param = "data="+json.toString()+"";
  6434. StringEntity s = new StringEntity(param, "utf-8");
  6435. s.setContentEncoding(new BasicHeader(HTTP.CONTENT_TYPE,
  6436. "application/json"));
  6437. post.setEntity(s);
  6438. // 发送请求
  6439. HttpResponse httpResponse = client.execute(post);
  6440. // 获取响应输入流
  6441. InputStream inStream = httpResponse.getEntity().getContent();
  6442. BufferedReader reader = new BufferedReader(new InputStreamReader(
  6443. inStream, "utf-8"));
  6444. StringBuilder strber = new StringBuilder();
  6445. String line = null;
  6446. while ((line = reader.readLine()) != null)
  6447. strber.append(line + "\n");
  6448. inStream.close();
  6449. result = strber.toString();
  6450. System.out.println(result);
  6451. if (httpResponse.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
  6452. System.out.println("请求服务器成功,做相应处理");
  6453. } else {
  6454. System.out.println("请求服务端失败");
  6455. }
  6456. } catch (Exception e) {
  6457. System.out.println("请求异常");
  6458. throw new RuntimeException(e);
  6459. }
  6460. return result;
  6461. }
  6462. /**
  6463. * 质量判定-材质判定管理-自动判定
  6464. * */
  6465. /*public CoreReturnObject judgeByComputer()
  6466. throws Exception{
  6467. try {
  6468. // 前置条件
  6469. // 1、材质试样信息列表中试样号对应判定状态为待判(QCM_JHY_SAMPLE_R_ORD.JUDGE_STATUS='0')
  6470. // 2、试样号向下委托明细状态为已完成(QCM_JHY_SAMPLE_CONSIGN_D.STATUS='3')
  6471. // 获取所有试样号
  6472. List<QcmJhySampleConsignM> qmlist=this.getMapper(QcmJhySampleConsignMMapper.class).find(null, 0, 0);
  6473. // 循环所有试样号
  6474. for(QcmJhySampleConsignM qm:qmlist){
  6475. String syh=qm.getSmp_no();
  6476. // 标识-试样号对应所有判定状态为待判
  6477. int flagJ=0;
  6478. // 获取试样号对应合同关系表信息
  6479. List<QcmJhySampleROrd> qordlist=this.getMapper(QcmJhySampleROrdMapper.class).findWithCondition(null, "SMP_NO='"+syh+"'", null, 0, 0);
  6480. for(QcmJhySampleROrd qord:qordlist){
  6481. if(!qord.getJudge_status().equals("0")){
  6482. flagJ++;
  6483. break;
  6484. }
  6485. }
  6486. // 标识-试样号向下所有委托明细状态为已完成
  6487. int flagS=0;
  6488. // 获取试样号对应委托明细表信息
  6489. List<QcmJhySampleConsignD> qdlist=this.getMapper(QcmJhySampleConsignDMapper.class).findWithCondition(null, "SMP_NO='"+syh+"'", null, 0, 0);
  6490. for(QcmJhySampleConsignD qd:qdlist){
  6491. if(!qd.getStatus().equals("3")){
  6492. flagS++;
  6493. break;
  6494. }
  6495. }
  6496. // 满足条件自动判定
  6497. if(flagJ==0&&flagS==0){
  6498. List<QcmJhySampleConsignDItem> qjsd=new ArrayList<>();
  6499. // 试样号对应的所有材质检验项目
  6500. for(QcmJhySampleConsignD qd:qdlist){
  6501. List<QcmJhySampleConsignDItem> q=this.getMapper(QcmJhySampleConsignDItemMapper.class)
  6502. .findWithCondition(null, "SPECIMEN_NO='"+qd.getSpecimen_no()+"'", null, 0, 0);
  6503. for(QcmJhySampleConsignDItem qdii:q){
  6504. qjsd.add(qdii);
  6505. }
  6506. }
  6507. // 获取试样号向下检验项目及对应检验实绩、判定标准,修正值
  6508. for(QcmJhySampleROrd qd:qordlist){
  6509. //在这个层级插入QCM_JUDGE_PHYSICAL表
  6510. // 材质结果集编号
  6511. int count=0;
  6512. SimpleDateFormat sdf=new SimpleDateFormat("yyMMdd");
  6513. String date=sdf.format(new Date());
  6514. // 获取材质结果集编号最大值
  6515. List<QcmPhyResult> qrlist=this.getMapper(QcmPhyResultMapper.class)
  6516. .findWithCondition(null, "PHY_ID like 'PIC"+date+"%'", "PHY_ID DESC", 0, 1);
  6517. if(qrlist!=null&&qrlist.size()>0){
  6518. String s=qrlist.get(0).getPhy_id();
  6519. count=Integer.parseInt(s.substring(s.length()-4, s.length()));
  6520. }
  6521. count++;
  6522. String phy_id="PIC"+sdf.format(new Date())+String.format("%04d",count);
  6523. boolean test=true;
  6524. // 判定标准与修正值
  6525. for(QcmJhySampleConsignDItem qsd:qjsd){
  6526. // 在这个层级插入QCM_PHY_RESULT表
  6527. // 检验实绩
  6528. List<String> phylist=new ArrayList<>();
  6529. // 交付标准
  6530. String pic="";
  6531. List<SlmOrdDesignStd> sordlist=this.getMapper(SlmOrdDesignStdMapper.class).findWithCondition(null, "Design_key='"+qd.getDesign_key()+"' and Psc='"+qd.getPsc()+"'", null, 0, 0);
  6532. if(sordlist!=null&&sordlist.size()>0){
  6533. pic=sordlist.get(0).getPic();
  6534. SlmOrdDesignStdPic ss=new SlmOrdDesignStdPic();
  6535. List<SlmOrdDesignStdPic> sslist=this.getMapper(SlmOrdDesignStdPicMapper.class)
  6536. .findWithCondition(null, "PIC='"+pic
  6537. +"' and DESIGN_KEY='"+qd.getDesign_key()
  6538. +"' and PHY_CODE_S='"+qsd.getPhy_code_s()+"'", null, 0, 1);
  6539. if(sslist!=null&&sslist.size()>0){
  6540. ss=sslist.get(0);
  6541. }
  6542. qsd.setJf_stdmax_sign(ss.getStdmax_sign());
  6543. qsd.setJf_stdmax(ss.getStdmax());
  6544. qsd.setJf_stdmin_sign(ss.getStdmin_sign());
  6545. qsd.setJf_stdmin(ss.getStdmin());
  6546. }
  6547. // 客户标准
  6548. String picK="";
  6549. List<SlmOrdDesignStd> ssplist=this.getMapper(SlmOrdDesignStdMapper.class)
  6550. .findWithCondition(null, "DESIGN_KEY='"+qd.getDesign_key()+"' and PSC='"+qd.getPsc()+"'",null, 0, 0);
  6551. if(ssplist!=null&&ssplist.size()>0){
  6552. picK=ssplist.get(0).getPic_k();
  6553. SlmOrdDesignStdPic ss2=new SlmOrdDesignStdPic();
  6554. List<SlmOrdDesignStdPic> sslist=this.getMapper(SlmOrdDesignStdPicMapper.class)
  6555. .findWithCondition(null, "PIC='"+picK
  6556. +"' and DESIGN_KEY='"+qd.getDesign_key()
  6557. +"' and PHY_CODE_S='"+qsd.getPhy_code_s()+
  6558. "'", null, 0, 0);
  6559. if(sslist!=null&&sslist.size()>0){
  6560. ss2=sslist.get(0);
  6561. }
  6562. qsd.setKh_stdmax_sign(ss2.getStdmax_sign());
  6563. qsd.setKh_stdmax(ss2.getStdmax());
  6564. qsd.setKh_stdmin_sign(ss2.getStdmin_sign());
  6565. qsd.setKh_stdmin(ss2.getStdmin());
  6566. }
  6567. // 内控标准
  6568. // //验证内控是否存在引用
  6569. String IS_STDPIC="0";
  6570. String PIC="";
  6571. List<SlmOrdDesignMscPlPrc> prclist=this.getMapper(SlmOrdDesignMscPlPrcMapper.class)
  6572. .findWithCondition(null, "Design_key='"+qd.getDesign_key()+"'", null, 0, 0);
  6573. if(prclist!=null&&prclist.size()>0){
  6574. PIC=prclist.get(0).getPic();
  6575. for(SlmOrdDesignMscPlPrc prc:prclist){
  6576. if(prc.getIs_stdpic().equals("1")){
  6577. IS_STDPIC="1";
  6578. break;
  6579. }
  6580. }
  6581. }
  6582. if(IS_STDPIC.equals("1")){
  6583. // 则弹出原型所示提示信息
  6584. qsd.setIs_stdpic("1");
  6585. }
  6586. else{
  6587. qsd.setIs_stdpic("0");
  6588. // 验证内控标准索引号是否为空
  6589. if(PIC!=null&&!PIC.equals("")){
  6590. SlmOrdDesignStdPic ss3=new SlmOrdDesignStdPic();
  6591. List<SlmOrdDesignStdPic> sslist=this.getMapper(SlmOrdDesignStdPicMapper.class)
  6592. .findWithCondition(null, "PIC='"+PIC
  6593. +"' and DESIGN_KEY='"+qd.getDesign_key()
  6594. +"' and PHY_CODE_S='"+qsd.getPhy_code_s()+"'", null, 0, 1);
  6595. if(sslist!=null&&sslist.size()>0){
  6596. ss3=sslist.get(0);
  6597. }
  6598. qsd.setNk_stdmax_sign(ss3.getStdmax_sign());
  6599. qsd.setNk_stdmax(ss3.getStdmax());
  6600. qsd.setNk_stdmin_sign(ss3.getStdmin_sign());
  6601. qsd.setNk_stdmin(ss3.getStdmin());
  6602. }
  6603. else{
  6604. // 验证检验项是否存在修正值
  6605. String delivery_state_code="";
  6606. List<SlmOrdDesignMsc> smlist=this.getMapper(SlmOrdDesignMscMapper.class)
  6607. .findWithCondition(null, "CONTRACT_LINE_NO='"+qd.getContract_line_no()
  6608. +"' and VALIDFLAG='1'", null, 0, 0);
  6609. if(smlist!=null&&smlist.size()>0){
  6610. delivery_state_code=smlist.get(0).getDelivery_state_code();
  6611. }
  6612. List<ComBaseDeliverystateRPhy> cr=this.getMapper(ComBaseDeliverystateRPhyMapper.class).
  6613. findWithCondition(null, "PHY_CODE_S='"+qsd.getPhy_code_s()+"' and DELIVERY_STATE_CODE='"+delivery_state_code+"'", null, 0, 0);
  6614. if(cr!=null&&cr.size()>=1){
  6615. ComBaseDeliverystateRPhy crr=cr.get(0);
  6616. qsd.setStdmin_update(crr.getStdmin_update());
  6617. qsd.setStdmax_update(crr.getStdmax_update());
  6618. // 取值逻辑:如果交付、客户标准同时存在,则拿客户标准与修正值进行计算,否则,取交付标准进行计算;
  6619. if((pic!=null&&!pic.equals(""))&&(picK!=null&&!picK.equals(""))){
  6620. qsd.setNk_stdmax_sign(qsd.getKh_stdmax_sign());
  6621. qsd.setNk_stdmin_sign(qsd.getKh_stdmin_sign());
  6622. qsd.setNk_stdmax((Long.parseLong(qsd.getKh_stdmax())-qsd.getStdmax_update())+"");
  6623. qsd.setNk_stdmin((Long.parseLong(qsd.getKh_stdmin())+qsd.getStdmin_update())+"");
  6624. }else{
  6625. qsd.setNk_stdmax_sign(qsd.getJf_stdmax_sign());
  6626. qsd.setNk_stdmin_sign(qsd.getJf_stdmin_sign());
  6627. qsd.setNk_stdmax((Long.parseLong(qsd.getJf_stdmax())-qsd.getStdmax_update())+"");
  6628. qsd.setNk_stdmin((Long.parseLong(qsd.getJf_stdmin())+qsd.getStdmin_update())+"");
  6629. }
  6630. }
  6631. }
  6632. }
  6633. // 修正值
  6634. String delivery_state_code="";
  6635. List<SlmOrdDesignMsc> smlist=this.getMapper(SlmOrdDesignMscMapper.class)
  6636. .findWithCondition(null, "CONTRACT_LINE_NO='"+qd.getContract_line_no()
  6637. +"' and VALIDFLAG='1'", null, 0, 0);
  6638. if(smlist!=null&&smlist.size()>0){
  6639. delivery_state_code=smlist.get(0).getDelivery_state_code();
  6640. }
  6641. List<ComBaseDeliverystateRPhy> cr=this.getMapper(ComBaseDeliverystateRPhyMapper.class).
  6642. findWithCondition(null, "PHY_CODE_S='"+qsd.getPhy_code_s()+"' and DELIVERY_STATE_CODE='"+delivery_state_code+"'", null, 0, 0);
  6643. if(cr!=null&&cr.size()>=1){
  6644. qsd.setIs_std("1");
  6645. ComBaseDeliverystateRPhy crr=cr.get(0);
  6646. qsd.setStdmin_update(crr.getStdmin_update());
  6647. qsd.setStdmax_update(crr.getStdmax_update());
  6648. }
  6649. else{
  6650. qsd.setIs_std("0");
  6651. }
  6652. boolean istrue_jfmax=true,istrue_jfmin=true,istrue_khmax=true,istrue_khmin=true,istrue_nkmax=true,istrue_nkmin=true;
  6653. //是否必判
  6654. if(qsd.getIsjudge().equals("1")){
  6655. // 判定:一个实绩值的任意一个标准不通过即为不合格
  6656. for(String phy:phylist){
  6657. // 交付标准下限
  6658. if(qsd.getJf_stdmin()!=null&&!qsd.getJf_stdmin().equals("")){
  6659. if(!judgeVal(phy, qsd.getJf_stdmin(), qsd.getJf_stdmin_sign())){
  6660. istrue_jfmin=false;
  6661. }
  6662. }
  6663. // 交付标准上限
  6664. if(qsd.getJf_stdmax()!=null&&!qsd.getJf_stdmax().equals("")){
  6665. if(!judgeVal(phy, qsd.getJf_stdmax(), qsd.getJf_stdmax())){
  6666. istrue_jfmax=false;
  6667. }
  6668. }
  6669. // 客户标准下限
  6670. if(qsd.getKh_stdmin()!=null&&!qsd.getKh_stdmin().equals("")){
  6671. if(!judgeVal(phy, qsd.getKh_stdmin(), qsd.getKh_stdmin())){
  6672. istrue_khmin=false;
  6673. }
  6674. }
  6675. // 客户标准上限
  6676. if(qsd.getKh_stdmax()!=null&&!qsd.getKh_stdmax().equals("")){
  6677. if(!judgeVal(phy, qsd.getKh_stdmax(), qsd.getKh_stdmax())){
  6678. istrue_khmax=false;
  6679. }
  6680. }
  6681. // 内控标准下限
  6682. if(qsd.getNk_stdmin()!=null&&!qsd.getNk_stdmin().equals("")){
  6683. if(!judgeVal(phy, qsd.getNk_stdmin(), qsd.getNk_stdmin())){
  6684. istrue_nkmin=false;
  6685. }
  6686. }
  6687. // 内控标准上限
  6688. if(qsd.getNk_stdmax()!=null&&!qsd.getNk_stdmax().equals("")){
  6689. if(!judgeVal(phy, qsd.getNk_stdmax(), qsd.getNk_stdmax())){
  6690. istrue_nkmax=false;
  6691. }
  6692. }
  6693. }
  6694. }
  6695. // 一个必判项目不合格则不合格
  6696. if(!(istrue_jfmax&&istrue_jfmin&&istrue_khmax&&istrue_khmin&&istrue_nkmax&&istrue_nkmin)){
  6697. test=false;
  6698. }
  6699. // 插入QCM_PHY_RESULT
  6700. QcmPhyResult qpr=new QcmPhyResult();
  6701. qpr.setBatch_no(qd.getBatch_no());
  6702. qpr.setContract_line_no(qd.getContract_line_no());
  6703. qpr.setCreate_name("SYSTEM");
  6704. qpr.setCreate_time(new Date());
  6705. qpr.setGuid(java.util.UUID.randomUUID().toString().replace("-", ""));
  6706. qpr.setHeat_no(qd.getHeat_no());
  6707. qpr.setInspection_lot(qd.getInspection_lot());
  6708. qpr.setItem_code_d(qsd.getItem_code_d());
  6709. qpr.setItem_code_s(qsd.getItem_code_s());
  6710. qpr.setItem_code_t(qsd.getItem_code_t());
  6711. qpr.setItem_name_d(qsd.getItem_name_d());
  6712. qpr.setItem_name_s(qsd.getItem_name_s());
  6713. qpr.setItem_name_t(qsd.getItem_name_t());
  6714. qpr.setMaterial_no(qm.getMaterial_no());
  6715. qpr.setPhy_code_l(qsd.getPhy_code_l());
  6716. qpr.setPhy_code_m(qsd.getPhy_code_m());
  6717. qpr.setPhy_code_s(qsd.getPhy_code_s());
  6718. qpr.setPhy_id(phy_id);
  6719. qpr.setPhy_name_l(qsd.getPhy_name_l());
  6720. qpr.setPhy_name_m(qsd.getPhy_name_m());
  6721. qpr.setPhy_name_s(qsd.getPhy_name_s());
  6722. qpr.setSmp_no(qd.getSmp_no());
  6723. //插入检验实测值
  6724. // qpr.setVal1("");
  6725. //...
  6726. this.getMapper(QcmPhyResultMapper.class).insert(qpr);
  6727. }
  6728. // 判定合格
  6729. if(test){
  6730. qd.setJudge_status("1");
  6731. qd.setJudge_result_code("40740201");
  6732. qd.setJudge_result_desc("合格");
  6733. }
  6734. // 不合格
  6735. else{
  6736. qd.setJudge_status("1");
  6737. qd.setJudge_result_code("40740203");
  6738. qd.setJudge_result_desc("待处理");
  6739. }
  6740. // 插入QCM_JUDGE_PHYSICAL
  6741. QcmJudgePhysical qps=new QcmJudgePhysical();
  6742. qps.setBatch_no(qd.getBatch_no());
  6743. qps.setContract_line_no(qd.getContract_line_no());
  6744. qps.setDesign_key(qd.getDesign_key());
  6745. qps.setHeat_no(qd.getHeat_no());
  6746. qps.setInspection_lot(qd.getInspection_lot());
  6747. qps.setJudge_name("SYSTEM");
  6748. qps.setPhy_result_code(qd.getJudge_result_code());
  6749. qps.setPhy_result_desc(qd.getJudge_result_desc());
  6750. qps.setJudge_ttime(new Date());
  6751. qps.setPhy_memo("系统自动判定");
  6752. qps.setPhy_id(phy_id);
  6753. // qps.setPic_id(pic_id);
  6754. qps.setPline_code(qm.getPline_code());
  6755. qps.setPline_name(qm.getPline_name());
  6756. qps.setPsc(qd.getPsc());
  6757. qps.setSmp_no(qd.getSmp_no());
  6758. this.getMapper(QcmJudgePhysicalMapper.class).insert(qps);
  6759. // 获取材质结果集ID及材质判定记录号通过试样号更新试样号与合同信息关系表(QCM_JHY_SAMPLE_R_ORD.PHY_ID、PIC_ID)
  6760. qd.setPhy_id(phy_id);
  6761. // qd.setPic_id(pic_id);
  6762. this.getMapper(QcmJhySampleROrdMapper.class).update(qd);
  6763. }
  6764. }
  6765. }
  6766. rm.setState("200");
  6767. } catch (Exception e) {
  6768. rm.setState("500");
  6769. rm.setMsgInfo("自动判定失败!");
  6770. }
  6771. return rm;
  6772. }*/
  6773. /**
  6774. * Val 实绩值
  6775. * val 标准值
  6776. * valsign 标准值符号
  6777. * */
  6778. public boolean judgeVal(String Val,String val, String valsign) {
  6779. double A=Double.parseDouble(Val);
  6780. double B=Double.parseDouble(val);
  6781. if(valsign.equals(">")){
  6782. if(A>B){
  6783. return true;
  6784. }
  6785. else{
  6786. return false;
  6787. }
  6788. }
  6789. if(valsign.equals(">=")){
  6790. if(A>=B){
  6791. return true;
  6792. }
  6793. else{
  6794. return false;
  6795. }
  6796. }
  6797. if(valsign.equals("<")){
  6798. if(A<B){
  6799. return true;
  6800. }
  6801. else{
  6802. return false;
  6803. }
  6804. }
  6805. if(valsign.equals("<=")){
  6806. if(A<=B){
  6807. return true;
  6808. }
  6809. else{
  6810. return false;
  6811. }
  6812. }
  6813. return true;
  6814. }
  6815. /**综合判定-获取材质判定检验实绩信息
  6816. * */
  6817. public CoreReturnObject getPhySampleItem(String pic_id){
  6818. try {
  6819. if (SqlJoint.IsNullOrSpace(pic_id)) {
  6820. throw new Exception("请传入材质判定记录号");
  6821. }
  6822. String sql = "select * from QCM_JUDGE_PHYSICAL_UTM_D a where pic_id = '"+pic_id+"'";
  6823. List<QcmJudgePhysicalUtmD> listd = mapper.queryQcmJudgePhysicalUtmD(sql);
  6824. cro.setResult(listd);
  6825. } catch (Exception e) {
  6826. cro.setV_errCode(-1);
  6827. cro.setV_errMsg(e.getMessage());
  6828. SqlSession.rollback();
  6829. }
  6830. SqlSession.close();
  6831. return cro;
  6832. }
  6833. /** 出库
  6834. * 操作人、list<综合判定记录号>
  6835. **/
  6836. @SuppressWarnings({ "unused", "rawtypes", "unchecked" })
  6837. public CoreReturnObject ex_warehouse(String username,ArrayList<String> material_no_list,String prod_line,String prod_type) throws Exception{
  6838. try {
  6839. if(CollectionUtils.isEmpty(material_no_list)) {
  6840. throw new Exception("请选择要出库放行的产品序号!");
  6841. }
  6842. HashSet hashSet = new HashSet(material_no_list);
  6843. material_no_list.clear();
  6844. material_no_list.addAll(hashSet);
  6845. JSONArray ttmaps = new JSONArray();
  6846. for (String material_no : material_no_list) {
  6847. QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
  6848. qjog.setOperate_name(username);
  6849. qjog.setOperate_type("出库放行");
  6850. qjog.setParams(material_no);
  6851. qjog.setProd_line(prod_line);
  6852. mapper.insertQcmJudgeOperateLog(qjog);
  6853. JSONObject jsobj1 = new JSONObject();
  6854. jsobj1.put("PROD_LINE", prod_line);
  6855. jsobj1.put("SLAB_NO",material_no);
  6856. jsobj1.put("PROD_TYPE",prod_type);
  6857. jsobj1.put("OPTMAN", username);
  6858. jsobj1.put("ISFX","1");
  6859. ttmaps.add(jsobj1);
  6860. }
  6861. String url = "http://10.70.0.237:9000/LgdoChemJudgeService?wsdl";
  6862. String result = QcmJhyElementsServiceImpl.callWebserviceASMX(url,"IsFxChange",JSON.toJSONString(ttmaps));
  6863. JSONObject jo = JSONObject.parseObject(result);
  6864. if(jo.get("code").toString().equals("1")){
  6865. throw new Exception("出库放行失败!");
  6866. }
  6867. SqlSession.commit();
  6868. } catch (Exception e) {
  6869. SqlSession.rollback();
  6870. cro.setV_errCode(-1);
  6871. cro.setV_errMsg("出库放行失败!"+e.getMessage());
  6872. logger.info(new Date().toString() + " QCM.QCM03.QCM0302.QcmJudgePhysicalServiceImpl.ex_warehouse:【" + username+ "," + material_no_list.toString() + "," + prod_line + "," + prod_type + "】" + e);
  6873. }
  6874. SqlSession.close();
  6875. return cro;
  6876. }
  6877. /** 撤销出库
  6878. * 操作人、list<综合判定记录号>
  6879. **/
  6880. @SuppressWarnings({ "unused", "rawtypes" })
  6881. public CoreReturnObject cancel_ex_warehouse(String username,ArrayList<String> material_no_list,String prod_line,String prod_type) throws Exception{
  6882. try {
  6883. if(CollectionUtils.isEmpty(material_no_list)) {
  6884. throw new Exception("请选择要撤销出库放行的产品序号!");
  6885. }
  6886. HashSet hashSet = new HashSet(material_no_list);
  6887. material_no_list.clear();
  6888. material_no_list.addAll(hashSet);
  6889. JSONArray ttmaps = new JSONArray();
  6890. for (String material_no : material_no_list) {
  6891. QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
  6892. qjog.setOperate_name(username);
  6893. qjog.setOperate_type("撤销出库放行");
  6894. qjog.setParams(material_no);
  6895. qjog.setProd_line(prod_line);
  6896. mapper.insertQcmJudgeOperateLog(qjog);
  6897. JSONObject jsobj1 = new JSONObject();
  6898. jsobj1.put("PROD_LINE", prod_line);
  6899. jsobj1.put("SLAB_NO",material_no);
  6900. jsobj1.put("PROD_TYPE",prod_type);
  6901. jsobj1.put("ISFX","0");
  6902. ttmaps.add(jsobj1);
  6903. }
  6904. String url = "http://10.70.0.237:9000/LgdoChemJudgeService?wsdl";
  6905. String result = QcmJhyElementsServiceImpl.callWebserviceASMX(url,"IsFxChange",JSON.toJSONString(ttmaps));
  6906. JSONObject jo = JSONObject.parseObject(result);
  6907. if(jo.get("code").toString().equals("1")){
  6908. throw new Exception("撤销出库放行失败!");
  6909. }
  6910. SqlSession.commit();
  6911. } catch (Exception e) {
  6912. SqlSession.rollback();
  6913. cro.setV_errCode(-1);
  6914. cro.setV_errMsg("撤销出库放行失败!"+e.getMessage());
  6915. logger.info(new Date().toString() + " QCM.QCM03.QCM0302.QcmJudgePhysicalServiceImpl.cancel_ex_warehouse:【" + username+ "," + material_no_list.toString() + "," + prod_line + "," + prod_type + "】" + e);
  6916. }
  6917. SqlSession.close();
  6918. return cro;
  6919. }
  6920. /** 综合判定-取消综合判定按钮
  6921. * 操作人、list<综合判定记录号>
  6922. **/
  6923. @SuppressWarnings({ "unused", "rawtypes" })
  6924. public String cancelUltimateJudgeByMes(String username,String material_no,String utm_id) throws Exception{
  6925. try {
  6926. String sql = "";
  6927. sql = "select * from zj_result_all@xgcx where BILLETID = '"+material_no+"'";
  6928. List<HashMap> list1 = mapper.query(sql);
  6929. sql = "select * from QCM_JUDGE_COIL_RESULT where coil_no = '"+material_no+"'";
  6930. List<HashMap> list2 = mapper.query(sql);
  6931. //库存表放
  6932. List<QcmJudgeUltimate> qju = mapper.QcmJudgeUltimate("select * from Qcm_Judge_Ultimate where utm_id = '"+utm_id+"'");
  6933. String inspection_lot = "";
  6934. if(list1.size() >0 || list2.size() >0){
  6935. if(list1.size()>0){
  6936. if(list1.get(0).get("BILLETID_JY")==null || list1.get(0).get("BILLETID_JY").toString().equals("") ){
  6937. if(qju.size() > 0){
  6938. inspection_lot = qju.get(0).getInspection_lot();
  6939. }
  6940. }else{
  6941. inspection_lot = list1.get(0).get("BILLETID_JY").toString();
  6942. }
  6943. String design_key = qju.get(0).getDesign_key() == null?"":qju.get(0).getDesign_key().toString();
  6944. mapper.clearJUDGERESULT(material_no,inspection_lot);
  6945. canceljudge_call(material_no,design_key);
  6946. /*String steelname = hashmap.get(0).get("STEEL_NAME")==null?"":hashmap.get(0).get("STEEL_NAME").toString();
  6947. String phyid = list1.get(0).get("PHYSID")==null?"":list1.get(0).get("PHYSID").toString();
  6948. sql= "select max(t.steel_name) steel_name from qcm_judge_physical t where t.phy_id in (select phy_id from qcm_judge_physical_utm_d d where d.pic_id = '"+phyid+"')";
  6949. List<HashMap> liststeel = mapper.query(sql);
  6950. if(liststeel != null && liststeel.size() >0 ){
  6951. steelname = liststeel.get(0).get("STEEL_NAME").toString();
  6952. }
  6953. judge_call(hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString(),hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString(),hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString(),hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString(),hashmap.get(0).get("PSC")==null?"":hashmap.get(0).get("PSC").toString(),"","","","","",material_no,username,"","","","",steelname);*/
  6954. }else{
  6955. List<HashMap> hashmap = mapper.doQueryMaterialInfoY(material_no);
  6956. if(list2.get(0).get("INSPECTION_LOT")==null){
  6957. inspection_lot = qju.get(0).getInspection_lot();
  6958. }else{
  6959. inspection_lot = list2.get(0).get("INSPECTION_LOT").toString();
  6960. }
  6961. mapper.clearJUDGERESULT1(material_no,inspection_lot);
  6962. coiljudge_status_call(hashmap.get(0).get("PLINE_CODE").toString(), material_no, null, null, null, null, "D", null, null,"");
  6963. }
  6964. }else{
  6965. return "未找到库存信息!";
  6966. }
  6967. QcmJudgeOperateLog qjol = new QcmJudgeOperateLog();
  6968. qjol.setOperate_name(username);
  6969. qjol.setOperate_type("QCM.QCM03.QCM0302.QcmJudgePhysicalServiceImpl.cancelUltimateJudgeByMes");
  6970. qjol.setParams( username+"-"+material_no+"-"+utm_id);
  6971. mapper.insertQcmJudgeOperateLog(qjol);
  6972. SqlSession.commit();
  6973. } catch (Exception e) {
  6974. SqlSession.rollback();
  6975. logger.info(new Date().toString() + " QCM.QCM03.QCM0302.QcmJudgePhysicalServiceImpl.cancelUltimateJudgeByMes:【" + username + "," + material_no + "】" + e);
  6976. return "取消综合判定失败";
  6977. }
  6978. SqlSession.close();
  6979. return "取消成功";
  6980. }
  6981. /** 综合判定-取消综合判定按钮
  6982. * 操作人、list<综合判定记录号>
  6983. **/
  6984. @SuppressWarnings({ "unused", "rawtypes" })
  6985. public CoreReturnObject cancelUltimateJudge(String username,String material_no,String utm_id,String remark) throws Exception{
  6986. try {
  6987. String sql = "";
  6988. sql = "select * from zj_result_all@xgcx where BILLETID = '"+material_no+"' and judgeresult <> '0'";
  6989. List<HashMap> list1 = mapper.query(sql);
  6990. sql = "select * from QCM_JUDGE_COIL_RESULT where coil_no = '"+material_no+"' and judgeresult <> '0'";
  6991. List<HashMap> list2 = mapper.query(sql);
  6992. sql = "select * from QCM_JUDGE_YT_COIL_RESULT where coil_no = '"+material_no+"' and judgeresult <> '0'";
  6993. List<HashMap> list3 = mapper.query(sql);
  6994. if(list1.size() >0){
  6995. if(list1.get(0).get("JUDGERESULT").equals("4")){
  6996. throw new Exception("已判废品,不可操作!");
  6997. }
  6998. }else if(list2.size() >0){
  6999. if(list2.get(0).get("JUDGERESULT").equals("4")){
  7000. throw new Exception("已判废品,不可操作!");
  7001. }
  7002. }else if(list3.size() >0){
  7003. if(list3.get(0).get("JUDGERESULT").equals("4")){
  7004. throw new Exception("已判废品,不可操作!");
  7005. }
  7006. }
  7007. //库存表放
  7008. List<QcmJudgeUltimate> qju = mapper.QcmJudgeUltimate("select * from Qcm_Judge_Ultimate where utm_id = '"+utm_id+"'");
  7009. String inspection_lot = "";
  7010. if(list1.size() >0 || list2.size() >0 || list3.size() >0){
  7011. if(list1.size()>0){
  7012. if(list1.get(0).get("BILLETID_JY")==null || list1.get(0).get("BILLETID_JY").toString().equals("") ){
  7013. if(qju.size() > 0){
  7014. inspection_lot = qju.get(0).getInspection_lot() == null?"":qju.get(0).getInspection_lot();
  7015. }
  7016. }else{
  7017. inspection_lot = list1.get(0).get("BILLETID_JY")==null?"":list1.get(0).get("BILLETID_JY").toString();
  7018. }
  7019. String design_key = qju.get(0).getDesign_key() == null?"":qju.get(0).getDesign_key().toString();
  7020. mapper.clearJUDGERESULT(material_no,inspection_lot);
  7021. canceljudge_call(material_no,design_key);
  7022. //取消申报
  7023. if(material_no.startsWith("H") || material_no.startsWith("Z")){
  7024. mapper.cancelLoad(material_no,username,remark);
  7025. }
  7026. /*String steelname = hashmap.get(0).get("STEEL_NAME")==null?"":hashmap.get(0).get("STEEL_NAME").toString();
  7027. String phyid = list1.get(0).get("PHYSID")==null?"":list1.get(0).get("PHYSID").toString();
  7028. sql= "select max(t.steel_name) steel_name from qcm_judge_physical t where t.phy_id in (select phy_id from qcm_judge_physical_utm_d d where d.pic_id = '"+phyid+"')";
  7029. List<HashMap> liststeel = mapper.query(sql);
  7030. if(liststeel != null && liststeel.size() >0 ){
  7031. steelname = liststeel.get(0).get("STEEL_NAME").toString();
  7032. }
  7033. judge_call(hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString(),hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString(),hashmap.get(0).get("STD_CODE")==null?"":hashmap.get(0).get("STD_CODE").toString(),hashmap.get(0).get("PROD_CODE")==null?"":hashmap.get(0).get("PROD_CODE").toString(),hashmap.get(0).get("PSC")==null?"":hashmap.get(0).get("PSC").toString(),"","","","","",material_no,username,"","","","",steelname);*/
  7034. }else if(list2.size() >0){
  7035. List<HashMap> hashmap = doQueryMaterialInfoJ(material_no);
  7036. if(hashmap.get(0).get("DESIGN_KEY") == null){
  7037. throw new Exception("该物料无订单,不能取消综判!");
  7038. }
  7039. if(list2.get(0).get("INSPECTION_LOT")==null){
  7040. inspection_lot = qju.get(0).getInspection_lot()== null?"":qju.get(0).getInspection_lot();
  7041. }else{
  7042. inspection_lot = list2.get(0).get("INSPECTION_LOT")==null?"":list2.get(0).get("INSPECTION_LOT").toString();
  7043. }
  7044. mapper.clearJUDGERESULT1(material_no,inspection_lot);
  7045. coiljudge_status_call(qju.get(0).getPline_code(), material_no, null, null, null, null, "D", null, null,"");
  7046. }else{
  7047. List<HashMap> hashmap = mapper.doQueryMaterialInfoY(material_no);
  7048. if(list3.get(0).get("INSPECTION_LOT")==null){
  7049. inspection_lot = qju.get(0).getInspection_lot()== null?"":qju.get(0).getInspection_lot();
  7050. }else{
  7051. inspection_lot = list3.get(0).get("INSPECTION_LOT")==null?"":list3.get(0).get("INSPECTION_LOT").toString();
  7052. }
  7053. mapper.clearJUDGERESULT2(material_no,inspection_lot);
  7054. String url = "http://172.16.81.200/xinsteel.maketx/service/SlmFundFirstDetailService/cancelReceiveUltimate";
  7055. JSONObject jsobj1 = new JSONObject();
  7056. JSONObject jsobj2 = new JSONObject();
  7057. JSONArray ttmaps = new JSONArray();
  7058. JSONArray ttmaps1 = new JSONArray();
  7059. jsobj1.put("utm_id", utm_id);
  7060. jsobj1.put("material_no", material_no);
  7061. jsobj2.put("object", jsobj1);
  7062. ttmaps1.add(jsobj2);
  7063. String result = post1(JSON.toJSONString(ttmaps1),url);
  7064. JSONObject jo = JSONObject.parseObject(result);
  7065. if(!"200".equals(jo.get("state").toString())){
  7066. throw new Exception(jo.get("msgInfo").toString());
  7067. }
  7068. QcmJudgeLog qjlt = new QcmJudgeLog();
  7069. qjlt.setJudge_type("R");
  7070. qjlt.setMaterial_no(material_no);
  7071. qjlt.setCreate_name("system");
  7072. qjlt.setProd_line(hashmap.get(0).get("PLINE_CODE").toString());
  7073. mapper.insertQcmJudgeLog(qjlt);
  7074. }
  7075. }else{
  7076. throw new Exception("未找到库存信息或该物料号未处于综合判定状态!");
  7077. }
  7078. mapper.CancelUltimate(utm_id, remark,username);
  7079. QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
  7080. qjog.setOperate_name(username);
  7081. qjog.setOperate_type("取消综合判定");
  7082. qjog.setParams(material_no);
  7083. qjog.setBatchno(qju.get(0).getBatch_no());
  7084. qjog.setProd_line(qju.get(0).getPline_code());
  7085. qjog.setMemo(remark);
  7086. mapper.insertQcmJudgeOperateLog(qjog);
  7087. SqlSession.commit();
  7088. } catch (Exception e) {
  7089. SqlSession.rollback();
  7090. cro.setV_errCode(-1);
  7091. cro.setV_errMsg("取消综合判定失败!"+e.getMessage());
  7092. logger.info(new Date().toString() + " QCM.QCM03.QCM0302.QcmJudgePhysicalServiceImpl.cancelUltimateJudge:【" + username + "," + material_no + "】" + e);
  7093. }
  7094. SqlSession.close();
  7095. return cro;
  7096. }
  7097. /** 综合判定-取消综合判定按钮
  7098. * 操作人、list<综合判定记录号>
  7099. **/
  7100. @SuppressWarnings({ "unused", "rawtypes", "unchecked" })
  7101. public CoreReturnObject cancelLgUltimateJudge(String username,ArrayList<String> material_no_list, String again_judge_type) throws Exception{
  7102. try {
  7103. QcmJhyElementsServiceImpl qjes = new QcmJhyElementsServiceImpl();
  7104. if(CollectionUtils.isEmpty(material_no_list)) {
  7105. throw new Exception("请选择要判定的产品序号!");
  7106. }
  7107. for (String material_no : material_no_list) {
  7108. String sql = "select * from qcm_judge_ultimate where material_no = '"+material_no+"' order by judge_time desc";
  7109. List<HashMap> list1 = mapper.query(sql);
  7110. if(list1.size() > 0){
  7111. if(list1.get(0).get("UTM_RESULT_CODE").equals("4")){
  7112. throw new Exception("已判废品,不可操作!");
  7113. }
  7114. }
  7115. }
  7116. for (String material_no : material_no_list) {
  7117. List<QcmJudgeUltimate> qju = mapper.QcmJudgeUltimate("select * from qcm_judge_ultimate where material_no = '"+material_no+"' order by judge_time desc");
  7118. if(CollectionUtils.isEmpty(qju)) {
  7119. throw new Exception("产品序号: " + material_no + "综判记录不存在!");
  7120. }
  7121. if(/*"方坯".equals(qju.get(0).getProd_name()) && */"4001LG0".equals(qju.get(0).getPline_code()) && !SqlJoint.IsNullOrSpace(again_judge_type) && ("成分".equals(again_judge_type) || "成分表面".equals(again_judge_type))) {
  7122. List<HashMap> hashmap = (List<HashMap>) qjes.getLgjudgeInfobyMaterial_no1("", "", "('" + material_no + "')", qju.get(0).getPline_code(), qju.get(0).getProd_name(), "J").getResult();
  7123. if (hashmap.size() == 0) {
  7124. throw new Exception("未找到产品序号" + material_no + "的数据!");
  7125. }
  7126. QCMJudgeLocking qjb = new QCMJudgeLocking();
  7127. int count = 0;
  7128. String condition = " and MATERIAL_NO = '" + material_no + "' order by LOCK_SEQ desc ";
  7129. List<QCMJudgeLocking> qjl = mapper.queryQCMJudgeLocking(condition);
  7130. if (qjl.size() > 0) {
  7131. count = qjl.get(0).getLock_seq();
  7132. }
  7133. count++;
  7134. //锁定记录号
  7135. int lock_seq = count;
  7136. qjb.setMaterial_no(material_no);
  7137. qjb.setLock_type_code("C");
  7138. qjb.setLock_id(qju.get(0).getR_cic_id());
  7139. qjb.setLock_type_desc("成分判定");
  7140. qjb.setLock_seq(lock_seq);
  7141. qjb.setLock_memo("人工锁定");
  7142. qjb.setBoard_no(material_no);
  7143. qjb.setPline_code("");
  7144. qjb.setPline_name("");
  7145. qjb.setLock_name(username);
  7146. qjb.setCic_locking("1");
  7147. qjb.setLock_time(new Date());
  7148. qjb.setHeat_no(hashmap.get(0).get("heat_no") == null ? "" : hashmap.get(0).get("heat_no").toString());
  7149. qjb.setBatch_no(hashmap.get(0).get("material_no") == null ? "" : hashmap.get(0).get("material_no").toString());
  7150. qjb.setBoard_no("");
  7151. qjb.setPlan_no("");
  7152. qjb.setHt_no("");
  7153. qjb.setDesign_key(hashmap.get(0).get("design_key").toString());
  7154. qjb.setPsc("");
  7155. qjb.setPline_code(hashmap.get(0).get("pline_code").toString());
  7156. qjb.setPline_name(hashmap.get(0).get("pline_name").toString());
  7157. qjb.setPsc_desc("");
  7158. qjb.setStd_code(hashmap.get(0).get("std_name").toString());
  7159. qjb.setStd_name(hashmap.get(0).get("std_name").toString());
  7160. qjb.setProd_code("");
  7161. qjb.setProd_name(hashmap.get(0).get("prod_name").toString());
  7162. qjb.setSteel_code(hashmap.get(0).get("grade_name").toString());
  7163. qjb.setSteel_name(hashmap.get(0).get("grade_name").toString());
  7164. //插入异常锁定表
  7165. mapper.insertQCMJudgeLocking(qjb);
  7166. }
  7167. else if("4001LGX".equals(qju.get(0).getPline_code()) && !SqlJoint.IsNullOrSpace(again_judge_type) && ("成分".equals(again_judge_type) || "成分表面".equals(again_judge_type))){
  7168. List<HashMap> hashmap = (List<HashMap>) qjes.getLgjudgeInfobyMaterial_no1("", "", "('" + material_no + "')", qju.get(0).getPline_code(), qju.get(0).getProd_name(), "J").getResult();
  7169. if (hashmap.size() == 0) {
  7170. throw new Exception("未找到产品序号" + material_no + "的数据!");
  7171. }
  7172. QCMJudgeLocking qjb = new QCMJudgeLocking();
  7173. int count = 0;
  7174. String condition = " and MATERIAL_NO = '" + material_no + "' order by LOCK_SEQ desc ";
  7175. List<QCMJudgeLocking> qjl = mapper.queryQCMJudgeLocking(condition);
  7176. if (qjl.size() > 0) {
  7177. count = qjl.get(0).getLock_seq();
  7178. }
  7179. count++;
  7180. //锁定记录号
  7181. int lock_seq = count;
  7182. qjb.setMaterial_no(material_no);
  7183. qjb.setLock_type_code("C");
  7184. qjb.setLock_id(qju.get(0).getR_cic_id());
  7185. qjb.setLock_type_desc("成分判定");
  7186. qjb.setLock_seq(lock_seq);
  7187. qjb.setLock_memo("人工锁定");
  7188. qjb.setBoard_no(material_no);
  7189. qjb.setPline_code("");
  7190. qjb.setPline_name("");
  7191. qjb.setLock_name(username);
  7192. qjb.setCic_locking("1");
  7193. qjb.setLock_time(new Date());
  7194. qjb.setHeat_no(hashmap.get(0).get("heat_no") == null ? "" : hashmap.get(0).get("heat_no").toString());
  7195. qjb.setBatch_no(hashmap.get(0).get("material_no") == null ? "" : hashmap.get(0).get("material_no").toString());
  7196. qjb.setBoard_no("");
  7197. qjb.setPlan_no("");
  7198. qjb.setHt_no("");
  7199. qjb.setDesign_key(hashmap.get(0).get("design_key").toString());
  7200. qjb.setPsc("");
  7201. qjb.setPline_code(hashmap.get(0).get("pline_code").toString());
  7202. qjb.setPline_name(hashmap.get(0).get("pline_name").toString());
  7203. qjb.setPsc_desc("");
  7204. qjb.setStd_code(hashmap.get(0).get("std_name").toString());
  7205. qjb.setStd_name(hashmap.get(0).get("std_name").toString());
  7206. qjb.setProd_code("");
  7207. qjb.setProd_name(hashmap.get(0).get("prod_name").toString());
  7208. qjb.setSteel_code(hashmap.get(0).get("grade_name").toString());
  7209. qjb.setSteel_name(hashmap.get(0).get("grade_name").toString());
  7210. //插入异常锁定表
  7211. mapper.insertQCMJudgeLocking(qjb);
  7212. }
  7213. QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
  7214. qjog.setOperate_name(username);
  7215. qjog.setOperate_type("取消炼钢综合判定");
  7216. qjog.setParams(material_no);
  7217. qjog.setProd_line(qju.get(0).getPline_code());
  7218. mapper.insertQcmJudgeOperateLog(qjog);
  7219. }
  7220. cro.setV_errCode(1);
  7221. JSONArray ttmaps = new JSONArray();
  7222. JSONArray ttmaps2 = new JSONArray();//成分
  7223. JSONArray ttmaps3 = new JSONArray();//表面
  7224. for (String material_no : material_no_list) {
  7225. List<QcmJudgeUltimate> qju = mapper.QcmJudgeUltimate("select * from qcm_judge_ultimate where material_no = '"+material_no+"' order by judge_time desc");
  7226. //调用综合判定接口
  7227. JSONObject jsobj1 = new JSONObject();
  7228. JSONObject jsobj2 = new JSONObject();//成分
  7229. JSONObject jsobj3 = new JSONObject();//表面
  7230. jsobj1.put("CHEMRESULT_LK", "");
  7231. jsobj1.put("FACERESULT","");
  7232. jsobj1.put("COMPREHENSIVERESULT","");
  7233. jsobj1.put("CHEMJUDGEID","");
  7234. jsobj1.put("FACECHECKID","");
  7235. jsobj1.put("COMPREHENSIVEID","");
  7236. jsobj1.put("JUDGE_TYPE","J");
  7237. jsobj1.put("PROD_LINE",qju.get(0).getPline_code());
  7238. jsobj1.put("ISJUDGE","0");
  7239. jsobj1.put("PROD_TYPE",qju.get(0).getProd_name());
  7240. jsobj1.put("SLAB_NO",material_no);
  7241. jsobj1.put("CHECKNO","");
  7242. jsobj1.put("OPTMAN", username);
  7243. jsobj1.put("ISFX", "1");
  7244. jsobj1.put("CHEMRESULT_FX", "");
  7245. jsobj2 = (JSONObject) jsobj1.clone();
  7246. jsobj2.put("JUDGE_TYPE","C");
  7247. jsobj3 = (JSONObject) jsobj1.clone();
  7248. jsobj3.put("JUDGE_TYPE","S");
  7249. ttmaps.add(jsobj1);
  7250. ttmaps2.add(jsobj2);
  7251. ttmaps3.add(jsobj3);
  7252. }
  7253. String url = "http://10.70.0.237:9000/LgdoChemJudgeService?wsdl";
  7254. String result = qjes.callWebserviceASMX(url,"ChemJudge",JSON.toJSONString(ttmaps));
  7255. JSONObject jo = JSONObject.parseObject(result);
  7256. if(jo.get("code").toString().equals("1")){
  7257. throw new Exception(jo.get("message").toString());
  7258. }
  7259. if(!SqlJoint.IsNullOrSpace(again_judge_type) && ("成分".equals(again_judge_type) || "成分表面".equals(again_judge_type))) {
  7260. result = qjes.callWebserviceASMX(url,"ChemJudge",JSON.toJSONString(ttmaps2));
  7261. jo = JSONObject.parseObject(result);
  7262. if(jo.get("code").toString().equals("1")){
  7263. throw new Exception(jo.get("message").toString());
  7264. }
  7265. }
  7266. if(!SqlJoint.IsNullOrSpace(again_judge_type) && ("表面".equals(again_judge_type) || "成分表面".equals(again_judge_type))) {
  7267. result = qjes.callWebserviceASMX(url,"ChemJudge",JSON.toJSONString(ttmaps3));
  7268. jo = JSONObject.parseObject(result);
  7269. if(jo.get("code").toString().equals("1")){
  7270. throw new Exception(jo.get("message").toString());
  7271. }
  7272. }
  7273. SqlSession.commit();
  7274. } catch (Exception e) {
  7275. SqlSession.rollback();
  7276. cro.setV_errCode(-1);
  7277. cro.setV_errMsg("取消综合判定失败!"+e.getMessage());
  7278. logger.info(new Date().toString() + " QCM.QCM03.QCM0302.QcmJudgePhysicalServiceImpl.cancelLgUltimateJudge:【" + username + "," + material_no_list.toString() + "," + again_judge_type + "】" + e);
  7279. }
  7280. SqlSession.close();
  7281. return cro;
  7282. }
  7283. /**
  7284. * 查询综合判定判定记录信息
  7285. * Coilno 产品序号
  7286. * Utm_result_desc 判定结果名称
  7287. * StartTime 开始时间
  7288. * EndTime 结束时间
  7289. * PageIndex 页码
  7290. * PageSize 显示条数
  7291. * @param sum
  7292. * @return
  7293. */
  7294. @SuppressWarnings("unused")
  7295. public CoreReturnObject getDecisionRecodeSample(String begintime,String endtime,String sbatchno,String ebatchno,String design_key,String psc){
  7296. try {
  7297. String connect="";
  7298. if (!SqlJoint.IsNullOrSpace(psc)){
  7299. connect+="and t.psc ='"+psc+"'";
  7300. }
  7301. if (!SqlJoint.IsNullOrSpace(design_key)){
  7302. connect+="and t.design_key ='"+design_key+"'";
  7303. }
  7304. if (!SqlJoint.IsNullOrSpace(sbatchno)){
  7305. connect+="and t.batch_no >='"+sbatchno+"'";
  7306. }
  7307. if (!SqlJoint.IsNullOrSpace(ebatchno)){
  7308. connect+="and t.batch_no <= '"+ebatchno+"'";
  7309. }
  7310. if(begintime!=null&&!begintime.equals("")){
  7311. connect+=" and t.judge_time >=to_date(concat('"+begintime+"',' 00:00:00'),'yyyy-MM-dd HH24:mi:ss')";
  7312. }
  7313. if(endtime!=null&&!endtime.equals("")){
  7314. connect+=" and t.judge_time <=to_date(concat('"+endtime+"',' 23:59:59'),'yyyy-MM-dd HH24:mi:ss') ";
  7315. }
  7316. System.out.println(connect);
  7317. String sql = "select * from QCM_JUDGE_ULTIMATE where 1=1 "+connect+"";
  7318. List<QcmJudgeUltimate> list = mapper.QcmJudgeUltimate(sql);
  7319. } catch (Exception e) {
  7320. cro.setV_errCode(-1);
  7321. cro.setV_errMsg("查询失败"+e.getMessage());
  7322. SqlSession.rollback();
  7323. }
  7324. SqlSession.close();
  7325. return cro;
  7326. }
  7327. /**
  7328. * 查询判定结果明细
  7329. */
  7330. public CoreReturnObject querryJudgeResult(String pic_id) {
  7331. try{
  7332. List<HashMap> qjpud = mapper.query("select phy_id,judge_result_desc,smp_type_name,cert_inst_name from qcm_judge_physical_utm_d where pic_id = '"+pic_id+"'");
  7333. cro.setResult(qjpud);
  7334. }catch(Exception ex){
  7335. cro.setV_errCode(-1);
  7336. cro.setV_errMsg("查询失败"+ex.getMessage());
  7337. SqlSession.rollback();
  7338. }
  7339. SqlSession.close();
  7340. return cro;
  7341. }
  7342. /**
  7343. * 查询判定信息的检测值
  7344. */
  7345. public CoreReturnObject querryJudgetItem(String pic_id) {
  7346. try {
  7347. List<QcmJhySampleConsignDItem> targets=new ArrayList<QcmJhySampleConsignDItem>();
  7348. List<QcmJudgePhysicalUtmD> qjpud = mapper.queryQcmJudgePhysicalUtmD("select * from qcm_judge_physical_utm_d where pic_id = '"+pic_id+"'");
  7349. for(QcmJudgePhysicalUtmD qjp : qjpud){
  7350. List<QcmJudgePhysical> list = mapper.queryQcmJudgePhysical("select * from QCM_JUDGE_PHYSICAL where phy_id = '"+qjp.getPhy_id()+"'");
  7351. List<QcmJhySampleConsignD> qd = mapper.findQcmJhySampleConsignD2(list.get(0).getSmp_no());
  7352. List<QcmJhySampleROrd> qrd = mapper.queryQcmJhySampleROrd1("select * from qcm_jhy_sample_r_ord where smp_no ='"+list.get(0).getSmp_no()+"'");
  7353. List<QcmOrdDesignStdPic> itemAll = new ArrayList<QcmOrdDesignStdPic>();
  7354. List<QcmOrdDesignStdPic> pic = new ArrayList<QcmOrdDesignStdPic>();
  7355. if(list.get(0).getPline_code().equals("LT1")){
  7356. pic = mapper.findQcmOrdDesignStdPic2(list.get(0).getDesign_key(),list.get(0).getSteel_name().equals("SWRH82B-YL-Ⅰ")?"SWRH82B-YL":list.get(0).getSteel_name(),"LT1");
  7357. }else if(list.get(0).getPline_code().equals("RZ1")){
  7358. pic = mapper.findQcmOrdDesignStdPic2(list.get(0).getDesign_key(),list.get(0).getSteel_name().equals("SWRH82B-YL-Ⅰ")?"SWRH82B-YL":list.get(0).getSteel_name(),"RZ1");
  7359. }else if(list.get(0).getPline_code().equals("YT1")){
  7360. pic = mapper.findQcmOrdDesignStdPic2(list.get(0).getDesign_key(),list.get(0).getSteel_name().equals("SWRH82B-YL-Ⅰ")?"SWRH82B-YL":list.get(0).getSteel_name(),"YT1");
  7361. }else
  7362. {
  7363. pic = mapper.findQcmOrdDesignStdPic(list.get(0).getDesign_key(),list.get(0).getSteel_name().equals("SWRH82B-YL-Ⅰ")?"SWRH82B-YL":list.get(0).getSteel_name());
  7364. }
  7365. itemAll.addAll(pic);
  7366. String oldProject = null;
  7367. String newProject = null;
  7368. String oldProject1 = null;
  7369. for (QcmJhySampleConsignD qcmJhySampleConsignD : qd) {
  7370. List<QcmJhySampleConsignDItem> items = mapper.findQcmJhySampleConsignDItem(qcmJhySampleConsignD.getSpecimen_no());
  7371. for (QcmJhySampleConsignDItem qi : items) {
  7372. String sql = "select * from qcm_judge_physical_result where phy_id = '"+qjp.getPhy_id()+"' and specimen_no || guid in (select z.specimen_no || z.guid from qcm_jhy_insp_physics z where z.specimen_no = '"+qi.getSpecimen_no()+"' and z.seq = '"+qi.getSeq()+"')";
  7373. List<QcmJudgePhysicalResult> listz = mapper.queryQcmJudgePhysicalResult(sql);
  7374. if(listz.size() == 0){
  7375. continue;
  7376. }
  7377. oldProject = qi.getPhy_code_l() + qi.getPhy_code_m() + qi.getPhy_code_s() + qi.getItem_code_d()
  7378. + qi.getItem_code_s() + qi.getItem_code_t()+qrd.get(0).getPsc();
  7379. oldProject1 = qi.getPhy_code_l() + qi.getPhy_code_m() + qi.getPhy_code_s() + qi.getItem_code_d()
  7380. + qi.getItem_code_s() + qi.getItem_code_t();
  7381. //获取标准
  7382. for (QcmOrdDesignStdPic si : itemAll) {
  7383. newProject = si.getPhy_code_l() + si.getPhy_code_m() + si.getPhy_code_s() + si.getItem_code_d()
  7384. + si.getItem_code_s() + si.getItem_code_t()+si.getPsc();
  7385. if (oldProject.equals(newProject)) {
  7386. if ("0".equals(si.getSpecl_fl())) {
  7387. qi.setJf_stdmax(si.getStdmax());
  7388. qi.setJf_stdmax((si.getStdmax_sign()==null?"":si.getStdmax_sign())+(si.getStdmax()==null?"":si.getStdmax()));
  7389. qi.setJf_stdmin(si.getStdmin());
  7390. qi.setJf_stdmin((si.getStdmin_sign()==null?"":si.getStdmin_sign())+(si.getStdmin()==null?"":si.getStdmin()));
  7391. qi.setJudge_basis(si.getJudge_basis());
  7392. qi.setIsjudge(si.getIsjudge());
  7393. qi.setQuote_consign_no(qcmJhySampleConsignD.getQuote_consign_no());
  7394. qi.setOld_consign_no(qcmJhySampleConsignD.getOld_consign_no());
  7395. } else if ("1".equals(si.getSpecl_fl())) {
  7396. qi.setKh_stdmax(si.getStdmax());
  7397. qi.setKh_stdmax((si.getStdmax_sign()==null?"":si.getStdmax_sign())+(si.getStdmax()==null?"":si.getStdmax()));
  7398. qi.setKh_stdmin(si.getStdmin());
  7399. qi.setKh_stdmin((si.getStdmin_sign()==null?"":si.getStdmin_sign())+(si.getStdmin()==null?"":si.getStdmin()));
  7400. qi.setJudge_basis(si.getJudge_basis());
  7401. qi.setIsjudge(si.getIsjudge());
  7402. qi.setQuote_consign_no(qcmJhySampleConsignD.getQuote_consign_no());
  7403. qi.setOld_consign_no(qcmJhySampleConsignD.getOld_consign_no());
  7404. } else if ("2".equals(si.getSpecl_fl())) {
  7405. qi.setNk_stdmax((si.getStdmax_sign()==null?"":si.getStdmax_sign())+(si.getStdmax()==null?"":si.getStdmax()));
  7406. qi.setNk_stdmax_sign(si.getStdmax_sign());
  7407. qi.setNk_stdmin((si.getStdmin_sign()==null?"":si.getStdmin_sign())+(si.getStdmin()==null?"":si.getStdmin()));
  7408. qi.setNk_stdmin_sign(si.getStdmin_sign());
  7409. qi.setJudge_basis(si.getJudge_basis());
  7410. qi.setIsjudge(si.getIsjudge());
  7411. qi.setQuote_consign_no(qcmJhySampleConsignD.getQuote_consign_no());
  7412. qi.setOld_consign_no(qcmJhySampleConsignD.getOld_consign_no());
  7413. }else if ("3".equals(si.getSpecl_fl())) {
  7414. qi.setFx_stdmax((si.getStdmax_sign()==null?"":si.getStdmax_sign())+(si.getStdmax()==null?"":si.getStdmax()));
  7415. qi.setFx_stdmax_sign(si.getStdmax_sign());
  7416. qi.setFx_stdmin((si.getStdmin_sign()==null?"":si.getStdmin_sign())+(si.getStdmin()==null?"":si.getStdmin()));
  7417. qi.setFx_stdmin_sign(si.getStdmin_sign());
  7418. qi.setJudge_basis(si.getJudge_basis());
  7419. qi.setIsjudge(si.getIsjudge());
  7420. qi.setQuote_consign_no(qcmJhySampleConsignD.getQuote_consign_no());
  7421. qi.setOld_consign_no(qcmJhySampleConsignD.getOld_consign_no());
  7422. }
  7423. else if ("4".equals(si.getSpecl_fl())) {
  7424. qi.setNk_stdmax(si.getStdmax());
  7425. qi.setNk_stdmax_sign(si.getStdmax_sign());
  7426. qi.setNk_stdmin(si.getStdmin());
  7427. qi.setNk_stdmin_sign(si.getStdmin_sign());
  7428. qi.setJudge_basis(si.getJudge_basis());
  7429. qi.setIsjudge(si.getIsjudge());
  7430. qi.setQuote_consign_no(qcmJhySampleConsignD.getQuote_consign_no());
  7431. qi.setOld_consign_no(qcmJhySampleConsignD.getOld_consign_no());
  7432. }
  7433. }
  7434. if(qi.getJudge_basis() != null)
  7435. {
  7436. if(qi.getJudge_basis().equals("A")){
  7437. qi.setJudge_basis("最小值");
  7438. }else if(qi.getJudge_basis().equals("B")){
  7439. qi.setJudge_basis("最大值");
  7440. }else if(qi.getJudge_basis().equals("C")){
  7441. qi.setJudge_basis("平均值");
  7442. }else if(qi.getJudge_basis().equals("D")){
  7443. qi.setJudge_basis("逐值判定");
  7444. }
  7445. }
  7446. }
  7447. //获取实测值
  7448. List<QcmJudgePhysicalResult> qpt = mapper.findphyresults(qi.getSpecimen_no(),qjp.getPhy_id());
  7449. //if (SqlJoint.IsNullOrSpace(qi.getQuote_specimen_no())) {
  7450. for (QcmJudgePhysicalResult qp : qpt) {
  7451. String str = qp.getPhy_code_l() + qp.getPhy_code_m() + qp.getPhy_code_s() + qp.getItem_code_d()
  7452. + qp.getItem_code_s() + qp.getItem_code_t();
  7453. if (!SqlJoint.IsNullOrSpace(oldProject1)&&!SqlJoint.IsNullOrSpace(str)) {
  7454. if (str.equals(oldProject1)) {
  7455. if ( qi.getSeq().equals(qp.getSeq())) {
  7456. qi.setVal1(qp.getVal1());
  7457. qi.setVal2(qp.getVal2());
  7458. qi.setVal3(qp.getVal3());
  7459. qi.setAvg_val(qp.getAvg_val());
  7460. qi.setDefect_flag(qp.getDefect_flag());
  7461. if(qi.getFy_quote_specimen_no() != null){
  7462. List<HashMap> q1 = mapper.query("select * from qcm_jhy_insp_physics z where z.specimen_no = '"+qi.getFy_quote_specimen_no()+"' and z.guid = '"+qp.getGuid()+"'");
  7463. if(q1.size() >0 && q1.get(0).get("QUOTE_SPECIMEN_NO") != null){
  7464. List<HashMap> q3 = mapper.query("select * from qcm_jhy_sample_consign_d z where z.specimen_no = '"+q1.get(0).get("QUOTE_SPECIMEN_NO")+"'");
  7465. qi.setSmp_type_name(q3.get(0).get("SMP_TYPE_NAME").toString());
  7466. if(q3.get(0).get("SMP_LOCATION").toString().contains("一次模拟焊后")){
  7467. if(q3.get(0).get("SMP_TYPE_CODE").toString().equals("1")){
  7468. qi.setSmp_type_name("一次模拟焊后(复样)");
  7469. }else{
  7470. qi.setSmp_type_name("一次模拟焊后");
  7471. }
  7472. }else if(q3.get(0).get("SMP_LOCATION").toString().contains("二次模拟焊后")){
  7473. if(q3.get(0).get("SMP_TYPE_CODE").toString().equals("1")){
  7474. qi.setSmp_type_name("二次模拟焊后(复样)");
  7475. }else{
  7476. qi.setSmp_type_name("二次模拟焊后");
  7477. }
  7478. }else if(q3.get(0).get("SMP_LOCATION").toString().contains("三次模拟焊后")){
  7479. if(q3.get(0).get("SMP_TYPE_CODE").toString().equals("1")){
  7480. qi.setSmp_type_name("三次模拟焊后(复样)");
  7481. }else{
  7482. qi.setSmp_type_name("三次模拟焊后");
  7483. }
  7484. }else if(q3.get(0).get("SMP_LOCATION").toString().contains("四次模拟焊后")){
  7485. if(q3.get(0).get("SMP_TYPE_CODE").toString().equals("1")){
  7486. qi.setSmp_type_name("四次模拟焊后(复样)");
  7487. }else{
  7488. qi.setSmp_type_name("四次模拟焊后");
  7489. }
  7490. }
  7491. qi.setSmp_location(q3.get(0).get("SMP_LOCATION").toString());
  7492. qi.setMaterial_no(q3.get(0).get("MATERIAL_NO").toString());
  7493. }else{
  7494. List<HashMap> q2 = mapper.query("select * from qcm_jhy_sample_consign_d z where z.specimen_no = '"+qi.getFy_quote_specimen_no()+"'");
  7495. qi.setSmp_type_name(q2.get(0).get("SMP_TYPE_NAME").toString());
  7496. if(q2.get(0).get("SMP_LOCATION").toString().contains("一次模拟焊后")){
  7497. if(q2.get(0).get("SMP_TYPE_CODE").toString().equals("1")){
  7498. qi.setSmp_type_name("一次模拟焊后(复样)");
  7499. }else{
  7500. qi.setSmp_type_name("一次模拟焊后");
  7501. }
  7502. }else if(q2.get(0).get("SMP_LOCATION").toString().contains("二次模拟焊后")){
  7503. if(q2.get(0).get("SMP_TYPE_CODE").toString().equals("1")){
  7504. qi.setSmp_type_name("二次模拟焊后(复样)");
  7505. }else{
  7506. qi.setSmp_type_name("二次模拟焊后");
  7507. }
  7508. }else if(q2.get(0).get("SMP_LOCATION").toString().contains("三次模拟焊后")){
  7509. if(q2.get(0).get("SMP_TYPE_CODE").toString().equals("1")){
  7510. qi.setSmp_type_name("三次模拟焊后(复样)");
  7511. }else{
  7512. qi.setSmp_type_name("三次模拟焊后");
  7513. }
  7514. }else if(q2.get(0).get("SMP_LOCATION").toString().contains("四次模拟焊后")){
  7515. if(q2.get(0).get("SMP_TYPE_CODE").toString().equals("1")){
  7516. qi.setSmp_type_name("四次模拟焊后(复样)");
  7517. }else{
  7518. qi.setSmp_type_name("四次模拟焊后");
  7519. }
  7520. }
  7521. qi.setSmp_location(q2.get(0).get("SMP_LOCATION").toString());
  7522. qi.setMaterial_no(q2.get(0).get("MATERIAL_NO").toString());
  7523. }
  7524. }else{
  7525. qi.setSmp_type_code(qcmJhySampleConsignD.getSmp_type_code());
  7526. if(qcmJhySampleConsignD.getSmp_type_code().equals("0") && (!qrd.get(0).getCert_inst_code().equals("IC003") && !qrd.get(0).getCert_inst_code().equals("IC004") && !qrd.get(0).getCert_inst_code().equals("IC001") && !qrd.get(0).getCert_inst_code().equals("IC010") && !qrd.get(0).getCert_inst_code().equals("5000"))){
  7527. if(qcmJhySampleConsignD.getSmp_type_code().equals("1")){
  7528. qi.setSmp_type_name("认证样(复样)");
  7529. }else
  7530. {
  7531. qi.setSmp_type_name("认证样");
  7532. }
  7533. }
  7534. else{
  7535. if(qcmJhySampleConsignD.getSmp_location().contains("一次模拟焊后")){
  7536. if(qcmJhySampleConsignD.getSmp_type_code().equals("1")){
  7537. qi.setSmp_type_name("一次模拟焊后(复样)");
  7538. }else{
  7539. qi.setSmp_type_name("一次模拟焊后");
  7540. }
  7541. }else if(qcmJhySampleConsignD.getSmp_location().contains("二次模拟焊后")){
  7542. if(qcmJhySampleConsignD.getSmp_type_code().equals("1")){
  7543. qi.setSmp_type_name("二次模拟焊后(复样)");
  7544. }else{
  7545. qi.setSmp_type_name("二次模拟焊后");
  7546. }
  7547. }else if(qcmJhySampleConsignD.getSmp_location().contains("三次模拟焊后")){
  7548. if(qcmJhySampleConsignD.getSmp_type_code().equals("1")){
  7549. qi.setSmp_type_name("三次模拟焊后(复样)");
  7550. }else{
  7551. qi.setSmp_type_name("三次模拟焊后");
  7552. }
  7553. }else if(qcmJhySampleConsignD.getSmp_location().contains("四次模拟焊后")){
  7554. if(qcmJhySampleConsignD.getSmp_type_code().equals("1")){
  7555. qi.setSmp_type_name("四次模拟焊后(复样)");
  7556. }else{
  7557. qi.setSmp_type_name("四次模拟焊后");
  7558. }
  7559. }else{
  7560. qi.setSmp_type_name(qcmJhySampleConsignD.getSmp_type_name());
  7561. }
  7562. qi.setSmp_location(qcmJhySampleConsignD.getSmp_location());
  7563. }
  7564. qi.setMaterial_no(qcmJhySampleConsignD.getMaterial_no());
  7565. }
  7566. }
  7567. }
  7568. }
  7569. }
  7570. //}
  7571. if(qi.getSmp_type_name() == null){
  7572. if(!SqlJoint.IsNullOrSpace(qi.getFy_quote_specimen_no())){
  7573. qi.setSmp_type_code("0");
  7574. qi.setSmp_type_name("初样");
  7575. }
  7576. else
  7577. {
  7578. qi.setSmp_type_code(qcmJhySampleConsignD.getSmp_type_code());
  7579. if(qcmJhySampleConsignD.getSmp_type_code().equals("0") && (!qrd.get(0).getCert_inst_code().equals("IC003") && !qrd.get(0).getCert_inst_code().equals("IC004") && !qrd.get(0).getCert_inst_code().equals("IC001") && !qrd.get(0).getCert_inst_code().equals("IC010") && !qrd.get(0).getCert_inst_code().equals("5000"))){
  7580. if(qcmJhySampleConsignD.getSmp_type_code().equals("1")){
  7581. qi.setSmp_type_name("认证样(复样)");
  7582. }else
  7583. {
  7584. qi.setSmp_type_name("认证样");
  7585. }
  7586. }
  7587. else{
  7588. if(qcmJhySampleConsignD.getSmp_location().contains("一次模拟焊后")){
  7589. if(qcmJhySampleConsignD.getSmp_type_code().equals("1")){
  7590. qi.setSmp_type_name("一次模拟焊后(复样)");
  7591. }else{
  7592. qi.setSmp_type_name("一次模拟焊后");
  7593. }
  7594. }else if(qcmJhySampleConsignD.getSmp_location().contains("二次模拟焊后")){
  7595. if(qcmJhySampleConsignD.getSmp_type_code().equals("1")){
  7596. qi.setSmp_type_name("二次模拟焊后(复样)");
  7597. }else{
  7598. qi.setSmp_type_name("二次模拟焊后");
  7599. }
  7600. }else if(qcmJhySampleConsignD.getSmp_location().contains("三次模拟焊后")){
  7601. if(qcmJhySampleConsignD.getSmp_type_code().equals("1")){
  7602. qi.setSmp_type_name("三次模拟焊后(复样)");
  7603. }else{
  7604. qi.setSmp_type_name("三次模拟焊后");
  7605. }
  7606. }else if(qcmJhySampleConsignD.getSmp_location().contains("四次模拟焊后")){
  7607. if(qcmJhySampleConsignD.getSmp_type_code().equals("1")){
  7608. qi.setSmp_type_name("四次模拟焊后(复样)");
  7609. }else{
  7610. qi.setSmp_type_name("四次模拟焊后");
  7611. }
  7612. }
  7613. else{
  7614. qi.setSmp_type_name(qcmJhySampleConsignD.getSmp_type_name());
  7615. }
  7616. qi.setSmp_location(qcmJhySampleConsignD.getSmp_location());
  7617. }
  7618. }
  7619. }
  7620. /*if(qcmJhySampleConsignD.getSmp_location().contains("一次模拟焊后")){
  7621. if(qcmJhySampleConsignD.getSmp_type_code().equals("1")){
  7622. qi.setSmp_type_name("一次模拟焊后(复样)");
  7623. }else{
  7624. qi.setSmp_type_name("一次模拟焊后");
  7625. }
  7626. }else if(qcmJhySampleConsignD.getSmp_location().contains("二次模拟焊后")){
  7627. if(qcmJhySampleConsignD.getSmp_type_code().equals("1")){
  7628. qi.setSmp_type_name("二次模拟焊后(复样)");
  7629. }else{
  7630. qi.setSmp_type_name("二次模拟焊后");
  7631. }
  7632. }else if(qcmJhySampleConsignD.getSmp_location().contains("三次模拟焊后")){
  7633. if(qcmJhySampleConsignD.getSmp_type_code().equals("1")){
  7634. qi.setSmp_type_name("三次模拟焊后(复样)");
  7635. }else{
  7636. qi.setSmp_type_name("三次模拟焊后");
  7637. }
  7638. }else if(qcmJhySampleConsignD.getSmp_location().contains("四次模拟焊后")){
  7639. if(qcmJhySampleConsignD.getSmp_type_code().equals("1")){
  7640. qi.setSmp_type_name("四次模拟焊后(复样)");
  7641. }else{
  7642. qi.setSmp_type_name("四次模拟焊后");
  7643. }
  7644. }*/
  7645. qi.setIsjudge(qi.getIsjudge().equals("0")?"否":"是");
  7646. if(qi.getDefect_flag()!=null){
  7647. qi.setDefect_flag(qi.getDefect_flag().equals("0")?"否":"是");
  7648. }
  7649. qi.setPhy_id(qjp.getPhy_id());
  7650. //qi.setSmp_location(qcmJhySampleConsignD.getSmp_location());
  7651. //qi.setMaterial_no(qcmJhySampleConsignD.getMaterial_no());
  7652. qi.setHt_no(qcmJhySampleConsignD.getProcess_nos());
  7653. qi.setSteelname(list.get(0).getSteel_name());
  7654. qi.setThick(qrd.get(0).getThick());
  7655. /*List<HashMap> hashmap = new ArrayList<HashMap>();
  7656. if(qcmJhySampleConsignD.getMaterial_no().startsWith("Z")){
  7657. hashmap = mapper.doQueryMaterialInfoZB(qcmJhySampleConsignD.getMaterial_no());
  7658. }else if(qcmJhySampleConsignD.getMaterial_no().startsWith("H")){
  7659. hashmap = mapper.doQueryMaterialInfoHB(qcmJhySampleConsignD.getMaterial_no());
  7660. }
  7661. if(hashmap.size() > 0){
  7662. if(hashmap.get(0).get("HT_NO") != null) {
  7663. qi.setHt_no(hashmap.get(0).get("HT_NO").toString());
  7664. }
  7665. }*/
  7666. targets.add(qi);
  7667. }
  7668. }
  7669. }
  7670. cro.setResult(targets);
  7671. } catch (Exception e) {
  7672. cro.setV_errCode(-1);
  7673. cro.setV_errMsg(e.getMessage());
  7674. }
  7675. SqlSession.close();
  7676. return cro;
  7677. }
  7678. /**
  7679. * 查询判定信息的检测值
  7680. */
  7681. public CoreReturnObject querryJudgetItem1(String pic_id) {
  7682. try {
  7683. List<QcmJhySampleConsignDItem> targets=new ArrayList<QcmJhySampleConsignDItem>();
  7684. List<QcmJudgePhysicalUtmD> qjpud = mapper.queryQcmJudgePhysicalUtmD("select * from qcm_judge_physical_utm_d where pic_id = '"+pic_id+"'");
  7685. for(QcmJudgePhysicalUtmD qjp : qjpud){
  7686. List<QcmJudgePhysical> list = mapper.queryQcmJudgePhysical("select * from QCM_JUDGE_PHYSICAL where phy_id = '"+qjp.getPhy_id()+"'");
  7687. List<QcmJhySampleConsignD> qd = mapper.findQcmJhySampleConsignD2(list.get(0).getSmp_no());
  7688. List<QcmJhySampleROrd> qrd = mapper.queryQcmJhySampleROrd1("select * from qcm_jhy_sample_r_ord where smp_no ='"+list.get(0).getSmp_no()+"'");
  7689. List<QcmOrdDesignStdPic> itemAll = new ArrayList<QcmOrdDesignStdPic>();
  7690. List<QcmOrdDesignStdPic> pic = new ArrayList<QcmOrdDesignStdPic>();
  7691. if(list.get(0).getPline_code().equals("LT1")){
  7692. pic = mapper.findQcmOrdDesignStdPic2(list.get(0).getDesign_key(),list.get(0).getSteel_name().equals("SWRH82B-YL-Ⅰ")?"SWRH82B-YL":list.get(0).getSteel_name(),"LT1");
  7693. }else if(list.get(0).getPline_code().equals("RZ1")){
  7694. pic = mapper.findQcmOrdDesignStdPic2(list.get(0).getDesign_key(),list.get(0).getSteel_name().equals("SWRH82B-YL-Ⅰ")?"SWRH82B-YL":list.get(0).getSteel_name(),"RZ1");
  7695. }else if(list.get(0).getPline_code().equals("YT1")){
  7696. pic = mapper.findQcmOrdDesignStdPic2(list.get(0).getDesign_key(),list.get(0).getSteel_name().equals("SWRH82B-YL-Ⅰ")?"SWRH82B-YL":list.get(0).getSteel_name(),"YT1");
  7697. }else
  7698. {
  7699. pic = mapper.findQcmOrdDesignStdPic(list.get(0).getDesign_key(),list.get(0).getSteel_name().equals("SWRH82B-YL-Ⅰ")?"SWRH82B-YL":list.get(0).getSteel_name());
  7700. }
  7701. itemAll.addAll(pic);
  7702. String oldProject = null;
  7703. String newProject = null;
  7704. String oldProject1 = null;
  7705. for (QcmJhySampleConsignD qcmJhySampleConsignD : qd) {
  7706. String sql1 = "select d.* "+
  7707. " from qcm_jhy_sample_consign_d d "+
  7708. " where d.specimen_no in (select d.specimen_no "+
  7709. " from qcm_jhy_sample_consign_d d "+
  7710. " where d.batch_no = '"+qcmJhySampleConsignD.getBatch_no()+"' "+
  7711. " and d.freq_code = 'D' "+
  7712. " AND d.smp_type_code in "+
  7713. " (select max(d.SMP_TYPE_CODE) "+
  7714. " from qcm_jhy_sample_consign_d d,qcm_jhy_sample_r_ord m "+
  7715. " where d.smp_no = m.smp_no and d.batch_no = '"+qcmJhySampleConsignD.getBatch_no()+"' "+
  7716. " and d.freq_code = 'D') "+
  7717. " ) and rownum <= 1";
  7718. List<HashMap> list2 = mapper.query(sql1);
  7719. String Specimen_no1 = "";
  7720. if(list2.size() >0 && qd.size()==1){
  7721. Specimen_no1 = list2.get(0).get("SPECIMEN_NO").toString();
  7722. }
  7723. sql1 = "select d.* "+
  7724. " from qcm_jhy_sample_R_ORD d "+
  7725. " where d.SMP_NO in (select d.SMP_NO "+
  7726. " from qcm_jhy_sample_consign_d d "+
  7727. " where d.batch_no = '"+qcmJhySampleConsignD.getBatch_no()+"' "+
  7728. " and d.freq_code = 'D' "+
  7729. " AND d.smp_type_code in "+
  7730. " (select max(d.SMP_TYPE_CODE) "+
  7731. " from qcm_jhy_sample_consign_d d,qcm_jhy_sample_r_ord m "+
  7732. " where d.smp_no = m.smp_no and d.batch_no = '"+qcmJhySampleConsignD.getBatch_no()+"' "+
  7733. " and d.freq_code = 'D') "+
  7734. " ) and rownum <= 1";
  7735. List<HashMap> list3 = mapper.query(sql1);
  7736. String design_key = "";
  7737. String steel_name = "";
  7738. if(list3.size() >0 && qd.size()==1){
  7739. design_key = list3.get(0).get("DESIGN_KEY").toString();
  7740. steel_name = list3.get(0).get("STEEL_NAME").toString();
  7741. }
  7742. if(qd.size()==1){
  7743. pic = mapper.findQcmOrdDesignStdPic3(design_key,steel_name);
  7744. itemAll.addAll(pic);
  7745. }
  7746. List<QcmJhySampleConsignDItem> items = mapper.findQcmJhySampleConsignDItem3(qcmJhySampleConsignD.getSpecimen_no(),Specimen_no1);
  7747. for (QcmJhySampleConsignDItem qi : items) {
  7748. String sql = "select * from qcm_judge_physical_result where phy_id = '"+qjp.getPhy_id()+"' and specimen_no || guid in (select z.specimen_no || z.guid from qcm_jhy_insp_physics z where z.specimen_no = '"+qi.getSpecimen_no()+"' and z.seq = '"+qi.getSeq()+"') "
  7749. + " UNION ALL "
  7750. + "select * from qcm_judge_physical_result z where z.phy_id in ( select t.phy_id from qcm_jhy_sample_r_ord t where t.smp_no in ( select d.smp_no "
  7751. + " from qcm_jhy_sample_consign_d d "
  7752. + " where d.batch_no = '"+qcmJhySampleConsignD.getBatch_no()+"' "
  7753. + " and d.freq_code = 'D' "
  7754. + " AND d.smp_type_code in "
  7755. + " (select max(d.SMP_TYPE_CODE) "
  7756. + " from qcm_jhy_sample_consign_d d,qcm_jhy_sample_r_ord m "
  7757. + " where d.smp_no = m.smp_no and d.batch_no = '"+qcmJhySampleConsignD.getBatch_no()+"' "
  7758. + " and d.freq_code = 'D') and rownum <=1)) and phy_name_l = '夹杂'";
  7759. List<QcmJudgePhysicalResult> listz = mapper.queryQcmJudgePhysicalResult(sql);
  7760. /*if(listz.size() == 0){
  7761. continue;
  7762. }*/
  7763. oldProject = qi.getPhy_code_l() + qi.getPhy_code_m() + qi.getPhy_code_s() + qi.getItem_code_d()
  7764. + qi.getItem_code_s() + qi.getItem_code_t();
  7765. oldProject1 = qi.getPhy_code_l() + qi.getPhy_code_m() + qi.getPhy_code_s() + qi.getItem_code_d()
  7766. + qi.getItem_code_s() + qi.getItem_code_t();
  7767. //获取标准
  7768. for (QcmOrdDesignStdPic si : itemAll) {
  7769. newProject = si.getPhy_code_l() + si.getPhy_code_m() + si.getPhy_code_s() + si.getItem_code_d()
  7770. + si.getItem_code_s() + si.getItem_code_t();
  7771. if (oldProject.equals(newProject)) {
  7772. if ("0".equals(si.getSpecl_fl())) {
  7773. qi.setJf_stdmax(si.getStdmax());
  7774. qi.setJf_stdmax((si.getStdmax_sign()==null?"":si.getStdmax_sign())+(si.getStdmax()==null?"":si.getStdmax()));
  7775. qi.setJf_stdmin(si.getStdmin());
  7776. qi.setJf_stdmin((si.getStdmin_sign()==null?"":si.getStdmin_sign())+(si.getStdmin()==null?"":si.getStdmin()));
  7777. qi.setJudge_basis(si.getJudge_basis());
  7778. qi.setIsjudge(si.getIsjudge());
  7779. qi.setQuote_consign_no(qcmJhySampleConsignD.getQuote_consign_no());
  7780. qi.setOld_consign_no(qcmJhySampleConsignD.getOld_consign_no());
  7781. } else if ("1".equals(si.getSpecl_fl())) {
  7782. qi.setKh_stdmax(si.getStdmax());
  7783. qi.setKh_stdmax((si.getStdmax_sign()==null?"":si.getStdmax_sign())+(si.getStdmax()==null?"":si.getStdmax()));
  7784. qi.setKh_stdmin(si.getStdmin());
  7785. qi.setKh_stdmin((si.getStdmin_sign()==null?"":si.getStdmin_sign())+(si.getStdmin()==null?"":si.getStdmin()));
  7786. qi.setJudge_basis(si.getJudge_basis());
  7787. qi.setIsjudge(si.getIsjudge());
  7788. qi.setQuote_consign_no(qcmJhySampleConsignD.getQuote_consign_no());
  7789. qi.setOld_consign_no(qcmJhySampleConsignD.getOld_consign_no());
  7790. } else if ("2".equals(si.getSpecl_fl())) {
  7791. qi.setNk_stdmax((si.getStdmax_sign()==null?"":si.getStdmax_sign())+(si.getStdmax()==null?"":si.getStdmax()));
  7792. qi.setNk_stdmax_sign(si.getStdmax_sign());
  7793. qi.setNk_stdmin((si.getStdmin_sign()==null?"":si.getStdmin_sign())+(si.getStdmin()==null?"":si.getStdmin()));
  7794. qi.setNk_stdmin_sign(si.getStdmin_sign());
  7795. qi.setJudge_basis(si.getJudge_basis());
  7796. qi.setIsjudge(si.getIsjudge());
  7797. qi.setQuote_consign_no(qcmJhySampleConsignD.getQuote_consign_no());
  7798. qi.setOld_consign_no(qcmJhySampleConsignD.getOld_consign_no());
  7799. }else if ("3".equals(si.getSpecl_fl())) {
  7800. qi.setFx_stdmax((si.getStdmax_sign()==null?"":si.getStdmax_sign())+(si.getStdmax()==null?"":si.getStdmax()));
  7801. qi.setFx_stdmax_sign(si.getStdmax_sign());
  7802. qi.setFx_stdmin((si.getStdmin_sign()==null?"":si.getStdmin_sign())+(si.getStdmin()==null?"":si.getStdmin()));
  7803. qi.setFx_stdmin_sign(si.getStdmin_sign());
  7804. qi.setJudge_basis(si.getJudge_basis());
  7805. qi.setIsjudge(si.getIsjudge());
  7806. qi.setQuote_consign_no(qcmJhySampleConsignD.getQuote_consign_no());
  7807. qi.setOld_consign_no(qcmJhySampleConsignD.getOld_consign_no());
  7808. }else if ("4".equals(si.getSpecl_fl())) {
  7809. qi.setNk_stdmax(si.getStdmax());
  7810. qi.setNk_stdmax_sign(si.getStdmax_sign());
  7811. qi.setNk_stdmin(si.getStdmin());
  7812. qi.setNk_stdmin_sign(si.getStdmin_sign());
  7813. qi.setJudge_basis(si.getJudge_basis());
  7814. qi.setIsjudge(si.getIsjudge());
  7815. qi.setQuote_consign_no(qcmJhySampleConsignD.getQuote_consign_no());
  7816. qi.setOld_consign_no(qcmJhySampleConsignD.getOld_consign_no());
  7817. }
  7818. }
  7819. if(qi.getJudge_basis() != null)
  7820. {
  7821. if(qi.getJudge_basis().equals("A")){
  7822. qi.setJudge_basis("最小值");
  7823. }else if(qi.getJudge_basis().equals("B")){
  7824. qi.setJudge_basis("最大值");
  7825. }else if(qi.getJudge_basis().equals("C")){
  7826. qi.setJudge_basis("平均值");
  7827. }else if(qi.getJudge_basis().equals("D")){
  7828. qi.setJudge_basis("逐值判定");
  7829. }
  7830. }
  7831. }
  7832. //获取实测值
  7833. //List<QcmJudgePhysicalResult> qpt = mapper.findphyresults(qi.getSpecimen_no(),qjp.getPhy_id());
  7834. //if (SqlJoint.IsNullOrSpace(qi.getQuote_specimen_no())) {
  7835. for (QcmJudgePhysicalResult qp : listz) {
  7836. String str = qp.getPhy_code_l() + qp.getPhy_code_m() + qp.getPhy_code_s() + qp.getItem_code_d()
  7837. + qp.getItem_code_s() + qp.getItem_code_t();
  7838. if (!SqlJoint.IsNullOrSpace(oldProject1)&&!SqlJoint.IsNullOrSpace(str)) {
  7839. if (str.equals(oldProject1)) {
  7840. /*if ( qi.getSeq().equals(qp.getSeq())) {*/
  7841. qi.setVal1(qp.getVal1());
  7842. qi.setVal2(qp.getVal2());
  7843. qi.setVal3(qp.getVal3());
  7844. qi.setAvg_val(qp.getAvg_val());
  7845. qi.setDefect_flag(qp.getDefect_flag());
  7846. /*if(qi.getFy_quote_specimen_no() != null){
  7847. List<HashMap> q1 = mapper.query("select * from qcm_jhy_insp_physics z where z.specimen_no = '"+qi.getFy_quote_specimen_no()+"' and z.guid = '"+qp.getGuid()+"'");
  7848. if(q1.size() >0 && q1.get(0).get("QUOTE_SPECIMEN_NO") != null){
  7849. List<HashMap> q3 = mapper.query("select * from qcm_jhy_sample_consign_d z where z.specimen_no = '"+q1.get(0).get("QUOTE_SPECIMEN_NO")+"'");
  7850. qi.setSmp_type_name(q3.get(0).get("SMP_TYPE_NAME").toString());
  7851. qi.setMaterial_no(q3.get(0).get("MATERIAL_NO").toString());
  7852. }else{
  7853. List<HashMap> q2 = mapper.query("select * from qcm_jhy_sample_consign_d z where z.specimen_no = '"+qi.getFy_quote_specimen_no()+"'");
  7854. qi.setSmp_type_name(q2.get(0).get("SMP_TYPE_NAME").toString());
  7855. qi.setMaterial_no(q2.get(0).get("MATERIAL_NO").toString());
  7856. }
  7857. }else{
  7858. qi.setSmp_type_code(qcmJhySampleConsignD.getSmp_type_code());
  7859. if(qcmJhySampleConsignD.getSmp_type_code().equals("0") && (!qrd.get(0).getCert_inst_code().equals("IC003") && !qrd.get(0).getCert_inst_code().equals("IC004") && !qrd.get(0).getCert_inst_code().equals("IC001") && !qrd.get(0).getCert_inst_code().equals("IC010") && !qrd.get(0).getCert_inst_code().equals("5000"))){
  7860. qi.setSmp_type_name("认证样");
  7861. }
  7862. else{
  7863. qi.setSmp_type_name(qcmJhySampleConsignD.getSmp_type_name());
  7864. }
  7865. qi.setMaterial_no(qcmJhySampleConsignD.getMaterial_no());
  7866. }*/
  7867. /*}*/
  7868. }
  7869. }
  7870. }
  7871. //}
  7872. if(qi.getSmp_type_name() == null){
  7873. if(!SqlJoint.IsNullOrSpace(qi.getFy_quote_specimen_no())){
  7874. qi.setSmp_type_code("0");
  7875. qi.setSmp_type_name("初样");
  7876. }
  7877. else
  7878. {
  7879. qi.setSmp_type_code(qcmJhySampleConsignD.getSmp_type_code());
  7880. if(qcmJhySampleConsignD.getSmp_type_code().equals("0") && (!qrd.get(0).getCert_inst_code().equals("IC003") && !qrd.get(0).getCert_inst_code().equals("IC004") && !qrd.get(0).getCert_inst_code().equals("IC001") && !qrd.get(0).getCert_inst_code().equals("IC010") && !qrd.get(0).getCert_inst_code().equals("5000"))){
  7881. if(qcmJhySampleConsignD.getSmp_type_code().equals("1")){
  7882. qi.setSmp_type_name("认证样(复样)");
  7883. }else
  7884. {
  7885. qi.setSmp_type_name("认证样");
  7886. }
  7887. }
  7888. else{
  7889. if(qcmJhySampleConsignD.getSmp_location().contains("一次模拟焊后")){
  7890. if(qcmJhySampleConsignD.getSmp_type_code().equals("1")){
  7891. qi.setSmp_type_name("一次模拟焊后(复样)");
  7892. }else{
  7893. qi.setSmp_type_name("一次模拟焊后");
  7894. }
  7895. }else if(qcmJhySampleConsignD.getSmp_location().contains("二次模拟焊后")){
  7896. if(qcmJhySampleConsignD.getSmp_type_code().equals("1")){
  7897. qi.setSmp_type_name("二次模拟焊后(复样)");
  7898. }else{
  7899. qi.setSmp_type_name("二次模拟焊后");
  7900. }
  7901. }else if(qcmJhySampleConsignD.getSmp_location().contains("三次模拟焊后")){
  7902. if(qcmJhySampleConsignD.getSmp_type_code().equals("1")){
  7903. qi.setSmp_type_name("三次模拟焊后(复样)");
  7904. }else{
  7905. qi.setSmp_type_name("三次模拟焊后");
  7906. }
  7907. }else if(qcmJhySampleConsignD.getSmp_location().contains("四次模拟焊后")){
  7908. if(qcmJhySampleConsignD.getSmp_type_code().equals("1")){
  7909. qi.setSmp_type_name("四次模拟焊后(复样)");
  7910. }else{
  7911. qi.setSmp_type_name("四次模拟焊后");
  7912. }
  7913. }
  7914. else{
  7915. qi.setSmp_type_name(qcmJhySampleConsignD.getSmp_type_name());
  7916. }
  7917. qi.setSmp_location(qcmJhySampleConsignD.getSmp_location());
  7918. }
  7919. }
  7920. }
  7921. qi.setIsjudge(qi.getIsjudge().equals("0")?"否":"是");
  7922. if(qi.getDefect_flag()!=null){
  7923. qi.setDefect_flag(qi.getDefect_flag().equals("0")?"否":"是");
  7924. }
  7925. qi.setPhy_id(qjp.getPhy_id());
  7926. qi.setMaterial_no(qcmJhySampleConsignD.getMaterial_no());
  7927. qi.setHt_no(qcmJhySampleConsignD.getProcess_nos());
  7928. qi.setSteelname(list.get(0).getSteel_name());
  7929. qi.setThick(qrd.get(0).getThick());
  7930. /*List<HashMap> hashmap = new ArrayList<HashMap>();
  7931. if(qcmJhySampleConsignD.getMaterial_no().startsWith("Z")){
  7932. hashmap = mapper.doQueryMaterialInfoZB(qcmJhySampleConsignD.getMaterial_no());
  7933. }else if(qcmJhySampleConsignD.getMaterial_no().startsWith("H")){
  7934. hashmap = mapper.doQueryMaterialInfoHB(qcmJhySampleConsignD.getMaterial_no());
  7935. }
  7936. if(hashmap.size() > 0){
  7937. if(hashmap.get(0).get("HT_NO") != null) {
  7938. qi.setHt_no(hashmap.get(0).get("HT_NO").toString());
  7939. }
  7940. }*/
  7941. targets.add(qi);
  7942. }
  7943. }
  7944. }
  7945. cro.setResult(targets);
  7946. } catch (Exception e) {
  7947. cro.setV_errCode(-1);
  7948. cro.setV_errMsg(e.getMessage());
  7949. }
  7950. SqlSession.close();
  7951. return cro;
  7952. }
  7953. /*
  7954. * 查询判定记录
  7955. */
  7956. @SuppressWarnings("unchecked")
  7957. public CoreReturnObject GetjudgeInfoJ(String begintime,String endtime,String bbatchno,String ebatchno,String design_key,String Psc_desc,String prodline,String cert_inst_name,String heat_no){
  7958. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime) && SqlJoint.IsNullOrSpace(bbatchno)) {
  7959. String sky=StrSky(begintime,endtime);
  7960. if(!sky.equals("TRUE")){
  7961. SqlSession.close();
  7962. cro.setV_errCode(-1);
  7963. cro.setV_errMsg(sky);
  7964. return cro;
  7965. }
  7966. }
  7967. String swhere = " where 1=1 ";
  7968. //String sqls = "select judgeid from QCM_JUDGE_COIL_RESULT";
  7969. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime)&& SqlJoint.IsNullOrSpace(bbatchno) && SqlJoint.IsNullOrSpace(ebatchno)) { //生产时间
  7970. swhere += " and to_date(to_char(JUDGE_TIME,'yyyy-mm-dd'),'yyyy-mm-dd') between to_date('"+begintime+"','yyyy-mm-dd') and to_date('"+endtime+"','yyyy-mm-dd')";
  7971. }
  7972. if (!SqlJoint.IsNullOrSpace(bbatchno)) { //起始轧批号
  7973. swhere += "and batch_no >= '"+bbatchno+"'";
  7974. }
  7975. if (!SqlJoint.IsNullOrSpace(ebatchno)) { //最后轧批号
  7976. swhere += "and batch_no <= '"+ebatchno+"'";
  7977. }
  7978. if (!SqlJoint.IsNullOrSpace(design_key)) { //销售订单号
  7979. swhere += " and design_key like '%"+design_key+"%'";
  7980. }
  7981. if (!SqlJoint.IsNullOrSpace(Psc_desc)) { //Psc_desc
  7982. swhere += " and psc_desc like '%"+Psc_desc+"%'";
  7983. }
  7984. if(!SqlJoint.IsNullOrSpace(heat_no)){
  7985. swhere += " and heat_no like '%"+heat_no+"%'";
  7986. }
  7987. swhere += " and pline_code in ('RZ1','SZ1','LT1')";
  7988. if(prodline.equals("热连轧")){
  7989. swhere += " and pline_code = 'RZ1'";
  7990. }else if(prodline.equals("酸轧")){
  7991. swhere += " and pline_code = 'SZ1'";
  7992. }else if(prodline.equals("连退")){
  7993. swhere += " and pline_code = 'LT1'";
  7994. }
  7995. if(!SqlJoint.IsNullOrSpace(cert_inst_name) && !cert_inst_name.equals("全部")){
  7996. swhere += " and PIC_ID in ( select a.pic_id from qcm_judge_physical_utm_d a where a.cert_inst_name = '"+cert_inst_name+"')";
  7997. }
  7998. //swhere += "and UTM_ID in ("+sqls+")";
  7999. //swhere +=" order by JUDGE_TIME desc";
  8000. String sql = "select CIC_ID,"
  8001. +" heat_no,"
  8002. +" PIC_ID,"
  8003. +" SIC_ID,"
  8004. +" SFU_ID,"
  8005. +" R_CIC_ID,"
  8006. +" UTM_ID,"
  8007. +" UTM_RESULT_DESC,"
  8008. +" MATERIAL_NO,"
  8009. +" DESIGN_KEY,"
  8010. +" JUDGE_NAME,"
  8011. +" UTM_MEMO,"
  8012. +" JUDGE_TIME,"
  8013. + " cancel_memo,"
  8014. + " cancel_name,"
  8015. + "(SELECT TO_CHAR(MAX(cancel_time), 'yyyy-mm-dd hh24:mi:ss') FROM DUAL) cancel_time,"
  8016. +" z.r_cic_result_desc,"
  8017. +" z.cic_result_desc,"
  8018. +" z.pic_result_desc,"
  8019. +" z.sic_result_desc,"
  8020. +" z.SFU_result_desc mst_result_desc,"
  8021. +" z.tic_result_desc,"
  8022. +" (select max(memo)"
  8023. +" from qcm_ord_design_memo t"
  8024. +" where t.design_key = z.DESIGN_KEY) order_remark,"
  8025. +" steel_name,"
  8026. +" prod_name,"
  8027. +" std_name,"
  8028. +" (select decode(max(x.smp_type_code), '3', '是', '1', '是', '0', '否')"
  8029. +" from qcm_jhy_sample_consign_d x"
  8030. +" where x.specimen_no in"
  8031. +" (select z.specimen_no"
  8032. +" from qcm_judge_physical_result z"
  8033. +" where z.phy_id in (select a.phy_id"
  8034. +" from qcm_judge_physical_utm_d a"
  8035. +" where a.pic_id = z.pic_id))) is_fy,"
  8036. +" case"
  8037. +" when y.judgeresult <> '0' and z.utm_id = y.judgeid then"
  8038. +" '是'"
  8039. +" else"
  8040. +" '否'"
  8041. +" end isvalid,"
  8042. +" b.instr_COIL_THK THICK,"
  8043. +" b.instr_COIL_WTH WIDTH,"
  8044. +" b.instr_COIL_LEN LENGTH,"
  8045. +" b.PRODNM_CD DELIVERY_STATE_DESC,"
  8046. +" b.ACT_WGT / 1000 weight,"
  8047. +" decode(b.WGT_DEC_RST,'1','合格','2','不合格') WGT_DEC_RST,"
  8048. +" '' CUTSIDESTATE,"
  8049. +" '' FIXSIZE"
  8050. +" from QCM_JUDGE_ULTIMATE z"
  8051. +" JOIN TBH02_COIL_COMM b"
  8052. +" on z.material_no = b.OLD_SAMPL_NO"
  8053. +" left join qcm_judge_coil_result y"
  8054. +" on z.material_no = y.coil_no"
  8055. +" "+swhere+""
  8056. +" union all"
  8057. +" select CIC_ID,"
  8058. +" heat_no,"
  8059. +" PIC_ID,"
  8060. +" SIC_ID,"
  8061. +" SFU_ID,"
  8062. +" R_CIC_ID,"
  8063. +" UTM_ID,"
  8064. +" UTM_RESULT_DESC,"
  8065. +" MATERIAL_NO,"
  8066. +" DESIGN_KEY,"
  8067. +" JUDGE_NAME,"
  8068. +" UTM_MEMO,"
  8069. +" JUDGE_TIME,"
  8070. + "cancel_memo,"
  8071. + " cancel_name,"
  8072. + "(SELECT TO_CHAR(MAX(cancel_time), 'yyyy-mm-dd hh24:mi:ss') FROM DUAL) cancel_time,"
  8073. +" z.r_cic_result_desc,"
  8074. +" z.cic_result_desc,"
  8075. +" z.pic_result_desc,"
  8076. +" z.sic_result_desc,"
  8077. +" z.SFU_result_desc mst_result_desc,"
  8078. +" z.tic_result_desc,"
  8079. +" (select max(memo)"
  8080. +" from qcm_ord_design_memo t"
  8081. +" where t.design_key = z.DESIGN_KEY) order_remark,"
  8082. +" steel_name,"
  8083. +" prod_name,"
  8084. +" std_name,"
  8085. +" (select decode(max(x.smp_type_code), '3', '是', '1', '是', '0', '否')"
  8086. +" from qcm_jhy_sample_consign_d x"
  8087. +" where x.specimen_no in"
  8088. +" (select z.specimen_no"
  8089. +" from qcm_judge_physical_result z"
  8090. +" where z.phy_id in (select a.phy_id"
  8091. +" from qcm_judge_physical_utm_d a"
  8092. +" where a.pic_id = z.pic_id))) is_fy,"
  8093. +" case"
  8094. +" when y.judgeresult <> '0' and z.utm_id = y.judgeid then"
  8095. +" '是'"
  8096. +" else"
  8097. +" '否'"
  8098. +" end isvalid,"
  8099. +" b.instr_COIL_THK THICK,"
  8100. +" b.instr_COIL_WTH WIDTH,"
  8101. +" b.instr_COIL_LEN LENGTH,"
  8102. +" b.PRODNM_CD DELIVERY_STATE_DESC,"
  8103. +" b.ACT_WGT / 1000 weight,"
  8104. +" decode(b.WGT_DEC_RST,'1','合格','2','不合格') WGT_DEC_RST,"
  8105. +" '' CUTSIDESTATE,"
  8106. +" '' FIXSIZE"
  8107. +" from QCM_JUDGE_ULTIMATE z"
  8108. +" JOIN c_tbc02_coil_comm b"
  8109. +" on z.material_no = b.OLD_SAMPL_NO"
  8110. +" left join qcm_judge_coil_result y"
  8111. +" on z.material_no = y.coil_no"
  8112. +" "+swhere+""
  8113. +" union all"
  8114. +" select CIC_ID,"
  8115. +" heat_no,"
  8116. +" PIC_ID,"
  8117. +" SIC_ID,"
  8118. +" SFU_ID,"
  8119. +" R_CIC_ID,"
  8120. +" UTM_ID,"
  8121. +" UTM_RESULT_DESC,"
  8122. +" MATERIAL_NO,"
  8123. +" DESIGN_KEY,"
  8124. +" JUDGE_NAME,"
  8125. +" UTM_MEMO,"
  8126. +" JUDGE_TIME,"
  8127. + "cancel_memo,"
  8128. + " cancel_name,"
  8129. + "(SELECT TO_CHAR(MAX(cancel_time), 'yyyy-mm-dd hh24:mi:ss') FROM DUAL) cancel_time,"
  8130. +" z.r_cic_result_desc,"
  8131. +" z.cic_result_desc,"
  8132. +" z.pic_result_desc,"
  8133. +" z.sic_result_desc,"
  8134. +" z.SFU_result_desc mst_result_desc,"
  8135. +" z.tic_result_desc,"
  8136. +" (select max(memo)"
  8137. +" from qcm_ord_design_memo t"
  8138. +" where t.design_key = z.DESIGN_KEY) order_remark,"
  8139. +" steel_name,"
  8140. +" prod_name,"
  8141. +" std_name,"
  8142. +" (select decode(max(x.smp_type_code), '3', '是', '1', '是', '0', '否')"
  8143. +" from qcm_jhy_sample_consign_d x"
  8144. +" where x.specimen_no in"
  8145. +" (select z.specimen_no"
  8146. +" from qcm_judge_physical_result z"
  8147. +" where z.phy_id in (select a.phy_id"
  8148. +" from qcm_judge_physical_utm_d a"
  8149. +" where a.pic_id = z.pic_id))) is_fy,"
  8150. +" case"
  8151. +" when y.judgeresult <> '0' and z.utm_id = y.judgeid then"
  8152. +" '是'"
  8153. +" else"
  8154. +" '否'"
  8155. +" end isvalid,"
  8156. +" b.instr_COIL_THK THICK,"
  8157. +" b.instr_COIL_WTH WIDTH,"
  8158. +" b.instr_COIL_LEN LENGTH,"
  8159. +" b.PRODNM_CD DELIVERY_STATE_DESC,"
  8160. +" b.ACT_WGT / 1000 weight,"
  8161. +" decode(b.WGT_DEC_RST,'1','合格','2','不合格') WGT_DEC_RST,"
  8162. +" '' CUTSIDESTATE,"
  8163. +" '' FIXSIZE"
  8164. +" from QCM_JUDGE_ULTIMATE z"
  8165. +" JOIN c_tbl02_coil_comm b"
  8166. +" on z.material_no = b.OLD_SAMPL_NO"
  8167. +" left join qcm_judge_coil_result y"
  8168. +" on z.material_no = y.coil_no "+swhere+"";
  8169. try {
  8170. System.out.print(sql);
  8171. List<HashMap> list = mapper.query(sql);
  8172. cro.setResult(list);
  8173. } catch (Exception ex) {
  8174. ex.printStackTrace();
  8175. cro.setV_errCode(-1);
  8176. cro.setV_errMsg("查询失败!" + ex.getMessage());
  8177. }
  8178. SqlSession.close();
  8179. return cro;
  8180. }
  8181. /*
  8182. * 查询判定记录
  8183. */
  8184. @SuppressWarnings("unchecked")
  8185. public CoreReturnObject GetjudgeInfoY(String begintime,String endtime,String material_no,String design_key,String Psc_desc,String prodline,String cert_inst_name,String heat_no,String processes,String yl){
  8186. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime) && SqlJoint.IsNullOrSpace(material_no)) {
  8187. String sky=StrSky(begintime,endtime);
  8188. if(!sky.equals("TRUE")){
  8189. SqlSession.close();
  8190. cro.setV_errCode(-1);
  8191. cro.setV_errMsg(sky);
  8192. return cro;
  8193. }
  8194. }
  8195. String swhere = " where 1=1 ";
  8196. //String sqls = "select judgeid from QCM_JUDGE_COIL_RESULT";
  8197. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime)&& SqlJoint.IsNullOrSpace(material_no)) { //生产时间
  8198. swhere += " and to_date(to_char(JUDGE_TIME,'yyyy-mm-dd'),'yyyy-mm-dd') between to_date('"+begintime+"','yyyy-mm-dd') and to_date('"+endtime+"','yyyy-mm-dd')";
  8199. }
  8200. if (!SqlJoint.IsNullOrSpace(material_no)) { //起始轧批号
  8201. swhere += "and material_no like '%"+material_no+"%'";
  8202. }
  8203. if (!SqlJoint.IsNullOrSpace(design_key)) { //销售订单号
  8204. swhere += " and design_key like '%"+design_key+"%'";
  8205. }
  8206. if (!SqlJoint.IsNullOrSpace(Psc_desc)) { //Psc_desc
  8207. swhere += " and psc_desc like '%"+Psc_desc+"%'";
  8208. }
  8209. if(!SqlJoint.IsNullOrSpace(heat_no)){
  8210. swhere += " and heat_no like '%"+heat_no+"%'";
  8211. }
  8212. if(!SqlJoint.IsNullOrSpace(yl)){
  8213. swhere += " and b.MATERAILCOILNO like '%"+yl+"%'";
  8214. }
  8215. if(processes.equals("4mm分条机组")){
  8216. swhere += " and MACHINE_CODE = 'M0001'";
  8217. }else if(processes.equals("12mm分条机组")){
  8218. swhere += " and MACHINE_CODE = 'M0002'";
  8219. }else if(processes.equals("3mm横剪机组")){
  8220. swhere += " and MACHINE_CODE = 'M0003'";
  8221. }else if(processes.equals("退火炉宝信")){
  8222. swhere += " and MACHINE_CODE = 'M0004'";
  8223. }else if(processes.equals("退火炉南方D")){
  8224. swhere += " and MACHINE_CODE = 'M0005'";
  8225. }else if(processes.equals("退火炉艾伯纳")){
  8226. swhere += " and MACHINE_CODE = 'M0006'";
  8227. }else if(processes.equals("平整机组")){
  8228. swhere += " and MACHINE_CODE = 'M0007'";
  8229. }else if(processes.equals("轧机机组")){
  8230. swhere += " and MACHINE_CODE = 'M0008'";
  8231. }else if(processes.equals("退火炉南方G")){
  8232. swhere += " and MACHINE_CODE = 'M0009'";
  8233. }else if(processes.equals("酸洗机组")){
  8234. swhere += " and MACHINE_CODE = 'M0010'";
  8235. }
  8236. swhere += " and pline_code in ('YT1')";
  8237. if(!SqlJoint.IsNullOrSpace(cert_inst_name) && !cert_inst_name.equals("全部")){
  8238. swhere += " and PIC_ID in ( select a.pic_id from qcm_judge_physical_utm_d a where a.cert_inst_name = '"+cert_inst_name+"')";
  8239. }
  8240. //swhere += "and UTM_ID in ("+sqls+")";
  8241. //swhere +=" order by JUDGE_TIME desc";
  8242. String sql = "select CIC_ID,"
  8243. +" heat_no,"
  8244. +" PIC_ID,"
  8245. +" SIC_ID,"
  8246. +" SFU_ID,"
  8247. +" R_CIC_ID,"
  8248. +" UTM_ID,"
  8249. +" UTM_RESULT_DESC,"
  8250. +" MATERIAL_NO,"
  8251. +" DESIGN_KEY,"
  8252. +" JUDGE_NAME,"
  8253. +" UTM_MEMO,"
  8254. +" JUDGE_TIME,"
  8255. + " cancel_memo,"
  8256. + " cancel_name,"
  8257. + "(SELECT TO_CHAR(MAX(cancel_time), 'yyyy-mm-dd hh24:mi:ss') FROM DUAL) cancel_time,"
  8258. +" z.r_cic_result_desc,"
  8259. +" z.cic_result_desc,"
  8260. +" z.pic_result_desc,"
  8261. +" z.sic_result_desc,"
  8262. +" z.mst_result_desc,"
  8263. +" z.tic_result_desc,"
  8264. +" (select max(memo)"
  8265. +" from qcm_ord_design_memo t"
  8266. +" where t.design_key = z.DESIGN_KEY) order_remark,"
  8267. +" steel_name,"
  8268. +" Z.prod_name,"
  8269. +" Z.std_name,"
  8270. +" (select decode(max(x.smp_type_code), '3', '是', '1', '是', '0', '否')"
  8271. +" from qcm_jhy_sample_consign_d x"
  8272. +" where x.specimen_no in"
  8273. +" (select z.specimen_no"
  8274. +" from qcm_judge_physical_result z"
  8275. +" where z.phy_id in (select a.phy_id"
  8276. +" from qcm_judge_physical_utm_d a"
  8277. +" where a.pic_id = z.pic_id))) is_fy,"
  8278. +" case"
  8279. +" when y.judgeresult <> '0' and z.utm_id = y.judgeid then"
  8280. +" '是'"
  8281. +" else"
  8282. +" '否'"
  8283. +" end isvalid,"
  8284. +" b.THICK,"
  8285. +" b.WIDTH,"
  8286. +" b.LENGTH,"
  8287. +" b.DELIVERY_STATE_DESC,"
  8288. +" b.FACTWEIGHT/1000 weight,"
  8289. + " b.MATERAILCOILNO "
  8290. +" from QCM_JUDGE_ULTIMATE z"
  8291. +" JOIN YDM_PRODUCT_DETAIL@LINK_YTG b"
  8292. +" on z.material_no = b.COILNO"
  8293. +" left join qcm_judge_yt_coil_result y"
  8294. +" on z.material_no = y.coil_no"
  8295. +" "+swhere+"";
  8296. try {
  8297. System.out.print(sql);
  8298. List<HashMap> list = mapper.query(sql);
  8299. cro.setResult(list);
  8300. } catch (Exception ex) {
  8301. ex.printStackTrace();
  8302. cro.setV_errCode(-1);
  8303. cro.setV_errMsg("查询失败!" + ex.getMessage());
  8304. }
  8305. SqlSession.close();
  8306. return cro;
  8307. }
  8308. public CoreReturnObject CoilGp(String material_no,String steel_name,String thick,String width,String orderno,String old_orderno,String weight,String prod_line,String username,String gp_steel_name,String gp_type) throws Exception{
  8309. try{
  8310. String sql = "";
  8311. sql = "select * from qcm_judge_locking a where a.material_no = '"+material_no+"' and a.unlock_type_code is null ";
  8312. List<QCMJudgeLocking> list = mapper.queryQCMJudgeLockings(sql);
  8313. if(list.size() >0){
  8314. QCMJudgeLocking qjl = list.get(0);
  8315. qjl.setPic_locking("0");
  8316. qjl.setUnlock_type_code("7");
  8317. qjl.setUnlock_type_desc("改判");
  8318. qjl.setTarget_design_key(orderno);
  8319. qjl.setCic_locking("0");
  8320. qjl.setFic_locking("0");
  8321. qjl.setSic_locking("0");
  8322. qjl.setDic_locking("0");
  8323. qjl.setUnlock_name(username);
  8324. mapper.UpdateQcmJudgeLocking3(qjl);
  8325. }
  8326. Date now = new Date();
  8327. SimpleDateFormat sdf=new SimpleDateFormat("yyMMdd");
  8328. String date=sdf.format(now);
  8329. sql ="select * from (select * from QCM_JUDGE_GPINFO where GP_ID like 'GP"+date+"%' order by GP_ID desc) where rownum <= 1";
  8330. List<QcmJudgeGpInfo> listUl=mapper.QcmJudgeGpInfo(sql);
  8331. int count=0;
  8332. if (listUl!=null&&listUl.size()>0) {
  8333. String s=listUl.get(0).getGp_id();
  8334. count=Integer.parseInt(s.substring(s.length()-4,s.length()));
  8335. }
  8336. count++;
  8337. String gp_id="GP"+sdf.format(now)+String.format("%04d",count);
  8338. sql = "SELECT * FROM TBE02_ORD_PRC A WHERE A.ORD_NO || A.ORD_SEQ = '"+orderno+"'";
  8339. List<HashMap> lists = mapper.query(sql);
  8340. if(lists.size()== 0){
  8341. throw new Exception("生产订单未下发,不能改判");
  8342. }
  8343. QcmJudgeGpInfo qjgp = new QcmJudgeGpInfo();
  8344. qjgp.setMaterial_no(material_no);
  8345. qjgp.setSteel_name(steel_name);
  8346. qjgp.setGp_id(gp_id);
  8347. qjgp.setThick(thick);
  8348. qjgp.setWidth(width);
  8349. qjgp.setOrderno(orderno);
  8350. qjgp.setOld_orderno(old_orderno);
  8351. qjgp.setWeight(weight);
  8352. qjgp.setProd_line(prod_line);
  8353. qjgp.setGp_name(username);
  8354. qjgp.setGp_steel_name(gp_steel_name);
  8355. qjgp.setGp_type(gp_type);
  8356. String pactno = orderno.substring(0, orderno.length()-3);
  8357. String seq = orderno.substring(orderno.length()-3,orderno.length());
  8358. mapper.insertQcmJudgeGpInfo(qjgp);
  8359. Coil_updateOrdreNo(pactno,seq,material_no,prod_line);
  8360. String type = "";
  8361. if(gp_type.contains("按批")){
  8362. type = "1";
  8363. }else if(gp_type.contains("按卷")){
  8364. type = "0";
  8365. }
  8366. mapper.updateCoilResult(material_no,type);
  8367. SqlSession.commit();
  8368. } catch (Exception e) {
  8369. SqlSession.rollback();
  8370. cro.setV_errCode(-1);
  8371. cro.setV_errMsg("改判失败!"+e.getMessage());
  8372. logger.info(new Date().toString() + " QCM.QCM03.QCM0302.CoilGp.CoilGp:【" + username + "," + material_no + "】" + e);
  8373. }
  8374. SqlSession.close();
  8375. return cro;
  8376. }
  8377. public CoreReturnObject GetGpHistory(String coil_no,String begintime,String endtime,String prod_line){
  8378. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime) && SqlJoint.IsNullOrSpace(coil_no)) {
  8379. String sky=StrSky(begintime,endtime);
  8380. if(!sky.equals("TRUE")){
  8381. SqlSession.close();
  8382. cro.setV_errCode(-1);
  8383. cro.setV_errMsg(sky);
  8384. return cro;
  8385. }
  8386. }
  8387. String swhere = "";
  8388. if(!SqlJoint.IsNullOrSpace(coil_no)){
  8389. swhere += " and material_no like '%"+coil_no+"%'";
  8390. }
  8391. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime)) { //生产时间
  8392. swhere += " and to_date(to_char(GP_TIME,'yyyy-mm-dd'),'yyyy-mm-dd') between to_date('"+begintime+"','yyyy-mm-dd') and to_date('"+endtime+"','yyyy-mm-dd')";
  8393. }
  8394. if(prod_line.equals("热连轧")){
  8395. swhere += " and prod_line in ('RZ1') ";
  8396. }else if(prod_line.equals("酸轧")){
  8397. swhere += " and prod_line in ('SZ1') ";
  8398. }else if(prod_line.equals("连退")){
  8399. swhere += " and prod_line in ('LT1') ";
  8400. }
  8401. String sql = "select gp_id,material_no,steel_name,thick,width,orderno,old_orderno,gp_name,gp_time,weight,gp_steel_name,GP_TYPE "
  8402. + " from qcm_judge_gpinfo where 1=1 "+swhere+"";
  8403. try {
  8404. System.out.print(sql);
  8405. List<HashMap> list = mapper.query(sql);
  8406. cro.setResult(list);
  8407. } catch (Exception ex) {
  8408. ex.printStackTrace();
  8409. cro.setV_errCode(-1);
  8410. cro.setV_errMsg("查询失败!" + ex.getMessage());
  8411. }
  8412. SqlSession.close();
  8413. return cro;
  8414. }
  8415. public CoreReturnObject GetGpCoilInfo(String coil_no,String prod_line){
  8416. String swhere = "";
  8417. String sql = "";
  8418. if(!SqlJoint.IsNullOrSpace(coil_no)){
  8419. swhere += " and T.OLD_SAMPL_NO like '%"+coil_no+"%'";
  8420. }
  8421. if(prod_line.equals("热连轧")){
  8422. sql = "select T.OLD_SAMPL_NO, "+
  8423. " T.SPEC_STL_GRD, "+
  8424. " T.SPEC_ABBSYM, "+
  8425. " T.COIL_THK, "+
  8426. " T.COIL_WTH, "+
  8427. " T.ACT_WGT/1000 ACT_WGT, "+
  8428. " T.ORG_ORD_NO, " +
  8429. " T.ORG_ORD_SEQ, "
  8430. + " 'RZ1' PROD_LINE,"
  8431. + "(SELECT z.PSC "
  8432. + " FROM tbb01_ord_prod z "
  8433. + " WHERE z.ORD_NO = T.ORG_ORD_NO "
  8434. + " and z.ORD_SEQ = t.ORG_ORD_SEQ "
  8435. + " AND ROWNUM = 1) PSC " +
  8436. " from TBH02_COIL_COMM T "+
  8437. " WHERE T.COIL_STAT = '2' "+
  8438. " AND T.ORD_FL = '2'"+
  8439. " AND T.ORD_NO IS NULL"+swhere+"";
  8440. }else if(prod_line.equals("连退")){
  8441. sql = "select T.OLD_SAMPL_NO, " +
  8442. " T.SPEC_STL_GRD, "+
  8443. " T.SPEC_ABBSYM," +
  8444. " T.COIL_THK," +
  8445. " T.COIL_WTH," +
  8446. " T.ACT_WGT / 1000 ACT_WGT," +
  8447. " T.ORG_ORD_NO," +
  8448. " T.ORG_ORD_SEQ," +
  8449. " 'LT1' PROD_LINE," +
  8450. " (SELECT z.PSC" +
  8451. " FROM tbb01_ord_prod z" +
  8452. " WHERE z.ORD_NO = T.ORG_ORD_NO" +
  8453. " and z.ORD_SEQ = t.ORG_ORD_SEQ" +
  8454. " AND ROWNUM = 1) PSC" +
  8455. " from C_TBC02_COIL_COMM T" +
  8456. " WHERE T.COIL_STAT = '2'" +
  8457. " AND T.ORD_FL = '2'" +
  8458. " AND T.ORD_NO IS NULL"+swhere+"";
  8459. }else{
  8460. sql = "select T.OLD_SAMPL_NO, "+
  8461. " T.SPEC_STL_GRD, "+
  8462. " T.SPEC_ABBSYM, "+
  8463. " T.COIL_THK, "+
  8464. " T.COIL_WTH, "+
  8465. " T.ACT_WGT/1000 ACT_WGT, "+
  8466. " T.ORG_ORD_NO, " +
  8467. " T.ORG_ORD_SEQ, "
  8468. + " 'RZ1' PROD_LINE,"
  8469. + "(SELECT z.PSC "
  8470. + " FROM tbb01_ord_prod z "
  8471. + " WHERE z.ORD_NO = T.ORG_ORD_NO "
  8472. + " and z.ORD_SEQ = t.ORG_ORD_SEQ "
  8473. + " AND ROWNUM = 1) PSC " +
  8474. " from TBH02_COIL_COMM T "+
  8475. " WHERE T.COIL_STAT = '2' "+
  8476. " AND T.ORD_FL = '2'"+
  8477. " AND T.ORD_NO IS NULL"+swhere+""
  8478. + " UNION ALL "
  8479. + "select T.OLD_SAMPL_NO, " +
  8480. " T.SPEC_STL_GRD, "+
  8481. " T.SPEC_ABBSYM," +
  8482. " T.COIL_THK," +
  8483. " T.COIL_WTH," +
  8484. " T.ACT_WGT / 1000 ACT_WGT," +
  8485. " T.ORG_ORD_NO," +
  8486. " T.ORG_ORD_SEQ," +
  8487. " 'LT1' PROD_LINE," +
  8488. " (SELECT z.PSC" +
  8489. " FROM tbb01_ord_prod z" +
  8490. " WHERE z.ORD_NO = T.ORG_ORD_NO" +
  8491. " and z.ORD_SEQ = t.ORG_ORD_SEQ" +
  8492. " AND ROWNUM = 1) PSC" +
  8493. " from C_TBC02_COIL_COMM T" +
  8494. " WHERE T.COIL_STAT = '2'" +
  8495. " AND T.ORD_FL = '2'" +
  8496. " AND T.ORD_NO IS NULL"+swhere+"";
  8497. }
  8498. try {
  8499. System.out.print(sql);
  8500. List<HashMap> list = mapper.query(sql);
  8501. cro.setResult(list);
  8502. } catch (Exception ex) {
  8503. ex.printStackTrace();
  8504. cro.setV_errCode(-1);
  8505. cro.setV_errMsg("查询失败!" + ex.getMessage());
  8506. }
  8507. SqlSession.close();
  8508. return cro;
  8509. }
  8510. public CoreReturnObject GetUnjudgeInfoBF(String begintime,String endtime,String bbatchno,String ebatchno,String design_key,String Psc_desc,String prodline,String heat_no,String time_type,String buttress){
  8511. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime) && SqlJoint.IsNullOrSpace(bbatchno)) {
  8512. String sky=StrSky(begintime,endtime);
  8513. if(!sky.equals("TRUE")){
  8514. SqlSession.close();
  8515. cro.setV_errCode(-1);
  8516. cro.setV_errMsg(sky);
  8517. return cro;
  8518. }
  8519. }
  8520. String swhere = "";
  8521. String swhere1 = "";
  8522. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime) && SqlJoint.IsNullOrSpace(bbatchno) && SqlJoint.IsNullOrSpace(ebatchno) && time_type.equals("0")) { //生产时间
  8523. swhere += " and to_date(to_char(PRODUCETIME,'yyyy-mm-dd'),'yyyy-mm-dd') between to_date('"+begintime+"','yyyy-mm-dd') and to_date('"+endtime+"','yyyy-mm-dd')";
  8524. }
  8525. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime) && SqlJoint.IsNullOrSpace(bbatchno) && SqlJoint.IsNullOrSpace(ebatchno) && time_type.equals("1")) { //生产时间
  8526. swhere1 += " and b.physid in (select pic_id from qcm_judge_physical_utm_m where to_date(to_char(create_time,'yyyy-mm-dd'),'yyyy-mm-dd') between to_date('"+begintime+"','yyyy-mm-dd') and to_date('"+endtime+"','yyyy-mm-dd'))";
  8527. }
  8528. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime) && SqlJoint.IsNullOrSpace(bbatchno) && SqlJoint.IsNullOrSpace(ebatchno) && time_type.equals("2")) { //生产时间
  8529. swhere1 += " and to_date(to_char(b.ordernouptime,'yyyy-mm-dd'),'yyyy-mm-dd') between to_date('"+begintime+"','yyyy-mm-dd') and to_date('"+endtime+"','yyyy-mm-dd')";
  8530. }
  8531. if (!SqlJoint.IsNullOrSpace(bbatchno)) { //起始轧批号
  8532. swhere += "and batchno >= '"+bbatchno+"'";
  8533. }
  8534. if (!SqlJoint.IsNullOrSpace(ebatchno)) { //最后轧批号
  8535. swhere += "and batchno <= '"+ebatchno+"'";
  8536. }
  8537. if (!SqlJoint.IsNullOrSpace(design_key)) { //销售订单号
  8538. swhere += " and design_key like '"+design_key+"%'";
  8539. }
  8540. if (!SqlJoint.IsNullOrSpace(Psc_desc)) { //Psc_desc
  8541. swhere += " and psc_desc like '%"+Psc_desc+"%'";
  8542. }
  8543. if(!SqlJoint.IsNullOrSpace(heat_no)){
  8544. swhere1 += " and a.stoveno like '%"+heat_no+"%'";
  8545. }
  8546. if(!SqlJoint.IsNullOrSpace(buttress)){
  8547. swhere1 += " and f.buttress like '%"+buttress+"%'";
  8548. }
  8549. swhere1 += " and b.judgeresult = '0'";
  8550. swhere += " and (design_key like '19%' or design_key is null)";
  8551. /*//表面
  8552. swhere1 += " and b.surfaceresult not in ('0','2')";
  8553. //熔炼
  8554. swhere1 += " and b.r_chemresult not in ('0','2') ";
  8555. //成品成分
  8556. swhere += " and (chemresult not in ('0','2') or ( not exists (select 1 from qcm_ord_design_std_cic t2 where t2.design_key = t1.design_key and t2.std_type_code = 'B') AND chemresult = '0'))";
  8557. //公差
  8558. swhere1 += "and b.sizeresult not in ('0','2') ";
  8559. //材质
  8560. swhere += " and (physresult not in ('0','2') or ( not exists (select 1 from qcm_ord_design_std_pic t2 where t2.design_key = t1.design_key) AND physresult = '0'))";
  8561. //探伤
  8562. swhere += " and (spyresult not in ('0','2') or ( not exists (select 1 from qcm_ord_design_std_dic t2 where t2.design_key = t1.design_key) AND spyresult = '0'))";
  8563. swhere1 += " and (b.sizeresult not in ('0') or b.surfaceresult not in ('0') or b.r_chemresult not in ('0') or b.chemresult not in ('0') or b.physresult not in ('0'))";
  8564. swhere1 += " and b.sizeresult not in ('2') and b.surfaceresult not in ('2') and b.r_chemresult not in ('2') and b.chemresult not in ('2') and b.physresult not in ('2')";
  8565. if(!SqlJoint.IsNullOrSpace(cert_inst_name) && !cert_inst_name.equals("全部")){
  8566. swhere += "and exists (select 1 from qcm_ord_design_sample_m t2 where t2.design_key = t1.design_key and t2.org_name = '"+cert_inst_name+"')";
  8567. }*/
  8568. String sql = "";
  8569. if(prodline.equals("厚板线")){
  8570. sql = "select T1.*,(SELECT PF.EXAMINE_RESULT FROM pf_examine@xgcx PF WHERE PF.billetid = T1.MATERIAL_NO and PF.isvalid <> '0') EXAMINE_RESULT "
  8571. + " from (select RCL_STATE ht_no,planorderform planorderno,PLANCARDNUMBER plansteel,a.ROLLNUMBER batchno, a.PLANNUMBER plan_no, a.BILLETID material_no, "
  8572. + " ALLOTORDERFORM design_key, '' PSC_DESC,a.stoveno heat_no, c.level_desc gc_level_desc, d.level_desc bm_level_desc,e.level_desc xbm_level_desc,"
  8573. +" (select max(memo) from qcm_ord_design_memo a where a.design_key = ALLOTORDERFORM) order_remark, (select case when count(1) = 0 then '无' else max(a.dic_name) end from qcm_ord_design_std_dic a where a.design_key = ALLOTORDERFORM) tsyq,"
  8574. + " PLY thick, a.WIDTH, a.LENGTH,THEORYWEIGHT weight, (select name_ from scm_base_info@xgcx where id_ = CUTSIDESTATE) CUTSIDESTATE, "
  8575. + " (select name_ from scm_base_info@xgcx where id_ = ROLE) FIXSIZE, PRODUCETIME, b.sizeid,case when (select count(1) from qcm_ord_design_std_cic x "
  8576. + " where x.design_key = ALLOTORDERFORM and x.std_type_code = 'C') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC,b.SIZERESULT_DESC, b.PHYSRESULT_DESC, "
  8577. + " b.SPYRESULT_DESC,b.SURFACERESULT_DESC,b.R_CHEMRESULT_DESC,b.chemid,b. physid,b.surfaceid,b.up_surface_result_id_desc,b.ud_surface_result_id_desc,b.up_surface_result_desc,b.ud_surface_result_desc,b.spyid,b.r_chemid,B.physresult, B.chemresult,b.spyresult,b.fst_judgeresult_desc, "
  8578. + "(select to_char(create_time,'yyyy-mm-dd hh24:mi:ss') from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  8579. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type, a.determinantcardnumber steel_code, a.determinantcardnumber steel_name , t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, "
  8580. + " t2.PURPOSEID prod_code, C2N@xgcx(t2.PURPOSEID) prod_name,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC,to_char(b.ordernouptime,'yyyy-mm-dd hh24:mi:ss') ordernouptime,f.buttress,to_char(A.INSTORAGETIME,'yyyy-mm-dd hh24:mi:ss') INTIME, "
  8581. + " (select max(t.onememo) "
  8582. + " from qcm_jhy_sample_consign_d t, qcm_jhy_sample_r_ord r "
  8583. + " where t.smp_no = r.smp_no "
  8584. + " and r.design_key like '19%' "
  8585. + " and t.material_no = a.billetid "
  8586. + " and r.steel_code = a.determinantcardnumber) reason from zj_result_all@xgcx b "
  8587. + " left join kch_turnofflist@xgcx a on a.BILLETID = b.BILLETID left join sel_pactdetail_new@xgcx t2 on planorderform = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.up_surface_result_id_desc = d.surface_id left join qcm_judge_surface e on e.material_no = b.billetid and b.ud_surface_result_id_desc = e.surface_id left join kch_turnoffbuttresslist@xgcx f on a.billetid = f.billetid where 1=1 and (a.STORAGESTATUS = '501602' or ( A.BILLETID IN (select serialnumber from kch_turnoffsendlist@xgcx where sendtype = '3' and isvalid <> '0' and isvalid <> '2'))) "+swhere1+" "
  8588. +" union all select RCL_STATE ht_no,a.planorderno,PLANCARDNUMBER plansteel,a.ROLLNUMBER batchno, PLANNO plan_no, a.BILLETID material_no, a.ORDERNO design_key, "
  8589. + " '' PSC_DESC, a.stoveno heat_no,c.level_desc gc_level_desc, d.level_desc bm_level_desc,e.level_desc xbm_level_desc,(select max(memo) from qcm_ord_design_memo a where a.design_key = a.ORDERNO) order_remark,(select case when count(1) = 0 then '无' else max(a.dic_name) end from qcm_ord_design_std_dic a where a.design_key = a.ORDERNO) tsyq, PLY thick, a.WIDTH, a.LENGTH, "
  8590. + " THEORYWEIGHT weight, c2n@XGCX(CLIPTYPEPROCESS) CUTSIDESTATE, c2n@XGCX(RuLE) FIXSIZE, a.PTIME PRODUCETIME, b.sizeid, case when (select count(1) "
  8591. + " from qcm_ord_design_std_cic x where x.design_key = a.orderno and x.std_type_code = 'C') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC, "
  8592. + " b.SIZERESULT_DESC, b.PHYSRESULT_DESC, b.SPYRESULT_DESC, "
  8593. + " b.SURFACERESULT_DESC, b.R_CHEMRESULT_DESC, b.chemid, b. physid, b.surfaceid, b.up_surface_result_id_desc, b.ud_surface_result_id_desc,b.up_surface_result_desc,b.ud_surface_result_desc,"
  8594. + " b.spyid, b.r_chemid, B.physresult,B.chemresult, b.spyresult, b.fst_judgeresult_desc,(select to_char(create_time,'yyyy-mm-dd hh24:mi:ss') from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  8595. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type, a.determinantcardnumber steel_code, a.determinantcardnumber steel_name, t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, t2.PURPOSEID prod_code, C2N@xgcx(t2.PURPOSEID) prod_name, "
  8596. + " psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC,to_char(b.ordernouptime,'yyyy-mm-dd hh24:mi:ss') ordernouptime,f.buttress,to_char(A.INTIME,'yyyy-mm-dd hh24:mi:ss') INTIME, "
  8597. + " (select max(t.onememo) "
  8598. + " from qcm_jhy_sample_consign_d t, qcm_jhy_sample_r_ord r "
  8599. + " where t.smp_no = r.smp_no "
  8600. + " and r.design_key like '19%' "
  8601. + " and t.material_no = a.billetid "
  8602. + " and r.steel_code = a.determinantcardnumber) reason from zj_result_all@xgcx b left join kcj_turnofflist@xgcx a on a.BILLETID = b.BILLETID left join sel_pactdetail_new@xgcx t2 on a.planorderno = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.up_surface_result_id_desc = d.surface_id left join qcm_judge_surface e on e.material_no = b.billetid and b.ud_surface_result_id_desc = e.surface_id left join kcj_turnoffbuttresslist@xgcx f on a.billetid = f.billetid "
  8603. + " where 1 = 1 and a.STORAGESTATUS = '501602' and b.judgeresult = '0' and a.billetid like 'H%' "+swhere1+" "
  8604. + " union all "
  8605. + " select RCL_STATE ht_no,a.planorderno,PLANCARDNUMBER plansteel,a.ROLLNUMBER batchno, PLANNO plan_no,a.BILLETID material_no,a.ORDERNO design_key,'' PSC_DESC,a.stoveno heat_no,c.level_desc gc_level_desc, d.level_desc bm_level_desc,e.level_desc xbm_level_desc,(select max(memo) from qcm_ord_design_memo a where a.design_key = a.ORDERNO) order_remark,(select case when count(1) = 0 then '无' else max(a.dic_name) end from qcm_ord_design_std_dic a where a.design_key = a.ORDERNO) tsyq, "
  8606. + " PLY thick, a.WIDTH, a.LENGTH,THEORYWEIGHT weight,c2n@XGCX(CLIPTYPEPROCESS) CUTSIDESTATE, c2n@XGCX(RuLE) FIXSIZE, case when a.ROLLNUMBER like 'H%' THEN (SELECT PRODUCETIME FROM KCH_TURNOFFLIST@XGCX WHERE BILLETID = B.BILLETID) WHEN a.ROLLNUMBER like 'Z%' THEN (SELECT PTIME FROM KCZ_TURNOFFLIST@XGCX WHERE BILLETID = B.BILLETID) "
  8607. + " END PRODUCETIME, b.sizeid, case when (select count(1) from qcm_ord_design_std_cic x where x.design_key = a.orderno and x.std_type_code = 'C') > 0 then "
  8608. + " b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC, b.SIZERESULT_DESC, b.PHYSRESULT_DESC, "
  8609. + " b.SPYRESULT_DESC, b.SURFACERESULT_DESC, b.R_CHEMRESULT_DESC, b.chemid, b. physid, b.surfaceid, b.up_surface_result_id_desc, "
  8610. + " b.ud_surface_result_id_desc, b.up_surface_result_desc,b.ud_surface_result_desc, b.spyid, b.r_chemid, B.physresult, B.chemresult, b.spyresult, b.fst_judgeresult_desc, (select to_char(create_time,'yyyy-mm-dd hh24:mi:ss')from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  8611. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type,a.determinantcardnumber steel_code,a.determinantcardnumber steel_name,t2.USEDSTAND std_code,C2N@xgcx(t2.USEDSTAND) std_name,t2.PURPOSEID prod_code,C2N@xgcx(t2.PURPOSEID) prod_name,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC,to_char(b.ordernouptime,'yyyy-mm-dd hh24:mi:ss') ordernouptime,f.buttress,to_char(A.INTIME,'yyyy-mm-dd hh24:mi:ss') INTIME, "
  8612. + " (select max(t.onememo) "
  8613. + " from qcm_jhy_sample_consign_d t, qcm_jhy_sample_r_ord r "
  8614. + " where t.smp_no = r.smp_no "
  8615. + " and r.design_key like '19%' "
  8616. + " and t.material_no = a.billetid "
  8617. + " and r.steel_code = a.determinantcardnumber) reason from zj_result_all@xgcx b left join kcj_storagelist@xgcx a on a.BILLETID = b.BILLETID left join sel_pactdetail_new@xgcx t2 on a.planorderno = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.up_surface_result_id_desc = d.surface_id left join qcm_judge_surface e on e.material_no = b.billetid and b.ud_surface_result_id_desc = e.surface_id left join kcj_storagebuttresslist@xgcx f on a.billetid = f.billetid where 1 = 1 and a.STORAGESTATUS = '501002' and b.judgeresult = '0' AND A.BILLETID LIKE 'H%' "+swhere1+") T1 where 1=1 "+swhere+"";
  8618. }else if(prodline.equals("中板线")){
  8619. sql = "select T1.*,(SELECT PF.EXAMINE_RESULT FROM pf_examine@xgcx PF WHERE PF.billetid = T1.MATERIAL_NO and PF.isvalid <> '0') EXAMINE_RESULT "
  8620. + " from (select RCL_STATE ht_no,planorderno,PLANCARDNUMBER plansteel,a.ROLLNUMBER batchno, PLANNO plan_no, a.BILLETID material_no, A.ORDERNO design_key,'' PSC_DESC, a.stoveno heat_no, c.level_desc gc_level_desc, d.level_desc bm_level_desc, e.level_desc xbm_level_desc,"
  8621. +" (select max(memo) from qcm_ord_design_memo a where a.design_key = A.ORDERNO) order_remark, (select case when count(1) = 0 then '无' else max(a.dic_name) end from qcm_ord_design_std_dic a where a.design_key = a.ORDERNO) tsyq,"
  8622. + " PLY thick, A.WIDTH, "
  8623. + " A.LENGTH, THEORYWEIGHT weight, (select name_ from scm_base_info@xgcx where id_ = CUTSIDESTATE) CUTSIDESTATE, (select name_ from scm_base_info@xgcx where id_ = RuLE) FIXSIZE, "
  8624. + " PTIME PRODUCETIME, b.sizeid,case when (select count(1) from qcm_ord_design_std_cic x "
  8625. + " where x.design_key = A.orderno and x.std_type_code = 'C') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC,b.SIZERESULT_DESC, b.PHYSRESULT_DESC, "
  8626. + " b.SPYRESULT_DESC,b.SURFACERESULT_DESC,b.R_CHEMRESULT_DESC,b.chemid,b.physid,b.surfaceid,b.up_surface_result_id_desc,b.ud_surface_result_id_desc,b.up_surface_result_desc,b.ud_surface_result_desc,b.spyid,b.r_chemid,B.physresult, B.chemresult,b.spyresult,b.fst_judgeresult_desc,(select to_char(create_time,'yyyy-mm-dd hh24:mi:ss') from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  8627. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type, a.determinantcardnumber steel_code, a.determinantcardnumber steel_name , t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, "
  8628. + " t2.PURPOSEID prod_code, C2N@xgcx(t2.PURPOSEID) prod_name,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC,to_char(b.ordernouptime,'yyyy-mm-dd hh24:mi:ss') ordernouptime,f.buttress,to_char(A.INTIME,'yyyy-mm-dd hh24:mi:ss') INTIME, "
  8629. + " (select max(t.onememo) "
  8630. + " from qcm_jhy_sample_consign_d t, qcm_jhy_sample_r_ord r "
  8631. + " where t.smp_no = r.smp_no "
  8632. + " and r.design_key like '19%' "
  8633. + " and t.material_no = a.billetid "
  8634. + " and r.steel_code = a.determinantcardnumber) reason from zj_result_all@xgcx b left join kcz_turnofflist@xgcx a on a.BILLETID = b.BILLETID left join sel_pactdetail_new@xgcx t2 on A.planorderno = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.up_surface_result_id_desc = d.surface_id left join qcm_judge_surface e on e.material_no = b.billetid and b.ud_surface_result_id_desc = e.surface_id left join kcz_turnoffbuttresslist@xgcx f on a.billetid = f.billetid "
  8635. + " where 1=1 and (a.STORAGESTATUS = '501602' or ( A.BILLETID IN (select serialnumber from kcz_turnoffsendlist@xgcx where sendtype = '3' and isvalid <> '0' and isvalid <> '2'))) "+swhere1+
  8636. " union all select RCL_STATE ht_no,planorderno,PLANCARDNUMBER plansteel,a.ROLLNUMBER batchno, PLANNO plan_no, a.BILLETID material_no, A.ORDERNO design_key, "
  8637. + " '' PSC_DESC,a.stoveno heat_no,c.level_desc gc_level_desc, d.level_desc bm_level_desc,e.level_desc xbm_level_desc,(select max(memo) from qcm_ord_design_memo a where a.design_key = A.ORDERNO) order_remark,(select case when count(1) = 0 then '无' else max(a.dic_name) end from qcm_ord_design_std_dic a where a.design_key = a.ORDERNO) tsyq, PLY thick, A.WIDTH, A.LENGTH, "
  8638. + " THEORYWEIGHT weight, c2n@XGCX(CLIPTYPEPROCESS) CUTSIDESTATE, c2n@XGCX(RuLE) FIXSIZE, a.PTIME PRODUCETIME, b.sizeid, case when (select count(1) "
  8639. + " from qcm_ord_design_std_cic x where x.design_key = A.orderno and x.std_type_code = 'C') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC, "
  8640. + " b.SIZERESULT_DESC, b.PHYSRESULT_DESC, b.SPYRESULT_DESC, "
  8641. + " b.SURFACERESULT_DESC, b.R_CHEMRESULT_DESC, b.chemid, b. physid, b.surfaceid, b.up_surface_result_id_desc, b.ud_surface_result_id_desc,b.up_surface_result_desc,b.ud_surface_result_desc,"
  8642. + " b.spyid, b.r_chemid, B.physresult,B.chemresult, b.spyresult, b.fst_judgeresult_desc,(select to_char(create_time,'yyyy-mm-dd hh24:mi:ss') from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  8643. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type, a.determinantcardnumber steel_code, a.determinantcardnumber steel_name, t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, t2.PURPOSEID prod_code, C2N@xgcx(t2.PURPOSEID) prod_name, "
  8644. + " psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC,to_char(b.ordernouptime,'yyyy-mm-dd hh24:mi:ss') ordernouptime,f.buttress,to_char(A.INTIME,'yyyy-mm-dd hh24:mi:ss') INTIME, "
  8645. + " (select max(t.onememo) "
  8646. + " from qcm_jhy_sample_consign_d t, qcm_jhy_sample_r_ord r "
  8647. + " where t.smp_no = r.smp_no "
  8648. + " and r.design_key like '19%' "
  8649. + " and t.material_no = a.billetid "
  8650. + " and r.steel_code = a.determinantcardnumber) reason from zj_result_all@xgcx b left join kcj_turnofflist@xgcx a on a.BILLETID = b.BILLETID left join sel_pactdetail_new@xgcx t2 on A.planorderno = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.up_surface_result_id_desc = d.surface_id left join qcm_judge_surface e on e.material_no = b.billetid and b.ud_surface_result_id_desc = e.surface_id left join kcj_turnoffbuttresslist@xgcx f on a.billetid = f.billetid "
  8651. + " where 1 = 1 and a.STORAGESTATUS = '501602' and b.judgeresult = '0' and a.billetid like 'Z%' "+swhere1+
  8652. " union all "
  8653. + " select RCL_STATE ht_no,planorderno,PLANCARDNUMBER plansteel,a.ROLLNUMBER batchno, PLANNO plan_no,a.BILLETID material_no,A.ORDERNO design_key,'' PSC_DESC,a.stoveno heat_no,c.level_desc gc_level_desc, d.level_desc bm_level_desc,e.level_desc xbm_level_desc,(select max(memo) from qcm_ord_design_memo a where a.design_key = A.ORDERNO) order_remark,(select case when count(1) = 0 then '无' else max(a.dic_name) end from qcm_ord_design_std_dic a where a.design_key = a.ORDERNO) tsyq, "
  8654. + " PLY thick, A.WIDTH, A.LENGTH,THEORYWEIGHT weight,c2n@XGCX(CLIPTYPEPROCESS) CUTSIDESTATE, c2n@XGCX(RuLE) FIXSIZE, case when a.ROLLNUMBER like 'H%' THEN (SELECT PRODUCETIME FROM KCH_TURNOFFLIST@XGCX WHERE BILLETID = B.BILLETID) WHEN a.ROLLNUMBER like 'Z%' THEN (SELECT PTIME FROM KCZ_TURNOFFLIST@XGCX WHERE BILLETID = B.BILLETID) "
  8655. + " END PRODUCETIME, b.sizeid, case when (select count(1) from qcm_ord_design_std_cic x where x.design_key = A.orderno and x.std_type_code = 'C') > 0 then "
  8656. + " b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC, b.SIZERESULT_DESC, b.PHYSRESULT_DESC, "
  8657. + " b.SPYRESULT_DESC, b.SURFACERESULT_DESC, b.R_CHEMRESULT_DESC, b.chemid, b. physid, b.surfaceid, b.up_surface_result_id_desc, "
  8658. + " b.ud_surface_result_id_desc,b.up_surface_result_desc,b.ud_surface_result_desc, b.spyid, b.r_chemid, B.physresult, B.chemresult, b.spyresult, b.fst_judgeresult_desc,(select to_char(create_time,'yyyy-mm-dd hh24:mi:ss') from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  8659. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type,a.determinantcardnumber steel_code,a.determinantcardnumber steel_name,t2.USEDSTAND std_code,C2N@xgcx(t2.USEDSTAND) std_name,t2.PURPOSEID prod_code,C2N@xgcx(t2.PURPOSEID) prod_name,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC,to_char(b.ordernouptime,'yyyy-mm-dd hh24:mi:ss') ordernouptime,f.buttress,to_char(A.INTIME,'yyyy-mm-dd hh24:mi:ss') INTIME, "
  8660. + " (select max(t.onememo) "
  8661. + " from qcm_jhy_sample_consign_d t, qcm_jhy_sample_r_ord r "
  8662. + " where t.smp_no = r.smp_no "
  8663. + " and r.design_key like '19%' "
  8664. + " and t.material_no = a.billetid "
  8665. + " and r.steel_code = a.determinantcardnumber) reason from zj_result_all@xgcx b left join kcj_storagelist@xgcx a on a.BILLETID = b.BILLETID left join sel_pactdetail_new@xgcx t2 "
  8666. + " on A.planorderno = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.up_surface_result_id_desc = d.surface_id left join qcm_judge_surface e on e.material_no = b.billetid and b.ud_surface_result_id_desc = e.surface_id left join kcj_storagebuttresslist@xgcx f on a.billetid = f.billetid where 1 = 1 and a.STORAGESTATUS = '501002' and b.judgeresult = '0' AND A.BILLETID LIKE 'Z%' "+swhere1+") T1 where 1 = 1 "+swhere+"";
  8667. }else{
  8668. sql = "select t1.*,(SELECT PF.EXAMINE_RESULT FROM pf_examine@xgcx PF WHERE PF.billetid = T1.MATERIAL_NO and PF.isvalid <> '0') EXAMINE_RESULT "
  8669. + "from (select RCL_STATE ht_no,planorderform planorderno,PLANCARDNUMBER plansteel,a.ROLLNUMBER batchno, a.PLANNUMBER plan_no, a.BILLETID material_no, "
  8670. + " ALLOTORDERFORM design_key, '' PSC_DESC,a.stoveno heat_no,c.level_desc gc_level_desc, d.level_desc bm_level_desc,e.level_desc xbm_level_desc, "
  8671. +" (select max(memo) from qcm_ord_design_memo a where a.design_key = ALLOTORDERFORM) order_remark,(select case when count(1) = 0 then '无' else max(a.dic_name) end from qcm_ord_design_std_dic a where a.design_key = ALLOTORDERFORM) tsyq, "
  8672. + " PLY thick, a.WIDTH, a.LENGTH,THEORYWEIGHT weight, (select name_ from scm_base_info@xgcx where id_ = CUTSIDESTATE) CUTSIDESTATE, "
  8673. + " (select name_ from scm_base_info@xgcx where id_ = ROLE) FIXSIZE, PRODUCETIME, b.sizeid,case when (select count(1) from qcm_ord_design_std_cic x "
  8674. + " where x.design_key = ALLOTORDERFORM and x.std_type_code = 'C') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC,b.SIZERESULT_DESC, b.PHYSRESULT_DESC, "
  8675. + " b.SPYRESULT_DESC,b.SURFACERESULT_DESC,b.R_CHEMRESULT_DESC,b.chemid,b. physid,b.surfaceid,b.up_surface_result_id_desc,b.ud_surface_result_id_desc,b.up_surface_result_desc,b.ud_surface_result_desc,b.spyid,b.r_chemid,B.physresult, B.chemresult,b.spyresult,b.fst_judgeresult_desc,(select to_char(create_time,'yyyy-mm-dd hh24:mi:ss') from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  8676. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type, a.determinantcardnumber steel_code, a.determinantcardnumber steel_name , t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, "
  8677. + " t2.PURPOSEID prod_code, C2N@xgcx(t2.PURPOSEID) prod_name,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC,to_char(b.ordernouptime,'yyyy-mm-dd hh24:mi:ss') ordernouptime,f.buttress,to_char(A.INSTORAGETIME,'yyyy-mm-dd hh24:mi:ss') INTIME, "
  8678. + " (select max(t.onememo) "
  8679. + " from qcm_jhy_sample_consign_d t, qcm_jhy_sample_r_ord r "
  8680. + " where t.smp_no = r.smp_no "
  8681. + " and r.design_key like '19%' "
  8682. + " and t.material_no = a.billetid "
  8683. + " and r.steel_code = a.determinantcardnumber) reason from zj_result_all@xgcx b "
  8684. + " left join kch_turnofflist@xgcx a on a.BILLETID = b.BILLETID left join sel_pactdetail_new@xgcx t2 on a.planorderform = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.up_surface_result_id_desc = d.surface_id left join qcm_judge_surface e on e.material_no = b.billetid and b.ud_surface_result_id_desc = e.surface_id left join kch_turnoffbuttresslist@xgcx f on a.billetid = f.billetid where 1=1 AND (a.STORAGESTATUS = '501602' or ( A.BILLETID IN ( select serialnumber from kch_turnoffsendlist@xgcx where sendtype = '3' and isvalid <> '0' and isvalid <> '2'))) "+swhere1
  8685. + " union all "
  8686. + "select RCL_STATE ht_no,planorderno,PLANCARDNUMBER plansteel,a.ROLLNUMBER batchno, PLANNO plan_no, a.BILLETID material_no, a.ORDERNO design_key,'' PSC_DESC,a.stoveno heat_no, c.level_desc gc_level_desc, d.level_desc bm_level_desc,e.level_desc xbm_level_desc, "
  8687. +" (select max(memo) from qcm_ord_design_memo a where a.design_key = a.ORDERNO) order_remark,(select case when count(1) = 0 then '无' else max(a.dic_name) end from qcm_ord_design_std_dic a where a.design_key = a.ORDERNO) tsyq, "
  8688. + " PLY thick, a.WIDTH, "
  8689. + " a.LENGTH, THEORYWEIGHT weight, (select name_ from scm_base_info@xgcx where id_ = CUTSIDESTATE) CUTSIDESTATE, (select name_ from scm_base_info@xgcx where id_ = RuLE) FIXSIZE, "
  8690. + " PTIME PRODUCETIME, b.sizeid,case when (select count(1) from qcm_ord_design_std_cic x "
  8691. + " where x.design_key = a.orderno and x.std_type_code = 'C') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC,b.SIZERESULT_DESC,b.PHYSRESULT_DESC, "
  8692. + " b.SPYRESULT_DESC,b.SURFACERESULT_DESC,b.R_CHEMRESULT_DESC,b.chemid,b. physid,b.surfaceid,b.up_surface_result_id_desc,b.ud_surface_result_id_desc,b.up_surface_result_desc,b.ud_surface_result_desc,b.spyid,b.r_chemid,B.physresult, B.chemresult,b.spyresult,b.fst_judgeresult_desc,(select to_char(create_time,'yyyy-mm-dd hh24:mi:ss') from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  8693. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type, a.determinantcardnumber steel_code, a.determinantcardnumber steel_name , t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, "
  8694. + " t2.PURPOSEID prod_code, C2N@xgcx(t2.PURPOSEID) prod_name,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC,to_char(b.ordernouptime,'yyyy-mm-dd hh24:mi:ss') ordernouptime,f.buttress,to_char(A.INTIME,'yyyy-mm-dd hh24:mi:ss') INTIME, "
  8695. + " (select max(t.onememo) "
  8696. + " from qcm_jhy_sample_consign_d t, qcm_jhy_sample_r_ord r "
  8697. + " where t.smp_no = r.smp_no "
  8698. + " and r.design_key like '19%' "
  8699. + " and t.material_no = a.billetid "
  8700. + " and r.steel_code = a.determinantcardnumber) reason from zj_result_all@xgcx b left join kcz_turnofflist@xgcx a on a.BILLETID = b.BILLETID left join sel_pactdetail_new@xgcx t2 on a.planorderno = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.up_surface_result_id_desc = d.surface_id left join qcm_judge_surface e on e.material_no = b.billetid and b.ud_surface_result_id_desc = e.surface_id left join kcz_turnoffbuttresslist@xgcx f on a.billetid = f.billetid "
  8701. + " where 1=1 and (a.STORAGESTATUS = '501602' or ( A.BILLETID IN (select serialnumber from kcz_turnoffsendlist@xgcx where sendtype = '3' and isvalid <> '0' and isvalid <> '2'))) "+swhere1
  8702. +" union all select RCL_STATE ht_no,planorderno,PLANCARDNUMBER plansteel,a.ROLLNUMBER batchno, PLANNO plan_no, a.BILLETID material_no, a.ORDERNO design_key, "
  8703. + " '' PSC_DESC, a.stoveno heat_no,c.level_desc gc_level_desc, d.level_desc bm_level_desc,e.level_desc xbm_level_desc,(select max(memo) from qcm_ord_design_memo a where a.design_key = a.ORDERNO) order_remark,(select case when count(1) = 0 then '无' else max(a.dic_name) end from qcm_ord_design_std_dic a where a.design_key = a.ORDERNO) tsyq, PLY thick, a.WIDTH, a.LENGTH, "
  8704. + " THEORYWEIGHT weight, c2n@XGCX(CLIPTYPEPROCESS) CUTSIDESTATE, c2n@XGCX(RuLE) FIXSIZE, a.PTIME PRODUCETIME, b.sizeid, case when (select count(1) "
  8705. + " from qcm_ord_design_std_cic x where x.design_key = a.orderno and x.std_type_code = 'C') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC, "
  8706. + " b.SIZERESULT_DESC, b.PHYSRESULT_DESC, b.SPYRESULT_DESC, "
  8707. + " b.SURFACERESULT_DESC, b.R_CHEMRESULT_DESC, b.chemid, b. physid, b.surfaceid, b.up_surface_result_id_desc, b.ud_surface_result_id_desc,b.up_surface_result_desc,b.ud_surface_result_desc,"
  8708. + " b.spyid, b.r_chemid, B.physresult,B.chemresult, b.spyresult, b.fst_judgeresult_desc,(select to_char(create_time,'yyyy-mm-dd hh24:mi:ss') from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  8709. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type, a.determinantcardnumber steel_code, a.determinantcardnumber steel_name, t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, t2.PURPOSEID prod_code, C2N@xgcx(t2.PURPOSEID) prod_name, "
  8710. + " psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC,to_char(b.ordernouptime,'yyyy-mm-dd hh24:mi:ss') ordernouptime,f.buttress,to_char(A.INTIME,'yyyy-mm-dd hh24:mi:ss') INTIME, "
  8711. + " (select max(t.onememo) "
  8712. + " from qcm_jhy_sample_consign_d t, qcm_jhy_sample_r_ord r "
  8713. + " where t.smp_no = r.smp_no "
  8714. + " and r.design_key like '19%' "
  8715. + " and t.material_no = a.billetid "
  8716. + " and r.steel_code = a.determinantcardnumber) reason from zj_result_all@xgcx b left join kcj_turnofflist@xgcx a on a.BILLETID = b.BILLETID left join sel_pactdetail_new@xgcx t2 on a.planorderno = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.up_surface_result_id_desc = d.surface_id left join qcm_judge_surface e on e.material_no = b.billetid and b.ud_surface_result_id_desc = e.surface_id left join kcj_turnoffbuttresslist@xgcx f on a.billetid = f.billetid "
  8717. + " where 1 = 1 and a.STORAGESTATUS = '501602' and b.judgeresult = '0' and (a.billetid like 'Z%' or a.billetid like 'H%' ) "+swhere1
  8718. + " union all "
  8719. + " select RCL_STATE ht_no,planorderno,PLANCARDNUMBER plansteel,a.ROLLNUMBER batchno, PLANNO plan_no,a.BILLETID material_no,a.ORDERNO design_key,'' PSC_DESC, a.stoveno heat_no,c.level_desc gc_level_desc, d.level_desc bm_level_desc,e.level_desc xbm_level_desc,(select max(memo) from qcm_ord_design_memo a where a.design_key = a.ORDERNO) order_remark,(select case when count(1) = 0 then '无' else max(a.dic_name) end from qcm_ord_design_std_dic a where a.design_key = a.ORDERNO) tsyq, "
  8720. + " PLY thick, a.WIDTH, a.LENGTH,THEORYWEIGHT weight,c2n@XGCX(CLIPTYPEPROCESS) CUTSIDESTATE, c2n@XGCX(RuLE) FIXSIZE, case when a.ROLLNUMBER like 'H%' THEN (SELECT PRODUCETIME FROM KCH_TURNOFFLIST@XGCX WHERE BILLETID = B.BILLETID) WHEN a.ROLLNUMBER like 'Z%' THEN (SELECT PTIME FROM KCZ_TURNOFFLIST@XGCX WHERE BILLETID = B.BILLETID) "
  8721. + " END PRODUCETIME, b.sizeid, case when (select count(1) from qcm_ord_design_std_cic x where x.design_key = a.orderno and x.std_type_code = 'C') > 0 then "
  8722. + " b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC, b.SIZERESULT_DESC, b.PHYSRESULT_DESC, "
  8723. + " b.SPYRESULT_DESC, b.SURFACERESULT_DESC, b.R_CHEMRESULT_DESC, b.chemid, b. physid, b.surfaceid, b.up_surface_result_id_desc,b.ud_surface_result_id_desc,b.up_surface_result_desc,b.ud_surface_result_desc, "
  8724. + " b.spyid, b.r_chemid, B.physresult, B.chemresult, b.spyresult, b.fst_judgeresult_desc,(select to_char(create_time,'yyyy-mm-dd hh24:mi:ss') from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  8725. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type,a.determinantcardnumber steel_code,a.determinantcardnumber steel_name,t2.USEDSTAND std_code,C2N@xgcx(t2.USEDSTAND) std_name,t2.PURPOSEID prod_code,C2N@xgcx(t2.PURPOSEID) prod_name,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC,to_char(b.ordernouptime,'yyyy-mm-dd hh24:mi:ss') ordernouptime,f.buttress,to_char(A.INTIME,'yyyy-mm-dd hh24:mi:ss') INTIME, "
  8726. + " (select max(t.onememo) "
  8727. + " from qcm_jhy_sample_consign_d t, qcm_jhy_sample_r_ord r "
  8728. + " where t.smp_no = r.smp_no "
  8729. + " and r.design_key like '19%' "
  8730. + " and t.material_no = a.billetid "
  8731. + " and r.steel_code = a.determinantcardnumber) reason from zj_result_all@xgcx b left join kcj_storagelist@xgcx a on a.BILLETID = b.BILLETID left join sel_pactdetail_new@xgcx t2 "
  8732. + " on a.planorderno = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.up_surface_result_id_desc = d.surface_id left join qcm_judge_surface e on e.material_no = b.billetid and b.ud_surface_result_id_desc = e.surface_id left join kcj_storagebuttresslist@xgcx f on a.billetid = f.billetid where 1 = 1 and a.STORAGESTATUS = '501002' and b.judgeresult = '0' and (a.billetid like 'Z%' or a.billetid like 'H%') "+swhere1+") T1 where 1 = 1 "+swhere+"";
  8733. }
  8734. try {
  8735. System.out.print(sql);
  8736. List<HashMap> list = mapper.query(sql);
  8737. cro.setResult(list);
  8738. } catch (Exception ex) {
  8739. ex.printStackTrace();
  8740. cro.setV_errCode(-1);
  8741. cro.setV_errMsg("查询失败!" + ex.getMessage());
  8742. }
  8743. SqlSession.close();
  8744. return cro;
  8745. }
  8746. @SuppressWarnings("unchecked")
  8747. public CoreReturnObject GetjudgeInfoJLZ(String begintime,String endtime,String bbatchno,String ebatchno,String design_key,String Psc_desc,String prodline,String cert_inst_name,String heat_no){
  8748. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime) && SqlJoint.IsNullOrSpace(bbatchno)) {
  8749. String sky=StrSky(begintime,endtime);
  8750. if(!sky.equals("TRUE")){
  8751. SqlSession.close();
  8752. cro.setV_errCode(-1);
  8753. cro.setV_errMsg(sky);
  8754. return cro;
  8755. }
  8756. }
  8757. String swhere = " where 1=1 and b.TOT_DEC_GRD is not null and y.judgeresult <> '0' and z.utm_id = y.judgeid ";
  8758. //String sqls = "select judgeid from QCM_JUDGE_COIL_RESULT";
  8759. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime)&& SqlJoint.IsNullOrSpace(bbatchno) && SqlJoint.IsNullOrSpace(ebatchno)) { //生产时间
  8760. swhere += " and to_date(to_char(JUDGE_TIME,'yyyy-mm-dd'),'yyyy-mm-dd') between to_date('"+begintime+"','yyyy-mm-dd') and to_date('"+endtime+"','yyyy-mm-dd')";
  8761. }
  8762. if (!SqlJoint.IsNullOrSpace(bbatchno)) { //起始轧批号
  8763. swhere += "and batch_no >= '"+bbatchno+"'";
  8764. }
  8765. if (!SqlJoint.IsNullOrSpace(ebatchno)) { //最后轧批号
  8766. swhere += "and batch_no <= '"+ebatchno+"'";
  8767. }
  8768. if (!SqlJoint.IsNullOrSpace(design_key)) { //销售订单号
  8769. swhere += " and design_key like '%"+design_key+"%'";
  8770. }
  8771. if (!SqlJoint.IsNullOrSpace(Psc_desc)) { //Psc_desc
  8772. swhere += " and psc_desc like '%"+Psc_desc+"%'";
  8773. }
  8774. if(!SqlJoint.IsNullOrSpace(heat_no)){
  8775. swhere += " and heat_no like '%"+heat_no+"%'";
  8776. }
  8777. swhere += " and pline_code in ('RZ1','SZ1','LT1')";
  8778. if(prodline.equals("热连轧")){
  8779. swhere += " and pline_code = 'RZ1'";
  8780. }else if(prodline.equals("酸轧")){
  8781. swhere += " and pline_code = 'SZ1'";
  8782. }else if(prodline.equals("连退")){
  8783. swhere += " and pline_code = 'LT1' ";
  8784. }
  8785. if(!SqlJoint.IsNullOrSpace(cert_inst_name) && !cert_inst_name.equals("全部")){
  8786. swhere += " and PIC_ID in ( select a.pic_id from qcm_judge_physical_utm_d a where a.cert_inst_name = '"+cert_inst_name+"')";
  8787. }
  8788. //swhere += "and UTM_ID in ("+sqls+")";
  8789. //swhere +=" order by JUDGE_TIME desc";
  8790. String sql = " select CIC_ID,"
  8791. +" heat_no,"
  8792. +" PIC_ID,"
  8793. +" SIC_ID,"
  8794. +" SFU_ID,"
  8795. +" R_CIC_ID,"
  8796. +" UTM_ID,"
  8797. +" UTM_RESULT_DESC,"
  8798. +" MATERIAL_NO,"
  8799. +" DESIGN_KEY,"
  8800. +" JUDGE_NAME,"
  8801. +" UTM_MEMO,"
  8802. +" JUDGE_TIME,"
  8803. +" z.r_cic_result_desc,"
  8804. +" z.cic_result_desc,"
  8805. +" z.pic_result_desc,"
  8806. +" z.sic_result_desc,"
  8807. +" z.mst_result_desc,"
  8808. +" (select max(memo)"
  8809. +" from qcm_ord_design_memo t"
  8810. +" where t.design_key = z.DESIGN_KEY) order_remark,"
  8811. +" steel_name,"
  8812. +" prod_name,"
  8813. +" std_name,"
  8814. +" (select decode(max(x.smp_type_code), '3', '是', '1', '是', '0', '否')"
  8815. +" from qcm_jhy_sample_consign_d x"
  8816. +" where x.specimen_no in"
  8817. +" (select z.specimen_no"
  8818. +" from qcm_judge_physical_result z"
  8819. +" where z.phy_id in (select a.phy_id"
  8820. +" from qcm_judge_physical_utm_d a"
  8821. +" where a.pic_id = z.pic_id))) is_fy,"
  8822. +" case"
  8823. +" when y.judgeresult <> '0' and z.utm_id = y.judgeid then"
  8824. +" '是'"
  8825. +" else"
  8826. +" '否'"
  8827. +" end isvalid,"
  8828. + "b.COIL_THK COIL_THK, --厚度\n" +
  8829. " b.COIL_WTH COIL_WTH, --宽度\n" +
  8830. " b.COIL_INDIA, --内径\n" +
  8831. " b.EXTSHAPE_QUALITY, --外观判定等级\n" +
  8832. " y.inspection_lot SMP_NO,\n" +
  8833. " b.SMP_CUT_LOC,\n" +
  8834. " b.PROC_DEC_RST, --切边\n" +
  8835. " PKG_QUALITY_COMM.PK00_COMM('E01002', b.CUR_PROG_CD) CUR_PROG_CD,"+
  8836. " b.SLAB_NO,\n" +
  8837. " (select A.SM_CFNM\n" +
  8838. " from tbz00_commcd A\n" +
  8839. " where A.SM_CD = b.CRK_CD1\n" +
  8840. " and A.LG_CD = 'B02001') CR_DK1,\n" +
  8841. " PKG_QUALITY_COMM.FZ00_COMM('A01010', b.PACKAGE_LEVEL) PACKAGE_LEVEL, --包装方式\n" +
  8842. " NVL(b.ORD_NO,B.ORG_ORD_NO) ORD_NO, --合同号\n" +
  8843. " NVL(b.ORD_SEQ,B.ORG_ORD_SEQ) ORD_SEQ, --订单号\n" +
  8844. " b.ACT_WGT,"
  8845. + "case when b.WGT_DEC_RST = '1' then '合格' else '不合格' end WGT_DEC_RST,"
  8846. +" b.instr_COIL_THK THICK,"
  8847. +" b.instr_COIL_WTH WIDTH,"
  8848. +" b.instr_COIL_LEN LENGTH,"
  8849. +" b.PRODNM_CD DELIVERY_STATE_DESC,"
  8850. +" b.ACT_WGT / 1000 weight,"
  8851. +" DECODE(b.ORD_FL, 1, '订单材', '2', '余材', b.ORD_FL) ORD_FL,\n" +
  8852. " PKG_QUALITY_COMM.FZ00_ORDCUST_NM(NVL(b.ORD_NO, b.ORG_ORD_NO)) ORDCUST_CD,"
  8853. + "b.TOT_DEC_TYPE,"
  8854. +" '' CUTSIDESTATE,"
  8855. +" '' FIXSIZE"
  8856. +" from QCM_JUDGE_ULTIMATE z"
  8857. +" JOIN c_tbc02_coil_comm b"
  8858. +" on z.material_no = b.OLD_SAMPL_NO"
  8859. +" left join qcm_judge_coil_result y"
  8860. +" on z.material_no = y.coil_no"
  8861. +" "+swhere+"";
  8862. /*+" union all"
  8863. +" select CIC_ID,"
  8864. +" heat_no,"
  8865. +" PIC_ID,"
  8866. +" SIC_ID,"
  8867. +" SFU_ID,"
  8868. +" R_CIC_ID,"
  8869. +" UTM_ID,"
  8870. +" UTM_RESULT_DESC,"
  8871. +" MATERIAL_NO,"
  8872. +" DESIGN_KEY,"
  8873. +" JUDGE_NAME,"
  8874. +" UTM_MEMO,"
  8875. +" JUDGE_TIME,"
  8876. +" z.r_cic_result_desc,"
  8877. +" z.cic_result_desc,"
  8878. +" z.pic_result_desc,"
  8879. +" z.sic_result_desc,"
  8880. +" z.mst_result_desc,"
  8881. +" (select max(memo)"
  8882. +" from qcm_ord_design_memo t"
  8883. +" where t.design_key = z.DESIGN_KEY) order_remark,"
  8884. +" steel_name,"
  8885. +" prod_name,"
  8886. +" std_name,"
  8887. +" (select decode(max(x.smp_type_code), '3', '是', '1', '是', '0', '否')"
  8888. +" from qcm_jhy_sample_consign_d x"
  8889. +" where x.specimen_no in"
  8890. +" (select z.specimen_no"
  8891. +" from qcm_judge_physical_result z"
  8892. +" where z.phy_id in (select a.phy_id"
  8893. +" from qcm_judge_physical_utm_d a"
  8894. +" where a.pic_id = z.pic_id))) is_fy,"
  8895. +" case"
  8896. +" when y.judgeresult <> '0' and z.utm_id = y.judgeid then"
  8897. +" '是'"
  8898. +" else"
  8899. +" '否'"
  8900. +" end isvalid,"
  8901. + " b.COIL_THK COIL_THK, --厚度\n" +
  8902. " b.COIL_WTH COIL_WTH, --宽度\n" +
  8903. " b.COIL_INDIA, --内径\n" +
  8904. " b.EXTSHAPE_QUALITY, --外观判定等级\n" +
  8905. " y.inspection_lot SMP_NO,\n" +
  8906. " b.SMP_CUT_LOC,\n" +
  8907. " b.PROC_DEC_RST, --切边\n" +
  8908. " PKG_QUALITY_COMM.PK00_COMM('E01002', b.CUR_PROG_CD) CUR_PROG_CD,"+
  8909. " b.SLAB_NO,\n" +
  8910. " (select A.SM_CFNM\n" +
  8911. " from tbz00_commcd A\n" +
  8912. " where A.SM_CD = b.CRK_CD1\n" +
  8913. " and A.LG_CD = 'B02001') CR_DK1,\n" +
  8914. " PKG_QUALITY_COMM.FZ00_COMM('A01010', b.PACKAGE_LEVEL) PACKAGE_LEVEL, --包装方式\n" +
  8915. " NVL(b.ORD_NO,B.ORG_ORD_NO) ORD_NO, --合同号\n" +
  8916. " NVL(b.ORD_SEQ,B.ORG_ORD_SEQ) ORD_SEQ, --订单号\n" +
  8917. " b.ACT_WGT,"
  8918. + "case when b.WGT_DEC_RST = '1' then '合格' else '不合格' end WGT_DEC_RST,"
  8919. +" b.instr_COIL_THK THICK,"
  8920. +" b.instr_COIL_WTH WIDTH,"
  8921. +" b.instr_COIL_LEN LENGTH,"
  8922. +" b.PRODNM_CD DELIVERY_STATE_DESC,"
  8923. +" b.ACT_WGT / 1000 weight,"
  8924. +" '' CUTSIDESTATE,"
  8925. +" '' FIXSIZE"
  8926. +" from QCM_JUDGE_ULTIMATE z"
  8927. +" JOIN c_tbl02_coil_comm b"
  8928. +" on z.material_no = b.OLD_SAMPL_NO"
  8929. +" left join qcm_judge_coil_result y"
  8930. +" on z.material_no = y.coil_no "+swhere+"";*/
  8931. try {
  8932. System.out.print(sql);
  8933. List<HashMap> list = mapper.query(sql);
  8934. cro.setResult(list);
  8935. } catch (Exception ex) {
  8936. ex.printStackTrace();
  8937. cro.setV_errCode(-1);
  8938. cro.setV_errMsg("查询失败!" + ex.getMessage());
  8939. }
  8940. SqlSession.close();
  8941. return cro;
  8942. }
  8943. @SuppressWarnings("unchecked")
  8944. public CoreReturnObject GetjudgeInfoB(String begintime,String endtime,String bbatchno,String ebatchno,String design_key,String Psc_desc,String prodline,String cert_inst_name,String heat_no){
  8945. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime) && SqlJoint.IsNullOrSpace(bbatchno)) {
  8946. String sky=StrSky(begintime,endtime);
  8947. if(!sky.equals("TRUE")){
  8948. SqlSession.close();
  8949. cro.setV_errCode(-1);
  8950. cro.setV_errMsg(sky);
  8951. return cro;
  8952. }
  8953. }
  8954. String swhere = " where 1=1 ";
  8955. //String sqls = "select judgeid from zj_result_all@xgcx WHERE 1=1 and (BILLETID LIKE 'Z%' OR BILLETID LIKE 'Z%')";
  8956. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime)&& SqlJoint.IsNullOrSpace(bbatchno) && SqlJoint.IsNullOrSpace(ebatchno)) { //生产时间
  8957. swhere += " and to_date(to_char(JUDGE_TIME,'yyyy-mm-dd'),'yyyy-mm-dd') between to_date('"+begintime+"','yyyy-mm-dd') and to_date('"+endtime+"','yyyy-mm-dd')";
  8958. }
  8959. if (!SqlJoint.IsNullOrSpace(bbatchno)) { //起始轧批号
  8960. swhere += "and batch_no >= '"+bbatchno+"'";
  8961. }
  8962. if (!SqlJoint.IsNullOrSpace(ebatchno)) { //最后轧批号
  8963. swhere += "and batch_no <= '"+ebatchno+"'";
  8964. }
  8965. if (!SqlJoint.IsNullOrSpace(design_key)) { //销售订单号
  8966. swhere += " and design_key like '"+design_key+"%'";
  8967. }
  8968. if (!SqlJoint.IsNullOrSpace(Psc_desc)) { //Psc_desc
  8969. swhere += " and psc_desc like '%"+Psc_desc+"%'";
  8970. }
  8971. if(!SqlJoint.IsNullOrSpace(heat_no)){
  8972. swhere += " and heat_no like '%"+heat_no+"%'";
  8973. }
  8974. if(!SqlJoint.IsNullOrSpace(cert_inst_name) && !cert_inst_name.equals("全部")){
  8975. swhere += " and PIC_ID in ( select a.pic_id from qcm_judge_physical_utm_d a where a.cert_inst_name = '"+cert_inst_name+"')";
  8976. }
  8977. swhere += " and pline_code in ('HB1','ZB1')";
  8978. if(prodline.equals("厚板线")){
  8979. swhere += " and pline_code = 'HB1'";
  8980. }else if(prodline.equals("中板线")){
  8981. swhere += " and pline_code = 'ZB1'";
  8982. }
  8983. swhere += "and design_key not like '19%'";
  8984. //swhere += "and UTM_ID in ("+sqls+")";
  8985. //swhere +=" order by JUDGE_TIME desc";
  8986. String sql = "select CIC_ID, "
  8987. //+ "(select name_ from scm_base_info@xgcx where id_ = Z.product_name)product_name, "
  8988. //+ "(select name_ from scm_base_info@xgcx where id_ = judge_reason)judge_reason, "
  8989. + "judge_memo, "
  8990. + "PLANCARDNUMBER plansteel,"
  8991. + "b.planorderform planorderno,"
  8992. +" heat_no,"
  8993. +" PIC_ID,"
  8994. +" SIC_ID,"
  8995. +" SFU_ID,"
  8996. +" R_CIC_ID,"
  8997. + " case when (select count(1) from qcm_ord_design_std_dic x where x.design_key = z.design_key) > 0 then DIC_RESULT_DESC else '' end DIC_RESULT_DESC,"
  8998. +" UTM_ID,"
  8999. +" UTM_RESULT_DESC,"
  9000. +" MATERIAL_NO,"
  9001. +" DESIGN_KEY,"
  9002. +" JUDGE_NAME,"
  9003. +" UTM_MEMO,"
  9004. +" JUDGE_TIME,"
  9005. + "cancel_memo,"
  9006. + "cancel_name,"
  9007. + "(SELECT TO_CHAR(MAX(cancel_time), 'yyyy-mm-dd hh24:mi:ss') FROM DUAL) cancel_time,"
  9008. +" (select max(memo)"
  9009. +" from qcm_ord_design_memo t"
  9010. +" where t.design_key = z.DESIGN_KEY) order_remark,(select t.ORDERMEMO from zyhb_plandetailofplate@xgcx t where t.slabno = z.material_no) sc_memo,"
  9011. +" steel_name,"
  9012. +" prod_name,"
  9013. +" std_name,"
  9014. +" (select decode(max(x.smp_type_code), '3', '是','4', '是', '1', '是', '0', '否')"
  9015. +" from qcm_jhy_sample_consign_d x"
  9016. +" where x.specimen_no in"
  9017. +" (select z.specimen_no"
  9018. +" from qcm_judge_physical_result z"
  9019. +" where z.phy_id in (select a.phy_id"
  9020. +" from qcm_judge_physical_utm_d a"
  9021. +" where a.pic_id = z.pic_id))) is_fy,"
  9022. +" (select decode(max(x.Smp_Type_Code),"
  9023. +" '3',"
  9024. +" '件件取样',"
  9025. +" '4',"
  9026. +" '按母板取样',"
  9027. +" '1',"
  9028. +" '复样',"
  9029. +" '0',"
  9030. +" '初样')"
  9031. +" from qcm_jhy_sample_consign_d x"
  9032. +" where x.specimen_no in"
  9033. +" (SELECT z.specimen_no"
  9034. +" FROM QCM_JUDGE_PHYSICAL_RESULT Z"
  9035. +" WHERE Z.phy_id IN (SELECT PHY_ID"
  9036. +" FROM QCM_JUDGE_PHYSICAL_UTM_D F"
  9037. +" WHERE F.PIc_ID = Y.PHYSID))) smp_type,"
  9038. +" case"
  9039. +" when y.judgeresult <> '0' and z.utm_id = y.judgeid then"
  9040. +" '是'"
  9041. +" else"
  9042. +" '否'"
  9043. +" end isvalid,"
  9044. + " case when (select count(1) from qcm_ord_design_std_pic x where x.design_key = z.design_key and specl_fl = '1') > 0 then '是' else '否' end is_special,"
  9045. +" b.ply THICK,"
  9046. +" b.WIDTH WIDTH,"
  9047. +" b.LENGTH LENGTH,"
  9048. + " b.RCL_STATE ht_no, "
  9049. +" b.theoryweight weight,"
  9050. +" (select psel_get_standroll@XGCX(c.STANDROLLER) from sel_pactdetail@xgcx c where b.planorderform = c.orderno) DELIVERY_STATE_DESC,"
  9051. + "PLANNUMBER plan_no,"
  9052. +" y.UP_SURFACE_RESULT_ID_DESC,"
  9053. + "(select MAX(C.UNLOCK_NAME) "
  9054. + " from qcm_judge_locking c "
  9055. + " where c.material_no like b.stoveno || '%'"
  9056. + " and c.unlock_type_code = '0' "
  9057. + " and c.lock_type_code = 'C' "
  9058. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MAN, "
  9059. + " (select TO_CHAR(MAX(C.UNLOCK_TIME), 'yyyy-mm-dd hh24:mi:ss') "
  9060. + " from qcm_judge_locking c "
  9061. + " where c.material_no like b.stoveno || '%' "
  9062. + " and c.unlock_type_code = '0' "
  9063. + " and c.lock_type_code = 'C' "
  9064. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_TIME, "
  9065. + " (select MAX(C.UNLOCK_MEMO) "
  9066. + " from qcm_judge_locking c "
  9067. + " where c.material_no like b.stoveno || '%' "
  9068. + " and c.unlock_type_code = '0' "
  9069. + " and c.lock_type_code = 'C' "
  9070. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MEMO,"
  9071. + "(select dbms_lob.substr(wmsys.wm_concat(DISTINCT C.UNLOCK_MEMO)) "
  9072. + " from qcm_judge_locking c "
  9073. + " where c.material_no = B.BILLETID "
  9074. + " and c.unlock_type_code = '0' "
  9075. + " and c.lock_type_code IN ('C','P') "
  9076. + " and c.pline_code in ('ZB1', 'HB1')) FX_MEMO1,"
  9077. +" y.UD_SURFACE_RESULT_ID_DESC,(select case when dbms_lob.substr(wmsys.wm_concat(DISTINCT t.SMP_RATE_DESC)) is null then '无取样要求' else dbms_lob.substr(wmsys.wm_concat(DISTINCT t.SMP_RATE_DESC)) end SMP_RATE_DESC from qcm_ord_design_std_pic_smp t where t.design_key = z.design_key) SMP_RATE_DESC"
  9078. +" from QCM_JUDGE_ULTIMATE z"
  9079. +" join kch_turnofflist@xgcx b"
  9080. +" on z.material_no = b.billetid"
  9081. /* +" left join sel_pactdetail@xgcx c"
  9082. +" on b.planorderform = c.orderno"*/
  9083. +" left join zj_result_all@xgcx y"
  9084. +" on z.material_no = y.billetid "+swhere+" AND Z.MATERIAL_NO LIKE 'H%'"
  9085. +" union all"
  9086. +" select CIC_ID,"
  9087. //+ "(select name_ from scm_base_info@xgcx where id_ = Z.product_name)product_name, "
  9088. //+ "(select name_ from scm_base_info@xgcx where id_ = judge_reason)judge_reason, "
  9089. + "judge_memo, "
  9090. + "PLANCARDNUMBER plansteel,"
  9091. + "b.planorderno,"
  9092. +" heat_no,"
  9093. +" PIC_ID,"
  9094. +" SIC_ID,"
  9095. +" SFU_ID,"
  9096. +" R_CIC_ID,"
  9097. + " case when (select count(1) from qcm_ord_design_std_dic x where x.design_key = z.design_key) > 0 then DIC_RESULT_DESC else '' end DIC_RESULT_DESC,"
  9098. +" UTM_ID,"
  9099. +" UTM_RESULT_DESC,"
  9100. +" MATERIAL_NO,"
  9101. +" DESIGN_KEY,"
  9102. +" JUDGE_NAME,"
  9103. +" UTM_MEMO,"
  9104. +" JUDGE_TIME,"
  9105. + "cancel_memo,"
  9106. + "cancel_name,"
  9107. + "(SELECT TO_CHAR(MAX(cancel_time), 'yyyy-mm-dd hh24:mi:ss') FROM DUAL) cancel_time,"
  9108. +" (select max(memo)"
  9109. +" from qcm_ord_design_memo t"
  9110. +" where t.design_key = z.DESIGN_KEY) order_remark,(select t.memo from mb_plandetailofplate@xgcx t where t.productno = z.material_no) sc_memo,"
  9111. +" steel_name,"
  9112. +" prod_name,"
  9113. +" std_name,"
  9114. +" (select decode(max(x.smp_type_code), '3', '是','4', '是', '1', '是', '0', '否')"
  9115. +" from qcm_jhy_sample_consign_d x"
  9116. +" where x.specimen_no in"
  9117. +" (select z.specimen_no"
  9118. +" from qcm_judge_physical_result z"
  9119. +" where z.phy_id in (select a.phy_id"
  9120. +" from qcm_judge_physical_utm_d a"
  9121. +" where a.pic_id = z.pic_id))) is_fy,"
  9122. +" (select decode(max(x.Smp_Type_Code),"
  9123. +" '3',"
  9124. +" '件件取样',"
  9125. +" '4',"
  9126. +" '按母板取样',"
  9127. +" '1',"
  9128. +" '复样',"
  9129. +" '0',"
  9130. +" '初样')"
  9131. +" from qcm_jhy_sample_consign_d x"
  9132. +" where x.specimen_no in"
  9133. +" (SELECT z.specimen_no"
  9134. +" FROM QCM_JUDGE_PHYSICAL_RESULT Z"
  9135. +" WHERE Z.phy_id IN (SELECT PHY_ID"
  9136. +" FROM QCM_JUDGE_PHYSICAL_UTM_D F"
  9137. +" WHERE F.PIc_ID = Y.PHYSID))) smp_type,"
  9138. +" case"
  9139. +" when y.judgeresult <> '0' and z.utm_id = y.judgeid then"
  9140. +" '是'"
  9141. +" else"
  9142. +" '否'"
  9143. +" end isvalid,"
  9144. + " case when (select count(1) from qcm_ord_design_std_pic x where x.design_key = z.design_key and specl_fl = '1') > 0 then '是' else '否' end is_special,"
  9145. +" b.ply THICK,"
  9146. +" b.WIDTH WIDTH,"
  9147. +" b.LENGTH LENGTH,"
  9148. + " b.RCL_STATE ht_no, "
  9149. +" b.theoryweight weight,"
  9150. +" (select psel_get_standroll@XGCX(c.STANDROLLER) from sel_pactdetail@xgcx c where b.planorderno = c.orderno) DELIVERY_STATE_DESC,"
  9151. + "planno plan_no,"
  9152. +" y.UP_SURFACE_RESULT_ID_DESC,"
  9153. + "(select MAX(C.UNLOCK_NAME) "
  9154. + " from qcm_judge_locking c "
  9155. + " where c.material_no like b.stoveno || '%'"
  9156. + " and c.unlock_type_code = '0' "
  9157. + " and c.lock_type_code = 'C' "
  9158. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MAN, "
  9159. + " (select TO_CHAR(MAX(C.UNLOCK_TIME), 'yyyy-mm-dd hh24:mi:ss') "
  9160. + " from qcm_judge_locking c "
  9161. + " where c.material_no like b.stoveno || '%' "
  9162. + " and c.unlock_type_code = '0' "
  9163. + " and c.lock_type_code = 'C' "
  9164. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_TIME, "
  9165. + " (select MAX(C.UNLOCK_MEMO) "
  9166. + " from qcm_judge_locking c "
  9167. + " where c.material_no like b.stoveno || '%' "
  9168. + " and c.unlock_type_code = '0' "
  9169. + " and c.lock_type_code = 'C' "
  9170. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MEMO,"
  9171. + "(select dbms_lob.substr(wmsys.wm_concat(DISTINCT C.UNLOCK_MEMO)) "
  9172. + " from qcm_judge_locking c "
  9173. + " where c.material_no = B.BILLETID "
  9174. + " and c.unlock_type_code = '0' "
  9175. + " and c.lock_type_code IN ('C','P') "
  9176. + " and c.pline_code in ('ZB1', 'HB1')) FX_MEMO1,"
  9177. +" y.UD_SURFACE_RESULT_ID_DESC,(select case when dbms_lob.substr(wmsys.wm_concat(DISTINCT t.SMP_RATE_DESC)) is null then '无取样要求' else dbms_lob.substr(wmsys.wm_concat(DISTINCT t.SMP_RATE_DESC)) end SMP_RATE_DESC from qcm_ord_design_std_pic_smp t where t.design_key = Z.DESIGN_KEY) SMP_RATE_DESC"
  9178. +" from QCM_JUDGE_ULTIMATE z"
  9179. +" join kcz_turnofflist@xgcx b"
  9180. +" on z.material_no = b.billetid"
  9181. /* +" left join sel_pactdetail@xgcx c"
  9182. +" on b.planorderno = c.orderno"*/
  9183. +" left join zj_result_all@xgcx y"
  9184. +" on z.material_no = y.billetid "+swhere+" AND Z.MATERIAL_NO LIKE 'Z%'";
  9185. try {
  9186. System.out.print(sql);
  9187. List<HashMap> list = mapper.query(sql);
  9188. //String material_no = "";
  9189. /*StringBuffer sqlucomm = new StringBuffer();
  9190. int j=0;
  9191. for(HashMap list1 : list){
  9192. if(j>=900){
  9193. if(j% 900 == 0){
  9194. sqlucomm.append( ") or a.billetid in ('" + list1.get("MATERIAL_NO").toString()+"'") ;
  9195. }
  9196. else
  9197. {
  9198. if(sqlucomm.length() == 0){
  9199. sqlucomm.append( "('" + list1.get("MATERIAL_NO").toString()+"'");
  9200. }else{
  9201. sqlucomm.append( ",'"+ list1.get("MATERIAL_NO").toString()+"'");
  9202. }
  9203. }
  9204. j++;
  9205. }
  9206. else
  9207. {
  9208. if(sqlucomm.length() == 0){
  9209. sqlucomm.append( "('" + list1.get("MATERIAL_NO").toString()+"'");
  9210. }else{
  9211. sqlucomm.append( ",'"+ list1.get("MATERIAL_NO").toString()+"'");
  9212. }
  9213. }
  9214. j++;
  9215. }
  9216. for(HashMap list1 : list){
  9217. if(j== 900){
  9218. material_no = material_no + ") or material_no in ('" + list1.get("MATERIAL_NO").toString()+"'" ;
  9219. }
  9220. else
  9221. {
  9222. if(material_no == ""){
  9223. material_no = "('" + list1.get("MATERIAL_NO").toString()+"'";
  9224. }else{
  9225. material_no = material_no + ",'"+ list1.get("MATERIAL_NO").toString()+"'";
  9226. }
  9227. }
  9228. j++;
  9229. }
  9230. if(sqlucomm.length() == 0)
  9231. sqlucomm.append( "('')");
  9232. else
  9233. sqlucomm.append(")");
  9234. //QcmJudgeMeasureServiceImpl qjms = new QcmJudgeMeasureServiceImpl();
  9235. List<HashMap> hashmap = doQueryMaterialInfoZhb(sqlucomm.toString());
  9236. for(HashMap list2 : list){
  9237. int i= 0;
  9238. for(HashMap hs :hashmap){
  9239. if(list2.get("MATERIAL_NO").toString().equals(hs.get("MATERIAL_NO").toString())){
  9240. list2.put("THICK", hs.get("THICK")==null?"":hs.get("THICK").toString());
  9241. list2.put("WIDTH", hs.get("WIDTH")==null?"":hs.get("WIDTH").toString());
  9242. list2.put("LENGTH", hs.get("LENGTH")==null?"":hs.get("LENGTH").toString());
  9243. list2.put("DELIVERY_STATE_DESC", hs.get("DELIVERY_STATE_DESC")==null?"":hs.get("DELIVERY_STATE_DESC").toString());
  9244. list2.put("WEIGHT", hs.get("WEIGHT") == null ?"":hs.get("WEIGHT").toString());
  9245. list2.put("CUTSIDESTATE", hs.get("CUTSIDESTATE")==null?"":hs.get("CUTSIDESTATE").toString());
  9246. list2.put("FIXSIZE", hs.get("FIXSIZE")==null?"":hs.get("FIXSIZE").toString());
  9247. list2.put("UP_SURFACE_RESULT_ID_DESC", hs.get("UP_SURFACE_RESULT_ID_DESC")==null?"":hs.get("UP_SURFACE_RESULT_ID_DESC").toString());
  9248. list2.put("UD_SURFACE_RESULT_ID_DESC", hs.get("UD_SURFACE_RESULT_ID_DESC")==null?"":hs.get("UD_SURFACE_RESULT_ID_DESC").toString());
  9249. list2.put("PLAN_NO", hs.get("PLAN_NO")==null?"":hs.get("PLAN_NO").toString());
  9250. i++;
  9251. }
  9252. if(i==0){
  9253. list2.put("THICK", "");
  9254. list2.put("WIDTH", "");
  9255. list2.put("LENGTH", "");
  9256. list2.put("DELIVERY_STATE_DESC", "");
  9257. list2.put("WEIGHT", "");
  9258. list2.put("CUTSIDESTATE", "");
  9259. list2.put("FIXSIZE", "");
  9260. list2.put("UP_SURFACE_RESULT_ID_DESC", "");
  9261. list2.put("UD_SURFACE_RESULT_ID_DESC", "");
  9262. list2.put("PLAN_NO", "");
  9263. }
  9264. }
  9265. }*/
  9266. cro.setResult(list);
  9267. } catch (Exception ex) {
  9268. ex.printStackTrace();
  9269. cro.setV_errCode(-1);
  9270. cro.setV_errMsg("查询失败!" + ex.getMessage());
  9271. }
  9272. SqlSession.close();
  9273. return cro;
  9274. }
  9275. @SuppressWarnings("unchecked")
  9276. public CoreReturnObject GetjudgeInfoBF(String begintime,String endtime,String bbatchno,String ebatchno,String design_key,String Psc_desc,String prodline,String heat_no){
  9277. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime) && SqlJoint.IsNullOrSpace(bbatchno)) {
  9278. String sky=StrSky(begintime,endtime);
  9279. if(!sky.equals("TRUE")){
  9280. SqlSession.close();
  9281. cro.setV_errCode(-1);
  9282. cro.setV_errMsg(sky);
  9283. return cro;
  9284. }
  9285. }
  9286. String swhere = " where 1=1 ";
  9287. //String sqls = "select judgeid from zj_result_all@xgcx WHERE 1=1 and (BILLETID LIKE 'Z%' OR BILLETID LIKE 'Z%')";
  9288. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime)&& SqlJoint.IsNullOrSpace(bbatchno) && SqlJoint.IsNullOrSpace(ebatchno)) { //生产时间
  9289. swhere += " and to_date(to_char(z.JUDGE_TIME,'yyyy-mm-dd'),'yyyy-mm-dd') between to_date('"+begintime+"','yyyy-mm-dd') and to_date('"+endtime+"','yyyy-mm-dd')";
  9290. }
  9291. if (!SqlJoint.IsNullOrSpace(bbatchno)) { //起始轧批号
  9292. swhere += "and Z.batch_no >= '"+bbatchno+"'";
  9293. }
  9294. if (!SqlJoint.IsNullOrSpace(ebatchno)) { //最后轧批号
  9295. swhere += "and Z.batch_no <= '"+ebatchno+"'";
  9296. }
  9297. if (!SqlJoint.IsNullOrSpace(design_key)) { //销售订单号
  9298. swhere += " and z.design_key like '"+design_key+"%'";
  9299. }
  9300. if (!SqlJoint.IsNullOrSpace(Psc_desc)) { //Psc_desc
  9301. swhere += " and Z.psc_desc like '%"+Psc_desc+"%'";
  9302. }
  9303. if(!SqlJoint.IsNullOrSpace(heat_no)){
  9304. swhere += " and Z.heat_no like '%"+heat_no+"%'";
  9305. }
  9306. swhere += " and z.pline_code in ('HB1','ZB1')";
  9307. if(prodline.equals("厚板线")){
  9308. swhere += " and z.pline_code = 'HB1'";
  9309. }else if(prodline.equals("中板线")){
  9310. swhere += " and z.pline_code = 'ZB1'";
  9311. }
  9312. swhere += "and (z.design_key like '19%' or z.design_key is null)";
  9313. //swhere += "and UTM_ID in ("+sqls+")";
  9314. //swhere +=" order by JUDGE_TIME desc";
  9315. String sql = "select z.CIC_ID, "
  9316. + "(select name_ from scm_base_info@xgcx where id_ = Z.product_name)product_name, "
  9317. + "(select name_ from scm_base_info@xgcx where id_ = judge_reason)judge_reason, "
  9318. + "z.judge_memo, "
  9319. + "PLANCARDNUMBER plansteel,"
  9320. + "b.planorderform planorderno,"
  9321. +" z.heat_no,"
  9322. +" z.PIC_ID,"
  9323. +" z.SIC_ID,"
  9324. +" z.SFU_ID,"
  9325. +" z.R_CIC_ID,"
  9326. +" z.UTM_ID,"
  9327. +" z.UTM_RESULT_DESC,"
  9328. +" z.MATERIAL_NO,"
  9329. +" z.DESIGN_KEY,"
  9330. +" z.JUDGE_NAME,"
  9331. +" z.UTM_MEMO,"
  9332. +" z.JUDGE_TIME,"
  9333. + "cancel_memo,"
  9334. + "cancel_name,"
  9335. +" (select max(memo)"
  9336. +" from qcm_ord_design_memo t"
  9337. +" where t.design_key = z.DESIGN_KEY) order_remark,"
  9338. +" z.steel_name,"
  9339. +" z.prod_name,"
  9340. +" z.std_name,"
  9341. +" (select decode(max(x.smp_type_code), '3', '是', '1', '是', '0', '否')"
  9342. +" from qcm_jhy_sample_consign_d x"
  9343. +" where x.specimen_no in"
  9344. +" (select z.specimen_no"
  9345. +" from qcm_judge_physical_result z"
  9346. +" where z.phy_id in (select a.phy_id"
  9347. +" from qcm_judge_physical_utm_d a"
  9348. +" where a.pic_id = z.pic_id))) is_fy,"
  9349. +" (select decode(max(x.Smp_Type_Code),"
  9350. +" '3',"
  9351. +" '件件取样',"
  9352. +" '4',"
  9353. +" '按母板取样',"
  9354. +" '1',"
  9355. +" '复样',"
  9356. +" '0',"
  9357. +" '初样')"
  9358. +" from qcm_jhy_sample_consign_d x"
  9359. +" where x.specimen_no in"
  9360. +" (SELECT z.specimen_no"
  9361. +" FROM QCM_JUDGE_PHYSICAL_RESULT Z"
  9362. +" WHERE Z.phy_id IN (SELECT PHY_ID"
  9363. +" FROM QCM_JUDGE_PHYSICAL_UTM_D F"
  9364. +" WHERE F.PIc_ID = Y.PHYSID))) smp_type,"
  9365. +" case"
  9366. +" when y.judgeresult <> '0' and z.utm_id = y.judgeid then"
  9367. +" '是'"
  9368. +" else"
  9369. +" '否'"
  9370. +" end isvalid,"
  9371. +" b.ply THICK,"
  9372. +" b.WIDTH WIDTH,"
  9373. +" b.LENGTH LENGTH,"
  9374. + " b.RCL_STATE ht_no,"
  9375. + " (select case when count(1) = 0 then '无' else max(a.dic_name) end from qcm_ord_design_std_dic a where a.design_key = z.design_key) tsyq,"
  9376. +" b.theoryweight weight,"
  9377. +" psel_get_standroll@XGCX(c.STANDROLLER) DELIVERY_STATE_DESC,"
  9378. + "PLANNUMBER plan_no,"
  9379. +" y.UP_SURFACE_RESULT_ID_DESC,"
  9380. +" y.UD_SURFACE_RESULT_ID_DESC, c.level_desc gc_level_desc, d.level_desc bm_level_desc,e.level_desc xbm_level_desc,Z.DIC_RESULT_DESC"
  9381. +" from QCM_JUDGE_ULTIMATE z"
  9382. +" join kch_turnofflist@xgcx b"
  9383. +" on z.material_no = b.billetid"
  9384. +" left join sel_pactdetail@xgcx c"
  9385. +" on b.planorderform = c.orderno"
  9386. +" left join zj_result_all@xgcx y"
  9387. +" on z.material_no = y.billetid left join qcm_judge_measure c on Z.MATERIAL_NO = c.material_no and Y.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = y.billetid and y.up_surface_result_id_desc = d.surface_id left join qcm_judge_surface e on e.material_no = y.billetid and y.ud_surface_result_id_desc = e.surface_id "+swhere+" AND Z.MATERIAL_NO LIKE 'H%'"
  9388. +" union all"
  9389. +" select z.CIC_ID,"
  9390. + "(select name_ from scm_base_info@xgcx where id_ = Z.product_name)product_name, "
  9391. + "(select name_ from scm_base_info@xgcx where id_ = judge_reason)judge_reason, "
  9392. + "z.judge_memo, "
  9393. + "PLANCARDNUMBER plansteel,"
  9394. + "b.planorderno,"
  9395. +" z.heat_no,"
  9396. +" z.PIC_ID,"
  9397. +" z.SIC_ID,"
  9398. +" z.SFU_ID,"
  9399. +" z.R_CIC_ID,"
  9400. +" UTM_ID,"
  9401. +" UTM_RESULT_DESC,"
  9402. +" z.MATERIAL_NO,"
  9403. +" z.DESIGN_KEY,"
  9404. +" z.JUDGE_NAME,"
  9405. +" UTM_MEMO,"
  9406. +" z.JUDGE_TIME,"
  9407. + "cancel_memo,"
  9408. + "cancel_name,"
  9409. +" (select max(memo)"
  9410. +" from qcm_ord_design_memo t"
  9411. +" where t.design_key = z.DESIGN_KEY) order_remark,"
  9412. +" z.steel_name,"
  9413. +" z.prod_name,"
  9414. +" z.std_name,"
  9415. +" (select decode(max(x.smp_type_code), '3', '是', '1', '是', '0', '否')"
  9416. +" from qcm_jhy_sample_consign_d x"
  9417. +" where x.specimen_no in"
  9418. +" (select z.specimen_no"
  9419. +" from qcm_judge_physical_result z"
  9420. +" where z.phy_id in (select a.phy_id"
  9421. +" from qcm_judge_physical_utm_d a"
  9422. +" where a.pic_id = z.pic_id))) is_fy,"
  9423. +" (select decode(max(x.Smp_Type_Code),"
  9424. +" '3',"
  9425. +" '件件取样',"
  9426. +" '4',"
  9427. +" '按母板取样',"
  9428. +" '1',"
  9429. +" '复样',"
  9430. +" '0',"
  9431. +" '初样')"
  9432. +" from qcm_jhy_sample_consign_d x"
  9433. +" where x.specimen_no in"
  9434. +" (SELECT z.specimen_no"
  9435. +" FROM QCM_JUDGE_PHYSICAL_RESULT Z"
  9436. +" WHERE Z.phy_id IN (SELECT PHY_ID"
  9437. +" FROM QCM_JUDGE_PHYSICAL_UTM_D F"
  9438. +" WHERE F.PIc_ID = Y.PHYSID))) smp_type,"
  9439. +" case"
  9440. +" when y.judgeresult <> '0' and z.utm_id = y.judgeid then"
  9441. +" '是'"
  9442. +" else"
  9443. +" '否'"
  9444. +" end isvalid,"
  9445. +" b.ply THICK,"
  9446. +" b.WIDTH WIDTH,"
  9447. +" b.LENGTH LENGTH,"
  9448. + " b.RCL_STATE ht_no,"
  9449. + " (select case when count(1) = 0 then '无' else max(a.dic_name) end from qcm_ord_design_std_dic a where a.design_key = z.design_key) tsyq,"
  9450. +" b.theoryweight weight,"
  9451. +" psel_get_standroll@XGCX(c.STANDROLLER) DELIVERY_STATE_DESC,"
  9452. + "planno plan_no,"
  9453. +" y.UP_SURFACE_RESULT_ID_DESC,"
  9454. +" y.UD_SURFACE_RESULT_ID_DESC, c.level_desc gc_level_desc, d.level_desc bm_level_desc,e.level_desc xbm_level_desc,Z.DIC_RESULT_DESC"
  9455. +" from QCM_JUDGE_ULTIMATE z"
  9456. +" join kcz_turnofflist@xgcx b"
  9457. +" on z.material_no = b.billetid"
  9458. +" left join sel_pactdetail@xgcx c"
  9459. +" on b.planorderno = c.orderno"
  9460. +" left join zj_result_all@xgcx y"
  9461. +" on z.material_no = y.billetid left join qcm_judge_measure c on Z.MATERIAL_NO = c.material_no and Y.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = y.billetid and y.up_surface_result_id_desc = d.surface_id left join qcm_judge_surface e on e.material_no = y.billetid and y.ud_surface_result_id_desc = e.surface_id "+swhere+" AND Z.MATERIAL_NO LIKE 'Z%'";
  9462. try {
  9463. System.out.print(sql);
  9464. List<HashMap> list = mapper.query(sql);
  9465. //String material_no = "";
  9466. /*StringBuffer sqlucomm = new StringBuffer();
  9467. int j=0;
  9468. for(HashMap list1 : list){
  9469. if(j>=900){
  9470. if(j% 900 == 0){
  9471. sqlucomm.append( ") or a.billetid in ('" + list1.get("MATERIAL_NO").toString()+"'") ;
  9472. }
  9473. else
  9474. {
  9475. if(sqlucomm.length() == 0){
  9476. sqlucomm.append( "('" + list1.get("MATERIAL_NO").toString()+"'");
  9477. }else{
  9478. sqlucomm.append( ",'"+ list1.get("MATERIAL_NO").toString()+"'");
  9479. }
  9480. }
  9481. j++;
  9482. }
  9483. else
  9484. {
  9485. if(sqlucomm.length() == 0){
  9486. sqlucomm.append( "('" + list1.get("MATERIAL_NO").toString()+"'");
  9487. }else{
  9488. sqlucomm.append( ",'"+ list1.get("MATERIAL_NO").toString()+"'");
  9489. }
  9490. }
  9491. j++;
  9492. }
  9493. for(HashMap list1 : list){
  9494. if(j== 900){
  9495. material_no = material_no + ") or material_no in ('" + list1.get("MATERIAL_NO").toString()+"'" ;
  9496. }
  9497. else
  9498. {
  9499. if(material_no == ""){
  9500. material_no = "('" + list1.get("MATERIAL_NO").toString()+"'";
  9501. }else{
  9502. material_no = material_no + ",'"+ list1.get("MATERIAL_NO").toString()+"'";
  9503. }
  9504. }
  9505. j++;
  9506. }
  9507. if(sqlucomm.length() == 0)
  9508. sqlucomm.append( "('')");
  9509. else
  9510. sqlucomm.append(")");
  9511. //QcmJudgeMeasureServiceImpl qjms = new QcmJudgeMeasureServiceImpl();
  9512. List<HashMap> hashmap = doQueryMaterialInfoZhb(sqlucomm.toString());
  9513. for(HashMap list2 : list){
  9514. int i= 0;
  9515. for(HashMap hs :hashmap){
  9516. if(list2.get("MATERIAL_NO").toString().equals(hs.get("MATERIAL_NO").toString())){
  9517. list2.put("THICK", hs.get("THICK")==null?"":hs.get("THICK").toString());
  9518. list2.put("WIDTH", hs.get("WIDTH")==null?"":hs.get("WIDTH").toString());
  9519. list2.put("LENGTH", hs.get("LENGTH")==null?"":hs.get("LENGTH").toString());
  9520. list2.put("DELIVERY_STATE_DESC", hs.get("DELIVERY_STATE_DESC")==null?"":hs.get("DELIVERY_STATE_DESC").toString());
  9521. list2.put("WEIGHT", hs.get("WEIGHT") == null ?"":hs.get("WEIGHT").toString());
  9522. list2.put("CUTSIDESTATE", hs.get("CUTSIDESTATE")==null?"":hs.get("CUTSIDESTATE").toString());
  9523. list2.put("FIXSIZE", hs.get("FIXSIZE")==null?"":hs.get("FIXSIZE").toString());
  9524. list2.put("UP_SURFACE_RESULT_ID_DESC", hs.get("UP_SURFACE_RESULT_ID_DESC")==null?"":hs.get("UP_SURFACE_RESULT_ID_DESC").toString());
  9525. list2.put("UD_SURFACE_RESULT_ID_DESC", hs.get("UD_SURFACE_RESULT_ID_DESC")==null?"":hs.get("UD_SURFACE_RESULT_ID_DESC").toString());
  9526. list2.put("PLAN_NO", hs.get("PLAN_NO")==null?"":hs.get("PLAN_NO").toString());
  9527. i++;
  9528. }
  9529. if(i==0){
  9530. list2.put("THICK", "");
  9531. list2.put("WIDTH", "");
  9532. list2.put("LENGTH", "");
  9533. list2.put("DELIVERY_STATE_DESC", "");
  9534. list2.put("WEIGHT", "");
  9535. list2.put("CUTSIDESTATE", "");
  9536. list2.put("FIXSIZE", "");
  9537. list2.put("UP_SURFACE_RESULT_ID_DESC", "");
  9538. list2.put("UD_SURFACE_RESULT_ID_DESC", "");
  9539. list2.put("PLAN_NO", "");
  9540. }
  9541. }
  9542. }*/
  9543. cro.setResult(list);
  9544. } catch (Exception ex) {
  9545. ex.printStackTrace();
  9546. cro.setV_errCode(-1);
  9547. cro.setV_errMsg("查询失败!" + ex.getMessage());
  9548. }
  9549. SqlSession.close();
  9550. return cro;
  9551. }
  9552. @SuppressWarnings("unchecked")
  9553. public CoreReturnObject GetjudgeInfoJF(String begintime,String endtime,String bbatchno,String ebatchno,String design_key){
  9554. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime) && SqlJoint.IsNullOrSpace(bbatchno)) {
  9555. String sky=StrSky(begintime,endtime);
  9556. if(!sky.equals("TRUE")){
  9557. SqlSession.close();
  9558. cro.setV_errCode(-1);
  9559. cro.setV_errMsg(sky);
  9560. return cro;
  9561. }
  9562. }
  9563. String swhere = " where 1=1 ";
  9564. //String sqls = "select judgeid from zj_result_all@xgcx WHERE 1=1 and (BILLETID LIKE 'Z%' OR BILLETID LIKE 'Z%')";
  9565. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime)&& SqlJoint.IsNullOrSpace(bbatchno) && SqlJoint.IsNullOrSpace(ebatchno)) { //生产时间
  9566. swhere += " and to_date(to_char(z.JUDGE_TIME,'yyyy-mm-dd'),'yyyy-mm-dd') between to_date('"+begintime+"','yyyy-mm-dd') and to_date('"+endtime+"','yyyy-mm-dd')";
  9567. }
  9568. if (!SqlJoint.IsNullOrSpace(bbatchno)) { //起始轧批号
  9569. swhere += "and Z.batch_no >= '"+bbatchno+"'";
  9570. }
  9571. if (!SqlJoint.IsNullOrSpace(ebatchno)) { //最后轧批号
  9572. swhere += "and Z.batch_no <= '"+ebatchno+"'";
  9573. }
  9574. if (!SqlJoint.IsNullOrSpace(design_key)) { //销售订单号
  9575. swhere += " and z.design_key like '"+design_key+"%'";
  9576. }
  9577. swhere += " and z.utm_id like 'JF%'";
  9578. //swhere += "and UTM_ID in ("+sqls+")";
  9579. //swhere +=" order by JUDGE_TIME desc";
  9580. String sql = "select z.judge_memo, "
  9581. +" z.UTM_ID,"
  9582. +" z.UTM_RESULT_DESC,"
  9583. +" z.MATERIAL_NO,"
  9584. +" z.DESIGN_KEY,"
  9585. +" z.JUDGE_NAME,"
  9586. +" z.UTM_MEMO,"
  9587. +" z.JUDGE_TIME,"
  9588. + "cancel_memo,"
  9589. + "cancel_name,"
  9590. +" (select max(memo)"
  9591. +" from qcm_ord_design_memo t"
  9592. +" where t.design_key = z.DESIGN_KEY) order_remark,"
  9593. +" z.steel_name,"
  9594. +" z.prod_name,"
  9595. +" z.std_name,"
  9596. +" case"
  9597. +" when y.judgeresult <> '0' and z.utm_id = y.judgeid then"
  9598. +" '是'"
  9599. +" else"
  9600. +" '否'"
  9601. +" end isvalid,"
  9602. +" b.COIL_THK THICK,"
  9603. +" b.COIL_wth WIDTH,"
  9604. +" b.COIL_len LENGTH,"
  9605. +" b.ACT_WGT/1000 weight,"
  9606. +" c.PRDNM_CD DELIVERY_STATE_DESC "
  9607. +" from QCM_JUDGE_ULTIMATE z"
  9608. +" join kcj3_stufflist@xgcx b"
  9609. +" on z.material_no = b.old_sampl_no"
  9610. +" left join tba01_ord_comm c "
  9611. + " on b.ord_no = c.ord_no "
  9612. + " LEFT JOIN QCM_JUDGE_COIL_RESULT Y"
  9613. + " ON Z.MATERIAL_NO = Y.COIL_NO"
  9614. +" "+swhere+" ";
  9615. try {
  9616. System.out.print(sql);
  9617. List<HashMap> list = mapper.query(sql);
  9618. cro.setResult(list);
  9619. } catch (Exception ex) {
  9620. ex.printStackTrace();
  9621. cro.setV_errCode(-1);
  9622. cro.setV_errMsg("查询失败!" + ex.getMessage());
  9623. }
  9624. SqlSession.close();
  9625. return cro;
  9626. }
  9627. @SuppressWarnings("unchecked")
  9628. public CoreReturnObject GetjudgeInfoX(String begintime,String endtime,String bbatchno,String ebatchno,String design_key,String Psc_desc,String prodline,String cert_inst_name,String heat_no){
  9629. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime) && SqlJoint.IsNullOrSpace(bbatchno)) {
  9630. String sky=StrSky(begintime,endtime);
  9631. if(!sky.equals("TRUE")){
  9632. SqlSession.close();
  9633. cro.setV_errCode(-1);
  9634. cro.setV_errMsg(sky);
  9635. return cro;
  9636. }
  9637. }
  9638. String swhere = "";
  9639. //String sqls = "select judgeid from zj_result_all@xgcx WHERE BILLETID NOT LIKE 'Z%' AND BILLETID NOT LIKE 'Z%'";
  9640. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime)&& SqlJoint.IsNullOrSpace(bbatchno) && SqlJoint.IsNullOrSpace(ebatchno)) { //生产时间
  9641. swhere += " and to_date(to_char(JUDGE_TIME,'yyyy-mm-dd'),'yyyy-mm-dd') between to_date('"+begintime+"','yyyy-mm-dd') and to_date('"+endtime+"','yyyy-mm-dd')";
  9642. }
  9643. if (!SqlJoint.IsNullOrSpace(bbatchno)) { //起始轧批号
  9644. swhere += "and batch_no >= '"+bbatchno+"'";
  9645. }
  9646. if (!SqlJoint.IsNullOrSpace(ebatchno)) { //最后轧批号
  9647. swhere += "and batch_no <= '"+ebatchno+"'";
  9648. }
  9649. if (!SqlJoint.IsNullOrSpace(design_key)) { //销售订单号
  9650. swhere += " and design_key like '%"+design_key+"%'";
  9651. }
  9652. if (!SqlJoint.IsNullOrSpace(Psc_desc)) { //Psc_desc
  9653. swhere += " and psc_desc like '%"+Psc_desc+"%'";
  9654. }
  9655. if(!SqlJoint.IsNullOrSpace(heat_no)){
  9656. swhere += " and heat_no like '%"+heat_no+"%'";
  9657. }
  9658. if(!SqlJoint.IsNullOrSpace(cert_inst_name) && !cert_inst_name.equals("全部")){
  9659. swhere += " and PIC_ID in ( select a.pic_id from qcm_judge_physical_utm_d a where a.cert_inst_name = '"+cert_inst_name+"')";
  9660. }
  9661. swhere += " and pline_code in ('GX1','BC1','BC2','GX2','4001GX1','4001GX2','4001BC2')";
  9662. if(prodline.equals("高棒")){
  9663. swhere += " and pline_code IN ('GX1','4001GX1')";
  9664. }else if(prodline.equals("棒二")){
  9665. swhere += " and pline_code in ('BC2','4001BC2')";
  9666. }else if(prodline.equals("高线")){
  9667. swhere += " and pline_code in ('GX2','4001GX2')";
  9668. }
  9669. //swhere += "and UTM_ID in ("+sqls+")";
  9670. swhere +=" order by batch_no, material_no, JUDGE_TIME desc";
  9671. String sql = "select CIC_ID,heat_no,PIC_ID,SIC_ID,SFU_ID,R_CIC_ID,UTM_ID,UTM_RESULT_DESC,MATERIAL_NO,DESIGN_KEY,JUDGE_NAME,UTM_MEMO,JUDGE_TIME,cancel_memo,cancel_name,(SELECT TO_CHAR(MAX(cancel_time), 'yyyy-mm-dd hh24:mi:ss') FROM DUAL) cancel_time, "
  9672. +" (select max(memo) from qcm_ord_design_memo t where t.design_key = z.DESIGN_KEY) order_remark, "
  9673. + "DETERMINANTCARDNUMBER steel_name,prod_name,std_name,(select decode(max(x.smp_type_code), '3', '是', '1', '是', '0', '否') "
  9674. + " from qcm_jhy_sample_consign_d x "
  9675. + " where x.specimen_no in "
  9676. + " (select z.specimen_no "
  9677. + " from qcm_judge_physical_result z "
  9678. + " where z.phy_id in (select a.phy_id "
  9679. + " from qcm_judge_physical_utm_d a "
  9680. + " where a.pic_id = z.pic_id)) )is_fy, "
  9681. +" a.PLY thick, "
  9682. + " a.WIDTH, "
  9683. + " a.LENGTH, "
  9684. + " a.THEORYWEIGHT weight, "
  9685. + " '' CUTSIDESTATE, (select name_ from scm_base_info@xgcx where id_ = A.RuLE) FIXSIZE, "
  9686. + " psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC,case when y.judgeresult <> '0' and z.utm_id = y.judgeid then '是' else '否' end isvalid from QCM_JUDGE_ULTIMATE z LEFT JOIN kcx_turnofflist@xgcx A ON Z.MATERIAL_NO = A.BILLETID left join sel_pactdetail@xgcx t2 on A.ORDERNO = t2.ORDERNO left join zj_result_all@xgcx y on y.billetid = z.material_no where 1=1 "+swhere+"";
  9687. try {
  9688. System.out.print(sql);
  9689. List<HashMap> list = mapper.query(sql);
  9690. cro.setResult(list);
  9691. } catch (Exception ex) {
  9692. ex.printStackTrace();
  9693. cro.setV_errCode(-1);
  9694. cro.setV_errMsg("查询失败!" + ex.getMessage());
  9695. }
  9696. SqlSession.close();
  9697. return cro;
  9698. }
  9699. /**
  9700. * 查下非计划卷板待判记录
  9701. */
  9702. public CoreReturnObject GetUnjudgeInfoJF(String begintime,String endtime,String bbatchno,String ebatchno,String design_key){
  9703. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime) && SqlJoint.IsNullOrSpace(bbatchno)) {
  9704. String sky=StrSky(begintime,endtime);
  9705. if(!sky.equals("TRUE")){
  9706. SqlSession.close();
  9707. cro.setV_errCode(-1);
  9708. cro.setV_errMsg(sky);
  9709. return cro;
  9710. }
  9711. }
  9712. String swhere = "";
  9713. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime)&& SqlJoint.IsNullOrSpace(bbatchno) && SqlJoint.IsNullOrSpace(ebatchno)) { //生产时间
  9714. swhere += " and to_date(to_char(INTIME,'yyyy-mm-dd'),'yyyy-mm-dd') between to_date('"+begintime+"','yyyy-mm-dd') and to_date('"+endtime+"','yyyy-mm-dd')";
  9715. }
  9716. if (!SqlJoint.IsNullOrSpace(bbatchno)) { //起始轧批号
  9717. swhere += "and bahct_number >= '"+bbatchno+"'";
  9718. }
  9719. if (!SqlJoint.IsNullOrSpace(ebatchno)) { //最后轧批号
  9720. swhere += "and bahct_number <= '"+ebatchno+"'";
  9721. }
  9722. if (!SqlJoint.IsNullOrSpace(design_key)) { //销售订单号
  9723. swhere += " and ord_no || ord_seq like '%"+design_key+"%'";
  9724. }
  9725. String sql ="select a.OLD_SAMPL_NO material_no,"
  9726. + "a.COIL_THK thick,"
  9727. + "a.COIL_WTH width,"
  9728. + "a.ACT_WGT/1000 weight,"
  9729. + "STL_GRD steel_name,"
  9730. + "a.SPEC_ABBSYM std_name,"
  9731. + "a.ORD_NO || a.ORD_SEQ design_key,"
  9732. + "c.PRDNM_CD DELIVERY_STATE_DESC,"
  9733. + " (select max(memo) from qcm_ord_design_memo a where a.design_key = a.ORD_NO || a.ORD_SEQ) order_remark, "
  9734. + " PKG_QUALITY_COMM.PK00_COMM('A01007',b.UST_CD) prod_name"
  9735. + " from kcj3_stufflist@xgcx a left join tba01_ord_line b"
  9736. + " on a.ord_no = b.ord_no and a.ord_seq = b.ord_seq left join tba01_ord_comm c "
  9737. + " on a.ord_no = c.ord_no "
  9738. + " where STORAGESTATUS = '501002' and isvalid <> '0' "+swhere+"";
  9739. try {
  9740. System.out.print(sql);
  9741. List<HashMap> list = mapper.query(sql);
  9742. cro.setResult(list);
  9743. } catch (Exception ex) {
  9744. ex.printStackTrace();
  9745. cro.setV_errCode(-1);
  9746. cro.setV_errMsg("查询失败!" + ex.getMessage());
  9747. }
  9748. SqlSession.close();
  9749. return cro;
  9750. }
  9751. /**
  9752. * 查询综合待判记录
  9753. */
  9754. public CoreReturnObject GetUnjudgeInfoJ(String begintime,String endtime,String bbatchno,String ebatchno,String design_key,String Psc_desc,String prodline,String cert_inst_name,String heat_no){
  9755. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime) && SqlJoint.IsNullOrSpace(bbatchno)) {
  9756. String sky=StrSky(begintime,endtime);
  9757. if(!sky.equals("TRUE")){
  9758. SqlSession.close();
  9759. cro.setV_errCode(-1);
  9760. cro.setV_errMsg(sky);
  9761. return cro;
  9762. }
  9763. }
  9764. String swhere = "";
  9765. String swhere1 = "";
  9766. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime)&& SqlJoint.IsNullOrSpace(bbatchno) && SqlJoint.IsNullOrSpace(ebatchno)) { //生产时间
  9767. swhere += " and to_date(to_char(PRODUCETIME,'yyyy-mm-dd'),'yyyy-mm-dd') between to_date('"+begintime+"','yyyy-mm-dd') and to_date('"+endtime+"','yyyy-mm-dd')";
  9768. }
  9769. if (!SqlJoint.IsNullOrSpace(bbatchno)) { //起始轧批号
  9770. swhere += "and batchno >= '"+bbatchno+"'";
  9771. }
  9772. if (!SqlJoint.IsNullOrSpace(ebatchno)) { //最后轧批号
  9773. swhere += "and batchno <= '"+ebatchno+"'";
  9774. }
  9775. if (!SqlJoint.IsNullOrSpace(design_key)) { //销售订单号
  9776. swhere += " and design_key like '%"+design_key+"%'";
  9777. }
  9778. if (!SqlJoint.IsNullOrSpace(Psc_desc)) { //Psc_desc
  9779. swhere += " and psc_desc like '%"+Psc_desc+"%'";
  9780. }
  9781. if(!SqlJoint.IsNullOrSpace(heat_no)){
  9782. swhere1 += " and SUBSTR(T.SLAB_NO, 1, 10) like '%"+heat_no+"%'";
  9783. }
  9784. swhere1 += " and b.judgeresult = '0'";
  9785. if(!SqlJoint.IsNullOrSpace(cert_inst_name) && !cert_inst_name.equals("全部")){
  9786. swhere += "and exists (select 1 from qcm_ord_design_sample_m t2 where t2.design_key = t1.design_key and t2.org_name = '"+cert_inst_name+"')";
  9787. }
  9788. /*//表面
  9789. swhere1 += " and b.surfaceresult not in ('0','2')";
  9790. //熔炼
  9791. swhere1 += " and b.r_chemresult not in ('0','2') ";
  9792. //成品成分
  9793. swhere += " and (chemresult not in ('0','2') or ( not exists (select 1 from qcm_ord_design_std_cic t2 where t2.design_key = t1.design_key and t2.std_type_code = 'B') AND chemresult = '0'))";
  9794. //公差
  9795. swhere1 += "and b.sizeresult not in ('0','2') ";
  9796. //材质
  9797. swhere += " and (physresult not in ('0','2') or ( not exists (select 1 from qcm_ord_design_std_pic t2 where t2.design_key = t1.design_key) AND physresult = '0'))";
  9798. //探伤
  9799. swhere += " and (spyresult not in ('0','2') or ( not exists (select 1 from qcm_ord_design_std_dic t2 where t2.design_key = t1.design_key) AND spyresult = '0'))";
  9800. //swhere1 += " and (b.sizeresult not in ('0') or b.surfaceresult not in ('0') or b.r_chemresult not in ('0') or b.chemresult not in ('0') or b.physresult not in ('0'))";
  9801. //swhere1 += " and b.sizeresult not in ('2') and b.surfaceresult not in ('2') and b.r_chemresult not in ('2') and b.chemresult not in ('2') and b.physresult not in ('2')";
  9802. swhere1 += " and b.surfaceresult <> '0'";
  9803. swhere1 += " and b.r_chemresult <> '0'";
  9804. swhere1 += " and b.physresult <> '0'";
  9805. if(!SqlJoint.IsNullOrSpace(cert_inst_name) && !cert_inst_name.equals("全部")){
  9806. swhere += " and exists (select 1 from qcm_ord_design_sample_m t2 where t2.design_key = t1.design_key and t2.org_name = '"+cert_inst_name+"')";
  9807. }*/
  9808. //if()
  9809. /*swhere1 += " and b.surfaceresult <> '0'";
  9810. swhere1 += " and b.sizeresult <> '0'";
  9811. swhere1 += " and b.spyresult <> '0'";
  9812. swhere1 += " and b.judgeresult = '0'";
  9813. swhere1 += " and (b.chemresult <> '0' or b.r_chemresult <> '0')";
  9814. swhere1 += " and b.physresult <> '0'";*/
  9815. String sql = "";
  9816. if(prodline.equals("热连轧")){
  9817. sql = "select * from (select SUBSTR(t.OLD_SAMPL_NO, 1, 10) batchno,SUBSTR(T.SLAB_NO, 1, 10) heat_no,case when t.WGT_DEC_RST = '1' then '合格' else '不合格' end WGT_DEC_RST,t1.ROLL_MANA_NO plan_no, T.OLD_SAMPL_NO material_no, T.ORD_NO || T.ORD_SEQ design_key, (select PSC from tbb01_ord_prod F WHERE F.ORD_NO= T.ORD_NO AND ROWNUM=1) psc,'' psc_desc, "
  9818. +" (select max(memo) from qcm_ord_design_memo a where a.design_key = T.ORD_NO || T.ORD_SEQ) order_remark, "
  9819. + " t.PRDNM_CD DELIVERY_STATE_DESC, T.INSTR_COIL_THK thick,T.INSTR_COIL_WTH WIDTH, T.INSTR_COIL_LEN LENGTH,T.ACT_WGT/1000 weight, to_date(substr(t.MILL_DTIME,'0','8'), 'yyyy-mm-dd') PRODUCETIME,b.sizeid,case when (select count(1) from qcm_ord_design_std_cic x "
  9820. + " where x.design_key = T.ORD_NO || T.ORD_SEQ and x.std_type_code = 'C') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC,case when b.SIZERESULT_DESC = '待判' then '' else b.SIZERESULT_DESC end SIZERESULT_DESC,b.PHYSRESULT_DESC,case when (select count(1) "
  9821. + " from qcm_ord_design_std_dic x where x.design_key = T.ORD_NO || T.ORD_SEQ) > 0 then b.SPYRESULT_DESC else '否' end SPYRESULT_DESC,case when b.SURFACERESULT_DESC = '待判' then '' else b.SURFACERESULT_DESC end SURFACERESULT_DESC,b.R_CHEMRESULT_DESC,b.chemid,b. physid,b.surfaceid,b.spyid,b.r_chemid,B.physresult, B.chemresult,b.spyresult,T.SPEC_STL_GRD steel_code,b.tic_result_desc,"
  9822. + " T.SPEC_STL_GRD steel_name,T.SPEC_ABBSYM std_code,T.SPEC_ABBSYM std_name, T.ORD_USE_CD prod_code,PKG_QUALITY_COMM.PK00_COMM('E01002', T.CUR_PROG_CD) CUR_PROG_CD,PKG_QUALITY_COMM.PK00_COMM('A01007',T.ORD_USE_CD) prod_name,"
  9823. + "(select MAX(C.UNLOCK_NAME) "
  9824. + " from qcm_judge_locking c "
  9825. + " where c.material_no = t.SLAB_NO "
  9826. + " and c.unlock_type_code = '0' "
  9827. + " and c.lock_type_code = 'C' "
  9828. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MAN, "
  9829. + " (select TO_CHAR(MAX(C.UNLOCK_TIME), 'yyyy-mm-dd hh24:mi:ss') "
  9830. + " from qcm_judge_locking c "
  9831. + " where c.material_no = t.SLAB_NO "
  9832. + " and c.unlock_type_code = '0' "
  9833. + " and c.lock_type_code = 'C' "
  9834. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_TIME, "
  9835. + " (select MAX(C.UNLOCK_MEMO) "
  9836. + " from qcm_judge_locking c "
  9837. + " where c.material_no = t.SLAB_NO "
  9838. + " and c.unlock_type_code = '0' "
  9839. + " and c.lock_type_code = 'C' "
  9840. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MEMO,"
  9841. + "(select dbms_lob.substr(wmsys.wm_concat(DISTINCT C.UNLOCK_MEMO)) "
  9842. + " from qcm_judge_locking c "
  9843. + " where c.material_no = t.OLD_SAMPL_NO "
  9844. + " and c.unlock_type_code = '0' "
  9845. + " and c.lock_type_code IN ('C','P') "
  9846. + " and c.pline_code in ('RZ1','LT1','SZ1')) FX_MEMO1 "
  9847. + " from tbh02_coil_comm t,tbf02_spec_mill t1,QCM_JUDGE_COIL_RESULT b where t.COIL_NO=t1.COIL_NO(+) and t.OLD_SAMPL_NO=b.coil_no and t.coil_stat = '2' "+swhere1+" ) t1 where 1= 1 "+swhere+" order by PRODUCETIME desc";
  9848. }else if(prodline.equals("酸轧")){
  9849. sql = "select * from (select SUBSTR(t.OLD_SAMPL_NO, 1, 9) batchno,SUBSTR(T.SLAB_NO, 1, 10) heat_no,'' WGT_DEC_RST, t1.ROLL_MANA_NO plan_no, T.OLD_SAMPL_NO material_no, T.ORD_NO || T.ORD_SEQ design_key, (select PSC from tbb01_ord_prod F WHERE F.ORD_NO= T.ORD_NO AND ROWNUM=1) psc,'' psc_desc, "
  9850. +" (select max(memo) from qcm_ord_design_memo a where a.design_key = T.ORD_NO || T.ORD_SEQ) order_remark, "
  9851. + " t.PRDNM_CD DELIVERY_STATE_DESC, T.INSTR_COIL_THK thick, T.INSTR_COIL_WTH WIDTH,T.INSTR_COIL_LEN LENGTH,T.ACT_WGT/1000 weight,to_date(substr(t.MILL_DTIME,'0','8'), 'yyyy-mm-dd') PRODUCETIME,b.sizeid,case when (select count(1) from qcm_ord_design_std_cic x "
  9852. + " where x.design_key = T.ORD_NO || T.ORD_SEQ and x.std_type_code = 'C') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC,case when b.SIZERESULT_DESC = '待判' then '' else b.SIZERESULT_DESC end SIZERESULT_DESC,b.PHYSRESULT_DESC,case when (select count(1) "
  9853. + " from qcm_ord_design_std_dic x where x.design_key = T.ORD_NO || T.ORD_SEQ) > 0 then b.SPYRESULT_DESC else '否' end SPYRESULT_DESC,case when b.SURFACERESULT_DESC = '待判' then '' else b.SURFACERESULT_DESC end SURFACERESULT_DESC,b.R_CHEMRESULT_DESC,b.chemid,b. physid,b.surfaceid,b.spyid,b.r_chemid,B.physresult, B.chemresult,b.spyresult,T.SPEC_STL_GRD steel_code,b.tic_result_desc,"
  9854. + "T.SPEC_STL_GRD steel_name,T.SPEC_ABBSYM std_code,T.SPEC_ABBSYM std_name, T.ORD_USE_CD prod_code,PKG_QUALITY_COMM.PK00_COMM('E01002', T.CUR_PROG_CD) CUR_PROG_CD,PKG_QUALITY_COMM.PK00_COMM('A01007',T.ORD_USE_CD) prod_name,"
  9855. + "(select MAX(C.UNLOCK_NAME) "
  9856. + " from qcm_judge_locking c "
  9857. + " where c.material_no = t.SLAB_NO "
  9858. + " and c.unlock_type_code = '0' "
  9859. + " and c.lock_type_code = 'C' "
  9860. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MAN, "
  9861. + " (select TO_CHAR(MAX(C.UNLOCK_TIME), 'yyyy-mm-dd hh24:mi:ss') "
  9862. + " from qcm_judge_locking c "
  9863. + " where c.material_no = t.SLAB_NO "
  9864. + " and c.unlock_type_code = '0' "
  9865. + " and c.lock_type_code = 'C' "
  9866. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_TIME, "
  9867. + " (select MAX(C.UNLOCK_MEMO) "
  9868. + " from qcm_judge_locking c "
  9869. + " where c.material_no = t.SLAB_NO "
  9870. + " and c.unlock_type_code = '0' "
  9871. + " and c.lock_type_code = 'C' "
  9872. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MEMO,"
  9873. + "(select dbms_lob.substr(wmsys.wm_concat(DISTINCT C.UNLOCK_MEMO)) "
  9874. + " from qcm_judge_locking c "
  9875. + " where c.material_no = t.OLD_SAMPL_NO "
  9876. + " and c.unlock_type_code = '0' "
  9877. + " and c.lock_type_code IN ('C','P') "
  9878. + " and c.pline_code in ('RZ1','LT1','SZ1')) FX_MEMO1 "
  9879. + " from c_tbl02_coil_comm t,c_tbf03_spec_mill t1,QCM_JUDGE_COIL_RESULT b where t.COIL_NO=t1.C_COIL_NO(+) and t.OLD_SAMPL_NO=b.coil_no and t.coil_stat = '2' "+swhere1+") t1 where 1= 1 "+swhere+" order by PRODUCETIME desc";
  9880. }else if(prodline.equals("连退")){
  9881. sql = "select * from (select SUBSTR(t.OLD_SAMPL_NO, 1, 9) batchno, SUBSTR(T.SLAB_NO, 1, 10) heat_no, case when t.WGT_DEC_RST = '1' then '合格' else '不合格' end WGT_DEC_RST,t1.CAL_NO plan_no, T.OLD_SAMPL_NO material_no,T.ORD_NO || T.ORD_SEQ design_key,(select PSC from tbb01_ord_prod F WHERE F.ORD_NO= T.ORD_NO AND ROWNUM=1) psc,'' psc_desc, "
  9882. +" (select max(memo) from qcm_ord_design_memo a where a.design_key = T.ORD_NO || T.ORD_SEQ) order_remark, "
  9883. + "t.PRDNM_CD DELIVERY_STATE_DESC,T.INSTR_COIL_THK thick,T.INSTR_COIL_WTH WIDTH,T.INSTR_COIL_LEN LENGTH,T.ACT_WGT/1000 weight,to_date(substr(t.MILL_DTIME,'0','8'), 'yyyy-mm-dd') PRODUCETIME,b.sizeid,case when (select count(1) from qcm_ord_design_std_cic x "
  9884. + " where x.design_key = T.ORD_NO || T.ORD_SEQ and x.std_type_code = 'C') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC,case when b.SIZERESULT_DESC = '待判' then '' else b.SIZERESULT_DESC end SIZERESULT_DESC,b.PHYSRESULT_DESC,case when (select count(1) "
  9885. + " from qcm_ord_design_std_dic x where x.design_key = T.ORD_NO || T.ORD_SEQ) > 0 then b.SPYRESULT_DESC else '否' end SPYRESULT_DESC,case when b.SURFACERESULT_DESC = '待判' then '' else b.SURFACERESULT_DESC end SURFACERESULT_DESC,b.R_CHEMRESULT_DESC,b.chemid,b. physid,b.surfaceid,b.spyid,b.r_chemid,B.physresult, B.chemresult,b.spyresult,T.SPEC_STL_GRD steel_code,b.tic_result_desc,"
  9886. + "T.SPEC_STL_GRD steel_name,T.SPEC_ABBSYM std_code,T.SPEC_ABBSYM std_name, T.ORD_USE_CD prod_code,PKG_QUALITY_COMM.PK00_COMM('E01002', T.CUR_PROG_CD) CUR_PROG_CD,PKG_QUALITY_COMM.PK00_COMM('A01007',T.ORD_USE_CD) prod_name,"
  9887. + "(select MAX(C.UNLOCK_NAME) "
  9888. + " from qcm_judge_locking c "
  9889. + " where c.material_no = t.SLAB_NO "
  9890. + " and c.unlock_type_code = '0' "
  9891. + " and c.lock_type_code = 'C' "
  9892. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MAN, "
  9893. + " (select TO_CHAR(MAX(C.UNLOCK_TIME), 'yyyy-mm-dd hh24:mi:ss') "
  9894. + " from qcm_judge_locking c "
  9895. + " where c.material_no = t.SLAB_NO "
  9896. + " and c.unlock_type_code = '0' "
  9897. + " and c.lock_type_code = 'C' "
  9898. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_TIME, "
  9899. + " (select MAX(C.UNLOCK_MEMO) "
  9900. + " from qcm_judge_locking c "
  9901. + " where c.material_no = t.SLAB_NO "
  9902. + " and c.unlock_type_code = '0' "
  9903. + " and c.lock_type_code = 'C' "
  9904. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MEMO,"
  9905. + "(select dbms_lob.substr(wmsys.wm_concat(DISTINCT C.UNLOCK_MEMO)) "
  9906. + " from qcm_judge_locking c "
  9907. + " where c.material_no = t.OLD_SAMPL_NO "
  9908. + " and c.unlock_type_code = '0' "
  9909. + " and c.lock_type_code IN ('C','P') "
  9910. + " and c.pline_code in ('RZ1','LT1','SZ1')) FX_MEMO1 "
  9911. + " from c_tbc02_coil_comm t,l_tbf03_spec_mill t1,QCM_JUDGE_COIL_RESULT b where t.ORI_OLD_SAMPL_NO=t1.C_COIL_NO(+) and t.OLD_SAMPL_NO=b.coil_no and t.coil_stat = '2' "+swhere1+") t1 where 1= 1 "+swhere+" order by PRODUCETIME desc";
  9912. }else{
  9913. sql = "select * from (select * from (select SUBSTR(t.OLD_SAMPL_NO, 1, 10) batchno,SUBSTR(T.SLAB_NO, 1, 10) heat_no,'' WGT_DEC_RST,t1.ROLL_MANA_NO plan_no, T.OLD_SAMPL_NO material_no, T.ORD_NO || T.ORD_SEQ design_key, (select PSC from tbb01_ord_prod F WHERE F.ORD_NO= T.ORD_NO AND ROWNUM=1) psc,'' psc_desc, "
  9914. +" (select max(memo) from qcm_ord_design_memo a where a.design_key = T.ORD_NO || T.ORD_SEQ) order_remark, "
  9915. + " t.PRDNM_CD DELIVERY_STATE_DESC, T.INSTR_COIL_THK thick,T.INSTR_COIL_WTH WIDTH, T.INSTR_COIL_LEN LENGTH,T.ACT_WGT/1000 weight, to_date(substr(t.MILL_DTIME,'0','8'), 'yyyy-mm-dd') PRODUCETIME,b.sizeid,case when (select count(1) from qcm_ord_design_std_cic x "
  9916. + " where x.design_key = T.ORD_NO || T.ORD_SEQ and x.std_type_code = 'C') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC,case when b.SIZERESULT_DESC = '待判' then '' else b.SIZERESULT_DESC end SIZERESULT_DESC,b.PHYSRESULT_DESC,case when (select count(1) "
  9917. + " from qcm_ord_design_std_dic x where x.design_key = T.ORD_NO || T.ORD_SEQ) > 0 then b.SPYRESULT_DESC else '否' end SPYRESULT_DESC,case when b.SURFACERESULT_DESC = '待判' then '' else b.SURFACERESULT_DESC end SURFACERESULT_DESC,b.R_CHEMRESULT_DESC,b.chemid,b. physid,b.surfaceid,b.spyid,b.r_chemid,B.chemresult,b.physresult,b.spyresult,T.SPEC_STL_GRD steel_code,b.tic_result_desc,"
  9918. + " T.SPEC_STL_GRD steel_name,T.SPEC_ABBSYM std_code,T.SPEC_ABBSYM std_name, T.ORD_USE_CD prod_code,PKG_QUALITY_COMM.PK00_COMM('E01002', T.CUR_PROG_CD) CUR_PROG_CD,PKG_QUALITY_COMM.PK00_COMM('A01007',T.ORD_USE_CD) prod_name,"
  9919. + "(select MAX(C.UNLOCK_NAME) "
  9920. + " from qcm_judge_locking c "
  9921. + " where c.material_no = t.SLAB_NO "
  9922. + " and c.unlock_type_code = '0' "
  9923. + " and c.lock_type_code = 'C' "
  9924. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MAN, "
  9925. + " (select TO_CHAR(MAX(C.UNLOCK_TIME), 'yyyy-mm-dd hh24:mi:ss') "
  9926. + " from qcm_judge_locking c "
  9927. + " where c.material_no = t.SLAB_NO "
  9928. + " and c.unlock_type_code = '0' "
  9929. + " and c.lock_type_code = 'C' "
  9930. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_TIME, "
  9931. + " (select MAX(C.UNLOCK_MEMO) "
  9932. + " from qcm_judge_locking c "
  9933. + " where c.material_no = t.SLAB_NO "
  9934. + " and c.unlock_type_code = '0' "
  9935. + " and c.lock_type_code = 'C' "
  9936. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MEMO,"
  9937. + "(select dbms_lob.substr(wmsys.wm_concat(DISTINCT C.UNLOCK_MEMO)) "
  9938. + " from qcm_judge_locking c "
  9939. + " where c.material_no = t.OLD_SAMPL_NO "
  9940. + " and c.unlock_type_code = '0' "
  9941. + " and c.lock_type_code IN ('C','P') "
  9942. + " and c.pline_code in ('RZ1','LT1','SZ1')) FX_MEMO1 "
  9943. + " from tbh02_coil_comm t,tbf02_spec_mill t1,QCM_JUDGE_COIL_RESULT b where t.COIL_NO=t1.COIL_NO(+) and t.OLD_SAMPL_NO=b.coil_no and t.coil_stat = '2' "+swhere1+" ) t1 where 1= 1 "+swhere+" "
  9944. + " union all "
  9945. +"select * from (select SUBSTR(t.OLD_SAMPL_NO, 1, 9) batchno,SUBSTR(T.SLAB_NO, 1, 10) heat_no,'' WGT_DEC_RST, t1.ROLL_MANA_NO plan_no, T.OLD_SAMPL_NO material_no, T.ORD_NO || T.ORD_SEQ design_key, (select PSC from tbb01_ord_prod F WHERE F.ORD_NO= T.ORD_NO AND ROWNUM=1) psc,'' psc_desc, "
  9946. +" (select max(memo) from qcm_ord_design_memo a where a.design_key = T.ORD_NO || T.ORD_SEQ) order_remark, "
  9947. + " t.PRDNM_CD DELIVERY_STATE_DESC, T.INSTR_COIL_THK thick, T.INSTR_COIL_WTH WIDTH,T.INSTR_COIL_LEN LENGTH,T.ACT_WGT/1000 weight,to_date(substr(t.MILL_DTIME,'0','8'), 'yyyy-mm-dd') PRODUCETIME,b.sizeid,case when (select count(1) from qcm_ord_design_std_cic x "
  9948. + " where x.design_key = T.ORD_NO || T.ORD_SEQ and x.std_type_code = 'C') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC,case when b.SIZERESULT_DESC = '待判' then '' else b.SIZERESULT_DESC end SIZERESULT_DESC,b.PHYSRESULT_DESC,case when (select count(1) "
  9949. + " from qcm_ord_design_std_dic x where x.design_key = T.ORD_NO || T.ORD_SEQ) > 0 then b.SPYRESULT_DESC else '否' end SPYRESULT_DESC,case when b.SURFACERESULT_DESC = '待判' then '' else b.SURFACERESULT_DESC end SURFACERESULT_DESC,b.R_CHEMRESULT_DESC,b.chemid,b. physid,b.surfaceid,b.spyid,b.r_chemid,B.chemresult,b.physresult,b.spyresult,T.SPEC_STL_GRD steel_code,b.tic_result_desc,"
  9950. + "T.SPEC_STL_GRD steel_name,T.SPEC_ABBSYM std_code,T.SPEC_ABBSYM std_name, T.ORD_USE_CD prod_code,PKG_QUALITY_COMM.PK00_COMM('E01002', T.CUR_PROG_CD) CUR_PROG_CD,PKG_QUALITY_COMM.PK00_COMM('A01007',T.ORD_USE_CD) prod_name, "
  9951. + "(select MAX(C.UNLOCK_NAME) "
  9952. + " from qcm_judge_locking c "
  9953. + " where c.material_no = t.SLAB_NO "
  9954. + " and c.unlock_type_code = '0' "
  9955. + " and c.lock_type_code = 'C' "
  9956. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MAN, "
  9957. + " (select TO_CHAR(MAX(C.UNLOCK_TIME), 'yyyy-mm-dd hh24:mi:ss') "
  9958. + " from qcm_judge_locking c "
  9959. + " where c.material_no = t.SLAB_NO "
  9960. + " and c.unlock_type_code = '0' "
  9961. + " and c.lock_type_code = 'C' "
  9962. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_TIME, "
  9963. + " (select MAX(C.UNLOCK_MEMO) "
  9964. + " from qcm_judge_locking c "
  9965. + " where c.material_no = t.SLAB_NO "
  9966. + " and c.unlock_type_code = '0' "
  9967. + " and c.lock_type_code = 'C' "
  9968. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MEMO,"
  9969. + "(select dbms_lob.substr(wmsys.wm_concat(DISTINCT C.UNLOCK_MEMO)) "
  9970. + " from qcm_judge_locking c "
  9971. + " where c.material_no = t.OLD_SAMPL_NO "
  9972. + " and c.unlock_type_code = '0' "
  9973. + " and c.lock_type_code IN ('C','P') "
  9974. + " and c.pline_code in ('RZ1','LT1','SZ1')) FX_MEMO1 "
  9975. + " from c_tbl02_coil_comm t,c_tbf03_spec_mill t1,QCM_JUDGE_COIL_RESULT b where t.COIL_NO=t1.C_COIL_NO(+) and t.OLD_SAMPL_NO=b.coil_no and t.coil_stat = '2' "+swhere1+") t1 where 1= 1 "+swhere+" "
  9976. + " union all "
  9977. + "select * from (select SUBSTR(t.OLD_SAMPL_NO, 1, 9) batchno,SUBSTR(T.SLAB_NO, 1, 10) heat_no, case when t.WGT_DEC_RST = '1' then '合格' else '不合格' end WGT_DEC_RST,t1.CAL_NO plan_no, T.OLD_SAMPL_NO material_no,T.ORD_NO || T.ORD_SEQ design_key,(select PSC from tbb01_ord_prod F WHERE F.ORD_NO= T.ORD_NO AND ROWNUM=1) psc,'' psc_desc, "
  9978. +" (select max(memo) from qcm_ord_design_memo a where a.design_key = T.ORD_NO || T.ORD_SEQ) order_remark, "
  9979. + "t.PRDNM_CD DELIVERY_STATE_DESC,T.INSTR_COIL_THK thick,T.INSTR_COIL_WTH WIDTH,T.INSTR_COIL_LEN LENGTH,T.ACT_WGT/1000 weight,to_date(substr(t.MILL_DTIME,'0','8'), 'yyyy-mm-dd') PRODUCETIME,b.sizeid,case when (select count(1) from qcm_ord_design_std_cic x "
  9980. + " where x.design_key = T.ORD_NO || T.ORD_SEQ and x.std_type_code = 'C') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC,case when b.SIZERESULT_DESC = '待判' then '' else b.SIZERESULT_DESC end SIZERESULT_DESC,b.PHYSRESULT_DESC,case when (select count(1) "
  9981. + " from qcm_ord_design_std_dic x where x.design_key = T.ORD_NO || T.ORD_SEQ) > 0 then b.SPYRESULT_DESC else '否' end SPYRESULT_DESC,case when b.SURFACERESULT_DESC = '待判' then '' else b.SURFACERESULT_DESC end SURFACERESULT_DESC,b.R_CHEMRESULT_DESC,b.chemid,b. physid,b.surfaceid,b.spyid,b.r_chemid,B.chemresult,b.physresult,b.spyresult,T.SPEC_STL_GRD steel_code,b.tic_result_desc,"
  9982. + "T.SPEC_STL_GRD steel_name,T.SPEC_ABBSYM std_code,T.SPEC_ABBSYM std_name, T.ORD_USE_CD prod_code,PKG_QUALITY_COMM.PK00_COMM('E01002', T.CUR_PROG_CD) CUR_PROG_CD,PKG_QUALITY_COMM.PK00_COMM('A01007',T.ORD_USE_CD) prod_name,"
  9983. + "(select MAX(C.UNLOCK_NAME) "
  9984. + " from qcm_judge_locking c "
  9985. + " where c.material_no = t.SLAB_NO "
  9986. + " and c.unlock_type_code = '0' "
  9987. + " and c.lock_type_code = 'C' "
  9988. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MAN, "
  9989. + " (select TO_CHAR(MAX(C.UNLOCK_TIME), 'yyyy-mm-dd hh24:mi:ss') "
  9990. + " from qcm_judge_locking c "
  9991. + " where c.material_no = t.SLAB_NO "
  9992. + " and c.unlock_type_code = '0' "
  9993. + " and c.lock_type_code = 'C' "
  9994. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_TIME, "
  9995. + " (select MAX(C.UNLOCK_MEMO) "
  9996. + " from qcm_judge_locking c "
  9997. + " where c.material_no = t.SLAB_NO "
  9998. + " and c.unlock_type_code = '0' "
  9999. + " and c.lock_type_code = 'C' "
  10000. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MEMO,"
  10001. + "(select dbms_lob.substr(wmsys.wm_concat(DISTINCT C.UNLOCK_MEMO)) "
  10002. + " from qcm_judge_locking c "
  10003. + " where c.material_no = t.OLD_SAMPL_NO "
  10004. + " and c.unlock_type_code = '0' "
  10005. + " and c.lock_type_code IN ('C','P') "
  10006. + " and c.pline_code in ('RZ1','LT1','SZ1')) FX_MEMO1 "
  10007. + " from c_tbc02_coil_comm t,l_tbf03_spec_mill t1,QCM_JUDGE_COIL_RESULT b where t.ORI_OLD_SAMPL_NO=t1.C_COIL_NO(+) and t.OLD_SAMPL_NO=b.coil_no and t.coil_stat = '2' "+swhere1+") t1 where 1= 1 "+swhere+") order by PRODUCETIME desc";
  10008. }
  10009. try {
  10010. System.out.print(sql);
  10011. List<HashMap> list = mapper.query(sql);
  10012. cro.setResult(list);
  10013. } catch (Exception ex) {
  10014. ex.printStackTrace();
  10015. cro.setV_errCode(-1);
  10016. cro.setV_errMsg("查询失败!" + ex.getMessage());
  10017. }
  10018. SqlSession.close();
  10019. return cro;
  10020. }
  10021. /**
  10022. * 查询综合待判记录
  10023. */
  10024. public CoreReturnObject GetUnjudgeInfoY(String begintime,String endtime,String material_no,String design_key,String Psc_desc,String prodline,String cert_inst_name,String heat_no,String processes,String yl){
  10025. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime) && SqlJoint.IsNullOrSpace(material_no)) {
  10026. String sky=StrSky(begintime,endtime);
  10027. if(!sky.equals("TRUE")){
  10028. SqlSession.close();
  10029. cro.setV_errCode(-1);
  10030. cro.setV_errMsg(sky);
  10031. return cro;
  10032. }
  10033. }
  10034. String swhere = "";
  10035. String swhere1 = "";
  10036. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime)&& SqlJoint.IsNullOrSpace(material_no)) { //生产时间
  10037. swhere += " and to_date(to_char(PRODUCETIME,'yyyy-mm-dd'),'yyyy-mm-dd') between to_date('"+begintime+"','yyyy-mm-dd') and to_date('"+endtime+"','yyyy-mm-dd')";
  10038. }
  10039. if (!SqlJoint.IsNullOrSpace(material_no)) { //起始轧批号
  10040. swhere += "and MATERIAL_NO like '%"+material_no+"%'";
  10041. }
  10042. if (!SqlJoint.IsNullOrSpace(design_key)) { //销售订单号
  10043. swhere += " and design_key like '%"+design_key+"%'";
  10044. }
  10045. if (!SqlJoint.IsNullOrSpace(Psc_desc)) { //Psc_desc
  10046. swhere += " and psc_desc like '%"+Psc_desc+"%'";
  10047. }
  10048. if(!SqlJoint.IsNullOrSpace(heat_no)){
  10049. swhere1 += " and SUBSTR(T.SLAB_NO, 1, 10) like '%"+heat_no+"%'";
  10050. }
  10051. if(!SqlJoint.IsNullOrSpace(yl)){
  10052. swhere1 += " and t.MATERAILCOILNO like '%"+yl+"%'";
  10053. }
  10054. if(processes.equals("4mm分条机组")){
  10055. swhere1 += " and MACHINE_CODE = 'M0001'";
  10056. }else if(processes.equals("12mm分条机组")){
  10057. swhere1 += " and MACHINE_CODE = 'M0002'";
  10058. }else if(processes.equals("3mm横剪机组")){
  10059. swhere1 += " and MACHINE_CODE = 'M0003'";
  10060. }else if(processes.equals("退火炉宝信")){
  10061. swhere1 += " and MACHINE_CODE = 'M0004'";
  10062. }else if(processes.equals("退火炉南方D")){
  10063. swhere1 += " and MACHINE_CODE = 'M0005'";
  10064. }else if(processes.equals("退火炉艾伯纳")){
  10065. swhere1 += " and MACHINE_CODE = 'M0006'";
  10066. }else if(processes.equals("平整机组")){
  10067. swhere1 += " and MACHINE_CODE = 'M0007'";
  10068. }else if(processes.equals("轧机机组")){
  10069. swhere1 += " and MACHINE_CODE = 'M0008'";
  10070. }else if(processes.equals("退火炉南方G")){
  10071. swhere1 += " and MACHINE_CODE = 'M0009'";
  10072. }else if(processes.equals("酸洗机组")){
  10073. swhere1 += " and MACHINE_CODE = 'M0010'";
  10074. }
  10075. swhere1 += " and b.judgeresult = '0'";
  10076. if(!SqlJoint.IsNullOrSpace(cert_inst_name) && !cert_inst_name.equals("全部")){
  10077. swhere += "and exists (select 1 from qcm_ord_design_sample_m t2 where t2.design_key = t1.design_key and t2.org_name = '"+cert_inst_name+"')";
  10078. }
  10079. String sql = "";
  10080. sql = "select * from (select t.BATCHNO, "
  10081. + " t.HEATNO HEAT_NO, "
  10082. + " '' plan_no, "
  10083. + " t.COILNO MATERIAL_NO, "
  10084. + " substr(ORDERNO, 0, length(ORDERNO) - 6) || substr(ORDERNO, -3, 3) as DESIGN_KEY, "
  10085. + " '' PSC, "
  10086. + " '' PSC_DESC, "
  10087. + " (select max(memo) "
  10088. + " from qcm_ord_design_memo a "
  10089. + " where a.design_key = T.ORDERNO) order_remark, "
  10090. + " t.DELIVERY_STATE_DESC, "
  10091. + " t.THICK, "
  10092. + " t.WIDTH, "
  10093. + " t.LENGTH, "
  10094. + " t.FACTWEIGHT/1000 WEIGHT, "
  10095. + " t.PRODUCEDATE PRODUCETIME, "
  10096. + " b.sizeid, "
  10097. + " case "
  10098. + " when (select count(1) "
  10099. + " from qcm_ord_design_std_cic x "
  10100. + " where x.design_key = T.ORDERNO "
  10101. + " and x.std_type_code = 'C') > 0 then "
  10102. + " b.CHEMRESULT_DESC "
  10103. + " else "
  10104. + " '否' "
  10105. + " end CHEMRESULT_DESC, "
  10106. + " case "
  10107. + " when b.SIZERESULT_DESC = '待判' then "
  10108. + " '' "
  10109. + " else "
  10110. + " b.SIZERESULT_DESC "
  10111. + " end SIZERESULT_DESC, "
  10112. + " b.PHYSRESULT_DESC, "
  10113. + " case "
  10114. + " when (select count(1) "
  10115. + " from qcm_ord_design_std_dic x "
  10116. + " where x.design_key = T.ORDERNO) > 0 then "
  10117. + " b.SPYRESULT_DESC "
  10118. + " else "
  10119. + " '否' "
  10120. + " end SPYRESULT_DESC, "
  10121. + " case "
  10122. + " when b.SURFACERESULT_DESC = '待判' then "
  10123. + " '' "
  10124. + " else "
  10125. + " b.SURFACERESULT_DESC "
  10126. + " end SURFACERESULT_DESC, "
  10127. + " b.R_CHEMRESULT_DESC, "
  10128. + " b.chemid, "
  10129. + " b. physid, "
  10130. + " b.surfaceid, "
  10131. + " b.spyid, "
  10132. + " b.r_chemid, "
  10133. + " B.chemresult, "
  10134. + " b.physresult, "
  10135. + " b.spyresult, "
  10136. + " cbs.STEEL_code, "
  10137. + " cbs.STEEL_NAME, "
  10138. + " T.std_code, "
  10139. + " t.STD_NAME, "
  10140. + " T.prod_code, "
  10141. + " t.PROD_NAME,"
  10142. + " t.MATERAILCOILNO "
  10143. + " from YDM_PRODUCT_DETAIL@LINK_YTG t "
  10144. + " left join COM_BASE_STEEL@LINK_YTG cbs "
  10145. + " on t.STEELCODE = cbs.STEEL_CODE "
  10146. + " left join SLM_ORDER_INFO@LINK_YTG soi "
  10147. + " on t.ORDERNO = "
  10148. + " soi.CONTRACT_NO || soi.CONTRACT_LINE_SEQ || soi.ORDER_SEQ "
  10149. + " and nvl(soi.VALID_FLAG, '0') = '1' "
  10150. + " and nvl(soi.CHANGE_FLAG, '0') != '1' "
  10151. + " JOIN QCM_JUDGE_YT_COIL_RESULT B "
  10152. + " ON T.COILNO = B.COIL_NO "
  10153. + " where t.STATE in ('0','-1', '7') "+swhere1+") t1 where 1= 1 "+swhere+" order by PRODUCETIME desc";
  10154. try {
  10155. System.out.print(sql);
  10156. List<HashMap> list = mapper.query(sql);
  10157. cro.setResult(list);
  10158. } catch (Exception ex) {
  10159. ex.printStackTrace();
  10160. cro.setV_errCode(-1);
  10161. cro.setV_errMsg("查询失败!" + ex.getMessage());
  10162. }
  10163. SqlSession.close();
  10164. return cro;
  10165. }
  10166. public CoreReturnObject GetUnjudgeInfoJ2N(String begintime,String endtime,String bbatchno,String ebatchno,String design_key,String Psc_desc,String prodline,String cert_inst_name,String heat_no){
  10167. String swhere = "";
  10168. String swhere1 = "";
  10169. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime) && SqlJoint.IsNullOrSpace(bbatchno)) {
  10170. String sky=StrSky(begintime,endtime);
  10171. if(!sky.equals("TRUE")){
  10172. SqlSession.close();
  10173. cro.setV_errCode(-1);
  10174. cro.setV_errMsg(sky);
  10175. return cro;
  10176. }
  10177. }
  10178. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime)&& SqlJoint.IsNullOrSpace(bbatchno) && SqlJoint.IsNullOrSpace(ebatchno)) { //生产时间
  10179. swhere += " and to_date(to_char(PRODUCETIME,'yyyy-mm-dd'),'yyyy-mm-dd') between to_date('"+begintime+"','yyyy-mm-dd') and to_date('"+endtime+"','yyyy-mm-dd')";
  10180. }
  10181. if (!SqlJoint.IsNullOrSpace(bbatchno)) { //起始轧批号
  10182. swhere += "and batchno >= '"+bbatchno+"'";
  10183. }
  10184. if (!SqlJoint.IsNullOrSpace(ebatchno)) { //最后轧批号
  10185. swhere += "and batchno <= '"+ebatchno+"'";
  10186. }
  10187. if (!SqlJoint.IsNullOrSpace(design_key)) { //销售订单号
  10188. swhere += " and design_key like '%"+design_key+"%'";
  10189. }
  10190. if (!SqlJoint.IsNullOrSpace(Psc_desc)) { //Psc_desc
  10191. swhere += " and psc_desc like '%"+Psc_desc+"%'";
  10192. }
  10193. if(!SqlJoint.IsNullOrSpace(heat_no)){
  10194. swhere1 += " and SUBSTR(T.SLAB_NO, 1, 10) like '%"+heat_no+"%'";
  10195. }
  10196. swhere1 += " and b.judgeresult = '0'";
  10197. if(!SqlJoint.IsNullOrSpace(cert_inst_name) && !cert_inst_name.equals("全部")){
  10198. swhere += "and exists (select 1 from qcm_ord_design_sample_m t2 where t2.design_key = t1.design_key and t2.org_name = '"+cert_inst_name+"')";
  10199. }
  10200. String sql = "";
  10201. if(prodline.equals("热连轧")){
  10202. sql = "select * from (select SUBSTR(t.OLD_SAMPL_NO, 1, 10) batchno,SUBSTR(T.SLAB_NO, 1, 10) heat_no,case when t.WGT_DEC_RST = '1' then '合格' else '不合格' end WGT_DEC_RST,t1.ROLL_MANA_NO plan_no, T.OLD_SAMPL_NO material_no, T.ORD_NO || T.ORD_SEQ design_key, (select PSC from tbb01_ord_prod F WHERE F.ORD_NO= T.ORD_NO AND ROWNUM=1) psc,'' psc_desc, "
  10203. +" (select max(memo) from qcm_ord_design_memo a where a.design_key = T.ORD_NO || T.ORD_SEQ) order_remark, "
  10204. + " t.PRDNM_CD DELIVERY_STATE_DESC, T.INSTR_COIL_THK thick,T.INSTR_COIL_WTH WIDTH, T.INSTR_COIL_LEN LENGTH,T.ACT_WGT/1000 weight, to_date(substr(t.MILL_DTIME,'0','8'), 'yyyy-mm-dd') PRODUCETIME,b.sizeid,case when (select count(1) from qcm_ord_design_std_cic x "
  10205. + " where x.design_key = T.ORD_NO || T.ORD_SEQ and x.std_type_code = 'B') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC,case when b.SIZERESULT_DESC = '待判' then '' else b.SIZERESULT_DESC end SIZERESULT_DESC,b.PHYSRESULT_DESC,case when (select count(1) "
  10206. + " from qcm_ord_design_std_dic x where x.design_key = T.ORD_NO || T.ORD_SEQ) > 0 then b.SPYRESULT_DESC else '否' end SPYRESULT_DESC,case when b.SURFACERESULT_DESC = '待判' then '' else b.SURFACERESULT_DESC end SURFACERESULT_DESC,b.R_CHEMRESULT_DESC,b.chemid,b. physid,b.surfaceid,b.spyid,b.r_chemid,B.physresult, B.chemresult,b.spyresult,T.SPEC_STL_GRD steel_code,"
  10207. + " T.SPEC_STL_GRD steel_name,T.SPEC_ABBSYM std_code,T.SPEC_ABBSYM std_name, T.ORD_USE_CD prod_code,PKG_QUALITY_COMM.PK00_COMM('E01002', T.CUR_PROG_CD) CUR_PROG_CD,PKG_QUALITY_COMM.PK00_COMM('A01007',T.ORD_USE_CD) prod_name,"
  10208. + "to_char(t.COIL_THK, 'fm99.999') COIL_THK,\n" +
  10209. " t.COIL_WTH COIL_WTH,\n" +
  10210. " t.COIL_INDIA,\n" +
  10211. " t.EXTSHAPE_DEC_GRD EXTSHAPE_QUALITY,\n" +
  10212. " b.inspection_lot SMP_NO,\n" +
  10213. " t.SAMPL_CUT_LOC SMP_CUT_LOC,\n" +
  10214. " t.PROC_DEC_RST,\n" +
  10215. " t.SLAB_NO,\n" +
  10216. " (select A.SM_CFNM\n" +
  10217. " from tbz00_commcd A\n" +
  10218. " where A.SM_CD = t.CRK_CD1\n" +
  10219. " and A.LG_CD = 'B02001') CR_DK1,\n" +
  10220. " PKG_QUALITY_COMM.FZ00_COMM('A01010', T.PACK_METHOD_CD) PACKAGE_LEVEL,\n" +
  10221. " T.ORD_NO,\n" +
  10222. " T.ORD_SEQ,\n" +
  10223. " T.ACT_WGT,"
  10224. + "(select MAX(C.UNLOCK_NAME) "
  10225. + " from qcm_judge_locking c "
  10226. + " where c.material_no = t.SLAB_NO "
  10227. + " and c.unlock_type_code = '0' "
  10228. + " and c.lock_type_code = 'C' "
  10229. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MAN, "
  10230. + " (select TO_CHAR(MAX(C.UNLOCK_TIME), 'yyyy-mm-dd hh24:mi:ss') "
  10231. + " from qcm_judge_locking c "
  10232. + " where c.material_no = t.SLAB_NO "
  10233. + " and c.unlock_type_code = '0' "
  10234. + " and c.lock_type_code = 'C' "
  10235. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_TIME, "
  10236. + " (select MAX(C.UNLOCK_MEMO) "
  10237. + " from qcm_judge_locking c "
  10238. + " where c.material_no = t.SLAB_NO "
  10239. + " and c.unlock_type_code = '0' "
  10240. + " and c.lock_type_code = 'C' "
  10241. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MEMO,"
  10242. + "(select dbms_lob.substr(wmsys.wm_concat(DISTINCT C.UNLOCK_MEMO)) "
  10243. + " from qcm_judge_locking c "
  10244. + " where c.material_no = t.OLD_SAMPL_NO "
  10245. + " and c.unlock_type_code = '0' "
  10246. + " and c.lock_type_code IN ('C','P') "
  10247. + " and c.pline_code in ('RZ1','LT1','SZ1')) FX_MEMO1 "
  10248. + " from tbh02_coil_comm t,tbf02_spec_mill t1,QCM_JUDGE_COIL_RESULT b where t.COIL_NO=t1.COIL_NO(+) and t.OLD_SAMPL_NO=b.coil_no and t.coil_stat = '2' "+swhere1+" ) t1 where 1= 1 "+swhere+" order by PRODUCETIME desc";
  10249. }else if(prodline.equals("酸轧")){
  10250. sql = "select * from (select SUBSTR(t.OLD_SAMPL_NO, 1, 9) batchno,SUBSTR(T.SLAB_NO, 1, 10) heat_no,'' WGT_DEC_RST, t1.ROLL_MANA_NO plan_no, T.OLD_SAMPL_NO material_no, T.ORD_NO || T.ORD_SEQ design_key, (select PSC from tbb01_ord_prod F WHERE F.ORD_NO= T.ORD_NO AND ROWNUM=1) psc,'' psc_desc, "
  10251. +" (select max(memo) from qcm_ord_design_memo a where a.design_key = T.ORD_NO || T.ORD_SEQ) order_remark, "
  10252. + " t.PRDNM_CD DELIVERY_STATE_DESC, T.INSTR_COIL_THK thick, T.INSTR_COIL_WTH WIDTH,T.INSTR_COIL_LEN LENGTH,T.ACT_WGT/1000 weight,to_date(substr(t.MILL_DTIME,'0','8'), 'yyyy-mm-dd') PRODUCETIME,b.sizeid,case when (select count(1) from qcm_ord_design_std_cic x "
  10253. + " where x.design_key = T.ORD_NO || T.ORD_SEQ and x.std_type_code = 'B') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC,case when b.SIZERESULT_DESC = '待判' then '' else b.SIZERESULT_DESC end SIZERESULT_DESC,b.PHYSRESULT_DESC,case when (select count(1) "
  10254. + " from qcm_ord_design_std_dic x where x.design_key = T.ORD_NO || T.ORD_SEQ) > 0 then b.SPYRESULT_DESC else '否' end SPYRESULT_DESC,case when b.SURFACERESULT_DESC = '待判' then '' else b.SURFACERESULT_DESC end SURFACERESULT_DESC,b.R_CHEMRESULT_DESC,b.chemid,b. physid,b.surfaceid,b.spyid,b.r_chemid,B.physresult, B.chemresult,b.spyresult,T.SPEC_STL_GRD steel_code,"
  10255. + "T.SPEC_STL_GRD steel_name,T.SPEC_ABBSYM std_code,T.SPEC_ABBSYM std_name, T.ORD_USE_CD prod_code,PKG_QUALITY_COMM.PK00_COMM('E01002', T.CUR_PROG_CD) CUR_PROG_CD,PKG_QUALITY_COMM.PK00_COMM('A01007',T.ORD_USE_CD) prod_name,"
  10256. + "to_char(t.COIL_THK, 'fm0.999') COIL_THK, --厚度\n" +
  10257. " t.COIL_WTH COIL_WTH, --宽度\n" +
  10258. " t.COIL_INDIA, --内径\n" +
  10259. " t.EXTSHAPE_QUALITY, --外观判定等级\n" +
  10260. " b.inspection_lot SMP_NO,\n" +
  10261. " t.SMP_CUT_LOC,\n" +
  10262. " t.PROC_DEC_RST, --切边\n"
  10263. + " t.SLAB_NO,"
  10264. + " (select A.SM_CFNM\n" +
  10265. " from tbz00_commcd A\n" +
  10266. " where A.SM_CD = t.CRK_CD1\n" +
  10267. " and A.LG_CD = 'B02001') CR_DK1," +
  10268. " PKG_QUALITY_COMM.FZ00_COMM('A01010', T.PACKAGE_LEVEL) PACKAGE_LEVEL, --包装方式\n" +
  10269. " NVL(T.ORD_NO,T.ORG_ORD_NO)ORD_NO, \n" +
  10270. " NVL(T.ORD_SEQ,T.ORG_ORD_SEQ)ORD_SEQ, \n"
  10271. + " T.ACT_WGT"
  10272. + "(select MAX(C.UNLOCK_NAME) "
  10273. + " from qcm_judge_locking c "
  10274. + " where c.material_no = t.SLAB_NO "
  10275. + " and c.unlock_type_code = '0' "
  10276. + " and c.lock_type_code = 'C' "
  10277. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MAN, "
  10278. + " (select TO_CHAR(MAX(C.UNLOCK_TIME), 'yyyy-mm-dd hh24:mi:ss') "
  10279. + " from qcm_judge_locking c "
  10280. + " where c.material_no = t.SLAB_NO "
  10281. + " and c.unlock_type_code = '0' "
  10282. + " and c.lock_type_code = 'C' "
  10283. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_TIME, "
  10284. + " (select MAX(C.UNLOCK_MEMO) "
  10285. + " from qcm_judge_locking c "
  10286. + " where c.material_no = t.SLAB_NO "
  10287. + " and c.unlock_type_code = '0' "
  10288. + " and c.lock_type_code = 'C' "
  10289. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MEMO,"
  10290. + "(select dbms_lob.substr(wmsys.wm_concat(DISTINCT C.UNLOCK_MEMO)) "
  10291. + " from qcm_judge_locking c "
  10292. + " where c.material_no = t.OLD_SAMPL_NO "
  10293. + " and c.unlock_type_code = '0' "
  10294. + " and c.lock_type_code IN ('C','P') "
  10295. + " and c.pline_code in ('RZ1','LT1','SZ1')) FX_MEMO1 "
  10296. + " from c_tbl02_coil_comm t,c_tbf03_spec_mill t1,QCM_JUDGE_COIL_RESULT b where t.COIL_NO=t1.C_COIL_NO(+) and t.OLD_SAMPL_NO=b.coil_no and t.coil_stat = '2' "+swhere1+") t1 where 1= 1 "+swhere+" order by PRODUCETIME desc";
  10297. }else if(prodline.equals("连退")){
  10298. sql = "select * from (select SUBSTR(t.OLD_SAMPL_NO, 1, 9) batchno, SUBSTR(T.SLAB_NO, 1, 10) heat_no, case when t.WGT_DEC_RST = '1' then '合格' else '不合格' end WGT_DEC_RST,t1.CAL_NO plan_no, T.OLD_SAMPL_NO material_no,T.ORD_NO || T.ORD_SEQ design_key,(select PSC from tbb01_ord_prod F WHERE F.ORD_NO= T.ORD_NO AND ROWNUM=1) psc,'' psc_desc, "
  10299. +" (select max(memo) from qcm_ord_design_memo a where a.design_key = T.ORD_NO || T.ORD_SEQ) order_remark, "
  10300. + "t.PRDNM_CD DELIVERY_STATE_DESC,T.INSTR_COIL_THK thick,T.INSTR_COIL_WTH WIDTH,T.INSTR_COIL_LEN LENGTH,T.ACT_WGT/1000 weight,to_date(substr(t.MILL_DTIME,'0','8'), 'yyyy-mm-dd') PRODUCETIME,b.sizeid,case when (select count(1) from qcm_ord_design_std_cic x "
  10301. + " where x.design_key = T.ORD_NO || T.ORD_SEQ and x.std_type_code = 'B') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC,case when b.SIZERESULT_DESC = '待判' then '' else b.SIZERESULT_DESC end SIZERESULT_DESC,b.PHYSRESULT_DESC,case when (select count(1) "
  10302. + " from qcm_ord_design_std_dic x where x.design_key = T.ORD_NO || T.ORD_SEQ) > 0 then b.SPYRESULT_DESC else '否' end SPYRESULT_DESC,case when b.SURFACERESULT_DESC = '待判' then '' else b.SURFACERESULT_DESC end SURFACERESULT_DESC,b.R_CHEMRESULT_DESC,b.chemid,b. physid,b.surfaceid,b.spyid,b.r_chemid,B.physresult, B.chemresult,b.spyresult,T.SPEC_STL_GRD steel_code,"
  10303. + "T.SPEC_STL_GRD steel_name,T.SPEC_ABBSYM std_code,T.SPEC_ABBSYM std_name, T.ORD_USE_CD prod_code,PKG_QUALITY_COMM.PK00_COMM('E01002', T.CUR_PROG_CD) CUR_PROG_CD,PKG_QUALITY_COMM.PK00_COMM('A01007',T.ORD_USE_CD) prod_name,"
  10304. + "to_char(t.COIL_THK, 'fm0.999') COIL_THK, --厚度\n" +
  10305. " t.COIL_WTH COIL_WTH, --宽度\n" +
  10306. " t.COIL_INDIA, --内径\n" +
  10307. " t.EXTSHAPE_QUALITY, --外观判定等级\n" +
  10308. " b.inspection_lot SMP_NO,\n" +
  10309. " t.SMP_CUT_LOC,\n" +
  10310. " t.PROC_DEC_RST, --切边\n"
  10311. + " t.SLAB_NO,"
  10312. + " (select A.SM_CFNM\n" +
  10313. " from tbz00_commcd A\n" +
  10314. " where A.SM_CD = t.CRK_CD1\n" +
  10315. " and A.LG_CD = 'B02001') CR_DK1," +
  10316. " PKG_QUALITY_COMM.FZ00_COMM('A01010', T.PACKAGE_LEVEL) PACKAGE_LEVEL, --包装方式\n" +
  10317. " NVL(T.ORD_NO,T.ORG_ORD_NO)ORD_NO, \n" +
  10318. " NVL(T.ORD_SEQ,T.ORG_ORD_SEQ)ORD_SEQ, \n"
  10319. + " T.ACT_WGT,"
  10320. + "(select MAX(C.UNLOCK_NAME) "
  10321. + " from qcm_judge_locking c "
  10322. + " where c.material_no = t.SLAB_NO "
  10323. + " and c.unlock_type_code = '0' "
  10324. + " and c.lock_type_code = 'C' "
  10325. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MAN, "
  10326. + " (select TO_CHAR(MAX(C.UNLOCK_TIME), 'yyyy-mm-dd hh24:mi:ss') "
  10327. + " from qcm_judge_locking c "
  10328. + " where c.material_no = t.SLAB_NO "
  10329. + " and c.unlock_type_code = '0' "
  10330. + " and c.lock_type_code = 'C' "
  10331. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_TIME, "
  10332. + " (select MAX(C.UNLOCK_MEMO) "
  10333. + " from qcm_judge_locking c "
  10334. + " where c.material_no = t.SLAB_NO "
  10335. + " and c.unlock_type_code = '0' "
  10336. + " and c.lock_type_code = 'C' "
  10337. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MEMO,"
  10338. + "(select dbms_lob.substr(wmsys.wm_concat(DISTINCT C.UNLOCK_MEMO)) "
  10339. + " from qcm_judge_locking c "
  10340. + " where c.material_no = t.OLD_SAMPL_NO "
  10341. + " and c.unlock_type_code = '0' "
  10342. + " and c.lock_type_code IN ('C','P') "
  10343. + " and c.pline_code in ('RZ1','LT1','SZ1')) FX_MEMO1 "
  10344. + " from c_tbc02_coil_comm t,l_tbf03_spec_mill t1,QCM_JUDGE_COIL_RESULT b where t.ORI_OLD_SAMPL_NO=t1.C_COIL_NO(+) and t.OLD_SAMPL_NO=b.coil_no and t.coil_stat = '2' "+swhere1+") t1 where 1= 1 "+swhere+" order by PRODUCETIME desc";
  10345. }else{
  10346. sql =/*"select * from(select *\n" +
  10347. " from (select SUBSTR(t.OLD_SAMPL_NO, 1, 9) batchno,\n" +
  10348. " SUBSTR(T.SLAB_NO, 1, 10) heat_no,\n" +
  10349. " case\n" +
  10350. " when t.WGT_DEC_RST = '1' then\n" +
  10351. " '合格'\n" +
  10352. " else\n" +
  10353. " '不合格'\n" +
  10354. " end WGT_DEC_RST,\n" +
  10355. " t1.CAL_NO plan_no,\n" +
  10356. " T.OLD_SAMPL_NO material_no,\n" +
  10357. " T.ORD_NO || T.ORD_SEQ design_key,\n" +
  10358. " (select PSC\n" +
  10359. " from tbb01_ord_prod F\n" +
  10360. " WHERE F.ORD_NO = T.ORD_NO\n" +
  10361. " AND ROWNUM = 1) psc,\n" +
  10362. " '' psc_desc,\n" +
  10363. " (select max(memo)\n" +
  10364. " from qcm_ord_design_memo a\n" +
  10365. " where a.design_key = T.ORD_NO || T.ORD_SEQ) order_remark,\n" +
  10366. " t.PRDNM_CD DELIVERY_STATE_DESC,\n" +
  10367. " T.INSTR_COIL_THK thick,\n" +
  10368. " T.INSTR_COIL_WTH WIDTH,\n" +
  10369. " T.INSTR_COIL_LEN LENGTH,\n" +
  10370. " T.ACT_WGT / 1000 weight,\n" +
  10371. " to_date(substr(t.MILL_DTIME, '0', '8'), 'yyyy-mm-dd') PRODUCETIME,\n" +
  10372. " b.sizeid,\n" +
  10373. " case\n" +
  10374. " when (select count(1)\n" +
  10375. " from qcm_ord_design_std_cic x\n" +
  10376. " where x.design_key = T.ORD_NO || T.ORD_SEQ\n" +
  10377. " and x.std_type_code = 'B') > 0 then\n" +
  10378. " b.CHEMRESULT_DESC\n" +
  10379. " else\n" +
  10380. " '否'\n" +
  10381. " end CHEMRESULT_DESC,\n" +
  10382. " case\n" +
  10383. " when b.SIZERESULT_DESC = '待判' then\n" +
  10384. " ''\n" +
  10385. " else\n" +
  10386. " b.SIZERESULT_DESC\n" +
  10387. " end SIZERESULT_DESC,\n" +
  10388. " b.PHYSRESULT_DESC,\n" +
  10389. " case\n" +
  10390. " when (select count(1)\n" +
  10391. " from qcm_ord_design_std_dic x\n" +
  10392. " where x.design_key = T.ORD_NO || T.ORD_SEQ) > 0 then\n" +
  10393. " b.SPYRESULT_DESC\n" +
  10394. " else\n" +
  10395. " '否'\n" +
  10396. " end SPYRESULT_DESC,\n" +
  10397. " case\n" +
  10398. " when b.SURFACERESULT_DESC = '待判' then\n" +
  10399. " ''\n" +
  10400. " else\n" +
  10401. " b.SURFACERESULT_DESC\n" +
  10402. " end SURFACERESULT_DESC,\n" +
  10403. " b.R_CHEMRESULT_DESC,\n" +
  10404. " b.chemid,\n" +
  10405. " b. physid,\n" +
  10406. " b.surfaceid,\n" +
  10407. " b.spyid,\n" +
  10408. " b.r_chemid,\n" +
  10409. " B.chemresult,\n" +
  10410. " b.physresult,\n" +
  10411. " b.spyresult,\n" +
  10412. " T.SPEC_STL_GRD steel_code,\n" +
  10413. " T.SPEC_STL_GRD steel_name,\n" +
  10414. " T.SPEC_ABBSYM std_code,\n" +
  10415. " T.SPEC_ABBSYM std_name,\n" +
  10416. " T.ORD_USE_CD prod_code,\n" +
  10417. " PKG_QUALITY_COMM.PK00_COMM('E01002', T.CUR_PROG_CD) CUR_PROG_CD,\n" +
  10418. " PKG_QUALITY_COMM.PK00_COMM('A01007', T.ORD_USE_CD) prod_name,\n" +
  10419. " to_char(t.COIL_THK, 'fm99.999') COIL_THK,\n" +
  10420. " t.COIL_WTH COIL_WTH,\n" +
  10421. " t.COIL_INDIA,\n" +
  10422. " t.EXTSHAPE_DEC_GRD EXTSHAPE_QUALITY,\n" +
  10423. " b.inspection_lot SMP_NO,\n" +
  10424. " t.SAMPL_CUT_LOC SMP_CUT_LOC,\n" +
  10425. " t.PROC_DEC_RST,\n" +
  10426. " t.SLAB_NO,\n" +
  10427. " (select A.SM_CFNM\n" +
  10428. " from tbz00_commcd A\n" +
  10429. " where A.SM_CD = t.CRK_CD1\n" +
  10430. " and A.LG_CD = 'B02001') CR_DK1,\n" +
  10431. " PKG_QUALITY_COMM.FZ00_COMM('A01010', T.PACK_METHOD_CD) PACKAGE_LEVEL,\n" +
  10432. " T.ORD_NO,\n" +
  10433. " T.ORD_SEQ,\n" +
  10434. " T.ACT_WGT,\n" +
  10435. " (select MAX(C.UNLOCK_NAME)\n" +
  10436. " from qcm_judge_locking c\n" +
  10437. " where c.material_no = t.SLAB_NO\n" +
  10438. " and c.unlock_type_code = '0'\n" +
  10439. " and c.lock_type_code = 'C'\n" +
  10440. " and c.pline_code in ('4001LG0', '4001LGX')) FX_MAN,\n" +
  10441. " (select TO_CHAR(MAX(C.UNLOCK_TIME),\n" +
  10442. " 'yyyy-mm-dd hh24:mi:ss')\n" +
  10443. " from qcm_judge_locking c\n" +
  10444. " where c.material_no = t.SLAB_NO\n" +
  10445. " and c.unlock_type_code = '0'\n" +
  10446. " and c.lock_type_code = 'C'\n" +
  10447. " and c.pline_code in ('4001LG0', '4001LGX')) FX_TIME,\n" +
  10448. " (select MAX(C.UNLOCK_MEMO)\n" +
  10449. " from qcm_judge_locking c\n" +
  10450. " where c.material_no = t.SLAB_NO\n" +
  10451. " and c.unlock_type_code = '0'\n" +
  10452. " and c.lock_type_code = 'C'\n" +
  10453. " and c.pline_code in ('4001LG0', '4001LGX')) FX_MEMO,\n" +
  10454. " (select dbms_lob.substr(wmsys.wm_concat(DISTINCT\n" +
  10455. " C.UNLOCK_MEMO))\n" +
  10456. " from qcm_judge_locking c\n" +
  10457. " where c.material_no = t.OLD_SAMPL_NO\n" +
  10458. " and c.unlock_type_code = '0'\n" +
  10459. " and c.lock_type_code IN ('C', 'P')\n" +
  10460. " and c.pline_code in ('RZ1', 'LT1', 'SZ1')) FX_MEMO1\n" +
  10461. " from tbh02_coil_comm t,\n" +
  10462. " l_tbf03_spec_mill t1,\n" +
  10463. " QCM_JUDGE_COIL_RESULT b\n" +
  10464. " where t.COIL_NO=t1.COIL_NO(+)\n" +
  10465. " and t.OLD_SAMPL_NO = b.coil_no\n" +
  10466. " and t.coil_stat = '2' "+swhere1+") t1 where 1= 1 "+swhere+" "
  10467. + "union all \n"
  10468. +*/ "select * from(select * from (select SUBSTR(t.OLD_SAMPL_NO, 1, 9) batchno,SUBSTR(T.SLAB_NO, 1, 10) heat_no,'' WGT_DEC_RST, t1.ROLL_MANA_NO plan_no, T.OLD_SAMPL_NO material_no, T.ORD_NO || T.ORD_SEQ design_key, (select PSC from tbb01_ord_prod F WHERE F.ORD_NO= T.ORD_NO AND ROWNUM=1) psc,'' psc_desc, "
  10469. +" (select max(memo) from qcm_ord_design_memo a where a.design_key = T.ORD_NO || T.ORD_SEQ) order_remark, "
  10470. + " t.PRDNM_CD DELIVERY_STATE_DESC, T.INSTR_COIL_THK thick, T.INSTR_COIL_WTH WIDTH,T.INSTR_COIL_LEN LENGTH,T.ACT_WGT/1000 weight,to_date(substr(t.MILL_DTIME,'0','8'), 'yyyy-mm-dd') PRODUCETIME,b.sizeid,case when (select count(1) from qcm_ord_design_std_cic x "
  10471. + " where x.design_key = T.ORD_NO || T.ORD_SEQ and x.std_type_code = 'B') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC,case when b.SIZERESULT_DESC = '待判' then '' else b.SIZERESULT_DESC end SIZERESULT_DESC,b.PHYSRESULT_DESC,case when (select count(1) "
  10472. + " from qcm_ord_design_std_dic x where x.design_key = T.ORD_NO || T.ORD_SEQ) > 0 then b.SPYRESULT_DESC else '否' end SPYRESULT_DESC,case when b.SURFACERESULT_DESC = '待判' then '' else b.SURFACERESULT_DESC end SURFACERESULT_DESC,b.R_CHEMRESULT_DESC,b.chemid,b. physid,b.surfaceid,b.spyid,b.r_chemid,B.chemresult,b.physresult,b.spyresult,T.SPEC_STL_GRD steel_code,"
  10473. + "T.SPEC_STL_GRD steel_name,T.SPEC_ABBSYM std_code,T.SPEC_ABBSYM std_name, T.ORD_USE_CD prod_code,PKG_QUALITY_COMM.PK00_COMM('E01002', T.CUR_PROG_CD) CUR_PROG_CD,PKG_QUALITY_COMM.PK00_COMM('A01007',T.ORD_USE_CD) prod_name, "
  10474. + "to_char(t.COIL_THK, 'fm0.999') COIL_THK, \n" +
  10475. " t.COIL_WTH COIL_WTH, \n" +
  10476. " t.COIL_INDIA, \n" +
  10477. " t.EXTSHAPE_QUALITY, \n" +
  10478. " b.inspection_lot SMP_NO,\n" +
  10479. " t.SMP_CUT_LOC,\n" +
  10480. " t.PROC_DEC_RST, \n"
  10481. + " t.SLAB_NO,"
  10482. + " (select A.SM_CFNM\n" +
  10483. " from tbz00_commcd A\n" +
  10484. " where A.SM_CD = t.CRK_CD1\n" +
  10485. " and A.LG_CD = 'B02001') CR_DK1," +
  10486. " PKG_QUALITY_COMM.FZ00_COMM('A01010', T.PACKAGE_LEVEL) PACKAGE_LEVEL, \n" +
  10487. " NVL(T.ORD_NO,T.ORG_ORD_NO)ORD_NO, \n" +
  10488. " NVL(T.ORD_SEQ,T.ORG_ORD_SEQ)ORD_SEQ, \n"
  10489. + " T.ACT_WGT,"
  10490. + "(select MAX(C.UNLOCK_NAME) "
  10491. + " from qcm_judge_locking c "
  10492. + " where c.material_no = t.SLAB_NO "
  10493. + " and c.unlock_type_code = '0' "
  10494. + " and c.lock_type_code = 'C' "
  10495. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MAN, "
  10496. + " (select TO_CHAR(MAX(C.UNLOCK_TIME), 'yyyy-mm-dd hh24:mi:ss') "
  10497. + " from qcm_judge_locking c "
  10498. + " where c.material_no = t.SLAB_NO "
  10499. + " and c.unlock_type_code = '0' "
  10500. + " and c.lock_type_code = 'C' "
  10501. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_TIME, "
  10502. + " (select MAX(C.UNLOCK_MEMO) "
  10503. + " from qcm_judge_locking c "
  10504. + " where c.material_no = t.SLAB_NO "
  10505. + " and c.unlock_type_code = '0' "
  10506. + " and c.lock_type_code = 'C' "
  10507. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MEMO,"
  10508. + "(select dbms_lob.substr(wmsys.wm_concat(DISTINCT C.UNLOCK_MEMO)) "
  10509. + " from qcm_judge_locking c "
  10510. + " where c.material_no = t.OLD_SAMPL_NO "
  10511. + " and c.unlock_type_code = '0' "
  10512. + " and c.lock_type_code IN ('C','P') "
  10513. + " and c.pline_code in ('RZ1','LT1','SZ1')) FX_MEMO1 "
  10514. + " from c_tbl02_coil_comm t,c_tbf03_spec_mill t1,QCM_JUDGE_COIL_RESULT b where t.COIL_NO=t1.C_COIL_NO(+) and t.OLD_SAMPL_NO=b.coil_no and t.coil_stat = '2' "+swhere1+") t1 where 1= 1 "+swhere+" "
  10515. + " union all "
  10516. + "select * from (select SUBSTR(t.OLD_SAMPL_NO, 1, 9) batchno,SUBSTR(T.SLAB_NO, 1, 10) heat_no, case when t.WGT_DEC_RST = '1' then '合格' else '不合格' end WGT_DEC_RST,t1.CAL_NO plan_no, T.OLD_SAMPL_NO material_no,T.ORD_NO || T.ORD_SEQ design_key,(select PSC from tbb01_ord_prod F WHERE F.ORD_NO= T.ORD_NO AND ROWNUM=1) psc,'' psc_desc, "
  10517. +" (select max(memo) from qcm_ord_design_memo a where a.design_key = T.ORD_NO || T.ORD_SEQ) order_remark, "
  10518. + "t.PRDNM_CD DELIVERY_STATE_DESC,T.INSTR_COIL_THK thick,T.INSTR_COIL_WTH WIDTH,T.INSTR_COIL_LEN LENGTH,T.ACT_WGT/1000 weight,to_date(substr(t.MILL_DTIME,'0','8'), 'yyyy-mm-dd') PRODUCETIME,b.sizeid,case when (select count(1) from qcm_ord_design_std_cic x "
  10519. + " where x.design_key = T.ORD_NO || T.ORD_SEQ and x.std_type_code = 'B') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC,case when b.SIZERESULT_DESC = '待判' then '' else b.SIZERESULT_DESC end SIZERESULT_DESC,b.PHYSRESULT_DESC,case when (select count(1) "
  10520. + " from qcm_ord_design_std_dic x where x.design_key = T.ORD_NO || T.ORD_SEQ) > 0 then b.SPYRESULT_DESC else '否' end SPYRESULT_DESC,case when b.SURFACERESULT_DESC = '待判' then '' else b.SURFACERESULT_DESC end SURFACERESULT_DESC,b.R_CHEMRESULT_DESC,b.chemid,b. physid,b.surfaceid,b.spyid,b.r_chemid,B.chemresult,b.physresult,b.spyresult,T.SPEC_STL_GRD steel_code,"
  10521. + "T.SPEC_STL_GRD steel_name,T.SPEC_ABBSYM std_code,T.SPEC_ABBSYM std_name, T.ORD_USE_CD prod_code,PKG_QUALITY_COMM.PK00_COMM('E01002', T.CUR_PROG_CD) CUR_PROG_CD,PKG_QUALITY_COMM.PK00_COMM('A01007',T.ORD_USE_CD) prod_name,"
  10522. + "to_char(t.COIL_THK, 'fm0.999') COIL_THK, \n" +
  10523. " t.COIL_WTH COIL_WTH, \n" +
  10524. " t.COIL_INDIA, \n" +
  10525. " t.EXTSHAPE_QUALITY, \n" +
  10526. " b.inspection_lot SMP_NO,\n" +
  10527. " t.SMP_CUT_LOC,\n" +
  10528. " t.PROC_DEC_RST, \n"
  10529. + " t.SLAB_NO,"
  10530. + " (select A.SM_CFNM\n" +
  10531. " from tbz00_commcd A\n" +
  10532. " where A.SM_CD = t.CRK_CD1\n" +
  10533. " and A.LG_CD = 'B02001') CR_DK1," +
  10534. " PKG_QUALITY_COMM.FZ00_COMM('A01010', T.PACKAGE_LEVEL) PACKAGE_LEVEL,\n" +
  10535. " NVL(T.ORD_NO,T.ORG_ORD_NO)ORD_NO, \n" +
  10536. " NVL(T.ORD_SEQ,T.ORG_ORD_SEQ)ORD_SEQ, \n"
  10537. + " T.ACT_WGT,"
  10538. + "(select MAX(C.UNLOCK_NAME) "
  10539. + " from qcm_judge_locking c "
  10540. + " where c.material_no = t.SLAB_NO "
  10541. + " and c.unlock_type_code = '0' "
  10542. + " and c.lock_type_code = 'C' "
  10543. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MAN, "
  10544. + " (select TO_CHAR(MAX(C.UNLOCK_TIME), 'yyyy-mm-dd hh24:mi:ss') "
  10545. + " from qcm_judge_locking c "
  10546. + " where c.material_no = t.SLAB_NO "
  10547. + " and c.unlock_type_code = '0' "
  10548. + " and c.lock_type_code = 'C' "
  10549. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_TIME, "
  10550. + " (select MAX(C.UNLOCK_MEMO) "
  10551. + " from qcm_judge_locking c "
  10552. + " where c.material_no = t.SLAB_NO "
  10553. + " and c.unlock_type_code = '0' "
  10554. + " and c.lock_type_code = 'C' "
  10555. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MEMO,"
  10556. + "(select dbms_lob.substr(wmsys.wm_concat(DISTINCT C.UNLOCK_MEMO)) "
  10557. + " from qcm_judge_locking c "
  10558. + " where c.material_no = t.OLD_SAMPL_NO "
  10559. + " and c.unlock_type_code = '0' "
  10560. + " and c.lock_type_code IN ('C','P') "
  10561. + " and c.pline_code in ('RZ1','LT1','SZ1')) FX_MEMO1 "
  10562. + " from c_tbc02_coil_comm t,l_tbf03_spec_mill t1,QCM_JUDGE_COIL_RESULT b where t.ORI_OLD_SAMPL_NO=t1.C_COIL_NO(+) and t.OLD_SAMPL_NO=b.coil_no and t.coil_stat = '2' "+swhere1+") t1 where 1= 1 "+swhere+") order by PRODUCETIME desc";
  10563. }
  10564. try {
  10565. System.out.print(sql);
  10566. List<HashMap> list = mapper.query(sql);
  10567. cro.setResult(list);
  10568. } catch (Exception ex) {
  10569. ex.printStackTrace();
  10570. cro.setV_errCode(-1);
  10571. cro.setV_errMsg("查询失败!" + ex.getMessage());
  10572. }
  10573. SqlSession.close();
  10574. return cro;
  10575. }
  10576. public CoreReturnObject GetUnjudgeInfoBF1(String begintime,String endtime,String bbatchno,String ebatchno,String design_key,String Psc_desc,String prodline,String heat_no,String time_type){
  10577. String swhere = "";
  10578. String swhere1 = "";
  10579. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime) && SqlJoint.IsNullOrSpace(bbatchno) && SqlJoint.IsNullOrSpace(ebatchno) && time_type.equals("0")) { //生产时间
  10580. swhere += " and to_date(to_char(PRODUCETIME,'yyyy-mm-dd'),'yyyy-mm-dd') between to_date('"+begintime+"','yyyy-mm-dd') and to_date('"+endtime+"','yyyy-mm-dd')";
  10581. }
  10582. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime) && SqlJoint.IsNullOrSpace(bbatchno) && SqlJoint.IsNullOrSpace(ebatchno) && time_type.equals("1")) { //生产时间
  10583. swhere1 += " and b.physid in (select pic_id from qcm_judge_physical_utm_m where to_date(to_char(create_time,'yyyy-mm-dd'),'yyyy-mm-dd') between to_date('"+begintime+"','yyyy-mm-dd') and to_date('"+endtime+"','yyyy-mm-dd'))";
  10584. }
  10585. if (!SqlJoint.IsNullOrSpace(bbatchno)) { //起始轧批号
  10586. swhere += "and batchno >= '"+bbatchno+"'";
  10587. }
  10588. if (!SqlJoint.IsNullOrSpace(ebatchno)) { //最后轧批号
  10589. swhere += "and batchno <= '"+ebatchno+"'";
  10590. }
  10591. if (!SqlJoint.IsNullOrSpace(design_key)) { //销售订单号
  10592. swhere += " and design_key like '"+design_key+"%'";
  10593. }
  10594. if (!SqlJoint.IsNullOrSpace(Psc_desc)) { //Psc_desc
  10595. swhere += " and psc_desc like '%"+Psc_desc+"%'";
  10596. }
  10597. if(!SqlJoint.IsNullOrSpace(heat_no)){
  10598. swhere1 += " and stoveno like '%"+heat_no+"%'";
  10599. }
  10600. swhere1 += " and b.judgeresult = '0'";
  10601. swhere += " and (design_key like '19%' or design_key is null)";
  10602. /*//表面
  10603. swhere1 += " and b.surfaceresult not in ('0','2')";
  10604. //熔炼
  10605. swhere1 += " and b.r_chemresult not in ('0','2') ";
  10606. //成品成分
  10607. swhere += " and (chemresult not in ('0','2') or ( not exists (select 1 from qcm_ord_design_std_cic t2 where t2.design_key = t1.design_key and t2.std_type_code = 'B') AND chemresult = '0'))";
  10608. //公差
  10609. swhere1 += "and b.sizeresult not in ('0','2') ";
  10610. //材质
  10611. swhere += " and (physresult not in ('0','2') or ( not exists (select 1 from qcm_ord_design_std_pic t2 where t2.design_key = t1.design_key) AND physresult = '0'))";
  10612. //探伤
  10613. swhere += " and (spyresult not in ('0','2') or ( not exists (select 1 from qcm_ord_design_std_dic t2 where t2.design_key = t1.design_key) AND spyresult = '0'))";
  10614. swhere1 += " and (b.sizeresult not in ('0') or b.surfaceresult not in ('0') or b.r_chemresult not in ('0') or b.chemresult not in ('0') or b.physresult not in ('0'))";
  10615. swhere1 += " and b.sizeresult not in ('2') and b.surfaceresult not in ('2') and b.r_chemresult not in ('2') and b.chemresult not in ('2') and b.physresult not in ('2')";
  10616. if(!SqlJoint.IsNullOrSpace(cert_inst_name) && !cert_inst_name.equals("全部")){
  10617. swhere += "and exists (select 1 from qcm_ord_design_sample_m t2 where t2.design_key = t1.design_key and t2.org_name = '"+cert_inst_name+"')";
  10618. }*/
  10619. String sql = "";
  10620. if(prodline.equals("厚板线")){
  10621. sql = "select * from (select RCL_STATE ht_no,planorderform planorderno,PLANCARDNUMBER plansteel,a.ROLLNUMBER batchno, a.PLANNUMBER plan_no, a.BILLETID material_no, "
  10622. + " ALLOTORDERFORM design_key, '' PSC_DESC,stoveno heat_no, c.level_desc gc_level_desc, d.level_desc bm_level_desc,e.level_desc xbm_level_desc,"
  10623. +" (select max(memo) from qcm_ord_design_memo a where a.design_key = ALLOTORDERFORM) order_remark, "
  10624. + " PLY thick, a.WIDTH, a.LENGTH,THEORYWEIGHT weight, (select name_ from scm_base_info@xgcx where id_ = CUTSIDESTATE) CUTSIDESTATE, "
  10625. + " (select name_ from scm_base_info@xgcx where id_ = ROLE) FIXSIZE, PRODUCETIME, b.sizeid,case when (select count(1) from qcm_ord_design_std_cic x "
  10626. + " where x.design_key = ALLOTORDERFORM and x.std_type_code = 'B') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC,b.SIZERESULT_DESC, b.PHYSRESULT_DESC, "
  10627. + " b.SPYRESULT_DESC,b.SURFACERESULT_DESC,b.R_CHEMRESULT_DESC,b.chemid,b. physid,b.surfaceid,b.up_surface_result_id_desc,b.ud_surface_result_id_desc,b.up_surface_result_desc,b.ud_surface_result_desc,b.spyid,b.r_chemid,B.physresult, B.chemresult,b.spyresult,b.fst_judgeresult_desc, "
  10628. + "(select to_char(create_time,'yyyy-mm-dd hh24:mi:ss') from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  10629. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type, a.determinantcardnumber steel_code, a.determinantcardnumber steel_name , t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, "
  10630. + " t2.PURPOSEID prod_code, C2N@xgcx(t2.PURPOSEID) prod_name,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC from zj_result_all@xgcx b "
  10631. + " left join kch_turnofflist@xgcx a on a.BILLETID = b.BILLETID join sel_pactdetail_new@xgcx t2 on planorderform = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.up_surface_result_id_desc = d.surface_id left join qcm_judge_surface e on e.material_no = b.billetid and b.ud_surface_result_id_desc = e.surface_id where 1=1 and (a.STORAGESTATUS = '501602' or ( A.BILLETID IN (select serialnumber from kch_turnoffsendlist@xgcx where sendtype = '3' and isvalid <> '0' and isvalid <> '2'))) "+swhere1+" "
  10632. +" union all select RCL_STATE ht_no,a.planorderno,PLANCARDNUMBER plansteel,ROLLNUMBER batchno, PLANNO plan_no, a.BILLETID material_no, a.ORDERNO design_key, "
  10633. + " '' PSC_DESC, stoveno heat_no,c.level_desc gc_level_desc, d.level_desc bm_level_desc,e.level_desc xbm_level_desc,(select max(memo) from qcm_ord_design_memo a where a.design_key = a.ORDERNO) order_remark, PLY thick, a.WIDTH, a.LENGTH, "
  10634. + " THEORYWEIGHT weight, c2n@XGCX(CLIPTYPEPROCESS) CUTSIDESTATE, c2n@XGCX(RuLE) FIXSIZE, a.PTIME PRODUCETIME, b.sizeid, case when (select count(1) "
  10635. + " from qcm_ord_design_std_cic x where x.design_key = a.orderno and x.std_type_code = 'B') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC, "
  10636. + " b.SIZERESULT_DESC, b.PHYSRESULT_DESC, b.SPYRESULT_DESC, "
  10637. + " b.SURFACERESULT_DESC, b.R_CHEMRESULT_DESC, b.chemid, b. physid, b.surfaceid, b.up_surface_result_id_desc, b.ud_surface_result_id_desc,b.up_surface_result_desc,b.ud_surface_result_desc,"
  10638. + " b.spyid, b.r_chemid, B.physresult,B.chemresult, b.spyresult, b.fst_judgeresult_desc,(select to_char(create_time,'yyyy-mm-dd hh24:mi:ss') from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  10639. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type, a.determinantcardnumber steel_code, a.determinantcardnumber steel_name, t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, t2.PURPOSEID prod_code, C2N@xgcx(t2.PURPOSEID) prod_name, "
  10640. + " psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC from zj_result_all@xgcx b left join kcj_turnofflist@xgcx a on a.BILLETID = b.BILLETID join sel_pactdetail_new@xgcx t2 on a.planorderno = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.up_surface_result_id_desc = d.surface_id left join qcm_judge_surface e on e.material_no = b.billetid and b.ud_surface_result_id_desc = e.surface_id "
  10641. + " where 1 = 1 and a.STORAGESTATUS = '501602' and b.judgeresult = '0' and a.billetid like 'H%' "+swhere1+" "
  10642. + " union all "
  10643. + " select RCL_STATE ht_no,a.planorderno,PLANCARDNUMBER plansteel,ROLLNUMBER batchno, PLANNO plan_no,a.BILLETID material_no,a.ORDERNO design_key,'' PSC_DESC,stoveno heat_no,c.level_desc gc_level_desc, d.level_desc bm_level_desc,e.level_desc xbm_level_desc,(select max(memo) from qcm_ord_design_memo a where a.design_key = a.ORDERNO) order_remark, "
  10644. + " PLY thick, a.WIDTH, a.LENGTH,THEORYWEIGHT weight,c2n@XGCX(CLIPTYPEPROCESS) CUTSIDESTATE, c2n@XGCX(RuLE) FIXSIZE, case when ROLLNUMBER like 'H%' THEN (SELECT PRODUCETIME FROM KCH_TURNOFFLIST@XGCX WHERE BILLETID = B.BILLETID) WHEN ROLLNUMBER like 'Z%' THEN (SELECT PTIME FROM KCZ_TURNOFFLIST@XGCX WHERE BILLETID = B.BILLETID) "
  10645. + " END PRODUCETIME, b.sizeid, case when (select count(1) from qcm_ord_design_std_cic x where x.design_key = a.orderno and x.std_type_code = 'B') > 0 then "
  10646. + " b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC, b.SIZERESULT_DESC, b.PHYSRESULT_DESC, "
  10647. + " b.SPYRESULT_DESC, b.SURFACERESULT_DESC, b.R_CHEMRESULT_DESC, b.chemid, b. physid, b.surfaceid, b.up_surface_result_id_desc, "
  10648. + " b.ud_surface_result_id_desc, b.up_surface_result_desc,b.ud_surface_result_desc, b.spyid, b.r_chemid, B.physresult, B.chemresult, b.spyresult, b.fst_judgeresult_desc, (select to_char(create_time,'yyyy-mm-dd hh24:mi:ss')from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  10649. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type,a.determinantcardnumber steel_code,a.determinantcardnumber steel_name,t2.USEDSTAND std_code,C2N@xgcx(t2.USEDSTAND) std_name,t2.PURPOSEID prod_code,C2N@xgcx(t2.PURPOSEID) prod_name,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC "
  10650. + " from zj_result_all@xgcx b left join kcj_storagelist@xgcx a on a.BILLETID = b.BILLETID join sel_pactdetail_new@xgcx t2 on a.planorderno = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.up_surface_result_id_desc = d.surface_id left join qcm_judge_surface e on e.material_no = b.billetid and b.ud_surface_result_id_desc = e.surface_id where 1 = 1 and a.STORAGESTATUS = '501002' and b.judgeresult = '0' AND A.BILLETID LIKE 'H%' "+swhere1+") where 1=1 "+swhere+"";
  10651. }else if(prodline.equals("中板线")){
  10652. sql = "select * from (select RCL_STATE ht_no,planorderno,PLANCARDNUMBER plansteel,ROLLNUMBER batchno, PLANNO plan_no, a.BILLETID material_no, A.ORDERNO design_key,'' PSC_DESC, stoveno heat_no, c.level_desc gc_level_desc, d.level_desc bm_level_desc, e.level_desc xbm_level_desc,"
  10653. +" (select max(memo) from qcm_ord_design_memo a where a.design_key = A.ORDERNO) order_remark, "
  10654. + " PLY thick, A.WIDTH, "
  10655. + " A.LENGTH, THEORYWEIGHT weight, (select name_ from scm_base_info@xgcx where id_ = CUTSIDESTATE) CUTSIDESTATE, (select name_ from scm_base_info@xgcx where id_ = RuLE) FIXSIZE, "
  10656. + " PTIME PRODUCETIME, b.sizeid,case when (select count(1) from qcm_ord_design_std_cic x "
  10657. + " where x.design_key = A.orderno and x.std_type_code = 'B') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC,b.SIZERESULT_DESC, b.PHYSRESULT_DESC, "
  10658. + " b.SPYRESULT_DESC,b.SURFACERESULT_DESC,b.R_CHEMRESULT_DESC,b.chemid,b.physid,b.surfaceid,b.up_surface_result_id_desc,b.ud_surface_result_id_desc,b.up_surface_result_desc,b.ud_surface_result_desc,b.spyid,b.r_chemid,B.physresult, B.chemresult,b.spyresult,b.fst_judgeresult_desc,(select to_char(create_time,'yyyy-mm-dd hh24:mi:ss') from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  10659. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type, a.determinantcardnumber steel_code, a.determinantcardnumber steel_name , t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, "
  10660. + " t2.PURPOSEID prod_code, C2N@xgcx(t2.PURPOSEID) prod_name,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC from zj_result_all@xgcx b left join kcz_turnofflist@xgcx a on a.BILLETID = b.BILLETID join sel_pactdetail_new@xgcx t2 on A.planorderno = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.up_surface_result_id_desc = d.surface_id left join qcm_judge_surface e on e.material_no = b.billetid and b.ud_surface_result_id_desc = e.surface_id "
  10661. + " where 1=1 and (a.STORAGESTATUS = '501602' or ( A.BILLETID IN (select serialnumber from kcz_turnoffsendlist@xgcx where sendtype = '3' and isvalid <> '0' and isvalid <> '2'))) "+swhere1+
  10662. " union all select RCL_STATE ht_no,planorderno,PLANCARDNUMBER plansteel,ROLLNUMBER batchno, PLANNO plan_no, a.BILLETID material_no, A.ORDERNO design_key, "
  10663. + " '' PSC_DESC,stoveno heat_no,c.level_desc gc_level_desc, d.level_desc bm_level_desc,e.level_desc xbm_level_desc,(select max(memo) from qcm_ord_design_memo a where a.design_key = A.ORDERNO) order_remark, PLY thick, A.WIDTH, A.LENGTH, "
  10664. + " THEORYWEIGHT weight, c2n@XGCX(CLIPTYPEPROCESS) CUTSIDESTATE, c2n@XGCX(RuLE) FIXSIZE, a.PTIME PRODUCETIME, b.sizeid, case when (select count(1) "
  10665. + " from qcm_ord_design_std_cic x where x.design_key = A.orderno and x.std_type_code = 'B') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC, "
  10666. + " b.SIZERESULT_DESC, b.PHYSRESULT_DESC, b.SPYRESULT_DESC, "
  10667. + " b.SURFACERESULT_DESC, b.R_CHEMRESULT_DESC, b.chemid, b. physid, b.surfaceid, b.up_surface_result_id_desc, b.ud_surface_result_id_desc,b.up_surface_result_desc,b.ud_surface_result_desc,"
  10668. + " b.spyid, b.r_chemid, B.physresult,B.chemresult, b.spyresult, b.fst_judgeresult_desc,(select to_char(create_time,'yyyy-mm-dd hh24:mi:ss') from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  10669. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type, a.determinantcardnumber steel_code, a.determinantcardnumber steel_name, t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, t2.PURPOSEID prod_code, C2N@xgcx(t2.PURPOSEID) prod_name, "
  10670. + " psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC from zj_result_all@xgcx b left join kcj_turnofflist@xgcx a on a.BILLETID = b.BILLETID join sel_pactdetail_new@xgcx t2 on A.planorderno = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.up_surface_result_id_desc = d.surface_id left join qcm_judge_surface e on e.material_no = b.billetid and b.ud_surface_result_id_desc = e.surface_id "
  10671. + " where 1 = 1 and a.STORAGESTATUS = '501602' and b.judgeresult = '0' and a.billetid like 'Z%' "+swhere1+
  10672. " union all "
  10673. + " select RCL_STATE ht_no,planorderno,PLANCARDNUMBER plansteel,ROLLNUMBER batchno, PLANNO plan_no,a.BILLETID material_no,A.ORDERNO design_key,'' PSC_DESC,stoveno heat_no,c.level_desc gc_level_desc, d.level_desc bm_level_desc,e.level_desc xbm_level_desc,(select max(memo) from qcm_ord_design_memo a where a.design_key = A.ORDERNO) order_remark, "
  10674. + " PLY thick, A.WIDTH, A.LENGTH,THEORYWEIGHT weight,c2n@XGCX(CLIPTYPEPROCESS) CUTSIDESTATE, c2n@XGCX(RuLE) FIXSIZE, case when ROLLNUMBER like 'H%' THEN (SELECT PRODUCETIME FROM KCH_TURNOFFLIST@XGCX WHERE BILLETID = B.BILLETID) WHEN ROLLNUMBER like 'Z%' THEN (SELECT PTIME FROM KCZ_TURNOFFLIST@XGCX WHERE BILLETID = B.BILLETID) "
  10675. + " END PRODUCETIME, b.sizeid, case when (select count(1) from qcm_ord_design_std_cic x where x.design_key = A.orderno and x.std_type_code = 'B') > 0 then "
  10676. + " b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC, b.SIZERESULT_DESC, b.PHYSRESULT_DESC, "
  10677. + " b.SPYRESULT_DESC, b.SURFACERESULT_DESC, b.R_CHEMRESULT_DESC, b.chemid, b. physid, b.surfaceid, b.up_surface_result_id_desc, "
  10678. + " b.ud_surface_result_id_desc,b.up_surface_result_desc,b.ud_surface_result_desc, b.spyid, b.r_chemid, B.physresult, B.chemresult, b.spyresult, b.fst_judgeresult_desc,(select to_char(create_time,'yyyy-mm-dd hh24:mi:ss') from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  10679. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type,a.determinantcardnumber steel_code,a.determinantcardnumber steel_name,t2.USEDSTAND std_code,C2N@xgcx(t2.USEDSTAND) std_name,t2.PURPOSEID prod_code,C2N@xgcx(t2.PURPOSEID) prod_name,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC "
  10680. + " from zj_result_all@xgcx b left join kcj_storagelist@xgcx a on a.BILLETID = b.BILLETID join sel_pactdetail_new@xgcx t2 "
  10681. + " on A.planorderno = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.up_surface_result_id_desc = d.surface_id left join qcm_judge_surface e on e.material_no = b.billetid and b.ud_surface_result_id_desc = e.surface_id where 1 = 1 and a.STORAGESTATUS = '501002' and b.judgeresult = '0' AND A.BILLETID LIKE 'Z%' "+swhere1+") T1 where 1 = 1 "+swhere+"";
  10682. }else{
  10683. sql = "select t1.* from (select RCL_STATE ht_no,planorderform planorderno,PLANCARDNUMBER plansteel,a.ROLLNUMBER batchno, a.PLANNUMBER plan_no, a.BILLETID material_no, "
  10684. + " ALLOTORDERFORM design_key, '' PSC_DESC,stoveno heat_no,c.level_desc gc_level_desc, d.level_desc bm_level_desc,e.level_desc xbm_level_desc, "
  10685. +" (select max(memo) from qcm_ord_design_memo a where a.design_key = ALLOTORDERFORM) order_remark, "
  10686. + " PLY thick, a.WIDTH, a.LENGTH,THEORYWEIGHT weight, (select name_ from scm_base_info@xgcx where id_ = CUTSIDESTATE) CUTSIDESTATE, "
  10687. + " (select name_ from scm_base_info@xgcx where id_ = ROLE) FIXSIZE, PRODUCETIME, b.sizeid,case when (select count(1) from qcm_ord_design_std_cic x "
  10688. + " where x.design_key = ALLOTORDERFORM and x.std_type_code = 'B') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC,b.SIZERESULT_DESC, b.PHYSRESULT_DESC, "
  10689. + " b.SPYRESULT_DESC,b.SURFACERESULT_DESC,b.R_CHEMRESULT_DESC,b.chemid,b. physid,b.surfaceid,b.up_surface_result_id_desc,b.ud_surface_result_id_desc,b.up_surface_result_desc,b.ud_surface_result_desc,b.spyid,b.r_chemid,B.physresult, B.chemresult,b.spyresult,b.fst_judgeresult_desc,(select to_char(create_time,'yyyy-mm-dd hh24:mi:ss') from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  10690. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type, a.determinantcardnumber steel_code, a.determinantcardnumber steel_name , t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, "
  10691. + " t2.PURPOSEID prod_code, C2N@xgcx(t2.PURPOSEID) prod_name,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC from zj_result_all@xgcx b "
  10692. + " left join kch_turnofflist@xgcx a on a.BILLETID = b.BILLETID join sel_pactdetail_new@xgcx t2 on a.planorderform = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.up_surface_result_id_desc = d.surface_id left join qcm_judge_surface e on e.material_no = b.billetid and b.ud_surface_result_id_desc = e.surface_id where 1=1 AND (a.STORAGESTATUS = '501602' or ( A.BILLETID IN ( select serialnumber from kch_turnoffsendlist@xgcx where sendtype = '3' and isvalid <> '0' and isvalid <> '2'))) "+swhere1
  10693. + " union all "
  10694. + "select RCL_STATE ht_no,planorderno,PLANCARDNUMBER plansteel,ROLLNUMBER batchno, PLANNO plan_no, a.BILLETID material_no, a.ORDERNO design_key,'' PSC_DESC,stoveno heat_no, c.level_desc gc_level_desc, d.level_desc bm_level_desc,e.level_desc xbm_level_desc, "
  10695. +" (select max(memo) from qcm_ord_design_memo a where a.design_key = a.ORDERNO) order_remark, "
  10696. + " PLY thick, a.WIDTH, "
  10697. + " a.LENGTH, THEORYWEIGHT weight, (select name_ from scm_base_info@xgcx where id_ = CUTSIDESTATE) CUTSIDESTATE, (select name_ from scm_base_info@xgcx where id_ = RuLE) FIXSIZE, "
  10698. + " PTIME PRODUCETIME, b.sizeid,case when (select count(1) from qcm_ord_design_std_cic x "
  10699. + " where x.design_key = a.orderno and x.std_type_code = 'B') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC,b.SIZERESULT_DESC,b.PHYSRESULT_DESC, "
  10700. + " b.SPYRESULT_DESC,b.SURFACERESULT_DESC,b.R_CHEMRESULT_DESC,b.chemid,b. physid,b.surfaceid,b.up_surface_result_id_desc,b.ud_surface_result_id_desc,b.up_surface_result_desc,b.ud_surface_result_desc,b.spyid,b.r_chemid,B.physresult, B.chemresult,b.spyresult,b.fst_judgeresult_desc,(select to_char(create_time,'yyyy-mm-dd hh24:mi:ss') from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  10701. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type, a.determinantcardnumber steel_code, a.determinantcardnumber steel_name , t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, "
  10702. + " t2.PURPOSEID prod_code, C2N@xgcx(t2.PURPOSEID) prod_name,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC from zj_result_all@xgcx b left join kcz_turnofflist@xgcx a on a.BILLETID = b.BILLETID join sel_pactdetail_new@xgcx t2 on a.planorderno = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.up_surface_result_id_desc = d.surface_id left join qcm_judge_surface e on e.material_no = b.billetid and b.ud_surface_result_id_desc = e.surface_id "
  10703. + " where 1=1 and (a.STORAGESTATUS = '501602' or ( A.BILLETID IN (select serialnumber from kcz_turnoffsendlist@xgcx where sendtype = '3' and isvalid <> '0' and isvalid <> '2'))) "+swhere1
  10704. +" union all select RCL_STATE ht_no,planorderno,PLANCARDNUMBER plansteel,ROLLNUMBER batchno, PLANNO plan_no, a.BILLETID material_no, a.ORDERNO design_key, "
  10705. + " '' PSC_DESC, stoveno heat_no,c.level_desc gc_level_desc, d.level_desc bm_level_desc,e.level_desc xbm_level_desc,(select max(memo) from qcm_ord_design_memo a where a.design_key = a.ORDERNO) order_remark, PLY thick, a.WIDTH, a.LENGTH, "
  10706. + " THEORYWEIGHT weight, c2n@XGCX(CLIPTYPEPROCESS) CUTSIDESTATE, c2n@XGCX(RuLE) FIXSIZE, a.PTIME PRODUCETIME, b.sizeid, case when (select count(1) "
  10707. + " from qcm_ord_design_std_cic x where x.design_key = a.orderno and x.std_type_code = 'B') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC, "
  10708. + " b.SIZERESULT_DESC, b.PHYSRESULT_DESC, b.SPYRESULT_DESC, "
  10709. + " b.SURFACERESULT_DESC, b.R_CHEMRESULT_DESC, b.chemid, b. physid, b.surfaceid, b.up_surface_result_id_desc, b.ud_surface_result_id_desc,b.up_surface_result_desc,b.ud_surface_result_desc,"
  10710. + " b.spyid, b.r_chemid, B.physresult,B.chemresult, b.spyresult, b.fst_judgeresult_desc,(select to_char(create_time,'yyyy-mm-dd hh24:mi:ss') from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  10711. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type, a.determinantcardnumber steel_code, a.determinantcardnumber steel_name, t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, t2.PURPOSEID prod_code, C2N@xgcx(t2.PURPOSEID) prod_name, "
  10712. + " psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC from zj_result_all@xgcx b left join kcj_turnofflist@xgcx a on a.BILLETID = b.BILLETID join sel_pactdetail_new@xgcx t2 on a.planorderno = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.up_surface_result_id_desc = d.surface_id left join qcm_judge_surface e on e.material_no = b.billetid and b.ud_surface_result_id_desc = e.surface_id "
  10713. + " where 1 = 1 and a.STORAGESTATUS = '501602' and b.judgeresult = '0' and (a.billetid like 'Z%' or a.billetid like 'H%' ) "+swhere1
  10714. + " union all "
  10715. + " select RCL_STATE ht_no,planorderno,PLANCARDNUMBER plansteel,ROLLNUMBER batchno, PLANNO plan_no,a.BILLETID material_no,a.ORDERNO design_key,'' PSC_DESC, stoveno heat_no,c.level_desc gc_level_desc, d.level_desc bm_level_desc,e.level_desc xbm_level_desc,(select max(memo) from qcm_ord_design_memo a where a.design_key = a.ORDERNO) order_remark, "
  10716. + " PLY thick, a.WIDTH, a.LENGTH,THEORYWEIGHT weight,c2n@XGCX(CLIPTYPEPROCESS) CUTSIDESTATE, c2n@XGCX(RuLE) FIXSIZE, case when ROLLNUMBER like 'H%' THEN (SELECT PRODUCETIME FROM KCH_TURNOFFLIST@XGCX WHERE BILLETID = B.BILLETID) WHEN ROLLNUMBER like 'Z%' THEN (SELECT PTIME FROM KCZ_TURNOFFLIST@XGCX WHERE BILLETID = B.BILLETID) "
  10717. + " END PRODUCETIME, b.sizeid, case when (select count(1) from qcm_ord_design_std_cic x where x.design_key = a.orderno and x.std_type_code = 'B') > 0 then "
  10718. + " b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC, b.SIZERESULT_DESC, b.PHYSRESULT_DESC, "
  10719. + " b.SPYRESULT_DESC, b.SURFACERESULT_DESC, b.R_CHEMRESULT_DESC, b.chemid, b. physid, b.surfaceid, b.up_surface_result_id_desc,b.ud_surface_result_id_desc,b.up_surface_result_desc,b.ud_surface_result_desc, "
  10720. + " b.spyid, b.r_chemid, B.physresult, B.chemresult, b.spyresult, b.fst_judgeresult_desc,(select to_char(create_time,'yyyy-mm-dd hh24:mi:ss') from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  10721. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type,a.determinantcardnumber steel_code,a.determinantcardnumber steel_name,t2.USEDSTAND std_code,C2N@xgcx(t2.USEDSTAND) std_name,t2.PURPOSEID prod_code,C2N@xgcx(t2.PURPOSEID) prod_name,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC "
  10722. + " from zj_result_all@xgcx b left join kcj_storagelist@xgcx a on a.BILLETID = b.BILLETID join sel_pactdetail_new@xgcx t2 "
  10723. + " on a.planorderno = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.up_surface_result_id_desc = d.surface_id left join qcm_judge_surface e on e.material_no = b.billetid and b.ud_surface_result_id_desc = e.surface_id where 1 = 1 and a.STORAGESTATUS = '501002' and b.judgeresult = '0' and (a.billetid like 'Z%' or a.billetid like 'H%') "+swhere1+") T1 where 1 = 1 "+swhere+"";
  10724. }
  10725. try {
  10726. System.out.print(sql);
  10727. List<HashMap> list = mapper.query(sql);
  10728. cro.setResult(list);
  10729. } catch (Exception ex) {
  10730. ex.printStackTrace();
  10731. cro.setV_errCode(-1);
  10732. cro.setV_errMsg("查询失败!" + ex.getMessage());
  10733. }
  10734. SqlSession.close();
  10735. return cro;
  10736. }
  10737. public CoreReturnObject GetUnjudgeInfoB(String begintime,String endtime,String bbatchno,String ebatchno,String design_key,String Psc_desc,String prodline,String cert_inst_name,String heat_no,String time_type){
  10738. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime) && SqlJoint.IsNullOrSpace(bbatchno)) {
  10739. String sky=StrSky(begintime,endtime);
  10740. if(!sky.equals("TRUE")){
  10741. SqlSession.close();
  10742. cro.setV_errCode(-1);
  10743. cro.setV_errMsg(sky);
  10744. return cro;
  10745. }
  10746. }
  10747. String swhere = "";
  10748. String swhere1 = "";
  10749. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime) && SqlJoint.IsNullOrSpace(bbatchno) && SqlJoint.IsNullOrSpace(ebatchno) && time_type.equals("0")) { //生产时间
  10750. swhere += " and to_date(to_char(PRODUCETIME,'yyyy-mm-dd'),'yyyy-mm-dd') between to_date('"+begintime+"','yyyy-mm-dd') and to_date('"+endtime+"','yyyy-mm-dd')";
  10751. }
  10752. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime) && SqlJoint.IsNullOrSpace(bbatchno) && SqlJoint.IsNullOrSpace(ebatchno) && time_type.equals("1")) { //生产时间
  10753. swhere1 += " and b.physid in (select pic_id from qcm_judge_physical_utm_m where to_date(to_char(create_time,'yyyy-mm-dd'),'yyyy-mm-dd') between to_date('"+begintime+"','yyyy-mm-dd') and to_date('"+endtime+"','yyyy-mm-dd'))";
  10754. }
  10755. if (!SqlJoint.IsNullOrSpace(bbatchno)) { //起始轧批号
  10756. swhere += "and batchno >= '"+bbatchno+"'";
  10757. }
  10758. if (!SqlJoint.IsNullOrSpace(ebatchno)) { //最后轧批号
  10759. swhere += "and batchno <= '"+ebatchno+"'";
  10760. }
  10761. if (!SqlJoint.IsNullOrSpace(design_key)) { //销售订单号
  10762. swhere += " and design_key like '"+design_key+"%'";
  10763. }
  10764. if (!SqlJoint.IsNullOrSpace(Psc_desc)) { //Psc_desc
  10765. swhere += " and psc_desc like '%"+Psc_desc+"%'";
  10766. }
  10767. if(!SqlJoint.IsNullOrSpace(heat_no)){
  10768. swhere1 += " and stoveno like '%"+heat_no+"%'";
  10769. }
  10770. swhere1 += " and b.judgeresult = '0'";
  10771. swhere += " and design_key not like '19%'";
  10772. /*//表面
  10773. swhere1 += " and b.surfaceresult not in ('0','2')";
  10774. //熔炼
  10775. swhere1 += " and b.r_chemresult not in ('0','2') ";
  10776. //成品成分
  10777. swhere += " and (chemresult not in ('0','2') or ( not exists (select 1 from qcm_ord_design_std_cic t2 where t2.design_key = t1.design_key and t2.std_type_code = 'B') AND chemresult = '0'))";
  10778. //公差
  10779. swhere1 += "and b.sizeresult not in ('0','2') ";
  10780. //材质
  10781. swhere += " and (physresult not in ('0','2') or ( not exists (select 1 from qcm_ord_design_std_pic t2 where t2.design_key = t1.design_key) AND physresult = '0'))";
  10782. //探伤
  10783. swhere += " and (spyresult not in ('0','2') or ( not exists (select 1 from qcm_ord_design_std_dic t2 where t2.design_key = t1.design_key) AND spyresult = '0'))";
  10784. swhere1 += " and (b.sizeresult not in ('0') or b.surfaceresult not in ('0') or b.r_chemresult not in ('0') or b.chemresult not in ('0') or b.physresult not in ('0'))";
  10785. swhere1 += " and b.sizeresult not in ('2') and b.surfaceresult not in ('2') and b.r_chemresult not in ('2') and b.chemresult not in ('2') and b.physresult not in ('2')";
  10786. if(!SqlJoint.IsNullOrSpace(cert_inst_name) && !cert_inst_name.equals("全部")){
  10787. swhere += "and exists (select 1 from qcm_ord_design_sample_m t2 where t2.design_key = t1.design_key and t2.org_name = '"+cert_inst_name+"')";
  10788. }*/
  10789. if(!SqlJoint.IsNullOrSpace(cert_inst_name) && !cert_inst_name.equals("全部")){
  10790. swhere += "and exists (select 1 from qcm_ord_design_sample_m t2 where t2.design_key = t1.design_key and t2.org_name = '"+cert_inst_name+"')";
  10791. }
  10792. String sql = "";
  10793. if(prodline.equals("厚板线")){
  10794. sql = "select * from (select RCL_STATE ht_no,(SELECT max(x.process_nos) ht_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) ht_no1,(SELECT max(x.material_no) ht_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) material_no1,planorderform planorderno,PLANCARDNUMBER plansteel,a.ROLLNUMBER batchno, a.PLANNUMBER plan_no, a.BILLETID material_no,(select t.ORDERMEMO from zyhb_plandetailofplate@xgcx t where t.slabno = a.BILLETID) sc_memo, "
  10795. + " ALLOTORDERFORM design_key, '' PSC_DESC,stoveno heat_no, c.level_desc gc_level_desc, d.level_desc bm_level_desc,(SELECT max(x.thick) ht_no FROM qcm_jhy_sample_r_ord x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) thick1,(SELECT max(x.steel_name) ht_no FROM qcm_jhy_sample_r_ord x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) steel_name1,"
  10796. +" (select max(memo) from qcm_ord_design_memo a where a.design_key = ALLOTORDERFORM) order_remark, "
  10797. + " PLY thick, a.WIDTH, a.LENGTH,THEORYWEIGHT weight, (select name_ from scm_base_info@xgcx where id_ = CUTSIDESTATE) CUTSIDESTATE, "
  10798. + " (select name_ from scm_base_info@xgcx where id_ = ROLE) FIXSIZE, PRODUCETIME, b.sizeid,case when (select count(1) from qcm_ord_design_std_cic x "
  10799. + " where x.design_key = ALLOTORDERFORM and x.std_type_code = 'C') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC,b.SIZERESULT_DESC,case when (select count(1) from qcm_ord_design_std_pic x where x.design_key = ALLOTORDERFORM) > 0 then b.PHYSRESULT_DESC else '合格' end PHYSRESULT_DESC,case when (select count(1) "
  10800. + " from qcm_ord_design_std_dic x where x.design_key = ALLOTORDERFORM) > 0 then b.SPYRESULT_DESC else '否' end SPYRESULT_DESC,b.SURFACERESULT_DESC,b.R_CHEMRESULT_DESC,b.chemid,b. physid,b.surfaceid,b.up_surface_result_id_desc,b.ud_surface_result_id_desc,b.up_surface_result_desc,b.ud_surface_result_desc,b.spyid,b.r_chemid,B.physresult, B.chemresult,b.spyresult,b.fst_judgeresult_desc, "
  10801. + "(select to_char(create_time,'yyyy-mm-dd hh24:mi:ss') from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  10802. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type, t2.STEELCODE steel_code, C2N@xgcx(t2.STEELCODE)steel_name , t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, "
  10803. + " t2.PURPOSEID prod_code,t2.psrno psc, C2N@xgcx(t2.PURPOSEID) prod_name,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC,"
  10804. + " case when (select count(1) from qcm_ord_design_std_pic x where x.design_key = ALLOTORDERFORM and specl_fl = '1') > 0 then '是' else '否' end is_special,"
  10805. + " (select MAX(C.UNLOCK_NAME) "
  10806. + " from qcm_judge_locking c "
  10807. + " where c.material_no like a.stoveno || '%'"
  10808. + " and c.unlock_type_code = '0' "
  10809. + " and c.lock_type_code = 'C' "
  10810. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MAN, "
  10811. + " (select TO_CHAR(MAX(C.UNLOCK_TIME), 'yyyy-mm-dd hh24:mi:ss') "
  10812. + " from qcm_judge_locking c "
  10813. + " where c.material_no like a.stoveno || '%' "
  10814. + " and c.unlock_type_code = '0' "
  10815. + " and c.lock_type_code = 'C' "
  10816. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_TIME, "
  10817. + " (select MAX(C.UNLOCK_MEMO) "
  10818. + " from qcm_judge_locking c "
  10819. + " where c.material_no like a.stoveno || '%' "
  10820. + " and c.unlock_type_code = '0' "
  10821. + " and c.lock_type_code = 'C' "
  10822. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MEMO,"
  10823. + "(select dbms_lob.substr(wmsys.wm_concat(DISTINCT C.UNLOCK_MEMO)) "
  10824. + " from qcm_judge_locking c "
  10825. + " where c.material_no = B.BILLETID "
  10826. + " and c.unlock_type_code = '0' "
  10827. + " and c.lock_type_code IN ('C','P') "
  10828. + " and c.pline_code in ('ZB1', 'HB1')) FX_MEMO1,(select case when dbms_lob.substr(wmsys.wm_concat(DISTINCT A.SMP_RATE_DESC)) is null then '无取样要求' else dbms_lob.substr(wmsys.wm_concat(DISTINCT A.SMP_RATE_DESC)) end SMP_RATE_DESC from qcm_ord_design_std_pic_smp a where a.design_key = ALLOTORDERFORM) SMP_RATE_DESC from zj_result_all@xgcx b "
  10829. + " left join kch_turnofflist@xgcx a on a.BILLETID = b.BILLETID join sel_pactdetail_new@xgcx t2 on ALLOTORDERFORM = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.surfaceid = d.surface_id where 1=1 and (a.STORAGESTATUS = '501602' or ( A.BILLETID IN (SELECT serialnumber FROM KCH_TURNOFFSENDLIST@xgcx WHERE SENDTYPE='3' AND ISVALID <> '0' AND DETERMINANTRESULT = '40140102' and ORDERFORMNUMBER in (select orderno from sel_pactdetail_new@xgcx) AND A.BILLETID NOT IN (SELECT BILLETID FROM kcj_storagelist@xgcx WHERE STORAGESTATUS = '501002') AND A.BILLETID NOT IN (SELECT BILLETID FROM kcJ_turnofflist@xgcx WHERE STORAGESTATUS = '501602')))) "+swhere1+" "
  10830. +" union all select RCL_STATE ht_no,(SELECT max(x.process_nos) ht_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) ht_no1,(SELECT max(x.material_no) ht_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) material_no1,a.planorderno,PLANCARDNUMBER plansteel,ROLLNUMBER batchno, PLANNO plan_no, a.BILLETID material_no,(select t.ORDERMEMO from zyhb_plandetailofplate@xgcx t where t.slabno = a.BILLETID) sc_memo, a.ORDERNO design_key, "
  10831. + " '' PSC_DESC, stoveno heat_no,c.level_desc gc_level_desc, d.level_desc bm_level_desc,(SELECT max(x.thick) ht_no FROM qcm_jhy_sample_r_ord x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) thick1,(SELECT max(x.steel_name) ht_no FROM qcm_jhy_sample_r_ord x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) steel_name1,(select max(memo) from qcm_ord_design_memo a where a.design_key = a.ORDERNO) order_remark, PLY thick, a.WIDTH, a.LENGTH, "
  10832. + " THEORYWEIGHT weight, c2n@XGCX(CLIPTYPEPROCESS) CUTSIDESTATE, c2n@XGCX(RuLE) FIXSIZE, CASE WHEN A.BILLETID LIKE 'H%' THEN (SELECT MAX(Z.PRODUCETIME) FROM KCh_TURNOFFLIST@XGCX Z WHERE Z.BILLETID = A.BILLETID) ELSE (SELECT MAX(Z.PTIME) FROM KCz_TURNOFFLIST@XGCX Z WHERE Z.BILLETID = A.BILLETID) end PRODUCETIME, b.sizeid, case when (select count(1) "
  10833. + " from qcm_ord_design_std_cic x where x.design_key = a.orderno and x.std_type_code = 'C') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC, "
  10834. + " b.SIZERESULT_DESC, case when (select count(1) from qcm_ord_design_std_pic x where x.design_key = a.orderno) > 0 then b.PHYSRESULT_DESC else '合格' end PHYSRESULT_DESC, case when (select count(1) from qcm_ord_design_std_dic x where x.design_key = a.orderno) > 0 then b.SPYRESULT_DESC "
  10835. + " else '否' end SPYRESULT_DESC, b.SURFACERESULT_DESC, b.R_CHEMRESULT_DESC, b.chemid, b. physid, b.surfaceid, b.up_surface_result_id_desc, b.ud_surface_result_id_desc,b.up_surface_result_desc,b.ud_surface_result_desc,"
  10836. + " b.spyid, b.r_chemid, B.physresult,B.chemresult, b.spyresult, b.fst_judgeresult_desc,(select to_char(create_time,'yyyy-mm-dd hh24:mi:ss') from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  10837. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type, t2.STEELCODE steel_code, C2N@xgcx(t2.STEELCODE) steel_name, t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, t2.PURPOSEID prod_code,t2.psrno psc, C2N@xgcx(t2.PURPOSEID) prod_name, "
  10838. + " psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC,"
  10839. + " case when (select count(1) from qcm_ord_design_std_pic x where x.design_key = a.orderno and specl_fl = '1') > 0 then '是' else '否' end is_special,"
  10840. + " (select MAX(C.UNLOCK_NAME) "
  10841. + " from qcm_judge_locking c "
  10842. + " where c.material_no like a.stoveno || '%'"
  10843. + " and c.unlock_type_code = '0' "
  10844. + " and c.lock_type_code = 'C' "
  10845. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MAN, "
  10846. + " (select TO_CHAR(MAX(C.UNLOCK_TIME), 'yyyy-mm-dd hh24:mi:ss') "
  10847. + " from qcm_judge_locking c "
  10848. + " where c.material_no like a.stoveno || '%' "
  10849. + " and c.unlock_type_code = '0' "
  10850. + " and c.lock_type_code = 'C' "
  10851. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_TIME, "
  10852. + " (select MAX(C.UNLOCK_MEMO) "
  10853. + " from qcm_judge_locking c "
  10854. + " where c.material_no like a.stoveno || '%' "
  10855. + " and c.unlock_type_code = '0' "
  10856. + " and c.lock_type_code = 'C' "
  10857. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MEMO,"
  10858. + "(select dbms_lob.substr(wmsys.wm_concat(DISTINCT C.UNLOCK_MEMO)) "
  10859. + " from qcm_judge_locking c "
  10860. + " where c.material_no = B.BILLETID "
  10861. + " and c.unlock_type_code = '0' "
  10862. + " and c.lock_type_code IN ('C','P') "
  10863. + " and c.pline_code in ('ZB1', 'HB1')) FX_MEMO1,(select case when dbms_lob.substr(wmsys.wm_concat(DISTINCT t.SMP_RATE_DESC)) is null then '无取样要求' else dbms_lob.substr(wmsys.wm_concat(DISTINCT t.SMP_RATE_DESC)) end SMP_RATE_DESC from qcm_ord_design_std_pic_smp t where t.design_key = a.ORDERNO) SMP_RATE_DESC from zj_result_all@xgcx b left join kcj_turnofflist@xgcx a on a.BILLETID = b.BILLETID join sel_pactdetail_new@xgcx t2 on a.ORDERNO = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.surfaceid = d.surface_id "
  10864. + " where 1 = 1 and a.STORAGESTATUS = '501602' and b.judgeresult = '0' and a.billetid like 'H%' "+swhere1+" "
  10865. + " union all "
  10866. + " select RCL_STATE ht_no,(SELECT max(x.process_nos) ht_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) ht_no1,(SELECT max(x.material_no) ht_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) material_no1,a.planorderno,PLANCARDNUMBER plansteel,ROLLNUMBER batchno, PLANNO plan_no,a.BILLETID material_no,(select t.ORDERMEMO from zyhb_plandetailofplate@xgcx t where t.slabno = a.BILLETID) sc_memo,a.ORDERNO design_key,'' PSC_DESC,stoveno heat_no,c.level_desc gc_level_desc, d.level_desc bm_level_desc,(SELECT max(x.thick) ht_no FROM qcm_jhy_sample_r_ord x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) thick1,(SELECT max(x.steel_name) ht_no FROM qcm_jhy_sample_r_ord x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) steel_name1,(select max(memo) from qcm_ord_design_memo a where a.design_key = a.ORDERNO) order_remark, "
  10867. + " PLY thick, a.WIDTH, a.LENGTH,THEORYWEIGHT weight,c2n@XGCX(CLIPTYPEPROCESS) CUTSIDESTATE, c2n@XGCX(RuLE) FIXSIZE, case when ROLLNUMBER like 'H%' THEN (SELECT PRODUCETIME FROM KCH_TURNOFFLIST@XGCX WHERE BILLETID = B.BILLETID) WHEN ROLLNUMBER like 'Z%' THEN (SELECT PTIME FROM KCZ_TURNOFFLIST@XGCX WHERE BILLETID = B.BILLETID) "
  10868. + " END PRODUCETIME, b.sizeid, case when (select count(1) from qcm_ord_design_std_cic x where x.design_key = a.orderno and x.std_type_code = 'C') > 0 then "
  10869. + " b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC, b.SIZERESULT_DESC, case when (select count(1) from qcm_ord_design_std_pic x where x.design_key = a.orderno) > 0 then b.PHYSRESULT_DESC else '合格' end PHYSRESULT_DESC, case when (select count(1) from qcm_ord_design_std_dic x where x.design_key = a.orderno) > 0 then "
  10870. + " b.SPYRESULT_DESC else '否' end SPYRESULT_DESC, b.SURFACERESULT_DESC, b.R_CHEMRESULT_DESC, b.chemid, b. physid, b.surfaceid, b.up_surface_result_id_desc, "
  10871. + " b.ud_surface_result_id_desc, b.up_surface_result_desc,b.ud_surface_result_desc, b.spyid, b.r_chemid, B.physresult, B.chemresult, b.spyresult, b.fst_judgeresult_desc, (select to_char(create_time,'yyyy-mm-dd hh24:mi:ss')from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  10872. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type,t2.STEELCODE steel_code,C2N@xgcx(t2.STEELCODE) steel_name,t2.USEDSTAND std_code,C2N@xgcx(t2.USEDSTAND) std_name,t2.PURPOSEID prod_code,t2.psrno psc,C2N@xgcx(t2.PURPOSEID) prod_name,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC,"
  10873. + " case when (select count(1) from qcm_ord_design_std_pic x where x.design_key = a.orderno and specl_fl = '1') > 0 then '是' else '否' end is_special,"
  10874. + " (select MAX(C.UNLOCK_NAME) "
  10875. + " from qcm_judge_locking c "
  10876. + " where c.material_no like a.stoveno || '%'"
  10877. + " and c.unlock_type_code = '0' "
  10878. + " and c.lock_type_code = 'C' "
  10879. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MAN, "
  10880. + " (select TO_CHAR(MAX(C.UNLOCK_TIME), 'yyyy-mm-dd hh24:mi:ss') "
  10881. + " from qcm_judge_locking c "
  10882. + " where c.material_no like a.stoveno || '%' "
  10883. + " and c.unlock_type_code = '0' "
  10884. + " and c.lock_type_code = 'C' "
  10885. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_TIME, "
  10886. + " (select MAX(C.UNLOCK_MEMO) "
  10887. + " from qcm_judge_locking c "
  10888. + " where c.material_no like a.stoveno || '%' "
  10889. + " and c.unlock_type_code = '0' "
  10890. + " and c.lock_type_code = 'C' "
  10891. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MEMO,"
  10892. + "(select dbms_lob.substr(wmsys.wm_concat(DISTINCT C.UNLOCK_MEMO)) "
  10893. + " from qcm_judge_locking c "
  10894. + " where c.material_no = B.BILLETID "
  10895. + " and c.unlock_type_code = '0' "
  10896. + " and c.lock_type_code IN ('C','P') "
  10897. + " and c.pline_code in ('ZB1', 'HB1')) FX_MEMO1,(select case when dbms_lob.substr(wmsys.wm_concat(DISTINCT t.SMP_RATE_DESC)) is null then '无取样要求' else dbms_lob.substr(wmsys.wm_concat(DISTINCT t.SMP_RATE_DESC)) end SMP_RATE_DESC from qcm_ord_design_std_pic_smp t where t.design_key = a.ORDERNO) SMP_RATE_DESC "
  10898. + " from zj_result_all@xgcx b left join kcj_storagelist@xgcx a on a.BILLETID = b.BILLETID join sel_pactdetail_new@xgcx t2 on a.ORDERNO = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.surfaceid = d.surface_id where 1 = 1 and a.STORAGESTATUS = '501002' and b.judgeresult = '0' AND A.BILLETID LIKE 'H%' "+swhere1+") where 1=1 "+swhere+"";
  10899. }else if(prodline.equals("中板线")){
  10900. sql = "select * from (select RCL_STATE ht_no,(SELECT max(x.process_nos) ht_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) ht_no1,(SELECT max(x.material_no) ht_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) material_no1,planorderno,PLANCARDNUMBER plansteel,ROLLNUMBER batchno, PLANNO plan_no, a.BILLETID material_no,(select t.memo from mb_plandetailofplate@xgcx t where t.productno = a.BILLETID) sc_memo, A.ORDERNO design_key,'' PSC_DESC, stoveno heat_no, c.level_desc gc_level_desc, d.level_desc bm_level_desc,(SELECT max(x.thick) ht_no FROM qcm_jhy_sample_r_ord x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) thick1,(SELECT max(x.steel_name) ht_no FROM qcm_jhy_sample_r_ord x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) steel_name1,"
  10901. +" (select max(memo) from qcm_ord_design_memo a where a.design_key = A.ORDERNO) order_remark, "
  10902. + " PLY thick, A.WIDTH, "
  10903. + " A.LENGTH, THEORYWEIGHT weight, (select name_ from scm_base_info@xgcx where id_ = CUTSIDESTATE) CUTSIDESTATE, (select name_ from scm_base_info@xgcx where id_ = RuLE) FIXSIZE, "
  10904. + " PTIME PRODUCETIME, b.sizeid,case when (select count(1) from qcm_ord_design_std_cic x "
  10905. + " where x.design_key = A.orderno and x.std_type_code = 'C') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC,b.SIZERESULT_DESC,case when (select count(1) from qcm_ord_design_std_pic x where x.design_key = A.orderno) > 0 then b.PHYSRESULT_DESC else '合格' end PHYSRESULT_DESC,case when (select count(1) "
  10906. + " from qcm_ord_design_std_dic x where x.design_key = A.orderno) > 0 then b.SPYRESULT_DESC else '否' end SPYRESULT_DESC,b.SURFACERESULT_DESC,b.R_CHEMRESULT_DESC,b.chemid,b.physid,b.surfaceid,b.up_surface_result_id_desc,b.ud_surface_result_id_desc,b.up_surface_result_desc,b.ud_surface_result_desc,b.spyid,b.r_chemid,B.physresult, B.chemresult,b.spyresult,b.fst_judgeresult_desc,(select to_char(create_time,'yyyy-mm-dd hh24:mi:ss') from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  10907. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type, t2.STEELCODE steel_code, C2N@xgcx(t2.STEELCODE)steel_name , t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, "
  10908. + " t2.PURPOSEID prod_code,t2.psrno psc, C2N@xgcx(t2.PURPOSEID) prod_name,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC,"
  10909. + " case when (select count(1) from qcm_ord_design_std_pic x where x.design_key = a.orderno and specl_fl = '1') > 0 then '是' else '否' end is_special,"
  10910. + " (select MAX(C.UNLOCK_NAME) "
  10911. + " from qcm_judge_locking c "
  10912. + " where c.material_no like a.stoveno || '%'"
  10913. + " and c.unlock_type_code = '0' "
  10914. + " and c.lock_type_code = 'C' "
  10915. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MAN, "
  10916. + " (select TO_CHAR(MAX(C.UNLOCK_TIME), 'yyyy-mm-dd hh24:mi:ss') "
  10917. + " from qcm_judge_locking c "
  10918. + " where c.material_no like a.stoveno || '%' "
  10919. + " and c.unlock_type_code = '0' "
  10920. + " and c.lock_type_code = 'C' "
  10921. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_TIME, "
  10922. + " (select MAX(C.UNLOCK_MEMO) "
  10923. + " from qcm_judge_locking c "
  10924. + " where c.material_no like a.stoveno || '%' "
  10925. + " and c.unlock_type_code = '0' "
  10926. + " and c.lock_type_code = 'C' "
  10927. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MEMO,"
  10928. + "(select dbms_lob.substr(wmsys.wm_concat(DISTINCT C.UNLOCK_MEMO)) "
  10929. + " from qcm_judge_locking c "
  10930. + " where c.material_no = B.BILLETID "
  10931. + " and c.unlock_type_code = '0' "
  10932. + " and c.lock_type_code IN ('C','P') "
  10933. + " and c.pline_code in ('ZB1', 'HB1')) FX_MEMO1,(select case when dbms_lob.substr(wmsys.wm_concat(DISTINCT t.SMP_RATE_DESC)) is null then '无取样要求' else dbms_lob.substr(wmsys.wm_concat(DISTINCT t.SMP_RATE_DESC)) end SMP_RATE_DESC from qcm_ord_design_std_pic_smp t where t.design_key = a.ORDERNO) SMP_RATE_DESC from zj_result_all@xgcx b left join kcz_turnofflist@xgcx a on a.BILLETID = b.BILLETID join sel_pactdetail_new@xgcx t2 on A.ORDERNO = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.surfaceid = d.surface_id "
  10934. + " where 1=1 and a.ISVALID <> '0' and (a.STORAGESTATUS = '501602' or ( A.BILLETID IN (SELECT serialnumber FROM KCz_TURNOFFSENDLIST@xgcx WHERE SENDTYPE='3' AND ISVALID <> '0' AND DETERMINANTRESULT = '40140102' and ORDERFORMNUMBER in (select orderno from sel_pactdetail_new@xgcx) AND A.BILLETID NOT IN (SELECT BILLETID FROM kcj_storagelist@xgcx WHERE STORAGESTATUS = '501002') AND A.BILLETID NOT IN (SELECT BILLETID FROM kcJ_turnofflist@xgcx WHERE STORAGESTATUS = '501602')))) "+swhere1+
  10935. " union all select RCL_STATE ht_no,(SELECT max(x.process_nos) ht_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) ht_no1,(SELECT max(x.material_no) ht_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) material_no1,planorderno,PLANCARDNUMBER plansteel,ROLLNUMBER batchno, PLANNO plan_no, a.BILLETID material_no, (select t.memo from mb_plandetailofplate@xgcx t where t.productno = a.BILLETID) sc_memo,A.ORDERNO design_key, "
  10936. + " '' PSC_DESC,stoveno heat_no,c.level_desc gc_level_desc, d.level_desc bm_level_desc,(SELECT max(x.thick) ht_no FROM qcm_jhy_sample_r_ord x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) thick1,(SELECT max(x.steel_name) ht_no FROM qcm_jhy_sample_r_ord x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) steel_name1,(select max(memo) from qcm_ord_design_memo a where a.design_key = A.ORDERNO) order_remark, PLY thick, A.WIDTH, A.LENGTH, "
  10937. + " THEORYWEIGHT weight, c2n@XGCX(CLIPTYPEPROCESS) CUTSIDESTATE, c2n@XGCX(RuLE) FIXSIZE, CASE WHEN A.BILLETID LIKE 'H%' THEN (SELECT MAX(Z.PRODUCETIME) FROM KCh_TURNOFFLIST@XGCX Z WHERE Z.BILLETID = A.BILLETID) ELSE (SELECT MAX(Z.PTIME) FROM KCz_TURNOFFLIST@XGCX Z WHERE Z.BILLETID = A.BILLETID) end PRODUCETIME, b.sizeid, case when (select count(1) "
  10938. + " from qcm_ord_design_std_cic x where x.design_key = A.orderno and x.std_type_code = 'C') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC, "
  10939. + " b.SIZERESULT_DESC, case when (select count(1) from qcm_ord_design_std_pic x where x.design_key = A.orderno) > 0 then b.PHYSRESULT_DESC else '合格' end PHYSRESULT_DESC, case when (select count(1) from qcm_ord_design_std_dic x where x.design_key = A.orderno) > 0 then b.SPYRESULT_DESC "
  10940. + " else '否' end SPYRESULT_DESC, b.SURFACERESULT_DESC, b.R_CHEMRESULT_DESC, b.chemid, b. physid, b.surfaceid, b.up_surface_result_id_desc, b.ud_surface_result_id_desc,b.up_surface_result_desc,b.ud_surface_result_desc,"
  10941. + " b.spyid, b.r_chemid, B.physresult,B.chemresult, b.spyresult, b.fst_judgeresult_desc,(select to_char(create_time,'yyyy-mm-dd hh24:mi:ss') from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  10942. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type, t2.STEELCODE steel_code, C2N@xgcx(t2.STEELCODE) steel_name, t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, t2.PURPOSEID prod_code, t2.psrno psc,C2N@xgcx(t2.PURPOSEID) prod_name, "
  10943. + " psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC,"
  10944. + " case when (select count(1) from qcm_ord_design_std_pic x where x.design_key = a.orderno and specl_fl = '1') > 0 then '是' else '否' end is_special,"
  10945. + " (select MAX(C.UNLOCK_NAME) "
  10946. + " from qcm_judge_locking c "
  10947. + " where c.material_no like a.stoveno || '%'"
  10948. + " and c.unlock_type_code = '0' "
  10949. + " and c.lock_type_code = 'C' "
  10950. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MAN, "
  10951. + " (select TO_CHAR(MAX(C.UNLOCK_TIME), 'yyyy-mm-dd hh24:mi:ss') "
  10952. + " from qcm_judge_locking c "
  10953. + " where c.material_no like a.stoveno || '%' "
  10954. + " and c.unlock_type_code = '0' "
  10955. + " and c.lock_type_code = 'C' "
  10956. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_TIME, "
  10957. + " (select MAX(C.UNLOCK_MEMO) "
  10958. + " from qcm_judge_locking c "
  10959. + " where c.material_no like a.stoveno || '%' "
  10960. + " and c.unlock_type_code = '0' "
  10961. + " and c.lock_type_code = 'C' "
  10962. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MEMO,"
  10963. + "(select dbms_lob.substr(wmsys.wm_concat(DISTINCT C.UNLOCK_MEMO)) "
  10964. + " from qcm_judge_locking c "
  10965. + " where c.material_no = B.BILLETID "
  10966. + " and c.unlock_type_code = '0' "
  10967. + " and c.lock_type_code IN ('C','P') "
  10968. + " and c.pline_code in ('ZB1', 'HB1')) FX_MEMO1,(select case when dbms_lob.substr(wmsys.wm_concat(DISTINCT t.SMP_RATE_DESC)) is null then '无取样要求' else dbms_lob.substr(wmsys.wm_concat(DISTINCT t.SMP_RATE_DESC)) end SMP_RATE_DESC from qcm_ord_design_std_pic_smp t where t.design_key = a.ORDERNO) SMP_RATE_DESC from zj_result_all@xgcx b left join kcj_turnofflist@xgcx a on a.BILLETID = b.BILLETID join sel_pactdetail_new@xgcx t2 on A.ORDERNO = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.surfaceid = d.surface_id "
  10969. + " where 1 = 1 and a.STORAGESTATUS = '501602' and b.judgeresult = '0' and a.billetid like 'Z%' "+swhere1+
  10970. " union all "
  10971. + " select RCL_STATE ht_no,(SELECT max(x.process_nos) ht_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) ht_no1,(SELECT max(x.material_no) ht_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) material_no1,planorderno,PLANCARDNUMBER plansteel,ROLLNUMBER batchno, PLANNO plan_no,a.BILLETID material_no,(select t.memo from mb_plandetailofplate@xgcx t where t.productno = a.BILLETID) sc_memo,A.ORDERNO design_key,'' PSC_DESC,stoveno heat_no,c.level_desc gc_level_desc, d.level_desc bm_level_desc,(SELECT max(x.thick) ht_no FROM qcm_jhy_sample_r_ord x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) thick1,(SELECT max(x.steel_name) ht_no FROM qcm_jhy_sample_r_ord x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) steel_name1,(select max(memo) from qcm_ord_design_memo a where a.design_key = A.ORDERNO) order_remark, "
  10972. + " PLY thick, A.WIDTH, A.LENGTH,THEORYWEIGHT weight,c2n@XGCX(CLIPTYPEPROCESS) CUTSIDESTATE, c2n@XGCX(RuLE) FIXSIZE, case when ROLLNUMBER like 'H%' THEN (SELECT PRODUCETIME FROM KCH_TURNOFFLIST@XGCX WHERE BILLETID = B.BILLETID) WHEN ROLLNUMBER like 'Z%' THEN (SELECT PTIME FROM KCZ_TURNOFFLIST@XGCX WHERE BILLETID = B.BILLETID) "
  10973. + " END PRODUCETIME, b.sizeid, case when (select count(1) from qcm_ord_design_std_cic x where x.design_key = A.orderno and x.std_type_code = 'C') > 0 then "
  10974. + " b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC, b.SIZERESULT_DESC, case when (select count(1) from qcm_ord_design_std_pic x where x.design_key = A.orderno) > 0 then b.PHYSRESULT_DESC else '合格' end PHYSRESULT_DESC, case when (select count(1) from qcm_ord_design_std_dic x where x.design_key = A.orderno) > 0 then "
  10975. + " b.SPYRESULT_DESC else '否' end SPYRESULT_DESC, b.SURFACERESULT_DESC, b.R_CHEMRESULT_DESC, b.chemid, b. physid, b.surfaceid, b.up_surface_result_id_desc, "
  10976. + " b.ud_surface_result_id_desc,b.up_surface_result_desc,b.ud_surface_result_desc, b.spyid, b.r_chemid, B.physresult, B.chemresult, b.spyresult, b.fst_judgeresult_desc,(select to_char(create_time,'yyyy-mm-dd hh24:mi:ss') from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  10977. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type,t2.STEELCODE steel_code,C2N@xgcx(t2.STEELCODE) steel_name,t2.USEDSTAND std_code,C2N@xgcx(t2.USEDSTAND) std_name,t2.PURPOSEID prod_code,t2.psrno psc,C2N@xgcx(t2.PURPOSEID) prod_name,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC,"
  10978. + " case when (select count(1) from qcm_ord_design_std_pic x where x.design_key = a.orderno and specl_fl = '1') > 0 then '是' else '否' end is_special,"
  10979. + " (select MAX(C.UNLOCK_NAME) "
  10980. + " from qcm_judge_locking c "
  10981. + " where c.material_no like a.stoveno || '%'"
  10982. + " and c.unlock_type_code = '0' "
  10983. + " and c.lock_type_code = 'C' "
  10984. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MAN, "
  10985. + " (select TO_CHAR(MAX(C.UNLOCK_TIME), 'yyyy-mm-dd hh24:mi:ss') "
  10986. + " from qcm_judge_locking c "
  10987. + " where c.material_no like a.stoveno || '%' "
  10988. + " and c.unlock_type_code = '0' "
  10989. + " and c.lock_type_code = 'C' "
  10990. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_TIME, "
  10991. + " (select MAX(C.UNLOCK_MEMO) "
  10992. + " from qcm_judge_locking c "
  10993. + " where c.material_no like a.stoveno || '%' "
  10994. + " and c.unlock_type_code = '0' "
  10995. + " and c.lock_type_code = 'C' "
  10996. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MEMO,"
  10997. + "(select dbms_lob.substr(wmsys.wm_concat(DISTINCT C.UNLOCK_MEMO)) "
  10998. + " from qcm_judge_locking c "
  10999. + " where c.material_no = B.BILLETID "
  11000. + " and c.unlock_type_code = '0' "
  11001. + " and c.lock_type_code IN ('C','P') "
  11002. + " and c.pline_code in ('ZB1', 'HB1')) FX_MEMO1,(select case when dbms_lob.substr(wmsys.wm_concat(DISTINCT t.SMP_RATE_DESC)) is null then '无取样要求' else dbms_lob.substr(wmsys.wm_concat(DISTINCT t.SMP_RATE_DESC)) end SMP_RATE_DESC from qcm_ord_design_std_pic_smp t where t.design_key = a.ORDERNO) SMP_RATE_DESC "
  11003. + " from zj_result_all@xgcx b left join kcj_storagelist@xgcx a on a.BILLETID = b.BILLETID join sel_pactdetail_new@xgcx t2 "
  11004. + " on A.ORDERNO = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.surfaceid = d.surface_id where 1 = 1 and a.STORAGESTATUS = '501002' and b.judgeresult = '0' AND A.BILLETID LIKE 'Z%' "+swhere1+") T1 where 1 = 1 "+swhere+"";
  11005. }else{
  11006. sql = "select t1.* from (select RCL_STATE ht_no,(SELECT max(x.process_nos) ht_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) ht_no1,(SELECT max(x.material_no) ht_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) material_no1,planorderform planorderno,PLANCARDNUMBER plansteel,a.ROLLNUMBER batchno, a.PLANNUMBER plan_no, a.BILLETID material_no,(select t.ORDERMEMO from zyhb_plandetailofplate@xgcx t where t.slabno = a.BILLETID) sc_memo, "
  11007. + " ALLOTORDERFORM design_key, '' PSC_DESC,stoveno heat_no,c.level_desc gc_level_desc, d.level_desc bm_level_desc,(SELECT max(x.thick) ht_no FROM qcm_jhy_sample_r_ord x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) thick1,(SELECT max(x.steel_name) ht_no FROM qcm_jhy_sample_r_ord x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) steel_name1,"
  11008. +" (select max(memo) from qcm_ord_design_memo a where a.design_key = ALLOTORDERFORM) order_remark, "
  11009. + " PLY thick, a.WIDTH, a.LENGTH,THEORYWEIGHT weight, (select name_ from scm_base_info@xgcx where id_ = CUTSIDESTATE) CUTSIDESTATE, "
  11010. + " (select name_ from scm_base_info@xgcx where id_ = ROLE) FIXSIZE, PRODUCETIME, b.sizeid,case when (select count(1) from qcm_ord_design_std_cic x "
  11011. + " where x.design_key = ALLOTORDERFORM and x.std_type_code = 'C') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC,b.SIZERESULT_DESC,case when (select count(1) from qcm_ord_design_std_pic x where x.design_key = ALLOTORDERFORM) > 0 then b.PHYSRESULT_DESC else '合格' end PHYSRESULT_DESC,case when (select count(1) "
  11012. + " from qcm_ord_design_std_dic x where x.design_key = ALLOTORDERFORM) > 0 then b.SPYRESULT_DESC else '否' end SPYRESULT_DESC,b.SURFACERESULT_DESC,b.R_CHEMRESULT_DESC,b.chemid,b. physid,b.surfaceid,b.up_surface_result_id_desc,b.ud_surface_result_id_desc,b.up_surface_result_desc,b.ud_surface_result_desc,b.spyid,b.r_chemid,B.physresult, B.chemresult,b.spyresult,b.fst_judgeresult_desc,(select to_char(create_time,'yyyy-mm-dd hh24:mi:ss') from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  11013. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type, t2.STEELCODE steel_code, C2N@xgcx(t2.STEELCODE)steel_name , t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, "
  11014. + " t2.PURPOSEID prod_code,t2.psrno psc, C2N@xgcx(t2.PURPOSEID) prod_name,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC,"
  11015. + " case when (select count(1) from qcm_ord_design_std_pic x where x.design_key = orderno and specl_fl = '1') > 0 then '是' else '否' end is_special,"
  11016. + " (select MAX(C.UNLOCK_NAME) "
  11017. + " from qcm_judge_locking c "
  11018. + " where c.material_no like a.stoveno || '%'"
  11019. + " and c.unlock_type_code = '0' "
  11020. + " and c.lock_type_code = 'C' "
  11021. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MAN, "
  11022. + " (select TO_CHAR(MAX(C.UNLOCK_TIME), 'yyyy-mm-dd hh24:mi:ss') "
  11023. + " from qcm_judge_locking c "
  11024. + " where c.material_no like a.stoveno || '%' "
  11025. + " and c.unlock_type_code = '0' "
  11026. + " and c.lock_type_code = 'C' "
  11027. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_TIME, "
  11028. + " (select MAX(C.UNLOCK_MEMO) "
  11029. + " from qcm_judge_locking c "
  11030. + " where c.material_no like a.stoveno || '%' "
  11031. + " and c.unlock_type_code = '0' "
  11032. + " and c.lock_type_code = 'C' "
  11033. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MEMO,"
  11034. + "(select dbms_lob.substr(wmsys.wm_concat(DISTINCT C.UNLOCK_MEMO)) "
  11035. + " from qcm_judge_locking c "
  11036. + " where c.material_no = B.BILLETID "
  11037. + " and c.unlock_type_code = '0' "
  11038. + " and c.lock_type_code IN ('C','P') "
  11039. + " and c.pline_code in ('ZB1', 'HB1')) FX_MEMO1,(select case when dbms_lob.substr(wmsys.wm_concat(DISTINCT t.SMP_RATE_DESC)) is null then '无取样要求' else dbms_lob.substr(wmsys.wm_concat(DISTINCT t.SMP_RATE_DESC)) end SMP_RATE_DESC from qcm_ord_design_std_pic_smp t where t.design_key = a.ALLOTORDERFORM) SMP_RATE_DESC from zj_result_all@xgcx b "
  11040. + " left join kch_turnofflist@xgcx a on a.BILLETID = b.BILLETID join sel_pactdetail_new@xgcx t2 on a.ALLOTORDERFORM = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.surfaceid = d.surface_id where 1=1 AND (a.STORAGESTATUS = '501602' or ( A.BILLETID IN ( SELECT serialnumber FROM KCH_TURNOFFSENDLIST@xgcx WHERE SENDTYPE='3' AND ISVALID <> '0' AND DETERMINANTRESULT = '40140102' and ORDERFORMNUMBER in (select orderno from sel_pactdetail_new@xgcx) AND A.BILLETID NOT IN (SELECT BILLETID FROM kcj_storagelist@xgcx WHERE STORAGESTATUS = '501002') AND A.BILLETID NOT IN (SELECT BILLETID FROM kcJ_turnofflist@xgcx WHERE STORAGESTATUS = '501602')))) "+swhere1
  11041. + " union all "
  11042. + "select RCL_STATE ht_no,(SELECT max(x.process_nos) ht_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) ht_no1,(SELECT max(x.material_no) ht_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) material_no1,planorderno,PLANCARDNUMBER plansteel,ROLLNUMBER batchno, PLANNO plan_no, a.BILLETID material_no, (select t.ORDERMEMO from zyhb_plandetailofplate@xgcx t where t.slabno = a.BILLETID) sc_memo,a.ORDERNO design_key,'' PSC_DESC,stoveno heat_no, c.level_desc gc_level_desc, d.level_desc bm_level_desc,(SELECT max(x.thick) ht_no FROM qcm_jhy_sample_r_ord x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) thick1,(SELECT max(x.steel_name) ht_no FROM qcm_jhy_sample_r_ord x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) steel_name1, "
  11043. +" (select max(memo) from qcm_ord_design_memo a where a.design_key = a.ORDERNO) order_remark, "
  11044. + " PLY thick, a.WIDTH, "
  11045. + " a.LENGTH, THEORYWEIGHT weight, (select name_ from scm_base_info@xgcx where id_ = CUTSIDESTATE) CUTSIDESTATE, (select name_ from scm_base_info@xgcx where id_ = RuLE) FIXSIZE, "
  11046. + " PTIME PRODUCETIME, b.sizeid,case when (select count(1) from qcm_ord_design_std_cic x "
  11047. + " where x.design_key = a.orderno and x.std_type_code = 'C') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC,b.SIZERESULT_DESC,case when (select count(1) from qcm_ord_design_std_pic x where x.design_key = a.orderno) > 0 then b.PHYSRESULT_DESC else '合格' end PHYSRESULT_DESC,case when (select count(1) "
  11048. + " from qcm_ord_design_std_dic x where x.design_key = a.orderno) > 0 then b.SPYRESULT_DESC else '否' end SPYRESULT_DESC,b.SURFACERESULT_DESC,b.R_CHEMRESULT_DESC,b.chemid,b. physid,b.surfaceid,b.up_surface_result_id_desc,b.ud_surface_result_id_desc,b.up_surface_result_desc,b.ud_surface_result_desc,b.spyid,b.r_chemid,B.physresult, B.chemresult,b.spyresult,b.fst_judgeresult_desc,(select to_char(create_time,'yyyy-mm-dd hh24:mi:ss') from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  11049. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type, t2.STEELCODE steel_code, C2N@xgcx(t2.STEELCODE)steel_name , t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, "
  11050. + " t2.PURPOSEID prod_code,t2.psrno psc, C2N@xgcx(t2.PURPOSEID) prod_name,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC,"
  11051. + " case when (select count(1) from qcm_ord_design_std_pic x where x.design_key = a.ORDERNO and specl_fl = '1') > 0 then '是' else '否' end is_special,"
  11052. + " (select MAX(C.UNLOCK_NAME) "
  11053. + " from qcm_judge_locking c "
  11054. + " where c.material_no like a.stoveno || '%'"
  11055. + " and c.unlock_type_code = '0' "
  11056. + " and c.lock_type_code = 'C' "
  11057. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MAN, "
  11058. + " (select TO_CHAR(MAX(C.UNLOCK_TIME), 'yyyy-mm-dd hh24:mi:ss') "
  11059. + " from qcm_judge_locking c "
  11060. + " where c.material_no like a.stoveno || '%' "
  11061. + " and c.unlock_type_code = '0' "
  11062. + " and c.lock_type_code = 'C' "
  11063. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_TIME, "
  11064. + " (select MAX(C.UNLOCK_MEMO) "
  11065. + " from qcm_judge_locking c "
  11066. + " where c.material_no like a.stoveno || '%' "
  11067. + " and c.unlock_type_code = '0' "
  11068. + " and c.lock_type_code = 'C' "
  11069. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MEMO,"
  11070. + "(select dbms_lob.substr(wmsys.wm_concat(DISTINCT C.UNLOCK_MEMO)) "
  11071. + " from qcm_judge_locking c "
  11072. + " where c.material_no = B.BILLETID "
  11073. + " and c.unlock_type_code = '0' "
  11074. + " and c.lock_type_code IN ('C','P') "
  11075. + " and c.pline_code in ('ZB1', 'HB1')) FX_MEMO1,(select case when dbms_lob.substr(wmsys.wm_concat(DISTINCT t.SMP_RATE_DESC)) is null then '无取样要求' else dbms_lob.substr(wmsys.wm_concat(DISTINCT t.SMP_RATE_DESC)) end SMP_RATE_DESC from qcm_ord_design_std_pic_smp t where t.design_key = a.orderno) SMP_RATE_DESC from zj_result_all@xgcx b left join kcz_turnofflist@xgcx a on a.BILLETID = b.BILLETID join sel_pactdetail_new@xgcx t2 on a.orderno = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.surfaceid = d.surface_id "
  11076. + " where 1=1 and a.ISVALID <> '0' and (a.STORAGESTATUS = '501602' or ( A.BILLETID IN (SELECT serialnumber FROM KCz_TURNOFFSENDLIST@xgcx WHERE SENDTYPE='3' AND ISVALID <> '0' AND DETERMINANTRESULT = '40140102' and ORDERFORMNUMBER in (select orderno from sel_pactdetail_new@xgcx) AND A.BILLETID NOT IN (SELECT BILLETID FROM kcj_storagelist@xgcx WHERE STORAGESTATUS = '501002') AND A.BILLETID NOT IN (SELECT BILLETID FROM kcJ_turnofflist@xgcx WHERE STORAGESTATUS = '501602')))) "+swhere1
  11077. +" union all select RCL_STATE ht_no,(SELECT max(x.process_nos) ht_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) ht_no1,(SELECT max(x.material_no) ht_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) material_no1,planorderno,PLANCARDNUMBER plansteel,ROLLNUMBER batchno, PLANNO plan_no, a.BILLETID material_no,'' sc_memo, a.ORDERNO design_key, "
  11078. + " '' PSC_DESC, stoveno heat_no,c.level_desc gc_level_desc, d.level_desc bm_level_desc,(SELECT max(x.thick) ht_no FROM qcm_jhy_sample_r_ord x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) thick1,(SELECT max(x.steel_name) ht_no FROM qcm_jhy_sample_r_ord x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) steel_name1,(select max(memo) from qcm_ord_design_memo a where a.design_key = a.ORDERNO) order_remark, PLY thick, a.WIDTH, a.LENGTH, "
  11079. + " THEORYWEIGHT weight, c2n@XGCX(CLIPTYPEPROCESS) CUTSIDESTATE, c2n@XGCX(RuLE) FIXSIZE, CASE WHEN A.BILLETID LIKE 'H%' THEN (SELECT MAX(Z.PRODUCETIME) FROM KCh_TURNOFFLIST@XGCX Z WHERE Z.BILLETID = A.BILLETID) ELSE (SELECT MAX(Z.PTIME) FROM KCz_TURNOFFLIST@XGCX Z WHERE Z.BILLETID = A.BILLETID) end PRODUCETIME, b.sizeid, case when (select count(1) "
  11080. + " from qcm_ord_design_std_cic x where x.design_key = a.orderno and x.std_type_code = 'C') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC, "
  11081. + " b.SIZERESULT_DESC, case when (select count(1) from qcm_ord_design_std_pic x where x.design_key = a.orderno) > 0 then b.PHYSRESULT_DESC else '合格' end PHYSRESULT_DESC, case when (select count(1) from qcm_ord_design_std_dic x where x.design_key = a.orderno) > 0 then b.SPYRESULT_DESC "
  11082. + " else '否' end SPYRESULT_DESC, b.SURFACERESULT_DESC, b.R_CHEMRESULT_DESC, b.chemid, b. physid, b.surfaceid, b.up_surface_result_id_desc, b.ud_surface_result_id_desc,b.up_surface_result_desc,b.ud_surface_result_desc,"
  11083. + " b.spyid, b.r_chemid, B.physresult,B.chemresult, b.spyresult, b.fst_judgeresult_desc,(select to_char(create_time,'yyyy-mm-dd hh24:mi:ss') from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  11084. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type, t2.STEELCODE steel_code, C2N@xgcx(t2.STEELCODE) steel_name, t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, t2.PURPOSEID prod_code,t2.psrno psc, C2N@xgcx(t2.PURPOSEID) prod_name, "
  11085. + " psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC,"
  11086. + " case when (select count(1) from qcm_ord_design_std_pic x where x.design_key = a.orderno and specl_fl = '1') > 0 then '是' else '否' end is_special,"
  11087. + " (select MAX(C.UNLOCK_NAME) "
  11088. + " from qcm_judge_locking c "
  11089. + " where c.material_no like a.stoveno || '%'"
  11090. + " and c.unlock_type_code = '0' "
  11091. + " and c.lock_type_code = 'C' "
  11092. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MAN, "
  11093. + " (select TO_CHAR(MAX(C.UNLOCK_TIME), 'yyyy-mm-dd hh24:mi:ss') "
  11094. + " from qcm_judge_locking c "
  11095. + " where c.material_no like a.stoveno || '%' "
  11096. + " and c.unlock_type_code = '0' "
  11097. + " and c.lock_type_code = 'C' "
  11098. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_TIME, "
  11099. + " (select MAX(C.UNLOCK_MEMO) "
  11100. + " from qcm_judge_locking c "
  11101. + " where c.material_no like a.stoveno || '%' "
  11102. + " and c.unlock_type_code = '0' "
  11103. + " and c.lock_type_code = 'C' "
  11104. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MEMO,"
  11105. + "(select dbms_lob.substr(wmsys.wm_concat(DISTINCT C.UNLOCK_MEMO)) "
  11106. + " from qcm_judge_locking c "
  11107. + " where c.material_no = B.BILLETID "
  11108. + " and c.unlock_type_code = '0' "
  11109. + " and c.lock_type_code IN ('C','P') "
  11110. + " and c.pline_code in ('ZB1', 'HB1')) FX_MEMO1,(select case when dbms_lob.substr(wmsys.wm_concat(DISTINCT t.SMP_RATE_DESC)) is null then '无取样要求' else dbms_lob.substr(wmsys.wm_concat(DISTINCT t.SMP_RATE_DESC)) end SMP_RATE_DESC from qcm_ord_design_std_pic_smp t where t.design_key = a.orderno) SMP_RATE_DESC from zj_result_all@xgcx b left join kcj_turnofflist@xgcx a on a.BILLETID = b.BILLETID join sel_pactdetail_new@xgcx t2 on a.orderno = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.surfaceid = d.surface_id "
  11111. + " where 1 = 1 and a.STORAGESTATUS = '501602' and b.judgeresult = '0' and (a.billetid like 'Z%' or a.billetid like 'H%' ) "+swhere1
  11112. + " union all "
  11113. + " select RCL_STATE ht_no,(SELECT max(x.process_nos) ht_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) ht_no1,(SELECT max(x.material_no) ht_no FROM Qcm_Jhy_Sample_Consign_d x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) material_no1,planorderno,PLANCARDNUMBER plansteel,ROLLNUMBER batchno, PLANNO plan_no,a.BILLETID material_no,'' sc_memo,a.ORDERNO design_key,'' PSC_DESC, stoveno heat_no,c.level_desc gc_level_desc, d.level_desc bm_level_desc,(SELECT max(x.thick) ht_no FROM qcm_jhy_sample_r_ord x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) thick1,(SELECT max(x.steel_name) ht_no FROM qcm_jhy_sample_r_ord x where x.smp_no in( SELECT A.SMP_NO FROM QCM_JUDGE_PHYSICAL_UTM_D A WHERE A.PIC_ID = b.PHYSID)) steel_name1,(select max(memo) from qcm_ord_design_memo a where a.design_key = a.ORDERNO) order_remark, "
  11114. + " PLY thick, a.WIDTH, a.LENGTH,THEORYWEIGHT weight,c2n@XGCX(CLIPTYPEPROCESS) CUTSIDESTATE, c2n@XGCX(RuLE) FIXSIZE, case when ROLLNUMBER like 'H%' THEN (SELECT PRODUCETIME FROM KCH_TURNOFFLIST@XGCX WHERE BILLETID = B.BILLETID) WHEN ROLLNUMBER like 'Z%' THEN (SELECT PTIME FROM KCZ_TURNOFFLIST@XGCX WHERE BILLETID = B.BILLETID) "
  11115. + " END PRODUCETIME, b.sizeid, case when (select count(1) from qcm_ord_design_std_cic x where x.design_key = a.orderno and x.std_type_code = 'C') > 0 then "
  11116. + " b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC, b.SIZERESULT_DESC, case when (select count(1) from qcm_ord_design_std_pic x where x.design_key = a.orderno) > 0 then b.PHYSRESULT_DESC else '合格' end PHYSRESULT_DESC, case when (select count(1) from qcm_ord_design_std_dic x where x.design_key = a.orderno) > 0 then "
  11117. + " b.SPYRESULT_DESC else '否' end SPYRESULT_DESC, b.SURFACERESULT_DESC, b.R_CHEMRESULT_DESC, b.chemid, b. physid, b.surfaceid, b.up_surface_result_id_desc,b.ud_surface_result_id_desc,b.up_surface_result_desc,b.ud_surface_result_desc, "
  11118. + " b.spyid, b.r_chemid, B.physresult, B.chemresult, b.spyresult, b.fst_judgeresult_desc,(select to_char(create_time,'yyyy-mm-dd hh24:mi:ss') from QCM_JUDGE_PHYSICAL_UTM_M where pic_id = b.physid) judge_time,(select decode(max(x.Smp_Type_Code),'3','件件取样','4','按母板取样', '1', '复样', '0', '初样') from qcm_jhy_sample_consign_d x "
  11119. + " where x.specimen_no in (SELECT z.specimen_no FROM QCM_JUDGE_PHYSICAL_RESULT Z WHERE Z.phy_id IN (SELECT PHY_ID FROM QCM_JUDGE_PHYSICAL_UTM_D F WHERE F.PIc_ID = b.PHYSID))) smp_type,t2.STEELCODE steel_code,C2N@xgcx(t2.STEELCODE) steel_name,t2.USEDSTAND std_code,C2N@xgcx(t2.USEDSTAND) std_name,t2.PURPOSEID prod_code,t2.psrno psc,C2N@xgcx(t2.PURPOSEID) prod_name,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC,"
  11120. + " case when (select count(1) from qcm_ord_design_std_pic x where x.design_key = a.ORDERNO and specl_fl = '1') > 0 then '是' else '否' end is_special,"
  11121. + " (select MAX(C.UNLOCK_NAME) "
  11122. + " from qcm_judge_locking c "
  11123. + " where c.material_no like a.stoveno || '%'"
  11124. + " and c.unlock_type_code = '0' "
  11125. + " and c.lock_type_code = 'C' "
  11126. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MAN, "
  11127. + " (select TO_CHAR(MAX(C.UNLOCK_TIME), 'yyyy-mm-dd hh24:mi:ss') "
  11128. + " from qcm_judge_locking c "
  11129. + " where c.material_no like a.stoveno || '%' "
  11130. + " and c.unlock_type_code = '0' "
  11131. + " and c.lock_type_code = 'C' "
  11132. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_TIME, "
  11133. + " (select MAX(C.UNLOCK_MEMO) "
  11134. + " from qcm_judge_locking c "
  11135. + " where c.material_no like a.stoveno || '%' "
  11136. + " and c.unlock_type_code = '0' "
  11137. + " and c.lock_type_code = 'C' "
  11138. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MEMO,"
  11139. + "(select dbms_lob.substr(wmsys.wm_concat(DISTINCT C.UNLOCK_MEMO)) "
  11140. + " from qcm_judge_locking c "
  11141. + " where c.material_no = B.BILLETID "
  11142. + " and c.unlock_type_code = '0' "
  11143. + " and c.lock_type_code IN ('C','P') "
  11144. + " and c.pline_code in ('ZB1', 'HB1')) FX_MEMO1,(select case when dbms_lob.substr(wmsys.wm_concat(DISTINCT t.SMP_RATE_DESC)) is null then '无取样要求' else dbms_lob.substr(wmsys.wm_concat(DISTINCT t.SMP_RATE_DESC)) end SMP_RATE_DESC from qcm_ord_design_std_pic_smp t where t.design_key = a.orderno) SMP_RATE_DESC "
  11145. + " from zj_result_all@xgcx b left join kcj_storagelist@xgcx a on a.BILLETID = b.BILLETID join sel_pactdetail_new@xgcx t2 "
  11146. + " on a.orderno = t2.ORDERNO left join qcm_judge_measure c on b.billetid = c.material_no and b.sizeid = c.sic_id left join qcm_judge_surface d on d.material_no = b.billetid and b.surfaceid = d.surface_id where 1 = 1 and a.STORAGESTATUS = '501002' and b.judgeresult = '0' and (a.billetid like 'Z%' or a.billetid like 'H%') "+swhere1+") T1 where 1 = 1 "+swhere+"";
  11147. }
  11148. try {
  11149. System.out.print(sql);
  11150. List<HashMap> list = mapper.query(sql);
  11151. cro.setResult(list);
  11152. } catch (Exception ex) {
  11153. ex.printStackTrace();
  11154. cro.setV_errCode(-1);
  11155. cro.setV_errMsg("查询失败!" + ex.getMessage());
  11156. }
  11157. SqlSession.close();
  11158. return cro;
  11159. }
  11160. public CoreReturnObject GetUnjudgeInfoX(String begintime,String endtime,String bbatchno,String ebatchno,String design_key,String Psc_desc,String prodline,String cert_inst_name,String heat_no){
  11161. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime) && SqlJoint.IsNullOrSpace(bbatchno)) {
  11162. String sky=StrSky(begintime,endtime);
  11163. if(!sky.equals("TRUE")){
  11164. SqlSession.close();
  11165. cro.setV_errCode(-1);
  11166. cro.setV_errMsg(sky);
  11167. return cro;
  11168. }
  11169. }
  11170. String swhere = "";
  11171. String swhere1 = "";
  11172. if (!SqlJoint.IsNullOrSpace(begintime) && !SqlJoint.IsNullOrSpace(endtime)&& SqlJoint.IsNullOrSpace(bbatchno) && SqlJoint.IsNullOrSpace(ebatchno)) { //生产时间
  11173. swhere += " and to_date(to_char(PRODUCETIME,'yyyy-mm-dd'),'yyyy-mm-dd') between to_date('"+begintime+"','yyyy-mm-dd') and to_date('"+endtime+"','yyyy-mm-dd')";
  11174. }
  11175. if (!SqlJoint.IsNullOrSpace(bbatchno)) { //起始轧批号
  11176. swhere += "and batchno >= '"+bbatchno+"'";
  11177. }
  11178. if (!SqlJoint.IsNullOrSpace(ebatchno)) { //最后轧批号
  11179. swhere += "and batchno <= '"+ebatchno+"'";
  11180. }
  11181. if (!SqlJoint.IsNullOrSpace(design_key)) { //销售订单号
  11182. swhere += " and design_key like '%"+design_key+"%'";
  11183. }
  11184. if (!SqlJoint.IsNullOrSpace(Psc_desc)) { //Psc_desc
  11185. swhere += " and psc_desc like '%"+Psc_desc+"%'";
  11186. }
  11187. if(!SqlJoint.IsNullOrSpace(heat_no)){
  11188. swhere1 += " and substr(a.STOVENO,1,10) like '%"+heat_no+"%'";
  11189. }
  11190. swhere1 += " and b.judgeresult = '0'";
  11191. if(!SqlJoint.IsNullOrSpace(cert_inst_name) && !cert_inst_name.equals("全部")){
  11192. swhere += "and exists (select 1 from qcm_ord_design_sample_m t2 where t2.design_key = t1.design_key and t2.org_name = '"+cert_inst_name+"')";
  11193. }
  11194. /*//表面
  11195. swhere1 += " and b.surfaceresult not in ('0','2')";
  11196. //熔炼
  11197. swhere1 += " and b.r_chemresult not in ('0','2') ";
  11198. //成品成分
  11199. swhere += " and (chemresult not in ('0','2') or ( not exists (select 1 from qcm_ord_design_std_cic t2 where t2.design_key = t1.design_key and t2.std_type_code = 'B') AND chemresult = '0'))";
  11200. //公差
  11201. swhere1 += "and b.sizeresult not in ('0','2') ";
  11202. swhere1 += "and b.physresult not in ('0','2') ";
  11203. //材质
  11204. swhere += " and (physresult not in ('0','2') or ( not exists (select 1 from qcm_ord_design_std_pic t2 where t2.design_key = t1.design_key) AND physresult = '0'))";
  11205. //探伤
  11206. swhere += " and (spyresult not in ('0','2') or (not exists (select 1 from qcm_ord_design_std_dic t2 where t2.design_key = t1.design_key) AND spyresult = '0'))";
  11207. swhere1 += " and (b.sizeresult not in ('0') or b.surfaceresult not in ('0') or b.r_chemresult not in ('0') or b.chemresult not in ('0') or b.physresult not in ('0'))";
  11208. swhere1 += " and b.sizeresult not in ('2') and b.surfaceresult not in ('2') and b.r_chemresult not in ('2') and b.chemresult not in ('2') and b.physresult not in ('2')";
  11209. if(!SqlJoint.IsNullOrSpace(cert_inst_name) && !cert_inst_name.equals("全部")){
  11210. swhere += "and exists (select 1 from qcm_ord_design_sample_m t2 where t2.design_key = t1.design_key and t2.org_name = '"+cert_inst_name+"')";
  11211. }*/
  11212. if(prodline.equals("高棒")){
  11213. swhere1 += " and a.pld = '4001GX1'";
  11214. }else if(prodline.equals("棒二")){
  11215. swhere1 += "and a.pld = '4001BC2'";
  11216. }else if(prodline.equals("高线")){
  11217. swhere1 += " and a.pld = '4001GX2'";
  11218. }
  11219. /*swhere1 += " and b.surfaceresult <> '0'";
  11220. swhere1 += " and b.sizeresult <> '0'";
  11221. swhere1 += " and b.spyresult <> '0'";
  11222. swhere1 += " and b.judgeresult = '0'";
  11223. swhere1 += " and (b.chemresult <> '0' or b.r_chemresult <> '0')";
  11224. swhere1 += " and b.physresult <> '0'";*/
  11225. String sql = "select t1.*, t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, "
  11226. + " t2.PURPOSEID prod_code, C2N@xgcx(t2.PURPOSEID) prod_name,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC from (select ROLLNUMBER batchno, PLANNO plan_no,a.BILLETID material_no, "
  11227. + " ORDERNO design_key,'' PSC_DESC, PLY thick,a.STOVENO heat_no, "
  11228. +" (select max(memo) from qcm_ord_design_memo a where a.design_key = orderno) order_remark, "
  11229. + " WIDTH, LENGTH, THEORYWEIGHT weight, '' CUTSIDESTATE, (select name_ from scm_base_info@xgcx where id_ = RuLE) FIXSIZE, "
  11230. + " PTIME PRODUCETIME,DETERMINANTCARDNUMBER steel_code,DETERMINANTCARDNUMBER steel_name, b.sizeid,case when (select count(1) from qcm_ord_design_std_cic x "
  11231. + " where x.design_key = orderno and x.std_type_code = 'C') > 0 then b.CHEMRESULT_DESC else '否' end CHEMRESULT_DESC,b.SIZERESULT_DESC,b.PHYSRESULT_DESC,case when (select count(1) "
  11232. + " from qcm_ord_design_std_dic x where x.design_key = orderno) > 0 then b.SPYRESULT_DESC else '否' end SPYRESULT_DESC,b.SURFACERESULT_DESC,b.R_CHEMRESULT_DESC,b.chemid,b. physid,b.surfaceid,b.spyid,b.r_chemid,B.physresult, B.chemresult,b.spyresult,"
  11233. + "(select MAX(C.UNLOCK_NAME) "
  11234. + " from qcm_judge_locking c "
  11235. + " where c.material_no = a.stoveno "
  11236. + " and c.unlock_type_code = '0' "
  11237. + " and c.lock_type_code = 'C' "
  11238. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MAN, "
  11239. + " (select TO_CHAR(MAX(C.UNLOCK_TIME), 'yyyy-mm-dd hh24:mi:ss') "
  11240. + " from qcm_judge_locking c "
  11241. + " where c.material_no = a.stoveno "
  11242. + " and c.unlock_type_code = '0' "
  11243. + " and c.lock_type_code = 'C' "
  11244. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_TIME, "
  11245. + " (select MAX(C.UNLOCK_MEMO) "
  11246. + " from qcm_judge_locking c "
  11247. + " where c.material_no = a.stoveno "
  11248. + " and c.unlock_type_code = '0' "
  11249. + " and c.lock_type_code = 'C' "
  11250. + " and c.pline_code in ('4001LG0', '4001LGX')) FX_MEMO,"
  11251. + "(select dbms_lob.substr(wmsys.wm_concat(DISTINCT C.UNLOCK_MEMO)) "
  11252. + " from qcm_judge_locking c "
  11253. + " where c.material_no = B.BILLETID "
  11254. + " and c.unlock_type_code = '0' "
  11255. + " and c.lock_type_code IN ('C','P') "
  11256. + " and c.pline_code in ('GX1', 'GX2','BC1','BC2')) FX_MEMO1 from kcx_turnofflist@xgcx a left join zj_result_all@xgcx b on a.BILLETID = b.BILLETID "
  11257. + " where 1=1 "+swhere1+")T1 left join sel_pactdetail@xgcx t2 on t1.design_key = t2.ORDERNO where 1=1 "+swhere+" order by PRODUCETIME desc";
  11258. // 20220814 取消在库条件and a.STORAGESTATUS = '501602'
  11259. try {
  11260. System.out.print(sql);
  11261. List<HashMap> list = mapper.query(sql);
  11262. cro.setResult(list);
  11263. } catch (Exception ex) {
  11264. ex.printStackTrace();
  11265. cro.setV_errCode(-1);
  11266. cro.setV_errMsg("查询失败!" + ex.getMessage());
  11267. }
  11268. SqlSession.close();
  11269. return cro;
  11270. }
  11271. /**
  11272. * 是否存在熔炼、成品成分标准
  11273. */
  11274. @SuppressWarnings("unused")
  11275. private boolean CheckType(String designkey,String type){
  11276. List<QCMOrdDesignStdCic> list = mapper.queryQCMOrdDesignStdCic("select * from qcm_ord_design_std_cic where design_key = '"+designkey+"' and std_type_code = '"+type+"'");
  11277. if(list.size() > 0){
  11278. return true;
  11279. }
  11280. return false;
  11281. }
  11282. /*private void judge_jb(String pline,String pcolino)throws java.lang.Exception
  11283. {
  11284. List<HashMap> list = mapper.query("select * from qcm_judge_coil_trsult where coil_no = '"+pcolino+"' ");
  11285. String chemrs = list.get(0).get("");
  11286. String qlitrs = "";
  11287. String sizers = "";
  11288. String Exshrs = "";
  11289. String totrs = "";
  11290. Connection conn = null;
  11291. CallableStatement cstmt = null;
  11292. ResultSet rs = null;
  11293. try {
  11294. conn = SqlSession.getConnection();
  11295. String callSql = "{call COILJUDGE_STATUS(?,?,?,?,?,?,?) }";
  11296. cstmt = conn.prepareCall(callSql);
  11297. cstmt.setString(1, pline);
  11298. cstmt.setString(2, pcolino);
  11299. cstmt.setString(3, chemrs);
  11300. cstmt.setString(4, qlitrs);
  11301. cstmt.setString(5, sizers);
  11302. cstmt.setString(6, Exshrs);
  11303. cstmt.setString(7, totrs);
  11304. cstmt.execute();
  11305. } catch (Exception e) {
  11306. throw new Exception(e.getMessage());
  11307. } finally {
  11308. try {
  11309. if (rs != null) {
  11310. rs.close();
  11311. }
  11312. } catch (Exception e) {
  11313. throw new Exception(e.getMessage());
  11314. }
  11315. try {
  11316. if (cstmt != null) {
  11317. cstmt.close();
  11318. }
  11319. } catch (Exception e) {
  11320. throw new Exception(e.getMessage());
  11321. }
  11322. }
  11323. }*/
  11324. private void Bjpf(String VOLD_SAMPL_NO,String VTOT_DEC_GRD,String VEXTSHAPE_DEC_GRD,String VOPERATOR,String VORD_NO)throws java.lang.Exception{
  11325. Connection conn = null;
  11326. CallableStatement cstmt = null;
  11327. ResultSet rs = null;
  11328. try {
  11329. conn = SqlSession.getConnection();
  11330. String callSql = "{call KCJ3_STUFF_JUDGE@xgcx(?,?,?,?,?) }";
  11331. cstmt = conn.prepareCall(callSql);
  11332. cstmt.setString(1, VOLD_SAMPL_NO);
  11333. cstmt.setString(2, VTOT_DEC_GRD);
  11334. cstmt.setString(3, VEXTSHAPE_DEC_GRD);
  11335. cstmt.setString(4, VOPERATOR);
  11336. cstmt.setString(5, VORD_NO);
  11337. cstmt.execute();
  11338. } catch (Exception e) {
  11339. throw new Exception(e.getMessage());
  11340. } finally {
  11341. try {
  11342. if (rs != null) {
  11343. rs.close();
  11344. }
  11345. } catch (Exception e) {
  11346. throw new Exception(e.getMessage());
  11347. }
  11348. try {
  11349. if (cstmt != null) {
  11350. cstmt.close();
  11351. }
  11352. } catch (Exception e) {
  11353. throw new Exception(e.getMessage());
  11354. }
  11355. }
  11356. }
  11357. private void Coil_updateOrdreNo(String pact_no,String pact_seq,String coil_no,String prod_line)throws java.lang.Exception
  11358. {
  11359. Connection conn = null;
  11360. CallableStatement cstmt = null;
  11361. ResultSet rs = null;
  11362. try {
  11363. if(prod_line.equals("RZ1")){
  11364. prod_line = "R";
  11365. }else if(prod_line.equals("LT1")){
  11366. prod_line = "L";
  11367. }
  11368. conn = SqlSession.getConnection();
  11369. String callSql = "{call C_JH_ORD_REP.YTH_COIL_STAT(?,?,?,?,?,?,?,?,?,?) }";
  11370. cstmt = conn.prepareCall(callSql);
  11371. cstmt.setString(1, pact_no);
  11372. cstmt.setString(2, pact_seq);
  11373. cstmt.setString(3, "");
  11374. cstmt.setString(4, "");
  11375. cstmt.setString(5, coil_no);
  11376. cstmt.setString(6, prod_line);
  11377. cstmt.setString(7, "CD");
  11378. cstmt.setString(8, "A");
  11379. cstmt.setString(9, "1");
  11380. cstmt.registerOutParameter(10, java.sql.Types.VARCHAR);
  11381. cstmt.execute();
  11382. if(cstmt.getString(10) != null){
  11383. if(!cstmt.getString(10).equals("充当成功")){
  11384. throw new java.lang.Exception("改判失败!");
  11385. }
  11386. }
  11387. } catch (Exception e) {
  11388. throw new Exception(e.getMessage());
  11389. } finally {
  11390. try {
  11391. if (rs != null) {
  11392. rs.close();
  11393. }
  11394. } catch (Exception e) {
  11395. throw new Exception(e.getMessage());
  11396. }
  11397. try {
  11398. if (cstmt != null) {
  11399. cstmt.close();
  11400. }
  11401. } catch (Exception e) {
  11402. throw new Exception(e.getMessage());
  11403. }
  11404. }
  11405. }
  11406. public CoreReturnObject jd(String material_no,String pline_code,
  11407. String username) throws java.lang.Exception {
  11408. Connection conn = null;
  11409. CallableStatement cstmt = null;
  11410. ResultSet rs = null;
  11411. try {
  11412. QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
  11413. qjog.setOperate_name(username);
  11414. qjog.setOperate_type("改判订单解单");
  11415. qjog.setParams(material_no);
  11416. if("R".equals(pline_code)){
  11417. qjog.setBatchno(material_no.substring(0,10));
  11418. }
  11419. else if("S".equals(pline_code)||"L".equals(pline_code)){
  11420. qjog.setBatchno(material_no.substring(0,9));
  11421. }
  11422. if("R".equals(pline_code)){
  11423. qjog.setProd_line("RZ1");
  11424. }
  11425. else if("S".equals(pline_code)){
  11426. qjog.setProd_line("SZ1");
  11427. }
  11428. else if("L".equals(pline_code)){
  11429. qjog.setProd_line("LT1");
  11430. }
  11431. mapper.insertQcmJudgeOperateLog(qjog);
  11432. conn = SqlSession.getConnection();
  11433. String callSql = "{call C_JH_ORD_REP.YTH_COIL_STAT(?,?,?,?,?,?,?,?,?,?) }";
  11434. cstmt = conn.prepareCall(callSql);
  11435. cstmt.setString(1, "");
  11436. cstmt.setString(2, "");
  11437. cstmt.setString(3, "");
  11438. cstmt.setString(4, "");
  11439. cstmt.setString(5, material_no);
  11440. cstmt.setString(6, pline_code);
  11441. cstmt.setString(7, "JJ");
  11442. cstmt.setString(8, "A");
  11443. cstmt.setString(9, "1");
  11444. cstmt.registerOutParameter(10, java.sql.Types.VARCHAR);
  11445. cstmt.execute();
  11446. conn.commit();
  11447. SqlSession.commit();
  11448. } catch (Exception e) {
  11449. throw new Exception(e.getMessage());
  11450. } finally {
  11451. try {
  11452. if (rs != null) {
  11453. rs.close();
  11454. }
  11455. /*if(conn != null){
  11456. conn.close();
  11457. }*/
  11458. } catch (Exception e) {
  11459. throw new Exception(e.getMessage());
  11460. }
  11461. try {
  11462. if (cstmt != null) {
  11463. cstmt.close();
  11464. }
  11465. } catch (Exception e) {
  11466. throw new Exception(e.getMessage());
  11467. }
  11468. }
  11469. conn.close();
  11470. SqlSession.close();
  11471. return cro;
  11472. }
  11473. private void judge_call(String aPlanStand,String aPlanPurpose,String aStand, String aPurpose, String aHIC,String aCollResult,String aJudgeReason, String aJudgeMemo , String aXJudgeMemo, String aMuliSteelInfo , String aSlabNos, String aOperator, String aProductName, String aRclStae,String sBH, String aApplyOrderno,String steelname) throws java.lang.Exception
  11474. {
  11475. Connection conn = null;
  11476. CallableStatement cstmt = null;
  11477. ResultSet rs = null;
  11478. try {
  11479. conn = SqlSession.getConnection();
  11480. String callSql = "{call GETJHTOMESPLAN.JudgeRec_Add@xgcx(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?) }";
  11481. cstmt = conn.prepareCall(callSql);
  11482. cstmt.setString(1, aPlanStand);
  11483. cstmt.setString(2, aPlanPurpose);
  11484. cstmt.setString(3, aStand);
  11485. cstmt.setString(4, aPurpose);
  11486. cstmt.setString(5, aHIC);
  11487. cstmt.setString(6, aCollResult);
  11488. cstmt.setString(7, aJudgeReason);
  11489. cstmt.setString(8, aJudgeMemo);
  11490. cstmt.setString(9, aXJudgeMemo);
  11491. cstmt.setString(10, aMuliSteelInfo);
  11492. cstmt.setString(11, aSlabNos);
  11493. cstmt.setString(12, aOperator);
  11494. cstmt.setString(13, aProductName);
  11495. cstmt.setString(14, aRclStae);
  11496. cstmt.setString(15, sBH);
  11497. cstmt.setString(16, aApplyOrderno);
  11498. cstmt.setString(17, steelname);
  11499. cstmt.registerOutParameter(18, java.sql.Types.INTEGER);
  11500. cstmt.execute();
  11501. if(cstmt.getString(18) != null){
  11502. if(cstmt.getString(18).equals("0")){
  11503. throw new java.lang.Exception("更新判定结果失败!");
  11504. }
  11505. }
  11506. } catch (Exception e) {
  11507. throw new Exception(e.getMessage());
  11508. } finally {
  11509. try {
  11510. if (rs != null) {
  11511. rs.close();
  11512. }
  11513. } catch (Exception e) {
  11514. throw new Exception(e.getMessage());
  11515. }
  11516. try {
  11517. if (cstmt != null) {
  11518. cstmt.close();
  11519. }
  11520. } catch (Exception e) {
  11521. throw new Exception(e.getMessage());
  11522. }
  11523. }
  11524. }
  11525. private void canceljudge_call(String aSlabNos,String design_key) throws java.lang.Exception
  11526. {
  11527. Connection conn = null;
  11528. CallableStatement cstmt = null;
  11529. ResultSet rs = null;
  11530. try {
  11531. conn = SqlSession.getConnection();
  11532. String callSql = "{call GETJHTOMESPLAN.JudgeRec_Del@xgcx(?,?,?) }";
  11533. cstmt = conn.prepareCall(callSql);
  11534. cstmt.setString(1, aSlabNos);
  11535. cstmt.setString(2, design_key);
  11536. cstmt.registerOutParameter(3, java.sql.Types.INTEGER);
  11537. cstmt.execute();
  11538. if(cstmt.getString(3) != null){
  11539. if(cstmt.getString(3).equals("0")){
  11540. throw new java.lang.Exception("更新判定结果失败!");
  11541. }
  11542. }
  11543. } catch (Exception e) {
  11544. throw new Exception(e.getMessage());
  11545. } finally {
  11546. try {
  11547. if (rs != null) {
  11548. rs.close();
  11549. }
  11550. } catch (Exception e) {
  11551. throw new Exception(e.getMessage());
  11552. }
  11553. try {
  11554. if (cstmt != null) {
  11555. cstmt.close();
  11556. }
  11557. } catch (Exception e) {
  11558. throw new Exception(e.getMessage());
  11559. }
  11560. }
  11561. }
  11562. /**
  11563. * 获取综合判定
  11564. */
  11565. public CoreReturnObject findZp(){
  11566. try {
  11567. String sql = "select ID_ SM_CD,NAME_ SM_CFNM from scm_base_info a where a.sort_code = '4014' and a.id_ in ('40140201','40140301','40140302','40140303')";
  11568. List<HashMap> list = mapper.query(sql);
  11569. cro.setResult(list);
  11570. } catch (Exception e) {
  11571. cro.setV_errCode(-1);
  11572. cro.setV_errMsg("获取综合判定代码失败" + e.getMessage());
  11573. logger.info(e.getMessage());
  11574. SqlSession.rollback();
  11575. }
  11576. SqlSession.close();
  11577. return cro;
  11578. }
  11579. /**
  11580. * 获取产品形态
  11581. */
  11582. public CoreReturnObject findCp(){
  11583. try {
  11584. String sql = "select ID_ SM_CD,NAME_ SM_CFNM from scm_base_info a where a.sort_code = '4916' and a.id_ not in ('491602')";
  11585. List<HashMap> list = mapper.query(sql);
  11586. cro.setResult(list);
  11587. } catch (Exception e) {
  11588. cro.setV_errCode(-1);
  11589. cro.setV_errMsg("获取产品形态代码失败" + e.getMessage());
  11590. logger.info(e.getMessage());
  11591. SqlSession.rollback();
  11592. }
  11593. SqlSession.close();
  11594. return cro;
  11595. }
  11596. /**
  11597. * 获取产品形态
  11598. */
  11599. public CoreReturnObject findCp1(String zj){
  11600. try {
  11601. String con = "";
  11602. if(zj.equals("40140201")){
  11603. con += " and id_ not in ('491609','491610')";
  11604. }else if(zj.equals("40140301")){
  11605. con += " and id_ in ('491609')";
  11606. }else if(zj.equals("40140302")){
  11607. con += " and id_ in ('491609')";
  11608. }else if(zj.equals("40140303")){
  11609. con += " and id_ in ('491610')";
  11610. }
  11611. String sql = "select ID_ SM_CD,NAME_ SM_CFNM from scm_base_info a where a.sort_code = '4916' and a.id_ not in ('491602') "+con+" order by id_ asc";
  11612. List<HashMap> list = mapper.query(sql);
  11613. cro.setResult(list);
  11614. } catch (Exception e) {
  11615. cro.setV_errCode(-1);
  11616. cro.setV_errMsg("获取产品形态代码失败" + e.getMessage());
  11617. logger.info(e.getMessage());
  11618. SqlSession.rollback();
  11619. }
  11620. SqlSession.close();
  11621. return cro;
  11622. }
  11623. /**
  11624. * 获取判定原因
  11625. */
  11626. public CoreReturnObject findReason(){
  11627. try {
  11628. String sql = "select ID_ SM_CD,NAME_ SM_CFNM from scm_base_info where sort_code='4013'";
  11629. List<HashMap> list = mapper.query(sql);
  11630. cro.setResult(list);
  11631. } catch (Exception e) {
  11632. cro.setV_errCode(-1);
  11633. cro.setV_errMsg("获取判定原因代码失败" + e.getMessage());
  11634. logger.info(e.getMessage());
  11635. SqlSession.rollback();
  11636. }
  11637. SqlSession.close();
  11638. return cro;
  11639. }
  11640. /**
  11641. * 获取判定原因
  11642. */
  11643. public CoreReturnObject findReason1(String zj){
  11644. try {
  11645. String con = "";
  11646. if(zj.equals("40140201")){
  11647. con += " and id_ in ('4013020102','4013020103','4013020104','4013020110','4013020111','4013020112','4013020113','4013020121','4013020122','4013020123',"
  11648. + " '4013020124','4013020125','4013020126','4013020127','4013020128','4013020130','4013020140','4013020180','4013020190','4013020191','4013020192','4013020193')";
  11649. }else if(zj.equals("40140301")){
  11650. con += " and id_ in ('4013030151','4013030161')";
  11651. }else if(zj.equals("40140302")){
  11652. con += " and id_ in ('4013030151','4013030222','4013030221','4013030223','4013030224','4013030225','4013030226','4013030228','4013030290')";
  11653. }else if(zj.equals("40140303")){
  11654. con += " and id_ in ('4013030361','4013030352','4013030351')";
  11655. }
  11656. String sql = "select ID_ SM_CD,NAME_ SM_CFNM from scm_base_info where sort_code='4013' "+con+"";
  11657. List<HashMap> list = mapper.query(sql);
  11658. cro.setResult(list);
  11659. } catch (Exception e) {
  11660. cro.setV_errCode(-1);
  11661. cro.setV_errMsg("获取判定原因代码失败" + e.getMessage());
  11662. logger.info(e.getMessage());
  11663. SqlSession.rollback();
  11664. }
  11665. SqlSession.close();
  11666. return cro;
  11667. }
  11668. /**
  11669. * 获取不可热送原因
  11670. */
  11671. @SuppressWarnings("rawtypes")
  11672. public CoreReturnObject findLg2_1(){
  11673. try {
  11674. String sql = "select ID_ SM_CD,NAME_ SM_CFNM from scm_base_info where sort_code='3212'";
  11675. List<HashMap> list = mapper.query(sql);
  11676. cro.setResult(list);
  11677. } catch (Exception e) {
  11678. cro.setV_errCode(-1);
  11679. cro.setV_errMsg("获取检验位置代码失败" + e.getMessage());
  11680. logger.info(e.getMessage());
  11681. SqlSession.rollback();
  11682. }
  11683. SqlSession.close();
  11684. return cro;
  11685. }
  11686. /**
  11687. * 获取直送原因
  11688. */
  11689. @SuppressWarnings("rawtypes")
  11690. public CoreReturnObject findLg2_2(){
  11691. try {
  11692. String sql = "select ID_ SM_CD,NAME_ SM_CFNM from scm_base_info where sort_code='3209'";
  11693. List<HashMap> list = mapper.query(sql);
  11694. cro.setResult(list);
  11695. } catch (Exception e) {
  11696. cro.setV_errCode(-1);
  11697. cro.setV_errMsg("获取检验位置代码失败" + e.getMessage());
  11698. logger.info(e.getMessage());
  11699. SqlSession.rollback();
  11700. }
  11701. SqlSession.close();
  11702. return cro;
  11703. }
  11704. @SuppressWarnings({ "unused", "rawtypes" })
  11705. public CoreReturnObject ex_remark(String username,ArrayList<String> material_no_list,String prod_line,String prod_type,String P_NO_HOT_REASON,String P_NO_DIRECT_REASON,String P_NO_CRAFT_STEELNAME,String p_remark) throws Exception{
  11706. try {
  11707. if(CollectionUtils.isEmpty(material_no_list)) {
  11708. throw new Exception("请选择要录入备注信息的产品序号!");
  11709. }
  11710. HashSet hashSet = new HashSet(material_no_list);
  11711. material_no_list.clear();
  11712. material_no_list.addAll(hashSet);
  11713. JSONArray ttmaps = new JSONArray();
  11714. for (String material_no : material_no_list) {
  11715. QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
  11716. qjog.setOperate_name(username);
  11717. qjog.setOperate_type("发送备注");
  11718. qjog.setParams(material_no);
  11719. qjog.setProd_line(prod_line);
  11720. qjog.setMemo(p_remark);
  11721. mapper.insertQcmJudgeOperateLog(qjog);
  11722. JSONObject jsobj1 = new JSONObject();
  11723. jsobj1.put("PROD_LINE", prod_line);
  11724. jsobj1.put("SLAB_NO",material_no);
  11725. jsobj1.put("PROD_TYPE",prod_type);
  11726. jsobj1.put("REMARK","1");
  11727. if(prod_line.equals("4001LGX")){
  11728. jsobj1.put("P_NO_HOT_REASON", P_NO_HOT_REASON);
  11729. jsobj1.put("P_NO_DIRECT_REASON",P_NO_DIRECT_REASON);
  11730. jsobj1.put("P_NO_CRAFT_STEELNAME",P_NO_CRAFT_STEELNAME);
  11731. jsobj1.put("REMARK",p_remark);
  11732. jsobj1.put("P_REG_NM",username);
  11733. }
  11734. ttmaps.add(jsobj1);
  11735. }
  11736. String url = "http://10.70.0.237:9000/LgdoChemJudgeService?wsdl";
  11737. String result = QcmJhyElementsServiceImpl.callWebserviceASMX(url,"SlabDetailInput",JSON.toJSONString(ttmaps));
  11738. JSONObject jo = JSONObject.parseObject(result);
  11739. if(jo.get("code").toString().equals("1")){
  11740. throw new Exception("备注录入失败!");
  11741. }
  11742. SqlSession.commit();
  11743. } catch (Exception e) {
  11744. SqlSession.rollback();
  11745. cro.setV_errCode(-1);
  11746. cro.setV_errMsg("备注录入失败!"+e.getMessage());
  11747. }
  11748. SqlSession.close();
  11749. return cro;
  11750. }
  11751. @SuppressWarnings({ "unused", "rawtypes" })
  11752. public CoreReturnObject ex_remark1(String username,ArrayList<String> material_no_list,ArrayList<String> lock_id,String prod_line,String prod_type,String P_NO_HOT_REASON,String P_NO_DIRECT_REASON,String P_NO_CRAFT_STEELNAME,String p_remark) throws Exception{
  11753. try {
  11754. if(CollectionUtils.isEmpty(material_no_list)) {
  11755. throw new Exception("请选择要录入备注信息的产品序号!");
  11756. }
  11757. HashSet hashSet = new HashSet(material_no_list);
  11758. HashSet hashSet1 = new HashSet(lock_id);
  11759. material_no_list.clear();
  11760. material_no_list.addAll(hashSet);
  11761. lock_id.clear();
  11762. lock_id.addAll(hashSet1);
  11763. JSONArray ttmaps = new JSONArray();
  11764. QcmJudgeUltimate qju = new QcmJudgeUltimate();
  11765. for(String utm_id :lock_id){
  11766. qju.setUtm_id(utm_id);
  11767. qju.setUtm_memo(p_remark);
  11768. mapper.UpdateQcmJudgeUltimate(qju);
  11769. }
  11770. for (String material_no : material_no_list) {
  11771. QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
  11772. qjog.setOperate_name(username);
  11773. qjog.setOperate_type("发送备注");
  11774. qjog.setParams(material_no);
  11775. qjog.setProd_line(prod_line);
  11776. qjog.setMemo(p_remark);
  11777. mapper.insertQcmJudgeOperateLog(qjog);
  11778. JSONObject jsobj1 = new JSONObject();
  11779. jsobj1.put("PROD_LINE", prod_line);
  11780. jsobj1.put("SLAB_NO",material_no);
  11781. jsobj1.put("PROD_TYPE",prod_type);
  11782. jsobj1.put("REMARK","1");
  11783. if(prod_line.equals("4001LGX")){
  11784. jsobj1.put("P_NO_HOT_REASON", P_NO_HOT_REASON);
  11785. jsobj1.put("P_NO_DIRECT_REASON",P_NO_DIRECT_REASON);
  11786. jsobj1.put("P_NO_CRAFT_STEELNAME",P_NO_CRAFT_STEELNAME);
  11787. jsobj1.put("REMARK",p_remark);
  11788. jsobj1.put("P_REG_NM",username);
  11789. }
  11790. ttmaps.add(jsobj1);
  11791. }
  11792. String url = "http://10.70.0.237:9000/LgdoChemJudgeService?wsdl";
  11793. String result = QcmJhyElementsServiceImpl.callWebserviceASMX(url,"SlabDetailInput",JSON.toJSONString(ttmaps));
  11794. JSONObject jo = JSONObject.parseObject(result);
  11795. if(jo.get("code").toString().equals("1")){
  11796. throw new Exception("备注录入失败!");
  11797. }
  11798. SqlSession.commit();
  11799. } catch (Exception e) {
  11800. SqlSession.rollback();
  11801. cro.setV_errCode(-1);
  11802. cro.setV_errMsg("备注录入失败!"+e.getMessage());
  11803. }
  11804. SqlSession.close();
  11805. return cro;
  11806. }
  11807. /*
  11808. * @desc coiljudge_status_call
  11809. * @param pline 产线'RZ1' 'SZ1' 'LT1'
  11810. * @param pcoilno 钢卷号
  11811. * @param chemrs 成分判定结果 '1'合格 '2'不合格
  11812. * @param qltyrs 材质判定结果 '1'合格 '2'不合格
  11813. * @param sizers 尺寸判定结果 '1'合格 '2'不合格
  11814. * @param exshrs 外观判定结果 '1'合格 '2'不合格,'3'次品 '4'废品
  11815. * @param totrs 综合判定
  11816. * @param fb_yn 是否封闭
  11817. * @param fb_reason 封闭原因
  11818. * @return void
  11819. *
  11820. * @date 2022/8/24 17:22
  11821. * @author Ljy
  11822. */
  11823. public void coiljudge_status_call(
  11824. String pline
  11825. , String pcoilno
  11826. , String chemrs
  11827. , String qltyrs
  11828. , String sizers
  11829. , String exshrs
  11830. , String totrs
  11831. , String fb_yn
  11832. , String fb_reason,String sf_lv) throws java.lang.Exception {
  11833. Connection conn = null;
  11834. CallableStatement cstmt = null;
  11835. ResultSet rs = null;
  11836. try {
  11837. conn = SqlSession.getConnection();
  11838. String callSql = "{call COILJUDGE_STATUSNEW(?,?,?,?,?,?,?,?,?,?,?,?) }";
  11839. cstmt = conn.prepareCall(callSql);
  11840. cstmt.setString(1, StringUtils.isBlank(pline) ? "" : pline);
  11841. cstmt.setString(2, StringUtils.isBlank(pcoilno) ? "" : pcoilno);
  11842. cstmt.setString(3, StringUtils.isBlank(chemrs) ? "" : chemrs);
  11843. cstmt.setString(4, StringUtils.isBlank(qltyrs) ? "" : qltyrs);
  11844. cstmt.setString(5, StringUtils.isBlank(sizers) ? "" : sizers);
  11845. cstmt.setString(6, StringUtils.isBlank(exshrs) ? "" : exshrs);
  11846. cstmt.setString(7, StringUtils.isBlank(totrs) ? "" : totrs);
  11847. cstmt.setString(8, StringUtils.isBlank(fb_yn) ? "" : fb_yn);
  11848. cstmt.setString(9, StringUtils.isBlank(fb_reason) ? "" : fb_reason);
  11849. cstmt.setString(10, StringUtils.isBlank(sf_lv) ? "" : sf_lv);
  11850. cstmt.registerOutParameter(11, java.sql.Types.INTEGER);
  11851. cstmt.registerOutParameter(12, java.sql.Types.VARCHAR);
  11852. cstmt.execute();
  11853. if(cstmt.getString(11) != null){
  11854. if(cstmt.getString(11).equals("2")){
  11855. throw new java.lang.Exception(cstmt.getString(12).toString());
  11856. }
  11857. }
  11858. } catch (Exception e) {
  11859. throw new Exception(e.getMessage());
  11860. } finally {
  11861. try {
  11862. if (rs != null) {
  11863. rs.close();
  11864. }
  11865. } catch (Exception e) {
  11866. throw new Exception(e.getMessage());
  11867. }
  11868. try {
  11869. if (cstmt != null) {
  11870. cstmt.close();
  11871. }
  11872. } catch (Exception e) {
  11873. throw new Exception(e.getMessage());
  11874. }
  11875. }
  11876. }
  11877. /**
  11878. * 查询物料明细信息 根据物料号 需增加炼钢牌号
  11879. * @return
  11880. */
  11881. @SuppressWarnings("rawtypes")
  11882. public List<HashMap> doQueryMaterialInfoZhb2(String material_no) {
  11883. String swhere = "";
  11884. String swhere1 = "";
  11885. if (!SqlJoint.IsNullOrSpace(material_no)) { //产品序号
  11886. swhere += " and a.billetid = '"+material_no+"'";
  11887. }
  11888. String sql = "select a.RCL_STATE ht_no, 'HB1' PLINE_CODE,C2N@xgcx('4001HB1') PLINE_NAME,STOVENO HEAT_NO,to_char((SELECT substr(MAX(BILLETID),1,12)||'0' FROM zyhb_plandetailofplate@xgcx where MOTHERSLAB = MOTHERBOARDNUMBER)) BOARD_NO, a.ROLLNUMBER batchno, a.PLANNUMBER plan_no, a.BILLETID material_no, "
  11889. + " case when allotorderform is null then planorderform else allotorderform end design_key,planorderform PLANORDERNO,allotorderform ORDERNO, "
  11890. + " PLY thick, a.WIDTH, a.LENGTH,THEORYWEIGHT weight, (select name_ from scm_base_info@xgcx where id_ = CUTSIDESTATE) CUTSIDESTATE, "
  11891. + " (select name_ from scm_base_info@xgcx where id_ = ROLE) FIXSIZE, PRODUCETIME, b.sizeid,(select BIGSHOPSIGN from kch_storagelist@xgcx "
  11892. + " where BILLETID = (select BILLETID from zyhb_planofmotherplate@xgcx where MOTHERPLATEID = A.MOTHERBOARDNUMBER)) grade_code, "
  11893. + " (select BIGSHOPSIGN from kch_storagelist@xgcx where BILLETID = (select BILLETID from zyhb_planofmotherplate@xgcx "
  11894. + " where MOTHERPLATEID = A.MOTHERBOARDNUMBER)) grade_name,b.BILLETID_jy INSPECTION_LOT, a.determinantcardnumber steel_code, a.determinantcardnumber steel_name , t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, "
  11895. + " t2.PURPOSEID prod_code, C2N@xgcx(t2.PURPOSEID) prod_name,t2.PSRNO psc,t2.DEV_SPEC_CD psc_desc,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC from kch_turnofflist@xgcx a "
  11896. + " left join zj_result_all@xgcx b on a.BILLETID = b.BILLETID join sel_pactdetail_new@xgcx t2 on ((a.allotorderform = t2.ORDERNO AND A.allotorderform IS NOT NULL) OR (A.allotorderform IS NULL AND a.planorderform = t2.ORDERNO)) where 1=1 "+swhere1+swhere+" "
  11897. + " union all "
  11898. + " select RCL_STATE ht_no, 'ZB1' PLINE_CODE,C2N@xgcx('4001ZB1') PLINE_NAME,a.STOVENO HEAT_NO,to_char((SELECT substr(MAX(BILLETID),1,12)||'0' FROM mb_plandetailofplate@xgcx where MOTHERPLATEID = MOTHERBOARDNUMBER)) BOARD_NO,ROLLNUMBER batchno, PLANNO plan_no, a.BILLETID material_no, case when a.orderno is null then planorderno else a.orderno end DESIGN_KEY, "
  11899. + " A.PLANORDERNO,A.ORDERNO,a.PLY thick, a.WIDTH, "
  11900. + " a.LENGTH, a.THEORYWEIGHT weight, (select name_ from scm_base_info@xgcx where id_ = CUTSIDESTATE) CUTSIDESTATE, (select name_ from scm_base_info@xgcx where id_ = RuLE) FIXSIZE, "
  11901. + " PTIME PRODUCETIME, b.sizeid,(select BIGSHOPSIGN from kcz_storagelist@xgcx where BILLETID = (select BILLETID "
  11902. + " from mb_planofmotherplate@xgcx where MOTHERPLATEID = A.MOTHERBOARDNUMBER)) GRADE_CODE, (select BIGSHOPSIGN "
  11903. + " from kcz_storagelist@xgcx where BILLETID = (select BILLETID from mb_planofmotherplate@xgcx "
  11904. + " where MOTHERPLATEID = A.MOTHERBOARDNUMBER)) GRADE_NAME,b.BILLETID_jy INSPECTION_LOT, a.determinantcardnumber steel_code, a.determinantcardnumber steel_name , t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, "
  11905. + " t2.PURPOSEID prod_code, C2N@xgcx(t2.PURPOSEID) prod_name,t2.PSRNO psc,t2.DEV_SPEC_CD psc_desc,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC from kcz_turnofflist@xgcx a left join zj_result_all@xgcx b on a.BILLETID = b.BILLETID join sel_pactdetail_new@xgcx t2 on ((a.ORDERNO = t2.ORDERNO AND A.ORDERNO IS NOT NULL) OR (A.ORDERNO IS NULL AND a.PLANORDERNO = t2.ORDERNO)) "
  11906. + " where 1=1 "+swhere1+swhere+" ";
  11907. try {
  11908. System.out.print(sql);
  11909. List<HashMap> list = mapper.query(sql);
  11910. return list;
  11911. } catch (Exception ex) {
  11912. ex.printStackTrace();
  11913. }
  11914. return null;
  11915. }
  11916. /**
  11917. * 查询物料明细信息 根据物料号 需增加炼钢牌号
  11918. * @return
  11919. *//*
  11920. @SuppressWarnings("rawtypes")
  11921. public List<HashMap> doQueryMaterialInfoZhb1(String material_no) {
  11922. String swhere = "";
  11923. String swhere1 = "";
  11924. if (!SqlJoint.IsNullOrSpace(material_no)) { //产品序号
  11925. swhere += " and a.billetid = '"+material_no+"'";
  11926. }
  11927. String sql = "select a.RCL_STATE ht_no, 'HB1' PLINE_CODE,C2N@xgcx('4001HB1') PLINE_NAME,STOVENO HEAT_NO,to_char((SELECT substr(MAX(BILLETID),1,12)||'0' FROM zyhb_plandetailofplate@xgcx where MOTHERSLAB = MOTHERBOARDNUMBER)) BOARD_NO, a.ROLLNUMBER batchno, a.PLANNUMBER plan_no, a.BILLETID material_no, "
  11928. + " case when allotorderform is null then planorderform else allotorderform end design_key,planorderform PLANORDERNO,allotorderform ORDERNO, "
  11929. + " PLY thick, a.WIDTH, a.LENGTH,THEORYWEIGHT weight, (select name_ from scm_base_info@xgcx where id_ = CUTSIDESTATE) CUTSIDESTATE, "
  11930. + " (select name_ from scm_base_info@xgcx where id_ = ROLE) FIXSIZE, PRODUCETIME, b.sizeid,(select BIGSHOPSIGN from kch_storagelist@xgcx "
  11931. + " where BILLETID = (select BILLETID from zyhb_planofmotherplate@xgcx where MOTHERPLATEID = A.MOTHERBOARDNUMBER)) grade_code, "
  11932. + " (select BIGSHOPSIGN from kch_storagelist@xgcx where BILLETID = (select BILLETID from zyhb_planofmotherplate@xgcx "
  11933. + " where MOTHERPLATEID = A.MOTHERBOARDNUMBER)) grade_name,b.BILLETID_jy INSPECTION_LOT, t2.STEELCODE steel_code, C2N@xgcx(t2.STEELCODE)steel_name , t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, "
  11934. + " t2.PURPOSEID prod_code, C2N@xgcx(t2.PURPOSEID) prod_name,t2.PSRNO psc,t2.DEV_SPEC_CD psc_desc,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC from kch_turnofflist@xgcx a "
  11935. + " left join zj_result_all@xgcx b on a.BILLETID = b.BILLETID join sel_pactdetail_new@xgcx t2 on a.planorderform = t2.ORDERNO where 1=1 "+swhere1+swhere+" "
  11936. + " union all "
  11937. + " select RCL_STATE ht_no, 'ZB1' PLINE_CODE,C2N@xgcx('4001ZB1') PLINE_NAME,a.STOVENO HEAT_NO,to_char((SELECT substr(MAX(BILLETID),1,12)||'0' FROM mb_plandetailofplate@xgcx where MOTHERPLATEID = MOTHERBOARDNUMBER)) BOARD_NO,ROLLNUMBER batchno, PLANNO plan_no, a.BILLETID material_no, case when a.orderno is null then planorderno else a.orderno end DESIGN_KEY, "
  11938. + " A.PLANORDERNO,A.ORDERNO,a.PLY thick, a.WIDTH, "
  11939. + " a.LENGTH, a.THEORYWEIGHT weight, (select name_ from scm_base_info@xgcx where id_ = CUTSIDESTATE) CUTSIDESTATE, (select name_ from scm_base_info@xgcx where id_ = RuLE) FIXSIZE, "
  11940. + " PTIME PRODUCETIME, b.sizeid,(select BIGSHOPSIGN from kcz_storagelist@xgcx where BILLETID = (select BILLETID "
  11941. + " from mb_planofmotherplate@xgcx where MOTHERPLATEID = A.MOTHERBOARDNUMBER)) GRADE_CODE, (select BIGSHOPSIGN "
  11942. + " from kcz_storagelist@xgcx where BILLETID = (select BILLETID from mb_planofmotherplate@xgcx "
  11943. + " where MOTHERPLATEID = A.MOTHERBOARDNUMBER)) GRADE_NAME,b.BILLETID_jy INSPECTION_LOT, t2.STEELCODE steel_code, C2N@xgcx(t2.STEELCODE)steel_name , t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, "
  11944. + " t2.PURPOSEID prod_code, C2N@xgcx(t2.PURPOSEID) prod_name,t2.PSRNO psc,t2.DEV_SPEC_CD psc_desc,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC from kcz_turnofflist@xgcx a left join zj_result_all@xgcx b on a.BILLETID = b.BILLETID join sel_pactdetail_new@xgcx t2 on a.PLANORDERNO = t2.ORDERNO "
  11945. + " where 1=1 "+swhere1+swhere+" ";
  11946. try {
  11947. System.out.print(sql);
  11948. List<HashMap> list = mapper.query(sql);
  11949. return list;
  11950. } catch (Exception ex) {
  11951. ex.printStackTrace();
  11952. }
  11953. return null;
  11954. }*/
  11955. /**
  11956. * 查询物料明细信息 根据物料号 需增加炼钢牌号
  11957. * @return
  11958. */
  11959. @SuppressWarnings("rawtypes")
  11960. public List<HashMap> doQueryMaterialInfoZhb(String material_no) {
  11961. String swhere = "";
  11962. String swhere1 = "";
  11963. if (!SqlJoint.IsNullOrSpace(material_no)) { //产品序号
  11964. swhere += " and a.billetid = '"+material_no+"'";
  11965. }
  11966. String sql = "select a.RCL_STATE ht_no, 'HB1' PLINE_CODE,C2N@xgcx('4001HB1') PLINE_NAME,STOVENO HEAT_NO,to_char((SELECT substr(MAX(BILLETID),1,12)||'0' FROM zyhb_plandetailofplate@xgcx where MOTHERSLAB = MOTHERBOARDNUMBER)) BOARD_NO, a.ROLLNUMBER batchno, a.PLANNUMBER plan_no, a.BILLETID material_no, "
  11967. + " case when allotorderform is null then planorderform else allotorderform end design_key,planorderform PLANORDERNO,allotorderform ORDERNO, "
  11968. + " PLY thick, a.WIDTH, a.LENGTH,THEORYWEIGHT weight, (select name_ from scm_base_info@xgcx where id_ = CUTSIDESTATE) CUTSIDESTATE, "
  11969. + " (select name_ from scm_base_info@xgcx where id_ = ROLE) FIXSIZE, PRODUCETIME, b.sizeid,(select BIGSHOPSIGN from kch_storagelist@xgcx "
  11970. + " where BILLETID = (select BILLETID from zyhb_planofmotherplate@xgcx where MOTHERPLATEID = A.MOTHERBOARDNUMBER)) grade_code, "
  11971. + " (select BIGSHOPSIGN from kch_storagelist@xgcx where BILLETID = (select BILLETID from zyhb_planofmotherplate@xgcx "
  11972. + " where MOTHERPLATEID = A.MOTHERBOARDNUMBER)) grade_name,b.BILLETID_jy INSPECTION_LOT, t2.STEELCODE steel_code, C2N@xgcx(t2.STEELCODE)steel_name , t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, "
  11973. + " t2.PURPOSEID prod_code, C2N@xgcx(t2.PURPOSEID) prod_name,t2.PSRNO psc,t2.DEV_SPEC_CD psc_desc,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC from kch_turnofflist@xgcx a "
  11974. + " left join zj_result_all@xgcx b on a.BILLETID = b.BILLETID join sel_pactdetail_new@xgcx t2 on a.allotorderform = t2.ORDERNO where 1=1 "+swhere1+swhere+" AND A.BILLETID LIKE 'H%' "
  11975. + " union all "
  11976. + " select RCL_STATE ht_no, 'ZB1' PLINE_CODE,C2N@xgcx('4001ZB1') PLINE_NAME,a.STOVENO HEAT_NO,to_char((SELECT substr(MAX(BILLETID),1,12)||'0' FROM mb_plandetailofplate@xgcx where MOTHERPLATEID = MOTHERBOARDNUMBER)) BOARD_NO,ROLLNUMBER batchno, PLANNO plan_no, a.BILLETID material_no, case when a.orderno is null then planorderno else a.orderno end DESIGN_KEY, "
  11977. + " A.PLANORDERNO,A.ORDERNO,a.PLY thick, a.WIDTH, "
  11978. + " a.LENGTH, a.THEORYWEIGHT weight, (select name_ from scm_base_info@xgcx where id_ = CUTSIDESTATE) CUTSIDESTATE, (select name_ from scm_base_info@xgcx where id_ = RuLE) FIXSIZE, "
  11979. + " PTIME PRODUCETIME, b.sizeid,(select BIGSHOPSIGN from kcz_storagelist@xgcx where BILLETID = (select BILLETID "
  11980. + " from mb_planofmotherplate@xgcx where MOTHERPLATEID = A.MOTHERBOARDNUMBER)) GRADE_CODE, (select BIGSHOPSIGN "
  11981. + " from kcz_storagelist@xgcx where BILLETID = (select BILLETID from mb_planofmotherplate@xgcx "
  11982. + " where MOTHERPLATEID = A.MOTHERBOARDNUMBER)) GRADE_NAME,b.BILLETID_jy INSPECTION_LOT, t2.STEELCODE steel_code, C2N@xgcx(t2.STEELCODE)steel_name , t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, "
  11983. + " t2.PURPOSEID prod_code, C2N@xgcx(t2.PURPOSEID) prod_name,t2.PSRNO psc,t2.DEV_SPEC_CD psc_desc,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC from kcz_turnofflist@xgcx a left join zj_result_all@xgcx b on a.BILLETID = b.BILLETID join sel_pactdetail_new@xgcx t2 on a.ORDERNO = t2.ORDERNO "
  11984. + " where 1=1 "+swhere1+swhere+" AND A.BILLETID LIKE 'Z%' ";
  11985. try {
  11986. System.out.print(sql);
  11987. List<HashMap> list = mapper.query(sql);
  11988. if(list==null || list.size()<=0){
  11989. sql = "select a.RCL_STATE ht_no, 'HB1' PLINE_CODE,C2N@xgcx('4001HB1') PLINE_NAME,STOVENO HEAT_NO,to_char((SELECT substr(MAX(BILLETID),1,12)||'0' FROM zyhb_plandetailofplate@xgcx where MOTHERSLAB = MOTHERBOARDNUMBER)) BOARD_NO, a.ROLLNUMBER batchno, a.PLANNUMBER plan_no, a.BILLETID material_no, "
  11990. + " case when allotorderform is null then planorderform else allotorderform end design_key,planorderform PLANORDERNO,allotorderform ORDERNO, "
  11991. + " PLY thick, a.WIDTH, a.LENGTH,THEORYWEIGHT weight, (select name_ from scm_base_info@xgcx where id_ = CUTSIDESTATE) CUTSIDESTATE, "
  11992. + " (select name_ from scm_base_info@xgcx where id_ = ROLE) FIXSIZE, PRODUCETIME, b.sizeid,(select BIGSHOPSIGN from kch_storagelist@xgcx "
  11993. + " where BILLETID = (select BILLETID from zyhb_planofmotherplate@xgcx where MOTHERPLATEID = A.MOTHERBOARDNUMBER)) grade_code, "
  11994. + " (select BIGSHOPSIGN from kch_storagelist@xgcx where BILLETID = (select BILLETID from zyhb_planofmotherplate@xgcx "
  11995. + " where MOTHERPLATEID = A.MOTHERBOARDNUMBER)) grade_name,b.BILLETID_jy INSPECTION_LOT, t2.STEELCODE steel_code, C2N@xgcx(t2.STEELCODE)steel_name , t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, "
  11996. + " t2.PURPOSEID prod_code, C2N@xgcx(t2.PURPOSEID) prod_name,t2.PSRNO psc,t2.DEV_SPEC_CD psc_desc,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC from kch_turnofflist@xgcx a "
  11997. + " left join zj_result_all@xgcx b on a.BILLETID = b.BILLETID join sel_pactdetail_new@xgcx t2 on a.allotorderform = t2.ORDERNO where 1=1 "+swhere1+swhere+" "
  11998. + " union all "
  11999. + " select RCL_STATE ht_no, 'ZB1' PLINE_CODE,C2N@xgcx('4001ZB1') PLINE_NAME,a.STOVENO HEAT_NO,to_char((SELECT substr(MAX(BILLETID),1,12)||'0' FROM mb_plandetailofplate@xgcx where MOTHERPLATEID = MOTHERBOARDNUMBER)) BOARD_NO,ROLLNUMBER batchno, PLANNO plan_no, a.BILLETID material_no, case when a.orderno is null then planorderno else a.orderno end DESIGN_KEY, "
  12000. + " A.PLANORDERNO,A.ORDERNO,a.PLY thick, a.WIDTH, "
  12001. + " a.LENGTH, a.THEORYWEIGHT weight, (select name_ from scm_base_info@xgcx where id_ = CUTSIDESTATE) CUTSIDESTATE, (select name_ from scm_base_info@xgcx where id_ = RuLE) FIXSIZE, "
  12002. + " PTIME PRODUCETIME, b.sizeid,(select BIGSHOPSIGN from kcz_storagelist@xgcx where BILLETID = (select BILLETID "
  12003. + " from mb_planofmotherplate@xgcx where MOTHERPLATEID = A.MOTHERBOARDNUMBER)) GRADE_CODE, (select BIGSHOPSIGN "
  12004. + " from kcz_storagelist@xgcx where BILLETID = (select BILLETID from mb_planofmotherplate@xgcx "
  12005. + " where MOTHERPLATEID = A.MOTHERBOARDNUMBER)) GRADE_NAME,b.BILLETID_jy INSPECTION_LOT, t2.STEELCODE steel_code, C2N@xgcx(t2.STEELCODE)steel_name , t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, "
  12006. + " t2.PURPOSEID prod_code, C2N@xgcx(t2.PURPOSEID) prod_name,t2.PSRNO psc,t2.DEV_SPEC_CD psc_desc,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC from kcz_turnofflist@xgcx a left join zj_result_all@xgcx b on a.BILLETID = b.BILLETID join sel_pactdetail_new@xgcx t2 on a.ORDERNO = t2.ORDERNO "
  12007. + " where 1=1 "+swhere1+swhere+" ";
  12008. list = mapper.query(sql);
  12009. }
  12010. return list;
  12011. } catch (Exception ex) {
  12012. ex.printStackTrace();
  12013. }
  12014. return null;
  12015. }
  12016. /**
  12017. * 查询物料明细信息 根据物料号 需增加炼钢牌号
  12018. * @return
  12019. */
  12020. @SuppressWarnings("rawtypes")
  12021. public List<HashMap> doQueryMaterialInfoBX(String material_no) {
  12022. /* String swhere = "";
  12023. String swhere1 = "";
  12024. if (!SqlJoint.IsNullOrSpace(material_no)) { //产品序号
  12025. swhere += " and material_no = '"+material_no+"'";
  12026. }*/
  12027. String sql =
  12028. "select t1.*,t2.STEELCODE steel_code,C2N@xgcx(t2.STEELCODE) steel_name,t2.USEDSTAND std_code, "
  12029. + " C2N@xgcx(t2.USEDSTAND) std_name,t2.PURPOSEID prod_code,C2N@xgcx(t2.PURPOSEID) prod_name,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC, "
  12030. + " t2.PSRNO psc, t2.DEV_SPEC_CD psc_desc from (select (select rcl_state from kch_turnofflist@xgcx "
  12031. + " where BILLETID like 'H%' and billetid = a.slabno) ht_no, 'HB1' PLINE_CODE,C2N@xgcx('4001HB1') PLINE_NAME, TO_CHAR(a.heatno) heat_no, TO_CHAR(substr(A.BILLETID, 1, 12) || '0') BOARD_NO,batchno, a.taskno plan_no, "
  12032. + " a.slabno material_no, a.ORDERID design_key, a.thick, a.width, a.len length, a.weight, "
  12033. + " (select name_ from scm_base_info where id_ = a.cutsizestate) CUTSIDESTATE, (select name_ from scm_base_info where id_ = a.SIZEMODE) FIXSIZE, "
  12034. + " a.maketime PRODUCETIME, b.sizeid, b.SURFACEID surface_id, c.bigshopsign grade_code, c.bigshopsign grade_name, b.BILLETID_jy INSPECTION_LOT "
  12035. + " from zyhb_plandetailofplate@xgcx a,zj_result_all@xgcx b,kch_storagelist@xgcx c where a.SLABNO = b.BILLETID "
  12036. + " and a.billetid = c.billetid and a.slabno = '"+material_no+"') T1 left join sel_pactdetail@xgcx t2 "
  12037. + " on t1.design_key = t2.ORDERNO where 1 = 1 "
  12038. +" UNION ALL "
  12039. +"select t1.*,t2.STEELCODE steel_code,C2N@xgcx(t2.STEELCODE) steel_name,t2.USEDSTAND std_code, "
  12040. + " C2N@xgcx(t2.USEDSTAND) std_name,t2.PURPOSEID prod_code,C2N@xgcx(t2.PURPOSEID) prod_name,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC, "
  12041. + " t2.PSRNO psc, t2.DEV_SPEC_CD psc_desc from (select (select rcl_state from kch_turnofflist@xgcx "
  12042. + " where BILLETID like 'H%' and billetid = a.slabno) ht_no, 'HB1' PLINE_CODE,C2N@xgcx('4001HB1') PLINE_NAME, TO_CHAR(a.heatno) heat_no, TO_CHAR(substr(A.BILLETID, 1, 12) || '0') BOARD_NO,batchno, a.taskno plan_no, "
  12043. + " a.slabno material_no, a.ORDERID design_key, a.thick, a.width, a.len length, a.weight, "
  12044. + " (select name_ from scm_base_info where id_ = a.cutsizestate) CUTSIDESTATE, (select name_ from scm_base_info where id_ = a.SIZEMODE) FIXSIZE, "
  12045. + " a.maketime PRODUCETIME, b.sizeid, b.SURFACEID surface_id, c.bigshopsign grade_code, c.bigshopsign grade_name, b.BILLETID_jy INSPECTION_LOT "
  12046. + " from ZYHB_PLANDETAILOFPLATE_ZJNEW@xgcx a,zj_result_all@xgcx b,kch_storagelist@xgcx c where a.SLABNO = b.BILLETID "
  12047. + " and a.billetid = c.billetid and a.slabno = '"+material_no+"') T1 left join sel_pactdetail@xgcx t2 "
  12048. + " on t1.design_key = t2.ORDERNO where 1 = 1";
  12049. System.out.print(sql);
  12050. List<HashMap> list = mapper.query(sql);
  12051. if(list.size() == 0)
  12052. {
  12053. sql = " select t1.*, t2.STEELCODE steel_code, "
  12054. + " C2N@xgcx(t2.STEELCODE) steel_name, t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, t2.PURPOSEID prod_code, "
  12055. + " C2N@xgcx(t2.PURPOSEID) prod_name,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC,t2.PSRNO psc,t2.DEV_SPEC_CD psc_desc "
  12056. + " from (select (select rcl_state "
  12057. + " from kcZ_turnofflist@xgcx where BILLETID like 'Z%' and billetid = a.PRODUCTNO) ht_no, 'ZB1' PLINE_CODE,C2N@xgcx('4001ZB1') PLINE_NAME,a.heatno heat_no, substr(A.BILLETID, 1, 12) || '0' BOARD_NO,A.batchno, a.taskno plan_no, a.PRODUCTNO material_no, a.ORDERNO design_key, "
  12058. + " a.HEIGHT THICK, a.width,a.lenGTH, a.weight,(select name_ from scm_base_info where id_ = a.CUTSTYLE) CUTSIDESTATE, "
  12059. + " (select name_ from scm_base_info where id_ = a.SIZESTYLE) FIXSIZE,a.maketime PRODUCETIME, b.sizeid,b.SURFACEID surface_id, "
  12060. + " c.bigshopsign grade_code, c.bigshopsign grade_name, b.BILLETID_jy INSPECTION_LOT from (select * from mb_plandetailofplate@xgcx union all select * from mb_plandetailofplate_zjnew@xgcx) a, zj_result_all@xgcx b, "
  12061. + " kcZ_storagelist@xgcx c where a.PRODUCTNO = b.BILLETID and a.Billetid = c.billetid and a.PRODUCTNO = '"+material_no+"') T1 left join sel_pactdetail@xgcx t2 "
  12062. + " on t1.design_key = t2.ORDERNO where 1=1 ";
  12063. System.out.print(sql);
  12064. list = mapper.query(sql);
  12065. if(list.size() == 0){
  12066. sql = " select t1.*, t2.STEELCODE steel_code, C2N@xgcx(t2.STEELCODE)steel_name , t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, "
  12067. + " t2.PURPOSEID prod_code, C2N@xgcx(t2.PURPOSEID) prod_name,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC,t2.PSRNO psc,t2.DEV_SPEC_CD psc_desc from (select '' ht_no,CASE WHEN a.PLD = '4001GX1' THEN 'GX1' WHEN A.PLD = '4001GX2' THEN 'GX2' WHEN A.PLD = '4001BC2' THEN 'BC2' END PLINE_CODE,C2N@xgcx(a.PLD) PLINE_NAME,substr(a.STOVENO,1,10) HEAT_NO,a.STOVENO BOARD_NO,ROLLNUMBER batchno, PLANNO plan_no,a.BILLETID material_no, "
  12068. + " ORDERNO DESIGN_KEY, a.PLY thick, "
  12069. + " a.WIDTH, a.LENGTH, a.THEORYWEIGHT weight, '' CUTSIDESTATE, (select name_ from scm_base_info@xgcx where id_ = RuLE) FIXSIZE, "
  12070. + " PTIME PRODUCETIME, b.sizeid,b.SURFACEID surface_id,C.STEELCODE GRADE_CODE, C.STEELCODE GRADE_NAME,b.BILLETID_jy INSPECTION_LOT from kcx_turnofflist@xgcx a left join zj_result_all@xgcx b on a.BILLETID = b.BILLETID LEFT JOIN kcx_stufflist@xgcx C ON C.STOVENO = A.STOVENO"
  12071. + " where 1=1 and a.BILLETID = '"+material_no+"')T1 left join sel_pactdetail@xgcx t2 on t1.design_key = t2.ORDERNO where 1=1 ";
  12072. System.out.print(sql);
  12073. list = mapper.query(sql);
  12074. }
  12075. }
  12076. try {
  12077. return list;
  12078. } catch (Exception ex) {
  12079. ex.printStackTrace();
  12080. }
  12081. SqlSession.close();
  12082. return null;
  12083. }
  12084. @SuppressWarnings("rawtypes")
  12085. public List<HashMap> doQueryMaterialInfoJ(String material_no) {
  12086. String swhere = "";
  12087. String swhere1 = "";
  12088. if (!SqlJoint.IsNullOrSpace(material_no)) { //产品序号
  12089. swhere += " and material_no = '"+material_no+"'";
  12090. }
  12091. String sql = "select * from (select ''ht_no,'RZ1' PLINE_CODE,'热轧线' PLINE_NAME,SUBSTR(T.SLAB_NO, 1, 10) HEAT_NO,T.SLAB_NO BOARD_NO,SUBSTR(t.OLD_SAMPL_NO, 1, 10) batchno,t1.ROLL_MANA_NO plan_no, T.OLD_SAMPL_NO material_no, T.ORD_NO || T.ORD_SEQ DESIGN_KEY, (select PSC from tbb01_ord_prod F WHERE F.ORD_NO= T.ORD_NO AND ROWNUM=1) psc,'' psc_desc, "
  12092. + " t.PRODNM_CD DELIVERY_STATE_DESC, T.instr_COIL_THK THICK,T.instr_COIL_WTH WIDTH, T.instr_COIL_LEN LENGTH,T.ACT_WGT/1000 WEIGHT,''CUTSIDESTATE,''FIXSIZE, to_date(substr(t.MILL_DTIME,'0','8'), 'yyyy-mm-dd') PRODUCETIME,b.sizeid,nvl(t2.LG_STL_GRD, t2.STL_GRD) GRADE_CODE,nvl(t2.LG_STL_GRD, t2.STL_GRD) GRADE_NAME,b.INSPECTION_LOT,T.SPEC_STL_GRD steel_code,"
  12093. + " T.SPEC_STL_GRD steel_name,T.SPEC_ABBSYM std_code,T.SPEC_ABBSYM std_name, T.ORD_USE_CD prod_code,PKG_QUALITY_COMM.PK00_COMM('A01007',T.ORD_USE_CD) prod_name "
  12094. + " from tbh02_coil_comm t,tbf02_spec_mill t1,QCM_JUDGE_COIL_RESULT b,tbg02_slab_comm t2 where t.COIL_NO=t1.COIL_NO(+) AND t.SLAB_NO = t2.SLAB_NO and t.OLD_SAMPL_NO=b.coil_no "+swhere1+" "
  12095. + "union all select '' ht_no,'SZ1','酸轧线',SUBSTR(T.SLAB_NO, 1, 10),T.SLAB_NO,SUBSTR(t.OLD_SAMPL_NO, 1, 9), t1.ROLL_MANA_NO, T.OLD_SAMPL_NO, T.ORD_NO || T.ORD_SEQ, (select PSC from tbb01_ord_prod F WHERE F.ORD_NO= T.ORD_NO AND ROWNUM=1) psc,'' psc_desc, "
  12096. + " t.PRODNM_CD, T.instr_COIL_THK, T.instr_COIL_WTH,T.instr_COIL_LEN,T.ACT_WGT/1000,'','',to_date(substr(t.MILL_DTIME,'0','8'), 'yyyy-mm-dd') PRODUCETIME,b.sizeid,nvl(t2.LG_STL_GRD, t2.STL_GRD) GRADE_CODE,nvl(t2.LG_STL_GRD, t2.STL_GRD) GRADE_NAME,b.INSPECTION_LOT,T.SPEC_STL_GRD,"
  12097. + "T.SPEC_STL_GRD,T.SPEC_ABBSYM,T.SPEC_ABBSYM, T.ORD_USE_CD,PKG_QUALITY_COMM.PK00_COMM('A01007',T.ORD_USE_CD) "
  12098. + " from c_tbl02_coil_comm t,c_tbf03_spec_mill t1,QCM_JUDGE_COIL_RESULT b,tbg02_slab_comm t2 where t.COIL_NO=t1.C_COIL_NO(+) AND t.SLAB_NO = t2.SLAB_NO and t.OLD_SAMPL_NO=b.coil_no "+swhere1+""
  12099. + " union all select '' ht_no,'LT1','连退线',SUBSTR(T.SLAB_NO, 1, 10),T.SLAB_NO,SUBSTR(t.OLD_SAMPL_NO, 1, 9), t1.CAL_NO, T.OLD_SAMPL_NO,T.ORD_NO || T.ORD_SEQ,(select PSC from tbb01_ord_prod F WHERE F.ORD_NO= T.ORD_NO AND ROWNUM=1) psc,'' psc_desc, "
  12100. + "t.PRODNM_CD,T.instr_COIL_THK,T.instr_COIL_WTH,T.instr_COIL_LEN,T.ACT_WGT/1000,'','',to_date(substr(t.MILL_DTIME,'0','8'), 'yyyy-mm-dd') PRODUCETIME,b.sizeid,nvl(t2.LG_STL_GRD, t2.STL_GRD) GRADE_CODE,nvl(t2.LG_STL_GRD, t2.STL_GRD) GRADE_NAME,b.INSPECTION_LOT,T.SPEC_STL_GRD,"
  12101. + "T.SPEC_STL_GRD,T.SPEC_ABBSYM,T.SPEC_ABBSYM, T.ORD_USE_CD,PKG_QUALITY_COMM.PK00_COMM('A01007',T.ORD_USE_CD) "
  12102. + " from c_tbc02_coil_comm t,l_tbf03_spec_mill t1,QCM_JUDGE_COIL_RESULT b,tbg02_slab_comm t2 where t.ORI_OLD_SAMPL_NO=t1.C_COIL_NO(+) AND t.SLAB_NO = t2.SLAB_NO and t.OLD_SAMPL_NO=b.coil_no "+swhere1+") where 1= 1 "+swhere+"";
  12103. try {
  12104. System.out.print(sql);
  12105. List<HashMap> list = mapper.query(sql);
  12106. return list;
  12107. } catch (Exception ex) {
  12108. ex.printStackTrace();
  12109. }
  12110. SqlSession.close();
  12111. return null;
  12112. }
  12113. /**
  12114. * 查询物料明细信息 根据物料号
  12115. * @return
  12116. */
  12117. /*@SuppressWarnings("rawtypes")
  12118. public List<HashMap> doQueryMaterialInfos(String material_no) {
  12119. String swhere = "";
  12120. String swhere1 = "";
  12121. if (!SqlJoint.IsNullOrSpace(material_no)) { //产品序号
  12122. swhere += " and material_no in "+material_no+"";
  12123. }
  12124. String sql =
  12125. "select t1.*,t2.STEELCODE steel_code,C2N@xgcx(t2.STEELCODE) steel_name,t2.USEDSTAND std_code, "
  12126. + " C2N@xgcx(t2.USEDSTAND) std_name,t2.PURPOSEID prod_code,C2N@xgcx(t2.PURPOSEID) prod_name, psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC,"
  12127. + " t2.PSRNO psc, t2.DEV_SPEC_CD psc_desc from (select '' ht_no, 'HB1' PLINE_CODE,C2N@xgcx('4001HB1') PLINE_NAME,to_char(a.heatno) heatno,MOTHERSLAB BOARD_NO, batchno, a.taskno plan_no, "
  12128. + " a.slabno material_no, a.ORDERID design_key, a.thick, a.width, a.len length, a.weight, "
  12129. + " (select name_ from scm_base_info where id_ = a.cutsizestate) CUTSIDESTATE, (select name_ from scm_base_info where id_ = a.SIZEMODE) FIXSIZE, "
  12130. + " a.maketime PRODUCETIME, b.sizeid, b.SURFACEID surface_id,b.up_surface_result_id_desc,b.ud_surface_result_id_desc, b.billetid_jy INSPECTION_LOT"
  12131. + " from zyhb_plandetailofplate@xgcx a,zj_result_all@xgcx b where a.SLABNO = b.BILLETID "
  12132. + " "+swhere1+") T1 left join sel_pactdetail@xgcx t2 "
  12133. + " on t1.design_key = t2.ORDERNO where 1 = 1 "+swhere+""
  12134. + " union all "
  12135. +"select t1.*,t2.STEELCODE steel_code,C2N@xgcx(t2.STEELCODE) steel_name,t2.USEDSTAND std_code, "
  12136. + " C2N@xgcx(t2.USEDSTAND) std_name,t2.PURPOSEID prod_code,C2N@xgcx(t2.PURPOSEID) prod_name, psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC,"
  12137. + " t2.PSRNO psc, t2.DEV_SPEC_CD psc_desc from (select '' ht_no, 'HB1' PLINE_CODE,C2N@xgcx('4001HB1') PLINE_NAME,to_char(a.heatno) heatno,MOTHERSLAB BOARD_NO, batchno, a.taskno plan_no, "
  12138. + " a.slabno material_no, a.ORDERID design_key, a.thick, a.width, a.len length, a.weight, "
  12139. + " (select name_ from scm_base_info where id_ = a.cutsizestate) CUTSIDESTATE, (select name_ from scm_base_info where id_ = a.SIZEMODE) FIXSIZE, "
  12140. + " a.maketime PRODUCETIME, b.sizeid, b.SURFACEID surface_id,b.up_surface_result_id_desc,b.ud_surface_result_id_desc, b.billetid_jy INSPECTION_LOT"
  12141. + " from ZYHB_PLANDETAILOFPLATE_ZJNEW@xgcx a,zj_result_all@xgcx b where a.SLABNO = b.BILLETID "
  12142. + " "+swhere1+") T1 left join sel_pactdetail@xgcx t2 "
  12143. + " on t1.design_key = t2.ORDERNO where 1 = 1 "+swhere+""
  12144. + " union all "
  12145. + "select t1.*, t2.STEELCODE steel_code, "
  12146. + " C2N@xgcx(t2.STEELCODE) steel_name, t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, t2.PURPOSEID prod_code, "
  12147. + " C2N@xgcx(t2.PURPOSEID) prod_name,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC,t2.PSRNO psc,t2.DEV_SPEC_CD psc_desc "
  12148. + " from (select '' ht_no, 'ZB1' PLINE_CODE,C2N@xgcx('4001ZB1') PLINE_NAME,to_char(a.heatno) heat_no,MOTHERPLATEID BOARD_NO, A.batchno, a.taskno plan_no, a.PRODUCTNO material_no, a.ORDERNO design_key, "
  12149. + " a.HEIGHT thick, a.width,a.lenGTH, a.weight,(select name_ from scm_base_info where id_ = a.CUTSTYLE) CUTSIDESTATE, "
  12150. + " (select name_ from scm_base_info where id_ = a.SIZESTYLE) FIXSIZE,a.maketime PRODUCETIME, b.sizeid,b.SURFACEID surface_id,b.up_surface_result_id_desc,b.ud_surface_result_id_desc,b.billetid_jy INSPECTION_LOT "
  12151. + " from mb_plandetailofplate@xgcx a, zj_result_all@xgcx b "
  12152. + " where a.PRODUCTNO = b.BILLETID "+swhere1+") T1 left join sel_pactdetail@xgcx t2 "
  12153. + " on t1.design_key = t2.ORDERNO where 1=1 "+swhere+""
  12154. +" union all select t1.*, t2.STEELCODE steel_code, "
  12155. + " C2N@xgcx(t2.STEELCODE) steel_name, t2.USEDSTAND std_code, C2N@xgcx(t2.USEDSTAND) std_name, t2.PURPOSEID prod_code, "
  12156. + " C2N@xgcx(t2.PURPOSEID) prod_name,psel_get_standroll@XGCX(t2.STANDROLLER) DELIVERY_STATE_DESC,t2.PSRNO psc,t2.DEV_SPEC_CD psc_desc "
  12157. + " from (select '' ht_no,a.PLD PLINE_CODE,C2N@xgcx(a.PLD) PLINE_NAME,substr(a.STOVENO,1,10) HEAT_NO,ROLLNUMBER BOARD_NO,ROLLNUMBER batchno, PLANNO plan_no,a.BILLETID material_no, "
  12158. + " ORDERNO design_key, a.PLY thick, "
  12159. + " a.WIDTH, a.LENGTH, a.THEORYWEIGHT weight, '' CUTSIDESTATE, (select name_ from scm_base_info@xgcx where id_ = RuLE) FIXSIZE, "
  12160. + " PTIME PRODUCETIME, b.sizeid,b.SURFACEID surface_id,b.up_surface_result_id_desc,b.ud_surface_result_id_desc,b.BILLETID_jy INSPECTION_LOT from kcx_turnofflist@xgcx a left join zj_result_all@xgcx b on a.BILLETID = b.BILLETID LEFT JOIN kcx_stufflist@xgcx C ON C.STOVENO = A.STOVENO"
  12161. + " where 1=1 "+swhere1+")T1 left join sel_pactdetail@xgcx t2 on t1.design_key = t2.ORDERNO where 1=1 "+swhere+" "
  12162. + "union all select * from (select ''ht_no,'RZ1','热轧线',SUBSTR(T.SLAB_NO, 1, 10),T.SLAB_NO,SUBSTR(t.OLD_SAMPL_NO, 1, 10) batchno,t1.ROLL_MANA_NO plan_no, T.OLD_SAMPL_NO material_no, T.ORD_NO || T.ORD_SEQ, "
  12163. + " T.instr_COIL_THK,T.instr_COIL_WTH, T.instr_COIL_LEN,T.ACT_WGT/1000,''CUTSIDESTATE,''FIXSIZE, to_date(substr(t.MILL_DTIME,'0','8'), 'yyyy-mm-dd') PRODUCETIME,b.sizeid, b.SURFACEID surface_id,b.up_surface_result_id_desc,b.ud_surface_result_id_desc,b.INSPECTION_LOT,T.SPEC_STL_GRD steel_code,"
  12164. + " T.SPEC_STL_GRD steel_name,T.SPEC_ABBSYM std_code,T.SPEC_ABBSYM std_name, T.ORD_USE_CD prod_code,PKG_QUALITY_COMM.PK00_COMM('A01007',T.ORD_USE_CD) prod_name,t.PRODNM_CD,'' psc,'' psc_desc "
  12165. + " from tbh02_coil_comm t,tbf02_spec_mill t1,QCM_JUDGE_COIL_RESULT b,tbg02_slab_comm t2 where t.COIL_NO=t1.COIL_NO(+) AND t.SLAB_NO = t2.SLAB_NO and t.OLD_SAMPL_NO=b.coil_no "+swhere1+" "
  12166. + "union all select '' ht_no,'SZ1','酸轧线',SUBSTR(T.SLAB_NO, 1, 10),T.SLAB_NO,SUBSTR(t.OLD_SAMPL_NO, 1, 9), t1.ROLL_MANA_NO, T.OLD_SAMPL_NO, T.ORD_NO || T.ORD_SEQ, "
  12167. + " T.instr_COIL_THK, T.instr_COIL_WTH,T.instr_COIL_LEN,T.ACT_WGT/1000,'','',to_date(substr(t.MILL_DTIME,'0','8'), 'yyyy-mm-dd') PRODUCETIME,b.sizeid, b.SURFACEID surface_id,b.up_surface_result_id_desc,b.ud_surface_result_id_desc,b.INSPECTION_LOT,T.SPEC_STL_GRD,"
  12168. + "T.SPEC_STL_GRD,T.SPEC_ABBSYM,T.SPEC_ABBSYM, T.ORD_USE_CD,PKG_QUALITY_COMM.PK00_COMM('A01007',T.ORD_USE_CD),t.PRODNM_CD,'' psc,'' psc_desc "
  12169. + " from c_tbl02_coil_comm t,c_tbf03_spec_mill t1,QCM_JUDGE_COIL_RESULT b,tbg02_slab_comm t2 where t.COIL_NO=t1.C_COIL_NO(+) AND t.SLAB_NO = t2.SLAB_NO and t.OLD_SAMPL_NO=b.coil_no "+swhere1+""
  12170. + " union all select '' ht_no,'LT1','连退线',SUBSTR(T.SLAB_NO, 1, 10),T.SLAB_NO,SUBSTR(t.OLD_SAMPL_NO, 1, 9), t1.CAL_NO, T.OLD_SAMPL_NO,T.ORD_NO || T.ORD_SEQ, "
  12171. + "T.instr_COIL_THK,T.instr_COIL_WTH,T.instr_COIL_LEN,T.ACT_WGT/1000,'','',to_date(substr(t.MILL_DTIME,'0','8'), 'yyyy-mm-dd') PRODUCETIME,b.sizeid, b.SURFACEID surface_id,b.up_surface_result_id_desc,b.ud_surface_result_id_desc,b.INSPECTION_LOT,T.SPEC_STL_GRD,"
  12172. + "T.SPEC_STL_GRD,T.SPEC_ABBSYM,T.SPEC_ABBSYM, T.ORD_USE_CD,PKG_QUALITY_COMM.PK00_COMM('A01007',T.ORD_USE_CD),t.PRODNM_CD,'' psc,'' psc_desc "
  12173. + " from c_tbc02_coil_comm t,l_tbf03_spec_mill t1,QCM_JUDGE_COIL_RESULT b,tbg02_slab_comm t2 where t.ORI_OLD_SAMPL_NO=t1.C_COIL_NO(+) AND t.SLAB_NO = t2.SLAB_NO and t.OLD_SAMPL_NO=b.coil_no "+swhere1+") where 1= 1 "+swhere+"";
  12174. try {
  12175. System.out.print(sql);
  12176. List<HashMap> list = mapper.query(sql);
  12177. return list;
  12178. } catch (Exception ex) {
  12179. ex.printStackTrace();
  12180. }
  12181. return null;
  12182. }*/
  12183. /**
  12184. * 查询炼钢待判信息
  12185. */
  12186. @SuppressWarnings({"unused", "unchecked"})
  12187. public CoreReturnObject getLgRejudgeInfobyMaterial_no(String begintime, String endtime, String heatno, String prodline, String prod_type, String judge_type) {
  12188. try {
  12189. JSONObject jsobj2 = new JSONObject();
  12190. JSONArray ttmaps = new JSONArray();
  12191. JSONObject jsobj1 = new JSONObject();
  12192. jsobj1.put("START_TIME", begintime);
  12193. jsobj1.put("END_TIME", endtime);
  12194. jsobj1.put("HEAT_NO", heatno == null ? "" : heatno);
  12195. jsobj1.put("PROD_LINE", prodline);
  12196. jsobj1.put("PROD_TYPE", prod_type);
  12197. jsobj1.put("JUDGE_TYPE", judge_type);
  12198. jsobj1.put("ISJUDGE", "0");
  12199. String url = "http://10.70.0.237:9000/LgdoChemJudgeService?wsdl";
  12200. String result = callWebserviceASMX(url, "StorageForJudge", JSON.toJSONString(jsobj1));
  12201. if (result.contains("DATA")) {
  12202. JSONObject jo = JSONObject.parseObject(result);
  12203. JSONArray ja = jo.getJSONArray("DATA");
  12204. List<HashMap> listqjb = new ArrayList<HashMap>();
  12205. for (int i = 0; i < ja.size(); i++) {
  12206. HashMap lists = new HashMap();
  12207. lists.put("HEAT_NO", ja.getJSONObject(i).getString("HEATNO"));
  12208. lists.put("MATERIAL_NO", ja.getJSONObject(i).getString("BILLETNO"));
  12209. lists.put("GRADE_NAME", ja.getJSONObject(i).getString("STEELCODE"));
  12210. lists.put("PROD_NAME", ja.getJSONObject(i).getString("PRODNAME"));
  12211. lists.put("DELIVERY_STATE_DESC", ja.getJSONObject(i).getString("STATUS"));
  12212. lists.put("WEIGHT", ja.getJSONObject(i).getString("WEIGHT"));
  12213. lists.put("THICK", ja.getJSONObject(i).getString("THICK"));
  12214. lists.put("REMARK", ja.getJSONObject(i).getString("SLAB_DETAIL"));
  12215. lists.put("LENGTH", ja.getJSONObject(i).getString("LENGTH"));
  12216. lists.put("WIDTH", ja.getJSONObject(i).getString("WIDTH"));
  12217. lists.put("PRODUCETIME", ja.getJSONObject(i).getString("CUTSTARTTIME"));
  12218. lists.put("DESIGN_KEY", ja.getJSONObject(i).getString("ORDERNO"));
  12219. lists.put("PLINE_CODE", ja.getJSONObject(i).getString("PROD_CODE"));
  12220. lists.put("PLINE_NAME", ja.getJSONObject(i).getString("PROD_NAME"));
  12221. lists.put("STD_NAME", ja.getJSONObject(i).getString("USEDSTAND"));
  12222. lists.put("CHEMRESULT_LK", ja.getJSONObject(i).getString("CHEMRESULT_FX"));
  12223. lists.put("FACERESULT", ja.getJSONObject(i).getString("FACERESULT"));
  12224. lists.put("CHEMJUDGEID", ja.getJSONObject(i).getString("CHEMJUDGEID"));
  12225. lists.put("FACECHECKID", ja.getJSONObject(i).getString("FACECHECKID"));
  12226. lists.put("PROD_THICK", ja.getJSONObject(i).getString("PROD_THK"));
  12227. lists.put("PROD_WIDTH", ja.getJSONObject(i).getString("PROD_WTH"));
  12228. lists.put("PLANSTEEL", ja.getJSONObject(i).getString("PLANSTEEL"));
  12229. lists.put("COPING_REMARK", ja.getJSONObject(i).getString("COPING_REMARK"));
  12230. lists.put("SPOT_CHECK_REMARK", ja.getJSONObject(i).getString("SPOT_CHECK_REMARK"));
  12231. listqjb.add(lists);
  12232. }
  12233. cro.setResult(listqjb);
  12234. }
  12235. } catch (Exception ex) {
  12236. cro.setV_errCode(-1);
  12237. cro.setV_errMsg("获取成分待判信息错误" + ex.getMessage());
  12238. SqlSession.rollback();
  12239. }
  12240. return cro;
  12241. }
  12242. public static String callWebserviceASMX(String url, String method, String json) throws Exception {
  12243. System.out.println("Start invoking....");
  12244. String str = "";
  12245. try {
  12246. String endPoint = url;
  12247. String soapaction = "http://dao.hnshituo.com/";
  12248. Service service = new Service();
  12249. Call call = (Call) service.createCall();
  12250. call.setTargetEndpointAddress(new java.net.URL(endPoint));
  12251. call.setOperation(method);
  12252. call.setUseSOAPAction(true);
  12253. call.setSOAPActionURI(soapaction + method);
  12254. call.setOperationName(new QName(soapaction, method));
  12255. call.addParameter("arg0", org.apache.axis.encoding.XMLType.XSD_STRING, ParameterMode.IN);
  12256. call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);
  12257. str = (String) call.invoke(new Object[]{json});
  12258. System.out.println(str);
  12259. } catch (Exception e) {
  12260. throw new Exception(e.getMessage());
  12261. }
  12262. return str;
  12263. }
  12264. @SuppressWarnings("unchecked")
  12265. public CoreReturnObject GetKcZReport(String sbatchno,String ebatchno,String ord_no){
  12266. String swhere = "";
  12267. if (!SqlJoint.IsNullOrSpace(sbatchno)) { //起始轧批号
  12268. swhere += "and 轧批号 >= '" + sbatchno + "'";
  12269. }
  12270. if (!SqlJoint.IsNullOrSpace(ebatchno)) { //最后轧批号
  12271. swhere += "and 轧批号 <= '" + ebatchno + "'";
  12272. }
  12273. if (!SqlJoint.IsNullOrSpace(ord_no)) { //销售订单号
  12274. swhere += " and 计划订单号 like '%" + ord_no + "%'";
  12275. }
  12276. String sql = "SELECT to_char(交货期,'yyyy-mm-dd') 交货期 , "
  12277. +" to_char(生产时间,'yyyy-mm-dd hh24:mi:ss') 生产时间,"
  12278. +" to_char(入库时间,'yyyy-mm-dd hh24:mi:ss') 入库时间,"
  12279. +" 堆龄_D,"
  12280. +" 堆位,"
  12281. +" 计划牌号,"
  12282. +" 热处理号,"
  12283. +" 判定牌号,"
  12284. +" 冶炼炉号,"
  12285. +" 轧批号,"
  12286. +" 子板号,"
  12287. +" 检验号,"
  12288. +" to_char(夹杂发送,'yyyy-mm-dd hh24:mi:ss') 夹杂发送,"
  12289. +" to_char(夹杂试样接收,'yyyy-mm-dd hh24:mi:ss') 夹杂试样接收,"
  12290. +" to_char(夹杂实绩接收,'yyyy-mm-dd hh24:mi:ss') 夹杂实绩接收,"
  12291. +" to_char(力学发送,'yyyy-mm-dd hh24:mi:ss')力学发送,"
  12292. +" to_char(力学试样接收,'yyyy-mm-dd hh24:mi:ss')力学试样接收,"
  12293. +" to_char(力学实绩接收,'yyyy-mm-dd hh24:mi:ss')力学实绩接收,"
  12294. +" 计划订单号,"
  12295. +" 现订单号,"
  12296. +" 现订单源,"
  12297. +" 现计划号,"
  12298. +" 定尺方式,"
  12299. +" 切边方式,"
  12300. +" 运输方式,"
  12301. +" 交货状态,"
  12302. +" 厚,"
  12303. +" 宽,"
  12304. +" 长,"
  12305. +" 理论重量,"
  12306. +" 探伤需求,"
  12307. +" 探伤实绩,"
  12308. +" 判定结果,"
  12309. +" 公差,"
  12310. +" 综判,"
  12311. +" 材质,"
  12312. +" 表面,"
  12313. +" 上表面缺陷,"
  12314. +" 下表面缺陷,"
  12315. +" 分析单位,"
  12316. +" 熔炼成分 FROM qcm_view_zb_pend@Xgcx where 1=1 "+swhere+"";
  12317. try {
  12318. System.out.print(sql);
  12319. List<LinkedHashMap> list = mapper.query1(sql);
  12320. cro.setResult(list);
  12321. } catch (Exception ex) {
  12322. ex.printStackTrace();
  12323. cro.setV_errCode(-1);
  12324. cro.setV_errMsg("查询失败!" + ex.getMessage());
  12325. }
  12326. SqlSession.close();
  12327. return cro;
  12328. }
  12329. @SuppressWarnings("unchecked")
  12330. public CoreReturnObject GetKcHReport(String sbatchno,String ebatchno,String ord_no){
  12331. String swhere = "";
  12332. if (!SqlJoint.IsNullOrSpace(sbatchno)) { //起始轧批号
  12333. swhere += "and 轧批号 >= '" + sbatchno + "'";
  12334. }
  12335. if (!SqlJoint.IsNullOrSpace(ebatchno)) { //最后轧批号
  12336. swhere += "and 轧批号 <= '" + ebatchno + "'";
  12337. }
  12338. if (!SqlJoint.IsNullOrSpace(ord_no)) { //销售订单号
  12339. swhere += " and 计划订单号 like '%" + ord_no + "%'";
  12340. }
  12341. String sql = "SELECT to_char(交货期,'yyyy-mm-dd') 交货期 , "
  12342. +" to_char(生产时间,'yyyy-mm-dd hh24:mi:ss')生产时间,"
  12343. +" to_char(入库时间,'yyyy-mm-dd hh24:mi:ss')入库时间,"
  12344. +" 堆龄_D,"
  12345. +" 堆位,"
  12346. +" 计划牌号,"
  12347. +" 热处理号,"
  12348. +" 判定牌号,"
  12349. +" 冶炼炉号,"
  12350. +" 轧批号,"
  12351. +" 子板号,"
  12352. +" 检验号,"
  12353. +" to_char(夹杂发送,'yyyy-mm-dd hh24:mi:ss') 夹杂发送,"
  12354. +" to_char(夹杂试样接收,'yyyy-mm-dd hh24:mi:ss') 夹杂试样接收,"
  12355. +" to_char(夹杂实绩接收,'yyyy-mm-dd hh24:mi:ss') 夹杂实绩接收,"
  12356. +" to_char(力学发送,'yyyy-mm-dd hh24:mi:ss')力学发送,"
  12357. +" to_char(力学试样接收,'yyyy-mm-dd hh24:mi:ss')力学试样接收,"
  12358. +" to_char(力学实绩接收,'yyyy-mm-dd hh24:mi:ss')力学实绩接收,"
  12359. +" 计划订单号,"
  12360. +" 现订单号,"
  12361. +" 现订单源,"
  12362. +" 现计划号,"
  12363. +" 定尺方式,"
  12364. +" 切边方式,"
  12365. +" 运输方式,"
  12366. +" 交货状态,"
  12367. +" 厚,"
  12368. +" 宽,"
  12369. +" 长,"
  12370. +" 理论重量,"
  12371. +" 探伤需求,"
  12372. +" 探伤实绩,"
  12373. +" 判定结果,"
  12374. +" 公差,"
  12375. +" 综判,"
  12376. +" 材质,"
  12377. +" 表面,"
  12378. +" 上表面缺陷,"
  12379. +" 下表面缺陷,"
  12380. +" 分析单位,"
  12381. +" 熔炼成分 FROM qcm_view_hb_pend@Xgcx where 1=1 "+swhere+"";
  12382. try {
  12383. System.out.print(sql);
  12384. List<LinkedHashMap> list = mapper.query1(sql);
  12385. cro.setResult(list);
  12386. } catch (Exception ex) {
  12387. ex.printStackTrace();
  12388. cro.setV_errCode(-1);
  12389. cro.setV_errMsg("查询失败!" + ex.getMessage());
  12390. }
  12391. SqlSession.close();
  12392. return cro;
  12393. }
  12394. @SuppressWarnings("unchecked")
  12395. public CoreReturnObject GetKcZReport1(String sbatchno,String ebatchno,String ord_no,String ord_no2){
  12396. String swhere = "";
  12397. if (!SqlJoint.IsNullOrSpace(sbatchno)) { //起始轧批号
  12398. swhere += "and 轧批号 >= '" + sbatchno + "'";
  12399. }
  12400. if (!SqlJoint.IsNullOrSpace(ebatchno)) { //最后轧批号
  12401. swhere += "and 轧批号 <= '" + ebatchno + "'";
  12402. }
  12403. if (!SqlJoint.IsNullOrSpace(ord_no)) { //销售订单号
  12404. swhere += " and 计划订单号 like '%" + ord_no + "%'";
  12405. }
  12406. if (!SqlJoint.IsNullOrSpace(ord_no2)) {
  12407. swhere += " and 现订单号 like '" + ord_no2 + "%'";
  12408. }
  12409. String sql = "select * from(SELECT to_char(t.交货期,'yyyy-mm-dd') 交货期 , "
  12410. +" to_char(t.生产时间,'yyyy-mm-dd hh24:mi:ss') 生产时间,"
  12411. +" to_char(t.入库时间,'yyyy-mm-dd hh24:mi:ss') 入库时间,"
  12412. +" t.堆龄_D,"
  12413. +" t.堆位,"
  12414. +" t.计划牌号,"
  12415. +" t.热处理号,"
  12416. +" t.判定牌号,"
  12417. +" t.冶炼炉号,"
  12418. +" t.轧批号,"
  12419. +" t.子板号,"
  12420. +" t.检验号,"
  12421. +" to_char(t.夹杂发送,'yyyy-mm-dd hh24:mi:ss') 夹杂发送,"
  12422. +" to_char(t.夹杂试样接收,'yyyy-mm-dd hh24:mi:ss') 夹杂试样接收,"
  12423. +" to_char(t.夹杂实绩接收,'yyyy-mm-dd hh24:mi:ss') 夹杂实绩接收,"
  12424. +" to_char(t.力学发送,'yyyy-mm-dd hh24:mi:ss')力学发送,"
  12425. +" to_char(t.力学试样接收,'yyyy-mm-dd hh24:mi:ss')力学试样接收,"
  12426. +" to_char(t.力学实绩接收,'yyyy-mm-dd hh24:mi:ss')力学实绩接收,"
  12427. +" t.计划订单号,"
  12428. +" t.现订单号,"
  12429. +" t.现订单源,"
  12430. +" t.现计划号,"
  12431. +" t.定尺方式,"
  12432. +" t.切边方式,"
  12433. +" t.运输方式,"
  12434. +" t.交货状态,"
  12435. +" t.厚,"
  12436. +" t.宽,"
  12437. +" t.长,"
  12438. +" t.理论重量,"
  12439. +" t.探伤需求,"
  12440. +" t.探伤实绩,"
  12441. +" t.判定结果,"
  12442. +" t.公差,"
  12443. +" t.综判,"
  12444. +" t.材质,"
  12445. +" t.表面,"
  12446. +" t.上表面缺陷,"
  12447. +" t.下表面缺陷,"
  12448. +" t.分析单位,"
  12449. +" t.熔炼成分,t1.JUDGE_REASON,t1.JUDGE_REG,t1.PTIME,t1.COIL_STAT "
  12450. + " FROM qcm_view_zb_pend@Xgcx t,qcm_zhb_judgereason t1 "
  12451. + " where t.子板号 = t1.BITTLE_ID(+)) "
  12452. + " where 1=1 "+swhere+"";
  12453. try {
  12454. System.out.print(sql);
  12455. List<LinkedHashMap> list = mapper.query1(sql);
  12456. cro.setResult(list);
  12457. } catch (Exception ex) {
  12458. ex.printStackTrace();
  12459. cro.setV_errCode(-1);
  12460. cro.setV_errMsg("查询失败!" + ex.getMessage());
  12461. }
  12462. SqlSession.close();
  12463. return cro;
  12464. }
  12465. @SuppressWarnings("unchecked")
  12466. public CoreReturnObject GetKcHReport1(String sbatchno,String ebatchno,String ord_no,String ord_no2){
  12467. String swhere = "";
  12468. if (!SqlJoint.IsNullOrSpace(sbatchno)) { //起始轧批号
  12469. swhere += "and 轧批号 >= '" + sbatchno + "'";
  12470. }
  12471. if (!SqlJoint.IsNullOrSpace(ebatchno)) { //最后轧批号
  12472. swhere += "and 轧批号 <= '" + ebatchno + "'";
  12473. }
  12474. if (!SqlJoint.IsNullOrSpace(ord_no)) { //销售订单号
  12475. swhere += " and 计划订单号 like '%" + ord_no + "%'";
  12476. }
  12477. if (!SqlJoint.IsNullOrSpace(ord_no2)) {
  12478. swhere += " and 现订单号 like '" + ord_no2 + "%'";
  12479. }
  12480. String sql = "select * from(SELECT to_char(t.交货期,'yyyy-mm-dd') 交货期 , "
  12481. +" to_char(t.生产时间,'yyyy-mm-dd hh24:mi:ss') 生产时间,"
  12482. +" to_char(t.入库时间,'yyyy-mm-dd hh24:mi:ss') 入库时间,"
  12483. +" t.堆龄_D,"
  12484. +" t.堆位,"
  12485. +" t.计划牌号,"
  12486. +" t.热处理号,"
  12487. +" t.判定牌号,"
  12488. +" t.冶炼炉号,"
  12489. +" t.轧批号,"
  12490. +" t.子板号,"
  12491. +" t.检验号,"
  12492. +" to_char(t.夹杂发送,'yyyy-mm-dd hh24:mi:ss') 夹杂发送,"
  12493. +" to_char(t.夹杂试样接收,'yyyy-mm-dd hh24:mi:ss') 夹杂试样接收,"
  12494. +" to_char(t.夹杂实绩接收,'yyyy-mm-dd hh24:mi:ss') 夹杂实绩接收,"
  12495. +" to_char(t.力学发送,'yyyy-mm-dd hh24:mi:ss')力学发送,"
  12496. +" to_char(t.力学试样接收,'yyyy-mm-dd hh24:mi:ss')力学试样接收,"
  12497. +" to_char(t.力学实绩接收,'yyyy-mm-dd hh24:mi:ss')力学实绩接收,"
  12498. +" t.计划订单号,"
  12499. +" t.现订单号,"
  12500. +" t.现订单源,"
  12501. +" t.现计划号,"
  12502. +" t.定尺方式,"
  12503. +" t.切边方式,"
  12504. +" t.运输方式,"
  12505. +" t.交货状态,"
  12506. +" t.厚,"
  12507. +" t.宽,"
  12508. +" t.长,"
  12509. +" t.理论重量,"
  12510. +" t.探伤需求,"
  12511. +" t.探伤实绩,"
  12512. +" t.判定结果,"
  12513. +" t.公差,"
  12514. +" t.综判,"
  12515. +" t.材质,"
  12516. +" t.表面,"
  12517. +" t.上表面缺陷,"
  12518. +" t.下表面缺陷,"
  12519. +" t.分析单位,"
  12520. +" t.熔炼成分,t1.JUDGE_REASON,t1.JUDGE_REG,t1.PTIME,t1.COIL_STAT "
  12521. + " FROM qcm_view_hb_pend@Xgcx t,qcm_zhb_judgereason t1 "
  12522. + " where t.子板号 = t1.BITTLE_ID(+)) "
  12523. + " where 1=1 "+swhere+"";
  12524. try {
  12525. System.out.print(sql);
  12526. List<LinkedHashMap> list = mapper.query1(sql);
  12527. cro.setResult(list);
  12528. } catch (Exception ex) {
  12529. ex.printStackTrace();
  12530. cro.setV_errCode(-1);
  12531. cro.setV_errMsg("查询失败!" + ex.getMessage());
  12532. }
  12533. SqlSession.close();
  12534. return cro;
  12535. }
  12536. @SuppressWarnings("unchecked")
  12537. public CoreReturnObject GetBJReport1(String sbatchno,String ebatchno,String ord_no,String ord_no2){
  12538. String swhere = "";
  12539. if (!SqlJoint.IsNullOrSpace(sbatchno)) { //起始轧批号
  12540. swhere += "and 轧批号 >= '" + sbatchno + "'";
  12541. }
  12542. if (!SqlJoint.IsNullOrSpace(ebatchno)) { //最后轧批号
  12543. swhere += "and 轧批号 <= '" + ebatchno + "'";
  12544. }
  12545. if (!SqlJoint.IsNullOrSpace(ord_no)) { //销售订单号
  12546. swhere += " and 计划订单号 like '%" + ord_no + "%'";
  12547. }
  12548. if (!SqlJoint.IsNullOrSpace(ord_no2)) {
  12549. swhere += " and 现订单号 like '" + ord_no2 + "%'";
  12550. }
  12551. String sql = "select * from(SELECT to_char(t.交货期,'yyyy-mm-dd') 交货期 , "
  12552. +" to_char(t.生产时间,'yyyy-mm-dd hh24:mi:ss') 生产时间,"
  12553. +" to_char(t.入库时间,'yyyy-mm-dd hh24:mi:ss') 入库时间,"
  12554. +" t.堆龄_D,"
  12555. +" t.堆位,"
  12556. +" t.计划牌号,"
  12557. +" t.热处理号,"
  12558. +" t.判定牌号,"
  12559. +" t.冶炼炉号,"
  12560. +" t.轧批号,"
  12561. +" t.子板号,"
  12562. +" t.检验号,"
  12563. +" to_char(t.夹杂发送,'yyyy-mm-dd hh24:mi:ss') 夹杂发送,"
  12564. +" to_char(t.夹杂试样接收,'yyyy-mm-dd hh24:mi:ss') 夹杂试样接收,"
  12565. +" to_char(t.夹杂实绩接收,'yyyy-mm-dd hh24:mi:ss') 夹杂实绩接收,"
  12566. +" to_char(t.力学发送,'yyyy-mm-dd hh24:mi:ss')力学发送,"
  12567. +" to_char(t.力学试样接收,'yyyy-mm-dd hh24:mi:ss')力学试样接收,"
  12568. +" to_char(t.力学实绩接收,'yyyy-mm-dd hh24:mi:ss')力学实绩接收,"
  12569. +" t.计划订单号,"
  12570. +" t.现订单号,"
  12571. +" t.现订单源,"
  12572. +" t.现计划号,"
  12573. +" t.定尺方式,"
  12574. +" t.切边方式,"
  12575. +" t.运输方式,"
  12576. +" t.交货状态,"
  12577. +" t.厚,"
  12578. +" t.宽,"
  12579. +" t.长,"
  12580. +" t.理论重量,"
  12581. +" t.探伤需求,"
  12582. +" t.探伤实绩,"
  12583. +" t.判定结果,"
  12584. +" t.公差,"
  12585. +" t.综判,"
  12586. +" t.材质,"
  12587. +" t.表面,"
  12588. +" t.上表面缺陷,"
  12589. +" t.下表面缺陷,"
  12590. +" t.分析单位,"
  12591. +" t.熔炼成分,t1.JUDGE_REASON,t1.JUDGE_REG,t1.PTIME,t1.COIL_STAT "
  12592. + " FROM qcm_view_bj_pend@Xgcx t,qcm_zhb_judgereason t1 "
  12593. + " where t.子板号 = t1.BITTLE_ID(+)) "
  12594. + " where 1=1 "+swhere+"";
  12595. try {
  12596. System.out.print(sql);
  12597. List<LinkedHashMap> list = mapper.query1(sql);
  12598. cro.setResult(list);
  12599. } catch (Exception ex) {
  12600. ex.printStackTrace();
  12601. cro.setV_errCode(-1);
  12602. cro.setV_errMsg("查询失败!" + ex.getMessage());
  12603. }
  12604. SqlSession.close();
  12605. return cro;
  12606. }
  12607. public CoreReturnObject in_Judgereason(String Bittle_Id,String Judge_Reason,String Judge_Reg,
  12608. String PTime,String Coil_Stat){
  12609. try{
  12610. String sql = "select * from QCM_ZHB_JUDGEREASON t where t.BITTLE_ID = '"+Bittle_Id+"'";
  12611. List<HashMap> list1 = mapper.query(sql.toString());
  12612. if(list1.size()>0){
  12613. String sql2 = "DELETE FROM QCM_ZHB_JUDGEREASON t where t.bittle_id = '"+Bittle_Id+"'";
  12614. mapper.delete(sql2);
  12615. }
  12616. String sql1 = "INSERT INTO QCM_ZHB_JUDGEREASON\n" +
  12617. " (BITTLE_ID,JUDGE_REASON,JUDGE_REG,PTIME,COIL_STAT)\n" +
  12618. " VALUES\n" +
  12619. " ('"+Bittle_Id+"',"+"'"+Judge_Reason+"',"+"'"+Judge_Reg+"',"
  12620. + ""+"'"+PTime+"',"+"'"+Coil_Stat+"')";
  12621. mapper.insert(sql1.toString());
  12622. String sql2 = "update kcz_turnoffbuttresslist@Xgcx set "
  12623. + "HANDREMARK = '"+Judge_Reason+"'"+"||HANDREMARK where BILLETID = '"+Bittle_Id+"'";
  12624. mapper.UpdateQcmWt(sql2);
  12625. } catch (Exception e) {
  12626. SqlSession.rollback();
  12627. SqlSession.close();
  12628. cro.setV_errCode(-1);
  12629. cro.setV_errMsg("信息录入失败"+e.getMessage());
  12630. return cro;
  12631. }
  12632. SqlSession.commit();
  12633. SqlSession.close();
  12634. cro.setV_errCode(1);
  12635. return cro;
  12636. }
  12637. public CoreReturnObject doQuoteJB(String material_no,String username){
  12638. try{
  12639. if(material_no.startsWith("L")){
  12640. String sql = "select INSPECTION_LOT,COIL_NO from qcm_judge_coil_result t where t.COIL_NO = '"+material_no+"' and t.inspection_lot is not null ";
  12641. List<HashMap> list1 = mapper.query(sql.toString());
  12642. if(list1.size()>0){
  12643. sql = "select PHYSRESULT, PHYSRESULT_DESC, PHYSID,COIL_NO from qcm_judge_coil_result t "
  12644. + " where t.inspection_lot = '"+list1.get(0).get("INSPECTION_LOT")+"' and t.physresult = '1' and t.physid is not null";
  12645. List<HashMap> list2 = mapper.query(sql.toString());
  12646. if(list2.size()>0){
  12647. String PHYSRESULT = list2.get(0).get("PHYSRESULT").toString();
  12648. String PHYSRESULT_DESC = list2.get(0).get("PHYSRESULT_DESC").toString();
  12649. String PHYSID = list2.get(0).get("PHYSID").toString();
  12650. String sql2 = " update qcm_judge_coil_result set PHYSRESULT = '"+PHYSRESULT+"',PHYSRESULT_DESC='"+PHYSRESULT_DESC+"' "
  12651. + " ,PHYSID='"+PHYSID+"' where COIL_NO = '"+material_no+"'";
  12652. mapper.UpdateQcmWt(sql2);
  12653. QcmJudgeLog qjlt = new QcmJudgeLog();
  12654. qjlt.setJudge_type("U");
  12655. qjlt.setMaterial_no(material_no);
  12656. qjlt.setCreate_name("sysJB");
  12657. qjlt.setProd_line("LT1");
  12658. mapper.insertQcmJudgeLog(qjlt);
  12659. QcmJudgeOperateLog qjog = new QcmJudgeOperateLog();
  12660. qjog.setOperate_name(username);
  12661. qjog.setProd_line("LT1");
  12662. qjog.setOperate_type("引用性能");
  12663. qjog.setParams(material_no);
  12664. qjog.setBatchno(material_no.substring(0, 12));
  12665. qjog.setMemo(list2.get(0).get("PHYSRESULT").toString());
  12666. mapper.insertQcmJudgeOperateLog(qjog);
  12667. }else{
  12668. SqlSession.close();
  12669. cro.setV_errCode(-1);
  12670. cro.setV_errMsg("引用性能失败,未找到相应合格性能!");
  12671. return cro;
  12672. }
  12673. }else{
  12674. SqlSession.close();
  12675. cro.setV_errCode(-1);
  12676. cro.setV_errMsg("引用性能失败,未找到相应性能!");
  12677. return cro;
  12678. }
  12679. }
  12680. } catch (Exception e) {
  12681. SqlSession.rollback();
  12682. SqlSession.close();
  12683. cro.setV_errCode(-1);
  12684. cro.setV_errMsg("引用性能失败"+e.getMessage());
  12685. return cro;
  12686. }
  12687. SqlSession.commit();
  12688. SqlSession.close();
  12689. cro.setV_errCode(1);
  12690. return cro;
  12691. }
  12692. public CoreReturnObject doQuote(String material_no,String username){
  12693. Connection conn = this.getDao("testDao").getConnection();
  12694. try{
  12695. String storage = "{CALL ZHB1_QCM_JHY_SAMPLE_TIPS2(?,?,?)}";
  12696. CallableStatement cstm = conn.prepareCall(storage);
  12697. cstm.setString(1,material_no);
  12698. cstm.setString(2,username);
  12699. cstm.registerOutParameter(3,java.sql.Types.VARCHAR);
  12700. cstm.execute();
  12701. if(cstm.getString(3) != null){
  12702. if(!cstm.getString(3).equals("0") && !cstm.getString(3).equals("1") && !cstm.getString(3).equals("2") ){
  12703. cro.setV_errCode(-1);
  12704. cro.setV_errMsg(cstm.getString(3).toString());
  12705. return cro;
  12706. }else if(cstm.getString(3).equals("1")){
  12707. cro.setV_errCode(1);//引用成功
  12708. //return cro;
  12709. }else if(cstm.getString(3).equals("2")){
  12710. cro.setV_errCode(-1);
  12711. cro.setV_errMsg("这个子板需从新材质判定请稍等一分钟再点击刷新正在材质判定中!");
  12712. return cro;
  12713. }else if(cstm.getString(3).equals("0")){
  12714. cro.setV_errCode(-1);
  12715. cro.setV_errMsg("未找到相应可以引用的性能!");
  12716. return cro;
  12717. }
  12718. }
  12719. cstm.close();
  12720. } catch (Exception e) {
  12721. cro.setV_errCode(-1);
  12722. cro.setV_errMsg("引用失败!"+e.getMessage());
  12723. return cro;
  12724. }
  12725. cro.setV_errCode(1);
  12726. return cro;
  12727. }
  12728. public static String post1(String json,String URL) {
  12729. HttpClient client = new DefaultHttpClient();
  12730. HttpPost post = new HttpPost(URL);
  12731. post.setHeader("Content-Type", "application/x-www-form-urlencoded");
  12732. post.addHeader("Authorization", "Basic YWRtaW46");
  12733. String result = "";
  12734. try {
  12735. StringEntity s = new StringEntity(json, "utf-8");
  12736. s.setContentEncoding(new BasicHeader(HTTP.CONTENT_TYPE,
  12737. "application/json"));
  12738. post.setEntity(s);
  12739. // 发送请求
  12740. HttpResponse httpResponse = client.execute(post);
  12741. // 获取响应输入流
  12742. InputStream inStream = httpResponse.getEntity().getContent();
  12743. BufferedReader reader = new BufferedReader(new InputStreamReader(
  12744. inStream, "utf-8"));
  12745. StringBuilder strber = new StringBuilder();
  12746. String line = null;
  12747. while ((line = reader.readLine()) != null)
  12748. strber.append(line + "\n");
  12749. inStream.close();
  12750. result = strber.toString();
  12751. System.out.println(result);
  12752. if (httpResponse.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
  12753. System.out.println("请求服务器成功,做相应处理");
  12754. } else {
  12755. System.out.println("请求服务端失败");
  12756. }
  12757. } catch (Exception e) {
  12758. System.out.println("请求异常");
  12759. throw new RuntimeException(e);
  12760. }
  12761. return result;
  12762. }
  12763. /** 待判
  12764. * 二炼钢综合判定界面
  12765. **/
  12766. @SuppressWarnings({ "unused", "rawtypes", "unchecked" })
  12767. public CoreReturnObject JudgedLG(String sbb) throws Exception{
  12768. try {
  12769. JSONObject json=JSON.parseObject(sbb);
  12770. String FLAG=json.getString("FLAG");
  12771. String USER_NAME=json.getString("USER_NAME");
  12772. String HEAT_NO=json.getString("HEAT_NO");
  12773. String MATERIAL_NO = json.getString("MATERIAL_NO");
  12774. JSONArray jsonArray = JSON.parseArray(MATERIAL_NO);
  12775. JSONObject jsonObj = new JSONObject();
  12776. jsonObj.put("FLAG", FLAG);
  12777. jsonObj.put("USER_NAME", USER_NAME);
  12778. jsonObj.put("HEAT_NO", HEAT_NO);
  12779. jsonObj.put("MATERIAL_NO", jsonArray);
  12780. String url = "http://10.70.0.237:9000/LgdoChemJudgeService?wsdl";
  12781. String result = QcmJhyElementsServiceImpl.callWebserviceASMX(url,"UpdateWaitJudgeFlag",jsonObj.toString());
  12782. JSONObject jo = JSONObject.parseObject(result);
  12783. if(jo.get("code").toString().equals("1")){
  12784. throw new Exception("待判失败!" + jo.get("message").toString());
  12785. }
  12786. } catch (Exception e) {
  12787. SqlSession.rollback();
  12788. cro.setV_errCode(-1);
  12789. cro.setV_errMsg("待判失败!"+e.getMessage());
  12790. }
  12791. SqlSession.close();
  12792. return cro;
  12793. }
  12794. }