SystemModuleLogic.cs 260 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788678967906791679267936794679567966797679867996800680168026803680468056806680768086809681068116812681368146815681668176818681968206821682268236824682568266827682868296830683168326833683468356836683768386839684068416842684368446845684668476848684968506851685268536854685568566857685868596860686168626863686468656866686768686869687068716872687368746875687668776878687968806881688268836884688568866887688868896890689168926893689468956896689768986899690069016902690369046905690669076908690969106911691269136914691569166917691869196920692169226923692469256926692769286929693069316932693369346935693669376938693969406941694269436944694569466947694869496950695169526953695469556956695769586959696069616962696369646965696669676968696969706971697269736974697569766977697869796980698169826983698469856986698769886989699069916992699369946995699669976998699970007001700270037004700570067007700870097010701170127013701470157016701770187019702070217022702370247025702670277028702970307031703270337034703570367037703870397040704170427043704470457046704770487049705070517052705370547055705670577058705970607061706270637064706570667067706870697070707170727073707470757076707770787079708070817082708370847085708670877088708970907091709270937094709570967097709870997100710171027103710471057106710771087109711071117112711371147115711671177118711971207121712271237124712571267127712871297130
  1. /*******************************************************************************
  2. * Copyright(c) 2014 DongkeSoft All rights reserved. / Confidential
  3. * 类的信息:
  4. * 1.程序名称:SystemModuleLogic.cs
  5. * 2.功能描述:系统管理数据查询处理
  6. * 编辑履历:
  7. * 作者 日期 版本 修改内容
  8. * 张国印 2014/09/12 1.00 新建
  9. *******************************************************************************/
  10. using System;
  11. using System.Data;
  12. using System.Linq;
  13. using System.Text;
  14. using Dongke.IBOSS.PRD.Basics.BaseResources;
  15. using Dongke.IBOSS.PRD.Basics.DataAccess;
  16. using Dongke.IBOSS.PRD.Service.DataModels;
  17. using Dongke.IBOSS.PRD.WCF.DataModels;
  18. using Oracle.ManagedDataAccess.Client;
  19. using System.Collections.Generic;
  20. using Dongke.IBOSS.PRD.Service.BarcodePrintService;
  21. namespace Dongke.IBOSS.PRD.Service.SystemModuleLogic
  22. {
  23. /// <summary>
  24. /// 系统管理数据查询处理
  25. /// </summary>
  26. public partial class SystemModuleLogic
  27. {
  28. #region 用户管理
  29. /// <summary>
  30. /// 用户登录
  31. /// </summary>
  32. /// <param name="requestEntity">用户请示对象</param>
  33. /// <param name="actionType">0:PC端;2:移动端</param>
  34. /// <returns>DataSet</returns>
  35. public static DataSet DoLoginRefresh(LoginRequestEntity requestEntity, string actionType)
  36. {
  37. LoginResultEntity resultEntity = new LoginResultEntity();
  38. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  39. try
  40. {
  41. // 读取License文件数据
  42. DataSet customer = new DataSet();
  43. //int readLock = LockLicenseHandle.ReadLisenceFile(requestEntity.LisenceFilePath, ref customer);
  44. #region 形成需要执行的SQL语句
  45. requestEntity.SessionKey = Guid.NewGuid().ToString().ToUpper();
  46. string strSql = "PRO_SYS_DoLogin";
  47. OracleParameter[] paras = new OracleParameter[]
  48. {
  49. new OracleParameter("in_AccountCode",requestEntity.AccountCode),
  50. new OracleParameter("in_UserCode",requestEntity.UserCode),
  51. new OracleParameter("in_UserPassword",requestEntity.Password),
  52. new OracleParameter("in_MAC",requestEntity.MACAddress),
  53. new OracleParameter("in_SessionKey",requestEntity.SessionKey),
  54. new OracleParameter("in_ComputerName",requestEntity.ComputerName),
  55. new OracleParameter("in_IP",requestEntity.IPAddress),
  56. new OracleParameter("in_LoginType",actionType),
  57. new OracleParameter("out_LoginStatus",OracleDbType.Int16, ParameterDirection.Output),
  58. new OracleParameter("out_UserOrganization",OracleDbType.RefCursor, ParameterDirection.Output),
  59. new OracleParameter("out_Navigation",OracleDbType.RefCursor, ParameterDirection.Output), //用户导航菜单
  60. new OracleParameter("out_UserRightData",OracleDbType.RefCursor, ParameterDirection.Output), //用户功能权限
  61. new OracleParameter("out_UserRangeRightData",OracleDbType.RefCursor, ParameterDirection.Output), //用户范围权限
  62. new OracleParameter("out_Function",OracleDbType.RefCursor, ParameterDirection.Output) //系统功能菜单
  63. };
  64. #endregion
  65. oracleConn.Open();
  66. //int loginStatus = 0;
  67. DataSet returnDataSet = oracleConn.ExecStoredProcedure(strSql, paras);
  68. oracleConn.Close();
  69. return returnDataSet;
  70. }
  71. finally
  72. {
  73. if (oracleConn.ConnState == ConnectionState.Open)
  74. {
  75. oracleConn.Close();
  76. }
  77. }
  78. }
  79. /// <summary>
  80. /// 获取用户列表
  81. /// </summary>
  82. /// <param name="requestEntity">用户实体</param>
  83. /// <param name="sUserInfo">用户基本信息</param>
  84. /// <returns>DataSet数据集</returns>
  85. public static DataSet SearchUserData(SUserEntity requestEntity, SUserInfo sUserInfo)
  86. {
  87. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  88. try
  89. {
  90. con.Open();
  91. string sql = @"SELECT
  92. DISTINCT
  93. 0 AS Sel,
  94. U.UserID,
  95. U.UserCode,
  96. U.limitMAC,
  97. U.UserName,
  98. POST.PostName,
  99. U.CanPCLogin,
  100. U.CanSmartLogin,
  101. U.IsWorker,
  102. U.IsGroutingWorker,
  103. U.IsPublicBody,
  104. U.CanLoginPRD,
  105. U.CanLoginMBC,
  106. U.ValueFlag,
  107. O.OrganizationName,
  108. O.OrganizationFullName,
  109. UL.ISLOCKED,
  110. U.Remarks,
  111. Printer.PrinterName BarcodePrinter,
  112. plc.plcName,
  113. (
  114. SELECT
  115. listagg ( to_char( s.staffname ), ',' ) within GROUP ( ORDER BY s.staffcode ) staffnames
  116. FROM
  117. tp_mst_userstaff us
  118. INNER JOIN tp_hr_staff s ON s.staffid = us.staffid
  119. WHERE
  120. us.userid = U.userid
  121. ) staffnames
  122. FROM
  123. TP_MST_User U
  124. LEFT JOIN TP_MST_Organization O ON U.Organizationid = O.Organizationid
  125. LEFT JOIN TP_MST_POST POST ON POST.POSTID = U.POST
  126. LEFT JOIN TP_MST_BarcodePrinter Printer ON Printer.PrinterID = U.BarcodePrinterID
  127. LEFT JOIN TP_MST_PLC plc ON plc.plcid = U.plcid
  128. INNER JOIN TP_MST_USERLOGIN UL ON U.USERID = UL.USERID
  129. LEFT JOIN TP_MST_USERSTAFF us ON us.USERID = u.USERID
  130. LEFT JOIN TP_HR_STAFF staff ON staff.STAFFID = us.STAFFID
  131. WHERE
  132. U.AccountID = 1 ";
  133. if (requestEntity.UserCode != "" && requestEntity.UserCode != null) {
  134. sql += " AND U.UserCode like '%" + requestEntity.UserCode + "%'";
  135. }
  136. if (requestEntity.UserName != "" && requestEntity.UserName != null)
  137. {
  138. sql += " AND U.UserCode like '%" + requestEntity.UserName + "%'";
  139. }
  140. if (requestEntity.OrganizationID >0)
  141. {
  142. sql += "AND U.OrganizationID="+ requestEntity.OrganizationID + "";
  143. }
  144. if (requestEntity.Remarks != "" && requestEntity.Remarks != null)
  145. {
  146. sql += " AND U.Remarks like '%" + requestEntity.UserCode + "%'";
  147. }
  148. if (requestEntity.LimitMAC != "" && requestEntity.LimitMAC != null)
  149. {
  150. sql += " AND U.LimitMAC like '%" + requestEntity.LimitMAC + "%'";
  151. }
  152. if (requestEntity.IsWorker ==1)
  153. {
  154. sql += "AND U.isWorker=" + requestEntity.IsWorker + "";
  155. }
  156. if (requestEntity.IsValueFlag != "" && requestEntity.IsValueFlag != null)
  157. {
  158. sql += "AND U.ValueFlag=" + requestEntity.IsValueFlag + "";
  159. }
  160. if (requestEntity.IsLocked != "" && requestEntity.IsLocked != null)
  161. {
  162. sql += "AND U.IsLocked=" + requestEntity.IsLocked + "";
  163. }
  164. if (requestEntity.StaffName != "" && requestEntity.StaffName != null)
  165. {
  166. sql += " AND STAFF.STAFFNAME like '%" + requestEntity.StaffName + "%'";
  167. }
  168. DataSet ds = con.GetSqlResultToDs(sql, null);
  169. return ds;
  170. }
  171. catch (Exception ex)
  172. {
  173. throw ex;
  174. }
  175. finally
  176. {
  177. if (con.ConnState == ConnectionState.Open)
  178. {
  179. con.Close();
  180. }
  181. }
  182. }
  183. /// <summary>
  184. /// 是否存在重复用户编码
  185. /// </summary>
  186. /// <param name="UserCode">用户编码</param>
  187. /// <param name="sUserInfo">用户基本信息</param>
  188. /// <returns>DataSet</returns>
  189. public static DataSet IsExistsUserCode(string UserCode, SUserInfo sUserInfo)
  190. {
  191. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  192. try
  193. {
  194. con.Open();
  195. OracleParameter[] paras = new OracleParameter[]{
  196. new OracleParameter("in_accountID",sUserInfo.AccountID),
  197. new OracleParameter("in_userID",sUserInfo.UserID),
  198. new OracleParameter("in_userCode",UserCode),
  199. new OracleParameter("rs_result",OracleDbType.RefCursor),
  200. };
  201. paras[3].Direction = ParameterDirection.Output;
  202. DataSet ds = con.ExecStoredProcedure("PRO_MST_GetUserCode", paras);
  203. return ds;
  204. }
  205. catch (Exception ex)
  206. {
  207. throw ex;
  208. }
  209. finally
  210. {
  211. if (con.ConnState == ConnectionState.Open)
  212. {
  213. con.Close();
  214. }
  215. }
  216. }
  217. /// <summary>
  218. /// 是否存在重复生产编码
  219. /// </summary>
  220. /// <param name="ProductionWorkCode">生产编码</param>
  221. /// <param name="sUserInfo">用户基本信息</param>
  222. /// <returns>DataSet</returns>
  223. public static DataSet IsExistWorkCode(string ProductionWorkCode, SUserInfo sUserInfo)
  224. {
  225. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  226. try
  227. {
  228. con.Open();
  229. OracleParameter[] paras = new OracleParameter[]{
  230. new OracleParameter("in_accountID",sUserInfo.AccountID),
  231. new OracleParameter("in_userID",sUserInfo.UserID),
  232. new OracleParameter("in_workrCode",ProductionWorkCode),
  233. new OracleParameter("rs_result",OracleDbType.RefCursor),
  234. };
  235. paras[3].Direction = ParameterDirection.Output;
  236. DataSet ds = con.ExecStoredProcedure("PRO_MST_GetWorkCode", paras);
  237. return ds;
  238. }
  239. catch (Exception ex)
  240. {
  241. throw ex;
  242. }
  243. finally
  244. {
  245. if (con.ConnState == ConnectionState.Open)
  246. {
  247. con.Close();
  248. }
  249. }
  250. }
  251. /// <summary>
  252. /// 获取用户信息
  253. /// </summary>
  254. /// <param name="UserID">用户ID</param>
  255. /// <returns>DataSet用户信息集合</returns>
  256. public static DataSet GetUserRowData(int UserID)
  257. {
  258. using (OracleConnection oracleConnection = new OracleConnection(DataManager.ConnectionString))
  259. {
  260. // 打开数据库连接
  261. oracleConnection.Open();
  262. // 为执行命令对象赋值
  263. OracleCommand oracleCommand = new OracleCommand();
  264. oracleCommand.Connection = oracleConnection;
  265. try
  266. {
  267. oracleCommand.CommandType = CommandType.StoredProcedure;
  268. oracleCommand.CommandText = "PRO_MST_GetUserRowData";
  269. IDataParameter[] dd = new OracleParameter[]{
  270. new OracleParameter("in_userID",UserID),
  271. new OracleParameter("rs_result",OracleDbType.RefCursor),
  272. };
  273. oracleCommand.Parameters.AddRange(dd);
  274. oracleCommand.Parameters[1].Direction = System.Data.ParameterDirection.Output;
  275. OracleDataAdapter da = new OracleDataAdapter(oracleCommand);
  276. DataSet ds = new DataSet();
  277. da.Fill(ds);
  278. // 清除sql执行对象的属性值
  279. oracleCommand.Parameters.Clear();
  280. oracleCommand.Dispose();
  281. //获取工号工种关联
  282. OracleCommand oracleCommandJobs = new OracleCommand();
  283. oracleCommandJobs.CommandType = CommandType.Text;
  284. oracleCommandJobs.CommandText = @" Select uj.*,j.JobsName,j.JobsCode,j.Remarks from TP_MST_UserJobs uj
  285. Inner join TP_MST_Jobs j On uj.JobsID = j.JobsID where uj.UserID=" + UserID;
  286. oracleCommandJobs.Connection = oracleConnection;
  287. OracleDataAdapter daJobs = new OracleDataAdapter(oracleCommandJobs);
  288. DataSet dsJobs = new DataSet();
  289. daJobs.Fill(dsJobs);
  290. // 清除sql执行对象的属性值
  291. oracleCommandJobs.Dispose();
  292. if (dsJobs.Tables.Count != 0)
  293. {
  294. DataTable dtJobs = dsJobs.Tables[0].Copy();
  295. dtJobs.TableName = "dtJobs";
  296. ds.Tables.Add(dtJobs);
  297. }
  298. return ds;
  299. }
  300. catch (Exception ex)
  301. {
  302. throw ex;
  303. }
  304. finally
  305. {
  306. // 释放资源
  307. if (oracleConnection.State != ConnectionState.Closed && oracleConnection != null)
  308. {
  309. oracleConnection.Close();
  310. }
  311. }
  312. }
  313. }
  314. /// <summary>
  315. /// 根据工号ID获取该工号的工种关联
  316. /// </summary>
  317. /// <param name="UserId">用户ID</param>
  318. /// <returns>DataSet</returns>
  319. public static DataSet GetJobByUserId(int UserId)
  320. {
  321. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  322. try
  323. {
  324. oracleConn.Open();
  325. StringBuilder sbSql = new StringBuilder();
  326. sbSql.Append(@"Select JobsID as UserJobsID,JobsCode as UserJobsCode,JobsName as UserJobsName
  327. from TP_MST_Jobs where JobsID in
  328. (Select JobsID From TP_MST_UserJobs where UserID=:UserID) ");
  329. OracleParameter[] paras = new OracleParameter[]{
  330. new OracleParameter(":UserID",UserId)
  331. };
  332. DataSet dsStaff = oracleConn.GetSqlResultToDs(sbSql.ToString(), paras);
  333. return dsStaff;
  334. }
  335. catch (Exception ex)
  336. {
  337. if (oracleConn.ConnState == ConnectionState.Open)
  338. {
  339. oracleConn.Close();
  340. }
  341. throw ex;
  342. }
  343. finally
  344. {
  345. if (oracleConn.ConnState == ConnectionState.Open)
  346. {
  347. oracleConn.Close();
  348. }
  349. }
  350. }
  351. /// <summary>
  352. /// 根据工号ID获取相关的员工及对应工号工种信息
  353. /// </summary>
  354. /// <param name="UserId">用户ID</param>
  355. /// <returns>DataSet</returns>
  356. public static DataSet GetUserStaffByUserId(int UserId)
  357. {
  358. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  359. try
  360. {
  361. oracleConn.Open();
  362. StringBuilder sbSql = new StringBuilder();
  363. sbSql.Append( "SELECT USF.USERSTAFFID AS INFOID,\n" +
  364. " USF.USERID,\n" +
  365. " USF.UJOBSID AS USERJOBSID,\n" +
  366. " USF.STAFFID,\n" +
  367. " USF.OPTIMESTAMP,\n" +
  368. " J.JOBSNAME AS USERJOBSNAME,\n" +
  369. " J.JOBSCODE AS USERJOBSCODE,\n" +
  370. " S.STAFFCODE,\n" +
  371. " S.STAFFNAME,\n" +
  372. " SJ.JOBSNAME,\n" +
  373. " SS.STAFFSTATUSNAME\n" +
  374. " FROM TP_MST_USERSTAFF USF\n" +
  375. " INNER JOIN TP_MST_JOBS J\n" +
  376. " ON USF.UJOBSID = J.JOBSID\n" +
  377. " INNER JOIN TP_HR_STAFF S\n" +
  378. " ON USF.STAFFID = S.STAFFID\n" +
  379. " INNER JOIN TP_MST_JOBS SJ\n" +
  380. " ON S.JOBS = SJ.JOBSID\n" +
  381. " INNER JOIN TP_SYS_STAFFSTATUS SS\n" +
  382. " ON S.STAFFSTATUS = SS.STAFFSTATUSID\n" +
  383. " WHERE USERID = :USERID");
  384. OracleParameter[] paras = new OracleParameter[]{
  385. new OracleParameter(":USERID",UserId)
  386. };
  387. DataSet dsStaff = oracleConn.GetSqlResultToDs(sbSql.ToString(), paras);
  388. return dsStaff;
  389. }
  390. catch (Exception ex)
  391. {
  392. throw ex;
  393. }
  394. finally
  395. {
  396. if (oracleConn.ConnState == ConnectionState.Open)
  397. {
  398. oracleConn.Close();
  399. }
  400. }
  401. }
  402. /// <summary>
  403. /// 根据工号ID获取员工
  404. /// </summary>
  405. /// <param name="UserId">用户ID</param>
  406. /// <returns>DataSet</returns>
  407. public static DataSet GetStaffByUserId(int UserId)
  408. {
  409. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  410. try
  411. {
  412. oracleConn.Open();
  413. StringBuilder sbSql = new StringBuilder();
  414. sbSql.Append(@"Select * from TP_HR_Staff where StaffID in
  415. (Select StaffID From TP_MST_UserStaff where UserID=:UserID)
  416. And ValueFlag = 1 And (StaffStatus = 1 or StaffStatus = 2) ");
  417. OracleParameter[] paras = new OracleParameter[]{
  418. new OracleParameter(":UserID",UserId)
  419. };
  420. DataSet dsStaff = oracleConn.GetSqlResultToDs(sbSql.ToString(), paras);
  421. return dsStaff;
  422. }
  423. catch (Exception ex)
  424. {
  425. if (oracleConn.ConnState == ConnectionState.Open)
  426. {
  427. oracleConn.Close();
  428. }
  429. throw ex;
  430. }
  431. finally
  432. {
  433. if (oracleConn.ConnState == ConnectionState.Open)
  434. {
  435. oracleConn.Close();
  436. }
  437. }
  438. }
  439. /// <summary>
  440. /// 获取帐套信息
  441. /// </summary>
  442. /// <param name="pValue">是否停用</param>
  443. /// <returns>DataSet帐套信息</returns>
  444. public static DataSet GetAccountInfo(bool pValue)
  445. {
  446. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  447. try
  448. {
  449. string strValueFlag = "1";
  450. if (pValue)
  451. {
  452. strValueFlag = "0";
  453. }
  454. #region 对应要执行的SQL语句
  455. string strSql = "Select * From TP_MST_Account Where valueflag = :valueflag ORDER BY ValueFlag DESC,AccountCode";
  456. Oracle.ManagedDataAccess.Client.OracleParameter[] paras1 = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  457. {
  458. new Oracle.ManagedDataAccess.Client.OracleParameter(":valueflag",strValueFlag)
  459. };
  460. #endregion
  461. oracleConn.Open();
  462. DataSet result = oracleConn.GetSqlResultToDs(strSql, paras1);
  463. oracleConn.Close();
  464. return result;
  465. }
  466. catch (Exception ex)
  467. {
  468. if (oracleConn.ConnState == ConnectionState.Open)
  469. {
  470. oracleConn.Close();
  471. }
  472. throw ex;
  473. }
  474. }
  475. /// <summary>
  476. /// 获取全部帐套信息
  477. /// </summary>
  478. /// <returns>DataSet帐套信息</returns>
  479. public static DataSet GetAllAccountInfo()
  480. {
  481. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  482. try
  483. {
  484. string strSql = "Select * From TP_MST_Account ORDER BY ValueFlag DESC,AccountCode";
  485. oracleConn.Open();
  486. DataSet result = oracleConn.GetSqlResultToDs(strSql, null);
  487. oracleConn.Close();
  488. return result;
  489. }
  490. catch (Exception ex)
  491. {
  492. if (oracleConn.ConnState == ConnectionState.Open)
  493. {
  494. oracleConn.Close();
  495. }
  496. throw ex;
  497. }
  498. }
  499. /// <summary>
  500. /// 根据UserCode判断是否存在生产用户
  501. /// </summary>
  502. /// <param name="requestEntity">用户实体</param>
  503. /// <param name="sUserInfo">用户基本信息</param>
  504. /// <returns>DataSet数据集</returns>
  505. public static DataSet GetUserIsWorker(SUserEntity requestEntity, SUserInfo sUserInfo)
  506. {
  507. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  508. try
  509. {
  510. con.Open();
  511. string sqlString = "select * from tp_mst_user where AccountID=:AccountID and UserCode=:UserCode and IsWorker=1";
  512. OracleParameter[] paras = new OracleParameter[]{
  513. new OracleParameter(":AccountID",sUserInfo.AccountID),
  514. new OracleParameter(":UserCode",requestEntity.UserCode),
  515. };
  516. DataSet dsUserIsWorker = con.GetSqlResultToDs(sqlString, paras);
  517. return dsUserIsWorker;
  518. }
  519. catch (Exception ex)
  520. {
  521. throw ex;
  522. }
  523. finally
  524. {
  525. if (con.ConnState == ConnectionState.Open)
  526. {
  527. con.Close();
  528. }
  529. }
  530. }
  531. /// <summary>
  532. /// 获取用户范围权限
  533. /// </summary>
  534. /// <param name="PurviewType">权限类别</param>
  535. /// <param name="UserID">用户ID</param>
  536. /// <returns>DataSet</returns>
  537. public static DataSet GetUserPurview(int PurviewType, int UserID)
  538. {
  539. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  540. try
  541. {
  542. con.Open();
  543. string sqlString = "Select PurviewID from TP_MST_UserPurview where PurviewType= :PurviewType and UserID = :UserID";
  544. OracleParameter[] paras = new OracleParameter[]{
  545. new OracleParameter(":PurviewType",PurviewType),
  546. new OracleParameter(":UserID",UserID),
  547. };
  548. DataSet dsUserPurview = con.GetSqlResultToDs(sqlString, paras);
  549. return dsUserPurview;
  550. }
  551. catch (Exception ex)
  552. {
  553. throw ex;
  554. }
  555. finally
  556. {
  557. if (con.ConnState == ConnectionState.Open)
  558. {
  559. con.Close();
  560. }
  561. }
  562. }
  563. /// <summary>
  564. /// 获取工号下的所有工种信息
  565. /// </summary>
  566. /// <param name="UserID">工号ID</param>
  567. /// <param name="sUserInfo">用户基本信息</param>
  568. /// <returns>DataSet数据集</returns>
  569. public static DataSet GetAllJobsByUserID(int UserID, SUserInfo sUserInfo)
  570. {
  571. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  572. try
  573. {
  574. con.Open();
  575. string sqlString = @"select
  576. TP_MST_UserJobs.Userid,
  577. TP_MST_Jobs.JobsID as Jobs,
  578. TP_MST_Jobs.JobsName,
  579. TP_MST_Jobs.JobsCode
  580. from TP_MST_UserJobs
  581. left join TP_MST_Jobs
  582. on TP_MST_UserJobs.JobsID=TP_MST_Jobs.JobsID
  583. where TP_MST_UserJobs.Userid=:UserId and TP_MST_Jobs.Accountid=:Accountid
  584. ";
  585. OracleParameter[] paras = new OracleParameter[]{
  586. new OracleParameter(":Accountid",sUserInfo.AccountID),
  587. new OracleParameter(":UserId",UserID),
  588. };
  589. DataSet dsUserIsWorker = con.GetSqlResultToDs(sqlString, paras);
  590. return dsUserIsWorker;
  591. }
  592. catch (Exception ex)
  593. {
  594. throw ex;
  595. }
  596. finally
  597. {
  598. if (con.ConnState == ConnectionState.Open)
  599. {
  600. con.Close();
  601. }
  602. }
  603. }
  604. #endregion
  605. #region 获得组织机构记录
  606. /// <summary>
  607. /// 获得组织机构记录
  608. /// </summary>
  609. /// <param name="sUserInfo">用户基本信息</param>
  610. /// <param name="valueFlag">停用标识</param>
  611. /// <param name="leafFlag">只显示叶子节点标识0:全显示;1:显示叶子节点</param>
  612. /// <returns>DataTable</returns>
  613. /// <remarks>
  614. /// 陈冰 2014.09.01 新建
  615. /// </remarks>
  616. public static DataTable GetOrganization(SUserInfo sUserInfo, int valueFlag, int leafFlag)
  617. {
  618. using (OracleConnection oracleConnection = new OracleConnection(DataManager.ConnectionString))
  619. {
  620. // 打开数据库连接
  621. oracleConnection.Open();
  622. // 为执行命令对象赋值
  623. OracleCommand oracleCommand = new OracleCommand();
  624. oracleCommand.Connection = oracleConnection;
  625. try
  626. {
  627. oracleCommand.CommandType = CommandType.StoredProcedure;
  628. oracleCommand.CommandText = "PRO_MST_GetOrganization";
  629. IDataParameter[] dd = new OracleParameter[]{
  630. new OracleParameter("accountID",sUserInfo.AccountID),
  631. new OracleParameter("valueFlag",valueFlag),
  632. new OracleParameter("leafFlag",leafFlag),
  633. new OracleParameter("rs_result",OracleDbType.RefCursor),
  634. };
  635. oracleCommand.Parameters.AddRange(dd);
  636. oracleCommand.Parameters[3].Direction = System.Data.ParameterDirection.Output;
  637. OracleDataAdapter da = new OracleDataAdapter(oracleCommand);
  638. DataSet ds = new DataSet();
  639. da.Fill(ds);
  640. // 清除sql执行对象的属性值
  641. oracleCommand.Parameters.Clear();
  642. oracleCommand.Dispose();
  643. return ds.Tables[0];
  644. }
  645. catch (Exception ex)
  646. {
  647. throw ex;
  648. }
  649. finally
  650. {
  651. // 释放资源
  652. if (oracleConnection.State != ConnectionState.Closed && oracleConnection != null)
  653. {
  654. oracleConnection.Close();
  655. }
  656. }
  657. }
  658. }
  659. /// <summary>
  660. /// 查询组织机构一览
  661. /// </summary>
  662. /// <param name="requestEntity">组织机构实体类</param>
  663. /// <returns>DataSet</returns>
  664. public DataSet SearchOrganizationData(OrganizationEntity requestEntity)
  665. {
  666. using (OracleConnection oracleConnection = new OracleConnection(DataManager.ConnectionString))
  667. {
  668. // 打开数据库连接
  669. oracleConnection.Open();
  670. // 为执行命令对象赋值
  671. OracleCommand oracleCommand = new OracleCommand();
  672. oracleCommand.Connection = oracleConnection;
  673. try
  674. {
  675. oracleCommand.CommandType = CommandType.StoredProcedure;
  676. oracleCommand.CommandText = "PRO_MST_SearchOrganization";
  677. string sqlStringValueFlags = "";
  678. // 正常标识
  679. if (requestEntity.ValueFlags != null
  680. && requestEntity.ValueFlags.Length == 1)
  681. {
  682. for (int i = 0; i < requestEntity.ValueFlags.Length; i++)
  683. {
  684. if (i == Constant.INT_IS_ZERO)
  685. {
  686. sqlStringValueFlags += requestEntity.ValueFlags[i].ToString();
  687. }
  688. else
  689. {
  690. sqlStringValueFlags += requestEntity.ValueFlags[i].ToString();
  691. }
  692. }
  693. }
  694. IDataParameter[] dd = new OracleParameter[]{
  695. new OracleParameter("in_accountID",requestEntity.in_AccountID),
  696. new OracleParameter("in_userID",requestEntity.in_UserID),
  697. new OracleParameter("in_operateOrganization",requestEntity.OperateOrganization?1:0),
  698. new OracleParameter("in_isLimitAccountOrganization",requestEntity.IsLimitAccountOrganization?1:0),
  699. new OracleParameter("in_isOnlyDisplayEnd",requestEntity.IsOnlyDisplayEnd?1:0),
  700. new OracleParameter("in_organizationID",requestEntity.OrganizationID),
  701. new OracleParameter("in_organizationCode",requestEntity.OrganizationCode),
  702. new OracleParameter("in_organizationName",requestEntity.OrganizationName),
  703. new OracleParameter("in_leader",requestEntity.Leader),
  704. new OracleParameter("in_letterMarket",requestEntity.LetterMarket),
  705. new OracleParameter("in_telephone",requestEntity.Telephone),
  706. new OracleParameter("in_address",requestEntity.Address),
  707. new OracleParameter("in_remarks",requestEntity.Remarks),
  708. new OracleParameter("in_valueFlags",sqlStringValueFlags),
  709. new OracleParameter("rs_result",OracleDbType.RefCursor),
  710. };
  711. oracleCommand.Parameters.AddRange(dd);
  712. oracleCommand.Parameters[14].Direction = System.Data.ParameterDirection.Output;
  713. OracleDataAdapter da = new OracleDataAdapter(oracleCommand);
  714. DataSet ds = new DataSet();
  715. da.Fill(ds);
  716. // 清除sql执行对象的属性值
  717. oracleCommand.Parameters.Clear();
  718. oracleCommand.Dispose();
  719. return ds;
  720. }
  721. catch (Exception ex)
  722. {
  723. throw ex;
  724. }
  725. finally
  726. {
  727. // 释放资源
  728. if (oracleConnection.State != ConnectionState.Closed && oracleConnection != null)
  729. {
  730. oracleConnection.Close();
  731. }
  732. }
  733. }
  734. }
  735. /// <summary>
  736. /// 获取组织机构行数据
  737. /// </summary>
  738. /// <param name="OrganizationID">组织机构ID</param>
  739. /// <returns>DataSet</returns>
  740. public DataSet GetOrganizationRowData(int OrganizationID)
  741. {
  742. using (OracleConnection oracleConnection = new OracleConnection(DataManager.ConnectionString))
  743. {
  744. // 打开数据库连接
  745. oracleConnection.Open();
  746. // 为执行命令对象赋值
  747. OracleCommand oracleCommand = new OracleCommand();
  748. oracleCommand.Connection = oracleConnection;
  749. try
  750. {
  751. oracleCommand.CommandType = CommandType.StoredProcedure;
  752. oracleCommand.CommandText = "PRO_MST_GetOrganizationRowData";
  753. IDataParameter[] dd = new OracleParameter[]{
  754. new OracleParameter("in_organizationID",OrganizationID),
  755. new OracleParameter("rs_result",OracleDbType.RefCursor),
  756. };
  757. oracleCommand.Parameters.AddRange(dd);
  758. oracleCommand.Parameters[1].Direction = System.Data.ParameterDirection.Output;
  759. OracleDataAdapter da = new OracleDataAdapter(oracleCommand);
  760. DataSet ds = new DataSet();
  761. da.Fill(ds);
  762. // 清除sql执行对象的属性值
  763. oracleCommand.Parameters.Clear();
  764. oracleCommand.Dispose();
  765. return ds;
  766. }
  767. catch (Exception ex)
  768. {
  769. throw ex;
  770. }
  771. finally
  772. {
  773. // 释放资源
  774. if (oracleConnection.State != ConnectionState.Closed && oracleConnection != null)
  775. {
  776. oracleConnection.Close();
  777. }
  778. }
  779. }
  780. }
  781. #endregion
  782. #region 获得工序模型类别
  783. /// <summary>
  784. /// 获得工序模型类别
  785. /// </summary>
  786. /// <returns>DataTable</returns>
  787. /// <remarks>
  788. /// 陈冰 2014.09.01 新建
  789. /// </remarks>
  790. public DataTable GetSYSProcessModelType()
  791. {
  792. using (OracleConnection oracleConnection = new OracleConnection(DataManager.ConnectionString))
  793. {
  794. // 打开数据库连接
  795. oracleConnection.Open();
  796. // 为执行命令对象赋值
  797. OracleCommand oracleCommand = new OracleCommand();
  798. oracleCommand.Connection = oracleConnection;
  799. try
  800. {
  801. oracleCommand.CommandType = CommandType.StoredProcedure;
  802. oracleCommand.CommandText = "PRO_SYS_GetProcessModelType";
  803. IDataParameter[] paras = new OracleParameter[]{
  804. new OracleParameter("rs_result",OracleDbType.RefCursor),
  805. };
  806. oracleCommand.Parameters.AddRange(paras);
  807. oracleCommand.Parameters[0].Direction = System.Data.ParameterDirection.Output;
  808. OracleDataAdapter da = new OracleDataAdapter(oracleCommand);
  809. DataSet ds = new DataSet();
  810. da.Fill(ds);
  811. // 清除sql执行对象的属性值
  812. oracleCommand.Parameters.Clear();
  813. oracleCommand.Dispose();
  814. return ds.Tables[0];
  815. }
  816. catch (Exception ex)
  817. {
  818. throw ex;
  819. }
  820. finally
  821. {
  822. // 释放资源
  823. if (oracleConnection.State != ConnectionState.Closed && oracleConnection != null)
  824. {
  825. oracleConnection.Close();
  826. }
  827. }
  828. }
  829. }
  830. #endregion
  831. #region 数据字典和基础数据相关
  832. #region SearchBox控件数据源
  833. /// <summary>
  834. /// 获取产品档案的数据
  835. /// </summary>
  836. /// <param name="cre"></param>
  837. /// <param name="sUserInfo"></param>
  838. /// <returns></returns>
  839. public static ServiceResultEntity GetGoods(ClientRequestEntity cre, SUserInfo sUserInfo)
  840. {
  841. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  842. try
  843. {
  844. ServiceResultEntity sre = new ServiceResultEntity();
  845. string goodsCode = cre.Properties["GoodsCode"] + "";
  846. string goodsName = cre.Properties["GoodsName"] + "";
  847. string sqlString = " SELECT 0 AS SEL, GOODSID, GOODSCODE, GOODSNAME, GOODSSPECIFICATION\n" +
  848. " FROM TP_MST_GOODS\n" +
  849. " WHERE VALUEFLAG = '1'\n" +
  850. " AND CEASEFLAG = '1'\n" +
  851. " AND ACCOUNTID = :accountID\n";
  852. List<OracleParameter> parameters = new List<OracleParameter>();
  853. parameters.Add(new OracleParameter(":accountID", OracleDbType.Int32, sUserInfo.AccountID, ParameterDirection.Input));
  854. // 产品编码
  855. if (!string.IsNullOrEmpty(goodsCode))
  856. {
  857. sqlString += " AND GOODSCODE LIKE :goodsCode\n";
  858. parameters.Add(new OracleParameter(":goodsCode", OracleDbType.Varchar2, "%" + goodsCode + "%", ParameterDirection.Input));
  859. }
  860. // 产品名称
  861. if (!string.IsNullOrEmpty(goodsName))
  862. {
  863. sqlString += " AND GOODSNAME LIKE :goodsName\n";
  864. parameters.Add(new OracleParameter(":goodsName", OracleDbType.Varchar2, "%" + goodsName + "%", ParameterDirection.Input));
  865. }
  866. sqlString += " ORDER BY GOODSCODE";
  867. sre.Data = con.GetSqlResultToDs(sqlString, parameters.ToArray());
  868. return sre;
  869. }
  870. catch (Exception ex)
  871. {
  872. throw ex;
  873. }
  874. finally
  875. {
  876. if (con.ConnState == ConnectionState.Open)
  877. {
  878. con.Close();
  879. }
  880. }
  881. }
  882. /// <summary>
  883. /// 获取产品类别的数据
  884. /// </summary>
  885. /// <param name="cre"></param>
  886. /// <param name="sUserInfo"></param>
  887. /// <returns></returns>
  888. public static ServiceResultEntity GetGoodsType(ClientRequestEntity cre, SUserInfo sUserInfo)
  889. {
  890. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  891. try
  892. {
  893. ServiceResultEntity sre = new ServiceResultEntity();
  894. string goodsTypeCode = cre.Properties["GoodsTypeCode"] + "";
  895. string goodsTypeName = cre.Properties["GoodsTypeName"] + "";
  896. string IsLeafNode = cre.Properties["IsLeafNode"] + "";
  897. string sqlString = "SELECT 0 AS SEL,\n" +
  898. " GOODSTYPEID,\n" +
  899. " GOODSTYPECODE,\n" +
  900. " GOODSTYPENAME,\n" +
  901. " GOODSTYPEFULLNAME\n" +
  902. " FROM TP_MST_GOODSTYPE\n" +
  903. " WHERE VALUEFLAG = 1\n" +
  904. " AND ACCOUNTID = :accountID\n";
  905. List<OracleParameter> parameters = new List<OracleParameter>();
  906. parameters.Add(new OracleParameter(":accountID", OracleDbType.Int32, sUserInfo.AccountID, ParameterDirection.Input));
  907. // 是否只查询子节点
  908. if ("1".Equals(IsLeafNode))
  909. {
  910. sqlString += " AND ISLEAFNODE = 1\n";
  911. }
  912. // 产品类别编码
  913. if (!string.IsNullOrEmpty(goodsTypeCode))
  914. {
  915. sqlString += " AND GOODSTYPECODE LIKE :goodsTypeCode\n";
  916. parameters.Add(new OracleParameter(":goodsTypeCode", OracleDbType.Varchar2, "%" + goodsTypeCode + "%", ParameterDirection.Input));
  917. }
  918. // 产品类别名称
  919. if (!string.IsNullOrEmpty(goodsTypeName))
  920. {
  921. sqlString += " AND GOODSTYPENAME LIKE :goodsTypeName\n";
  922. parameters.Add(new OracleParameter(":goodsTypeName", OracleDbType.Varchar2, "%" + goodsTypeName + "%", ParameterDirection.Input));
  923. }
  924. sqlString += " ORDER BY GOODSTYPECODE";
  925. sre.Data = con.GetSqlResultToDs(sqlString, parameters.ToArray());
  926. return sre;
  927. }
  928. catch (Exception ex)
  929. {
  930. throw ex;
  931. }
  932. finally
  933. {
  934. if (con.ConnState == ConnectionState.Open)
  935. {
  936. con.Close();
  937. }
  938. }
  939. }
  940. /// <summary>
  941. /// 获取组织机构的数据
  942. /// </summary>
  943. /// <param name="cre"></param>
  944. /// <param name="sUserInfo"></param>
  945. /// <returns></returns>
  946. public static ServiceResultEntity GetOrganization(ClientRequestEntity cre, SUserInfo sUserInfo)
  947. {
  948. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  949. try
  950. {
  951. ServiceResultEntity sre = new ServiceResultEntity();
  952. string organizationCode = cre.Properties["OrganizationCode"] + "";
  953. string organizationName = cre.Properties["OrganizationName"] + "";
  954. string isLeafNode = cre.Properties["IsLeafNode"] + "";
  955. string sqlString = "SELECT 0 AS SEL,\n" +
  956. " ORGANIZATIONID,\n" +
  957. " ORGANIZATIONCODE,\n" +
  958. " ORGANIZATIONNAME,\n" +
  959. " ORGANIZATIONFULLNAME\n" +
  960. " FROM TP_MST_ORGANIZATION\n" +
  961. " WHERE VALUEFLAG = 1\n" +
  962. " AND ACCOUNTID = :accountID\n";
  963. List<OracleParameter> parameters = new List<OracleParameter>();
  964. parameters.Add(new OracleParameter(":accountID", OracleDbType.Int32, sUserInfo.AccountID, ParameterDirection.Input));
  965. // 是否只查询子节点
  966. if ("1".Equals(isLeafNode))
  967. {
  968. sqlString += " AND ISLEAFNODE = 1\n";
  969. }
  970. // 组织机构编码
  971. if (!string.IsNullOrEmpty(organizationCode))
  972. {
  973. sqlString += " AND ORGANIZATIONCODE LIKE :OrganizationCode\n";
  974. parameters.Add(new OracleParameter(":OrganizationCode", OracleDbType.Varchar2, "%" + organizationCode + "%", ParameterDirection.Input));
  975. }
  976. // 组织机构名称
  977. if (!string.IsNullOrEmpty(organizationName))
  978. {
  979. sqlString += " AND ORGANIZATIONNAME LIKE :OrganizationName\n";
  980. parameters.Add(new OracleParameter(":OrganizationName", OracleDbType.Varchar2, "%" + organizationName + "%", ParameterDirection.Input));
  981. }
  982. sqlString += " ORDER BY ORGANIZATIONCODE";
  983. sre.Data = con.GetSqlResultToDs(sqlString, parameters.ToArray());
  984. return sre;
  985. }
  986. catch (Exception ex)
  987. {
  988. throw ex;
  989. }
  990. finally
  991. {
  992. if (con.ConnState == ConnectionState.Open)
  993. {
  994. con.Close();
  995. }
  996. }
  997. }
  998. /// <summary>
  999. /// 获取工号的数据
  1000. /// </summary>
  1001. /// <param name="cre"></param>
  1002. /// <param name="sUserInfo"></param>
  1003. /// <returns></returns>
  1004. public static ServiceResultEntity GetUser(ClientRequestEntity cre, SUserInfo sUserInfo)
  1005. {
  1006. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  1007. try
  1008. {
  1009. ServiceResultEntity sre = new ServiceResultEntity();
  1010. string UserCode = cre.Properties["UserCode"] + "";
  1011. string UserName = cre.Properties["UserName"] + "";
  1012. string IsWorker = cre.Properties["IsWorker"] + "";
  1013. string sqlString = "SELECT 0 AS SEL, U.USERID, U.USERCODE, U.USERNAME, U.USERNAME||'['|| U.USERCODE||']' USERNAMECode, '['|| U.USERCODE||']'||U.USERNAME USERCodeNAME \n" +
  1014. " FROM TP_MST_USER U\n" +
  1015. " WHERE U.ACCOUNTID = :accountID\n" +
  1016. " AND U.VALUEFLAG = 1\n" +
  1017. " AND LOWER(U.USERCODE) <> 'system'\n" +
  1018. " AND LOWER(U.USERCODE) <> 'admin'";
  1019. List<OracleParameter> parameters = new List<OracleParameter>();
  1020. parameters.Add(new OracleParameter(":accountID", OracleDbType.Int32, sUserInfo.AccountID, ParameterDirection.Input));
  1021. // 是否只查询子节点
  1022. if ("1".Equals(IsWorker))
  1023. {
  1024. sqlString += " AND U.ISWORKER = 1\n";
  1025. }
  1026. // 组织机构编码
  1027. if (!string.IsNullOrEmpty(UserCode))
  1028. {
  1029. sqlString += " AND U.USERCODE LIKE :UserCode\n";
  1030. parameters.Add(new OracleParameter(":UserCode", OracleDbType.Varchar2, "%" + UserCode + "%", ParameterDirection.Input));
  1031. }
  1032. // 组织机构名称
  1033. if (!string.IsNullOrEmpty(UserName))
  1034. {
  1035. sqlString += " AND U.USERNAME LIKE :UserName\n";
  1036. parameters.Add(new OracleParameter(":UserName", OracleDbType.Varchar2, "%" + UserName + "%", ParameterDirection.Input));
  1037. }
  1038. sqlString += " ORDER BY USERCODE";
  1039. sre.Data = con.GetSqlResultToDs(sqlString, parameters.ToArray());
  1040. return sre;
  1041. }
  1042. catch (Exception ex)
  1043. {
  1044. throw ex;
  1045. }
  1046. finally
  1047. {
  1048. if (con.ConnState == ConnectionState.Open)
  1049. {
  1050. con.Close();
  1051. }
  1052. }
  1053. }
  1054. /// <summary>
  1055. /// 获取成型线类型数据
  1056. /// </summary>
  1057. /// <param name="cre"></param>
  1058. /// <param name="sUserInfo"></param>
  1059. /// <returns></returns>
  1060. public static ServiceResultEntity GetGMouldType(ClientRequestEntity cre, SUserInfo sUserInfo)
  1061. {
  1062. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  1063. try
  1064. {
  1065. ServiceResultEntity sre = new ServiceResultEntity();
  1066. string gMouldTypeCode = cre.Properties["GMouldTypeCode"] + "";
  1067. string gMouldTypeName = cre.Properties["GMouldTypeName"] + "";
  1068. string canManyTimes = cre.Properties["CanManyTimes"] + "";
  1069. string sqlString = " SELECT 0 AS SEL, GMOULDTYPEID, GMOULDTYPECODE, GMOULDTYPENAME, CANMANYTIMES\n" +
  1070. " FROM TP_MST_GMOULDTYPE\n" +
  1071. " WHERE VALUEFLAG = 1\n" +
  1072. " AND ACCOUNTID = :accountID";
  1073. List<OracleParameter> parameters = new List<OracleParameter>();
  1074. parameters.Add(new OracleParameter(":accountID", OracleDbType.Int32, sUserInfo.AccountID, ParameterDirection.Input));
  1075. // 是否多次注浆
  1076. if ("1".Equals(canManyTimes))
  1077. {
  1078. sqlString += " AND CANMANYTIMES = 1\n";
  1079. }
  1080. // 成型线类型编码
  1081. if (!string.IsNullOrEmpty(gMouldTypeCode))
  1082. {
  1083. sqlString += " AND GMOULDTYPECODE LIKE :GMouldTypeCode\n";
  1084. parameters.Add(new OracleParameter(":GMouldTypeCode", OracleDbType.Varchar2, "%" + gMouldTypeCode + "%", ParameterDirection.Input));
  1085. }
  1086. // 成型线类型名称
  1087. if (!string.IsNullOrEmpty(gMouldTypeName))
  1088. {
  1089. sqlString += " AND GMOULDTYPENAME LIKE :GMouldTypeName\n";
  1090. parameters.Add(new OracleParameter(":GMouldTypeName", OracleDbType.Varchar2, "%" + gMouldTypeName + "%", ParameterDirection.Input));
  1091. }
  1092. sqlString += " ORDER BY GMOULDTYPECODE";
  1093. sre.Data = con.GetSqlResultToDs(sqlString, parameters.ToArray());
  1094. return sre;
  1095. }
  1096. catch (Exception ex)
  1097. {
  1098. throw ex;
  1099. }
  1100. finally
  1101. {
  1102. if (con.ConnState == ConnectionState.Open)
  1103. {
  1104. con.Close();
  1105. }
  1106. }
  1107. }
  1108. /// <summary>
  1109. /// 获取成型线数据
  1110. /// </summary>
  1111. /// <param name="cre"></param>
  1112. /// <param name="sUserInfo"></param>
  1113. /// <returns></returns>
  1114. public static ServiceResultEntity GetGroutingLine(ClientRequestEntity cre, SUserInfo sUserInfo)
  1115. {
  1116. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  1117. try
  1118. {
  1119. ServiceResultEntity sre = new ServiceResultEntity();
  1120. string GroutingLineCode = cre.Properties["GroutingLineCode"] + "";
  1121. string GroutingLineName = cre.Properties["GroutingLineName"] + "";
  1122. string UserCode = cre.Properties["UserCode"] + "";
  1123. string sqlString = "SELECT 0 AS SEL,\n" +
  1124. " GROUT.GROUTINGLINEID,\n" +
  1125. " GROUT.GROUTINGLINECODE,\n" +
  1126. " GROUT.GROUTINGLINENAME,\n" +
  1127. " GUSER.USERCODE,\n" +
  1128. " STATUS.GMOULDSTATUSNAME,\n" +
  1129. " GROUT.CREATETIME\n" +
  1130. " FROM TP_PC_GROUTINGLINE GROUT\n" +
  1131. " LEFT JOIN TP_MST_USER GUSER\n" +
  1132. " ON GROUT.USERID = GUSER.USERID\n" +
  1133. " LEFT JOIN TP_SYS_GMOULDSTATUS STATUS\n" +
  1134. " ON GROUT.GMOULDSTATUS = STATUS.GMOULDSTATUSID\n" +
  1135. " WHERE GROUT.VALUEFLAG = 1\n" +
  1136. " AND GROUT.ACCOUNTID = :accountID\n";
  1137. List<OracleParameter> parameters = new List<OracleParameter>();
  1138. parameters.Add(new OracleParameter(":accountID", OracleDbType.Int32, sUserInfo.AccountID, ParameterDirection.Input));
  1139. // 成型线编码
  1140. if (!string.IsNullOrEmpty(GroutingLineCode))
  1141. {
  1142. sqlString += " AND GROUT.GroutingLineCode LIKE :GroutingLineCode\n";
  1143. parameters.Add(new OracleParameter(":GroutingLineCode", OracleDbType.Varchar2, "%" + GroutingLineCode + "%", ParameterDirection.Input));
  1144. }
  1145. // 成型线名称
  1146. if (!string.IsNullOrEmpty(GroutingLineName))
  1147. {
  1148. sqlString += " AND GROUT.GroutingLineName LIKE :GroutingLineName\n";
  1149. parameters.Add(new OracleParameter(":GroutingLineName", OracleDbType.Varchar2, "%" + GroutingLineName + "%", ParameterDirection.Input));
  1150. }
  1151. // 成型工号
  1152. if (!string.IsNullOrEmpty(UserCode))
  1153. {
  1154. sqlString += " AND GUSER.UserCode LIKE :UserCode\n";
  1155. parameters.Add(new OracleParameter(":UserCode", OracleDbType.Varchar2, "%" + UserCode + "%", ParameterDirection.Input));
  1156. }
  1157. sqlString += " ORDER BY GROUT.GROUTINGLINECODE";
  1158. sre.Data = con.GetSqlResultToDs(sqlString, parameters.ToArray());
  1159. return sre;
  1160. }
  1161. catch (Exception ex)
  1162. {
  1163. throw ex;
  1164. }
  1165. finally
  1166. {
  1167. if (con.ConnState == ConnectionState.Open)
  1168. {
  1169. con.Close();
  1170. }
  1171. }
  1172. }
  1173. /// <summary>
  1174. /// 获取产品类别的数据
  1175. /// </summary>
  1176. /// <param name="cre"></param>
  1177. /// <param name="sUserInfo"></param>
  1178. /// <returns></returns>
  1179. public static ServiceResultEntity GetSAPCode(ClientRequestEntity cre, SUserInfo sUserInfo)
  1180. {
  1181. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  1182. try
  1183. {
  1184. ServiceResultEntity sre = new ServiceResultEntity();
  1185. string goodscode = cre.Properties["goodscode"] + "";
  1186. string matnr = cre.Properties["matnr"] + "";
  1187. string logoname = cre.Properties["logoname"] + "";
  1188. string sqlString =
  1189. "SELECT 0 AS sel\n" +
  1190. " ,pb.matnr as materialcode\n" +
  1191. " ,g.goodscode\n" +
  1192. " ,l.logoname\n" +
  1193. " ,pb.packingbomid\n" +
  1194. " FROM tp_mst_packingbom pb\n" +
  1195. " LEFT JOIN tp_mst_goods g\n" +
  1196. " ON g.goodsid = pb.goodsid\n" +
  1197. " LEFT JOIN tp_mst_logo l\n" +
  1198. " ON l.logoid = pb.logoid\n" +
  1199. " WHERE pb.valueflag = '1'\n" +
  1200. " AND pb.accountid = :accountid";
  1201. List<OracleParameter> parameters = new List<OracleParameter>();
  1202. parameters.Add(new OracleParameter(":accountid", sUserInfo.AccountID));
  1203. // 产品类别编码
  1204. if (!string.IsNullOrEmpty(goodscode))
  1205. {
  1206. sqlString += " AND g.goodscode LIKE :goodsCode\n";
  1207. parameters.Add(new OracleParameter(":goodsCode", OracleDbType.Varchar2, "%" + goodscode + "%", ParameterDirection.Input));
  1208. }
  1209. // 产品类别名称
  1210. if (!string.IsNullOrEmpty(matnr))
  1211. {
  1212. sqlString += " AND pb.matnr LIKE :matnr\n";
  1213. parameters.Add(new OracleParameter(":matnr", OracleDbType.Varchar2, "%" + matnr + "%", ParameterDirection.Input));
  1214. }
  1215. // 产品类别名称
  1216. if (!string.IsNullOrEmpty(logoname))
  1217. {
  1218. sqlString += " AND l.logoname LIKE :logoname\n";
  1219. parameters.Add(new OracleParameter(":logoname", OracleDbType.Varchar2, "%" + logoname + "%", ParameterDirection.Input));
  1220. }
  1221. sqlString += " ORDER BY g.goodscode, l.logoname";
  1222. sre.Data = con.GetSqlResultToDs(sqlString, parameters.ToArray());
  1223. return sre;
  1224. }
  1225. catch (Exception ex)
  1226. {
  1227. throw ex;
  1228. }
  1229. finally
  1230. {
  1231. if (con.ConnState == ConnectionState.Open)
  1232. {
  1233. con.Close();
  1234. }
  1235. }
  1236. }
  1237. #endregion
  1238. /// <summary>
  1239. /// 生产线集合
  1240. /// </summary>
  1241. /// <param name="ProductionLineEntity">生产线实体类</param>
  1242. /// <param name="sUserInfo">用户基本信息</param>
  1243. /// <returns>DataSet</returns>
  1244. /// <remarks>
  1245. /// 宋扬 2014.11.19 新建
  1246. /// </remarks>
  1247. public static DataSet GetProductionLine(SearchProductionLineEntity productionLineEntity, SUserInfo sUserInfo)
  1248. {
  1249. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  1250. try
  1251. {
  1252. con.Open();
  1253. OracleParameter[] paras = new OracleParameter[]{
  1254. new OracleParameter("in_productionLineCode",OracleDbType.Varchar2,productionLineEntity.ProductionLineCode,ParameterDirection.Input),
  1255. new OracleParameter("in_productionLineName",OracleDbType.Varchar2,productionLineEntity.ProductionLineName,ParameterDirection.Input),
  1256. new OracleParameter("in_productionLineIDS",OracleDbType.Varchar2,productionLineEntity.ProcuteLineIDS,ParameterDirection.Input),
  1257. new OracleParameter("in_accountID",OracleDbType.Int32,sUserInfo.AccountID,ParameterDirection.Input),
  1258. new OracleParameter("out_result",OracleDbType.RefCursor, ParameterDirection.Output),
  1259. };
  1260. DataSet dsSearchReport = con.ExecStoredProcedure("PRO_PC_GetProductionLin", paras);
  1261. return dsSearchReport;
  1262. }
  1263. catch (Exception ex)
  1264. {
  1265. throw ex;
  1266. }
  1267. finally
  1268. {
  1269. if (con.ConnState == ConnectionState.Open)
  1270. {
  1271. con.Close();
  1272. }
  1273. }
  1274. }
  1275. /// <summary>
  1276. /// 获得产品类别
  1277. /// </summary>
  1278. /// <param name="sUserInfo">用户基本信息</param>
  1279. /// <param name="valueFlag">停用标记</param>
  1280. /// <param name="leafFlag">是否只查询叶子节点 0:否;1:是</param>
  1281. /// <returns>DataTable</returns>
  1282. /// <remarks>
  1283. /// 陈冰 2014.09.02 新建
  1284. /// </remarks>
  1285. public static DataTable GetGoodsType(SUserInfo sUserInfo, int valueFlag, int leafFlag)
  1286. {
  1287. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  1288. try
  1289. {
  1290. con.Open();
  1291. OracleParameter[] paras = new OracleParameter[]{
  1292. new OracleParameter("in_accountID",sUserInfo.AccountID),
  1293. new OracleParameter("in_valueFlag",valueFlag),
  1294. new OracleParameter("in_leafFlag",leafFlag),
  1295. new OracleParameter("out_result",OracleDbType.RefCursor),
  1296. };
  1297. paras[3].Direction = ParameterDirection.Output;
  1298. DataSet ds = con.ExecStoredProcedure("PRO_MST_GetGoodsType", paras);
  1299. return ds.Tables[0];
  1300. }
  1301. catch (Exception ex)
  1302. {
  1303. throw ex;
  1304. }
  1305. finally
  1306. {
  1307. if (con.ConnState == ConnectionState.Open)
  1308. {
  1309. con.Close();
  1310. }
  1311. }
  1312. }
  1313. /// <summary>
  1314. /// 获取新增组织机构OrganizationCode
  1315. /// </summary>
  1316. /// <param name="v_parentOrganizationCode">上级组织机构编码</param>
  1317. /// <param name="sUserInfo">用户基本信息</param>
  1318. /// <returns>string</returns>
  1319. /// <remarks>
  1320. /// 2014.12.04 任海 新建
  1321. /// </remarks>
  1322. public static string GetOrganizationCode(string v_parentOrganizationCode, SUserInfo sUserInfo)
  1323. {
  1324. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  1325. try
  1326. {
  1327. oracleConn.Open();
  1328. string sqlString = "select Max(OrganizationCode) from TP_MST_Organization "
  1329. + " where OrganizationCode like '" + v_parentOrganizationCode + "%'"
  1330. + "and length(OrganizationCode) = length('" + v_parentOrganizationCode + "')+3"
  1331. + "and AccountID = " + sUserInfo.AccountID;
  1332. DataSet returnDatasetHuoQu2 = oracleConn.GetSqlResultToDs(sqlString);
  1333. oracleConn.Close();
  1334. string v_MaxOrganizationCode = "";
  1335. if (returnDatasetHuoQu2 != null && returnDatasetHuoQu2.Tables[0].Rows.Count > 0)
  1336. {
  1337. v_MaxOrganizationCode = returnDatasetHuoQu2.Tables[0].Rows[0][0].ToString();
  1338. }
  1339. if (v_MaxOrganizationCode == "")
  1340. {
  1341. v_MaxOrganizationCode = v_MaxOrganizationCode + v_parentOrganizationCode + "001";
  1342. }
  1343. else
  1344. {
  1345. string v_tempCode = "";
  1346. v_tempCode = Convert.ToString(Convert.ToInt32(v_MaxOrganizationCode.Substring(v_MaxOrganizationCode.Length - 3)) + 1);
  1347. v_MaxOrganizationCode = "000" + v_tempCode;
  1348. v_MaxOrganizationCode = v_parentOrganizationCode + v_MaxOrganizationCode.Substring(v_MaxOrganizationCode.Length - 3);
  1349. }
  1350. return v_MaxOrganizationCode;
  1351. }
  1352. catch (Exception ex)
  1353. {
  1354. if (oracleConn.ConnState == ConnectionState.Open)
  1355. {
  1356. oracleConn.Close();
  1357. }
  1358. throw ex;
  1359. }
  1360. }
  1361. /// <summary>
  1362. /// 获取窑炉管理的数据
  1363. /// </summary>
  1364. /// <param name="SUserInfo">用户基本信息</param>
  1365. /// <param name="pValue">显示停用标识</param>
  1366. /// <returns>DataSet</returns>
  1367. /// <remarks>
  1368. /// 2014.09.01 任海 新建
  1369. /// </remarks>
  1370. public static DataSet GetKilnData(SUserInfo sUserInfo, byte pValue)
  1371. {
  1372. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  1373. try
  1374. {
  1375. string sqlString = string.Empty;
  1376. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = null;
  1377. //根据帐套查询数据
  1378. if (pValue.ToString() == Constant.INT_IS_ONE.ToString())
  1379. {
  1380. sqlString = "Select 0 as Sel, KilnID,KilnCode,KilnName,KilnType,Remarks,AccountID,ValueFlag,CreateTime,CreateUserID,UpdateTime,UpdateUserID,OPTimeStamp "
  1381. + "from TP_MST_Kiln where AccountID = :AccountID";
  1382. oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  1383. {
  1384. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  1385. };
  1386. }
  1387. //根据帐套,标识查询数据
  1388. else if (pValue.ToString() == Constant.INT_IS_ZERO.ToString())
  1389. {
  1390. sqlString = "Select KilnID,KilnCode,KilnName,KilnType,Remarks,AccountID,ValueFlag,CreateTime,CreateUserID,UpdateTime,UpdateUserID,OPTimeStamp "
  1391. + "from TP_MST_Kiln where valueflag = :valueflag and AccountID = :AccountID";
  1392. oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  1393. {
  1394. new Oracle.ManagedDataAccess.Client.OracleParameter(":valueflag",Constant.INT_IS_ONE.ToString()),
  1395. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  1396. };
  1397. }
  1398. oracleConn.Open();
  1399. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  1400. oracleConn.Close();
  1401. return result;
  1402. }
  1403. catch (Exception ex)
  1404. {
  1405. if (oracleConn.ConnState == ConnectionState.Open)
  1406. {
  1407. oracleConn.Close();
  1408. }
  1409. throw ex;
  1410. }
  1411. }
  1412. /// <summary>
  1413. /// 获取窑炉管理的全部数据
  1414. /// </summary>
  1415. /// <param name="sUserInfo">用户基本信息</param>
  1416. /// <returns>DataSet</returns>
  1417. /// <remarks>
  1418. /// 2014.10.31 任海 新建
  1419. /// </remarks>
  1420. public static DataSet GetAllKilntInfo(SUserInfo sUserInfo)
  1421. {
  1422. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  1423. try
  1424. {
  1425. //获取窑炉管理数据
  1426. string sqlString = "Select KilnID,KilnCode,KilnName,KilnType,INOUTMINTIMEIINTERVAL,OUTMINTIMEIINTERVAL,TurnoverInterval," +
  1427. "Remarks,AccountID,ValueFlag,CreateTime,CreateUserID,UpdateTime,UpdateUserID,OPTimeStamp,SK_Date,SK_BatchNo " +
  1428. "from TP_MST_Kiln where AccountID = :AccountID";
  1429. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  1430. {
  1431. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  1432. };
  1433. oracleConn.Open();
  1434. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  1435. oracleConn.Close();
  1436. return result;
  1437. }
  1438. catch (Exception ex)
  1439. {
  1440. if (oracleConn.ConnState == ConnectionState.Open)
  1441. {
  1442. oracleConn.Close();
  1443. }
  1444. throw ex;
  1445. }
  1446. }
  1447. /// <summary>
  1448. /// 获取窑车管理的数据
  1449. /// </summary>
  1450. /// <param name="sUserInfo">用户基本信息</param>
  1451. /// <param name="pValue">显示停用标识</param>
  1452. /// <param name="kilnID">窑炉ID</param>
  1453. /// <returns>DataSet</returns>
  1454. /// <remarks>
  1455. /// 2014.09.08 任海 新建
  1456. /// </remarks>
  1457. public static DataSet GetKilnCarData(SUserInfo sUserInfo, byte pValue, string kilnID)
  1458. {
  1459. try
  1460. {
  1461. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  1462. try
  1463. {
  1464. string sqlString = string.Empty;
  1465. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = null;
  1466. //根据帐套查询数据
  1467. if (pValue.ToString() == Constant.INT_IS_ONE.ToString())
  1468. {
  1469. sqlString = "Select KilnCarID,KilnID,KilnCarCode,KilnCarName,MaxGoodsNum,Remarks,AccountID,ValueFlag,CreateTime,CreateUserID,UpdateTime,UpdateUserID,OPTimeStamp "
  1470. + "from TP_MST_KilnCar where KilnID = :KilnID and AccountID = :AccountID";
  1471. oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  1472. {
  1473. new Oracle.ManagedDataAccess.Client.OracleParameter(":KilnID",kilnID),
  1474. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  1475. };
  1476. }
  1477. //根据帐套,标识查询数据
  1478. else if (pValue.ToString() == Constant.INT_IS_ZERO.ToString())
  1479. {
  1480. sqlString = "Select KilnCarID,KilnID,KilnCarCode,KilnCarName,MaxGoodsNum,Remarks,AccountID,ValueFlag,CreateTime,CreateUserID,UpdateTime,UpdateUserID,OPTimeStamp "
  1481. + "from TP_MST_KilnCar where valueflag = :valueflag and KilnID = :KilnID and AccountID = :AccountID";
  1482. oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  1483. {
  1484. new Oracle.ManagedDataAccess.Client.OracleParameter(":valueflag",Constant.INT_IS_ONE.ToString()),
  1485. new Oracle.ManagedDataAccess.Client.OracleParameter(":KilnID",kilnID),
  1486. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  1487. };
  1488. }
  1489. oracleConn.Open();
  1490. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  1491. oracleConn.Close();
  1492. return result;
  1493. }
  1494. catch (Exception ex)
  1495. {
  1496. if (oracleConn.ConnState == ConnectionState.Open)
  1497. {
  1498. oracleConn.Close();
  1499. }
  1500. throw ex;
  1501. }
  1502. }
  1503. catch (Exception ex)
  1504. {
  1505. throw ex;
  1506. }
  1507. }
  1508. /// <summary>
  1509. /// 获取窑车管理的全部数据
  1510. /// </summary>
  1511. /// <param name="sUserInfo">用户基本信息</param>
  1512. /// <returns>DataSet</returns>
  1513. /// <remarks>
  1514. /// 2014.10.31 任海 新建
  1515. /// </remarks>
  1516. public static DataSet GetAllKilnCarInfo(SUserInfo sUserInfo)
  1517. {
  1518. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  1519. try
  1520. {
  1521. //获取窑车管理的数据
  1522. string sqlString = "Select KilnCarID,KilnID,KilnCarCode,KilnCarName,MaxGoodsNum,KilnCarNum,Remarks,AccountID,ValueFlag,CreateTime,CreateUserID,UpdateTime,UpdateUserID,OPTimeStamp "
  1523. + "from TP_MST_KilnCar where AccountID = :AccountID "
  1524. + " order by KilnCarNum, KilnCarCode";
  1525. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  1526. {
  1527. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  1528. };
  1529. oracleConn.Open();
  1530. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  1531. oracleConn.Close();
  1532. return result;
  1533. }
  1534. catch (Exception ex)
  1535. {
  1536. if (oracleConn.ConnState == ConnectionState.Open)
  1537. {
  1538. oracleConn.Close();
  1539. }
  1540. throw ex;
  1541. }
  1542. }
  1543. /// <summary>
  1544. /// 获取产品分级的数据
  1545. /// </summary>
  1546. /// <param name="sUserInfo">用户基本信息</param>
  1547. /// <param name="pValue">显示停用标识</param>
  1548. /// <returns>DataSet</returns>
  1549. /// <remarks>
  1550. /// 2014.10.22 任海 新建
  1551. /// </remarks>
  1552. public static DataSet GetGoodsLevelData(SUserInfo sUserInfo, byte pValue)
  1553. {
  1554. try
  1555. {
  1556. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  1557. try
  1558. {
  1559. //获取产品分级的数据
  1560. string sqlString = "select tp_mst_goodslevel.goodslevelid,"
  1561. + "tp_mst_goodslevel.goodslevelname,"
  1562. + "tp_sys_goodsleveltype.goodsleveltypename,"
  1563. + "tp_mst_goodslevel.goodsleveltypeid,"
  1564. + "tp_mst_goodslevel.issemifinishedex,"
  1565. + "tp_mst_goodslevel.sfedisplayno,"
  1566. + "tp_mst_goodslevel.isfinishedex,"
  1567. + "tp_mst_goodslevel.fedisplayno,"
  1568. + "tp_mst_goodslevel.isfinished,"
  1569. + "tp_mst_goodslevel.isscrapped,"
  1570. + "tp_mst_goodslevel.candisable,"
  1571. + "tp_mst_goodslevel.remarks,"
  1572. + "tp_mst_goodslevel.accountid,"
  1573. + "tp_mst_goodslevel.valueflag,"
  1574. + "tp_mst_goodslevel.createtime,"
  1575. + "tp_mst_goodslevel.createuserid,"
  1576. + "tp_mst_goodslevel.updatetime,"
  1577. + "tp_mst_goodslevel.updateuserid,"
  1578. + "tp_mst_goodslevel.optimestamp"
  1579. + " from tp_mst_goodslevel"
  1580. + " left join tp_sys_goodsleveltype"
  1581. + " on tp_mst_goodslevel.goodsleveltypeid ="
  1582. + " tp_sys_goodsleveltype.goodsleveltypeid"
  1583. + " where "
  1584. + " AccountID = :AccountID";
  1585. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  1586. {
  1587. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID),
  1588. };
  1589. oracleConn.Open();
  1590. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  1591. oracleConn.Close();
  1592. return result;
  1593. }
  1594. catch (Exception ex)
  1595. {
  1596. if (oracleConn.ConnState == ConnectionState.Open)
  1597. {
  1598. oracleConn.Close();
  1599. }
  1600. throw ex;
  1601. }
  1602. }
  1603. catch (Exception ex)
  1604. {
  1605. throw ex;
  1606. }
  1607. }
  1608. /// <summary>
  1609. /// 获取产品分级的数据(根据ID)
  1610. /// </summary>
  1611. /// <param name="GoodsLevelTypeID">分类类别ID</param>
  1612. /// <param name="GoodsLevelID">分类ID</param>
  1613. /// <param name="sUserInfo">用户基本信息</param>
  1614. /// <returns>DataSet</returns>
  1615. /// <remarks>
  1616. /// 2014.10.22 庄天威 新建
  1617. /// </remarks>
  1618. public static DataSet GetGoodsLevelDataById(int? GoodsLevelTypeID, int? GoodsLevelID, SUserInfo sUserInfo)
  1619. {
  1620. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  1621. try
  1622. {
  1623. oracleConn.Open();
  1624. StringBuilder sbSql = new StringBuilder();
  1625. sbSql.Append(@"select GoodsLevelID,GoodsLevelName from TP_MST_GoodsLevel
  1626. where ValueFlag=1 and AccountID=" + sUserInfo.AccountID);
  1627. if (GoodsLevelTypeID != null)
  1628. {
  1629. sbSql.Append(" and GoodsLevelTypeID=" + GoodsLevelTypeID);
  1630. }
  1631. if (GoodsLevelID != null)
  1632. {
  1633. sbSql.Append(" and GoodsLevelID=" + GoodsLevelID);
  1634. }
  1635. DataSet results = oracleConn.GetSqlResultToDs(sbSql.ToString());
  1636. oracleConn.Close();
  1637. return results;
  1638. }
  1639. catch (Exception ex)
  1640. {
  1641. if (oracleConn.ConnState == ConnectionState.Open)
  1642. {
  1643. oracleConn.Close();
  1644. }
  1645. throw ex;
  1646. }
  1647. }
  1648. /// <summary>
  1649. /// 获取数据字典管理的数据
  1650. /// </summary>
  1651. /// <param name="Pvalue">显示停用标识</param>
  1652. /// <param name="dictionaryType">字典类别</param>
  1653. /// <param name="sUserInfo">用户基本信息</param>
  1654. /// <returns>DataSet</returns>
  1655. /// <remarks>
  1656. /// 2014.09.08 任海 新建
  1657. /// </remarks>
  1658. public static DataSet GetDictionaryData(byte Pvalue, string dictionaryType, SUserInfo sUserInfo)
  1659. {
  1660. try
  1661. {
  1662. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  1663. try
  1664. {
  1665. string sqlString = String.Empty;
  1666. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = null;
  1667. //根据帐套获得数据字典管理的数据
  1668. if (Pvalue.ToString() == Constant.INT_IS_ONE.ToString())
  1669. {
  1670. sqlString = "Select DictionaryID,DictionaryType,DictionaryValue,DisplayNo,Remarks,AccountID,ValueFlag,CreateTime,CreateUserID,UpdateTime,"
  1671. + "UpdateUserID,OPTimeStamp from TP_MST_DataDictionary where DictionaryType = :DictionaryType and AccountID = :AccountID";
  1672. oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  1673. {
  1674. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID),
  1675. new Oracle.ManagedDataAccess.Client.OracleParameter(":DictionaryType",dictionaryType)
  1676. };
  1677. }
  1678. //根据帐套,标识获得数据字典管理的数据
  1679. else if (Pvalue.ToString() == Constant.INT_IS_ZERO.ToString())
  1680. {
  1681. sqlString = "Select DictionaryID,DictionaryType,DictionaryValue,DisplayNo,Remarks,AccountID,ValueFlag,CreateTime,CreateUserID,UpdateTime,"
  1682. + "UpdateUserID,OPTimeStamp from TP_MST_DataDictionary where valueflag = :valueflag and DictionaryType = :DictionaryType and AccountID = :AccountID";
  1683. oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  1684. {
  1685. new Oracle.ManagedDataAccess.Client.OracleParameter(":valueflag",Constant.INT_IS_ONE.ToString()),
  1686. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID),
  1687. new Oracle.ManagedDataAccess.Client.OracleParameter(":DictionaryType",dictionaryType)
  1688. };
  1689. }
  1690. oracleConn.Open();
  1691. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  1692. oracleConn.Close();
  1693. return result;
  1694. }
  1695. catch (Exception ex)
  1696. {
  1697. if (oracleConn.ConnState == ConnectionState.Open)
  1698. {
  1699. oracleConn.Close();
  1700. }
  1701. throw ex;
  1702. }
  1703. }
  1704. catch (Exception ex)
  1705. {
  1706. throw ex;
  1707. }
  1708. }
  1709. /// <summary>
  1710. /// 获取数据字典管理的全部数据
  1711. /// </summary>
  1712. /// <param name="sUserInfo">用户基本信息</param>
  1713. /// <returns>DataSet</returns>
  1714. /// <remarks>
  1715. /// 2014.10.31 任海 新建
  1716. /// </remarks>
  1717. public static DataSet GetAllDataDictionaryInfo(SUserInfo sUserInfo)
  1718. {
  1719. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  1720. try
  1721. {
  1722. //获取数据字典管理的全部数据
  1723. string sqlString = "Select DictionaryID,DictionaryType,DictionaryValue,DisplayNo,Remarks,AccountID,ValueFlag,CreateTime,CreateUserID,UpdateTime,"
  1724. + "UpdateUserID,OPTimeStamp from TP_MST_DataDictionary where AccountID = :AccountID order by DictionaryType,DisplayNo";
  1725. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  1726. {
  1727. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  1728. };
  1729. oracleConn.Open();
  1730. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  1731. oracleConn.Close();
  1732. return result;
  1733. }
  1734. catch (Exception ex)
  1735. {
  1736. if (oracleConn.ConnState == ConnectionState.Open)
  1737. {
  1738. oracleConn.Close();
  1739. }
  1740. throw ex;
  1741. }
  1742. }
  1743. /// <summary>
  1744. /// 获取数据字典左侧树的数据
  1745. /// </summary>
  1746. /// <returns>DataSet</returns>
  1747. /// <remarks>
  1748. /// 2014.09.15 任海 新建
  1749. /// </remarks>
  1750. public static DataSet GetDataDictionaryTreeData()
  1751. {
  1752. DataSet dSetResult = new DataSet();
  1753. try
  1754. {
  1755. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  1756. try
  1757. {
  1758. //获取数据字典分类
  1759. string sqlString = "Select DataDictionaryClass,DataDictionaryClassName,DisplayNo from TP_SYS_DataDictionaryClass where PROGRAMTYPE = '1' Order By DisplayNo";
  1760. oracleConn.Open();
  1761. DataTable result = oracleConn.GetSqlResultToDt(sqlString);
  1762. result.TableName = "TP_SYS_DataDictionaryClass";
  1763. dSetResult.Tables.Add(result);
  1764. //获取数据字典类别
  1765. string sqlStrings = "select DataDictionaryType,DataDictionaryTypeName,DataDictionaryClass,DisplayNo from TP_SYS_DataDictionaryType Order By DisplayNo";
  1766. DataTable results = oracleConn.GetSqlResultToDt(sqlStrings);
  1767. results.TableName = "TP_SYS_DataDictionaryType";
  1768. dSetResult.Tables.Add(results);
  1769. oracleConn.Close();
  1770. return dSetResult;
  1771. }
  1772. catch (Exception ex)
  1773. {
  1774. if (oracleConn.ConnState == ConnectionState.Open)
  1775. {
  1776. oracleConn.Close();
  1777. }
  1778. throw ex;
  1779. }
  1780. }
  1781. catch (Exception ex)
  1782. {
  1783. throw ex;
  1784. }
  1785. }
  1786. /// <summary>
  1787. /// 获取系统参数管理的数据
  1788. /// </summary>
  1789. /// <param name="sUserInfo">用户基本信息</param>
  1790. /// <returns>DataSet</returns>
  1791. /// <remarks>
  1792. /// 2014.09.15 任海 新建
  1793. /// </remarks>
  1794. public static DataSet GetSystemData(SUserInfo sUserInfo)
  1795. {
  1796. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  1797. try
  1798. {
  1799. //获取系统参数管理的数据
  1800. string sqlString = "Select SettingCode,SettingName,CategoryName,SettingValue,SettingDefaultValues,AccountID,Remarks,Tooltip,EditFlag,UpdateTime,"
  1801. + "UpdateUserID,OPTimeStamp from TP_MST_SystemSetting where AccountID = :AccountID";
  1802. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  1803. {
  1804. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  1805. };
  1806. oracleConn.Open();
  1807. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  1808. oracleConn.Close();
  1809. return result;
  1810. }
  1811. catch (Exception ex)
  1812. {
  1813. if (oracleConn.ConnState == ConnectionState.Open)
  1814. {
  1815. oracleConn.Close();
  1816. }
  1817. throw ex;
  1818. }
  1819. }
  1820. /// <summary>
  1821. /// 通过SettingCode获取系统参数管理的数据
  1822. /// </summary>
  1823. /// <param name="sUserInfo">用户基本信息</param>
  1824. /// <returns>DataSet</returns>
  1825. /// <remarks>
  1826. /// 2016.10.10 王鑫 新建
  1827. /// </remarks>
  1828. public static DataSet GetSystemSettingDataByCode(string settingcode, SUserInfo sUserInfo)
  1829. {
  1830. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  1831. try
  1832. {
  1833. //获取系统参数管理的数据
  1834. string sqlString = "Select SettingCode,SettingName,CategoryName,SettingValue,SettingDefaultValues,AccountID,Remarks,Tooltip,EditFlag,UpdateTime,"
  1835. + "UpdateUserID,OPTimeStamp from TP_MST_SystemSetting where AccountID = :AccountID and SettingCode=:SettingCode";
  1836. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  1837. {
  1838. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID),
  1839. new Oracle.ManagedDataAccess.Client.OracleParameter(":SettingCode",settingcode)
  1840. };
  1841. oracleConn.Open();
  1842. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  1843. oracleConn.Close();
  1844. return result;
  1845. }
  1846. catch (Exception ex)
  1847. {
  1848. if (oracleConn.ConnState == ConnectionState.Open)
  1849. {
  1850. oracleConn.Close();
  1851. }
  1852. throw ex;
  1853. }
  1854. }
  1855. /// <summary>
  1856. /// 由系统参数类型settingType获取系统参数类别和名称
  1857. /// </summary>
  1858. /// <param name="settingType">系统参数类型</param>
  1859. /// <param name="sUserInfo">用户基本信息</param>
  1860. /// <param name="functionName">系统参数类别</param>
  1861. /// <param name="parameterName">系统参数名称</param>
  1862. /// <returns>DataSet</returns>
  1863. /// <remarks>
  1864. /// 2014.09.18 任海 新建
  1865. /// </remarks>
  1866. private static void GetParameterBySystemType(string settingType, SUserInfo sUserInfo,
  1867. ref string functionName, ref string parameterName)
  1868. {
  1869. if (string.IsNullOrEmpty(settingType))
  1870. {
  1871. return;
  1872. }
  1873. switch (settingType)
  1874. {
  1875. #region 系统登录
  1876. case "S_LGN_0001":
  1877. functionName = "系统登录";
  1878. parameterName = "错误密码尝试登录次数";
  1879. break;
  1880. case "S_LGN_0002":
  1881. functionName = "系统登录";
  1882. parameterName = "用户锁定时长";
  1883. break;
  1884. case "S_LGN_0003":
  1885. functionName = "系统登录";
  1886. parameterName = "启用MAC地址认证";
  1887. break;
  1888. case "S_LGN_0004":
  1889. functionName = "系统登录";
  1890. parameterName = "启用登录时段限制";
  1891. break;
  1892. case "SS_LGN_05":
  1893. functionName = "系统登录";
  1894. parameterName = "启用即时通讯";
  1895. break;
  1896. #endregion
  1897. #region 共通设置
  1898. case "SS_CMN_01":
  1899. functionName = "共通设置";
  1900. parameterName = "金额小数位数";
  1901. break;
  1902. case "S_CMN_0003":
  1903. functionName = "共通设置";
  1904. parameterName = "结算账务日期";
  1905. break;
  1906. case "S_CMN_0001":
  1907. functionName = "共通设置";
  1908. parameterName = "默认用户密码";
  1909. break;
  1910. case "SS_CMN_04":
  1911. functionName = "共通设置";
  1912. parameterName = "重量小数位数";
  1913. break;
  1914. case "S_CMN_0004":
  1915. functionName = "共通设置";
  1916. parameterName = "账务时间";
  1917. break;
  1918. case "S_CMN_0002":
  1919. functionName = "共通设置";
  1920. parameterName = "年度开始月份";
  1921. break;
  1922. case "SS_CMN_07":
  1923. functionName = "共通设置";
  1924. parameterName = "每页显示数量";
  1925. break;
  1926. #endregion
  1927. default:
  1928. break;
  1929. }
  1930. }
  1931. /// <summary>
  1932. /// 获取工种管理的数据
  1933. /// </summary>
  1934. /// <param name="pValue">显示停用标识</param>
  1935. /// <param name="sUserInfo">用户基本信息</param>
  1936. /// <returns>DataSet</returns>
  1937. /// <remarks>
  1938. /// 2014.09.04 任海 新建
  1939. /// </remarks>
  1940. public static DataSet GetJobsData(byte pValue, SUserInfo sUserInfo)
  1941. {
  1942. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  1943. try
  1944. {
  1945. string sqlString = string.Empty;
  1946. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = null;
  1947. if (pValue.ToString() == Constant.INT_IS_ONE.ToString())
  1948. {
  1949. // 0 as Sel, 陈冰添加根据帐套查询数据
  1950. sqlString = "Select 0 as Sel,JobsID,JobsCode,JobsName,Remarks,AccountID,ValueFlag,CreateTime,CreateUserID,UpdateTime,UpdateUserID,OPTimeStamp "
  1951. + "from TP_MST_Jobs where AccountID = :AccountID";
  1952. oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  1953. {
  1954. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  1955. };
  1956. }
  1957. else if (pValue.ToString() == Constant.INT_IS_ZERO.ToString())
  1958. {
  1959. // 0 as Sel, 陈冰添加根据账套帐标识符查询数据
  1960. sqlString = "Select 0 as Sel,JobsID,JobsCode,JobsName,Remarks,AccountID,ValueFlag,CreateTime,CreateUserID,UpdateTime,UpdateUserID,OPTimeStamp "
  1961. + "from TP_MST_Jobs where valueflag = :valueflag and AccountID = :AccountID";
  1962. oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  1963. {
  1964. new Oracle.ManagedDataAccess.Client.OracleParameter(":valueflag",Constant.INT_IS_ONE.ToString()),
  1965. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  1966. };
  1967. }
  1968. oracleConn.Open();
  1969. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  1970. oracleConn.Close();
  1971. return result;
  1972. }
  1973. catch (Exception ex)
  1974. {
  1975. if (oracleConn.ConnState == ConnectionState.Open)
  1976. {
  1977. oracleConn.Close();
  1978. }
  1979. throw ex;
  1980. }
  1981. }
  1982. /// <summary>
  1983. /// 获取工种管理的全部数据
  1984. /// </summary>
  1985. /// <param name="sUserInfo">用户基本信息</param>
  1986. /// <returns></returns>
  1987. /// <remarks>
  1988. /// 2014.10.31 任海 新建
  1989. /// </remarks>
  1990. public static DataSet GetAllJobsInfo(SUserInfo sUserInfo)
  1991. {
  1992. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  1993. try
  1994. {
  1995. string sqlString = "Select JobsID,JobsCode,JobsName,Remarks,AccountID,ValueFlag,CreateTime,CreateUserID,UpdateTime,UpdateUserID,OPTimeStamp "
  1996. + "from TP_MST_Jobs where AccountID = :AccountID";
  1997. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  1998. {
  1999. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  2000. };
  2001. oracleConn.Open();
  2002. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  2003. oracleConn.Close();
  2004. return result;
  2005. }
  2006. catch (Exception ex)
  2007. {
  2008. if (oracleConn.ConnState == ConnectionState.Open)
  2009. {
  2010. oracleConn.Close();
  2011. }
  2012. throw ex;
  2013. }
  2014. }
  2015. /// <summary>
  2016. /// 获取职务管理的数据
  2017. /// </summary>
  2018. /// <param name="pValue">显示停用标识</param>
  2019. /// <param name="sUserInfo">用户基本信息</param>
  2020. /// <returns>DataSet</returns>
  2021. /// <remarks>
  2022. /// 2014.09.10 任海 新建
  2023. /// </remarks>
  2024. public static DataSet GetPostData(byte pValue, SUserInfo sUserInfo)
  2025. {
  2026. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  2027. try
  2028. {
  2029. string sqlString = string.Empty;
  2030. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = null;
  2031. if (pValue.ToString() == Constant.INT_IS_ONE.ToString())
  2032. {
  2033. //根据帐套查询数据
  2034. sqlString = "Select PostID,PostCode,PostName,Remarks,AccountID,ValueFlag,CreateTime,CreateUserID,UpdateTime,UpdateUserID,OPTimeStamp "
  2035. + "from TP_MST_Post where AccountID = :AccountID";
  2036. oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  2037. {
  2038. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  2039. };
  2040. }
  2041. else if (pValue.ToString() == Constant.INT_IS_ZERO.ToString())
  2042. {
  2043. //根据帐套,标识符查询数据
  2044. sqlString = "Select PostID,PostCode,PostName,Remarks,AccountID,ValueFlag,CreateTime,CreateUserID,UpdateTime,UpdateUserID,OPTimeStamp "
  2045. + "from TP_MST_Post where valueflag = :valueflag and AccountID = :AccountID";
  2046. oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  2047. {
  2048. new Oracle.ManagedDataAccess.Client.OracleParameter(":valueflag",Constant.INT_IS_ONE.ToString()),
  2049. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  2050. };
  2051. }
  2052. oracleConn.Open();
  2053. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  2054. oracleConn.Close();
  2055. return result;
  2056. }
  2057. catch (Exception ex)
  2058. {
  2059. if (oracleConn.ConnState == ConnectionState.Open)
  2060. {
  2061. oracleConn.Close();
  2062. }
  2063. throw ex;
  2064. }
  2065. }
  2066. /// <summary>
  2067. /// 获取职务管理的全部数据
  2068. /// </summary>
  2069. /// <param name="sUserInfo">用户信息</param>
  2070. /// <returns>DataSet</returns>
  2071. /// <remarks>
  2072. /// 2014.10.31 任海 新建
  2073. /// </remarks>
  2074. public static DataSet GetAllPostInfo(SUserInfo sUserInfo)
  2075. {
  2076. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  2077. try
  2078. {
  2079. string sqlString = "Select PostID,PostCode,PostName,Remarks,AccountID,ValueFlag,CreateTime,CreateUserID,UpdateTime,UpdateUserID,OPTimeStamp "
  2080. + "from TP_MST_Post where AccountID = :AccountID";
  2081. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  2082. {
  2083. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  2084. };
  2085. oracleConn.Open();
  2086. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  2087. oracleConn.Close();
  2088. return result;
  2089. }
  2090. catch (Exception ex)
  2091. {
  2092. if (oracleConn.ConnState == ConnectionState.Open)
  2093. {
  2094. oracleConn.Close();
  2095. }
  2096. throw ex;
  2097. }
  2098. }
  2099. /// <summary>
  2100. /// 获取产品缺陷管理的数据
  2101. /// </summary>
  2102. /// <param name="pValue">显示停用标识</param>
  2103. /// <param name="sUserInfo">用户基本信息</param>
  2104. /// <returns>DataSet</returns>
  2105. /// <remarks>
  2106. /// 2014.09.10 任海 新建
  2107. /// </remarks>
  2108. public static DataSet GetDefectData(byte pValue, SUserInfo sUserInfo)
  2109. {
  2110. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  2111. try
  2112. {
  2113. string sqlString = string.Empty;
  2114. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = null;
  2115. if (pValue.ToString() == Constant.INT_IS_ONE.ToString())
  2116. {
  2117. // 0 as Sel, 陈冰添加根据帐套查询数据
  2118. sqlString = "Select 0 as Sel,TP_MST_Defect.DefectID,TP_MST_Defect.DefectCode,TP_MST_Defect.DefectName,TP_MST_Defect.Remarks,TP_MST_Defect.AccountID,TP_MST_Defect.ValueFlag,TP_MST_Defect.CreateTime,TP_MST_Defect.CreateUserID,TP_MST_Defect.UpdateTime,TP_MST_Defect.UpdateUserID,TP_MST_Defect.OPTimeStamp,TP_MST_Defect.DEFECTTYPEID,TP_MST_DEFECTTYPE.DEFECTTYPENAME "
  2119. + "from TP_MST_Defect left join TP_MST_DEFECTTYPE on TP_MST_Defect.DEFECTTYPEID=TP_MST_DEFECTTYPE.DEFECTTYPEID where TP_MST_Defect.AccountID = :AccountID";
  2120. oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  2121. {
  2122. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  2123. };
  2124. }
  2125. else if (pValue.ToString() == Constant.INT_IS_ZERO.ToString())
  2126. {
  2127. //根据帐套,标识符查询数据
  2128. sqlString = "Select 0 as Sel,TP_MST_Defect.DefectID,TP_MST_Defect.DefectCode,TP_MST_Defect.DefectName,TP_MST_Defect.Remarks,TP_MST_Defect.AccountID,TP_MST_Defect.ValueFlag,TP_MST_Defect.CreateTime,TP_MST_Defect.CreateUserID,TP_MST_Defect.UpdateTime,TP_MST_Defect.UpdateUserID,TP_MST_Defect.OPTimeStamp,TP_MST_Defect.DEFECTTYPEID,TP_MST_DEFECTTYPE.DEFECTTYPENAME "
  2129. + "from TP_MST_Defect left join TP_MST_DEFECTTYPE on TP_MST_Defect.DEFECTTYPEID=TP_MST_DEFECTTYPE.DEFECTTYPEID where TP_MST_Defect.valueflag = :valueflag and TP_MST_Defect.AccountID = :AccountID";
  2130. oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  2131. {
  2132. new Oracle.ManagedDataAccess.Client.OracleParameter(":valueflag",Constant.INT_IS_ONE.ToString()),
  2133. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  2134. };
  2135. }
  2136. oracleConn.Open();
  2137. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  2138. oracleConn.Close();
  2139. return result;
  2140. }
  2141. catch (Exception ex)
  2142. {
  2143. if (oracleConn.ConnState == ConnectionState.Open)
  2144. {
  2145. oracleConn.Close();
  2146. }
  2147. throw ex;
  2148. }
  2149. }
  2150. /// <summary>
  2151. /// 获取产品缺陷管理的全部数据
  2152. /// </summary>
  2153. /// <param name="sUserInfo">用户基本信息</param>
  2154. /// <returns>DataSet</returns>
  2155. /// <remarks>
  2156. /// 2014.10.30 任海 新建
  2157. /// </remarks>
  2158. public static DataSet GetAllDefectInfo(SUserInfo sUserInfo)
  2159. {
  2160. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  2161. try
  2162. {
  2163. string sqlString = "Select DefectID,DefectCode,DefectName,Remarks,AccountID,ValueFlag,CreateTime,CreateUserID,UpdateTime,UpdateUserID,OPTimeStamp,DefectTypeID "
  2164. + " ,displayno from TP_MST_Defect where AccountID = :AccountID";
  2165. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  2166. {
  2167. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  2168. };
  2169. oracleConn.Open();
  2170. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  2171. oracleConn.Close();
  2172. return result;
  2173. }
  2174. catch (Exception ex)
  2175. {
  2176. if (oracleConn.ConnState == ConnectionState.Open)
  2177. {
  2178. oracleConn.Close();
  2179. }
  2180. throw ex;
  2181. }
  2182. }
  2183. /// <summary>
  2184. /// 获取成型线类型管理的数据
  2185. /// </summary>
  2186. /// <param name="pValue">显示停用标识</param>
  2187. /// <param name="sUserInfo">用户基本信息</param>
  2188. /// <returns>DataSet</returns>
  2189. /// <remarks>
  2190. /// 2014.09.11 任海 新建
  2191. /// </remarks>
  2192. public static DataSet GetGMouldTypeData(byte pValue, SUserInfo sUserInfo)
  2193. {
  2194. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  2195. try
  2196. {
  2197. string sqlString = string.Empty;
  2198. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = null;
  2199. if (pValue.ToString() == Constant.INT_IS_ONE.ToString())
  2200. {
  2201. //根据帐套查询数据
  2202. sqlString = "Select GMouldTypeID,GMouldTypeCode,GMouldTypeName,CanManyTimes,Remarks,AccountID,ValueFlag,CreateTime,CreateUserID,UpdateTime,"
  2203. + "UpdateUserID,OPTimeStamp from TP_MST_GMouldType where AccountID = :AccountID";
  2204. oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  2205. {
  2206. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  2207. };
  2208. }
  2209. else if (pValue.ToString() == Constant.INT_IS_ZERO.ToString())
  2210. {
  2211. //根据帐套,标识符查询数据
  2212. sqlString = "Select GMouldTypeID,GMouldTypeCode,GMouldTypeName,CanManyTimes,Remarks,AccountID,ValueFlag,CreateTime,CreateUserID,UpdateTime,"
  2213. + "UpdateUserID,OPTimeStamp from TP_MST_GMouldType where valueflag = :valueflag and AccountID = :AccountID";
  2214. oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  2215. {
  2216. new Oracle.ManagedDataAccess.Client.OracleParameter(":valueflag",Constant.INT_IS_ONE.ToString()),
  2217. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  2218. };
  2219. }
  2220. oracleConn.Open();
  2221. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  2222. oracleConn.Close();
  2223. return result;
  2224. }
  2225. catch (Exception ex)
  2226. {
  2227. if (oracleConn.ConnState == ConnectionState.Open)
  2228. {
  2229. oracleConn.Close();
  2230. }
  2231. throw ex;
  2232. }
  2233. }
  2234. /// <summary>
  2235. /// 获取成型线类型管理的全部数据
  2236. /// </summary>
  2237. /// <param name="sUserInfo">用户基本信息</param>
  2238. /// <returns>DataSet</returns>
  2239. /// <remarks>
  2240. /// 2014.10.31 任海 新建
  2241. /// </remarks>
  2242. public static DataSet GetAllGMouldTypeInfo(SUserInfo sUserInfo)
  2243. {
  2244. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  2245. try
  2246. {
  2247. string sqlString = "Select GMouldTypeID,GMouldTypeCode,GMouldTypeName,CanManyTimes,Remarks,AccountID,ValueFlag,CreateTime,CreateUserID,UpdateTime,"
  2248. + "UpdateUserID,OPTimeStamp from TP_MST_GMouldType where AccountID = :AccountID";
  2249. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  2250. {
  2251. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  2252. };
  2253. oracleConn.Open();
  2254. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  2255. oracleConn.Close();
  2256. return result;
  2257. }
  2258. catch (Exception ex)
  2259. {
  2260. if (oracleConn.ConnState == ConnectionState.Open)
  2261. {
  2262. oracleConn.Close();
  2263. }
  2264. throw ex;
  2265. }
  2266. }
  2267. /// <summary>
  2268. /// 查询温湿计信息
  2269. /// </summary>
  2270. /// <param name="sUserInfo">用户基本信息</param>
  2271. /// <param name="thermometerEntity">温湿计信息实体</param>
  2272. /// <returns>DataSet</returns>
  2273. /// <remarks>
  2274. /// 2014.12.24 任海 新建
  2275. /// </remarks>
  2276. public static DataSet GetThermometer(ThermometerEntity thermometerEntity, SUserInfo userInfo)
  2277. {
  2278. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  2279. try
  2280. {
  2281. StringBuilder sbSql = new StringBuilder();
  2282. // sbSql.Append(@"Select ThermometerID,BuildingNo,FloorNo,LocationCode,ThermometerCode,ManagerName,Remarks,AccountID,ValueFlag,CreateTime,
  2283. // CreateUserID,UpdateTime,UpdateUserID,OPTimeStamp from TP_MST_Thermometer
  2284. // where (:ThermometerID is null or ThermometerID = :ThermometerID)
  2285. // and (:AccountID is null or AccountID = :AccountID)
  2286. // and (:ValueFlag is null or ValueFlag = :ValueFlag or 2 = :ValueFlag)
  2287. // and (:BuildingNo is null or BuildingNo = :BuildingNo)
  2288. // and (:FloorNo is null or FloorNo = :FloorNo)
  2289. // and (:LocationCode is null or LocationCode = :LocationCode)
  2290. // and (:ThermometerCode is null or ThermometerCode = :ThermometerCode)
  2291. // and (:ManagerName is null or ManagerName = :ManagerName)
  2292. // and (:Remarks is null or Remarks = :Remarks )
  2293. // and (:SelectUserId is null
  2294. // or ThermometerID in (Select PurviewId from TP_MST_UserPurview
  2295. // where PurviewType=12 and UserId=:SelectUserId))
  2296. // Order by ThermometerID desc");
  2297. sbSql.Append(@"Select 0 AS Sel, ThermometerID,BuildingNo,FloorNo,LocationCode,ThermometerCode,ManagerName,Remarks,AccountID,ValueFlag,CreateTime,
  2298. CreateUserID,UpdateTime,UpdateUserID,OPTimeStamp from TP_MST_Thermometer
  2299. where (:ThermometerID is null or ThermometerID = :ThermometerID)
  2300. and (:AccountID is null or AccountID = :AccountID)
  2301. and (:ValueFlag is null or ValueFlag = :ValueFlag or 2 = :ValueFlag)
  2302. and (:BuildingNo is null or BuildingNo = :BuildingNo)
  2303. and (:FloorNo is null or FloorNo = :FloorNo)
  2304. and (:LocationCode is null or LocationCode = :LocationCode)
  2305. and (:ThermometerCode is null or ThermometerCode = :ThermometerCode)
  2306. and (:ManagerName is null or ManagerName = :ManagerName)
  2307. and (:Remarks is null or Remarks = :Remarks )
  2308. and (:SelectUserId is null
  2309. or exists (Select PurviewId from TP_MST_UserPurview
  2310. where PurviewType=12 and (TP_MST_UserPurview.PurviewID = -1 or TP_MST_UserPurview.PurviewID = TP_MST_Thermometer.ThermometerID) and UserId=:SelectUserId))
  2311. Order by ThermometerID desc");
  2312. OracleParameter[] ThermometerParas = new OracleParameter[]{
  2313. new OracleParameter(":ThermometerID",OracleDbType.Int32,
  2314. thermometerEntity.ThermometerID,ParameterDirection.Input),
  2315. new OracleParameter(":AccountID",OracleDbType.Int32,
  2316. userInfo.AccountID,ParameterDirection.Input),
  2317. new OracleParameter(":ValueFlag",OracleDbType.Int32,
  2318. thermometerEntity.ValueFlag,ParameterDirection.Input),
  2319. new OracleParameter(":BuildingNo",OracleDbType.NVarchar2,
  2320. thermometerEntity.BuildingNo,ParameterDirection.Input),
  2321. new OracleParameter(":FloorNo",OracleDbType.NVarchar2,
  2322. thermometerEntity.FloorNo,ParameterDirection.Input),
  2323. new OracleParameter(":LocationCode",OracleDbType.NVarchar2,
  2324. thermometerEntity.LocationCode,ParameterDirection.Input),
  2325. new OracleParameter(":ThermometerCode",OracleDbType.NVarchar2,
  2326. thermometerEntity.ThermometerCode,ParameterDirection.Input),
  2327. new OracleParameter(":ManagerName",OracleDbType.NVarchar2,
  2328. thermometerEntity.ManagerName,ParameterDirection.Input),
  2329. new OracleParameter(":Remarks",OracleDbType.NVarchar2,
  2330. thermometerEntity.Remarks,ParameterDirection.Input),
  2331. new OracleParameter(":SelectUserId",OracleDbType.NVarchar2,
  2332. thermometerEntity.SelectUserId,ParameterDirection.Input),
  2333. };
  2334. oracleConn.Open();
  2335. DataSet result = oracleConn.GetSqlResultToDs(sbSql.ToString(), ThermometerParas);
  2336. oracleConn.Close();
  2337. return result;
  2338. }
  2339. catch (Exception ex)
  2340. {
  2341. if (oracleConn.ConnState == ConnectionState.Open)
  2342. {
  2343. oracleConn.Close();
  2344. }
  2345. throw ex;
  2346. }
  2347. }
  2348. /// <summary>
  2349. /// 获取配置员工的数据
  2350. /// </summary>
  2351. /// <param name="userID">用户ID</param>
  2352. /// <param name="sUserInfo">用户基本信息</param>
  2353. /// <returns>DataSet</returns>
  2354. /// <remarks>
  2355. /// 2014.10.13 任海 新建
  2356. public static DataSet GetDeploystaffData(int userID, SUserInfo sUserInfo)
  2357. {
  2358. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  2359. try
  2360. {
  2361. string sqlString = "select TP_HR_Staff.Staffcode,"
  2362. + "TP_HR_Staff.Staffname,"
  2363. + "TP_HR_Staff.Staffid,"
  2364. + "TP_HR_Staff.Jobs,"
  2365. + "TP_HR_Staff.OrganizationID,"
  2366. + "TP_HR_Staff.StaffStatus,"
  2367. + "TP_MST_Jobs.Jobsname,"
  2368. + "TP_MST_Organization.Organizationname,"
  2369. + "TP_SYS_StaffStatus.Staffstatusname"
  2370. + " from TP_HR_Staff"
  2371. + " left join TP_MST_Jobs"
  2372. + " on TP_MST_Jobs.Jobsid = TP_HR_Staff.Jobs"
  2373. + " left join TP_MST_Organization"
  2374. + " on TP_MST_Organization.Organizationid = TP_HR_Staff.Organizationid"
  2375. + " left join TP_SYS_StaffStatus"
  2376. + " on TP_SYS_StaffStatus.StaffStatusID = TP_HR_Staff.StaffStatus"
  2377. + " WHERE TP_HR_Staff.AccountID = :AccountID"
  2378. + " AND TP_HR_Staff.userID = :userID AND TP_HR_Staff.ValueFlag = 1";
  2379. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  2380. {
  2381. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID),
  2382. new Oracle.ManagedDataAccess.Client.OracleParameter(":userID",userID)
  2383. };
  2384. oracleConn.Open();
  2385. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  2386. oracleConn.Close();
  2387. return result;
  2388. }
  2389. catch (Exception ex)
  2390. {
  2391. if (oracleConn.ConnState == ConnectionState.Open)
  2392. {
  2393. oracleConn.Close();
  2394. }
  2395. throw ex;
  2396. }
  2397. }
  2398. /// <summary>
  2399. /// 获取缺陷位置的数据
  2400. /// </summary>
  2401. /// <param name="valueFlag">正常标识</param>
  2402. /// <param name="sUserInfo">用户基本信息</param>
  2403. /// <returns>DataSet</returns>
  2404. /// <remarks>
  2405. /// 2014.09.10 冯雪 新建
  2406. /// 2014.10.28 任海 修改
  2407. /// </remarks>
  2408. public static DataSet GetDefectPositionData(byte pValue, SUserInfo sUserInfo)
  2409. {
  2410. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  2411. try
  2412. {
  2413. string sqlString = string.Empty;
  2414. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = null;
  2415. if (pValue.ToString() == Constant.INT_IS_ONE.ToString())
  2416. {
  2417. //根据帐套查询数据
  2418. sqlString = "Select DefectPositionID,DefectPositionCode,DefectPositionName,Remarks,AccountID,ValueFlag,CreateTime,CreateUserID,"
  2419. + "UpdateTime,UpdateUserID,OPTimeStamp from TP_MST_DefectPosition where AccountID =:accountID";
  2420. oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  2421. {
  2422. new OracleParameter(":accountID",sUserInfo.AccountID)
  2423. };
  2424. }
  2425. else if (pValue.ToString() == Constant.INT_IS_ZERO.ToString())
  2426. {
  2427. //根据帐套,标识符查询数据
  2428. sqlString = "Select DefectPositionID,DefectPositionCode,DefectPositionName,Remarks,AccountID,ValueFlag,CreateTime,CreateUserID,"
  2429. + "UpdateTime,UpdateUserID,OPTimeStamp from TP_MST_DefectPosition where valueflag = :valueflag and AccountID =:accountID";
  2430. oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  2431. {
  2432. new OracleParameter(":valueflag",Constant.INT_IS_ONE.ToString()),
  2433. new OracleParameter(":accountID",sUserInfo.AccountID)
  2434. };
  2435. }
  2436. oracleConn.Open();
  2437. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  2438. oracleConn.Close();
  2439. return result;
  2440. }
  2441. catch (Exception ex)
  2442. {
  2443. if (oracleConn.ConnState == ConnectionState.Open)
  2444. {
  2445. oracleConn.Close();
  2446. }
  2447. throw ex;
  2448. }
  2449. }
  2450. /// <summary>
  2451. /// 获取缺陷位置管理的全部数据
  2452. /// </summary>
  2453. /// <param name="sUserInfo">用户基本信息</param>
  2454. /// <returns>DataSet</returns>
  2455. /// <remarks>
  2456. /// 2014.10.31 任海 新建
  2457. /// </remarks>
  2458. public static DataSet GetAllDefectPositionInfo(SUserInfo sUserInfo)
  2459. {
  2460. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  2461. try
  2462. {
  2463. string sqlString = "Select DefectPositionID,DefectPositionCode,DefectPositionName,Remarks,AccountID,ValueFlag,CreateTime,CreateUserID,"
  2464. + "UpdateTime,UpdateUserID,OPTimeStamp ,displayno from TP_MST_DefectPosition where AccountID =:accountID";
  2465. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  2466. {
  2467. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  2468. };
  2469. oracleConn.Open();
  2470. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  2471. oracleConn.Close();
  2472. return result;
  2473. }
  2474. catch (Exception ex)
  2475. {
  2476. if (oracleConn.ConnState == ConnectionState.Open)
  2477. {
  2478. oracleConn.Close();
  2479. }
  2480. throw ex;
  2481. }
  2482. }
  2483. /// <summary>
  2484. /// 获取产品类型的数据
  2485. /// </summary>
  2486. /// <param name="pValue">正常标识</param>
  2487. /// <param name="sUserInfo">用户基本信息</param>
  2488. /// <returns>DataSet</returns>
  2489. /// <remarks>
  2490. /// 2014.09.11 冯雪 新建
  2491. /// 2014.10.28 任海 修改
  2492. /// </remarks>
  2493. public static DataSet GetGoodsTypeData(byte pValue, SUserInfo sUserInfo)
  2494. {
  2495. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  2496. try
  2497. {
  2498. string sqlString = string.Empty;
  2499. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = null;
  2500. if (pValue.ToString() == Constant.INT_IS_ONE.ToString())
  2501. {
  2502. //根据帐套查询数据
  2503. sqlString = "Select GoodsTypeID,GoodsTypeCode,GoodsTypeName,GoodsTypeFullName,IsLeafNode,Remarks,AccountID,ValueFlag,"
  2504. + "CreateTime,CreateUserID,UpdateTime,UpdateUserID,OPTimeStamp from TP_MST_GoodsType where AccountID =:accountID";
  2505. oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  2506. {
  2507. new OracleParameter(":accountID",sUserInfo.AccountID)
  2508. };
  2509. }
  2510. else if (pValue.ToString() == Constant.INT_IS_ZERO.ToString())
  2511. {
  2512. //根据帐套,标识符查询数据
  2513. sqlString = "Select GoodsTypeID,GoodsTypeCode,GoodsTypeName,GoodsTypeFullName,IsLeafNode,Remarks,AccountID,ValueFlag,"
  2514. + "CreateTime,CreateUserID,UpdateTime,UpdateUserID,OPTimeStamp from TP_MST_GoodsType where valueflag = :valueflag and AccountID =:accountID";
  2515. oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  2516. {
  2517. new OracleParameter(":valueflag",Constant.INT_IS_ONE.ToString()),
  2518. new OracleParameter(":accountID",sUserInfo.AccountID)
  2519. };
  2520. }
  2521. oracleConn.Open();
  2522. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  2523. oracleConn.Close();
  2524. return result;
  2525. }
  2526. catch (Exception ex)
  2527. {
  2528. if (oracleConn.ConnState == ConnectionState.Open)
  2529. {
  2530. oracleConn.Close();
  2531. }
  2532. throw ex;
  2533. }
  2534. }
  2535. /// <summary>
  2536. /// 获取产品类型的数据
  2537. /// </summary>
  2538. /// <param name="sUserInfo">用户基本信息</param>
  2539. /// <returns>DataSet</returns>
  2540. /// <remarks>
  2541. /// </remarks>
  2542. public static DataSet GetAllGoodsTypeData(SUserInfo sUserInfo)
  2543. {
  2544. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  2545. try
  2546. {
  2547. string sqlString = "Select GoodsTypeID,GoodsTypeCode,GoodsTypeName,GoodsTypeFullName,IsLeafNode,Remarks,AccountID,ValueFlag,"
  2548. + "CreateTime,CreateUserID,UpdateTime,UpdateUserID,OPTimeStamp from TP_MST_GoodsType where AccountID =:accountID order by goodstypecode";
  2549. OracleParameter[] oracleParameter = new OracleParameter[]
  2550. {
  2551. new OracleParameter(":accountID",sUserInfo.AccountID)
  2552. };
  2553. oracleConn.Open();
  2554. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  2555. oracleConn.Close();
  2556. return result;
  2557. }
  2558. catch (Exception ex)
  2559. {
  2560. if (oracleConn.ConnState == ConnectionState.Open)
  2561. {
  2562. oracleConn.Close();
  2563. }
  2564. throw ex;
  2565. }
  2566. }
  2567. /// <summary>
  2568. /// 按条件获取产品类型的数据
  2569. /// </summary>
  2570. /// <param name="valueFlag">正常标识</param>
  2571. /// <param name="typeCode">产品类型编码</param>
  2572. /// <param name="sUserInfo">用户基本信息</param>
  2573. /// <returns>DataSet</returns>
  2574. /// <remarks>
  2575. /// 2014.09.11 冯雪 新建
  2576. /// </remarks>
  2577. public static DataSet GetGoodsTyperData(byte pValue, string typeCode, SUserInfo sUserInfo)
  2578. {
  2579. try
  2580. {
  2581. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  2582. try
  2583. {
  2584. string strValueFlag = "1";
  2585. if (pValue.ToString().Equals("1"))
  2586. {
  2587. strValueFlag = "0";
  2588. }
  2589. string strSql = " Select * from TP_MST_GoodsType "
  2590. + " where valueflag = :valueflag "
  2591. + " and AccountID =:accountID "
  2592. + " and goodstypecode like :typeCode"
  2593. + " order by goodstypecode ";
  2594. Oracle.ManagedDataAccess.Client.OracleParameter[] paras1 = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  2595. {
  2596. new OracleParameter(":valueflag",strValueFlag),
  2597. new OracleParameter(":typeCode",typeCode+"%"),
  2598. new OracleParameter(":accountID",sUserInfo.AccountID)
  2599. };
  2600. oracleConn.Open();
  2601. DataSet result = oracleConn.GetSqlResultToDs(strSql, paras1);
  2602. oracleConn.Close();
  2603. return result;
  2604. }
  2605. catch (Exception ex)
  2606. {
  2607. if (oracleConn.ConnState == ConnectionState.Open)
  2608. {
  2609. oracleConn.Close();
  2610. }
  2611. throw ex;
  2612. }
  2613. }
  2614. catch (Exception ex)
  2615. {
  2616. throw ex;
  2617. }
  2618. }
  2619. /// <summary>
  2620. /// 获取产品档案的ID
  2621. /// </summary>
  2622. /// <param name="sUserInfo">用户基本信息</param>
  2623. /// <param name="GoodsTypeID">产品档案的ID</param>
  2624. /// <returns>DataSet</returns>
  2625. /// <remarks>
  2626. /// 2014.10.27 任海 新建
  2627. /// </remarks>
  2628. public static DataSet GetGoodsTypeIDData(SUserInfo sUserInfo, int GoodsTypeID)
  2629. {
  2630. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  2631. try
  2632. {
  2633. string strSql = "Select * from TP_MST_Goods where GoodsTypeID = :GoodsTypeID and AccountID =:accountID";
  2634. Oracle.ManagedDataAccess.Client.OracleParameter[] paras1 = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  2635. {
  2636. new OracleParameter(":accountID",sUserInfo.AccountID),
  2637. new OracleParameter(":GoodsTypeID",GoodsTypeID)
  2638. };
  2639. oracleConn.Open();
  2640. DataSet result = oracleConn.GetSqlResultToDs(strSql, paras1);
  2641. oracleConn.Close();
  2642. return result;
  2643. }
  2644. catch (Exception ex)
  2645. {
  2646. if (oracleConn.ConnState == ConnectionState.Open)
  2647. {
  2648. oracleConn.Close();
  2649. }
  2650. throw ex;
  2651. }
  2652. }
  2653. /// <summary>
  2654. /// 获取用户操作权限
  2655. /// </summary>
  2656. /// <param name="userID">用户ID</param>
  2657. /// <param name="sUserInfo">用户基本信息</param>
  2658. /// <returns>DataSet用户操作权限集合</returns>
  2659. public static DataSet GetUserRightData(int userID, SUserInfo sUserInfo)
  2660. {
  2661. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  2662. try
  2663. {
  2664. DataSet returnUserRight = new DataSet();
  2665. //查看部门权限
  2666. string strSqlViewOrg = "select a.OrganizationID as PurviewID,a.OrganizationCode,a.OrganizationName,case (nvl(b.purviewid,0)) when 0 then 0 else 1 end as RightFlag, 1 as PurviewType from ("
  2667. + "SELECT OrganizationID, OrganizationCode,OrganizationName, 0 FROM TP_MST_Organization WHERE AccountID = :AccountID ) a "
  2668. + " left join (SELECT * FROM TP_MST_UserPurview WHERE UserID =:UserID AND PurviewType = 1 ) b on a.OrganizationID=b.purviewid";
  2669. //操作部门权限
  2670. string strSqlOrg = "select a.OrganizationID as PurviewID,a.OrganizationCode,a.OrganizationName,case (nvl(b.purviewid,0)) when 0 then 0 else 1 end as RightFlag, 2 as PurviewType from ("
  2671. + "SELECT OrganizationID, OrganizationCode,OrganizationName, 0 FROM TP_MST_Organization WHERE ValueFlag = 1 and AccountID = :AccountID ) a "
  2672. + " left join (SELECT * FROM TP_MST_UserPurview WHERE UserID =:UserID AND PurviewType = 2) b on a.OrganizationID=b.purviewid ";
  2673. //查看工号范围权限
  2674. string strSqlViewUser = "select a.UserID as PurviewID,a.UserCode,a.UserName,case (nvl(b.purviewid,0)) when 0 then 0 else 1 end as RightFlag, 3 as PurviewType,a.OrganizationName,a.OrganizationFullName,a.ValueFlag from ("
  2675. + "SELECT TP_MST_User.UserID, TP_MST_User.UserCode,TP_MST_User.UserName,TP_MST_User.ValueFlag,TP_MST_Organization.OrganizationName,TP_MST_Organization.OrganizationFullName FROM TP_MST_User left join TP_MST_Organization on TP_MST_User.ORGANIZATIONID=TP_MST_Organization.ORGANIZATIONID WHERE TP_MST_User.AccountID = :AccountID and TP_MST_USER.UserCode != 'admin' ) a "
  2676. + " left join (SELECT * FROM TP_MST_UserPurview WHERE UserID =:UserID AND PurviewType = 3) b on a.UserID=b.purviewid ";
  2677. // + " union all (SELECT -1 as PurviewID,null as UserCode,null as UserName,1 as RightFlag,3 as PurviewType,null as OrganizationName,null as OrganizationFullName,null as ValueFlag FROM TP_MST_UserPurview WHERE UserID =:UserID AND PurviewType = 3 and purviewid=-1)";
  2678. //操作工号范围权限
  2679. string strSqlUser = "select a.UserID as PurviewID,a.UserCode,a.UserName,case (nvl(b.purviewid,0)) when 0 then 0 else 1 end as RightFlag, 4 as PurviewType,a.OrganizationName,a.OrganizationFullName,a.ValueFlag from ("
  2680. + "SELECT TP_MST_User.UserID, TP_MST_User.UserCode,TP_MST_User.UserName,TP_MST_User.ValueFlag,TP_MST_Organization.OrganizationName,TP_MST_Organization.OrganizationFullName FROM TP_MST_User left join TP_MST_Organization on TP_MST_User.ORGANIZATIONID=TP_MST_Organization.ORGANIZATIONID WHERE TP_MST_User.ValueFlag=1 and TP_MST_User.AccountID = :AccountID and TP_MST_USER.UserCode != 'admin' ) a "
  2681. + " left join (SELECT * FROM TP_MST_UserPurview WHERE UserID =:UserID AND PurviewType = 4) b on a.UserID=b.purviewid ";
  2682. //查看成型线范围权限
  2683. string strSqlViewGroutingLine = "select a.Groutinglineid as PurviewID,a.Groutinglinecode,a.GroutinglineName,case (nvl(b.purviewid,0)) when 0 then 0 else 1 end as RightFlag, 5 as PurviewType,a.ValueFlag from ("
  2684. + " select Groutinglineid,Groutinglinecode,GroutinglineName,ValueFlag from tp_pc_groutingline where tp_pc_groutingline.AccountID = :AccountID and ValueFlag in(0,1) Order by Groutinglinecode ) a "
  2685. + " left join (SELECT * FROM TP_MST_UserPurview WHERE UserID =:UserID AND PurviewType = 5) b on a.Groutinglineid=b.purviewid and a.ValueFlag in(0,1)";
  2686. //操作成型线范围权限
  2687. string strSqlGroutingLine = "select a.Groutinglineid as PurviewID,a.Groutinglinecode,a.GroutinglineName,case (nvl(b.purviewid,0)) when 0 then 0 else 1 end as RightFlag, 6 as PurviewType,a.ValueFlag from ("
  2688. + " select Groutinglineid,Groutinglinecode,GroutinglineName,ValueFlag from tp_pc_groutingline where tp_pc_groutingline.AccountID = :AccountID and ValueFlag in(0,1) Order by Groutinglinecode ) a "
  2689. + " left join (SELECT * FROM TP_MST_UserPurview WHERE UserID =:UserID AND PurviewType = 6) b on a.Groutinglineid=b.purviewid and a.ValueFlag in(0,1)";
  2690. //查看生产线范围权限
  2691. string strSqlViewProductionLine = "select a.ProductionLineid as PurviewID,a.ProductionLineCode,a.ProductionLinename,case (nvl(b.purviewid,0)) when 0 then 0 else 1 end as RightFlag, 7 as PurviewType,a.ValueFlag from ("
  2692. + " select ProductionLineid,ProductionLineCode,ProductionLinename,ValueFlag from tp_pc_productionline where tp_pc_productionline.AccountID = :AccountID and tp_pc_productionline.valueflag=1 Order by ProductionLineCode ) a "
  2693. + " left join (SELECT * FROM TP_MST_UserPurview WHERE UserID =:UserID AND PurviewType = 7) b on a.ProductionLineid=b.purviewid ";
  2694. //操作生产线范围权限
  2695. string strSqlProductionLine = "select a.ProductionLineid as PurviewID,a.ProductionLineCode,a.ProductionLinename,case (nvl(b.purviewid,0)) when 0 then 0 else 1 end as RightFlag, 8 as PurviewType,a.ValueFlag from ("
  2696. + " select ProductionLineid,ProductionLineCode,ProductionLinename,ValueFlag from tp_pc_productionline where tp_pc_productionline.AccountID = :AccountID and ValueFlag=1 Order by ProductionLineCode ) a "
  2697. + " left join (SELECT * FROM TP_MST_UserPurview WHERE UserID =:UserID AND PurviewType = 8) b on a.ProductionLineid=b.purviewid ";
  2698. //查看工序范围权限
  2699. string strSqlViewProcedure = "select a.Procedureid as PurviewID,a.ProcedureCode,a.Procedurename,case (nvl(b.purviewid,0)) when 0 then 0 else 1 end as RightFlag, 9 as PurviewType,a.ValueFlag,a.ProductionLineid from ("
  2700. + " select Procedureid,ProcedureCode,Procedurename,ProductionLineid,valueflag from tp_pc_procedure where tp_pc_procedure.AccountID = :AccountID Order by displayno) a "
  2701. + " left join (SELECT * FROM TP_MST_UserPurview WHERE UserID =:UserID AND PurviewType = 9) b on a.Procedureid=b.purviewid ";
  2702. //操作工序范围权限
  2703. //string strSqlProcedure = "select a.Procedureid as PurviewID,a.ProcedureCode,a.Procedurename,case (nvl(b.purviewid,0)) when 0 then 0 else 1 end as RightFlag, 10 as PurviewType,a.ValueFlag,a.ProductionLineid from ("
  2704. // + " select Procedureid,ProcedureCode,Procedurename,ProductionLineid,valueflag from tp_pc_procedure where tp_pc_procedure.AccountID = :AccountID Order by ProcedureCode) a "
  2705. // + " left join (SELECT * FROM TP_MST_UserPurview WHERE UserID =:UserID AND PurviewType = 10) b on a.Procedureid=b.purviewid ";
  2706. string strSqlProcedure = @"select a.Procedureid as PurviewID,a.ProcedureCode,a.Procedurename,
  2707. a.Productionlinecode,a.Productionlinename,
  2708. case (nvl(b.purviewid,0))
  2709. when 0 then 0 else 1 end as RightFlag, 10 as PurviewType,a.ValueFlag,a.ProductionLineid from (
  2710. select tp_pc_procedure.displayno, tp_pc_procedure.Procedureid, tp_pc_procedure.ProcedureCode, tp_pc_procedure.Procedurename,
  2711. tp_pc_procedure.ProductionLineid, tp_pc_procedure.valueflag,TP_PC_ProductionLine.Productionlinecode,TP_PC_ProductionLine.Productionlinename from tp_pc_procedure
  2712. left join TP_PC_ProductionLine on tp_pc_procedure.ProductionLineID=TP_PC_ProductionLine.Productionlineid
  2713. where tp_pc_procedure.AccountID =:AccountID and tp_pc_procedure.valueflag=1 Order by displayno) a
  2714. left join (SELECT * FROM TP_MST_UserPurview WHERE UserID =:UserID AND PurviewType = 10) b on a.Procedureid=b.purviewid
  2715. order by displayno";//, a.Productionlineid ,ProcedureCode
  2716. //查看温湿计范围权限
  2717. string strSqlViewThermometer = "select a.ThermometerID as PurviewID,a.ThermometerCode,a.ManagerName,case (nvl(b.purviewid,0)) when 0 then 0 else 1 end as RightFlag, 11 as PurviewType,a.ValueFlag from ("
  2718. + " select ThermometerID,ThermometerCode,ManagerName,ValueFlag from TP_MST_Thermometer where TP_MST_Thermometer.AccountID = :AccountID Order by ThermometerID ) a "
  2719. + " left join (SELECT * FROM TP_MST_UserPurview WHERE UserID =:UserID AND PurviewType = 11) b on a.ThermometerID=b.purviewid ";
  2720. //操作温湿计范围权限
  2721. string strSqlThermometer = "select a.ThermometerID as PurviewID,a.ThermometerCode,a.ManagerName,case (nvl(b.purviewid,0)) when 0 then 0 else 1 end as RightFlag, 12 as PurviewType,a.ValueFlag from ("
  2722. + " select ThermometerID,ThermometerCode,ManagerName,ValueFlag from TP_MST_Thermometer where TP_MST_Thermometer.AccountID = :AccountID Order by ThermometerID ) a "
  2723. + " left join (SELECT * FROM TP_MST_UserPurview WHERE UserID =:UserID AND PurviewType = 12) b on a.ThermometerID=b.purviewid ";
  2724. //撤销工序范围权限
  2725. string strSqlCancelProcedure = "select a.Procedureid as PurviewID,a.ProcedureCode,a.Procedurename,case (nvl(b.purviewid,0)) when 0 then 0 else 1 end as RightFlag, 13 as PurviewType,a.ValueFlag,a.ProductionLineid from ("
  2726. + " select Procedureid,ProcedureCode,Procedurename,ProductionLineid,valueflag from tp_pc_procedure where tp_pc_procedure.AccountID = :AccountID and UnDoFlag=1 Order by displayno) a "
  2727. + " left join (SELECT * FROM TP_MST_UserPurview WHERE UserID =:UserID AND PurviewType = 13) b on a.Procedureid=b.purviewid ";
  2728. Oracle.ManagedDataAccess.Client.OracleParameter[] paras = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  2729. {
  2730. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID),
  2731. new Oracle.ManagedDataAccess.Client.OracleParameter(":UserID",userID)
  2732. };
  2733. string sqlFunctionCode = "SELECT * FROM TP_MST_UserPurview WHERE UserID =:UserID and purviewid=-1";
  2734. Oracle.ManagedDataAccess.Client.OracleParameter[] parasFunctionCode = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  2735. {
  2736. new Oracle.ManagedDataAccess.Client.OracleParameter(":UserID",userID)
  2737. };
  2738. oracleConn.Open();
  2739. DataTable dtViewOrg = oracleConn.GetSqlResultToDs(strSqlViewOrg, paras).Tables[0].Copy();
  2740. dtViewOrg.TableName = "ViewOrg";
  2741. DataTable dtOrg = oracleConn.GetSqlResultToDs(strSqlOrg, paras).Tables[0].Copy();
  2742. dtOrg.TableName = "Org";
  2743. DataTable dtViewUser = oracleConn.GetSqlResultToDs(strSqlViewUser, paras).Tables[0].Copy();
  2744. dtViewUser.TableName = "ViewUser";
  2745. DataTable dtUser = oracleConn.GetSqlResultToDs(strSqlUser, paras).Tables[0].Copy();
  2746. dtUser.TableName = "User";
  2747. DataTable dtViewGroutingLine = oracleConn.GetSqlResultToDs(strSqlViewGroutingLine, paras).Tables[0].Copy();
  2748. dtViewGroutingLine.TableName = "ViewGroutingLine";
  2749. DataTable dtGroutingLine = oracleConn.GetSqlResultToDs(strSqlGroutingLine, paras).Tables[0].Copy();
  2750. dtGroutingLine.TableName = "GroutingLine";
  2751. DataTable dtViewProductionLine = oracleConn.GetSqlResultToDs(strSqlViewProductionLine, paras).Tables[0].Copy();
  2752. dtViewProductionLine.TableName = "ViewProductionLine";
  2753. DataTable dtProductionLine = oracleConn.GetSqlResultToDs(strSqlProductionLine, paras).Tables[0].Copy();
  2754. dtProductionLine.TableName = "ProductionLine";
  2755. DataTable dtViewProcedure = oracleConn.GetSqlResultToDs(strSqlViewProcedure, paras).Tables[0].Copy();
  2756. dtViewProcedure.TableName = "ViewProcedure";
  2757. DataTable dtProcedure = oracleConn.GetSqlResultToDs(strSqlProcedure, paras).Tables[0].Copy();
  2758. dtProcedure.TableName = "Procedure";
  2759. DataTable dtViewThermometer = oracleConn.GetSqlResultToDs(strSqlViewThermometer, paras).Tables[0].Copy();
  2760. dtViewThermometer.TableName = "ViewThermometer";
  2761. DataTable dtThermometer = oracleConn.GetSqlResultToDs(strSqlThermometer, paras).Tables[0].Copy();
  2762. dtThermometer.TableName = "Thermometer";
  2763. DataTable dtFunctionCode = oracleConn.GetSqlResultToDs(sqlFunctionCode, parasFunctionCode).Tables[0].Copy();
  2764. dtFunctionCode.TableName = "FunctionCode";
  2765. DataTable dtCancel = oracleConn.GetSqlResultToDs(strSqlCancelProcedure, paras).Tables[0].Copy();
  2766. dtCancel.TableName = "CancelProcedure";
  2767. returnUserRight.Tables.Add(dtViewOrg);
  2768. returnUserRight.Tables.Add(dtOrg);
  2769. returnUserRight.Tables.Add(dtViewUser);
  2770. returnUserRight.Tables.Add(dtUser);
  2771. returnUserRight.Tables.Add(dtViewGroutingLine);
  2772. returnUserRight.Tables.Add(dtGroutingLine);
  2773. returnUserRight.Tables.Add(dtViewProductionLine);
  2774. returnUserRight.Tables.Add(dtProductionLine);
  2775. returnUserRight.Tables.Add(dtViewProcedure);
  2776. returnUserRight.Tables.Add(dtProcedure);
  2777. returnUserRight.Tables.Add(dtViewThermometer);
  2778. returnUserRight.Tables.Add(dtThermometer);
  2779. returnUserRight.Tables.Add(dtCancel);
  2780. returnUserRight.Tables.Add(dtFunctionCode);
  2781. oracleConn.Close();
  2782. return returnUserRight;
  2783. }
  2784. catch (Exception ex)
  2785. {
  2786. if (oracleConn.ConnState == ConnectionState.Open)
  2787. {
  2788. oracleConn.Close();
  2789. }
  2790. throw ex;
  2791. }
  2792. }
  2793. /// <summary>
  2794. /// 根据用户ID取得用户的功能权限信息
  2795. /// </summary>
  2796. /// <param name="userID">用户ID</param>
  2797. /// <param name="sUserInfo">用户基本信息</param>
  2798. /// <returns>DataSet</returns>
  2799. public static DataSet GetUserFunctionRightInfo(int userID, SUserInfo sUserInfo)
  2800. {
  2801. DataSet dsResult = new DataSet();
  2802. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  2803. try
  2804. {
  2805. if (userID < 1)
  2806. {
  2807. return null;
  2808. }
  2809. oracleConn.Open();
  2810. #region 对应要执行的SQL语句
  2811. string strSql1 = "SELECT 0 Choose,FunctionCode, Functionlevel ,FunctionName,FullName,FunctionFlag,FunctionButtonFlag,0 LicensesNumber,0 UseLincenseNumber"
  2812. + " FROM TP_SYS_Function where valueflag='1' and functionprogram='1' and functioncode not like '0101%' ";// and functioncode not like '0102%'";
  2813. DataTable dtFunction = oracleConn.GetSqlResultToDt(strSql1);
  2814. string strSql2 = "SELECT ur.userid, ur.Functioncode, f.functionlevel\n" +
  2815. " FROM TP_MST_UserRight ur\n" +
  2816. " INNER JOIN tp_sys_function f\n" +
  2817. " ON ur.functioncode = f.functioncode\n" +
  2818. " AND f.valueflag = '1'\n" +
  2819. " AND f.functionprogram = '1'" +
  2820. " WHERE userid = :pUserid";
  2821. Oracle.ManagedDataAccess.Client.OracleParameter[] paras2 = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  2822. {
  2823. new Oracle.ManagedDataAccess.Client.OracleParameter(":pUserid", OracleDbType.Int32,userID, ParameterDirection.Input)
  2824. };
  2825. DataTable dtUserRight = oracleConn.GetSqlResultToDt(strSql2, paras2);
  2826. //string strSql3 = "SELECT C.FunctionCode, COUNT(C.UserID) AS UseNum FROM TP_MST_UserRight C,TP_MST_User D"
  2827. // + " WHERE C.UserID = D.UserID AND D.ValueFlag > 0 AND D.AccountID = :accountID GROUP BY C.FunctionCode";
  2828. //Oracle.ManagedDataAccess.Client.OracleParameter[] paras3 = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  2829. //{
  2830. // new Oracle.ManagedDataAccess.Client.OracleParameter(":accountID", OracleDbType.Int32,sUserInfo.AccountID, ParameterDirection.Input)
  2831. //};
  2832. //DataTable dtUserFuncNum = oracleConn.GetSqlResultToDt(strSql3, paras3);
  2833. #endregion
  2834. oracleConn.Close();
  2835. foreach (DataRow newFunRow in dtFunction.Rows)
  2836. {
  2837. //string strFunctionCode = newFunRow["FunctionCode"].ToString();
  2838. string strFunctionLevel = newFunRow["FunctionLevel"].ToString();
  2839. //DataRow[] userRights = dtUserRight.Select("Functioncode = '" + strFunctionCode + "'");
  2840. DataRow[] userRights = dtUserRight.Select("functionlevel like '" + strFunctionLevel + "%'");
  2841. if (userRights != null && userRights.Count() > 0)
  2842. {
  2843. newFunRow["Choose"] = 1;
  2844. }
  2845. //DataRow[] userRightNums = dtUserFuncNum.Select("Functioncode = '" + strFunctionCode + "'");
  2846. //if (userRightNums != null && userRightNums.Count() > Constant.INT_IS_ZERO)
  2847. //{
  2848. // newFunRow["UseLincenseNumber"] = userRightNums[0]["UseNum"];
  2849. //}
  2850. }
  2851. string sqlExist = "select 1 from TP_MST_UserRight where Functioncode='[ALL]' and UserID=:UserID";
  2852. Oracle.ManagedDataAccess.Client.OracleParameter[] paras4 = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  2853. {
  2854. new Oracle.ManagedDataAccess.Client.OracleParameter(":UserID", OracleDbType.Int32,userID, ParameterDirection.Input),
  2855. };
  2856. DataSet dsExist = oracleConn.GetSqlResultToDs(sqlExist, paras4);
  2857. if (dsExist != null && dsExist.Tables[0].Rows.Count > 0)
  2858. {
  2859. DataRow drNew = dtFunction.NewRow();
  2860. drNew["Functioncode"] = "[ALL]";
  2861. dtFunction.Rows.Add(drNew);
  2862. }
  2863. dsResult.Tables.Add(dtFunction);
  2864. return dsResult;
  2865. }
  2866. catch (Exception ex)
  2867. {
  2868. if (oracleConn.ConnState == ConnectionState.Open)
  2869. {
  2870. oracleConn.Close();
  2871. }
  2872. throw ex;
  2873. }
  2874. }
  2875. /// <summary>
  2876. /// 根据用户ID取得用户的功能权限信息
  2877. /// </summary>
  2878. /// <param name="userID">用户ID</param>
  2879. /// <param name="sUserInfo">用户基本信息</param>
  2880. /// <returns>DataSet</returns>
  2881. public static DataSet GetUserFunctionRightTwoInfo(int userID, SUserInfo sUserInfo)
  2882. {
  2883. DataSet dsResult = new DataSet();
  2884. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  2885. try
  2886. {
  2887. if (userID < 1)
  2888. {
  2889. return null;
  2890. }
  2891. oracleConn.Open();
  2892. #region 对应要执行的SQL语句
  2893. string strSql1 = "SELECT 0 Choose,FunctionCode, Functionlevel ,FunctionName,FullName,FunctionFlag,FunctionButtonFlag,0 LicensesNumber,0 UseLincenseNumber"
  2894. + " FROM TP_SYS_Function where valueflag='1' ";
  2895. DataTable dtFunction = oracleConn.GetSqlResultToDt(strSql1);
  2896. //string strSql2 = "SELECT userid,Functioncode FROM TP_MST_UserRight WHERE userid = :pUserid";
  2897. string strSql2 = "SELECT ur.userid, ur.Functioncode, f.functionlevel\n" +
  2898. " FROM TP_MST_UserRight ur\n" +
  2899. " INNER JOIN tp_sys_function f\n" +
  2900. " ON ur.functioncode = f.functioncode\n" +
  2901. " AND f.valueflag = '1'\n" +
  2902. " AND f.functionprogram = '2'" +
  2903. " WHERE userid = :pUserid";
  2904. Oracle.ManagedDataAccess.Client.OracleParameter[] paras2 = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  2905. {
  2906. new Oracle.ManagedDataAccess.Client.OracleParameter(":pUserid", OracleDbType.Int32,userID, ParameterDirection.Input)
  2907. };
  2908. DataTable dtUserRight = oracleConn.GetSqlResultToDt(strSql2, paras2);
  2909. //string strSql3 = "SELECT C.FunctionCode, COUNT(C.UserID) AS UseNum FROM TP_MST_UserRight C,TP_MST_User D"
  2910. // + " WHERE C.UserID = D.UserID AND D.ValueFlag > 0 AND D.AccountID = :accountID GROUP BY C.FunctionCode";
  2911. //Oracle.ManagedDataAccess.Client.OracleParameter[] paras3 = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  2912. //{
  2913. // new Oracle.ManagedDataAccess.Client.OracleParameter(":accountID", OracleDbType.Int32,sUserInfo.AccountID, ParameterDirection.Input)
  2914. //};
  2915. //DataTable dtUserFuncNum = oracleConn.GetSqlResultToDt(strSql3, paras3);
  2916. #endregion
  2917. oracleConn.Close();
  2918. foreach (DataRow newFunRow in dtFunction.Rows)
  2919. {
  2920. //string strFunctionCode = newFunRow["FunctionCode"].ToString();
  2921. string strFunctionLevel = newFunRow["FunctionLevel"].ToString();
  2922. //DataRow[] userRights = dtUserRight.Select("Functioncode = '" + strFunctionCode + "'");
  2923. DataRow[] userRights = dtUserRight.Select("FunctionLevel like '" + strFunctionLevel + "%'");
  2924. if (userRights != null && userRights.Count() > 0)
  2925. {
  2926. newFunRow["Choose"] = 1;
  2927. }
  2928. //DataRow[] userRightNums = dtUserFuncNum.Select("Functioncode = '" + strFunctionCode + "'");
  2929. //if (userRightNums != null && userRightNums.Count() > Constant.INT_IS_ZERO)
  2930. //{
  2931. // newFunRow["UseLincenseNumber"] = userRightNums[0]["UseNum"];
  2932. //}
  2933. }
  2934. string sqlExist = "select 1 from TP_MST_UserRight where Functioncode='[ALL2]' and UserID=:UserID";
  2935. Oracle.ManagedDataAccess.Client.OracleParameter[] paras4 = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  2936. {
  2937. new Oracle.ManagedDataAccess.Client.OracleParameter(":UserID", OracleDbType.Int32,userID, ParameterDirection.Input),
  2938. };
  2939. DataSet dsExist = oracleConn.GetSqlResultToDs(sqlExist, paras4);
  2940. if (dsExist != null && dsExist.Tables[0].Rows.Count > 0)
  2941. {
  2942. DataRow drNew = dtFunction.NewRow();
  2943. drNew["Functioncode"] = "[ALL2]";
  2944. dtFunction.Rows.Add(drNew);
  2945. }
  2946. dsResult.Tables.Add(dtFunction);
  2947. return dsResult;
  2948. }
  2949. catch (Exception ex)
  2950. {
  2951. if (oracleConn.ConnState == ConnectionState.Open)
  2952. {
  2953. oracleConn.Close();
  2954. }
  2955. throw ex;
  2956. }
  2957. }
  2958. /// <summary>
  2959. /// 根据功能取得使用该功能的用户列表
  2960. /// </summary>
  2961. /// <param name="functionCode">功能编号</param>
  2962. /// <param name="sUserInfo">用户基本信息</param>
  2963. /// <returns>DataSet</returns>
  2964. public static DataSet GetFunctionUsers(string functionCode, SUserInfo sUserInfo)
  2965. {
  2966. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  2967. try
  2968. {
  2969. oracleConn.Open();
  2970. #region 对应要执行的SQL语句
  2971. string sqlString = "SELECT B.UserCode,B.UserName,C.AccountName,TP_MST_Organization.OrganizationName FROM TP_MST_UserRight A"
  2972. + " INNER JOIN TP_MST_User B ON A.UserID = B.UserID"
  2973. + " INNER JOIN TP_MST_Organization ON B.OrganizationID = TP_MST_Organization.OrganizationID "
  2974. + " INNER JOIN TP_MST_Account C ON B.AccountID = C.AccountID "
  2975. + " AND C.AccountID = " + sUserInfo.AccountID
  2976. + " WHERE B.ValueFlag > 0 AND A.FunctionCode = :pFunctionCode"
  2977. + " ORDER BY C.AccountName,B.UserCode,B.UserName";
  2978. Oracle.ManagedDataAccess.Client.OracleParameter[] paras = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  2979. {
  2980. new Oracle.ManagedDataAccess.Client.OracleParameter(":pFunctionCode", OracleDbType.Varchar2, functionCode, ParameterDirection.Input)
  2981. };
  2982. #endregion
  2983. DataSet dsResult = oracleConn.GetSqlResultToDs(sqlString, paras);
  2984. oracleConn.Close();
  2985. return dsResult;
  2986. }
  2987. catch (Exception ex)
  2988. {
  2989. if (oracleConn.ConnState == ConnectionState.Open)
  2990. {
  2991. oracleConn.Close();
  2992. }
  2993. throw ex;
  2994. }
  2995. }
  2996. /// <summary>
  2997. /// 检查产品类型到更新
  2998. /// </summary>
  2999. /// <param name="GoodsTypeCode">产品类型编码</param>
  3000. /// <returns>int</returns>
  3001. public static int CheckGoodsTypeToUpdate(string GoodsTypeCode)
  3002. {
  3003. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  3004. try
  3005. {
  3006. string strSql = @"Select Sum(Counts) from
  3007. (Select Count(*) as Counts from TP_MST_GOODSTYPE
  3008. WHERE GoodsTypeCode like '" + GoodsTypeCode + @"%'
  3009. and GoodsTypeCode != '" + GoodsTypeCode + @"'
  3010. Union
  3011. Select Count(*) as Counts from TP_MST_GOODS
  3012. WHERE GOODSTYPEID = '" + GoodsTypeCode + "')";
  3013. oracleConn.Open();
  3014. int Counts = Convert.ToInt32(oracleConn.GetSqlResultToStr(strSql, null));
  3015. oracleConn.Close();
  3016. return Counts;
  3017. }
  3018. catch (Exception ex)
  3019. {
  3020. if (oracleConn.ConnState == ConnectionState.Open)
  3021. {
  3022. oracleConn.Close();
  3023. }
  3024. throw ex;
  3025. }
  3026. }
  3027. #endregion
  3028. #region 报表工序基础信息管理
  3029. /// <summary>
  3030. /// 报表工序基础信息
  3031. /// </summary>
  3032. /// <param name="rptProcedureEntity">报表工序实体</param>
  3033. /// <param name="sUserInfo">用户基本信息</param>
  3034. /// <returns>DataSet数据集</returns>
  3035. public static DataSet GetRptProcedureModule(RptProcedureEntity rptProcedureEntity, SUserInfo sUserInfo)
  3036. {
  3037. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  3038. try
  3039. {
  3040. con.Open();
  3041. OracleParameter[] paras = new OracleParameter[]{
  3042. new OracleParameter("in_rptProcedureId",OracleDbType.Int32,rptProcedureEntity.RptProcedureID,ParameterDirection.Input),
  3043. new OracleParameter("in_rptProcedureCode",OracleDbType.Varchar2,rptProcedureEntity.RptProcedureCode,ParameterDirection.Input),
  3044. new OracleParameter("in_rptProcedureName",OracleDbType.Varchar2,rptProcedureEntity.RptProcedureName,ParameterDirection.Input),
  3045. new OracleParameter("in_rptProcedureType",OracleDbType.Varchar2,rptProcedureEntity.RptProcedureTpye,ParameterDirection.Input),
  3046. new OracleParameter("in_accountID",OracleDbType.Int32,sUserInfo.AccountID,ParameterDirection.Input),
  3047. new OracleParameter("out_result",OracleDbType.RefCursor, ParameterDirection.Output),
  3048. };
  3049. DataSet dsSearchReport = con.ExecStoredProcedure("PRO_MST_GetRptProcedure", paras);
  3050. return dsSearchReport;
  3051. }
  3052. catch (Exception ex)
  3053. {
  3054. throw ex;
  3055. }
  3056. finally
  3057. {
  3058. if (con.ConnState == ConnectionState.Open)
  3059. {
  3060. con.Close();
  3061. }
  3062. }
  3063. }
  3064. /// <summary>
  3065. /// 根据报表来源工序Id查询先关工序信息
  3066. /// </summary>
  3067. /// <param name="rptProcedureId">报表工序Id</param>
  3068. /// <returns>DataSet数据集</returns>
  3069. public static DataSet GetRptProcedureIdByProcedureInfo(int rptProcedureId)
  3070. {
  3071. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  3072. try
  3073. {
  3074. con.Open();
  3075. OracleParameter[] paras = new OracleParameter[]{
  3076. new OracleParameter("in_rptProcedureId",OracleDbType.Int32,rptProcedureId,ParameterDirection.Input),
  3077. new OracleParameter("out_rptSResult",OracleDbType.RefCursor, ParameterDirection.Output),
  3078. new OracleParameter("out_rptTresult",OracleDbType.RefCursor, ParameterDirection.Output),
  3079. };
  3080. DataSet dsSearchReport = con.ExecStoredProcedure("PRO_MST_GetRptProcedureBYID", paras);
  3081. return dsSearchReport;
  3082. }
  3083. catch (Exception ex)
  3084. {
  3085. throw ex;
  3086. }
  3087. finally
  3088. {
  3089. if (con.ConnState == ConnectionState.Open)
  3090. {
  3091. con.Close();
  3092. }
  3093. }
  3094. }
  3095. #endregion
  3096. #region 系统相关
  3097. /// <summary>
  3098. /// 获取服务路径
  3099. /// </summary>
  3100. /// <returns></returns>
  3101. public static string GetServerPath()
  3102. {
  3103. try
  3104. {
  3105. return System.AppDomain.CurrentDomain.BaseDirectory;
  3106. }
  3107. catch (Exception ex)
  3108. {
  3109. throw ex;
  3110. }
  3111. }
  3112. /// <summary>
  3113. /// 系统时间
  3114. /// </summary>
  3115. /// <param name="userInfo"></param>
  3116. /// <returns></returns>
  3117. public static DataSet GetSettlementTime(SUserInfo userInfo)
  3118. {
  3119. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  3120. try
  3121. {
  3122. string sqlString = "Select * from TP_MST_SystemDate Where SystemDateType = 5 and AccountId = " + userInfo.AccountID;
  3123. oracleConn.Open();
  3124. DataSet result = oracleConn.GetSqlResultToDs(sqlString, null);
  3125. oracleConn.Close();
  3126. if (result.Tables[0].Rows.Count == 0)
  3127. {
  3128. return null;
  3129. }
  3130. else
  3131. {
  3132. return result;
  3133. }
  3134. }
  3135. catch (Exception ex)
  3136. {
  3137. if (oracleConn.ConnState == ConnectionState.Open)
  3138. {
  3139. oracleConn.Close();
  3140. }
  3141. throw ex;
  3142. }
  3143. }
  3144. /// <summary>
  3145. /// 取得功能权限信息
  3146. /// </summary>
  3147. /// <param name="sUserInfo">用户基本信息</param>
  3148. /// <returns>DataSet</returns>
  3149. public static DataSet GetFunctionRight(SUserInfo sUserInfo)
  3150. {
  3151. DataSet dsResult = new DataSet();
  3152. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  3153. try
  3154. {
  3155. oracleConn.Open();
  3156. #region 对应要执行的SQL语句
  3157. string strSql1 = "SELECT 0 Choose,FunctionCode, Functionlevel ,FunctionName,FullName,FunctionFlag,FunctionButtonFlag,0 LicensesNumber,0 UseLincenseNumber"
  3158. + " FROM TP_SYS_Function where valueflag='1' and FunctionProgram = '1'";
  3159. DataTable dtFunction1 = oracleConn.GetSqlResultToDt(strSql1);
  3160. string strSql2 = "SELECT 0 Choose,FunctionCode, Functionlevel ,FunctionName,FullName,FunctionFlag,FunctionButtonFlag,0 LicensesNumber,0 UseLincenseNumber"
  3161. + " FROM TP_SYS_Function where valueflag='1' and FunctionProgram = '2'";
  3162. DataTable dtFunction2 = oracleConn.GetSqlResultToDt(strSql2);
  3163. #endregion
  3164. dsResult.Tables.Add(dtFunction1);
  3165. dsResult.Tables.Add(dtFunction2);
  3166. oracleConn.Close();
  3167. return dsResult;
  3168. }
  3169. catch (Exception ex)
  3170. {
  3171. if (oracleConn.ConnState == ConnectionState.Open)
  3172. {
  3173. oracleConn.Close();
  3174. }
  3175. throw ex;
  3176. }
  3177. }
  3178. /// <summary>
  3179. /// 根据功能取得使用该功能的用户列表
  3180. /// </summary>
  3181. /// <param name="sUserInfo">用户基本信息</param>
  3182. /// <returns>DataSet</returns>
  3183. public static DataSet GetFunctionUsersList(SUserInfo sUserInfo)
  3184. {
  3185. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  3186. try
  3187. {
  3188. oracleConn.Open();
  3189. #region 对应要执行的SQL语句
  3190. string sqlString = "SELECT B.UserID,B.UserCode,B.UserName,C.AccountName,TP_MST_Organization.OrganizationName,A.FunctionCode,0 as AddFlag FROM TP_MST_UserRight A"
  3191. + " INNER JOIN TP_MST_User B ON A.UserID = B.UserID"
  3192. + " INNER JOIN TP_MST_Organization ON B.OrganizationID = TP_MST_Organization.OrganizationID "
  3193. + " INNER JOIN TP_MST_Account C ON B.AccountID = C.AccountID "
  3194. + " inner join tp_sys_function on a.functioncode=tp_sys_function.functioncode --and tp_sys_function.functionflag='1' "
  3195. + " and tp_sys_function.functionprogram=1 AND C.AccountID = " + sUserInfo.AccountID
  3196. + " WHERE B.ValueFlag > 0 "
  3197. + " ORDER BY C.AccountName,B.UserCode,B.UserName";
  3198. #endregion
  3199. DataSet dsResult = oracleConn.GetSqlResultToDs(sqlString);
  3200. oracleConn.Close();
  3201. return dsResult;
  3202. }
  3203. catch (Exception ex)
  3204. {
  3205. if (oracleConn.ConnState == ConnectionState.Open)
  3206. {
  3207. oracleConn.Close();
  3208. }
  3209. throw ex;
  3210. }
  3211. }
  3212. /// <summary>
  3213. /// 根据功能取得使用该功能的用户列表
  3214. /// </summary>
  3215. /// <param name="sUserInfo">用户基本信息</param>
  3216. /// <returns>DataSet</returns>
  3217. public static DataSet GetFunctionUsersTwoList(SUserInfo sUserInfo)
  3218. {
  3219. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  3220. try
  3221. {
  3222. oracleConn.Open();
  3223. #region 对应要执行的SQL语句
  3224. string sqlString = "SELECT B.UserID,B.UserCode,B.UserName,C.AccountName,TP_MST_Organization.OrganizationName,A.FunctionCode,0 as AddFlag FROM TP_MST_UserRight A"
  3225. + " INNER JOIN TP_MST_User B ON A.UserID = B.UserID"
  3226. + " INNER JOIN TP_MST_Organization ON B.OrganizationID = TP_MST_Organization.OrganizationID "
  3227. + " INNER JOIN TP_MST_Account C ON B.AccountID = C.AccountID "
  3228. + " inner join tp_sys_function on a.functioncode=tp_sys_function.functioncode --and tp_sys_function.functionflag='1' "
  3229. + " and tp_sys_function.functionprogram=2 AND C.AccountID = " + sUserInfo.AccountID
  3230. + " WHERE B.ValueFlag > 0 "
  3231. + " ORDER BY C.AccountName,B.UserCode,B.UserName";
  3232. #endregion
  3233. DataSet dsResult = oracleConn.GetSqlResultToDs(sqlString);
  3234. oracleConn.Close();
  3235. return dsResult;
  3236. }
  3237. catch (Exception ex)
  3238. {
  3239. if (oracleConn.ConnState == ConnectionState.Open)
  3240. {
  3241. oracleConn.Close();
  3242. }
  3243. throw ex;
  3244. }
  3245. }
  3246. /// <summary>
  3247. /// 根据范围取得使用该功能的用户列表
  3248. /// </summary>
  3249. /// <param name="sUserInfo">用户基本信息</param>
  3250. /// <returns>DataSet</returns>
  3251. public static DataSet GetFunctionUserPurviewList(SUserInfo sUserInfo)
  3252. {
  3253. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  3254. try
  3255. {
  3256. oracleConn.Open();
  3257. #region 对应要执行的SQL语句
  3258. string sqlString = "SELECT B.UserID,B.UserCode,B.UserName,TP_MST_Organization.OrganizationName,A.Purviewid,A.PURVIEWTYPE,0 as AddFlag FROM TP_MST_UserPurview A"
  3259. + " INNER JOIN TP_MST_User B ON A.UserID = B.UserID"
  3260. + " INNER JOIN TP_MST_Organization ON B.OrganizationID = TP_MST_Organization.OrganizationID "
  3261. + " INNER JOIN TP_MST_Account C ON B.AccountID = C.AccountID "
  3262. + " AND C.AccountID = " + sUserInfo.AccountID
  3263. + " WHERE B.ValueFlag > 0 "
  3264. + " ORDER BY B.UserCode,B.UserName";
  3265. #endregion
  3266. DataSet dsResult = oracleConn.GetSqlResultToDs(sqlString);
  3267. oracleConn.Close();
  3268. return dsResult;
  3269. }
  3270. catch (Exception ex)
  3271. {
  3272. if (oracleConn.ConnState == ConnectionState.Open)
  3273. {
  3274. oracleConn.Close();
  3275. }
  3276. throw ex;
  3277. }
  3278. }
  3279. /// <summary>
  3280. /// 获取商标管理的全部数据
  3281. /// </summary>
  3282. /// <param name="sUserInfo">用户基本信息</param>
  3283. /// <returns></returns>
  3284. /// <remarks>
  3285. /// 2015.11.12 王鑫 新建
  3286. /// </remarks>
  3287. public static DataSet GetAllLogoInfo(SUserInfo sUserInfo)
  3288. {
  3289. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  3290. try
  3291. {
  3292. string sqlString = "Select 0 as Sel, LogoID,LogoCode,LogoName,Remarks,ValueFlag,0 as AddFlag,isdefault,concat(LogoName||'[',LogoCode||']') as LogoNameCode,displayno, TagCode "
  3293. + "from tp_mst_logo where AccountID = :AccountID order by displayno";
  3294. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  3295. {
  3296. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  3297. };
  3298. oracleConn.Open();
  3299. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  3300. oracleConn.Close();
  3301. return result;
  3302. }
  3303. catch (Exception ex)
  3304. {
  3305. if (oracleConn.ConnState == ConnectionState.Open)
  3306. {
  3307. oracleConn.Close();
  3308. }
  3309. throw ex;
  3310. }
  3311. }
  3312. /// <summary>
  3313. /// 获取商标管理的全部数据
  3314. /// </summary>
  3315. /// <param name="sUserInfo">用户基本信息</param>
  3316. /// <returns></returns>
  3317. /// <remarks>
  3318. /// 2015.11.12 王鑫 新建
  3319. /// </remarks>
  3320. public static DataSet GetLogoInfoForChange(SUserInfo sUserInfo, int goodsid)
  3321. {
  3322. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  3323. try
  3324. {
  3325. string sqlString = null;
  3326. // sqlString = "SELECT L.LOGOID\n" +
  3327. // " ,L.LOGOCODE\n" +
  3328. // " ,L.LOGONAME\n" +
  3329. // " ,L.LOGONAME || '[' || L.LOGOCODE || ']' AS LOGONAMECODE\n" +
  3330. // " FROM TP_MST_GOODSLOGOSAP T\n" +
  3331. // " INNER JOIN TP_MST_LOGO L\n" +
  3332. // " ON L.LOGOID = T.LOGOID\n" +
  3333. // " WHERE T.GOODSID = :GOODSID\n" +
  3334. //" AND L.VALUEFLAG = '1'\n" +
  3335. //"ORDER BY L.ISDEFAULT DESC, L.DISPLAYNO";
  3336. // OracleParameter[] pLogoSAP = new OracleParameter[]
  3337. // {
  3338. // new OracleParameter(":goodsid", goodsid)
  3339. // };
  3340. // oracleConn.Open();
  3341. // DataSet resultLogoSAP = oracleConn.GetSqlResultToDs(sqlString, pLogoSAP);
  3342. // if (resultLogoSAP != null && resultLogoSAP.Tables.Count > 0 && resultLogoSAP.Tables[0].Rows.Count > 0)
  3343. // {
  3344. // oracleConn.Close();
  3345. // return resultLogoSAP;
  3346. // }
  3347. sqlString = "Select LogoID,LogoCode,LogoName,LogoName||'['||LogoCode||']' as LogoNameCode "
  3348. + "from tp_mst_logo where AccountID = :AccountID and valueflag ='1' order by isdefault desc, displayno";
  3349. OracleParameter[] oracleParameter = new OracleParameter[]
  3350. {
  3351. new OracleParameter(":AccountID",sUserInfo.AccountID)
  3352. };
  3353. oracleConn.Open();
  3354. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  3355. oracleConn.Close();
  3356. return result;
  3357. }
  3358. catch (Exception ex)
  3359. {
  3360. if (oracleConn.ConnState == ConnectionState.Open)
  3361. {
  3362. oracleConn.Close();
  3363. }
  3364. throw ex;
  3365. }
  3366. }
  3367. /// <summary>
  3368. /// 获取商标数据源
  3369. /// </summary>
  3370. /// <param name="sUserInfo">用户基本信息</param>
  3371. /// <returns></returns>
  3372. /// <remarks>
  3373. /// 2016.05.10 陈晓野 新建
  3374. /// </remarks>
  3375. public static DataSet GetLogoInfo(SUserInfo sUserInfo)
  3376. {
  3377. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  3378. try
  3379. {
  3380. /*
  3381. string sqlString = @" Select DISTINCT LogoID,LogoCode,LogoName,concat(LogoName||'[',LogoCode||']') as LogoNameCode from TP_MST_GOODSLOGO
  3382. where valueflag ='1'
  3383. AND GOODSCODE IN (SELECT GOODSCODE FROM TP_PM_GROUTINGDAILYDETAIL WHERE ACCOUNTID=:ACCOUNTID)";
  3384. */
  3385. string sqlString = "Select LogoID,LogoCode,LogoName,LogoName||'['||LogoCode||']' as LogoNameCode "
  3386. + "from tp_mst_logo where AccountID = :AccountID and valueflag ='1' order by isdefault desc, displayno";
  3387. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  3388. {
  3389. new Oracle.ManagedDataAccess.Client.OracleParameter(":ACCOUNTID",sUserInfo.AccountID)
  3390. };
  3391. oracleConn.Open();
  3392. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  3393. oracleConn.Close();
  3394. return result;
  3395. }
  3396. catch (Exception ex)
  3397. {
  3398. if (oracleConn.ConnState == ConnectionState.Open)
  3399. {
  3400. oracleConn.Close();
  3401. }
  3402. throw ex;
  3403. }
  3404. }
  3405. /// <summary>
  3406. /// 获取产品对应商标
  3407. /// </summary>
  3408. /// <param name="barcode">条码</param>
  3409. /// <returns></returns>
  3410. /// <remarks>
  3411. /// 2024.04.12 张忠帅 新建
  3412. /// </remarks>
  3413. public static DataSet GetGoodsCodeLogoInfo(string barcode)
  3414. {
  3415. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  3416. try
  3417. {
  3418. string sqlString = @" Select LogoID,LogoCode,LogoName,concat(LogoName||'[',LogoCode||']') as LogoNameCode from TP_MST_GOODSLOGO
  3419. where valueflag ='1'
  3420. AND GOODSCODE IN (SELECT GOODSCODE FROM TP_PM_GROUTINGDAILYDETAIL WHERE BARCODE=:BARCODE)";
  3421. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  3422. {
  3423. new Oracle.ManagedDataAccess.Client.OracleParameter(":BARCODE",barcode)
  3424. };
  3425. oracleConn.Open();
  3426. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  3427. oracleConn.Close();
  3428. return result;
  3429. }
  3430. catch (Exception ex)
  3431. {
  3432. if (oracleConn.ConnState == ConnectionState.Open)
  3433. {
  3434. oracleConn.Close();
  3435. }
  3436. throw ex;
  3437. }
  3438. }
  3439. /// <summary>
  3440. /// 获取产品对应釉料
  3441. /// </summary>
  3442. /// <param name="barcode">条码</param>
  3443. /// <returns></returns>
  3444. /// <remarks>
  3445. /// 2024.04.12 张忠帅 新建
  3446. /// </remarks>
  3447. public static DataSet GetGoodsCodeGlazeInfo(string barcode)
  3448. {
  3449. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  3450. try
  3451. {
  3452. string sqlString = @"SELECT GLAZETYPEID AS DictionaryID, 'TPC002' AS DictionaryType, GLAZE AS DictionaryValue FROM TP_MST_GOODSGLAZE WHERE VALUEFLAG=1
  3453. AND GOODSCODE IN (SELECT GOODSCODE FROM TP_PM_GROUTINGDAILYDETAIL WHERE BARCODE=:BARCODE)";
  3454. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  3455. {
  3456. new Oracle.ManagedDataAccess.Client.OracleParameter(":BARCODE",barcode)
  3457. };
  3458. oracleConn.Open();
  3459. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  3460. oracleConn.Close();
  3461. return result;
  3462. }
  3463. catch (Exception ex)
  3464. {
  3465. if (oracleConn.ConnState == ConnectionState.Open)
  3466. {
  3467. oracleConn.Close();
  3468. }
  3469. throw ex;
  3470. }
  3471. }
  3472. #endregion
  3473. #region 缺陷相关
  3474. /// <summary>
  3475. /// 获取缺陷类别管理的全部数据
  3476. /// </summary>
  3477. /// <param name="sUserInfo">用户基本信息</param>
  3478. /// <returns>DataSet</returns>
  3479. /// <remarks>
  3480. /// 2014.10.30 任海 新建
  3481. /// </remarks>
  3482. public static DataSet GetAllDefectTypeInfo(SUserInfo sUserInfo)
  3483. {
  3484. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  3485. try
  3486. {
  3487. string sqlString = "Select DefectTypeID,DefectTypeName,Remarks,AccountID,ValueFlag,CreateTime,CreateUserID,UpdateTime,UpdateUserID,OPTimeStamp "
  3488. + " ,displayno from TP_MST_DefectType where AccountID = :AccountID";
  3489. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  3490. {
  3491. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  3492. };
  3493. oracleConn.Open();
  3494. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  3495. oracleConn.Close();
  3496. return result;
  3497. }
  3498. catch (Exception ex)
  3499. {
  3500. if (oracleConn.ConnState == ConnectionState.Open)
  3501. {
  3502. oracleConn.Close();
  3503. }
  3504. throw ex;
  3505. }
  3506. }
  3507. /// <summary>
  3508. /// 获取缺陷扣罚管理的全部数据
  3509. /// </summary>
  3510. /// <param name="sUserInfo">用户基本信息</param>
  3511. /// <returns></returns>
  3512. /// <remarks>
  3513. /// 2016.1.5 王鑫 新建
  3514. /// </remarks>
  3515. public static DataSet GetAllDefectFine(SUserInfo sUserInfo)
  3516. {
  3517. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  3518. try
  3519. {
  3520. string sqlString = "Select DefectFineID,DefectFineCode,Remarks,DisplayNo,ValueFlag,0 as sel "
  3521. + "from TP_MST_DefectFine where AccountID = :AccountID order by displayno";
  3522. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  3523. {
  3524. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  3525. };
  3526. oracleConn.Open();
  3527. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  3528. oracleConn.Close();
  3529. return result;
  3530. }
  3531. catch (Exception ex)
  3532. {
  3533. if (oracleConn.ConnState == ConnectionState.Open)
  3534. {
  3535. oracleConn.Close();
  3536. }
  3537. throw ex;
  3538. }
  3539. }
  3540. /// <summary>
  3541. /// 获取缺陷扣除数管理的全部数据
  3542. /// </summary>
  3543. /// <param name="sUserInfo">用户基本信息</param>
  3544. /// <returns></returns>
  3545. /// <remarks>
  3546. /// 2016.1.5 王鑫 新建
  3547. /// </remarks>
  3548. public static DataSet GetAllDefectDeduction(SUserInfo sUserInfo)
  3549. {
  3550. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  3551. try
  3552. {
  3553. string sqlString = "Select *"
  3554. + "from TP_MST_DefectDeduction where AccountID = :AccountID order by displayno";
  3555. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  3556. {
  3557. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  3558. };
  3559. oracleConn.Open();
  3560. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  3561. oracleConn.Close();
  3562. return result;
  3563. }
  3564. catch (Exception ex)
  3565. {
  3566. if (oracleConn.ConnState == ConnectionState.Open)
  3567. {
  3568. oracleConn.Close();
  3569. }
  3570. throw ex;
  3571. }
  3572. }
  3573. /// <summary>
  3574. /// 获取缺陷扣罚关系管理的全部数据
  3575. /// </summary>
  3576. /// <param name="sUserInfo">用户基本信息</param>
  3577. /// <returns></returns>
  3578. /// <remarks>
  3579. /// 2016.1.5 王鑫 新建
  3580. /// </remarks>
  3581. public static DataSet GetAllDefectFineRelation(SUserInfo sUserInfo)
  3582. {
  3583. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  3584. try
  3585. {
  3586. //2020-03-03 xuwei 修改SQL按displayno排序
  3587. string sqlString = @"
  3588. SELECT *
  3589. FROM TP_MST_DEFECTFINERELATION
  3590. INNER JOIN TP_MST_DEFECTFINE ON TP_MST_DEFECTFINERELATION.DEFECTFINEID=TP_MST_DEFECTFINE.DEFECTFINEID
  3591. WHERE TP_MST_DEFECTFINE.VALUEFLAG='1'
  3592. ORDER BY TP_MST_DEFECTFINE.DISPLAYNO
  3593. ";
  3594. oracleConn.Open();
  3595. DataSet result = oracleConn.GetSqlResultToDs(sqlString);
  3596. oracleConn.Close();
  3597. return result;
  3598. }
  3599. catch (Exception ex)
  3600. {
  3601. if (oracleConn.ConnState == ConnectionState.Open)
  3602. {
  3603. oracleConn.Close();
  3604. }
  3605. throw ex;
  3606. }
  3607. }
  3608. /// <summary>
  3609. /// 获取缺陷扣除数关系管理的全部数据
  3610. /// </summary>
  3611. /// <param name="sUserInfo">用户基本信息</param>
  3612. /// <returns></returns>
  3613. /// <remarks>
  3614. /// 2016.1.5 王鑫 新建
  3615. /// </remarks>
  3616. public static DataSet GetAllDefectDeductionRelation(SUserInfo sUserInfo)
  3617. {
  3618. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  3619. try
  3620. {
  3621. //2020-03-03 xuwei 增加排序
  3622. string sqlString = @"
  3623. SELECT *
  3624. FROM TP_MST_DEFECTDEDUCTIONRELATION
  3625. LEFT JOIN TP_MST_DEFECTDEDUCTION ON TP_MST_DEFECTDEDUCTIONRELATION.DEFECTDEDUCTIONID=TP_MST_DEFECTDEDUCTION.DEFECTDEDUCTIONID
  3626. ORDER BY TP_MST_DEFECTDEDUCTION.DISPLAYNO
  3627. ";
  3628. oracleConn.Open();
  3629. DataSet result = oracleConn.GetSqlResultToDs(sqlString);
  3630. oracleConn.Close();
  3631. return result;
  3632. }
  3633. catch (Exception ex)
  3634. {
  3635. if (oracleConn.ConnState == ConnectionState.Open)
  3636. {
  3637. oracleConn.Close();
  3638. }
  3639. throw ex;
  3640. }
  3641. }
  3642. #region 半成品缺陷及位置
  3643. /// <summary>
  3644. /// 获取半成品缺陷管理的全部数据
  3645. /// </summary>
  3646. /// <param name="sUserInfo">用户基本信息</param>
  3647. /// <returns>DataSet</returns>
  3648. /// <remarks>
  3649. /// 2016.06.22 王鑫 新建
  3650. /// </remarks>
  3651. public static DataSet GetAllSemicheckDefect(SUserInfo sUserInfo)
  3652. {
  3653. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  3654. try
  3655. {
  3656. string sqlString = "Select DefectID,DefectCode,DefectName,Remarks,AccountID,ValueFlag,CreateTime,CreateUserID,"
  3657. + " UpdateTime,UpdateUserID,OPTimeStamp,displayno, concat(tp_mst_semicheckdefect.DefectCode||'->',tp_mst_semicheckdefect.DefectName) as DefectFlagName from tp_mst_semicheckdefect where AccountID =:accountID"
  3658. + " order by displayno";
  3659. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  3660. {
  3661. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  3662. };
  3663. oracleConn.Open();
  3664. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  3665. oracleConn.Close();
  3666. return result;
  3667. }
  3668. catch (Exception ex)
  3669. {
  3670. if (oracleConn.ConnState == ConnectionState.Open)
  3671. {
  3672. oracleConn.Close();
  3673. }
  3674. throw ex;
  3675. }
  3676. }
  3677. /// <summary>
  3678. /// 获取半成品缺陷位置管理的全部数据
  3679. /// </summary>
  3680. /// <param name="sUserInfo">用户基本信息</param>
  3681. /// <returns>DataSet</returns>
  3682. /// <remarks>
  3683. /// 2016.06.22 王鑫 新建
  3684. /// </remarks>
  3685. public static DataSet GetAllScdefectPosition(SUserInfo sUserInfo)
  3686. {
  3687. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  3688. try
  3689. {
  3690. string sqlString = "Select DefectPositionID,DefectPositionCode,DefectPositionName,Remarks,AccountID,ValueFlag,CreateTime,CreateUserID,"
  3691. + " UpdateTime,UpdateUserID,OPTimeStamp,displayno, concat(tp_mst_scdefectposition.DefectPositionCode||'->',tp_mst_scdefectposition.DefectPositionName) as DefectPositionFlagName from tp_mst_scdefectposition where AccountID =:accountID"
  3692. + " order by displayno";
  3693. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  3694. {
  3695. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  3696. };
  3697. oracleConn.Open();
  3698. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  3699. oracleConn.Close();
  3700. return result;
  3701. }
  3702. catch (Exception ex)
  3703. {
  3704. if (oracleConn.ConnState == ConnectionState.Open)
  3705. {
  3706. oracleConn.Close();
  3707. }
  3708. throw ex;
  3709. }
  3710. }
  3711. /// <summary>
  3712. /// 获取半检及复检状态数据
  3713. /// </summary>
  3714. /// <returns>DataSet</returns>
  3715. /// <remarks>
  3716. /// 2016.06.25 王鑫 新建
  3717. /// </remarks>
  3718. public static DataSet GetSemiCheckType()
  3719. {
  3720. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  3721. try
  3722. {
  3723. string sqlString = @"select TP_SYS_SemiCheckType.Semichecktypeid,TP_SYS_SemiCheckType.Semichecktypename,
  3724. TP_SYS_SemiCheckType.Displayno,1 as Semichecktype from TP_SYS_SemiCheckType
  3725. union
  3726. select TP_SYS_ReSemiCheckType.Resemichecktypeid,TP_SYS_ReSemiCheckType.Resemichecktypename,
  3727. TP_SYS_ReSemiCheckType.Displayno, 2 as Semichecktype from TP_SYS_ReSemiCheckType";
  3728. oracleConn.Open();
  3729. DataSet result = oracleConn.GetSqlResultToDs(sqlString);
  3730. oracleConn.Close();
  3731. return result;
  3732. }
  3733. catch (Exception ex)
  3734. {
  3735. if (oracleConn.ConnState == ConnectionState.Open)
  3736. {
  3737. oracleConn.Close();
  3738. }
  3739. throw ex;
  3740. }
  3741. }
  3742. #endregion
  3743. #endregion
  3744. #region 工艺管理
  3745. /// <summary>
  3746. /// 获取工艺管理的全部数据
  3747. /// </summary>
  3748. /// <param name="sUserInfo">用户基本信息</param>
  3749. /// <returns>DataSet</returns>
  3750. /// <remarks>
  3751. /// 2016.07.19 王鑫 新建
  3752. /// </remarks>
  3753. public static DataSet GetAllTecDepInfo(SUserInfo sUserInfo)
  3754. {
  3755. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  3756. try
  3757. {
  3758. //获取窑炉管理数据
  3759. string sqlString = "Select ID,Name,TypeFlag,TechnologyFlag,DisplayNo,Remarks,ValueFlag " +
  3760. "from TP_MST_TecDep where AccountID = :AccountID order by DisplayNo";
  3761. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  3762. {
  3763. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  3764. };
  3765. oracleConn.Open();
  3766. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  3767. oracleConn.Close();
  3768. return result;
  3769. }
  3770. catch (Exception ex)
  3771. {
  3772. if (oracleConn.ConnState == ConnectionState.Open)
  3773. {
  3774. oracleConn.Close();
  3775. }
  3776. throw ex;
  3777. }
  3778. }
  3779. /// <summary>
  3780. /// 获取配置管理的全部数据
  3781. /// </summary>
  3782. /// <param name="sUserInfo">用户基本信息</param>
  3783. /// <returns>DataSet</returns>
  3784. /// <remarks>
  3785. /// 2016.07.19 王鑫 新建
  3786. /// </remarks>
  3787. public static DataSet GetTransfer(TecDepEntity tecDepEntity, SUserInfo sUserInfo)
  3788. {
  3789. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  3790. try
  3791. {
  3792. List<OracleParameter> parameters = new List<OracleParameter>();
  3793. parameters.Add(new OracleParameter(":AccountID", OracleDbType.Int32, sUserInfo.AccountID, ParameterDirection.Input));
  3794. //获取管理数据
  3795. string sqlString = @"Select T.PTID,
  3796. T.Name,
  3797. P.ProductionLineName,
  3798. T.GroutingDateBegin,
  3799. T.DisplayNo,
  3800. T.Remarks,
  3801. T.ValueFlag
  3802. from TP_MST_RPT_Transfer T
  3803. left join TP_PC_ProductionLine P
  3804. on T.LineID=P.ProductionLineID
  3805. where T.AccountID = :AccountID ";
  3806. if (!string.IsNullOrEmpty(tecDepEntity.Name))
  3807. {
  3808. sqlString = sqlString + " AND instr(T.Name,:Name)>0";
  3809. parameters.Add(new OracleParameter(":Name", OracleDbType.NVarchar2, tecDepEntity.Name, ParameterDirection.Input));
  3810. }
  3811. if (!string.IsNullOrEmpty(tecDepEntity.LineIDS))
  3812. {
  3813. sqlString = sqlString + " AND instr(','||:LineIDS||',',','||P.ProductionLineID||',')>0 ";
  3814. parameters.Add(new OracleParameter(":LineIDS", OracleDbType.NVarchar2, tecDepEntity.LineIDS, ParameterDirection.Input));
  3815. }
  3816. if (!string.IsNullOrEmpty(tecDepEntity.Remarks))
  3817. {
  3818. sqlString = sqlString + " AND instr(T.Remarks,:Remarks)>0";
  3819. parameters.Add(new OracleParameter(":Remarks", OracleDbType.NVarchar2, tecDepEntity.Remarks, ParameterDirection.Input));
  3820. }
  3821. if (tecDepEntity.ValueFlag != 2) // 不等于全部
  3822. {
  3823. sqlString = sqlString + " AND T.ValueFlag=:ValueFlag";
  3824. parameters.Add(new OracleParameter(":ValueFlag", OracleDbType.Int32, tecDepEntity.ValueFlag, ParameterDirection.Input));
  3825. }
  3826. sqlString += " order by DisplayNo desc";
  3827. oracleConn.Open();
  3828. DataSet result = oracleConn.GetSqlResultToDs(sqlString, parameters.ToArray());
  3829. oracleConn.Close();
  3830. return result;
  3831. }
  3832. catch (Exception ex)
  3833. {
  3834. if (oracleConn.ConnState == ConnectionState.Open)
  3835. {
  3836. oracleConn.Close();
  3837. }
  3838. throw ex;
  3839. }
  3840. }
  3841. /// <summary>
  3842. /// 获取配置明细管理的全部数据
  3843. /// </summary>
  3844. /// <param name="sUserInfo">用户基本信息</param>
  3845. /// <returns>DataSet</returns>
  3846. /// <remarks>
  3847. /// 2016.07.19 王鑫 新建
  3848. /// </remarks>
  3849. public static DataSet GetTransferInfo(int PTID, SUserInfo sUserInfo)
  3850. {
  3851. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  3852. try
  3853. {
  3854. List<OracleParameter> parameters = new List<OracleParameter>();
  3855. parameters.Add(new OracleParameter(":PTID", OracleDbType.Int32, PTID, ParameterDirection.Input));
  3856. //获取管理数据
  3857. string sqlString = @"Select P1.ProcedureName,
  3858. P2.ProcedureName as PerProcedureName,
  3859. OutTecDep.Name,
  3860. InTecDep.Name as InName,
  3861. TS.DisplayNo
  3862. from TP_MST_RPT_TransferSetting TS
  3863. left join tp_pc_procedure P1
  3864. on TS.ProcedureID=P1.ProcedureID
  3865. left join tp_pc_procedure P2
  3866. on TS.PERPROCEDUREID=P2.ProcedureID
  3867. left join TP_MST_TecDep OutTecDep
  3868. on TS.OUTTECDEPID=OutTecDep.ID
  3869. left join TP_MST_TecDep InTecDep
  3870. on TS.INTECDEPID=InTecDep.ID
  3871. where TS.PTID = :PTID order by TS.DisplayNo";
  3872. oracleConn.Open();
  3873. DataSet result = oracleConn.GetSqlResultToDs(sqlString, parameters.ToArray());
  3874. oracleConn.Close();
  3875. return result;
  3876. }
  3877. catch (Exception ex)
  3878. {
  3879. if (oracleConn.ConnState == ConnectionState.Open)
  3880. {
  3881. oracleConn.Close();
  3882. }
  3883. throw ex;
  3884. }
  3885. }
  3886. /// <summary>
  3887. /// 获取配置编辑明细管理的全部数据
  3888. /// </summary>
  3889. /// <param name="sUserInfo">用户基本信息</param>
  3890. /// <returns>DataSet</returns>
  3891. /// <remarks>
  3892. /// 2016.07.19 王鑫 新建
  3893. /// </remarks>
  3894. public static DataSet GetTransferEditInfo(int PTID, SUserInfo sUserInfo)
  3895. {
  3896. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  3897. try
  3898. {
  3899. List<OracleParameter> parameters = new List<OracleParameter>();
  3900. parameters.Add(new OracleParameter(":PTID", OracleDbType.Int32, PTID, ParameterDirection.Input));
  3901. //获取管理数据
  3902. string sqlString = @"
  3903. Select T.PTID,
  3904. T.Name,
  3905. T.LineID,
  3906. P.ProductionLineName,
  3907. T.GroutingDateBegin,
  3908. T.DisplayNo,
  3909. T.Remarks,
  3910. T.ValueFlag
  3911. from TP_MST_RPT_Transfer T
  3912. left join TP_PC_ProductionLine P
  3913. on T.LineID=P.ProductionLineID
  3914. where T.PTID = :PTID
  3915. ";
  3916. string sqlString2 = @"Select
  3917. TS.PROCEDUREID,
  3918. TS.PERPROCEDUREID,
  3919. TS.OUTTECDEPID,
  3920. TS.INTECDEPID,
  3921. P1.ProcedureName,
  3922. P2.ProcedureName as PerProcedureName,
  3923. OutTecDep.Name as OutName,
  3924. InTecDep.Name as InName,
  3925. TS.DisplayNo
  3926. from TP_MST_RPT_TransferSetting TS
  3927. left join tp_pc_procedure P1
  3928. on TS.ProcedureID=P1.ProcedureID
  3929. left join tp_pc_procedure P2
  3930. on TS.PERPROCEDUREID=P2.ProcedureID
  3931. left join TP_MST_TecDep OutTecDep
  3932. on TS.OUTTECDEPID=OutTecDep.ID
  3933. left join TP_MST_TecDep InTecDep
  3934. on TS.INTECDEPID=InTecDep.ID
  3935. where TS.PTID = :PTID order by TS.DisplayNo";
  3936. oracleConn.Open();
  3937. DataSet ds = new DataSet();
  3938. DataSet result = oracleConn.GetSqlResultToDs(sqlString, parameters.ToArray());
  3939. result.Tables[0].TableName = "TP_MST_RPT_Transfer";
  3940. ds.Tables.Add(result.Tables[0].Copy());
  3941. DataSet result2 = oracleConn.GetSqlResultToDs(sqlString2, parameters.ToArray());
  3942. result2.Tables[0].TableName = "TP_MST_RPT_TransferSetting";
  3943. ds.Tables.Add(result2.Tables[0].Copy());
  3944. oracleConn.Close();
  3945. return ds;
  3946. }
  3947. catch (Exception ex)
  3948. {
  3949. if (oracleConn.ConnState == ConnectionState.Open)
  3950. {
  3951. oracleConn.Close();
  3952. }
  3953. throw ex;
  3954. }
  3955. }
  3956. #endregion
  3957. #region 条码打印
  3958. /// <summary>
  3959. /// 查询模板一览
  3960. /// </summary>
  3961. /// <param name="cre"></param>
  3962. /// <returns></returns>
  3963. public static ServiceResultEntity GetBarCodePrintLayoutList(ClientRequestEntity cre, SUserInfo sUserInfo)
  3964. {
  3965. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  3966. try
  3967. {
  3968. oracleConn.Open();
  3969. string sqlString =
  3970. "SELECT t.layoutid\n" +
  3971. " ,t.layoutname\n" +
  3972. " ,t.width\n" +
  3973. " ,t.height\n" +
  3974. " ,gt.goodstypename\n" +
  3975. " ,gt.goodstypecode\n" +
  3976. " ,decode(t.logoid, null, '', logo.logoname || '[' || logo.logocode || ']') logonamecode\n" +
  3977. " ,t.remarks\n" +
  3978. " ,t.valueflag\n" +
  3979. " ,t.PrintType\n" + //xuwei add 2019-11-20
  3980. " ,s.PrintTypeName\n" + //xuwei add 2019-11-20
  3981. " FROM tp_mst_barcodeprintlayout t\n" +
  3982. " INNER JOIN tp_mst_goodstype gt\n" +
  3983. " ON gt.goodstypeid = t.goodstypeid\n" +
  3984. " LEFT JOIN tp_mst_Logo logo\n" +
  3985. " ON logo.logoid = t.logoid\n" +
  3986. " left join TP_SYS_BARCODEPRINTTYPE s on t.printtype = s.printtypeid \n" + //xuwei add 2019-11-20
  3987. " WHERE t.accountid = :accountid\n" +
  3988. " AND (:layoutname IS NULL OR instr(t.layoutname, :layoutname) > 0)\n" +
  3989. " AND (:goodstypecode IS NULL OR\n" +
  3990. " instr(gt.goodstypecode, :goodstypecode) = 1)\n" +
  3991. " AND (:remarks IS NULL OR instr(t.remarks, :remarks) > 0)\n" +
  3992. " AND (:valueflag IS NULL OR t.valueflag = :valueflag)\n" +
  3993. " AND (:logos IS NULL OR instr(:logos, ','|| t.logoid ||',') > 0)\n" +
  3994. " ORDER BY gt.goodstypecode, decode(logo.logocode, null, ' ',logo.logocode)";
  3995. List<OracleParameter> parameters = new List<OracleParameter>();
  3996. parameters.Add(new OracleParameter(":accountid", OracleDbType.Int32, sUserInfo.AccountID, ParameterDirection.Input));
  3997. parameters.Add(new OracleParameter(":layoutname", OracleDbType.NVarchar2, cre.Properties["layoutname"], ParameterDirection.Input));
  3998. parameters.Add(new OracleParameter(":goodstypecode", OracleDbType.NVarchar2, cre.Properties["goodstypecode"], ParameterDirection.Input));
  3999. parameters.Add(new OracleParameter(":remarks", OracleDbType.NVarchar2, cre.Properties["remarks"], ParameterDirection.Input));
  4000. parameters.Add(new OracleParameter(":valueflag", OracleDbType.NVarchar2, cre.Properties["valueflag"], ParameterDirection.Input));
  4001. parameters.Add(new OracleParameter(":logos", OracleDbType.NVarchar2, cre.Properties["logos"], ParameterDirection.Input));
  4002. DataTable data = oracleConn.GetSqlResultToDt(sqlString, parameters.ToArray());
  4003. ServiceResultEntity sre = new ServiceResultEntity();
  4004. if (data == null || data.Rows.Count == 0)
  4005. {
  4006. sre.Status = Constant.ServiceResultStatus.NoSearchResults;
  4007. return sre;
  4008. }
  4009. sre.Data = new DataSet();
  4010. sre.Data.Tables.Add(data);
  4011. return sre;
  4012. }
  4013. catch (Exception ex)
  4014. {
  4015. throw ex;
  4016. }
  4017. finally
  4018. {
  4019. if (oracleConn != null &&
  4020. oracleConn.ConnState == ConnectionState.Open)
  4021. {
  4022. oracleConn.Close();
  4023. }
  4024. }
  4025. }
  4026. /// <summary>
  4027. /// 验证产品类别是否已存在模板
  4028. /// </summary>
  4029. /// <param name="cre"></param>
  4030. /// <returns></returns>
  4031. public static ServiceResultEntity IsExistBarCodePrintLayout(ClientRequestEntity cre, SUserInfo sUserInfo)
  4032. {
  4033. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  4034. try
  4035. {
  4036. oracleConn.Open();
  4037. string sqlString =
  4038. "SELECT t.layoutid\n" +
  4039. " FROM tp_mst_barcodeprintlayout t\n" +
  4040. " WHERE t.goodstypeid = :goodstypeid\n" +
  4041. " AND ((:printtype is null and t.printtype is null) or (t.printtype = :printtype))\n" + //xuwei add 2019-11-20
  4042. " AND ((:logoid is null and t.logoid is null) or (t.logoid = :logoid))\n" +
  4043. " AND (:layoutid is null or :layoutid <> t.layoutid)";
  4044. List<OracleParameter> parameters = new List<OracleParameter>();
  4045. //parameters.Add(new OracleParameter(":accountid", OracleDbType.Int32, sUserInfo.AccountID, ParameterDirection.Input));
  4046. parameters.Add(new OracleParameter(":printtype", OracleDbType.Int32, cre.Properties["PrintType"], ParameterDirection.Input));
  4047. parameters.Add(new OracleParameter(":goodstypeid", OracleDbType.Int32, cre.Properties["GoodsTypeID"], ParameterDirection.Input));
  4048. parameters.Add(new OracleParameter(":layoutid", OracleDbType.Int32, cre.Properties["layoutid"], ParameterDirection.Input));
  4049. parameters.Add(new OracleParameter(":logoid", OracleDbType.Int32, cre.Properties["LogoID"], ParameterDirection.Input));
  4050. DataTable data = oracleConn.GetSqlResultToDt(sqlString, parameters.ToArray());
  4051. ServiceResultEntity sre = new ServiceResultEntity();
  4052. if (data == null || data.Rows.Count == 0)
  4053. {
  4054. sre.Result = false;
  4055. return sre;
  4056. }
  4057. sre.Result = true;
  4058. return sre;
  4059. }
  4060. catch (Exception ex)
  4061. {
  4062. throw ex;
  4063. }
  4064. finally
  4065. {
  4066. if (oracleConn != null &&
  4067. oracleConn.ConnState == ConnectionState.Open)
  4068. {
  4069. oracleConn.Close();
  4070. }
  4071. }
  4072. }
  4073. /// <summary>
  4074. /// 获取打印项目
  4075. /// </summary>
  4076. /// <param name="cre"></param>
  4077. /// <returns></returns>
  4078. public static ServiceResultEntity GetBarCodePrintItem(ClientRequestEntity cre, SUserInfo sUserInfo)
  4079. {
  4080. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  4081. try
  4082. {
  4083. oracleConn.Open();
  4084. string sqlString =
  4085. "SELECT s.itemcode\n" +
  4086. " ,s.itemname\n" +
  4087. " ,s.itemsample\n" +
  4088. " ,s.itemstyle\n" +
  4089. " ,s.controlcode\n" +
  4090. " ,s.displayno\n" +
  4091. " FROM tp_sys_barcodeprintitem s\n" +
  4092. " ORDER BY s.displayno";
  4093. DataSet data = oracleConn.GetSqlResultToDs(sqlString, null);
  4094. ServiceResultEntity sre = new ServiceResultEntity();
  4095. sre.Data = data;
  4096. return sre;
  4097. }
  4098. catch (Exception ex)
  4099. {
  4100. throw ex;
  4101. }
  4102. finally
  4103. {
  4104. if (oracleConn != null &&
  4105. oracleConn.ConnState == ConnectionState.Open)
  4106. {
  4107. oracleConn.Close();
  4108. }
  4109. }
  4110. }
  4111. /// <summary>
  4112. /// 查询打印模板
  4113. /// </summary>
  4114. /// <param name="cre"></param>
  4115. /// <returns></returns>
  4116. public static ServiceResultEntity GetBarCodePrintLayout(ClientRequestEntity cre, SUserInfo sUserInfo)
  4117. {
  4118. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  4119. try
  4120. {
  4121. oracleConn.Open();
  4122. string sqlString =
  4123. "SELECT t.layoutid\n" +
  4124. " ,t.layoutname\n" +
  4125. " ,t.layoutdata\n" +
  4126. " ,t.goodstypeid\n" +
  4127. " ,gt.goodstypecode\n" +
  4128. " ,gt.goodstypename\n" +
  4129. " ,t.logoid\n" +
  4130. " ,t.printtype\n" + //xuwei add 2019-11-20
  4131. " ,decode(t.logoid, null, '', logo.logoname || '[' || logo.logocode || ']') logoName\n" +
  4132. //" ,logo.logoName || '[' || logo.logocode || ']' logoName\n" +
  4133. " ,t.width\n" +
  4134. " ,t.height\n" +
  4135. " ,t.remarks\n" +
  4136. " FROM tp_mst_barcodeprintlayout t\n" +
  4137. " INNER JOIN tp_mst_goodstype gt\n" +
  4138. " ON gt.goodstypeid = t.goodstypeid\n" +
  4139. " LEFT JOIN tp_mst_logo logo\n" +
  4140. " ON logo.logoid = t.logoid\n" +
  4141. " WHERE t.layoutid = :layoutid";
  4142. List<OracleParameter> parameters = new List<OracleParameter>();
  4143. parameters.Add(new OracleParameter(":layoutid", OracleDbType.Int32, cre.Properties["LayoutID"], ParameterDirection.Input));
  4144. DataTable data = oracleConn.GetSqlResultToDt(sqlString, parameters.ToArray());
  4145. ServiceResultEntity sre = new ServiceResultEntity();
  4146. sre.Data = new DataSet();
  4147. sre.Data.Tables.Add(data);
  4148. string sqlString1 =
  4149. "SELECT t.layoutid\n" +
  4150. " ,t.layoutitemid\n" +
  4151. " ,t.itemcode\n" +
  4152. " ,s.itemname\n" +
  4153. " ,s.itemsample\n" +
  4154. " ,s.itemstyle\n" +
  4155. " ,s.controlcode\n" +
  4156. " FROM tp_mst_barcodeprintitem t\n" +
  4157. " INNER JOIN tp_sys_barcodeprintitem s\n" +
  4158. " ON s.itemcode = t.itemcode\n" +
  4159. " WHERE t.layoutid = :layoutid";
  4160. DataTable data1 = oracleConn.GetSqlResultToDt(sqlString1, parameters.ToArray());
  4161. sre.Data.Tables.Add(data1);
  4162. return sre;
  4163. }
  4164. catch (Exception ex)
  4165. {
  4166. throw ex;
  4167. }
  4168. finally
  4169. {
  4170. if (oracleConn != null &&
  4171. oracleConn.ConnState == ConnectionState.Open)
  4172. {
  4173. oracleConn.Close();
  4174. }
  4175. }
  4176. }
  4177. /// <summary>
  4178. /// 新建打印模板
  4179. /// </summary>
  4180. /// <param name="cre"></param>
  4181. /// <returns></returns>
  4182. public static ServiceResultEntity SaveAddBarCodePrintLayoutData(ClientRequestEntity cre, SUserInfo sUserInfo)
  4183. {
  4184. IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
  4185. try
  4186. {
  4187. oracleTrConn.Connect();
  4188. DataRow layoutdata = cre.Data.Tables[0].Rows[0];
  4189. string sqlid = "select SEQ_MST_BARCODEPRINTLAYOUT_ID.Nextval from dual";
  4190. int layoutID = Convert.ToInt32(oracleTrConn.GetSqlResultToObj(sqlid));
  4191. ServiceResultEntity sre = new ServiceResultEntity();
  4192. sre.Result = layoutID;
  4193. string sqlString = "INSERT INTO TP_MST_BARCODEPRINTLAYOUT\n" +
  4194. " (LAYOUTID\n" +
  4195. " ,LAYOUTNAME\n" +
  4196. " ,LAYOUTDATA\n" +
  4197. " ,GOODSTYPEID\n" +
  4198. " ,GOODSTYPECODE\n" +
  4199. " ,LOGOID\n" +
  4200. " ,PRINTTYPE\n" + //xuwei add 2019-11-20
  4201. " ,WIDTH\n" +
  4202. " ,HEIGHT\n" +
  4203. " ,REMARKS\n" +
  4204. " ,ACCOUNTID\n" +
  4205. " ,CREATEUSERID\n" +
  4206. " ,UPDATEUSERID)\n" +
  4207. "VALUES\n" +
  4208. " (:LAYOUTID\n" +
  4209. " ,:LAYOUTNAME\n" +
  4210. " ,:LAYOUTDATA\n" +
  4211. " ,:GOODSTYPEID\n" +
  4212. " ,:GOODSTYPECODE\n" +
  4213. " ,:LOGOID\n" +
  4214. " ,:PRINTTYPE\n" + //xuwei add 2019-11-20
  4215. " ,:WIDTH\n" +
  4216. " ,:HEIGHT\n" +
  4217. " ,:REMARKS\n" +
  4218. " ,:ACCOUNTID\n" +
  4219. " ,:CREATEUSERID\n" +
  4220. " ,:CREATEUSERID)";
  4221. List<OracleParameter> parameters = new List<OracleParameter>();
  4222. parameters.Add(new OracleParameter(":LAYOUTID", OracleDbType.Int32, layoutID, ParameterDirection.Input));
  4223. parameters.Add(new OracleParameter(":LAYOUTNAME", OracleDbType.NVarchar2, layoutdata["LAYOUTNAME"], ParameterDirection.Input));
  4224. parameters.Add(new OracleParameter(":LAYOUTDATA", OracleDbType.Blob, layoutdata["LAYOUTDATA"], ParameterDirection.Input));
  4225. parameters.Add(new OracleParameter(":GOODSTYPEID", OracleDbType.Int32, layoutdata["GOODSTYPEID"], ParameterDirection.Input));
  4226. parameters.Add(new OracleParameter(":GOODSTYPECODE", OracleDbType.NVarchar2, layoutdata["GOODSTYPECODE"], ParameterDirection.Input));
  4227. parameters.Add(new OracleParameter(":LOGOID", OracleDbType.Int32, layoutdata["LOGOID"], ParameterDirection.Input));
  4228. //xuwei add 2019-11-20
  4229. parameters.Add(new OracleParameter(":PRINTTYPE", OracleDbType.Int32, layoutdata["PRINTTYPE"], ParameterDirection.Input));
  4230. parameters.Add(new OracleParameter(":WIDTH", OracleDbType.Int32, layoutdata["WIDTH"], ParameterDirection.Input));
  4231. parameters.Add(new OracleParameter(":HEIGHT", OracleDbType.Int32, layoutdata["HEIGHT"], ParameterDirection.Input));
  4232. parameters.Add(new OracleParameter(":REMARKS", OracleDbType.NVarchar2, layoutdata["REMARKS"], ParameterDirection.Input));
  4233. parameters.Add(new OracleParameter(":ACCOUNTID", OracleDbType.Int32, sUserInfo.AccountID, ParameterDirection.Input));
  4234. parameters.Add(new OracleParameter(":CREATEUSERID", OracleDbType.Int32, sUserInfo.UserID, ParameterDirection.Input));
  4235. int result = oracleTrConn.ExecuteNonQuery(sqlString, parameters.ToArray());
  4236. if (result == 0)
  4237. {
  4238. sre.Status = Constant.ServiceResultStatus.NoModifyData;
  4239. return sre;
  4240. }
  4241. // 插入新的项目明细
  4242. foreach (DataRow dataRow in cre.Data.Tables[1].Rows)
  4243. {
  4244. if (dataRow.RowState == DataRowState.Deleted ||
  4245. dataRow.RowState == DataRowState.Detached)
  4246. {
  4247. continue;
  4248. }
  4249. sqlString = "INSERT INTO TP_MST_BARCODEPRINTITEM"
  4250. + "(LayoutID"
  4251. + ",LayoutItemID"
  4252. + ",ItemCode"
  4253. + ")"
  4254. + "VALUES"
  4255. + " (:LayoutID"
  4256. + ",:layoutItemID"
  4257. + ",:ItemCode"
  4258. + ")";
  4259. parameters.Clear();
  4260. parameters.Add(new OracleParameter(":LayoutID", OracleDbType.Int32, layoutID, ParameterDirection.Input));
  4261. parameters.Add(new OracleParameter(":layoutItemID", OracleDbType.Int32, dataRow["layoutItemID"], ParameterDirection.Input));
  4262. parameters.Add(new OracleParameter(":ItemCode", OracleDbType.NVarchar2, dataRow["ItemCode"], ParameterDirection.Input));
  4263. oracleTrConn.ExecuteNonQuery(sqlString, parameters.ToArray());
  4264. }
  4265. oracleTrConn.Commit();
  4266. return sre;
  4267. }
  4268. catch (Exception ex)
  4269. {
  4270. if (oracleTrConn != null &&
  4271. oracleTrConn.ConnState == ConnectionState.Open)
  4272. {
  4273. oracleTrConn.Rollback();
  4274. }
  4275. throw ex;
  4276. }
  4277. finally
  4278. {
  4279. if (oracleTrConn != null &&
  4280. oracleTrConn.ConnState == ConnectionState.Open)
  4281. {
  4282. oracleTrConn.Disconnect();
  4283. }
  4284. }
  4285. }
  4286. /// <summary>
  4287. /// 编辑打印模板
  4288. /// </summary>
  4289. /// <param name="cre"></param>
  4290. /// <returns></returns>
  4291. public static ServiceResultEntity SaveEditBarCodePrintLayoutData(ClientRequestEntity cre, SUserInfo sUserInfo)
  4292. {
  4293. IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
  4294. try
  4295. {
  4296. oracleTrConn.Connect();
  4297. DataRow layoutdata = cre.Data.Tables[0].Rows[0];
  4298. ServiceResultEntity sre = new ServiceResultEntity();
  4299. string sqlString = "UPDATE TP_MST_BARCODEPRINTLAYOUT t\n" +
  4300. " SET t.LAYOUTDATA = :LAYOUTDATA, t.WIDTH = :WIDTH, t.HEIGHT = :HEIGHT, t.UPDATEUSERID=:UPDATEUSERID\n" +
  4301. " WHERE t.LAYOUTID = :LAYOUTID";
  4302. List<OracleParameter> parameters = new List<OracleParameter>();
  4303. parameters.Add(new OracleParameter(":LAYOUTDATA", OracleDbType.Blob, layoutdata["LAYOUTDATA"], ParameterDirection.Input));
  4304. parameters.Add(new OracleParameter(":WIDTH", OracleDbType.Int32, layoutdata["WIDTH"], ParameterDirection.Input));
  4305. parameters.Add(new OracleParameter(":HEIGHT", OracleDbType.Int32, layoutdata["HEIGHT"], ParameterDirection.Input));
  4306. parameters.Add(new OracleParameter(":LAYOUTID", OracleDbType.Int32, layoutdata["LAYOUTID"], ParameterDirection.Input));
  4307. parameters.Add(new OracleParameter(":UPDATEUSERID", OracleDbType.Int32, sUserInfo.UserID, ParameterDirection.Input));
  4308. int result = oracleTrConn.ExecuteNonQuery(sqlString, parameters.ToArray());
  4309. if (result == 0)
  4310. {
  4311. sre.Status = Constant.ServiceResultStatus.NoModifyData;
  4312. return sre;
  4313. }
  4314. sre.Result = result;
  4315. sqlString = "DELETE FROM TP_MST_BARCODEPRINTITEM WHERE LAYOUTID = :LAYOUTID";
  4316. parameters.Clear();
  4317. parameters.Add(new OracleParameter(":LAYOUTID", OracleDbType.Int32, layoutdata["LAYOUTID"], ParameterDirection.Input));
  4318. oracleTrConn.ExecuteNonQuery(sqlString, parameters.ToArray());
  4319. // 插入新的项目明细
  4320. foreach (DataRow dataRow in cre.Data.Tables[1].Rows)
  4321. {
  4322. if (dataRow.RowState == DataRowState.Deleted ||
  4323. dataRow.RowState == DataRowState.Detached)
  4324. {
  4325. continue;
  4326. }
  4327. sqlString = "INSERT INTO TP_MST_BARCODEPRINTITEM"
  4328. + "(LayoutID"
  4329. + ",LayoutItemID"
  4330. + ",ItemCode"
  4331. + ")"
  4332. + "VALUES"
  4333. + " (:LayoutID"
  4334. + ",:layoutItemID"
  4335. + ",:ItemCode"
  4336. + ")";
  4337. parameters.Clear();
  4338. parameters.Add(new OracleParameter(":LayoutID", OracleDbType.Int32, layoutdata["LAYOUTID"], ParameterDirection.Input));
  4339. parameters.Add(new OracleParameter(":layoutItemID", OracleDbType.Int32, dataRow["layoutItemID"], ParameterDirection.Input));
  4340. parameters.Add(new OracleParameter(":ItemCode", OracleDbType.NVarchar2, dataRow["ItemCode"], ParameterDirection.Input));
  4341. oracleTrConn.ExecuteNonQuery(sqlString, parameters.ToArray());
  4342. }
  4343. oracleTrConn.Commit();
  4344. return sre;
  4345. }
  4346. catch (Exception ex)
  4347. {
  4348. if (oracleTrConn != null &&
  4349. oracleTrConn.ConnState == ConnectionState.Open)
  4350. {
  4351. oracleTrConn.Rollback();
  4352. }
  4353. throw ex;
  4354. }
  4355. finally
  4356. {
  4357. if (oracleTrConn != null &&
  4358. oracleTrConn.ConnState == ConnectionState.Open)
  4359. {
  4360. oracleTrConn.Disconnect();
  4361. }
  4362. }
  4363. }
  4364. /// <summary>
  4365. /// 查询打印模板信息
  4366. /// </summary>
  4367. /// <param name="cre"></param>
  4368. /// <returns></returns>
  4369. public static ServiceResultEntity GetBarCodePrintLayoutInfo(ClientRequestEntity cre, SUserInfo sUserInfo)
  4370. {
  4371. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  4372. try
  4373. {
  4374. oracleConn.Open();
  4375. string sqlString =
  4376. "SELECT t.layoutid\n" +
  4377. " ,t.layoutname\n" +
  4378. " ,t.valueflag\n" +
  4379. " ,t.goodstypeid\n" +
  4380. " ,gt.goodstypecode\n" +
  4381. " ,gt.goodstypename\n" +
  4382. " ,t.logoid\n" +
  4383. " ,t.printtype\n" + //xuwei add 2019-11-20
  4384. " ,decode(t.logoid, null, '', logo.logoname || '[' || logo.logocode || ']') logoNameCode\n" +
  4385. //" ,logo.logoName || '[' || logo.logocode || ']' logoNameCode\n" +
  4386. " ,t.remarks\n" +
  4387. " FROM tp_mst_barcodeprintlayout t\n" +
  4388. " INNER JOIN tp_mst_goodstype gt\n" +
  4389. " ON gt.goodstypeid = t.goodstypeid\n" +
  4390. " LEFT JOIN tp_mst_Logo logo\n" +
  4391. " ON logo.logoid = t.logoid\n" +
  4392. " WHERE t.layoutid = :layoutid";
  4393. List<OracleParameter> parameters = new List<OracleParameter>();
  4394. parameters.Add(new OracleParameter(":layoutid", OracleDbType.Int32, cre.Properties["LayoutID"], ParameterDirection.Input));
  4395. DataTable data = oracleConn.GetSqlResultToDt(sqlString, parameters.ToArray());
  4396. ServiceResultEntity sre = new ServiceResultEntity();
  4397. sre.Data = new DataSet();
  4398. sre.Data.Tables.Add(data);
  4399. return sre;
  4400. }
  4401. catch (Exception ex)
  4402. {
  4403. throw ex;
  4404. }
  4405. finally
  4406. {
  4407. if (oracleConn != null &&
  4408. oracleConn.ConnState == ConnectionState.Open)
  4409. {
  4410. oracleConn.Close();
  4411. }
  4412. }
  4413. }
  4414. /// <summary>
  4415. /// 编辑打印模板信息
  4416. /// </summary>
  4417. /// <param name="cre"></param>
  4418. /// <returns></returns>
  4419. public static ServiceResultEntity SaveEditBarCodePrintLayoutInfo(ClientRequestEntity cre, SUserInfo sUserInfo)
  4420. {
  4421. IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
  4422. try
  4423. {
  4424. oracleTrConn.Connect();
  4425. //DataRow layoutdata = cre.Data.Tables[0].Rows[0];
  4426. ServiceResultEntity sre = new ServiceResultEntity();
  4427. string sqlString = "UPDATE TP_MST_BARCODEPRINTLAYOUT t\n" +
  4428. " SET t.LAYOUTNAME = :LAYOUTNAME, t.GOODSTYPEID = :GOODSTYPEID, t.GOODSTYPECODE = :GOODSTYPECODE\n" +
  4429. " ,t.REMARKS = :REMARKS, t.Valueflag = :Valueflag, t.UPDATEUSERID=:UPDATEUSERID\n" +
  4430. " ,t.LogoID = :LogoID\n" +
  4431. " ,t.PrintType = :PrintType\n" + //xuwei add 2019-11-20
  4432. " WHERE t.LAYOUTID = :LAYOUTID";
  4433. List<OracleParameter> parameters = new List<OracleParameter>();
  4434. parameters.Add(new OracleParameter(":LAYOUTID", OracleDbType.Int32, cre.Properties["LayoutID"], ParameterDirection.Input));
  4435. parameters.Add(new OracleParameter(":LAYOUTNAME", OracleDbType.NVarchar2, cre.Properties["LayoutName"], ParameterDirection.Input));
  4436. parameters.Add(new OracleParameter(":GOODSTYPEID", OracleDbType.Int32, cre.Properties["GoodsTypeID"], ParameterDirection.Input));
  4437. parameters.Add(new OracleParameter(":GOODSTYPECODE", OracleDbType.NVarchar2, cre.Properties["GoodsTypeCode"], ParameterDirection.Input));
  4438. parameters.Add(new OracleParameter(":REMARKS", OracleDbType.NVarchar2, cre.Properties["Remarks"], ParameterDirection.Input));
  4439. parameters.Add(new OracleParameter(":Valueflag", OracleDbType.NVarchar2, cre.Properties["ValueFlag"], ParameterDirection.Input));
  4440. parameters.Add(new OracleParameter(":UPDATEUSERID", OracleDbType.Int32, sUserInfo.UserID, ParameterDirection.Input));
  4441. parameters.Add(new OracleParameter(":LogoID", OracleDbType.Int32, cre.Properties["LogoID"], ParameterDirection.Input));
  4442. //xuwei add 2019-11-20
  4443. parameters.Add(new OracleParameter(":PrintType", OracleDbType.Int32, cre.Properties["PrintType"], ParameterDirection.Input));
  4444. int result = oracleTrConn.ExecuteNonQuery(sqlString, parameters.ToArray());
  4445. if (result == 0)
  4446. {
  4447. sre.Status = Constant.ServiceResultStatus.NoModifyData;
  4448. return sre;
  4449. }
  4450. oracleTrConn.Commit();
  4451. return sre;
  4452. }
  4453. catch (Exception ex)
  4454. {
  4455. if (oracleTrConn != null &&
  4456. oracleTrConn.ConnState == ConnectionState.Open)
  4457. {
  4458. oracleTrConn.Rollback();
  4459. }
  4460. throw ex;
  4461. }
  4462. finally
  4463. {
  4464. if (oracleTrConn != null &&
  4465. oracleTrConn.ConnState == ConnectionState.Open)
  4466. {
  4467. oracleTrConn.Disconnect();
  4468. }
  4469. }
  4470. }
  4471. /// <summary>
  4472. /// 删除条码打印模板
  4473. /// </summary>
  4474. /// <param name="cre"></param>
  4475. /// <returns></returns>
  4476. public static ServiceResultEntity DeleteBarCodePrintLayout(ClientRequestEntity cre, SUserInfo sUserInfo)
  4477. {
  4478. IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
  4479. try
  4480. {
  4481. oracleTrConn.Connect();
  4482. ServiceResultEntity sre = new ServiceResultEntity();
  4483. string sqlString = "DELETE FROM TP_MST_BarCodePrintItem t\n" +
  4484. " WHERE t.LAYOUTID = :LAYOUTID";
  4485. string sqlString1 = "DELETE FROM TP_MST_BARCODEPRINTLAYOUT t\n" +
  4486. " WHERE t.LAYOUTID = :LAYOUTID";
  4487. List<OracleParameter> parameters = new List<OracleParameter>();
  4488. parameters.Add(new OracleParameter(":LAYOUTID", OracleDbType.Int32, cre.Properties["LayoutID"], ParameterDirection.Input));
  4489. // 删除明细
  4490. int result = oracleTrConn.ExecuteNonQuery(sqlString, parameters.ToArray());
  4491. // 删除总单
  4492. result = oracleTrConn.ExecuteNonQuery(sqlString1, parameters.ToArray());
  4493. if (result == 0)
  4494. {
  4495. sre.Status = Constant.ServiceResultStatus.NoModifyData;
  4496. return sre;
  4497. }
  4498. oracleTrConn.Commit();
  4499. return sre;
  4500. }
  4501. catch (Exception ex)
  4502. {
  4503. if (oracleTrConn != null &&
  4504. oracleTrConn.ConnState == ConnectionState.Open)
  4505. {
  4506. oracleTrConn.Rollback();
  4507. }
  4508. throw ex;
  4509. }
  4510. finally
  4511. {
  4512. if (oracleTrConn != null &&
  4513. oracleTrConn.ConnState == ConnectionState.Open)
  4514. {
  4515. oracleTrConn.Disconnect();
  4516. }
  4517. }
  4518. }
  4519. /// <summary>
  4520. /// 获取条码打印信息(模板,数据)
  4521. /// </summary>
  4522. /// <param name="cre"></param>
  4523. /// <returns></returns>
  4524. public static ServiceResultEntity GetBarCodePrintDATA(ClientRequestEntity cre, SUserInfo sUserInfo)
  4525. {
  4526. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  4527. try
  4528. {
  4529. oracleConn.Open();
  4530. string barcode = cre.Properties["Barcode"].ToString();
  4531. bool isGBarcode = (bool)cre.Properties["IsGBarcode"];
  4532. if (!isGBarcode)
  4533. {
  4534. string sqlString = @"select FUN_CMN_GetBarCode(:barcode,null,:accountid) From DUAL";
  4535. OracleParameter[] paras1 = new OracleParameter[]{
  4536. new OracleParameter(":barcode",OracleDbType.Varchar2, barcode,ParameterDirection.Input),
  4537. new OracleParameter(":accountid",OracleDbType.Int32, sUserInfo.AccountID,ParameterDirection.Input),
  4538. };
  4539. barcode = oracleConn.GetSqlResultToStr(sqlString, paras1);
  4540. }
  4541. ServiceResultEntity sre = new ServiceResultEntity();
  4542. List<OracleParameter> parameters = new List<OracleParameter>();
  4543. parameters.Add(new OracleParameter("in_Barcode", OracleDbType.NVarchar2, barcode, ParameterDirection.Input));
  4544. parameters.Add(new OracleParameter("in_AccountID", OracleDbType.Int32, sUserInfo.AccountID, ParameterDirection.Input));
  4545. parameters.Add(new OracleParameter("in_UserID", OracleDbType.Int32, sUserInfo.UserID, ParameterDirection.Input));
  4546. parameters.Add(new OracleParameter("out_Status", OracleDbType.Int32, ParameterDirection.Output));
  4547. parameters.Add(new OracleParameter("out_Message", OracleDbType.NVarchar2, 2000, null, ParameterDirection.Output));
  4548. parameters.Add(new OracleParameter("out_LayoutData", OracleDbType.RefCursor, ParameterDirection.Output));
  4549. parameters.Add(new OracleParameter("out_PrintData", OracleDbType.RefCursor, ParameterDirection.Output));
  4550. DataSet data = oracleConn.ExecStoredProcedure("PRO_PM_GETBarCodePrintDATA", parameters.ToArray());
  4551. int status = Convert.ToInt32(parameters[3].Value.ToString());
  4552. if (status < 0)
  4553. {
  4554. sre.Status = Constant.ServiceResultStatus.Other;
  4555. sre.Message = parameters[4].Value.ToString();
  4556. }
  4557. sre.Data = data;
  4558. return sre;
  4559. }
  4560. catch (Exception ex)
  4561. {
  4562. throw ex;
  4563. }
  4564. finally
  4565. {
  4566. if (oracleConn != null &&
  4567. oracleConn.ConnState == ConnectionState.Open)
  4568. {
  4569. oracleConn.Close();
  4570. }
  4571. }
  4572. }
  4573. /// <summary>
  4574. /// 记录条码打印日志
  4575. /// </summary>
  4576. /// <param name="cre"></param>
  4577. /// <returns></returns>
  4578. public static ServiceResultEntity SetBarCodePrintLog(ClientRequestEntity cre, SUserInfo sUserInfo)
  4579. {
  4580. IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
  4581. try
  4582. {
  4583. oracleTrConn.Connect();
  4584. ServiceResultEntity sre = new ServiceResultEntity();
  4585. string sqlString = "INSERT INTO TP_MST_BarCodePrintLog\n" +
  4586. " (BARCODE, LAYOUTID, ACCOUNTID, CREATEUSERID)\n" +
  4587. "VALUES\n" +
  4588. " (:BARCODE, :LAYOUTID, :ACCOUNTID, :CREATEUSERID)";
  4589. List<OracleParameter> parameters = new List<OracleParameter>();
  4590. parameters.Add(new OracleParameter(":BARCODE", OracleDbType.NVarchar2, cre.Properties["Barcode"], ParameterDirection.Input));
  4591. parameters.Add(new OracleParameter(":LAYOUTID", OracleDbType.Int32, cre.Properties["LayoutID"], ParameterDirection.Input));
  4592. parameters.Add(new OracleParameter(":ACCOUNTID", OracleDbType.Int32, sUserInfo.AccountID, ParameterDirection.Input));
  4593. parameters.Add(new OracleParameter(":CREATEUSERID", OracleDbType.Int32, sUserInfo.UserID, ParameterDirection.Input));
  4594. int result = oracleTrConn.ExecuteNonQuery(sqlString, parameters.ToArray());
  4595. if (result == 0)
  4596. {
  4597. sre.Status = Constant.ServiceResultStatus.NoModifyData;
  4598. return sre;
  4599. }
  4600. oracleTrConn.Commit();
  4601. return sre;
  4602. }
  4603. catch (Exception ex)
  4604. {
  4605. if (oracleTrConn != null &&
  4606. oracleTrConn.ConnState == ConnectionState.Open)
  4607. {
  4608. oracleTrConn.Rollback();
  4609. }
  4610. throw ex;
  4611. }
  4612. finally
  4613. {
  4614. if (oracleTrConn != null &&
  4615. oracleTrConn.ConnState == ConnectionState.Open)
  4616. {
  4617. oracleTrConn.Disconnect();
  4618. }
  4619. }
  4620. }
  4621. /// <summary>
  4622. /// 获取打印类型列表 xuwei add 2019-11-20
  4623. /// </summary>
  4624. /// <param name="sUser"></param>
  4625. /// <returns></returns>
  4626. public static ServiceResultEntity GetPrintType(SUserInfo sUserInfo=null)
  4627. {
  4628. ServiceResultEntity sre = new ServiceResultEntity();
  4629. sre.Data = new DataSet();
  4630. sre.Status = Constant.ServiceResultStatus.Success;
  4631. IDBTransaction conn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
  4632. string sqlStr = "";
  4633. try
  4634. {
  4635. conn.Connect();
  4636. //获取打印类型
  4637. if (sre.Status == Constant.ServiceResultStatus.Success)
  4638. {
  4639. sqlStr = $@"
  4640. SELECT
  4641. PRINTTYPEID,
  4642. PRINTTYPENAME
  4643. FROM
  4644. TP_SYS_BARCODEPRINTTYPE
  4645. ORDER BY
  4646. DISPLAYNO
  4647. ";
  4648. DataTable GroutingLineBatchNo = conn.GetSqlResultToDt(sqlStr);
  4649. GroutingLineBatchNo.TableName = "PrintType";
  4650. sre.Data.Tables.Add(GroutingLineBatchNo);
  4651. if (GroutingLineBatchNo.Rows.Count == 0)
  4652. {
  4653. sre.Status = Constant.ServiceResultStatus.NoSearchResults;
  4654. sre.Message = "没有查询结果!";
  4655. }
  4656. else
  4657. {
  4658. sre.Status = Constant.ServiceResultStatus.Success;
  4659. sre.Message = "操作成功!";
  4660. }
  4661. }
  4662. }
  4663. catch (Exception ex)
  4664. {
  4665. throw ex;
  4666. }
  4667. finally
  4668. {
  4669. conn.Disconnect();
  4670. }
  4671. //返回数据
  4672. return sre;
  4673. }
  4674. #endregion
  4675. #region 工号分组(缺陷类型)
  4676. /// <summary>
  4677. /// 获取工号分组一览
  4678. /// </summary>
  4679. /// <param name="cre"></param>
  4680. /// <returns></returns>
  4681. public static ServiceResultEntity GetWorkerGroupList(ClientRequestEntity cre, SUserInfo sUserInfo)
  4682. {
  4683. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  4684. try
  4685. {
  4686. oracleConn.Open();
  4687. ServiceResultEntity sre = new ServiceResultEntity();
  4688. sre.Data = new DataSet();
  4689. List<OracleParameter> parameters = new List<OracleParameter>();
  4690. if (cre.Properties["WorkerGroupDetail"] == null)
  4691. {
  4692. string sqlString =
  4693. "SELECT wg.workergroupid\n" +
  4694. " ,wg.workergroupname\n" +
  4695. " ,wg.remarks\n" +
  4696. " ,wg.displayno\n" +
  4697. " ,wg.valueflag\n" +
  4698. " ,wg.defecttypeid\n" +
  4699. " ,dt.defecttypename\n" +
  4700. " FROM TP_MST_WorkerGroup wg\n" +
  4701. " LEFT JOIN tp_mst_defecttype dt\n" +
  4702. " ON dt.defecttypeid = wg.defecttypeid\n" +
  4703. " WHERE wg.accountid = :accountid\n" +
  4704. " AND (:workergroupid IS NULL OR wg.workergroupid = :workergroupid)\n" +
  4705. " AND (:GroupName IS NULL OR instr(wg.workergroupname, :GroupName) > 0)\n" +
  4706. " AND (:DefectTypes IS NULL OR\n" +
  4707. " instr(:DefectTypes, ','||dt.defecttypeid||',') > 0)\n" +
  4708. " AND (:remarks IS NULL OR instr(wg.remarks, :remarks) > 0)\n" +
  4709. " AND (:valueflag IS NULL OR wg.valueflag = :valueflag)\n" +
  4710. " ORDER BY dt.displayno, dt.defecttypeid, wg.displayno, wg.workergroupid";
  4711. parameters.Add(new OracleParameter(":workergroupid", OracleDbType.Int32, cre.Properties["GroupID"], ParameterDirection.Input));
  4712. parameters.Add(new OracleParameter(":accountid", OracleDbType.Int32, sUserInfo.AccountID, ParameterDirection.Input));
  4713. parameters.Add(new OracleParameter(":GroupName", OracleDbType.NVarchar2, cre.Properties["GroupName"], ParameterDirection.Input));
  4714. parameters.Add(new OracleParameter(":DefectTypes", OracleDbType.NVarchar2, cre.Properties["DefectTypes"], ParameterDirection.Input));
  4715. parameters.Add(new OracleParameter(":remarks", OracleDbType.NVarchar2, cre.Properties["Remarks"], ParameterDirection.Input));
  4716. parameters.Add(new OracleParameter(":valueflag", OracleDbType.NVarchar2, cre.Properties["valueflag"], ParameterDirection.Input));
  4717. DataTable data = oracleConn.GetSqlResultToDt(sqlString, parameters.ToArray());
  4718. // 查询
  4719. if (cre.Properties["GroupID"] == null)
  4720. {
  4721. if (data == null || data.Rows.Count == 0)
  4722. {
  4723. sre.Status = Constant.ServiceResultStatus.NoSearchResults;
  4724. return sre;
  4725. }
  4726. cre.Properties["GroupID"] = data.Rows[0]["workergroupid"];
  4727. }
  4728. sre.Data.Tables.Add(data);
  4729. }
  4730. string sqlUser =
  4731. "SELECT u.userid, u.usercode, u.username\n" +
  4732. " FROM TP_MST_WorkerGroupDetail wgd\n" +
  4733. " LEFT JOIN tp_mst_user u\n" +
  4734. " ON u.userid = wgd.workeruserid\n" +
  4735. " WHERE wgd.workergroupid = :workergroupid\n" +
  4736. " ORDER BY u.usercode";
  4737. parameters.Clear();
  4738. parameters.Add(new OracleParameter(":workergroupid", OracleDbType.Int32, cre.Properties["GroupID"], ParameterDirection.Input));
  4739. DataTable dataUser = oracleConn.GetSqlResultToDt(sqlUser, parameters.ToArray());
  4740. sre.Data.Tables.Add(dataUser);
  4741. return sre;
  4742. }
  4743. catch (Exception ex)
  4744. {
  4745. throw ex;
  4746. }
  4747. finally
  4748. {
  4749. if (oracleConn != null &&
  4750. oracleConn.ConnState == ConnectionState.Open)
  4751. {
  4752. oracleConn.Close();
  4753. }
  4754. }
  4755. }
  4756. /// <summary>
  4757. /// 停用、启用
  4758. /// </summary>
  4759. /// <param name="cre"></param>
  4760. /// <returns></returns>
  4761. public static ServiceResultEntity SetWorkerGroupValueFlag(ClientRequestEntity cre, SUserInfo sUserInfo)
  4762. {
  4763. IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
  4764. try
  4765. {
  4766. oracleTrConn.Connect();
  4767. ServiceResultEntity sre = new ServiceResultEntity();
  4768. string sqlString = "UPDATE TP_MST_WorkerGroup SET ValueFlag = :ValueFlag, UpdateUserID = :UpdateUserID " +
  4769. " WHERE workergroupid = :workergroupid";
  4770. List<OracleParameter> parameters = new List<OracleParameter>();
  4771. parameters.Add(new OracleParameter(":ValueFlag", OracleDbType.NVarchar2, cre.Properties["ValueFlag"], ParameterDirection.Input));
  4772. parameters.Add(new OracleParameter(":UpdateUserID", OracleDbType.Int32, sUserInfo.UserID, ParameterDirection.Input));
  4773. parameters.Add(new OracleParameter(":workergroupid", OracleDbType.Int32, cre.Properties["GroupID"], ParameterDirection.Input));
  4774. int result = oracleTrConn.ExecuteNonQuery(sqlString, parameters.ToArray());
  4775. if (result == 0)
  4776. {
  4777. sre.Status = Constant.ServiceResultStatus.NoModifyData;
  4778. return sre;
  4779. }
  4780. oracleTrConn.Commit();
  4781. return sre;
  4782. }
  4783. catch (Exception ex)
  4784. {
  4785. if (oracleTrConn != null &&
  4786. oracleTrConn.ConnState == ConnectionState.Open)
  4787. {
  4788. oracleTrConn.Rollback();
  4789. }
  4790. throw ex;
  4791. }
  4792. finally
  4793. {
  4794. if (oracleTrConn != null &&
  4795. oracleTrConn.ConnState == ConnectionState.Open)
  4796. {
  4797. oracleTrConn.Disconnect();
  4798. }
  4799. }
  4800. }
  4801. /// <summary>
  4802. /// 保存
  4803. /// </summary>
  4804. /// <param name="cre"></param>
  4805. /// <returns></returns>
  4806. public static ServiceResultEntity SetWorkerGroup(ClientRequestEntity cre, SUserInfo sUserInfo)
  4807. {
  4808. IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
  4809. try
  4810. {
  4811. oracleTrConn.Connect();
  4812. ServiceResultEntity sre = new ServiceResultEntity();
  4813. DataRow info = cre.Data.Tables[0].Rows[0];
  4814. int groupid = Convert.ToInt32(info["workergroupid"]);
  4815. List<OracleParameter> parameters = new List<OracleParameter>();
  4816. if (groupid > 0)
  4817. {
  4818. // 编辑
  4819. string sqlStringEdit =
  4820. "UPDATE TP_MST_WorkerGroup wg\n" +
  4821. " SET wg.workergroupname = :workergroupname\n" +
  4822. " ,wg.defecttypeid = :defecttypeid\n" +
  4823. " ,wg.remarks = :remarks\n" +
  4824. " ,wg.displayno = :displayno\n" +
  4825. " ,wg.updateuserid = :updateuserid\n" +
  4826. " WHERE wg.workergroupid = :workergroupid";
  4827. parameters.Add(new OracleParameter(":workergroupname", OracleDbType.NVarchar2, info["workergroupname"], ParameterDirection.Input));
  4828. parameters.Add(new OracleParameter(":defecttypeid", OracleDbType.Int32, info["defecttypeid"], ParameterDirection.Input));
  4829. parameters.Add(new OracleParameter(":remarks", OracleDbType.NVarchar2, info["remarks"], ParameterDirection.Input));
  4830. parameters.Add(new OracleParameter(":displayno", OracleDbType.Int32, info["displayno"], ParameterDirection.Input));
  4831. parameters.Add(new OracleParameter(":updateuserid", OracleDbType.Int32, sUserInfo.UserID, ParameterDirection.Input));
  4832. parameters.Add(new OracleParameter(":workergroupid", OracleDbType.Int32, groupid, ParameterDirection.Input));
  4833. int result = oracleTrConn.ExecuteNonQuery(sqlStringEdit, parameters.ToArray());
  4834. if (result == 0)
  4835. {
  4836. sre.Status = Constant.ServiceResultStatus.NoModifyData;
  4837. return sre;
  4838. }
  4839. sqlStringEdit = "DELETE FROM TP_MST_WorkerGroupDetail wgd WHERE wgd.workergroupid = :workergroupid";
  4840. parameters.Clear();
  4841. parameters.Add(new OracleParameter(":workergroupid", OracleDbType.Int32, groupid, ParameterDirection.Input));
  4842. oracleTrConn.ExecuteNonQuery(sqlStringEdit, parameters.ToArray());
  4843. }
  4844. else
  4845. {
  4846. string seqSql = "select SEQ_MST_WORKERGROUP_ID.NEXTVAL from dual";
  4847. groupid = Convert.ToInt32(oracleTrConn.GetSqlResultToObj(seqSql));
  4848. // 新建
  4849. string sqlStringAdd =
  4850. "INSERT INTO TP_MST_WORKERGROUP\n" +
  4851. " (WORKERGROUPID\n" +
  4852. " ,WORKERGROUPNAME\n" +
  4853. " ,DEFECTTYPEID\n" +
  4854. " ,REMARKS\n" +
  4855. " ,DISPLAYNO\n" +
  4856. " ,ACCOUNTID\n" +
  4857. " ,VALUEFLAG\n" +
  4858. " ,CREATEUSERID\n" +
  4859. " ,UPDATEUSERID)\n" +
  4860. "VALUES\n" +
  4861. " (:WORKERGROUPID\n" +
  4862. " ,:WORKERGROUPNAME\n" +
  4863. " ,:DEFECTTYPEID\n" +
  4864. " ,:REMARKS\n" +
  4865. " ,:DISPLAYNO\n" +
  4866. " ,:ACCOUNTID\n" +
  4867. " ,'1'\n" +
  4868. " ,:USERID\n" +
  4869. " ,:USERID)";
  4870. parameters.Add(new OracleParameter(":WORKERGROUPID", OracleDbType.Int32, groupid, ParameterDirection.Input));
  4871. parameters.Add(new OracleParameter(":WORKERGROUPNAME", OracleDbType.NVarchar2, info["workergroupname"], ParameterDirection.Input));
  4872. parameters.Add(new OracleParameter(":DEFECTTYPEID", OracleDbType.Int32, info["defecttypeid"], ParameterDirection.Input));
  4873. parameters.Add(new OracleParameter(":REMARKS", OracleDbType.NVarchar2, info["remarks"], ParameterDirection.Input));
  4874. parameters.Add(new OracleParameter(":DISPLAYNO", OracleDbType.Int32, info["displayno"], ParameterDirection.Input));
  4875. parameters.Add(new OracleParameter(":USERID", OracleDbType.Int32, sUserInfo.UserID, ParameterDirection.Input));
  4876. parameters.Add(new OracleParameter(":ACCOUNTID", OracleDbType.Int32, sUserInfo.AccountID, ParameterDirection.Input));
  4877. oracleTrConn.ExecuteNonQuery(sqlStringAdd, parameters.ToArray());
  4878. }
  4879. string sqlString1 = "INSERT INTO TP_MST_WORKERGROUPDETAIL\n" +
  4880. " (WORKERGROUPID, WORKERUSERID, ACCOUNTID, CREATEUSERID, UPDATEUSERID)\n" +
  4881. "VALUES\n" +
  4882. " (:WORKERGROUPID, :WORKERUSERID, :ACCOUNTID, '1', :USERID)";
  4883. foreach (DataRow item in cre.Data.Tables[1].Rows)
  4884. {
  4885. parameters.Clear();
  4886. parameters.Add(new OracleParameter(":WORKERGROUPID", OracleDbType.Int32, groupid, ParameterDirection.Input));
  4887. parameters.Add(new OracleParameter(":WORKERUSERID", OracleDbType.NVarchar2, item["USERID"], ParameterDirection.Input));
  4888. parameters.Add(new OracleParameter(":ACCOUNTID", OracleDbType.Int32, sUserInfo.AccountID, ParameterDirection.Input));
  4889. parameters.Add(new OracleParameter(":USERID", OracleDbType.Int32, sUserInfo.UserID, ParameterDirection.Input));
  4890. oracleTrConn.ExecuteNonQuery(sqlString1, parameters.ToArray());
  4891. }
  4892. oracleTrConn.Commit();
  4893. return sre;
  4894. }
  4895. catch (Exception ex)
  4896. {
  4897. if (oracleTrConn != null &&
  4898. oracleTrConn.ConnState == ConnectionState.Open)
  4899. {
  4900. oracleTrConn.Rollback();
  4901. }
  4902. throw ex;
  4903. }
  4904. finally
  4905. {
  4906. if (oracleTrConn != null &&
  4907. oracleTrConn.ConnState == ConnectionState.Open)
  4908. {
  4909. oracleTrConn.Disconnect();
  4910. }
  4911. }
  4912. }
  4913. #endregion
  4914. #region 条码打印机(PDA用)
  4915. /// <summary>
  4916. /// 获取条码打印机(PDA用)
  4917. /// </summary>
  4918. /// <param name="cre"></param>
  4919. /// <param name="sUserInfo"></param>
  4920. /// <returns></returns>
  4921. public static ServiceResultEntity GetBarcodePrinter(ClientRequestEntity cre, SUserInfo sUserInfo)
  4922. {
  4923. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  4924. try
  4925. {
  4926. ServiceResultEntity sre = new ServiceResultEntity();
  4927. string sqlString = "Select PrinterID,PrinterName,Remarks,displayno "
  4928. + " ,PrintType " //xuwei add 2019-11-21
  4929. + " from TP_MST_BarCodePrinter where AccountID = :AccountID and valueflag = '1' order by displayno";
  4930. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  4931. {
  4932. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  4933. };
  4934. oracleConn.Open();
  4935. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  4936. oracleConn.Close();
  4937. sre.Data = result;
  4938. return sre;
  4939. }
  4940. catch (Exception ex)
  4941. {
  4942. if (oracleConn.ConnState == ConnectionState.Open)
  4943. {
  4944. oracleConn.Close();
  4945. }
  4946. throw ex;
  4947. }
  4948. }
  4949. /// <summary>
  4950. /// 获取条码打印机(PDA用)
  4951. /// </summary>
  4952. /// <param name="cre"></param>
  4953. /// <param name="sUserInfo"></param>
  4954. /// <returns></returns>
  4955. public static ServiceResultEntity GetAllBarcodePrinter(ClientRequestEntity cre, SUserInfo sUserInfo)
  4956. {
  4957. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  4958. try
  4959. {
  4960. ServiceResultEntity sre = new ServiceResultEntity();
  4961. string sqlString = "Select PrinterID,PrinterName,Remarks,AccountID,ValueFlag,CreateTime,CreateUserID,UpdateTime,UpdateUserID,OPTimeStamp "
  4962. + " ,PrintType"
  4963. + " ,displayno from TP_MST_BarCodePrinter where AccountID = :AccountID order by displayno";
  4964. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  4965. {
  4966. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  4967. };
  4968. oracleConn.Open();
  4969. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  4970. oracleConn.Close();
  4971. sre.Data = result;
  4972. return sre;
  4973. }
  4974. catch (Exception ex)
  4975. {
  4976. if (oracleConn.ConnState == ConnectionState.Open)
  4977. {
  4978. oracleConn.Close();
  4979. }
  4980. throw ex;
  4981. }
  4982. }
  4983. /// <summary>
  4984. /// 保存条码打印机(PDA用)
  4985. /// </summary>
  4986. /// <returns>int</returns>
  4987. public static ServiceResultEntity SaveBarcodePrinter(ClientRequestEntity cre, SUserInfo sUserInfo)
  4988. {
  4989. IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
  4990. try
  4991. {
  4992. ServiceResultEntity sre = new ServiceResultEntity();
  4993. // 检验参数的有效性
  4994. if (cre == null || cre.Data == null || cre.Data.Tables.Count == 0 || cre.Data.Tables[0].Rows.Count == 0)
  4995. {
  4996. sre.Status = Constant.ServiceResultStatus.NoModifyData;
  4997. return sre;
  4998. }
  4999. oracleTrConn.Connect();
  5000. #region 对要保存的数据进行必要的验证
  5001. foreach (DataRow dataRow in cre.Data.Tables[0].Rows)
  5002. {
  5003. // 新建
  5004. if (dataRow.RowState == DataRowState.Added)
  5005. {
  5006. #region 判断是否存在相同的
  5007. string sqlString = "SELECT Count(*) FROM TP_MST_BarCodePrinter WHERE AccountID = :AccountID and PrinterName =:PrinterName ";
  5008. OracleParameter[] oracleParameter = new OracleParameter[]
  5009. {
  5010. new OracleParameter(":AccountID",sUserInfo.AccountID),
  5011. new OracleParameter(":PrinterName",dataRow["PrinterName"].ToString())
  5012. };
  5013. string sqlReturnStr = oracleTrConn.GetSqlResultToStr(sqlString, oracleParameter);
  5014. if (!Constant.INT_IS_ZERO.ToString().Equals(sqlReturnStr))
  5015. {
  5016. oracleTrConn.Rollback();
  5017. oracleTrConn.Disconnect();
  5018. sre.Status = Constant.ServiceResultStatus.DataDuplicated;
  5019. sre.Message = dataRow["PrinterName"].ToString();
  5020. return sre;
  5021. }
  5022. #endregion
  5023. }
  5024. else if (dataRow.RowState == DataRowState.Modified)
  5025. {
  5026. #region 判断是否存在相同的
  5027. string sqlStrings = "SELECT Count(*) FROM TP_MST_BarCodePrinter WHERE AccountID = :AccountID and PrinterName = :PrinterName and PrinterID <> :PrinterID";
  5028. OracleParameter[] oracleParameters = new OracleParameter[]
  5029. {
  5030. new OracleParameter(":AccountID",sUserInfo.AccountID),
  5031. new OracleParameter(":PrinterName",dataRow["PrinterName"]),
  5032. new OracleParameter(":PrinterID",dataRow["PrinterID"])
  5033. };
  5034. string sqlReturnStr = oracleTrConn.GetSqlResultToStr(sqlStrings, oracleParameters);
  5035. if (!Constant.INT_IS_ZERO.ToString().Equals(sqlReturnStr))
  5036. {
  5037. oracleTrConn.Rollback();
  5038. oracleTrConn.Disconnect();
  5039. sre.Status = Constant.ServiceResultStatus.DataDuplicated;
  5040. sre.Message = dataRow["PrinterName"].ToString();
  5041. return sre;
  5042. }
  5043. #endregion
  5044. }
  5045. }
  5046. #endregion
  5047. foreach (DataRow dataRow in cre.Data.Tables[0].Rows)
  5048. {
  5049. // 新建
  5050. if (dataRow.RowState == DataRowState.Added)
  5051. {
  5052. #region 新增信息
  5053. string sqlInsertString = "INSERT INTO TP_MST_BarCodePrinter"
  5054. + "(PrinterName"
  5055. + ",DisplayNo"
  5056. + ",PrintType" //xuwei add 2019-11-21
  5057. + ",Remarks"
  5058. + ",AccountID"
  5059. + ",ValueFlag"
  5060. + ",UpdateUserID"
  5061. + ",CreateUserID)"
  5062. + " VALUES "
  5063. + "(:PrinterName"
  5064. + ",:DisplayNo"
  5065. + ",:PrintType" //xuwei add 2019-11-21
  5066. + ",:Remarks"
  5067. + ",:AccountID"
  5068. + ",:ValueFlag"
  5069. + ",:UserID"
  5070. + ",:UserID)";
  5071. OracleParameter[] oracleParameter = new OracleParameter[]
  5072. {
  5073. new OracleParameter(":PrinterName",dataRow["PrinterName"].ToString()),
  5074. new OracleParameter(":DisplayNo",dataRow["DisplayNo"]),
  5075. new OracleParameter(":PrintType",dataRow["PrintType"]),
  5076. new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
  5077. new OracleParameter(":AccountID",sUserInfo.AccountID),
  5078. new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
  5079. new OracleParameter(":UserID",sUserInfo.UserID),
  5080. };
  5081. oracleTrConn.ExecuteNonQuery(sqlInsertString, oracleParameter);
  5082. #endregion
  5083. }
  5084. else if (dataRow.RowState == DataRowState.Modified)
  5085. {
  5086. #region 更新信息
  5087. string sqlUpdateString = "UPDATE TP_MST_BarCodePrinter SET "
  5088. + " PrinterName = :PrinterName,"
  5089. + " DisplayNo = :DisplayNo,"
  5090. + " PrintType = :PrintType," //xuwei add 2019-11-21
  5091. + " Remarks = :Remarks,"
  5092. + " AccountID = :AccountID,"
  5093. + " ValueFlag = :ValueFlag,"
  5094. + " UpdateUserID = :UpdateUserID"
  5095. + " WHERE PrinterID = :PrinterID";
  5096. OracleParameter[] oracleParameter = new OracleParameter[]
  5097. {
  5098. new OracleParameter(":PrinterName",dataRow["PrinterName"]),
  5099. new OracleParameter(":DisplayNo",dataRow["DisplayNo"]),
  5100. new OracleParameter(":PrintType",dataRow["PrintType"]), //xuwei add 2019-11-21
  5101. new OracleParameter(":Remarks",dataRow["Remarks"]),
  5102. new OracleParameter(":AccountID",sUserInfo.AccountID),
  5103. new OracleParameter(":ValueFlag",dataRow["ValueFlag"]),
  5104. new OracleParameter(":UpdateUserID",sUserInfo.UserID),
  5105. new OracleParameter(":PrinterID",dataRow["PrinterID"])
  5106. };
  5107. oracleTrConn.ExecuteNonQuery(sqlUpdateString, oracleParameter);
  5108. #endregion
  5109. }
  5110. else if (dataRow.RowState == DataRowState.Deleted)
  5111. {
  5112. #region 删除信息
  5113. string sqlDeleteString = "DELETE TP_MST_BarCodePrinter WHERE PrinterID = :PrinterID";
  5114. OracleParameter[] oracleParameter = new OracleParameter[]
  5115. {
  5116. new OracleParameter(":PrinterID",dataRow["PrinterID",DataRowVersion.Original].ToString())
  5117. };
  5118. oracleTrConn.ExecuteNonQuery(sqlDeleteString, oracleParameter);
  5119. #endregion
  5120. }
  5121. }
  5122. oracleTrConn.Commit();
  5123. oracleTrConn.Disconnect();
  5124. return sre;
  5125. }
  5126. catch (Exception ex)
  5127. {
  5128. if (oracleTrConn.ConnState == ConnectionState.Open)
  5129. {
  5130. oracleTrConn.Rollback();
  5131. oracleTrConn.Disconnect();
  5132. }
  5133. throw ex;
  5134. }
  5135. }
  5136. #endregion
  5137. #region PLC连接参数
  5138. /// <summary>
  5139. /// 获取PLC连接参数
  5140. /// </summary>
  5141. /// <param name="cre"></param>
  5142. /// <param name="sUserInfo"></param>
  5143. /// <returns></returns>
  5144. public static ServiceResultEntity GetPLC(ClientRequestEntity cre, SUserInfo sUserInfo)
  5145. {
  5146. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  5147. try
  5148. {
  5149. ServiceResultEntity sre = new ServiceResultEntity();
  5150. string sqlString = "Select PLCID,PLCName,IP, PORT, PLCDescription, Remarks,displayno "
  5151. + " from TP_MST_PLC where AccountID = :AccountID and valueflag = '1' order by displayno";
  5152. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  5153. {
  5154. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  5155. };
  5156. oracleConn.Open();
  5157. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  5158. oracleConn.Close();
  5159. sre.Data = result;
  5160. return sre;
  5161. }
  5162. catch (Exception ex)
  5163. {
  5164. if (oracleConn.ConnState == ConnectionState.Open)
  5165. {
  5166. oracleConn.Close();
  5167. }
  5168. throw ex;
  5169. }
  5170. }
  5171. /// <summary>
  5172. /// 获取PLC连接参数
  5173. /// </summary>
  5174. /// <param name="cre"></param>
  5175. /// <param name="sUserInfo"></param>
  5176. /// <returns></returns>
  5177. public static ServiceResultEntity GetAllPLC(ClientRequestEntity cre, SUserInfo sUserInfo)
  5178. {
  5179. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  5180. try
  5181. {
  5182. ServiceResultEntity sre = new ServiceResultEntity();
  5183. string sqlString = "Select PLCID,PLCName,IP, PORT, PLCDescription,Remarks,AccountID,ValueFlag,CreateTime,CreateUserID,UpdateTime,UpdateUserID,OPTimeStamp "
  5184. + " ,displayno from TP_MST_PLC where AccountID = :AccountID order by displayno";
  5185. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  5186. {
  5187. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  5188. };
  5189. oracleConn.Open();
  5190. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  5191. oracleConn.Close();
  5192. sre.Data = result;
  5193. return sre;
  5194. }
  5195. catch (Exception ex)
  5196. {
  5197. if (oracleConn.ConnState == ConnectionState.Open)
  5198. {
  5199. oracleConn.Close();
  5200. }
  5201. throw ex;
  5202. }
  5203. }
  5204. /// <summary>
  5205. /// 获取PLC连接参数
  5206. /// </summary>
  5207. /// <returns>int</returns>
  5208. public static ServiceResultEntity SavePLC(ClientRequestEntity cre, SUserInfo sUserInfo)
  5209. {
  5210. IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
  5211. try
  5212. {
  5213. ServiceResultEntity sre = new ServiceResultEntity();
  5214. // 检验参数的有效性
  5215. if (cre == null || cre.Data == null || cre.Data.Tables.Count == 0 || cre.Data.Tables[0].Rows.Count == 0)
  5216. {
  5217. sre.Status = Constant.ServiceResultStatus.NoModifyData;
  5218. return sre;
  5219. }
  5220. oracleTrConn.Connect();
  5221. #region 对要保存的数据进行必要的验证
  5222. foreach (DataRow dataRow in cre.Data.Tables[0].Rows)
  5223. {
  5224. if (dataRow.RowState == DataRowState.Added)
  5225. {
  5226. #region 判断是否存在相同的产品缺陷类别名称
  5227. string sqlString = "SELECT Count(*) FROM TP_MST_PLC WHERE AccountID = :AccountID and PLCName =:PLCName ";
  5228. OracleParameter[] oracleParameter = new OracleParameter[]
  5229. {
  5230. new OracleParameter(":AccountID",sUserInfo.AccountID),
  5231. new OracleParameter(":PLCName",dataRow["PLCName"].ToString())
  5232. };
  5233. string sqlReturnStr = oracleTrConn.GetSqlResultToStr(sqlString, oracleParameter);
  5234. if (!Constant.INT_IS_ZERO.ToString().Equals(sqlReturnStr))
  5235. {
  5236. oracleTrConn.Rollback();
  5237. oracleTrConn.Disconnect();
  5238. sre.Status = Constant.ServiceResultStatus.DataDuplicated;
  5239. sre.Message = dataRow["PLCName"].ToString();
  5240. return sre;
  5241. }
  5242. #endregion
  5243. }
  5244. else if (dataRow.RowState == DataRowState.Modified)
  5245. {
  5246. #region 判断是否存在相同的产品缺陷类别名称
  5247. string sqlStrings = "SELECT Count(*) FROM TP_MST_PLC WHERE AccountID = :AccountID and PLCName = :PLCName and PLCID <> :PLCID";
  5248. OracleParameter[] oracleParameters = new OracleParameter[]
  5249. {
  5250. new OracleParameter(":AccountID",sUserInfo.AccountID),
  5251. new OracleParameter(":PLCName",dataRow["PLCName"]),
  5252. new OracleParameter(":PLCID",dataRow["PLCID"])
  5253. };
  5254. string sqlReturnStr = oracleTrConn.GetSqlResultToStr(sqlStrings, oracleParameters);
  5255. if (!Constant.INT_IS_ZERO.ToString().Equals(sqlReturnStr))
  5256. {
  5257. oracleTrConn.Rollback();
  5258. oracleTrConn.Disconnect();
  5259. sre.Status = Constant.ServiceResultStatus.DataDuplicated;
  5260. sre.Message = dataRow["PLCName"].ToString();
  5261. return sre;
  5262. }
  5263. #endregion
  5264. }
  5265. }
  5266. #endregion
  5267. foreach (DataRow dataRow in cre.Data.Tables[0].Rows)
  5268. {
  5269. // 新建
  5270. if (dataRow.RowState == DataRowState.Added)
  5271. {
  5272. #region 新增信息
  5273. string sqlInsertString = "INSERT INTO TP_MST_PLC"
  5274. + "(PLCName"
  5275. + ",IP"
  5276. + ",Port"
  5277. + ",PLCDescription"
  5278. + ",DisplayNo"
  5279. + ",Remarks"
  5280. + ",AccountID"
  5281. + ",ValueFlag"
  5282. + ",UpdateUserID"
  5283. + ",CreateUserID)"
  5284. + " VALUES "
  5285. + "(:PLCName"
  5286. + ",:IP"
  5287. + ",:Port"
  5288. + ",:PLCDescription"
  5289. + ",:DisplayNo"
  5290. + ",:Remarks"
  5291. + ",:AccountID"
  5292. + ",:ValueFlag"
  5293. + ",:UserID"
  5294. + ",:UserID)";
  5295. OracleParameter[] oracleParameter = new OracleParameter[]
  5296. {
  5297. new OracleParameter(":PLCName",dataRow["PLCName"].ToString()),
  5298. new OracleParameter(":IP",dataRow["IP"]),
  5299. new OracleParameter(":Port",dataRow["Port"]),
  5300. new OracleParameter(":PLCDescription",dataRow["PLCDescription"]),
  5301. new OracleParameter(":DisplayNo",dataRow["DisplayNo"]),
  5302. new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
  5303. new OracleParameter(":AccountID",sUserInfo.AccountID),
  5304. new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
  5305. new OracleParameter(":UserID",sUserInfo.UserID),
  5306. };
  5307. oracleTrConn.ExecuteNonQuery(sqlInsertString, oracleParameter);
  5308. #endregion
  5309. }
  5310. else if (dataRow.RowState == DataRowState.Modified)
  5311. {
  5312. #region 更新信息
  5313. string sqlUpdateString = "UPDATE TP_MST_PLC SET "
  5314. + " PLCName = :PLCName,"
  5315. + " IP = :IP,"
  5316. + " Port = :Port,"
  5317. + " PLCDescription = :PLCDescription,"
  5318. + " DisplayNo = :DisplayNo,"
  5319. + " Remarks = :Remarks,"
  5320. + " AccountID = :AccountID,"
  5321. + " ValueFlag = :ValueFlag,"
  5322. + " UpdateUserID = :UpdateUserID"
  5323. + " WHERE PLCID = :PLCID";
  5324. OracleParameter[] oracleParameter = new OracleParameter[]
  5325. {
  5326. new OracleParameter(":PLCName",dataRow["PLCName"].ToString()),
  5327. new OracleParameter(":IP",dataRow["IP"]),
  5328. new OracleParameter(":Port",dataRow["Port"]),
  5329. new OracleParameter(":PLCDescription",dataRow["PLCDescription"]),
  5330. new OracleParameter(":DisplayNo",dataRow["DisplayNo"]),
  5331. new OracleParameter(":Remarks",dataRow["Remarks"]),
  5332. new OracleParameter(":AccountID",sUserInfo.AccountID),
  5333. new OracleParameter(":ValueFlag",dataRow["ValueFlag"]),
  5334. new OracleParameter(":UpdateUserID",sUserInfo.UserID),
  5335. new OracleParameter(":PLCID",dataRow["PLCID"])
  5336. };
  5337. oracleTrConn.ExecuteNonQuery(sqlUpdateString, oracleParameter);
  5338. #endregion
  5339. }
  5340. else if (dataRow.RowState == DataRowState.Deleted)
  5341. {
  5342. #region 删除信息
  5343. string sqlDeleteString = "DELETE TP_MST_PLC WHERE PLCID = :PLCID";
  5344. OracleParameter[] oracleParameter = new OracleParameter[]
  5345. {
  5346. new OracleParameter(":PLCID",dataRow["PLCID",DataRowVersion.Original].ToString())
  5347. };
  5348. oracleTrConn.ExecuteNonQuery(sqlDeleteString, oracleParameter);
  5349. #endregion
  5350. }
  5351. }
  5352. oracleTrConn.Commit();
  5353. oracleTrConn.Disconnect();
  5354. return sre;
  5355. }
  5356. catch (Exception ex)
  5357. {
  5358. if (oracleTrConn.ConnState == ConnectionState.Open)
  5359. {
  5360. oracleTrConn.Rollback();
  5361. oracleTrConn.Disconnect();
  5362. }
  5363. throw ex;
  5364. }
  5365. }
  5366. #endregion
  5367. #region 模具材料供应商
  5368. /// <summary>
  5369. /// 获取模具材料供应商
  5370. /// </summary>
  5371. /// <param name="cre"></param>
  5372. /// <param name="sUserInfo"></param>
  5373. /// <returns></returns>
  5374. public static ServiceResultEntity GetMouldMaterialSuppliers(ClientRequestEntity cre, SUserInfo sUserInfo)
  5375. {
  5376. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  5377. try
  5378. {
  5379. ServiceResultEntity sre = new ServiceResultEntity();
  5380. string sqlString = "Select SupplierID,SupplierName,Remarks,displayno "
  5381. + " from TP_MST_MouldMaterialSuppliers where AccountID = :AccountID and valueflag = '1' order by displayno";
  5382. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  5383. {
  5384. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  5385. };
  5386. oracleConn.Open();
  5387. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  5388. oracleConn.Close();
  5389. sre.Data = result;
  5390. return sre;
  5391. }
  5392. catch (Exception ex)
  5393. {
  5394. if (oracleConn.ConnState == ConnectionState.Open)
  5395. {
  5396. oracleConn.Close();
  5397. }
  5398. throw ex;
  5399. }
  5400. }
  5401. /// <summary>
  5402. /// 获取模具材料供应商
  5403. /// </summary>
  5404. /// <param name="cre"></param>
  5405. /// <param name="sUserInfo"></param>
  5406. /// <returns></returns>
  5407. public static ServiceResultEntity GetAllMouldMaterialSuppliers(ClientRequestEntity cre, SUserInfo sUserInfo)
  5408. {
  5409. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  5410. try
  5411. {
  5412. ServiceResultEntity sre = new ServiceResultEntity();
  5413. string sqlString = "Select SupplierID,SupplierName,Remarks,displayno,AccountID,ValueFlag,CreateTime,CreateUserID,UpdateTime,UpdateUserID,OPTimeStamp "
  5414. + " from TP_MST_MouldMaterialSuppliers where AccountID = :AccountID order by displayno";
  5415. Oracle.ManagedDataAccess.Client.OracleParameter[] oracleParameter = new Oracle.ManagedDataAccess.Client.OracleParameter[]
  5416. {
  5417. new Oracle.ManagedDataAccess.Client.OracleParameter(":AccountID",sUserInfo.AccountID)
  5418. };
  5419. oracleConn.Open();
  5420. DataSet result = oracleConn.GetSqlResultToDs(sqlString, oracleParameter);
  5421. oracleConn.Close();
  5422. sre.Data = result;
  5423. return sre;
  5424. }
  5425. catch (Exception ex)
  5426. {
  5427. if (oracleConn.ConnState == ConnectionState.Open)
  5428. {
  5429. oracleConn.Close();
  5430. }
  5431. throw ex;
  5432. }
  5433. }
  5434. /// <summary>
  5435. /// 保存模具材料供应商
  5436. /// </summary>
  5437. /// <returns>int</returns>
  5438. public static ServiceResultEntity SaveMouldMaterialSuppliers(ClientRequestEntity cre, SUserInfo sUserInfo)
  5439. {
  5440. IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
  5441. try
  5442. {
  5443. ServiceResultEntity sre = new ServiceResultEntity();
  5444. // 检验参数的有效性
  5445. if (cre == null || cre.Data == null || cre.Data.Tables.Count == 0 || cre.Data.Tables[0].Rows.Count == 0)
  5446. {
  5447. sre.Status = Constant.ServiceResultStatus.NoModifyData;
  5448. return sre;
  5449. }
  5450. oracleTrConn.Connect();
  5451. #region 对要保存的数据进行必要的验证
  5452. foreach (DataRow dataRow in cre.Data.Tables[0].Rows)
  5453. {
  5454. if (dataRow.RowState == DataRowState.Added)
  5455. {
  5456. #region 判断是否存在相同的名称
  5457. string sqlString = "SELECT Count(*) FROM TP_MST_MouldMaterialSuppliers WHERE AccountID = :AccountID and SupplierName =:SupplierName ";
  5458. OracleParameter[] oracleParameter = new OracleParameter[]
  5459. {
  5460. new OracleParameter(":AccountID",sUserInfo.AccountID),
  5461. new OracleParameter(":SupplierName",dataRow["SupplierName"].ToString())
  5462. };
  5463. string sqlReturnStr = oracleTrConn.GetSqlResultToStr(sqlString, oracleParameter);
  5464. if (!Constant.INT_IS_ZERO.ToString().Equals(sqlReturnStr))
  5465. {
  5466. oracleTrConn.Rollback();
  5467. oracleTrConn.Disconnect();
  5468. sre.Status = Constant.ServiceResultStatus.DataDuplicated;
  5469. sre.Message = dataRow["SupplierName"].ToString();
  5470. return sre;
  5471. }
  5472. #endregion
  5473. }
  5474. else if (dataRow.RowState == DataRowState.Modified)
  5475. {
  5476. #region 判断是否存在相同的产品缺陷类别名称
  5477. string sqlStrings = "SELECT Count(*) FROM TP_MST_MouldMaterialSuppliers WHERE AccountID = :AccountID and SupplierName = :SupplierName and SupplierID <> :SupplierID";
  5478. OracleParameter[] oracleParameters = new OracleParameter[]
  5479. {
  5480. new OracleParameter(":AccountID",sUserInfo.AccountID),
  5481. new OracleParameter(":SupplierName",dataRow["SupplierName"]),
  5482. new OracleParameter(":SupplierID",dataRow["SupplierID"])
  5483. };
  5484. string sqlReturnStr = oracleTrConn.GetSqlResultToStr(sqlStrings, oracleParameters);
  5485. if (!Constant.INT_IS_ZERO.ToString().Equals(sqlReturnStr))
  5486. {
  5487. oracleTrConn.Rollback();
  5488. oracleTrConn.Disconnect();
  5489. sre.Status = Constant.ServiceResultStatus.DataDuplicated;
  5490. sre.Message = dataRow["SupplierName"].ToString();
  5491. return sre;
  5492. }
  5493. #endregion
  5494. }
  5495. }
  5496. #endregion
  5497. foreach (DataRow dataRow in cre.Data.Tables[0].Rows)
  5498. {
  5499. // 新建
  5500. if (dataRow.RowState == DataRowState.Added)
  5501. {
  5502. #region 新增信息
  5503. string sqlInsertString = "INSERT INTO TP_MST_MouldMaterialSuppliers"
  5504. + "(SupplierName"
  5505. + ",DisplayNo"
  5506. + ",Remarks"
  5507. + ",AccountID"
  5508. + ",ValueFlag"
  5509. + ",UpdateUserID"
  5510. + ",CreateUserID)"
  5511. + " VALUES "
  5512. + "(:SupplierName"
  5513. + ",:DisplayNo"
  5514. + ",:Remarks"
  5515. + ",:AccountID"
  5516. + ",:ValueFlag"
  5517. + ",:UserID"
  5518. + ",:UserID)";
  5519. OracleParameter[] oracleParameter = new OracleParameter[]
  5520. {
  5521. new OracleParameter(":SupplierName",dataRow["SupplierName"].ToString()),
  5522. new OracleParameter(":DisplayNo",dataRow["DisplayNo"]),
  5523. new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
  5524. new OracleParameter(":AccountID",sUserInfo.AccountID),
  5525. new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
  5526. new OracleParameter(":UserID",sUserInfo.UserID),
  5527. };
  5528. oracleTrConn.ExecuteNonQuery(sqlInsertString, oracleParameter);
  5529. #endregion
  5530. }
  5531. else if (dataRow.RowState == DataRowState.Modified)
  5532. {
  5533. #region 更新信息
  5534. string sqlUpdateString = "UPDATE TP_MST_MouldMaterialSuppliers SET "
  5535. + " SupplierName = :SupplierName,"
  5536. + " DisplayNo = :DisplayNo,"
  5537. + " Remarks = :Remarks,"
  5538. + " AccountID = :AccountID,"
  5539. + " ValueFlag = :ValueFlag,"
  5540. + " UpdateUserID = :UpdateUserID"
  5541. + " WHERE SupplierID = :SupplierID";
  5542. OracleParameter[] oracleParameter = new OracleParameter[]
  5543. {
  5544. new OracleParameter(":SupplierName",dataRow["SupplierName"].ToString()),
  5545. new OracleParameter(":DisplayNo",dataRow["DisplayNo"]),
  5546. new OracleParameter(":Remarks",dataRow["Remarks"]),
  5547. new OracleParameter(":AccountID",sUserInfo.AccountID),
  5548. new OracleParameter(":ValueFlag",dataRow["ValueFlag"]),
  5549. new OracleParameter(":UpdateUserID",sUserInfo.UserID),
  5550. new OracleParameter(":SupplierID",dataRow["SupplierID"])
  5551. };
  5552. oracleTrConn.ExecuteNonQuery(sqlUpdateString, oracleParameter);
  5553. #endregion
  5554. }
  5555. else if (dataRow.RowState == DataRowState.Deleted)
  5556. {
  5557. #region 删除信息
  5558. string sqlDeleteString = "DELETE TP_MST_MouldMaterialSuppliers WHERE SupplierID = :SupplierID";
  5559. OracleParameter[] oracleParameter = new OracleParameter[]
  5560. {
  5561. new OracleParameter(":SupplierID",dataRow["SupplierID",DataRowVersion.Original].ToString())
  5562. };
  5563. oracleTrConn.ExecuteNonQuery(sqlDeleteString, oracleParameter);
  5564. #endregion
  5565. }
  5566. }
  5567. oracleTrConn.Commit();
  5568. oracleTrConn.Disconnect();
  5569. return sre;
  5570. }
  5571. catch (Exception ex)
  5572. {
  5573. if (oracleTrConn.ConnState == ConnectionState.Open)
  5574. {
  5575. oracleTrConn.Rollback();
  5576. oracleTrConn.Disconnect();
  5577. }
  5578. throw ex;
  5579. }
  5580. }
  5581. #endregion
  5582. #region 在产品备份设置
  5583. /// <summary>
  5584. /// 获取在产品备份设置
  5585. /// </summary>
  5586. /// <param name="cre"></param>
  5587. /// <param name="sUserInfo"></param>
  5588. /// <returns></returns>
  5589. public static ServiceResultEntity GetMST040101(ClientRequestEntity cre, SUserInfo sUserInfo)
  5590. {
  5591. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  5592. try
  5593. {
  5594. ServiceResultEntity sre = new ServiceResultEntity();
  5595. string sqlString = "SELECT JOB_NAME, REPEAT_INTERVAL, LAST_START_DATE, NEXT_RUN_DATE, ENABLED\n" +
  5596. " FROM USER_SCHEDULER_JOBS\n" +
  5597. " WHERE JOB_NAME = 'BAKUP_INPRODUCTION_BYMONTH'";
  5598. oracleConn.Open();
  5599. DataSet data = oracleConn.GetSqlResultToDs(sqlString);
  5600. sre.Data = data;
  5601. oracleConn.Close();
  5602. return sre;
  5603. }
  5604. catch (Exception ex)
  5605. {
  5606. if (oracleConn.ConnState == ConnectionState.Open)
  5607. {
  5608. oracleConn.Close();
  5609. }
  5610. throw ex;
  5611. }
  5612. }
  5613. /// <summary>
  5614. /// 保存在产品备份设置
  5615. /// </summary>
  5616. /// <param name="cre"></param>
  5617. /// <param name="sUserInfo"></param>
  5618. /// <returns></returns>
  5619. public static ServiceResultEntity SetMST040101(ClientRequestEntity cre, SUserInfo sUserInfo)
  5620. {
  5621. IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
  5622. try
  5623. {
  5624. ServiceResultEntity sre = new ServiceResultEntity();
  5625. // 检验参数的有效性
  5626. if (cre == null || cre.Request == null || cre.Request.ToString() == "")
  5627. {
  5628. sre.Status = Constant.ServiceResultStatus.NoModifyData;
  5629. return sre;
  5630. }
  5631. oracleTrConn.Connect();
  5632. OracleParameter[] oracleParameter = new OracleParameter[]
  5633. {
  5634. new OracleParameter("name","BAKUP_INPRODUCTION_BYMONTH"),
  5635. new OracleParameter("attribute", "repeat_interval"),
  5636. new OracleParameter("value", cre.Request.ToString())
  5637. };
  5638. oracleTrConn.ExecStoredProcedure("sys.dbms_scheduler.set_attribute", oracleParameter);
  5639. oracleParameter = new OracleParameter[]
  5640. {
  5641. new OracleParameter("name","BAKUP_INPRODUCTION_BYMONTH")
  5642. };
  5643. if (cre.Properties["Enabled"].ToString() == "1")
  5644. {
  5645. oracleTrConn.ExecStoredProcedure("sys.dbms_scheduler.enable", oracleParameter);
  5646. }
  5647. else
  5648. {
  5649. oracleTrConn.ExecStoredProcedure("sys.dbms_scheduler.disable", oracleParameter);
  5650. }
  5651. if (cre.Properties["DeleteMonthBackup"].ToString() == "1")
  5652. {
  5653. string sqlString = "delete from tp_pm_inproduction_bakbymonth inpb where inpb.backupmonth = trunc(sysdate, 'mm')";
  5654. oracleTrConn.ExecuteNonQuery(sqlString);
  5655. }
  5656. if (cre.Properties["Run"].ToString() == "1")
  5657. {
  5658. // oracleParameter = new OracleParameter[]
  5659. // {
  5660. // new OracleParameter("job_name","BAKUP_INPRODUCTION_BYMONTH"),
  5661. // new OracleParameter("use_current_session", OracleDbType., 0)
  5662. // };
  5663. //oracleTrConn.ExecStoredProcedure("sys.dbms_scheduler.run_job", oracleParameter);
  5664. string sqlString = "begin\n" +
  5665. "sys.dbms_scheduler.run_job('BAKUP_INPRODUCTION_BYMONTH', false);\n" +
  5666. "end;";
  5667. oracleTrConn.ExecuteNonQuery(sqlString);
  5668. }
  5669. oracleTrConn.Commit();
  5670. oracleTrConn.Disconnect();
  5671. return sre;
  5672. }
  5673. catch (Exception ex)
  5674. {
  5675. if (oracleTrConn.ConnState == ConnectionState.Open)
  5676. {
  5677. oracleTrConn.Rollback();
  5678. oracleTrConn.Disconnect();
  5679. }
  5680. throw ex;
  5681. }
  5682. }
  5683. #endregion
  5684. #region 升级履历
  5685. /// <summary>
  5686. /// 升级履历
  5687. /// </summary>
  5688. /// <param name="cre"></param>
  5689. /// <param name="sUserInfo"></param>
  5690. /// <returns></returns>
  5691. public static ServiceResultEntity GetSYS0211(ClientRequestEntity cre, SUserInfo sUserInfo)
  5692. {
  5693. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  5694. try
  5695. {
  5696. ServiceResultEntity sre = new ServiceResultEntity();
  5697. string sqlString = "SELECT ur.version, ur.releasedate, ur.upgradetime, ud.desno, ud.description\n" +
  5698. " FROM t_sys_upgraderecord ur\n" +
  5699. " LEFT JOIN t_sys_upgradedescription ud\n" +
  5700. " ON ud.releaseid = ur.releaseid\n" +
  5701. " WHERE ur.releaseid <> 0\n" +
  5702. " ORDER BY ur.releaseid DESC, ud.desno";
  5703. oracleConn.Open();
  5704. DataSet data = oracleConn.GetSqlResultToDs(sqlString);
  5705. sre.Data = data;
  5706. oracleConn.Close();
  5707. return sre;
  5708. }
  5709. catch (Exception ex)
  5710. {
  5711. if (oracleConn.ConnState == ConnectionState.Open)
  5712. {
  5713. oracleConn.Close();
  5714. }
  5715. throw ex;
  5716. }
  5717. }
  5718. #endregion
  5719. #region 模具标签打印
  5720. /// <summary>
  5721. /// 查询模板一览
  5722. /// </summary>
  5723. /// <param name="cre"></param>
  5724. /// <returns></returns>
  5725. public static ServiceResultEntity GetMouldLablePrintLayoutList(ClientRequestEntity cre, SUserInfo sUserInfo)
  5726. {
  5727. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  5728. try
  5729. {
  5730. oracleConn.Open();
  5731. string sqlString =
  5732. "SELECT t.layoutid\n" +
  5733. " ,t.layoutname\n" +
  5734. " ,t.width\n" +
  5735. " ,t.height\n" +
  5736. " ,gt.goodstypename\n" +
  5737. " ,gt.goodstypecode\n" +
  5738. //" ,decode(t.logoid, null, '', logo.logoname || '[' || logo.logocode || ']') logonamecode\n" +
  5739. " ,t.remarks\n" +
  5740. " ,t.valueflag\n" +
  5741. " FROM tp_mst_MouldLableprintlayout t\n" +
  5742. " LEFT JOIN tp_mst_goodstype gt\n" +
  5743. " ON gt.goodstypeid = t.goodstypeid\n" +
  5744. //" LEFT JOIN tp_mst_Logo logo\n" +
  5745. //" ON logo.logoid = t.logoid\n" +
  5746. " WHERE t.accountid = :accountid\n" +
  5747. " AND (:layoutname IS NULL OR instr(t.layoutname, :layoutname) > 0)\n" +
  5748. " AND (:goodstypecode IS NULL OR\n" +
  5749. " instr(gt.goodstypecode, :goodstypecode) = 1)\n" +
  5750. " AND (:remarks IS NULL OR instr(t.remarks, :remarks) > 0)\n" +
  5751. " AND (:valueflag IS NULL OR t.valueflag = :valueflag)\n" +
  5752. //" AND (:logos IS NULL OR instr(:logos, ','|| t.logoid ||',') > 0)\n" +
  5753. //" ORDER BY gt.goodstypecode, decode(logo.logocode, null, ' ',logo.logocode)";
  5754. " ORDER BY gt.goodstypecode";
  5755. List<OracleParameter> parameters = new List<OracleParameter>();
  5756. parameters.Add(new OracleParameter(":accountid", OracleDbType.Int32, sUserInfo.AccountID, ParameterDirection.Input));
  5757. parameters.Add(new OracleParameter(":layoutname", OracleDbType.NVarchar2, cre.Properties["layoutname"], ParameterDirection.Input));
  5758. parameters.Add(new OracleParameter(":goodstypecode", OracleDbType.NVarchar2, cre.Properties["goodstypecode"], ParameterDirection.Input));
  5759. parameters.Add(new OracleParameter(":remarks", OracleDbType.NVarchar2, cre.Properties["remarks"], ParameterDirection.Input));
  5760. parameters.Add(new OracleParameter(":valueflag", OracleDbType.NVarchar2, cre.Properties["valueflag"], ParameterDirection.Input));
  5761. //parameters.Add(new OracleParameter(":logos", OracleDbType.NVarchar2, cre.Properties["logos"], ParameterDirection.Input));
  5762. DataTable data = oracleConn.GetSqlResultToDt(sqlString, parameters.ToArray());
  5763. ServiceResultEntity sre = new ServiceResultEntity();
  5764. if (data == null || data.Rows.Count == 0)
  5765. {
  5766. sre.Status = Constant.ServiceResultStatus.NoSearchResults;
  5767. return sre;
  5768. }
  5769. sre.Data = new DataSet();
  5770. sre.Data.Tables.Add(data);
  5771. return sre;
  5772. }
  5773. catch (Exception ex)
  5774. {
  5775. throw ex;
  5776. }
  5777. finally
  5778. {
  5779. if (oracleConn != null &&
  5780. oracleConn.ConnState == ConnectionState.Open)
  5781. {
  5782. oracleConn.Close();
  5783. }
  5784. }
  5785. }
  5786. /// <summary>
  5787. /// 验证产品类别是否已存在模板
  5788. /// </summary>
  5789. /// <param name="cre"></param>
  5790. /// <returns></returns>
  5791. public static ServiceResultEntity IsExistMouldLablePrintLayout(ClientRequestEntity cre, SUserInfo sUserInfo)
  5792. {
  5793. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  5794. try
  5795. {
  5796. oracleConn.Open();
  5797. string sqlString =
  5798. "SELECT t.layoutid\n" +
  5799. " FROM tp_mst_MouldLableprintlayout t\n" +
  5800. //" WHERE t.goodstypeid = :goodstypeid\n" +
  5801. " WHERE ((:goodstypeid is null and t.goodstypeid is null) or (t.goodstypeid = :goodstypeid))\n" +
  5802. //" AND ((:logoid is null and t.logoid is null) or (t.logoid = :logoid))\n" +
  5803. " AND (:layoutid is null or :layoutid <> t.layoutid)";
  5804. List<OracleParameter> parameters = new List<OracleParameter>();
  5805. //parameters.Add(new OracleParameter(":accountid", OracleDbType.Int32, sUserInfo.AccountID, ParameterDirection.Input));
  5806. parameters.Add(new OracleParameter(":goodstypeid", OracleDbType.Int32, cre.Properties["GoodsTypeID"], ParameterDirection.Input));
  5807. parameters.Add(new OracleParameter(":layoutid", OracleDbType.Int32, cre.Properties["layoutid"], ParameterDirection.Input));
  5808. //parameters.Add(new OracleParameter(":logoid", OracleDbType.Int32, cre.Properties["LogoID"], ParameterDirection.Input));
  5809. DataTable data = oracleConn.GetSqlResultToDt(sqlString, parameters.ToArray());
  5810. ServiceResultEntity sre = new ServiceResultEntity();
  5811. if (data == null || data.Rows.Count == 0)
  5812. {
  5813. sre.Result = false;
  5814. return sre;
  5815. }
  5816. sre.Result = true;
  5817. return sre;
  5818. }
  5819. catch (Exception ex)
  5820. {
  5821. throw ex;
  5822. }
  5823. finally
  5824. {
  5825. if (oracleConn != null &&
  5826. oracleConn.ConnState == ConnectionState.Open)
  5827. {
  5828. oracleConn.Close();
  5829. }
  5830. }
  5831. }
  5832. /// <summary>
  5833. /// 获取打印项目
  5834. /// </summary>
  5835. /// <param name="cre"></param>
  5836. /// <returns></returns>
  5837. public static ServiceResultEntity GetMouldLablePrintItem(ClientRequestEntity cre, SUserInfo sUserInfo)
  5838. {
  5839. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  5840. try
  5841. {
  5842. oracleConn.Open();
  5843. string sqlString =
  5844. "SELECT s.itemcode\n" +
  5845. " ,s.itemname\n" +
  5846. " ,s.itemsample\n" +
  5847. " ,s.itemstyle\n" +
  5848. " ,s.controlcode\n" +
  5849. " ,s.displayno\n" +
  5850. " FROM tp_sys_MouldLableprintitem s\n" +
  5851. " ORDER BY s.displayno";
  5852. DataSet data = oracleConn.GetSqlResultToDs(sqlString, null);
  5853. ServiceResultEntity sre = new ServiceResultEntity();
  5854. sre.Data = data;
  5855. return sre;
  5856. }
  5857. catch (Exception ex)
  5858. {
  5859. throw ex;
  5860. }
  5861. finally
  5862. {
  5863. if (oracleConn != null &&
  5864. oracleConn.ConnState == ConnectionState.Open)
  5865. {
  5866. oracleConn.Close();
  5867. }
  5868. }
  5869. }
  5870. /// <summary>
  5871. /// 查询打印模板
  5872. /// </summary>
  5873. /// <param name="cre"></param>
  5874. /// <returns></returns>
  5875. public static ServiceResultEntity GetMouldLablePrintLayout(ClientRequestEntity cre, SUserInfo sUserInfo)
  5876. {
  5877. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  5878. try
  5879. {
  5880. oracleConn.Open();
  5881. string sqlString =
  5882. "SELECT t.layoutid\n" +
  5883. " ,t.layoutname\n" +
  5884. " ,t.layoutdata\n" +
  5885. " ,t.goodstypeid\n" +
  5886. " ,gt.goodstypecode\n" +
  5887. " ,gt.goodstypename\n" +
  5888. //" ,t.logoid\n" +
  5889. //" ,decode(t.logoid, null, '', logo.logoname || '[' || logo.logocode || ']') logoName\n" +
  5890. //" ,logo.logoName || '[' || logo.logocode || ']' logoName\n" +
  5891. " ,t.width\n" +
  5892. " ,t.height\n" +
  5893. " ,t.remarks\n" +
  5894. " FROM tp_mst_MouldLableprintlayout t\n" +
  5895. " LEFT JOIN tp_mst_goodstype gt\n" +
  5896. " ON gt.goodstypeid = t.goodstypeid\n" +
  5897. //" LEFT JOIN tp_mst_logo logo\n" +
  5898. //" ON logo.logoid = t.logoid\n" +
  5899. " WHERE t.layoutid = :layoutid";
  5900. List<OracleParameter> parameters = new List<OracleParameter>();
  5901. parameters.Add(new OracleParameter(":layoutid", OracleDbType.Int32, cre.Properties["LayoutID"], ParameterDirection.Input));
  5902. DataTable data = oracleConn.GetSqlResultToDt(sqlString, parameters.ToArray());
  5903. ServiceResultEntity sre = new ServiceResultEntity();
  5904. sre.Data = new DataSet();
  5905. sre.Data.Tables.Add(data);
  5906. string sqlString1 =
  5907. "SELECT t.layoutid\n" +
  5908. " ,t.layoutitemid\n" +
  5909. " ,t.itemcode\n" +
  5910. " ,s.itemname\n" +
  5911. " ,s.itemsample\n" +
  5912. " ,s.itemstyle\n" +
  5913. " ,s.controlcode\n" +
  5914. " FROM tp_mst_MouldLableprintitem t\n" +
  5915. " INNER JOIN tp_sys_MouldLableprintitem s\n" +
  5916. " ON s.itemcode = t.itemcode\n" +
  5917. " WHERE t.layoutid = :layoutid";
  5918. DataTable data1 = oracleConn.GetSqlResultToDt(sqlString1, parameters.ToArray());
  5919. sre.Data.Tables.Add(data1);
  5920. return sre;
  5921. }
  5922. catch (Exception ex)
  5923. {
  5924. throw ex;
  5925. }
  5926. finally
  5927. {
  5928. if (oracleConn != null &&
  5929. oracleConn.ConnState == ConnectionState.Open)
  5930. {
  5931. oracleConn.Close();
  5932. }
  5933. }
  5934. }
  5935. /// <summary>
  5936. /// 新建打印模板
  5937. /// </summary>
  5938. /// <param name="cre"></param>
  5939. /// <returns></returns>
  5940. public static ServiceResultEntity SaveAddMouldLablePrintLayoutData(ClientRequestEntity cre, SUserInfo sUserInfo)
  5941. {
  5942. IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
  5943. try
  5944. {
  5945. oracleTrConn.Connect();
  5946. DataRow layoutdata = cre.Data.Tables[0].Rows[0];
  5947. string sqlid = "select SEQ_MST_MouldLblPRINTLAYOUT_ID.Nextval from dual";
  5948. int layoutID = Convert.ToInt32(oracleTrConn.GetSqlResultToObj(sqlid));
  5949. ServiceResultEntity sre = new ServiceResultEntity();
  5950. sre.Result = layoutID;
  5951. string sqlString = "INSERT INTO TP_MST_MouldLablePRINTLAYOUT\n" +
  5952. " (LAYOUTID\n" +
  5953. " ,LAYOUTNAME\n" +
  5954. " ,LAYOUTDATA\n" +
  5955. " ,GOODSTYPEID\n" +
  5956. " ,GOODSTYPECODE\n" +
  5957. //" ,LOGOID\n" +
  5958. " ,WIDTH\n" +
  5959. " ,HEIGHT\n" +
  5960. " ,REMARKS\n" +
  5961. " ,ACCOUNTID\n" +
  5962. " ,CREATEUSERID\n" +
  5963. " ,UPDATEUSERID)\n" +
  5964. "VALUES\n" +
  5965. " (:LAYOUTID\n" +
  5966. " ,:LAYOUTNAME\n" +
  5967. " ,:LAYOUTDATA\n" +
  5968. " ,:GOODSTYPEID\n" +
  5969. " ,:GOODSTYPECODE\n" +
  5970. //" ,:LOGOID\n" +
  5971. " ,:WIDTH\n" +
  5972. " ,:HEIGHT\n" +
  5973. " ,:REMARKS\n" +
  5974. " ,:ACCOUNTID\n" +
  5975. " ,:CREATEUSERID\n" +
  5976. " ,:CREATEUSERID)";
  5977. List<OracleParameter> parameters = new List<OracleParameter>();
  5978. parameters.Add(new OracleParameter(":LAYOUTID", OracleDbType.Int32, layoutID, ParameterDirection.Input));
  5979. parameters.Add(new OracleParameter(":LAYOUTNAME", OracleDbType.NVarchar2, layoutdata["LAYOUTNAME"], ParameterDirection.Input));
  5980. parameters.Add(new OracleParameter(":LAYOUTDATA", OracleDbType.Blob, layoutdata["LAYOUTDATA"], ParameterDirection.Input));
  5981. parameters.Add(new OracleParameter(":GOODSTYPEID", OracleDbType.Int32, layoutdata["GOODSTYPEID"], ParameterDirection.Input));
  5982. parameters.Add(new OracleParameter(":GOODSTYPECODE", OracleDbType.NVarchar2, layoutdata["GOODSTYPECODE"], ParameterDirection.Input));
  5983. //parameters.Add(new OracleParameter(":LOGOID", OracleDbType.Int32, layoutdata["LOGOID"], ParameterDirection.Input));
  5984. parameters.Add(new OracleParameter(":WIDTH", OracleDbType.Int32, layoutdata["WIDTH"], ParameterDirection.Input));
  5985. parameters.Add(new OracleParameter(":HEIGHT", OracleDbType.Int32, layoutdata["HEIGHT"], ParameterDirection.Input));
  5986. parameters.Add(new OracleParameter(":REMARKS", OracleDbType.NVarchar2, layoutdata["REMARKS"], ParameterDirection.Input));
  5987. parameters.Add(new OracleParameter(":ACCOUNTID", OracleDbType.Int32, sUserInfo.AccountID, ParameterDirection.Input));
  5988. parameters.Add(new OracleParameter(":CREATEUSERID", OracleDbType.Int32, sUserInfo.UserID, ParameterDirection.Input));
  5989. int result = oracleTrConn.ExecuteNonQuery(sqlString, parameters.ToArray());
  5990. if (result == 0)
  5991. {
  5992. sre.Status = Constant.ServiceResultStatus.NoModifyData;
  5993. return sre;
  5994. }
  5995. // 插入新的项目明细
  5996. foreach (DataRow dataRow in cre.Data.Tables[1].Rows)
  5997. {
  5998. if (dataRow.RowState == DataRowState.Deleted ||
  5999. dataRow.RowState == DataRowState.Detached)
  6000. {
  6001. continue;
  6002. }
  6003. sqlString = "INSERT INTO TP_MST_MouldLablePRINTITEM"
  6004. + "(LayoutID"
  6005. + ",LayoutItemID"
  6006. + ",ItemCode"
  6007. + ")"
  6008. + "VALUES"
  6009. + " (:LayoutID"
  6010. + ",:layoutItemID"
  6011. + ",:ItemCode"
  6012. + ")";
  6013. parameters.Clear();
  6014. parameters.Add(new OracleParameter(":LayoutID", OracleDbType.Int32, layoutID, ParameterDirection.Input));
  6015. parameters.Add(new OracleParameter(":layoutItemID", OracleDbType.Int32, dataRow["layoutItemID"], ParameterDirection.Input));
  6016. parameters.Add(new OracleParameter(":ItemCode", OracleDbType.NVarchar2, dataRow["ItemCode"], ParameterDirection.Input));
  6017. oracleTrConn.ExecuteNonQuery(sqlString, parameters.ToArray());
  6018. }
  6019. oracleTrConn.Commit();
  6020. return sre;
  6021. }
  6022. catch (Exception ex)
  6023. {
  6024. if (oracleTrConn != null &&
  6025. oracleTrConn.ConnState == ConnectionState.Open)
  6026. {
  6027. oracleTrConn.Rollback();
  6028. }
  6029. throw ex;
  6030. }
  6031. finally
  6032. {
  6033. if (oracleTrConn != null &&
  6034. oracleTrConn.ConnState == ConnectionState.Open)
  6035. {
  6036. oracleTrConn.Disconnect();
  6037. }
  6038. }
  6039. }
  6040. /// <summary>
  6041. /// 编辑打印模板
  6042. /// </summary>
  6043. /// <param name="cre"></param>
  6044. /// <returns></returns>
  6045. public static ServiceResultEntity SaveEditMouldLablePrintLayoutData(ClientRequestEntity cre, SUserInfo sUserInfo)
  6046. {
  6047. IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
  6048. try
  6049. {
  6050. oracleTrConn.Connect();
  6051. DataRow layoutdata = cre.Data.Tables[0].Rows[0];
  6052. ServiceResultEntity sre = new ServiceResultEntity();
  6053. string sqlString = "UPDATE TP_MST_MouldLablePRINTLAYOUT t\n" +
  6054. " SET t.LAYOUTDATA = :LAYOUTDATA, t.WIDTH = :WIDTH, t.HEIGHT = :HEIGHT, t.UPDATEUSERID=:UPDATEUSERID\n" +
  6055. " WHERE t.LAYOUTID = :LAYOUTID";
  6056. List<OracleParameter> parameters = new List<OracleParameter>();
  6057. parameters.Add(new OracleParameter(":LAYOUTDATA", OracleDbType.Blob, layoutdata["LAYOUTDATA"], ParameterDirection.Input));
  6058. parameters.Add(new OracleParameter(":WIDTH", OracleDbType.Int32, layoutdata["WIDTH"], ParameterDirection.Input));
  6059. parameters.Add(new OracleParameter(":HEIGHT", OracleDbType.Int32, layoutdata["HEIGHT"], ParameterDirection.Input));
  6060. parameters.Add(new OracleParameter(":LAYOUTID", OracleDbType.Int32, layoutdata["LAYOUTID"], ParameterDirection.Input));
  6061. parameters.Add(new OracleParameter(":UPDATEUSERID", OracleDbType.Int32, sUserInfo.UserID, ParameterDirection.Input));
  6062. int result = oracleTrConn.ExecuteNonQuery(sqlString, parameters.ToArray());
  6063. if (result == 0)
  6064. {
  6065. sre.Status = Constant.ServiceResultStatus.NoModifyData;
  6066. return sre;
  6067. }
  6068. sre.Result = result;
  6069. sqlString = "DELETE FROM TP_MST_MouldLablePRINTITEM WHERE LAYOUTID = :LAYOUTID";
  6070. parameters.Clear();
  6071. parameters.Add(new OracleParameter(":LAYOUTID", OracleDbType.Int32, layoutdata["LAYOUTID"], ParameterDirection.Input));
  6072. oracleTrConn.ExecuteNonQuery(sqlString, parameters.ToArray());
  6073. // 插入新的项目明细
  6074. foreach (DataRow dataRow in cre.Data.Tables[1].Rows)
  6075. {
  6076. if (dataRow.RowState == DataRowState.Deleted ||
  6077. dataRow.RowState == DataRowState.Detached)
  6078. {
  6079. continue;
  6080. }
  6081. sqlString = "INSERT INTO TP_MST_MouldLablePRINTITEM"
  6082. + "(LayoutID"
  6083. + ",LayoutItemID"
  6084. + ",ItemCode"
  6085. + ")"
  6086. + "VALUES"
  6087. + " (:LayoutID"
  6088. + ",:layoutItemID"
  6089. + ",:ItemCode"
  6090. + ")";
  6091. parameters.Clear();
  6092. parameters.Add(new OracleParameter(":LayoutID", OracleDbType.Int32, layoutdata["LAYOUTID"], ParameterDirection.Input));
  6093. parameters.Add(new OracleParameter(":layoutItemID", OracleDbType.Int32, dataRow["layoutItemID"], ParameterDirection.Input));
  6094. parameters.Add(new OracleParameter(":ItemCode", OracleDbType.NVarchar2, dataRow["ItemCode"], ParameterDirection.Input));
  6095. oracleTrConn.ExecuteNonQuery(sqlString, parameters.ToArray());
  6096. }
  6097. oracleTrConn.Commit();
  6098. return sre;
  6099. }
  6100. catch (Exception ex)
  6101. {
  6102. if (oracleTrConn != null &&
  6103. oracleTrConn.ConnState == ConnectionState.Open)
  6104. {
  6105. oracleTrConn.Rollback();
  6106. }
  6107. throw ex;
  6108. }
  6109. finally
  6110. {
  6111. if (oracleTrConn != null &&
  6112. oracleTrConn.ConnState == ConnectionState.Open)
  6113. {
  6114. oracleTrConn.Disconnect();
  6115. }
  6116. }
  6117. }
  6118. /// <summary>
  6119. /// 查询打印模板信息
  6120. /// </summary>
  6121. /// <param name="cre"></param>
  6122. /// <returns></returns>
  6123. public static ServiceResultEntity GetMouldLablePrintLayoutInfo(ClientRequestEntity cre, SUserInfo sUserInfo)
  6124. {
  6125. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  6126. try
  6127. {
  6128. oracleConn.Open();
  6129. string sqlString =
  6130. "SELECT t.layoutid\n" +
  6131. " ,t.layoutname\n" +
  6132. " ,t.valueflag\n" +
  6133. " ,t.goodstypeid\n" +
  6134. " ,gt.goodstypecode\n" +
  6135. " ,gt.goodstypename\n" +
  6136. //" ,t.logoid\n" +
  6137. //" ,decode(t.logoid, null, '', logo.logoname || '[' || logo.logocode || ']') logoNameCode\n" +
  6138. //" ,logo.logoName || '[' || logo.logocode || ']' logoNameCode\n" +
  6139. " ,t.remarks\n" +
  6140. " FROM tp_mst_MouldLableprintlayout t\n" +
  6141. " LEFT JOIN tp_mst_goodstype gt\n" +
  6142. " ON gt.goodstypeid = t.goodstypeid\n" +
  6143. //" LEFT JOIN tp_mst_Logo logo\n" +
  6144. //" ON logo.logoid = t.logoid\n" +
  6145. " WHERE t.layoutid = :layoutid";
  6146. List<OracleParameter> parameters = new List<OracleParameter>();
  6147. parameters.Add(new OracleParameter(":layoutid", OracleDbType.Int32, cre.Properties["LayoutID"], ParameterDirection.Input));
  6148. DataTable data = oracleConn.GetSqlResultToDt(sqlString, parameters.ToArray());
  6149. ServiceResultEntity sre = new ServiceResultEntity();
  6150. sre.Data = new DataSet();
  6151. sre.Data.Tables.Add(data);
  6152. return sre;
  6153. }
  6154. catch (Exception ex)
  6155. {
  6156. throw ex;
  6157. }
  6158. finally
  6159. {
  6160. if (oracleConn != null &&
  6161. oracleConn.ConnState == ConnectionState.Open)
  6162. {
  6163. oracleConn.Close();
  6164. }
  6165. }
  6166. }
  6167. /// <summary>
  6168. /// 编辑打印模板信息
  6169. /// </summary>
  6170. /// <param name="cre"></param>
  6171. /// <returns></returns>
  6172. public static ServiceResultEntity SaveEditMouldLablePrintLayoutInfo(ClientRequestEntity cre, SUserInfo sUserInfo)
  6173. {
  6174. IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
  6175. try
  6176. {
  6177. oracleTrConn.Connect();
  6178. //DataRow layoutdata = cre.Data.Tables[0].Rows[0];
  6179. ServiceResultEntity sre = new ServiceResultEntity();
  6180. string sqlString = "UPDATE TP_MST_MouldLablePRINTLAYOUT t\n" +
  6181. " SET t.LAYOUTNAME = :LAYOUTNAME, t.GOODSTYPEID = :GOODSTYPEID, t.GOODSTYPECODE = :GOODSTYPECODE\n" +
  6182. " ,t.REMARKS = :REMARKS, t.Valueflag = :Valueflag, t.UPDATEUSERID=:UPDATEUSERID\n" +
  6183. //" ,t.LogoID = :LogoID\n" +
  6184. " WHERE t.LAYOUTID = :LAYOUTID";
  6185. List<OracleParameter> parameters = new List<OracleParameter>();
  6186. parameters.Add(new OracleParameter(":LAYOUTID", OracleDbType.Int32, cre.Properties["LayoutID"], ParameterDirection.Input));
  6187. parameters.Add(new OracleParameter(":LAYOUTNAME", OracleDbType.NVarchar2, cre.Properties["LayoutName"], ParameterDirection.Input));
  6188. parameters.Add(new OracleParameter(":GOODSTYPEID", OracleDbType.Int32, cre.Properties["GoodsTypeID"], ParameterDirection.Input));
  6189. parameters.Add(new OracleParameter(":GOODSTYPECODE", OracleDbType.NVarchar2, cre.Properties["GoodsTypeCode"], ParameterDirection.Input));
  6190. parameters.Add(new OracleParameter(":REMARKS", OracleDbType.NVarchar2, cre.Properties["Remarks"], ParameterDirection.Input));
  6191. parameters.Add(new OracleParameter(":Valueflag", OracleDbType.NVarchar2, cre.Properties["ValueFlag"], ParameterDirection.Input));
  6192. parameters.Add(new OracleParameter(":UPDATEUSERID", OracleDbType.Int32, sUserInfo.UserID, ParameterDirection.Input));
  6193. //parameters.Add(new OracleParameter(":LogoID", OracleDbType.Int32, cre.Properties["LogoID"], ParameterDirection.Input));
  6194. int result = oracleTrConn.ExecuteNonQuery(sqlString, parameters.ToArray());
  6195. if (result == 0)
  6196. {
  6197. sre.Status = Constant.ServiceResultStatus.NoModifyData;
  6198. return sre;
  6199. }
  6200. oracleTrConn.Commit();
  6201. return sre;
  6202. }
  6203. catch (Exception ex)
  6204. {
  6205. if (oracleTrConn != null &&
  6206. oracleTrConn.ConnState == ConnectionState.Open)
  6207. {
  6208. oracleTrConn.Rollback();
  6209. }
  6210. throw ex;
  6211. }
  6212. finally
  6213. {
  6214. if (oracleTrConn != null &&
  6215. oracleTrConn.ConnState == ConnectionState.Open)
  6216. {
  6217. oracleTrConn.Disconnect();
  6218. }
  6219. }
  6220. }
  6221. /// <summary>
  6222. /// 删除条码打印模板
  6223. /// </summary>
  6224. /// <param name="cre"></param>
  6225. /// <returns></returns>
  6226. public static ServiceResultEntity DeleteMouldLablePrintLayout(ClientRequestEntity cre, SUserInfo sUserInfo)
  6227. {
  6228. IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
  6229. try
  6230. {
  6231. oracleTrConn.Connect();
  6232. ServiceResultEntity sre = new ServiceResultEntity();
  6233. string sqlString = "DELETE FROM TP_MST_MouldLablePrintItem t\n" +
  6234. " WHERE t.LAYOUTID = :LAYOUTID";
  6235. string sqlString1 = "DELETE FROM TP_MST_MouldLablePRINTLAYOUT t\n" +
  6236. " WHERE t.LAYOUTID = :LAYOUTID";
  6237. List<OracleParameter> parameters = new List<OracleParameter>();
  6238. parameters.Add(new OracleParameter(":LAYOUTID", OracleDbType.Int32, cre.Properties["LayoutID"], ParameterDirection.Input));
  6239. // 删除明细
  6240. int result = oracleTrConn.ExecuteNonQuery(sqlString, parameters.ToArray());
  6241. // 删除总单
  6242. result = oracleTrConn.ExecuteNonQuery(sqlString1, parameters.ToArray());
  6243. if (result == 0)
  6244. {
  6245. sre.Status = Constant.ServiceResultStatus.NoModifyData;
  6246. return sre;
  6247. }
  6248. oracleTrConn.Commit();
  6249. return sre;
  6250. }
  6251. catch (Exception ex)
  6252. {
  6253. if (oracleTrConn != null &&
  6254. oracleTrConn.ConnState == ConnectionState.Open)
  6255. {
  6256. oracleTrConn.Rollback();
  6257. }
  6258. throw ex;
  6259. }
  6260. finally
  6261. {
  6262. if (oracleTrConn != null &&
  6263. oracleTrConn.ConnState == ConnectionState.Open)
  6264. {
  6265. oracleTrConn.Disconnect();
  6266. }
  6267. }
  6268. }
  6269. /// <summary>
  6270. /// 获取条码打印信息(模板,数据)
  6271. /// </summary>
  6272. /// <param name="cre"></param>
  6273. /// <returns></returns>
  6274. public static ServiceResultEntity GetMouldLablePrintDATA(ClientRequestEntity cre, SUserInfo sUserInfo)
  6275. {
  6276. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  6277. try
  6278. {
  6279. oracleConn.Open();
  6280. string barcode = cre.Properties["Barcode"].ToString();
  6281. //bool isGBarcode = (bool)cre.Properties["IsGBarcode"];
  6282. //if (!isGBarcode)
  6283. //{
  6284. // string sqlString = @"select FUN_CMN_GetBarCode(:barcode,null,:accountid) From DUAL";
  6285. // OracleParameter[] paras1 = new OracleParameter[]{
  6286. // new OracleParameter(":barcode",OracleDbType.Varchar2, barcode,ParameterDirection.Input),
  6287. // new OracleParameter(":accountid",OracleDbType.Int32, sUserInfo.AccountID,ParameterDirection.Input),
  6288. // };
  6289. // barcode = oracleConn.GetSqlResultToStr(sqlString, paras1);
  6290. //}
  6291. ServiceResultEntity sre = new ServiceResultEntity();
  6292. List<OracleParameter> parameters = new List<OracleParameter>();
  6293. parameters.Add(new OracleParameter("in_Barcode", OracleDbType.NVarchar2, barcode, ParameterDirection.Input));
  6294. parameters.Add(new OracleParameter("in_AccountID", OracleDbType.Int32, sUserInfo.AccountID, ParameterDirection.Input));
  6295. //parameters.Add(new OracleParameter("in_UserID", OracleDbType.Int32, sUserInfo.UserID, ParameterDirection.Input));
  6296. parameters.Add(new OracleParameter("out_Status", OracleDbType.Int32, ParameterDirection.Output));
  6297. parameters.Add(new OracleParameter("out_Message", OracleDbType.NVarchar2, 2000, null, ParameterDirection.Output));
  6298. parameters.Add(new OracleParameter("out_LayoutData", OracleDbType.RefCursor, ParameterDirection.Output));
  6299. parameters.Add(new OracleParameter("out_PrintData", OracleDbType.RefCursor, ParameterDirection.Output));
  6300. DataSet data = oracleConn.ExecStoredProcedure("PRO_PM_GETMouldLablePrintDATA", parameters.ToArray());
  6301. int status = Convert.ToInt32(parameters[2].Value.ToString());
  6302. if (status < 0)
  6303. {
  6304. sre.Status = Constant.ServiceResultStatus.Other;
  6305. sre.Message = parameters[3].Value.ToString();
  6306. }
  6307. sre.Data = data;
  6308. return sre;
  6309. }
  6310. catch (Exception ex)
  6311. {
  6312. throw ex;
  6313. }
  6314. finally
  6315. {
  6316. if (oracleConn != null &&
  6317. oracleConn.ConnState == ConnectionState.Open)
  6318. {
  6319. oracleConn.Close();
  6320. }
  6321. }
  6322. }
  6323. /// <summary>
  6324. /// 记录条码打印日志
  6325. /// </summary>
  6326. /// <param name="cre"></param>
  6327. /// <returns></returns>
  6328. public static ServiceResultEntity SetMouldLablePrintLog(ClientRequestEntity cre, SUserInfo sUserInfo)
  6329. {
  6330. IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
  6331. try
  6332. {
  6333. oracleTrConn.Connect();
  6334. ServiceResultEntity sre = new ServiceResultEntity();
  6335. string sqlString = "INSERT INTO TP_MST_MouldLablePrintLog\n" +
  6336. " (BARCODE, LAYOUTID, ACCOUNTID, CREATEUSERID)\n" +
  6337. "VALUES\n" +
  6338. " (:BARCODE, :LAYOUTID, :ACCOUNTID, :CREATEUSERID)";
  6339. List<OracleParameter> parameters = new List<OracleParameter>();
  6340. parameters.Add(new OracleParameter(":BARCODE", OracleDbType.NVarchar2, cre.Properties["Barcode"], ParameterDirection.Input));
  6341. parameters.Add(new OracleParameter(":LAYOUTID", OracleDbType.Int32, cre.Properties["LayoutID"], ParameterDirection.Input));
  6342. parameters.Add(new OracleParameter(":ACCOUNTID", OracleDbType.Int32, sUserInfo.AccountID, ParameterDirection.Input));
  6343. parameters.Add(new OracleParameter(":CREATEUSERID", OracleDbType.Int32, sUserInfo.UserID, ParameterDirection.Input));
  6344. int result = oracleTrConn.ExecuteNonQuery(sqlString, parameters.ToArray());
  6345. if (result == 0)
  6346. {
  6347. sre.Status = Constant.ServiceResultStatus.NoModifyData;
  6348. return sre;
  6349. }
  6350. oracleTrConn.Commit();
  6351. return sre;
  6352. }
  6353. catch (Exception ex)
  6354. {
  6355. if (oracleTrConn != null &&
  6356. oracleTrConn.ConnState == ConnectionState.Open)
  6357. {
  6358. oracleTrConn.Rollback();
  6359. }
  6360. throw ex;
  6361. }
  6362. finally
  6363. {
  6364. if (oracleTrConn != null &&
  6365. oracleTrConn.ConnState == ConnectionState.Open)
  6366. {
  6367. oracleTrConn.Disconnect();
  6368. }
  6369. }
  6370. }
  6371. #endregion
  6372. #region 成型破损
  6373. /// <summary>
  6374. /// 获取成型破损原因左侧树的数据
  6375. /// </summary>
  6376. /// <returns>DataSet</returns>
  6377. /// <remarks>
  6378. /// 2018.03.26 周兴 新建
  6379. /// </remarks>
  6380. public static ServiceResultEntity GetScrapReasonData(ClientRequestEntity cre, SUserInfo sUserInfo, string valueFlag = null)
  6381. {
  6382. ServiceResultEntity result = new ServiceResultEntity();
  6383. DataSet returnData = new DataSet();
  6384. try
  6385. {
  6386. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  6387. try
  6388. {
  6389. oracleConn.Open();
  6390. DataTable returnTable;
  6391. if (valueFlag == null)
  6392. {
  6393. string sqlString = "SELECT ScrapReasonID,ScrapReason,DisplayNo,ScrapType,Remarks,ValueFlag FROM TP_MST_ScrapReason "
  6394. + " WHERE AccountID = :AccountID Order By DisplayNo";
  6395. OracleParameter[] oracleParameter = new OracleParameter[]
  6396. {
  6397. new OracleParameter(":AccountID",sUserInfo.AccountID)
  6398. };
  6399. returnTable = oracleConn.GetSqlResultToDt(sqlString, oracleParameter);
  6400. }
  6401. else
  6402. {
  6403. string sqlString = "SELECT ScrapReasonID,ScrapReason,DisplayNo,ScrapType,Remarks,ValueFlag FROM TP_MST_ScrapReason "
  6404. + " WHERE AccountID = :AccountID and valueflag = :valueflag Order By DisplayNo";
  6405. OracleParameter[] oracleParameter = new OracleParameter[]
  6406. {
  6407. new OracleParameter(":AccountID",sUserInfo.AccountID),
  6408. new OracleParameter(":valueflag",valueFlag)
  6409. };
  6410. returnTable = oracleConn.GetSqlResultToDt(sqlString, oracleParameter);
  6411. }
  6412. returnTable.TableName = "TP_MST_ScrapReason";
  6413. oracleConn.Close();
  6414. returnData.Tables.Add(returnTable);
  6415. result.Data = returnData;
  6416. return result;
  6417. }
  6418. catch (Exception ex)
  6419. {
  6420. if (oracleConn.ConnState == ConnectionState.Open)
  6421. {
  6422. oracleConn.Close();
  6423. }
  6424. throw ex;
  6425. }
  6426. }
  6427. catch (Exception ex)
  6428. {
  6429. throw ex;
  6430. }
  6431. }
  6432. #endregion
  6433. #region 3#条码打印机(PDA用)
  6434. #region 配置3#条码打印机
  6435. /// <summary>
  6436. /// 获取3#条码打印机配置(PDA用)
  6437. /// </summary>
  6438. /// <param name="cre"></param>
  6439. /// <param name="sUserInfo"></param>
  6440. /// <returns></returns>
  6441. public static ServiceResultEntity GetWorkStationPrinter3(SUserInfo sUserInfo)
  6442. {
  6443. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  6444. try
  6445. {
  6446. ServiceResultEntity sre = new ServiceResultEntity();
  6447. sre.Data = new DataSet();
  6448. DataTable dtReturnData = null;
  6449. OracleParameter[] paras = null;
  6450. string sqlString = string.Empty;
  6451. oracleConn.Open();
  6452. #region 获取工位信息
  6453. sqlString = "SELECT ws.workstationid\n" +
  6454. " ,ws.workstationname\n" +
  6455. " FROM tp_mst_workstation ws\n" +
  6456. " WHERE ws.valueflag = '1'\n" +
  6457. " AND ws.workstationtypeid = 3161\n" +
  6458. " AND ws.accountid = :accountid\n" +
  6459. " ORDER BY ws.displayno";
  6460. paras = new OracleParameter[] { new OracleParameter(":accountid", sUserInfo.AccountID) };
  6461. dtReturnData = oracleConn.GetSqlResultToDt(sqlString, paras);
  6462. dtReturnData.TableName = "WorkStation";
  6463. sre.Data.Tables.Add(dtReturnData);
  6464. #endregion
  6465. #region 获取服务码打印机
  6466. sqlString = "SELECT bp.printerid\n" +
  6467. " ,bp.printername\n" +
  6468. " FROM tp_mst_barcodeprinter bp\n" +
  6469. " WHERE bp.valueflag = '1'\n" +
  6470. " AND bp.printtype = 3\n" +
  6471. " AND bp.accountid = :accountid\n" +
  6472. " ORDER BY bp.displayno";
  6473. dtReturnData = oracleConn.GetSqlResultToDt(sqlString, paras);
  6474. dtReturnData.TableName = "ServerPrinter";
  6475. sre.Data.Tables.Add(dtReturnData);
  6476. #endregion
  6477. #region 获取外箱码打印机
  6478. sqlString = "SELECT bp.printerid\n" +
  6479. " ,bp.printername\n" +
  6480. " FROM tp_mst_barcodeprinter bp\n" +
  6481. " WHERE bp.valueflag = '1'\n" +
  6482. " AND bp.printtype = 2\n" +
  6483. " AND bp.accountid = :accountid\n" +
  6484. " ORDER BY bp.displayno";
  6485. // 外箱码打印机1
  6486. dtReturnData = oracleConn.GetSqlResultToDt(sqlString, paras);
  6487. dtReturnData.TableName = "PackingPrinter1";
  6488. sre.Data.Tables.Add(dtReturnData);
  6489. // 外箱码打印机2
  6490. dtReturnData = dtReturnData.Copy();
  6491. dtReturnData.TableName = "PackingPrinter2";
  6492. sre.Data.Tables.Add(dtReturnData);
  6493. #endregion
  6494. #region 获取工位打印机关联表
  6495. sqlString = "SELECT wsp.workstationid\n" +
  6496. " ,wsp.printerstation\n" +
  6497. " ,wsp.printerid\n" +
  6498. " FROM tp_mst_workstationprinter wsp\n" +
  6499. " WHERE wsp.valueflag = '1'\n" +
  6500. " AND wsp.accountid = :accountid\n" +
  6501. " ORDER BY wsp.workstationid\n" +
  6502. " ,wsp.printerstation";
  6503. paras = new OracleParameter[] { new OracleParameter(":accountid", sUserInfo.AccountID) };
  6504. dtReturnData = oracleConn.GetSqlResultToDt(sqlString, paras);
  6505. dtReturnData.TableName = "WorkStationPrinter";
  6506. sre.Data.Tables.Add(dtReturnData);
  6507. #endregion
  6508. oracleConn.Close();
  6509. return sre;
  6510. }
  6511. catch (Exception ex)
  6512. {
  6513. if (oracleConn.ConnState == ConnectionState.Open)
  6514. {
  6515. oracleConn.Close();
  6516. }
  6517. throw ex;
  6518. }
  6519. }
  6520. /// <summary>
  6521. /// 保存3#条码打印机配置(PDA用)
  6522. /// </summary>
  6523. /// <param name="cre"></param>
  6524. /// <param name="sUserInfo"></param>
  6525. /// <returns></returns>
  6526. public static ServiceResultEntity SaveWorkStationPrinter3(ClientRequestEntity cre, SUserInfo sUserInfo)
  6527. {
  6528. IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
  6529. try
  6530. {
  6531. ServiceResultEntity sre = new ServiceResultEntity();
  6532. int workStationID = Convert.ToInt32(cre.Properties["WorkStationID"]);
  6533. int PrinterID1 = Convert.ToInt32(cre.Properties["PrinterID1"]);
  6534. int PrinterID2 = Convert.ToInt32(cre.Properties["PrinterID2"]);
  6535. int PrinterID3 = Convert.ToInt32(cre.Properties["PrinterID3"]);
  6536. string sqlString = string.Empty;
  6537. string message = string.Empty;
  6538. OracleParameter[] paras = null;
  6539. object isExists = null;
  6540. oracleTrConn.Connect();
  6541. #region 校验
  6542. if (PrinterID1 == PrinterID2 || PrinterID1 == PrinterID3 || PrinterID2 == PrinterID3)
  6543. {
  6544. sre.Message = "不同位置的打印机不能相同,请重新确认。";
  6545. sre.OtherStatus = Constant.INT_IS_NEGATIE_ONE;
  6546. return sre;
  6547. }
  6548. sqlString = "SELECT bp.printername\n" +
  6549. " FROM tp_mst_workstationprinter wsp\n" +
  6550. " LEFT JOIN tp_mst_barcodeprinter bp\n" +
  6551. " ON bp.printerid = wsp.printerid\n" +
  6552. " WHERE bp.printerid = :printerid\n" +
  6553. " AND EXISTS (SELECT 1\n" +
  6554. " FROM tp_mst_workstationprinter wsp\n" +
  6555. " WHERE wsp.printerid = bp.printerid\n" +
  6556. " AND wsp.valueflag = '1'\n" +
  6557. " AND wsp.accountid = :accountid\n" +
  6558. " AND wsp.workstationid <> :workstationid)";
  6559. paras = new OracleParameter[]
  6560. {
  6561. new OracleParameter(":printerid", PrinterID1),
  6562. new OracleParameter(":accountid", sUserInfo.AccountID),
  6563. new OracleParameter(":workstationid", workStationID)
  6564. };
  6565. isExists = oracleTrConn.GetSqlResultToObj(sqlString, paras);
  6566. if (isExists != null)
  6567. {
  6568. message += isExists;
  6569. }
  6570. paras = new OracleParameter[]
  6571. {
  6572. new OracleParameter(":printerid", PrinterID2),
  6573. new OracleParameter(":accountid", sUserInfo.AccountID),
  6574. new OracleParameter(":workstationid", workStationID)
  6575. };
  6576. isExists = oracleTrConn.GetSqlResultToObj(sqlString, paras);
  6577. if (isExists != null)
  6578. {
  6579. message += "," + isExists;
  6580. }
  6581. paras = new OracleParameter[]
  6582. {
  6583. new OracleParameter(":printerid", PrinterID3),
  6584. new OracleParameter(":accountid", sUserInfo.AccountID),
  6585. new OracleParameter(":workstationid", workStationID)
  6586. };
  6587. isExists = oracleTrConn.GetSqlResultToObj(sqlString, paras);
  6588. if (isExists != null)
  6589. {
  6590. message += "," + isExists;
  6591. }
  6592. if (!string.IsNullOrEmpty(message))
  6593. {
  6594. sre.Message = "【" + message + "】:已被别的工位使用,请重新确认。";
  6595. sre.OtherStatus = Constant.INT_IS_NEGATIE_ONE;
  6596. return sre;
  6597. }
  6598. #endregion
  6599. #region 删除原工位打印机关系
  6600. sqlString = "DELETE FROM tp_mst_workstationprinter wsp\n" +
  6601. " WHERE wsp.workstationid = :workstationid";
  6602. paras = new OracleParameter[] { new OracleParameter(":workstationid", workStationID) };
  6603. sre.OtherStatus += oracleTrConn.ExecuteNonQuery(sqlString, paras);
  6604. #endregion
  6605. #region 新建工位打印机关系
  6606. sqlString = "INSERT INTO tp_mst_workstationprinter\n" +
  6607. " (printerid\n" +
  6608. " ,workstationid\n" +
  6609. " ,printerstation\n" +
  6610. " ,accountid\n" +
  6611. " ,createuserid)\n" +
  6612. "VALUES\n" +
  6613. " (:printerid\n" +
  6614. " ,:workstationid\n" +
  6615. " ,:printerstation\n" +
  6616. " ,:accountid\n" +
  6617. " ,:userid)";
  6618. // 机位1
  6619. paras = new OracleParameter[]
  6620. {
  6621. new OracleParameter(":printerid", PrinterID1),
  6622. new OracleParameter(":workstationid", workStationID),
  6623. new OracleParameter(":printerstation", 1),
  6624. new OracleParameter(":accountid", sUserInfo.AccountID),
  6625. new OracleParameter(":userid", sUserInfo.UserID),
  6626. };
  6627. sre.OtherStatus += oracleTrConn.ExecuteNonQuery(sqlString, paras);
  6628. // 机位2
  6629. paras = new OracleParameter[]
  6630. {
  6631. new OracleParameter(":printerid", PrinterID2),
  6632. new OracleParameter(":workstationid", workStationID),
  6633. new OracleParameter(":printerstation", 2),
  6634. new OracleParameter(":accountid", sUserInfo.AccountID),
  6635. new OracleParameter(":userid", sUserInfo.UserID),
  6636. };
  6637. sre.OtherStatus += oracleTrConn.ExecuteNonQuery(sqlString, paras);
  6638. // 机位3
  6639. paras = new OracleParameter[]
  6640. {
  6641. new OracleParameter(":printerid", PrinterID3),
  6642. new OracleParameter(":workstationid", workStationID),
  6643. new OracleParameter(":printerstation", 3),
  6644. new OracleParameter(":accountid", sUserInfo.AccountID),
  6645. new OracleParameter(":userid", sUserInfo.UserID),
  6646. };
  6647. sre.OtherStatus += oracleTrConn.ExecuteNonQuery(sqlString, paras);
  6648. #endregion
  6649. oracleTrConn.Commit();
  6650. oracleTrConn.Disconnect();
  6651. return sre;
  6652. }
  6653. catch (Exception ex)
  6654. {
  6655. if (oracleTrConn.ConnState == ConnectionState.Open)
  6656. {
  6657. oracleTrConn.Rollback();
  6658. oracleTrConn.Disconnect();
  6659. }
  6660. throw ex;
  6661. }
  6662. }
  6663. #endregion
  6664. #region 3#条码打印
  6665. /// <summary>
  6666. /// 3#条码打印(PDA用)
  6667. /// </summary>
  6668. /// <param name="cre"></param>
  6669. /// <param name="sUserInfo"></param>
  6670. /// <returns></returns>
  6671. public static ServiceResultEntity PrintBarcode_3BL(ClientRequestEntity cre, SUserInfo sUserInfo)
  6672. {
  6673. IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
  6674. try
  6675. {
  6676. ServiceResultEntity sre = BarcodePrintLogic.PrintBarcode_3BL(
  6677. cre.Properties["Barcode"] + "", Convert.ToInt32(cre.Properties["WorkStationID"]), sUserInfo);
  6678. return sre;
  6679. }
  6680. catch (Exception ex)
  6681. {
  6682. if (oracleTrConn.ConnState == ConnectionState.Open)
  6683. {
  6684. oracleTrConn.Rollback();
  6685. oracleTrConn.Disconnect();
  6686. }
  6687. throw ex;
  6688. }
  6689. }
  6690. /// <summary>
  6691. /// 补打3#条码(PDA用)
  6692. /// </summary>
  6693. /// <param name="cre"></param>
  6694. /// <param name="sUserInfo"></param>
  6695. /// <returns></returns>
  6696. public static ServiceResultEntity PrintBarcode_3BL_B(ClientRequestEntity cre, SUserInfo sUserInfo)
  6697. {
  6698. IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
  6699. try
  6700. {
  6701. List<int> list = new List<int>();
  6702. if (!string.IsNullOrEmpty(cre.Properties["PrinterID1"] +""))
  6703. list.Add(Convert.ToInt32(cre.Properties["PrinterID1"] + ""));
  6704. if (!string.IsNullOrEmpty(cre.Properties["PrinterID2"] + ""))
  6705. list.Add(Convert.ToInt32(cre.Properties["PrinterID2"] + ""));
  6706. if (!string.IsNullOrEmpty(cre.Properties["PrinterID3"] + ""))
  6707. list.Add(Convert.ToInt32(cre.Properties["PrinterID3"] + ""));
  6708. ServiceResultEntity sre = BarcodePrintLogic.PrintBarcode_3BL_B(
  6709. cre.Properties["Barcode"] + "", list.ToArray(), sUserInfo);
  6710. return sre;
  6711. }
  6712. catch (Exception ex)
  6713. {
  6714. if (oracleTrConn.ConnState == ConnectionState.Open)
  6715. {
  6716. oracleTrConn.Rollback();
  6717. oracleTrConn.Disconnect();
  6718. }
  6719. throw ex;
  6720. }
  6721. }
  6722. #endregion
  6723. #endregion
  6724. }
  6725. }