pbl.js 314 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374737573767377737873797380738173827383738473857386738773887389739073917392739373947395739673977398739974007401740274037404740574067407740874097410741174127413741474157416741774187419742074217422742374247425742674277428742974307431743274337434743574367437743874397440744174427443744474457446744774487449745074517452745374547455745674577458745974607461746274637464746574667467746874697470747174727473747474757476747774787479748074817482748374847485748674877488748974907491749274937494749574967497749874997500750175027503750475057506750775087509751075117512751375147515751675177518751975207521752275237524752575267527752875297530753175327533753475357536753775387539754075417542754375447545754675477548754975507551755275537554755575567557755875597560756175627563756475657566756775687569757075717572757375747575757675777578757975807581758275837584758575867587758875897590759175927593759475957596759775987599760076017602760376047605760676077608760976107611761276137614761576167617761876197620762176227623762476257626762776287629763076317632763376347635763676377638763976407641764276437644764576467647764876497650765176527653765476557656765776587659766076617662766376647665766676677668766976707671767276737674767576767677767876797680768176827683768476857686768776887689769076917692769376947695769676977698769977007701770277037704770577067707770877097710771177127713771477157716771777187719772077217722772377247725772677277728772977307731773277337734773577367737773877397740774177427743774477457746774777487749775077517752775377547755775677577758775977607761776277637764776577667767776877697770777177727773777477757776777777787779778077817782778377847785778677877788778977907791779277937794779577967797779877997800780178027803780478057806780778087809781078117812781378147815781678177818781978207821782278237824782578267827782878297830783178327833783478357836783778387839784078417842784378447845784678477848784978507851785278537854785578567857785878597860786178627863786478657866786778687869787078717872787378747875787678777878787978807881788278837884788578867887788878897890789178927893789478957896789778987899790079017902790379047905790679077908790979107911791279137914791579167917791879197920792179227923792479257926792779287929793079317932793379347935793679377938793979407941794279437944794579467947794879497950795179527953795479557956795779587959796079617962796379647965796679677968796979707971797279737974797579767977797879797980798179827983798479857986798779887989799079917992799379947995799679977998799980008001800280038004800580068007800880098010801180128013801480158016801780188019802080218022802380248025802680278028802980308031803280338034803580368037803880398040804180428043804480458046804780488049805080518052805380548055805680578058805980608061806280638064806580668067806880698070807180728073807480758076807780788079808080818082808380848085808680878088808980908091809280938094809580968097809880998100810181028103810481058106810781088109811081118112811381148115811681178118811981208121812281238124812581268127812881298130813181328133813481358136813781388139814081418142814381448145814681478148814981508151815281538154815581568157815881598160816181628163816481658166816781688169817081718172817381748175817681778178817981808181818281838184818581868187818881898190819181928193819481958196819781988199820082018202820382048205820682078208820982108211821282138214821582168217821882198220822182228223822482258226822782288229823082318232823382348235823682378238823982408241824282438244824582468247824882498250825182528253825482558256825782588259826082618262826382648265826682678268826982708271827282738274827582768277827882798280828182828283828482858286828782888289829082918292829382948295829682978298829983008301830283038304830583068307830883098310831183128313831483158316831783188319832083218322832383248325832683278328832983308331833283338334833583368337833883398340834183428343834483458346834783488349835083518352835383548355835683578358835983608361836283638364836583668367836883698370837183728373837483758376837783788379838083818382838383848385838683878388838983908391839283938394839583968397839883998400840184028403840484058406840784088409841084118412841384148415841684178418841984208421842284238424842584268427842884298430843184328433843484358436843784388439844084418442844384448445844684478448844984508451845284538454845584568457845884598460846184628463846484658466846784688469847084718472847384748475847684778478847984808481848284838484848584868487848884898490849184928493849484958496849784988499850085018502850385048505850685078508850985108511851285138514851585168517851885198520852185228523852485258526852785288529853085318532853385348535853685378538853985408541854285438544854585468547854885498550855185528553855485558556855785588559856085618562856385648565856685678568856985708571857285738574857585768577857885798580858185828583858485858586858785888589859085918592859385948595859685978598859986008601860286038604860586068607860886098610861186128613861486158616861786188619862086218622862386248625862686278628862986308631863286338634863586368637863886398640864186428643864486458646864786488649865086518652865386548655865686578658865986608661866286638664866586668667866886698670867186728673867486758676867786788679868086818682868386848685868686878688868986908691869286938694869586968697869886998700870187028703870487058706870787088709871087118712871387148715871687178718871987208721872287238724872587268727872887298730873187328733873487358736873787388739874087418742874387448745874687478748874987508751875287538754875587568757875887598760876187628763876487658766876787688769877087718772877387748775877687778778877987808781878287838784878587868787878887898790879187928793879487958796879787988799880088018802880388048805880688078808880988108811881288138814881588168817881888198820882188228823882488258826882788288829883088318832883388348835883688378838883988408841884288438844884588468847884888498850885188528853885488558856885788588859886088618862886388648865886688678868886988708871887288738874887588768877887888798880888188828883888488858886888788888889889088918892889388948895889688978898889989008901890289038904890589068907890889098910891189128913891489158916891789188919892089218922892389248925892689278928892989308931893289338934893589368937893889398940894189428943894489458946894789488949895089518952895389548955895689578958895989608961896289638964896589668967896889698970897189728973897489758976897789788979898089818982898389848985898689878988898989908991899289938994899589968997899889999000900190029003900490059006900790089009901090119012901390149015901690179018901990209021902290239024902590269027902890299030903190329033903490359036903790389039904090419042904390449045904690479048904990509051905290539054905590569057905890599060906190629063906490659066906790689069907090719072907390749075907690779078907990809081908290839084908590869087908890899090909190929093909490959096909790989099910091019102910391049105910691079108910991109111911291139114911591169117911891199120912191229123912491259126912791289129913091319132913391349135913691379138913991409141914291439144914591469147914891499150915191529153915491559156915791589159916091619162916391649165916691679168916991709171917291739174917591769177917891799180918191829183918491859186918791889189919091919192919391949195919691979198919992009201920292039204920592069207920892099210921192129213921492159216921792189219922092219222922392249225922692279228922992309231923292339234923592369237923892399240924192429243924492459246924792489249925092519252925392549255925692579258925992609261926292639264926592669267926892699270927192729273927492759276927792789279928092819282928392849285928692879288928992909291929292939294929592969297929892999300930193029303930493059306930793089309931093119312931393149315931693179318931993209321932293239324932593269327932893299330933193329333933493359336933793389339934093419342934393449345934693479348934993509351935293539354935593569357935893599360936193629363936493659366936793689369937093719372937393749375937693779378937993809381938293839384938593869387938893899390939193929393939493959396939793989399940094019402940394049405940694079408940994109411941294139414941594169417941894199420942194229423942494259426942794289429943094319432943394349435943694379438943994409441944294439444944594469447944894499450945194529453945494559456945794589459946094619462946394649465946694679468946994709471947294739474947594769477947894799480948194829483948494859486948794889489949094919492949394949495949694979498949995009501950295039504950595069507950895099510951195129513951495159516951795189519952095219522952395249525952695279528952995309531953295339534953595369537953895399540954195429543954495459546954795489549955095519552955395549555955695579558955995609561956295639564956595669567956895699570957195729573957495759576957795789579958095819582958395849585958695879588958995909591959295939594959595969597959895999600960196029603960496059606960796089609961096119612961396149615961696179618961996209621962296239624962596269627962896299630963196329633963496359636963796389639964096419642964396449645964696479648964996509651965296539654965596569657965896599660966196629663966496659666966796689669967096719672967396749675967696779678967996809681968296839684968596869687968896899690969196929693969496959696969796989699970097019702970397049705970697079708970997109711971297139714971597169717971897199720972197229723972497259726972797289729973097319732973397349735973697379738973997409741974297439744974597469747974897499750975197529753975497559756975797589759976097619762976397649765976697679768976997709771977297739774977597769777977897799780978197829783978497859786978797889789979097919792979397949795979697979798979998009801980298039804980598069807980898099810981198129813981498159816981798189819982098219822982398249825982698279828982998309831983298339834983598369837983898399840984198429843984498459846984798489849985098519852985398549855985698579858985998609861986298639864986598669867986898699870987198729873987498759876987798789879988098819882988398849885988698879888988998909891989298939894989598969897989898999900990199029903990499059906990799089909991099119912991399149915991699179918991999209921992299239924992599269927992899299930993199329933993499359936993799389939994099419942994399449945994699479948994999509951995299539954995599569957995899599960996199629963996499659966996799689969997099719972997399749975997699779978997999809981998299839984998599869987998899899990999199929993999499959996999799989999100001000110002100031000410005100061000710008100091001010011100121001310014100151001610017100181001910020100211002210023100241002510026100271002810029100301003110032100331003410035100361003710038100391004010041100421004310044100451004610047100481004910050100511005210053100541005510056100571005810059100601006110062100631006410065100661006710068100691007010071100721007310074100751007610077100781007910080100811008210083100841008510086100871008810089100901009110092100931009410095100961009710098100991010010101101021010310104101051010610107101081010910110101111011210113101141011510116101171011810119101201012110122101231012410125101261012710128101291013010131101321013310134101351013610137101381013910140101411014210143101441014510146101471014810149101501015110152101531015410155101561015710158101591016010161101621016310164101651016610167101681016910170101711017210173101741017510176101771017810179101801018110182101831018410185101861018710188101891019010191101921019310194101951019610197101981019910200102011020210203102041020510206102071020810209102101021110212102131021410215102161021710218102191022010221102221022310224102251022610227102281022910230102311023210233102341023510236102371023810239102401024110242102431024410245102461024710248102491025010251102521025310254102551025610257102581025910260102611026210263102641026510266102671026810269102701027110272102731027410275102761027710278102791028010281102821028310284102851028610287102881028910290102911029210293102941029510296102971029810299103001030110302103031030410305103061030710308103091031010311103121031310314103151031610317103181031910320103211032210323103241032510326103271032810329103301033110332103331033410335103361033710338
  1. // ROUTES FOR OUR APIselectClassStudent
  2. // =============================================================================
  3. var express = require("express");
  4. var request = require("request");
  5. var bcrypt = require("bcryptjs");
  6. var router = express.Router(); // get an instance of the express Router
  7. const querystring = require("querystring");
  8. var mysql = require("./mysql");
  9. //=====================================
  10. // 本地
  11. // const _mysqlLabor = ["183.36.26.8", "pbl"]; //edu數據庫信息
  12. // const _mysqluser = ["183.36.26.8", "cocorobouser"]; //用户数据库信息
  13. // const _getmysqlLabor2 = ["183.36.26.8", "pbl"]; //edu數據庫信息
  14. // const _getmysqlLabor = ["183.36.26.8", "pbl"]; //edu數據庫信息
  15. //线上
  16. const _mysqlLabor = ["172.16.12.5", "pbl"]; //edu數據庫信息
  17. const _mysqluser = ["172.16.12.5", "cocorobouser"]; //edu數據庫信息
  18. const _getmysqlLabor2 = ["172.16.12.7", "pbl"]; //edu數據庫信息
  19. // const _getmysqlLabor2 = ["172.16.12.5", "pbl"]; //edu數據庫信息
  20. const _getmysqlLabor = ["172.16.12.7", "pbl"]; //edu數據庫信息
  21. // const _getmysqlLabor = ["172.16.12.5", "pbl"]; //edu數據庫信息
  22. //======================================
  23. // const _mysqlLabor = ["183.36.25.92", "pbl"]; //edu數據庫信息
  24. // const _mysqluser = ["183.36.25.92", "cocorobouser"]; //用户数据库信息
  25. // const _getmysqlLabor = ["123.58.32.152", "pbl"]; //edu數據庫信息
  26. // const _getmysqluser = ["123.58.32.152", "cocorobouser"]; //edu數據庫信息
  27. // const _mysqlLabor = ["172.16.12.5", "pbl"]; //edu數據庫信息
  28. // const _mysqluser = ["172.16.12.5", "cocorobouser"]; //edu數據庫信息
  29. // const _getmysqlLabor = ["172.16.12.5", "pbl"]; //edu數據庫信息
  30. // const _getmysqluser = ["172.16.12.5", "cocorobouser"]; //edu數據庫信息
  31. // const _getmysqlLabor2 = ["183.36.25.92", "pbl"]; //edu數據庫信息
  32. // const _getmysqlLabor = ["183.36.25.92", "pbl"]; //edu數據庫信息
  33. const _getmysqluser = ["172.16.12.7", "cocorobouser"]; //edu數據庫信息
  34. const _localhost = ["127.0.0.1", "pbl"]; //edu數據庫信息
  35. var crypto = require("crypto");
  36. var https = require("https");
  37. const { Pool } = require('pg');
  38. const axios = require('axios');
  39. const pool = new Pool({
  40. user: 'cocorobo',
  41. host: '34.228.204.21',
  42. database: 'cocorobo-postgres',
  43. password: 'cocorobo',
  44. port: 5433,
  45. max: 20000, // 设置最大连接数
  46. idleTimeoutMillis: 30000 // 设置空闲连接超时时间
  47. });
  48. async function calculateVectors(content) {
  49. try {
  50. const response = await axios.post('http://34.228.204.21:11434/api/embeddings', {
  51. "model": "smartcreation/bge-large-zh-v1.5",
  52. "prompt": `${content}`
  53. });
  54. const contentVector = response.data.embedding;
  55. return contentVector;
  56. } catch (error) {
  57. console.error('Error calculating vectors:', content);
  58. return null;
  59. }
  60. }
  61. async function findMatchingContents(discipline, content) {
  62. const contentVector = await calculateVectors(content);
  63. const formattedContentVector = contentVector.length > 0 ? `[` + contentVector.join(', ') + `]` : null;
  64. const client = await pool.connect();
  65. try {
  66. // 使用余弦相似度进行内容向量匹配
  67. const query = `
  68. SELECT title, id, content, file_url, file_type,
  69. 1 - (content_vector <#> $1::vector) AS contentSimilarity
  70. FROM (select file_type, file_url, title, id, content, content_vector from knowledgefiles as a where top_dir_id in (select id from directory_files where $2 = '' or folder_name = ANY(string_to_array($2, ',')))) as a
  71. ORDER BY contentSimilarity DESC
  72. LIMIT 5;
  73. `;
  74. const result = await client.query(query, [formattedContentVector, discipline]);
  75. /*
  76. console.log(result.rows);
  77. // 将查询结果转换为匹配对象
  78. const matches = result.rows.map(row => ({
  79. id: row.id,
  80. contentSimilarity: row.contentsimilarity
  81. }));
  82. console.log(matches);
  83. */
  84. return result.rows; // 返回匹配结果
  85. } catch (error) {
  86. console.error('Error finding matching contents:', error);
  87. return [];
  88. } finally {
  89. client.release(); // 确保释放数据库连接
  90. }
  91. }
  92. async function findMatchingContentsPage2(discipline, content, grade, page) {
  93. const contentVector = await calculateVectors(content);
  94. const formattedContentVector = contentVector.length > 0 ? `[` + contentVector.join(', ') + `]` : null;
  95. const offset = ((page || 1) - 1) * 5;
  96. const client = await pool.connect();
  97. try {
  98. // 使用余弦相似度进行内容向量匹配
  99. const query = `
  100. SELECT title, id, content, file_url, file_type,
  101. 1 - (content_vector <#> $1::vector) AS contentSimilarity
  102. FROM (select file_type, file_url, title, id, content, content_vector from knowledgefiles as a
  103. where ($2 = '' or a.parent_arr && (SELECT ARRAY_AGG(id)::text[] FROM directory_files WHERE folder_name = ANY(string_to_array($2, ','))))
  104. AND ($3 = '' or a.parent_arr && (SELECT ARRAY_AGG(id)::text[] FROM directory_files WHERE folder_name = ANY(string_to_array($3, ','))))) as a
  105. ORDER BY contentSimilarity DESC
  106. LIMIT 5 OFFSET $4;
  107. `;
  108. const result = await client.query(query, [formattedContentVector, discipline, grade, offset]);
  109. return result.rows; // 返回匹配结果
  110. } catch (error) {
  111. console.error('Error finding matching contents:', error);
  112. return [];
  113. } finally {
  114. client.release(); // 确保释放数据库连接
  115. }
  116. }
  117. async function findMatchingContentsPage3(discipline, content, grade, filetype, page) {
  118. const contentVector = await calculateVectors(content);
  119. const formattedContentVector = contentVector.length > 0 ? `[` + contentVector.join(', ') + `]` : null;
  120. const offset = ((page || 1) - 1) * 5;
  121. const client = await pool.connect();
  122. try {
  123. // 使用余弦相似度进行内容向量匹配
  124. const query = `
  125. SELECT id, content, file_type, file_url, title,
  126. 1 - (content_vector <#> $1::vector) AS contentSimilarity
  127. FROM (select file_url, title,id, content, content_vector, file_type from knowledgefiles as a
  128. where ($4 = '' or file_type = ANY(string_to_array($4, ','))) and ($2 = '' or a.parent_arr && (SELECT ARRAY_AGG(id)::text[] FROM directory_files WHERE folder_name = ANY(string_to_array($2, ','))))
  129. AND ($3 = '' or a.parent_arr && (SELECT ARRAY_AGG(id)::text[] FROM directory_files WHERE folder_name = ANY(string_to_array($3, ','))))) as a
  130. ORDER BY contentSimilarity DESC
  131. LIMIT 5 OFFSET $5;
  132. `;
  133. const result = await client.query(query, [formattedContentVector, discipline, grade, filetype, offset]);
  134. return result.rows; // 返回匹配结果
  135. } catch (error) {
  136. console.error('Error finding matching contents:', error);
  137. return [];
  138. } finally {
  139. client.release(); // 确保释放数据库连接
  140. }
  141. }
  142. async function findMatchingContentsPage(discipline, content, page) {
  143. const contentVector = await calculateVectors(content);
  144. const formattedContentVector = contentVector.length > 0 ? `[` + contentVector.join(', ') + `]` : null;
  145. const offset = ((page || 1) - 1) * 5;
  146. const client = await pool.connect();
  147. try {
  148. // 使用余弦相似度进行内容向量匹配
  149. const query = `
  150. SELECT title, id, content, file_url, file_type,
  151. 1 - (content_vector <#> $1::vector) AS contentSimilarity
  152. FROM (select file_type, file_url, title, id, content, content_vector from knowledgefiles as a where top_dir_id in
  153. (select id from directory_files where $2 = '' or folder_name = ANY(string_to_array($2, ',')))) as a
  154. ORDER BY contentSimilarity DESC
  155. LIMIT 5 OFFSET $3;
  156. `;
  157. const result = await client.query(query, [formattedContentVector, discipline, offset]);
  158. return result.rows; // 返回匹配结果
  159. } catch (error) {
  160. console.error('Error finding matching contents:', error);
  161. return [];
  162. } finally {
  163. client.release(); // 确保释放数据库连接
  164. }
  165. }
  166. /*检索文件*/
  167. router.route("/findMatchingContents").all(async (req, res, next) => {
  168. var json = queryString(req.url);
  169. console.log(json["type"], json["string"])
  170. const titleMatches = await findMatchingContents(json["type"], json["string"]);
  171. res.end(JSON.stringify(titleMatches));
  172. });
  173. /*检索文件*/
  174. router.route("/findMatchingContentsPage").all(async (req, res, next) => {
  175. var json = queryString(req.url);
  176. console.log(json["type"], json["string"])
  177. const titleMatches = await findMatchingContentsPage(json["type"], json["string"], json["page"]);
  178. res.end(JSON.stringify(titleMatches));
  179. });
  180. /*检索文件*/
  181. router.route("/findMatchingContentsPage2").all(async (req, res, next) => {
  182. var json = queryString(req.url);
  183. console.log(json["type"], json["string"])
  184. const titleMatches = await findMatchingContentsPage2(json["type"], json["string"], json["grade"], json["page"]);
  185. res.end(JSON.stringify(titleMatches));
  186. });
  187. /*检索文件*/
  188. router.route("/findMatchingContentsPage3").all(async (req, res, next) => {
  189. var json = queryString(req.url);
  190. const titleMatches = await findMatchingContentsPage3(json["type"], json["string"], json["grade"], json["filetype"], json["page"]);
  191. res.end(JSON.stringify(titleMatches));
  192. });
  193. //統壹處理區域
  194. router.use(async function(req, res, next) {
  195. await asynnext(req, res, next);
  196. //// make sure we go to the next routes and don't stop here
  197. //res.end("");
  198. });
  199. /**
  200. * @des 參數解釋同上
  201. */
  202. function asynnext(req, res, next) {
  203. //異步處理
  204. return new Promise(async(resolve, reject) => {
  205. next();
  206. //resolve(true);aa
  207. });
  208. }
  209. /*測試*/
  210. router.route("/a").all((req, res, next) => {
  211. var json = queryString(req.url);
  212. getmysql(req, res, "a", json["ph"], json["pa"]);
  213. });
  214. router.route("/b").all((req, res, next) => {
  215. var json = queryString(req.url);
  216. getmysql(req, res, "b", json["ph"], json["pa"]);
  217. });
  218. /* 注册接口 */
  219. router.route("/register").post(function(req, res, next) {
  220. //mode的处理
  221. if (req.body[0]) {
  222. // 0 用户名 1 用户密码 2用户身份 3 第三方id(可有可无)
  223. p = Object.values(req.body[0]); //获取用户密码
  224. //没有第三方id的处理
  225. // if (p.length < 4) {
  226. // p.push("")
  227. // }
  228. p[1] = bcrypt.hashSync(p[1], bcrypt.genSaltSync(10));
  229. //密码加密
  230. // bcrypt.hash(p[1], 10, function (err, hash) {
  231. // if (err) {
  232. // return next(err);
  233. // }
  234. // p[1] = hash;
  235. // });
  236. //参数拼接,注册
  237. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "register");
  238. //返回注册用户数据
  239. // mysql.usselect(p, function (ret) {
  240. // res.end(ret);
  241. // });
  242. mysql.usselect(p, function(ret) {
  243. res.end(JSON.stringify(ret));
  244. });
  245. }
  246. });
  247. /*登录接口*/
  248. router.route("/login").all((req, res, next) => {
  249. //mode的处理
  250. if (req.body[0]) {
  251. // 0 用户名 1 用户密码
  252. c = Object.values(req.body[0]); //获取用户密码
  253. p = [c[0]];
  254. // p[1] = bcrypt.hashSync(p[1], bcrypt.genSaltSync(10));
  255. var _password = [c[0]];
  256. _password.unshift(_mysqlLabor[0], _mysqlLabor[1], "selectPassword");
  257. mysql.usselect(_password, function(ret) {
  258. var _ret = ret;
  259. var paJ = _ret[0][0].userpassword;
  260. bcrypt.compare(c[1], paJ, function(err, result) {
  261. // console.log(result)
  262. if (result) {
  263. //参数拼接,登录
  264. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "selectLogin");
  265. //执行存储过程
  266. mysql.usselect(p, function(ret) {
  267. res.end(JSON.stringify({ status: "1", ...ret }));
  268. });
  269. } else {
  270. res.end(JSON.stringify([{ status: "0" }]));
  271. }
  272. });
  273. });
  274. // console.log(isEqual)
  275. }
  276. });
  277. /*手机登录接口*/
  278. router.route("/phoneLogin").all((req, res, next) => {
  279. //mode的处理
  280. if (req.body[0]) {
  281. // 0 用户名 1 用户密码
  282. c = Object.values(req.body[0]); //获取用户密码
  283. p = [c[0]];
  284. // p[1] = bcrypt.hashSync(p[1], bcrypt.genSaltSync(10));
  285. var _password = [c[0]];
  286. _password.unshift(_mysqluser[0], _mysqluser[1], "selectPassword");
  287. mysql.usselect(_password, function(ret) {
  288. if (ret[0].length) {
  289. var _ret = ret;
  290. var paJ = _ret[0][0].password;
  291. let uid = _ret[0][0].userid;
  292. let duid = [uid];
  293. bcrypt.compare(c[1], paJ, function(err, result) {
  294. // console.log(result)
  295. if (result) {
  296. //参数拼接,登录
  297. duid.unshift(_mysqlLabor[0], _mysqlLabor[1], "selectUser");
  298. //执行存储过程
  299. mysql.usselect(duid, function(ret) {
  300. res.end(JSON.stringify({ status: "1", ...ret }));
  301. });
  302. } else {
  303. res.end(JSON.stringify([{ status: "0" }]));
  304. }
  305. });
  306. } else {
  307. res.end(JSON.stringify([{ status: "0" }]));
  308. }
  309. });
  310. // console.log(isEqual)
  311. }
  312. });
  313. // 图片转base64
  314. router.route("/imgToBase64").all((req, res, next) => {
  315. var json = queryString(req.url);
  316. //mode的处理
  317. https.get(json["img"], function(res2) {
  318. var chunks = [];
  319. var size = 0;
  320. res2.on("data", function(chunk) {
  321. chunks.push(chunk);
  322. size += chunk.length; //累加缓冲数据的长度
  323. });
  324. res2.on("end", function(err) {
  325. var data = Buffer.concat(chunks, size);
  326. var base64Img = data.toString("base64");
  327. res.end(JSON.stringify([{ img: `data:image/png;base64,${base64Img}` }]));
  328. });
  329. });
  330. });
  331. router.route("/download").all(async(req, res, next) => {
  332. var json = queryString(req.url);
  333. // 查询文件名和下载链接
  334. const fileName = json["name"];
  335. const link = json["url"];
  336. // 发送下载请求
  337. request.get(link, (err, response) => {
  338. if (err) {
  339. res.status(500).end("Internal Server Error");
  340. return;
  341. }
  342. https.get(link, function(res2) {
  343. var chunks = [];
  344. var size = 0;
  345. res2.on("data", function(chunk) {
  346. chunks.push(chunk);
  347. size += chunk.length; //累加缓冲数据的长度
  348. });
  349. res2.on("end", function(err) {
  350. var data = Buffer.concat(chunks, size);
  351. var base64Img = data.toString("base64");
  352. res.end(JSON.stringify({ response, data }));
  353. });
  354. });
  355. });
  356. });
  357. // 罗湖get
  358. router.route("/luohugetTeacherInfo").all((req, res, next) => {
  359. var json = queryString(req.url);
  360. //mode的处理
  361. https.get("https://web.luohuedu.net/tx/userinfo.aspx?code=" + json['code'], function(res2) {
  362. let data = '';
  363. res2.on("data", function(chunk) {
  364. data += chunk; // 累加获取的数据
  365. });
  366. res2.on("end", function() {
  367. res.end(data); // 将获取的值传参给前端
  368. });
  369. });
  370. });
  371. /*登录接口*/
  372. router.route("/loginRace").all((req, res, next) => {
  373. //mode的处理
  374. if (req.body[0]) {
  375. // 0 用户名 1 用户密码
  376. c = Object.values(req.body[0]); //获取用户密码
  377. p = [c[0]];
  378. // p[1] = bcrypt.hashSync(p[1], bcrypt.genSaltSync(10));
  379. var _password = [c[0]];
  380. _password.unshift(_mysqlLabor[0], _mysqlLabor[1], "selectPasswordRace");
  381. mysql.usselect(_password, function(ret) {
  382. var _ret = ret;
  383. var paJ = _ret[0][0].password;
  384. bcrypt.compare(c[1], paJ, function(err, result) {
  385. // console.log(result)
  386. if (result) {
  387. //参数拼接,登录
  388. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "selectLoginRace");
  389. //执行存储过程
  390. mysql.usselect(p, function(ret) {
  391. res.end(JSON.stringify({ status: "1", ...ret }));
  392. });
  393. } else {
  394. res.end(JSON.stringify([{ status: "0" }]));
  395. }
  396. });
  397. });
  398. // console.log(isEqual)
  399. }
  400. });
  401. /* 修改密码接口 */
  402. router.route("/updateAllPassword").all(function(req, res, next) {
  403. //mode的处理
  404. // let p = [];
  405. // p.unshift(_mysqlLabor[0], _mysqlLabor[1], "getAllPassword"); //執行存儲過程
  406. // mysql.usselect(p, function(ret) {
  407. // var allUser = ret[0];
  408. // var matchedUsers = allUser.filter(function(user) {
  409. // return bcrypt.compareSync('123456', user.password);
  410. // });
  411. // let a = matchedUsers.map(user => user.userid).join(",");
  412. // console.log(a);
  413. // res.end(JSON.stringify(matchedUsers));
  414. // });
  415. let allUser =  ['65a493a7-0115-11ee-91d8-005056b86db5', 'b0e41557-382b-11ee-91d8-005056b86db5', '95e46cb3-6e1c-11ee-b98c-005056b86db5', '0db98925-d093-11ee-b534-005056b86db5', 'fcd9b23e-d099-11ee-b534-005056b86db5', 'fcda0e4c-d099-11ee-b534-005056b86db5', '710746bc-f657-11ef-b508-005056924926', '1b06a4fa-03c2-11f0-b508-005056924926']
  416. console.log(allUser.length);
  417. function updatePasswordBatch(startIndex, endIndex) {
  418. if (endIndex > allUser.length) {
  419. endIndex = allUser.length;
  420. }
  421. for (let i = startIndex; i < endIndex; i++) {
  422. _password = bcrypt.hashSync("Coco1234", bcrypt.genSaltSync(10));
  423. //.userid
  424. let p2 = [allUser[i], _password];
  425. p2.unshift(_mysqlLabor[0], _mysqlLabor[1], "iniPassword"); //執行存儲過程
  426. mysql.usselect(p2, function(ret) {
  427. console.log(i);
  428. // console.log(ret);
  429. if (i === endIndex - 1) {
  430. console.log(`执行下一个100条,执行完${endIndex}`);
  431. updatePasswordBatch(endIndex, endIndex + 100);
  432. if(endIndex + 1 == allUser.length){
  433. res.end("修改完成");
  434. }
  435. }
  436. });
  437. }
  438. }
  439. updatePasswordBatch(0, 100);
  440. });
  441. /* 修改密码接口 */
  442. router.route("/updatePassword").post(function(req, res, next) {
  443. //mode的处理
  444. if (req.body[0]) {
  445. let p = [req.body[0].userid];
  446. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "getPassword"); //執行存儲過程
  447. mysql.usselect(p, function(ret) {
  448. var paJ = ret[0][0].password;
  449. var op = bcrypt.hashSync(req.body[0].opassword, bcrypt.genSaltSync(10));
  450. bcrypt.compare(req.body[0].opassword, paJ, function(err, result) {
  451. // console.log(result)
  452. if (result) {
  453. let p2 = [
  454. req.body[0].userid,
  455. bcrypt.hashSync(req.body[0].password, bcrypt.genSaltSync(10)),
  456. ];
  457. p2.unshift(_mysqlLabor[0], _mysqlLabor[1], "updatePassword"); //執行存儲過程
  458. mysql.usselect(p2, function(ret) {
  459. res.end(JSON.stringify([{ success: 1 }]));
  460. });
  461. } else {
  462. res.end(JSON.stringify([{ success: 0 }]));
  463. }
  464. });
  465. });
  466. }
  467. });
  468. /* 赛事修改密码 */
  469. router.route("/updatePassword1").post(function(req, res, next) {
  470. //mode的处理
  471. if (req.body[0]) {
  472. let p = [req.body[0].userid];
  473. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "getPassword1"); //執行存儲過程
  474. mysql.usselect(p, function(ret) {
  475. var paJ = ret[0][0].password;
  476. var op = bcrypt.hashSync(req.body[0].opassword, bcrypt.genSaltSync(10));
  477. bcrypt.compare(req.body[0].opassword, paJ, function(err, result) {
  478. // console.log(result)
  479. if (result) {
  480. let p2 = [
  481. req.body[0].userid,
  482. bcrypt.hashSync(req.body[0].password, bcrypt.genSaltSync(10)),
  483. ];
  484. p2.unshift(_mysqlLabor[0], _mysqlLabor[1], "updatePassword1"); //執行存儲過程
  485. mysql.usselect(p2, function(ret) {
  486. res.end(JSON.stringify([{ success: 1 }]));
  487. });
  488. } else {
  489. res.end(JSON.stringify([{ success: 0 }]));
  490. }
  491. });
  492. });
  493. }
  494. });
  495. /* 找寻重复手机号 */
  496. router.route("/findPhone").all((req, res, next) => {
  497. var json = queryString(req.url);
  498. getmysql(req, res, "findPhone", json["un"]);
  499. });
  500. /* 找寻是否有此账号 */
  501. router.route("/findUsername").all((req, res, next) => {
  502. var json = queryString(req.url);
  503. getmysql(req, res, "findUsername", json["un"]);
  504. });
  505. /* 找寻重复邮箱 */
  506. router.route("/findMail").all((req, res, next) => {
  507. var json = queryString(req.url);
  508. usergetmysql(req, res, "findMail", json["un"]);
  509. });
  510. /* 找寻重复学号 */
  511. router.route("/findSid").all((req, res, next) => {
  512. var json = queryString(req.url);
  513. getmysql(req, res, "findSid", json["un"]);
  514. });
  515. /* 新增班级 修1 */
  516. router.route("/insertClass").get((req, res, next) => {
  517. var json = queryString(req.url);
  518. getmysql2(req, res, "insertClass", json["name"], json["oid"], json["uid"]);
  519. });
  520. /* 新增教研室 修1 */
  521. router.route("/insertTeacherOffice").get((req, res, next) => {
  522. var json = queryString(req.url);
  523. getmysql2(req, res, "insertTeacherOffice", json["name"], json["oid"], json["uid"]);
  524. });
  525. /* 新增年级 修1 */
  526. router.route("/insertGrade").get((req, res, next) => {
  527. var json = queryString(req.url);
  528. getmysql2(req, res, "insertGrade", json["name"], json["oid"], json["uid"]);
  529. });
  530. /* 修改班级 修1 */
  531. router.route("/updateClass").get((req, res, next) => {
  532. var json = queryString(req.url);
  533. getmysql2(req, res, "updateClass", json["id"], json["n"], json["oid"]);
  534. });
  535. // 修改教研室 修1
  536. router.route("/updateTeacherOffice").get((req, res, next) => {
  537. var json = queryString(req.url);
  538. getmysql2(req, res, "updateTeacherOffice", json["id"], json["n"], json["oid"]);
  539. });
  540. // 修改教研室 修2
  541. router.route("/updateTeacherOffice2").get((req, res, next) => {
  542. var json = queryString(req.url);
  543. getmysql2(req, res, "updateTeacherOffice2", json["id"], json["n"], json["oid"], json["pid"]);
  544. });
  545. /* 修改年级 修1 */
  546. router.route("/updateGrade").get((req, res, next) => {
  547. var json = queryString(req.url);
  548. getmysql2(req, res, "updateGrade", json["id"], json["n"], json["oid"]);
  549. });
  550. /* 查询班级 */
  551. router.route("/selectClass").all((req, res, next) => {
  552. var json = queryString(req.url);
  553. getmysql(req, res, "selectClass", json["cu"], json["oid"], json["cn"], json["page"], 10);
  554. });
  555. // 教研室查询
  556. router.route("/selectTeacherOffice").all((req, res, next) => {
  557. var json = queryString(req.url);
  558. getmysql(req, res, "selectTeacherOffice", json["cu"], json["oid"], json["cn"], json["page"], 10);
  559. });
  560. /* 查询班级 */
  561. router.route("/selectClass2").all((req, res, next) => {
  562. var json = queryString(req.url);
  563. getmysql(req, res, "selectClass2", json["cid"], json["oid"], json["cn"], json["page"], 10);
  564. });
  565. /* 查询年级 */
  566. router.route("/selectGrade").all((req, res, next) => {
  567. var json = queryString(req.url);
  568. getmysql(req, res, "selectGrade", json["cu"], json["oid"], json["cn"], json["page"], 10);
  569. });
  570. /* 删除1班级 */
  571. router.route("/deleteClass").all((req, res, next) => {
  572. var json = queryString(req.url);
  573. getmysql2(req, res, "deleteClass", json["id"]);
  574. });
  575. /* 删除1年级 */
  576. router.route("/deleteGrade").all((req, res, next) => {
  577. var json = queryString(req.url);
  578. getmysql2(req, res, "deleteGrade", json["id"]);
  579. });
  580. /* 查询学校 */
  581. router.route("/selectOrg").all((req, res, next) => {
  582. var json = queryString(req.url);
  583. getmysql(req, res, "selectOrg");
  584. });
  585. /* 查询组织 */
  586. router.route("/selectorg2").all((req, res, next) => {
  587. var json = queryString(req.url);
  588. getmysql(req, res, "selectorg2");
  589. });
  590. /* 修改学校名称 修1 */
  591. router.route("/updateSN").get((req, res, next) => {
  592. var json = queryString(req.url);
  593. getmysql2(req, res, "updateSchoolName", json["oid"], json["n"]);
  594. });
  595. /* 教师端修改学校名称 修1 */
  596. router.route("/updateSchoolByOrg").get((req, res, next) => {
  597. var json = queryString(req.url);
  598. getmysql2(req, res, "updateSchoolByOrg", json["n"], json["d"], json["id"]);
  599. });
  600. /* 教师端查询未联结学校 */
  601. router.route("/selectNoCSchool").all((req, res, next) => {
  602. var json = queryString(req.url);
  603. getmysql(req, res, "selectNoCSchool");
  604. });
  605. /* 教师端新增或修改联结学校 修1 */
  606. router.route("/addNoSchool").get((req, res, next) => {
  607. var json = queryString(req.url);
  608. getmysql2(req, res, "addNoSchool", json["id"], json["coid"]);
  609. });
  610. /* 新增学生 修1 */
  611. router.route("/insertStudent").get((req, res, next) => {
  612. var json = queryString(req.url);
  613. json["userpassword"] = bcrypt.hashSync(
  614. json["userpassword"],
  615. bcrypt.genSaltSync(10)
  616. );
  617. getmysql2(
  618. req,
  619. res,
  620. "insertStudent",
  621. json["ph"],
  622. json["username"],
  623. json["userpassword"],
  624. json["type"],
  625. json["oid"],
  626. json["tid"],
  627. json["cid"]
  628. );
  629. });
  630. // /* 新增学生 */
  631. // router.route('/iStudent').all((req, res, next) => {
  632. // var json = queryString(req.url);
  633. // json['userpassword'] = bcrypt.hashSync(json['userpassword'], bcrypt.genSaltSync(10))
  634. // getmysql(req, res, "insertStudent", json['ph'], json['username'], json['userpassword'], json['type'], json['oid'], json['tid'], json['cid']);
  635. // });
  636. /* 查询学生 */
  637. router.route("/selectStudent").all((req, res, next) => {
  638. var json = queryString(req.url);
  639. getmysql(
  640. req,
  641. res,
  642. "selectStudent",
  643. json["oid"],
  644. json["cu"],
  645. json["cn"],
  646. json["page"],
  647. 10
  648. );
  649. });
  650. /* ppt根据学校查询学生 */
  651. router.route("/selectStudentByScoolPPt").all((req, res, next) => {
  652. var json = queryString(req.url);
  653. getmysql(req, res, "selectStudentByScoolPPt", json["oid"], json["cid"]);
  654. });
  655. /* 查询学校底下的所有学生 */
  656. router.route("/selectOrgStu").all((req, res, next) => {
  657. var json = queryString(req.url);
  658. getmysql(req, res, "selectOrgStu", json["oid"]);
  659. });
  660. /* 查询学生 */
  661. router.route("/selectStudentAdd").all((req, res, next) => {
  662. var json = queryString(req.url);
  663. getmysql(req, res, "selectStudentAdd", json["oid"], json["cu"], json["cn"]);
  664. });
  665. /* 查询老师 */
  666. router.route("/selectTeacherAdd").all((req, res, next) => {
  667. var json = queryString(req.url);
  668. getmysql(req, res, "selectTeacherAdd", json["oid"], json["cu"], json["cn"]);
  669. });
  670. /* 查询老师 */
  671. router.route("/selectTeacherAdd2").all((req, res, next) => {
  672. var json = queryString(req.url);
  673. getmysql(req, res, "selectTeacherAdd2", json["oid"], json["org"], json["cu"], json["cn"]);
  674. });
  675. /* 查询老师 */
  676. router.route("/selectTeacherAddOrg").all((req, res, next) => {
  677. var json = queryString(req.url);
  678. getmysql(
  679. req,
  680. res,
  681. "selectTeacherAddOrg",
  682. json["oid"],
  683. json["cu"],
  684. json["cn"]
  685. );
  686. });
  687. /* 查询学生 */
  688. router.route("/selectStudentAddOrg").all((req, res, next) => {
  689. var json = queryString(req.url);
  690. getmysql(
  691. req,
  692. res,
  693. "selectStudentAddOrg",
  694. json["oid"],
  695. json["cu"],
  696. json["cn"]
  697. );
  698. });
  699. /* 查询全部用户 */
  700. router.route("/selectUserAddOrg").all((req, res, next) => {
  701. var json = queryString(req.url);
  702. getmysql(req, res, "selectUserAddOrg", json["oid"], json["cu"], json["cn"]);
  703. });
  704. /* 查询全部用户 */
  705. router.route("/selectUserAdd").all((req, res, next) => {
  706. var json = queryString(req.url);
  707. getmysql(req, res, "selectUserAdd", json["oid"], json["cu"], json["cn"]);
  708. });
  709. /* 查询全部用户 */
  710. router.route("/selectUserByOidS").all((req, res, next) => {
  711. var json = queryString(req.url);
  712. getmysql(
  713. req,
  714. res,
  715. "selectUserByOidS",
  716. json["oid"],
  717. json["org"],
  718. json["cu"],
  719. json["cn"]
  720. );
  721. });
  722. /* 查询全部用户 */
  723. router.route("/selectUserByOidS2").all((req, res, next) => {
  724. var json = queryString(req.url);
  725. getmysql(
  726. req,
  727. res,
  728. "selectUserByOidS2",
  729. json["oid"],
  730. json["org"],
  731. json["cu"],
  732. json["cn"],
  733. json["page"],
  734. json["pageSize"]
  735. );
  736. });
  737. /* 查询全部用户 */
  738. router.route("/selectUserByOidS2Studio").all((req, res, next) => {
  739. var json = queryString(req.url);
  740. getmysql(
  741. req,
  742. res,
  743. "selectUserByOidS2Studio",
  744. json["oid"],
  745. json["org"],
  746. json["cu"],
  747. json["cn"],
  748. json["page"],
  749. json["pageSize"]
  750. );
  751. });
  752. /* 查询班级是否有重复 */
  753. router.route("/selectC").all((req, res, next) => {
  754. var json = queryString(req.url);
  755. getmysql(req, res, "selectC", json["className"]);
  756. });
  757. /* 查询学校是否有重复 */
  758. router.route("/selectS").all((req, res, next) => {
  759. var json = queryString(req.url);
  760. getmysql(req, res, "selectS", json["schoolName"]);
  761. });
  762. /* 修改个人信息 */
  763. router.route("/updateUser").all((req, res, next) => {
  764. postmysql(req, res, "updateUser");
  765. });
  766. //获取荔园个人信息弹框数据
  767. router.route("/selectliyuanUserInfo").all((req, res, next) => {
  768. var json = queryString(req.url);
  769. getmysql(req, res, "selectliyuanUserInfo", json["uid"]);
  770. });
  771. /* 修改荔园个人信息弹框数据 */
  772. router.route("/updateliyuanUserInfo").all((req, res, next) => {
  773. postmysql(req, res, "updateliyuanUserInfo");
  774. });
  775. router.route("/updateliyuanUser").all((req, res, next) => {
  776. postmysql(req, res, "updateliyuanUser");
  777. });
  778. //查询老师的信息
  779. router.route("/getUser").all((req, res, next) => {
  780. var json = queryString(req.url);
  781. // getmysql(req, res, "selectUserDeail", json["id"]);
  782. // 获取调用接口的前端网页域名
  783. // 只有.cn域名才需要判断session,.hk和.com直接查询
  784. console.log(req.headers.origin);
  785. if (req.headers.origin && req.headers.origin.includes(".cn")) {
  786. if (req.session && req.session.userId) {
  787. if (req.session.userId == json["uid"]) {
  788. getmysql(req, res, "selectUserDeail", json["uid"]);
  789. } else {
  790. // 不匹配则返回空数组
  791. res.end(JSON.stringify([]));
  792. }
  793. } else {
  794. res.end(JSON.stringify([]));
  795. }
  796. } else if(req.headers.origin){
  797. // .hk和.com域名直接查询,不判断session
  798. getmysql(req, res, "selectUserDeail", json["uid"]);
  799. } else {
  800. if (req.session && req.session.userId) {
  801. if (req.session.userId == json["uid"]) {
  802. getmysql(req, res, "selectUserDeail", json["uid"]);
  803. } else {
  804. // 不匹配则返回空数组
  805. res.end(JSON.stringify([]));
  806. }
  807. } else {
  808. res.end(JSON.stringify([]));
  809. }
  810. }
  811. });
  812. //查询老师的信息
  813. router.route("/getUser2").all((req, res, next) => {
  814. var json = queryString(req.url);
  815. // getmysql(req, res, "selectUserDeail", json["uid"]);
  816. // 获取调用接口的前端网页域名
  817. // 只有.cn域名才需要判断session,.hk和.com直接查询
  818. if (req.headers.origin && req.headers.origin.includes(".cn")) {
  819. if (req.session && req.session.userId) {
  820. if (req.session.userId == json["uid"]) {
  821. getmysql(req, res, "selectUserDeail", json["uid"]);
  822. } else {
  823. // 不匹配则返回空数组
  824. res.end(JSON.stringify([]));
  825. }
  826. } else {
  827. res.end(JSON.stringify([]));
  828. }
  829. } else if(req.headers.origin){
  830. // .hk和.com域名直接查询,不判断session
  831. getmysql(req, res, "selectUserDeail", json["uid"]);
  832. } else {
  833. if (req.session && req.session.userId) {
  834. if (req.session.userId == json["userid"]) {
  835. getmysql(req, res, "selectUser", json["userid"]);
  836. } else {
  837. // 不匹配则返回空数组
  838. res.end(JSON.stringify([]));
  839. }
  840. } else {
  841. res.end(JSON.stringify([]));
  842. }
  843. }
  844. });
  845. //查询老师的信息
  846. router.route("/getRaceUser").all((req, res, next) => {
  847. var json = queryString(req.url);
  848. getmysql(req, res, "getRaceUser", json["uid"]);
  849. });
  850. router.route("/selectUserInfo").all((req, res, next) => {
  851. var json = queryString(req.url);
  852. getmysql(req, res, "selectUserInfo", json["userid"]);
  853. });
  854. //查询教师端消息
  855. router.route("/getNewsTeacher").all((req, res, next) => {
  856. var json = queryString(req.url);
  857. getmysql(req, res, "selectNew", json["uid"], json["page"], 10);
  858. });
  859. //查询教师端消息
  860. router.route("/selectNotice").all((req, res, next) => {
  861. var json = queryString(req.url);
  862. getmysql(
  863. req,
  864. res,
  865. "selectNotice",
  866. json["uid"],
  867. json["oid"],
  868. json["org"],
  869. json["page"],
  870. 10
  871. );
  872. });
  873. //查询教师端消息
  874. router.route("/selectNotice2").all((req, res, next) => {
  875. var json = queryString(req.url);
  876. getmysql(req, res, "selectNotice2", json["uid"], json["oid"], json["org"]);
  877. });
  878. //查询教师端消息
  879. router.route("/addNotice").all((req, res, next) => {
  880. postmysql(req, res, "addNotice");
  881. });
  882. //查询教师端消息
  883. router.route("/deleteNotice").all((req, res, next) => {
  884. postmysql(req, res, "deleteNotice");
  885. });
  886. //查询通知详情
  887. router.route("/selectNewDetail").all((req, res, next) => {
  888. var json = queryString(req.url);
  889. getmysql(req, res, "selectNewDetail", json["nid"]);
  890. });
  891. //查出分组分类
  892. router.route("/getGroup").all((req, res, next) => {
  893. getmysql(req, res, "selectGroupTeacher");
  894. });
  895. //查询这个老师底下的学生提交的作业
  896. router.route("/getWorks").all((req, res, next) => {
  897. //已经不用
  898. var json = queryString(req.url);
  899. getmysql(req, res, "selectWorks", json["cn"], json["cid"], json["page"], 10);
  900. });
  901. //查询项目
  902. router.route("/getProject").all((req, res, next) => {
  903. var json = queryString(req.url);
  904. getmysql(
  905. req,
  906. res,
  907. "selectProject",
  908. json["type"],
  909. json["uid"],
  910. json["oid"],
  911. json["cn"],
  912. json["page"],
  913. 10
  914. );
  915. });
  916. //新评价查询项目
  917. router.route("/getProject1").all((req, res, next) => {
  918. //已经不用
  919. var json = queryString(req.url);
  920. getmysql(
  921. req,
  922. res,
  923. "selectProject1",
  924. json["uid"],
  925. json["cid"],
  926. json["eid"],
  927. json["cn"],
  928. json["page"],
  929. 10
  930. );
  931. });
  932. //查询项目
  933. router.route("/getMyProject").all((req, res, next) => {
  934. var json = queryString(req.url);
  935. getmysql(req, res, "selectMyProject", json["uid"], json["page"], 10);
  936. });
  937. //查询项目成员
  938. router.route("/selectProjectStudent").all((req, res, next) => {
  939. var json = queryString(req.url);
  940. getmysql(req, res, "select_student", json["cn"], json["oid"], json["uid"]);
  941. });
  942. //查询Banner列表
  943. router.route("/selectBannerList").all((req, res, next) => {
  944. var json = queryString(req.url);
  945. getmysql(req, res, "selectBannerList", json["page"], 10);
  946. });
  947. //查询Banner列表
  948. router.route("/selectAllBanner").all((req, res, next) => {
  949. var json = queryString(req.url);
  950. getmysql(req, res, "selectAllBanner", json["t"]);
  951. });
  952. //新增Banner
  953. router.route("/insertBannerList").all((req, res, next) => {
  954. postmysql(req, res, "insertBannerList");
  955. });
  956. //删除提交的作业
  957. router.route("/deleteCourseWork").all((req, res, next) => {
  958. postmysql(req, res, "deleteCourseWork");
  959. });
  960. //删除提交的作业
  961. router.route("/deleteCourseWorkTwo").all((req, res, next) => {
  962. postmysql(req, res, "deleteCourseWorkTwo");
  963. });
  964. //删除提交的作业
  965. router.route("/deleteCourseWorkTwo2").all((req, res, next) => {
  966. postmysql(req, res, "deleteCourseWorkTwo2");
  967. });
  968. //查询课程管理导出pdf的数据 ym
  969. router.route("/selectStuCourseReportPdf").all((req, res, next) => {
  970. var json = queryString(req.url);
  971. getmysql(req, res, "selectStuCourseReportPdf", json["cid"], json["uid"], json["cla"]);
  972. });
  973. router.route("/selectStuCourseReportPdfTwo").all((req, res, next) => {
  974. var json = queryString(req.url);
  975. getmysql(req, res, "selectStuCourseReportPdfTwo", json["cid"], json["uid"], json["cla"]);
  976. });
  977. //删除提交的作业
  978. router.route("/deleteCourseWorkS").all((req, res, next) => {
  979. postmysql(req, res, "deleteCourseWorkS");
  980. });
  981. //删除1Banner
  982. router.route("/deleteBannerList").all((req, res, next) => {
  983. var json = queryString(req.url);
  984. getmysql2(req, res, "deleteBannerList", json["id"]);
  985. });
  986. //查询有没有重复的模板
  987. router.route("/selectTipsTemplateBE").all((req, res, next) => {
  988. var json = queryString(req.url);
  989. getmysql(req, res, "selectTipsTemplateBE", json["userid"], json["name"]);
  990. });
  991. router.route("/addTipsTemplate2E").all((req, res, next) => {
  992. postmysql(req, res, "addTipsTemplate2E");
  993. });
  994. //删除提示词模板
  995. router.route("/deleteTipsTemplateE").all((req, res, next) => {
  996. postmysql(req, res, "deleteTipsTemplateE");
  997. });
  998. //查询模板
  999. router.route("/selectTipsTemplateE").all((req, res, next) => {
  1000. var json = queryString(req.url);
  1001. getmysql(req, res, "selectTipsTemplateE", json["userid"], json["oid"], json["org"], json["type"], json["name"], json["stand"]);
  1002. });
  1003. //查询模板
  1004. router.route("/selectTipsTemplateByIdE").all((req, res, next) => {
  1005. var json = queryString(req.url);
  1006. getmysql(req, res, "selectTipsTemplateByIdE", json["id"], json["stand"]);
  1007. });
  1008. //新增提示词
  1009. router.route("/addTips").all((req, res, next) => {
  1010. postmysql(req, res, "addTips");
  1011. });
  1012. //查询有没有重复的模板
  1013. router.route("/selectTipsTemplateB").all((req, res, next) => {
  1014. var json = queryString(req.url);
  1015. getmysql(req, res, "selectTipsTemplateB", json["userid"], json["name"]);
  1016. });
  1017. //保存提示词模板
  1018. router.route("/addTipsTemplate").all((req, res, next) => {
  1019. postmysql(req, res, "addTipsTemplate");
  1020. });
  1021. router.route("/addTipsTemplate2").all((req, res, next) => {
  1022. postmysql(req, res, "addTipsTemplate2");
  1023. });
  1024. // 保存AI创建的模板 yym
  1025. router.route("/addTipsTemplateCom").all((req, res, next) => {
  1026. postmysql(req, res, "addTipsTemplateCom");
  1027. });
  1028. //删除提示词模板
  1029. router.route("/deleteTipsTemplate").all((req, res, next) => {
  1030. postmysql(req, res, "deleteTipsTemplate");
  1031. });
  1032. //删除英文提示词模板 yym
  1033. router.route("/deleteTipsTemplateCom").all((req, res, next) => {
  1034. postmysql(req, res, "deleteTipsTemplateCom");
  1035. });
  1036. //查询模板
  1037. router.route("/selectTipsTemplate").all((req, res, next) => {
  1038. var json = queryString(req.url);
  1039. getmysql(req, res, "selectTipsTemplate", json["userid"], json["oid"], json["org"], json["type"], json["name"]);
  1040. });
  1041. //查询模板
  1042. router.route("/selectTipsTemplateById").all((req, res, next) => {
  1043. var json = queryString(req.url);
  1044. getmysql(req, res, "selectTipsTemplateById", json["id"]);
  1045. });
  1046. //新增提示词
  1047. router.route("/addTipsHK").all((req, res, next) => {
  1048. postmysql(req, res, "addTipsHK");
  1049. });
  1050. //保存提示词模板
  1051. router.route("/addTipsTemplateHK").all((req, res, next) => {
  1052. postmysql(req, res, "addTipsTemplateHK");
  1053. });
  1054. router.route("/addTipsTemplateHK2").all((req, res, next) => {
  1055. postmysql(req, res, "addTipsTemplateHK2");
  1056. });
  1057. //删除提示词模板
  1058. router.route("/deleteTipsTemplateHK").all((req, res, next) => {
  1059. postmysql(req, res, "deleteTipsTemplateHK");
  1060. });
  1061. //查询模板
  1062. router.route("/selectTipsTemplateHK").all((req, res, next) => {
  1063. var json = queryString(req.url);
  1064. getmysql(req, res, "selectTipsTemplateHK", json["userid"], json["oid"], json["org"], json["type"], json["name"]);
  1065. });
  1066. //查询ai创建英文模板 yym
  1067. router.route("/selectTipsTemplateCom").all((req, res, next) => {
  1068. var json = queryString(req.url);
  1069. getmysql(req, res, "selectTipsTemplateCom", json["userid"], json["oid"], json["org"], json["type"], json["name"]);
  1070. });
  1071. //查询模板
  1072. router.route("/selectTipsTemplateByIdHK").all((req, res, next) => {
  1073. var json = queryString(req.url);
  1074. getmysql(req, res, "selectTipsTemplateByIdHK", json["id"]);
  1075. });
  1076. //新增课程
  1077. router.route("/addWork").all((req, res, next) => {
  1078. postmysql(req, res, "insert_teacher_work");
  1079. });
  1080. //点赞评论
  1081. router.route("/insertComment").all((req, res, next) => {
  1082. postmysql(req, res, "insertComment");
  1083. });
  1084. //点赞评论
  1085. router.route("/getComment").all((req, res, next) => {
  1086. postmysql(req, res, "getComment");
  1087. });
  1088. //取消点赞 修1
  1089. router.route("/deleteComment").get((req, res, next) => {
  1090. var json = queryString(req.url);
  1091. getmysql2(req, res, "deleteComment", json["wid"], json["lid"]);
  1092. });
  1093. //删除1评论
  1094. router.route("/deleteComment2").all((req, res, next) => {
  1095. var json = queryString(req.url);
  1096. getmysql2(req, res, "deleteComment2", json["id"]);
  1097. });
  1098. //上传批注图片
  1099. router.route("/updateCourseWorks").all((req, res, next) => {
  1100. postmysql(req, res, "updateCourseWorks");
  1101. });
  1102. //上传文件
  1103. router.route("/addCourseWorks").all((req, res, next) => {
  1104. postmysql(req, res, "addCourseWorks");
  1105. });
  1106. //上传文件
  1107. router.route("/addCourseWorksS").all((req, res, next) => {
  1108. postmysql(req, res, "addCourseWorksS");
  1109. });
  1110. //上传文件
  1111. router.route("/addCourseWorksS2").all((req, res, next) => {
  1112. postmysql(req, res, "addCourseWorksS2");
  1113. });
  1114. //修改作业名字
  1115. router.route("/updateSCourseName").all((req, res, next) => {
  1116. postmysql(req, res, "updateSCourseName");
  1117. });
  1118. //可上传多个文件
  1119. router.route("/addCourseWorksR").all((req, res, next) => {
  1120. postmysql(req, res, "addCourseWorksR");
  1121. });
  1122. //可上传多个文件y
  1123. router.route("/addCourseWorksR1").all((req, res, next) => {
  1124. postmysql(req, res, "addCourseWorksR1");
  1125. });
  1126. //上传文件
  1127. router.route("/addCourseWorksTeacher").all((req, res, next) => {
  1128. postmysql(req, res, "addCourseWorksTeacher");
  1129. });
  1130. //上传文件
  1131. router.route("/addCourseWorks2").all((req, res, next) => {
  1132. var json = queryString(req.url);
  1133. postmysql(
  1134. req,
  1135. res,
  1136. "addCourseWorks",
  1137. json["uid"],
  1138. json["cid"],
  1139. json["stage"],
  1140. json["task"],
  1141. json["tool"],
  1142. json["content"],
  1143. json["type"]
  1144. );
  1145. });
  1146. //上传文件 修1
  1147. router.route("/addCourseWorks3").get((req, res, next) => {
  1148. var json = queryString(req.url);
  1149. getmysql2(
  1150. req,
  1151. res,
  1152. "addCourseWorks2",
  1153. json["uid"],
  1154. json["cid"],
  1155. json["stage"],
  1156. json["task"],
  1157. json["tool"],
  1158. json["content"],
  1159. json["type"],
  1160. json["atool"]
  1161. );
  1162. });
  1163. //上传文件
  1164. router.route("/addCourseWorks3-2").all((req, res, next) => {
  1165. var json = queryString(req.url);
  1166. postmysql(req, res, "addCourseWorks2");
  1167. });
  1168. //上传文件
  1169. router.route("/addCourseWorks2Inter").all((req, res, next) => {
  1170. var json = queryString(req.url);
  1171. postmysql(req, res, "addCourseWorks2Inter");
  1172. });
  1173. //上传文件
  1174. router.route("/addCourseWorks4").all((req, res, next) => {
  1175. postmysql3(req, res, "addCourseWorks3");
  1176. });
  1177. //上传文件
  1178. router.route("/addCourseWorks4-u").all((req, res, next) => {
  1179. postmysql2(req, res, "addCourseWorks3");
  1180. });
  1181. //上传文件
  1182. router.route("/addCourseWorks4-u2").all((req, res, next) => {
  1183. postmysql(req, res, "addCourseWorks3");
  1184. });
  1185. //上传文件
  1186. router.route("/addCourseWorks4E").all((req, res, next) => {
  1187. postmysql3(req, res, "addCourseWorks3E");
  1188. });
  1189. //上传文件
  1190. router.route("/addCourseWorks4s").all((req, res, next) => {
  1191. postmysql3(req, res, "addCourseWorks4s");
  1192. });
  1193. //上传文件
  1194. router.route("/addCourseWorks4s2").all((req, res, next) => {
  1195. postmysql3(req, res, "addCourseWorks4s2");
  1196. });
  1197. //上传文件
  1198. router.route("/addCourseWorks5").all((req, res, next) => {
  1199. postmysql(req, res, "addCourseWorks3");
  1200. });
  1201. //上传批量文件
  1202. router.route("/addCourseWorksPl").all((req, res, next) => {
  1203. if (req.body[0]) {
  1204. var p = Object.values(req.body[0]);
  1205. let ateacher = p[0];
  1206. let cid = p[1];
  1207. let stage = p[2];
  1208. let task = p[3];
  1209. let tool = p[4];
  1210. let files = JSON.parse(decodeURIComponent(p[5]));
  1211. for (let i = 0; i < files.length; i++) {
  1212. var k = [
  1213. encodeURIComponent(files[i].username),
  1214. cid,
  1215. stage,
  1216. task,
  1217. tool,
  1218. encodeURIComponent(files[i].url),
  1219. encodeURIComponent(files[i].fileType),
  1220. ateacher,
  1221. "50",
  1222. ];
  1223. k.unshift(_mysqlLabor[0], _mysqlLabor[1], "addCourseWorksPl");
  1224. //執行存儲過程
  1225. mysql.usselect(k, function(ret) {
  1226. if (i == files.length - 1) {
  1227. res.end(JSON.stringify(ret));
  1228. }
  1229. });
  1230. }
  1231. }
  1232. });
  1233. //修改课程权限(学生是否能查看所有作业) 修1
  1234. router.route("/updateCourseSLook").get((req, res, next) => {
  1235. var json = queryString(req.url);
  1236. getmysql2(req, res, "updateCourseSLook", json["sopen"], json["cid"]);
  1237. });
  1238. //修改课程权限(学生是否能查看所有作业) 修1
  1239. router.route("/updateTrainCourseSLook").get((req, res, next) => {
  1240. var json = queryString(req.url);
  1241. getmysql2(req, res, "updateTrainCourseSLook", json["sopen"], json["cid"]);
  1242. });
  1243. //修改跟随模式阶段-任务
  1244. router.route("/updateCourseFollowC").all((req, res, next) => {
  1245. postmysql(req, res, "updateCourseFollowC");
  1246. });
  1247. //修改跟随模式阶段-任务
  1248. router.route("/updateTrainCourseFollowC").all((req, res, next) => {
  1249. postmysql(req, res, "updateTrainCourseFollowC");
  1250. });
  1251. //修改跟随模式
  1252. router.route("/updateCourseFollow").all((req, res, next) => {
  1253. postmysql(req, res, "updateCourseFollow");
  1254. });
  1255. //修改学生是否可以查看内容
  1256. router.route("/updateCourseStulook").all((req, res, next) => {
  1257. postmysql(req, res, "updateCourseStulook");
  1258. });
  1259. //修改跟随模式
  1260. router.route("/updateTrainCourseFollow").all((req, res, next) => {
  1261. postmysql(req, res, "updateTrainCourseFollow");
  1262. });
  1263. //选人回答
  1264. router.route("/updateCoursePick").all((req, res, next) => {
  1265. postmysql(req, res, "updateCoursePick");
  1266. });
  1267. //删除
  1268. router.route("/deletePick").all((req, res, next) => {
  1269. postmysql(req, res, "deletePick");
  1270. });
  1271. //修改阶段锁定状态
  1272. router.route("/updateCourseLookOpen").all((req, res, next) => {
  1273. postmysql(req, res, "updateCourseLookOpen");
  1274. });
  1275. //修改阶段锁定状态
  1276. router.route("/updateTrainCourseLookOpen").all((req, res, next) => {
  1277. postmysql(req, res, "updateTrainCourseLookOpen");
  1278. });
  1279. //查看阶段锁定的状态
  1280. router.route("/getCourseState").all((req, res, next) => {
  1281. var json = queryString(req.url);
  1282. getmysql(req, res, "getCourseState", json["cid"]);
  1283. });
  1284. //添加锁定状态
  1285. router.route("/addCourseState").all((req, res, next) => {
  1286. postmysql(req, res, "addCourseState");
  1287. });
  1288. //修改锁定状态
  1289. router.route("/updateCourseSate").all((req, res, next) => {
  1290. postmysql(req, res, "updateCourseSate");
  1291. });
  1292. //修改课程管理模式
  1293. router.route("/updateCourseMode").all((req, res, next) => {
  1294. postmysql(req, res, "updateCourseMode");
  1295. });
  1296. //修改课程管理模式
  1297. router.route("/updateTrainCourseMode").all((req, res, next) => {
  1298. postmysql(req, res, "updateTrainCourseMode");
  1299. });
  1300. //查询课程权限(学生是否能查看所有作业)
  1301. router.route("/selectCourseSLook").all((req, res, next) => {
  1302. var json = queryString(req.url);
  1303. getmysql(req, res, "selectCourseSLook", json["cid"]);
  1304. });
  1305. //查询课程权限(学生是否能查看所有作业)
  1306. router.route("/selectTrainCourseSLook").all((req, res, next) => {
  1307. var json = queryString(req.url);
  1308. getmysql(req, res, "selectTrainCourseSLook", json["cid"]);
  1309. });
  1310. //查询被挑的人
  1311. router.route("/getPick").all((req, res, next) => {
  1312. var json = queryString(req.url);
  1313. getmysql(req, res, "getPick", json["cid"]);
  1314. });
  1315. //查询作业详情
  1316. router.route("/selectWorksDetail2").all((req, res, next) => {
  1317. var json = queryString(req.url);
  1318. getmysql(
  1319. req,
  1320. res,
  1321. "selectWorksDetail2",
  1322. json["uid"],
  1323. json["cid"],
  1324. json["stage"],
  1325. json["task"]
  1326. );
  1327. });
  1328. //查询作业详情
  1329. router.route("/selectWorksDetail2u").all((req, res, next) => {
  1330. //var json = queryString(req.url);//, json['uid'], json['cid'], json['stage'], json['task'], json['tool'], json['type'], json['atool']
  1331. postmysql2(req, res, "selectWorksDetail2u");
  1332. });
  1333. //查询课程全部作业详情
  1334. router.route("/selectWorksDetail3").all((req, res, next) => {
  1335. var json = queryString(req.url);
  1336. getmysql(req, res, "selectWorksDetail3", json["uid"], json["cid"]);
  1337. });
  1338. //查询课程所有作业详情
  1339. router.route("/selectAllWorksDetail").all((req, res, next) => {
  1340. var json = queryString(req.url);
  1341. getmysql(req, res, "selectAllWorksDetail", json["uid"], json["cid"]);
  1342. });
  1343. //查询多个课程全部作业详情
  1344. router.route("/selectWorksDetailMore").all((req, res, next) => {
  1345. var json = queryString(req.url);
  1346. getmysql(req, res, "selectWorksDetailMore", json["uid"], json["cid"]);
  1347. });
  1348. //一键重置作业分数
  1349. router.route("/allWorkEmptySco").all((req, res, next) => {
  1350. postmysql(req, res, "allWorkEmptySco");
  1351. });
  1352. //一键重置作业分数
  1353. router.route("/allWorkEmptyScoTwo").all((req, res, next) => {
  1354. postmysql(req, res, "allWorkEmptyScoTwo");
  1355. });
  1356. //查询课程某个阶段某个任务下的评价 修1 这个update,但标题查询
  1357. router.route("/updateWorksEva").get((req, res, next) => {
  1358. var json = queryString(req.url);
  1359. getmysql2(
  1360. req,
  1361. res,
  1362. "updateWorksEva",
  1363. json["cid"],
  1364. json["s"],
  1365. json["t"],
  1366. json["uid"],
  1367. json["rate"]
  1368. );
  1369. });
  1370. //查询课程某个阶段某个任务下的评价 修1 这个update,但标题查询
  1371. router.route("/updateWorksEvaTwo").get((req, res, next) => {
  1372. var json = queryString(req.url);
  1373. getmysql2(
  1374. req,
  1375. res,
  1376. "updateWorksEvaTwo",
  1377. json["cid"],
  1378. json["s"],
  1379. json["t"],
  1380. json["tool"],
  1381. json["uid"],
  1382. json["rate"]
  1383. );
  1384. });
  1385. //查询课程某个阶段某个任务下的评价 修1 这个update,但标题查询
  1386. router.route("/updateWorksEvaTwo1").post((req, res, next) => {
  1387. var json = queryString(req.url);
  1388. postmysql(req,res,"updateWorksEvaTwo1");
  1389. });
  1390. //学习中心教师查询作业
  1391. router.route("/selectSWorks").all((req, res, next) => {
  1392. var json = queryString(req.url);
  1393. getmysql(req, res, "selectSWorks", json["cid"], json["s"], json["t"]);
  1394. });
  1395. //学习中心教师查询工具作业
  1396. router.route("/selectMarkDialogWorks").all((req, res, next) => {
  1397. var json = queryString(req.url);
  1398. getmysql(req, res, "selectMarkDialogWorks", json["uid"],json["cid"], json["s"], json["t"], json["g"]);
  1399. });
  1400. //学习中心教师查询工具作业
  1401. router.route("/selectMarkDialogWorksTwo").all((req, res, next) => {
  1402. var json = queryString(req.url);
  1403. getmysql(req, res, "selectMarkDialogWorksTwo", json["uid"],json["cid"], json["s"], json["t"], json["g"]);
  1404. });
  1405. //学习中心教师查询作业全部展示
  1406. router.route("/selectSWorks2").all((req, res, next) => {
  1407. var json = queryString(req.url);
  1408. getmysql(req, res, "selectSWorks2", json["cid"]);
  1409. });
  1410. //学习中心学生查询作业
  1411. router.route("/selectStudentWorks").all((req, res, next) => {
  1412. var json = queryString(req.url);
  1413. getmysql(
  1414. req,
  1415. res,
  1416. "selectStudentWorks",
  1417. json["uid"],
  1418. json["cid"],
  1419. json["s"],
  1420. json["t"]
  1421. );
  1422. });
  1423. //实时课堂作业评价
  1424. router.route("/updateStudentWork").all((req, res, next) => {
  1425. postmysql(req, res, "updateStudentWork");
  1426. });
  1427. //学习中心查询学生
  1428. router.route("/selectWorksStudent").all((req, res, next) => {
  1429. var json = queryString(req.url);
  1430. getmysql(req, res, "selectWorksStudent", json["oid"], json["cid"]);
  1431. });
  1432. //批量上传查询学生
  1433. router.route("/selectSnameByCid").all((req, res, next) => {
  1434. var json = queryString(req.url);
  1435. getmysql(req, res, "selectSnameByCid", json["cid"]);
  1436. });
  1437. //批量上传查询学生
  1438. router.route("/selectSnameByCidAndOid").all((req, res, next) => {
  1439. var json = queryString(req.url);
  1440. getmysql(req, res, "selectSnameByCidAndOid", json["cid"],json["oid"]);
  1441. });
  1442. //批量上传查询学生分页
  1443. router.route("/selectSnameByCidPage").all((req, res, next) => {
  1444. var json = queryString(req.url);
  1445. getmysql(
  1446. req,
  1447. res,
  1448. "selectSnameByCidPage",
  1449. json["cid"],
  1450. json["cn"],
  1451. json["page"],
  1452. json["num"]
  1453. );
  1454. });
  1455. //分组查询学生
  1456. router.route("/selectSnameByCidGroup").all((req, res, next) => {
  1457. var json = queryString(req.url);
  1458. getmysql(
  1459. req,
  1460. res,
  1461. "selectSnameByCidGroup",
  1462. json["cid"],
  1463. json["oid"],
  1464. json["cn"]
  1465. );
  1466. });
  1467. /* 查询学生 */
  1468. router.route("/selectStudent2").all((req, res, next) => {
  1469. var json = queryString(req.url);
  1470. getmysql(
  1471. req,
  1472. res,
  1473. "selectStudent2",
  1474. json["oid"],
  1475. json["cu"],
  1476. json["cn"],
  1477. json["cid"],
  1478. json["page"],
  1479. 10
  1480. );
  1481. });
  1482. // 新学生管理查询学生 yym
  1483. router.route("/selectStudentManage").all((req, res, next) => {
  1484. var json = queryString(req.url);
  1485. getmysql(
  1486. req,
  1487. res,
  1488. "selectStudentManage",
  1489. json["oid"],
  1490. json["cid"],
  1491. json["inp"],
  1492. json["page"],
  1493. json["num"]
  1494. );
  1495. });
  1496. // 新学生管理查询学生带排序 yym
  1497. router.route("/selectStudentManagesrt").all((req, res, next) => {
  1498. var json = queryString(req.url);
  1499. getmysql(
  1500. req,
  1501. res,
  1502. "selectStudentManagesrt",
  1503. json["oid"],
  1504. json["cid"],
  1505. json["inp"],
  1506. json["srt"],
  1507. json["page"],
  1508. json["num"]
  1509. );
  1510. });
  1511. // 新学生管理编辑班级时查询学生 yym
  1512. router.route("/selectchStu").all((req, res, next) => {
  1513. postmysql(req, res, "selectchStu");
  1514. });
  1515. // 新学生管理查询学生 yym
  1516. router.route("/selectStudentManageTwo").all((req, res, next) => {
  1517. var json = queryString(req.url);
  1518. getmysql(
  1519. req,
  1520. res,
  1521. "selectStudentManageTwo",
  1522. json["oid"],
  1523. json["cid"],
  1524. json["inp"]
  1525. );
  1526. });
  1527. /* 查询教师 */
  1528. router.route("/selectTeacher2").all((req, res, next) => {
  1529. var json = queryString(req.url);
  1530. getmysql(
  1531. req,
  1532. res,
  1533. "selectTeacher2",
  1534. json["oid"],
  1535. json["cu"],
  1536. json["cn"],
  1537. json["cid"],
  1538. json["page"],
  1539. 10
  1540. );
  1541. });
  1542. /* 查询教师 */
  1543. router.route("/selectTeacher").all((req, res, next) => {
  1544. var json = queryString(req.url);
  1545. getmysql(
  1546. req,
  1547. res,
  1548. "selectTeacher",
  1549. json["org"],
  1550. json["cu"],
  1551. json["cn"],
  1552. json["page"],
  1553. 10
  1554. );
  1555. });
  1556. /* 添加教师页面查询教师 */
  1557. router.route("/selectTcTeacher").all((req, res, next) => {
  1558. var json = queryString(req.url);
  1559. getmysql(
  1560. req,
  1561. res,
  1562. "selectTcTeacher",
  1563. json["org"],
  1564. json["oid"],
  1565. json["cu"],
  1566. json["cn"],
  1567. json["page"],
  1568. 10
  1569. );
  1570. });
  1571. /* 查询所有评价体系 */
  1572. router.route("/selectAllEvaluation").all((req, res, next) => {
  1573. var json = queryString(req.url);
  1574. getmysql(req, res, "selectAllEvaluation", json["oid"]);
  1575. });
  1576. /* 根据市级用户查询评审员 */
  1577. router.route("/selectReviewer").all((req, res, next) => {
  1578. var json = queryString(req.url);
  1579. getmysql(
  1580. req,
  1581. res,
  1582. "selectReviewer",
  1583. json["uid"],
  1584. json["cn"],
  1585. json["page"],
  1586. 10
  1587. );
  1588. });
  1589. /* 市级区县管理接口 */
  1590. router.route("/selectCReviewer").all((req, res, next) => {
  1591. var json = queryString(req.url);
  1592. getmysql(
  1593. req,
  1594. res,
  1595. "selectCReviewer",
  1596. json["uid"],
  1597. json["cn"],
  1598. json["page"],
  1599. 10
  1600. );
  1601. });
  1602. /* 修改评审员 修1 */
  1603. router.route("/updateReviewer").get((req, res, next) => {
  1604. var json = queryString(req.url);
  1605. getmysql2(
  1606. req,
  1607. res,
  1608. "updateReviewer",
  1609. json["n"],
  1610. json["p"],
  1611. json["t"],
  1612. json["s"],
  1613. json["uid"]
  1614. );
  1615. });
  1616. /* 删除1评审员 */
  1617. router.route("/deleteReviewer").all((req, res, next) => {
  1618. var json = queryString(req.url);
  1619. getmysql2(req, res, "deleteReviewer", json["uid"]);
  1620. });
  1621. /* 查询区县案例 */
  1622. router.route("/selecAnliBox").all((req, res, next) => {
  1623. var json = queryString(req.url);
  1624. getmysql(req, res, "selecAnliBox", json["title"]);
  1625. });
  1626. /* 查询市级案例 */
  1627. router.route("/selecAnliBox1").all((req, res, next) => {
  1628. var json = queryString(req.url);
  1629. getmysql(req, res, "selecAnliBox1", json["title"]);
  1630. });
  1631. /* 查询省级案例 */
  1632. router.route("/selecAnliBox2").all((req, res, next) => {
  1633. var json = queryString(req.url);
  1634. getmysql(req, res, "selecAnliBox2");
  1635. });
  1636. /* 案例征集查询通知公告 */
  1637. router.route("/selectRaceNotice").all((req, res, next) => {
  1638. var json = queryString(req.url);
  1639. getmysql(req, res, "selectRaceNotice", json["page"], 10);
  1640. });
  1641. /* 案例征集查询通知公告详情 */
  1642. router.route("/getRaceNoticeDetail").all((req, res, next) => {
  1643. var json = queryString(req.url);
  1644. getmysql(req, res, "getRaceNoticeDetail", json["nid"]);
  1645. });
  1646. /* 案例征集发送通知 修1 */
  1647. router.route("/insertRaceNote").get((req, res, next) => {
  1648. var json = queryString(req.url);
  1649. getmysql2(req, res, "insertRaceNote", json["t"], json["c"], json["uid"]);
  1650. });
  1651. /* 查看随机码是否重复 */
  1652. router.route("/selectInviteCode").all((req, res, next) => {
  1653. var json = queryString(req.url);
  1654. getmysql(req, res, "selectInviteCode", json["code"], json["oid"]);
  1655. });
  1656. /* 查看随机码是否重复 */
  1657. router.route("/selectInviteCode2").all((req, res, next) => {
  1658. var json = queryString(req.url);
  1659. getmysql(req, res, "selectInviteCode2", json["code"], json["oid"]);
  1660. });
  1661. /* 根据随机码获取学校 */
  1662. router.route("/selectCourseByIc").all((req, res, next) => {
  1663. var json = queryString(req.url);
  1664. getmysql(req, res, "selectCourseByIc", json["code"], json["oid"]);
  1665. });
  1666. /* 根据随机码获取学校 */
  1667. router.route("/selectCourseByIc2").all((req, res, next) => {
  1668. var json = queryString(req.url);
  1669. getmysql(req, res, "selectCourseByIc2", json["code"], json["oid"]);
  1670. });
  1671. /* 根据随机码获取学校 */
  1672. router.route("/selectCourseByIc2SZ").all((req, res, next) => {
  1673. var json = queryString(req.url);
  1674. getmysql(req, res, "selectCourseByIc2SZ", json["code"], json["oid"]);
  1675. });
  1676. router.route("/addWorkNew").all((req, res, next) => {
  1677. // postmysql(req, res, "insert_teacher_work_new");
  1678. if (req.body[0]) {
  1679. // p = Object.values(req.body[0]);
  1680. p = [
  1681. req.body[0].uid,
  1682. req.body[0].title,
  1683. req.body[0].brief,
  1684. req.body[0].cover,
  1685. req.body[0].astudent,
  1686. req.body[0].see,
  1687. req.body[0].chapters,
  1688. req.body[0].template,
  1689. ];
  1690. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "insert_teacher_work_new");
  1691. //執行存儲過程
  1692. mysql.usselect(p, function(ret) {
  1693. let course = req.body[0].courseType;
  1694. let courseId = ret[0][0].courseId;
  1695. let userid = req.body[0].uid;
  1696. delCourseType(course, courseId, userid);
  1697. res.end(
  1698. JSON.stringify({
  1699. ordernumber: ret[0][0].ordernumber,
  1700. courseId: ret[0][0].courseId,
  1701. success: 1,
  1702. })
  1703. );
  1704. // res.end(JSON.stringify(ret));
  1705. });
  1706. }
  1707. });
  1708. router.route("/addWorkNew2").all((req, res, next) => {
  1709. if (req.body[0]) {
  1710. p = [
  1711. req.body[0].uid,
  1712. req.body[0].title,
  1713. req.body[0].brief,
  1714. req.body[0].cover,
  1715. req.body[0].evaId,
  1716. req.body[0].astudent,
  1717. req.body[0].see,
  1718. req.body[0].chapters,
  1719. req.body[0].template,
  1720. req.body[0].ateacher,
  1721. ];
  1722. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "insert_teacher_work_new2"); //執行存儲過程
  1723. mysql.usselect(p, function(ret) {
  1724. let course = req.body[0].courseType;
  1725. let courseId = ret[0][0].courseId;
  1726. let userid = req.body[0].uid;
  1727. delCourseType(course, courseId, userid);
  1728. res.end(
  1729. JSON.stringify({
  1730. ordernumber: ret[0][0].ordernumber,
  1731. courseId: ret[0][0].courseId,
  1732. success: 1,
  1733. })
  1734. );
  1735. });
  1736. }
  1737. });
  1738. router.route("/addWorkNew2AI").all((req, res, next) => {
  1739. if (req.body[0]) {
  1740. p = [
  1741. req.body[0].uid,
  1742. req.body[0].title,
  1743. req.body[0].brief,
  1744. req.body[0].cover,
  1745. req.body[0].evaId,
  1746. req.body[0].astudent,
  1747. req.body[0].see,
  1748. req.body[0].chapters,
  1749. req.body[0].template,
  1750. req.body[0].ateacher,
  1751. req.body[0].refile,
  1752. req.body[0].reBrief,
  1753. ];
  1754. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "insert_teacher_work_new2_ai"); //執行存儲過程
  1755. mysql.usselect(p, function(ret) {
  1756. let course = req.body[0].courseType;
  1757. let courseId = ret[0][0].courseId;
  1758. let userid = req.body[0].uid;
  1759. delCourseType(course, courseId, userid);
  1760. res.end(
  1761. JSON.stringify({
  1762. ordernumber: ret[0][0].ordernumber,
  1763. courseId: ret[0][0].courseId,
  1764. success: 1,
  1765. })
  1766. );
  1767. });
  1768. }
  1769. });
  1770. router.route("/addWorkNew2AI2").all((req, res, next) => {
  1771. if (req.body[0]) {
  1772. p = [
  1773. req.body[0].uid,
  1774. req.body[0].title,
  1775. req.body[0].brief,
  1776. req.body[0].cover,
  1777. req.body[0].evaId,
  1778. req.body[0].astudent,
  1779. req.body[0].see,
  1780. req.body[0].chapters,
  1781. req.body[0].template,
  1782. req.body[0].ateacher,
  1783. req.body[0].refile,
  1784. req.body[0].reBrief,
  1785. req.body[0].cpote,
  1786. ];
  1787. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "insert_teacher_work_new2_ai2"); //執行存儲過程
  1788. mysql.usselect(p, function(ret) {
  1789. let course = req.body[0].courseType;
  1790. let courseId = ret[0][0].courseId;
  1791. let userid = req.body[0].uid;
  1792. delCourseType(course, courseId, userid);
  1793. res.end(
  1794. JSON.stringify({
  1795. ordernumber: ret[0][0].ordernumber,
  1796. courseId: ret[0][0].courseId,
  1797. success: 1,
  1798. })
  1799. );
  1800. });
  1801. }
  1802. });
  1803. router.route("/addWorkNew2AI3").all((req, res, next) => {
  1804. if (req.body[0]) {
  1805. p = [
  1806. req.body[0].uid,
  1807. req.body[0].title,
  1808. req.body[0].brief,
  1809. req.body[0].cover,
  1810. req.body[0].evaId,
  1811. req.body[0].astudent,
  1812. req.body[0].see,
  1813. req.body[0].chapters,
  1814. req.body[0].template,
  1815. req.body[0].ateacher,
  1816. req.body[0].refile,
  1817. req.body[0].reBrief,
  1818. req.body[0].cpote,
  1819. req.body[0].setting,
  1820. req.body[0].iresearch,
  1821. ];
  1822. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "insert_teacher_work_new2_ai3"); //執行存儲過程
  1823. mysql.usselect(p, function(ret) {
  1824. let course = req.body[0].courseType;
  1825. let courseId = ret[0][0].courseId;
  1826. let userid = req.body[0].uid;
  1827. delCourseType(course, courseId, userid);
  1828. res.end(
  1829. JSON.stringify({
  1830. ordernumber: ret[0][0].ordernumber,
  1831. courseId: ret[0][0].courseId,
  1832. success: 1,
  1833. })
  1834. );
  1835. });
  1836. }
  1837. });
  1838. router.route("/addWorkNew2New").all((req, res, next) => {
  1839. if (req.body[0]) {
  1840. p = [
  1841. req.body[0].uid,
  1842. req.body[0].title,
  1843. req.body[0].brief,
  1844. req.body[0].cover,
  1845. req.body[0].evaId,
  1846. req.body[0].astudent,
  1847. req.body[0].see,
  1848. req.body[0].chapters,
  1849. req.body[0].template,
  1850. req.body[0].ateacher,
  1851. req.body[0].highSetting,
  1852. req.body[0].courseState,
  1853. ];
  1854. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "insert_teacher_work_new2New"); //執行存儲過程
  1855. mysql.usselect(p, function(ret) {
  1856. let course = req.body[0].courseType;
  1857. let courseId = ret[0][0].courseId;
  1858. let userid = req.body[0].uid;
  1859. delCourseType(course, courseId, userid);
  1860. res.end(
  1861. JSON.stringify({
  1862. ordernumber: ret[0][0].ordernumber,
  1863. courseId: ret[0][0].courseId,
  1864. success: 1,
  1865. })
  1866. );
  1867. });
  1868. }
  1869. });
  1870. router.route("/addTrainCourseNew2").all((req, res, next) => {
  1871. if (req.body[0]) {
  1872. p = [
  1873. req.body[0].uid,
  1874. req.body[0].title,
  1875. req.body[0].brief,
  1876. req.body[0].cover,
  1877. req.body[0].evaId,
  1878. req.body[0].astudent,
  1879. req.body[0].see,
  1880. req.body[0].chapters,
  1881. req.body[0].template,
  1882. req.body[0].ateacher,
  1883. ];
  1884. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "addTrainCourseNew2"); //執行存儲過程
  1885. mysql.usselect(p, function(ret) {
  1886. let course = req.body[0].courseType;
  1887. let courseId = ret[0][0].courseId;
  1888. let userid = req.body[0].uid;
  1889. delCourseType(course, courseId, userid);
  1890. res.end(
  1891. JSON.stringify({
  1892. ordernumber: ret[0][0].ordernumber,
  1893. courseId: ret[0][0].courseId,
  1894. success: 1,
  1895. })
  1896. );
  1897. });
  1898. }
  1899. });
  1900. router.route("/addTestCourse").all((req, res, next) => { //添加评测
  1901. if (req.body[0]) {
  1902. p = [
  1903. req.body[0].uid,
  1904. req.body[0].title,
  1905. req.body[0].brief,
  1906. req.body[0].cover,
  1907. req.body[0].evaId,
  1908. req.body[0].astudent,
  1909. req.body[0].see,
  1910. req.body[0].chapters,
  1911. req.body[0].template,
  1912. req.body[0].ateacher,
  1913. req.body[0].typeid,
  1914. req.body[0].overtime,
  1915. req.body[0].j2,
  1916. ];
  1917. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "addTestCourse"); //執行存儲過程
  1918. mysql.usselect(p, function(ret) {
  1919. let course = req.body[0].courseType;
  1920. let courseId = ret[0][0].courseId;
  1921. let userid = req.body[0].uid;
  1922. delCourseType(course, courseId, userid);
  1923. res.end(
  1924. JSON.stringify({
  1925. ordernumber: ret[0][0].ordernumber,
  1926. courseId: ret[0][0].courseId,
  1927. success: 1,
  1928. })
  1929. );
  1930. });
  1931. }
  1932. });
  1933. router.route("/addTestCourse2").all((req, res, next) => { //添加评测 类型
  1934. if (req.body[0]) {
  1935. p = [
  1936. req.body[0].uid,
  1937. req.body[0].title,
  1938. req.body[0].brief,
  1939. req.body[0].cover,
  1940. req.body[0].evaId,
  1941. req.body[0].astudent,
  1942. req.body[0].see,
  1943. req.body[0].chapters,
  1944. req.body[0].template,
  1945. req.body[0].ateacher,
  1946. req.body[0].typeid,
  1947. ];
  1948. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "addTestCourse2"); //執行存儲過程
  1949. mysql.usselect(p, function(ret) {
  1950. let course = req.body[0].courseType;
  1951. let courseId = ret[0][0].courseId;
  1952. let userid = req.body[0].uid;
  1953. delCourseType(course, courseId, userid);
  1954. res.end(
  1955. JSON.stringify({
  1956. ordernumber: ret[0][0].ordernumber,
  1957. courseId: ret[0][0].courseId,
  1958. success: 1,
  1959. })
  1960. );
  1961. });
  1962. }
  1963. });
  1964. router.route("/addTestCourse3").all((req, res, next) => { //添加评测
  1965. if (req.body[0]) {
  1966. p = [
  1967. req.body[0].uid,
  1968. req.body[0].title,
  1969. req.body[0].brief,
  1970. req.body[0].cover,
  1971. req.body[0].evaId,
  1972. req.body[0].astudent,
  1973. req.body[0].see,
  1974. req.body[0].chapters,
  1975. req.body[0].template,
  1976. req.body[0].ateacher,
  1977. req.body[0].typeid,
  1978. req.body[0].overtime,
  1979. req.body[0].j2,
  1980. req.body[0].j3,
  1981. ];
  1982. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "addTestCourse3"); //執行存儲過程
  1983. mysql.usselect(p, function(ret) {
  1984. let course = req.body[0].courseType;
  1985. let courseId = ret[0][0].courseId;
  1986. let userid = req.body[0].uid;
  1987. delCourseType(course, courseId, userid);
  1988. res.end(
  1989. JSON.stringify({
  1990. ordernumber: ret[0][0].ordernumber,
  1991. courseId: ret[0][0].courseId,
  1992. success: 1,
  1993. })
  1994. );
  1995. });
  1996. }
  1997. });
  1998. router.route("/addWorkNew2E").all((req, res, next) => {
  1999. if (req.body[0]) {
  2000. p = [
  2001. req.body[0].uid,
  2002. req.body[0].title,
  2003. req.body[0].brief,
  2004. req.body[0].cover,
  2005. req.body[0].evaId,
  2006. req.body[0].astudent,
  2007. req.body[0].see,
  2008. req.body[0].chapters,
  2009. req.body[0].template,
  2010. req.body[0].ateacher,
  2011. ];
  2012. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "insert_teacher_work_new2E"); //執行存儲過程
  2013. mysql.usselect(p, function(ret) {
  2014. let course = req.body[0].courseType;
  2015. let courseId = ret[0][0].courseId;
  2016. let userid = req.body[0].uid;
  2017. delCourseType(course, courseId, userid);
  2018. res.end(
  2019. JSON.stringify({
  2020. ordernumber: ret[0][0].ordernumber,
  2021. courseId: ret[0][0].courseId,
  2022. success: 1,
  2023. })
  2024. );
  2025. });
  2026. }
  2027. });
  2028. router.route("/addWorkNew2T").all((req, res, next) => {
  2029. if (req.body[0]) {
  2030. p = [
  2031. req.body[0].uid,
  2032. req.body[0].title,
  2033. req.body[0].brief,
  2034. req.body[0].cover,
  2035. req.body[0].evaId,
  2036. req.body[0].astudent,
  2037. req.body[0].see,
  2038. req.body[0].chapters,
  2039. req.body[0].template,
  2040. req.body[0].ateacher,
  2041. ];
  2042. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "insert_teacher_work_new2T"); //執行存儲過程
  2043. mysql.usselect(p, function(ret) {
  2044. let course = req.body[0].courseType;
  2045. let courseId = ret[0][0].courseId;
  2046. let userid = req.body[0].uid;
  2047. delCourseType(course, courseId, userid);
  2048. res.end(
  2049. JSON.stringify({
  2050. ordernumber: ret[0][0].ordernumber,
  2051. courseId: ret[0][0].courseId,
  2052. success: 1,
  2053. })
  2054. );
  2055. });
  2056. }
  2057. });
  2058. router.route("/addTrainCourseNew2T").all((req, res, next) => {
  2059. if (req.body[0]) {
  2060. p = [
  2061. req.body[0].uid,
  2062. req.body[0].title,
  2063. req.body[0].brief,
  2064. req.body[0].cover,
  2065. req.body[0].evaId,
  2066. req.body[0].astudent,
  2067. req.body[0].see,
  2068. req.body[0].chapters,
  2069. req.body[0].template,
  2070. req.body[0].ateacher,
  2071. ];
  2072. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "addTrainCourseNew2T"); //執行存儲過程
  2073. mysql.usselect(p, function(ret) {
  2074. let course = req.body[0].courseType;
  2075. let courseId = ret[0][0].courseId;
  2076. let userid = req.body[0].uid;
  2077. delCourseType(course, courseId, userid);
  2078. res.end(
  2079. JSON.stringify({
  2080. ordernumber: ret[0][0].ordernumber,
  2081. courseId: ret[0][0].courseId,
  2082. success: 1,
  2083. })
  2084. );
  2085. });
  2086. }
  2087. });
  2088. router.route("/addSynergyCourse").all((req, res, next) => {
  2089. if (req.body[0]) {
  2090. p = [
  2091. req.body[0].uid,
  2092. req.body[0].title,
  2093. req.body[0].brief,
  2094. req.body[0].cover,
  2095. req.body[0].evaId,
  2096. req.body[0].astudent,
  2097. req.body[0].see,
  2098. req.body[0].chapters,
  2099. req.body[0].template,
  2100. req.body[0].ateacher,
  2101. ];
  2102. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "insert_synergy"); //執行存儲過程
  2103. mysql.usselect(p, function(ret) {
  2104. let course = req.body[0].courseType;
  2105. let courseId = ret[0][0].courseId;
  2106. let userid = req.body[0].uid;
  2107. delCourseType(course, courseId, userid);
  2108. res.end(
  2109. JSON.stringify({
  2110. ordernumber: ret[0][0].ordernumber,
  2111. courseId: ret[0][0].courseId,
  2112. success: 1,
  2113. })
  2114. );
  2115. });
  2116. }
  2117. });
  2118. router.route("/addSynergyCourse2").all((req, res, next) => {
  2119. if (req.body[0]) {
  2120. p = [
  2121. req.body[0].cid,
  2122. req.body[0].uid,
  2123. req.body[0].title,
  2124. req.body[0].brief,
  2125. req.body[0].cover,
  2126. req.body[0].evaId,
  2127. req.body[0].astudent,
  2128. req.body[0].see,
  2129. req.body[0].chapters,
  2130. req.body[0].template,
  2131. req.body[0].ateacher,
  2132. ];
  2133. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "insert_synergy2"); //執行存儲過程
  2134. mysql.usselect(p, function(ret) {
  2135. let course = req.body[0].courseType;
  2136. let courseId = ret[0][0].courseId;
  2137. let userid = req.body[0].uid;
  2138. delCourseType(course, courseId, userid);
  2139. res.end(
  2140. JSON.stringify({
  2141. ordernumber: ret[0][0].ordernumber,
  2142. courseId: ret[0][0].courseId,
  2143. success: 1,
  2144. })
  2145. );
  2146. });
  2147. }
  2148. });
  2149. router.route("/addWorkNew4").all((req, res, next) => {
  2150. if (req.body[0]) {
  2151. p = [
  2152. req.body[0].uid,
  2153. req.body[0].title,
  2154. req.body[0].brief,
  2155. req.body[0].cover,
  2156. req.body[0].evaId,
  2157. req.body[0].astudent,
  2158. req.body[0].see,
  2159. req.body[0].chapters,
  2160. req.body[0].template,
  2161. req.body[0].ateacher,
  2162. req.body[0].inviteCode,
  2163. ];
  2164. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "insert_teacher_work_new4"); //執行存儲過程
  2165. mysql.usselect(p, function(ret) {
  2166. let course = req.body[0].courseType;
  2167. let courseId = ret[0][0].courseId;
  2168. let userid = req.body[0].uid;
  2169. delCourseType(course, courseId, userid);
  2170. res.end(
  2171. JSON.stringify({
  2172. ordernumber: ret[0][0].ordernumber,
  2173. courseId: ret[0][0].courseId,
  2174. success: 1,
  2175. })
  2176. );
  2177. });
  2178. }
  2179. });
  2180. router.route("/addCourseWorkNew2").all((req, res, next) => {
  2181. //学生
  2182. if (req.body[0]) {
  2183. p = [
  2184. req.body[0].uid,
  2185. req.body[0].title,
  2186. req.body[0].brief,
  2187. req.body[0].cover,
  2188. req.body[0].evaId,
  2189. req.body[0].astudent,
  2190. req.body[0].see,
  2191. req.body[0].chapters,
  2192. req.body[0].template,
  2193. req.body[0].ateacher,
  2194. ];
  2195. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "addCourseWorkNew2"); //執行存儲過程
  2196. mysql.usselect(p, function(ret) {
  2197. let course = req.body[0].courseType;
  2198. let courseId = ret[0][0].courseId;
  2199. let userid = req.body[0].uid;
  2200. delCourseType(course, courseId, userid);
  2201. res.end(
  2202. JSON.stringify({
  2203. ordernumber: ret[0][0].ordernumber,
  2204. courseId: ret[0][0].courseId,
  2205. success: 1,
  2206. })
  2207. );
  2208. });
  2209. }
  2210. });
  2211. router.route("/addCourseWorkNew22").all((req, res, next) => {
  2212. //学生
  2213. if (req.body[0]) {
  2214. p = [
  2215. req.body[0].uid,
  2216. req.body[0].title,
  2217. req.body[0].brief,
  2218. req.body[0].cover,
  2219. req.body[0].evaId,
  2220. req.body[0].astudent,
  2221. req.body[0].see,
  2222. req.body[0].chapters,
  2223. req.body[0].template,
  2224. req.body[0].ateacher,
  2225. ];
  2226. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "addCourseWorkNew2"); //執行存儲過程
  2227. mysql.usselect(p, function(ret) {
  2228. let course = req.body[0].courseType;
  2229. let courseId = ret[0][0].courseId;
  2230. let userid = req.body[0].uid;
  2231. delCourseTypeS(course, courseId, userid);
  2232. res.end(
  2233. JSON.stringify({
  2234. ordernumber: ret[0][0].ordernumber,
  2235. courseId: ret[0][0].courseId,
  2236. success: 1,
  2237. })
  2238. );
  2239. });
  2240. }
  2241. });
  2242. //新增赛事项目
  2243. router.route("/addRace").all((req, res, next) => {
  2244. if (req.body[0]) {
  2245. p = [
  2246. req.body[0].uid,
  2247. req.body[0].info,
  2248. req.body[0].over,
  2249. req.body[0].pro,
  2250. req.body[0].act,
  2251. req.body[0].exc,
  2252. req.body[0].res,
  2253. ];
  2254. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "addRace"); //執行存儲過程
  2255. mysql.usselect(p, function(ret) {
  2256. let course = req.body[0].courseType;
  2257. let courseId = ret[0][0].id;
  2258. let userid = req.body[0].uid;
  2259. delCourseType1(course, courseId, userid);
  2260. res.end(JSON.stringify({ courseId: courseId, success: 1 }));
  2261. });
  2262. }
  2263. });
  2264. //新增赛事项目
  2265. router.route("/addRace2").all((req, res, next) => {
  2266. if (req.body[0]) {
  2267. p = [
  2268. req.body[0].uid,
  2269. req.body[0].info,
  2270. req.body[0].over,
  2271. req.body[0].pro,
  2272. req.body[0].act,
  2273. req.body[0].exc,
  2274. req.body[0].res,
  2275. ];
  2276. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "addRace2"); //執行存儲過程
  2277. mysql.usselect(p, function(ret) {
  2278. let course = req.body[0].courseType;
  2279. let courseId = ret[0][0].id;
  2280. let userid = req.body[0].uid;
  2281. delCourseType1(course, courseId, userid);
  2282. res.end(JSON.stringify({ courseId: courseId, success: 1 }));
  2283. });
  2284. }
  2285. });
  2286. //新增赛事账号信息
  2287. router.route("/addRaceUser").all((req, res, next) => {
  2288. if (req.body[0]) {
  2289. p = [
  2290. req.body[0].reg,
  2291. req.body[0].res,
  2292. req.body[0].sch,
  2293. req.body[0].n,
  2294. req.body[0].p,
  2295. req.body[0].t,
  2296. req.body[0].parent,
  2297. ];
  2298. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "addRaceUser"); //執行存儲過程
  2299. mysql.usselect(p, function(ret) {
  2300. let num = ret[0][0].num;
  2301. let userid = ret[0][0].userid;
  2302. if (num < 10) {
  2303. num = "SZ" + "00" + num + "@gdae.com";
  2304. } else if (num < 100) {
  2305. num = "SZ" + "0" + num + "@gdae.com";
  2306. } else if (num > 100) {
  2307. num = "SZ" + num + "@gdae.com";
  2308. }
  2309. y = [userid, num, bcrypt.hashSync("Coco1234", bcrypt.genSaltSync(10))];
  2310. //参数拼接,注册
  2311. y.unshift(_mysqlLabor[0], _mysqlLabor[1], "upRaceUserNamePassword");
  2312. mysql.usselect(y, function(ret) {
  2313. res.end(JSON.stringify(ret));
  2314. });
  2315. res.end(JSON.stringify({ num: num, success: 1 }));
  2316. });
  2317. }
  2318. });
  2319. //修改赛事项目
  2320. router.route("/updateRace").all((req, res, next) => {
  2321. if (req.body[0]) {
  2322. p = [
  2323. req.body[0].id,
  2324. req.body[0].info,
  2325. req.body[0].over,
  2326. req.body[0].pro,
  2327. req.body[0].act,
  2328. req.body[0].exc,
  2329. req.body[0].res,
  2330. ];
  2331. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "updateRace"); //執行存儲過程
  2332. mysql.usselect(p, function(ret) {
  2333. let course = req.body[0].courseType;
  2334. let courseId = req.body[0].id;
  2335. let userid = req.body[0].uid;
  2336. delCourseType1(course, courseId, userid);
  2337. res.end(JSON.stringify({ success: 1 }));
  2338. });
  2339. }
  2340. });
  2341. router.route("/addWorkNew3").all((req, res, next) => {
  2342. if (req.body[0]) {
  2343. p = [
  2344. req.body[0].uid,
  2345. req.body[0].title,
  2346. req.body[0].brief,
  2347. req.body[0].cover,
  2348. req.body[0].astudent,
  2349. req.body[0].see,
  2350. req.body[0].chapters,
  2351. req.body[0].template,
  2352. req.body[0].ateacher,
  2353. ];
  2354. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "insert_teacher_work_new3"); //執行存儲過程
  2355. mysql.usselect(p, function(ret) {
  2356. let course = req.body[0].courseType;
  2357. let courseId = ret[0][0].courseId;
  2358. let userid = req.body[0].uid;
  2359. delCourseType(course, courseId, userid);
  2360. res.end(
  2361. JSON.stringify({
  2362. ordernumber: ret[0][0].ordernumber,
  2363. courseId: ret[0][0].courseId,
  2364. success: 1,
  2365. })
  2366. );
  2367. });
  2368. }
  2369. });
  2370. router.route("/addInviteCode").all((req, res, next) => {
  2371. if (req.body[0]) {
  2372. addCourseInviteCode(
  2373. req.body[0].courseId,
  2374. JSON.parse(decodeURIComponent(req.body[0].inviteCode)),
  2375. res
  2376. );
  2377. }
  2378. });
  2379. function delCourseInviteCode(courseId, inviteCode) {
  2380. let _courseId = courseId;
  2381. var _userdata = [_courseId];
  2382. _userdata.unshift(_mysqlLabor[0], _mysqlLabor[1], "delete_courseInviteCode");
  2383. mysql.usselect(_userdata, function(ret) {
  2384. // console.log(ret);
  2385. addCourseInviteCode(_courseId, inviteCode);
  2386. });
  2387. }
  2388. function delCourseType(course, courseId, userid) {
  2389. let _courseId = courseId;
  2390. var _userdata = [_courseId];
  2391. _userdata.unshift(_mysqlLabor[0], _mysqlLabor[1], "delete_courseType");
  2392. mysql.usselect(_userdata, function(ret) {
  2393. // console.log(ret);
  2394. addCourseType(userid, course, _courseId);
  2395. });
  2396. // setTimeout(() => {
  2397. // }, 1000);
  2398. }
  2399. function delCourseType1(course, courseId, userid) {
  2400. let _courseId = courseId;
  2401. var _userdata = [_courseId];
  2402. _userdata.unshift(_mysqlLabor[0], _mysqlLabor[1], "delete_courseType1");
  2403. mysql.usselect(_userdata, function(ret) {
  2404. // console.log(ret);
  2405. });
  2406. setTimeout(() => {
  2407. addCourseType1(userid, course, _courseId);
  2408. }, 1000);
  2409. }
  2410. function delCourseTypeS(course, courseId, userid) {
  2411. let _courseId = courseId;
  2412. var _userdata = [_courseId];
  2413. _userdata.unshift(_mysqlLabor[0], _mysqlLabor[1], "delete_courseTypeS");
  2414. mysql.usselect(_userdata, function(ret) {
  2415. // console.log(ret);
  2416. addCourseTypeS(userid, course, _courseId);
  2417. });
  2418. // setTimeout(() => {
  2419. // }, 1000);
  2420. }
  2421. function addCourseInviteCode(courseId, inviteCode, res) {
  2422. var _courses = courseId;
  2423. var _tid = inviteCode;
  2424. for (let i = 0; i < _tid.length; i++) {
  2425. let _userdata = [_courses, _tid[i].cid, _tid[i].ic];
  2426. _userdata.unshift(_mysqlLabor[0], _mysqlLabor[1], "add_courseInviteCode");
  2427. setTimeout(() => {
  2428. mysql.usselect(_userdata, function(ret) {
  2429. // console.log(ret);
  2430. if (i == _tid.length - 1) {
  2431. res.end(JSON.stringify({ success: 1 }));
  2432. }
  2433. });
  2434. }, i * 500);
  2435. }
  2436. }
  2437. function addCourseType(userid, course, _courseId) {
  2438. var _uid = userid;
  2439. var _courses = _courseId;
  2440. var _tid = JSON.parse(decodeURIComponent(course));
  2441. for (let i = 0; i < _tid.length; i++) {
  2442. if (_tid[i] == "") {
  2443. continue;
  2444. }
  2445. var _userdata = [_courses, _tid[i], _uid];
  2446. _userdata.unshift(_mysqlLabor[0], _mysqlLabor[1], "add_courseType");
  2447. mysql.usselect(_userdata, function(ret) {
  2448. // console.log(ret);
  2449. });
  2450. }
  2451. }
  2452. function addCourseType1(userid, course, _courseId) {
  2453. var _uid = userid;
  2454. var _courses = _courseId;
  2455. var _tid = JSON.parse(decodeURIComponent(course));
  2456. for (let i = 0; i < _tid.length; i++) {
  2457. if (_tid[i] == "") {
  2458. continue;
  2459. }
  2460. var _userdata = [_courses, _tid[i], _uid];
  2461. _userdata.unshift(_mysqlLabor[0], _mysqlLabor[1], "add_courseType1");
  2462. mysql.usselect(_userdata, function(ret) {
  2463. // console.log(ret);
  2464. });
  2465. }
  2466. }
  2467. function addCourseTypeS(userid, course, _courseId) {
  2468. var _uid = userid;
  2469. var _courses = _courseId;
  2470. var _tid = JSON.parse(decodeURIComponent(course));
  2471. for (let i = 0; i < _tid.length; i++) {
  2472. if (_tid[i] == "") {
  2473. continue;
  2474. }
  2475. var _userdata = [_courses, _tid[i], _uid];
  2476. _userdata.unshift(_mysqlLabor[0], _mysqlLabor[1], "add_courseTypeS");
  2477. mysql.usselect(_userdata, function(ret) {
  2478. // console.log(ret);
  2479. });
  2480. }
  2481. }
  2482. //修改课程
  2483. // router.route('/updateWork').all((req, res, next) => {
  2484. // postmysql(req, res, "update_teacher_work");
  2485. // });
  2486. router.route("/updateWorkNew").all((req, res, next) => {
  2487. if (req.body[0]) {
  2488. // p = Object.values(req.body[0]);
  2489. p = [
  2490. req.body[0].cid,
  2491. req.body[0].title,
  2492. req.body[0].brief,
  2493. req.body[0].cover,
  2494. req.body[0].astudent,
  2495. req.body[0].see,
  2496. req.body[0].chapters,
  2497. req.body[0].template,
  2498. ];
  2499. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "update_teacher_work_new");
  2500. //執行存儲過程
  2501. mysql.usselect(p, function(ret) {
  2502. let course = req.body[0].courseType;
  2503. let courseId = req.body[0].cid;
  2504. let userid = req.body[0].uid;
  2505. delCourseType(course, courseId, userid);
  2506. res.end(JSON.stringify({ success: 1 }));
  2507. // res.end(JSON.stringify(ret));
  2508. });
  2509. }
  2510. });
  2511. //查询课程
  2512. // router.route('/selectCourse').all((req, res, next) => {
  2513. // var json = queryString(req.url);
  2514. // getmysql(req, res, "select_course", json['type'], json['uid'], json['oid'], json['page'], 10);
  2515. // });
  2516. router.route("/updateWorkNew2").all((req, res, next) => {
  2517. if (req.body[0]) {
  2518. p = [
  2519. req.body[0].cid,
  2520. req.body[0].title,
  2521. req.body[0].brief,
  2522. req.body[0].cover,
  2523. req.body[0].evaId,
  2524. req.body[0].astudent,
  2525. req.body[0].see,
  2526. req.body[0].chapters,
  2527. req.body[0].template,
  2528. req.body[0].ateacher,
  2529. ];
  2530. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "update_teacher_work_new2"); //執行存儲過程
  2531. mysql.usselect(p, function(ret) {
  2532. let course = req.body[0].courseType;
  2533. let courseId = req.body[0].cid;
  2534. let userid = req.body[0].uid;
  2535. delCourseType(course, courseId, userid);
  2536. res.end(JSON.stringify({ success: 1 }));
  2537. });
  2538. }
  2539. });
  2540. router.route("/updateWorkNew2AI").all((req, res, next) => {
  2541. if (req.body[0]) {
  2542. p = [
  2543. req.body[0].cid,
  2544. req.body[0].title,
  2545. req.body[0].brief,
  2546. req.body[0].cover,
  2547. req.body[0].evaId,
  2548. req.body[0].astudent,
  2549. req.body[0].see,
  2550. req.body[0].chapters,
  2551. req.body[0].template,
  2552. req.body[0].ateacher,
  2553. req.body[0].refile,
  2554. req.body[0].reBrief,
  2555. ];
  2556. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "update_teacher_work_new2_ai"); //執行存儲過程
  2557. mysql.usselect(p, function(ret) {
  2558. let course = req.body[0].courseType;
  2559. let courseId = req.body[0].cid;
  2560. let userid = req.body[0].uid;
  2561. delCourseType(course, courseId, userid);
  2562. res.end(JSON.stringify({ success: 1 }));
  2563. });
  2564. }
  2565. });
  2566. router.route("/updateWorkNew2AI2").all((req, res, next) => {
  2567. if (req.body[0]) {
  2568. p = [
  2569. req.body[0].cid,
  2570. req.body[0].title,
  2571. req.body[0].brief,
  2572. req.body[0].cover,
  2573. req.body[0].evaId,
  2574. req.body[0].astudent,
  2575. req.body[0].see,
  2576. req.body[0].chapters,
  2577. req.body[0].template,
  2578. req.body[0].ateacher,
  2579. req.body[0].refile,
  2580. req.body[0].reBrief,
  2581. req.body[0].cpote,
  2582. ];
  2583. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "update_teacher_work_new2_ai2"); //執行存儲過程
  2584. mysql.usselect(p, function(ret) {
  2585. let course = req.body[0].courseType;
  2586. let courseId = req.body[0].cid;
  2587. let userid = req.body[0].uid;
  2588. delCourseType(course, courseId, userid);
  2589. res.end(JSON.stringify({ success: 1 }));
  2590. });
  2591. }
  2592. });
  2593. router.route("/updateWorkNew2AI3").all((req, res, next) => {
  2594. if (req.body[0]) {
  2595. p = [
  2596. req.body[0].cid,
  2597. req.body[0].title,
  2598. req.body[0].brief,
  2599. req.body[0].cover,
  2600. req.body[0].evaId,
  2601. req.body[0].astudent,
  2602. req.body[0].see,
  2603. req.body[0].chapters,
  2604. req.body[0].template,
  2605. req.body[0].ateacher,
  2606. req.body[0].refile,
  2607. req.body[0].reBrief,
  2608. req.body[0].cpote,
  2609. req.body[0].setting,
  2610. req.body[0].iresearch,
  2611. ];
  2612. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "update_teacher_work_new2_ai3"); //執行存儲過程
  2613. mysql.usselect(p, function(ret) {
  2614. let course = req.body[0].courseType;
  2615. let courseId = req.body[0].cid;
  2616. let userid = req.body[0].uid;
  2617. delCourseType(course, courseId, userid);
  2618. res.end(JSON.stringify({ success: 1 }));
  2619. });
  2620. }
  2621. });
  2622. router.route("/updateWorkNew2New").all((req, res, next) => {
  2623. if (req.body[0]) {
  2624. p = [
  2625. req.body[0].cid,
  2626. req.body[0].title,
  2627. req.body[0].brief,
  2628. req.body[0].cover,
  2629. req.body[0].evaId,
  2630. req.body[0].astudent,
  2631. req.body[0].see,
  2632. req.body[0].chapters,
  2633. req.body[0].template,
  2634. req.body[0].ateacher,
  2635. req.body[0].highSetting
  2636. ];
  2637. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "update_teacher_work_new2New"); //執行存儲過程
  2638. mysql.usselect(p, function(ret) {
  2639. let course = req.body[0].courseType;
  2640. let courseId = req.body[0].cid;
  2641. let userid = req.body[0].uid;
  2642. delCourseType(course, courseId, userid);
  2643. res.end(JSON.stringify({ success: 1 }));
  2644. });
  2645. }
  2646. });
  2647. router.route("/updateTrainCourseNew2").all((req, res, next) => {
  2648. if (req.body[0]) {
  2649. p = [
  2650. req.body[0].cid,
  2651. req.body[0].title,
  2652. req.body[0].brief,
  2653. req.body[0].cover,
  2654. req.body[0].evaId,
  2655. req.body[0].astudent,
  2656. req.body[0].see,
  2657. req.body[0].chapters,
  2658. req.body[0].template,
  2659. req.body[0].ateacher,
  2660. ];
  2661. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "updateTrainCourseNew2"); //執行存儲過程
  2662. mysql.usselect(p, function(ret) {
  2663. let course = req.body[0].courseType;
  2664. let courseId = req.body[0].cid;
  2665. let userid = req.body[0].uid;
  2666. delCourseType(course, courseId, userid);
  2667. res.end(JSON.stringify({ success: 1 }));
  2668. });
  2669. }
  2670. });
  2671. router.route("/updateTestCourse").all((req, res, next) => { //修改评测
  2672. if (req.body[0]) {
  2673. p = [
  2674. req.body[0].cid,
  2675. req.body[0].title,
  2676. req.body[0].brief,
  2677. req.body[0].cover,
  2678. req.body[0].evaId,
  2679. req.body[0].astudent,
  2680. req.body[0].see,
  2681. req.body[0].chapters,
  2682. req.body[0].template,
  2683. req.body[0].ateacher,
  2684. req.body[0].look,
  2685. req.body[0].typeid,
  2686. req.body[0].overtime,
  2687. req.body[0].j2,
  2688. ];
  2689. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "updateTestCourse"); //執行存儲過程
  2690. mysql.usselect(p, function(ret) {
  2691. let course = req.body[0].courseType;
  2692. let courseId = req.body[0].cid;
  2693. let userid = req.body[0].uid;
  2694. delCourseType(course, courseId, userid);
  2695. res.end(JSON.stringify({ success: 1 }));
  2696. });
  2697. }
  2698. });
  2699. router.route("/updateTestCourse2").all((req, res, next) => { //修改评测
  2700. if (req.body[0]) {
  2701. p = [
  2702. req.body[0].cid,
  2703. req.body[0].title,
  2704. req.body[0].brief,
  2705. req.body[0].cover,
  2706. req.body[0].evaId,
  2707. req.body[0].astudent,
  2708. req.body[0].see,
  2709. req.body[0].chapters,
  2710. req.body[0].template,
  2711. req.body[0].ateacher,
  2712. req.body[0].look,
  2713. req.body[0].typeid,
  2714. ];
  2715. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "updateTestCourse2"); //執行存儲過程
  2716. mysql.usselect(p, function(ret) {
  2717. let course = req.body[0].courseType;
  2718. let courseId = req.body[0].cid;
  2719. let userid = req.body[0].uid;
  2720. delCourseType(course, courseId, userid);
  2721. res.end(JSON.stringify({ success: 1 }));
  2722. });
  2723. }
  2724. });
  2725. router.route("/updateTestCourse3").all((req, res, next) => { //修改评测
  2726. if (req.body[0]) {
  2727. p = [
  2728. req.body[0].cid,
  2729. req.body[0].title,
  2730. req.body[0].brief,
  2731. req.body[0].cover,
  2732. req.body[0].evaId,
  2733. req.body[0].astudent,
  2734. req.body[0].see,
  2735. req.body[0].chapters,
  2736. req.body[0].template,
  2737. req.body[0].ateacher,
  2738. req.body[0].look,
  2739. req.body[0].typeid,
  2740. req.body[0].overtime,
  2741. req.body[0].j2,
  2742. req.body[0].j3,
  2743. ];
  2744. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "updateTestCourse3"); //執行存儲過程
  2745. mysql.usselect(p, function(ret) {
  2746. let course = req.body[0].courseType;
  2747. let courseId = req.body[0].cid;
  2748. let userid = req.body[0].uid;
  2749. delCourseType(course, courseId, userid);
  2750. res.end(JSON.stringify({ success: 1 }));
  2751. });
  2752. }
  2753. });
  2754. router.route("/updateSynergy").all((req, res, next) => {
  2755. if (req.body[0]) {
  2756. p = [
  2757. req.body[0].cid,
  2758. req.body[0].title,
  2759. req.body[0].brief,
  2760. req.body[0].cover,
  2761. req.body[0].evaId,
  2762. req.body[0].astudent,
  2763. req.body[0].see,
  2764. req.body[0].chapters,
  2765. req.body[0].template,
  2766. req.body[0].ateacher,
  2767. ];
  2768. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "update_synergy"); //執行存儲過程
  2769. mysql.usselect(p, function(ret) {
  2770. let course = req.body[0].courseType;
  2771. let courseId = req.body[0].cid;
  2772. let userid = req.body[0].uid;
  2773. delCourseType(course, courseId, userid);
  2774. res.end(JSON.stringify({ success: 1 }));
  2775. });
  2776. }
  2777. });
  2778. router.route("/updateWorkNew5").all((req, res, next) => {
  2779. if (req.body[0]) {
  2780. p = [
  2781. req.body[0].cid,
  2782. req.body[0].title,
  2783. req.body[0].brief,
  2784. req.body[0].cover,
  2785. req.body[0].evaId,
  2786. req.body[0].astudent,
  2787. req.body[0].see,
  2788. req.body[0].chapters,
  2789. req.body[0].template,
  2790. req.body[0].ateacher,
  2791. req.body[0].inviteCode,
  2792. ];
  2793. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "update_teacher_work_new5"); //執行存儲過程
  2794. mysql.usselect(p, function(ret) {
  2795. let course = req.body[0].courseType;
  2796. let courseId = req.body[0].cid;
  2797. let userid = req.body[0].uid;
  2798. delCourseType(course, courseId, userid);
  2799. res.end(JSON.stringify({ success: 1 }));
  2800. });
  2801. }
  2802. });
  2803. router.route("/updateStudentWorkNew2").all((req, res, next) => {
  2804. //学生
  2805. if (req.body[0]) {
  2806. p = [
  2807. req.body[0].cid,
  2808. req.body[0].title,
  2809. req.body[0].brief,
  2810. req.body[0].cover,
  2811. req.body[0].evaId,
  2812. req.body[0].astudent,
  2813. req.body[0].see,
  2814. req.body[0].chapters,
  2815. req.body[0].template,
  2816. req.body[0].ateacher,
  2817. ];
  2818. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "updateStudentWorkNew2"); //執行存儲過程
  2819. mysql.usselect(p, function(ret) {
  2820. let course = req.body[0].courseType;
  2821. let courseId = req.body[0].cid;
  2822. let userid = req.body[0].uid;
  2823. delCourseType(course, courseId, userid);
  2824. res.end(JSON.stringify({ success: 1 }));
  2825. });
  2826. }
  2827. });
  2828. router.route("/updateStudentWorkNew22").all((req, res, next) => {
  2829. //学生
  2830. if (req.body[0]) {
  2831. p = [
  2832. req.body[0].cid,
  2833. req.body[0].title,
  2834. req.body[0].brief,
  2835. req.body[0].cover,
  2836. req.body[0].evaId,
  2837. req.body[0].astudent,
  2838. req.body[0].see,
  2839. req.body[0].chapters,
  2840. req.body[0].template,
  2841. req.body[0].ateacher,
  2842. ];
  2843. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "updateStudentWorkNew2"); //執行存儲過程
  2844. mysql.usselect(p, function(ret) {
  2845. let course = req.body[0].courseType;
  2846. let courseId = req.body[0].cid;
  2847. let userid = req.body[0].uid;
  2848. delCourseTypeS(course, courseId, userid);
  2849. res.end(JSON.stringify({ success: 1 }));
  2850. });
  2851. }
  2852. });
  2853. router.route("/updateWorkNew3").all((req, res, next) => {
  2854. if (req.body[0]) {
  2855. p = [
  2856. req.body[0].cid,
  2857. req.body[0].title,
  2858. req.body[0].brief,
  2859. req.body[0].cover,
  2860. req.body[0].astudent,
  2861. req.body[0].see,
  2862. req.body[0].chapters,
  2863. req.body[0].template,
  2864. req.body[0].ateacher,
  2865. ];
  2866. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "update_teacher_work_new3"); //執行存儲過程
  2867. mysql.usselect(p, function(ret) {
  2868. let course = req.body[0].courseType;
  2869. let courseId = req.body[0].cid;
  2870. let userid = req.body[0].uid;
  2871. delCourseType(course, courseId, userid);
  2872. res.end(JSON.stringify({ success: 1 }));
  2873. });
  2874. }
  2875. });
  2876. function guid() {
  2877. var _num,
  2878. i,
  2879. _guid = "";
  2880. for (i = 0; i < 32; i++) {
  2881. _guid += Math.floor(Math.random() * 16).toString(16); //随机0 - 16 的数字 转变为16进制的字符串
  2882. _num = Math.floor((i - 7) / 4); //计算 (i-7)除4
  2883. if (_num > -1 && _num < 4 && i == 7 + 4 * _num) {
  2884. //会使guid中间加 "-" 形式为xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
  2885. _guid += "-";
  2886. }
  2887. }
  2888. return _guid;
  2889. }
  2890. router.route("/updateWorkNew4").all((req, res, next) => {
  2891. if (req.body[0]) {
  2892. let p = [req.body[0].cid];
  2893. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "select_course_detail"); //執行存儲過程
  2894. mysql.usselect(p, function(ret) {
  2895. let _unitIndex = parseInt(req.body[0].unitIndex);
  2896. let _chapters = JSON.parse(decodeURIComponent(req.body[0].chapters));
  2897. let _unitJson = JSON.parse(ret[0][0].chapters);
  2898. if (_unitJson.length - 1 < _unitIndex) {
  2899. let _i = _unitIndex - (_unitJson.length - 1);
  2900. for (let i = 0; i < _i; i++) {
  2901. _unitJson.push({
  2902. dyName: "", //单元标题
  2903. chapterInfo: [{
  2904. isread: false,
  2905. chapterid: guid(),
  2906. title: "",
  2907. courseName: "",
  2908. taskJson: [{
  2909. task: "",
  2910. taskDetail: "",
  2911. chapterData: [],
  2912. toolText: "",
  2913. toolChoose: [{
  2914. tool: [],
  2915. toolDetail: "",
  2916. toolType: 0,
  2917. askCount: 1,
  2918. askTitle: "",
  2919. askJson: [{ askstitle: "", askItem: 1, checkList: [] }],
  2920. }, ],
  2921. isShowTools: false,
  2922. askCount: 1,
  2923. isFold: 0,
  2924. askTitle: "",
  2925. askJson: [{ askstitle: "", askItem: 1, checkList: [] }],
  2926. checkJson: [{ checkCount: [], checkPerent: [] }],
  2927. homeworkList: [],
  2928. }, ],
  2929. itemCount: 1,
  2930. fileList1: [],
  2931. video: [],
  2932. testData: [],
  2933. pData: [],
  2934. templateArray: [],
  2935. }, ],
  2936. });
  2937. }
  2938. _unitJson[_unitIndex] = _chapters[_unitIndex];
  2939. } else {
  2940. _unitJson[_unitIndex] = _chapters[_unitIndex];
  2941. }
  2942. // console.log(_unitJson);
  2943. let p2 = [
  2944. req.body[0].cid,
  2945. // JSON.stringify(_unitJson).replaceAll(/%/g, "%25")
  2946. encodeURIComponent(JSON.stringify(_unitJson)),
  2947. ];
  2948. p2.unshift(_mysqlLabor[0], _mysqlLabor[1], "update_teacher_work_new4"); //執行存儲過程
  2949. mysql.usselect(p2, function(ret) {
  2950. res.end(JSON.stringify({ success: 1 }));
  2951. });
  2952. // res.end(JSON.stringify({ success: 1 }));
  2953. });
  2954. }
  2955. });
  2956. router.route("/updateTrainCourseNew4").all((req, res, next) => {
  2957. if (req.body[0]) {
  2958. let p = [req.body[0].cid];
  2959. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "select_trainCourse_detail"); //執行存儲過程
  2960. mysql.usselect(p, function(ret) {
  2961. let _unitIndex = parseInt(req.body[0].unitIndex);
  2962. let _chapters = JSON.parse(decodeURIComponent(req.body[0].chapters));
  2963. let _unitJson = JSON.parse(ret[0][0].chapters);
  2964. if (_unitJson.length - 1 < _unitIndex) {
  2965. let _i = _unitIndex - (_unitJson.length - 1);
  2966. for (let i = 0; i < _i; i++) {
  2967. _unitJson.push({
  2968. dyName: "", //单元标题
  2969. chapterInfo: [{
  2970. isread: false,
  2971. chapterid: guid(),
  2972. title: "",
  2973. courseName: "",
  2974. taskJson: [{
  2975. task: "",
  2976. taskDetail: "",
  2977. chapterData: [],
  2978. toolText: "",
  2979. toolChoose: [{
  2980. tool: [],
  2981. toolDetail: "",
  2982. toolType: 0,
  2983. askCount: 1,
  2984. askTitle: "",
  2985. askJson: [{ askstitle: "", askItem: 1, checkList: [] }],
  2986. }, ],
  2987. isShowTools: false,
  2988. askCount: 1,
  2989. isFold: 0,
  2990. askTitle: "",
  2991. askJson: [{ askstitle: "", askItem: 1, checkList: [] }],
  2992. checkJson: [{ checkCount: [], checkPerent: [] }],
  2993. homeworkList: [],
  2994. }, ],
  2995. itemCount: 1,
  2996. fileList1: [],
  2997. video: [],
  2998. testData: [],
  2999. pData: [],
  3000. templateArray: [],
  3001. }, ],
  3002. });
  3003. }
  3004. _unitJson[_unitIndex] = _chapters[_unitIndex];
  3005. } else {
  3006. _unitJson[_unitIndex] = _chapters[_unitIndex];
  3007. }
  3008. // console.log(_unitJson);
  3009. let p2 = [
  3010. req.body[0].cid,
  3011. encodeURIComponent(JSON.stringify(_unitJson)),
  3012. ];
  3013. p2.unshift(_mysqlLabor[0], _mysqlLabor[1], "updateTrainCourseNew4"); //執行存儲過程
  3014. mysql.usselect(p2, function(ret) {
  3015. res.end(JSON.stringify({ success: 1 }));
  3016. });
  3017. // res.end(JSON.stringify({ success: 1 }));
  3018. });
  3019. }
  3020. });
  3021. router.route("/updateStudentWorkNew4").all((req, res, next) => {
  3022. //学生
  3023. if (req.body[0]) {
  3024. let p = [req.body[0].cid];
  3025. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "select_student_course_detail2"); //執行存儲過程
  3026. mysql.usselect(p, function(ret) {
  3027. let _unitIndex = parseInt(req.body[0].unitIndex);
  3028. let _chapters = JSON.parse(decodeURIComponent(req.body[0].chapters));
  3029. let _unitJson = JSON.parse(ret[0][0].chapters);
  3030. if (_unitJson.length - 1 < _unitIndex) {
  3031. let _i = _unitIndex - (_unitJson.length - 1);
  3032. for (let i = 0; i < _i; i++) {
  3033. _unitJson.push({
  3034. dyName: "", //单元标题
  3035. chapterInfo: [{
  3036. isread: false,
  3037. chapterid: guid(),
  3038. title: "",
  3039. courseName: "",
  3040. taskJson: [{
  3041. task: "",
  3042. taskDetail: "",
  3043. chapterData: [],
  3044. toolText: "",
  3045. toolChoose: [{
  3046. tool: [],
  3047. toolDetail: "",
  3048. toolType: 0,
  3049. askCount: 1,
  3050. askTitle: "",
  3051. askJson: [{ askstitle: "", askItem: 1, checkList: [] }],
  3052. }, ],
  3053. isShowTools: false,
  3054. askCount: 1,
  3055. isFold: 0,
  3056. askTitle: "",
  3057. askJson: [{ askstitle: "", askItem: 1, checkList: [] }],
  3058. checkJson: [{ checkCount: [], checkPerent: [] }],
  3059. homeworkList: [],
  3060. }, ],
  3061. itemCount: 1,
  3062. fileList1: [],
  3063. video: [],
  3064. testData: [],
  3065. pData: [],
  3066. templateArray: [],
  3067. }, ],
  3068. });
  3069. }
  3070. _unitJson[_unitIndex] = _chapters[_unitIndex];
  3071. } else {
  3072. _unitJson[_unitIndex] = _chapters[_unitIndex];
  3073. }
  3074. // console.log(_unitJson);
  3075. let p2 = [
  3076. req.body[0].cid,
  3077. encodeURIComponent(JSON.stringify(_unitJson)),
  3078. ];
  3079. p2.unshift(_mysqlLabor[0], _mysqlLabor[1], "updateStudentWorkNew4"); //執行存儲過程
  3080. mysql.usselect(p2, function(ret) {
  3081. res.end(JSON.stringify({ success: 1 }));
  3082. });
  3083. // res.end(JSON.stringify({ success: 1 }));
  3084. });
  3085. }
  3086. });
  3087. //协同删除阶段
  3088. router.route("/deleteWork").all((req, res, next) => {
  3089. if (req.body[0]) {
  3090. let p = [req.body[0].cid];
  3091. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "select_course_detail"); //執行存儲過程
  3092. mysql.usselect(p, function(ret) {
  3093. let _chapid = req.body[0].chapid;
  3094. // console.log(_chapid);
  3095. let _chapters = JSON.parse(decodeURIComponent(req.body[0].chapters));
  3096. let _unitJson = JSON.parse(ret[0][0].chapters);
  3097. let _unitJson2 = [];
  3098. for (var i = 0; i < _unitJson.length; i++) {
  3099. if (_unitJson[i].chapterInfo[0].chapterid != _chapid) {
  3100. // console.log(1);
  3101. // _unitJson.splice(i, -1)
  3102. _unitJson2.push(_unitJson[i]);
  3103. // break;
  3104. }
  3105. }
  3106. // console.log(_unitJson2);
  3107. let p2 = [
  3108. req.body[0].cid,
  3109. encodeURIComponent(JSON.stringify(_unitJson2)),
  3110. ];
  3111. p2.unshift(_mysqlLabor[0], _mysqlLabor[1], "update_teacher_work_new4"); //執行存儲過程
  3112. mysql.usselect(p2, function(ret) {
  3113. res.end(JSON.stringify({ success: 1 }));
  3114. });
  3115. // res.end(JSON.stringify({ success: 1 }));
  3116. });
  3117. }
  3118. });
  3119. router.route("/deletetrainCourseWork").all((req, res, next) => {
  3120. if (req.body[0]) {
  3121. let p = [req.body[0].cid];
  3122. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "select_trainCourse_detail"); //執行存儲過程
  3123. mysql.usselect(p, function(ret) {
  3124. let _chapid = req.body[0].chapid;
  3125. // console.log(_chapid);
  3126. let _chapters = JSON.parse(decodeURIComponent(req.body[0].chapters));
  3127. let _unitJson = JSON.parse(ret[0][0].chapters);
  3128. let _unitJson2 = [];
  3129. for (var i = 0; i < _unitJson.length; i++) {
  3130. if (_unitJson[i].chapterInfo[0].chapterid != _chapid) {
  3131. // console.log(1);
  3132. // _unitJson.splice(i, -1)
  3133. _unitJson2.push(_unitJson[i]);
  3134. // break;
  3135. }
  3136. }
  3137. // console.log(_unitJson2);
  3138. let p2 = [
  3139. req.body[0].cid,
  3140. encodeURIComponent(JSON.stringify(_unitJson2)),
  3141. ];
  3142. p2.unshift(_mysqlLabor[0], _mysqlLabor[1], "updateTrainCourseNew4"); //執行存儲過程
  3143. mysql.usselect(p2, function(ret) {
  3144. res.end(JSON.stringify({ success: 1 }));
  3145. });
  3146. // res.end(JSON.stringify({ success: 1 }));
  3147. });
  3148. }
  3149. });
  3150. //协同删除阶段
  3151. router.route("/deleteStudentWork").all((req, res, next) => {
  3152. //学生
  3153. if (req.body[0]) {
  3154. let p = [req.body[0].cid];
  3155. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "select_student_course_detail2"); //執行存儲過程
  3156. mysql.usselect(p, function(ret) {
  3157. let _chapid = req.body[0].chapid;
  3158. // console.log(_chapid);
  3159. let _chapters = JSON.parse(decodeURIComponent(req.body[0].chapters));
  3160. let _unitJson = JSON.parse(ret[0][0].chapters);
  3161. let _unitJson2 = [];
  3162. for (var i = 0; i < _unitJson.length; i++) {
  3163. if (_unitJson[i].chapterInfo[0].chapterid != _chapid) {
  3164. // console.log(1);
  3165. // _unitJson.splice(i, -1)
  3166. _unitJson2.push(_unitJson[i]);
  3167. // break;
  3168. }
  3169. }
  3170. // console.log(_unitJson2);
  3171. let p2 = [
  3172. req.body[0].cid,
  3173. encodeURIComponent(JSON.stringify(_unitJson2)),
  3174. ];
  3175. p2.unshift(_mysqlLabor[0], _mysqlLabor[1], "updateStudentWorkNew4"); //執行存儲過程
  3176. mysql.usselect(p2, function(ret) {
  3177. res.end(JSON.stringify({ success: 1 }));
  3178. });
  3179. // res.end(JSON.stringify({ success: 1 }));
  3180. });
  3181. }
  3182. });
  3183. //协同恢复删除的阶段
  3184. router.route("/restoreWork").all((req, res, next) => {
  3185. if (req.body[0]) {
  3186. let p = [req.body[0].cid];
  3187. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "select_course_detail"); //執行存儲過程
  3188. mysql.usselect(p, function(ret) {
  3189. let _chapid = req.body[0].chapid;
  3190. // console.log(_chapid);
  3191. let _chapters = JSON.parse(decodeURIComponent(req.body[0].chapters));
  3192. let _unitJson = JSON.parse(ret[0][0].chapters);
  3193. let _unitJson2 = [];
  3194. let chpaindex;
  3195. for (var i = 0; i < _chapters.length; i++) {
  3196. if (_chapters[i].chapterInfo[0].chapterid == _chapid) {
  3197. chpaindex = i;
  3198. }
  3199. }
  3200. for (var i = 0; i < _unitJson.length; i++) {
  3201. if (_unitJson[i].chapterInfo[0].chapterid != _chapid) {
  3202. // console.log(1);
  3203. // _unitJson.splice(i, -1)
  3204. _unitJson2.push(_unitJson[i]);
  3205. // break;
  3206. }
  3207. }
  3208. _unitJson2.splice(chpaindex, 0, _chapters[chpaindex]);
  3209. // console.log(_unitJson2);
  3210. let p2 = [
  3211. req.body[0].cid,
  3212. encodeURIComponent(JSON.stringify(_unitJson2)),
  3213. ];
  3214. p2.unshift(_mysqlLabor[0], _mysqlLabor[1], "update_teacher_work_new4"); //執行存儲過程
  3215. mysql.usselect(p2, function(ret) {
  3216. res.end(JSON.stringify({ success: 1 }));
  3217. });
  3218. // res.end(JSON.stringify({ success: 1 }));
  3219. });
  3220. }
  3221. });
  3222. //协同恢复删除的阶段
  3223. router.route("/restoreTrainCourse").all((req, res, next) => {
  3224. if (req.body[0]) {
  3225. let p = [req.body[0].cid];
  3226. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "select_trainCourse_detail"); //執行存儲過程
  3227. mysql.usselect(p, function(ret) {
  3228. let _chapid = req.body[0].chapid;
  3229. // console.log(_chapid);
  3230. let _chapters = JSON.parse(decodeURIComponent(req.body[0].chapters));
  3231. let _unitJson = JSON.parse(ret[0][0].chapters);
  3232. let _unitJson2 = [];
  3233. let chpaindex;
  3234. for (var i = 0; i < _chapters.length; i++) {
  3235. if (_chapters[i].chapterInfo[0].chapterid == _chapid) {
  3236. chpaindex = i;
  3237. }
  3238. }
  3239. for (var i = 0; i < _unitJson.length; i++) {
  3240. if (_unitJson[i].chapterInfo[0].chapterid != _chapid) {
  3241. // console.log(1);
  3242. // _unitJson.splice(i, -1)
  3243. _unitJson2.push(_unitJson[i]);
  3244. // break;
  3245. }
  3246. }
  3247. _unitJson2.splice(chpaindex, 0, _chapters[chpaindex]);
  3248. // console.log(_unitJson2);
  3249. let p2 = [
  3250. req.body[0].cid,
  3251. encodeURIComponent(JSON.stringify(_unitJson2)),
  3252. ];
  3253. p2.unshift(_mysqlLabor[0], _mysqlLabor[1], "updateTrainCourseNew4"); //執行存儲過程
  3254. mysql.usselect(p2, function(ret) {
  3255. res.end(JSON.stringify({ success: 1 }));
  3256. });
  3257. // res.end(JSON.stringify({ success: 1 }));
  3258. });
  3259. }
  3260. });
  3261. //协同恢复删除的阶段
  3262. router.route("/restoreStudentWork").all((req, res, next) => {
  3263. //学生
  3264. if (req.body[0]) {
  3265. let p = [req.body[0].cid];
  3266. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "select_student_course_detail2"); //執行存儲過程
  3267. mysql.usselect(p, function(ret) {
  3268. let _chapid = req.body[0].chapid;
  3269. // console.log(_chapid);
  3270. let _chapters = JSON.parse(decodeURIComponent(req.body[0].chapters));
  3271. let _unitJson = JSON.parse(ret[0][0].chapters);
  3272. let _unitJson2 = [];
  3273. let chpaindex;
  3274. for (var i = 0; i < _chapters.length; i++) {
  3275. if (_chapters[i].chapterInfo[0].chapterid == _chapid) {
  3276. chpaindex = i;
  3277. }
  3278. }
  3279. for (var i = 0; i < _unitJson.length; i++) {
  3280. if (_unitJson[i].chapterInfo[0].chapterid != _chapid) {
  3281. // console.log(1);
  3282. // _unitJson.splice(i, -1)
  3283. _unitJson2.push(_unitJson[i]);
  3284. // break;
  3285. }
  3286. }
  3287. _unitJson2.splice(chpaindex, 0, _chapters[chpaindex]);
  3288. // console.log(_unitJson2);
  3289. let p2 = [
  3290. req.body[0].cid,
  3291. encodeURIComponent(JSON.stringify(_unitJson2)),
  3292. ];
  3293. p2.unshift(_mysqlLabor[0], _mysqlLabor[1], "updateStudentWorkNew4"); //執行存儲過程
  3294. mysql.usselect(p2, function(ret) {
  3295. res.end(JSON.stringify({ success: 1 }));
  3296. });
  3297. // res.end(JSON.stringify({ success: 1 }));
  3298. });
  3299. }
  3300. });
  3301. router.route("/selectCourseNew").all((req, res, next) => {
  3302. var json = queryString(req.url);
  3303. getmysql(
  3304. req,
  3305. res,
  3306. "select_course_new",
  3307. json["type"],
  3308. json["uid"],
  3309. json["oid"],
  3310. json["typea"],
  3311. json["typeb"],
  3312. json["typec"],
  3313. json["typed"],
  3314. json["typeE"],
  3315. json["cu"],
  3316. json["cn"],
  3317. json["page"],
  3318. 10
  3319. );
  3320. });
  3321. router.route("/selectCourseNew2").all((req, res, next) => {
  3322. var json = queryString(req.url);
  3323. getmysql(
  3324. req,
  3325. res,
  3326. "select_course_new2",
  3327. json["type"],
  3328. json["uid"],
  3329. json["oid"],
  3330. json["org"],
  3331. json["typea"],
  3332. json["typeb"],
  3333. json["typec"],
  3334. json["typed"],
  3335. json["typeE"],
  3336. json["cu"],
  3337. json["cn"],
  3338. json["page"],
  3339. json["pageSize"]
  3340. );
  3341. });
  3342. router.route("/selectCourseNew2Liyuan").all((req, res, next) => {
  3343. var json = queryString(req.url);
  3344. getmysql(
  3345. req,
  3346. res,
  3347. "selectCourseNew2Liyuan",
  3348. json["type"],
  3349. json["uid"],
  3350. json["oid"],
  3351. json["org"],
  3352. json["typea"],
  3353. json["typeb"],
  3354. json["typec"],
  3355. json["typed"],
  3356. json["typeE"],
  3357. json["cu"],
  3358. json["cn"],
  3359. json["page"],
  3360. json["pageSize"]
  3361. );
  3362. });
  3363. router.route("/selectTrainCourseNew2").all((req, res, next) => {
  3364. var json = queryString(req.url);
  3365. getmysql(
  3366. req,
  3367. res,
  3368. "selectTrainCourseNew2",
  3369. json["type"],
  3370. json["uid"],
  3371. json["oid"],
  3372. json["org"],
  3373. json["typea"],
  3374. json["typeb"],
  3375. json["typec"],
  3376. json["typed"],
  3377. json["typeE"],
  3378. json["cu"],
  3379. json["cn"],
  3380. json["page"],
  3381. json["pageSize"]
  3382. );
  3383. });
  3384. router.route("/selectSynergyCourse").all((req, res, next) => {
  3385. var json = queryString(req.url);
  3386. getmysql(
  3387. req,
  3388. res,
  3389. "selectSynergyCourse",
  3390. json["type"],
  3391. json["uid"],
  3392. json["oid"],
  3393. json["org"],
  3394. json["typea"],
  3395. json["typeb"],
  3396. json["typec"],
  3397. json["typed"],
  3398. json["typeE"],
  3399. json["cu"],
  3400. json["cn"],
  3401. json["page"],
  3402. json["pageSize"]
  3403. );
  3404. });
  3405. router.route("/selectStudentCourseNew2").all((req, res, next) => {
  3406. var json = queryString(req.url);
  3407. getmysql(
  3408. req,
  3409. res,
  3410. "selectStudentCourseNew2",
  3411. json["type"],
  3412. json["uid"],
  3413. json["oid"],
  3414. json["org"],
  3415. json["typea"],
  3416. json["typeb"],
  3417. json["typec"],
  3418. json["typed"],
  3419. json["typeE"],
  3420. json["cu"],
  3421. json["cn"],
  3422. json["page"],
  3423. 10
  3424. );
  3425. });
  3426. router.route("/selectStudentCourseNew22").all((req, res, next) => {
  3427. var json = queryString(req.url);
  3428. getmysql(
  3429. req,
  3430. res,
  3431. "selectStudentCourseNew22",
  3432. json["type"],
  3433. json["uid"],
  3434. json["oid"],
  3435. json["org"],
  3436. json["typea"],
  3437. json["typeb"],
  3438. json["typec"],
  3439. json["typed"],
  3440. json["typef"],
  3441. json["typeE"],
  3442. json["cu"],
  3443. json["cn"],
  3444. json["page"],
  3445. json["pageSize"]
  3446. );
  3447. });
  3448. router.route("/selectStudentCourseNew222").all((req, res, next) => {
  3449. var json = queryString(req.url);
  3450. getmysql(
  3451. req,
  3452. res,
  3453. "selectStudentCourseNew222",
  3454. json["type"],
  3455. json["uid"],
  3456. json["oid"],
  3457. json["org"],
  3458. json["typea"],
  3459. json["typeb"],
  3460. json["typec"],
  3461. json["typed"],
  3462. json["typef"],
  3463. json["typeE"],
  3464. json["cu"],
  3465. json["cn"],
  3466. json["page"],
  3467. json["pageSize"]
  3468. );
  3469. });
  3470. //查询评测
  3471. router.route("/selectTesttCourse").all((req, res, next) => {
  3472. var json = queryString(req.url);
  3473. getmysql(
  3474. req,
  3475. res,
  3476. "selectTesttCourse",
  3477. json["type"],
  3478. json["uid"],
  3479. json["oid"],
  3480. json["org"],
  3481. json["typea"],
  3482. json["typeb"],
  3483. json["typec"],
  3484. json["typed"],
  3485. json["typef"],
  3486. json["typeE"],
  3487. json["cu"],
  3488. json["cn"],
  3489. json["page"],
  3490. json["pageSize"]
  3491. );
  3492. });
  3493. //查询评测
  3494. router.route("/selectTesttCourse3").all((req, res, next) => {
  3495. var json = queryString(req.url);
  3496. getmysql(
  3497. req,
  3498. res,
  3499. "selectTesttCourse3",
  3500. json["type"],
  3501. json["uid"],
  3502. json["oid"],
  3503. json["org"],
  3504. json["typea"],
  3505. json["typeb"],
  3506. json["typec"],
  3507. json["typed"],
  3508. json["typef"],
  3509. json["typeE"],
  3510. json["cu"],
  3511. json["cn"],
  3512. json["page"],
  3513. json["pageSize"]
  3514. );
  3515. });
  3516. //查询评测
  3517. router.route("/selectTesttCourse2").all((req, res, next) => {
  3518. var json = queryString(req.url);
  3519. getmysql(
  3520. req,
  3521. res,
  3522. "selectTesttCourse2",
  3523. json["oid"],
  3524. json["org"],
  3525. json["type"],
  3526. json["cn"],
  3527. json["page"],
  3528. json["pageSize"]
  3529. );
  3530. });
  3531. //查询评测 评测中心
  3532. router.route("/selectTesttCourseCenter").all((req, res, next) => {
  3533. var json = queryString(req.url);
  3534. getmysql(
  3535. req,
  3536. res,
  3537. "selectTesttCourseCenter",
  3538. json["type"],
  3539. json["uid"],
  3540. json["oid"],
  3541. json["org"],
  3542. json["classid"],
  3543. json["typea"],
  3544. json["typeb"],
  3545. json["typec"],
  3546. json["typed"],
  3547. json["typef"],
  3548. json["typeE"],
  3549. json["cu"],
  3550. json["cn"],
  3551. json["page"],
  3552. json["pageSize"]
  3553. );
  3554. });
  3555. //查询评测 评测中心及作业
  3556. router.route("/selectTesttCourseCenter1").all((req, res, next) => {
  3557. var json = queryString(req.url);
  3558. getmysql(
  3559. req,
  3560. res,
  3561. "selectTesttCourseCenter1",
  3562. json["type"],
  3563. json["uid"],
  3564. json["oid"],
  3565. json["org"],
  3566. json["classid"],
  3567. json["typea"],
  3568. json["typeb"],
  3569. json["typec"],
  3570. json["typed"],
  3571. json["typef"],
  3572. json["typeE"],
  3573. json["cu"],
  3574. json["cn"],
  3575. json["page"],
  3576. json["pageSize"]
  3577. );
  3578. });
  3579. router.route("/selectStudentCourseNew22Mode").all((req, res, next) => {
  3580. var json = queryString(req.url);
  3581. getmysql(
  3582. req,
  3583. res,
  3584. "selectStudentCourseNew22Mode",
  3585. json["type"],
  3586. json["uid"],
  3587. json["oid"],
  3588. json["org"],
  3589. json["typea"],
  3590. json["typeb"],
  3591. json["typec"],
  3592. json["typed"],
  3593. json["typef"],
  3594. json["typeE"],
  3595. json["cu"],
  3596. json["cn"]
  3597. );
  3598. });
  3599. //查询协同编辑课程
  3600. router.route("/selectCourseTeam").all((req, res, next) => {
  3601. var json = queryString(req.url);
  3602. getmysql(req, res, "selectCourseTeam", json["uid"], json["oid"]);
  3603. });
  3604. //查询学校
  3605. router.route("/selectSchoolName").all((req, res, next) => {
  3606. var json = queryString(req.url);
  3607. getmysql(req, res, "selectOidName", json["cu"], json["cn"], json["page"], 10);
  3608. });
  3609. //查询组织
  3610. router.route("/selectOrgName").all((req, res, next) => {
  3611. var json = queryString(req.url);
  3612. getmysql(req, res, "selectOrgName", json["page"], 10);
  3613. });
  3614. //查询学校
  3615. router.route("/selectSchoolName2").all((req, res, next) => {
  3616. var json = queryString(req.url);
  3617. getmysql(req, res, "selectOidName2", json["oid"]);
  3618. });
  3619. //查询学校
  3620. router.route("/selectSchoolNameOrg").all((req, res, next) => {
  3621. var json = queryString(req.url);
  3622. getmysql(req, res, "selectSchoolNameOrg", json["org"], json["page"], 10);
  3623. });
  3624. //查询协同学校和被协同学校
  3625. router.route("/selectOrgType").all((req, res, next) => {
  3626. var json = queryString(req.url);
  3627. getmysql(req, res, "selectOrgType", json["t"], json["org"], json["page"], 10);
  3628. });
  3629. //新增批注
  3630. router.route("/addPz").all((req, res, next) => {
  3631. postmysql(req, res, "addPz");
  3632. });
  3633. //新增批注
  3634. router.route("/addPz2").all((req, res, next) => {
  3635. postmysql(req, res, "addPz2");
  3636. });
  3637. //新增回复
  3638. router.route("/addHf").all((req, res, next) => {
  3639. postmysql(req, res, "addHf");
  3640. });
  3641. //删除批注
  3642. router.route("/deletePz").all((req, res, next) => {
  3643. postmysql(req, res, "deletePz");
  3644. });
  3645. //删除回复
  3646. router.route("/deleteReply").all((req, res, next) => {
  3647. postmysql(req, res, "deleteReply");
  3648. });
  3649. //查询批注列表
  3650. router.route("/selectPzList").all((req, res, next) => {
  3651. var json = queryString(req.url);
  3652. getmysql(req, res, "selectPzList", json["cid"], json["s"], json["t"]);
  3653. });
  3654. //查询批注列表
  3655. router.route("/selectPzListType").all((req, res, next) => {
  3656. var json = queryString(req.url);
  3657. getmysql(req, res, "selectPzListType", json["cid"], json["s"], json["t"], json["type"], json["uid"]);
  3658. });
  3659. //评分
  3660. router.route("/scoreWork").all((req, res, next) => {
  3661. postmysql(req, res, "scoreWork");
  3662. });
  3663. //删除学生
  3664. router.route("/deleteStudent").all((req, res, next) => {
  3665. postmysql(req, res, "delete_student");
  3666. });
  3667. //查询学校底下的班级
  3668. router.route("/selectClassBySchool").all((req, res, next) => {
  3669. var json = queryString(req.url);
  3670. getmysql(req, res, "selectClassBySchool", json["oid"]);
  3671. });
  3672. //查询学校底下的教研室
  3673. router.route("/selectTeacherOfficeBySchool").all((req, res, next) => {
  3674. var json = queryString(req.url);
  3675. getmysql(req, res, "selectTeacherOfficeBySchool", json["oid"]);
  3676. });
  3677. //查询学校底下的年级
  3678. router.route("/selectGrageBySchool").all((req, res, next) => {
  3679. var json = queryString(req.url);
  3680. getmysql(req, res, "selectGrageBySchool", json["oid"]);
  3681. });
  3682. //查询学校底下的班级
  3683. router.route("/selectClassBySchoolSearch").all((req, res, next) => {
  3684. var json = queryString(req.url);
  3685. getmysql(req, res, "selectClassBySchoolSearch", json["oid"], json["cn"]);
  3686. });
  3687. //查询学校底下的班级
  3688. router.route("/selectClassBySchoolSearch2").all((req, res, next) => {
  3689. var json = queryString(req.url);
  3690. getmysql(req, res, "selectClassBySchoolSearch2", json["oid"], json["gid"], json["cn"]);
  3691. });
  3692. //查询组织底下的学校
  3693. router.route("/selectSchoolByOrg").all((req, res, next) => {
  3694. var json = queryString(req.url);
  3695. getmysql(req, res, "selectSchoolByOrg", json["org"]);
  3696. });
  3697. //学生注册接口
  3698. router.route("/register_student").post(function(req, res, next) {
  3699. //mode的处理
  3700. if (req.body[0]) {
  3701. // 0 用户名 1 用户密码 2用户身份 3 第三方id(可有可无)
  3702. p = Object.values(req.body[0]); //获取用户密码
  3703. //没有第三方id的处理
  3704. // if (p.length < 4) {
  3705. // p.push("")
  3706. // }
  3707. p[1] = bcrypt.hashSync(p[1], bcrypt.genSaltSync(10));
  3708. //密码加密
  3709. // bcrypt.hash(p[1], 10, function (err, hash) {
  3710. // if (err) {
  3711. // return next(err);
  3712. // }
  3713. // p[1] = hash;
  3714. // });
  3715. //参数拼接,注册
  3716. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "register_student");
  3717. //返回注册用户数据
  3718. // mysql.usselect(p, function (ret) {
  3719. // res.end(ret);
  3720. // });
  3721. mysql.usselect(p, function(ret) {
  3722. res.end(JSON.stringify(ret));
  3723. });
  3724. }
  3725. });
  3726. //查询课程详情
  3727. router.route("/selectCourseDetail").all((req, res, next) => {
  3728. var json = queryString(req.url);
  3729. getmysql(req, res, "selectCourseDetail", json["courseId"]);
  3730. });
  3731. //查询课程详情
  3732. router.route("/selectTrainCourseDetail").all((req, res, next) => {
  3733. var json = queryString(req.url);
  3734. getmysql(req, res, "selectTrainCourseDetail", json["courseId"]);
  3735. });
  3736. //查询课程详情
  3737. router.route("/selectCourseDetail2").all((req, res, next) => {
  3738. var json = queryString(req.url);
  3739. getmysql(req, res, "selectCourseDetail2", json["courseId"]);
  3740. });
  3741. //查询课程详情
  3742. router.route("/selectTrainCourseDetail2").all((req, res, next) => {
  3743. var json = queryString(req.url);
  3744. getmysql(req, res, "selectTrainCourseDetail2", json["courseId"]);
  3745. });
  3746. //查询课程详情
  3747. router.route("/selectCourseDetail3").all((req, res, next) => {
  3748. var json = queryString(req.url);
  3749. getmysql(req, res, "selectCourseDetail3", json["courseId"]);
  3750. });
  3751. //查询课程详情
  3752. router.route("/selectTrainCourseDetail3").all((req, res, next) => {
  3753. var json = queryString(req.url);
  3754. getmysql(req, res, "selectTrainCourseDetail3", json["courseId"]);
  3755. });
  3756. //查询学校底下的所有赛事
  3757. router.route("/selectRaceByOid").all((req, res, next) => {
  3758. var json = queryString(req.url);
  3759. getmysql(req, res, "selectRaceByOid", json["sid"]);
  3760. });
  3761. //修改作业学生名称 修1
  3762. router.route("/updateCourseWorksName").get((req, res, next) => {
  3763. var json = queryString(req.url);
  3764. getmysql2(req, res, "updateCourseWorksName", json["n"], json["cid"]);
  3765. });
  3766. //查询课程详情
  3767. router.route("/selectStudentCourseDetail").all((req, res, next) => {
  3768. //学生
  3769. var json = queryString(req.url);
  3770. getmysql(req, res, "selectStudentCourseDetail", json["courseId"]);
  3771. });
  3772. //查询课程详情
  3773. router.route("/selectStudentCourseDetail3").all((req, res, next) => {
  3774. //学生
  3775. var json = queryString(req.url);
  3776. getmysql(req, res, "selectStudentCourseDetail3", json["courseId"]);
  3777. });
  3778. //查询课程详情
  3779. router.route("/selectStudentCourseDetail2").all((req, res, next) => {
  3780. //学生
  3781. var json = queryString(req.url);
  3782. getmysql(req, res, "selectStudentCourseDetail2", json["courseId"]);
  3783. });
  3784. //跳转阶段时,如果有课程就查询1返回,如果没有就插入 修1
  3785. router.route("/addUserR").get((req, res, next) => {
  3786. var json = queryString(req.url);
  3787. getmysql2(req, res, "insertUserR", json["uid"], json["cid"]);
  3788. });
  3789. //新增学生端作业
  3790. router.route("/addWorks").all((req, res, next) => {
  3791. postmysql(req, res, "add_works");
  3792. });
  3793. //查询已提交作业
  3794. router.route("/selectWork").all((req, res, next) => {
  3795. var json = queryString(req.url);
  3796. getmysql(
  3797. req,
  3798. res,
  3799. "selectWork",
  3800. json["cid"],
  3801. json["stage"],
  3802. json["task"],
  3803. json["uid"]
  3804. );
  3805. });
  3806. //查询作业详情
  3807. router.route("/selectWorksDetail").all((req, res, next) => {
  3808. var json = queryString(req.url);
  3809. getmysql(req, res, "selectWorksDetail", json["uid"], json["cid"]);
  3810. });
  3811. //新增作业评分 修1
  3812. router.route("/updateWorks").get((req, res, next) => {
  3813. var json = queryString(req.url);
  3814. getmysql2(req, res, "updateWorks", json["rate"], json["tuid"], json["id"]);
  3815. });
  3816. //新增素材信息 修1
  3817. router.route("/addMtl").get((req, res, next) => {
  3818. var json = queryString(req.url);
  3819. getmysql2(req, res, "add_mtl", json["cInfo"], json["t"], json["cBy"]);
  3820. });
  3821. //根据类型查询素材信息
  3822. router.route("/selectMtl").all((req, res, next) => {
  3823. var json = queryString(req.url);
  3824. getmysql(req, res, "selectMtl", json["t"], json["page"], 10);
  3825. });
  3826. //根据类型查询素材信息
  3827. router.route("/selectMtl2").all((req, res, next) => {
  3828. var json = queryString(req.url);
  3829. getmysql(req, res, "selectMtl2", json["t"], json["uid"], json["page"], 10);
  3830. });
  3831. //学习中心
  3832. //新增学习资源信息 修1
  3833. router.route("/addStuMtl").get((req, res, next) => {
  3834. var json = queryString(req.url);
  3835. getmysql2(req, res, "addStuMtl", json["cInfo"], json["t"], json["cBy"]);
  3836. });
  3837. //根据类型查询学习资料信息
  3838. router.route("/selectStuMtl").all((req, res, next) => {
  3839. var json = queryString(req.url);
  3840. getmysql(req, res, "selectStuMtl", json["t"], json["page"], 10);
  3841. });
  3842. //删除1素材
  3843. router.route("/deleteStuM").all((req, res, next) => {
  3844. var json = queryString(req.url);
  3845. getmysql2(req, res, "deleteStuM", json["id"]);
  3846. });
  3847. //查询学生信息
  3848. router.route("/selectSDetail").all((req, res, next) => {
  3849. var json = queryString(req.url);
  3850. getmysql(req, res, "selectStudentDetail", json["uid"]);
  3851. });
  3852. //查询个人课程
  3853. router.route("/selectMyCourse").all((req, res, next) => {
  3854. var json = queryString(req.url);
  3855. getmysql(req, res, "selectMyCourse", json["uid"]);
  3856. });
  3857. //查询个人课程groupby课程id
  3858. router.route("/selectMyCourseBycid").all((req, res, next) => {
  3859. var json = queryString(req.url);
  3860. getmysql(req, res, "selectMyCourseBycid", json["uid"]);
  3861. });
  3862. //查询所有课程
  3863. router.route("/selectAllCourse").all((req, res, next) => {
  3864. var json = queryString(req.url);
  3865. getmysql(req, res, "selectAllCourse", json["oid"], json["page"], 10);
  3866. });
  3867. //根据班级查询所有课程
  3868. router.route("/selectAllCourseByCid").all((req, res, next) => {
  3869. var json = queryString(req.url);
  3870. getmysql(
  3871. req,
  3872. res,
  3873. "selectAllCourseByCid",
  3874. json["oid"],
  3875. json["cid"],
  3876. json["page"],
  3877. 10
  3878. );
  3879. });
  3880. //根据分类查询所有课程
  3881. router.route("/selectTypeCourse").all((req, res, next) => {
  3882. var json = queryString(req.url);
  3883. getmysql(
  3884. req,
  3885. res,
  3886. "selectTypeCourse",
  3887. json["uid"],
  3888. json["oid"],
  3889. json["typea"],
  3890. json["typeb"],
  3891. json["typec"],
  3892. json["typed"],
  3893. json["typeE"],
  3894. json["cu"],
  3895. json["cn"],
  3896. json["classid"],
  3897. json["page"],
  3898. 10
  3899. );
  3900. });
  3901. //根据分类查询所有课程
  3902. router.route("/selectTypeCourse2").all((req, res, next) => {
  3903. var json = queryString(req.url);
  3904. getmysql(
  3905. req,
  3906. res,
  3907. "selectTypeCourse2",
  3908. json["uid"],
  3909. json["oid"],
  3910. json["typea"],
  3911. json["typeb"],
  3912. json["typec"],
  3913. json["typed"],
  3914. json["typeE"],
  3915. json["cu"],
  3916. json["cn"],
  3917. json["classid"],
  3918. json["org"],
  3919. json["page"],
  3920. json["pageSize"]
  3921. );
  3922. });
  3923. //根据分类查询所有课程
  3924. router.route("/selectTypeCourse22").all((req, res, next) => {
  3925. var json = queryString(req.url);
  3926. getmysql(
  3927. req,
  3928. res,
  3929. "selectTypeCourse22",
  3930. json["uid"],
  3931. json["oid"],
  3932. json["typea"],
  3933. json["typeb"],
  3934. json["typec"],
  3935. json["typed"],
  3936. json["typeE"],
  3937. json["cu"],
  3938. json["cn"],
  3939. json["classid"],
  3940. json["org"],
  3941. json["page"],
  3942. json["pageSize"],
  3943. json["orderBy"]
  3944. );
  3945. });
  3946. //根据分类查询所有课程
  3947. router.route("/selectTypeTrainCourse2").all((req, res, next) => {
  3948. var json = queryString(req.url);
  3949. getmysql(
  3950. req,
  3951. res,
  3952. "selectTypeTrainCourse2",
  3953. json["uid"],
  3954. json["oid"],
  3955. json["typea"],
  3956. json["typeb"],
  3957. json["typec"],
  3958. json["typed"],
  3959. json["typeE"],
  3960. json["cu"],
  3961. json["cn"],
  3962. json["classid"],
  3963. json["org"],
  3964. json["page"],
  3965. json["pageSize"]
  3966. );
  3967. });
  3968. //根据分类查询所有课程
  3969. router.route("/selectTypeCourse2Mode").all((req, res, next) => {
  3970. var json = queryString(req.url);
  3971. getmysql(
  3972. req,
  3973. res,
  3974. "selectTypeCourse2Mode",
  3975. json["uid"],
  3976. json["oid"],
  3977. json["typea"],
  3978. json["typeb"],
  3979. json["typec"],
  3980. json["typed"],
  3981. json["typeE"],
  3982. json["cu"],
  3983. json["cn"],
  3984. json["classid"],
  3985. json["org"]
  3986. );
  3987. });
  3988. //根据分类查询所有课程
  3989. router.route("/selectTypeCourse2Mode2").all((req, res, next) => {
  3990. var json = queryString(req.url);
  3991. getmysql(
  3992. req,
  3993. res,
  3994. "selectTypeCourse2Mode2",
  3995. json["uid"],
  3996. json["oid"],
  3997. json["typea"],
  3998. json["typeb"],
  3999. json["typec"],
  4000. json["typed"],
  4001. json["typeE"],
  4002. json["cu"],
  4003. json["cn"],
  4004. json["classid"],
  4005. json["org"],
  4006. json["orderBy"]
  4007. );
  4008. });
  4009. //根据分类查询所有课程
  4010. router.route("/selectTypeTrainCourse2Mode").all((req, res, next) => {
  4011. var json = queryString(req.url);
  4012. getmysql(
  4013. req,
  4014. res,
  4015. "selectTypeTrainCourse2Mode",
  4016. json["uid"],
  4017. json["oid"],
  4018. json["typea"],
  4019. json["typeb"],
  4020. json["typec"],
  4021. json["typed"],
  4022. json["typeE"],
  4023. json["cu"],
  4024. json["cn"],
  4025. json["classid"],
  4026. json["org"]
  4027. );
  4028. });
  4029. //根据分类查询所有课程
  4030. router.route("/selectTypeCourse2GM").all((req, res, next) => {
  4031. var json = queryString(req.url);
  4032. getmysql(
  4033. req,
  4034. res,
  4035. "selectTypeCourse2GM",
  4036. json["uid"],
  4037. json["oid"],
  4038. json["typea"],
  4039. json["typeb"],
  4040. json["typec"],
  4041. json["typed"],
  4042. json["typeE"],
  4043. json["cu"],
  4044. json["cn"],
  4045. json["classid"],
  4046. json["org"],
  4047. json["page"],
  4048. 10
  4049. );
  4050. });
  4051. //根据分类查询所有课程
  4052. router.route("/selectCourseExamine").all((req, res, next) => {
  4053. var json = queryString(req.url);
  4054. getmysql(
  4055. req,
  4056. res,
  4057. "selectCourseExamine",
  4058. json["oid"],
  4059. json["org"],
  4060. json["cn"],
  4061. json["page"],
  4062. 10
  4063. );
  4064. });
  4065. //根据分类查询所有课程
  4066. router.route("/selectTypeCourse3").all((req, res, next) => {
  4067. var json = queryString(req.url);
  4068. getmysql(
  4069. req,
  4070. res,
  4071. "selectTypeCourse3",
  4072. json["uid"],
  4073. json["oid"],
  4074. json["typea"],
  4075. json["typeb"],
  4076. json["typec"],
  4077. json["typed"],
  4078. json["typeE"],
  4079. json["cu"],
  4080. json["cn"],
  4081. json["classid"],
  4082. json["org"],
  4083. json["page"],
  4084. 10
  4085. );
  4086. });
  4087. //审核课程
  4088. router.route("/examineCourse").all((req, res, next) => {
  4089. postmysql(req, res, "examineCourse");
  4090. });
  4091. //删除1素材
  4092. router.route("/deleteM").all((req, res, next) => {
  4093. var json = queryString(req.url);
  4094. getmysql2(req, res, "deleteM", json["id"]);
  4095. });
  4096. //点击阶段时添加观看人数 修1
  4097. router.route("/updateVc").get((req, res, next) => {
  4098. var json = queryString(req.url);
  4099. getmysql2(req, res, "updateVc", json["cid"]);
  4100. });
  4101. //点击阶段时添加观看人数 修1
  4102. router.route("/updateVcTrain").get((req, res, next) => {
  4103. var json = queryString(req.url);
  4104. getmysql2(req, res, "updateVcTrain", json["cid"]);
  4105. });
  4106. //删除1课程
  4107. router.route("/deleteCourse").all((req, res, next) => {
  4108. var json = queryString(req.url);
  4109. getmysql2(req, res, "deleteCourse", json["cid"]);
  4110. });
  4111. //删除1课程
  4112. router.route("/deleteTrainCourse").all((req, res, next) => {
  4113. var json = queryString(req.url);
  4114. getmysql2(req, res, "deleteTrainCourse", json["cid"]);
  4115. });
  4116. //删除1课程
  4117. router.route("/deleteSynergyCourse").all((req, res, next) => {
  4118. var json = queryString(req.url);
  4119. getmysql2(req, res, "deleteSynergyCourse", json["cid"]);
  4120. });
  4121. //删除1课程
  4122. router.route("/deleteStudentCourse").all((req, res, next) => {
  4123. var json = queryString(req.url);
  4124. getmysql2(req, res, "deleteStudentCourse", json["cid"]);
  4125. });
  4126. //复制课程
  4127. router.route("/copyCourse").all((req, res, next) => {
  4128. postmysql(req, res, "copyCourse");
  4129. });
  4130. //复制课程
  4131. router.route("/copyCourse2").all((req, res, next) => {
  4132. postmysql(req, res, "copyCourse2");
  4133. });
  4134. //复制课程
  4135. router.route("/copyCourseSz").all((req, res, next) => {
  4136. postmysql2(req, res, "copyCourse");
  4137. });
  4138. //返回复制课程
  4139. router.route("/getcopyCourseSz").all((req, res, next) => {
  4140. postmysql2(req, res, "getcopyCourseSz");
  4141. });
  4142. //返回复制课程自己的
  4143. router.route("/getcopyCourseByUseridSz").all((req, res, next) => {
  4144. postmysql2(req, res, "getcopyCourseByUseridSz");
  4145. });
  4146. //查看课程信息
  4147. router.route("/selectCourseDetailSz").all((req, res, next) => {
  4148. postmysql2(req, res, "selectCourseDetailSz");
  4149. });
  4150. //复制课程
  4151. router.route("/copyTrainCourse").all((req, res, next) => {
  4152. postmysql(req, res, "copyTrainCourse");
  4153. });
  4154. //复制课程
  4155. router.route("/copyTest").all((req, res, next) => {
  4156. postmysql(req, res, "copyTest");
  4157. });
  4158. //复制课程
  4159. router.route("/copySynergyCourse").all((req, res, next) => {
  4160. postmysql(req, res, "copySynergyCourse");
  4161. });
  4162. //复制评价体系
  4163. router.route("/copyEva").all((req, res, next) => {
  4164. postmysql(req, res, "copyEva");
  4165. });
  4166. //复制课程
  4167. router.route("/copySCourse").all((req, res, next) => {
  4168. postmysql(req, res, "copySCourse");
  4169. });
  4170. //查看课程
  4171. router.route("/select_course_detail").all((req, res, next) => {
  4172. var json = queryString(req.url);
  4173. getmysql(req, res, "select_course_detail", json["cid"]);
  4174. });
  4175. //查看课程
  4176. router.route("/select_trainCourse_detail").all((req, res, next) => {
  4177. var json = queryString(req.url);
  4178. getmysql(req, res, "select_trainCourse_detail", json["cid"]);
  4179. });
  4180. //删除评测
  4181. router.route("/deleteTestCourseWorks").all((req, res, next) => {
  4182. postmysql(req, res, "deleteTestCourseWorks");
  4183. });
  4184. //查看评测
  4185. router.route("/selectTestType").all((req, res, next) => {
  4186. var json = queryString(req.url);
  4187. getmysql(req, res, "selectTestType", json["oid"]);
  4188. });
  4189. //查看评测
  4190. router.route("/getTestCourseDetail").all((req, res, next) => {
  4191. var json = queryString(req.url);
  4192. getmysql(req, res, "getTestCourseDetail", json["cid"]);
  4193. });
  4194. //查看评测
  4195. router.route("/selectPostilByUid").all((req, res, next) => {
  4196. var json = queryString(req.url);
  4197. getmysql(req, res, "selectPostilByUid", json["uid"]);
  4198. });
  4199. //查看评测
  4200. router.route("/getTestWorkShare").all((req, res, next) => {
  4201. var json = queryString(req.url);
  4202. getmysql(req, res, "getTestWorkShare", json["id"]);
  4203. });
  4204. //查看评测
  4205. router.route("/getTestWorkShareCopy").all((req, res, next) => {
  4206. var json = queryString(req.url);
  4207. getmysql(req, res, "getTestWorkShareCopy", json["id"], json["tea"]);
  4208. });
  4209. //查看fileid
  4210. router.route("/selectFileId").all((req, res, next) => {
  4211. var json = queryString(req.url);
  4212. getmysql(req, res, "selectFileId", json["oid"]);
  4213. });
  4214. //查看fileid
  4215. router.route("/selectAiFileId").all((req, res, next) => {
  4216. var json = queryString(req.url);
  4217. getmysql(req, res, "selectAiFileId", json["oid"]);
  4218. });
  4219. //查看fileid
  4220. router.route("/selectKnowFileid").all((req, res, next) => {
  4221. var json = queryString(req.url);
  4222. getmysql(req, res, "selectKnowFileid", json["oid"], json["sta"]);
  4223. });
  4224. //查看课程
  4225. router.route("/select_synergy").all((req, res, next) => {
  4226. var json = queryString(req.url);
  4227. getmysql(req, res, "select_synergy", json["cid"]);
  4228. });
  4229. //查看课程
  4230. router.route("/select_student_course_detail").all((req, res, next) => {
  4231. //学生
  4232. var json = queryString(req.url);
  4233. getmysql(req, res, "select_student_course_detail", json["cid"]);
  4234. });
  4235. //查看课程
  4236. router.route("/select_student_course_detail2").all((req, res, next) => {
  4237. //学生
  4238. var json = queryString(req.url);
  4239. getmysql(req, res, "select_student_course_detail2", json["cid"]);
  4240. });
  4241. //查看课程
  4242. router.route("/getExportScourse").all((req, res, next) => {
  4243. //学生
  4244. var json = queryString(req.url);
  4245. getmysql(req, res, "getExportScourse", json["cid"]);
  4246. });
  4247. //模糊查找课程
  4248. // router.route('/searchCourse').all((req, res, next) => {
  4249. // var json = queryString(req.url);
  4250. // getmysql(req, res, "searchCourse", json['cu'], json['cn'], json['page'], 10);
  4251. // });
  4252. //创建调查问卷
  4253. router.route("/addAsk").all((req, res, next) => {
  4254. postmysql(req, res, "insert_ask");
  4255. });
  4256. //学生提交问卷
  4257. router.route("/addAskList").all((req, res, next) => {
  4258. postmysql(req, res, "insert_askList");
  4259. });
  4260. //根据课程id阶段id获取已提交的问卷
  4261. router.route("/getAskListByCidStage").all((req, res, next) => {
  4262. var json = queryString(req.url);
  4263. getmysql(
  4264. req,
  4265. res,
  4266. "getAskListByCidStage",
  4267. json["cid"],
  4268. json["stage"],
  4269. json["task"]
  4270. );
  4271. });
  4272. //获取调查问卷
  4273. router.route("/getAsk").all((req, res, next) => {
  4274. var json = queryString(req.url);
  4275. getmysql(req, res, "select_ask", json["uid"], json["page"], 10);
  4276. });
  4277. //删除问卷
  4278. router.route("/deleteAsk").all((req, res, next) => {
  4279. postmysql(req, res, "deleteAsk");
  4280. });
  4281. //问卷调查数据统计
  4282. router.route("/getAskListByAskid").all((req, res, next) => {
  4283. var json = queryString(req.url);
  4284. getmysql(req, res, "select_askListByAskid", json["aid"]);
  4285. });
  4286. //删除学生提交问卷
  4287. router.route("/deleteAskList").all((req, res, next) => {
  4288. postmysql(req, res, "update_askList_delete");
  4289. });
  4290. //根据id获取调查问卷
  4291. router.route("/getAskList").all((req, res, next) => {
  4292. var json = queryString(req.url);
  4293. getmysql(req, res, "select_askList", json["uid"], json["page"], 10);
  4294. });
  4295. //查看便签列表
  4296. router.route("/selectNote").all((req, res, next) => {
  4297. var json = queryString(req.url);
  4298. getmysql(req, res, "selectNote", json["uid"]);
  4299. });
  4300. //新增便签列表 修1
  4301. router.route("/insertNote").get((req, res, next) => {
  4302. var json = queryString(req.url);
  4303. getmysql2(req, res, "insertNote", json["uid"], json["c"]);
  4304. });
  4305. //根据便签id修改便签内容 修1
  4306. router.route("/updateNote").get((req, res, next) => {
  4307. var json = queryString(req.url);
  4308. getmysql2(req, res, "updateNote", json["nid"], json["c"]);
  4309. });
  4310. //删除1便签
  4311. router.route("/deleteNote").all((req, res, next) => {
  4312. var json = queryString(req.url);
  4313. getmysql2(req, res, "deleteNote", json["nid"]);
  4314. });
  4315. //查询便签
  4316. router.route("/selectNoteContent").all((req, res, next) => {
  4317. var json = queryString(req.url);
  4318. getmysql(req, res, "selectNoteContent", json["cn"]);
  4319. });
  4320. //修改用户信息
  4321. router.route("/updateUserByEdu").all((req, res, next) => {
  4322. postmysql(req, res, "updateUserByEdu");
  4323. });
  4324. //修改用户信息
  4325. router.route("/updateUserByEdu1").all((req, res, next) => {
  4326. postmysql(req, res, "updateUserByEdu1");
  4327. });
  4328. //修改用户信息
  4329. router.route("/updateUserByEduOid").all((req, res, next) => {
  4330. postmysql(req, res, "updateUserByEduOid");
  4331. });
  4332. //修改学生信息
  4333. router.route("/updateStudentInfo").all((req, res, next) => {
  4334. postmysql(req, res, "updateStudentInfo");
  4335. });
  4336. //教师端data修改pbl用户信息
  4337. router.route("/updatePblMessage").all((req, res, next) => {
  4338. postmysql2(req, res, "updatePblMessage");
  4339. });
  4340. //登录次数
  4341. router.route("/addLoginOperation").all((req, res, next) => {
  4342. postmysql2(req, res, "addLoginOperation");
  4343. });
  4344. //当日登录时间
  4345. router.route("/addOperationTime").all((req, res, next) => {
  4346. postmysql2(req, res, "addOperationTime");
  4347. });
  4348. //课程学习时间
  4349. router.route("/addOperationTime2").all((req, res, next) => {
  4350. postmysql(req, res, "addOperationTime");
  4351. });
  4352. //当日登录时间
  4353. router.route("/addOperationTimeT").all((req, res, next) => {
  4354. postmysql2(req, res, "addOperationTime2");
  4355. });
  4356. //课程学习时间
  4357. router.route("/addOperationTimeT2").all((req, res, next) => {
  4358. postmysql(req, res, "addOperationTime2");
  4359. });
  4360. //记录用户协同建构操作
  4361. router.route("/add_OperationCSCL").all((req, res, next) => {
  4362. postmysql2(req, res, "add_OperationCSCL");
  4363. });
  4364. //获取所有分组协同数据
  4365. router.route("/select_CSCLDataByID").all((req, res, next) => {
  4366. postmysql2(req, res, "select_CSCLDataByID");
  4367. });
  4368. //获取项目所有的分组所有的人操作数据的总数和时间
  4369. router.route("/select_CSCLDataCount").all((req, res, next) => {
  4370. postmysql2(req, res, "select_CSCLDataCount");
  4371. });
  4372. //获取用户在某个分组的操作日志
  4373. router.route("/select_CSCLDataByUserIdID").all((req, res, next) => {
  4374. postmysql2(req, res, "select_CSCLDataByUserIdID");
  4375. });
  4376. router.route("/updatePblMessage2").all((req, res, next) => {
  4377. postmysql(req, res, "updatePblMessage");
  4378. });
  4379. router.route("/updateUserInfoText").all((req, res, next) => {
  4380. postmysql(req, res, "updateUserInfoText");
  4381. });
  4382. //修改幼儿园评价个人信息
  4383. router.route("/updateStudentInfoText").all((req, res, next) => {
  4384. postmysql(req, res, "updateStudentInfoText");
  4385. });
  4386. router.route("/updateRaceUser").all((req, res, next) => {
  4387. postmysql(req, res, "updateRaceUser");
  4388. });
  4389. //查询用户信息
  4390. router.route("/selectUser").all((req, res, next) => {
  4391. var json = queryString(req.url);
  4392. // getmysql(req, res, "selectUser", json["userid"]);
  4393. // var json = queryString(req.url);
  4394. // // 只有.cn域名才需要判断session,.hk和.com直接查询
  4395. console.log(req.headers.origin);
  4396. if (req.headers.origin && req.headers.origin.includes(".cn")) {
  4397. if (req.session && req.session.userId) {
  4398. if (req.session.userId == json["userid"]) {
  4399. getmysql(req, res, "selectUser", json["userid"]);
  4400. } else {
  4401. // 不匹配则返回空数组
  4402. res.end(JSON.stringify([]));
  4403. }
  4404. } else {
  4405. res.end(JSON.stringify([]));
  4406. }
  4407. } else if(req.headers.origin){
  4408. // .hk和.com域名直接查询,不判断session
  4409. getmysql(req, res, "selectUser", json["userid"]);
  4410. } else {
  4411. if (req.session && req.session.userId) {
  4412. if (req.session.userId == json["userid"]) {
  4413. getmysql(req, res, "selectUser", json["userid"]);
  4414. } else {
  4415. // 不匹配则返回空数组
  4416. res.end(JSON.stringify([]));
  4417. }
  4418. } else {
  4419. res.end(JSON.stringify([]));
  4420. }
  4421. }
  4422. });
  4423. //查询用户信息
  4424. router.route("/selectUser2").all((req, res, next) => {
  4425. var json = queryString(req.url);
  4426. // 只有.cn域名才需要判断session,.hk和.com直接查询
  4427. if (req.headers.origin && req.headers.origin.includes(".cn")) {
  4428. if (req.session && req.session.userId) {
  4429. if (req.session.userId == json["userid"]) {
  4430. getmysql(req, res, "selectUser", json["userid"]);
  4431. } else {
  4432. // 不匹配则返回空数组
  4433. res.end(JSON.stringify([]));
  4434. }
  4435. } else {
  4436. res.end(JSON.stringify([]));
  4437. }
  4438. } else if(req.headers.origin){
  4439. // .hk和.com域名直接查询,不判断session
  4440. getmysql(req, res, "selectUser", json["userid"]);
  4441. } else {
  4442. if (req.session && req.session.userId) {
  4443. if (req.session.userId == json["userid"]) {
  4444. getmysql(req, res, "selectUser", json["userid"]);
  4445. } else {
  4446. // 不匹配则返回空数组
  4447. res.end(JSON.stringify([]));
  4448. }
  4449. } else {
  4450. res.end(JSON.stringify([]));
  4451. }
  4452. }
  4453. });
  4454. //查询用户信息
  4455. router.route("/selectUser3").all((req, res, next) => {
  4456. var json = queryString(req.url);
  4457. getmysql(req, res, "selectUser", json["userid"]);
  4458. });
  4459. //查询用户信息
  4460. router.route("/selectUserSzdjg").all((req, res, next) => {
  4461. var json = queryString(req.url);
  4462. getmysql(req, res, "selectUserSzdjg", json["username"]);
  4463. });
  4464. //新增英语写作批改 修1
  4465. router.route("/addEngC").get((req, res, next) => {
  4466. var json = queryString(req.url);
  4467. getmysql2(req, res, "insertEngCorrect", json["cid"], json["s"], json["t"], json["tool"], json["wid"], json["c"], json["w"]);
  4468. });
  4469. //查询英语写作批改
  4470. router.route("/selectEngC").all((req, res, next) => {
  4471. var json = queryString(req.url);
  4472. getmysql(req, res, "selectEngCorrect", json["workid"]);
  4473. });
  4474. //查询英语写作作业
  4475. router.route("/selectEngWork").all((req, res, next) => {
  4476. var json = queryString(req.url);
  4477. getmysql(req, res, "selectEngWork", json["wid"]);
  4478. });
  4479. //新增或修改英语写作评价 修1
  4480. router.route("/addEngEva").get((req, res, next) => {
  4481. var json = queryString(req.url);
  4482. getmysql2(req, res, "addEngEva", json["id"], json["aic"], json["tc"]);
  4483. });
  4484. //查询分类及所有子分类
  4485. router.route("/selectAllType").all((req, res, next) => {
  4486. var json = queryString(req.url);
  4487. getmysql(req, res, "selectAllType", json["org"], json["oid"]);
  4488. });
  4489. //查询分类及所有子分类 stand
  4490. router.route("/selectAllTypeStand").all((req, res, next) => {
  4491. var json = queryString(req.url);
  4492. getmysql(req, res, "selectAllTypeStand", json["org"], json["oid"], json["stand"]);
  4493. });
  4494. //查询分类及所有子分类
  4495. router.route("/selectAllTrainType").all((req, res, next) => {
  4496. var json = queryString(req.url);
  4497. getmysql(req, res, "selectAllTrainType", json["org"], json["oid"]);
  4498. });
  4499. //查询分类及所有子分类
  4500. router.route("/selectAllTypeS").all((req, res, next) => {
  4501. var json = queryString(req.url);
  4502. getmysql(req, res, "selectAllTypeS", json["org"], json["oid"]);
  4503. });
  4504. //查询分类及所有子分类
  4505. router.route("/selectAllTypeT").all((req, res, next) => {
  4506. var json = queryString(req.url);
  4507. getmysql(req, res, "selectAllTypeT", json["org"], json["oid"]);
  4508. });
  4509. //查询分类及子分类
  4510. router.route("/selectType").all((req, res, next) => {
  4511. var json = queryString(req.url);
  4512. getmysql(req, res, "selectType");
  4513. });
  4514. //查询分类及子分类
  4515. router.route("/selectStudentType").all((req, res, next) => {
  4516. var json = queryString(req.url);
  4517. getmysql(req, res, "selectStudentType");
  4518. });
  4519. //查询赛事分类及子分类
  4520. router.route("/selectMatType").all((req, res, next) => {
  4521. var json = queryString(req.url);
  4522. getmysql(req, res, "selectMatType");
  4523. });
  4524. //查询赛事分类及子分类
  4525. router.route("/selectRaceNum").all((req, res, next) => {
  4526. var json = queryString(req.url);
  4527. getmysql(req, res, "selectRaceNum", json["oid"]);
  4528. });
  4529. //根据学校查询分类
  4530. router.route("/selectPtype").all((req, res, next) => {
  4531. var json = queryString(req.url);
  4532. getmysql(req, res, "selectPtype", json["page"], 10);
  4533. });
  4534. //根据学校查询学生项目分类
  4535. router.route("/selectSPtype").all((req, res, next) => {
  4536. var json = queryString(req.url);
  4537. getmysql(req, res, "selectSPtype", json["page"], 10);
  4538. });
  4539. //根据学校查询分类1
  4540. router.route("/selectPtype1").all((req, res, next) => {
  4541. var json = queryString(req.url);
  4542. getmysql(req, res, "selectPtype1", json["oid"], json["page"], 10);
  4543. });
  4544. //添加分类 修1
  4545. router.route("/addPtype").get((req, res, next) => {
  4546. var json = queryString(req.url);
  4547. getmysql2(req, res, "addPtype", json["n"], json["uid"], json["oid"]);
  4548. });
  4549. //修改分类 修1
  4550. router.route("/updatePtype").get((req, res, next) => {
  4551. var json = queryString(req.url);
  4552. getmysql2(req, res, "updatePtype", json["n"], json["tid"]);
  4553. });
  4554. //修改学生项目分类 修1
  4555. router.route("/updateSPtype").get((req, res, next) => {
  4556. var json = queryString(req.url);
  4557. getmysql2(req, res, "updateSPtype", json["n"], json["tid"]);
  4558. });
  4559. //删除1分类
  4560. router.route("/deletePtype").all((req, res, next) => {
  4561. var json = queryString(req.url);
  4562. getmysql2(req, res, "deletePtype", json["tid"]);
  4563. });
  4564. //删除1学生项目分类
  4565. router.route("/deleteSPtype").all((req, res, next) => {
  4566. var json = queryString(req.url);
  4567. getmysql2(req, res, "deleteSPtype", json["tid"]);
  4568. });
  4569. //查询子分类列表
  4570. router.route("/selectStype").all((req, res, next) => {
  4571. var json = queryString(req.url);
  4572. getmysql(req, res, "selectStype", json["pid"], json["oid"], json["page"], 10);
  4573. });
  4574. //查询学生项目子分类列表
  4575. router.route("/selectSStype").all((req, res, next) => {
  4576. var json = queryString(req.url);
  4577. getmysql(
  4578. req,
  4579. res,
  4580. "selectSStype",
  4581. json["pid"],
  4582. json["oid"],
  4583. json["page"],
  4584. 10
  4585. );
  4586. });
  4587. //添加子分类 修1
  4588. router.route("/addStype").get((req, res, next) => {
  4589. var json = queryString(req.url);
  4590. getmysql2(
  4591. req,
  4592. res,
  4593. "addStype",
  4594. json["pid"],
  4595. json["n"],
  4596. json["uid"],
  4597. json["oid"]
  4598. );
  4599. });
  4600. //添加学生项目子分类 修1
  4601. router.route("/addSStype").get((req, res, next) => {
  4602. var json = queryString(req.url);
  4603. getmysql2(
  4604. req,
  4605. res,
  4606. "addSStype",
  4607. json["pid"],
  4608. json["n"],
  4609. json["uid"],
  4610. json["oid"]
  4611. );
  4612. });
  4613. //根据学校查询工作分类
  4614. router.route("/selectStudioPtype").all((req, res, next) => {
  4615. var json = queryString(req.url);
  4616. getmysql(req, res, "selectStudioPtype", json["page"], 10);
  4617. });
  4618. //查询工作室项目子分类列表
  4619. router.route("/selectStudioStype").all((req, res, next) => {
  4620. var json = queryString(req.url);
  4621. getmysql(
  4622. req,
  4623. res,
  4624. "selectStudioStype",
  4625. json["pid"],
  4626. json["oid"],
  4627. json["page"],
  4628. 10
  4629. );
  4630. });
  4631. //添加工作室项目子分类 修1
  4632. router.route("/addStudioStype").get((req, res, next) => {
  4633. var json = queryString(req.url);
  4634. getmysql2(
  4635. req,
  4636. res,
  4637. "addStudioStype",
  4638. json["pid"],
  4639. json["n"],
  4640. json["uid"],
  4641. json["oid"]
  4642. );
  4643. });
  4644. //修改工作项目分类 修1
  4645. router.route("/updateStudioPtype").get((req, res, next) => {
  4646. var json = queryString(req.url);
  4647. getmysql2(req, res, "updateStudioPtype", json["n"], json["tid"]);
  4648. });
  4649. //删除1工作项目分类
  4650. router.route("/deleteStudioPtype").all((req, res, next) => {
  4651. var json = queryString(req.url);
  4652. getmysql2(req, res, "deleteStudioPtype", json["tid"]);
  4653. });
  4654. //查看本校所有学生(分页)
  4655. router.route("/selectAllStudent").all((req, res, next) => {
  4656. var json = queryString(req.url);
  4657. getmysql(
  4658. req,
  4659. res,
  4660. "selectAllStudent",
  4661. json["oid"],
  4662. json["cn"],
  4663. json["cid"],
  4664. json["page"],
  4665. 10
  4666. );
  4667. });
  4668. //查看本校所有学生(分页)teacher
  4669. router.route("/selectAllStudentTeacher").all((req, res, next) => {
  4670. var json = queryString(req.url);
  4671. getmysql(
  4672. req,
  4673. res,
  4674. "selectAllStudentTeacher",
  4675. json["oid"],
  4676. json["cn"],
  4677. json["cid"],
  4678. json["userid"],
  4679. json["page"],
  4680. 10
  4681. );
  4682. });
  4683. //根据学校id查询子分类
  4684. router.route("/selectTypeByOid").all((req, res, next) => {
  4685. var json = queryString(req.url);
  4686. getmysql(req, res, "selectTypeByOid", json["oid"]);
  4687. });
  4688. //根据学校id查询子分类
  4689. router.route("/selectTypeByOrg").all((req, res, next) => {
  4690. var json = queryString(req.url);
  4691. getmysql(req, res, "selectTypeByOid", json["oid"]);
  4692. });
  4693. //根据组织id查询子分类
  4694. router.route("/selectStudentTypeByOid").all((req, res, next) => {
  4695. var json = queryString(req.url);
  4696. getmysql(req, res, "selectStudentTypeByOid", json["oid"]);
  4697. });
  4698. //更加父id查询分类
  4699. router.route("/selectTypeByPid").all((req, res, next) => {
  4700. var json = queryString(req.url);
  4701. getmysql(req, res, "selectTypeByPid", json["pid"]);
  4702. });
  4703. //点击工具计数 修1
  4704. router.route("/insertToolsCount").get((req, res, next) => {
  4705. var json = queryString(req.url);
  4706. getmysql2(
  4707. req,
  4708. res,
  4709. "insertToolsCount",
  4710. json["cid"],
  4711. json["chid"],
  4712. json["uid"],
  4713. json["tid"],
  4714. json["count"]
  4715. );
  4716. });
  4717. //修改工具次数 修1
  4718. router.route("/updateToolsCount").get((req, res, next) => {
  4719. var json = queryString(req.url);
  4720. getmysql2(
  4721. req,
  4722. res,
  4723. "updateToolsCount",
  4724. json["cid"],
  4725. json["chid"],
  4726. json["uid"],
  4727. json["tid"],
  4728. json["count"]
  4729. );
  4730. });
  4731. //查询工具次数
  4732. router.route("/selectToolsCount").all((req, res, next) => {
  4733. var json = queryString(req.url);
  4734. getmysql(
  4735. req,
  4736. res,
  4737. "selectToolsCount",
  4738. json["cid"],
  4739. json["chid"],
  4740. json["uid"]
  4741. );
  4742. });
  4743. //导出学生
  4744. router.route("/selectUserBySchool").all((req, res, next) => {
  4745. var json = queryString(req.url);
  4746. getmysql(req, res, "selectUserBySchool", json["oid"]);
  4747. });
  4748. //上传学生作业 修1
  4749. router.route("/insertSWork").get((req, res, next) => {
  4750. var json = queryString(req.url);
  4751. getmysql2(
  4752. req,
  4753. res,
  4754. "insertSWork",
  4755. json["uid"],
  4756. json["cid"],
  4757. json["p"],
  4758. json["t"],
  4759. json["upload"]
  4760. );
  4761. });
  4762. //查询学生作业
  4763. router.route("/selectSWork").all((req, res, next) => {
  4764. var json = queryString(req.url);
  4765. getmysql(
  4766. req,
  4767. res,
  4768. "selectSWork",
  4769. json["uid"],
  4770. json["cid"],
  4771. json["p"],
  4772. json["type"]
  4773. );
  4774. });
  4775. //课程进展数据
  4776. router.route("/selectCase").all((req, res, next) => {
  4777. var json = queryString(req.url);
  4778. getmysql(req, res, "selectCase", json["org"]);
  4779. });
  4780. //课程进展数据
  4781. router.route("/selectCase2").all((req, res, next) => {
  4782. var json = queryString(req.url);
  4783. getmysql(req, res, "selectCase2", json["org"]);
  4784. });
  4785. //课程进展数据
  4786. router.route("/selectCase3").all((req, res, next) => {
  4787. var json = queryString(req.url);
  4788. getmysql(
  4789. req,
  4790. res,
  4791. "selectCase3",
  4792. json["org"],
  4793. json["oid"],
  4794. json["page"],
  4795. json["pageSize"]
  4796. );
  4797. });
  4798. //课程进展数据
  4799. router.route("/selectCase4").all((req, res, next) => {
  4800. var json = queryString(req.url);
  4801. getmysql(
  4802. req,
  4803. res,
  4804. "selectCase4",
  4805. json["org"],
  4806. json["oid"],
  4807. json["typeA"],
  4808. json["typeB"],
  4809. json["typeC"],
  4810. json["typeD"],
  4811. json["typeE"],
  4812. json["page"],
  4813. json["pageSize"]
  4814. );
  4815. });
  4816. //项目进展数据
  4817. router.route("/selectCaseS").all((req, res, next) => {
  4818. var json = queryString(req.url);
  4819. getmysql(req, res, "selectCaseS", json["org"], json["oid"]);
  4820. });
  4821. //项目进展数据
  4822. router.route("/selectCaseS2").all((req, res, next) => {
  4823. var json = queryString(req.url);
  4824. getmysql(
  4825. req,
  4826. res,
  4827. "selectCaseS2",
  4828. json["org"],
  4829. json["oid"],
  4830. json["type"],
  4831. json["page"],
  4832. json["pageSize"]
  4833. );
  4834. });
  4835. //查询赛事项目列表
  4836. router.route("/selectRaceList").all((req, res, next) => {
  4837. var json = queryString(req.url);
  4838. getmysql(req, res, "selectRaceList", json["uid"], json["t"]);
  4839. });
  4840. //修改赛事状态 修1
  4841. router.route("/updateRaceState").get((req, res, next) => {
  4842. var json = queryString(req.url);
  4843. getmysql2(req, res, "updateRaceState", json["id"], json["s"]);
  4844. });
  4845. //查询赛事项目详情
  4846. router.route("/selectRaceDetail").all((req, res, next) => {
  4847. var json = queryString(req.url);
  4848. getmysql(req, res, "selectRaceDetail", json["id"]);
  4849. });
  4850. //race 查询学校
  4851. router.route("/getSchool").all((req, res, next) => {
  4852. var json = queryString(req.url);
  4853. getmysql(req, res, "getSchool", json["n"]);
  4854. });
  4855. //查询我的学习报告
  4856. router.route("/selectMrEva").all((req, res, next) => {
  4857. var json = queryString(req.url);
  4858. getmysql(req, res, "selectMrEva", json["uid"], json["oid"], json["cid"]);
  4859. });
  4860. //查询行为数据库
  4861. router.route("/selectModelList").all((req, res, next) => {
  4862. var json = queryString(req.url);
  4863. getmysql(req, res, "selectModelList", json["cn"], json["oid"]);
  4864. });
  4865. //lsc
  4866. //admin 查询学校
  4867. router.route("/getSchoolAdmin").all((req, res, next) => {
  4868. var json = queryString(req.url);
  4869. getmysql(req, res, "select_school", json["page"], 10);
  4870. });
  4871. //admin 添加学校
  4872. router.route("/addSchoolAdmin").all((req, res, next) => {
  4873. postmysql(req, res, "add_school");
  4874. });
  4875. //组织添加学校
  4876. router.route("/addSchoolOrg").all((req, res, next) => {
  4877. postmysql(req, res, "addSchoolOrg");
  4878. });
  4879. //教师端组织添加学校
  4880. router.route("/insertSchoolByOrg").all((req, res, next) => {
  4881. postmysql(req, res, "insertSchoolByOrg");
  4882. });
  4883. //admin 删除学校
  4884. router.route("/deleteSchoolAdmin").all((req, res, next) => {
  4885. postmysql(req, res, "delete_school");
  4886. });
  4887. //admin 查询班级
  4888. router.route("/getClassAdmin").all((req, res, next) => {
  4889. var json = queryString(req.url);
  4890. getmysql(req, res, "select_classAdmin", json["cn"], json["page"], 10);
  4891. });
  4892. //查询班级
  4893. router.route("/getClassById").all((req, res, next) => {
  4894. var json = queryString(req.url);
  4895. getmysql(req, res, "getClassById", json["id"]);
  4896. });
  4897. //查询课程包
  4898. router.route("/getCopyCourseName").all((req, res, next) => {
  4899. var json = queryString(req.url);
  4900. getmysql(req, res, "getCopyCourseName", json["id"]);
  4901. });
  4902. //查询ai权限
  4903. router.route("/getAIJ").all((req, res, next) => {
  4904. getmysql(req, res, "getAIJ");
  4905. });
  4906. //admin 添加班级
  4907. router.route("/addClassAdmin").all((req, res, next) => {
  4908. postmysql(req, res, "add_classAdmin");
  4909. });
  4910. //admin 查询班级是否重复
  4911. router.route("/getClassRepeat").all((req, res, next) => {
  4912. var json = queryString(req.url);
  4913. getmysql(req, res, "select_classRepeatAdmin", json["n"], json["oid"]);
  4914. });
  4915. //查询未在此班级的学生
  4916. router.route("/getClassStudent").all((req, res, next) => {
  4917. var json = queryString(req.url);
  4918. getmysql(
  4919. req,
  4920. res,
  4921. "getClassStudent",
  4922. json["cid"],
  4923. json["oid"],
  4924. json["cn"],
  4925. json["page"],
  4926. json["num"]
  4927. );
  4928. });
  4929. //查询未在此教研室的老师
  4930. router.route("/getClassTeacher").all((req, res, next) => {
  4931. var json = queryString(req.url);
  4932. getmysql(
  4933. req,
  4934. res,
  4935. "getClassTeacher",
  4936. json["cid"],
  4937. json["oid"],
  4938. json["cn"],
  4939. json["page"],
  4940. json["num"]
  4941. );
  4942. });
  4943. //查询未在此年级的班级
  4944. router.route("/getGradeClass").all((req, res, next) => {
  4945. var json = queryString(req.url);
  4946. getmysql(
  4947. req,
  4948. res,
  4949. "getGradeClass",
  4950. json["cid"],
  4951. json["oid"],
  4952. json["cn"],
  4953. json["page"],
  4954. json["num"]
  4955. );
  4956. });
  4957. //添加学生到班级
  4958. router.route("/addClassStudent").all((req, res, next) => {
  4959. let cid = req.body[0].cid;
  4960. let student = JSON.parse(decodeURIComponent(req.body[0].student));
  4961. for (let i = 0; i < student.length; i++) {
  4962. let _userdata = [student[i]];
  4963. _userdata.unshift(_mysqlLabor[0], _mysqlLabor[1], "selectUser");
  4964. mysql.usselect(_userdata, function(ret) {
  4965. let classid = ret[0][0].classid;
  4966. if (!classid || classid.indexOf(cid) == -1) {
  4967. classid = classid ? classid.split(",") : [];
  4968. classid.push(cid);
  4969. let _userdata2 = [student[i], classid.join(",")];
  4970. _userdata2.unshift(
  4971. _mysqlLabor[0],
  4972. _mysqlLabor[1],
  4973. "updateStudentClass"
  4974. );
  4975. mysql.usselect(_userdata2, function(ret) {
  4976. if (i == student.length - 1) {
  4977. res.end(JSON.stringify({ success: 1 }));
  4978. }
  4979. });
  4980. }
  4981. });
  4982. }
  4983. });
  4984. //添加老师到教研室
  4985. router.route("/addClassTeacher").all((req, res, next) => {
  4986. let cid = req.body[0].cid;
  4987. let student = JSON.parse(decodeURIComponent(req.body[0].student));
  4988. for (let i = 0; i < student.length; i++) {
  4989. let _userdata = [student[i]];
  4990. _userdata.unshift(_mysqlLabor[0], _mysqlLabor[1], "selectUser");
  4991. mysql.usselect(_userdata, function(ret) {
  4992. let classid = ret[0][0].cclassid;
  4993. if (!classid || classid.indexOf(cid) == -1) {
  4994. classid = classid ? classid.split(",") : [];
  4995. classid.push(cid);
  4996. let _userdata2 = [student[i], classid.join(",")];
  4997. _userdata2.unshift(
  4998. _mysqlLabor[0],
  4999. _mysqlLabor[1],
  5000. "updateTeacherClass"
  5001. );
  5002. mysql.usselect(_userdata2, function(ret) {
  5003. if (i == student.length - 1) {
  5004. res.end(JSON.stringify({ success: 1 }));
  5005. }
  5006. });
  5007. }
  5008. });
  5009. }
  5010. });
  5011. //添加班级到年级
  5012. router.route("/addGradeClass").all((req, res, next) => {
  5013. let cid = req.body[0].cid;
  5014. let student = JSON.parse(decodeURIComponent(req.body[0].student));
  5015. for (let i = 0; i < student.length; i++) {
  5016. let _userdata = [cid, student[i]];
  5017. _userdata.unshift(_mysqlLabor[0], _mysqlLabor[1], "addGradeClass");
  5018. mysql.usselect(_userdata, function(ret) {
  5019. if (i == student.length - 1) {
  5020. res.end(JSON.stringify({ success: 1 }));
  5021. }
  5022. });
  5023. }
  5024. });
  5025. //移除学生此班级
  5026. router.route("/deleteClassStudent").all((req, res, next) => {
  5027. let cid = req.body[0].cid;
  5028. let student = req.body[0].uid;
  5029. let _userdata = [student];
  5030. _userdata.unshift(_mysqlLabor[0], _mysqlLabor[1], "selectUser");
  5031. mysql.usselect(_userdata, function(ret) {
  5032. let classid = ret[0][0].classid;
  5033. if (classid.indexOf(cid) != -1) {
  5034. classid = classid.split(",");
  5035. classid.splice(classid.indexOf(cid), 1);
  5036. let _userdata2 = [student, classid.join(",")];
  5037. _userdata2.unshift(_mysqlLabor[0], _mysqlLabor[1], "updateStudentClass");
  5038. mysql.usselect(_userdata2, function(ret) {
  5039. res.end(JSON.stringify({ success: 1 }));
  5040. });
  5041. }
  5042. });
  5043. });
  5044. //移除学生此班级
  5045. router.route("/deleteClassTeacher").all((req, res, next) => {
  5046. let cid = req.body[0].cid;
  5047. let student = req.body[0].uid;
  5048. let _userdata = [student];
  5049. _userdata.unshift(_mysqlLabor[0], _mysqlLabor[1], "selectUser");
  5050. mysql.usselect(_userdata, function(ret) {
  5051. let classid = ret[0][0].cclassid;
  5052. if (classid.indexOf(cid) != -1) {
  5053. classid = classid.split(",");
  5054. classid.splice(classid.indexOf(cid), 1);
  5055. let _userdata2 = [student, classid.join(",")];
  5056. _userdata2.unshift(_mysqlLabor[0], _mysqlLabor[1], "updateTeacherClass");
  5057. mysql.usselect(_userdata2, function(ret) {
  5058. res.end(JSON.stringify({ success: 1 }));
  5059. });
  5060. }
  5061. });
  5062. });
  5063. //移除班级
  5064. router.route("/deleteGradeClass").all((req, res, next) => {
  5065. let cid = req.body[0].cid;
  5066. let student = req.body[0].uid;
  5067. let _userdata = ['', student];
  5068. _userdata.unshift(_mysqlLabor[0], _mysqlLabor[1], "addGradeClass");
  5069. mysql.usselect(_userdata, function(ret) {
  5070. res.end(JSON.stringify({ success: 1 }));
  5071. });
  5072. });
  5073. //admin 发布通知
  5074. router.route("/addNews").all((req, res, next) => {
  5075. postmysql(req, res, "add_news");
  5076. });
  5077. //admin 删除通知
  5078. router.route("/deleteNews").all((req, res, next) => {
  5079. postmysql(req, res, "delete_news");
  5080. });
  5081. //admin 添加banner
  5082. router.route("/addBanner").all((req, res, next) => {
  5083. postmysql(req, res, "add_banner");
  5084. });
  5085. //admin 添加banner
  5086. router.route("/deleteBanner").all((req, res, next) => {
  5087. postmysql(req, res, "delete_banner");
  5088. });
  5089. //admin 查询banner
  5090. router.route("/getBanner").all((req, res, next) => {
  5091. var json = queryString(req.url);
  5092. getmysql(req, res, "select_banner");
  5093. });
  5094. //根据学校查询banner
  5095. router.route("/selectBannerByOid").all((req, res, next) => {
  5096. var json = queryString(req.url);
  5097. getmysql(req, res, "selectBannerByOid", json["oid"]);
  5098. });
  5099. //admin 查询banner
  5100. router.route("/getBannerS").all((req, res, next) => {
  5101. var json = queryString(req.url);
  5102. getmysql(req, res, "getBannerS");
  5103. });
  5104. //根据学校查询banner
  5105. router.route("/selectBannerByOidS").all((req, res, next) => {
  5106. var json = queryString(req.url);
  5107. getmysql(req, res, "selectBannerByOidS", json["oid"]);
  5108. });
  5109. //admin 查询课程getSearchCourse
  5110. router.route("/getSearchCourse").all((req, res, next) => {
  5111. var json = queryString(req.url);
  5112. getmysql(req, res, "selectAll_courseSearch", json["t"]);
  5113. });
  5114. //根据学校查询课程
  5115. router.route("/getSearchCourseByoid").all((req, res, next) => {
  5116. var json = queryString(req.url);
  5117. getmysql(req, res, "selectAll_courseByOid", json["t"], json["oid"]);
  5118. });
  5119. //admin 查询所有课程专区
  5120. router.route("/getZone").all((req, res, next) => {
  5121. getmysql(req, res, "select_zone");
  5122. });
  5123. //admin 添加课程专区
  5124. router.route("/addZone").all((req, res, next) => {
  5125. postmysql(req, res, "insert_classZone");
  5126. });
  5127. //评审
  5128. router.route("/reviewCourse").all((req, res, next) => {
  5129. postmysql(req, res, "reviewCourse");
  5130. });
  5131. //查询评审
  5132. router.route("/getReview").all((req, res, next) => {
  5133. var json = queryString(req.url);
  5134. getmysql(req, res, "getReview", json["cid"]);
  5135. });
  5136. //查询所有课程专区下的课程
  5137. router.route("/getZoneClass").all((req, res, next) => {
  5138. var json = queryString(req.url);
  5139. getmysql(
  5140. req,
  5141. res,
  5142. "select_zoneClass",
  5143. json["bid"],
  5144. json["oid"],
  5145. json["page"],
  5146. 10
  5147. );
  5148. });
  5149. //查询所有课程专区下的课程
  5150. router.route("/getZoneClass").all((req, res, next) => {
  5151. var json = queryString(req.url);
  5152. getmysql(
  5153. req,
  5154. res,
  5155. "select_zoneClass",
  5156. json["bid"],
  5157. json["oid"],
  5158. json["page"],
  5159. 10
  5160. );
  5161. });
  5162. //查询所有课程专区下的课程
  5163. router.route("/getZoneClassStudent").all((req, res, next) => {
  5164. var json = queryString(req.url);
  5165. getmysql(
  5166. req,
  5167. res,
  5168. "select_zoneClass",
  5169. json["bid"],
  5170. json["oid"],
  5171. json["page"],
  5172. 20
  5173. );
  5174. });
  5175. //admin 后台查看专区下课程的数量
  5176. router.route("/getZoneClassNum").all((req, res, next) => {
  5177. var json = queryString(req.url);
  5178. getmysql(req, res, "select_zoneClassNum", json["bid"]);
  5179. });
  5180. //admin 后台添加课程专区时查看课程是否在此专区重复
  5181. router.route("/getZoneClassRepeat").all((req, res, next) => {
  5182. var json = queryString(req.url);
  5183. getmysql(req, res, "select_zoneClassRepeat", json["pid"], json["cid"]);
  5184. });
  5185. //把课程添加进专区
  5186. router.route("/addZoneCourse").all((req, res, next) => {
  5187. postmysql(req, res, "insert_app");
  5188. });
  5189. //admin 删除课程专区底下的课程
  5190. router.route("/deleteZoneCourse").all((req, res, next) => {
  5191. postmysql(req, res, "delete_app");
  5192. });
  5193. //admin 删除班级
  5194. router.route("/deleteZone").all((req, res, next) => {
  5195. postmysql(req, res, "delete_zone");
  5196. });
  5197. //admin 后台专区上移下移
  5198. router.route("/zoneRank").all((req, res, next) => {
  5199. postmysql(req, res, "update_classRank");
  5200. });
  5201. //admin 添加模板文档
  5202. router.route("/addTemplateAdmin").all((req, res, next) => {
  5203. postmysql(req, res, "add_template");
  5204. });
  5205. //admin 添加模板文档
  5206. router.route("/deleteTemplateAdmin").all((req, res, next) => {
  5207. postmysql(req, res, "delete_template");
  5208. });
  5209. //admin 查询模板文档
  5210. router.route("/getTemplateAdmin").all((req, res, next) => {
  5211. var json = queryString(req.url);
  5212. getmysql(req, res, "select_template", json["page"], 10);
  5213. });
  5214. //查询上传作业
  5215. router.route("/getCourseWorks").all((req, res, next) => {
  5216. var json = queryString(req.url); //cid 课程id,page 页数
  5217. getmysql(
  5218. req,
  5219. res,
  5220. "select_courseWorks",
  5221. json["cid"],
  5222. json["stage"],
  5223. json["task"],
  5224. json["page"],
  5225. 10
  5226. );
  5227. });
  5228. //查询上传作业
  5229. router.route("/getCourseWorks2").all((req, res, next) => {
  5230. var json = queryString(req.url); //cid 课程id,page 页数
  5231. getmysql(
  5232. req,
  5233. res,
  5234. "select_courseWorks2",
  5235. json["cid"],
  5236. json["uname"],
  5237. json["stage"],
  5238. json["task"],
  5239. json["page"],
  5240. 10
  5241. );
  5242. });
  5243. //查询上传作业
  5244. router.route("/getCourseWorks3").all((req, res, next) => {
  5245. var json = queryString(req.url); //cid 课程id,page 页数
  5246. getmysql(
  5247. req,
  5248. res,
  5249. "select_courseWorks3",
  5250. json["cid"],
  5251. json["uname"],
  5252. json["stage"],
  5253. json["task"],
  5254. json["page"],
  5255. 10
  5256. );
  5257. });
  5258. //查询上传作业
  5259. router.route("/getCourseWorks3Copy").all((req, res, next) => {
  5260. var json = queryString(req.url); //cid 课程id,page 页数
  5261. getmysql(
  5262. req,
  5263. res,
  5264. "getCourseWorks3Copy",
  5265. json["cid"],
  5266. json["uname"],
  5267. json["stage"],
  5268. json["task"],
  5269. json["page"],
  5270. 10
  5271. );
  5272. });
  5273. //查询上传作业y
  5274. router.route("/getCourseWorks3Copy1").all((req, res, next) => {
  5275. var json = queryString(req.url); //cid 课程id,page 页数
  5276. getmysql(
  5277. req,
  5278. res,
  5279. "getCourseWorks3Copy1",
  5280. json["cid"],
  5281. json["uCla"],
  5282. json["uname"],
  5283. json["tck"],
  5284. json["stage"],
  5285. json["task"],
  5286. json["page"],
  5287. 10
  5288. );
  5289. });
  5290. //评价管理查看报告-学生上下切换功能
  5291. router.route("/getCourseWorksList").all((req, res, next) => {
  5292. var json = queryString(req.url); //cid 课程id
  5293. getmysql(
  5294. req,
  5295. res,
  5296. "getCourseWorksList",
  5297. json["cid"]
  5298. );
  5299. });
  5300. //评价管理查看报告筛选获取班级
  5301. router.route("/getCourseReportClassList").all((req, res, next) => {
  5302. var json = queryString(req.url); //cid 课程id
  5303. getmysql(
  5304. req,
  5305. res,
  5306. "getCourseReportClassList",
  5307. json["cid"]
  5308. );
  5309. });
  5310. //查询上传作业--加上筛选班级
  5311. router.route("/getCourseWorks5").all((req, res, next) => {
  5312. var json = queryString(req.url); //cid 课程id,page 页数
  5313. getmysql(
  5314. req,
  5315. res,
  5316. "select_courseWorks5",
  5317. json["cid"],
  5318. json["uname"],
  5319. json["choseClass"],
  5320. json["stage"],
  5321. json["task"],
  5322. json["page"],
  5323. 10
  5324. );
  5325. });
  5326. //查询上传作业--加上筛选班级
  5327. router.route("/getCourseStageWorks").all((req, res, next) => {
  5328. var json = queryString(req.url); //cid 课程id,page 页数
  5329. getmysql(
  5330. req,
  5331. res,
  5332. "getCourseStageWorks",
  5333. json["cid"],
  5334. json["uname"],
  5335. json["choseClass"],
  5336. json["stage"],
  5337. json["task"],
  5338. json["page"],
  5339. 10
  5340. );
  5341. });
  5342. //查询上传作业--加上筛选班级
  5343. router.route("/getCourseStageWorks2").all((req, res, next) => {
  5344. var json = queryString(req.url); //cid 课程id,page 页数
  5345. getmysql(
  5346. req,
  5347. res,
  5348. "getCourseStageWorks2",
  5349. json["cid"],
  5350. json["uname"],
  5351. json["choseClass"],
  5352. json["stage"],
  5353. json["task"]
  5354. );
  5355. });
  5356. //查询上传作业--加上筛选班级
  5357. router.route("/getCourseTaskWorks").all((req, res, next) => {
  5358. var json = queryString(req.url); //cid 课程id,page 页数
  5359. getmysql(
  5360. req,
  5361. res,
  5362. "getCourseTaskWorks",
  5363. json["cid"],
  5364. json["uname"],
  5365. json["choseClass"],
  5366. json["stage"],
  5367. json["task"],
  5368. json["page"],
  5369. 10
  5370. );
  5371. });
  5372. //查询上传作业--加上筛选班级
  5373. router.route("/getCourseTaskWorks2").all((req, res, next) => {
  5374. var json = queryString(req.url); //cid 课程id,page 页数
  5375. getmysql(
  5376. req,
  5377. res,
  5378. "getCourseTaskWorks2",
  5379. json["cid"],
  5380. json["uname"],
  5381. json["choseClass"],
  5382. json["stage"],
  5383. json["task"]
  5384. );
  5385. });
  5386. //查询所有学生上传作业--加上筛选班级
  5387. router.route("/getCourseWorks6").all((req, res, next) => {
  5388. var json = queryString(req.url); //cid 课程id,page 页数
  5389. getmysql(
  5390. req,
  5391. res,
  5392. "select_courseWorks6",
  5393. json["cid"],
  5394. json["uname"],
  5395. json['choseClass'],
  5396. json["stage"],
  5397. json["task"]
  5398. );
  5399. });
  5400. //查询所有学生上传作业
  5401. router.route("/getCourseWorks4").all((req, res, next) => {
  5402. var json = queryString(req.url); //cid 课程id,page 页数
  5403. getmysql(
  5404. req,
  5405. res,
  5406. "select_courseWorks4",
  5407. json["cid"],
  5408. json["uname"],
  5409. json["stage"],
  5410. json["task"]
  5411. );
  5412. });
  5413. //查询学生课程作业
  5414. router.route("/selectStudentCourseWorks").all((req, res, next) => {
  5415. var json = queryString(req.url); //cid 课程id,page 页数
  5416. getmysql(
  5417. req,
  5418. res,
  5419. "selectStudentCourseWorks",
  5420. json["uid"],
  5421. json["cid"],
  5422. json["stage"],
  5423. json["task"],
  5424. json["page"],
  5425. 10
  5426. );
  5427. });
  5428. //查询学生课程作业
  5429. router.route("/selectStudentCourseWorksTwo").all((req, res, next) => {
  5430. var json = queryString(req.url); //cid 课程id,page 页数
  5431. getmysql(
  5432. req,
  5433. res,
  5434. "selectStudentCourseWorksTwo",
  5435. json["uid"],
  5436. json["cname"],
  5437. json["uClass"],
  5438. json["page"],
  5439. 10
  5440. );
  5441. });
  5442. //查询学生课程作业
  5443. router.route("/selectStudentCourseWorksTwo2").all((req, res, next) => {
  5444. var json = queryString(req.url); //cid 课程id,page 页数
  5445. getmysql(
  5446. req,
  5447. res,
  5448. "selectStudentCourseWorksTwo2",
  5449. json["uid"],
  5450. json["cname"],
  5451. json["uClass"],
  5452. json["userid"],
  5453. json["page"],
  5454. 10
  5455. );
  5456. });
  5457. //查询报告数据
  5458. router.route("/getCourseWorksReport").all((req, res, next) => {
  5459. var json = queryString(req.url); //cid 课程id,page 页数
  5460. getmysql(req, res, "getCourseWorksReport", json["cid"]);
  5461. });
  5462. //查询报告数据y
  5463. router.route("/getCourseWorksReport1").all((req, res, next) => {
  5464. var json = queryString(req.url); //cid 课程id
  5465. getmysql(req, res, "getCourseWorksReport1", json["cid"]);
  5466. });
  5467. //查询报告数据--根据班级
  5468. router.route("/getCourseWorksReport2").all((req, res, next) => {
  5469. var json = queryString(req.url); //cid 课程id,page 页数
  5470. getmysql(req, res, "getCourseWorksReport2", json["cid"],json["choseClass"]);
  5471. });
  5472. //查询dyList
  5473. router.route("/getCourseWorksDyList").all((req, res, next) => {
  5474. var json = queryString(req.url); //cid 课程id,page 页数
  5475. getmysql(req, res, "getCourseWorksDyList", json["cid"]);
  5476. });
  5477. //查询多个课程报告数据
  5478. router.route("/getCourseWorksReportMore").all((req, res, next) => {
  5479. var json = queryString(req.url); //cid 课程id,page 页数
  5480. getmysql(req, res, "getCourseWorksReportMore", json["cid"]);
  5481. });
  5482. //查询学生课程报告数据
  5483. router.route("/getStudentCourseWorksReport").all((req, res, next) => {
  5484. var json = queryString(req.url); //cid 课程id,page 页数
  5485. getmysql(req, res, "getStudentCourseWorksReport", json["uid"]);
  5486. });
  5487. //admin 添加项目模板文档
  5488. router.route("/addCourseTemplateAdmin").all((req, res, next) => {
  5489. postmysql(req, res, "add_courseTemplate");
  5490. });
  5491. //admin 添加项目模板文档
  5492. router.route("/deleteCourseTemplateAdmin").all((req, res, next) => {
  5493. postmysql(req, res, "delete_courseTemplate");
  5494. });
  5495. //admin 查询项目模板文档
  5496. router.route("/getCourseTemplateAdmin").all((req, res, next) => {
  5497. var json = queryString(req.url);
  5498. getmysql(req, res, "select_courseTemplate", json["page"], 10);
  5499. });
  5500. //teacher 查询项目模板
  5501. router.route("/getCourseTemplateT").all((req, res, next) => {
  5502. var json = queryString(req.url);
  5503. getmysql(req, res, "select_courseTemplateT");
  5504. });
  5505. //teacher 查询项目模板
  5506. router.route("/getTrainCourseTemplateT").all((req, res, next) => {
  5507. var json = queryString(req.url);
  5508. getmysql(req, res, "getTrainCourseTemplateT");
  5509. });
  5510. //teacher 查询项目模板
  5511. router.route("/getCourseTemplateTByOid").all((req, res, next) => {
  5512. var json = queryString(req.url);
  5513. getmysql(req, res, "getCourseTemplateTByOid", json["oid"]);
  5514. });
  5515. //teacher 查询项目模板
  5516. router.route("/getTrainCourseTemplateTByOid").all((req, res, next) => {
  5517. var json = queryString(req.url);
  5518. getmysql(req, res, "getTrainCourseTemplateTByOid", json["oid"]);
  5519. });
  5520. //目标管理查询目标模板
  5521. router.route("/selectEvaTemplate").all((req, res, next) => {
  5522. var json = queryString(req.url);
  5523. getmysql(req, res, "select_evaTemplate", json["oid"]);
  5524. });
  5525. //目标管理新增目标模板 修1
  5526. router.route("/addEvaTemplate").get((req, res, next) => {
  5527. var json = queryString(req.url);
  5528. getmysql2(req, res, "add_evaTemplate", json["t"], json["c"], json["uid"], json["oid"]);
  5529. });
  5530. //后台管理 后缀管理 查询学校
  5531. router.route("/getAllSchoolSuffix").get((req, res, next) => {
  5532. var json = queryString(req.url);
  5533. getmysql2(req, res, "getAllSchoolSuffix", json["sname"], json["oname"], json["aname"],json["page"],json["num"]);
  5534. });
  5535. //后台管理 后缀管理 添加学校
  5536. router.route("/addSuffxSchool").all((req, res, next) => {
  5537. postmysql(req, res, "addSuffxSchool");
  5538. });
  5539. //后台管理 后缀管理 编辑学校
  5540. router.route("/exitSuffxSchool").all((req, res, next) => {
  5541. postmysql(req, res, "exitSuffxSchool");
  5542. });
  5543. //后台管理 后缀管理 删除学校
  5544. router.route("/delSuffxSchool").all((req, res, next) => {
  5545. postmysql(req, res, "delSuffxSchool");
  5546. });
  5547. //teacher 查询项目模板
  5548. router.route("/getCourseTemplateTs").all((req, res, next) => {
  5549. var json = queryString(req.url);
  5550. getmysql(req, res, "getCourseTemplateTs", json["oid"]);
  5551. });
  5552. //teacher 查询项目模板
  5553. router.route("/getCourseTemplateTStudio").all((req, res, next) => {
  5554. var json = queryString(req.url);
  5555. getmysql(req, res, "getCourseTemplateTStudio", json["oid"]);
  5556. });
  5557. //admin 查询课程
  5558. router.route("/getCourseAdmin").all((req, res, next) => {
  5559. var json = queryString(req.url);
  5560. getmysql(req, res, "select_courseAdmin", json["cn"], json["page"], 10);
  5561. });
  5562. //admin 查询模板文档
  5563. router.route("/deleteCourseAdmin").all((req, res, next) => {
  5564. postmysql(req, res, "delete_courseAdmin");
  5565. });
  5566. //设置分组
  5567. router.route("/setCourseGroup").all((req, res, next) => {
  5568. postmysql(req, res, "setCourseGroup");
  5569. });
  5570. //删除分组
  5571. router.route("/deleteCourseGroup").all((req, res, next) => {
  5572. postmysql(req, res, "deleteCourseGroup");
  5573. });
  5574. //获取分组
  5575. router.route("/getCourseGroup").all((req, res, next) => {
  5576. var json = queryString(req.url);
  5577. getmysql(req, res, "getCourseGroup", json["cid"], json["classid"]);
  5578. });
  5579. //获取随机码
  5580. router.route("/getCode2").all((req, res, next) => {
  5581. var json = queryString(req.url);
  5582. getmysql(req, res, "getCode2", json["oid"], json["org"]);
  5583. });
  5584. //获取分组
  5585. router.route("/getCourseGroup2").all((req, res, next) => {
  5586. var json = queryString(req.url);
  5587. getmysql(req, res, "getCourseGroup2", json["cid"], json["classid"]);
  5588. });
  5589. //加入分组
  5590. router.route("/joinCourseGroup").all((req, res, next) => {
  5591. postmysql(req, res, "joinCourseGroup");
  5592. });
  5593. //退出分组
  5594. router.route("/exitCourseGroup").all((req, res, next) => {
  5595. postmysql(req, res, "exitCourseGroup");
  5596. });
  5597. //加入分组
  5598. router.route("/joinGroup").all((req, res, next) => {
  5599. postmysql(req, res, "joinGroup");
  5600. });
  5601. //退出分组
  5602. router.route("/exitGroup").all((req, res, next) => {
  5603. postmysql(req, res, "exitGroup");
  5604. });
  5605. //查看分组
  5606. router.route("/selectGroup").all((req, res, next) => {
  5607. postmysql(req, res, "selectGroup");
  5608. });
  5609. //查询pblstudent 分页
  5610. router.route("/selectPblStudent").all((req, res, next) => {
  5611. var json = queryString(req.url);
  5612. getmysql(req, res, "selectPblStudent", json["uid"], json["org"], json["oid"], json["type"], json["n"], json["page"], json["int"]);
  5613. });
  5614. //删除pblstudent 传courseid
  5615. router.route("/deletePblStudent").all((req, res, next) => {
  5616. postmysql(req, res, "deletePblStudent");
  5617. });
  5618. //查询pblstudent单个项目详情
  5619. router.route("/selectPblStudentDetail").all((req, res, next) => {
  5620. var json = queryString(req.url);
  5621. getmysql(req, res, "selectPblStudentDetail", json["cid"]);
  5622. });
  5623. //添加pblstudent 传uid 用户id t 标题 n 选题
  5624. router.route("/addPblStudent").all((req, res, next) => {
  5625. postmysql(req, res, "addPblStudent");
  5626. });
  5627. //修改pblstudentjson内容 传 cid 课程id chapters内容
  5628. router.route("/updatePblStudentChapters").all((req, res, next) => {
  5629. postmysql(req, res, "updatePblStudentChapters");
  5630. });
  5631. //修改pblstudent 所属已完成位置 传 cid 课程id doi 已完成位置传数字
  5632. router.route("/updatePblStudentDoIndex").all((req, res, next) => {
  5633. postmysql(req, res, "updatePblStudentDoIndex");
  5634. });
  5635. //课堂观察 对比分析查询
  5636. router.route("/select_contrastObservation_data").all((req, res, next) => {
  5637. postmysql(req, res, "select_contrastObservation_data");
  5638. });
  5639. //课堂观察 对比分析查询
  5640. router.route("/update_contrastObservation_data").all((req, res, next) => {
  5641. postmysql(req, res, "update_contrastObservation_data");
  5642. });
  5643. //查询ppt在哪页
  5644. router.route("/selectPptPage").all((req, res, next) => {
  5645. var json = queryString(req.url);
  5646. getmysql(req, res, "selectPptPage", json["id"]);
  5647. });
  5648. //修改ppt页码
  5649. router.route("/updatePptPage").all((req, res, next) => {
  5650. postmysql(req, res, "updatePptPage");
  5651. });
  5652. //修改ppt操作
  5653. router.route("/updatePPTHandle").all((req, res, next) => {
  5654. postmysql(req, res, "updatePPTHandle");
  5655. });
  5656. //新增ppt知识库文件
  5657. router.route("/addPPTFile").all((req, res, next) => {
  5658. postmysql(req, res, "addPPTFile");
  5659. });
  5660. //查询ppt知识库文件
  5661. router.route("/getPPTFile").all((req, res, next) => {
  5662. var json = queryString(req.url);
  5663. getmysql(req, res, "getPPTFile", json["pptid"], json["classid"]);
  5664. });
  5665. //新增ppt上课内容
  5666. router.route("/addPPTClass").all((req, res, next) => {
  5667. postmysql(req, res, "addPPTClass");
  5668. });
  5669. //查询实时课堂
  5670. router.route("/getRealTimeClass").all((req, res, next) => {
  5671. var json = queryString(req.url);
  5672. getmysql(
  5673. req,
  5674. res,
  5675. "getRealTimeClass",
  5676. json["cn"],
  5677. json["uid"],
  5678. json["page"],
  5679. 10
  5680. );
  5681. });
  5682. //查询实时课堂学生
  5683. router.route("/getRealTimeClassStu").all((req, res, next) => {
  5684. var json = queryString(req.url);
  5685. getmysql(
  5686. req,
  5687. res,
  5688. "getRealTimeClassStu",
  5689. json["oid"],
  5690. json["cid"],
  5691. json["page"],
  5692. 10
  5693. );
  5694. });
  5695. //查询实时课堂学生
  5696. router.route("/getRealTimeClassById").all((req, res, next) => {
  5697. var json = queryString(req.url);
  5698. getmysql(req, res, "getRealTimeClassById", json["id"]);
  5699. });
  5700. //根据区级管理者查询案例
  5701. router.route("/selectAnliList").all((req, res, next) => {
  5702. var json = queryString(req.url);
  5703. getmysql(
  5704. req,
  5705. res,
  5706. "selectAnliList",
  5707. json["typea"],
  5708. json["typeb"],
  5709. json["typec"],
  5710. json["typed"],
  5711. json["typeE"],
  5712. json["cn"],
  5713. json["cid"],
  5714. json["title"],
  5715. json["page"],
  5716. 10
  5717. );
  5718. });
  5719. //根据区级管理者查询案例
  5720. router.route("/selectAnliListGM").all((req, res, next) => {
  5721. var json = queryString(req.url);
  5722. getmysql(
  5723. req,
  5724. res,
  5725. "selectAnliListGM",
  5726. json["typea"],
  5727. json["typeb"],
  5728. json["typec"],
  5729. json["typed"],
  5730. json["typeE"],
  5731. json["cn"],
  5732. json["cid"],
  5733. json["title"],
  5734. json["page"],
  5735. 10
  5736. );
  5737. });
  5738. //根据市级管理者查询案例
  5739. router.route("/selectAnliList1").all((req, res, next) => {
  5740. var json = queryString(req.url);
  5741. getmysql(
  5742. req,
  5743. res,
  5744. "selectAnliList1",
  5745. json["typea"],
  5746. json["typeb"],
  5747. json["typec"],
  5748. json["typed"],
  5749. json["typeE"],
  5750. json["cn"],
  5751. json["cid"],
  5752. json["title"],
  5753. json["page"],
  5754. 10
  5755. );
  5756. });
  5757. //根据省级级管理者查询案例
  5758. router.route("/selectAnliList2").all((req, res, next) => {
  5759. var json = queryString(req.url);
  5760. getmysql(
  5761. req,
  5762. res,
  5763. "selectAnliList2",
  5764. json["typea"],
  5765. json["typeb"],
  5766. json["typec"],
  5767. json["typed"],
  5768. json["typeE"],
  5769. json["cn"],
  5770. json["cid"],
  5771. json["title"],
  5772. json["page"],
  5773. 10
  5774. );
  5775. });
  5776. //删除1案例
  5777. router.route("/deleteAnli").all((req, res, next) => {
  5778. var json = queryString(req.url);
  5779. getmysql2(req, res, "deleteAnli", json["id"]);
  5780. });
  5781. //根据区县管理者查询评分
  5782. router.route("/selectPoint").all((req, res, next) => {
  5783. var json = queryString(req.url);
  5784. getmysql(
  5785. req,
  5786. res,
  5787. "selectPoint",
  5788. json["typea"],
  5789. json["typeb"],
  5790. json["typec"],
  5791. json["typed"],
  5792. json["typeE"],
  5793. json["cn"],
  5794. json["cid"],
  5795. json["title"],
  5796. json["page"],
  5797. 10
  5798. );
  5799. });
  5800. //根据市级管理者查询评分
  5801. router.route("/selectPoint1").all((req, res, next) => {
  5802. var json = queryString(req.url);
  5803. getmysql(
  5804. req,
  5805. res,
  5806. "selectPoint1",
  5807. json["typea"],
  5808. json["typeb"],
  5809. json["typec"],
  5810. json["typed"],
  5811. json["typeE"],
  5812. json["cn"],
  5813. json["cid"],
  5814. json["title"],
  5815. json["page"],
  5816. 10
  5817. );
  5818. });
  5819. //根据市级管理者查询全部评分
  5820. router.route("/selectPointAll").all((req, res, next) => {
  5821. var json = queryString(req.url);
  5822. getmysql(
  5823. req,
  5824. res,
  5825. "selectPointAll",
  5826. json["typea"],
  5827. json["typeb"],
  5828. json["typec"],
  5829. json["typed"],
  5830. json["typeE"],
  5831. json["cn"],
  5832. json["cid"],
  5833. json["title"]
  5834. );
  5835. });
  5836. //根据市级管理者查询全部评分
  5837. router.route("/selectPointAllGM").all((req, res, next) => {
  5838. var json = queryString(req.url);
  5839. getmysql(
  5840. req,
  5841. res,
  5842. "selectPointAllGM",
  5843. json["typea"],
  5844. json["typeb"],
  5845. json["typec"],
  5846. json["typed"],
  5847. json["typeE"],
  5848. json["cn"],
  5849. json["cid"],
  5850. json["title"]
  5851. );
  5852. });
  5853. //根据市级管理者查询全部评分
  5854. router.route("/selectPointAllGM2").all((req, res, next) => {
  5855. var json = queryString(req.url);
  5856. getmysql(
  5857. req,
  5858. res,
  5859. "selectPointAllGM2",
  5860. json["typea"],
  5861. json["typeb"],
  5862. json["typec"],
  5863. json["typed"],
  5864. json["typeE"],
  5865. json["cn"],
  5866. json["cid"],
  5867. json["title"],
  5868. json["numCheck"]
  5869. );
  5870. });
  5871. //根据市级管理者查询全部评分
  5872. router.route("/selectPointAllGM2Post").all((req, res, next) => {
  5873. postmysql(req, res, "selectPointAllGM2");
  5874. });
  5875. //查询分配案例
  5876. router.route("/selectCaseUser").all((req, res, next) => {
  5877. var json = queryString(req.url);
  5878. getmysql(req, res, "select_case", json["uid"]);
  5879. });
  5880. //根据用户id,课程id,阶段,任务,工具去查询协同
  5881. router.route("/selectWord").all((req, res, next) => {
  5882. var json = queryString(req.url);
  5883. getmysql(
  5884. req,
  5885. res,
  5886. "selectWord",
  5887. json["uid"],
  5888. json["cid"],
  5889. json["s"],
  5890. json["task"],
  5891. json["t"]
  5892. );
  5893. });
  5894. //根据用户id,课程id,阶段,任务,工具去查询协同
  5895. router.route("/selectWord2").all((req, res, next) => {
  5896. var json = queryString(req.url);
  5897. getmysql(
  5898. req,
  5899. res,
  5900. "selectWord2",
  5901. json["uid"],
  5902. json["cid"],
  5903. json["s"],
  5904. json["task"],
  5905. json["t"],
  5906. json["type"]
  5907. );
  5908. });
  5909. //根据用户id,课程id,阶段,任务,工具去查询协同
  5910. router.route("/selectWords").all((req, res, next) => {
  5911. var json = queryString(req.url);
  5912. getmysql(
  5913. req,
  5914. res,
  5915. "selectWords",
  5916. json["uid"],
  5917. json["cid"],
  5918. json["s"],
  5919. json["task"],
  5920. json["t"],
  5921. json["type"]
  5922. );
  5923. });
  5924. //根据用户id,课程id,阶段,任务,工具去查询协同
  5925. router.route("/selectWordsY").all((req, res, next) => {
  5926. var json = queryString(req.url);
  5927. getmysql(
  5928. req,
  5929. res,
  5930. "selectWordsY",
  5931. json["uid"],
  5932. json["cid"],
  5933. json["s"],
  5934. json["task"],
  5935. json["t"],
  5936. json["type"]
  5937. );
  5938. });
  5939. //新增协同内容
  5940. router.route("/insertWord2y").all((req, res, next) => {
  5941. var json = queryString(req.url);
  5942. // getmysql(req, res, "insertWord2y", json["uid"], json["cid"], json["s"], json["task"], json["t"], json["text"], json["type"]);
  5943. postmysql3(req, res, "insertWord2y");
  5944. });
  5945. //新增协同内容 修1
  5946. router.route("/insertWord").get((req, res, next) => {
  5947. var json = queryString(req.url);
  5948. getmysql2(
  5949. req,
  5950. res,
  5951. "insertWord",
  5952. json["uid"],
  5953. json["cid"],
  5954. json["s"],
  5955. json["task"],
  5956. json["t"],
  5957. json["text"]
  5958. );
  5959. });
  5960. //分配案例
  5961. router.route("/insertCase").all((req, res, next) => {
  5962. if (req.body[0]) {
  5963. p = [req.body[0].uid, req.body[0].box];
  5964. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "insertCase"); //執行存儲過程
  5965. mysql.usselect(p, function(ret) {
  5966. res.end(JSON.stringify({ success: 1 }));
  5967. });
  5968. }
  5969. });
  5970. //新增评分
  5971. router.route("/addScore").all((req, res, next) => {
  5972. postmysql(req, res, "addScore");
  5973. });
  5974. //添加用户标签
  5975. router.route("/add_userlabel").all((req, res, next) => {
  5976. postmysql2(req, res, "add_userlabel");
  5977. });
  5978. //查询评分
  5979. router.route("/selectScore").all((req, res, next) => {
  5980. var json = queryString(req.url);
  5981. getmysql(req, res, "selectScore", json["rid"], json["suser"]);
  5982. });
  5983. //查询所有评分
  5984. router.route("/selectAllScore").all((req, res, next) => {
  5985. var json = queryString(req.url);
  5986. getmysql(req, res, "selectAllScore");
  5987. });
  5988. //查询所有评分
  5989. router.route("/selectAllScoreGM").all((req, res, next) => {
  5990. var json = queryString(req.url);
  5991. getmysql(req, res, "selectAllScoreGM");
  5992. });
  5993. //查询所有评分
  5994. router.route("/selectAllScoreGM2").all((req, res, next) => {
  5995. var json = queryString(req.url);
  5996. getmysql(req, res, "selectAllScoreGM2", json['numCheck']);
  5997. });
  5998. //查询所有学校以及组织
  5999. router.route("/selectAllSchool").all((req, res, next) => {
  6000. var json = queryString(req.url);
  6001. getmysql(req, res, "selectAllSchool");
  6002. });
  6003. //查询所有学校以及组织
  6004. router.route("/selectAllSchoolByOid").all((req, res, next) => {
  6005. var json = queryString(req.url);
  6006. getmysql(req, res, "selectAllSchoolByOid", json['oid']);
  6007. });
  6008. //根据用户id查询评分
  6009. router.route("/selectScoreByUid").all((req, res, next) => {
  6010. var json = queryString(req.url);
  6011. getmysql(req, res, "selectScoreByUid", json["uid"]);
  6012. });
  6013. //查询单个案例所有评分
  6014. router.route("/selectAnliScore").all((req, res, next) => {
  6015. var json = queryString(req.url);
  6016. getmysql(req, res, "selectAnliScore", json["rid"]);
  6017. });
  6018. //赛事推荐 修1
  6019. router.route("/updateRaceRec").get((req, res, next) => {
  6020. var json = queryString(req.url);
  6021. getmysql2(req, res, "updateRaceRec", json["id"], json["rec"]);
  6022. });
  6023. //查询数据报告学生报告列表
  6024. router.route("/selectSr").all((req, res, next) => {
  6025. var json = queryString(req.url);
  6026. getmysql(
  6027. req,
  6028. res,
  6029. "selectSr",
  6030. json["cu"],
  6031. json["cn"],
  6032. json["oid"],
  6033. json["page"],
  6034. 10
  6035. );
  6036. });
  6037. //查询数据报告班级报告列表
  6038. router.route("/selectCr").all((req, res, next) => {
  6039. var json = queryString(req.url);
  6040. getmysql(
  6041. req,
  6042. res,
  6043. "selectCr",
  6044. json["cu"],
  6045. json["cn"],
  6046. json["oid"],
  6047. json["page"],
  6048. 10
  6049. );
  6050. });
  6051. //查询数据报告查看班级报告底下学生列表
  6052. router.route("/selectCStudent").all((req, res, next) => {
  6053. var json = queryString(req.url);
  6054. getmysql(req, res, "selectCStudent", json["cid"], json["courseid"]);
  6055. });
  6056. //查询数据报告课程报告列表
  6057. router.route("/selectCourseR").all((req, res, next) => {
  6058. var json = queryString(req.url);
  6059. getmysql(
  6060. req,
  6061. res,
  6062. "selectCourseR",
  6063. json["cu"],
  6064. json["cn"],
  6065. json["cl"],
  6066. json["oid"],
  6067. json["page"],
  6068. 10
  6069. );
  6070. });
  6071. //根据学校id查询学校底下有评价的课程
  6072. router.route("/selectCourseByOid").all((req, res, next) => {
  6073. var json = queryString(req.url);
  6074. getmysql(req, res, "selectCourseByOid", json["oid"]);
  6075. });
  6076. //根据目标id和班级id查询底下有作业的课程
  6077. router.route("/selectEvaCourse").all((req, res, next) => {
  6078. var json = queryString(req.url);
  6079. getmysql(req, res, "selectEvaCourse", json["eid"], json["cid"]);
  6080. });
  6081. //teacher 查询模板
  6082. router.route("/getTemplateT").all((req, res, next) => {
  6083. var json = queryString(req.url);
  6084. getmysql(req, res, "select_templateT");
  6085. });
  6086. //思维网格 创建房间
  6087. router.route("/insertRoom").all((req, res, next) => {
  6088. postmysql(req, res, "insertRoom");
  6089. });
  6090. //删除作业阶段任务工具
  6091. router.route("/deleteStudentToolSTT").all((req, res, next) => {
  6092. postmysql(req, res, "deleteStudentToolSTT");
  6093. });
  6094. //删除作业阶段任务
  6095. router.route("/deleteStudentToolST").all((req, res, next) => {
  6096. postmysql(req, res, "deleteStudentToolST");
  6097. });
  6098. //删除作业阶段
  6099. router.route("/deleteStudentToolS").all((req, res, next) => {
  6100. postmysql(req, res, "deleteStudentToolST");
  6101. });
  6102. //协同编辑 创建房间
  6103. router.route("/insertRoomByFile").all((req, res, next) => {
  6104. //var json = queryString(req.url);
  6105. postmysql2(req, res, "insertRoomByFile");
  6106. //getmysql(req, res, "insertRoomByFile", json["uid"], json["n"], json["d"]);
  6107. });
  6108. //思维网格 查询是否是重复房间号
  6109. router.route("/checkRoomNum").all((req, res, next) => {
  6110. var json = queryString(req.url);
  6111. getmysql(req, res, "checkRoomNum", json["num"]);
  6112. });
  6113. //思维网格 查询房间列表
  6114. router.route("/selectRoomList").all((req, res, next) => {
  6115. var json = queryString(req.url);
  6116. getmysql(
  6117. req,
  6118. res,
  6119. "selectRoomList",
  6120. json["uid"],
  6121. json["oid"],
  6122. json["cid"],
  6123. json["cu"],
  6124. json["cn"]
  6125. );
  6126. });
  6127. //查询pdf列表
  6128. router.route("/selectRTC").all((req, res, next) => {
  6129. var json = queryString(req.url);
  6130. getmysql(req, res, "selectRTC", json["uid"], json["cu"], json["cn"]);
  6131. });
  6132. //协同文档 查询房间列表
  6133. router.route("/selectFileList").all((req, res, next) => {
  6134. var json = queryString(req.url);
  6135. getmysql(
  6136. req,
  6137. res,
  6138. "selectFileList",
  6139. json["uid"],
  6140. json["oid"],
  6141. json["cid"],
  6142. json["cu"],
  6143. json["cn"]
  6144. );
  6145. });
  6146. //协同编辑 查询是否是重复房间号
  6147. router.route("/checkRoomNumByFile").all((req, res, next) => {
  6148. var json = queryString(req.url);
  6149. getmysql(req, res, "checkRoomNumByFile", json["num"]);
  6150. });
  6151. //思维网格 根据房间号或者用户id查询房间信息
  6152. router.route("/selectRoom").all((req, res, next) => {
  6153. var json = queryString(req.url);
  6154. getmysql(req, res, "selectRoom", json["uid"]);
  6155. });
  6156. //思维网格 根据房间号或者用户id查询房间信息
  6157. router.route("/getRoom").all((req, res, next) => {
  6158. var json = queryString(req.url);
  6159. getmysql(req, res, "select_room", json["fid"]);
  6160. });
  6161. //协同编辑 根据房间号或者用户id查询房间信息
  6162. router.route("/selectRoomByFile").all((req, res, next) => {
  6163. var json = queryString(req.url);
  6164. getmysql(req, res, "selectRoomByFile", json["uid"]);
  6165. });
  6166. //思维网格 修改房间数据
  6167. router.route("/updateRoomData").all((req, res, next) => {
  6168. postmysql(req, res, "updateRoomData");
  6169. });
  6170. // 修1
  6171. router.route("/updateFileData").get((req, res, next) => {
  6172. var json = queryString(req.url);
  6173. var json2 = json["mode"].split(",");
  6174. getmysql2(req, res, "updateFileData", json2[0], json2[1]);
  6175. });
  6176. router.route("/select_file").all((req, res, next) => {
  6177. var json = queryString(req.url);
  6178. getmysql(req, res, "select_file", json["fid"]);
  6179. });
  6180. //思维网格 解散房间
  6181. router.route("/dismiss").all((req, res, next) => {
  6182. postmysql(req, res, "update_room");
  6183. });
  6184. //提交提问
  6185. router.route("/addProblem").all((req, res, next) => {
  6186. postmysql(req, res, "add_problem");
  6187. //cid 课程id,chid 章节id,t 提问内容,uid 用户id
  6188. });
  6189. //查询提交的提问
  6190. router.route("/getProblem").all((req, res, next) => {
  6191. var json = queryString(req.url); //cid 课程id,page 页数
  6192. getmysql(req, res, "select_problem", json["cid"], json["page"], 10);
  6193. });
  6194. //获取用户基本信息
  6195. router.route("/getUserInfo").all((req, res, next) => {
  6196. var json = queryString(req.url);
  6197. getmysql(req, res, "getUserInfo", json["uid"], json["cid"]);
  6198. });
  6199. //获取用户多个课程基本信息
  6200. router.route("/getUserInfoMore").all((req, res, next) => {
  6201. var json = queryString(req.url);
  6202. getmysql(req, res, "getUserInfoMore", json["uid"], json["cid"]);
  6203. });
  6204. //获取多个用户单个课程基本信息
  6205. router.route("/getClassUserInfoMore").all((req, res, next) => {
  6206. var json = queryString(req.url);
  6207. getmysql(req, res, "getClassUserInfoMore", json["uid"], json["cid"]);
  6208. });
  6209. //获取课程下所有有作业的学生id
  6210. router.route("/selectCourseSuid").all((req, res, next) => {
  6211. var json = queryString(req.url);
  6212. getmysql(req, res, "selectCourseSuid", json["cid"], json["courseid"]);
  6213. });
  6214. //获取项目基本信息
  6215. router.route("/getCourseInfo").all((req, res, next) => {
  6216. var json = queryString(req.url);
  6217. getmysql(req, res, "getCourseInfo", json["cid"]);
  6218. });
  6219. //课程中心 总评添加和修改功能
  6220. router.route("/opCourseScore").all((req, res, next) => {
  6221. postmysql(req, res, "opCourseScore");
  6222. });
  6223. //查询已评价功能
  6224. router.route("/getCourseScoreP").all((req, res, next) => {
  6225. var json = queryString(req.url);
  6226. getmysql(req, res, "getCourseScoreP", json["cid"], json["uid"]);
  6227. });
  6228. //查询所有已评价功能
  6229. router.route("/getCourseScore").all((req, res, next) => {
  6230. var json = queryString(req.url);
  6231. getmysql(req, res, "getCourseScore", json["cid"]);
  6232. });
  6233. //查看已有作业功能
  6234. router.route("/selectWorkByCidAi").all((req, res, next) => {
  6235. var json = queryString(req.url);
  6236. getmysql(req, res, "selectWorkByCidAi", json["cid"], json["classid"]);
  6237. });
  6238. //插叙单个学生作业
  6239. router.route("/selectWorkByCidAiByUid").all((req, res, next) => {
  6240. var json = queryString(req.url);
  6241. getmysql(req, res, "selectWorkByCidAiByUid", json["cid"], json["uid"]);
  6242. });
  6243. //获取多个项目基本信息
  6244. router.route("/getCourseInfoMore").all((req, res, next) => {
  6245. var json = queryString(req.url);
  6246. getmysql(req, res, "getCourseInfoMore", json["cid"]);
  6247. });
  6248. //获取用户基本信息
  6249. router.route("/getAllUserById").all((req, res, next) => {
  6250. var json = queryString(req.url);
  6251. getmysql(req, res, "getAllUserById", json["uid"]);
  6252. });
  6253. //获取用户基本信息
  6254. router.route("/getAllUserByIdP").all((req, res, next) => {
  6255. postmysql(req, res, "getAllUserById");
  6256. });
  6257. //作业生成报告
  6258. router.route("/getWorkData").all((req, res, next) => {
  6259. var json = queryString(req.url); //cid 课程id,page 页数
  6260. getmysql(req, res, "select_work_data", json["cid"]);
  6261. });
  6262. //查询评价体系
  6263. router.route("/getEvaluation").all((req, res, next) => {
  6264. var json = queryString(req.url); //cid 课程id,page 页数
  6265. getmysql(
  6266. req,
  6267. res,
  6268. "select_evaluation",
  6269. json["oid"],
  6270. json["n"],
  6271. json["page"],
  6272. 10
  6273. );
  6274. });
  6275. //添加学校 yym
  6276. router.route("/insert_school3New").all((req, res, next) => {
  6277. postmysql(req, res, "insert_school3New");
  6278. });
  6279. //添加班级 yym
  6280. router.route("/addClassgra").all((req, res, next) => {
  6281. postmysql(req, res, "addClassgra");
  6282. });
  6283. //禁用启用社区 yym
  6284. router.route("/updateCyOP").all((req, res, next) => {
  6285. postmysql(req, res, "updateCyOP");
  6286. });
  6287. // 输入随机码直接上课 yym
  6288. router.route("/selectliyuanByIc2SZ").all((req, res, next) => {
  6289. var json = queryString(req.url);
  6290. getmysql(req, res, "selectliyuanByIc2SZ", json["code"], json["oid"],json["orgL"]);
  6291. });
  6292. // 新学生管理 获取年级与班级 yym
  6293. router.route("/selectGradeNew").all((req, res, next) => {
  6294. var json = queryString(req.url);
  6295. getmysql(
  6296. req,
  6297. res,
  6298. "selectGradeNew",
  6299. json["oid"]
  6300. );
  6301. });
  6302. // 新学生管理 查看兴趣班 yym
  6303. router.route("/selectInterestcla").all((req, res, next) => {
  6304. var json = queryString(req.url);
  6305. getmysql(
  6306. req,
  6307. res,
  6308. "selectInterestcla",
  6309. json["oid"],
  6310. json["inp"],
  6311. json["srt"],
  6312. json["page"],
  6313. json["pageSize"]
  6314. );
  6315. });
  6316. // 新学生管理 获取班级学生 yym
  6317. router.route("/selectclaStu").all((req, res, next) => {
  6318. var json = queryString(req.url);
  6319. getmysql(
  6320. req,
  6321. res,
  6322. "selectclaStu",
  6323. json["oid"],
  6324. json["claid"],
  6325. json["inp"],
  6326. );
  6327. });
  6328. //查询社区列表 yym
  6329. router.route("/getcylist").all((req, res, next) => {
  6330. var json = queryString(req.url); //cid 课程id,page 页数
  6331. getmysql(
  6332. req,
  6333. res,
  6334. "getcylist",
  6335. json["oid"],
  6336. json["n"],
  6337. json["page"],
  6338. json["num"]
  6339. );
  6340. });
  6341. //查询社区列表 yym
  6342. router.route("/getAddcyPersonlist").all((req, res, next) => {
  6343. var json = queryString(req.url); //cid 课程id,page 页数
  6344. getmysql(
  6345. req,
  6346. res,
  6347. "getAddcyPersonlist",
  6348. json["oid"],
  6349. json["inp"],
  6350. json["page"],
  6351. json["num"]
  6352. );
  6353. });
  6354. //查询社区列表 yym
  6355. router.route("/getAddcyPersonlist2").all((req, res, next) => {
  6356. var json = queryString(req.url); //cid 课程id,page 页数
  6357. getmysql(
  6358. req,
  6359. res,
  6360. "getAddcyPersonlist2",
  6361. json["oid"],
  6362. json["inp"],
  6363. json["typ"],
  6364. json["page"],
  6365. json["num"]
  6366. );
  6367. });
  6368. //查询社区人员列表 yym
  6369. router.route("/getcypersonlist").all((req, res, next) => {
  6370. var json = queryString(req.url); //cid 课程id,page 页数
  6371. getmysql(
  6372. req,
  6373. res,
  6374. "getcypersonlist",
  6375. json["id"]
  6376. );
  6377. });
  6378. //查询社区人员列表 yym
  6379. router.route("/getCococy").all((req, res, next) => {
  6380. var json = queryString(req.url); //cid 课程id,page 页数
  6381. getmysql(
  6382. req,
  6383. res,
  6384. "getCococy",
  6385. json["org"],
  6386. json["oid"]
  6387. );
  6388. });
  6389. //社区应用获取 yym
  6390. router.route("/selectCyapp").all((req, res, next) => {
  6391. postmysql(req, res, "selectCyapp");
  6392. //uid 用户id t标题 c内容
  6393. });
  6394. //添加评价体系
  6395. router.route("/addEvaluation").all((req, res, next) => {
  6396. postmysql(req, res, "add_evaluation");
  6397. //uid 用户id t标题 c内容
  6398. });
  6399. //添加社区
  6400. router.route("/addCommunity").all((req, res, next) => {
  6401. postmysql(req, res, "addCommunity");
  6402. //uid 用户id t标题 c内容
  6403. });
  6404. //添加ai6课程说明
  6405. router.route("/updateinst").all((req, res, next) => {
  6406. postmysql(req, res, "updateinst");
  6407. //uid 用户id t标题 c内容
  6408. });
  6409. //获取ai6Ai探究首页课程
  6410. router.route('/getAIcourseType').all((req,res,next)=>{
  6411. var json = queryString(req.url);
  6412. getmysql(req, res, "getAIcourseType",json["con"]);
  6413. })
  6414. //获取ai6Ai探究首页课程
  6415. router.route('/getCyTag').all((req,res,next)=>{
  6416. var json = queryString(req.url);
  6417. getmysql(req, res, "getCyTag",json["id"]);
  6418. })
  6419. //删除社区
  6420. router.route("/delCommunity").all((req, res, next) => {
  6421. postmysql(req, res, "delCommunity");
  6422. //uid 用户id t标题 c内容
  6423. });
  6424. //修改社区
  6425. router.route("/updateCommunity").all((req, res, next) => {
  6426. postmysql(req, res, "updateCommunity");
  6427. //uid 用户id t标题 c内容
  6428. });
  6429. //更新社区人员
  6430. router.route("/updateCommunityperson").all((req, res, next) => {
  6431. postmysql(req, res, "updateCommunityperson");
  6432. //uid 用户id t标题 c内容
  6433. });
  6434. //修改评价体系
  6435. router.route("/updateEvaluation").all((req, res, next) => {
  6436. postmysql(req, res, "update_evaluation");
  6437. //c内容 t标题 id评价id
  6438. });
  6439. //删除评价体系
  6440. router.route("/deleteEvaluation").all((req, res, next) => {
  6441. postmysql(req, res, "delete_evaluation");
  6442. // id评价id
  6443. });
  6444. //删除评价体系前查询课程是否有该评价
  6445. router.route("/selectCourseEva").all((req, res, next) => {
  6446. var json = queryString(req.url); //cid 课程id,page 页数
  6447. getmysql(
  6448. req,
  6449. res,
  6450. "select_course_eva",
  6451. json["eid"],
  6452. );
  6453. });
  6454. //批量添加学校
  6455. router.route("/batchRegistrationSchool").post(function(req, res, next) {
  6456. let users = req.body[0];
  6457. let arr = JSON.parse(decodeURIComponent(req.body[0].arr));
  6458. for (let i = 0; i < arr.length; i++) {
  6459. let _school = encodeURIComponent(arr[i].school);
  6460. let _org = users.org;
  6461. //用戶數據
  6462. let _data = [_school, _org, "", "1", ""];
  6463. //參數拼接,註冊
  6464. _data.unshift(_mysqlLabor[0], _mysqlLabor[1], "insertSchoolByOrg");
  6465. //用戶註冊處理
  6466. mysql.usselect(_data, function(ret) {
  6467. res.end(JSON.stringify({ success: 1 }));
  6468. });
  6469. }
  6470. });
  6471. //批量添加学生
  6472. router.route("/batchRegistrationMore").post(function(req, res, next) {
  6473. let users = req.body[0];
  6474. let arr = JSON.parse(decodeURIComponent(req.body[0].arr));
  6475. for (let i = 0; i < arr.length; i++) {
  6476. let _username = encodeURIComponent(arr[i].name);
  6477. let _mail = encodeURIComponent(arr[i].mail)
  6478. let _password = users.password || "Coco1234";
  6479. let _alias = encodeURIComponent(arr[i].name)
  6480. let _oid = users.oid;
  6481. let _ph = encodeURIComponent(arr[i].phone ? arr[i].phone : "")
  6482. let _class = encodeURIComponent(arr[i].class)
  6483. let _sId = encodeURIComponent(arr[i].sId)
  6484. //加密密碼
  6485. _password = bcrypt.hashSync(_password, bcrypt.genSaltSync(10));
  6486. //生成激活碼
  6487. let _hashstr = new Date().getTime() + "";
  6488. let _digest = crypto
  6489. .createHash("sha256")
  6490. .update(_hashstr, "utf8")
  6491. .digest("hex");
  6492. //用戶數據
  6493. let _userdata = [
  6494. _mail,
  6495. _password,
  6496. _alias,
  6497. "",
  6498. 1, //0老师 1学生
  6499. _username,
  6500. "",
  6501. generateAPIKey(_username),
  6502. _digest,
  6503. "",
  6504. _username,
  6505. _sId,
  6506. 2, //1老师 2学生
  6507. _oid,
  6508. _ph,
  6509. _class,
  6510. "",
  6511. "0",
  6512. ];
  6513. //參數拼接,註冊
  6514. _userdata.unshift(_mysqluser[0], _mysqluser[1], "pbl_add_batchregister");
  6515. //用戶註冊處理
  6516. mysql.usselect(_userdata, function(ret) {
  6517. // let _pbluserdata = [
  6518. // ret[1][0].uid,
  6519. // _username,
  6520. // _sId,
  6521. // 2,
  6522. // _oid,
  6523. // _ph,
  6524. // _class,
  6525. // '',
  6526. // "0",
  6527. // ];
  6528. // _pbluserdata.unshift(_mysqlLabor[0], _mysqlLabor[1], "updateUserByEdu");
  6529. // mysql.usselect(_pbluserdata, function(ret) {
  6530. res.end(JSON.stringify({ success: 1 }));
  6531. // });
  6532. });
  6533. }
  6534. });
  6535. //批量添加学生 新学生管理批量添加修改学生账号
  6536. router.route("/batchRegistrationMoreCopy").post(function(req, res, next) {
  6537. let users = req.body[0];
  6538. let arr = JSON.parse(decodeURIComponent(req.body[0].arr));
  6539. for (let i = 0; i < arr.length; i++) {
  6540. let _username = encodeURIComponent(arr[i].name);
  6541. let _mail = encodeURIComponent(arr[i].mail)
  6542. let _password = users.password || "Coco1234";
  6543. let _alias = encodeURIComponent(arr[i].name)
  6544. let _oid = users.oid;
  6545. let _ph = encodeURIComponent(arr[i].phone ? arr[i].phone : "")
  6546. let _class = encodeURIComponent(arr[i].class)
  6547. let _sId = encodeURIComponent(arr[i].sId)
  6548. //加密密碼
  6549. _password = bcrypt.hashSync(_password, bcrypt.genSaltSync(10));
  6550. //生成激活碼
  6551. let _hashstr = new Date().getTime() + "";
  6552. let _digest = crypto
  6553. .createHash("sha256")
  6554. .update(_hashstr, "utf8")
  6555. .digest("hex");
  6556. //用戶數據
  6557. let _userdata = [
  6558. _mail,
  6559. _password,
  6560. _alias,
  6561. "",
  6562. 1, //0老师 1学生
  6563. _username,
  6564. "",
  6565. generateAPIKey(_username),
  6566. _digest,
  6567. "",
  6568. _username,
  6569. _sId,
  6570. 2, //1老师 2学生
  6571. _oid,
  6572. _ph,
  6573. _class,
  6574. "",
  6575. "0",
  6576. ];
  6577. //參數拼接,註冊
  6578. _userdata.unshift(_mysqluser[0], _mysqluser[1], "pbl_add_batchregister");
  6579. //用戶註冊處理
  6580. mysql.usselect(_userdata, function(ret) {
  6581. let _pbluserdata = [ ret[1][0].uid ];
  6582. _pbluserdata.unshift(_mysqlLabor[0], _mysqlLabor[1], "updateAccountList");
  6583. mysql.usselect(_pbluserdata, function(ret) {
  6584. res.end(JSON.stringify({ success: 1 }));
  6585. });
  6586. });
  6587. }
  6588. });
  6589. //幼儿园评价
  6590. // 获取所有年级
  6591. router.route("/select_techerAllGrade").all(function(req, res, next) {
  6592. // let users = req.query;
  6593. var json = queryString(req.url);
  6594. getmysql(req, res, "select_techerAllGrade", json['cid']);
  6595. });
  6596. // 获取所有班级
  6597. router.route("/select_techerAllClass").all(function(req, res, next) {
  6598. // let users = req.query;
  6599. var json = queryString(req.url);
  6600. getmysql(req, res, "select_techerAllClass", json['cid']);
  6601. });
  6602. // 获取所有班级
  6603. router.route("/select_techerAllClass2").all(function(req, res, next) {
  6604. // let users = req.query;
  6605. var json = queryString(req.url);
  6606. getmysql(req, res, "select_techerAllClass2", json['cid'], json['gid']);
  6607. });
  6608. // 获取所有班级学生
  6609. router.route("/selectClassStudent").all(function(req, res, next) {
  6610. var json = queryString(req.url);
  6611. getmysql(req, res, "selectClassStudent", json['cid']);
  6612. });
  6613. // 获取所有班级学生
  6614. router.route("/selectClassStudent2").all(function(req, res, next) {
  6615. var json = queryString(req.url);
  6616. getmysql(req, res, "selectClassStudent2", json['cid'], json['gid']);
  6617. });
  6618. // 获取学生详情
  6619. router.route("/selectStudentDetail").all(function(req, res, next) {
  6620. // let users = req.query;
  6621. var json = queryString(req.url);
  6622. console.log(json);
  6623. getmysql(req, res, "selectStudentDetail", json['uid']);
  6624. });
  6625. // 获取学生记录筛选框
  6626. router.route("/selectVeiDoo").all(function(req, res, next) {
  6627. // let users = req.query;
  6628. var json = queryString(req.url);
  6629. // console.log(json);
  6630. getmysql(req, res, "selectVeiDoo", json['oid']);
  6631. });
  6632. // 上传学生评价
  6633. router.route("/insertRecord").all(function(req, res, next) {
  6634. // console.log(req.query);
  6635. postmysql(req, res, "insertRecord");
  6636. });
  6637. //修改openid
  6638. router.route('/UpdateOpenId').all((req, res, next) => {
  6639. postmysql(req, res, "UpdateOpenId");
  6640. });
  6641. //查询是否有openid
  6642. router.route('/checkOpenId').all((req, res, next) => {
  6643. postmysql(req, res, "checkOpenId");
  6644. });
  6645. // 获取学生记录
  6646. router.route("/selectRecord").all(function(req, res, next) {
  6647. // let users = req.query;
  6648. var json = queryString(req.url);
  6649. // console.log(json);
  6650. // let txt=
  6651. getmysql(req, res, "selectRecord", json['uid'], json['trm'], json['txt']);
  6652. });
  6653. // 获取学生记录详情
  6654. router.route("/selectRecordDetail").all(function(req, res, next) {
  6655. // let users = req.query;
  6656. var json = queryString(req.url);
  6657. // console.log(json);
  6658. getmysql(req, res, "selectRecordDetail", json['id']);
  6659. });
  6660. // 删除学生评价
  6661. router.route("/updateRecord").all(function(req, res, next) {
  6662. // console.log(req.query);
  6663. postmysql(req, res, "updateRecord");
  6664. });
  6665. // 更新学生评价
  6666. router.route("/updateRecordData").all(function(req, res, next) {
  6667. // console.log(req.query);
  6668. postmysql(req, res, "updateRecordData");
  6669. });
  6670. // 获取学生记录详情
  6671. router.route("/selectSerStudent").all(function(req, res, next) {
  6672. // let users = req.query;
  6673. var json = queryString(req.url);
  6674. // console.log(json);
  6675. getmysql(req, res, "selectSerStudent", json['id'], json['txt']);
  6676. });
  6677. // 获取学期
  6678. router.route("/selectTerm").all(function(req, res, next) {
  6679. var json = queryString(req.url);
  6680. getmysql(req, res, "selectTerm");
  6681. });
  6682. // 获取班级信息
  6683. router.route("/selectManyClassStudent").all(function(req, res, next) {
  6684. var json = queryString(req.url);
  6685. getmysql(req, res, "selectManyClassStudent", json['cid'], json['uid']);
  6686. });
  6687. //幼儿园学生评价获取学生列表
  6688. router.route("/selectStudentAndRecord").all(function(req, res, next) {
  6689. var json = queryString(req.url);
  6690. getmysql(req, res, "selectStudentAndRecord", json['cid'], json['cu'], json['cn'], json['oid'], json['org'], json['page'], 10);
  6691. });
  6692. // pbl教师端观察日记
  6693. router.route("/selectVeidooType").all(function(req, res, next) {
  6694. var json = queryString(req.url);
  6695. // console.log(json);
  6696. getmysql(req, res, "selectVeidooType", json['uid'], json['cid'], json['cu'], json['cn'], json['cm'], json['page'], 10);
  6697. });
  6698. //查询幼儿园分类
  6699. router.route("/selectSTEType").all(function(req, res, next) {
  6700. var json = queryString(req.url);
  6701. // console.log(json);
  6702. getmysql(req, res, "selectSTEType", json['org'], json['oid']);
  6703. });
  6704. //查询ai16平台 ai体验探究
  6705. router.route("/selectAiExp").all(function(req, res, next) {
  6706. var json = queryString(req.url);
  6707. // console.log(json);
  6708. getmysql(req, res, "selectAiExp", json['cl']);
  6709. });
  6710. //查询口语分类
  6711. router.route("/select_englishVoiceType").all(function(req, res, next) {
  6712. var json = queryString(req.url);
  6713. // console.log(json);
  6714. getmysql(req, res, "select_englishVoiceType", json['oid'], json['org']);
  6715. });
  6716. //查询我的口语分类
  6717. router.route("/selectMySubTalk").all(function(req, res, next) {
  6718. var json = queryString(req.url);
  6719. // console.log(json);
  6720. getmysql(req, res, "selectMySubTalk", json['userid']);
  6721. });
  6722. //查询学情报告雷达图数据
  6723. router.route("/selectMapStuScore").all(function(req, res, next) {
  6724. var json = queryString(req.url);
  6725. // console.log(json);
  6726. getmysql(req, res, "selectMapStuScore", json['uid'], json['year']);
  6727. });
  6728. //每个大分类下的关键证据
  6729. router.route("/selectHealthRecord").all(function(req, res, next) {
  6730. var json = queryString(req.url);
  6731. // console.log(json);
  6732. getmysql(req, res, "selectHealthRecord", json['uid'], json['year'], json['txt'], json['page'], 4);
  6733. });
  6734. //手机端 获取记录地点list
  6735. router.route("/selectSTEPlace").all(function(req, res, next) {
  6736. var json = queryString(req.url);
  6737. // console.log(json);
  6738. getmysql(req, res, "selectSTEPlace", json['org'], json['oid']);
  6739. });
  6740. //获取所有的记录进行下载
  6741. router.route("/selectClassAllRecord").all(function(req, res, next) {
  6742. var json = queryString(req.url);
  6743. // console.log(json);
  6744. getmysql(req, res, "selectClassAllRecord",json['cid'], json['id']);
  6745. });
  6746. //record页面计算班级平均分
  6747. router.route("/selectClaAverageScore").all(function(req, res, next) {
  6748. var json = queryString(req.url);
  6749. // console.log(json);
  6750. getmysql(req, res, "selectClaAverageScore", json["cu"], json["oid"], json["cn"], json["trm"], json["page"], 10);
  6751. });
  6752. //record页面下载班级分数数据
  6753. router.route("/selectAllClaAvaRescore").all(function(req, res, next) {
  6754. var json = queryString(req.url);
  6755. // console.log(json);
  6756. getmysql(req, res, "selectAllClaAvaRescore", json["cu"], json["oid"], json["cn"], json["trm"]);
  6757. });
  6758. //学情报告计算班级平均分
  6759. router.route("/selectClaAvaScore").all(function(req, res, next) {
  6760. var json = queryString(req.url);
  6761. // console.log(json);
  6762. getmysql(req, res, "selectClaAvaScore", json["cid"], json["trm"]);
  6763. });
  6764. //查询协同人员不带org的
  6765. router.route("/selectCollaborativeMembers").all(function(req, res, next) {
  6766. var json = queryString(req.url);
  6767. // console.log(json);
  6768. getmysql(req, res, "selectCollaborativeMembers", json["oid"], json["cu"], json["cn"], json["coll"]);
  6769. });
  6770. //查询协同人员带org
  6771. router.route("/selectCollaborativeMembersOrg").all(function(req, res, next) {
  6772. var json = queryString(req.url);
  6773. // console.log(json);
  6774. getmysql(req, res, "selectCollaborativeMembersOrg", json["oid"], json["cu"], json["cn"], json["coll"]);
  6775. });
  6776. // 教师发展获取数据来源表单标题
  6777. router.route("/selectExamineTestName").all(function(req, res, next) {
  6778. // var json = queryString(req.url);
  6779. // console.log(json);
  6780. postmysql(req, res, "selectExamineTestName");
  6781. // getmysql(req, res, "selectExamineTestName", json["testId"]);
  6782. });
  6783. // 教师发展 页面数据
  6784. router.route("/selectTestExamineBase").all(function(req, res, next) {
  6785. var json = queryString(req.url);
  6786. getmysql(req, res, "selectTestExamineBase", json["typ"], json["org"], json["oid"]);
  6787. });
  6788. // 教师发展 页面数据 添加时间获取
  6789. router.route("/selectTestExamineBase2").all(function(req, res, next) {
  6790. var json = queryString(req.url);
  6791. getmysql(req, res, "selectTestExamineBase2", json["typ"], json["org"], json["oid"],json['time']);
  6792. });
  6793. // 教师发展 按人员页面数据
  6794. router.route("/selectTestExaminePersonData").all(function(req, res, next) {
  6795. var json = queryString(req.url);
  6796. getmysql(req, res, "selectTestExaminePersonData", json["oid"], json["org"], json["type"], json["tname"]);
  6797. });
  6798. // 教师发展 按人员页面数据
  6799. router.route("/selectTestExaminePersonData2").all(function(req, res, next) {
  6800. postmysql(req, res, "selectTestExaminePersonData2");
  6801. });
  6802. // 教师发展 管理员提交数据
  6803. router.route("/updateExamineCogData").all(function(req, res, next) {
  6804. postmysql(req, res, "updateExamineCogData");
  6805. });
  6806. // 教师发展 管理员提交数据(新版添加了修改后保存教师记录)
  6807. router.route("/updateExamineCogDataCopy").all(function(req, res, next) {
  6808. postmysql(req, res, "updateExamineCogDataCopy");
  6809. });
  6810. // 教师发展 获取修改记录
  6811. router.route("/selectExamineOperateRecord").all(function(req, res, next) {
  6812. var json = queryString(req.url);
  6813. getmysql(req, res, "selectExamineOperateRecord", json["tid"], json["type"]);
  6814. });
  6815. // 教师发展 管理员撤回提交数据
  6816. router.route("/updateExamineState").all(function(req, res, next) {
  6817. postmysql(req, res, "updateExamineState");
  6818. });
  6819. // 教师发展 获取数据汇总
  6820. router.route("/selectTestWorksAggregate").all(function(req, res, next) {
  6821. var json = queryString(req.url);
  6822. getmysql(req, res, "selectTestWorksAggregate", json["oid"], json["org"]);
  6823. });
  6824. // 教师发展 提醒
  6825. router.route("/selectExamineTeaRemind").all(function(req, res, next) {
  6826. var json = queryString(req.url);
  6827. getmysql(req, res, "selectExamineTeaRemind", json["oid"], json["org"], json["tea"], json["ptype"]);
  6828. });
  6829. // 课程管理-文档评分
  6830. router.route("/selectWorksEvaScore").all(function(req, res, next) {
  6831. var json = queryString(req.url);
  6832. getmysql(req, res, "selectWorksEvaScore", json["uid"], json["cid"]);
  6833. });
  6834. // 课程管理-文档评分
  6835. router.route("/selectWorksEvaScoreTwo").all(function(req, res, next) {
  6836. var json = queryString(req.url);
  6837. getmysql(req, res, "selectWorksEvaScoreTwo", json["uid"], json["cid"], json["s"], json["t"], json["tool"]);
  6838. });
  6839. // 课程管理-文档评分一次性获取全部
  6840. router.route("/selectWorksEvaScoreNew").all(function(req, res, next) {
  6841. var json = queryString(req.url);
  6842. getmysql(req, res, "selectWorksEvaScoreNew", json["cid"], json["s"], json["t"]);
  6843. });
  6844. /* 新增教研室 */
  6845. router.route("/insertTeacherOfficeCopy").all(function(req, res, next) {
  6846. postmysql(req, res, "insertTeacherOfficeCopy");
  6847. });
  6848. /* 查询教研室*/
  6849. router.route("/selectTeacherOffice2").all(function(req, res, next) {
  6850. var json = queryString(req.url);
  6851. getmysql(req, res, "selectTeacherOffice2", json["cu"], json["oid"], json["cn"], json["pid"], json["page"], 10);
  6852. });
  6853. /* 查询教研室*/
  6854. router.route("/selectPerInfoTeacherOffice").all(function(req, res, next) {
  6855. var json = queryString(req.url);
  6856. getmysql(req, res, "selectPerInfoTeacherOffice", json["cu"], json["oid"], json["cn"], 6);
  6857. });
  6858. /* 查询所有教研室分类与分类下的数据*/
  6859. router.route("/selectPerInfoAllTea").all(function(req, res, next) {
  6860. var json = queryString(req.url);
  6861. getmysql(req, res, "selectPerInfoAllTea",json["oid"]);
  6862. });
  6863. /* 查询教研室类型lim */
  6864. router.route("/selectTeacherOfficeTypeLim").all(function(req, res, next) {
  6865. var json = queryString(req.url);
  6866. getmysql(req, res, "selectTeacherOfficeTypeLim", json["cu"], json["oid"], json["cn"], json["pid"], json["page"], 10);
  6867. });
  6868. /* 查询教研室类型 */
  6869. router.route("/selectTeacherOfficeType").all(function(req, res, next) {
  6870. var json = queryString(req.url);
  6871. getmysql(req, res, "selectTeacherOfficeType", json["cu"], json["oid"], json["cn"], json["pid"]);
  6872. });
  6873. // 存储学生课程分析数据
  6874. router.route("/upDateAnalysis").all(function(req, res, next) {
  6875. postmysql(req, res, "upDateAnalysis");
  6876. });
  6877. // 存储学生课程分析数据 ym
  6878. router.route("/upDateAnalysisTwo").all(function(req, res, next) {
  6879. postmysql(req, res, "upDateAnalysisTwo");
  6880. });
  6881. // 教师手动修改存储学生课程分析数据 ym
  6882. router.route("/upDateAnalysisTeacher").all(function(req, res, next) {
  6883. postmysql(req, res, "upDateAnalysisTeacher");
  6884. });
  6885. // 获取教师管理table数据
  6886. router.route("/selectOrgTeachar").all((req, res, next) => {
  6887. var json = queryString(req.url);
  6888. getmysql(
  6889. req,
  6890. res,
  6891. "selectOrgTeachar",
  6892. json["org"],
  6893. json["oid"],
  6894. json["cu"],
  6895. json["cn"],
  6896. json["page"],
  6897. 10
  6898. );
  6899. });
  6900. // 更新老师信息数据
  6901. router.route("/updateYTeacherInfo").all(function(req, res, next) {
  6902. // console.log(req.query);
  6903. postmysql(req, res, "updateYTeacherInfo");
  6904. });
  6905. //教师管理新增教师
  6906. router.route("/teacherRegistration").post(function(req, res, next) {
  6907. var users = req.body[0];
  6908. //循环注册
  6909. var _username = users.alias;
  6910. var _mail = users.username;
  6911. var _password = users.password || "Coco1234";
  6912. var _alias = users.alias;
  6913. var _org = users.org;
  6914. var _oid = users.oid;
  6915. var _ph = users.ph;
  6916. var _class = users.cid;
  6917. var _sId = users.sid;
  6918. var _typ = users.typ;
  6919. var _rol = users.rol;
  6920. //加密密碼
  6921. _password = bcrypt.hashSync(_password, bcrypt.genSaltSync(10));
  6922. //生成激活碼
  6923. let _hashstr = new Date().getTime() + "";
  6924. let _digest = crypto
  6925. .createHash("sha256")
  6926. .update(_hashstr, "utf8")
  6927. .digest("hex");
  6928. //用戶數據
  6929. var _userdata = [
  6930. _mail,
  6931. _password,
  6932. _alias,
  6933. "",
  6934. 0,
  6935. _username,
  6936. "",
  6937. generateAPIKey(_username),
  6938. _digest,
  6939. "",
  6940. _username,
  6941. _sId,
  6942. _typ,
  6943. _org,
  6944. _oid,
  6945. _ph,
  6946. _class,
  6947. "",
  6948. "0",
  6949. _rol
  6950. ];
  6951. //參數拼接,註冊
  6952. _userdata.unshift(_mysqluser[0], _mysqluser[1], "pbl_add_teacherRegistration");
  6953. //用戶註冊處理
  6954. mysql.usselect(_userdata, function(ret) {
  6955. res.end(
  6956. JSON.stringify({
  6957. uid: ret[1][0].uid,
  6958. ph: _ph,
  6959. oid: _oid,
  6960. cid: _class,
  6961. success: 1,
  6962. })
  6963. );
  6964. });
  6965. });
  6966. //初始化密码
  6967. router.route("/iniPassword").post(function(req, res, next) {
  6968. let users = req.body[0];
  6969. _password = users.pa ? users.pa : "Coco1234";
  6970. //加密密碼
  6971. _password = bcrypt.hashSync(_password, bcrypt.genSaltSync(10));
  6972. //用戶數據
  6973. let _userList = [users.uid, _password];
  6974. _userList.unshift(_mysqlLabor[0], _mysqlLabor[1], "iniPassword");
  6975. mysql.usselect(_userList, function(ret) {
  6976. res.end(JSON.stringify({ success: 1 }));
  6977. });
  6978. });
  6979. //批量添加教师
  6980. router.route("/batchRegistrationMore1").post(function(req, res, next) {
  6981. let users = req.body[0];
  6982. let arr = JSON.parse(decodeURIComponent(req.body[0].arr));
  6983. for (let i = 0; i < arr.length; i++) {
  6984. let _username = encodeURIComponent(arr[i].name)
  6985. let _mail = encodeURIComponent(arr[i].mail)
  6986. let _password = users.password || "Coco1234";
  6987. let _alias = encodeURIComponent(arr[i].name)
  6988. let _org = users.org;
  6989. let _oid = encodeURIComponent(arr[i].school)
  6990. let _ph = encodeURIComponent(arr[i].phone ? arr[i].phone : "")
  6991. let _class = encodeURIComponent(arr[i].class)
  6992. let _sId = encodeURIComponent(arr[i].sId)
  6993. //加密密碼
  6994. _password = bcrypt.hashSync(_password, bcrypt.genSaltSync(10));
  6995. //生成激活碼
  6996. let _hashstr = new Date().getTime() + "";
  6997. let _digest = crypto
  6998. .createHash("sha256")
  6999. .update(_hashstr, "utf8")
  7000. .digest("hex");
  7001. //用戶數據
  7002. let _userdata = [
  7003. _mail,
  7004. _password,
  7005. _alias,
  7006. "",
  7007. 0, //0老师 1学生
  7008. _username,
  7009. "",
  7010. generateAPIKey(_username),
  7011. _digest,
  7012. "",
  7013. _username,
  7014. _sId,
  7015. 1, //1老师 2学生
  7016. _org,
  7017. _oid,
  7018. "",
  7019. "",
  7020. "",
  7021. "0",
  7022. ];
  7023. //參數拼接,註冊
  7024. _userdata.unshift(
  7025. _mysqluser[0],
  7026. _mysqluser[1],
  7027. "pbl_add_batchregister_oid"
  7028. );
  7029. //用戶註冊處理
  7030. mysql.usselect(_userdata, function(ret) {
  7031. res.end(JSON.stringify({ success: 1 }));
  7032. });
  7033. }
  7034. });
  7035. //赛事批量注册老师
  7036. router.route("/pbl_add_raceuser_oid").post(function(req, res, next) {
  7037. let users = req.body[0];
  7038. let arr = JSON.parse(decodeURIComponent(req.body[0].arr));
  7039. for (let i = 0; i < arr.length; i++) {
  7040. let _username = encodeURIComponent(arr[i].name)
  7041. let _mail = encodeURIComponent(arr[i].mail)
  7042. let _password = users.password || "Coco1234";
  7043. let _oid = encodeURIComponent(arr[i].school)
  7044. //加密密碼
  7045. _password = bcrypt.hashSync(_password, bcrypt.genSaltSync(10));
  7046. //生成激活碼
  7047. let _hashstr = new Date().getTime() + "";
  7048. let _digest = crypto
  7049. .createHash("sha256")
  7050. .update(_hashstr, "utf8")
  7051. .digest("hex");
  7052. //用戶數據
  7053. let _userdata = [
  7054. _mail,
  7055. _oid,
  7056. _password,
  7057. _username,
  7058. 1, //1普通教师 2市级 3省级 4市级子级评委 5县区评委 6县区子级
  7059. ];
  7060. //參數拼接,註冊
  7061. _userdata.unshift(_mysqlLabor[0], _mysqlLabor[1], "pbl_add_raceuser_oid");
  7062. //用戶註冊處理
  7063. mysql.usselect(_userdata, function(ret) {
  7064. res.end(JSON.stringify({ success: 1 }));
  7065. });
  7066. }
  7067. });
  7068. //新增学生
  7069. router.route("/batchRegistration").post(function(req, res, next) {
  7070. var users = req.body[0];
  7071. //循环注册
  7072. var _username = users.alias;
  7073. var _mail = users.username;
  7074. var _password = users.password || "Coco1234";
  7075. var _alias = users.alias;
  7076. var _oid = users.oid;
  7077. var _ph = users.ph;
  7078. var _class = users.cid;
  7079. var _sId = users.sid;
  7080. //加密密碼
  7081. _password = bcrypt.hashSync(_password, bcrypt.genSaltSync(10));
  7082. //生成激活碼
  7083. let _hashstr = new Date().getTime() + "";
  7084. let _digest = crypto
  7085. .createHash("sha256")
  7086. .update(_hashstr, "utf8")
  7087. .digest("hex");
  7088. //用戶數據
  7089. var _userdata = [
  7090. _mail,
  7091. _password,
  7092. _alias,
  7093. "",
  7094. 1,
  7095. _username,
  7096. "",
  7097. generateAPIKey(_username),
  7098. _digest,
  7099. "",
  7100. _username,
  7101. _sId,
  7102. 2,
  7103. _oid,
  7104. _ph,
  7105. _class,
  7106. "",
  7107. "0",
  7108. ];
  7109. //參數拼接,註冊
  7110. _userdata.unshift(_mysqluser[0], _mysqluser[1], "pbl_add_batchregister");
  7111. //用戶註冊處理
  7112. mysql.usselect(_userdata, function(ret) {
  7113. res.end(
  7114. JSON.stringify({
  7115. uid: ret[1][0].uid,
  7116. ph: _ph,
  7117. oid: _oid,
  7118. cid: _class,
  7119. success: 1,
  7120. })
  7121. );
  7122. });
  7123. });
  7124. //深圳电教馆注册
  7125. router.route("/batchRegistrationSzdjg").post(function(req, res, next) {
  7126. var users = Object.values(req.body)[0].split(",");
  7127. //循环注册
  7128. var _username = users[0]; //名字
  7129. var _mail = users[1]; //用户名 账号
  7130. var _password = "Coco1234";
  7131. var _alias = _username;
  7132. var _org = users[2];
  7133. var _oid = users[3];
  7134. var _ph = users[4];
  7135. var _class = users[5];
  7136. var _type = users[6];
  7137. var _openid = users[7];
  7138. //加密密碼
  7139. _password = bcrypt.hashSync(_password, bcrypt.genSaltSync(10));
  7140. //生成激活碼
  7141. let _hashstr = new Date().getTime() + "";
  7142. let _digest = crypto
  7143. .createHash("sha256")
  7144. .update(_hashstr, "utf8")
  7145. .digest("hex");
  7146. //用戶數據
  7147. var _userdata = [
  7148. _mail,
  7149. _password,
  7150. _alias,
  7151. "",
  7152. 0,
  7153. _username,
  7154. _openid,
  7155. generateAPIKey(_username),
  7156. _digest,
  7157. "",
  7158. _username,
  7159. '',
  7160. _type,
  7161. _org,
  7162. _oid,
  7163. _ph,
  7164. _class,
  7165. "",
  7166. "0",
  7167. ];
  7168. //參數拼接,註冊
  7169. _userdata.unshift(_mysqluser[0], _mysqluser[1], "pbl_add_batchregisterSzdjg");
  7170. //用戶註冊處理
  7171. mysql.usselect(_userdata, function(ret) {
  7172. res.end(
  7173. JSON.stringify({
  7174. uid: ret[1][0].uid,
  7175. ph: _ph,
  7176. oid: _oid,
  7177. cid: _class,
  7178. success: 1,
  7179. })
  7180. );
  7181. });
  7182. });
  7183. //深圳电教馆注册
  7184. router.route("/batchRegistrationSzdjg2").post(function(req, res, next) {
  7185. var users = Object.values(req.body)[0].split(",");
  7186. //循环注册
  7187. var _username = users[0]; //名字
  7188. var _mail = users[1]; //用户名 账号
  7189. var _password = "Coco1234";
  7190. var _alias = _username;
  7191. var _org = users[2];
  7192. var _oid = users[3];
  7193. var _ph = users[4];
  7194. var _class = users[5];
  7195. var _type = users[6];
  7196. var _openid = users[7];
  7197. var _dest = users[8];
  7198. //加密密碼
  7199. _password = bcrypt.hashSync(_password, bcrypt.genSaltSync(10));
  7200. //生成激活碼
  7201. let _hashstr = new Date().getTime() + "";
  7202. let _digest = crypto
  7203. .createHash("sha256")
  7204. .update(_hashstr, "utf8")
  7205. .digest("hex");
  7206. //用戶數據
  7207. var _userdata = [
  7208. _mail,
  7209. _password,
  7210. _alias,
  7211. "",
  7212. 0,
  7213. _username,
  7214. _openid,
  7215. generateAPIKey(_username),
  7216. _digest,
  7217. "",
  7218. _username,
  7219. '',
  7220. _type,
  7221. _org,
  7222. _oid,
  7223. _ph,
  7224. _class,
  7225. "",
  7226. "0",
  7227. _dest
  7228. ];
  7229. //參數拼接,註冊
  7230. _userdata.unshift(_mysqluser[0], _mysqluser[1], "pbl_add_batchregisterSzdjg2");
  7231. //用戶註冊處理
  7232. mysql.usselect(_userdata, function(ret) {
  7233. res.end(
  7234. JSON.stringify({
  7235. uid: ret[1][0].uid,
  7236. ph: _ph,
  7237. oid: _oid,
  7238. cid: _class,
  7239. success: 1,
  7240. })
  7241. );
  7242. });
  7243. });
  7244. //深圳电教馆注册
  7245. router.route("/batchRegistrationSzdjg3").post(function(req, res, next) {
  7246. var users = Object.values(req.body)[0].split(",");
  7247. //循环注册
  7248. var _username = users[0]; //名字
  7249. var _mail = users[1]; //用户名 账号
  7250. var _password = "Coco1234";
  7251. var _alias = _username;
  7252. var _org = users[2];
  7253. var _oid = users[3];
  7254. var _ph = users[4];
  7255. var _class = users[5];
  7256. var _type = users[6];
  7257. var _openid = users[7];
  7258. var _dest = users[8];
  7259. var _eduId = users[9];
  7260. //加密密碼
  7261. _password = bcrypt.hashSync(_password, bcrypt.genSaltSync(10));
  7262. //生成激活碼
  7263. let _hashstr = new Date().getTime() + "";
  7264. let _digest = crypto
  7265. .createHash("sha256")
  7266. .update(_hashstr, "utf8")
  7267. .digest("hex");
  7268. //用戶數據
  7269. var _userdata = [
  7270. _mail,
  7271. _password,
  7272. _alias,
  7273. "",
  7274. 0,
  7275. _username,
  7276. _openid,
  7277. generateAPIKey(_username),
  7278. _digest,
  7279. "",
  7280. _username,
  7281. '',
  7282. _type,
  7283. _org,
  7284. _oid,
  7285. _ph,
  7286. _class,
  7287. "",
  7288. "0",
  7289. _dest,
  7290. _eduId
  7291. ];
  7292. //參數拼接,註冊
  7293. _userdata.unshift(_mysqluser[0], _mysqluser[1], "pbl_add_batchregisterSzdjg3");
  7294. //用戶註冊處理
  7295. mysql.usselect(_userdata, function(ret) {
  7296. res.end(
  7297. JSON.stringify({
  7298. uid: ret[1][0].uid,
  7299. ph: _ph,
  7300. oid: _oid,
  7301. cid: _class,
  7302. success: 1,
  7303. })
  7304. );
  7305. });
  7306. });
  7307. //新增用户接口
  7308. router.route("/batchRegistrationUser").post(function(req, res, next) {
  7309. var users = req.body[0];
  7310. //循环注册
  7311. var _username = users.alias; //名字
  7312. var _mail = users.username; //用户名 账号
  7313. var _password = "Coco1234";
  7314. var _alias = _username;
  7315. var _org = users.org;
  7316. var _oid = users.oid;
  7317. var _ph = users.ph;
  7318. var _class = users.cid;
  7319. var _type = users.type;
  7320. var _openid = users.opid;
  7321. var _dest = users.dest;
  7322. var _eduId = users.eduid;
  7323. //加密密碼
  7324. _password = bcrypt.hashSync(_password, bcrypt.genSaltSync(10));
  7325. //生成激活碼
  7326. let _hashstr = new Date().getTime() + "";
  7327. let _digest = crypto
  7328. .createHash("sha256")
  7329. .update(_hashstr, "utf8")
  7330. .digest("hex");
  7331. //用戶數據
  7332. var _userdata = [
  7333. _mail,
  7334. _password,
  7335. _alias,
  7336. "",
  7337. 0,
  7338. _username,
  7339. _openid,
  7340. generateAPIKey(_username),
  7341. _digest,
  7342. "",
  7343. _username,
  7344. '',
  7345. _type,
  7346. _org,
  7347. _oid,
  7348. _ph,
  7349. _class,
  7350. "",
  7351. "0",
  7352. _dest,
  7353. _eduId
  7354. ];
  7355. //參數拼接,註冊
  7356. _userdata.unshift(_mysqluser[0], _mysqluser[1], "pbl_add_batchregisterSzdjg3");
  7357. //用戶註冊處理
  7358. mysql.usselect(_userdata, function(ret) {
  7359. res.end(
  7360. JSON.stringify({
  7361. uid: ret[1][0].uid,
  7362. ph: _ph,
  7363. oid: _oid,
  7364. cid: _class,
  7365. success: 1,
  7366. })
  7367. );
  7368. });
  7369. });
  7370. //新增教师
  7371. router.route("/batchRegistration1").post(function(req, res, next) {
  7372. var users = req.body[0];
  7373. //循环注册
  7374. var _username = users.alias;
  7375. var _mail = users.username;
  7376. var _password = users.password || "Coco1234";
  7377. var _alias = users.alias;
  7378. var _org = users.org;
  7379. var _oid = users.oid;
  7380. var _ph = users.ph;
  7381. var _class = users.cid;
  7382. var _sId = users.sid;
  7383. //加密密碼
  7384. _password = bcrypt.hashSync(_password, bcrypt.genSaltSync(10));
  7385. //生成激活碼
  7386. let _hashstr = new Date().getTime() + "";
  7387. let _digest = crypto
  7388. .createHash("sha256")
  7389. .update(_hashstr, "utf8")
  7390. .digest("hex");
  7391. //用戶數據
  7392. var _userdata = [
  7393. _mail,
  7394. _password,
  7395. _alias,
  7396. "",
  7397. 0,
  7398. _username,
  7399. "",
  7400. generateAPIKey(_username),
  7401. _digest,
  7402. "",
  7403. _username,
  7404. _sId,
  7405. 1,
  7406. _org,
  7407. _oid,
  7408. _ph,
  7409. _class,
  7410. "",
  7411. "0",
  7412. ];
  7413. //參數拼接,註冊
  7414. _userdata.unshift(_mysqluser[0], _mysqluser[1], "pbl_add_batchregister1");
  7415. //用戶註冊處理
  7416. mysql.usselect(_userdata, function(ret) {
  7417. res.end(
  7418. JSON.stringify({
  7419. uid: ret[1][0].uid,
  7420. ph: _ph,
  7421. oid: _oid,
  7422. cid: _class,
  7423. success: 1,
  7424. })
  7425. );
  7426. });
  7427. });
  7428. router.route("/batchRegistrationOrg").post(function(req, res, next) {
  7429. var users = req.body[0];
  7430. //循环注册
  7431. var _username = users.alias;
  7432. var _mail = users.username;
  7433. var _password = users.password || "Coco1234";
  7434. var _alias = users.alias;
  7435. var _oid = users.oid;
  7436. var _ph = users.ph;
  7437. var _class = users.cid;
  7438. var _sId = users.sid;
  7439. var _org = users.org;
  7440. //加密密碼
  7441. _password = bcrypt.hashSync(_password, bcrypt.genSaltSync(10));
  7442. //生成激活碼
  7443. let _hashstr = new Date().getTime() + "";
  7444. let _digest = crypto
  7445. .createHash("sha256")
  7446. .update(_hashstr, "utf8")
  7447. .digest("hex");
  7448. //用戶數據
  7449. var _userdata = [
  7450. _mail,
  7451. _password,
  7452. _alias,
  7453. "",
  7454. 1,
  7455. _username,
  7456. "",
  7457. generateAPIKey(_username),
  7458. _digest,
  7459. "",
  7460. _username,
  7461. _sId,
  7462. 2,
  7463. _oid,
  7464. _ph,
  7465. _class,
  7466. "",
  7467. "0",
  7468. _org,
  7469. ];
  7470. //參數拼接,註冊
  7471. _userdata.unshift(_mysqluser[0], _mysqluser[1], "pbl_add_batchregister_org");
  7472. //用戶註冊處理
  7473. mysql.usselect(_userdata, function(ret) {
  7474. res.end(
  7475. JSON.stringify({
  7476. uid: ret[1][0].uid,
  7477. ph: _ph,
  7478. oid: _oid,
  7479. cid: _class,
  7480. success: 1,
  7481. })
  7482. );
  7483. });
  7484. });
  7485. router.route("/batchRegistrationMoreOrg").post(function(req, res, next) {
  7486. let users = req.body[0];
  7487. let arr = JSON.parse(decodeURIComponent(req.body[0].arr));
  7488. for (let i = 0; i < arr.length; i++) {
  7489. let _username = encodeURIComponent(arr[i].name)
  7490. let _mail = encodeURIComponent(arr[i].mail)
  7491. let _password = users.password || "Coco1234";
  7492. let _alias = encodeURIComponent(arr[i].name)
  7493. let _oid = users.oid;
  7494. let _ph = encodeURIComponent(arr[i].phone ? arr[i].phone : "")
  7495. let _class = encodeURIComponent(arr[i].class)
  7496. let _sId = encodeURIComponent(arr[i].sId)
  7497. let _org = users.org;
  7498. //加密密碼
  7499. _password = bcrypt.hashSync(_password, bcrypt.genSaltSync(10));
  7500. //生成激活碼
  7501. let _hashstr = new Date().getTime() + "";
  7502. let _digest = crypto
  7503. .createHash("sha256")
  7504. .update(_hashstr, "utf8")
  7505. .digest("hex");
  7506. //用戶數據
  7507. let _userdata = [
  7508. _mail,
  7509. _password,
  7510. _alias,
  7511. "",
  7512. 1, //0老师 1学生
  7513. _username,
  7514. "",
  7515. generateAPIKey(_username),
  7516. _digest,
  7517. "",
  7518. _username,
  7519. _sId,
  7520. 2, //1老师 2学生
  7521. _oid,
  7522. _ph,
  7523. _class,
  7524. "",
  7525. "0",
  7526. _org,
  7527. ];
  7528. //參數拼接,註冊
  7529. _userdata.unshift(
  7530. _mysqluser[0],
  7531. _mysqluser[1],
  7532. "pbl_add_batchregister_org2"
  7533. );
  7534. //用戶註冊處理
  7535. mysql.usselect(_userdata, function(ret) {
  7536. res.end(JSON.stringify({ success: 1 }));
  7537. });
  7538. }
  7539. });
  7540. //工作室管理
  7541. router.route("/updateStudioWorkNew4").all((req, res, next) => {
  7542. //学生
  7543. if (req.body[0]) {
  7544. let p = [req.body[0].cid];
  7545. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "select_studio_course_detail2"); //執行存儲過程
  7546. mysql.usselect(p, function(ret) {
  7547. let _unitIndex = parseInt(req.body[0].unitIndex);
  7548. let _chapters = JSON.parse(decodeURIComponent(req.body[0].chapters));
  7549. let _unitJson = JSON.parse(ret[0][0].chapters);
  7550. if (_unitJson.length - 1 < _unitIndex) {
  7551. let _i = _unitIndex - (_unitJson.length - 1);
  7552. for (let i = 0; i < _i; i++) {
  7553. _unitJson.push({
  7554. dyName: "", //单元标题
  7555. chapterInfo: [{
  7556. isread: false,
  7557. chapterid: guid(),
  7558. title: "",
  7559. courseName: "",
  7560. taskJson: [{
  7561. task: "",
  7562. taskDetail: "",
  7563. chapterData: [],
  7564. toolText: "",
  7565. toolChoose: [{
  7566. tool: [],
  7567. toolDetail: "",
  7568. toolType: 0,
  7569. askCount: 1,
  7570. askTitle: "",
  7571. askJson: [{ askstitle: "", askItem: 1, checkList: [] }],
  7572. }, ],
  7573. isShowTools: false,
  7574. askCount: 1,
  7575. isFold: 0,
  7576. askTitle: "",
  7577. askJson: [{ askstitle: "", askItem: 1, checkList: [] }],
  7578. checkJson: [{ checkCount: [], checkPerent: [] }],
  7579. homeworkList: [],
  7580. }, ],
  7581. itemCount: 1,
  7582. fileList1: [],
  7583. video: [],
  7584. testData: [],
  7585. pData: [],
  7586. templateArray: [],
  7587. }, ],
  7588. });
  7589. }
  7590. _unitJson[_unitIndex] = _chapters[_unitIndex];
  7591. } else {
  7592. _unitJson[_unitIndex] = _chapters[_unitIndex];
  7593. }
  7594. // console.log(_unitJson);
  7595. let p2 = [
  7596. req.body[0].cid,
  7597. encodeURIComponent(JSON.stringify(_unitJson)),
  7598. ];
  7599. p2.unshift(_mysqlLabor[0], _mysqlLabor[1], "updateStudioWorkNew4"); //執行存儲過程
  7600. mysql.usselect(p2, function(ret) {
  7601. res.end(JSON.stringify({ success: 1 }));
  7602. });
  7603. // res.end(JSON.stringify({ success: 1 }));
  7604. });
  7605. }
  7606. });
  7607. router.route("/updateStudioWorkNew2").all((req, res, next) => {
  7608. //学生
  7609. if (req.body[0]) {
  7610. p = [
  7611. req.body[0].cid,
  7612. req.body[0].title,
  7613. req.body[0].brief,
  7614. req.body[0].cover,
  7615. req.body[0].evaId,
  7616. req.body[0].astudent,
  7617. req.body[0].see,
  7618. req.body[0].chapters,
  7619. req.body[0].template,
  7620. req.body[0].ateacher,
  7621. ];
  7622. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "updateStudioWorkNew2"); //執行存儲過程
  7623. mysql.usselect(p, function(ret) {
  7624. let course = req.body[0].courseType;
  7625. let courseId = req.body[0].cid;
  7626. let userid = req.body[0].uid;
  7627. delStudioCourseTypeS(course, courseId, userid);
  7628. res.end(JSON.stringify({ success: 1 }));
  7629. });
  7630. }
  7631. });
  7632. router.route("/addStudioCourseWorkNew2").all((req, res, next) => {
  7633. //学生
  7634. if (req.body[0]) {
  7635. p = [
  7636. req.body[0].uid,
  7637. req.body[0].title,
  7638. req.body[0].brief,
  7639. req.body[0].cover,
  7640. req.body[0].evaId,
  7641. req.body[0].astudent,
  7642. req.body[0].see,
  7643. req.body[0].chapters,
  7644. req.body[0].template,
  7645. req.body[0].ateacher,
  7646. ];
  7647. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "addStudioCourseWorkNew2"); //執行存儲過程
  7648. mysql.usselect(p, function(ret) {
  7649. let course = req.body[0].courseType;
  7650. let courseId = ret[0][0].courseId;
  7651. let userid = req.body[0].uid;
  7652. delStudioCourseTypeS(course, courseId, userid);
  7653. res.end(
  7654. JSON.stringify({
  7655. ordernumber: ret[0][0].ordernumber,
  7656. courseId: ret[0][0].courseId,
  7657. success: 1,
  7658. })
  7659. );
  7660. });
  7661. }
  7662. });
  7663. //teacher 查询项目模板
  7664. router.route("/getStudioTemplateTs").all((req, res, next) => {
  7665. var json = queryString(req.url);
  7666. getmysql(req, res, "getStudioTemplateTs", json["oid"]);
  7667. });
  7668. //查看课程
  7669. router.route("/select_studio_course_detail").all((req, res, next) => {
  7670. //学生
  7671. var json = queryString(req.url);
  7672. getmysql(req, res, "select_studio_course_detail", json["cid"]);
  7673. });
  7674. //查看课程
  7675. router.route("/select_studio_course_detail2").all((req, res, next) => {
  7676. //学生
  7677. var json = queryString(req.url);
  7678. getmysql(req, res, "select_studio_course_detail2", json["cid"]);
  7679. });
  7680. //协同恢复删除的阶段
  7681. router.route("/restoreStudioWork").all((req, res, next) => {
  7682. //学生
  7683. if (req.body[0]) {
  7684. let p = [req.body[0].cid];
  7685. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "select_studio_course_detail2"); //執行存儲過程
  7686. mysql.usselect(p, function(ret) {
  7687. let _chapid = req.body[0].chapid;
  7688. // console.log(_chapid);
  7689. let _chapters = JSON.parse(decodeURIComponent(req.body[0].chapters));
  7690. let _unitJson = JSON.parse(ret[0][0].chapters);
  7691. let _unitJson2 = [];
  7692. let chpaindex;
  7693. for (var i = 0; i < _chapters.length; i++) {
  7694. if (_chapters[i].chapterInfo[0].chapterid == _chapid) {
  7695. chpaindex = i;
  7696. }
  7697. }
  7698. for (var i = 0; i < _unitJson.length; i++) {
  7699. if (_unitJson[i].chapterInfo[0].chapterid != _chapid) {
  7700. // console.log(1);
  7701. // _unitJson.splice(i, -1)
  7702. _unitJson2.push(_unitJson[i]);
  7703. // break;
  7704. }
  7705. }
  7706. _unitJson2.splice(chpaindex, 0, _chapters[chpaindex]);
  7707. // console.log(_unitJson2);
  7708. let p2 = [
  7709. req.body[0].cid,
  7710. JSON.stringify(_unitJson2).replaceAll(/%/g, "%25"),
  7711. ];
  7712. p2.unshift(_mysqlLabor[0], _mysqlLabor[1], "updateStudioWorkNew4"); //執行存儲過程
  7713. mysql.usselect(p2, function(ret) {
  7714. res.end(JSON.stringify({ success: 1 }));
  7715. });
  7716. // res.end(JSON.stringify({ success: 1 }));
  7717. });
  7718. }
  7719. });
  7720. //查询分类及所有子分类
  7721. router.route("/selectAllTypeStudio").all((req, res, next) => {
  7722. var json = queryString(req.url);
  7723. getmysql(req, res, "selectAllTypeStudio", json["org"], json["oid"]);
  7724. });
  7725. //上传文件
  7726. router.route("/addStudioCourseWorksS").all((req, res, next) => {
  7727. postmysql(req, res, "addStudioCourseWorksS");
  7728. });
  7729. //删除提交的作业
  7730. router.route("/deleteStudioCourseWorkS").all((req, res, next) => {
  7731. postmysql(req, res, "deleteStudioCourseWorkS");
  7732. });
  7733. //创建新话题
  7734. router.route("/addSubTalk").all((req, res, next) => {
  7735. postmysql(req, res, "addSubTalk");
  7736. });
  7737. //创建新子分类
  7738. router.route("/addEngVType").all((req, res, next) => {
  7739. postmysql(req, res, "addEngVType");
  7740. });
  7741. router.route("/selectStudioCourseNew222").all((req, res, next) => {
  7742. var json = queryString(req.url);
  7743. getmysql(
  7744. req,
  7745. res,
  7746. "selectStudioCourseNew222",
  7747. json["type"],
  7748. json["uid"],
  7749. json["oid"],
  7750. json["org"],
  7751. json["typea"],
  7752. json["typeb"],
  7753. json["typec"],
  7754. json["typed"],
  7755. json["typef"],
  7756. json["typeE"],
  7757. json["cu"],
  7758. json["cn"],
  7759. json["page"],
  7760. json["pageSize"]
  7761. );
  7762. });
  7763. //删除1课程
  7764. router.route("/deleteStudioCourse").all((req, res, next) => {
  7765. var json = queryString(req.url);
  7766. getmysql2(req, res, "deleteStudioCourse", json["cid"]);
  7767. });
  7768. //添加分享课程数据
  7769. router.route("/addShareCourse").post((req, res, next) => {
  7770. var json = queryString(req.url);
  7771. postmysql(req, res, "addShareCourse");
  7772. });
  7773. //获取分享课程数据
  7774. router.route("/getShareCourse").all((req, res, next) => {
  7775. var json = queryString(req.url);
  7776. getmysql(req, res, "getShareCourse", json["cid"],json["type"]);
  7777. });
  7778. router.route("/delShareCourse").all((req, res, next) => {
  7779. var json = queryString(req.url);
  7780. postmysql(req, res, "delShareCourse");
  7781. });
  7782. function delStudioCourseTypeS(course, courseId, userid) {
  7783. let _courseId = courseId;
  7784. var _userdata = [_courseId];
  7785. _userdata.unshift(_mysqlLabor[0], _mysqlLabor[1], "delete_studioCourseTypeS");
  7786. mysql.usselect(_userdata, function(ret) {
  7787. // console.log(ret);
  7788. addStudioCourseTypeS(userid, course, _courseId);
  7789. });
  7790. // setTimeout(() => {
  7791. // }, 1000);
  7792. }
  7793. function addStudioCourseTypeS(userid, course, _courseId) {
  7794. var _uid = userid;
  7795. var _courses = _courseId;
  7796. var _tid = JSON.parse(decodeURIComponent(course));
  7797. for (let i = 0; i < _tid.length; i++) {
  7798. if (_tid[i] == "") {
  7799. continue;
  7800. }
  7801. var _userdata = [_courses, _tid[i], _uid];
  7802. _userdata.unshift(_mysqlLabor[0], _mysqlLabor[1], "add_studioCourseTypeS");
  7803. mysql.usselect(_userdata, function(ret) {
  7804. // console.log(ret);
  7805. });
  7806. }
  7807. }
  7808. //删除作业阶段任务工具
  7809. router.route("/deleteStudioToolSTT").all((req, res, next) => {
  7810. postmysql(req, res, "deleteStudioToolSTT");
  7811. });
  7812. //删除作业阶段任务
  7813. router.route("/deleteStudioToolST").all((req, res, next) => {
  7814. postmysql(req, res, "deleteStudioToolST");
  7815. });
  7816. //删除作业阶段
  7817. router.route("/deleteStudioToolS").all((req, res, next) => {
  7818. postmysql(req, res, "deleteStudioToolST");
  7819. });
  7820. //工作管理首页查询分类
  7821. router.route("/selectStudioCourseNew22Mode").all((req, res, next) => {
  7822. var json = queryString(req.url);
  7823. getmysql(
  7824. req,
  7825. res,
  7826. "selectStudioCourseNew22Mode",
  7827. json["type"],
  7828. json["uid"],
  7829. json["oid"],
  7830. json["org"],
  7831. json["typea"],
  7832. json["typeb"],
  7833. json["typec"],
  7834. json["typed"],
  7835. json["typef"],
  7836. json["typeE"],
  7837. json["cu"],
  7838. json["cn"]
  7839. );
  7840. });
  7841. //工作管理首页查询
  7842. router.route("/selectStudioCourseNew22").all((req, res, next) => {
  7843. var json = queryString(req.url);
  7844. getmysql(
  7845. req,
  7846. res,
  7847. "selectStudioCourseNew22",
  7848. json["type"],
  7849. json["uid"],
  7850. json["oid"],
  7851. json["org"],
  7852. json["typea"],
  7853. json["typeb"],
  7854. json["typec"],
  7855. json["typed"],
  7856. json["typef"],
  7857. json["typeE"],
  7858. json["cu"],
  7859. json["cn"],
  7860. json["page"],
  7861. json["pageSize"]
  7862. );
  7863. });
  7864. //根据学校查询banner
  7865. router.route("/selectBannerByOidStudio").all((req, res, next) => {
  7866. var json = queryString(req.url);
  7867. getmysql(req, res, "selectBannerByOidStudio", json["oid"]);
  7868. });
  7869. //admin 查询banner
  7870. router.route("/getBannerStudio").all((req, res, next) => {
  7871. var json = queryString(req.url);
  7872. getmysql(req, res, "getBannerStudio");
  7873. });
  7874. //查询工作课程详情
  7875. router.route("/selectStudioCourseDetail2").all((req, res, next) => {
  7876. //学生
  7877. var json = queryString(req.url);
  7878. getmysql(req, res, "selectStudioCourseDetail2", json["courseId"]);
  7879. });
  7880. //查询工作课程详情
  7881. router.route("/selectStudioCourseDetail3").all((req, res, next) => {
  7882. //学生
  7883. var json = queryString(req.url);
  7884. getmysql(req, res, "selectStudioCourseDetail3", json["courseId"]);
  7885. });
  7886. //上传文件
  7887. router.route("/addCourseWorks4studio").all((req, res, next) => {
  7888. postmysql3(req, res, "addCourseWorks4studio");
  7889. });
  7890. //查询教师资源分类
  7891. router.route("/selectAllSourceType").all((req, res, next) => {
  7892. //学生
  7893. var json = queryString(req.url);
  7894. getmysql(req, res, "selectAllSourceType", json["oid"], json["org"]);
  7895. });
  7896. //查询资源分类
  7897. router.route("/selectAllEvaType").all((req, res, next) => {
  7898. var json = queryString(req.url);
  7899. getmysql(req, res, "selectAllEvaType", json["oid"], json["org"]);
  7900. });
  7901. router.route("/addSource").all((req, res, next) => {
  7902. //添加资源
  7903. if (req.body[0]) {
  7904. p = [
  7905. req.body[0].name,
  7906. req.body[0].url,
  7907. req.body[0].detail,
  7908. req.body[0].label,
  7909. req.body[0].userid,
  7910. ];
  7911. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "addSource");
  7912. //執行存儲過程
  7913. mysql.usselect(p, function(ret) {
  7914. let course = req.body[0].courseType;
  7915. let courseId = ret[0][0].id;
  7916. let userid = req.body[0].userid;
  7917. delSourceType(course, courseId, userid);
  7918. res.end(JSON.stringify({ id: ret[0][0].id, success: 1 }));
  7919. // res.end(JSON.stringify(ret));
  7920. });
  7921. }
  7922. });
  7923. //删除1资源模板分类
  7924. router.route("/deleteCETLabel").all((req, res, next) => {
  7925. var json = queryString(req.url);
  7926. getmysql2(req, res, "deleteCETLabel", json["cid"]);
  7927. });
  7928. //添加资源模板分类
  7929. router.route("/addCETLabel").all((req, res, next) => {
  7930. postmysql(req, res, "addCETLabel");
  7931. });
  7932. //资源模板分享
  7933. router.route("/addCETShare").all((req, res, next) => {
  7934. // if (req.body[0]) {
  7935. // p = [
  7936. // req.body[0].uid,
  7937. // req.body[0].n,
  7938. // req.body[0].json,
  7939. // req.body[0].t,
  7940. // req.body[0].oid,
  7941. // ];
  7942. // p.unshift(_mysqlLabor[0], _mysqlLabor[1], "addCETShare");
  7943. // //執行存儲過程
  7944. // mysql.usselect(p, function(ret) {
  7945. // res.end(JSON.stringify({ id: ret[0][0].id, success: 1 }));
  7946. // // res.end(JSON.stringify(ret));
  7947. // });
  7948. // }
  7949. postmysql(req, res, "addCETShare");
  7950. });
  7951. router.route("/updateSource").all((req, res, next) => {
  7952. //修改资源
  7953. if (req.body[0]) {
  7954. p = [
  7955. req.body[0].id,
  7956. req.body[0].name,
  7957. req.body[0].url,
  7958. req.body[0].detail,
  7959. req.body[0].label,
  7960. req.body[0].userid,
  7961. ];
  7962. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "updateSource");
  7963. //執行存儲過程
  7964. mysql.usselect(p, function(ret) {
  7965. let course = req.body[0].courseType;
  7966. let courseId = req.body[0].id;
  7967. let userid = req.body[0].userid;
  7968. delSourceType(course, courseId, userid);
  7969. res.end(JSON.stringify({ id: req.body[0].id, success: 1 }));
  7970. // res.end(JSON.stringify(ret));
  7971. });
  7972. }
  7973. });
  7974. function delSourceType(course, courseId, userid) {
  7975. let _courseId = courseId;
  7976. var _userdata = [_courseId];
  7977. _userdata.unshift(_mysqlLabor[0], _mysqlLabor[1], "delete_sourceType");
  7978. mysql.usselect(_userdata, function(ret) {
  7979. addSourceType(userid, course, _courseId);
  7980. });
  7981. }
  7982. function addSourceType(userid, course, _courseId) {
  7983. var _uid = userid;
  7984. var _courses = _courseId;
  7985. var _tid = JSON.parse(decodeURIComponent(course));
  7986. for (let i = 0; i < _tid.length; i++) {
  7987. if (_tid[i] == "") {
  7988. continue;
  7989. }
  7990. var _userdata = [_courses, _tid[i], _uid];
  7991. _userdata.unshift(_mysqlLabor[0], _mysqlLabor[1], "add_sourceType");
  7992. mysql.usselect(_userdata, function(ret) {
  7993. // console.log(ret);
  7994. });
  7995. }
  7996. }
  7997. //资源查询
  7998. router.route("/selectSource").all((req, res, next) => {
  7999. var json = queryString(req.url);
  8000. getmysql(
  8001. req,
  8002. res,
  8003. "selectSource",
  8004. json["uid"],
  8005. json["oid"],
  8006. json["org"],
  8007. json["typea"],
  8008. json["typeb"],
  8009. json["typeE"],
  8010. json["cn"],
  8011. json["page"],
  8012. json["pageSize"]
  8013. );
  8014. });
  8015. //评价资源查询
  8016. router.route("/selectCourseEvaT").all((req, res, next) => {
  8017. var json = queryString(req.url);
  8018. getmysql(
  8019. req,
  8020. res,
  8021. "selectCourseEvaT",
  8022. json["uid"],
  8023. json["oid"],
  8024. json["org"],
  8025. json["typea"],
  8026. json["typeb"],
  8027. json["typeE"],
  8028. json["cn"],
  8029. json["type"],
  8030. json["page"],
  8031. json["pageSize"]
  8032. );
  8033. });
  8034. //评价资源重命名 修1
  8035. router.route("/updateCourseET").get((req, res, next) => {
  8036. var json = queryString(req.url);
  8037. getmysql2(
  8038. req,
  8039. res,
  8040. "updateCourseET",
  8041. json["id"],
  8042. json["n"],
  8043. );
  8044. });
  8045. //删除1评价资源
  8046. router.route("/deleteCourseET").all((req, res, next) => {
  8047. var json = queryString(req.url);
  8048. getmysql2(
  8049. req,
  8050. res,
  8051. "deleteCourseET",
  8052. json["id"],
  8053. );
  8054. });
  8055. //添加评价资源分类 修1
  8056. router.route("/addCETType").get((req, res, next) => {
  8057. var json = queryString(req.url);
  8058. getmysql2(
  8059. req,
  8060. res,
  8061. "addCETType",
  8062. json["pid"],
  8063. json["ppid"],
  8064. json["n"],
  8065. json["uid"],
  8066. json["oid"],
  8067. );
  8068. });
  8069. //课程打开次数
  8070. router.route("/addOpenCoursenum").all((req, res, next) => {
  8071. postmysql(req, res, "addOpenCoursenum");
  8072. });
  8073. // 数据看板ai应用
  8074. router.route("/getKanbanBasedata").all((req, res, next) => {
  8075. postmysql(req, res, "getKanbanBasedata");
  8076. });
  8077. // 数据看板ai应用
  8078. router.route("/getKanbanAIdata").all((req, res, next) => {
  8079. postmysql(req, res, "getKanbanAIdata");
  8080. });
  8081. // 数据看板常规教学
  8082. router.route("/getKanbanTeadata").all((req, res, next) => {
  8083. postmysql(req, res, "getKanbanTeadata");
  8084. });
  8085. // 数据看板常规教学
  8086. router.route("/getKanbanTeaManagedata").all((req, res, next) => {
  8087. postmysql(req, res, "getKanbanTeaManagedata");
  8088. });
  8089. //查询微信是否被绑定
  8090. router.route("/selectliyuanOpenid").all((req, res, next) => {
  8091. postmysql(req, res, "selectliyuanOpenid");
  8092. });
  8093. //数据看板-综合数据
  8094. router.route("/selectDataBoardSchool").all((req, res, next) => {
  8095. postmysql(req, res, "selectDataBoardSchool");
  8096. });
  8097. //数据看板-教师数据
  8098. router.route("/selectDataBoardTeacher").all((req, res, next) => {
  8099. postmysql(req, res, "selectDataBoardTeacher");
  8100. });
  8101. //数据看板-学生数据
  8102. router.route("/selectDataBoardStudent").all((req, res, next) => {
  8103. postmysql(req, res, "selectDataBoardStudent");
  8104. });
  8105. //数据看板-课程数据
  8106. router.route("/selectDataBoardCourse").all((req, res, next) => {
  8107. postmysql(req, res, "selectDataBoardCourse");
  8108. });
  8109. //数据看板-综合数据
  8110. router.route("/selectDataBoardSchoolNew").all((req, res, next) => {
  8111. postmysql(req, res, "selectDataBoardSchoolNew");
  8112. });
  8113. //数据看板-教师数据
  8114. router.route("/selectDataBoardTeacherNew").all((req, res, next) => {
  8115. postmysql(req, res, "selectDataBoardTeacherNew");
  8116. });
  8117. //数据看板-学生数据
  8118. router.route("/selectDataBoardStudentNew").all((req, res, next) => {
  8119. postmysql(req, res, "selectDataBoardStudentNew");
  8120. });
  8121. //数据看板-课程数据
  8122. router.route("/selectDataBoardCourseNew").all((req, res, next) => {
  8123. postmysql(req, res, "selectDataBoardCourseNew");
  8124. });
  8125. //数据看板-课程数据
  8126. router.route("/selectDataBoardStudentCourseNew").all((req, res, next) => {
  8127. postmysql(req, res, "selectDataBoardStudentCourseNew");
  8128. });
  8129. //数据看板-学生排行榜
  8130. router.route("/selectDataboardStudentRank").all((req, res, next) => {
  8131. postmysql(req, res, "selectDataboardStudentRank");
  8132. });
  8133. //数据看板-教师排行榜
  8134. router.route("/selectDataboardTeacherRank").all((req, res, next) => {
  8135. postmysql(req, res, "selectDataboardTeacherRank");
  8136. });
  8137. //数据看板-评测
  8138. router.route("/selectDataBoardTest").all((req, res, next) => {
  8139. postmysql(req, res, "selectDataBoardTest");
  8140. });
  8141. //数据看板-市级数据
  8142. router.route("/selectDataBoardCitySz").all((req, res, next) => {
  8143. postmysql(req, res, "selectDataBoardCitySz");
  8144. });
  8145. //数据看板-区级数据
  8146. router.route("/selectDataBoardAreaSz").all((req, res, next) => {
  8147. postmysql(req, res, "selectDataBoardAreaSz");
  8148. });
  8149. //数据看板-综合数据
  8150. router.route("/getDataBoardSchoolNew").all((req, res, next) => {
  8151. let p = Object.values(req.body[0]);
  8152. let d = Object.values(req.body[0]);
  8153. console.log(p)
  8154. p.unshift(_mysqlLabor[0], _mysqlLabor[1], 'getDataBoard');
  8155. mysql.usselect(p, function(ret) {
  8156. if(!ret[0].length){
  8157. let p2 = [d[0], d[1]];
  8158. p2.unshift(_mysqlLabor[0], _mysqlLabor[1], 'selectDataBoardSchoolNew');
  8159. mysql.usselect(p2, function(ret) {
  8160. res.end(JSON.stringify(ret));
  8161. let p3 = [d[0], d[1],encodeURIComponent(JSON.stringify(ret)),'1'];
  8162. p3.unshift(_mysqlLabor[0], _mysqlLabor[1], 'addDataBoard');
  8163. mysql.usselect(p3, function(ret) {})
  8164. });
  8165. }else{
  8166. console.log(1);
  8167. res.end(ret[0][0].json);
  8168. }
  8169. // res.end(JSON.stringify(ret));
  8170. });
  8171. });
  8172. //数据看板-课程数据
  8173. router.route("/getDataBoardCourseNew").all((req, res, next) => {
  8174. let p = Object.values(req.body[0]);
  8175. let d = Object.values(req.body[0]);
  8176. console.log(p)
  8177. p.unshift(_mysqlLabor[0], _mysqlLabor[1], 'getDataBoard');
  8178. mysql.usselect(p, function(ret) {
  8179. if(!ret[0].length){
  8180. let p2 = [d[0], d[1]];
  8181. p2.unshift(_mysqlLabor[0], _mysqlLabor[1], 'selectDataBoardCourseNew');
  8182. mysql.usselect(p2, function(ret) {
  8183. res.end(JSON.stringify(ret));
  8184. let p3 = [d[0], d[1],encodeURIComponent(JSON.stringify(ret)),'2'];
  8185. p3.unshift(_mysqlLabor[0], _mysqlLabor[1], 'addDataBoard');
  8186. mysql.usselect(p3, function(ret) {})
  8187. });
  8188. }else{
  8189. console.log(1);
  8190. res.end(ret[0][0].json);
  8191. }
  8192. // res.end(JSON.stringify(ret));
  8193. });
  8194. });
  8195. //数据看板-项目数据
  8196. router.route("/getDataBoardStudentCourseNew").all((req, res, next) => {
  8197. let p = Object.values(req.body[0]);
  8198. let d = Object.values(req.body[0]);
  8199. console.log(p)
  8200. p.unshift(_mysqlLabor[0], _mysqlLabor[1], 'getDataBoard');
  8201. mysql.usselect(p, function(ret) {
  8202. if(!ret[0].length){
  8203. let p2 = [d[0], d[1]];
  8204. p2.unshift(_mysqlLabor[0], _mysqlLabor[1], 'selectDataBoardStudentCourseNew');
  8205. mysql.usselect(p2, function(ret) {
  8206. res.end(JSON.stringify(ret));
  8207. let p3 = [d[0], d[1],encodeURIComponent(JSON.stringify(ret)),'3'];
  8208. p3.unshift(_mysqlLabor[0], _mysqlLabor[1], 'addDataBoard');
  8209. mysql.usselect(p3, function(ret) {})
  8210. });
  8211. }else{
  8212. console.log(1);
  8213. res.end(ret[0][0].json);
  8214. }
  8215. // res.end(JSON.stringify(ret));
  8216. });
  8217. });
  8218. //数据看板-学生数据
  8219. router.route("/getDataBoardStudentNew").all((req, res, next) => {
  8220. let p = Object.values(req.body[0]);
  8221. let d = Object.values(req.body[0]);
  8222. console.log(p)
  8223. p.unshift(_mysqlLabor[0], _mysqlLabor[1], 'getDataBoard');
  8224. mysql.usselect(p, function(ret) {
  8225. if(!ret[0].length){
  8226. let p2 = [d[0], d[1]];
  8227. p2.unshift(_mysqlLabor[0], _mysqlLabor[1], 'selectDataBoardStudentNew');
  8228. mysql.usselect(p2, function(ret) {
  8229. res.end(JSON.stringify(ret));
  8230. let p3 = [d[0], d[1],encodeURIComponent(JSON.stringify(ret)),'5'];
  8231. p3.unshift(_mysqlLabor[0], _mysqlLabor[1], 'addDataBoard');
  8232. mysql.usselect(p3, function(ret) {})
  8233. });
  8234. }else{
  8235. console.log(1);
  8236. res.end(ret[0][0].json);
  8237. }
  8238. // res.end(JSON.stringify(ret));
  8239. });
  8240. });
  8241. //数据看板-教师数据
  8242. router.route("/getDataBoardTeacherNew").all((req, res, next) => {
  8243. let p = Object.values(req.body[0]);
  8244. let d = Object.values(req.body[0]);
  8245. console.log(p)
  8246. p.unshift(_mysqlLabor[0], _mysqlLabor[1], 'getDataBoard');
  8247. mysql.usselect(p, function(ret) {
  8248. if(!ret[0].length){
  8249. let p2 = [d[0], d[1]];
  8250. p2.unshift(_mysqlLabor[0], _mysqlLabor[1], 'selectDataBoardTeacherNew');
  8251. mysql.usselect(p2, function(ret) {
  8252. res.end(JSON.stringify(ret));
  8253. let p3 = [d[0], d[1],encodeURIComponent(JSON.stringify(ret)),'4'];
  8254. p3.unshift(_mysqlLabor[0], _mysqlLabor[1], 'addDataBoard');
  8255. mysql.usselect(p3, function(ret) {})
  8256. });
  8257. }else{
  8258. console.log(1);
  8259. res.end(ret[0][0].json);
  8260. }
  8261. // res.end(JSON.stringify(ret));
  8262. });
  8263. });
  8264. //数据看板-查询项目数据长度
  8265. router.route("/getCourseLength").all((req, res, next) => {
  8266. postmysql(req, res, "getCourseLength");
  8267. });
  8268. //评测中心-上传评测
  8269. router.route("/addTestWorks").all((req, res, next) => {
  8270. postmysql(req, res, "addTestWorks");
  8271. });
  8272. //评测中心-上传评测
  8273. router.route("/addTestWorks2").all((req, res, next) => {
  8274. postmysql(req, res, "addTestWorks2");
  8275. });
  8276. //评测中心-删除评测
  8277. router.route("/deleteTestCourse").all((req, res, next) => {
  8278. postmysql(req, res, "deleteTestCourse");
  8279. });
  8280. //评测中心-批改
  8281. router.route("/addTestWorksTeacher").all((req, res, next) => {
  8282. postmysql(req, res, "addTestWorksTeacher");
  8283. });
  8284. //评测中心-复制评测
  8285. router.route("/copyTestWorks").all((req, res, next) => {
  8286. postmysql(req, res, "copyTestWorks");
  8287. });
  8288. //评测中心-查询用户测评总览
  8289. router.route("/selectTestUserY").all((req, res, next) => {
  8290. var json = queryString(req.url);
  8291. getmysql(req, res, "selectTestUserY", json["uid"], json["oid"], json["org"]);
  8292. });
  8293. //查询用户学习记录总览
  8294. router.route("/selectSRecordY").all((req, res, next) => {
  8295. var json = queryString(req.url);
  8296. getmysql(req, res, "selectSRecordY", json["uid"], json["oid"], json["org"]);
  8297. });
  8298. //查询幼儿园全部及学校分类
  8299. router.route("/selectSEAllType").all((req, res, next) => {
  8300. var json = queryString(req.url);
  8301. getmysql(req, res, "selectSEAllType", json["oid"]);
  8302. });
  8303. //根据学期查询幼儿园个人评分
  8304. router.route("/selectSETable").all((req, res, next) => {
  8305. var json = queryString(req.url);
  8306. getmysql(req, res, "selectSETable", json["uid"], json["oid"], json["org"], json["cu"]);
  8307. });
  8308. //根据学期保存幼儿园个人评分 修1
  8309. router.route("/addSRScore").get((req, res, next) => {
  8310. var json = queryString(req.url);
  8311. getmysql2(req, res, "addSRScore", json["uid"], json["j"], json["t"]);
  8312. });
  8313. //评测中心-数据 修1 这个不确定所以先加上了
  8314. router.route("/testDataBoard").get((req, res, next) => {
  8315. var json = queryString(req.url);
  8316. getmysql2(req, res, "testDataBoard", json["oid"], json["org"]);
  8317. });
  8318. //评测中心-查询用户数据
  8319. router.route("/selectTestUser").all((req, res, next) => {
  8320. var json = queryString(req.url);
  8321. getmysql(req, res, "selectTestUser", json["uid"]);
  8322. });
  8323. //评测中心-获取评测提交详情
  8324. router.route("/getTestWorks").all((req, res, next) => {
  8325. var json = queryString(req.url);
  8326. getmysql(req, res, "getTestWorks", json["cid"], json["uid"]);
  8327. });
  8328. //评测中心-获取评测提交详情
  8329. router.route("/getTestWorks2").all((req, res, next) => {
  8330. var json = queryString(req.url);
  8331. getmysql(req, res, "getTestWorks2", json["cid"], json["tid"]);
  8332. });
  8333. //评测中心-获取评测提交详情
  8334. router.route("/selectTestCourseWorks").all((req, res, next) => {
  8335. var json = queryString(req.url);
  8336. getmysql(req, res, "selectTestCourseWorks", json["cid"], json["tid"]);
  8337. });
  8338. //评测中心-获取评测提交详情
  8339. router.route("/getTestWorksPage").all((req, res, next) => {
  8340. var json = queryString(req.url);
  8341. getmysql(req, res, "getTestWorksPage", json["cid"], json["page"], json["pageSize"]);
  8342. });
  8343. //评测中心-获取评测提交详情
  8344. router.route("/getTestWorksPage3").all((req, res, next) => {
  8345. var json = queryString(req.url);
  8346. getmysql(req, res, "getTestWorksPage3", json["cid"], json["cn"], json["page"], json["pageSize"]);
  8347. });
  8348. //评测中心-获取评测提交详情
  8349. router.route("/getTestWorksNoPage").all((req, res, next) => {
  8350. var json = queryString(req.url);
  8351. getmysql(req, res, "getTestWorksNoPage", json["cid"], json["cn"]);
  8352. });
  8353. //评测中心-获取评测提交详情 yym
  8354. router.route("/getTestWorksNoPageCopy").all((req, res, next) => {
  8355. var json = queryString(req.url);
  8356. getmysql(req, res, "getTestWorksNoPageCopy", json["cid"], json["cn"], json["tim"], json["tea"]);
  8357. });
  8358. //评测中心-获取评测提交详情 yym
  8359. router.route("/getTestWorksNoPageCopy2").all((req, res, next) => {
  8360. postmysql(req, res, "getTestWorksNoPageCopy2");
  8361. });
  8362. //评测中心-智能表单ai评分
  8363. router.route("/addtestAiSco").all((req, res, next) => {
  8364. postmysql(req, res, "addtestAiSco");
  8365. });
  8366. //评测中心-智能表单ai评分
  8367. router.route("/deltestAisco").all((req, res, next) => {
  8368. postmysql(req, res, "deltestAisco");
  8369. });
  8370. //评测中心-获取智能表单ai评分
  8371. router.route("/getTestAiSco").all((req, res, next) => {
  8372. var json = queryString(req.url);
  8373. getmysql(req, res, "getTestAiSco", json["tid"]);
  8374. });
  8375. //评测中心-获取评测提交详情
  8376. router.route("/getTestWorksPage2").all((req, res, next) => {
  8377. var json = queryString(req.url);
  8378. getmysql(req, res, "getTestWorksPage2", json["cid"], json["page"], json["pageSize"]);
  8379. });
  8380. //评测中心-个人中心
  8381. router.route("/getTestWorksPerson").all((req, res, next) => {
  8382. var json = queryString(req.url);
  8383. getmysql(req, res, "getTestWorksPerson", json["uid"], json["typeid"]);
  8384. });
  8385. //教师发展-考核-查询是否有提交的的数据
  8386. router.route("/getTestExamineByUserId").all((req, res, next) => {
  8387. var json = queryString(req.url);
  8388. getmysql(req, res, "getTestExamineByUserId", json["uid"], json["type"]);
  8389. });
  8390. //教师发展-考核-查询是否有提交的的数据 加上tid查询
  8391. router.route("/getTestExamineByUserId2").all((req, res, next) => {
  8392. var json = queryString(req.url);
  8393. getmysql(req, res, "getTestExamineByUserId2", json["uid"], json["type"],json["tid"]);
  8394. });
  8395. //教师发展-考核-查询是否有提交的的数据
  8396. router.route("/addTestExamineWorks").all((req, res, next) => {
  8397. postmysql(req, res, "addTestExamineWorks");
  8398. });
  8399. //教师发展-考核-查询是否有提交的的数据 加上tid
  8400. router.route("/addTestExamineWorks2").all((req, res, next) => {
  8401. postmysql(req, res, "addTestExamineWorks2");
  8402. });
  8403. //教师发展-考核-管理员页面获取所有数据,用于计算平均分等
  8404. router.route("/selectTestExamineAllData").all((req, res, next) => {
  8405. var json = queryString(req.url);
  8406. getmysql(req, res, "selectTestExamineAllData", json["oid"], json["org"], json["type"]);
  8407. // postmysql(req, res, "selectTestExamineAllData");
  8408. });
  8409. //教师发展-考核-管理员页面获取所有数据,用于计算平均分等 ,加上对应的tid
  8410. router.route("/selectTestExamineAllData2").all((req, res, next) => {
  8411. var json = queryString(req.url);
  8412. getmysql(req, res, "selectTestExamineAllData2", json["oid"], json["org"], json["type"],json['tid']);
  8413. // postmysql(req, res, "selectTestExamineAllData");
  8414. });
  8415. //教师发展-考核-管理员页面获取二级指标数据,用于计算平均分等
  8416. router.route("/selectTestExamineSecondData").all((req, res, next) => {
  8417. var json = queryString(req.url);
  8418. getmysql(req, res, "selectTestExamineSecondData", json["oid"], json["org"], json["type"]);
  8419. // postmysql(req, res, "selectTestExamineAllData");
  8420. });
  8421. //教师发展-考核-管理员页面获取二级指标数据,用于计算平均分等 加上tid
  8422. router.route("/selectTestExamineSecondData2").all((req, res, next) => {
  8423. var json = queryString(req.url);
  8424. getmysql(req, res, "selectTestExamineSecondData2", json["oid"], json["org"], json["type"],json['tid']);
  8425. // postmysql(req, res, "selectTestExamineAllData");
  8426. });
  8427. //查询英语写作评价模板
  8428. router.route("/selectEnglishEva").all((req, res, next) => {
  8429. var json = queryString(req.url);
  8430. getmysql(req, res, "selectEnglishEva", json["oid"]);
  8431. });
  8432. //新增英语写作评价模板
  8433. router.route("/insertEnglishEva").all((req, res, next) => {
  8434. postmysql(req, res, "insertEnglishEva");
  8435. });
  8436. //获取作业数量
  8437. router.route("/getStudentCourseWorkCount").all((req, res, next) => {
  8438. postmysql(req, res, "getStudentCourseWorkCount");
  8439. });
  8440. //获取作业数量
  8441. router.route("/getCourseWorkCount").all((req, res, next) => {
  8442. postmysql(req, res, "getCourseWorkCount");
  8443. });
  8444. //移动新旧作业
  8445. router.route("/moveCourseWork").all((req, res, next) => {
  8446. postmysql(req, res, "moveCourseWork");
  8447. });
  8448. //根据id查询英语写作评价模板
  8449. router.route("/selectEnglishEvaById").all((req, res, next) => {
  8450. var json = queryString(req.url);
  8451. getmysql(req, res, "selectEnglishEvaById", json["id"], json["oid"]);
  8452. });
  8453. //根据id删除1英语写作评价模板
  8454. router.route("/deleteEnglishEvaById").all((req, res, next) => {
  8455. var json = queryString(req.url);
  8456. getmysql2(req, res, "deleteEnglishEvaById", json["id"]);
  8457. });
  8458. //获取评价模板
  8459. router.route("/getCourseEvaTemplate").all((req, res, next) => {
  8460. var json = queryString(req.url);
  8461. getmysql(req, res, "getCourseEvaTemplate", json["oid"], json["org"], json["n"]);
  8462. });
  8463. //案例新项目登录接口
  8464. router.route("/loginNewEvenManage").all((req, res, next) => {
  8465. postmysql(req, res, "loginNewEvenManage");
  8466. });
  8467. //案例新项目创建用户接口
  8468. router.route("/addNewRaceUser").all((req, res, next) => {
  8469. postmysql(req, res, "addNewRaceUser");
  8470. });
  8471. //查询老师的信息
  8472. router.route("/getRaceUser1").all((req, res, next) => {
  8473. var json = queryString(req.url);
  8474. getmysql(req, res, "getRaceUser1", json["uid"]);
  8475. });
  8476. //修改用户信息
  8477. router.route("/updateRaceUser1").all((req, res, next) => {
  8478. postmysql(req, res, "updateRaceUser1");
  8479. });
  8480. /* 修改评审员 修1 */
  8481. router.route("/updateReviewer").get((req, res, next) => {
  8482. var json = queryString(req.url);
  8483. getmysql2(
  8484. req,
  8485. res,
  8486. "updateReviewer",
  8487. json["n"],
  8488. json["p"],
  8489. json["t"],
  8490. json["s"],
  8491. json["uid"]
  8492. );
  8493. });
  8494. //race 查询学校
  8495. router.route("/getSchool1").all((req, res, next) => {
  8496. var json = queryString(req.url);
  8497. getmysql(req, res, "getSchool1", json["n"]);
  8498. });
  8499. //查询赛事项目列表
  8500. router.route("/selectRaceList1").all((req, res, next) => {
  8501. var json = queryString(req.url);
  8502. getmysql(req, res, "selectRaceList1", json["uid"], json["t"], json["oid"], json["org"]);
  8503. });
  8504. //修改赛事状态 修1
  8505. router.route("/updateRaceStateGM").get((req, res, next) => {
  8506. var json = queryString(req.url);
  8507. getmysql2(req, res, "updateRaceStateGM", json["id"], json["s"]);
  8508. });
  8509. //删除1案例
  8510. router.route("/deleteAnliGM").all((req, res, next) => {
  8511. var json = queryString(req.url);
  8512. getmysql2(req, res, "deleteAnliGM", json["id"]);
  8513. });
  8514. //新增赛事项目
  8515. router.route("/addRaceGM").all((req, res, next) => {
  8516. if (req.body[0]) {
  8517. p = [
  8518. req.body[0].uid,
  8519. req.body[0].info,
  8520. req.body[0].over,
  8521. req.body[0].pro,
  8522. req.body[0].act,
  8523. req.body[0].exc,
  8524. req.body[0].res,
  8525. ];
  8526. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "addRaceGM"); //執行存儲過程
  8527. mysql.usselect(p, function(ret) {
  8528. let course = req.body[0].courseType;
  8529. let courseId = ret[0][0].id;
  8530. let userid = req.body[0].uid;
  8531. delCourseType1(course, courseId, userid);
  8532. res.end(JSON.stringify({ courseId: courseId, success: 1 }));
  8533. });
  8534. }
  8535. });
  8536. //修改赛事项目
  8537. router.route("/updateRaceGM").all((req, res, next) => {
  8538. if (req.body[0]) {
  8539. p = [
  8540. req.body[0].id,
  8541. req.body[0].info,
  8542. req.body[0].over,
  8543. req.body[0].pro,
  8544. req.body[0].act,
  8545. req.body[0].exc,
  8546. req.body[0].res,
  8547. ];
  8548. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "updateRaceGM"); //執行存儲過程
  8549. mysql.usselect(p, function(ret) {
  8550. let course = req.body[0].courseType;
  8551. let courseId = req.body[0].id;
  8552. let userid = req.body[0].uid;
  8553. delCourseType1(course, courseId, userid);
  8554. res.end(JSON.stringify({ success: 1 }));
  8555. });
  8556. }
  8557. });
  8558. //查询赛事项目详情
  8559. router.route("/selectRaceDetailGM").all((req, res, next) => {
  8560. var json = queryString(req.url);
  8561. getmysql(req, res, "selectRaceDetailGM", json["id"]);
  8562. });
  8563. //查询赛事项目详情
  8564. router.route("/selectRaceDetailGM2").all((req, res, next) => {
  8565. var json = queryString(req.url);
  8566. getmysql(req, res, "selectRaceDetailGM2", json["id"]);
  8567. });
  8568. //查询赛事分类及子分类
  8569. router.route("/selectMatTypeGM").all((req, res, next) => {
  8570. var json = queryString(req.url);
  8571. getmysql(req, res, "selectMatTypeGM");
  8572. });
  8573. //添加资源库分类
  8574. router.route("/addSourceFileType").all((req, res, next) => {
  8575. postmysql(req, res, "addSourceFileType");
  8576. });
  8577. //查询资源库分类
  8578. router.route("/getSourceFileType").all((req, res, next) => {
  8579. var json = queryString(req.url);
  8580. getmysql(req, res, "getSourceFileType", json["uid"]);
  8581. });
  8582. //删除资源库分类
  8583. router.route("/deleteSoureFileType").all((req, res, next) => {
  8584. postmysql(req, res, "deleteSoureFileType");
  8585. });
  8586. //修改资源库分类名字
  8587. router.route("/updateSourceFileName").all((req, res, next) => {
  8588. postmysql(req, res, "updateSourceFileName");
  8589. });
  8590. //修改资源库分类父级
  8591. router.route("/updateSourceFileTypePid").all((req, res, next) => {
  8592. postmysql(req, res, "updateSourceFileTypePid");
  8593. });
  8594. //添加资源库
  8595. router.route("/addSourceFile").all((req, res, next) => {
  8596. postmysql(req, res, "addSourceFile");
  8597. });
  8598. //查询资源库上传文件
  8599. router.route("/getSourceFile").all((req, res, next) => {
  8600. var json = queryString(req.url);
  8601. getmysql(req, res, "getSourceFile", json["uid"], json["pid"], json["n"]);
  8602. });
  8603. //删除资源库
  8604. router.route("/deleteSourceFile").all((req, res, next) => {
  8605. postmysql(req, res, "deleteSourceFile");
  8606. });
  8607. //移动资源库
  8608. router.route("/updateSourceFilePid").all((req, res, next) => {
  8609. postmysql(req, res, "updateSourceFilePid");
  8610. });
  8611. //查询资源库上传文件
  8612. router.route("/getCourseInfoTest").all((req, res, next) => {
  8613. var json = queryString(req.url);
  8614. getmysql(req, res, "getCourseInfoTest", json["cid"]);
  8615. });
  8616. //查看已经的作业
  8617. router.route("/selectTestWorksCid").all((req, res, next) => {
  8618. var json = queryString(req.url);
  8619. getmysql(req, res, "selectTestWorksCid", json["cid"], json["uid"]);
  8620. });
  8621. //查询资源库上传文件
  8622. router.route("/getCourseInfoTestAll").all((req, res, next) => {
  8623. var json = queryString(req.url);
  8624. getmysql(req, res, "getCourseInfoTestAll", json["cid"]);
  8625. });
  8626. //查询资源库上传文件
  8627. router.route("/getCourseInfoTestAll2").all((req, res, next) => {
  8628. postmysql(req, res, "getCourseInfoTestAll");
  8629. });
  8630. //还原课程功能
  8631. router.route("/revertCourse").all((req, res, next) => {
  8632. postmysql(req, res, "revertCourse");
  8633. });
  8634. //还原课程功能
  8635. router.route("/revertCourseSz").all((req, res, next) => {
  8636. postmysql2(req, res, "revertCourse");
  8637. });
  8638. //根据课程id查询关联的表单
  8639. router.route("/selectTestCourseByCid").all((req, res, next) => {
  8640. var json = queryString(req.url);
  8641. getmysql(req, res, "selectTestCourseByCid", json["cid"]);
  8642. });
  8643. //qgt 根据用户id和文件标题获取答案来自动填写
  8644. router.route("/selectTestCourseAutoFillType3").all((req,res,next)=>{
  8645. var json = queryString(req.url);
  8646. getmysql(req, res, "selectTestCourseAutoFillType3", json["uid"],json["tit"]);
  8647. });
  8648. //qgt 课堂观察另存为模板
  8649. router.route("/insertClassroomTemplate").all((req,res,next)=>{
  8650. postmysql(req, res, "insertClassroomTemplate");
  8651. })
  8652. //qgt 课堂观察获取模板
  8653. router.route("/selectClassroomTemplate").all((req,res,next)=>{
  8654. var json = queryString(req.url);
  8655. getmysql(req, res, "selectClassroomTemplate", json["uid"],json["txt"],json["sub"],json["type1"]);
  8656. })
  8657. //qgt 课堂观察修改收藏模板
  8658. router.route("/updateClassroomTemplateCollect").all((req,res,next)=>{
  8659. postmysql(req, res, "updateClassroomTemplateCollect");
  8660. })
  8661. //qgt 课堂观察获取模板详细
  8662. router.route("/selectClassroomTemplateDetail").all((req,res,next)=>{
  8663. var json = queryString(req.url);
  8664. getmysql(req, res, "selectClassroomTemplateDetail", json["uid"],json["cid"],json['st']);
  8665. })
  8666. //qgt 课堂观察修改模板
  8667. router.route("/updateClassroomTemplateData").all((req,res,next)=>{
  8668. postmysql(req, res, "updateClassroomTemplateData");
  8669. })
  8670. //qgt设置用户默认模板
  8671. router.route("/updateClassroomDefault").all((req,res,next)=>{
  8672. postmysql(req, res, "updateClassroomDefault");
  8673. })
  8674. //qgt 获取用户默认模板
  8675. router.route("/selectClassroomDefault").all((req,res,next)=>{
  8676. var json = queryString(req.url);
  8677. getmysql(req, res, "selectClassroomDefault", json["uid"]);
  8678. })
  8679. //qgt 保存课堂助手任务面板题目
  8680. router.route("/updateCourseWorks_classRoomHelper").all((req,res,next)=>{
  8681. postmysql(req, res, "updateCourseWorks_classRoomHelper");
  8682. })
  8683. //qgt 获取课堂助手任务面板题目
  8684. router.route("/select_courseWorks_classRoomHelper").all((req,res,next)=>{
  8685. var json = queryString(req.url);
  8686. getmysql(req, res, "select_courseWorks_classRoomHelper", json["uid"],json["cid"]);
  8687. })
  8688. //qgt 获取课堂助手中当前课程所有做了选择题的数据
  8689. router.route("/select_courseWorksAll_classRoomHelper").all((req,res,next)=>{
  8690. var json = queryString(req.url);
  8691. getmysql(req, res, "select_courseWorksAll_classRoomHelper", json["uid"],json["cid"]);
  8692. })
  8693. //qgt 课堂助手倒计时面板插入数据
  8694. router.route("/insert_systemOperation_classRoomHelper").all((req,res,next)=>{
  8695. postmysql(req, res, "insert_systemOperation_classRoomHelper");
  8696. })
  8697. //qgt 课堂助手行为备忘(添加)
  8698. router.route("/insert_systemOperation_countdownBehavior").all((req,res,next)=>{
  8699. postmysql(req,res,'insert_systemOperation_countdownBehavior')
  8700. })
  8701. //lsc 课程管理行为备忘(添加)
  8702. router.route("/addCourseBehavior").all((req,res,next)=>{
  8703. console.log(req.body[0].content)
  8704. postmysql(req,res,'addCourseBehavior')
  8705. })
  8706. //qgt 课堂助手行为备忘(获取)
  8707. router.route("/select_systemOperation_countdownBehavior").all((req,res,next)=>{
  8708. var json = queryString(req.url);
  8709. getmysql(req, res, "select_systemOperation_countdownBehavior", json["uid"],json["courseId"]);
  8710. })
  8711. //qgt 课堂观察新建模板分析
  8712. router.route("/insert_smodel").all((req,res,next)=>{
  8713. postmysql(req,res,'insert_smodel')
  8714. })
  8715. //qgt 课堂观察获取用户的模板分析
  8716. router.route('/select_smodel').all((req,res,next)=>{
  8717. var json = queryString(req.url);
  8718. getmysql(req, res, "select_smodel", json["uid"]);
  8719. })
  8720. //qgt 课堂观察获取指定的分析
  8721. router.route('/select_smodelById').all((req,res,next)=>{
  8722. var json = queryString(req.url);
  8723. getmysql(req, res, "select_smodelById", json["uid"],json["mid"]);
  8724. })
  8725. //qgt 课堂观察删除指定模块
  8726. router.route("/delete_smodelById").all((req,res,next)=>{
  8727. postmysql(req,res,'delete_smodelById')
  8728. })
  8729. //qgt 课堂观察修改指定模块
  8730. router.route("/update_smodel").all((req,res,next)=>{
  8731. postmysql(req,res,'update_smodel')
  8732. })
  8733. //qgt 教师画像面板获取数据
  8734. router.route('/selectPortraitData').all((req,res,next)=>{
  8735. var json = queryString(req.url);
  8736. getmysql(req, res, "selectPortraitData", json["uid"]);
  8737. })
  8738. //qgt 修改testCourse的Cover字段
  8739. router.route('/update_testCourseCoverById').all((req,res,next)=>{
  8740. postmysql(req,res,'update_testCourseCoverById')
  8741. })
  8742. //qgt 修改课程的分屏数据
  8743. router.route('/update_courseSplitScreenData').all((req,res,next)=>{
  8744. postmysql(req,res,'update_courseSplitScreenData')
  8745. })
  8746. //qgt 获取课程的分屏数据
  8747. router.route('/select_courseSplitScreenData').all((req,res,next)=>{
  8748. var json = queryString(req.url);
  8749. getmysql(req, res, "select_courseSplitScreenData", json["cid"]);
  8750. })
  8751. //qgt 应用管理-添加类型
  8752. router.route('/insert_appStoreType').all((req,res,next)=>{
  8753. postmysql(req,res,'insert_appStoreType')
  8754. })
  8755. //qgt 应用管理-获取类型
  8756. router.route('/select_appStoreType').all((req,res,next)=>{
  8757. var json = queryString(req.url);
  8758. getmysql(req, res, "select_appStoreType", json["suserid"],json["sorg"],json["soid"],json["sstand"]);
  8759. })
  8760. //qgt 应用管理-获取类型-不获取某些类型
  8761. router.route('/select_appStoreType_exceptType').all((req,res,next)=>{
  8762. var json = queryString(req.url);
  8763. getmysql(req, res, "select_appStoreType_exceptType", json["suserid"],json["sorg"],json["soid"],json["sstand"],json["exportType"]);
  8764. })
  8765. //qgt 应用管理-添加应用
  8766. router.route('/insert_appStore').all((req,res,next)=>{
  8767. postmysql(req, res, "insert_appStore");
  8768. })
  8769. //qgt 应用管理-添加应用
  8770. router.route('/insert_appStoreJson').all((req,res,next)=>{
  8771. postmysql3(req, res, "insert_appStore");
  8772. })
  8773. //qgt 应用管理-获取应用
  8774. router.route('/select_appStore').all((req,res,next)=>{
  8775. var json = queryString(req.url);
  8776. getmysql(req, res, "select_appStore", json["uid"],json["name"],json["label"],json["type"],json["juri"],json["stand"],json['status']);
  8777. })
  8778. router.route('/select_appStore_exportType').all((req,res,next)=>{
  8779. var json = queryString(req.url);
  8780. getmysql(req, res, "select_appStore_exportType", json["uid"],json["name"],json["label"],json["type"],json["juri"],json["stand"],json['status'],json["exportType"]);
  8781. })
  8782. router.route('/select_appStore_exportType2').all((req,res,next)=>{
  8783. var json = queryString(req.url);
  8784. getmysql(req, res, "select_appStore_exportType2", json["uid"],json["name"],json["label"],json["type"],json["juri"],json["stand"],json['status'],json['model'],json["exportType"]);
  8785. })
  8786. //qgt 坪山区获取应用
  8787. router.route('/select_appStore_exportType2_pingShan').all((req,res,next)=>{
  8788. var json = queryString(req.url);
  8789. getmysql(req, res, "select_appStore_exportType2_pingShan", json["uid"],json["name"],json["label"],json["type"],json["stand"],json['status'],json['model']);
  8790. })
  8791. //qgt 应用中心修改json数据
  8792. router.route('/update_appStoreJsonById').all((req,res,next)=>{
  8793. postmysql(req, res, "update_appStoreJsonById");
  8794. })
  8795. //qgt 应用管理-修改应用
  8796. router.route('/update_appStore').all((req,res,next)=>{
  8797. postmysql(req, res, "update_appStore");
  8798. })
  8799. //qgt 应用管理-修改应用
  8800. router.route('/update_appStoreJson').all((req,res,next)=>{
  8801. postmysql3(req, res, "update_appStore");
  8802. })
  8803. //qgt 应用管理-添加收藏或者最近使用
  8804. router.route('/insert_appStoreSave').all((req,res,next)=>{
  8805. postmysql(req, res, "insert_appStoreSave");
  8806. })
  8807. //qgt 应用管理-获取收藏或者最近使用
  8808. router.route('/select_appStoreSave').all((req,res,next)=>{
  8809. var json = queryString(req.url);
  8810. getmysql(req, res, "select_appStoreSave", json["uid"],json["type"],json["limit"]);
  8811. })
  8812. //qgt 应用管理-取消收藏
  8813. router.route('/delete_appStoreSave').all((req,res,next)=>{
  8814. postmysql(req, res, "delete_appStoreSave");
  8815. })
  8816. //qgt 应用管理-删除应用
  8817. router.route('/delete_appStore').all((req,res,next)=>{
  8818. postmysql(req,res,"delete_appStore")
  8819. })
  8820. //qgt 应用管理-删除应用
  8821. router.route('/delete_appStoreJson').all((req,res,next)=>{
  8822. postmysql3(req,res,"delete_appStore")
  8823. })
  8824. //qgt banner获取
  8825. router.route('/select_bannerByoidORorg').all((req,res,next)=>{
  8826. var json = queryString(req.url);
  8827. getmysql(req, res, "select_bannerByoidORorg", json["uid"],json["oid"],json["org"],json["type"]);
  8828. })
  8829. //qgt 获取单个应用
  8830. router.route("/select_appStoreById").all((req,res,next)=>{
  8831. var json = queryString(req.url);
  8832. getmysql(req, res, "select_appStoreById", json["uid"],json["aid"]);
  8833. })
  8834. //qgt 获取应用中心得控制json
  8835. router.route("/select_appStore_controls").all((req,res,next)=>{
  8836. var json = queryString(req.url);
  8837. getmysql(req, res, "select_appStore_controls", json["uid"],json["org"],json["oid"]);
  8838. })
  8839. //qgt 教师中心-获取表单数据
  8840. router.route("/getTestWorksPerson_2type").all((req,res,next)=>{
  8841. var json = queryString(req.url);
  8842. getmysql(req, res, "getTestWorksPerson_2type", json["uid"], json["typeid"]);
  8843. })
  8844. //qgt sass管理平台-按表单查看
  8845. router.route("/selectTesttCourse_sass").all((req,res,next)=>{
  8846. var json = queryString(req.url);
  8847. getmysql(req, res, "selectTesttCourse_sass", json["uid"], json["type"],json["oid"],json["org"],json["typeId"],json["textValue"]);
  8848. })
  8849. //qgt sass管理平台-按人员查看
  8850. router.route("/selectTesttCourse2_sass").all((req,res,next)=>{
  8851. var json = queryString(req.url);
  8852. getmysql(req, res, "selectTesttCourse2_sass",json["oid"],json["org"],json["typeId"],json["textValue"]);
  8853. })
  8854. //qgt 根据oid获取是那个地区的
  8855. router.route("/select_oidArea").all((req,res,next)=>{
  8856. var json = queryString(req.url);
  8857. getmysql(req, res, "select_oidArea", json["oid"]);
  8858. })
  8859. //qgt 应用中心获取AppStoreJuri
  8860. router.route("/select_appStorJuri").all((req,res,next)=>{
  8861. var json = queryString(req.url);
  8862. getmysql(req, res, "select_appStorJuri");
  8863. })
  8864. //qgt 应用中心获取AppStoreJuri
  8865. router.route("/select_userIsAdmin").all((req,res,next)=>{
  8866. var json = queryString(req.url);
  8867. getmysql(req, res, "select_userIsAdmin", json["userId"]);
  8868. })
  8869. //qgt 课堂观察-添加任务
  8870. router.route('/insert_classroomTask').all((req,res,next)=>{
  8871. postmysql(req, res, "insert_classroomTask");
  8872. })
  8873. //qgt 课堂观察-删除任务
  8874. router.route('/delete_classroomTask').all((req,res,next)=>{
  8875. postmysql(req, res, "delete_classroomTask");
  8876. })
  8877. //qgt 课堂观察-修改任务
  8878. router.route('/update_classroomTask').all((req,res,next)=>{
  8879. postmysql(req, res, "update_classroomTask");
  8880. })
  8881. //qgt 课堂观察-查询任务
  8882. router.route('/select_classroomTask').all((req,res,next)=>{
  8883. var json = queryString(req.url);
  8884. getmysql(req, res, "select_classroomTask", json["userId"]);
  8885. })
  8886. //qgt 教学模式-添加应用
  8887. router.route("/insert_teachingMode").all((req,res,next)=>{
  8888. postmysql(req, res, "insert_teachingMode");
  8889. })
  8890. //qgt 教学模式-获取应用
  8891. router.route("/select_teachingMode").all((req,res,next)=>{
  8892. var json = queryString(req.url);
  8893. getmysql(req, res, "select_teachingMode", json["uid"],json["jur"],json["type"],json["model"],json["status"],json["search"]);
  8894. })
  8895. //qgt 教学模式-修改应用
  8896. router.route("/update_teachingMode").all((req,res,next)=>{
  8897. postmysql(req, res, "update_teachingMode");
  8898. })
  8899. //qgt 教学模式-获取单个应用详细数据
  8900. router.route("/select_teachingModeById").all((req,res,next)=>{
  8901. var json = queryString(req.url);
  8902. getmysql(req, res, "select_teachingModeById", json["uid"],json["tid"]);
  8903. })
  8904. //qgt 通过idList获取班级数据
  8905. router.route("/select_ClassByidList").all((req,res,next)=>{
  8906. var json = queryString(req.url);
  8907. getmysql(req, res, "select_ClassByidList", json["idList"]);
  8908. })
  8909. //qgt 教学空间-获取学生列表 也可以获取单个学生的数据
  8910. router.route("/select_teachingModeWorks").all((req,res,next)=>{
  8911. var json = queryString(req.url);
  8912. getmysql(req, res, "select_teachingModeWorks", json["uid"],json["tid"],json["sid"]);
  8913. })
  8914. //qgt 教学空间-插入学生数据
  8915. router.route("/insert_teachingModeWorks").all((req,res,next)=>{
  8916. postmysql(req, res, "insert_teachingModeWorks");
  8917. })
  8918. //qgt 教学空间-修改学生状态
  8919. router.route("/update_teachingModeWorks_statusAndOperatingById").all((req,res,next)=>{
  8920. postmysql(req, res, "update_teachingModeWorks_statusAndOperatingById");
  8921. })
  8922. //qgt 教学空间-通过app的id获取教学的数据
  8923. router.route("/select_teachingModeByAppUrlAndClassId").all((req,res,next)=>{
  8924. var json = queryString(req.url);
  8925. getmysql(req, res, "select_teachingModeByAppUrlAndClassId", json["uid"],json["appUrl"]);
  8926. })
  8927. //qgt 教学空间-修改学生对话数据
  8928. router.route("/update_teachingModeWorks_nodeDataAndStageAndLastChatById").all((req,res,next)=>{
  8929. postmysql(req, res, "update_teachingModeWorks_nodeDataAndStageAndLastChatById");
  8930. })
  8931. //qgt 个人空间-资料提交-修改提交的表单名称
  8932. router.route("/update_testCourseWorksNameById").all((req,res,next)=>{
  8933. postmysql(req, res, "update_testCourseWorksNameById");
  8934. })
  8935. //qgt 教学空间-删除数据
  8936. router.route("/clear_teachingMode").all((req,res,next)=>{
  8937. postmysql(req, res, "clear_teachingMode");
  8938. })
  8939. //qgt 教学空间-删除应用
  8940. router.route("/update_teachingModeIsDelete").all((req,res,next)=>{
  8941. postmysql(req, res, "update_teachingModeIsDelete");
  8942. })
  8943. //qgt 教学空间-删除学生
  8944. router.route("/delete_teachingModeWorksById").all((req,res,next)=>{
  8945. postmysql(req, res, "delete_teachingModeWorksById");
  8946. })
  8947. //qgt 教学空间-aiChat-修改学生总结
  8948. router.route("/update_teachingModeWorks_summaryById").all((req,res,next)=>{
  8949. postmysql(req, res, "update_teachingModeWorks_summaryById");
  8950. })
  8951. //qgt 课程管理-ppt模式添加课程
  8952. router.route("/insert_teacher_work_pptCourse").all((req, res, next) => {
  8953. if (req.body[0]) {
  8954. p = [
  8955. req.body[0].uid,
  8956. req.body[0].title,
  8957. req.body[0].brief,
  8958. req.body[0].cover,
  8959. req.body[0].evaId,
  8960. req.body[0].astudent,
  8961. req.body[0].see,
  8962. req.body[0].chapters,
  8963. req.body[0].template,
  8964. req.body[0].ateacher,
  8965. ];
  8966. p.unshift(_mysqlLabor[0], _mysqlLabor[1], "insert_teacher_work_pptCourse"); //執行存儲過程
  8967. mysql.usselect(p, function(ret) {
  8968. let course = req.body[0].courseType;
  8969. let courseId = ret[0][0].courseId;
  8970. let userid = req.body[0].uid;
  8971. delCourseType(course, courseId, userid);
  8972. res.end(
  8973. JSON.stringify({
  8974. ordernumber: ret[0][0].ordernumber,
  8975. courseId: ret[0][0].courseId,
  8976. success: 1,
  8977. })
  8978. );
  8979. });
  8980. }
  8981. });
  8982. //qgt 课程管理-单独修改课程的chapters
  8983. router.route("/update_course_chapters").all((req,res,next)=>{
  8984. postmysql(req, res, "update_teacher_work_new4");
  8985. })
  8986. //qgt 课程管理-添加workPage数据
  8987. router.route("/insert_workPage").all((req,res,next)=>{
  8988. postmysql(req, res, "insert_workPage");
  8989. })
  8990. //qgt workPage查询作业
  8991. router.route("/select_workPageById").all((req,res,next)=>{
  8992. var json = queryString(req.url);
  8993. getmysql(req, res, "select_workPageById", json["id"]);
  8994. })
  8995. //qgt workPage上传作业
  8996. router.route("/addCourseWorks_workPage").all((req,res,next)=>{
  8997. postmysql(req, res, "addCourseWorks_workPage");
  8998. })
  8999. //qgt workPage上传作业2
  9000. router.route("/addCourseWorks_workPage2").all((req,res,next)=>{
  9001. // getmysql(req, res, "addCourseWorks_workPage", req.body.uid, req.body.cid, req.body.stage, req.body.task, req.body.tool, req.body.atool, req.body.content, req.body.type,);
  9002. var json = queryString(req.url);
  9003. getmysql(req, res, "addCourseWorks_workPage", json["uid"],json["cid"], json["stage"],json["task"], json["tool"],json["atool"],json["content"],json['type']);
  9004. })
  9005. //qgt workPage获取作业
  9006. router.route("/select_courseWorks_workPageData").all((req,res,next)=>{
  9007. var json = queryString(req.url);
  9008. getmysql(req, res, "select_courseWorks_workPageData", json["uid"],json["cid"], json["stage"],json["task"], json["tool"]);
  9009. })
  9010. //qgt Class根据parentid获取数据
  9011. router.route("/select_ClassByParentid").all((req,res,next)=>{
  9012. var json = queryString(req.url);
  9013. getmysql(req, res, "select_ClassByParentid", json["pid"]);
  9014. })
  9015. //qgt 年度考核-教师发展获取数据来源表单标题-筛选时间
  9016. router.route("/selectExamineTestNameFilterTime").all(function(req, res, next) {
  9017. // var json = queryString(req.url);
  9018. // console.log(json);
  9019. postmysql(req, res, "selectExamineTestNameFilterTime");
  9020. // getmysql(req, res, "selectExamineTestName", json["testId"]);
  9021. });
  9022. // qgt 年度考核-修改表单审核状态
  9023. router.route("/update_testCourseWorks_isReviewById").all((req,res,next)=>{
  9024. postmysql(req, res, "update_testCourseWorks_isReviewById");
  9025. })
  9026. //qgt 修改课程班级
  9027. router.route("/update_CourseJuriById").all((req,res,next)=>{
  9028. postmysql(req, res, "update_CourseJuriById");
  9029. })
  9030. //qgt 获取表单分类数据-荔园
  9031. router.route("/selectTestType_liYuan").all((req, res, next) => {
  9032. var json = queryString(req.url);
  9033. getmysql(req, res, "selectTestType_liYuan");
  9034. });
  9035. //qgt 智能表单-年度考核-按人员-学年筛选
  9036. router.route("/selectTestExaminePersonData_filterTime").all((req, res, next) => {
  9037. var json = queryString(req.url);
  9038. getmysql(req, res, "selectTestExaminePersonData_filterTime",json["oid"], json["org"], json["type"], json["tname"]);
  9039. });
  9040. //qgt 智能表单-修改提交的表单的状态
  9041. router.route("/update_testCourseWorks_typeById").all((req,res,next)=>{
  9042. postmysql(req, res, "update_testCourseWorks_typeById");
  9043. })
  9044. //qgt 通知中心-添加通知
  9045. router.route("/insert_noticeCenter").all((req,res,next)=>{
  9046. postmysql(req, res, "insert_noticeCenter");
  9047. })
  9048. //qgt 通知中心-获取通知数据-分页
  9049. router.route("/select_noticeCenter").all((req,res,next)=>{
  9050. postmysql(req, res, "select_noticeCenter");
  9051. })
  9052. //qgt 通知中心-获取通知未读数量
  9053. router.route("/select_noticeCenterNumByUid").all((req,res,next)=>{
  9054. var json = queryString(req.url);
  9055. getmysql(req, res, "select_noticeCenterNumByUid",json["uid"]);
  9056. })
  9057. //qgt 通知中心-修改通知状态
  9058. router.route("/update_noticeCenter_statusByid").all((req,res,next)=>{
  9059. postmysql(req, res, "update_noticeCenter_statusByid");
  9060. })
  9061. //qgt 通知中心-获取通知数量
  9062. router.route("/select_noticeCenter_statusNum").all((req,res,next)=>{
  9063. var json = queryString(req.url);
  9064. getmysql(req, res, "select_noticeCenter_statusNum",json["uid"],json["status"]);
  9065. })
  9066. //qgt 课程详细-创建tid
  9067. router.route("/add_courseInviteCode2").all((req,res,next)=>{
  9068. postmysql(req, res, "add_courseInviteCode2");
  9069. })
  9070. //qgt 个性化学习中心-通过lesson_Order获取分类数据
  9071. router.route("/select_course_category_byLessonOrder").all((req,res,next)=>{
  9072. var json = queryString(req.url);
  9073. getmysql(req, res, "select_course_category_byLessonOrder",json["uid"],json["type"]);
  9074. })
  9075. //qgt 个性化学习中心-通过年级ID获取章节数据
  9076. router.route("/select_course_category_chapterByGid").all((req,res,next)=>{
  9077. var json = queryString(req.url);
  9078. getmysql(req, res, "select_course_category_chapterByGid",json["uid"],json["gid"]);
  9079. })
  9080. //qgt 个性化学习中心-通过lesson_Order获取分类和底下有多少课节数据
  9081. router.route("/select_course_category_classPeriodCountByLessonOrder").all((req,res,next)=>{
  9082. var json = queryString(req.url);
  9083. getmysql(req, res, "select_course_category_classPeriodCountByLessonOrder",json["uid"],json["type"]);
  9084. })
  9085. //qgt 个性化学习中心-新增课程
  9086. router.route("/insert_course_personalization").all((req,res,next)=>{
  9087. postmysql(req, res, "insert_course_personalization");
  9088. })
  9089. //qgt 个性化学习中心-我的课程-获取我的课程
  9090. router.route("/select_course_personalization_ByUid").all((req,res,next)=>{
  9091. var json = queryString(req.url);
  9092. getmysql(req, res, "select_course_personalization_ByUid",json["uid"],json["gid"]);
  9093. })
  9094. // qgt 个性化学习中心-我的课程-删除课程
  9095. router.route("/delete_course_personalization_ById").all((req,res,next)=>{
  9096. postmysql(req, res, "delete_course_personalization_ById");
  9097. })
  9098. router.route("/select_course_personalization_byId").all((req,res,next)=>{
  9099. var json = queryString(req.url);
  9100. getmysql(req, res, "select_course_personalization_byId",json["uid"],json["cid"]);
  9101. })
  9102. //qgt 课堂观察-融合报告-查询ppt课程数据
  9103. router.route("/select_pptClass").all((req,res,next)=>{
  9104. var json = queryString(req.url);
  9105. getmysql(req, res, "select_pptClass",json["pid"]);
  9106. })
  9107. //qgt 课堂观察-融合报告-修改ppt课程的录音地址
  9108. router.route("/update_pptClass_url").all((req,res,next)=>{
  9109. postmysql(req, res, "update_pptClass_url");
  9110. })
  9111. //教师管理 查看填写范围的教师权限
  9112. router.route("/getTestWorkTeacherCount").all((req,res,next)=>{
  9113. postmysql(req, res, "getTestWorkTeacherCount");
  9114. })
  9115. //查询教师权限
  9116. router.route('/getTypeTeacher').all((req,res,next)=>{
  9117. var json = queryString(req.url);
  9118. getmysql(req, res, "getTypeTeacher", json["cid"], json["name"], json["userid"]);
  9119. })
  9120. //删除会话记录
  9121. router.route("/deleteChat").all((req,res,next)=>{
  9122. postmysql(req, res, "deleteChat"); // id 会话id
  9123. })
  9124. //添加会话记录
  9125. router.route("/addChat").all((req,res,next)=>{
  9126. postmysql(req, res, "addChat"); // uid 用户id n 会话名称 cid chatid
  9127. })
  9128. //修改会话记录 重命名
  9129. router.route("/updateChat").all((req,res,next)=>{
  9130. postmysql(req, res, "updateChat"); // id 会话id n 会话名称
  9131. })
  9132. //获取会话记录
  9133. router.route('/getChatHistory').all((req,res,next)=>{
  9134. var json = queryString(req.url);
  9135. getmysql(req, res, "getChatHistory", json["uid"], json["n"], json["page"], json["num"]); //用户id,会话名称,页码,页数
  9136. })
  9137. //本地调用
  9138. router.route("/localPost").all((req,res,next)=>{
  9139. postmysqlLocal(req, res);
  9140. })
  9141. //本地调用
  9142. router.route("/onlinePost").all((req,res,next)=>{
  9143. postmysqlOnline(req, res);
  9144. })
  9145. //修改课程设置
  9146. router.route("/updateWorksSetting").all((req,res,next)=>{
  9147. postmysql(req, res, "updateWorksSetting");
  9148. })
  9149. //新建文件夹
  9150. router.route("/addFolder").all((req,res,next)=>{
  9151. postmysql(req, res, "addFolder");
  9152. })
  9153. ///获取新建的文件夹
  9154. router.route("/getFolder").all((req,res,next)=>{
  9155. postmysql(req, res, "getFolder");
  9156. })
  9157. //获取新建的文件夹带分页
  9158. router.route("/getFolderPage").all((req,res,next)=>{
  9159. postmysql(req, res, "getFolderPage");
  9160. })
  9161. //删除文件夹
  9162. router.route("/deleteFolder").all((req,res,next)=>{
  9163. postmysql(req, res, "deleteFolder");
  9164. })
  9165. //查询tag
  9166. router.route("/getKnowledgeTag").all((req,res,next)=>{
  9167. postmysql(req, res, "getKnowledgeTag");
  9168. })
  9169. // 上传智能体模板
  9170. router.route("/insertAppTem").all((req,res,next)=>{
  9171. postmysql(req, res, "insertAppTem");
  9172. })
  9173. // 上传智能体模板
  9174. router.route("/insertAppTem2").all((req,res,next)=>{
  9175. postmysql(req, res, "insertAppTem2");
  9176. })
  9177. // 删除智能体模板
  9178. router.route("/deleteAppTem").all((req,res,next)=>{
  9179. postmysql(req, res, "deleteAppTem");
  9180. })
  9181. // 获取智能体模板
  9182. router.route("/selectAppTem").get((req, res, next) => {
  9183. var json = queryString(req.url);
  9184. getmysql2(req, res, "selectAppTem", json["oid"], json["type"]);
  9185. });
  9186. // 获取智能体模板
  9187. router.route("/selectAppTem2").get((req, res, next) => {
  9188. var json = queryString(req.url);
  9189. getmysql2(req, res, "selectAppTem2", json["oid"], json["type"], json["subject"]);
  9190. });
  9191. // 获取智能体模板
  9192. router.route("/selectAppTem3").get((req, res, next) => {
  9193. var json = queryString(req.url);
  9194. getmysql2(req, res, "selectAppTem3", json["oid"], json["type"], json["subject"], json["area"]);
  9195. });
  9196. // 获取智能体模板
  9197. router.route("/selectAppTemById").get((req, res, next) => {
  9198. var json = queryString(req.url);
  9199. getmysql2(req, res, "selectAppTemById", json["id"]);
  9200. });
  9201. //查询文件夹详情
  9202. router.route("/getKnowledgeDetail").all((req,res,next)=>{
  9203. postmysql(req, res, "getKnowledgeDetail");
  9204. })
  9205. //修改文件夹
  9206. router.route("/updateFolder").all((req,res,next)=>{
  9207. postmysql(req, res, "updateFolder");
  9208. })
  9209. //添加标签
  9210. router.route("/addTag").all((req,res,next)=>{
  9211. postmysql(req, res, "addTag");
  9212. })
  9213. //删除标签
  9214. router.route("/deleteTag").all((req,res,next)=>{
  9215. postmysql(req, res, "deleteTag");
  9216. })
  9217. //添加上传好的知识库文件
  9218. router.route("/addFile").all((req,res,next)=>{
  9219. postmysql(req, res, "add_file");
  9220. })
  9221. //notebookllm
  9222. router.route("/add_llm").all((req,res,next)=>{
  9223. postmysql(req, res, "add_llm");
  9224. })
  9225. router.route("/upload_llm_file").all((req,res,next)=>{
  9226. postmysql(req, res, "upload_llm_file");
  9227. })
  9228. router.route("/update_llm_title").all((req,res,next)=>{
  9229. postmysql(req, res, "update_llm_title");
  9230. })
  9231. router.route("/delete_llm").all((req,res,next)=>{
  9232. postmysql(req, res, "delete_llm");
  9233. })
  9234. router.route("/get_all_llm").all((req,res,next)=>{
  9235. var json = queryString(req.url);
  9236. getmysql2(req, res, "get_all_llm", json["uid"]);
  9237. })
  9238. router.route("/get_llm").all((req,res,next)=>{
  9239. var json = queryString(req.url);
  9240. getmysql2(req, res, "get_llm", json["id"]);
  9241. })
  9242. router.route("/get_llm_chat").all((req,res,next)=>{
  9243. var json = queryString(req.url);
  9244. getmysql2(req, res, "get_llm_chat", json["id"]);
  9245. })
  9246. router.route("/add_llm_chat").all((req,res,next)=>{
  9247. postmysql(req, res, "add_llm_chat");
  9248. })
  9249. router.route("/delete_llm_chat").all((req,res,next)=>{
  9250. postmysql(req, res, "delete_llm_chat");
  9251. })
  9252. router.route("/add_llm_note").all((req,res,next)=>{
  9253. postmysql(req, res, "add_llm_note");
  9254. })
  9255. router.route("/update_llm_note_title").all((req,res,next)=>{
  9256. postmysql(req, res, "update_llm_note_title");
  9257. })
  9258. router.route("/update_llm_note_detail").all((req,res,next)=>{
  9259. postmysql(req, res, "update_llm_note_detail");
  9260. })
  9261. router.route("/delete_llm_note").all((req,res,next)=>{
  9262. postmysql(req, res, "delete_llm_note");
  9263. })
  9264. router.route("/get_all_llm_note").all((req,res,next)=>{
  9265. var json = queryString(req.url);
  9266. getmysql2(req, res, "get_all_llm_note", json["id"]);
  9267. })
  9268. router.route("/get_llm_note").all((req,res,next)=>{
  9269. var json = queryString(req.url);
  9270. getmysql2(req, res, "get_llm_note", json["id"]);
  9271. })
  9272. router.route("/get_llm_chat_id").all((req,res,next)=>{
  9273. var json = queryString(req.url);
  9274. getmysql2(req, res, "get_llm_chat_id", json["id"]);
  9275. })
  9276. router.route("/update_llm_chat_detail").all((req,res,next)=>{
  9277. postmysql(req, res, "update_llm_chat_detail");
  9278. })
  9279. router.route("/update_llm_chat_title").all((req,res,next)=>{
  9280. postmysql(req, res, "update_llm_chat_title");
  9281. })
  9282. router.route("/update_llm_role").all((req,res,next)=>{
  9283. postmysql(req, res, "update_llm_role");
  9284. })
  9285. router.route("/update_llm_sound").all((req,res,next)=>{
  9286. postmysql(req, res, "update_llm_sound");
  9287. })
  9288. router.route("/update_knowledgefile_detail").all((req,res,next)=>{
  9289. postmysql(req, res, "update_knowledgefile_detail");
  9290. })
  9291. //notebookllm
  9292. //获取智能体
  9293. router.route('/selectCoder').all((req,res,next)=>{
  9294. var json = queryString(req.url);
  9295. getmysql(req, res, "selectCoder", json["oid"],json["org"]);
  9296. })
  9297. //添加个性化学习中心
  9298. router.route('/addLearning').all((req, res, next) => {
  9299. postmysql(req, res, "addLearning");
  9300. });
  9301. //更新个性化学习中心
  9302. router.route('/updateLearning').all((req, res, next) => {
  9303. postmysql(req, res, "updateLearning");
  9304. });
  9305. //根据id获取个性化学习中心
  9306. router.route('/selectLearningById').all((req, res, next) => {
  9307. var json = queryString(req.url);
  9308. getmysql(req, res, "selectLearningById", json['id']);
  9309. });
  9310. //根据uid获取个性化学习中心
  9311. router.route('/selectLearningByUserid').all((req, res, next) => {
  9312. var json = queryString(req.url);
  9313. getmysql(req, res, "selectLearningByUserid", json['uid']);
  9314. });
  9315. //复制个性化学习中心
  9316. router.route('/copyLearning').all((req, res, next) => {
  9317. postmysql(req, res, "copyLearning");
  9318. });
  9319. //获取个性化学习中心学生
  9320. router.route('/selectLearningStudent').all((req, res, next) => {
  9321. var json = queryString(req.url);
  9322. getmysql(req, res, "selectLearningStudent", json['uid'], json['subject']);
  9323. });
  9324. //添加个性化学习中心llm
  9325. router.route('/add_llm_learning').all((req, res, next) => {
  9326. postmysql(req, res, "add_llm_learning");
  9327. });
  9328. //获取个性化学习中心llm
  9329. router.route('/get_llm_learning').all((req, res, next) => {
  9330. var json = queryString(req.url);
  9331. getmysql(req, res, "get_llm_learning", json['uid'], json['id']);
  9332. });
  9333. //获取个性化学习中心llm是否完成
  9334. router.route('/selectLearningIsDone').all((req, res, next) => {
  9335. var json = queryString(req.url);
  9336. getmysql(req, res, "selectLearningIsDone", json['uid'], json['tid']);
  9337. });
  9338. //删除个性化学习中心
  9339. router.route('/deleteLearning').all((req, res, next) => {
  9340. postmysql(req, res, "deleteLearning");
  9341. });
  9342. //获取个性化学习中心llm作业
  9343. router.route('/get_llm_work').all((req, res, next) => {
  9344. var json = queryString(req.url);
  9345. getmysql(req, res, "get_llm_work", json['lid']);
  9346. });
  9347. //添加个性化学习中心llm作业
  9348. router.route('/add_llm_work').all((req, res, next) => {
  9349. postmysql(req, res, "add_llm_work");
  9350. });
  9351. //获取个性化学习中心学生学习空间数据
  9352. router.route('/get_llm_student').all((req, res, next) => {
  9353. var json = queryString(req.url);
  9354. getmysql(req, res, "get_llm_student", json['id'], json['class'], json['n']);
  9355. });
  9356. //获取个性化学习中心学生评估
  9357. router.route('/get_llm_work_student').all((req, res, next) => {
  9358. var json = queryString(req.url);
  9359. getmysql(req, res, "get_llm_work_student", json['id'], json['class'], json['n']);
  9360. });
  9361. //修改当前使用导师
  9362. router.route('/update_llm_nrole').all((req, res, next) => {
  9363. postmysql(req, res, "update_llm_nrole");
  9364. });
  9365. //个性化中心取消发布功能
  9366. router.route('/unpbLearning').all((req, res, next) => {
  9367. postmysql(req, res, "unpbLearning");
  9368. });
  9369. //获取跨学科所有智能体
  9370. router.route('/select_coder_cocoLearn').all((req, res, next) => {
  9371. var json = queryString(req.url);
  9372. getmysql(req, res, "select_coder_cocoLearn", json['userid'], json['stand']);
  9373. });
  9374. //跨学科添加项目
  9375. router.route('/add_cocoLearn').all((req, res, next) => {
  9376. postmysql(req, res, "add_cocoLearn");
  9377. });
  9378. //跨学科修改项目
  9379. router.route('/update_cocoLearn').all((req, res, next) => {
  9380. postmysql(req, res, "update_cocoLearn");
  9381. });
  9382. //获取跨学科自己的项目
  9383. router.route('/select_cocoLearn_m').all((req, res, next) => {
  9384. var json = queryString(req.url);
  9385. getmysql(req, res, "select_cocoLearn_m", json['uid'], json['subject'], json['juri']);
  9386. });
  9387. //跨学科获取项目详情
  9388. router.route('/select_cocoLearn_detail').all((req, res, next) => {
  9389. var json = queryString(req.url);
  9390. getmysql(req, res, "select_cocoLearn_detail", json['id']);
  9391. });
  9392. function generateAPIKey(username) {
  9393. let timeStamp = new Date().getTime();
  9394. let hashStr = timeStamp + username;
  9395. let digest = crypto
  9396. .createHash("sha256")
  9397. .update(hashStr, "utf8")
  9398. .digest("hex");
  9399. return digest;
  9400. }
  9401. queryString = function(url) {
  9402. var a = url.split("?");
  9403. var json = querystring.parse(a[1]);
  9404. return json;
  9405. };
  9406. //post存儲過程處理
  9407. postmysql = function(req, res, functionname) {
  9408. //mode的處理
  9409. if (req.body[0]) {
  9410. p = Object.values(req.body[0]);
  9411. p.unshift(_mysqlLabor[0], _mysqlLabor[1], functionname);
  9412. //執行存儲過程
  9413. mysql.usselect(p, function(ret) {
  9414. res.end(JSON.stringify(ret));
  9415. });
  9416. }
  9417. };
  9418. //post存儲過程處理
  9419. postmysql2 = function(req, res, functionname) {
  9420. //mode的處理
  9421. if (req.body) {
  9422. p = Object.values(req.body)[0].split(",");
  9423. p.unshift(_mysqlLabor[0], _mysqlLabor[1], functionname);
  9424. //執行存儲過程
  9425. mysql.usselect(p, function(ret) {
  9426. res.end(JSON.stringify(ret));
  9427. });
  9428. }
  9429. };
  9430. //post存儲過程處理
  9431. postmysql3 = function(req, res, functionname) {
  9432. //mode的處理
  9433. if (req.body) {
  9434. p = Object.values(req.body);
  9435. p.unshift(_mysqlLabor[0], _mysqlLabor[1], functionname);
  9436. //執行存儲過程
  9437. mysql.usselect(p, function(ret) {
  9438. res.end(JSON.stringify(ret));
  9439. });
  9440. }
  9441. };
  9442. //get獲取數據庫信息
  9443. getmysql = function(req, res, functionname, ...p) {
  9444. p = p || [];
  9445. p.unshift(_getmysqlLabor[0], _getmysqlLabor[1], functionname);
  9446. //執行存儲過程
  9447. mysql.usselect(p, function(ret) {
  9448. res.end(JSON.stringify(ret));
  9449. }); //
  9450. };
  9451. //get獲取數據庫信息
  9452. getmysql2 = function(req, res, functionname, ...p) {
  9453. p = p || [];
  9454. p.unshift(_mysqlLabor[0], _mysqlLabor[1], functionname);
  9455. //執行存儲過程
  9456. mysql.usselect(p, function(ret) {
  9457. res.end(JSON.stringify(ret));
  9458. }); //
  9459. };
  9460. //get獲取數據庫信息
  9461. getmysql3 = function(req, res, functionname, ...p) {
  9462. p = p || [];
  9463. p.unshift(_getmysqlLabor2[0], _getmysqlLabor2[1], functionname);
  9464. //執行存儲過程
  9465. mysql.usselect(p, function(ret) {
  9466. res.end(JSON.stringify(ret));
  9467. }); //
  9468. };
  9469. //post存储过程处理
  9470. userpostmysql = function(req, res, functionname) {
  9471. //mode的处理
  9472. if (req.body.mode) {
  9473. p = req.body.mode.split(",");
  9474. p.unshift(_mysqluser[0], _mysqluser[1], functionname);
  9475. //执行存储过程
  9476. mysql.usselect(p, function(ret) {
  9477. res.end(JSON.stringify(ret));
  9478. });
  9479. }
  9480. };
  9481. //get获取数据库信息
  9482. usergetmysql = function(req, res, functionname, ...p) {
  9483. p = p || [];
  9484. p.unshift(_mysqluser[0], _mysqluser[1], functionname);
  9485. //执行存储过程
  9486. mysql.usselect(p, function(ret) {
  9487. res.end(JSON.stringify(ret));
  9488. }); //
  9489. };
  9490. //post存儲過程處理
  9491. postmysqlLocal = function(req, res) {
  9492. //mode的處理
  9493. if (req.body[0]) {
  9494. p = Object.values(req.body[0]);
  9495. p.unshift(_localhost[0], _localhost[1]);
  9496. //執行存儲過程
  9497. mysql.usselect(p, function(ret) {
  9498. res.end(JSON.stringify(ret));
  9499. });
  9500. }
  9501. };
  9502. postmysqlOnline = function(req, res) {
  9503. //mode的處理
  9504. if (req.body[0]) {
  9505. p = Object.values(req.body[0]);
  9506. p.unshift(_mysqlLabor[0], _mysqlLabor[1]);
  9507. //執行存儲過程
  9508. mysql.usselect(p, function(ret) {
  9509. res.end(JSON.stringify(ret));
  9510. });
  9511. }
  9512. };
  9513. module.exports = router;