| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558 |
- /*******************************************************************************
- * Copyright(c) 2014 DongkeSoft All rights reserved. / Confidential
- * 类的信息:
- * 1.程序名称:SystemModuleDAL.cs
- * 2.功能描述:系统管理更新db逻辑处理
- * 编辑履历:
- * 作者 日期 版本 修改内容
- * 张国印 2014/09/12 1.00 新建
- *******************************************************************************/
- using System;
- using System.Text;
- using System.Data;
- using Dongke.IBOSS.PRD.Basics.DataAccess;
- using Dongke.IBOSS.PRD.Basics.BaseResources;
- using Dongke.IBOSS.PRD.Basics.Library;
- using Dongke.IBOSS.PRD.Service.DataModels;
- using Dongke.IBOSS.PRD.WCF.DataModels;
- using Oracle.ManagedDataAccess.Client;
- namespace Dongke.IBOSS.PRD.Service.SystemModuleLogic
- {
- /// <summary>
- /// 系统管理更新db逻辑处理
- /// </summary>
- public partial class SystemModuleDAL
- {
- #region 数据字典和基础数据相关
- /// <summary>
- /// 保存窑炉数据
- /// </summary>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <param name="datatKilnData">窑炉数据</param>
- /// <returns>int</returns>
- /// <remarks>
- /// 2014.09.01 任海 新建
- /// </remarks>
- public static int SaveKilnData(SUserInfo sUserInfo, DataTable datatKilnData)
- {
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- // 检验参数的有效性
- if (datatKilnData == null && datatKilnData.Rows.Count < Constant.INT_IS_ZERO)
- {
- return Constant.INT_IS_THREE;
- }
- int returnResult = Constant.INT_IS_TWO;
- oracleTrConn.Connect();
- #region 对要保存的窑炉数据进行必要的验证
- foreach (DataRow dataRow in datatKilnData.Rows)
- {
- // 新建窑炉
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 判断是否存在相同的窑炉代码
- string sqlString = "SELECT Count(*) FROM TP_MST_Kiln WHERE AccountID = :AccountID and KilnCode =:KilnCode ";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":KilnCode",dataRow["KilnCode"].ToString())
- };
- string sqlReturnStr = oracleTrConn.GetSqlResultToStr(sqlString, oracleParameter);
- if (!Constant.INT_IS_ZERO.ToString().Equals(sqlReturnStr))
- {
- returnResult = Constant.INT_IS_ONE;
- break;
- }
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 判断是否存在相同的窑炉代码
- string sqlStrings = "SELECT Count(*) FROM TP_MST_Kiln WHERE AccountID = :AccountID and KilnCode = :KilnCode and KilnID <> :KilnID";
- OracleParameter[] oracleParameters = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":KilnCode",dataRow["KilnCode"]),
- new OracleParameter(":KilnID",dataRow["KilnID"])
- };
- string sqlReturnStr = oracleTrConn.GetSqlResultToStr(sqlStrings, oracleParameters);
- if (!Constant.INT_IS_ZERO.ToString().Equals(sqlReturnStr))
- {
- returnResult = Constant.INT_IS_ONE;
- break;
- }
- #endregion
- }
- }
- if (returnResult == Constant.INT_IS_ONE)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- return returnResult;
- }
- #endregion
- foreach (DataRow dataRow in datatKilnData.Rows)
- {
- // 新建窑炉
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 新增窑炉信息
- #region 向T_MST_Kiln插入数据
- string sqlInsertString = "INSERT INTO TP_MST_Kiln "
- + "(KilnCode"
- + ",KilnName"
- + ",KilnType"
- + ",InOutMinTimeIinterval"
- + ",OutMinTimeIinterval"
- + ",TurnoverInterval"
- + ",Remarks"
- + ",AccountID"
- + ",ValueFlag"
- + ",CreateTime"
- + ",UpdateTime"
- + ",UpdateUserID"
- + ",CreateUserID)"
- + " VALUES "
- + "(:KilnCode"
- + ",:KilnName"
- + ",:KilnType"
- + ",decode(:InOutMinTimeIinterval, null, 0, :InOutMinTimeIinterval)"
- + ",decode(:OutMinTimeIinterval, null, 0, :OutMinTimeIinterval)"
- + ",decode(:TurnoverInterval, null, 0, :TurnoverInterval)"
- + ",:Remarks"
- + ",:AccountID"
- + ",:ValueFlag"
- + ",sysdate"
- + ",sysdate"
- + ",:UpdateUserID"
- + ",:CreateUserID)";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":KilnCode",dataRow["KilnCode"].ToString()),
- new OracleParameter(":KilnName",dataRow["KilnName"].ToString()),
- new OracleParameter(":KilnType",dataRow["KilnType"].ToString()),
- new OracleParameter(":InOutMinTimeIinterval",dataRow["InOutMinTimeIinterval"]),
- new OracleParameter(":OutMinTimeIinterval",dataRow["OutMinTimeIinterval"]),
- new OracleParameter(":TurnoverInterval",dataRow["TurnoverInterval"]),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":CreateUserID",sUserInfo.UserID)
- };
- oracleTrConn.ExecuteNonQuery(sqlInsertString, oracleParameter);
- #endregion
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 更新窑炉信息
- string sqlUpdateString = "UPDATE TP_MST_Kiln SET "
- + " KilnCode = :KilnCode,"
- + " KilnName = :KilnName,"
- + " KilnType = :KilnType,"
- + " InOutMinTimeIinterval = decode(:InOutMinTimeIinterval, null, 0, :InOutMinTimeIinterval),"
- + " OutMinTimeIinterval = decode(:OutMinTimeIinterval, null, 0, :OutMinTimeIinterval),"
- + " TurnoverInterval = decode(:TurnoverInterval, null, 0, :TurnoverInterval),"
- + " Remarks = :Remarks,"
- + " AccountID = :AccountID,"
- + " ValueFlag = :ValueFlag,"
- + " UpdateUserID = :UpdateUserID,"
- + " UpdateTime = :UpdateTime"
- + " WHERE KilnID = :KilnID";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":KilnCode",dataRow["KilnCode"].ToString()),
- new OracleParameter(":KilnName",dataRow["KilnName"].ToString()),
- new OracleParameter(":KilnType",dataRow["KilnType"].ToString()),
- new OracleParameter(":InOutMinTimeIinterval",dataRow["InOutMinTimeIinterval"]),
- new OracleParameter(":OutMinTimeIinterval",dataRow["OutMinTimeIinterval"]),
- new OracleParameter(":TurnoverInterval",dataRow["TurnoverInterval"]),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":UpdateTime",DateTime.Now),
- new OracleParameter(":KilnID",dataRow["KilnID"].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlUpdateString, oracleParameter);
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Deleted)
- {
- #region 删除窑炉信息
- string sqlDeleteString = "DELETE TP_MST_Kiln WHERE KilnID = :KilnID";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":KilnID",dataRow["KilnID",DataRowVersion.Original].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlDeleteString, oracleParameter);
- #endregion
- }
- }
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return returnResult;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- }
- /// <summary>
- /// 保存窑车数据
- /// </summary>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <param name="datatKilnCarData">窑车数据</param>
- /// <returns>int</returns>
- /// <remarks>
- /// 2014.09.01 任海 新建
- /// </remarks>
- public static int SaveKilnCarData(SUserInfo sUserInfo, DataTable datatKilnCarData)
- {
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- // 检验参数的有效性
- if (datatKilnCarData == null && datatKilnCarData.Rows.Count < Constant.INT_IS_ZERO)
- {
- return Constant.INT_IS_THREE;
- }
- int returnResult = Constant.INT_IS_TWO;
- oracleTrConn.Connect();
- #region 对要保存的窑车数据进行必要的验证
- foreach (DataRow dataRow in datatKilnCarData.Rows)
- {
- // 新建窑车
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 判断是否存在相同的窑车代码
- string sqlString = "SELECT Count(*) FROM TP_MST_KilnCar WHERE AccountID = :AccountID and KilnCarCode =:KilnCarCode ";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":KilnCarCode",dataRow["KilnCarCode"].ToString())
- };
- string sqlReturnStr = oracleTrConn.GetSqlResultToStr(sqlString, oracleParameter);
- if (!Constant.INT_IS_ZERO.ToString().Equals(sqlReturnStr))
- {
- returnResult = Constant.INT_IS_ONE;
- break;
- }
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 判断是否存在相同的窑车代码
- string sqlStrings = "SELECT Count(*) FROM TP_MST_KilnCar WHERE AccountID = :AccountID and KilnCarCode = :KilnCarCode and KilnCarID <> :KilnCarID";
- OracleParameter[] oracleParameters = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":KilnCarCode",dataRow["KilnCarCode"]),
- new OracleParameter(":KilnCarID",dataRow["KilnCarID"])
- };
- string sqlReturnStr = oracleTrConn.GetSqlResultToStr(sqlStrings, oracleParameters);
- if (!Constant.INT_IS_ZERO.ToString().Equals(sqlReturnStr))
- {
- returnResult = Constant.INT_IS_ONE;
- break;
- }
- #endregion
- }
- }
- if (returnResult == Constant.INT_IS_ONE)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- return returnResult;
- }
- #endregion
- foreach (DataRow dataRow in datatKilnCarData.Rows)
- {
- // 新建窑车
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 新增窑车信息
- #region 向TP_MST_KilnCar插入数据
- string sqlInsertString = "INSERT INTO TP_MST_KilnCar "
- + "(KilnID"
- + ",KilnCarCode"
- + ",KilnCarName"
- + ",MaxGoodsNum"
- + ",KilnCarNum"
- + ",Remarks"
- + ",AccountID"
- + ",ValueFlag"
- + ",CreateTime"
- + ",UpdateTime"
- + ",UpdateUserID"
- + ",CreateUserID)"
- + " VALUES "
- + "(:KilnID"
- + ",:KilnCarCode"
- + ",:KilnCarName"
- + ",:MaxGoodsNum"
- + ",:KilnCarNum"
- + ",:Remarks"
- + ",:AccountID"
- + ",:ValueFlag"
- + ",sysdate"
- + ",sysdate"
- + ",:UpdateUserID"
- + ",:CreateUserID)";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":KilnID",dataRow["KilnID"].ToString()),
- new OracleParameter(":KilnCarCode",dataRow["KilnCarCode"].ToString()),
- new OracleParameter(":KilnCarName",dataRow["KilnCarName"].ToString()),
- new OracleParameter(":MaxGoodsNum",(dataRow["MaxGoodsNum"] == null || dataRow["MaxGoodsNum"] == DBNull.Value)?0:dataRow["MaxGoodsNum"]),
- new OracleParameter(":KilnCarNum",dataRow["KilnCarNum"]),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":CreateUserID",sUserInfo.UserID)
- };
- oracleTrConn.ExecuteNonQuery(sqlInsertString, oracleParameter);
- #endregion
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 更新窑车信息
- string sqlUpdateString = "UPDATE TP_MST_KilnCar SET "
- + " KilnID = :KilnID,"
- + " KilnCarCode = :KilnCarCode,"
- + " KilnCarName = :KilnCarName,"
- + " MaxGoodsNum = :MaxGoodsNum,"
- + " KilnCarNum = :KilnCarNum,"
- + " Remarks = :Remarks,"
- + " AccountID = :AccountID,"
- + " ValueFlag = :ValueFlag,"
- + " UpdateUserID = :UpdateUserID,"
- + " UpdateTime = :UpdateTime"
- + " WHERE KilnCarID = :KilnCarID";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":KilnID",dataRow["KilnID"].ToString()),
- new OracleParameter(":KilnCarCode",dataRow["KilnCarCode"].ToString()),
- new OracleParameter(":KilnCarName",dataRow["KilnCarName"].ToString()),
- new OracleParameter(":MaxGoodsNum",(dataRow["MaxGoodsNum"] == null || dataRow["MaxGoodsNum"] == DBNull.Value)?0:dataRow["MaxGoodsNum"]),
- new OracleParameter(":KilnCarNum",dataRow["KilnCarNum"]),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":UpdateTime",DateTime.Now),
- new OracleParameter(":KilnCarID",dataRow["KilnCarID"].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlUpdateString, oracleParameter);
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Deleted)
- {
- #region 删除窑车信息
- string sqlDeleteString = "DELETE TP_MST_KilnCar WHERE KilnCarID = :KilnCarID";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":KilnCarID",dataRow["KilnCarID",DataRowVersion.Original].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlDeleteString, oracleParameter);
- #endregion
- }
- }
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return returnResult;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- }
- /// <summary>
- /// 保存数据字典数据
- /// </summary>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <param name="dataDictionaryData">数据字典数据</param>
- /// <returns>int</returns>
- /// <remarks>
- /// 2014.09.05 任海 新建
- /// </remarks>
- public static int SaveDictionaryData(SUserInfo sUserInfo, DataTable dataDictionaryData)
- {
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- // 检验参数的有效性
- if (dataDictionaryData == null && dataDictionaryData.Rows.Count < Constant.INT_IS_ZERO)
- {
- return Constant.INT_IS_THREE;
- }
- int returnResult = Constant.INT_IS_TWO;
- oracleTrConn.Connect();
- foreach (DataRow dataRow in dataDictionaryData.Rows)
- {
- // 新建数据字典
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 新增数据字典信息
- #region 向T_MST_DataDictionary插入数据
- string sqlInsertString = "INSERT INTO TP_MST_DataDictionary "
- + "(DictionaryType"
- + ",DictionaryValue"
- + ",DisplayNo"
- + ",Remarks"
- + ",AccountID"
- + ",ValueFlag"
- + ",PARENTVALUE"
- + ",ISLEAF"
- + ",CreateTime"
- + ",UpdateTime"
- + ",UpdateUserID"
- + ",CreateUserID)"
- + " VALUES "
- + "(:DictionaryType"
- + ",:DictionaryValue"
- + ",:DisplayNo"
- + ",:Remarks"
- + ",:AccountID"
- + ",:ValueFlag"
- + ",:PARENTVALUE"
- + ",:ISLEAF"
- + ",sysdate"
- + ",sysdate"
- + ",:UpdateUserID"
- + ",:CreateUserID)";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":DictionaryType",dataRow["DictionaryType"].ToString()),
- new OracleParameter(":DictionaryValue",dataRow["DictionaryValue"].ToString()),
- new OracleParameter(":DisplayNo",dataRow["DisplayNo"].ToString()),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":PARENTVALUE", dataRow["PARENTVALUE"] + ""),
- new OracleParameter(":ISLEAF", string.IsNullOrEmpty(dataRow["ISLEAF"] + "") ? "1" : dataRow["ISLEAF"] + ""),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":CreateUserID",sUserInfo.UserID)
- };
- oracleTrConn.ExecuteNonQuery(sqlInsertString, oracleParameter);
- #endregion
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 更新数据字典信息
- string sqlUpdateString = "UPDATE TP_MST_DataDictionary SET "
- + " DictionaryType = :DictionaryType,"
- + " DictionaryValue = :DictionaryValue,"
- + " DisplayNo = :DisplayNo,"
- + " Remarks = :Remarks,"
- + " AccountID = :AccountID,"
- + " ValueFlag = :ValueFlag,"
- + " PARENTVALUE = :PARENTVALUE,"
- + " ISLEAF = :ISLEAF,"
- + " UpdateUserID = :UpdateUserID,"
- + " UpdateTime = :UpdateTime"
- + " WHERE DictionaryID = :DictionaryID";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":DictionaryType",dataRow["DictionaryType"].ToString()),
- new OracleParameter(":DictionaryValue",dataRow["DictionaryValue"].ToString()),
- new OracleParameter(":DisplayNo",dataRow["DisplayNo"].ToString()),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":PARENTVALUE", dataRow["PARENTVALUE"] + ""),
- new OracleParameter(":ISLEAF", string.IsNullOrEmpty(dataRow["ISLEAF"] + "") ? "1" : dataRow["ISLEAF"] + ""),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":UpdateTime",DateTime.Now),
- new OracleParameter(":DictionaryID",dataRow["DictionaryID"].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlUpdateString, oracleParameter);
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Deleted)
- {
- #region 删除数据字典信息
- string sqlDeleteString = "DELETE TP_MST_DataDictionary WHERE DictionaryID = :DictionaryID";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":DictionaryID",dataRow["DictionaryID",DataRowVersion.Original].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlDeleteString, oracleParameter);
- #endregion
- }
- }
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return returnResult;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- }
- /// <summary>
- /// 保存系统参数数据
- /// </summary>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <param name="datatSystemData">系统参数数据</param>
- /// <returns>int</returns>
- /// <remarks>
- /// 2014.09.15 任海 新建
- /// </remarks>
- public static int SaveSystemData(DataTable datatSystemData, SUserInfo sUserInfo)
- {
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- // 检验参数的有效性
- if (datatSystemData == null && datatSystemData.Rows.Count < Constant.INT_IS_ZERO)
- {
- return Constant.INT_IS_THREE;
- }
- int returnResult = Constant.INT_IS_TWO;
- oracleTrConn.Connect();
- #region 对要保存的操作时间戳进行必要的验证
- foreach (DataRow dataRow in datatSystemData.Rows)
- {
- #region 判断是否存在相同的系统参数代码
- string sqlStrings = "SELECT OPTimeStamp FROM TP_MST_SystemSetting WHERE AccountID = :AccountID and SettingCode = :SettingCode ";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":SettingCode",dataRow["SettingCode"])
- };
- string sqlReturnStr = oracleTrConn.GetSqlResultToStr(sqlStrings, oracleParameter);
- if (sqlReturnStr != dataRow["OPTimeStamp"].ToString())
- {
- returnResult = Constant.INT_IS_ONE;
- break;
- }
- #endregion
- }
- if (returnResult == Constant.INT_IS_ONE)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- return returnResult;
- }
- #endregion
- string sqlString = string.Empty;
- foreach (DataRow drowRow in datatSystemData.Rows)
- {
- // 行状态为编辑
- if (drowRow.RowState == DataRowState.Modified)
- {
- // 如果修改账务时间,需要进行判断
- if (Constant.SettingType.S_CMN_0004.ToString().Equals(drowRow["SettingCode"]))
- {
- continue;
- //bool isCanEdit = true;
- //DateTime serverDate = DateTime.MinValue;
- //DataTable dtServertime = oracleTrConn.GetSqlResultToDt("SELECT sysdate FROM dual");
- //if (dtServertime != null && dtServertime.Rows.Count > 0)
- //{
- // serverDate = Convert.ToDateTime(dtServertime.Rows[0][0]);
- //}
- //DateTime nowAccountTime = Utility.ConvertTimeStr(serverDate, drowRow["SettingValue"] + "");
- //DateTime orginalAccountTime = Utility.ConvertTimeStr(serverDate,
- // drowRow["SettingValue", DataRowVersion.Original] + "");
- //// 当前时间大于原来账务日期不可进行修改
- //if (serverDate >= orginalAccountTime)
- //{
- // isCanEdit = false;
- //}
- //else
- //{
- // // 当前时间小于原来账务日期,但修改后的账务日期在当前时间之前也是不能进行修改的
- // if (nowAccountTime <= serverDate)
- // {
- // isCanEdit = false;
- // }
- //}
- //if (!isCanEdit)
- //{
- // oracleTrConn.Rollback();
- // oracleTrConn.Disconnect();
- // return Constant.RETURN_IS_ERRORACCOUNTTIME;
- //}
- }
- //更新系统参数信息
- sqlString = "UPDATE TP_MST_SystemSetting "
- + "SET SettingValue = :SettingValue, "
- //+ "UpdateTime = sysdate, "
- //+ "OPTimeStamp = systimestamp, "
- + "UpdateUserID = :UpdateUserID "
- + "WHERE SettingCode = :SettingCode "
- + "and AccountID = :AccountID ";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":SettingValue", drowRow["SettingValue"].ToString()),
- new OracleParameter(":UpdateUserID", sUserInfo.UserID),
- new OracleParameter(":AccountID", sUserInfo.AccountID),
- new OracleParameter(":SettingCode", drowRow["SettingCode"].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlString, oracleParameter);
- }
- }
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return returnResult;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- }
- /// <summary>
- /// 保存工种数据
- /// </summary>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <param name="datatJobsData">工种数据</param>
- /// <returns>int</returns>
- /// <remarks>
- /// 2014.09.09 任海 新建
- /// </remarks>
- public static int SavetJobsData(DataTable datatJobsData, SUserInfo sUserInfo)
- {
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- // 检验参数的有效性
- if (datatJobsData == null && datatJobsData.Rows.Count < Constant.INT_IS_ZERO)
- {
- return Constant.INT_IS_THREE;
- }
- int returnResult = Constant.INT_IS_TWO;
- oracleTrConn.Connect();
- #region 对要保存的工种数据进行必要的验证
- foreach (DataRow dataRow in datatJobsData.Rows)
- {
- // 新建工种
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 判断是否存在相同的工种代码
- string sqlString = "SELECT Count(*) FROM TP_MST_Jobs WHERE AccountID = :AccountID and JobsCode =:JobsCode ";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":JobsCode",dataRow["JobsCode"].ToString())
- };
- string sqlReturnStr = oracleTrConn.GetSqlResultToStr(sqlString, oracleParameter);
- if (!Constant.INT_IS_ZERO.ToString().Equals(sqlReturnStr))
- {
- returnResult = Constant.INT_IS_ONE;
- break;
- }
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 判断是否存在相同的工种代码
- string sqlStrings = "SELECT Count(*) FROM TP_MST_Jobs WHERE AccountID = :AccountID and JobsCode = :JobsCode and JobsID <> :JobsID";
- OracleParameter[] oracleParameters = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":JobsCode",dataRow["JobsCode"]),
- new OracleParameter(":JobsID",dataRow["JobsID"])
- };
- string sqlReturnStr = oracleTrConn.GetSqlResultToStr(sqlStrings, oracleParameters);
- if (!Constant.INT_IS_ZERO.ToString().Equals(sqlReturnStr))
- {
- returnResult = Constant.INT_IS_ONE;
- break;
- }
- #endregion
- }
- }
- if (returnResult == Constant.INT_IS_ONE)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- return returnResult;
- }
- #endregion
- foreach (DataRow dataRow in datatJobsData.Rows)
- {
- // 新建工种
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 新增工种信息
- #region 向T_MST_Jobs插入数据
- string sqlInsertString = "INSERT INTO TP_MST_Jobs "
- + "(JobsCode"
- + ",JobsName"
- + ",Remarks"
- + ",AccountID"
- + ",ValueFlag"
- + ",CreateTime"
- + ",UpdateTime"
- + ",UpdateUserID"
- + ",CreateUserID)"
- + " VALUES "
- + "(:JobsCode"
- + ",:JobsName"
- + ",:Remarks"
- + ",:AccountID"
- + ",:ValueFlag"
- + ",sysdate"
- + ",sysdate"
- + ",:UpdateUserID"
- + ",:CreateUserID)";
- OracleParameter[] oracleParameters = new OracleParameter[]
- {
- new OracleParameter(":JobsCode",dataRow["JobsCode"].ToString()),
- new OracleParameter(":JobsName",dataRow["JobsName"].ToString()),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":CreateUserID",sUserInfo.UserID)
- };
- oracleTrConn.ExecuteNonQuery(sqlInsertString, oracleParameters);
- #endregion
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 更新工种信息
- string sqlUpdateString = "UPDATE TP_MST_Jobs SET "
- + " JobsCode = :JobsCode,"
- + " JobsName = :JobsName,"
- + " Remarks = :Remarks,"
- + " AccountID = :AccountID,"
- + " ValueFlag = :ValueFlag,"
- + " UpdateUserID = :UpdateUserID,"
- + " UpdateTime = :UpdateTime"
- + " WHERE JobsID = :JobsID";
- OracleParameter[] oracleParametere = new OracleParameter[]
- {
- new OracleParameter(":JobsCode",dataRow["JobsCode"].ToString()),
- new OracleParameter(":JobsName",dataRow["JobsName"].ToString()),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":UpdateTime",DateTime.Now),
- new OracleParameter(":JobsID",dataRow["JobsID"].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlUpdateString, oracleParametere);
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Deleted)
- {
- #region 删除工种信息
- string sqlDeleteString = "DELETE TP_MST_Jobs WHERE JobsID = :JobsID";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":JobsID",dataRow["JobsID",DataRowVersion.Original].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlDeleteString, oracleParameter);
- #endregion
- }
- }
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return returnResult;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- }
- /// <summary>
- /// 保存职务数据
- /// </summary>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <param name="datatPostData">职务数据</param>
- /// <returns>int</returns>
- /// <remarks>
- /// 2014.09.10 任海 新建
- /// </remarks>
- public static int SavePostData(DataTable datatPostData, SUserInfo sUserInfo)
- {
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- // 检验参数的有效性
- if (datatPostData == null && datatPostData.Rows.Count < Constant.INT_IS_ZERO)
- {
- return Constant.INT_IS_THREE;
- }
- int returnResult = Constant.INT_IS_TWO;
- oracleTrConn.Connect();
- #region 对要保存的职务数据进行必要的验证
- foreach (DataRow dataRow in datatPostData.Rows)
- {
- // 新建职务
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 判断是否存在相同的职务代码
- string sqlString = "SELECT Count(*) FROM TP_MST_Post WHERE AccountID = :AccountID and PostCode =:PostCode ";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":PostCode",dataRow["PostCode"].ToString())
- };
- string sqlReturnStr = oracleTrConn.GetSqlResultToStr(sqlString, oracleParameter);
- if (!Constant.INT_IS_ZERO.ToString().Equals(sqlReturnStr))
- {
- returnResult = Constant.INT_IS_ONE;
- break;
- }
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 判断是否存在相同的职务代码
- string sqlStrings = "SELECT Count(*) FROM TP_MST_Post WHERE AccountID = :AccountID and PostCode = :PostCode and PostID <> :PostID";
- OracleParameter[] oracleParameters = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":PostCode",dataRow["PostCode"]),
- new OracleParameter(":PostID",dataRow["PostID"])
- };
- string sqlReturnStr = oracleTrConn.GetSqlResultToStr(sqlStrings, oracleParameters);
- if (!Constant.INT_IS_ZERO.ToString().Equals(sqlReturnStr))
- {
- returnResult = Constant.INT_IS_ONE;
- break;
- }
- #endregion
- }
- }
- if (returnResult == Constant.INT_IS_ONE)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- return returnResult;
- }
- #endregion
- foreach (DataRow dataRow in datatPostData.Rows)
- {
- // 新建职务
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 新增职务信息
- #region 向TP_MST_Post插入数据
- string sqlInsertString = "INSERT INTO TP_MST_Post "
- + "(PostCode"
- + ",PostName"
- + ",Remarks"
- + ",AccountID"
- + ",ValueFlag"
- + ",CreateTime"
- + ",UpdateTime"
- + ",UpdateUserID"
- + ",CreateUserID)"
- + " VALUES "
- + "(:PostCode"
- + ",:PostName"
- + ",:Remarks"
- + ",:AccountID"
- + ",:ValueFlag"
- + ",sysdate"
- + ",sysdate"
- + ",:UpdateUserID"
- + ",:CreateUserID)";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":PostCode",dataRow["PostCode"].ToString()),
- new OracleParameter(":PostName",dataRow["PostName"].ToString()),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":CreateUserID",sUserInfo.UserID)
- };
- oracleTrConn.ExecuteNonQuery(sqlInsertString, oracleParameter);
- #endregion
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 更新职务信息
- string sqlUpdateString = "UPDATE TP_MST_Post SET "
- + " PostCode = :PostCode,"
- + " PostName = :PostName,"
- + " Remarks = :Remarks,"
- + " AccountID = :AccountID,"
- + " ValueFlag = :ValueFlag,"
- + " UpdateUserID = :UpdateUserID,"
- + " UpdateTime = :UpdateTime"
- + " WHERE PostID = :PostID";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":PostCode",dataRow["PostCode"].ToString()),
- new OracleParameter(":PostName",dataRow["PostName"].ToString()),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":UpdateTime",DateTime.Now),
- new OracleParameter(":PostID",dataRow["PostID"].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlUpdateString, oracleParameter);
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Deleted)
- {
- #region 删除职务信息
- string sqlDeleteString = "DELETE TP_MST_Post WHERE PostID = :PostID";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":PostID",dataRow["PostID",DataRowVersion.Original].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlDeleteString, oracleParameter);
- #endregion
- }
- }
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return returnResult;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- }
- /// <summary>
- /// 保存产品缺陷数据
- /// </summary>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <param name="dataDefectData">产品缺陷数据</param>
- /// <returns>int</returns>
- /// <remarks>
- /// 2014.09.10 任海 新建
- /// </remarks>
- public static int SaveDefectData(DataTable dataDefectData, SUserInfo sUserInfo)
- {
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- // 检验参数的有效性
- if (dataDefectData == null && dataDefectData.Rows.Count < Constant.INT_IS_ZERO)
- {
- return Constant.INT_IS_THREE;
- }
- int returnResult = Constant.INT_IS_TWO;
- oracleTrConn.Connect();
- #region 对要保存的产品缺陷数据进行必要的验证
- foreach (DataRow dataRow in dataDefectData.Rows)
- {
- // 新建产品缺陷
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 判断是否存在相同的产品缺陷代码
- string sqlString = "SELECT Count(*) FROM TP_MST_Defect WHERE AccountID = :AccountID and DefectCode =:DefectCode ";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":DefectCode",dataRow["DefectCode"].ToString())
- };
- string sqlReturnStr = oracleTrConn.GetSqlResultToStr(sqlString, oracleParameter);
- if (!Constant.INT_IS_ZERO.ToString().Equals(sqlReturnStr))
- {
- returnResult = Constant.INT_IS_ONE;
- break;
- }
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 判断是否存在相同的产品缺陷代码
- string sqlStrings = "SELECT Count(*) FROM TP_MST_Defect WHERE AccountID = :AccountID and DefectCode = :DefectCode and DefectID <> :DefectID";
- OracleParameter[] oracleParameters = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":DefectCode",dataRow["DefectCode"]),
- new OracleParameter(":DefectID",dataRow["DefectID"])
- };
- string sqlReturnStr = oracleTrConn.GetSqlResultToStr(sqlStrings, oracleParameters);
- if (!Constant.INT_IS_ZERO.ToString().Equals(sqlReturnStr))
- {
- returnResult = Constant.INT_IS_ONE;
- break;
- }
- #endregion
- }
- }
- if (returnResult == Constant.INT_IS_ONE)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- return returnResult;
- }
- #endregion
- foreach (DataRow dataRow in dataDefectData.Rows)
- {
- //如果简称为空 默认为缺陷名称
- if (string.IsNullOrEmpty(dataRow["S_NAME"] + ""))
- {
- dataRow["S_NAME"] = dataRow["DefectName"];
- }
- // 新建产品缺陷
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 新增产品缺陷信息
- #region 向TP_MST_Defect插入数据
- string sqlInsertString = "INSERT INTO TP_MST_Defect"
- + "(DefectCode"
- + ",DefectName"
- + ",DisplayNo"
- + ",Remarks"
- + ",S_NAME" //缺陷简称 add xcm 2023-4-7
- + ",AccountID"
- + ",ValueFlag"
- + ",CreateTime"
- + ",UpdateTime"
- + ",UpdateUserID"
- + ",CreateUserID"
- + ",DefectTypeID)"
- + " VALUES "
- + "(:DefectCode"
- + ",:DefectName"
- + ",:DisplayNo"
- + ",:Remarks"
- + ",:S_NAME" //缺陷简称 add xcm 2023-4-7
- + ",:AccountID"
- + ",:ValueFlag"
- + ",sysdate"
- + ",sysdate"
- + ",:UpdateUserID"
- + ",:CreateUserID"
- + ",:DefectTypeID)";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":DefectCode",dataRow["DefectCode"].ToString()),
- new OracleParameter(":DefectName",dataRow["DefectName"].ToString()),
- new OracleParameter(":DisplayNo",dataRow["DisplayNo"]),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":S_NAME",dataRow["S_NAME"]),//缺陷简称 add xcm 2023-4-7
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":CreateUserID",sUserInfo.UserID),
- new OracleParameter(":DefectTypeID",dataRow["DefectTypeID"].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlInsertString, oracleParameter);
- #endregion
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 更新产品缺陷信息
- string sqlUpdateString = "UPDATE TP_MST_Defect SET "
- + " DefectCode = :DefectCode,"
- + " DefectName = :DefectName,"
- + " DisplayNo = :DisplayNo,"
- + " Remarks = :Remarks,"
- + " S_NAME = :S_NAME," //缺陷简称 add xcm 2023-4-7
- + " AccountID = :AccountID,"
- + " ValueFlag = :ValueFlag,"
- + " UpdateUserID = :UpdateUserID,"
- + " UpdateTime = :UpdateTime,"
- + " DefectTypeID = :DefectTypeID"
- + " WHERE DefectID = :DefectID";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":DefectCode",dataRow["DefectCode"].ToString()),
- new OracleParameter(":DefectName",dataRow["DefectName"].ToString()),
- new OracleParameter(":DisplayNo",dataRow["DisplayNo"]),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":S_NAME",dataRow["S_NAME"].ToString()),//缺陷简称 add xcm 2023-4-7
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":UpdateTime",DateTime.Now),
- new OracleParameter(":DefectID",dataRow["DefectID"].ToString()),
- new OracleParameter(":DefectTypeID",dataRow["DefectTypeID"].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlUpdateString, oracleParameter);
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Deleted)
- {
- #region 删除产品缺陷信息
- string sqlDeleteString = "DELETE TP_MST_Defect WHERE DefectID = :DefectID";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":DefectID",dataRow["DefectID",DataRowVersion.Original].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlDeleteString, oracleParameter);
- #endregion
- }
- }
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return returnResult;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- }
- /// <summary>
- /// 保存成型线类型数据
- /// </summary>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <param name="datatGMouldTypeData">成型线类型数据</param>
- /// <returns>int</returns>
- /// <remarks>
- /// 2014.09.11 任海 新建
- /// </remarks>
- public static int SavetGMouldTypeData(DataTable datatGMouldTypeData, SUserInfo sUserInfo)
- {
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- // 检验参数的有效性
- if (datatGMouldTypeData == null && datatGMouldTypeData.Rows.Count < Constant.INT_IS_ZERO)
- {
- return Constant.INT_IS_THREE;
- }
- int returnResult = Constant.INT_IS_TWO;
- oracleTrConn.Connect();
- #region 对要保存的成型线类型数据进行必要的验证
- foreach (DataRow dataRow in datatGMouldTypeData.Rows)
- {
- // 新建成型线类型
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 判断是否存在相同的成型线类型代码
- string sqlString = "SELECT Count(*) FROM TP_MST_GMouldType WHERE AccountID = :AccountID and GMouldTypeCode =:GMouldTypeCode ";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":GMouldTypeCode",dataRow["GMouldTypeCode"].ToString())
- };
- string sqlReturnStr = oracleTrConn.GetSqlResultToStr(sqlString, oracleParameter);
- if (!Constant.INT_IS_ZERO.ToString().Equals(sqlReturnStr))
- {
- returnResult = Constant.INT_IS_ONE;
- break;
- }
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 判断是否存在相同的成型线类型代码
- string sqlStrings = "SELECT Count(*) FROM TP_MST_GMouldType WHERE AccountID = :AccountID and GMouldTypeCode = :GMouldTypeCode and GMouldTypeID <> :GMouldTypeID";
- OracleParameter[] oracleParameters = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":GMouldTypeCode",dataRow["GMouldTypeCode"]),
- new OracleParameter(":GMouldTypeID",dataRow["GMouldTypeID"])
- };
- string sqlReturnStr = oracleTrConn.GetSqlResultToStr(sqlStrings, oracleParameters);
- if (!Constant.INT_IS_ZERO.ToString().Equals(sqlReturnStr))
- {
- returnResult = Constant.INT_IS_ONE;
- break;
- }
- #endregion
- }
- }
- if (returnResult == Constant.INT_IS_ONE)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- return returnResult;
- }
- #endregion
- foreach (DataRow dataRow in datatGMouldTypeData.Rows)
- {
- // 新建成型线类型
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 新增成型线类型信息
- #region 向TP_MST_GMouldType插入数据
- string sqlInsertString = "INSERT INTO TP_MST_GMouldType "
- + "(GMouldTypeCode"
- + ",GMouldTypeName"
- + ",CanManyTimes"
- + ",Remarks"
- + ",AccountID"
- + ",ValueFlag"
- + ",CreateTime"
- + ",UpdateTime"
- + ",UpdateUserID"
- + ",CreateUserID)"
- + " VALUES "
- + "(:GMouldTypeCode"
- + ",:GMouldTypeName"
- + ",:CanManyTimes"
- + ",:Remarks"
- + ",:AccountID"
- + ",:ValueFlag"
- + ",sysdate"
- + ",sysdate"
- + ",:UpdateUserID"
- + ",:CreateUserID)";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":GMouldTypeCode",dataRow["GMouldTypeCode"].ToString()),
- new OracleParameter(":GMouldTypeName",dataRow["GMouldTypeName"].ToString()),
- new OracleParameter(":CanManyTimes",dataRow["CanManyTimes"].ToString()=="True"?"1"
- :dataRow["CanManyTimes"].ToString()=="Flase"?"0":dataRow["CanManyTimes"].ToString()),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":CreateUserID",sUserInfo.UserID)
- };
- oracleTrConn.ExecuteNonQuery(sqlInsertString, oracleParameter);
- #endregion
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 更新成型线类型信息
- string sqlUpdateString = "UPDATE TP_MST_GMouldType SET "
- + " GMouldTypeCode = :GMouldTypeCode,"
- + " GMouldTypeName = :GMouldTypeName,"
- + " CanManyTimes = :CanManyTimes,"
- + " Remarks = :Remarks,"
- + " AccountID = :AccountID,"
- + " ValueFlag = :ValueFlag,"
- + " UpdateUserID = :UpdateUserID,"
- + " UpdateTime = :UpdateTime"
- + " WHERE GMouldTypeID = :GMouldTypeID";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":GMouldTypeCode",dataRow["GMouldTypeCode"].ToString()),
- new OracleParameter(":GMouldTypeName",dataRow["GMouldTypeName"].ToString()),
- new OracleParameter(":CanManyTimes",dataRow["CanManyTimes"].ToString()=="True"?"1"
- :dataRow["CanManyTimes"].ToString()=="Flase"?"0":dataRow["CanManyTimes"].ToString()==""?"0":"1"),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":UpdateTime",DateTime.Now),
- new OracleParameter(":GMouldTypeID",dataRow["GMouldTypeID"].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlUpdateString, oracleParameter);
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Deleted)
- {
- #region 删除成型线类型信息
- string sqlDeleteString = "DELETE TP_MST_GMouldType WHERE GMouldTypeID = :GMouldTypeID";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":GMouldTypeID",dataRow["GMouldTypeID",DataRowVersion.Original].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlDeleteString, oracleParameter);
- #endregion
- }
- }
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return returnResult;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Disconnect();
- }
- }
- }
- /// <summary>
- /// 保存产品分级的数据
- /// </summary>
- /// <param name="datatGoodsLevelData">产品分级的数据</param>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <returns>int</returns>
- /// <remarks>
- /// 2014.10.22 任海 新建
- /// </remarks>
- public static int SaveGoodsLevelData(DataTable datatGoodsLevelData, SUserInfo sUserInfo)
- {
- int returnRows = Constant.INT_IS_TWO;
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- oracleTrConn.Connect();
- foreach (DataRow dataRow in datatGoodsLevelData.Rows)
- {
- string sqlUpdateString = "UPDATE tp_mst_goodslevel SET "
- + " GoodsLevelName = :GoodsLevelName,"
- + " GoodsLevelTypeID = :GoodsLevelTypeID,"
- + " IsSemiFinishedEx = :IsSemiFinishedEx,"
- + " SFEDisplayNo = :SFEDisplayNo,"
- + " IsFinishedEx = :IsFinishedEx,"
- + " FEDisplayNo = :FEDisplayNo,"
- + " IsFinished = :IsFinished,"
- + " IsScrapped = :IsScrapped,"
- + " CanDisable = :CanDisable,"
- + " Remarks = :Remarks,"
- + " AccountID = :AccountID,"
- + " ValueFlag = :ValueFlag,"
- + " UpdateUserID = :UpdateUserID,"
- + " UpdateTime = :UpdateTime"
- + " WHERE GoodsLevelID = :GoodsLevelID";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":GoodsLevelName",dataRow["GoodsLevelName"].ToString()),
- new OracleParameter(":GoodsLevelTypeID",dataRow["GoodsLevelTypeID"].ToString()),
- new OracleParameter(":IsSemiFinishedEx",dataRow["IsSemiFinishedEx"].ToString()),
- new OracleParameter(":SFEDisplayNo",dataRow["SFEDisplayNo"].ToString()),
- new OracleParameter(":IsFinishedEx",dataRow["IsFinishedEx"].ToString()),
- new OracleParameter(":FEDisplayNo",dataRow["FEDisplayNo"].ToString()),
- new OracleParameter(":IsFinished",dataRow["IsFinished"].ToString()),
- new OracleParameter(":IsScrapped",dataRow["IsScrapped"].ToString()),
- new OracleParameter(":CanDisable",dataRow["CanDisable"].ToString()),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":UpdateTime",DateTime.Now),
- new OracleParameter(":GoodsLevelID",dataRow["GoodsLevelID"].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlUpdateString, oracleParameter);
- }
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return returnRows;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Disconnect();
- }
- }
- }
- /// <summary>
- /// 保存配置员工的数据
- /// </summary>
- /// <param name="userID">用户ID</param>
- /// <param name="dataDeploystaffData">员工数据表</param>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <returns>int</returns>
- /// <remarks>
- /// 2014.10.13 任海 新建
- /// </remarks>
- public static int SaveDeploystaffData(int userID, DataTable dataDeploystaffData, SUserInfo sUserInfo)
- {
- int returnRows = Constant.INT_IS_ZERO;
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- oracleTrConn.Connect();
- foreach (DataRow dataRow in dataDeploystaffData.Rows)
- {
- if (dataRow.RowState == DataRowState.Added)
- {
- int intStaffID = Convert.ToInt32(dataRow["StaffID"]);
- string sqlUpdateString = "UPDATE TP_HR_Staff SET UserID=:pUuserID"
- + " Where StaffID = :pStaffID And AccountID = :pAccountID";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":pUuserID",OracleDbType.Int32,userID,ParameterDirection.Input),
- new OracleParameter(":pStaffID",OracleDbType.Int32,intStaffID,ParameterDirection.Input),
- new OracleParameter(":pAccountID",OracleDbType.Int32,sUserInfo.AccountID,ParameterDirection.Input),
- };
- returnRows += oracleTrConn.ExecuteNonQuery(sqlUpdateString, oracleParameter);
- }
- else if (dataRow.RowState == DataRowState.Deleted)
- {
- int intStaffID = Convert.ToInt32(dataRow["StaffID", DataRowVersion.Original].ToString());
- string sqlUpdateString2 = "UPDATE TP_HR_Staff SET UserID=null"
- + " Where StaffID = :pStaffID And AccountID = :pAccountID";
- OracleParameter[] oracleParameter2 = new OracleParameter[]
- {
- new OracleParameter(":pStaffID",OracleDbType.Int32,intStaffID,ParameterDirection.Input),
- new OracleParameter(":pAccountID",OracleDbType.Int32,sUserInfo.AccountID,ParameterDirection.Input),
- };
- returnRows += oracleTrConn.ExecuteNonQuery(sqlUpdateString2, oracleParameter2);
- }
- }
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return returnRows;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Disconnect();
- }
- }
- }
- /// <summary>
- /// 保存缺陷位置数据
- /// </summary>
- /// <param name="dataDefectPositionData">缺陷数据</param>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <returns>int</returns>
- /// <remarks>
- /// 2014.09.11 冯雪 新建
- /// </remarks>
- public static int SaveDefectPositionsData(DataTable dataDefectPositionData, SUserInfo sUserInfo)
- {
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- // 检验参数的有效性
- if (dataDefectPositionData == null && dataDefectPositionData.Rows.Count < 0)
- {
- return 3;
- }
- int intResult = 2;
- oracleTrConn.Connect();
- #region 对要保存的帐套数据进行必要的验证
- foreach (DataRow dataRow in dataDefectPositionData.Rows)
- {
- // 新建缺陷位置
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 判断是否存在相同的位置代码
- string sqlString1 = "SELECT Count(*) FROM TP_MST_DefectPosition WHERE AccountID = :AccountID and DefectPositionCode =:DefectPositionCode ";
- OracleParameter[] parmeters1 = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":DefectPositionCode",dataRow["DefectPositionCode"].ToString())
- };
- string strTemp1 = oracleTrConn.GetSqlResultToStr(sqlString1, parmeters1);
- if (strTemp1 != "0")
- {
- intResult = 1;
- break;
- }
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 判断是否存在相同的位置代码
- string sqlString2 = "SELECT Count(*) FROM TP_MST_DefectPosition WHERE AccountID = :AccountID and DefectPositionCode = :DefectPositionCode and DefectPositionID <> :DefectPositionID";
- OracleParameter[] parmeters2 = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":DefectPositionCode",dataRow["DefectPositionCode"]),
- new OracleParameter(":DefectPositionID",dataRow["DefectPositionID"])
- };
- string strTemp1 = oracleTrConn.GetSqlResultToStr(sqlString2, parmeters2);
- if (strTemp1 != "0")
- {
- intResult = 1;
- break;
- }
- #endregion
- }
- }
- if (intResult == 1)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- return intResult;
- }
- #endregion
- //string accountID = ""; // 存储新插入账套ID
- //string userID = ""; //用户ID
- foreach (DataRow dataRow in dataDefectPositionData.Rows)
- {
- //如果简称为空 默认为位置名称
- if (string.IsNullOrEmpty(dataRow["S_NAME"] + ""))
- {
- dataRow["S_NAME"] = dataRow["DefectPositionName"];
- }
- // 新建缺陷
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 新增缺陷位置信息
- #region 向TP_MST_DEFECTPOSITION插入数据
- string sqlString1 = "INSERT INTO TP_MST_DefectPosition "
- + "(DefectPositionCode"
- + ",DefectPositionName"
- + ",DisplayNo"
- + ",Remarks"
- + ",S_NAME" //位置简称 add xcm 2023-4-7
- + ",AccountID"
- + ",ValueFlag"
- + ",CreateTime"
- + ",UpdateTime"
- + ",UpdateUserID"
- + ",CreateUserID)"
- + " VALUES "
- + "(:DefectPositionCode"
- + ",:DefectPositionName"
- + ",:DisplayNo"
- + ",:Remarks"
- + ",:S_NAME" //位置简称 add xcm 2023-4-7
- + ",:AccountID"
- + ",:ValueFlag"
- + ",sysdate"
- + ",sysdate"
- + ",:UpdateUserID"
- + ",:CreateUserID)";
- OracleParameter[] parmeters1 = new OracleParameter[]
- {
- new OracleParameter(":DefectPositionCode",dataRow["DefectPositionCode"].ToString()),
- new OracleParameter(":DefectPositionName",dataRow["DefectPositionName"].ToString()),
- new OracleParameter(":DisplayNo",dataRow["DisplayNo"]),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":S_NAME",dataRow["S_NAME"].ToString()), //位置简称 add xcm 2023-4-7
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":CreateUserID",sUserInfo.UserID)
- };
- oracleTrConn.ExecuteNonQuery(sqlString1, parmeters1);
- #endregion
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 更新缺陷信息
- string sqlString = "UPDATE TP_MST_DefectPosition SET "
- + " DefectPositionCode = :DefectPositionCode,"
- + " DefectPositionName = :DefectPositionName,"
- + " DisplayNo = :DisplayNo,"
- + " Remarks = :Remarks,"
- + " S_NAME = :S_NAME," //位置简称 add xcm 2023-4-7
- + " AccountID = :AccountID,"
- + " ValueFlag = :ValueFlag,"
- + " UpdateUserID = :UpdateUserID,"
- + " UpdateTime = :UpdateTime"
- + " WHERE DefectPositionID = :DefectPositionID";
- OracleParameter[] parmeters1 = new OracleParameter[]
- {
- new OracleParameter(":DefectPositionCode",dataRow["DefectPositionCode"].ToString()),
- new OracleParameter(":DefectPositionName",dataRow["DefectPositionName"].ToString()),
- new OracleParameter(":DisplayNo",dataRow["DisplayNo"].ToString()),
- //new OracleParameter(":KilnType",dataRow["KilnType"].ToString()),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":S_NAME",dataRow["S_NAME"].ToString()), //位置简称 add xcm 2023-4-7
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":UpdateTime",DateTime.Now),
- new OracleParameter(":DefectPositionID",dataRow["DefectPositionID"].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlString, parmeters1);
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Deleted)
- {
- #region 删除缺陷信息
- string sqlDeleteString = "DELETE TP_MST_DefectPosition WHERE DefectPositionID = :DefectPositionID";
- OracleParameter[] parmeters2 = new OracleParameter[]
- {
- new OracleParameter(":DefectPositionID",dataRow["DefectPositionID",DataRowVersion.Original].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlDeleteString, parmeters2);
- #endregion
- }
- }
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return intResult;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Disconnect();
- }
- }
- }
- /// <summary>
- /// 保存产品类型数据
- /// </summary>
- /// <param name="dataGoodsTypeData">产品类型数据</param>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <returns>int</returns>
- /// <remarks>
- /// 2014.09.12 冯雪 新建
- /// </remarks>
- public static int SaveGoodsTypeData(DataTable dataGoodsTypeData, SUserInfo sUserInfo)
- {
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- // 检验参数的有效性
- if (dataGoodsTypeData == null && dataGoodsTypeData.Rows.Count < 0)
- {
- return 3;
- }
- int intResult = 2;
- oracleTrConn.Connect();
- #region 对要保存的帐套数据进行必要的验证
- foreach (DataRow dataRow in dataGoodsTypeData.Rows)
- {
- // 新建缺陷位置
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 判断是否存在相同的位置代码
- string sqlString1 = "SELECT Count(*) FROM TP_MST_GoodsType WHERE AccountID = :AccountID and goodstypecode =:goodstypecode ";
- OracleParameter[] parmeters1 = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":goodstypecode",dataRow["goodstypecode"].ToString())
- };
- string strTemp1 = oracleTrConn.GetSqlResultToStr(sqlString1, parmeters1);
- if (strTemp1 != "0")
- {
- intResult = 1;
- break;
- }
- string datRowSub = dataRow["goodstypecode"].ToString().Substring(0, dataRow["goodstypecode"].ToString().Length - 3);
- string sqlString2 = @"select count(*) from Tp_Mst_Goods
- where goodstypeid = (select distinct goodsTypeId from tp_mst_goodstype where GoodstypeCode = :GoodstypeCode and accountid=:accountid)";
- OracleParameter[] parmeters2 = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":GoodstypeCode",datRowSub),
- };
- string strTemp2 = oracleTrConn.GetSqlResultToStr(sqlString2, parmeters2);
- if (strTemp2 != "0")
- {
- intResult = 4;
- break;
- }
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 判断是否存在相同的产品类型代码
- string sqlString2 = "SELECT Count(*) FROM TP_MST_GoodsType WHERE AccountID = :AccountID and Goodstypecode = :goodstypecode and GoodsTypeID <> :goodsTypeID";
- OracleParameter[] parmeters2 = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":goodstypecode",dataRow["goodstypecode"]),
- new OracleParameter(":goodsTypeID",dataRow["goodsTypeID"])
- };
- string strTemp1 = oracleTrConn.GetSqlResultToStr(sqlString2, parmeters2);
- if (strTemp1 != "0")
- {
- intResult = 1;
- break;
- }
- #endregion
- }
- }
- if (intResult == 1 || intResult == 4)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- return intResult;
- }
- #endregion
- //string accountID = ""; // 存储新插入账套ID
- //string userID = ""; //用户ID
- foreach (DataRow dataRow in dataGoodsTypeData.Rows)
- {
- // 新建产品类型
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 新增产品类型信息
- string sqlString1 = "INSERT INTO TP_MST_GoodsType "
- + "(GoodsTypeCode"
- + ",GoodsTypeName"
- + ",GoodsTypeFullName"
- + ",SAPTYPECODE"
- + ",SAPTYPESUMCODE"
- + ",Remarks"
- + ",AccountID"
- + ",CreateTime"
- + ",UpdateTime"
- + ",UpdateUserID"
- + ",CreateUserID"
- + ",IsLeafNode)"
- + " VALUES "
- + "(:goodsTypeCode"
- + ",:goodsTypeName"
- + ",:goodsTypeFullName"
- + ",:SAPTYPECODE"
- + ",:SAPTYPESUMCODE"
- + ",:Remarks"
- + ",:AccountID"
- + ",sysdate"
- + ",sysdate"
- + ",:UpdateUserID"
- + ",:CreateUserID,1)";
- OracleParameter[] parmeters1 = new OracleParameter[]
- {
- new OracleParameter(":goodsTypeCode",dataRow["goodsTypeCode"].ToString()),
- new OracleParameter(":goodsTypeName",dataRow["goodsTypeName"].ToString()),
- new OracleParameter(":goodsTypeFullName",dataRow["goodsTypeFullName"].ToString()),
- new OracleParameter(":SAPTYPECODE",dataRow["SAPTYPECODE"].ToString()),
- new OracleParameter(":SAPTYPESUMCODE",dataRow["SAPTYPESUMCODE"].ToString()),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":CreateUserID",sUserInfo.UserID)
- };
- oracleTrConn.ExecuteNonQuery(sqlString1, parmeters1);
- sqlString1 = " update TP_MST_GoodsType SET IsLeafNode =0 "
- + " where GoodsTypeCode = :goodsTypeCode "
- + " and AccountID = :accountID";
- parmeters1 = new OracleParameter[]
- {
- new OracleParameter(":goodsTypeCode",dataRow["goodsTypeCode"].ToString().Substring(0, dataRow["goodsTypeCode"].ToString().Length - 3)),
- new OracleParameter(":accountID",sUserInfo.AccountID),
- };
- oracleTrConn.ExecuteNonQuery(sqlString1, parmeters1);
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 更新产品类型信息
- string sqlString = "UPDATE TP_MST_GoodsType SET "
- + " GoodsTypeName = :goodsTypeName,"
- + " GoodsTypeFullName = :GoodsTypeFullName,"
- + " SAPTYPECODE = :SAPTYPECODE,"
- + " SAPTYPESUMCODE = :SAPTYPESUMCODE,"
- + " Remarks = :Remarks,"
- + " AccountID = :AccountID,"
- + " ValueFlag = :ValueFlag,"
- + " UpdateUserID = :UpdateUserID,"
- + " UpdateTime = :UpdateTime"
- + " WHERE GoodsTypeID = :goodsTypeID";
- string[] sub = dataRow["GoodsTypeFullName"].ToString().Split('→');
- string oldGoodsTypeFullName = dataRow["GoodsTypeFullName"].ToString();
- if (sub.Length > 0)
- {
- if (sub[sub.Length - 1] != dataRow["goodsTypeName"].ToString())
- {
- sub[sub.Length - 1] = dataRow["goodsTypeName"].ToString();
- }
- string newFullName = "";
- for (int i = 0; i < sub.Length; i++)
- {
- if (i != sub.Length - 1)
- newFullName += sub[i] + "→";
- else
- newFullName += sub[i];
- }
- dataRow["GoodsTypeFullName"] = newFullName;
- }
- OracleParameter[] parmeters1 = new OracleParameter[]
- {
- new OracleParameter(":goodsTypeName",dataRow["goodsTypeName"].ToString()),
- new OracleParameter(":GoodsTypeFullName",dataRow["GoodsTypeFullName"].ToString()),
- new OracleParameter(":SAPTYPECODE",dataRow["SAPTYPECODE"].ToString()),
- new OracleParameter(":SAPTYPESUMCODE",dataRow["SAPTYPESUMCODE"].ToString()),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":UpdateTime",DateTime.Now),
- new OracleParameter(":goodsTypeID",dataRow["goodsTypeID"].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlString, parmeters1);
- string sqlUpdateOtherFullName = @"select * from TP_MST_GoodsType
- where TP_MST_GoodsType.AccountID=" + sUserInfo.AccountID + " and TP_MST_GoodsType.GoodsTypeCode like '" + dataRow["GoodsTypeCode"].ToString() + "%' and GoodsTypeID<>" + dataRow["goodsTypeID"].ToString();
- DataSet returnDataset5 = oracleTrConn.GetSqlResultToDs(sqlUpdateOtherFullName);
- if (returnDataset5 != null && returnDataset5.Tables[0].Rows.Count > 0) // 更新所有子级
- {
- for (int i = 0; i < returnDataset5.Tables[0].Rows.Count; i++)
- {
- string sqlReplace = @"update TP_MST_GoodsType set GoodsTypeFullName=replace(GoodsTypeFullName,:oldGoodsTypeFullName,:newGoodsTypeFullName)
- where GoodsTypeID=:GoodsTypeID";
- OracleParameter[] Updateparmeters = new OracleParameter[]
- {
- new OracleParameter(":oldGoodsTypeFullName",oldGoodsTypeFullName),
- new OracleParameter(":newGoodsTypeFullName",dataRow["GoodsTypeFullName"].ToString()),
- new OracleParameter(":GoodsTypeID",returnDataset5.Tables[0].Rows[i]["GoodsTypeID"].ToString()),
- };
- oracleTrConn.ExecuteNonQuery(sqlReplace, Updateparmeters);
- ;
- }
- }
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Deleted)
- {
- #region 删除产品类型信息
- string sqlDeleteString = "DELETE TP_MST_GoodsType WHERE GoodsTypeID = :goodsTypeID";
- OracleParameter[] parmeters2 = new OracleParameter[]
- {
- new OracleParameter(":goodsTypeID",dataRow["goodsTypeID",DataRowVersion.Original].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlDeleteString, parmeters2);
- #endregion
- }
- }
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return intResult;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Disconnect();
- }
- }
- }
- /// <summary>
- /// 新建温湿计信息
- /// </summary>
- /// <param name="thermometerEntity">温湿计信息实体</param>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <returns>int</returns>
- /// <remarks>
- /// 2014.12.25 任海 新建
- /// </remarks>
- public static int AddThermometerEntity(ThermometerEntity thermometerEntity, SUserInfo userInfo)
- {
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- int returnResult = Constant.INT_IS_ONE;
- oracleTrConn.Connect();
- StringBuilder sbSql = new StringBuilder();
- //获取序列ID
- sbSql.Clear();
- sbSql.Append("select SEQ_MST_THERMOMETER_ID.nextval from dual");
- int entityId = Convert.ToInt32(oracleTrConn.GetSqlResultToStr(sbSql.ToString()));
- sbSql.Clear();
- sbSql.Append(@"Insert into TP_MST_Thermometer
- (ThermometerID,BuildingNo,FloorNo,
- LocationCode,ThermometerCode,ManagerName,Remarks,ValueFlag,AccountID,CreateUserID,UpdateUserID)
- Values
- (:ThermometerID,:BuildingNo,:FloorNo,
- :LocationCode,:ThermometerCode,:ManagerName,:Remarks,:ValueFlag,:AccountID,:CreateUserID,:UpdateUserID)");
- OracleParameter[] DFParas = new OracleParameter[] {
- new OracleParameter(":ThermometerID",OracleDbType.Int32,
- entityId,ParameterDirection.Input),
- new OracleParameter(":BuildingNo",OracleDbType.NVarchar2,
- thermometerEntity.BuildingNo,ParameterDirection.Input),
- new OracleParameter(":FloorNo",OracleDbType.NVarchar2,
- thermometerEntity.FloorNo,ParameterDirection.Input),
- new OracleParameter(":LocationCode",OracleDbType.NVarchar2,
- thermometerEntity.LocationCode,ParameterDirection.Input),
- new OracleParameter(":Remarks",OracleDbType.NVarchar2,
- thermometerEntity.Remarks,ParameterDirection.Input),
- new OracleParameter(":ThermometerCode",OracleDbType.NVarchar2,
- thermometerEntity.ThermometerCode,ParameterDirection.Input),
- new OracleParameter(":ManagerName",OracleDbType.NVarchar2,
- thermometerEntity.ManagerName,ParameterDirection.Input),
- new OracleParameter(":ValueFlag",OracleDbType.Int32,
- thermometerEntity.ValueFlag,ParameterDirection.Input),
- new OracleParameter(":AccountID",OracleDbType.Int32,
- userInfo.AccountID,ParameterDirection.Input),
- new OracleParameter(":CreateUserID",OracleDbType.Int32,
- userInfo.UserID,ParameterDirection.Input),
- new OracleParameter(":UpdateUserID",OracleDbType.Int32,
- userInfo.UserID,ParameterDirection.Input),
- };
- //连接数据库并返回结果
- oracleTrConn.ExecuteNonQuery(sbSql.ToString(), DFParas);
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return returnResult;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Disconnect();
- }
- }
- }
- /// <summary>
- /// 编辑温湿计信息
- /// </summary>
- /// <param name="thermometerEntity">温湿计信息实体</param>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <returns>int</returns>
- /// <remarks>
- /// 2014.12.25 任海 新建
- /// </remarks>
- public static int UpdateThermometerEntity(ThermometerEntity thermometerEntity, SUserInfo userInfo)
- {
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- int returnResult = Constant.INT_IS_ONE;
- oracleTrConn.Connect();
- StringBuilder sbSql = new StringBuilder();
- sbSql.Append(@"Update TP_MST_Thermometer
- Set BuildingNo=:BuildingNo,
- FloorNo=:FloorNo,
- LocationCode=:LocationCode,
- ThermometerCode=:ThermometerCode,
- ManagerName=:ManagerName,
- ValueFlag=:ValueFlag,
- Remarks=:Remarks,
- UpdateUserID=:UpdateUserID
- Where ThermometerID=:ThermometerID
- And OPTimeStamp=:OPTimeStamp");
- OracleParameter[] DFParas = new OracleParameter[] {
- new OracleParameter(":BuildingNo",OracleDbType.NVarchar2,
- thermometerEntity.BuildingNo,ParameterDirection.Input),
- new OracleParameter(":FloorNo",OracleDbType.NVarchar2,
- thermometerEntity.FloorNo,ParameterDirection.Input),
- new OracleParameter(":LocationCode",OracleDbType.NVarchar2,
- thermometerEntity.LocationCode,ParameterDirection.Input),
- new OracleParameter(":ThermometerCode",OracleDbType.NVarchar2,
- thermometerEntity.ThermometerCode,ParameterDirection.Input),
- new OracleParameter(":ManagerName",OracleDbType.NVarchar2,
- thermometerEntity.ManagerName,ParameterDirection.Input),
- new OracleParameter(":ValueFlag",OracleDbType.Int32,
- thermometerEntity.ValueFlag,ParameterDirection.Input),
- new OracleParameter(":Remarks",OracleDbType.NVarchar2,
- thermometerEntity.Remarks,ParameterDirection.Input),
- new OracleParameter(":UpdateUserID",OracleDbType.Int32,
- userInfo.UserID,ParameterDirection.Input),
- new OracleParameter(":ThermometerID",OracleDbType.Int32,
- thermometerEntity.ThermometerID,ParameterDirection.Input),
- new OracleParameter(":OPTimeStamp",OracleDbType.TimeStamp,
- thermometerEntity.OPTimeStamp,ParameterDirection.Input),
- };
- oracleTrConn.ExecuteNonQuery(sbSql.ToString(), DFParas);
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return returnResult;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Disconnect();
- }
- }
- }
- /// <summary>
- /// 保存窑炉财年
- /// </summary>
- /// <param name="sUserInfo"></param>
- /// <param name="skDate"></param>
- /// <returns></returns>
- public static ServiceResultEntity SaveKilnData(SUserInfo sUserInfo, int skDate)
- {
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- ServiceResultEntity sre = new ServiceResultEntity();
- try
- {
- // 检验参数的有效性
- if (skDate <= 0)
- {
- sre.OtherStatus = Constant.INT_IS_NEGATIE_ONE;
- sre.Message = "财年数必须大于0";
- return sre;
- }
- string sqlString = string.Empty;
- oracleTrConn.Connect();
- sqlString = "SELECT k.sk_date\n" +
- " FROM tp_mst_kiln k\n" +
- " WHERE k.valueflag = '1'\n" +
- " AND k.accountid = :accountid\n" +
- " AND rownum = 1";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":accountid", sUserInfo.AccountID)
- };
- string nowSKDate = oracleTrConn.GetSqlResultToStr(sqlString, oracleParameter);
- int skDateInt = 0;
- int.TryParse(nowSKDate, out skDateInt);
- if (skDate <= skDateInt)
- {
- sre.OtherStatus = Constant.INT_IS_NEGATIE_ONE;
- sre.Message = "输入值小于或等于当前系统的财年数";
- return sre;
- }
- sqlString = "UPDATE tp_mst_kiln k\n" +
- " SET k.sk_batchno = 1\n" +
- " ,k.sk_date = :skdate\n" +
- " ,k.updateuserid = :userid\n" +
- " WHERE k.accountid = :accountid";
- oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":skdate", skDate),
- new OracleParameter(":userid", sUserInfo.UserID),
- new OracleParameter(":accountid", sUserInfo.AccountID)
- };
- sre.OtherStatus += oracleTrConn.ExecuteNonQuery(sqlString, oracleParameter);
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return sre;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- }
- #endregion
- #region 用户处理相关逻辑
- /// <summary>
- /// 新增组织机构OrganizationCode
- /// </summary>
- /// <param name="v_parentOrganizationCode">上级组织机构编码</param>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <returns>int</returns>
- public static string GetOrganizationCode(string v_parentOrganizationCode, SUserInfo sUserInfo)
- {
- IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- oracleConn.Open();
- string sqlString = "select Max(OrganizationCode) from TP_MST_Organization "
- + " where OrganizationCode like '" + v_parentOrganizationCode + "%'"
- + "and length(OrganizationCode) = length('" + v_parentOrganizationCode + "')+3"
- + "and AccountID = " + sUserInfo.AccountID;
- DataSet returnDatasetHuoQu2 = oracleConn.GetSqlResultToDs(sqlString);
- oracleConn.Close();
- string v_MaxOrganizationCode = "";
- if (returnDatasetHuoQu2 != null && returnDatasetHuoQu2.Tables[0].Rows.Count > 0)
- {
- v_MaxOrganizationCode = returnDatasetHuoQu2.Tables[0].Rows[0][0].ToString();
- }
- if (v_MaxOrganizationCode == "")
- {
- v_MaxOrganizationCode = v_MaxOrganizationCode + v_parentOrganizationCode + "001";
- }
- else
- {
- string v_tempCode = "";
- v_tempCode = Convert.ToString(Convert.ToInt32(v_MaxOrganizationCode.Substring(v_MaxOrganizationCode.Length - 3)) + 1);
- v_MaxOrganizationCode = "000" + v_tempCode;
- v_MaxOrganizationCode = v_parentOrganizationCode + v_MaxOrganizationCode.Substring(v_MaxOrganizationCode.Length - 3);
- }
- return v_MaxOrganizationCode;
- }
- catch (Exception ex)
- {
- if (oracleConn.ConnState == ConnectionState.Open)
- {
- oracleConn.Close();
- }
- throw ex;
- }
- finally
- {
- if (oracleConn.ConnState == ConnectionState.Open)
- {
- oracleConn.Close();
- }
- }
- }
- /// <summary>
- /// 新增组织机构
- /// </summary>
- /// <param name="organization">OrganizationEntity对象</param>
- /// <returns>int</returns>
- public static int SaveOrganization(OrganizationEntity organization)
- {
- int returnRows = 0;
- if (organization == null)
- {
- return returnRows;
- }
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- oracleTrConn.Connect();
- #region 生成全称
- //string fullName = string.Empty; // 生成的全称
- //if (organization.ParentOrganizationID <= 0)
- //{
- // fullName = organization.OrganizationName;
- //}
- //else
- //{
- // string sqlString1 = "SELECT OrganizationFullName FROM TP_MST_Organization"
- // + " WHERE OrganizationID = :in_ParentOrganizationID";
- // OracleParameter[] parmeters1 = new OracleParameter[]
- // {
- // new OracleParameter(":in_ParentOrganizationID",organization.ParentOrganizationID)
- // };
- // DataSet returnDataset = oracleTrConn.GetSqlResultToDs(sqlString1, parmeters1);
- // if (returnDataset.Tables[0].Rows.Count != 0)
- // {
- // if (!string.IsNullOrEmpty(returnDataset.Tables[0].Rows[0][0] + ""))
- // {
- // fullName = Convert.ToString(returnDataset.Tables[0].Rows[0][0]);
- // fullName += "→" + organization.OrganizationName;
- // }
- // else
- // {
- // return returnRows;
- // }
- // }
- // else
- // {
- // return returnRows;
- // }
- //}
- #endregion
- // 编辑
- if (organization.OrganizationID > 0)
- {
- #region 组织机构下级存在有效子级,员工和用户的时候不允许被设置为无效
- if (organization.ValueFlag == 0)
- {
- string sqlString2 = "SELECT OrganizationCode FROM TP_MST_Organization WHERE OrganizationCode LIKE '" + organization.OrganizationCode + "%'"
- + " AND LENGTH(OrganizationCode) >" + organization.OrganizationCode.Length + " AND ValueFlag = 1 AND AccountID =:AccountID";
- OracleParameter[] parmeters2 = new OracleParameter[]
- {
- new OracleParameter(":AccountID",organization.in_AccountID)
- };
- DataSet returnDataset = oracleTrConn.GetSqlResultToDs(sqlString2, parmeters2);
- if (returnDataset != null
- && returnDataset.Tables.Count > 0
- && returnDataset.Tables[0].Rows.Count > 0)
- {
- return -5;//// 子级中存在有效数据
- }
- string sqlString3 = "SELECT STAFFID"
- + " FROM TP_HR_STAFF"
- + " WHERE OrganizationID =:OrganizationID "
- + " AND ValueFlag = 1";
- OracleParameter[] parmeters3 = new OracleParameter[]
- {
- new OracleParameter(":OrganizationID",organization.OrganizationID)
- };
- DataSet returnDataset3 = oracleTrConn.GetSqlResultToDs(sqlString3, parmeters3);
- if (returnDataset3 != null
- && returnDataset3.Tables.Count > 0
- && returnDataset3.Tables[0].Rows.Count > 0)
- {
- return -53;//// 当前数据状态不符合操作条件
- }
- string sqlString4 = "SELECT UserID"
- + " FROM TP_MST_User"
- + " WHERE OrganizationID =:OrganizationID "
- + " AND ValueFlag = 1";
- OracleParameter[] parmeters4 = new OracleParameter[]
- {
- new OracleParameter(":OrganizationID",organization.OrganizationID)
- };
- DataSet returnDataset4 = oracleTrConn.GetSqlResultToDs(sqlString4, parmeters4);
- if (returnDataset3 != null
- && returnDataset3.Tables.Count > 0
- && returnDataset3.Tables[0].Rows.Count > 0)
- {
- return -8;//// // 操作数据不合法
- }
- }
- #endregion
- string sqlUpdateString = "UPDATE TP_MST_Organization SET "
- + "OrganizationCode = :organizationCode"
- + ",OrganizationName = :organizationName"
- + ",OrganizationFullName = :organizationFullName"
- + ",Leader = :leader"
- + ",LetterMarket = :letterMarket"
- + ",Telephone = :telephone"
- + ",Address = :address"
- + ",AccountID = :accountID"
- + ",UpdateUserID =" + organization.in_UserID
- + ",ValueFlag=" + organization.ValueFlag
- + ",remarks=:remarks"
- + " WHERE OrganizationID = :organizationID";
- //string[] sub = organization.OrganizationFullName.Split('→');
- //string oldOrganizationFullName = organization.OrganizationFullName;
- //if (sub.Length > 0)
- //{
- // if (sub[sub.Length - 1] != organization.OrganizationName)
- // {
- // sub[sub.Length - 1] = organization.OrganizationName;
- // }
- // string newFullName = "";
- // for (int i = 0; i < sub.Length; i++)
- // {
- // if (i != sub.Length - 1)
- // newFullName += sub[i] + "→";
- // else
- // newFullName += sub[i];
- // }
- // organization.OrganizationFullName = newFullName;
- //}
- OracleParameter[] parmeters = new OracleParameter[]
- {
- new OracleParameter(":organizationCode",organization.OrganizationCode),
- new OracleParameter(":organizationName",organization.OrganizationName),
- new OracleParameter(":organizationFullName",organization.OrganizationFullName),
- new OracleParameter(":leader",organization.Leader),
- new OracleParameter(":letterMarket",organization.LetterMarket),
- new OracleParameter(":telephone",organization.Telephone),
- new OracleParameter(":address",organization.Address),
- new OracleParameter(":accountID",organization.in_AccountID),
- new OracleParameter(":remarks",organization.Remarks),
- new OracleParameter(":organizationID",organization.OrganizationID),
- };
- returnRows = oracleTrConn.ExecuteNonQuery(sqlUpdateString, parmeters);
- // string sqlUpdateOtherFullName = @"select tp_mst_organization.organizationid,tp_mst_organization.organizationfullname from tp_mst_organization
- // where tp_mst_organization.accountID = " + organization.AccountID + " and tp_mst_organization.organizationcode like '" + organization.OrganizationCode + "%' and organizationid<>" + organization.OrganizationID;
- // DataSet returnDataset5 = oracleTrConn.GetSqlResultToDs(sqlUpdateOtherFullName);
- // if (returnDataset5 != null && returnDataset5.Tables[0].Rows.Count > 0) // 更新所有子级
- // {
- // for (int i = 0; i < returnDataset5.Tables[0].Rows.Count; i++)
- // {
- // string sqlReplace = @"update tp_mst_organization set organizationfullname=replace(organizationfullname,:oldorganizationFullName,:neworganizationFullName)
- // where organizationid=:organizationid";
- // OracleParameter[] Updateparmeters = new OracleParameter[]
- // {
- // new OracleParameter(":oldorganizationFullName",oldOrganizationFullName),
- // new OracleParameter(":neworganizationFullName",organization.OrganizationFullName),
- // new OracleParameter(":organizationid",returnDataset5.Tables[0].Rows[i]["organizationid"].ToString()),
- // };
- // oracleTrConn.ExecuteNonQuery(sqlReplace, Updateparmeters);
- // }
- // }
- }
- else
- {
- #region 判断上级组织机构是否已经被置为无效
- string sqlString11 = "SELECT ValueFlag FROM TP_MST_Organization"
- + " WHERE OrganizationID = " + organization.ParentOrganizationID;
- DataSet returnDataset11 = oracleTrConn.GetSqlResultToDs(sqlString11);
- bool valueFlag = false;
- if (returnDataset11.Tables[0].Rows.Count != 0)
- {
- if (!string.IsNullOrEmpty(returnDataset11.Tables[0].Rows[0][0] + ""))
- {
- valueFlag = Convert.ToBoolean(Convert.ToInt32(returnDataset11.Tables[0].Rows[0][0]));
- }
- }
- if (!valueFlag)
- {
- return returnRows;
- }
- // 判断所选节点是已到最底层,不能新建
- if (7 <= organization.ParentOrganizationCode.Length / 3)
- {
- return returnRows;
- }
- // 上级部门包含的部门不能超过最大值999
- if (999 <= GetOrgLevelMax(oracleTrConn,
- organization.ParentOrganizationCode, organization.in_AccountID.ToString()))
- {
- return returnRows;
- }
- // 判断选择的组织机构下是否有员工
- //if (IsExistStaff(oracleTrConn, organization.ParentOrganizationID, organization.in_AccountID.ToString()))
- //{
- // return returnRows;
- //}
- #endregion
- string inString = "INSERT INTO TP_MST_Organization "
- + "(OrganizationCode"
- + ",OrganizationName"
- + ",OrganizationFullName"
- + ",Leader"
- + ",LetterMarket"
- + ",Telephone"
- + ",Address"
- + ",AccountID"
- + ",ValueFlag"
- + ",Remarks"
- + ",CreateUserID"
- + ",UpdateUserID,ISLEAFNODE)"
- + " VALUES "
- + "(:OrganizationCode"
- + ",:organizationName"
- + ",:organizationFullName"
- + ",:leader"
- + ",:letterMarket"
- + ",:telephone"
- + ",:address"
- + ",:accountID"
- + ",:valueFlag"
- + ",:remarks"
- + ",:createUserID"
- + ",:updateUserID,1)";
- #region 获取组织机构编码
- string v_parentOrganizationCode = "";
- string sql1 = "SELECT OrganizationCode FROM TP_MST_Organization"
- + " WHERE OrganizationID = " + organization.ParentOrganizationID + " and AccountID = " + organization.in_AccountID;
- DataSet returnDatasetHuoQu = oracleTrConn.GetSqlResultToDs(sql1);
- if (returnDatasetHuoQu != null && returnDatasetHuoQu.Tables[0].Rows.Count > 0)
- {
- v_parentOrganizationCode = returnDatasetHuoQu.Tables[0].Rows[0]["OrganizationCode"].ToString();
- }
- string sql2 = "select Max(OrganizationCode) from TP_MST_Organization "
- + " where OrganizationCode like '" + v_parentOrganizationCode + "%'"
- + "and length(OrganizationCode) = length('" + v_parentOrganizationCode + "')+3"
- + "and AccountID = " + organization.in_AccountID;
- DataSet returnDatasetHuoQu2 = oracleTrConn.GetSqlResultToDs(sql2);
- string v_MaxOrganizationCode = "";
- if (returnDatasetHuoQu2 != null && returnDatasetHuoQu2.Tables[0].Rows.Count > 0)
- {
- v_MaxOrganizationCode = returnDatasetHuoQu2.Tables[0].Rows[0][0].ToString();
- }
- if (v_MaxOrganizationCode == "")
- {
- v_MaxOrganizationCode = v_MaxOrganizationCode + v_parentOrganizationCode + "001";
- }
- else
- {
- string v_tempCode = "";
- v_tempCode = Convert.ToString(Convert.ToInt32(v_MaxOrganizationCode.Substring(v_MaxOrganizationCode.Length - 3)) + 1);
- v_MaxOrganizationCode = "000" + v_tempCode;
- v_MaxOrganizationCode = v_parentOrganizationCode + v_MaxOrganizationCode.Substring(v_MaxOrganizationCode.Length - 3);
- }
- #endregion
- OracleParameter[] parmeters10 = new OracleParameter[]
- {
- new OracleParameter(":OrganizationCode",v_MaxOrganizationCode),
- new OracleParameter(":organizationName",organization.OrganizationName),
- new OracleParameter(":organizationFullName",organization.OrganizationName),
- new OracleParameter(":leader",organization.Leader),
- new OracleParameter(":letterMarket",organization.LetterMarket),
- new OracleParameter(":telephone",organization.Telephone),
- new OracleParameter(":address",organization.Address),
- new OracleParameter(":accountID",organization.in_AccountID),
- new OracleParameter(":valueFlag",organization.ValueFlag),
- new OracleParameter(":remarks",organization.Remarks),
- new OracleParameter(":createUserID",organization.in_UserID),
- new OracleParameter(":updateUserID",organization.in_UserID),
- };
- returnRows = oracleTrConn.ExecuteNonQuery(inString, parmeters10);
- //oracleTrConn.Commit();
- //oracleTrConn.Disconnect();
- //return returnRows;
- }
- string sqlString = "select t.organizationid from tp_mst_organization t where t.accountid = " + organization.in_AccountID
- + " order by t.organizationcode";
- DataTable dt = oracleTrConn.GetSqlResultToDt(sqlString, null);
- if (dt != null && dt.Rows.Count > 0)
- {
- foreach (DataRow item in dt.Rows)
- {
- sqlString =
- "UPDATE tp_mst_organization t\n" +
- " SET t.isleafnode =\n" +
- " (SELECT decode(COUNT(tlf.organizationid), 1, '1', '0')\n" +
- " FROM tp_mst_organization tlf\n" +
- " WHERE t.accountid = tlf.accountid\n" +
- " AND tlf.valueflag = '1'\n" +
- " AND INSTR(tlf.organizationcode, t.organizationcode) = 1)\n" +
- " ,t.organizationfullname =\n" +
- " (SELECT listagg(to_char(tfn.organizationname), '→') within GROUP(ORDER BY tfn.organizationcode)\n" +
- " FROM tp_mst_organization tfn\n" +
- " WHERE t.accountid = tfn.accountid\n" +
- " AND INSTR(t.organizationcode, tfn.organizationcode) = 1)\n" +
- " WHERE t.organizationid = :organizationid";
- OracleParameter[] parmeters = new OracleParameter[]
- {
- new OracleParameter(":organizationid",item["organizationid"]),
- };
- oracleTrConn.ExecuteNonQuery(sqlString, parmeters);
- }
- }
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return returnRows;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == System.Data.ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == System.Data.ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- }
- }
- /// <summary>
- /// 添加用户信息
- /// </summary>
- /// <param name="userInfo">用户实体</param>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <returns>int</returns>
- public static int AddUserInfo(SUserEntity userInfo, SUserInfo sUserInfo)
- {
- int returnUserID = 0;
- if (userInfo == null)
- {
- return returnUserID;
- }
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- oracleTrConn.Connect();
- try
- {
- string sqlString = "SELECT OrganizationCode FROM TP_MST_Organization WHERE OrganizationID = :organizationID";
- OracleParameter[] parmeters2 = new OracleParameter[]
- {
- new OracleParameter(":organizationID",userInfo.OrganizationID)
- };
- DataSet returnDataset = oracleTrConn.GetSqlResultToDs(sqlString, parmeters2);
- if (returnDataset.Tables[0].Rows.Count != 0)
- {
- if (returnDataset.Tables[0].Rows[0][0].ToString().Length == 3)
- {
- return -2;
- }
- }
- else
- {
- return -1;
- }
- //校验ad域是否已存在
- sqlString = "SELECT 1\n" +
- " FROM tp_mst_user\n" +
- " WHERE accountid = :accountid\n" +
- " AND valueflag = 1\n" +
- " AND ad_user_code = :ad_user_code";
- parmeters2 = new OracleParameter[]
- {
- new OracleParameter(":accountid",sUserInfo.AccountID),
- new OracleParameter(":ad_user_code",userInfo.AD_USER_CODE),
- };
- DataTable returnDT = oracleTrConn.GetSqlResultToDt(sqlString, parmeters2);
- if(returnDT.Rows.Count>0)
- {
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return -6;
- }
- string userTempID = oracleTrConn.GetSqlResultToStr("Select seq_mst_user_userid.nextval from dual");
- int affectRows = 0;
- string useridplus = Encryption.GetMD5String(userInfo.UserCode);
- string sqlString4 = "INSERT INTO TP_MST_User "
- + "(UserID"
- + ",UserCode"
- + ",UserName"
- + ",Password"
- + ",OrganizationID"
- + ",AccountID"
- + ",AccountCode"
- + ",ValueFlag"
- + ",CreateUserID"
- + ",UpdateUserID"
- + ",CreateTime"
- + ",UpdateTime"
- + ",LimitMAC"
- + ",LimitStartTime"
- + ",LimitEndTime"
- + ",CanSmartLogin"
- + ",CanPCLogin"
- + ",IsWorker"
- + ",IsGroutingWorker"
- + ",Remarks"
- + ",ispublicbody"
- + ",post"
- + ",canloginprd"
- + ",canloginmbc"
- + ",BarcodePrinterID"
- + ",PLCID"
- + ",USERIDPLUS"
- + ",AD_USER_CODE"
- + ",PlanFlag"
- + ")"
- + " VALUES( "
- + ":userID"
- + ",:userCode"
- + ",:UserName"
- + ",:Password"
- + ",:organizationID"
- + ",:accountID"
- + ",:accountCode"
- + ",:valueFlag"
- + ",:createUserID"
- + ",:updateUserID"
- + ",sysdate"
- + ",sysdate"
- + ",:LimitMAC"
- + ",:LimitStartTime"
- + ",:LimitEndTime"
- + ",:CanSmartLogin"
- + ",:CanPCLogin"
- + ",:IsWorker"
- + ",:IsGroutingWorker"
- + ",:Remarks"
- + ",:ispublicbody"
- + ",:post"
- + ",:canloginprd"
- + ",:canloginmbc"
- + ",:BarcodePrinterID"
- + ",:PLCID"
- + ",:USERIDPLUS"
- + ",:AD_USER_CODE"
- + ",:PlanFlag"
- + ")";
- OracleParameter[] parmeters4 = new OracleParameter[]
- {
- new OracleParameter(":userID",userTempID),
- new OracleParameter(":userCode",userInfo.UserCode),
- new OracleParameter(":UserName",userInfo.UserName),
- new OracleParameter(":Password",userInfo.Password),
- new OracleParameter(":organizationID",userInfo.OrganizationID),
- new OracleParameter(":accountID",sUserInfo.AccountID),
- new OracleParameter(":accountCode",sUserInfo.AccountCode),
- new OracleParameter(":valueFlag",userInfo.ValueFlag),
- new OracleParameter(":createUserID", sUserInfo.UserID),
- new OracleParameter(":updateUserID", sUserInfo.UserID),
- new OracleParameter(":LimitMAC", userInfo.LimitMAC),
- new OracleParameter(":LimitStartTime",userInfo.LimitStartTime),
- new OracleParameter(":LimitEndTime",userInfo.LimitEndTime),
- new OracleParameter(":CanSmartLogin", userInfo.CanSmartLogin),
- new OracleParameter(":CanPCLogin", userInfo.CanPCLogin),
- new OracleParameter(":IsWorker", userInfo.IsWorker),
- new OracleParameter(":IsGroutingWorker", userInfo.IsGroutingWorker),
- new OracleParameter(":Remarks",userInfo.Remarks),
- new OracleParameter(":ispublicbody",userInfo.Ispublicbody),
- new OracleParameter(":post",userInfo.PostID),
- new OracleParameter(":canloginprd",userInfo.CanLoginPRD),
- new OracleParameter(":canloginmbc",userInfo.CanLoginMBC),
- new OracleParameter(":BarcodePrinterID",userInfo.BarcodePrinterID),
- new OracleParameter(":PLCID",userInfo.PLCID),
- new OracleParameter(":USERIDPLUS",useridplus),
- new OracleParameter(":AD_USER_CODE",userInfo.AD_USER_CODE),
- new OracleParameter(":PlanFlag",userInfo.PlanFlag)
- };
- affectRows = oracleTrConn.ExecuteNonQuery(sqlString4, parmeters4);
- //添加工号工种关联----庄天威 2014.10.23
- int jobsCount = 0;
- foreach (DataRow drFor in userInfo.UserJobs.Rows)
- {
- if (drFor.RowState != DataRowState.Deleted)
- {
- if (drFor["JobsID"] == DBNull.Value)
- {
- continue;
- }
- string sqlstring5 = @"Insert into TP_MST_UserJobs(UserID,JobsID,CreateUserID)
- Values(:UserID,:JobsID,:CreateUserID)";
- OracleParameter[] parmeters5 = new OracleParameter[]
- {
- new OracleParameter(":UserID",userTempID),
- new OracleParameter(":JobsID",drFor["JobsID"].ToString()),
- new OracleParameter(":CreateUserID",sUserInfo.UserID),
- };
- jobsCount += oracleTrConn.ExecuteNonQuery(sqlstring5, parmeters5);
- }
- }
- int newuserid = Convert.ToInt32(userTempID);
- if (userInfo.UserID > 0)
- {
- OracleParameter[] parright = new OracleParameter[]
- {
- new OracleParameter(":newuserid",newuserid),
- new OracleParameter(":oruserid",userInfo.UserID),
- new OracleParameter(":createuserid",sUserInfo.UserID),
- };
- // 复制功能权限
- string sqlright = "insert into tp_mst_userright\n" +
- " (userid, functioncode, createuserid)\n" +
- "select :newuserid, functioncode, :createuserid from tp_mst_userright ur\n" +
- " where ur.userid = :oruserid";
- oracleTrConn.ExecuteNonQuery(sqlright, parright);
- // 复制范围权限
- string sqlpurview = "insert into tp_mst_userpurview\n" +
- " (userid, purviewid, purviewtype, createuserid)\n" +
- "select :newuserid, purviewid, purviewtype, :createuserid from tp_mst_userpurview up\n" +
- " where up.userid = :oruserid";
- oracleTrConn.ExecuteNonQuery(sqlpurview, parright);
- }
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return newuserid;
- }
- catch (Exception ex)
- {
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == System.Data.ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- }
- }
- /// <summary>
- /// 添加工号对应员工
- /// </summary>
- /// <param name="UserId">工号ID</param>
- /// <param name="StaffTable">员工数据表</param>
- /// <param name="userInfo">用户基本信息</param>
- /// <returns>int</returns>
- public static int AddUserStaff(int UserId, DataTable StaffTable, SUserInfo userInfo)
- {
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- oracleTrConn.Connect();
- //操作工号工种关联----庄天威 2014.10.23
- int StaffCount = 0;
- foreach (DataRow drFor in StaffTable.Rows)
- {
- if (drFor.RowState == DataRowState.Added)
- {
- if (drFor["StaffID"] == DBNull.Value)
- {
- continue;
- }
- string sqlstring5 = @"Insert into TP_MST_UserStaff(UserID,UJobsID,StaffID,AccountID,CreateUserID,UpdateUserID)
- Values(:UserID,:UJobsID,:StaffID,:AccountID,:CreateUserID,:UpdateUserID)";
- OracleParameter[] parmeters5 = new OracleParameter[]
- {
- new OracleParameter(":UserID",UserId),
- new OracleParameter(":UJobsID",drFor["UserJobsID"].ToString()),
- new OracleParameter(":StaffID",drFor["StaffID"].ToString()),
- new OracleParameter(":AccountID",userInfo.AccountID),
- new OracleParameter(":CreateUserID",userInfo.UserID),
- new OracleParameter(":UpdateUserID",userInfo.UserID),
- };
- StaffCount += oracleTrConn.ExecuteNonQuery(sqlstring5, parmeters5);
- //xuwei add 2020-10-14
- #region 同步插入tp_mst_workstationuserdetail,先删除再插入,省去更新操作
- oracleTrConn.ExecuteNonQuery(@"
- DELETE
- TP_MST_WORKSTATIONUSERDETAIL
- WHERE
- USERID = :UserID
- AND STAFFID = :StaffID
- ",
- new OracleParameter[] {
- new OracleParameter(":UserID",UserId),
- new OracleParameter(":StaffID",drFor["StaffID"].ToString())
- });
- string UserCode = oracleTrConn.GetSqlResultToStr(@"
- SELECT
- USERCODE
- FROM
- TP_MST_USER
- WHERE
- USERID = :UserID
- ", new OracleParameter[] {
- new OracleParameter(":UserID",UserId)
- });
- oracleTrConn.ExecuteNonQuery(@"
- INSERT INTO TP_MST_WORKSTATIONUSERDETAIL (
- USERID,USERCODE,STAFFID,
- STAFFSTATUS,UJOBSID,
- ACCOUNTID,CREATEUSERID,UPDATEUSERID
- ) VALUES (
- :UserID,:UserCode,:StaffID,
- :StaffStatus,:UjobsID,
- :AccountId,:CreateUserID,:UpdateUserID
- )
- ",
- new OracleParameter[] {
- new OracleParameter(":UserID",UserId),
- new OracleParameter(":UserCode",UserCode),
- new OracleParameter(":StaffID",drFor["StaffID"].ToString()),
- new OracleParameter(":StaffStatus","2"),
- new OracleParameter(":UjobsID",drFor["UserJobsId"].ToString()),
- new OracleParameter(":AccountId",userInfo.AccountID),
- new OracleParameter(":CreateUserID",userInfo.UserID),
- new OracleParameter(":UpdateUserID",userInfo.UserID),
- });
- #endregion
- }
- else if (drFor.RowState == DataRowState.Deleted)
- {
- string sqlstring5 = @"Delete from TP_MST_UserStaff Where UserStaffID=:UserStaffID";
- OracleParameter[] parmeters5 = new OracleParameter[]
- {
- new OracleParameter(":UserStaffID",drFor["InfoID",DataRowVersion.Original].ToString()),
- };
- StaffCount += oracleTrConn.ExecuteNonQuery(sqlstring5, parmeters5);
- //xuwei add 2020-10-14
- #region 同步删除tp_mst_workstationuserdetail
- oracleTrConn.ExecuteNonQuery(@"
- DELETE
- TP_MST_WORKSTATIONUSERDETAIL
- WHERE
- USERID = :UserID
- AND STAFFID = :StaffID
- ",
- new OracleParameter[] {
- new OracleParameter(":UserID",UserId),
- new OracleParameter(":StaffID",drFor["StaffID",DataRowVersion.Original].ToString())
- });
- #endregion
- }
- else if (drFor.RowState == DataRowState.Modified)
- {
- string sqlstring5 = @"Update TP_MST_UserStaff
- Set UJobsID=:UJobsID,
- StaffID=:StaffID,
- UpdateUserID=:UpdateUserID,
- UpdateTime=sysdate
- Where UserStaffID=:UserStaffID";
- OracleParameter[] parmeters5 = new OracleParameter[]
- {
- new OracleParameter(":UJobsID",drFor["UserJobsId"].ToString()),
- new OracleParameter(":StaffID",drFor["StaffID"].ToString()),
- new OracleParameter(":UpdateUserID",userInfo.UserID),
- new OracleParameter(":UserStaffID",drFor["InfoID"].ToString())
- };
- StaffCount += oracleTrConn.ExecuteNonQuery(sqlstring5, parmeters5);
- //xuwei add 2020-10-14
- #region 同步更新 tp_mst_workstationuserdetail
- oracleTrConn.ExecuteNonQuery(@"
- UPDATE TP_MST_WORKSTATIONUSERDETAIL
- SET
- STAFFID = :StaffID,
- UJOBSID = :UJobsID
- WHERE
- USERID = :UserID
- AND STAFFID = :OldStaffID
- ",
- new OracleParameter[] {
- new OracleParameter(":UserID",UserId),
- new OracleParameter(":UJobsID",drFor["UserJobsId"].ToString()),
- new OracleParameter(":OldStaffID",drFor["StaffID",DataRowVersion.Original].ToString()),
- new OracleParameter(":StaffID",drFor["StaffID"].ToString())
- });
- #endregion
- }
- }
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return StaffCount;
- }
- catch (Exception ex)
- {
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == System.Data.ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- }
- }
- /// <summary>
- /// 编辑用户信息
- /// </summary>
- /// <param name="userInfo">用户实体</param>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <returns>int</returns>
- public static int EditUserInfo(SUserEntity userInfo, SUserInfo sUserInfo)
- {
- int returnUserID = 0;
- if (userInfo == null)
- {
- return returnUserID;
- }
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- oracleTrConn.Connect();
- try
- {
- string sqlString = "SELECT OrganizationCode FROM TP_MST_Organization WHERE OrganizationID = :organizationID";
- OracleParameter[] parmeters2 = new OracleParameter[]
- {
- new OracleParameter(":organizationID",userInfo.OrganizationID)
- };
- DataSet returnDataset = oracleTrConn.GetSqlResultToDs(sqlString, parmeters2);
- if (returnDataset.Tables[0].Rows.Count != 0)
- {
- if (returnDataset.Tables[0].Rows[0][0].ToString().Length == 3)
- {
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return -2;
- }
- }
- else
- {
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return -1;
- }
- //校验ad域是否已存在
- sqlString = "SELECT 1\n" +
- " FROM tp_mst_user\n" +
- " WHERE accountid = :accountid\n" +
- " AND valueflag = 1\n" +
- " AND UserID <>:UserID\n" +
- " AND ad_user_code = :ad_user_code";
- parmeters2 = new OracleParameter[]
- {
- new OracleParameter(":accountid",sUserInfo.AccountID),
- new OracleParameter(":ad_user_code",userInfo.AD_USER_CODE),
- new OracleParameter(":UserID",userInfo.UserID),
- };
- DataTable returnDT = oracleTrConn.GetSqlResultToDt(sqlString, parmeters2);
- if (returnDT.Rows.Count > 0)
- {
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return -8;
- }
- int affectRows = 0;
- string inString = "update TP_MST_User set "
- + " UserCode=:UserCode"
- + ",UserName=:UserName"
- + ",OrganizationID=:OrganizationID"
- + ",LimitMAC=:LimitMAC"
- + ",LimitStartTime=:LimitStartTime"
- + ",LimitEndTime=:LimitEndTime"
- + ",CanSmartLogin=:CanSmartLogin"
- + ",CanPCLogin=:CanPCLogin"
- + ",Remarks=:Remarks"
- + ",AccountID=:AccountID"
- + ",AccountCode=:AccountCode"
- + ",ValueFlag=:ValueFlag"
- + ",UpdateTime=sysdate"
- + ",IsWorker=:IsWorker"
- + ",IsGroutingWorker=:IsGroutingWorker"
- + ",ispublicbody=:ispublicbody"
- + ",post=:post"
- + ",canloginprd=:canloginprd"
- + ",canloginmbc=:canloginmbc"
- + ",BarcodePrinterID=:BarcodePrinterID"
- + ",PLCID=:PLCID"
- + ",AD_USER_CODE = :AD_USER_CODE"
- + ",PlanFlag = :PLANFLAG"
- + ",UpdateUserID=:UpdateUserID where UserID=" + userInfo.UserID;
- OracleParameter[] parmeters10 = new OracleParameter[]
- {
- new OracleParameter(":UserCode",userInfo.UserCode),
- new OracleParameter(":UserName",userInfo.UserName),
- new OracleParameter(":OrganizationID",userInfo.OrganizationID),
- new OracleParameter(":LimitMAC",userInfo.LimitMAC),
- new OracleParameter(":LimitStartTime",userInfo.LimitStartTime),
- new OracleParameter(":LimitEndTime",userInfo.LimitEndTime),
- new OracleParameter(":CanSmartLogin",userInfo.CanSmartLogin),
- new OracleParameter(":CanPCLogin",userInfo.CanPCLogin),
- new OracleParameter(":Remarks",userInfo.Remarks),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":AccountCode",sUserInfo.AccountCode),
- new OracleParameter(":ValueFlag",userInfo.ValueFlag),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":IsWorker",userInfo.IsWorker),
- new OracleParameter(":IsGroutingWorker",userInfo.IsGroutingWorker),
- new OracleParameter(":ispublicbody",userInfo.Ispublicbody),
- new OracleParameter(":post",userInfo.PostID),
- new OracleParameter(":canloginprd",userInfo.CanLoginPRD),
- new OracleParameter(":canloginmbc",userInfo.CanLoginMBC),
- new OracleParameter(":BarcodePrinterID",userInfo.BarcodePrinterID),
- new OracleParameter(":PLCID",userInfo.PLCID),
- new OracleParameter(":AD_USER_CODE",userInfo.AD_USER_CODE),
- new OracleParameter(":PLANFLAG",userInfo.PlanFlag),
- };
- affectRows = oracleTrConn.ExecuteNonQuery(inString, parmeters10);
- //编辑工号关联工种----庄天威 2014.10.24
- string deleteSql = "Delete from TP_MST_UserJobs where UserID=" + userInfo.UserID;
- int deleteRows = oracleTrConn.ExecuteNonQuery(deleteSql, null);
- int jobsCount = 0;
- foreach (DataRow drFor in userInfo.UserJobs.Rows)
- {
- if (drFor.RowState != DataRowState.Deleted)
- {
- if (drFor["JobsID"] == DBNull.Value)
- {
- continue;
- }
- string sqlstring5 = @"Insert into TP_MST_UserJobs(UserID,JobsID,CreateUserID)
- Values(:UserID,:JobsID,:CreateUserID)";
- OracleParameter[] parmeters5 = new OracleParameter[]
- {
- new OracleParameter(":UserID",userInfo.UserID),
- new OracleParameter(":JobsID",drFor["JobsID"].ToString()),
- new OracleParameter(":CreateUserID",sUserInfo.UserID),
- };
- jobsCount += oracleTrConn.ExecuteNonQuery(sqlstring5, parmeters5);
- }
- }
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return affectRows;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == System.Data.ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Disconnect();
- }
- }
- }
- /// <summary>
- /// 用户解锁
- /// </summary>
- /// <param name="UserID">用户ID</param>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <returns>int</returns>
- public static int UnlockUserStatus(int UserID, SUserInfo sUserInfo)
- {
- int returnRows = 0;
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- oracleTrConn.Connect();
- try
- {
- #region 对应要执行的SQL语句
- string sqlString = "update tp_mst_userlogin set locktime=null,islocked=0 where userid=:userid";
- Oracle.ManagedDataAccess.Client.OracleParameter[] paras = new Oracle.ManagedDataAccess.Client.OracleParameter[]
- {
- new Oracle.ManagedDataAccess.Client.OracleParameter(":userid", OracleDbType.Int32, UserID, ParameterDirection.Input)
- };
- #endregion
- returnRows = oracleTrConn.ExecuteNonQuery(sqlString, paras);
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return returnRows;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == System.Data.ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Disconnect();
- }
- }
- }
- /// <summary>
- /// 用户范围权限保存
- /// </summary>
- /// <param name="userRightData">用户权限记录集</param>
- /// <param name="userID">用户ID</param>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <returns>int</returns>
- public static int SaveUserRight(DataSet userRightData, int userID, SUserInfo sUserInfo)
- {
- int returnRowCount = 0;//返回影响行数
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- oracleTrConn.Connect();
- string sql = "DELETE TP_MST_UserPurview WHERE UserID = :userID"
- + " AND (PurviewType <>:PurviewType "
- + " OR (PurviewType =:PurviewType AND PurviewID IN (SELECT OrganizationID FROM TP_MST_Organization WHERE ValueFlag = 1))) ";
- Oracle.ManagedDataAccess.Client.OracleParameter[] paras = new Oracle.ManagedDataAccess.Client.OracleParameter[]
- {
- new Oracle.ManagedDataAccess.Client.OracleParameter(":PurviewType",2),
- new Oracle.ManagedDataAccess.Client.OracleParameter(":userID",userID)
- };
- returnRowCount += oracleTrConn.ExecuteNonQuery(sql, paras);//删除以前所设置的权限
- // 顺序插入现有的权限数据
- DataSet dsExist = null;
- for (int i = 0; i < userRightData.Tables.Count - 2; i++)
- {
- // 对每一种权限进行遍历
- foreach (DataRow dataRow in userRightData.Tables[i].Rows)
- {
- if (Convert.ToBoolean(dataRow["RightFlag"]))
- {
- if (Convert.ToInt32(dataRow["PurviewID"]) == -1)
- {
- sql = "select 1 from TP_MST_UserPurview where UserID=:UserID and PurviewID=:PurviewID and PurviewType=:PurviewType";
- paras = new Oracle.ManagedDataAccess.Client.OracleParameter[]
- {
- new Oracle.ManagedDataAccess.Client.OracleParameter(":UserID",userID),
- new Oracle.ManagedDataAccess.Client.OracleParameter(":PurviewID", Convert.ToInt32(dataRow["PurviewID"])),
- new Oracle.ManagedDataAccess.Client.OracleParameter(":PurviewType",Convert.ToInt32(dataRow["PurviewType"])),
- };
- dsExist = oracleTrConn.GetSqlResultToDs(sql, paras);
- if (dsExist != null && dsExist.Tables[0].Rows.Count == 0)
- {
- sql = "INSERT INTO TP_MST_UserPurview"
- + "(UserID"
- + " ,PurviewID"
- + " ,PurviewType "
- + " ,CreateUserID) "
- + " VALUES "
- + "(:UserID"
- + " ,:PurviewID"
- + " ,:PurviewType"
- + " ,:CreateUserID) ";
- paras = new Oracle.ManagedDataAccess.Client.OracleParameter[]
- {
- new Oracle.ManagedDataAccess.Client.OracleParameter(":UserID",userID),
- new Oracle.ManagedDataAccess.Client.OracleParameter(":PurviewID", Convert.ToInt32(dataRow["PurviewID"])),
- new Oracle.ManagedDataAccess.Client.OracleParameter(":PurviewType",Convert.ToInt32(dataRow["PurviewType"])),
- new Oracle.ManagedDataAccess.Client.OracleParameter(":CreateUserID",sUserInfo.UserID),
- };
- returnRowCount += oracleTrConn.ExecuteNonQuery(sql, paras);
- }
- }
- else
- {
- sql = "INSERT INTO TP_MST_UserPurview"
- + "(UserID"
- + " ,PurviewID"
- + " ,PurviewType "
- + " ,CreateUserID) "
- + " VALUES "
- + "(:UserID"
- + " ,:PurviewID"
- + " ,:PurviewType"
- + " ,:CreateUserID) ";
- paras = new Oracle.ManagedDataAccess.Client.OracleParameter[]
- {
- new Oracle.ManagedDataAccess.Client.OracleParameter(":UserID",userID),
- new Oracle.ManagedDataAccess.Client.OracleParameter(":PurviewID", Convert.ToInt32(dataRow["PurviewID"])),
- new Oracle.ManagedDataAccess.Client.OracleParameter(":PurviewType",Convert.ToInt32(dataRow["PurviewType"])),
- new Oracle.ManagedDataAccess.Client.OracleParameter(":CreateUserID",sUserInfo.UserID),
- };
- returnRowCount += oracleTrConn.ExecuteNonQuery(sql, paras);
- }
- }
- }
- }
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return returnRowCount;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == System.Data.ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Disconnect();
- }
- }
- }
- /// <summary>
- /// 保存用户的功能权限
- /// </summary>
- /// <param name="userRightData">用户权限记录集</param>
- /// <param name="userID">用户ID</param>
- /// <param name="licenseType">License授权方式:1→按站点 2→按用户</param>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <returns>
- /// 执行更新影响的数据行数
- /// 大于0:正常操作,返回
- /// 等于0:无任何影响行数
- /// -1:更新的功能权限有超过授权站点数
- /// </returns>
- public static FunRightResultEntity SaveUserFunctionRight(DataSet userRightData, int userID, int licenseType, SUserInfo sUserInfo)
- {
- FunRightResultEntity result = new FunRightResultEntity();
- result.OperationStatus = 0;
- result.LicenseFunctions = "";
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- if (userRightData == null || userRightData.Tables.Count < 1 || userID < 1)
- {
- return result;
- }
- oracleTrConn.Connect();
- #region 删除数据
- //string sqlString1 = "DELETE TP_MST_UserRight WHERE UserID = :pUserID";
- //Oracle.ManagedDataAccess.Client.OracleParameter[] paras1 = new Oracle.ManagedDataAccess.Client.OracleParameter[]
- // {
- // new Oracle.ManagedDataAccess.Client.OracleParameter(":pUserID", OracleDbType.Int32, userID, ParameterDirection.Input)
- // };
- //result.OperationStatus += oracleTrConn.ExecuteNonQuery(sqlString1, paras1);
- #endregion
- #region 增加新的数据
- // 对现有功能权限进行遍历
- foreach (DataRow dataRow in userRightData.Tables[0].Rows)
- {
- string sqlString1 = "DELETE TP_MST_UserRight WHERE UserID = :pUserID and FunctionCode=:FunctionCode";
- Oracle.ManagedDataAccess.Client.OracleParameter[] paras1 = new Oracle.ManagedDataAccess.Client.OracleParameter[]
- {
- new Oracle.ManagedDataAccess.Client.OracleParameter(":pUserID", OracleDbType.Int32, userID, ParameterDirection.Input),
- new Oracle.ManagedDataAccess.Client.OracleParameter(":FunctionCode", OracleDbType.Varchar2, dataRow["FunctionCode"], ParameterDirection.Input)
- };
- result.OperationStatus += oracleTrConn.ExecuteNonQuery(sqlString1, paras1);
- if (dataRow["Choose"].ToString() == "1")
- {
- string sqlString2 = "INSERT INTO TP_MST_UserRight "
- + "(UserID"
- + ",FunctionCode"
- + ",CreateUserID)"
- + " VALUES "
- + "(:pUserID"
- + ",:pFunctionCode"
- + ",:pCreateUserID)";
- Oracle.ManagedDataAccess.Client.OracleParameter[] paras2 = new Oracle.ManagedDataAccess.Client.OracleParameter[]
- {
- new Oracle.ManagedDataAccess.Client.OracleParameter(":pUserID", OracleDbType.Int32, userID, ParameterDirection.Input),
- new Oracle.ManagedDataAccess.Client.OracleParameter(":pFunctionCode",OracleDbType.Varchar2, dataRow["FunctionCode"].ToString(), ParameterDirection.Input),
- new Oracle.ManagedDataAccess.Client.OracleParameter(":pCreateUserID", OracleDbType.Int32, sUserInfo.UserID, ParameterDirection.Input)
- };
- result.OperationStatus += oracleTrConn.ExecuteNonQuery(sqlString2, paras2);
- }
- }
- #endregion
- #region 按站点授权时,需要检查每一个站点是否超出授权数
- //if (licenseType == Constant.SYSTEM_LICENSETYPE_BASE_FUNCTION)
- //{
- // // 需要对更改的权限进行限制检查,查询已经使用的功能数量
- // string sqlString3 = "SELECT C.FunctionCode, COUNT(C.UserID) UseNum"
- // + " FROM TP_MST_UserRight C INNER JOIN T_MST_User D ON C.UserID = D.UserID"
- // + " INNER JOIN T_SYS_FUNCTION E ON C.FunctionCode = E.FunctionCode"
- // + " WHERE D.ValueFlag > 0 AND (E.FunctionFlag = 1) GROUP BY C.FunctionCode";
- // DataTable dtUserRightNum = oracleTrConn.GetSqlResultToDt(sqlString3);
- // bool isExistOverLicenseNumber = false;
- // foreach (DataRow newRowNum in dtUserRightNum.Rows)
- // {
- // #region 比对是否超出了授权数量
- // DataRow[] dataRow = userRightData.Tables[0].Select("FunctionCode = " + newRowNum["FunctionCode"].ToString() + "");
- // if (dataRow.Length > 0)
- // {
- // /*暂时撤销=,否则使用数等于授权数时保存提示超出授权数 BY 陈建 2014-03-15 Start here*/
- // //if (Convert.ToInt32(dataRow[0]["LicensesNumber"]) <= Convert.ToInt32(sqlDataReader["UseNum"]))
- // if (Convert.ToInt32(dataRow[0]["LicensesNumber"]) < Convert.ToInt32(newRowNum["UseNum"]))
- // /*暂时撤销=,否则使用数等于授权数时保存提示超出授权数 BY 陈建 2014-03-15 End here*/
- // {
- // isExistOverLicenseNumber = true;
- // if (string.IsNullOrEmpty(overLicenseNumberFunctions))
- // {
- // result.LicenseFunctions = "[" + dataRow[0]["FunctionCode"].ToString() + "] "
- // + dataRow[0]["FunctionName"].ToString();
- // }
- // else
- // {
- // result.LicenseFunctions += "; [" + dataRow[0]["FunctionCode"].ToString() + "] "
- // + dataRow[0]["FunctionName"].ToString();
- // }
- // }
- // }
- // #endregion
- // }
- // // 存在超过授权站点数的情况,直接返回
- // if (isExistOverLicenseNumber)
- // {
- // oracleTrConn.Rollback();
- // oracleTrConn.Disconnect();
- // result.OperationStatus = -1;
- // return result;
- // }
- //}
- #endregion
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return result;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Disconnect();
- }
- }
- }
- /// <summary>
- /// 保存用户的功能权限
- /// </summary>
- /// <param name="userRightData">用户权限记录集</param>
- /// <param name="userID">用户ID</param>
- /// <param name="licenseType">License授权方式:1→按站点 2→按用户</param>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <returns>
- /// 执行更新影响的数据行数
- /// 大于0:正常操作,返回
- /// 等于0:无任何影响行数
- /// -1:更新的功能权限有超过授权站点数
- /// </returns>
- public static FunRightResultEntity SaveUserFunctionTwoRight(DataSet userRightData, int userID, int licenseType, SUserInfo sUserInfo, DataSet userRightTwoData)
- {
- FunRightResultEntity result = new FunRightResultEntity();
- result.OperationStatus = 0;
- result.LicenseFunctions = "";
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- if (userRightData == null || userRightData.Tables.Count < 1 || userID < 1)
- {
- return result;
- }
- oracleTrConn.Connect();
- #region 删除数据
- //string sqlString1 = "DELETE TP_MST_UserRight WHERE UserID = :pUserID";
- //Oracle.ManagedDataAccess.Client.OracleParameter[] paras1 = new Oracle.ManagedDataAccess.Client.OracleParameter[]
- // {
- // new Oracle.ManagedDataAccess.Client.OracleParameter(":pUserID", OracleDbType.Int32, userID, ParameterDirection.Input)
- // };
- //result.OperationStatus += oracleTrConn.ExecuteNonQuery(sqlString1, paras1);
- #endregion
- #region 增加新的数据
- // 对现有功能权限进行遍历
- foreach (DataRow dataRow in userRightData.Tables[0].Rows)
- {
- string sqlString1 = "DELETE TP_MST_UserRight WHERE UserID = :pUserID and FunctionCode=:FunctionCode";
- Oracle.ManagedDataAccess.Client.OracleParameter[] paras1 = new Oracle.ManagedDataAccess.Client.OracleParameter[]
- {
- new Oracle.ManagedDataAccess.Client.OracleParameter(":pUserID", OracleDbType.Int32, userID, ParameterDirection.Input),
- new Oracle.ManagedDataAccess.Client.OracleParameter(":FunctionCode", OracleDbType.Varchar2, dataRow["FunctionCode"], ParameterDirection.Input)
- };
- result.OperationStatus += oracleTrConn.ExecuteNonQuery(sqlString1, paras1);
- if (dataRow["Choose"].ToString() == "1" || dataRow["FunctionCode"].ToString() == "[ALL]")
- {
- string sqlString2 = "INSERT INTO TP_MST_UserRight "
- + "(UserID"
- + ",FunctionCode"
- + ",CreateUserID)"
- + " VALUES "
- + "(:pUserID"
- + ",:pFunctionCode"
- + ",:pCreateUserID)";
- Oracle.ManagedDataAccess.Client.OracleParameter[] paras2 = new Oracle.ManagedDataAccess.Client.OracleParameter[]
- {
- new Oracle.ManagedDataAccess.Client.OracleParameter(":pUserID", OracleDbType.Int32, userID, ParameterDirection.Input),
- new Oracle.ManagedDataAccess.Client.OracleParameter(":pFunctionCode",OracleDbType.Varchar2, dataRow["FunctionCode"].ToString(), ParameterDirection.Input),
- new Oracle.ManagedDataAccess.Client.OracleParameter(":pCreateUserID", OracleDbType.Int32, sUserInfo.UserID, ParameterDirection.Input)
- };
- result.OperationStatus += oracleTrConn.ExecuteNonQuery(sqlString2, paras2);
- }
- }
- #endregion
- // 二期
- #region 增加新的数据
- // 对现有功能权限进行遍历
- //foreach (DataRow dataRow in userRightTwoData.Tables[0].Rows)
- //{
- // if (dataRow["Choose"].ToString() == "1" || dataRow["FunctionCode"].ToString() == "[ALL2]")
- // {
- // string sqlString2 = "INSERT INTO TP_MST_UserRight "
- // + "(UserID"
- // + ",FunctionCode"
- // + ",CreateUserID)"
- // + " VALUES "
- // + "(:pUserID"
- // + ",:pFunctionCode"
- // + ",:pCreateUserID)";
- // Oracle.ManagedDataAccess.Client.OracleParameter[] paras2 = new Oracle.ManagedDataAccess.Client.OracleParameter[]
- // {
- // new Oracle.ManagedDataAccess.Client.OracleParameter(":pUserID", OracleDbType.Int32, userID, ParameterDirection.Input),
- // new Oracle.ManagedDataAccess.Client.OracleParameter(":pFunctionCode",OracleDbType.Varchar2, dataRow["FunctionCode"].ToString(), ParameterDirection.Input),
- // new Oracle.ManagedDataAccess.Client.OracleParameter(":pCreateUserID", OracleDbType.Int32, sUserInfo.UserID, ParameterDirection.Input)
- // };
- // result.OperationStatus += oracleTrConn.ExecuteNonQuery(sqlString2, paras2);
- // }
- //}
- #endregion
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return result;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Disconnect();
- }
- }
- }
- /// <summary>
- /// 编辑用户密码
- /// </summary>
- /// <param name="userPassWord">用户密码</param>
- /// <param name="userCode">用户编码</param>
- /// <param name="userName">用户名称</param>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <returns>string</returns>
- public static string SaveUserPassWord(string userPassWord, string userCode, string userName, SUserInfo sUserInfo)
- {
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- string strPassWord = Encryption.GetMD5String(userPassWord);
- oracleTrConn.Connect();
- #region 更新TP_MST_User表的密码
- string sqlString1 = " UPDATE TP_MST_User SET Password =:passWord WHERE UserCode =:UserCode and accountid=:accountid";
- OracleParameter[] parmeters1 = new OracleParameter[]
- {
- new OracleParameter(":accountid",sUserInfo.AccountID),
- new OracleParameter(":passWord",strPassWord),
- new OracleParameter(":UserCode",userCode),
- //new OracleParameter(":UserName",userName)
- };
- #endregion
- oracleTrConn.ExecuteNonQuery(sqlString1, parmeters1);
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- //sUserInfo.SetUserInfoPassWord(strPassWord);
- return strPassWord;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Disconnect();
- }
- }
- }
- /// <summary>
- /// 保存帐套相关信息
- /// </summary>
- /// <param name="accountData">帐套数据集合</param>
- /// <param name="defaultPassword">默认密码</param>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <returns>1 存在相同的帐套代码 2表示有数据被修改 3表示没有数据被修改</returns>
- public static int SaveAccountData(DataTable accountData, string defaultPassword, SUserInfo sUserInfo)
- {
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- // 检验参数的有效性
- if (accountData == null && accountData.Rows.Count < 0)
- {
- return 3;
- }
- int intResult = 2;
- oracleTrConn.Connect();
- #region 对要保存的帐套数据进行必要的验证
- foreach (DataRow dataRow in accountData.Rows)
- {
- // 新建帐套
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 判断是否存在相同的帐套代码
- string sqlString1 = "SELECT Count(*) FROM TP_MST_Account WHERE AccountCode = :accountCode";
- OracleParameter[] parmeters1 = new OracleParameter[]
- {
- new OracleParameter(":accountCode",dataRow["AccountCode"].ToString())
- };
- string strTemp1 = oracleTrConn.GetSqlResultToStr(sqlString1, parmeters1);
- if (strTemp1 != "0")
- {
- intResult = 1;
- break;
- }
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 判断是否存在相同的帐套代码
- string sqlString2 = "SELECT Count(*) FROM TP_MST_Account WHERE AccountCode = :accountCode and AccountID <> :accountID";
- OracleParameter[] parmeters2 = new OracleParameter[]
- {
- new OracleParameter(":accountCode",dataRow["AccountCode"].ToString()),
- new OracleParameter(":accountID",dataRow["AccountID"])
- };
- string strTemp1 = oracleTrConn.GetSqlResultToStr(sqlString2, parmeters2);
- if (strTemp1 != "0")
- {
- intResult = 1;
- break;
- }
- #endregion
- }
- }
- if (intResult == 1)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- return intResult;
- }
- #endregion
- string accountID = ""; // 存储新插入帐套ID
- string orgID = ""; // 存储新插入部门ID
- string userID = ""; //用户ID
- foreach (DataRow dataRow in accountData.Rows)
- {
- // 新建帐套
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 新增帐套信息
- accountID = oracleTrConn.GetSqlResultToStr("SELECT SEQ_MST_ACCOUNT_ACCOUNTID.nextval FROM dual");
- #region 向T_MST_Account插入数据
- string sqlString1 = "INSERT INTO TP_MST_Account "
- + "(AccountId"
- + ",AccountCode"
- + ",AccountName"
- + ",Remarks"
- + ",ValueFlag"
- + ",CreateUserID"
- + ",UpdateUserID)"
- + " VALUES "
- + "(:accountId"
- + ",:accountCode"
- + ",:accountName"
- + ",:remarks"
- + ",:valueFlag"
- + ",:createUserID"
- + ",:updateUserID)";
- OracleParameter[] parmeters1 = new OracleParameter[]
- {
- new OracleParameter(":accountId", OracleDbType.Int32, accountID, ParameterDirection.Input),
- new OracleParameter(":accountCode",OracleDbType.Varchar2, dataRow["AccountCode"].ToString(), ParameterDirection.Input),
- new OracleParameter(":accountName",OracleDbType.NVarchar2, dataRow["AccountName"].ToString(), ParameterDirection.Input),
- new OracleParameter(":remarks",OracleDbType.NVarchar2, dataRow["Remarks"].ToString(), ParameterDirection.Input),
- new OracleParameter(":valueFlag", OracleDbType.Char, "1", ParameterDirection.Input),
- new OracleParameter(":createUserID", OracleDbType.Int32,sUserInfo.UserID, ParameterDirection.Input),
- new OracleParameter(":updateUserID", OracleDbType.Int32,sUserInfo.UserID, ParameterDirection.Input)
- };
- oracleTrConn.ExecuteNonQuery(sqlString1, parmeters1);
- #endregion
- orgID = oracleTrConn.GetSqlResultToStr("SELECT SEQ_MST_ORGANIZATION_ID.nextval FROM dual");
- #region 根据新插入的帐套ID,生成该帐套下的组织机构001部门
- string sqlString2 = "INSERT INTO TP_MST_Organization "
- + "(OrganizationID"
- + ",OrganizationCode"
- + ",OrganizationName"
- + ",OrganizationFullName"
- + ",Address"
- + ",AccountID"
- + ",ValueFlag"
- + ",CreateUserID"
- + ",UpdateUserID"
- + ",IsLeafNode)"
- + " VALUES "
- + "(:organizationID"
- + ",:organizationCode"
- + ",:organizationName"
- + ",:organizationfullName"
- + ",:address"
- + ",:accountID"
- + ",:valueFlag"
- + ",:createUserID"
- + ",:updateUserID"
- + ",:isLeafNode)";
- OracleParameter[] parmeters2 = new OracleParameter[]
- {
- new OracleParameter(":organizationID", Convert.ToInt32(orgID)),
- new OracleParameter(":organizationCode","001"),
- new OracleParameter(":organizationName",dataRow["AccountName"].ToString()),
- new OracleParameter(":organizationfullName",dataRow["AccountName"].ToString()),
- new OracleParameter(":address","-"),
- new OracleParameter(":accountID",Convert.ToInt32(accountID)),
- new OracleParameter(":valueFlag","1"),
- new OracleParameter(":createUserID",sUserInfo.UserID),
- new OracleParameter(":updateUserID",sUserInfo.UserID),
- new OracleParameter(":isLeafNode","0")
- };
- oracleTrConn.ExecuteNonQuery(sqlString2, parmeters2);
- #endregion
- string orgID2 = oracleTrConn.GetSqlResultToStr("SELECT SEQ_MST_ORGANIZATION_ID.nextval FROM dual");
- #region 根据新插入的帐套ID,生成该帐套下的组织机构001001部门
- string sqlString21 = "INSERT INTO TP_MST_Organization "
- + "(OrganizationID"
- + ",OrganizationCode"
- + ",OrganizationName"
- + ",OrganizationFullName"
- + ",Address"
- + ",AccountID"
- + ",ValueFlag"
- + ",CreateUserID"
- + ",UpdateUserID"
- + ",IsLeafNode)"
- + " VALUES "
- + "(:organizationID"
- + ",:organizationCode"
- + ",:organizationName"
- + ",:organizationfullName"
- + ",:address"
- + ",:accountID"
- + ",:valueFlag"
- + ",:createUserID"
- + ",:updateUserID"
- + ",:isLeafNode)";
- OracleParameter[] parmeters21 = new OracleParameter[]
- {
- new OracleParameter(":organizationID", Convert.ToInt32(orgID2)),
- new OracleParameter(":organizationCode","001001"),
- new OracleParameter(":organizationName",dataRow["AccountName"].ToString()),
- new OracleParameter(":organizationfullName",dataRow["AccountName"].ToString()+"→"+dataRow["AccountName"].ToString()),
- new OracleParameter(":address","-"),
- new OracleParameter(":accountID",Convert.ToInt32(accountID)),
- new OracleParameter(":valueFlag","1"),
- new OracleParameter(":createUserID",sUserInfo.UserID),
- new OracleParameter(":updateUserID",sUserInfo.UserID),
- new OracleParameter(":isLeafNode","1")
- };
- oracleTrConn.ExecuteNonQuery(sqlString21, parmeters21);
- #endregion
- userID = oracleTrConn.GetSqlResultToStr("SELECT SEQ_MST_USER_USERID.nextval FROM dual");
- #region 根据新插入的帐套ID和部门ID 生成admin用户
- string sqlString4 = "INSERT INTO TP_MST_User "
- + "(UserID"
- + ",UserCode"
- + ",UserName"
- + ",Password"
- + ",OrganizationID"
- + ",AccountID"
- + ",AccountCode"
- + ",ValueFlag"
- + ",CreateUserID"
- + ",UpdateUserID"
- //+ ",Relatedobjecttype"
- + ",CanSmartLogin"
- + ",CanPCLogin"
- + ",IsWorker)"
- + " VALUES ("
- + ":userID"
- + ",:userCode"
- + ",:UserName"
- + ",:Password"
- + ",:organizationID"
- + ",:accountID"
- + ",:accountCode"
- + ",:valueFlag"
- + ",:createUserID"
- + ",:updateUserID"
- //+ ",:relatedobjecttype"
- + ",'0'"
- + ",'1'"
- + ",'0'"
- //+ " FROM TP_MST_Account WHERE AccountID=:accountID";
- + ")";
- OracleParameter[] parmeters4 = new OracleParameter[]
- {
- new OracleParameter(":userID",Convert.ToInt32(userID)),
- new OracleParameter(":userCode","admin"),
- new OracleParameter(":UserName","系统管理员"),
- new OracleParameter(":Password",defaultPassword),
- new OracleParameter(":organizationID",Convert.ToInt32(orgID)),
- new OracleParameter(":accountID",Convert.ToInt32(accountID)),
- new OracleParameter(":accountCode",dataRow["AccountCode"].ToString()),
- new OracleParameter(":valueFlag","1"),
- new OracleParameter(":createUserID", sUserInfo.UserID),
- new OracleParameter(":updateUserID", sUserInfo.UserID),
- //new OracleParameter(":relatedobjecttype", 1)
- };
- oracleTrConn.ExecuteNonQuery(sqlString4, parmeters4);
- #endregion
- #region 根据新插入的帐套ID 生成业务系统参数数据
- string sqlString6 = "INSERT INTO TP_MST_SYSTEMSETTING "
- + "("
- + "SETTINGCODE"
- + ",SETTINGNAME"
- + ",CATEGORYNAME"
- + ",SETTINGVALUE"
- + ",SETTINGDEFAULTVALUES"
- + ",ACCOUNTID"
- + ",REMARKS"
- + ",TOOLTIP"
- + ",EDITFLAG"
- + ",UPDATEUSERID"
- + ")"
- + " SELECT "
- + "SETTINGCODE"
- + ",SETTINGNAME"
- + ",CATEGORYNAME"
- //+ ",SETTINGVALUE"
- + ",SETTINGDEFAULTVALUES"
- + ",SETTINGDEFAULTVALUES"
- + ",:accountID"
- + ",REMARKS"
- + ",TOOLTIP"
- + ",EDITFLAG"
- + ",:updateUserID"
- + " FROM TP_MST_SystemSetting "
- //+ " WHERE AccountID IN (SELECT AccountID FROM TP_MST_User WHERE userCode=:userCode)";
- + " WHERE AccountID = :systemaccountID";
- OracleParameter[] parmeters6 = new OracleParameter[]
- {
- new OracleParameter(":accountID",Convert.ToInt32(accountID)),
- new OracleParameter(":updateUserID",sUserInfo.UserID),
- //new OracleParameter(":userCode","system")
- new OracleParameter(":systemaccountID",sUserInfo.AccountID)
- };
- oracleTrConn.ExecuteNonQuery(sqlString6, parmeters6);
- #endregion
- #region 根据新插入的帐套ID 生成系统日期信息
- string sqlString7 = "INSERT INTO TP_MST_SYSTEMDATE "
- + "("
- + "SYSTEMDATETYPE"
- + ",DATEVALUE"
- + ",REMARKS"
- + ",ACCOUNTID"
- + ",UPDATEUSERID"
- + ")"
- + " SELECT "
- + "SYSTEMDATETYPE"
- + ",TRUNC(sysdate)"
- + ",REMARKS"
- + ",:accountid"
- + ",:UPDATEUSERID"
- + " FROM TP_MST_SYSTEMDATE WHERE AccountID = :sysaccountid";
- OracleParameter[] parmeters7 = new OracleParameter[]
- {
- new OracleParameter(":accountid",Convert.ToInt32(accountID)),
- new OracleParameter(":UPDATEUSERID",sUserInfo.UserID),
- new OracleParameter(":sysaccountid",sUserInfo.AccountID),
- };
- oracleTrConn.ExecuteNonQuery(sqlString7, parmeters7);
- #endregion
- #region 根据新插入的产品类别数据信息
- string sqlString8 = "INSERT INTO TP_MST_GoodsType "
- + "("
- + "GOODSTYPECODE"
- + ",GOODSTYPENAME"
- + ",GOODSTYPEFULLNAME"
- + ",ISLEAFNODE"
- + ",REMARKS"
- + ",ACCOUNTID"
- + ",VALUEFLAG"
- //+ ",CREATETIME"
- + ",CREATEUSERID"
- + ",UPDATEUSERID"
- + ") "
- + " VALUES( "
- + "'001'"
- + ",'产品类别'"
- + ",'产品类别'"
- + ",'0'"
- + ",null"
- + ",:accountid"
- + ",'1'"
- //+ ",sysdate"
- + ",:createUserid"
- + ",:updateUserid"
- // + " FROM TP_MST_GoodsType WHERE ACCOUNTID IN (SELECT AccountID FROM TP_MST_User WHERE userCode=:userCode)";
- + ")";
- OracleParameter[] parmeters8 = new OracleParameter[]
- {
- new OracleParameter(":accountid",Convert.ToInt32(accountID)),
- new OracleParameter(":createUserid",sUserInfo.UserID),
- new OracleParameter(":updateUserid",sUserInfo.UserID),
- // new OracleParameter(":userCode","system")
- };
- oracleTrConn.ExecuteNonQuery(sqlString8, parmeters8);
- string sqlString81 = "INSERT INTO TP_MST_GoodsType "
- + "("
- + "GOODSTYPECODE"
- + ",GOODSTYPENAME"
- + ",GOODSTYPEFULLNAME"
- + ",ISLEAFNODE"
- + ",REMARKS"
- + ",ACCOUNTID"
- + ",VALUEFLAG"
- //+ ",CREATETIME"
- + ",CREATEUSERID"
- + ",UPDATEUSERID"
- + ") "
- + " VALUES( "
- + "'001001'"
- + ",'大件'"
- + ",'产品类别→大件'"
- + ",'1'"
- + ",null"
- + ",:accountid"
- + ",'1'"
- //+ ",sysdate"
- + ",:createUserid"
- + ",:updateUserid"
- // + " FROM TP_MST_GoodsType WHERE ACCOUNTID IN (SELECT AccountID FROM TP_MST_User WHERE userCode=:userCode)";
- + ")";
- OracleParameter[] parmeters81 = new OracleParameter[]
- {
- new OracleParameter(":accountid",Convert.ToInt32(accountID)),
- new OracleParameter(":createUserid",sUserInfo.UserID),
- new OracleParameter(":updateUserid",sUserInfo.UserID),
- // new OracleParameter(":userCode","system")
- };
- oracleTrConn.ExecuteNonQuery(sqlString81, parmeters81);
- string sqlString82 = "INSERT INTO TP_MST_GoodsType "
- + "("
- + "GOODSTYPECODE"
- + ",GOODSTYPENAME"
- + ",GOODSTYPEFULLNAME"
- + ",ISLEAFNODE"
- + ",REMARKS"
- + ",ACCOUNTID"
- + ",VALUEFLAG"
- //+ ",CREATETIME"
- + ",CREATEUSERID"
- + ",UPDATEUSERID"
- + ") "
- + " VALUES( "
- + "'001002'"
- + ",'小件'"
- + ",'产品类别→小件'"
- + ",'1'"
- + ",null"
- + ",:accountid"
- + ",'1'"
- //+ ",sysdate"
- + ",:createUserid"
- + ",:updateUserid"
- // + " FROM TP_MST_GoodsType WHERE ACCOUNTID IN (SELECT AccountID FROM TP_MST_User WHERE userCode=:userCode)";
- + ")";
- OracleParameter[] parmeters82 = new OracleParameter[]
- {
- new OracleParameter(":accountid",Convert.ToInt32(accountID)),
- new OracleParameter(":createUserid",sUserInfo.UserID),
- new OracleParameter(":updateUserid",sUserInfo.UserID),
- // new OracleParameter(":userCode","system")
- };
- oracleTrConn.ExecuteNonQuery(sqlString82, parmeters82);
- #endregion
- #region 根据新插入的产品分级数据信息
- string sqlString9 = "INSERT INTO TP_MST_GoodsLevel "
- + "("
- + "GoodsLevelName,"
- + "GoodsLevelTypeID,"
- + "IsSemiFinishedEx,"
- + "SFEDisplayNo,"
- + "IsFinishedEx,"
- + "FEDisplayNo,"
- + "IsFinished,"
- + "IsScrapped,"
- + "CanDisable,"
- + "Remarks,"
- + "AccountID,"
- + "ValueFlag,"
- + "CreateUserID,"
- + "UpdateUserID"
- + ") "
- + " SELECT "
- + "GoodsLevelTypeName,"
- + "GoodsLevelTypeID,"
- + "IsSemiFinishedEx,"
- + "SFEDisplayNo,"
- + "IsFinishedEx,"
- + "FEDisplayNo,"
- + "IsFinished,"
- + "IsScrapped,"
- + "CanDisable,"
- + "Remarks,"
- + ":accountID,"
- + "'1',"
- + ":createUserid,"
- + ":updateUserid"
- + " FROM TP_SYS_GoodsLevelType";
- OracleParameter[] parmeters9 = new OracleParameter[]
- {
- new OracleParameter(":accountID",Convert.ToInt32(accountID)),
- new OracleParameter(":createUserid",sUserInfo.UserID),
- new OracleParameter(":updateUserid",sUserInfo.UserID)
- };
- oracleTrConn.ExecuteNonQuery(sqlString9, parmeters9);
- #endregion
- #region 报销 结算方式
- string sqlString10 =
- @"insert into TB_MST_SETTLEMENTTYPE
- (SETTLEMENTTYPENAME,
- ISCURRENCYSETTLEMENT,
- REMARKS,
- ACCOUNTID,
- VALUEFLAG,
- CREATEUSERID,
- UPDATEUSERID,
- SUBJECTID)
- values
- ('(报销)', '0', '报销平账时用', :ACCOUNTID, '9', :createUserid, :createUserid, null)";
- OracleParameter[] parmeters10 = new OracleParameter[]
- {
- new OracleParameter(":ACCOUNTID",Convert.ToInt32(accountID)),
- new OracleParameter(":createUserid",sUserInfo.UserID),
- };
- oracleTrConn.ExecuteNonQuery(sqlString10, parmeters10);
- #endregion
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 更新帐套信息
- string sqlString = "UPDATE TP_MST_Account SET "
- // 编码不允许修改
- //+ " AccountCode = :accountCode,"
- + " AccountName = :accountName,"
- + " Remarks = :remarks,"
- + " ValueFlag = :valueFlag,"
- //+ " UpdateTime = :updateTime,"
- + " UpdateUserID = :updateUserID"
- + " WHERE AccountID = :accountID";
- OracleParameter[] parmeters1 = new OracleParameter[]
- {
- //new OracleParameter(":accountCode",dataRow["AccountCode"].ToString()),
- new OracleParameter(":accountName",dataRow["AccountName"].ToString()),
- new OracleParameter(":remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":valueFlag",dataRow["ValueFlag"].ToString()),
- //new OracleParameter(":updateTime",DateTime.Now),
- new OracleParameter(":updateUserID",sUserInfo.UserID),
- new OracleParameter(":accountID",dataRow["AccountID"].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlString, parmeters1);
- #endregion
- }
- }
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return intResult;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Disconnect();
- }
- }
- }
- #endregion
- #region 报表工序基础信息
- /// <summary>
- /// 新建报表数据来源
- /// </summary>
- /// <param name="rptProcedureEntity">新建实体</param>
- /// <param name="dsSourse">工序数据源</param>
- /// <param name="userInfo">当前用户信息</param>
- /// <returns>
- /// 受影响行数
- /// </returns>
- public static int AddRptProcedure(RptProcedureEntity rptProcedureEntity, DataSet dsSourse, SUserInfo userInfo)
- {
- int RowsCount = 0;
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- oracleTrConn.Connect();
- StringBuilder sbSql = new StringBuilder();
- #region 添加报表数据来源信息
- //获取序列ID
- sbSql.Clear();
- sbSql.Append("select SEQ_MST_RPTPROCEDURE_ID.NEXTVAL from dual");
- int rptProcedureId = Convert.ToInt32(oracleTrConn.GetSqlResultToStr(sbSql.ToString()));
- //添加缺陷扣罚策略主体信息
- sbSql.Clear();
- sbSql.Append(@"Insert into TP_MST_RptProcedure
- (RptProcedureID,RptProcedureCode,RptProcedureName,RptProcedureType,
- AccountID,
- CreateUserID,UpdateUserID,displayno)
- Values
- (:RptProcedureID,:RptProcedureCode,:RptProcedureName,
- :RptProcedureType,:AccountID,
- :CreateUserID,:UpdateUserID,:displayno)");
- OracleParameter[] rptProcedureParas = new OracleParameter[] {
- new OracleParameter(":RptProcedureID",OracleDbType.Int32,
- rptProcedureId,ParameterDirection.Input),
- new OracleParameter(":RptProcedureCode",OracleDbType.NVarchar2,
- rptProcedureEntity.RptProcedureCode,ParameterDirection.Input),
- new OracleParameter(":RptProcedureName",OracleDbType.NVarchar2,
- rptProcedureEntity.RptProcedureName,ParameterDirection.Input),
- new OracleParameter(":RptProcedureType",OracleDbType.NVarchar2,
- rptProcedureEntity.RptProcedureTpye,ParameterDirection.Input),
- new OracleParameter(":AccountID",OracleDbType.Int32,
- userInfo.AccountID,ParameterDirection.Input),
- new OracleParameter(":CreateUserID",OracleDbType.Int32,
- userInfo.UserID,ParameterDirection.Input),
- new OracleParameter(":UpdateUserID",OracleDbType.Int32,
- userInfo.UserID,ParameterDirection.Input),
- new OracleParameter(":displayno",OracleDbType.Int32,
- rptProcedureEntity.DisplayNo,ParameterDirection.Input),
- };
- //连接数据库并返回结果
- RowsCount = oracleTrConn.ExecuteNonQuery(sbSql.ToString(), rptProcedureParas);
- #endregion
- #region 添加数据来源工序信息
- if (dsSourse != null)
- {
- DataTable dtrptSProcedure = dsSourse.Tables[Constant.INT_IS_ZERO];
- foreach (DataRow drFor in dtrptSProcedure.Rows)
- {
- sbSql.Clear();
- //获得序列
- sbSql.Append("select SEQ_MST_RPTSPROCEDURE_ID.NEXTVAL from dual");
- int rptSProcedureId = Convert.ToInt32(oracleTrConn.GetSqlResultToStr(sbSql.ToString()));
- //添加信息
- sbSql.Clear();
- sbSql.Append(@"Insert into TP_MST_RptSProcedure
- (RptSProcedureID,ProcedureID,
- ProcedureCode,ProcedureName,
- RptProcedureID,
- CreateUserID)
- Values
- (:RptSProcedureID,:ProcedureID,:ProcedureCode,
- :ProcedureName,:RptProcedureID,:CreateUserID)");
- OracleParameter[] rptSProcedureParas = new OracleParameter[] {
- new OracleParameter(":RptSProcedureID",OracleDbType.Int32,
- rptSProcedureId,ParameterDirection.Input),
- new OracleParameter(":ProcedureID",OracleDbType.Int32,
- drFor["ProcedureID"],ParameterDirection.Input),
- new OracleParameter(":ProcedureCode",OracleDbType.NVarchar2,
- drFor["ProcedureCode"],ParameterDirection.Input),
- new OracleParameter(":ProcedureName",OracleDbType.NVarchar2,
- drFor["ProcedureName"],ParameterDirection.Input),
- new OracleParameter(":RptProcedureID",OracleDbType.Int32,
- rptProcedureId,ParameterDirection.Input),
- new OracleParameter(":CreateUserID",OracleDbType.Int32,
- userInfo.UserID,ParameterDirection.Input),
- };
- //连接数据库并返回结果
- RowsCount += oracleTrConn.ExecuteNonQuery(sbSql.ToString(), rptSProcedureParas);
- }
- }
- #endregion
- #region 添加数据统计工序信息
- if (dsSourse != null)
- {
- DataTable dtrptTProcedure = dsSourse.Tables[Constant.INT_IS_ONE];
- foreach (DataRow drFor in dtrptTProcedure.Rows)
- {
- sbSql.Clear();
- //获得序列
- sbSql.Append("select SEQ_MST_RPTTPROCEDURE_ID.NEXTVAL from dual");
- int rptTProcedureId = Convert.ToInt32(oracleTrConn.GetSqlResultToStr(sbSql.ToString()));
- //添加信息
- sbSql.Clear();
- sbSql.Append(@"Insert into TP_MST_RptTProcedure
- (RptTProcedureID,ProcedureID,
- ProcedureCode,ProcedureName,
- RptProcedureID,
- CreateUserID)
- Values
- (:RptTProcedureID,:ProcedureID,:ProcedureCode,
- :ProcedureName,:RptProcedureID,:CreateUserID)");
- OracleParameter[] rptTProcedureParas = new OracleParameter[] {
- new OracleParameter(":RptTProcedureID",OracleDbType.Int32,
- rptTProcedureId,ParameterDirection.Input),
- new OracleParameter(":ProcedureID",OracleDbType.Int32,
- drFor["ProcedureID"],ParameterDirection.Input),
- new OracleParameter(":ProcedureCode",OracleDbType.NVarchar2,
- drFor["ProcedureCode"],ParameterDirection.Input),
- new OracleParameter(":ProcedureName",OracleDbType.NVarchar2,
- drFor["ProcedureName"],ParameterDirection.Input),
- new OracleParameter(":RptProcedureID",OracleDbType.Int32,
- rptProcedureId,ParameterDirection.Input),
- new OracleParameter(":CreateUserID",OracleDbType.Int32,
- userInfo.UserID,ParameterDirection.Input),
- };
- //连接数据库并返回结果
- RowsCount += oracleTrConn.ExecuteNonQuery(sbSql.ToString(), rptTProcedureParas);
- }
- }
- #endregion
- if (RowsCount == 0)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- else
- {
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- }
- return RowsCount;
- }
- //catch (Exception ex)
- catch
- {
- if (oracleTrConn.ConnState == System.Data.ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- return RowsCount;
- }
- }
- finally
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Disconnect();
- }
- }
- return RowsCount;
- }
- /// <summary>
- /// 修改报表数据来源
- /// </summary>
- /// <param name="rptProcedureEntity">新建实体</param>
- /// <param name="dsSourse">工序数据源</param>
- /// <param name="userInfo">当前用户信息</param>
- /// <returns>
- /// 受影响行数
- /// </returns>
- public static int UpdateRptProcedure(RptProcedureEntity rptProcedureEntity, DataSet dsSourse, SUserInfo userInfo)
- {
- int RowsCount = 0;
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- oracleTrConn.Connect();
- StringBuilder sbSql = new StringBuilder();
- #region 修改报表数据来源信息
- //修改报表数据来源信息
- sbSql.Clear();
- sbSql.Append(@"Update TP_MST_RptProcedure
- Set RptProcedureCode=:RptProcedureCode,
- RptProcedureName=:RptProcedureName,
- RptProcedureType=:RptProcedureType,
- UpdateUserID=:UpdateUserID,
- displayno=:displayno
- Where RptProcedureID=:RptProcedureID
- And OPTimeStamp=:OPTimeStamp");
- OracleParameter[] rptProcedureParas = new OracleParameter[] {
- new OracleParameter(":RptProcedureCode",OracleDbType.NVarchar2,
- rptProcedureEntity.RptProcedureCode,ParameterDirection.Input),
- new OracleParameter(":RptProcedureName",OracleDbType.NVarchar2,
- rptProcedureEntity.RptProcedureName,ParameterDirection.Input),
- new OracleParameter(":RptProcedureType",OracleDbType.NVarchar2,
- rptProcedureEntity.RptProcedureTpye,ParameterDirection.Input),
- new OracleParameter(":UpdateUserID",OracleDbType.Int32,
- userInfo.UserID,ParameterDirection.Input),
- new OracleParameter(":RptProcedureID",OracleDbType.Int32,
- rptProcedureEntity.RptProcedureID,ParameterDirection.Input),
- new OracleParameter(":OPTimeStamp",OracleDbType.TimeStamp,
- rptProcedureEntity.OPTimeStamp,ParameterDirection.Input),
- new OracleParameter(":displayno",OracleDbType.Int32,
- rptProcedureEntity.DisplayNo,ParameterDirection.Input),
- };
- //连接数据库并返回结果
- RowsCount = oracleTrConn.ExecuteNonQuery(sbSql.ToString(), rptProcedureParas);
- #endregion
- if (RowsCount == 1)
- {
- if (dsSourse != null)
- {
- #region 编辑数据来源工序信息
- DataTable dtrptSProcedure = dsSourse.Tables[Constant.INT_IS_ZERO];
- foreach (DataRow drFor in dtrptSProcedure.Rows)
- {
- if (drFor.RowState == DataRowState.Added) //添加
- {
- sbSql.Clear();
- //获得序列
- sbSql.Append("select SEQ_MST_RPTSPROCEDURE_ID.NEXTVAL from dual");
- int rptSProcedureId = Convert.ToInt32(oracleTrConn.GetSqlResultToStr(sbSql.ToString()));
- //添加信息
- sbSql.Clear();
- sbSql.Append(@"Insert into TP_MST_RptSProcedure
- (RptSProcedureID,ProcedureID,
- ProcedureCode,ProcedureName,
- RptProcedureID,
- CreateUserID)
- Values
- (:RptSProcedureID,:ProcedureID,:ProcedureCode,
- :ProcedureName,:RptProcedureID,:CreateUserID)");
- OracleParameter[] rptSProcedureParas = new OracleParameter[] {
- new OracleParameter(":RptSProcedureID",OracleDbType.Int32,
- rptSProcedureId,ParameterDirection.Input),
- new OracleParameter(":ProcedureID",OracleDbType.Int32,
- drFor["ProcedureID"],ParameterDirection.Input),
- new OracleParameter(":ProcedureCode",OracleDbType.NVarchar2,
- drFor["ProcedureCode"],ParameterDirection.Input),
- new OracleParameter(":ProcedureName",OracleDbType.NVarchar2,
- drFor["ProcedureName"],ParameterDirection.Input),
- new OracleParameter(":RptProcedureID",OracleDbType.Int32,
- rptProcedureEntity.RptProcedureID,ParameterDirection.Input),
- new OracleParameter(":CreateUserID",OracleDbType.Int32,
- userInfo.UserID,ParameterDirection.Input),
- };
- //连接数据库并返回结果
- RowsCount += oracleTrConn.ExecuteNonQuery(sbSql.ToString(), rptSProcedureParas);
- }
- else if (drFor.RowState == DataRowState.Modified)
- {
- //修改报表数据来源信息
- sbSql.Clear();
- sbSql.Append(@"Update TP_MST_RptSProcedure
- Set ProcedureID=:ProcedureID,
- ProcedureCode=:ProcedureCode,
- ProcedureName=:ProcedureName
- Where RptSProcedureID=:RptSProcedureID");
- OracleParameter[] rptProcedureUpdateParas = new OracleParameter[] {
- new OracleParameter(":ProcedureID",OracleDbType.Int32,
- drFor["ProcedureID"],ParameterDirection.Input),
- new OracleParameter(":ProcedureCode",OracleDbType.NVarchar2,
- drFor["ProcedureCode"],ParameterDirection.Input),
- new OracleParameter(":ProcedureName",OracleDbType.NVarchar2,
- drFor["ProcedureName"],ParameterDirection.Input),
- new OracleParameter(":RptSProcedureID",OracleDbType.Int32,
- drFor["RptSProcedureID"],ParameterDirection.Input),
- };
- //连接数据库并返回结果
- RowsCount = oracleTrConn.ExecuteNonQuery(sbSql.ToString(), rptProcedureUpdateParas);
- }
- else if (drFor.RowState == DataRowState.Deleted)
- {
- sbSql.Clear();
- sbSql.Append(@"Delete From TP_MST_RptSProcedure
- Where RptSProcedureID = :RptSProcedureID
- ");
- OracleParameter[] rptProcedureDelParas = new OracleParameter[] {
- new OracleParameter(":RptSProcedureID",OracleDbType.Int32,
- drFor["RptSProcedureID",DataRowVersion.Original],ParameterDirection.Input),
- };
- RowsCount += oracleTrConn.ExecuteNonQuery(sbSql.ToString(), rptProcedureDelParas);
- }
- }
- #endregion
- #region 编辑数据统计工序信息
- DataTable dtrptTProcedure = dsSourse.Tables[Constant.INT_IS_ONE];
- foreach (DataRow drFor in dtrptTProcedure.Rows)
- {
- if (drFor.RowState == DataRowState.Added) //添加
- {
- sbSql.Clear();
- //获得序列
- sbSql.Append("select SEQ_MST_RPTTPROCEDURE_ID.NEXTVAL from dual");
- int rptTProcedureId = Convert.ToInt32(oracleTrConn.GetSqlResultToStr(sbSql.ToString()));
- //添加信息
- sbSql.Clear();
- sbSql.Append(@"Insert into TP_MST_RptTProcedure
- (RptTProcedureID,ProcedureID,
- ProcedureCode,ProcedureName,
- RptProcedureID,
- CreateUserID)
- Values
- (:RptTProcedureID,:ProcedureID,:ProcedureCode,
- :ProcedureName,:RptProcedureID,:CreateUserID)");
- OracleParameter[] rptSProcedureParas = new OracleParameter[] {
- new OracleParameter(":RptTProcedureID",OracleDbType.Int32,
- rptTProcedureId,ParameterDirection.Input),
- new OracleParameter(":ProcedureID",OracleDbType.Int32,
- drFor["ProcedureID"],ParameterDirection.Input),
- new OracleParameter(":ProcedureCode",OracleDbType.NVarchar2,
- drFor["ProcedureCode"],ParameterDirection.Input),
- new OracleParameter(":ProcedureName",OracleDbType.NVarchar2,
- drFor["ProcedureName"],ParameterDirection.Input),
- new OracleParameter(":RptProcedureID",OracleDbType.Int32,
- rptProcedureEntity.RptProcedureID,ParameterDirection.Input),
- new OracleParameter(":CreateUserID",OracleDbType.Int32,
- userInfo.UserID,ParameterDirection.Input),
- };
- //连接数据库并返回结果
- RowsCount += oracleTrConn.ExecuteNonQuery(sbSql.ToString(), rptSProcedureParas);
- }
- else if (drFor.RowState == DataRowState.Modified)
- {
- //修改报表数据来源信息
- sbSql.Clear();
- sbSql.Append(@"Update TP_MST_RptTProcedure
- Set ProcedureID=:ProcedureID,
- ProcedureCode=:ProcedureCode,
- ProcedureName=:ProcedureName
- Where RptTProcedureID=:RptTProcedureID");
- OracleParameter[] rptProcedureUpdateParas = new OracleParameter[] {
- new OracleParameter(":ProcedureID",OracleDbType.Int32,
- drFor["ProcedureID"],ParameterDirection.Input),
- new OracleParameter(":ProcedureCode",OracleDbType.NVarchar2,
- drFor["ProcedureCode"],ParameterDirection.Input),
- new OracleParameter(":ProcedureName",OracleDbType.NVarchar2,
- drFor["ProcedureName"],ParameterDirection.Input),
- new OracleParameter(":RptTProcedureID",OracleDbType.Int32,
- drFor["RptTProcedureID"],ParameterDirection.Input),
- };
- //连接数据库并返回结果
- RowsCount = oracleTrConn.ExecuteNonQuery(sbSql.ToString(), rptProcedureUpdateParas);
- }
- else if (drFor.RowState == DataRowState.Deleted)
- {
- sbSql.Clear();
- sbSql.Append(@"Delete From TP_MST_RptTProcedure
- Where RptTProcedureID = :RptTProcedureID
- ");
- OracleParameter[] rptProcedureDelParas = new OracleParameter[] {
- new OracleParameter(":RptTProcedureID",OracleDbType.Int32,
- drFor["RptTProcedureID",DataRowVersion.Original],ParameterDirection.Input),
- };
- RowsCount += oracleTrConn.ExecuteNonQuery(sbSql.ToString(), rptProcedureDelParas);
- }
- }
- #endregion
- }
- }
- if (RowsCount == 0)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- else
- {
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- }
- return RowsCount;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == System.Data.ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Disconnect();
- }
- }
- }
- /// <summary>
- /// 停用报表数据来源
- /// </summary>
- /// <param name="rptProcedureEntity">新建实体</param>
- /// <param name="userInfo">当前用户信息</param>
- /// <returns>
- /// 受影响行数
- /// </returns>
- public static int StopRptProcedure(RptProcedureEntity rptProcedureEntity, SUserInfo userInfo)
- {
- int RowsCount = 0;
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- ServiceResultEntity srEntity = new ServiceResultEntity();
- try
- {
- oracleTrConn.Connect();
- StringBuilder sbSql = new StringBuilder();
- #region 修改报表数据来源信息
- //修改报表数据来源信息
- sbSql.Clear();
- sbSql.Append(@"Update TP_MST_RptProcedure
- Set ValueFlag = 0
- Where RptProcedureID=:RptProcedureID
- And OPTimeStamp=:OPTimeStamp");
- OracleParameter[] rptDelParas = new OracleParameter[] {
- new OracleParameter(":RptProcedureID",OracleDbType.NVarchar2,
- rptProcedureEntity.RptProcedureID,ParameterDirection.Input),
- new OracleParameter(":OPTimeStamp",OracleDbType.TimeStamp,
- rptProcedureEntity.OPTimeStamp,ParameterDirection.Input),
- };
- //连接数据库并返回结果
- RowsCount = oracleTrConn.ExecuteNonQuery(sbSql.ToString(), rptDelParas);
- #endregion
- if (RowsCount == 1)
- {
- #region 删除相关工序信息
- sbSql.Clear();
- sbSql.Append(@"Delete From TP_MST_RptSProcedure
- Where RptProcedureID = :RptProcedureID
- ");
- OracleParameter[] DeleteRptSParas = new OracleParameter[] {
- new OracleParameter(":RptProcedureID",OracleDbType.Int32,
- rptProcedureEntity.RptProcedureID,ParameterDirection.Input),
- };
- RowsCount += oracleTrConn.ExecuteNonQuery(sbSql.ToString(), DeleteRptSParas);
- sbSql.Clear();
- sbSql.Append(@"Delete From TP_MST_RptTProcedure
- Where RptProcedureID = :RptProcedureID
- ");
- OracleParameter[] DeleteRPTTParas = new OracleParameter[] {
- new OracleParameter(":RptProcedureID",OracleDbType.Int32,
- rptProcedureEntity.RptProcedureID,ParameterDirection.Input),
- };
- //删除质量考核产品明细数据(右边对应列数据)
- RowsCount += oracleTrConn.ExecuteNonQuery(sbSql.ToString(), DeleteRPTTParas);
- #endregion
- }
- //如果插入失败则回滚事务并关闭
- if (RowsCount == 0)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- else
- {
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- }
- return RowsCount;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == System.Data.ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- srEntity.Exception = ex;
- srEntity.Status = Constant.ServiceResultStatus.SystemError;
- return RowsCount;
- }
- finally
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Disconnect();
- }
- }
- }
- #endregion
- #region 私有方法
- /// <summary>
- /// 获取上级组织机构中已经存在的组织机构数量
- /// </summary>
- /// <param name="oracleTrConn">事务</param>
- /// <param name="parentCode">上级部门Code</param>
- /// <param name="AccountID">帐套ID</param>
- /// <returns>int组织机构数量</returns>
- private static int GetOrgLevelMax(IDBTransaction oracleTrConn,
- string parentCode, string AccountID)
- {
- try
- {
- string sqlString = "SELECT MAX(OrganizationCode)"
- + " FROM TP_MST_Organization"
- + " WHERE OrganizationCode LIKE '" + parentCode + "%'"
- + " AND LENGTH(OrganizationCode) = LENGTH('" + parentCode + "') + 3"
- + " AND AccountID = " + AccountID;
- DataSet returnDataset = oracleTrConn.GetSqlResultToDs(sqlString);
- int orgCount = 0;
- if (returnDataset.Tables[0].Rows.Count != 0)
- {
- if (!string.IsNullOrEmpty(returnDataset.Tables[0].Rows[0][0] + ""))
- {
- string orgCode = Convert.ToString(returnDataset.Tables[0].Rows[0][0]);
- string tmpCode = orgCode.Substring(orgCode.Length - 3);
- orgCount = Convert.ToInt32(tmpCode);
- }
- }
- return orgCount;
- }
- catch (Exception ex)
- {
- throw ex;
- }
- }
- /// <summary>
- /// 判断该组织机构下是否存在员工
- /// </summary>
- /// <param name="oracleTrConn">事务</param>
- /// <param name="organizationID">组织机构ID</param>
- /// <param name="AccountID">帐套ID</param>
- /// <returns>
- /// true:存在
- /// false:不存在
- /// </returns>
- private static bool IsExistStaff(IDBTransaction oracleTrConn,
- int organizationID, string AccountID)
- {
- try
- {
- string sqlString = "SELECT STAFFID FROM TP_HR_STAFF"
- + " WHERE OrganizationID = " + organizationID;
- DataSet returnDataset = oracleTrConn.GetSqlResultToDs(sqlString);
- if (returnDataset != null
- && returnDataset.Tables.Count > 0
- && returnDataset.Tables[0].Rows.Count > 0)
- {
- return true;
- }
- return false;
- }
- catch (Exception ex)
- {
- throw ex;
- }
- }
- #endregion
- /// <summary>
- /// 保存缺陷类别数据
- /// </summary>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <param name="dataDefectData">缺陷类别数据</param>
- /// <returns>int</returns>
- /// <remarks>
- /// 2014.09.10 任海 新建
- /// </remarks>
- public static int SaveDefectTypeData(DataTable dataDefectData, SUserInfo sUserInfo)
- {
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- // 检验参数的有效性
- if (dataDefectData == null && dataDefectData.Rows.Count < Constant.INT_IS_ZERO)
- {
- return 0;
- }
- int returnResult = 1;
- oracleTrConn.Connect();
- #region 对要保存的产品缺陷数据进行必要的验证
- foreach (DataRow dataRow in dataDefectData.Rows)
- {
- // 新建产品缺陷
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 判断是否存在相同的产品缺陷类别名称
- string sqlString = "SELECT Count(*) FROM TP_MST_DefectType WHERE AccountID = :AccountID and DefectTypeName =:DefectTypeName ";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":DefectTypeName",dataRow["DefectTypeName"].ToString())
- };
- string sqlReturnStr = oracleTrConn.GetSqlResultToStr(sqlString, oracleParameter);
- if (!Constant.INT_IS_ZERO.ToString().Equals(sqlReturnStr))
- {
- returnResult = -1;
- break;
- }
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 判断是否存在相同的产品缺陷类别名称
- string sqlStrings = "SELECT Count(*) FROM TP_MST_DefectType WHERE AccountID = :AccountID and DefectTypeName = :DefectTypeName and DefectTypeID <> :DefectTypeID";
- OracleParameter[] oracleParameters = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":DefectTypeName",dataRow["DefectTypeName"]),
- new OracleParameter(":DefectTypeID",dataRow["DefectTypeID"])
- };
- string sqlReturnStr = oracleTrConn.GetSqlResultToStr(sqlStrings, oracleParameters);
- if (!Constant.INT_IS_ZERO.ToString().Equals(sqlReturnStr))
- {
- returnResult = -1;
- break;
- }
- #endregion
- }
- }
- if (returnResult == -1)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- return returnResult;
- }
- #endregion
- foreach (DataRow dataRow in dataDefectData.Rows)
- {
- // 新建产品缺陷
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 新增产品缺陷信息
- #region 向TP_MST_Defect插入数据
- string sqlInsertString = "INSERT INTO TP_MST_DefectType"
- + "(DefectTypeName"
- + ",DisplayNo"
- + ",Remarks"
- + ",AccountID"
- + ",ValueFlag"
- + ",CreateTime"
- + ",UpdateTime"
- + ",UpdateUserID"
- + ",CreateUserID)"
- + " VALUES "
- + "(:DefectTypeName"
- + ",:DisplayNo"
- + ",:Remarks"
- + ",:AccountID"
- + ",:ValueFlag"
- + ",sysdate"
- + ",sysdate"
- + ",:UpdateUserID"
- + ",:CreateUserID)";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":DefectTypeName",dataRow["DefectTypeName"].ToString()),
- new OracleParameter(":DisplayNo",dataRow["DisplayNo"]),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":CreateUserID",sUserInfo.UserID)
- };
- oracleTrConn.ExecuteNonQuery(sqlInsertString, oracleParameter);
- #endregion
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 更新产品缺陷信息
- string sqlUpdateString = "UPDATE TP_MST_DefectType SET "
- + " DefectTypeName = :DefectTypeName,"
- + " DisplayNo = :DisplayNo,"
- + " Remarks = :Remarks,"
- + " AccountID = :AccountID,"
- + " ValueFlag = :ValueFlag,"
- + " UpdateUserID = :UpdateUserID,"
- + " UpdateTime = :UpdateTime"
- + " WHERE DefectTypeID = :DefectTypeID";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":DefectTypeName",dataRow["DefectTypeName"].ToString()),
- new OracleParameter(":DisplayNo",dataRow["DisplayNo"]),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":UpdateTime",DateTime.Now),
- new OracleParameter(":DefectTypeID",dataRow["DefectTypeID"].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlUpdateString, oracleParameter);
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Deleted)
- {
- #region 删除产品缺陷信息
- string sqlDeleteString = "DELETE TP_MST_DefectType WHERE DefectTypeID = :DefectTypeID";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":DefectTypeID",dataRow["DefectTypeID",DataRowVersion.Original].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlDeleteString, oracleParameter);
- #endregion
- }
- }
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return returnResult;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Disconnect();
- }
- }
- }
- /// <summary>
- /// 保存用户的功能权限
- /// </summary>
- /// </returns>
- public static FunRightResultEntity SaveUserFunctionRightList(DataTable userRightData, SUserInfo sUserInfo)
- {
- FunRightResultEntity result = new FunRightResultEntity();
- result.OperationStatus = 0;
- result.LicenseFunctions = "";
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- if (userRightData == null || userRightData.Rows.Count < 1)
- {
- return result;
- }
- oracleTrConn.Connect();
- //#region 删除数据
- //string sqlString1 = "DELETE TP_MST_UserRight WHERE UserID = :pUserID";
- //Oracle.ManagedDataAccess.Client.OracleParameter[] paras1 = new Oracle.ManagedDataAccess.Client.OracleParameter[]
- // {
- // new Oracle.ManagedDataAccess.Client.OracleParameter(":pUserID", OracleDbType.Int32, userID, ParameterDirection.Input)
- // };
- //#endregion
- //result.OperationStatus += oracleTrConn.ExecuteNonQuery(sqlString1, paras1);
- #region 增加新的数据
- // 对现有功能权限进行遍历
- foreach (DataRow dataRow in userRightData.Rows)
- {
- if (dataRow.RowState == DataRowState.Added)
- {
- string sqlString2 = "INSERT INTO TP_MST_UserRight "
- + "(UserID"
- + ",FunctionCode"
- + ",CreateUserID)"
- + " VALUES "
- + "(:pUserID"
- + ",:pFunctionCode"
- + ",:pCreateUserID)";
- Oracle.ManagedDataAccess.Client.OracleParameter[] paras2 = new Oracle.ManagedDataAccess.Client.OracleParameter[]
- {
- new Oracle.ManagedDataAccess.Client.OracleParameter(":pUserID", OracleDbType.Int32, dataRow["UserID"], ParameterDirection.Input),
- new Oracle.ManagedDataAccess.Client.OracleParameter(":pFunctionCode",OracleDbType.Varchar2, dataRow["FunctionCode"].ToString(), ParameterDirection.Input),
- new Oracle.ManagedDataAccess.Client.OracleParameter(":pCreateUserID", OracleDbType.Int32, sUserInfo.UserID, ParameterDirection.Input)
- };
- result.OperationStatus += oracleTrConn.ExecuteNonQuery(sqlString2, paras2);
- }
- else if (dataRow.RowState == DataRowState.Deleted)
- {
- string sqlDelete = "delete from TP_MST_UserRight where UserID=:UserID and FunctionCode=:FunctionCode";
- Oracle.ManagedDataAccess.Client.OracleParameter[] paras2Delete = new Oracle.ManagedDataAccess.Client.OracleParameter[]
- {
- new Oracle.ManagedDataAccess.Client.OracleParameter(":UserID", OracleDbType.Int32, dataRow["UserID",DataRowVersion.Original], ParameterDirection.Input),
- new Oracle.ManagedDataAccess.Client.OracleParameter(":FunctionCode",OracleDbType.Varchar2, dataRow["FunctionCode",DataRowVersion.Original].ToString(), ParameterDirection.Input),
- };
- result.OperationStatus += oracleTrConn.ExecuteNonQuery(sqlDelete, paras2Delete);
- }
- }
- #endregion
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return result;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Disconnect();
- }
- }
- }
- /// <summary>
- /// 用户范围权限保存
- /// </summary>
- /// <param name="userRightData">用户权限记录集</param>
- /// <param name="userID">用户ID</param>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <returns>int</returns>
- public static int SaveUserRightList(DataTable userRightData, SUserInfo sUserInfo)
- {
- int returnRowCount = 0;//返回影响行数
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- oracleTrConn.Connect();
- foreach (DataRow dataRow in userRightData.Rows)
- {
- if (dataRow.RowState == DataRowState.Added)
- {
- if (Convert.ToInt32(dataRow["PurviewType"]) != -99)
- {
- string sqlString2 = "INSERT INTO TP_MST_UserPurview"
- + "(UserID"
- + " ,PurviewID"
- + " ,PurviewType "
- + " ,CreateUserID) "
- + " VALUES "
- + "(:UserID"
- + " ,:PurviewID"
- + " ,:PurviewType"
- + " ,:CreateUserID) ";
- Oracle.ManagedDataAccess.Client.OracleParameter[] paras2 = new Oracle.ManagedDataAccess.Client.OracleParameter[]
- {
- new Oracle.ManagedDataAccess.Client.OracleParameter(":UserID",Convert.ToInt32(dataRow["UserID"])),
- new Oracle.ManagedDataAccess.Client.OracleParameter(":PurviewID", Convert.ToInt32(dataRow["PurviewID"])),
- new Oracle.ManagedDataAccess.Client.OracleParameter(":PurviewType",Convert.ToInt32(dataRow["PurviewType"])),
- new Oracle.ManagedDataAccess.Client.OracleParameter(":CreateUserID",sUserInfo.UserID),
- };
- returnRowCount += oracleTrConn.ExecuteNonQuery(sqlString2, paras2);
- }
- }
- else if (dataRow.RowState == DataRowState.Deleted)
- {
- string sqlDelete = "delete from TP_MST_UserPurview where UserID=:UserID and PurviewID=:PurviewID and PurviewType=:PurviewType";
- Oracle.ManagedDataAccess.Client.OracleParameter[] paras2Delete = new Oracle.ManagedDataAccess.Client.OracleParameter[]
- {
- new Oracle.ManagedDataAccess.Client.OracleParameter(":UserID", OracleDbType.Int32, dataRow["UserID",DataRowVersion.Original], ParameterDirection.Input),
- new Oracle.ManagedDataAccess.Client.OracleParameter(":PurviewID",OracleDbType.Int32, dataRow["PurviewID",DataRowVersion.Original].ToString(), ParameterDirection.Input),
- new Oracle.ManagedDataAccess.Client.OracleParameter(":PurviewType",OracleDbType.Int32, dataRow["PurviewType",DataRowVersion.Original].ToString(), ParameterDirection.Input),
- };
- returnRowCount += oracleTrConn.ExecuteNonQuery(sqlDelete, paras2Delete);
- }
- }
- //// 顺序插入现有的权限数据
- //for (int i = 0; i < userRightData.Rows.Count; i++)
- //{
- // // 对每一种权限进行遍历
- // foreach (DataRow dataRow in userRightData.Tables[i].Rows)
- // {
- // if (Convert.ToBoolean(dataRow["RightFlag"]))
- // {
- // sql = "INSERT INTO TP_MST_UserPurview"
- // + "(UserID"
- // + " ,PurviewID"
- // + " ,PurviewType "
- // + " ,CreateUserID) "
- // + " VALUES "
- // + "(:UserID"
- // + " ,:PurviewID"
- // + " ,:PurviewType"
- // + " ,:CreateUserID) ";
- // paras = new Oracle.ManagedDataAccess.Client.OracleParameter[]
- // {
- // new Oracle.ManagedDataAccess.Client.OracleParameter(":UserID",userID),
- // new Oracle.ManagedDataAccess.Client.OracleParameter(":PurviewID", Convert.ToInt32(dataRow["PurviewID"])),
- // new Oracle.ManagedDataAccess.Client.OracleParameter(":PurviewType",Convert.ToInt32(dataRow["PurviewType"])),
- // new Oracle.ManagedDataAccess.Client.OracleParameter(":CreateUserID",sUserInfo.UserID),
- // };
- // returnRowCount += oracleTrConn.ExecuteNonQuery(sql, paras);
- // }
- // }
- //}
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return returnRowCount;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == System.Data.ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Disconnect();
- }
- }
- }
- /// <summary>
- /// 保存商标数据
- /// </summary>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <param name="datatLogoData">商标数据</param>
- /// <returns>int</returns>
- /// <remarks>
- /// 2015.11.12 王鑫 新建
- /// </remarks>
- public static int SaveLogoData(DataTable datatLogoData, SUserInfo sUserInfo)
- {
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- // 检验参数的有效性
- if (datatLogoData == null && datatLogoData.Rows.Count < Constant.INT_IS_ZERO)
- {
- return Constant.INT_IS_THREE;
- }
- int returnResult = Constant.INT_IS_TWO;
- oracleTrConn.Connect();
- #region 对要保存的商标数据进行必要的验证
- foreach (DataRow dataRow in datatLogoData.Rows)
- {
- // 新建工种
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 判断是否存在相同的商标代码
- string sqlString = "SELECT Count(*) FROM tp_mst_logo WHERE AccountID = :AccountID and LogoCode =:LogoCode ";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":LogoCode",dataRow["LogoCode"].ToString())
- };
- string sqlReturnStr = oracleTrConn.GetSqlResultToStr(sqlString, oracleParameter);
- if (!Constant.INT_IS_ZERO.ToString().Equals(sqlReturnStr))
- {
- returnResult = Constant.INT_IS_ONE;
- break;
- }
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 判断是否存在相同的商标代码
- string sqlStrings = "SELECT Count(*) FROM tp_mst_logo WHERE AccountID = :AccountID and LogoCode = :LogoCode and LogoID <> :LogoID";
- OracleParameter[] oracleParameters = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":LogoCode",dataRow["LogoCode"]),
- new OracleParameter(":LogoID",dataRow["LogoID"])
- };
- string sqlReturnStr = oracleTrConn.GetSqlResultToStr(sqlStrings, oracleParameters);
- if (!Constant.INT_IS_ZERO.ToString().Equals(sqlReturnStr))
- {
- returnResult = Constant.INT_IS_ONE;
- break;
- }
- #endregion
- }
- }
- if (returnResult == Constant.INT_IS_ONE)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- return returnResult;
- }
- #endregion
- foreach (DataRow dataRow in datatLogoData.Rows)
- {
- // 新建工种
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 新增工种信息
- #region 向商标插入数据
- string sqlInsertString = "INSERT INTO TP_MST_Logo "
- + "(LogoCode"
- + ",LogoName"
- + ",Remarks"
- + ",AccountID"
- + ",ValueFlag"
- + ",CreateTime"
- + ",UpdateTime"
- + ",UpdateUserID"
- + ",CreateUserID,isdefault,displayno, TagCode)"
- + " VALUES "
- + "(:LogoCode"
- + ",:LogoName"
- + ",:Remarks"
- + ",:AccountID"
- + ",:ValueFlag"
- + ",sysdate"
- + ",sysdate"
- + ",:UpdateUserID"
- + ",:CreateUserID,:isdefault,:displayno,:TagCode)";
- OracleParameter[] oracleParameters = new OracleParameter[]
- {
- new OracleParameter(":LogoCode",dataRow["LogoCode"].ToString()),
- new OracleParameter(":LogoName",dataRow["LogoName"].ToString()),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":CreateUserID",sUserInfo.UserID),
- new OracleParameter(":TagCode",dataRow["TagCode"].ToString()),
- new OracleParameter(":isdefault",dataRow["isdefault"].ToString()==""?"0":dataRow["isdefault"].ToString()),
- new OracleParameter(":displayno",dataRow["displayno"].ToString()==""?"1":dataRow["displayno"].ToString()),
- };
- oracleTrConn.ExecuteNonQuery(sqlInsertString, oracleParameters);
- #endregion
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 更新商标信息
- string sqlUpdateString = "UPDATE TP_MST_Logo SET "
- + " LogoName = :LogoName,"
- + " Remarks = :Remarks,"
- + " AccountID = :AccountID,"
- + " ValueFlag = :ValueFlag,"
- + " UpdateUserID = :UpdateUserID,"
- + " UpdateTime = :UpdateTime,"
- + " isdefault = :isdefault,"
- + " TagCode = :TagCode,"
- + " displayno = :displayno"
- + " WHERE LogoID = :LogoID";
- OracleParameter[] oracleParametere = new OracleParameter[]
- {
- new OracleParameter(":LogoName",dataRow["LogoName"].ToString()),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":UpdateTime",DateTime.Now),
- new OracleParameter(":LogoID",dataRow["LogoID"].ToString()),
- new OracleParameter(":TagCode",dataRow["TagCode"].ToString()),
- new OracleParameter(":isdefault",dataRow["isdefault"].ToString()==""?"0":dataRow["isdefault"].ToString()),
- new OracleParameter(":displayno",dataRow["displayno"].ToString()==""?"1":dataRow["displayno"].ToString()),
- };
- oracleTrConn.ExecuteNonQuery(sqlUpdateString, oracleParametere);
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Deleted)
- {
- #region 删除商标信息
- string sqlDeleteString = "DELETE TP_MST_Logo WHERE LogoID = :LogoID";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":LogoID",dataRow["LogoID",DataRowVersion.Original].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlDeleteString, oracleParameter);
- #endregion
- }
- }
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return returnResult;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Disconnect();
- }
- }
- }
- /// <summary>
- /// 保存缺陷扣罚数据
- /// </summary>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <param name="dataDefectFineData">缺陷扣罚数据</param>
- /// <returns>int</returns>
- /// <remarks>
- /// 2016.1.5 王鑫 新建
- /// </remarks>
- public static int SaveDefectFineData(DataTable dataDefectFineData, SUserInfo sUserInfo)
- {
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- // 检验参数的有效性
- if (dataDefectFineData == null && dataDefectFineData.Rows.Count < Constant.INT_IS_ZERO)
- {
- return Constant.INT_IS_THREE;
- }
- int returnResult = Constant.INT_IS_TWO;
- oracleTrConn.Connect();
- #region 对要保存的工种数据进行必要的验证
- foreach (DataRow dataRow in dataDefectFineData.Rows)
- {
- // 新建缺陷扣罚
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 判断是否存在相同的缺陷扣罚代码
- string sqlString = "SELECT Count(*) FROM TP_MST_DefectFine WHERE AccountID = :AccountID and DefectFineCode =:DefectFineCode ";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":DefectFineCode",dataRow["DefectFineCode"].ToString())
- };
- string sqlReturnStr = oracleTrConn.GetSqlResultToStr(sqlString, oracleParameter);
- if (!Constant.INT_IS_ZERO.ToString().Equals(sqlReturnStr))
- {
- returnResult = Constant.INT_IS_ONE;
- break;
- }
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 判断是否存在相同的缺陷扣罚代码
- string sqlStrings = "SELECT Count(*) FROM TP_MST_DefectFine WHERE AccountID = :AccountID and DefectFineCode = :DefectFineCode and DefectFineID <> :DefectFineID";
- OracleParameter[] oracleParameters = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":DefectFineCode",dataRow["DefectFineCode"]),
- new OracleParameter(":DefectFineID",dataRow["DefectFineID"])
- };
- string sqlReturnStr = oracleTrConn.GetSqlResultToStr(sqlStrings, oracleParameters);
- if (!Constant.INT_IS_ZERO.ToString().Equals(sqlReturnStr))
- {
- returnResult = Constant.INT_IS_ONE;
- break;
- }
- #endregion
- }
- }
- if (returnResult == Constant.INT_IS_ONE)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- return returnResult;
- }
- #endregion
- foreach (DataRow dataRow in dataDefectFineData.Rows)
- {
- // 新建工种
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 新增工种信息
- #region 向T_MST_Jobs插入数据
- string sqlInsertString = "INSERT INTO TP_MST_DefectFine "
- + "(DefectFineCode"
- + ",DisplayNo"
- + ",Remarks"
- + ",AccountID"
- + ",ValueFlag"
- + ",CreateTime"
- + ",UpdateTime"
- + ",UpdateUserID"
- + ",CreateUserID)"
- + " VALUES "
- + "(:DefectFineCode"
- + ",:DisplayNo"
- + ",:Remarks"
- + ",:AccountID"
- + ",:ValueFlag"
- + ",sysdate"
- + ",sysdate"
- + ",:UpdateUserID"
- + ",:CreateUserID)";
- OracleParameter[] oracleParameters = new OracleParameter[]
- {
- new OracleParameter(":DefectFineCode",dataRow["DefectFineCode"].ToString()),
- new OracleParameter(":DisplayNo",dataRow["DisplayNo"].ToString()),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":CreateUserID",sUserInfo.UserID)
- };
- oracleTrConn.ExecuteNonQuery(sqlInsertString, oracleParameters);
- #endregion
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 更新工种信息
- string sqlUpdateString = "UPDATE TP_MST_DefectFine SET "
- + " DefectFineCode = :DefectFineCode,"
- + " DisplayNo = :DisplayNo,"
- + " Remarks = :Remarks,"
- + " AccountID = :AccountID,"
- + " ValueFlag = :ValueFlag,"
- + " UpdateUserID = :UpdateUserID,"
- + " UpdateTime = :UpdateTime"
- + " WHERE DefectFineID = :DefectFineID";
- OracleParameter[] oracleParametere = new OracleParameter[]
- {
- new OracleParameter(":DefectFineCode",dataRow["DefectFineCode"].ToString()),
- new OracleParameter(":DisplayNo",dataRow["DisplayNo"].ToString()),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":UpdateTime",DateTime.Now),
- new OracleParameter(":DefectFineID",dataRow["DefectFineID"].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlUpdateString, oracleParametere);
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Deleted)
- {
- #region 删除工种信息
- string sqlDeleteString = "DELETE TP_MST_DefectFine WHERE DefectFineID = :DefectFineID";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":DefectFineID",dataRow["DefectFineID",DataRowVersion.Original].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlDeleteString, oracleParameter);
- #endregion
- }
- }
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return returnResult;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Disconnect();
- }
- }
- }
- /// <summary>
- /// 保存缺陷扣除数据
- /// </summary>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <param name="dataDefectDeduction">缺陷扣除数数据</param>
- /// <returns>int</returns>
- /// <remarks>
- /// 2016.1.5 王鑫 新建
- /// </remarks>
- public static int SaveDefectDeduction(DataTable dataDefectDeduction, SUserInfo sUserInfo)
- {
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- // 检验参数的有效性
- if (dataDefectDeduction == null && dataDefectDeduction.Rows.Count < Constant.INT_IS_ZERO)
- {
- return Constant.INT_IS_THREE;
- }
- int returnResult = Constant.INT_IS_TWO;
- oracleTrConn.Connect();
- #region 对要保存的数据进行必要的验证
- foreach (DataRow dataRow in dataDefectDeduction.Rows)
- {
- // 新建缺陷扣除数
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 判断是否存在相同的缺陷除数代码
- string sqlString = "SELECT Count(*) FROM TP_MST_DefectDeduction WHERE AccountID = :AccountID and DefectDeductionNum =:DefectDeductionNum ";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":DefectDeductionNum",dataRow["DefectDeductionNum"].ToString())
- };
- string sqlReturnStr = oracleTrConn.GetSqlResultToStr(sqlString, oracleParameter);
- if (!Constant.INT_IS_ZERO.ToString().Equals(sqlReturnStr))
- {
- returnResult = Constant.INT_IS_ONE;
- break;
- }
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 判断是否存在相同的缺陷扣罚代码
- string sqlStrings = "SELECT Count(*) FROM TP_MST_DefectDeduction WHERE AccountID = :AccountID and DefectDeductionNum = :DefectDeductionNum and DefectDeductionID <> :DefectDeductionID";
- OracleParameter[] oracleParameters = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":DefectDeductionNum",dataRow["DefectDeductionNum"]),
- new OracleParameter(":DefectDeductionID",dataRow["DefectDeductionID"])
- };
- string sqlReturnStr = oracleTrConn.GetSqlResultToStr(sqlStrings, oracleParameters);
- if (!Constant.INT_IS_ZERO.ToString().Equals(sqlReturnStr))
- {
- returnResult = Constant.INT_IS_ONE;
- break;
- }
- #endregion
- }
- }
- if (returnResult == Constant.INT_IS_ONE)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- return returnResult;
- }
- #endregion
- foreach (DataRow dataRow in dataDefectDeduction.Rows)
- {
- // 新建工种
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 新增工种信息
- #region 向T_MST_Jobs插入数据
- string sqlInsertString = "INSERT INTO TP_MST_DefectDeduction "
- + "(DefectDeductionNum"
- + ",DisplayNo"
- + ",Remarks"
- + ",AccountID"
- + ",ValueFlag"
- + ",CreateTime"
- + ",UpdateTime"
- + ",UpdateUserID"
- + ",CreateUserID)"
- + " VALUES "
- + "(:DefectDeductionNum"
- + ",:DisplayNo"
- + ",:Remarks"
- + ",:AccountID"
- + ",:ValueFlag"
- + ",sysdate"
- + ",sysdate"
- + ",:UpdateUserID"
- + ",:CreateUserID)";
- OracleParameter[] oracleParameters = new OracleParameter[]
- {
- new OracleParameter(":DefectDeductionNum",dataRow["DefectDeductionNum"].ToString()),
- new OracleParameter(":DisplayNo",dataRow["DisplayNo"].ToString()),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":CreateUserID",sUserInfo.UserID)
- };
- oracleTrConn.ExecuteNonQuery(sqlInsertString, oracleParameters);
- #endregion
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 更新工种信息
- string sqlUpdateString = "UPDATE TP_MST_DefectDeduction SET "
- + " DefectDeductionNum = :DefectDeductionNum,"
- + " DisplayNo = :DisplayNo,"
- + " Remarks = :Remarks,"
- + " AccountID = :AccountID,"
- + " ValueFlag = :ValueFlag,"
- + " UpdateUserID = :UpdateUserID,"
- + " UpdateTime = :UpdateTime"
- + " WHERE DefectDeductionID = :DefectDeductionID";
- OracleParameter[] oracleParametere = new OracleParameter[]
- {
- new OracleParameter(":DefectDeductionNum",dataRow["DefectDeductionNum"].ToString()),
- new OracleParameter(":DisplayNo",dataRow["DisplayNo"].ToString()),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":UpdateTime",DateTime.Now),
- new OracleParameter(":DefectDeductionID",dataRow["DefectDeductionID"].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlUpdateString, oracleParametere);
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Deleted)
- {
- #region 删除工种信息
- string sqlDeleteString = "DELETE TP_MST_DefectDeduction WHERE DefectDeductionID = :DefectDeductionID";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":DefectDeductionID",dataRow["DefectDeductionID",DataRowVersion.Original].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlDeleteString, oracleParameter);
- #endregion
- }
- }
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return returnResult;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Disconnect();
- }
- }
- }
- /// <summary>
- /// 保存缺陷关系数据
- /// </summary>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <param name="dataDefectFineRelation">缺陷扣罚数据</param>
- /// <param name="dataDefectDeductionRelation">缺陷扣除数数据</param>
- /// <returns>int</returns>
- /// <remarks>
- /// 2016.1.5 王鑫 新建
- /// </remarks>
- public static int SaveDefectRelation(DataTable dataDefectFineRelation, DataTable dataDefectDeductionRelation, SUserInfo sUserInfo)
- {
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- int returnResult = Constant.INT_IS_ZERO;
- oracleTrConn.Connect();
- // 删除表里的数据,重新添加
- string sqlString = "delete from TP_MST_DefectFineRelation";
- returnResult += oracleTrConn.ExecuteNonQuery(sqlString);
- sqlString = "delete from TP_MST_DefectDeductionRelation";
- returnResult += oracleTrConn.ExecuteNonQuery(sqlString);
- //
- // 插入缺陷扣罚数据
- foreach (DataRow dataRow in dataDefectFineRelation.Rows)
- {
- if (dataRow.RowState != DataRowState.Deleted)
- {
- string sqlExists = "select 1 from TP_MST_DefectFineRelation where DefectID=:DefectID and DefectFineID=:DefectFineID";
- OracleParameter[] oracleParameters = new OracleParameter[]
- {
- new OracleParameter(":DefectID",dataRow["DefectID"].ToString()),
- new OracleParameter(":DefectFineID",dataRow["DefectFineID"].ToString()),
- };
- DataSet ds = oracleTrConn.GetSqlResultToDs(sqlExists, oracleParameters);
- if (ds != null && ds.Tables[0].Rows.Count == 0)
- {
- string sqlInsertString = "INSERT INTO TP_MST_DefectFineRelation "
- + "(DefectID"
- + ",DefectFineID"
- + ",UpdateUserID"
- + ",CreateUserID)"
- + " VALUES "
- + "(:DefectID"
- + ",:DefectFineID"
- + ",:UpdateUserID"
- + ",:CreateUserID)";
- oracleParameters = new OracleParameter[]
- {
- new OracleParameter(":DefectID",dataRow["DefectID"].ToString()),
- new OracleParameter(":DefectFineID",dataRow["DefectFineID"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":CreateUserID",sUserInfo.UserID)
- };
- oracleTrConn.ExecuteNonQuery(sqlInsertString, oracleParameters);
- }
- }
- }
- // 插入缺陷扣除数数据
- foreach (DataRow dataRow in dataDefectDeductionRelation.Rows)
- {
- if (dataRow.RowState != DataRowState.Deleted)
- {
- string sqlExists = "select 1 from TP_MST_DefectDeductionRelation where DefectID=:DefectID and DefectDeductionID=:DefectDeductionID";
- OracleParameter[] oracleParameters = new OracleParameter[]
- {
- new OracleParameter(":DefectID",dataRow["DefectID"].ToString()),
- new OracleParameter(":DefectDeductionID",dataRow["DefectDeductionID"].ToString()),
- };
- DataSet ds = oracleTrConn.GetSqlResultToDs(sqlExists, oracleParameters);
- if (ds != null && ds.Tables[0].Rows.Count == 0)
- {
- string sqlInsertString = "INSERT INTO TP_MST_DefectDeductionRelation "
- + "(DefectID"
- + ",DefectDeductionID"
- + ",UpdateUserID"
- + ",CreateUserID)"
- + " VALUES "
- + "(:DefectID"
- + ",:DefectDeductionID"
- + ",:UpdateUserID"
- + ",:CreateUserID)";
- oracleParameters = new OracleParameter[]
- {
- new OracleParameter(":DefectID",dataRow["DefectID"].ToString()),
- new OracleParameter(":DefectDeductionID",dataRow["DefectDeductionID"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":CreateUserID",sUserInfo.UserID)
- };
- oracleTrConn.ExecuteNonQuery(sqlInsertString, oracleParameters);
- }
- }
- }
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return returnResult;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Disconnect();
- }
- }
- }
- /// <summary>
- /// 保存半成品缺陷数据
- /// </summary>
- /// <param name="dataDefectData">缺陷数据</param>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <returns>int</returns>
- /// <remarks>
- /// 2016.06.22 王鑫 新建
- /// </remarks>
- public static int SaveSemicheckDefect(DataTable dataDefectData, SUserInfo sUserInfo)
- {
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- // 检验参数的有效性
- if (dataDefectData == null && dataDefectData.Rows.Count < 0)
- {
- return 3;
- }
- int intResult = 2;
- oracleTrConn.Connect();
- #region 对要保存的帐套数据进行必要的验证
- foreach (DataRow dataRow in dataDefectData.Rows)
- {
- // 新建缺陷位置
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 判断是否存在相同的位置代码
- string sqlString1 = "SELECT Count(*) FROM tp_mst_semicheckdefect WHERE AccountID = :AccountID and DefectCode =:DefectCode ";
- OracleParameter[] parmeters1 = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":DefectCode",dataRow["DefectCode"].ToString())
- };
- string strTemp1 = oracleTrConn.GetSqlResultToStr(sqlString1, parmeters1);
- if (strTemp1 != "0")
- {
- intResult = 1;
- break;
- }
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 判断是否存在相同的位置代码
- string sqlString2 = "SELECT Count(*) FROM tp_mst_semicheckdefect WHERE AccountID = :AccountID and DefectCode = :DefectCode and DefectID <> :DefectID";
- OracleParameter[] parmeters2 = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":DefectCode",dataRow["DefectCode"]),
- new OracleParameter(":DefectID",dataRow["DefectID"])
- };
- string strTemp1 = oracleTrConn.GetSqlResultToStr(sqlString2, parmeters2);
- if (strTemp1 != "0")
- {
- intResult = 1;
- break;
- }
- #endregion
- }
- }
- if (intResult == 1)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- return intResult;
- }
- #endregion
- //string accountID = ""; // 存储新插入账套ID
- //string userID = ""; //用户ID
- foreach (DataRow dataRow in dataDefectData.Rows)
- {
- //如果缺陷简称为空默认为缺陷名称
- if (string.IsNullOrEmpty(dataRow["S_NAME"] + ""))
- {
- dataRow["S_NAME"] = dataRow["DefectName"];
- }
- // 新建缺陷
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 新增缺陷信息
- #region 向tp_mst_semicheckdefect插入数据
- string sqlString1 = "INSERT INTO tp_mst_semicheckdefect "
- + "(DefectCode"
- + ",DefectName"
- + ",Remarks"
- + ",S_NAME" // 缺陷简称 add xcm 2023-4-7
- + ",DisplayNo"
- + ",AccountID"
- + ",ValueFlag"
- + ",CreateTime"
- + ",UpdateTime"
- + ",UpdateUserID"
- + ",CreateUserID)"
- + " VALUES "
- + "(:DefectCode"
- + ",:DefectName"
- + ",:Remarks"
- + ",:S_NAME" // 缺陷简称 add xcm 2023-4-7
- + ",:DisplayNo"
- + ",:AccountID"
- + ",:ValueFlag"
- + ",sysdate"
- + ",sysdate"
- + ",:UpdateUserID"
- + ",:CreateUserID)";
- OracleParameter[] parmeters1 = new OracleParameter[]
- {
- new OracleParameter(":DefectCode",dataRow["DefectCode"].ToString()),
- new OracleParameter(":DefectName",dataRow["DefectName"].ToString()),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":S_NAME",dataRow["S_NAME"].ToString()),//缺陷简称 add xcm 2023-4-7
- new OracleParameter(":DisplayNo",dataRow["DisplayNo"]),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":CreateUserID",sUserInfo.UserID)
- };
- oracleTrConn.ExecuteNonQuery(sqlString1, parmeters1);
- #endregion
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 更新缺陷信息
- string sqlString = "UPDATE tp_mst_semicheckdefect SET "
- + " DefectCode = :DefectCode,"
- + " DefectName = :DefectName,"
- + " Remarks = :Remarks,"
- + " S_NAME = :S_NAME," //缺陷简称 add xcm 2023-4-7
- + " DisplayNo = :DisplayNo,"
- + " AccountID = :AccountID,"
- + " ValueFlag = :ValueFlag,"
- + " UpdateUserID = :UpdateUserID,"
- + " UpdateTime = :UpdateTime"
- + " WHERE DefectID = :DefectID";
- OracleParameter[] parmeters1 = new OracleParameter[]
- {
- new OracleParameter(":DefectCode",dataRow["DefectCode"].ToString()),
- new OracleParameter(":DefectName",dataRow["DefectName"].ToString()),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":S_NAME",dataRow["S_NAME"].ToString()), //缺陷简称 add xcm 2023-4-7
- new OracleParameter(":DisplayNo",dataRow["DisplayNo"]),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":UpdateTime",DateTime.Now),
- new OracleParameter(":DefectID",dataRow["DefectID"].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlString, parmeters1);
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Deleted)
- {
- #region 删除缺陷信息
- string sqlDeleteString = "DELETE tp_mst_semicheckdefect WHERE DefectID = :DefectID";
- OracleParameter[] parmeters2 = new OracleParameter[]
- {
- new OracleParameter(":DefectID",dataRow["DefectID",DataRowVersion.Original].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlDeleteString, parmeters2);
- #endregion
- }
- }
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return intResult;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Disconnect();
- }
- }
- }
- /// <summary>
- /// 保存半成品缺陷位置数据
- /// </summary>
- /// <param name="dataDefectData">缺陷数据</param>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <returns>int</returns>
- /// <remarks>
- /// 2016.06.23 王鑫 新建
- /// </remarks>
- public static int SaveScdefectPosition(DataTable dataDefectData, SUserInfo sUserInfo)
- {
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- // 检验参数的有效性
- if (dataDefectData == null && dataDefectData.Rows.Count < 0)
- {
- return 3;
- }
- int intResult = 2;
- oracleTrConn.Connect();
- #region 对要保存的帐套数据进行必要的验证
- foreach (DataRow dataRow in dataDefectData.Rows)
- {
- // 新建缺陷位置
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 判断是否存在相同的位置代码
- string sqlString1 = "SELECT Count(*) FROM tp_mst_scdefectposition WHERE AccountID = :AccountID and DefectPositionCode =:DefectPositionCode ";
- OracleParameter[] parmeters1 = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":DefectPositionCode",dataRow["DefectPositionCode"].ToString())
- };
- string strTemp1 = oracleTrConn.GetSqlResultToStr(sqlString1, parmeters1);
- if (strTemp1 != "0")
- {
- intResult = 1;
- break;
- }
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 判断是否存在相同的位置代码
- string sqlString2 = "SELECT Count(*) FROM tp_mst_scdefectposition WHERE AccountID = :AccountID and DefectPositionCode = :DefectPositionCode and DefectPositionID <> :DefectPositionID";
- OracleParameter[] parmeters2 = new OracleParameter[]
- {
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":DefectPositionCode",dataRow["DefectPositionCode"]),
- new OracleParameter(":DefectPositionID",dataRow["DefectPositionID"])
- };
- string strTemp1 = oracleTrConn.GetSqlResultToStr(sqlString2, parmeters2);
- if (strTemp1 != "0")
- {
- intResult = 1;
- break;
- }
- #endregion
- }
- }
- if (intResult == 1)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- return intResult;
- }
- #endregion
- //string accountID = ""; // 存储新插入账套ID
- //string userID = ""; //用户ID
- foreach (DataRow dataRow in dataDefectData.Rows)
- {
- //如果简称为空默认为缺陷位置名称
- if (string.IsNullOrEmpty(dataRow["S_NAME"] + ""))
- {
- dataRow["S_NAME"] = dataRow["DefectPositionName"];
- }
- // 新建缺陷位置
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 新增缺陷信息
- #region 向tp_mst_scdefectposition插入数据
- string sqlString1 = "INSERT INTO tp_mst_scdefectposition "
- + "(DefectPositionCode"
- + ",DefectPositionName"
- + ",Remarks"
- + ",S_NAME" //简称 add xcm 2023-4-7
- + ",DisplayNo"
- + ",AccountID"
- + ",ValueFlag"
- + ",CreateTime"
- + ",UpdateTime"
- + ",UpdateUserID"
- + ",CreateUserID)"
- + " VALUES "
- + "(:DefectPositionCode"
- + ",:DefectPositionName"
- + ",:Remarks"
- + ",:S_NAME" //简称 add xcm 2023-4-7
- + ",:DisplayNo"
- + ",:AccountID"
- + ",:ValueFlag"
- + ",sysdate"
- + ",sysdate"
- + ",:UpdateUserID"
- + ",:CreateUserID)";
- OracleParameter[] parmeters1 = new OracleParameter[]
- {
- new OracleParameter(":DefectPositionCode",dataRow["DefectPositionCode"].ToString()),
- new OracleParameter(":DefectPositionName",dataRow["DefectPositionName"].ToString()),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":S_NAME",dataRow["S_NAME"].ToString()),//简称 add xcm 2023-4-7
- new OracleParameter(":DisplayNo",dataRow["DisplayNo"]),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":CreateUserID",sUserInfo.UserID)
- };
- oracleTrConn.ExecuteNonQuery(sqlString1, parmeters1);
- #endregion
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 更新缺陷信息
- string sqlString = "UPDATE tp_mst_scdefectposition SET "
- + " DefectPositionCode = :DefectPositionCode,"
- + " DefectPositionName = :DefectPositionName,"
- + " Remarks = :Remarks,"
- + " S_NAME = :S_NAME," //简称 add xcm 2023-4-7
- + " DisplayNo = :DisplayNo,"
- + " AccountID = :AccountID,"
- + " ValueFlag = :ValueFlag,"
- + " UpdateUserID = :UpdateUserID,"
- + " UpdateTime = :UpdateTime"
- + " WHERE DefectPositionID = :DefectPositionID";
- OracleParameter[] parmeters1 = new OracleParameter[]
- {
- new OracleParameter(":DefectPositionCode",dataRow["DefectPositionCode"].ToString()),
- new OracleParameter(":DefectPositionName",dataRow["DefectPositionName"].ToString()),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":S_NAME",dataRow["S_NAME"].ToString()),//简称 add xcm 2023-4-7
- new OracleParameter(":DisplayNo",dataRow["DisplayNo"]),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":UpdateTime",DateTime.Now),
- new OracleParameter(":DefectPositionID",dataRow["DefectPositionID"].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlString, parmeters1);
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Deleted)
- {
- #region 删除缺陷信息
- string sqlDeleteString = "DELETE tp_mst_scdefectposition WHERE DefectPositionID = :DefectPositionID";
- OracleParameter[] parmeters2 = new OracleParameter[]
- {
- new OracleParameter(":DefectPositionID",dataRow["DefectPositionID",DataRowVersion.Original].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlDeleteString, parmeters2);
- #endregion
- }
- }
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return intResult;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Disconnect();
- }
- }
- }
- /// <summary>
- /// 保存工艺数据
- /// </summary>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <param name="datatData">工艺数据</param>
- /// <returns>int</returns>
- /// <remarks>
- /// 2016.07.19 王鑫 新建
- /// </remarks>
- public static int SaveTecDepData(SUserInfo sUserInfo, DataTable datatData)
- {
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- // 检验参数的有效性
- if (datatData == null && datatData.Rows.Count < Constant.INT_IS_ZERO)
- {
- return Constant.INT_IS_THREE;
- }
- int returnResult = Constant.INT_IS_TWO;
- oracleTrConn.Connect();
- foreach (DataRow dataRow in datatData.Rows)
- {
- // 新建工艺
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 新增窑炉信息
- #region 向T_MST_Kiln插入数据
- string sqlInsertString = "INSERT INTO TP_MST_TecDep "
- + "(Name"
- + ",TypeFlag"
- + ",TechnologyFlag"
- + ",DisplayNo"
- + ",Remarks"
- + ",AccountID"
- + ",ValueFlag"
- + ",CreateTime"
- + ",UpdateTime"
- + ",UpdateUserID"
- + ",CreateUserID)"
- + " VALUES "
- + "(:Name"
- + ",:TypeFlag"
- + ",:TechnologyFlag"
- + ",:DisplayNo"
- + ",:Remarks"
- + ",:AccountID"
- + ",:ValueFlag"
- + ",sysdate"
- + ",sysdate"
- + ",:UpdateUserID"
- + ",:CreateUserID)";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":Name",dataRow["Name"].ToString()),
- new OracleParameter(":TypeFlag",dataRow["TypeFlag"].ToString()),
- new OracleParameter(":TechnologyFlag",dataRow["TechnologyFlag"].ToString()),
- new OracleParameter(":DisplayNo",dataRow["DisplayNo"].ToString()==""?"0":dataRow["DisplayNo"].ToString()),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":CreateUserID",sUserInfo.UserID)
- };
- oracleTrConn.ExecuteNonQuery(sqlInsertString, oracleParameter);
- #endregion
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 更新窑炉信息
- string sqlUpdateString = "UPDATE TP_MST_TecDep SET "
- + " Name = :Name,"
- + " TypeFlag = :TypeFlag,"
- + " TechnologyFlag = :TechnologyFlag,"
- + " DisplayNo = :DisplayNo,"
- + " Remarks = :Remarks,"
- + " AccountID = :AccountID,"
- + " ValueFlag = :ValueFlag,"
- + " UpdateUserID = :UpdateUserID,"
- + " UpdateTime = :UpdateTime"
- + " WHERE ID = :ID";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":Name",dataRow["Name"].ToString()),
- new OracleParameter(":TypeFlag",dataRow["TypeFlag"].ToString()),
- new OracleParameter(":TechnologyFlag",dataRow["TechnologyFlag"].ToString()),
- new OracleParameter(":DisplayNo",dataRow["DisplayNo"].ToString()==""?"0":dataRow["DisplayNo"].ToString()),
- new OracleParameter(":Remarks",dataRow["Remarks"].ToString()),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"].ToString()),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":UpdateTime",DateTime.Now),
- new OracleParameter(":ID",dataRow["ID"].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlUpdateString, oracleParameter);
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Deleted)
- {
- #region 删除窑炉信息
- string sqlDeleteString = "DELETE TP_MST_TecDep WHERE ID = :ID";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":ID",dataRow["ID",DataRowVersion.Original].ToString())
- };
- oracleTrConn.ExecuteNonQuery(sqlDeleteString, oracleParameter);
- #endregion
- }
- }
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return returnResult;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Disconnect();
- }
- }
- }
- /// <summary>
- /// 保存配置信息
- /// </summary>
- /// <param name="tecDepEntity">配置实体</param>
- /// <param name="user">用户基本信息</param>
- /// <returns>返回受影响行数</returns>
- /// <remarks>
- /// 王鑫 2016.07.19 新建
- /// </remarks>
- public static int SaveTransfer(TecDepEntity tecDepEntity, SUserInfo user)
- {
- int returnRows = 0;
- int detailReturn = 0;
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- oracleTrConn.Connect();
- // 获得账务日期
- // DateTime accountDate = CommonModuleLogic.CommonModuleLogic.GetAccountDate(oracleTrConn, user);
- if (tecDepEntity.PTID == 0)
- {
- //获取配置主表序列ID
- StringBuilder sbSql = new StringBuilder();
- sbSql.Append("select SEQ_MST_RPT_Transfer_ID.nextval from dual");
- int id = Convert.ToInt32(oracleTrConn.GetSqlResultToStr(sbSql.ToString()));
- sbSql.Clear();
- //添加主表配置信息
- sbSql.Append("Insert into TP_MST_RPT_Transfer");
- sbSql.Append("(PTID,Name,LineID,DisplayNo,GroutingDateBegin,");
- sbSql.Append(" Remarks,AccountID,ValueFlag,");
- sbSql.Append("CreateUserID,UpdateUserID)");
- sbSql.Append("values(:PTID,:Name,:LineID,:DisplayNo,:GroutingDateBegin,");
- sbSql.Append(":Remarks,:AccountID,:ValueFlag,");
- sbSql.Append(":CreateUserID,:UpdateUserID)");
- OracleParameter[] Paras = new OracleParameter[] {
- new OracleParameter(":PTID",OracleDbType.Int32,
- id,ParameterDirection.Input),
- new OracleParameter(":Name",OracleDbType.NVarchar2,
- tecDepEntity.Name,ParameterDirection.Input),
- new OracleParameter(":LineID",OracleDbType.Int32,
- tecDepEntity.LineID,ParameterDirection.Input),
- new OracleParameter(":DisplayNo",OracleDbType.Int32,
- tecDepEntity.DisplayNo,ParameterDirection.Input),
- new OracleParameter(":GroutingDateBegin",OracleDbType.Date,
- tecDepEntity.GroutingDateBegin,ParameterDirection.Input),
- new OracleParameter(":Remarks",OracleDbType.NVarchar2,
- tecDepEntity.Remarks,ParameterDirection.Input),
- new OracleParameter(":AccountID",OracleDbType.Int32,
- user.AccountID,ParameterDirection.Input),
- new OracleParameter(":ValueFlag",OracleDbType.Int32,
- tecDepEntity.ValueFlag,ParameterDirection.Input),
- new OracleParameter(":CreateUserID",OracleDbType.Int32,
- user.UserID,ParameterDirection.Input),
- new OracleParameter(":UpdateUserID",OracleDbType.Int32,
- user.UserID,ParameterDirection.Input),
- };
- //执行插入SQL语句
- returnRows = oracleTrConn.ExecuteNonQuery(sbSql.ToString(), Paras);
- //此处添加明细信息(循环)
- foreach (DataRow detailInfo in tecDepEntity.TransferSetting.Tables[0].Rows)
- {
- //获取配置明细序列索引
- sbSql.Clear();
- sbSql.Append("select SEQ_MST_RPT_TransferSetting_ID.nextval from dual");
- int detailId = Convert.ToInt32(oracleTrConn.GetSqlResultToStr(sbSql.ToString()));
- sbSql.Clear();
- //插入配置细信息
- sbSql.Append("Insert into TP_MST_RPT_TransferSetting");
- sbSql.Append("(PTSID,PTID,PROCEDUREID,OUTTECDEPID,INTECDEPID,PERPROCEDUREID,AccountID,DisplayNo)");
- sbSql.Append("Values(:PTSID,:PTID,:PROCEDUREID,:OUTTECDEPID,:INTECDEPID,:PERPROCEDUREID,:AccountID,:DisplayNo)");
- OracleParameter[] DetailParas = new OracleParameter[] {
- new OracleParameter(":PTSID",OracleDbType.Int32,
- detailId,ParameterDirection.Input),
- new OracleParameter(":PTID",OracleDbType.Int32,
- id,ParameterDirection.Input),
- new OracleParameter(":PROCEDUREID",OracleDbType.Int32,
- detailInfo["PROCEDUREID"],ParameterDirection.Input),
- new OracleParameter(":OUTTECDEPID",OracleDbType.Int32,
- detailInfo["OUTTECDEPID"],ParameterDirection.Input),
- new OracleParameter(":INTECDEPID",OracleDbType.Int32,
- detailInfo["INTECDEPID"],ParameterDirection.Input),
- new OracleParameter(":PERPROCEDUREID",OracleDbType.Int32,
- detailInfo["PERPROCEDUREID"],ParameterDirection.Input),
- new OracleParameter(":AccountID",OracleDbType.Int32,
- user.AccountID,ParameterDirection.Input),
- new OracleParameter(":DisplayNo",OracleDbType.Int32,
- detailInfo["DisplayNo"],ParameterDirection.Input)
- };
- //执行插入语句并累加成功插入次数
- detailReturn += oracleTrConn.ExecuteNonQuery(sbSql.ToString(), DetailParas);
- }
- }
- else
- {
- // 编辑
- //更改主表配置信息
- StringBuilder sbSql = new StringBuilder();
- sbSql.Append("Update TP_MST_RPT_Transfer");
- sbSql.Append(" Set Name=:Name,");
- sbSql.Append(" LineID=:LineID,");
- sbSql.Append(" DisplayNo=:DisplayNo,");
- sbSql.Append(" GroutingDateBegin=:GroutingDateBegin,");
- sbSql.Append(" Remarks=:Remarks,");
- sbSql.Append(" ValueFlag=:ValueFlag,");
- sbSql.Append(" UpdateUserID=:UpdateUserID ");
- sbSql.Append(" where PTID =:PTID");
- OracleParameter[] Paras = new OracleParameter[] {
- new OracleParameter(":PTID",OracleDbType.Int32,
- tecDepEntity.PTID,ParameterDirection.Input),
- new OracleParameter(":Name",OracleDbType.NVarchar2,
- tecDepEntity.Name,ParameterDirection.Input),
- new OracleParameter(":LineID",OracleDbType.Int32,
- tecDepEntity.LineID,ParameterDirection.Input),
- new OracleParameter(":DisplayNo",OracleDbType.Int32,
- tecDepEntity.DisplayNo,ParameterDirection.Input),
- new OracleParameter(":GroutingDateBegin",OracleDbType.Date,
- tecDepEntity.GroutingDateBegin,ParameterDirection.Input),
- new OracleParameter(":Remarks",OracleDbType.NVarchar2,
- tecDepEntity.Remarks,ParameterDirection.Input),
- new OracleParameter(":ValueFlag",OracleDbType.Int32,
- tecDepEntity.ValueFlag,ParameterDirection.Input),
- new OracleParameter(":UpdateUserID",OracleDbType.Int32,
- user.UserID,ParameterDirection.Input),
- };
- //执行插入SQL语句
- returnRows = oracleTrConn.ExecuteNonQuery(sbSql.ToString(), Paras);
- // 删除配置明细信息
- sbSql.Clear();
- sbSql.Append("delete from TP_MST_RPT_TransferSetting where PTID =:PTID");
- Paras = new OracleParameter[] {
- new OracleParameter(":PTID",OracleDbType.Int32,
- tecDepEntity.PTID,ParameterDirection.Input)
- };
- //执行SQL语句
- returnRows = oracleTrConn.ExecuteNonQuery(sbSql.ToString(), Paras);
- //此处添加明细信息(循环)
- foreach (DataRow detailInfo in tecDepEntity.TransferSetting.Tables[0].Rows)
- {
- //获取配置明细序列索引
- sbSql.Clear();
- sbSql.Append("select SEQ_MST_RPT_TransferSetting_ID.nextval from dual");
- int detailId = Convert.ToInt32(oracleTrConn.GetSqlResultToStr(sbSql.ToString()));
- sbSql.Clear();
- //插入配置细信息
- sbSql.Append("Insert into TP_MST_RPT_TransferSetting");
- sbSql.Append("(PTSID,PTID,PROCEDUREID,OUTTECDEPID,INTECDEPID,PERPROCEDUREID,AccountID,DisplayNo)");
- sbSql.Append("Values(:PTSID,:PTID,:PROCEDUREID,:OUTTECDEPID,:INTECDEPID,:PERPROCEDUREID,:AccountID,:DisplayNo)");
- OracleParameter[] DetailParas = new OracleParameter[] {
- new OracleParameter(":PTSID",OracleDbType.Int32,
- detailId,ParameterDirection.Input),
- new OracleParameter(":PTID",OracleDbType.Int32,
- tecDepEntity.PTID,ParameterDirection.Input),
- new OracleParameter(":PROCEDUREID",OracleDbType.Int32,
- detailInfo["PROCEDUREID"],ParameterDirection.Input),
- new OracleParameter(":OUTTECDEPID",OracleDbType.Int32,
- detailInfo["OUTTECDEPID"],ParameterDirection.Input),
- new OracleParameter(":INTECDEPID",OracleDbType.Int32,
- detailInfo["INTECDEPID"],ParameterDirection.Input),
- new OracleParameter(":PERPROCEDUREID",OracleDbType.Decimal,
- detailInfo["PERPROCEDUREID"],ParameterDirection.Input),
- new OracleParameter(":AccountID",OracleDbType.Int32,
- user.AccountID,ParameterDirection.Input),
- new OracleParameter(":DisplayNo",OracleDbType.Int32,
- detailInfo["DisplayNo"],ParameterDirection.Input)
- };
- //执行插入语句并累加成功插入次数
- detailReturn += oracleTrConn.ExecuteNonQuery(sbSql.ToString(), DetailParas);
- }
- }
- //如果有插入不成功的情况,回滚事务,否则提交
- if (returnRows == 0 || detailReturn == 0)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- else
- {
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- }
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == System.Data.ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Disconnect();
- }
- }
- return returnRows;
- }
- #region 产品工序配置
- /// <summary>
- /// 产品工序配置
- /// </summary>
- /// <param name="cre"></param>
- /// <param name="user"></param>
- /// <returns></returns>
- public static ServiceResultEntity SetGoodsToProcedure(ClientRequestEntity cre, SUserInfo user)
- {
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- ServiceResultEntity sre = new ServiceResultEntity();
- try
- {
- oracleTrConn.Connect();
- int type = (int)cre.Properties["Type"];
- string sqlString = null;
- // 设置产品工序
- if (type == 1)
- {
- sqlString = "INSERT INTO TP_PC_ProcedureGoods\n" +
- " (productionlineid, procedureid, NODENO, goodsid, Createuserid)\n" +
- " SELECT p.productionlineid, p.procedureid, p.NODENO, g.goodsid, " + user.UserID + "\n" +
- " FROM tp_pc_procedure p\n" +
- " INNER JOIN (SELECT goods.goodsid\n" +
- " FROM tp_mst_goods goods\n" +
- " WHERE goods.goodsid IN (" + cre.Properties["GoodsIDs"] + ")) g\n" +
- " ON 1 = 1\n" +
- " WHERE p.valueflag = '1'\n" +
- (cre.Properties["ProductionLineID"] == null ? "" : " AND p.productionlineid = " + cre.Properties["ProductionLineID"] + "\n") +
- (cre.Properties["ProcedureIDs"] == null ? "" : " AND p.procedureid IN (" + cre.Properties["ProcedureIDs"] + ")\n") +
- " AND NOT EXISTS (SELECT 1\n" +
- " FROM TP_PC_ProcedureGoods pg\n" +
- " WHERE pg.procedureid = p.procedureid\n" +
- " AND pg.goodsid = g.goodsid)";
- }
- else
- {
- sqlString = "DELETE FROM TP_PC_ProcedureGoods pg\n" +
- " WHERE pg.goodsid IN (" + cre.Properties["GoodsIDs"] + ")\n" +
- (cre.Properties["ProductionLineID"] == null ? "" : " AND pg.productionlineid = " + cre.Properties["ProductionLineID"] + "\n") +
- (cre.Properties["ProcedureIDs"] == null ? "" : " AND pg.procedureid IN (" + cre.Properties["ProcedureIDs"] + ")\n");
- }
- //执行插入SQL语句
- int returnRows = oracleTrConn.ExecuteNonQuery(sqlString);
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == System.Data.ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- finally
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Disconnect();
- }
- }
- return sre;
- }
- #endregion
- #region 成型报损原因
- /// <summary>
- /// 保存成型报损原因
- /// </summary>
- /// <param name="sUserInfo">用户基本信息</param>
- /// <param name="ScrapReasonData">成型报损原因数据</param>
- /// <returns>int</returns>
- /// <remarks>
- /// 2018.03.26 周兴 新建
- /// </remarks>
- public static ServiceResultEntity SaveScrapReasonData(DataTable ScrapReasonData, SUserInfo sUserInfo)
- {
- ServiceResultEntity result = new ServiceResultEntity();
- IDBTransaction oracleTrConn = ClsDbFactory.CreateDBTransaction(DataBaseType.ORACLE, DataManager.ConnectionString);
- try
- {
- // 检验参数的有效性
- if (ScrapReasonData == null && ScrapReasonData.Rows.Count < Constant.INT_IS_ZERO)
- {
- result.Result = Constant.INT_IS_THREE;
- return result;
- }
- result.Result = Constant.INT_IS_TWO;
- oracleTrConn.Connect();
- foreach (DataRow dataRow in ScrapReasonData.Rows)
- {
- // 新建
- if (dataRow.RowState == DataRowState.Added)
- {
- #region 新增
- string sqlInsertString = "INSERT INTO TP_MST_ScrapReason "
- + "(ScrapReason"
- + ",ScrapType"
- + ",DisplayNo"
- + ",Remarks"
- + ",AccountID"
- + ",ValueFlag"
- + ",UpdateUserID"
- + ",CreateUserID)"
- + " VALUES "
- + "(:ScrapReason"
- + ",:ScrapType"
- + ",:DisplayNo"
- + ",:Remarks"
- + ",:AccountID"
- + ",:ValueFlag"
- + ",:UpdateUserID"
- + ",:CreateUserID)";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":ScrapReason",dataRow["ScrapReason"] + ""),
- new OracleParameter(":ScrapType",dataRow["ScrapType"] + ""),
- new OracleParameter(":DisplayNo",dataRow["DisplayNo"] + ""),
- new OracleParameter(":Remarks",dataRow["Remarks"] + ""),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"] + ""),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":CreateUserID",sUserInfo.UserID)
- };
- oracleTrConn.ExecuteNonQuery(sqlInsertString, oracleParameter);
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Modified)
- {
- #region 更新数据字典信息
- string sqlUpdateString = "UPDATE TP_MST_ScrapReason SET "
- + " ScrapReason = :ScrapReason,"
- + " DisplayNo = :DisplayNo,"
- + " Remarks = :Remarks,"
- + " AccountID = :AccountID,"
- + " ValueFlag = :ValueFlag,"
- + " UpdateUserID = :UpdateUserID "
- + " WHERE ScrapReasonID = :ScrapReasonID";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":ScrapReason",dataRow["ScrapReason"]+ ""),
- new OracleParameter(":DisplayNo",dataRow["DisplayNo"]+ ""),
- new OracleParameter(":Remarks",dataRow["Remarks"]+ ""),
- new OracleParameter(":AccountID",sUserInfo.AccountID),
- new OracleParameter(":ValueFlag",dataRow["ValueFlag"]+ ""),
- new OracleParameter(":UpdateUserID",sUserInfo.UserID),
- new OracleParameter(":ScrapReasonID",dataRow["ScrapReasonID"])
- };
- oracleTrConn.ExecuteNonQuery(sqlUpdateString, oracleParameter);
- #endregion
- }
- else if (dataRow.RowState == DataRowState.Deleted)
- {
- #region 删除数据字典信息
- string sqlDeleteString = "DELETE TP_MST_ScrapReason WHERE ScrapReasonID = :ScrapReasonID";
- OracleParameter[] oracleParameter = new OracleParameter[]
- {
- new OracleParameter(":ScrapReasonID",dataRow["ScrapReasonID",DataRowVersion.Original])
- };
- oracleTrConn.ExecuteNonQuery(sqlDeleteString, oracleParameter);
- #endregion
- }
- }
- oracleTrConn.Commit();
- oracleTrConn.Disconnect();
- return result;
- }
- catch (Exception ex)
- {
- if (oracleTrConn.ConnState == ConnectionState.Open)
- {
- oracleTrConn.Rollback();
- oracleTrConn.Disconnect();
- }
- throw ex;
- }
- }
- #endregion
- }
- }
|