12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788678967906791679267936794679567966797679867996800680168026803680468056806680768086809681068116812681368146815681668176818681968206821682268236824682568266827682868296830683168326833683468356836683768386839684068416842684368446845684668476848684968506851685268536854685568566857685868596860686168626863686468656866686768686869687068716872687368746875687668776878687968806881688268836884688568866887688868896890689168926893689468956896689768986899690069016902690369046905690669076908690969106911691269136914691569166917691869196920692169226923692469256926692769286929693069316932693369346935693669376938693969406941694269436944694569466947694869496950695169526953695469556956695769586959696069616962696369646965696669676968696969706971697269736974697569766977697869796980698169826983698469856986698769886989699069916992699369946995699669976998699970007001700270037004700570067007700870097010701170127013701470157016701770187019702070217022702370247025702670277028702970307031703270337034703570367037703870397040704170427043704470457046704770487049705070517052705370547055705670577058705970607061706270637064706570667067706870697070707170727073707470757076707770787079708070817082708370847085708670877088708970907091709270937094709570967097709870997100710171027103710471057106710771087109711071117112711371147115711671177118711971207121712271237124712571267127712871297130713171327133713471357136713771387139714071417142714371447145714671477148714971507151715271537154715571567157715871597160716171627163716471657166716771687169717071717172717371747175717671777178717971807181718271837184718571867187718871897190719171927193719471957196719771987199720072017202720372047205720672077208720972107211721272137214721572167217721872197220722172227223722472257226722772287229723072317232723372347235723672377238723972407241724272437244724572467247724872497250725172527253725472557256725772587259726072617262726372647265726672677268726972707271727272737274727572767277727872797280728172827283728472857286728772887289729072917292729372947295729672977298729973007301730273037304730573067307730873097310731173127313731473157316731773187319732073217322732373247325732673277328732973307331733273337334733573367337733873397340734173427343734473457346734773487349735073517352735373547355735673577358735973607361736273637364736573667367736873697370737173727373737473757376737773787379738073817382738373847385738673877388738973907391739273937394739573967397739873997400740174027403740474057406740774087409741074117412741374147415741674177418741974207421742274237424742574267427742874297430743174327433743474357436743774387439744074417442744374447445744674477448744974507451745274537454745574567457745874597460746174627463746474657466746774687469747074717472747374747475747674777478747974807481748274837484748574867487748874897490749174927493749474957496749774987499750075017502750375047505750675077508750975107511751275137514751575167517751875197520752175227523752475257526752775287529753075317532753375347535753675377538753975407541754275437544754575467547754875497550755175527553755475557556755775587559756075617562756375647565756675677568756975707571757275737574757575767577757875797580758175827583758475857586758775887589759075917592759375947595759675977598759976007601760276037604760576067607760876097610761176127613761476157616761776187619762076217622762376247625762676277628762976307631763276337634763576367637763876397640764176427643764476457646764776487649765076517652765376547655765676577658765976607661766276637664766576667667766876697670767176727673767476757676767776787679768076817682768376847685768676877688768976907691769276937694769576967697769876997700770177027703770477057706770777087709771077117712771377147715771677177718771977207721772277237724772577267727772877297730773177327733773477357736773777387739774077417742774377447745774677477748774977507751775277537754775577567757775877597760776177627763776477657766776777687769777077717772777377747775777677777778777977807781778277837784778577867787778877897790779177927793779477957796779777987799780078017802780378047805780678077808780978107811781278137814781578167817781878197820782178227823782478257826782778287829783078317832783378347835783678377838783978407841784278437844784578467847784878497850785178527853785478557856785778587859786078617862786378647865786678677868786978707871787278737874787578767877787878797880788178827883788478857886788778887889789078917892789378947895789678977898789979007901790279037904790579067907790879097910791179127913791479157916791779187919792079217922792379247925792679277928792979307931793279337934793579367937793879397940794179427943794479457946794779487949795079517952795379547955795679577958795979607961796279637964796579667967796879697970797179727973797479757976797779787979798079817982798379847985798679877988798979907991799279937994799579967997799879998000800180028003800480058006800780088009801080118012801380148015801680178018801980208021802280238024802580268027802880298030803180328033803480358036803780388039804080418042804380448045804680478048804980508051805280538054805580568057805880598060806180628063806480658066806780688069807080718072807380748075807680778078807980808081808280838084808580868087808880898090809180928093809480958096809780988099810081018102810381048105810681078108810981108111811281138114811581168117811881198120812181228123812481258126812781288129813081318132813381348135813681378138813981408141814281438144814581468147814881498150815181528153815481558156815781588159816081618162816381648165816681678168816981708171817281738174817581768177817881798180818181828183818481858186818781888189819081918192819381948195819681978198819982008201820282038204820582068207820882098210821182128213821482158216821782188219822082218222822382248225822682278228822982308231823282338234823582368237823882398240824182428243824482458246824782488249825082518252825382548255825682578258825982608261826282638264826582668267826882698270827182728273827482758276827782788279828082818282828382848285828682878288828982908291829282938294829582968297829882998300830183028303830483058306830783088309831083118312831383148315831683178318831983208321832283238324832583268327832883298330833183328333833483358336833783388339834083418342834383448345834683478348834983508351835283538354835583568357835883598360836183628363836483658366836783688369837083718372837383748375837683778378837983808381838283838384838583868387838883898390839183928393839483958396839783988399840084018402840384048405840684078408840984108411841284138414841584168417841884198420842184228423842484258426842784288429843084318432843384348435843684378438843984408441844284438444844584468447844884498450845184528453845484558456845784588459846084618462846384648465846684678468846984708471847284738474847584768477847884798480848184828483848484858486848784888489849084918492849384948495849684978498849985008501850285038504850585068507850885098510851185128513851485158516851785188519852085218522852385248525852685278528852985308531853285338534853585368537853885398540854185428543854485458546854785488549855085518552855385548555855685578558855985608561856285638564856585668567856885698570857185728573857485758576857785788579858085818582858385848585858685878588858985908591859285938594859585968597859885998600860186028603860486058606860786088609861086118612861386148615861686178618861986208621862286238624862586268627862886298630863186328633863486358636863786388639864086418642864386448645864686478648864986508651865286538654865586568657865886598660866186628663866486658666866786688669867086718672867386748675867686778678867986808681868286838684868586868687868886898690869186928693869486958696869786988699870087018702870387048705870687078708870987108711871287138714871587168717871887198720872187228723872487258726872787288729873087318732873387348735873687378738873987408741874287438744874587468747874887498750875187528753875487558756875787588759876087618762876387648765876687678768876987708771877287738774877587768777877887798780878187828783878487858786878787888789879087918792879387948795879687978798879988008801880288038804880588068807880888098810881188128813881488158816881788188819882088218822882388248825882688278828882988308831883288338834883588368837883888398840884188428843884488458846884788488849885088518852885388548855885688578858885988608861886288638864886588668867886888698870887188728873887488758876887788788879888088818882888388848885888688878888888988908891889288938894889588968897889888998900890189028903890489058906890789088909891089118912891389148915891689178918891989208921892289238924892589268927892889298930893189328933893489358936893789388939894089418942894389448945894689478948894989508951895289538954895589568957895889598960896189628963896489658966896789688969897089718972897389748975897689778978897989808981898289838984898589868987898889898990899189928993899489958996899789988999900090019002900390049005900690079008900990109011901290139014901590169017901890199020902190229023902490259026902790289029903090319032903390349035903690379038903990409041904290439044904590469047904890499050905190529053905490559056905790589059906090619062906390649065906690679068906990709071907290739074907590769077907890799080908190829083908490859086908790889089909090919092909390949095909690979098909991009101910291039104910591069107910891099110911191129113911491159116911791189119912091219122912391249125912691279128912991309131913291339134913591369137913891399140914191429143914491459146914791489149915091519152915391549155915691579158915991609161916291639164916591669167916891699170917191729173917491759176917791789179918091819182918391849185918691879188918991909191919291939194919591969197919891999200920192029203920492059206920792089209921092119212921392149215921692179218921992209221922292239224922592269227922892299230923192329233923492359236923792389239924092419242924392449245924692479248924992509251925292539254925592569257925892599260926192629263926492659266926792689269927092719272927392749275927692779278927992809281928292839284928592869287928892899290929192929293929492959296929792989299930093019302930393049305930693079308930993109311931293139314931593169317931893199320932193229323932493259326932793289329933093319332933393349335933693379338933993409341934293439344934593469347934893499350935193529353935493559356935793589359936093619362936393649365936693679368936993709371937293739374937593769377937893799380938193829383938493859386938793889389939093919392939393949395939693979398939994009401940294039404940594069407940894099410941194129413941494159416941794189419942094219422942394249425942694279428942994309431943294339434943594369437943894399440944194429443944494459446944794489449945094519452945394549455945694579458945994609461946294639464946594669467946894699470947194729473947494759476947794789479948094819482948394849485948694879488948994909491949294939494949594969497949894999500950195029503950495059506950795089509951095119512951395149515951695179518951995209521952295239524952595269527952895299530953195329533953495359536953795389539954095419542954395449545954695479548954995509551955295539554955595569557955895599560956195629563956495659566956795689569957095719572957395749575957695779578957995809581958295839584958595869587958895899590959195929593959495959596959795989599960096019602960396049605960696079608960996109611961296139614961596169617961896199620962196229623962496259626962796289629963096319632963396349635963696379638963996409641964296439644964596469647964896499650965196529653965496559656965796589659966096619662966396649665966696679668966996709671967296739674967596769677967896799680968196829683968496859686968796889689969096919692969396949695969696979698969997009701970297039704970597069707970897099710971197129713971497159716971797189719972097219722972397249725972697279728972997309731973297339734973597369737973897399740974197429743974497459746974797489749975097519752975397549755975697579758975997609761976297639764976597669767976897699770977197729773977497759776977797789779978097819782978397849785978697879788978997909791979297939794979597969797979897999800980198029803980498059806980798089809981098119812981398149815981698179818981998209821982298239824982598269827982898299830983198329833983498359836983798389839984098419842984398449845984698479848984998509851985298539854985598569857985898599860986198629863986498659866986798689869987098719872987398749875987698779878987998809881988298839884988598869887988898899890989198929893989498959896989798989899990099019902990399049905990699079908990999109911991299139914991599169917991899199920992199229923992499259926992799289929993099319932993399349935993699379938993999409941994299439944994599469947994899499950995199529953995499559956995799589959996099619962996399649965996699679968996999709971997299739974997599769977997899799980998199829983998499859986998799889989999099919992999399949995999699979998999910000100011000210003100041000510006100071000810009100101001110012100131001410015100161001710018100191002010021100221002310024100251002610027100281002910030100311003210033100341003510036100371003810039100401004110042100431004410045100461004710048100491005010051100521005310054100551005610057100581005910060100611006210063100641006510066100671006810069100701007110072100731007410075100761007710078100791008010081100821008310084100851008610087100881008910090100911009210093100941009510096100971009810099101001010110102101031010410105101061010710108101091011010111101121011310114101151011610117101181011910120101211012210123101241012510126101271012810129101301013110132101331013410135101361013710138101391014010141101421014310144101451014610147101481014910150101511015210153101541015510156101571015810159101601016110162101631016410165101661016710168101691017010171101721017310174101751017610177101781017910180101811018210183101841018510186101871018810189101901019110192101931019410195101961019710198101991020010201102021020310204102051020610207102081020910210102111021210213102141021510216102171021810219102201022110222102231022410225102261022710228102291023010231102321023310234102351023610237102381023910240102411024210243102441024510246102471024810249102501025110252102531025410255102561025710258102591026010261102621026310264102651026610267102681026910270102711027210273102741027510276102771027810279102801028110282102831028410285102861028710288102891029010291102921029310294102951029610297102981029910300103011030210303103041030510306103071030810309103101031110312103131031410315103161031710318103191032010321103221032310324103251032610327103281032910330103311033210333103341033510336103371033810339103401034110342103431034410345103461034710348103491035010351103521035310354103551035610357103581035910360103611036210363103641036510366103671036810369103701037110372103731037410375103761037710378103791038010381103821038310384103851038610387103881038910390103911039210393103941039510396103971039810399104001040110402104031040410405104061040710408104091041010411104121041310414104151041610417104181041910420104211042210423104241042510426104271042810429104301043110432104331043410435104361043710438104391044010441104421044310444104451044610447104481044910450104511045210453104541045510456104571045810459104601046110462104631046410465104661046710468104691047010471104721047310474104751047610477104781047910480104811048210483104841048510486104871048810489104901049110492104931049410495104961049710498104991050010501105021050310504105051050610507105081050910510105111051210513105141051510516105171051810519105201052110522105231052410525105261052710528105291053010531105321053310534105351053610537105381053910540105411054210543105441054510546105471054810549105501055110552105531055410555105561055710558105591056010561105621056310564105651056610567105681056910570105711057210573105741057510576105771057810579105801058110582105831058410585105861058710588105891059010591105921059310594105951059610597105981059910600106011060210603106041060510606106071060810609106101061110612106131061410615106161061710618106191062010621106221062310624106251062610627106281062910630106311063210633106341063510636106371063810639106401064110642106431064410645106461064710648106491065010651106521065310654106551065610657106581065910660106611066210663106641066510666106671066810669106701067110672106731067410675106761067710678106791068010681106821068310684106851068610687106881068910690106911069210693106941069510696106971069810699107001070110702107031070410705107061070710708107091071010711107121071310714107151071610717107181071910720107211072210723107241072510726107271072810729107301073110732107331073410735107361073710738107391074010741107421074310744107451074610747107481074910750107511075210753107541075510756107571075810759107601076110762107631076410765107661076710768107691077010771107721077310774107751077610777107781077910780107811078210783107841078510786107871078810789107901079110792107931079410795107961079710798107991080010801108021080310804108051080610807108081080910810108111081210813108141081510816108171081810819108201082110822108231082410825108261082710828108291083010831108321083310834108351083610837108381083910840108411084210843108441084510846108471084810849108501085110852108531085410855108561085710858108591086010861108621086310864108651086610867108681086910870108711087210873108741087510876108771087810879108801088110882108831088410885108861088710888108891089010891108921089310894108951089610897108981089910900109011090210903109041090510906109071090810909109101091110912109131091410915109161091710918109191092010921109221092310924109251092610927109281092910930109311093210933109341093510936109371093810939109401094110942109431094410945109461094710948109491095010951109521095310954109551095610957109581095910960109611096210963109641096510966109671096810969109701097110972109731097410975109761097710978109791098010981109821098310984109851098610987109881098910990109911099210993109941099510996109971099810999110001100111002110031100411005110061100711008110091101011011110121101311014110151101611017110181101911020110211102211023110241102511026110271102811029110301103111032110331103411035110361103711038110391104011041110421104311044110451104611047110481104911050110511105211053110541105511056110571105811059110601106111062110631106411065110661106711068110691107011071110721107311074110751107611077110781107911080110811108211083110841108511086110871108811089110901109111092110931109411095110961109711098110991110011101111021110311104111051110611107111081110911110111111111211113111141111511116111171111811119111201112111122111231112411125111261112711128111291113011131111321113311134111351113611137111381113911140111411114211143111441114511146111471114811149111501115111152111531115411155111561115711158111591116011161111621116311164111651116611167111681116911170111711117211173111741117511176111771117811179111801118111182111831118411185111861118711188111891119011191111921119311194111951119611197111981119911200112011120211203112041120511206112071120811209112101121111212112131121411215112161121711218112191122011221112221122311224112251122611227112281122911230112311123211233112341123511236112371123811239112401124111242112431124411245112461124711248112491125011251112521125311254112551125611257112581125911260112611126211263112641126511266112671126811269112701127111272112731127411275112761127711278112791128011281112821128311284112851128611287112881128911290112911129211293112941129511296112971129811299113001130111302113031130411305113061130711308113091131011311113121131311314113151131611317113181131911320113211132211323113241132511326113271132811329113301133111332113331133411335113361133711338113391134011341113421134311344113451134611347113481134911350113511135211353113541135511356113571135811359113601136111362113631136411365113661136711368113691137011371113721137311374113751137611377113781137911380113811138211383113841138511386113871138811389113901139111392113931139411395113961139711398113991140011401114021140311404114051140611407114081140911410114111141211413114141141511416114171141811419114201142111422114231142411425114261142711428114291143011431114321143311434114351143611437114381143911440114411144211443114441144511446114471144811449114501145111452114531145411455114561145711458114591146011461114621146311464114651146611467114681146911470114711147211473114741147511476114771147811479114801148111482114831148411485114861148711488114891149011491114921149311494114951149611497114981149911500115011150211503115041150511506115071150811509115101151111512115131151411515115161151711518115191152011521115221152311524115251152611527115281152911530115311153211533115341153511536115371153811539115401154111542115431154411545115461154711548115491155011551115521155311554115551155611557115581155911560115611156211563115641156511566115671156811569115701157111572115731157411575115761157711578115791158011581115821158311584115851158611587115881158911590115911159211593115941159511596115971159811599116001160111602116031160411605116061160711608116091161011611116121161311614116151161611617116181161911620116211162211623116241162511626116271162811629116301163111632116331163411635116361163711638116391164011641116421164311644116451164611647116481164911650116511165211653116541165511656116571165811659116601166111662116631166411665116661166711668116691167011671116721167311674116751167611677116781167911680116811168211683116841168511686116871168811689116901169111692116931169411695116961169711698116991170011701117021170311704117051170611707117081170911710117111171211713117141171511716117171171811719117201172111722117231172411725117261172711728117291173011731117321173311734117351173611737117381173911740117411174211743117441174511746117471174811749117501175111752117531175411755117561175711758117591176011761117621176311764117651176611767117681176911770117711177211773117741177511776117771177811779117801178111782117831178411785117861178711788117891179011791117921179311794117951179611797117981179911800118011180211803118041180511806118071180811809118101181111812118131181411815118161181711818118191182011821118221182311824118251182611827118281182911830118311183211833118341183511836118371183811839118401184111842118431184411845118461184711848118491185011851118521185311854118551185611857118581185911860118611186211863118641186511866118671186811869118701187111872118731187411875118761187711878118791188011881118821188311884118851188611887118881188911890118911189211893118941189511896118971189811899119001190111902119031190411905119061190711908119091191011911119121191311914119151191611917119181191911920119211192211923119241192511926119271192811929119301193111932119331193411935119361193711938119391194011941119421194311944119451194611947119481194911950119511195211953119541195511956119571195811959119601196111962119631196411965119661196711968119691197011971119721197311974119751197611977119781197911980119811198211983119841198511986119871198811989119901199111992119931199411995119961199711998119991200012001120021200312004120051200612007120081200912010120111201212013120141201512016120171201812019120201202112022120231202412025120261202712028120291203012031120321203312034120351203612037120381203912040120411204212043120441204512046120471204812049120501205112052120531205412055120561205712058120591206012061120621206312064120651206612067120681206912070120711207212073120741207512076120771207812079120801208112082120831208412085120861208712088120891209012091120921209312094120951209612097120981209912100121011210212103121041210512106121071210812109121101211112112121131211412115121161211712118121191212012121121221212312124121251212612127121281212912130121311213212133121341213512136121371213812139121401214112142121431214412145121461214712148121491215012151121521215312154121551215612157121581215912160121611216212163121641216512166121671216812169121701217112172121731217412175121761217712178121791218012181121821218312184121851218612187121881218912190121911219212193121941219512196121971219812199122001220112202122031220412205122061220712208122091221012211122121221312214122151221612217122181221912220122211222212223122241222512226122271222812229122301223112232122331223412235122361223712238122391224012241122421224312244122451224612247122481224912250122511225212253122541225512256122571225812259122601226112262122631226412265122661226712268122691227012271122721227312274122751227612277122781227912280122811228212283122841228512286122871228812289122901229112292122931229412295122961229712298122991230012301123021230312304123051230612307123081230912310123111231212313123141231512316123171231812319123201232112322123231232412325123261232712328123291233012331123321233312334123351233612337123381233912340123411234212343123441234512346123471234812349123501235112352123531235412355123561235712358123591236012361123621236312364123651236612367123681236912370123711237212373123741237512376123771237812379123801238112382123831238412385123861238712388123891239012391123921239312394123951239612397123981239912400124011240212403124041240512406124071240812409124101241112412124131241412415124161241712418124191242012421124221242312424124251242612427124281242912430124311243212433124341243512436124371243812439124401244112442124431244412445124461244712448124491245012451124521245312454124551245612457124581245912460124611246212463124641246512466124671246812469124701247112472124731247412475124761247712478124791248012481124821248312484124851248612487124881248912490124911249212493124941249512496124971249812499125001250112502125031250412505125061250712508125091251012511125121251312514125151251612517125181251912520125211252212523125241252512526125271252812529125301253112532125331253412535125361253712538125391254012541125421254312544125451254612547125481254912550125511255212553125541255512556125571255812559125601256112562125631256412565125661256712568125691257012571125721257312574125751257612577125781257912580125811258212583125841258512586125871258812589125901259112592125931259412595125961259712598125991260012601126021260312604126051260612607126081260912610126111261212613126141261512616126171261812619126201262112622126231262412625126261262712628126291263012631126321263312634126351263612637126381263912640126411264212643126441264512646126471264812649126501265112652126531265412655126561265712658126591266012661126621266312664126651266612667126681266912670126711267212673126741267512676126771267812679126801268112682126831268412685126861268712688126891269012691126921269312694126951269612697126981269912700127011270212703127041270512706127071270812709127101271112712127131271412715127161271712718127191272012721127221272312724127251272612727127281272912730127311273212733127341273512736127371273812739127401274112742127431274412745127461274712748127491275012751127521275312754127551275612757127581275912760127611276212763127641276512766127671276812769127701277112772127731277412775127761277712778127791278012781127821278312784127851278612787127881278912790127911279212793127941279512796127971279812799128001280112802128031280412805128061280712808128091281012811128121281312814128151281612817128181281912820128211282212823128241282512826128271282812829128301283112832128331283412835128361283712838128391284012841128421284312844128451284612847128481284912850128511285212853128541285512856128571285812859128601286112862128631286412865128661286712868128691287012871128721287312874128751287612877128781287912880128811288212883128841288512886128871288812889128901289112892128931289412895128961289712898128991290012901129021290312904129051290612907129081290912910129111291212913129141291512916129171291812919129201292112922129231292412925129261292712928129291293012931129321293312934129351293612937129381293912940129411294212943129441294512946129471294812949129501295112952129531295412955129561295712958129591296012961129621296312964129651296612967129681296912970129711297212973129741297512976129771297812979129801298112982129831298412985129861298712988129891299012991129921299312994129951299612997129981299913000130011300213003130041300513006130071300813009130101301113012130131301413015130161301713018130191302013021130221302313024130251302613027130281302913030130311303213033130341303513036130371303813039130401304113042130431304413045130461304713048130491305013051130521305313054130551305613057130581305913060130611306213063130641306513066130671306813069130701307113072130731307413075130761307713078130791308013081130821308313084130851308613087130881308913090130911309213093130941309513096130971309813099131001310113102131031310413105131061310713108131091311013111131121311313114131151311613117131181311913120131211312213123131241312513126131271312813129131301313113132131331313413135131361313713138131391314013141131421314313144131451314613147131481314913150131511315213153131541315513156131571315813159131601316113162131631316413165131661316713168131691317013171131721317313174131751317613177131781317913180131811318213183131841318513186131871318813189131901319113192131931319413195131961319713198131991320013201132021320313204132051320613207132081320913210132111321213213132141321513216132171321813219132201322113222132231322413225132261322713228132291323013231132321323313234132351323613237132381323913240132411324213243132441324513246132471324813249132501325113252132531325413255132561325713258132591326013261132621326313264132651326613267132681326913270132711327213273132741327513276132771327813279132801328113282132831328413285132861328713288132891329013291132921329313294132951329613297132981329913300133011330213303133041330513306133071330813309133101331113312133131331413315133161331713318133191332013321133221332313324133251332613327133281332913330133311333213333133341333513336133371333813339133401334113342133431334413345133461334713348133491335013351133521335313354133551335613357133581335913360133611336213363133641336513366133671336813369133701337113372133731337413375133761337713378133791338013381133821338313384133851338613387133881338913390133911339213393133941339513396133971339813399134001340113402134031340413405134061340713408134091341013411134121341313414134151341613417134181341913420134211342213423134241342513426134271342813429134301343113432134331343413435134361343713438134391344013441134421344313444134451344613447134481344913450134511345213453134541345513456134571345813459134601346113462134631346413465134661346713468134691347013471134721347313474134751347613477134781347913480134811348213483134841348513486134871348813489134901349113492134931349413495134961349713498134991350013501135021350313504135051350613507135081350913510135111351213513135141351513516135171351813519135201352113522135231352413525135261352713528135291353013531135321353313534135351353613537135381353913540135411354213543135441354513546135471354813549135501355113552135531355413555135561355713558135591356013561135621356313564135651356613567135681356913570135711357213573135741357513576135771357813579135801358113582135831358413585135861358713588135891359013591135921359313594135951359613597135981359913600136011360213603136041360513606136071360813609136101361113612136131361413615136161361713618136191362013621136221362313624136251362613627136281362913630136311363213633136341363513636136371363813639136401364113642136431364413645136461364713648136491365013651136521365313654136551365613657136581365913660136611366213663136641366513666136671366813669136701367113672136731367413675136761367713678136791368013681136821368313684136851368613687136881368913690136911369213693136941369513696136971369813699137001370113702137031370413705137061370713708137091371013711137121371313714137151371613717137181371913720137211372213723137241372513726137271372813729137301373113732137331373413735137361373713738137391374013741137421374313744137451374613747137481374913750137511375213753137541375513756137571375813759137601376113762137631376413765137661376713768137691377013771137721377313774137751377613777137781377913780137811378213783137841378513786137871378813789137901379113792137931379413795137961379713798137991380013801138021380313804138051380613807138081380913810138111381213813138141381513816138171381813819138201382113822138231382413825138261382713828138291383013831138321383313834138351383613837138381383913840138411384213843138441384513846138471384813849138501385113852138531385413855138561385713858138591386013861138621386313864138651386613867138681386913870138711387213873138741387513876138771387813879138801388113882138831388413885138861388713888138891389013891138921389313894138951389613897138981389913900139011390213903139041390513906139071390813909139101391113912139131391413915139161391713918139191392013921139221392313924139251392613927139281392913930139311393213933139341393513936139371393813939139401394113942139431394413945139461394713948139491395013951139521395313954139551395613957139581395913960139611396213963139641396513966139671396813969139701397113972139731397413975139761397713978139791398013981139821398313984139851398613987139881398913990139911399213993139941399513996139971399813999140001400114002140031400414005140061400714008140091401014011140121401314014140151401614017140181401914020140211402214023140241402514026140271402814029140301403114032140331403414035140361403714038140391404014041140421404314044140451404614047140481404914050140511405214053140541405514056140571405814059140601406114062140631406414065140661406714068140691407014071140721407314074140751407614077140781407914080140811408214083140841408514086140871408814089140901409114092140931409414095140961409714098140991410014101141021410314104141051410614107141081410914110141111411214113141141411514116141171411814119141201412114122141231412414125141261412714128141291413014131141321413314134141351413614137141381413914140141411414214143141441414514146141471414814149141501415114152141531415414155141561415714158141591416014161141621416314164141651416614167141681416914170141711417214173141741417514176141771417814179141801418114182141831418414185141861418714188141891419014191141921419314194141951419614197141981419914200142011420214203142041420514206142071420814209142101421114212142131421414215142161421714218142191422014221142221422314224142251422614227142281422914230142311423214233142341423514236142371423814239142401424114242142431424414245142461424714248142491425014251142521425314254142551425614257142581425914260142611426214263142641426514266142671426814269142701427114272142731427414275142761427714278142791428014281142821428314284142851428614287142881428914290142911429214293142941429514296142971429814299143001430114302143031430414305143061430714308143091431014311143121431314314143151431614317143181431914320143211432214323143241432514326143271432814329143301433114332143331433414335143361433714338143391434014341143421434314344143451434614347143481434914350143511435214353143541435514356143571435814359143601436114362143631436414365143661436714368143691437014371143721437314374143751437614377143781437914380143811438214383143841438514386143871438814389143901439114392143931439414395143961439714398143991440014401144021440314404144051440614407144081440914410144111441214413144141441514416144171441814419144201442114422144231442414425144261442714428144291443014431144321443314434144351443614437144381443914440144411444214443144441444514446144471444814449144501445114452144531445414455144561445714458144591446014461144621446314464144651446614467144681446914470144711447214473144741447514476144771447814479144801448114482144831448414485144861448714488144891449014491144921449314494144951449614497144981449914500145011450214503145041450514506145071450814509145101451114512145131451414515145161451714518145191452014521145221452314524145251452614527145281452914530145311453214533145341453514536145371453814539145401454114542145431454414545145461454714548145491455014551145521455314554145551455614557145581455914560145611456214563145641456514566145671456814569145701457114572145731457414575145761457714578145791458014581145821458314584145851458614587145881458914590145911459214593145941459514596145971459814599146001460114602146031460414605146061460714608146091461014611146121461314614146151461614617146181461914620146211462214623146241462514626146271462814629146301463114632146331463414635146361463714638146391464014641146421464314644146451464614647146481464914650146511465214653146541465514656146571465814659146601466114662146631466414665146661466714668146691467014671146721467314674146751467614677146781467914680146811468214683146841468514686146871468814689146901469114692146931469414695146961469714698146991470014701147021470314704147051470614707147081470914710147111471214713147141471514716147171471814719147201472114722147231472414725147261472714728147291473014731147321473314734147351473614737147381473914740147411474214743147441474514746147471474814749147501475114752147531475414755147561475714758147591476014761147621476314764147651476614767147681476914770147711477214773147741477514776147771477814779147801478114782147831478414785147861478714788147891479014791147921479314794147951479614797147981479914800148011480214803148041480514806148071480814809148101481114812148131481414815148161481714818148191482014821148221482314824148251482614827148281482914830148311483214833148341483514836148371483814839148401484114842148431484414845148461484714848148491485014851148521485314854148551485614857148581485914860148611486214863148641486514866148671486814869148701487114872148731487414875148761487714878148791488014881148821488314884148851488614887148881488914890148911489214893148941489514896148971489814899149001490114902149031490414905149061490714908149091491014911149121491314914149151491614917149181491914920149211492214923149241492514926149271492814929149301493114932149331493414935149361493714938149391494014941149421494314944149451494614947149481494914950149511495214953149541495514956149571495814959149601496114962149631496414965149661496714968149691497014971149721497314974149751497614977149781497914980149811498214983149841498514986149871498814989149901499114992149931499414995149961499714998149991500015001150021500315004150051500615007150081500915010150111501215013150141501515016150171501815019150201502115022150231502415025150261502715028150291503015031150321503315034150351503615037150381503915040150411504215043150441504515046150471504815049150501505115052150531505415055150561505715058150591506015061150621506315064150651506615067150681506915070150711507215073150741507515076150771507815079150801508115082150831508415085150861508715088150891509015091150921509315094150951509615097150981509915100151011510215103151041510515106151071510815109151101511115112151131511415115151161511715118151191512015121151221512315124151251512615127151281512915130151311513215133151341513515136151371513815139151401514115142151431514415145151461514715148151491515015151151521515315154151551515615157151581515915160151611516215163151641516515166151671516815169151701517115172151731517415175151761517715178151791518015181151821518315184151851518615187151881518915190151911519215193151941519515196151971519815199152001520115202152031520415205152061520715208152091521015211152121521315214152151521615217152181521915220152211522215223152241522515226152271522815229152301523115232152331523415235152361523715238152391524015241152421524315244152451524615247152481524915250152511525215253152541525515256152571525815259152601526115262152631526415265152661526715268152691527015271152721527315274152751527615277152781527915280152811528215283152841528515286152871528815289152901529115292152931529415295152961529715298152991530015301153021530315304153051530615307153081530915310153111531215313153141531515316153171531815319153201532115322153231532415325153261532715328153291533015331153321533315334153351533615337153381533915340153411534215343153441534515346153471534815349153501535115352153531535415355153561535715358153591536015361153621536315364153651536615367153681536915370153711537215373153741537515376153771537815379153801538115382153831538415385153861538715388153891539015391153921539315394153951539615397153981539915400154011540215403154041540515406154071540815409154101541115412154131541415415154161541715418154191542015421154221542315424154251542615427154281542915430154311543215433154341543515436154371543815439154401544115442154431544415445154461544715448154491545015451154521545315454154551545615457154581545915460154611546215463154641546515466154671546815469154701547115472154731547415475154761547715478154791548015481154821548315484154851548615487154881548915490154911549215493154941549515496154971549815499155001550115502155031550415505155061550715508155091551015511155121551315514155151551615517155181551915520155211552215523155241552515526155271552815529155301553115532155331553415535155361553715538155391554015541155421554315544155451554615547155481554915550155511555215553155541555515556155571555815559155601556115562155631556415565155661556715568155691557015571155721557315574155751557615577155781557915580155811558215583155841558515586155871558815589155901559115592155931559415595155961559715598 |
- --#####################################################
- --创建时间:2018.03.05
- --创建人:Carl
- --说明:获取最新的媒体动态
- --#####################################################
- CREATE PROCEDURE [dbo].[procMarketMediaByProvinceIdSelect]
- (
- @ProvinceId INT
- )
- AS
- BEGIN
- SELECT top 6 a.* FROM MarketDb..MarketMedia a, MarketDb..MarketProvince b
- WHERE a.ID = b.MarketID
- AND b.Type = 1 AND a.MediaType = 1
- AND (b.ProvinceID = 0 OR b.ProvinceID = @ProvinceId)
- ORDER BY a.AddDate DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcMatchJobByRegionIDJobTypeIDSelect] Script Date: 2018/12/13 19:11:21 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.3
- --创建人:John
- --说明:根据Jobtype 获取当前地区相关招聘职位
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcMatchJobByRegionIDJobTypeIDSelect]
- (
- @dcRegionID VARCHAR(4),
- @dcJobTypeID VARCHAR(10)
- )
- AS
- BEGIN
- SET @dcJobTypeID = SUBSTRING(@dcJobTypeID,1,2) + '%'
- SELECT TOP 20 dcJobTypeID,AvgSalary
- FROM reportdb..SalaryReportJobtype
- WHERE dcRegionid = @dcRegionID
- AND dcJobTypeID LIKE @dcJobTypeID
- AND LEN(dcJobTypeID) <> 2
- ORDER BY JobNumber DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcMblQlrcNewsInsert] Script Date: 2018/12/13 19:11:21 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcMblQlrcNewsInsert]
- AS
- BEGIN
- IF NOT EXISTS(SELECT 'x' FROM QlrcNews WITH(NOLOCK) WHERE RefreshDate > DATEADD(MINUTE, -15, GETDATE()))
- RETURN
-
- DECLARE @COUNT INT, @ProvinceID INT
- SET @ProvinceID = 0
- WHILE EXISTS(SELECT 'x' FROM dcProvince WHERE ID > @ProvinceID AND Id <> 32)
- BEGIN
- SELECT TOP 1 @Count = 0, @ProvinceId = ID FROM dcProvince WHERE Id > @ProvinceId ORDER BY ID
- SELECT @COUNT = COUNT(1)
- FROM QlrcNews WITH(NOLOCK)
- WHERE
- (
- EXISTS(SELECT 'x' FROM fnSplit(DetailType,',') b,dcNewsType c WITH(NOLOCK) WHERE b.a=c.ID AND c.Category=1)
- OR
- DetailType IS NULL
- )
- AND VersionID = @ProvinceId
- AND NewsType = 2
- AND DetailType NOT LIKE '%,2,%'
- IF @COUNT > 200
- SET @COUNT = 200
-
- DELETE SearchDb..mblQlrcNews WHERE ProvinceId = @ProvinceId
- INSERT INTO SearchDb..mblQlrcNews(ProvinceId, Rows, ID, Title, RefreshDate, Author, [Content], smallimg, ViewNumber_All, cnt)
- SELECT @ProvinceId, Rows, ID, Title, RefreshDate, Author, [Content], smallimg, ViewNumber_All, @COUNT AS cnt
- FROM(
- SELECT TOP 200 ROW_NUMBER() OVER(ORDER BY RefreshDate DESC) AS Rows,
- ID, Title, RefreshDate, Author, [Content], smallimg, ViewNumber_All
- FROM QlrcNews WITH(NOLOCK)
- WHERE
- (
- EXISTS(SELECT 'x' FROM fnSplit(DetailType,',') b,dcNewsType c WITH(NOLOCK) WHERE b.a=c.ID AND c.Category=1)
- OR
- DetailType IS NULL
- )
- AND VersionID = @ProvinceId
- AND NewsType = 2
- AND DetailType NOT LIKE '%,2,%'
- ) AS a
- ORDER BY Rows
- END
- SET @ProvinceId = 32
- SELECT TOP 1 @Count = 0, @ProvinceId = ID FROM dcProvince WHERE Id > @ProvinceId ORDER BY ID
- SELECT @COUNT = COUNT(1)
- FROM QlrcNews WITH(NOLOCK)
- WHERE
- (
- EXISTS(SELECT 'x' FROM fnSplit(DetailType,',') b,dcNewsType c WITH(NOLOCK) WHERE b.a=c.ID AND c.Category=1)
- OR
- DetailType IS NULL
- )
- AND (VersionID = @ProvinceId OR VersionID=0)
- AND NewsType = 2
- AND DetailType NOT LIKE '%,2,%'
- IF @COUNT > 200
- SET @COUNT = 200
-
- DELETE SearchDb..mblQlrcNews WHERE ProvinceId = @ProvinceId
- INSERT INTO SearchDb..mblQlrcNews(ProvinceId, Rows, ID, Title, RefreshDate, Author, [Content], smallimg, ViewNumber_All, cnt)
- SELECT @ProvinceId, Rows, ID, Title, RefreshDate, Author, [Content], smallimg, ViewNumber_All, @COUNT AS cnt
- FROM(
- SELECT TOP 200 ROW_NUMBER() OVER(ORDER BY RefreshDate DESC) AS Rows,
- ID, Title, RefreshDate, Author, [Content], smallimg, ViewNumber_All
- FROM QlrcNews WITH(NOLOCK)
- WHERE
- (
- EXISTS(SELECT 'x' FROM fnSplit(DetailType,',') b,dcNewsType c WITH(NOLOCK) WHERE b.a=c.ID AND c.Category=1)
- OR
- DetailType IS NULL
- )
- AND (VersionID = @ProvinceId OR VersionID=0)
- AND NewsType = 2
- AND DetailType NOT LIKE '%,2,%'
- ) AS a
- ORDER BY Rows
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcMobileAreaSelect] Script Date: 2018/12/13 19:11:22 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.31
- --创建人:John
- --说明:获取手机号所在地
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcMobileAreaSelect]
- (
- @telNo VARCHAR(7)
- )
- AS
- BEGIN
- SELECT TOP 1 City,CardType FROM dcMobileArea WITH(NOLOCK) WHERE Num = @telNo
- END
- GO
- /****** Object: StoredProcedure [dbo].[procMobileFollowUpInsert] Script Date: 2018/12/13 19:11:23 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --20180322 CARL 手机号跟进
- CREATE PROCEDURE [dbo].[procMobileFollowUpInsert](
- @Mobile VARCHAR(50),
- @SessionId VARCHAR(100)
- )
- AS
- SET NOCOUNT ON
- BEGIN
- IF EXISTS(SELECT TOP 1 'X' FROM paMobileFollowUp WHERE ContactDate IS NOT NULL AND Mobile=@Mobile)
- RETURN -1
- IF EXISTS(SELECT TOP 1 'X' FROM paMain WHERE Mobile=@Mobile)
- RETURN -2
- DELETE FROM paMobileFollowUp WHERE Mobile=@Mobile OR SessionId=@SessionId
- INSERT INTO paMobileFollowUp(Mobile,SessionId) VALUES (@Mobile,@SessionId)
- END
- SET NOCOUNT OFF
- GO
- /****** Object: StoredProcedure [dbo].[procMobileFollowUpSelect] Script Date: 2018/12/13 19:11:23 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --20180322 Carl 手机号跟进查询
- --20180323 Carl 修改
- CREATE PROCEDURE [dbo].[procMobileFollowUpSelect](
- @Where VARCHAR(1000),
- @Page TINYINT
- )
- AS
- SET NOCOUNT ON
- BEGIN
- SET @Where = dbo.SafeSQLBack(@Where)
- DECLARE @SQL VARCHAR(2000)
- CREATE TABLE #T(
- TitleID INT,
- Id INT,
- Mobile VARCHAR(50),
- PaMainId INT,
- ContactDate SMALLDATETIME,
- ContactMan INT,
- AddDate SMALLDATETIME
- )
- SET @SQL=' INSERT INTO #T
- (TitleID,Id,Mobile,PaMainId,ContactDate,ContactMan,AddDate)
- SELECT TOP 4000 ROW_NUMBER() OVER (ORDER BY a.AddDate DESC) AS TitleID,a.Id,
- a.Mobile,a.PaMainId,a.ContactDate,a.ContactMan,a.AddDate FROM paMobileFollowUp a WITH(NOLOCK) '
- IF LEN(@Where)>0
- SET @SQL = @SQL + ' WHERE 1=1 '+@Where
- --PRINT @SQL
- EXEC (@SQL)
-
- SELECT COUNT(*) FROM #T WITH(NOLOCK)
- SELECT * FROM #T WITH(NOLOCK) WHERE TitleID > (@Page-1)*20 AND TitleID <= @Page*20 ORDER BY TitleID
- DROP TABLE #T
- END
- SET NOCOUNT OFF
- GO
- /****** Object: StoredProcedure [dbo].[procMsEmailPrevSendByEmialNo84Insert] Script Date: 2018/12/13 19:11:24 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --个人简历下载,浏览通知
- --创建人:Harry2015-9-21
- CREATE PROCEDURE [dbo].[procMsEmailPrevSendByEmialNo84Insert]
- AS
- SET NOCOUNT ON
- BEGIN
- --取出1天内的简历浏览信息
- SELECT b.paMainId
- INTO #T1
- FROM caCvViewLog a WITH(NOLOCK), cvmain b WITH(NOLOCK)
- WHERE a.addDate BETWEEN CONVERT(VARCHAR(10), GETDATE() - 1, 120) AND CONVERT(VARCHAR(10), GETDATE(), 120)
- AND a.cvMainId = b.id
-
- --取出1天内的简历下载信息插入到#T1
- -- INSERT INTO #T1(paMainId, Name, Email, dcProvinceId)
- INSERT INTO #T1(paMainId)
- SELECT b.paMainId
- FROM CaActiveLog a WITH(NOLOCK), CvMain b WITH(NOLOCK)
- WHERE a.addDate BETWEEN CONVERT(VARCHAR(10), GETDATE() - 1, 120) AND CONVERT(VARCHAR(10), GETDATE(), 120)
- AND b.id = a.CvMainId
- --将非重复内容插入到T2
- SELECT id PaMainId, Name, Email, dcProvinceId
- INTO #T2
- FROM paMain WITH(NOLOCK)
- WHERE ID IN(SELECT paMAinId FROM #T1 WITH(NOLOCK))
-
- ---将msEmailSend中3天内没有的数据插入到msEmailPrevSend表中
- --取出3天内发送的数据
- --将T1中删除3天内发送的数据
- DELETE FROM #T2 WHERE Email IN (SELECT Email FROM msEmailSend WITH(NOLOCK) WHERE addDate > CONVERT(VARCHAR(10), GETDATE() -3, 120))
- DELETE FROM #T2 WHERE Email LIKE '%@qq.com'
- --将T1中的数据插入到msEmailPrevSend
- INSERT INTO msEmailPrevSend(cpMainId, paMainId, EmailNo, EmailTitle, Email, dcSubsiteId, IsSend, JsonData)
- SELECT NULL, paMainId, 20, '企业关注通知', Email, dcProvinceId, 0, '"PaName":"' + Name + '"'
- FROM #T2 WITH(NOLOCK)
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcNewJobRelatedSelect] Script Date: 2018/12/13 19:11:24 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcNewJobRelatedSelect]
- (
- @dcRegionId VARCHAR(6),
- @dcJobTypeId VARCHAR(4)
- )
- AS
- SET NOCOUNT ON
- BEGIN
- SELECT TOP 13 SecondId, Name
- FROM NewJobRelated WITH(NOLOCK)
- WHERE dcRegionId = LEFT(@dcRegionId, 2)
- AND dcJobTypeId = LEFT(@dcJobTypeId, 2)
- ORDER BY RowNo
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcNewJobSnapSelect] Script Date: 2018/12/13 19:11:24 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcNewJobSnapSelect]
- (
- @dcProvinceId INT
- )
- AS
- SET NOCOUNT ON
- BEGIN
- DECLARE @PageId INT, @MaxPage INT
- SELECT @MaxPage = MaxPage FROM ShortDb..NewJobSnapIndex WHERE dcProvinceId = @dcProvinceId
- SET @PageId = RAND() * (@MaxPage - 1) + 1
- SELECT * FROM ShortDb..NewJobSnap WITH(NOLOCK)
- WHERE dcProvinceId = @dcProvinceId
- AND PageId = @PageId
- ORDER BY Seq
- END
- GO
- /****** Object: StoredProcedure [dbo].[procNewsAnalysisByProvinceIdSelect] Script Date: 2018/12/13 19:11:24 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2018.03.05
- --创建人:Carl
- --说明:获取最新的就业大数据
- --修改:harry IsDelete!=1 2018-5-23
- --#####################################################
- CREATE PROCEDURE [dbo].[procNewsAnalysisByProvinceIdSelect]
- AS
- BEGIN
- SELECT TOP 5 * FROM MainDb..NewsAnalysis WITH(NOLOCK) WHERE IsDelete!=1 ORDER BY AnnounceDate DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcNewsAnalysisSelect] Script Date: 2018/12/13 19:11:25 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2017.03.17
- --创建人:Harry
- --说明:获取就业大数据
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcNewsAnalysisSelect]
- (
- @PageNo INT
- )
- AS
- BEGIN
- SET NOCOUNT ON
- CREATE TABLE #WxNID
- (
- NID INT IDENTITY(1,1),
- ID INT
- )
- INSERT INTO #WxNID(ID) SELECT TOP (@PageNo * 8) ID
- FROM NewsAnalysis WITH(NOLOCK) WHERE newstype=1 AND ISNULL(IsDelete,0) = 0 ORDER BY announcedate DESC
- DELETE FROM #WxNID WHERE NID < (@PageNo - 1) * 8 + 1
- --总条数
- SELECT COUNT(1) FROM NewsAnalysis WITH(NOLOCK) WHERE newstype=1 AND ISNULL(IsDelete,0)=0
- --当前页
- SELECT * FROM NewsAnalysis WITH(NOLOCK) WHERE ID IN (SELECT ID FROM #WxNID) ORDER BY announcedate desc
- --当前页详情
- SELECT * FROM NewsAnalysis WITH(NOLOCK) WHERE newstype=2 and parentID IN (SELECT ID FROM #WxNID) ORDER BY announcedate desc
- DROP TABLE #WxNID
- SET NOCOUNT OFF
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcNoSendSmsInsert] Script Date: 2018/12/13 19:11:25 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcNoSendSmsInsert]
- (
- @NoSend VARCHAR(MAX)
- )
- AS
- BEGIN
- INSERT NoSendSms
- SELECT SUBSTRING(a, 2,11)
- FROM dbo.fnSplit(@NoSend,'||')
- WHERE a LIKE '%#N#%'
- AND SUBSTRING(a, 2,11) NOT IN(SELECT mobile FROM marketDb..NoSendSms)
- END
- GO
- /****** Object: StoredProcedure [dbo].[procOnlineByIDSelect] Script Date: 2018/12/13 19:11:25 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.03
- --创建人:Nick
- --说明:检查online=1
- --#####################################################
- CREATE PROCEDURE [dbo].[procOnlineByIDSelect]
- (
- @UserID INT,
- @Type INT
- )
- AS
- BEGIN TRY
- IF @Type = 0
- BEGIN
- SELECT 'x' FROM paOnline WITH(NOLOCK) WHERE IsOnline = 1 AND paMainId = @UserID
- END
- ELSE
- BEGIN
- SELECT 'x' FROM caOnline WITH(NOLOCK) WHERE IsOnline = 1 AND caMainId = @UserID
- END
- END TRY
- BEGIN CATCH
- RETURN 0
- END CATCH
- GO
- /****** Object: StoredProcedure [dbo].[procOvertimeDeptInsert] Script Date: 2018/12/13 19:11:25 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- -----------------
- --创建日期:20130725
- --创建人:Nick
- --功能说明:用于生成每月部门加班次数、签到时间、签退时间、登录后台次数、rtx登录次数、在线时间等
- -----------------
- CREATE PROCEDURE [dbo].[procOvertimeDeptInsert]
- AS
- BEGIN
- --Select CONVERT(varchar(100), GETDATE(), 112)
- DECLARE @begindate int,@enddate int
- DECLARE @deptid int,@deptname nvarchar(50),@cnt int
- DECLARE @a TABLE (manageruserid INT, cnt numeric(18,2))
- DECLARE @AttendanceCheckOut int, @AttendanceCheckIn int
- DECLARE @logindaysAfter18 numeric(18,2),@logindaysWeekend numeric(18,2)
- DECLARE @CheckMonth VARCHAR(8)
- Select @CheckMonth = SUBSTRING(CONVERT(varchar(100),GETDATE(), 112),0,7)
- SET @enddate = @CheckMonth + '25'
- SET @begindate = CONVERT(VARCHAR(8), DATEADD(MONTH, -1, CONVERT(DATETIME, @CheckMonth + '26')), 112)
- --删除当月数据
- DELETE FROM OvertimeDept WHERE YEARMONTH=@CheckMonth
- DECLARE c_manageruser CURSOR FOR
- select id,deptname from dept with(nolock) where id in (3,5,11,23,24,26,14,29,36,27,4, 28, 30, 31, 34, 19, 25, 15, 16, 22, 35)
- FOR READ ONLY
- OPEN c_manageruser
- FETCH NEXT FROM c_manageruser INTO @deptid,@deptname
- WHILE @@FETCH_STATUS = 0
- BEGIN
- Delete from @a
- insert into @a (manageruserid, cnt)
- select manageruserid,
- avg(datepart(hh,AttendanceCheckOut)*60+datepart(mi,AttendanceCheckOut)) cnt
- from overtime with(nolock)
- where WordDate >=@begindate AND WordDate<=@enddate AND AttendanceCheckOut is not null
- and (datepart(hh,AttendanceCheckOut)*100+datepart(mi,AttendanceCheckOut))>1720
- group by manageruserid
- order by cnt desc
- select @AttendanceCheckOut= dbo.DateTo(avg(cnt)) from @a a where (select deptid from manageruser with(nolock) where id=a.manageruserid)=@deptid
- or
- (select superior from dept with(nolock)
- where id=(select deptid from manageruser with(nolock) where id=a.manageruserid))=@deptid
- Delete from @a
- insert into @a (manageruserid, cnt)
- select manageruserid,
- avg(datepart(hh,AttendanceCheckIn)*60+datepart(mi,AttendanceCheckIn)) cnt
- from overtime with(nolock)
- where WordDate >=@begindate AND WordDate<=@enddate AND AttendanceCheckIn is not null
- and (datepart(hh,AttendanceCheckIn)*100+datepart(mi,AttendanceCheckIn))<900
- group by manageruserid
- order by cnt desc
- select @AttendanceCheckIn= dbo.DateTo(avg(cnt)) from @a a where (select deptid from manageruser with(nolock) where id=a.manageruserid)=@deptid
- or
- (select superior from dept with(nolock)
- where id=(select deptid from manageruser with(nolock) where id=a.manageruserid))=@deptid
- Delete from @a
- insert into @a (manageruserid, cnt)
- select manageruserid,count(1) cnt
- from overtime with(nolock)
- where WordDate >=@begindate AND WordDate<=@enddate AND logincountafter1755>0
- group by manageruserid
- order by cnt desc
- insert into @a (manageruserid, cnt)
- select distinct manageruserid,0 from overtime with(nolock)
- where manageruserid not in
- (select distinct manageruserid
- from overtime with(nolock)
- where WordDate >=@begindate AND WordDate<=@enddate AND logincountafter1755>0
- group by manageruserid)
- select @logindaysAfter18= avg(cnt) from @a a where (select deptid from manageruser with(nolock) where id=a.manageruserid)=@deptid
- or
- (select superior from dept with(nolock)
- where id=(select deptid from manageruser with(nolock) where id=a.manageruserid))=@deptid
- Delete from @a
- insert into @a (manageruserid, cnt)
- select manageruserid,count(1) cnt
- from overtime with(nolock)
- where WordDate >=@begindate AND WordDate<=@enddate AND worktype=3 and (logincountafter1755+logincountbefore1755)>0
- group by manageruserid
- order by cnt desc
- insert into @a (manageruserid, cnt)
- select distinct manageruserid,0 from overtime with(nolock)
- where manageruserid not in
- (select distinct manageruserid
- from overtime with(nolock)
- where WordDate >=@begindate AND WordDate<=@enddate AND worktype=3 and (logincountafter1755+logincountbefore1755)>0
- group by manageruserid
- )
- select @logindaysWeekend = avg(cnt) from @a a where (select deptid from manageruser with(nolock) where id=a.manageruserid)=@deptid
- or
- (select superior from dept with(nolock)
- where id=(select deptid from manageruser with(nolock) where id=a.manageruserid))=@deptid
- insert into OvertimeDept (deptid,deptname,yearmonth,checkIn,checkOut,logindaysAfter18,logindaysWeekend)
- values (@deptid,@deptname,@CheckMonth,@AttendanceCheckIn,@AttendanceCheckOut, @logindaysAfter18,@logindaysWeekend)
- FETCH NEXT FROM c_manageruser INTO @deptid,@deptname
- END
- CLOSE c_manageruser
- DEALLOCATE c_manageruser
- END
- GO
- /****** Object: StoredProcedure [dbo].[procOverTimeInsert] Script Date: 2018/12/13 19:11:26 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --[procOverTimeInsert] 201307
- -----------------
- --创建日期:20130725
- --创建人:Nick
- --功能说明:用于生成每月每人每天的加班次数、签到时间、签退时间、登录后台次数、rtx登录次数、在线时间等
- -----------------
- CREATE PROCEDURE [dbo].[procOverTimeInsert]
- AS
- BEGIN
- DECLARE @manageruserid int
- DECLARE @workdate int,@worktype tinyint,@LoginCountAfter1755 smallint
- DECLARE @LoginCountBefore1755 smallint
- DECLARE @AttendanceCheckOut datetime, @AttendanceCheckIn datetime
- DECLARE @CheckMonthDay VARCHAR(8)
- Select @CheckMonthDay = CONVERT(varchar(100), dateadd(day,-3,GETDATE()), 112)
- --SET @enddate = @CheckMonth + '25'
- --SET @begindate = CONVERT(VARCHAR(8), DATEADD(MONTH, -1, CONVERT(DATETIME, @CheckMonth + '26')), 112)
- --删除当天数据
- DELETE FROM overtime WHERE WordDate =@CheckMonthDay
- DECLARE c_manageruser CURSOR FOR
- SELECT id FROM manageruser with(nolock) where status<=2 and id<>146
- FOR READ ONLY
- OPEN c_manageruser
- FETCH NEXT FROM c_manageruser INTO @manageruserid
- WHILE @@FETCH_STATUS = 0
- BEGIN
- DECLARE c_WorkDate CURSOR FOR
- select workdate,type from workdate with(nolock)
- where workdate = @CheckMonthDay
- order by workdate OPEN c_WorkDate
- FETCH NEXT FROM c_WorkDate INTO @workdate,@worktype
- WHILE @@FETCH_STATUS = 0
- BEGIN
- --1755之后 登录次数
- select @LoginCountAfter1755=count(1) from managerlog with(nolock)
- where managerid=@manageruserid
- and year(logindate)*10000+month(logindate)*100+day(logindate)= @workdate
- and datepart(hh,logindate)*100+datepart(mi,logindate)>1755
- --1755之前 登录次数
- select @LoginCountBefore1755=count(1) from managerlog with(nolock)
- where managerid=@manageruserid
- and year(logindate)*10000+month(logindate)*100+day(logindate)= @workdate
- and datepart(hh,logindate)*100+datepart(mi,logindate)<=1755
- set @AttendanceCheckOut=null
- set @AttendanceCheckIn=null
- select @AttendanceCheckOut=checkout, @AttendanceCheckin=checkin from OaDB..Attendance with(nolock)
- where manageruserid=@manageruserid and attendancedate=@workdate
- insert into overtime (ManagerUserid,WordDate,LoginCountAfter1755,LoginCountBefore1755,RTXonlineAfter1755,RTXonlineBeforer1755,AttendanceCheckOut,AttendanceCheckIn,WorkType) values
- (@manageruserid,@workdate,@LoginCountAfter1755,@LoginCountBefore1755,null,null,@AttendanceCheckOut,@AttendanceCheckIn,@worktype)
- FETCH NEXT FROM c_WorkDate INTO @workdate,@worktype
- END
- CLOSE c_WorkDate
- DEALLOCATE c_WorkDate
- FETCH NEXT FROM c_manageruser INTO @manageruserid
- END
- CLOSE c_manageruser
- DEALLOCATE c_manageruser
- END
- GO
- /****** Object: StoredProcedure [dbo].[procOverTimeInsertBAK] Script Date: 2018/12/13 19:11:26 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --[procOverTimeInsert] 201307
- -----------------
- --创建日期:20130725
- --创建人:Nick
- --功能说明:用于生成每月每人每天的加班次数、签到时间、签退时间、登录后台次数、rtx登录次数、在线时间等
- -----------------
- CREATE PROCEDURE [dbo].[procOverTimeInsertBAK]
- (
- @CheckMonth VARCHAR(6)
- )
- AS
- BEGIN
- DECLARE @manageruserid int
- DECLARE @workdate int,@worktype tinyint,@LoginCountAfter1755 smallint,@begindate int,@enddate int
- DECLARE @LoginCountBefore1755 smallint
- DECLARE @AttendanceCheckOut datetime, @AttendanceCheckIn datetime
- SET @enddate = @CheckMonth + '25'
- SET @begindate = CONVERT(VARCHAR(8), DATEADD(MONTH, -1, CONVERT(DATETIME, @CheckMonth + '26')), 112)
- --删除当月数据
- DELETE FROM overtime WHERE WordDate >=@begindate AND WordDate<=@enddate
- DECLARE c_manageruser CURSOR FOR
- SELECT id FROM manageruser with(nolock) where status<=2 and id<>146
- FOR READ ONLY
- OPEN c_manageruser
- FETCH NEXT FROM c_manageruser INTO @manageruserid
- WHILE @@FETCH_STATUS = 0
- BEGIN
- DECLARE c_WorkDate CURSOR FOR
- select workdate,type from workdate with(nolock)
- where workdate>=@begindate and workdate<=@enddate
- order by workdate OPEN c_WorkDate
- FETCH NEXT FROM c_WorkDate INTO @workdate,@worktype
- WHILE @@FETCH_STATUS = 0
- BEGIN
- --1755之后 登录次数
- select @LoginCountAfter1755=count(1) from managerlog with(nolock)
- where managerid=@manageruserid
- and year(logindate)*10000+month(logindate)*100+day(logindate)= @workdate
- and datepart(hh,logindate)*100+datepart(mi,logindate)>1755
- --1755之前 登录次数
- select @LoginCountBefore1755=count(1) from managerlog with(nolock)
- where managerid=@manageruserid
- and year(logindate)*10000+month(logindate)*100+day(logindate)= @workdate
- and datepart(hh,logindate)*100+datepart(mi,logindate)<=1755
- set @AttendanceCheckOut=null
- set @AttendanceCheckIn=null
- select @AttendanceCheckOut=checkout, @AttendanceCheckin=checkin from OaDB..Attendance with(nolock)
- where manageruserid=@manageruserid and attendancedate=@workdate
- insert into overtime (ManagerUserid,WordDate,LoginCountAfter1755,LoginCountBefore1755,RTXonlineAfter1755,RTXonlineBeforer1755,AttendanceCheckOut,AttendanceCheckIn,WorkType) values
- (@manageruserid,@workdate,@LoginCountAfter1755,@LoginCountBefore1755,null,null,@AttendanceCheckOut,@AttendanceCheckIn,@worktype)
- FETCH NEXT FROM c_WorkDate INTO @workdate,@worktype
- END
- CLOSE c_WorkDate
- DEALLOCATE c_WorkDate
- FETCH NEXT FROM c_manageruser INTO @manageruserid
- END
- CLOSE c_manageruser
- DEALLOCATE c_manageruser
- END
- GO
- /****** Object: StoredProcedure [dbo].[procPaAttentionByIDSelect] Script Date: 2018/12/13 19:11:26 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --是否关注 Nick 20151120
- CREATE PROCEDURE [dbo].[procPaAttentionByIDSelect]
- (
- @ID INT,
- @AttentionType SMALLINT
- )
- AS
- return
- BEGIN
- SELECT TOP 1 ID FROM PaAttention WITH(NOLOCK) WHERE AttentionID = @ID AND @AttentionType = AttentionType
- END
- GO
- /****** Object: StoredProcedure [dbo].[procPaAttentionByPaMainIDSelect] Script Date: 2018/12/13 19:11:26 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --是否关注 Nick 20151120
- CREATE PROCEDURE [dbo].[procPaAttentionByPaMainIDSelect]
- (
- @ID INT,
- @AttentionType SMALLINT,
- @PaMainID INT
- )
- AS
- BEGIN
- SELECT ID FROM PaAttention WITH(NOLOCK INDEX(IX_paAttention_Complex))
- WHERE AttentionID = @ID
- AND PaMainID = @PaMainID
- AND @AttentionType = AttentionType
- END
- GO
- /****** Object: StoredProcedure [dbo].[procpaCvAlipayRelationInsert] Script Date: 2018/12/13 19:11:26 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --支付宝简历ID对应
- CREATE PROCEDURE [dbo].[procpaCvAlipayRelationInsert]
- (
- @cvMainID int,
- @alipayResumeID varchar(32)
- )
- AS
- BEGIN
- INSERT INTO paCvAlipayRelation(cvMainID,alipayResumeID,AddDate) VALUES(@cvMainID,@alipayResumeID,GETDATE());
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcPageBaiduIncludeSelect] Script Date: 2018/12/13 19:11:27 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --sean 2014-8-13
- CREATE PROCEDURE [dbo].[ProcPageBaiduIncludeSelect]
- AS
- BEGIN
- --SELECT TOP 100 *
- --FROM PageBaiduInclude
- --ORDER BY ISNULL(CheckDate, '2000-1-1'), PageID --IncludeDate
- SELECT TOP 100 *
- INTO #t
- FROM PageBaiduInclude
- ORDER BY ISNULL(CheckDate, '2000-1-1'), PageID --IncludeDate
- UPDATE a
- SET a.CheckDate = GETDATE()-200
- FROM PageBaiduInclude a, #t b
- WHERE a.PageId = b.PageId
- SELECT * FROM #t ORDER BY PageID
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcPaGetPasswordLogByUniqueIDSelect] Script Date: 2018/12/13 19:11:27 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.4
- --创建人:John
- --说明:获取取回密码记录
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcPaGetPasswordLogByUniqueIDSelect]
- (
- @UniqueType INT,
- @UniqueId VARCHAR(40)
- )
- AS
- BEGIN
- IF @UniqueType = 1
- BEGIN
- SELECT * FROM paGetPasswordLog WITH(NOLOCK) WHERE UniqueID = @UniqueId AND AddDate > DATEADD(MINUTE, -60, GETDATE()) AND IsReset IS NULL
- END
- ELSE
- BEGIN
- SELECT * FROM paGetPasswordLog WITH(NOLOCK) WHERE askno = @UniqueId AND AddDate > DATEADD(MINUTE, -60, GETDATE()) AND IsReset IS NULL
- END
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcPaGetPasswordLogIsResetUpdate] Script Date: 2018/12/13 19:11:27 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.4
- --创建人:John
- --说明:修改取回密碼的状态 重置密码成功后就修改一下状态(IsReset)
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcPaGetPasswordLogIsResetUpdate]
- (
- @UniqueId VARCHAR(40)
- )
- AS
- BEGIN
- UPDATE paGetPasswordLog SET IsReset=1
- WHERE AskNo = ( SELECT TOP 1 AskNo FROM paGetPasswordLog WITH(NOLOCK) WHERE UniqueID = @UniqueId )
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcPaGUIDByRoomIDCvIDSelect] Script Date: 2018/12/13 19:11:27 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.29
- --创建人:John
- --说明:根据面试室编号和简历编号获取面试室的GUID
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcPaGUIDByRoomIDCvIDSelect]
- (
- @viRoomID INT,
- @cvMainID INT
- )
- AS
- BEGIN
- SELECT TOP 1 GUID FROM ViInterviewRecord WHERE viRoomId = @viRoomID AND cvMainID = @cvMainID ORDER BY id DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[procPaJobClickLogInsert] Script Date: 2018/12/13 19:11:27 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.03
- --创建人:Nick
- --说明:保存职位联系方式查看记录
- --#####################################################
- CREATE PROCEDURE [dbo].[procPaJobClickLogInsert]
- (
- @paMainID INT,
- @JobID INT,
- @IP VARCHAR(15)
- )
- AS
- SET NOCOUNT ON
- BEGIN
- IF @paMainID = 0
- SET @paMainID = NULL
- IF NOT EXISTS(SELECT 'x' FROM MainDb..paJobClickLog WITH(NOLOCK) WHERE JobId = @JobId AND Ip = @ip AND AddDate > DATEADD(Second, -5, GETDATE()))
- INSERT INTO MainDb..paJobClickLog(JobId, paMainId, Ip, AddDate)
- VALUES(@JobID, @paMainID, @Ip, GETDATE())
- RETURN 1
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcPaJobCompareByPaMainIDInsert] Script Date: 2018/12/13 19:11:28 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcPaJobCompareByPaMainIDInsert]
- (
- @PaMainID INT
- )
- AS
- SET NOCOUNT ON
- BEGIN
- --今天推荐过了就不推荐了
- IF EXISTS(SELECT 'x' FROM PaJobCompare WITH(NOLOCK) WHERE PaMainID = @PaMainID AND AddDate > CONVERT(CHAR(10), GETDATE(), 120))
- RETURN
-
- CREATE TABLE #T(
- JobID INT,
- SimilarJobID INT,
- JobCount INT,
- Pecentage FLOAT,
- SimilarCount INT,
- Source VARCHAR(15)
- )
- DECLARE @BatchNo SMALLINT, @LastRecommenedNo TINYINT, @JobID INT, @JobCount INT, @PushCount INT, @Top INT
-
- SELECT @BatchNo = ISNULL(MAX(BatchNo), 0), @LastRecommenedNo = ISNULL(MIN(LastRecommenedNo), 6), @Top = 0
- FROM PaJobCompare WITH(NOLOCK)
- WHERE PaMainID = @PaMainID
-
- --如果最后一次登录时间为昨天那么剩余推送次数设置为6次
- IF (SELECT LastLoginDate FROM PaMain WITH(NOLOCK) WHERE ID = @PaMainID) > CONVERT(CHAR(10), GETDATE() - 1, 120)
- BEGIN
- SELECT @LastRecommenedNo = 6
- END
- IF ISNULL(@LastRecommenedNo, 0) = 0
- SET @LastRecommenedNo = 6
- SELECT jobID, COUNT(1) cnt
- INTO #TJobSimilar
- FROM exJobApplyMonthTemp WITH(NOLOCK)
- WHERE JobID IN(
- SELECT JobID
- FROM exJobApplyMonthTemp
- WHERE CvMainID IN (
- SELECT ID
- FROM CvMain WITH(NOLOCK)
- WHERE PaMainID = @PaMainID
- )
- )
- GROUP BY jobID
- HAVING COUNT(1) > 1
-
- WHILE EXISTS(SELECT jobID FROM #TJobSimilar)
- BEGIN
- SELECT TOP 1 @JobID = jobID, @JobCount = cnt
- FROM #TJobSimilar
-
- INSERT INTO #T (JobID, SimilarJobID, JobCount, Pecentage, SimilarCount)
- SELECT @JobID, JobID, @JobCount, CAST(COUNT(1) AS FLOAT)*100/@JobCount, COUNT(1)
- FROM exJobApplyMonthTemp
- WHERE cvmainid IN(
- SELECT cvMainID
- FROM exJobApplyMonthTemp
- WHERE jobid = @JobID)
- AND jobid <> @JobID
- AND EXISTS( --职位必须有效且没被删除
- SELECT 'X'
- FROM Job WITH(NOLOCK)
- WHERE id = exJobApplyMonthTemp.JobID
- AND Valid = 1
- AND IsDelete = 0
- AND IssueEnd > GETDATE())
- AND NOT EXISTS(--已经申请过的不再推荐
- SELECT 'X'
- FROM exJobApply WITH(NOLOCK)
- WHERE CvMainID IN (
- SELECT ID
- FROM CvMain WITH(NOLOCK)
- WHERE PaMainID = @PaMainID
- )
- AND JobID = exJobApplyMonthTemp.JobID
- )
- GROUP BY JobID
- HAVING COUNT(1) > 1
- ORDER BY COUNT(1) desc
-
- DELETE FROM #TJobSimilar WHERE jobID = @JobID
- END
- UPDATE #t SET Source = 'J' + LTRIM(STR(JobId))
- DROP TABLE #TJobSimilar
-
- INSERT INTO #T (SimilarJobID, JobCount)
- SELECT TOP 10 JobID, COUNT(1)
- FROM exJobApplyMonthTemp
- WHERE cvMainID IN(
- SELECT TOP 10 CvMainID
- FROM exJobApplyMonthTemp
- WHERE JobID IN(
- SELECT JobID
- FROM exJobApplyMonthTemp
- WHERE CvMainID IN (
- SELECT ID
- FROM CvMain WITH(NOLOCK)
- WHERE PaMainID = @PaMainID
- )
- )
- AND NOT EXISTS(SELECT 'x' FROM CvMain WHERE PaMainID = @PaMainID AND id = exJobApplyMonthTemp.cvMainID)
- GROUP BY CvMainID
- ORDER BY COUNT(1) DESC
- )
- AND NOT EXISTS(SELECT 'x' FROM CvMain WHERE PaMainID = @PaMainID AND id = exJobApplyMonthTemp.cvMainID)
- AND EXISTS( --职位必须有效且没被删除
- SELECT 'X'
- FROM Job WITH(NOLOCK)
- WHERE id = exJobApplyMonthTemp.JobID
- AND Valid = 1
- AND IsDelete = 0
- AND IssueEnd > GETDATE())
- AND NOT EXISTS(--已经申请过的不再推荐
- SELECT 'X'
- FROM exJobApply WITH(NOLOCK)
- WHERE CvMainID IN (
- SELECT ID
- FROM CvMain WITH(NOLOCK)
- WHERE PaMainID = @PaMainID
- )
- AND JobID = exJobApplyMonthTemp.JobID
- )
- GROUP BY JobID
- HAVING COUNT(1) > 1
- ORDER BY COUNT(1) desc
- UPDATE #t SET Source = 'from cvMain' WHERE Source IS NULL
- DECLARE @t AS TABLE(Id INT IDENTITY(1,1 ), SimilarJobID INT, Source VARCHAR(15))
- INSERT INTO @t(SimilarJobID)
- SELECT SimilarJobID
- FROM #T
- GROUP BY SimilarJobID
- ORDER BY COUNT(1) DESC
- UPDATE a SET a.Source = (SELECT TOP 1 Source FROM #t WHERE a.SimilarJobID = #t.SimilarJobID ORDER BY Source DESC)
- FROM @t a
- DELETE FROM @t WHERE SimilarJobID IN(SELECT a.SimilarJobID FROM @t a, Job b, cpMain c WHERE a.SimilarJobID = b.ID AND b.cpMainID = c.ID AND c.Name LIKE '%保险%')
-
- IF @BatchNo = 0
- BEGIN
- INSERT INTO PaJobCompare(BatchNo, PaMainID, CompareJobID, LastRecommenedNo, Source)
- SELECT TOP 10 @BatchNo + 1, @PaMainID, SimilarJobID, 5, Source
- FROM @t
- ORDER BY Id
-
- SELECT @PushCount = COUNT(1)
- FROM PaJobCompare WITH(NOLOCK)
- WHERE PaMainID = @PaMainID
- AND BatchNO = @BatchNo + 1
- AND LastRecommenedNo = 5
-
- IF @PushCount < 10
- SET @Top = 10 - @PushCount
- END
- ELSE
- BEGIN
- INSERT INTO PaJobCompare(BatchNo, PaMainID, CompareJobID, LastRecommenedNo, Source)
- SELECT TOP 5 @BatchNo + 1, @PaMainID, SimilarJobID, @LastRecommenedNo-1, Source
- FROM @T a
- WHERE NOT EXISTS( --推荐过的就不再推荐了
- SELECT 'X'
- FROM PaJobCompare WITH(NOLOCK)
- WHERE PaMainID = @PaMainID
- AND CompareJobID = a.SimilarJobID
- )
- ORDER BY Id
- --推荐不足10个 从原你的菜儿继续推荐
- SELECT @PushCount = COUNT(1)
- FROM PaJobCompare WITH(NOLOCK)
- WHERE PaMainID = @PaMainID
- AND BatchNO = @BatchNo + 1
- AND LastRecommenedNo = @LastRecommenedNo-1
-
- IF @PushCount < 5
- SET @Top = 10 - @PushCount
- END
- IF @Top > 0
- BEGIN
- DECLARE @Job AS TABLE(
- Id INT,
- cpMainId INT,
- dcRegionId VARCHAR(6),
- dcJobTypeId VARCHAR(4),
- dcSalaryId INT,
- EmployType INT,
- dcEducationId INT,
- MinExperience INT,
- MinAge INT,
- MaxAge INT,
- AgeScore INT,
- EduScore INT,
- ExpScore INt,
- SizeScore INT
- )
- DECLARE @JobPlace AS TABLE(Id INT IDENTITY(1, 1), dcRegionId VARCHAR(6))
- DECLARE @JobType AS TABLE(Id INT IDENTITY(1, 1), dcJobTypeId VARCHAR(4))
- DECLARE @t1 AS TABLE(dcRegionId VARCHAR(6))
- DECLARE @t2 AS TABLE(dcJobTypeId VARCHAR(4))
- DECLARE @CvMainID INT, @dcSalaryId INT, @EmployType INT, @Degree INT, @Exp INT, @Age INT, @ThisMonth INT
- SET @ThisMonth = CONVERT(VARCHAR(6), GETDATE(), 112)
- SELECT TOP 1 @cvMainId = b.Id, @Age = (@ThisMonth - a.BirthDay) / 100,
- @dcSalaryId = dcSalaryID, @EmployType = EmployType,
- @Degree = Degree, @Exp = RelatedWorkYears
- FROM paMain a WITH(NOLOCK), cvMain b WITH(NOLOCK)
- WHERE a.Id = b.paMainId
- AND a.Id = @paMainId
-
- INSERT INTO @JobPlace(dcRegionId)
- SELECT dcRegionId FROM cvJobPlace WITH(NOLOCK)
- WHERE cvMainId = @cvMainId
- INSERT INTO @JobType(dcJobTypeId)
- SELECT dcJobTypeId FROM cvJobType WITH(NOLOCK)
- WHERE cvMainId = @cvMainId
- DELETE a FROM @JobPlace a, @JobPlace b WHERE a.id <> b.Id AND a.dcRegionID <> b.dcRegionId AND b.dcRegionId LIKE a.dcRegionId + '%'
- DELETE a FROM @JobType a, @JobType b WHERE a.id <> b.Id AND a.dcJobTypeId <> b.dcJobTypeId AND b.dcJobTypeId LIKE a.dcJobTypeId + '%'
- INSERT INTO @t2
- SELECT Id FROM dcJobType WHERE ID IN(SELECT dcJobTypeId FROM @JobType) OR ParentID IN(SELECT dcJobTypeId FROM @JobType)
- INSERT INTO @t1 SELECT Id FROM dcRegion WHERE ID IN(SELECT dcRegionId FROM @JobPlace)
- INSERT INTO @t1 SELECT Id FROM dcRegion WHERE LEFT(ID, 4) IN(SELECT dcRegionId FROM @JobPlace)
- INSERT INTO @t1 SELECT Id FROM dcRegion WHERE LEFT(ID, 2) IN(SELECT dcRegionId FROM @JobPlace)
- --===========================================
- INSERT INTO @Job(Id, cpMainId, dcRegionId, dcJobTypeId, dcSalaryId, EmployType, dcEducationId, MinExperience, MinAge, MaxAge)
- SELECT TOP 200 Id, cpMainId, dcRegionId, dcJobTypeId, dcSalaryId, EmployType, dcEducationId, MinExperience, MinAge, MaxAge
- FROM jobPublish WITH(NOLOCK)
- WHERE EmployType = @EmployType
- AND dcRegionID IN(SELECT dcRegionId FROM @t1)
- AND dcJobTypeId IN(SELECT dcJobTypeId FROM @t2)
- AND dcSalaryId IN(100, @dcSalaryId)
- AND EXISTS(SELECT 'x' FROM cpMainPublish WITH(NOLOCK) WHERE LastLoginDate > GETDATE() - 31 AND cpMainPublish.Id = cpMainId)
- ORDER BY RefreshDate DESC
- DELETE @Job WHERE Id IN(SELECT CompareJobId FROM paJobCompare WITH(NOLOCK) WHERE paMainId = @pamainId)
- DELETE @Job WHERE Id IN(SELECT JobId FROM paYourFood WITH(NOLOCK) WHERE paMainId = @pamainId)
- DELETE @Job WHERE Id IN(SELECT JobId FROM ExJobApply WITH(NOLOCK) WHERE cvMainID IN(SELECT ID FROM cvMain WITH(NOLOCK) WHERE paMainId = @pamainId))
- IF(SELECT COUNT(*) FROM @Job) > 3
- BEGIN
- UPDATE a SET a.SizeScore = b.dcCompanySizeId * -1, EduScore = 0, AgeScore = 0, ExpScore = 0 FROM @Job a, cpMainPublish b WHERE a.cpMainId = b.ID
- UPDATE @Job SET EduScore = dcEducationId - @Degree WHERE dcEducationId > @Degree AND dcEducationId < 100
- UPDATE @Job SET EduScore = @Degree - dcEducationId WHERE dcEducationId < @Degree AND dcEducationId < 100
- UPDATE @Job SET MinAge = 16 WHERE MinAge = 99
- UPDATE @Job SET MaxAge = 60 WHERE MaxAge = 99
- UPDATE @Job SET AgeScore = (MinAge - @Age) / 5 + 1 WHERE MinAge > @Age
- UPDATE @Job SET AgeScore = (@Age - MaxAge) / 5 + 1 WHERE MaxAge < @Age
- IF @Exp = 0
- SET @Exp = 1
- ELSE IF @Exp IN(1, 2)
- SET @Exp = 2
- ELSE IF @Exp IN(3,4,5)
- SET @Exp = 3
- ELSE IF @Exp IN(6,7,8,9,10)
- SET @Exp = 4
- ELSE IF @Exp > 10
- SET @Exp = 5
- ELSE
- SET @Exp = 0
- UPDATE @Job SET MinExperience = CASE WHEN MinExperience = 5 THEN 1 ELSE MinExperience + 1 END WHERE MinExperience > 0
- UPDATE @Job SET ExpScore = MinExperience - @Exp WHERE MinExperience > @Exp
- UPDATE @Job SET ExpScore = @Exp - MinExperience WHERE MinExperience < @Exp AND MinExperience > 0
- END
- ---SELECT TOP 3 'aaaaa' abc, Id, @paMainId, @cvMainId, id, GETDATE() FROM @Job ORDER BY EduScore, ExpScore + SizeScore + AgeScore
- INSERT INTO PaJobCompare(BatchNo, PaMainID, CompareJobID, LastRecommenedNo, Source)
- SELECT TOP (@Top) @BatchNo + 1, @PaMainID, Id, 5, 'Expect'
- FROM @Job ORDER BY EduScore, ExpScore + SizeScore + AgeScore
- END
- DROP TABLE #T
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcPaJobCompareInsert] Script Date: 2018/12/13 19:11:28 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --/****** 对象: StoredProcedure [dbo].[ProcPaJobCompareInsert] 脚本日期: 09/13/2016 15:26:30 ******/
- --SET ANSI_NULLS ON
- --GO
- --SET QUOTED_IDENTIFIER ON
- --GO
- CREATE PROCEDURE [dbo].[ProcPaJobCompareInsert]
- AS
- SET NOCOUNT ON
- IF DATEPART(HOUR, GETDATE()) > 17
- RETURN
- BEGIN
- DECLARE @crDate DATETIME
- SELECT @CrDate = Value FROM dcRunParameter WHERE Name = 'exJobApplyMonthTemp create'
- IF @CrDate IS NULL
- BEGIN
- INSERT INTO dcRunParameter SELECT 'exJobApplyMonthTemp create', '', GETDATE() - 1, 1
- SELECT @CrDate = Value FROM dcRunParameter WHERE Name = 'exJobApplyMonthTemp create'
- END
- IF DATEDIFF(MINUTE, @CrDate, GETDATE()) > 480 OR (SELECT COUNT(*) FROM exJobApplyMonthTemp) < 10000
- BEGIN
- TRUNCATE TABLE exJobApplyMonthTemp
- --90天内的数据为样本
- INSERT INTO exJobApplyMonthTemp (JobId, CvMainID)
- SELECT jobID, CvMainID
- FROM exjobapply WITH(NOLOCK)
- WHERE addDate > GETDATE() - 30
- AND JobId > 0
- --排除海投
- DELETE FROM exJobApplyMonthTemp
- WHERE CvMainID IN(
- SELECT CvMainID
- FROM exJobApplyMonthTemp
- GROUP BY CvMainID
- HAVING COUNT(1) > 41 --if 30 then 26 if 90 then 41
- )
- UPDATE dcRunParameter SET Value = GETDATE() WHERE Name = 'exJobApplyMonthTemp create'
- END
- CREATE TABLE #TNP(paMainId INT) --Table Need Push
- --一天之内登录过的 也推送
- INSERT INTO #TNP
- SELECT Id
- FROM PaMain WITH(NOLOCK)
- WHERE LastLoginDate > CONVERT(VARCHAR(10), GETDATE() - 1, 120) --一天之内登录的
- AND IsUseYourFood = 1
- --1天之前10天之后登陆的,也要推送
- INSERT INTO #TNP
- SELECT Id
- FROM paMain WITH(NOLOCK)
- WHERE LastLoginDate < GETDATE() - 1 --一天之前登录的
- AND LastLoginDate >= CONVERT(VARCHAR(10), GETDATE() - 10 , 120) --10天之内登录的
- AND NOT EXISTS(SELECT 'x' FROM #TNP WHERE PaMainID = PaMain.ID) --确定推送的就不再添加
- AND Id % 2 = DATEPART(DAY, GETDATE()) % 2
- AND IsUseYourFood = 1
- DELETE FROM #TNP WHERE paMainId IN(SELECT DISTINCT paMainId FROM PaJobCompare WITH(NOLOCK) WHERE AddDate > CONVERT(VARCHAR(10), GETDATE() , 120))
- SELECT * INTO #0 FROM #TNP
- DELETE a FROM #0 a, cvMain b WHERE a.paMainId = b.paMainId AND b.Degree > 0 AND b.EmployType > 0 AND RelatedWorkYears > -1
- DELETE #0 WHERE paMainId IN(SELECT paMainId FROM cvMain WHERE Id iN(SELECT cvMainId FROM ExJobApply WHERE AddDate > GETDATE() - 1))
- DELETE #TNP WHERE paMainId IN(SELECT paMainId FROM #0)
- IF EXISTS(SELECT 'x' FROM paJobCompareIndex WHERE AddDate < CONVERT(VARCHAR(10), GETDATE(), 120))
- TRUNCATE TABLE paJobCompareIndex
- DELETE #TNP WHERE paMainId IN(SELECT paMainId FROM paJobCompareIndex)
- INSERT INTO paJobCompareIndex(paMainId)
- SELECT paMainId FROM #Tnp
- DROP TABLE #TNP
- DROP TABLE #0
- DECLARE @PaMainID INT, @SQL AS VARCHAR(100)
- WHILE EXISTS(SELECT 'x' FROM paJobCompareIndex WITH(NOLOCK) WHERE RunDate IS NULL)
- BEGIN
- SELECT TOP 1 @PaMainID = PaMainID FROM paJobCompareIndex WITH(NOLOCK) WHERE RunStatus = 0 AND RunDate IS NULL ORDER BY ID
- SET @SQL = 'EXEC ProcPaJobCompareByPaMainIDInsert ' + LTRIM(STR(@PaMainID))
- --PRINT @SQL
- BEGIN TRY
- EXEC(@SQL)
- UPDATE paJobCompareIndex SET RunDate = GETDATE(), RunStatus = 1 WHERE paMainId = @paMainId
- END TRY
- BEGIN CATCH
- UPDATE paJobCompareIndex SET RunDate = GETDATE(), RunStatus = 101 WHERE paMainId = @paMainId
- END CATCH
- IF DATEPART(MINUTE, GETDATE()) BETWEEN 28 AND 31
- BEGIN
- UPDATE dcRunParameter SET Value = GETDATE() WHERE Name = 'exJobApplyMonthTemp create'
- RETURN
- END
- END
- END
- GO
- /****** Object: StoredProcedure [dbo].[procPaLoginContactByOpenIDDelete] Script Date: 2018/12/13 19:11:28 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.10
- --创建人:Nick
- --说明:删除绑定信息
- --#####################################################
- CREATE PROCEDURE [dbo].[procPaLoginContactByOpenIDDelete]
- (
- @OpenID VARCHAR(100)
- )
- AS
- BEGIN
- DELETE FROM PaLoginContact where OpenID =@OpenID AND ContactType=4
- END
- GO
- /****** Object: StoredProcedure [dbo].[procpaLoginContactByOpenIDSelect] Script Date: 2018/12/13 19:11:29 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.10
- --创建人:Nick
- --说明:判断是否已绑定为信息账号
- --#####################################################
- CREATE PROCEDURE [dbo].[procpaLoginContactByOpenIDSelect]
- (
- @OpenID VARCHAR(100)
- )
- AS
- BEGIN
- SELECT * FROM paLoginContact WITH(NOLOCK) WHERE openid = @OpenID AND ContactType = 4
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcPaLoginContactInsert] Script Date: 2018/12/13 19:11:29 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.4
- --创建人:John
- --说明:增加第三方登录的记录
- --修改:2016-7-12日 来自微信的注册将RegisterFrom = 5 同时修改wxfans表中pamainID字段 Peter
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcPaLoginContactInsert]
- (
- @paMainID INT,
- @OpenID VARCHAR(100),
- @ContactType TINYINT,
- @LoginType TINYINT
- )
- AS
- BEGIN
- IF @paMainID = 0
- RETURN
- IF @paMainID < 0
- SET @paMainId = @PaMainId * - 1
- DELETE FROM paLoginContact WHERE Openid=@OpenID AND ContactType = @ContactType
- INSERT INTO paLoginContact(paMainID,Openid,ContactType,LoginType,AddDate) VALUES(@paMainID,@OpenID,@ContactType,@LoginType,GETDATE())
-
- IF @ContactType = 4
- BEGIN
- --IF @LoginType = 2
- --UPDATE PaMain SET RegisterFrom = 5 WHERE ID = @PaMainID
- UPDATE wxfans SET PaMainID = @PaMainID WHERE OpenID = @OpenID
- END
- END
- GO
- /****** Object: StoredProcedure [dbo].[procPaloginlogByFirstLoginInsert] Script Date: 2018/12/13 19:11:29 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[procPaloginlogByFirstLoginInsert]
- (
- @PaMainID INT,
- @IP VARCHAR(31),
- @Browser VARCHAR(500),
- @LoginFrom TINYINT
- )
- AS
- SET NOCOUNT ON
- IF @PaMainID = 0
- RETURN
- BEGIN
- IF NOT EXISTS(SELECT 'x' FROM PaLoginLog WITH(NOLOCK) WHERE LoginFrom = @LoginFrom AND PaMainID = @PaMainID AND AddDate > CONVERT(NVARCHAR, GETDATE(), 111))
- BEGIN
- UPDATE PaMain
- SET LastLoginDate = GETDATE()
- WHERE ID = @PaMainID
-
- IF @@ROWCOUNT > 0
- INSERT INTO PaLoginLog(paMainID,LoginIP,AddDate,Browser,LoginFrom)
- VALUES(@PaMainID,@IP,GETDATE(),@Browser,@LoginFrom)
- END
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcPaLoginLogByWeiXinInsert] Script Date: 2018/12/13 19:11:30 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcPaLoginLogByWeiXinInsert]
- (
- @FromUserName VARCHAR(100)
- )
- AS
- RETURN
- SET NOCOUNT ON
- BEGIN
- DECLARE @paMainId INT
- SELECT @paMainId = paMainId FROM wxFans WITH(NOLOCK) WHERE OpenId = @FromUserName
- IF @paMainId IS NULL
- BEGIN
- SELECT @paMainId = paMainId FROM palogincontact WITH(NOLOCK) WHERE OpenId = @FromUserName AND ContactType = 4
- IF @paMainId IS NULL
- RETURN
- END
- DECLARE @Ip VARCHAR(31), @AddDate SMALLDATETIME
- SELECT TOP 1 @AddDate = AddDate, @ip = LoginIp FROM paLoginLog WITH(NOLOCK) WHERE paMainId = @paMainId ORDER BY Id DESC
- IF @Ip IS NULL
- BEGIN
- INSERT INTO paLoginLog
- SELECT @paMainId, '----', GETDATE(), 'weixin', 1
- RETURN
- END
- IF @AddDate < DATEADD(HOUR, -10, GETDATE())
- BEGIN
- IF EXISTS(SELECT 'x' FROM paMain WITH(NOLOCK) WHERE id = @paMainId)
- INSERT INTO paLoginLog SELECT @paMainId, @ip, GETDATE(), 'weixin', 1
- --UPDATE paMaIn SET LastLoginDate = GETDATE() WHERE Id = @paMainId
- END
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcPaMainByCvMainIDSelect] Script Date: 2018/12/13 19:11:30 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.4
- --创建人:John
- --说明:根据cvmianid获取pamain基本信息
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcPaMainByCvMainIDSelect]
- (
- @cvMainID INT
- )
- AS
- BEGIN
- SELECT a.id,a.mobile,a.name
- FROM pamain a,cvmain b
- WHERE b.pamainid = a.id AND b.id = @cvMainID
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcPaMainByRegisterFromUpdate] Script Date: 2018/12/13 19:11:30 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcPaMainByRegisterFromUpdate]
- AS
- SET NOCOUNT ON
- BEGIN
- UPDATE paMain SET RegisterMode = 12
- WHERE Id IN(SELECT paMainId FROM MarketDb..RmInvitationCode WITH(NOLOCK) WHERE AddDate > GETDATE() - 5)
- AND RegisterMode = 0
- AND AddDate > GETDATE() - 0.3
- UPDATE paMain SET RegisterMode = 13
- WHERE Id IN(SELECT paMainId FROM MarketDb..cvImportPrev WITH(NOLOCK) WHERE EntryDate > GETDATE() - 5)
- AND RegisterMode = 0
- AND AddDate > GETDATE() - 0.3
- UPDATE a
- SET RegisterMode = 14
- FROM paMain a, bsMobileSpread b
- WHERE a.Mobile = b.MobileNo
- AND a.RegisterMode = 0
- AND a.AddDate BETWEEN DATEADD(MINUTE, -100, b.ReturnDate) AND b.ReturnDate
- AND b.ReturnDate > GETDATE() - 5
- UPDATE cvMain SET IsCvHidden = 1
- WHERE paMainId IN(SELECT paMainId FROM MarketDb..cvImportPrev WHERE contactresult=7 and paMainId>0 AND ContactDate > GETDATE() - 2)
- AND IsCvHidden = 0
- --Lucifer添加 市场部认证简历
- SET QUOTED_IDENTIFIER ON
- UPDATE paMain SET RegisterType = 151
- WHERE Id IN(SELECT paMainId FROM MarketDb..ptCvInvitation WITH(NOLOCK) WHERE AddDate > GETDATE() - 5)
- AND ISNULL(RegisterType,0) < 100
- --Lucifer添加 市场部电话简历
- UPDATE paMain SET RegisterType = 152
- WHERE Id IN(SELECT paMainId FROM MarketDb..cvImportPrev WITH(NOLOCK) WHERE EntryDate > GETDATE() - 5)
- AND ISNULL(RegisterType,0) < 100
- --Lucifer添加 信息员手机号注册
- UPDATE a
- SET RegisterType = 103
- FROM paMain a, bsMobileSpread b
- WHERE a.Mobile = b.MobileNo
- AND ISNULL(a.RegisterType, 0) < 100
- AND a.AddDate BETWEEN DATEADD(MINUTE, -100, b.ReturnDate) AND b.ReturnDate
- AND b.ReturnDate > GETDATE() - 5
- --Lucifer添加 信息员手机号注册 已审核
- UPDATE a
- SET RegisterType = 104
- FROM paMain a, bsMobileSpread b
- WHERE a.Mobile = b.MobileNo
- AND a.RegisterType = 103
- AND b.AccountDate IS NOT NULL
- IF DATEPART(HOUR, GETDATE()) BETWEEN 8 AND 18
- BEGIN
- UPDATE a
- SET a.ReturnDate = GETDATE(), a.RelatedId = b.Id
- FROM bsMobileSpread a, paMain b WITH(NOLOCK)
- WHERE a.ReturnDate IS NULL
- AND a.AddDate > GETDATE() - 160
- AND a.UserType = 1
- AND a.MobileNo = b.Mobile
- AND ((b.RegisterMode = 0 AND b.ID < 25391426)
- OR
- (b.ID >= 25391426 AND ISNULL(b.RegisterType, 0) < 100)
- )
- UPDATE a
- SET a.AccountDate = GETDATE()
- FROM bsMobileSpread a, paMain b WITH(NOLOCK), cvMain c WITH(NOLOCK)
- WHERE a.ReturnDate IS NOT NULL
- AND a.AccountDate IS NULL
- --AND a.AddDate > GETDATE() - 160
- AND a.UserType=1
- AND a.RelatedId = b.Id
- AND b.Id = c.paMainId
- AND c.Valid > 0
- AND (
- (b.RegisterMode = 0 AND b.ID < 25391426)
- OR
- (b.ID >= 25391426 AND ISNULL(b.RegisterType,0) < 100)
- OR b.RegisterType = 103
- )
- AND b.VerifyCount > 0
- --Harry begin
- --更新关联企业id
- -- UPDATE bsMobileSpread
- -- SET RelatedId=(SELECT TOP 1 b.id FROM caMain a WITH(NOLOCK), cpMain b WITH(NOLOCK)
- -- WHERE a.cpMainId = b.ID AND b.RegisterMode = 0 AND a.Mobile=MobileNo ORDER BY b.RegDate DESC)
- -- WHERE ReturnDate IS NULL
- -- AND UserType=0
- -- AND ISNULL(RelatedId,0)=0
- --
- -- --更新cpmain中的addman
- -- UPDATE a
- -- SET a.addMan=(SELECT addMan FROM bsMobileSpread WHERE MobileNo=(select mobile FROM caMain WHERE cpMainid=a.id))
- -- FROM cpMain a
- -- WHERE a.RegisterMode = 0
- -- AND ISNULL(a.addMan,0)=0
- -- AND a.regdate > GETDATE()-5
- SELECT a.Id, a.AddMan, c.Id cpMainId
- INTO #t
- FROM bsMobileSpread a WITH(NOLOCK), caMain b WITH(NOLOCK), cpMain c WITH(NOLOCK)
- WHERE a.ReturnDate IS NULL
- AND a.AddDate > GETDATE() - 160
- AND a.UserType=0
- AND a.MobileNo = b.Mobile
- AND b.cpMainId = c.ID
- AND c.RegisterMode = 0
- --Harry end
- UPDATE a
- SET ReturnDate = GETDATE(), RelatedId = b.cpMainId
- FROM bsMobileSpread a, #t b
- WHERE a.Id = b.Id
- DECLARE @cpMainId int, @AddMan INT
- SELECT @cpMainId = 0
- WHILE EXISTS(SELECT 'x' FROM #t WHERE cpMainId > @cpMainId)
- BEGIN
- SELECT TOP 1 @cpMainId = cpMainId, @AddMan = AddMan FROM #t WHERE cpMAinId > @cpMainId ORDER By cpMainId
- UPDATE cpMain SET AddMan = @AddMan WHERE Id = @cpMainId
- END
-
- UPDATE a
- SET AccountDate = GETDATE()
- FROM bsMobileSpread a, cpMain b
- WHERE a.ReturnDate IS NOT NULL
- --AND a.AddDate > GETDATE() - 160
- AND a.AccountDate IS NULL
- AND a.UserType=0
- AND a.RelatedId = b.Id
- AND b.HasLicence = 1
- AND b.Valid = 1
- AND VerifyCount > 0
- END
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcPaMAinBySmsSpreadReSendSelect] Script Date: 2018/12/13 19:11:30 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcPaMAinBySmsSpreadReSendSelect]
- AS
- SET NOCOUNT ON
- BEGIN
- DECLARE @p AS TABLE(
- Id INT,
- Name NVARCHAR(50),
- dcProvinceId INT,
- Mobile VARCHAR(20),
- HasIntention bit DEFAULT(0),
- HasEducation bit DEFAULT(0),
- HasExperience bit DEFAULT(0),
- Msg NVARCHAR(200) DEFAULT('')
- )
- INSERT INTO @p(Id, Name, Mobile, dcProvinceId)
- SELECT Id, Name, Mobile, dcProvinceId
- FROM paMain WITH(NOLOCK)
- WHERE Name > ''
- AND Id NOT IN(SELECT paMainId FROM cvMain WITH(NOLOCK) WHERE cvLevel LIKE '1111_1%' AND VerifyResult = 1)
- AND PerfectDate IS NULL
- AND Mobile >''
- --AND AddDate < CONVERT(VARCHAR(10), GETDATE() - 10, 120)
- AND AddDate BETWEEN CONVERT(VARCHAR(10), GETDATE() - 10, 120) AND CONVERT(VARCHAR(10), GETDATE() - 9, 120)
- ORDER BY ID
- UPDATE a
- SET HasIntention = 1
- FROM @p a, cvMain b WITH(NOLOCK)
- WHERE a.Id = b.paMainId
- AND b.Id IN(SELECT cvMainId FROM cvJobPlace)
- AND b.Id IN(SELECT cvMainId FROM cvJobtype)
- UPDATE a
- SET HasEducation = 1
- FROM @p a, cvMain b WITH(NOLOCK)
- WHERE a.Id = b.paMainId
- AND b.Id IN(SELECT cvMainId FROM cvEducation)
- UPDATE a
- SET HasExperience= 1
- FROM @p a, cvMain b WITH(NOLOCK)
- WHERE a.Id = b.paMainId
- AND b.Id IN(SELECT cvMainId FROM cvExperience)
- DELETE FROM @p WHERE HasExperience = 1 AND HasEducation = 1 AND HasIntention = 1
- UPDATE @p SET Msg = (SELECT SubSiteName FROM dcSubSite WHERE Id = dcProvinceId)
- UPDATE @p SET Msg = Name + '你好,欢迎登录' + Msg + ',你的简历缺少' +
- CASE WHEN HasIntention = 0 THEN '求职意向、' ELSE '' END +
- CASE WHEN HasEducation = 0 THEN '教育背景、' ELSE '' END +
- CASE WHEN HasExperience = 0 THEN '工作经历、' ELSE '' END +
- ',请及时完善,以便免费为你推荐职位。'
- UPDATE @p SET Msg = REPLACE(Msg, '、,', ',')
- INSERT INTO SmsMessageLog(SendMan, Mobile, Msg, AddDate, MsgType)
- SELECT 0, Mobile, Msg, GETDATE(), 25 FROM @p
- END
- GO
- /****** Object: StoredProcedure [dbo].[procPaMainByUserNameLowerSelect] Script Date: 2018/12/13 19:11:31 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.10
- --创建人:NICK
- --说明:根据
- --#####################################################
- CREATE PROCEDURE [dbo].[procPaMainByUserNameLowerSelect]
- (
- @UserName VARCHAR(50)
- )
- AS
- BEGIN
- SELECT TOP 1 DcSubSiteID
- FROM pamain WHERE UserNameLower = @UserName
- union
- SELECT TOP 1 DcSubSiteID
- FROM PaMain WITH(INDEX(IX_paMain_Mobile))
- WHERE Mobile = @UserName
- AND MobileVerifyDate IS NOT NULL
- END
- GO
- /****** Object: StoredProcedure [dbo].[procPaMainRegisterIpByProvinceIDSelect] Script Date: 2018/12/13 19:11:31 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.11
- --创建人:John
- --说明:根据身份获取个人用户注册IP
- --#####################################################
- CREATE PROCEDURE [dbo].[procPaMainRegisterIpByProvinceIDSelect]
- (
- @dcProvinceID TINYINT
- )
- AS
- BEGIN
- SELECT TOP 1 RegisterIp FROM (SELECT TOP 100 RegisterIp FROM paMain WHERE dcProvinceID = @dcProvinceID) t ORDER BY NEWID()
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcPaOnlineStatusUpdate] Script Date: 2018/12/13 19:11:31 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcPaOnlineStatusUpdate]
- (
- @paMainIDs VARCHAR(MAX)
- )
- AS
- BEGIN
- return
- SELECT a ID INTO #t FROM dbo.fnSplit(@paMainIDs,',')
- UPDATE PaOnline SET IsOnline=1, RefreshDate=GETDATE() WHERE paMainID IN (SELECT Id FROM #t)
- INSERT paOnline(paMainId, IsOnline, RefreshDate)
- SELECT Id, 1, GETDATE() FROM #t WHERE ID NOT IN(SELECT paMainId FROM paOnline)
- UPDATE PaOnline SET IsOnline=0 WHERE paMainID NOT IN (SELECT Id FROM #t)
- END
- GO
- /****** Object: StoredProcedure [dbo].[procPaPageViewLogSelect] Script Date: 2018/12/13 19:11:31 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[procPaPageViewLogSelect]
- (
- @PaMainID INT
- )
- AS
- SET NOCOUNT ON
- INSERT INTO a1 SELECT @paMainId, GETDATE()
- BEGIN
- DECLARE @InterviewCnt INT,@IntentionCnt INT,@ViewLogCnt INT
-
- IF NOT EXISTS(SELECT 'x' FROM paPageViewLog WITH(NOLOCK) WHERE paMainId = @PaMainID)
- BEGIN
- INSERT INTO paPageViewLog(paMainId) VALUES(@PaMainID)
- END
-
- SELECT @InterviewCnt = COUNT(1)
- FROM exInterview WITH(NOLOCK)
- WHERE AddDate > (
- SELECT TOP 1 ISNULL(InterviewDate,(
- SELECT LastLoginDate FROM PaMain WITH(NOLOCK) WHERE ID = @PaMainID
- ))
- FROM paPageViewLog WITH(NOLOCK)
- WHERE paMainId = @PaMainID
- )
- AND cvMainID IN(
- SELECT ID FROM cvMain WITH(NOLOCK) WHERE paMainID = @PaMainID
- )
-
- SELECT @IntentionCnt = COUNT(1)
- FROM caCvIntention WITH(NOLOCK)
- WHERE AddDate > (
- SELECT TOP 1 ISNULL(IntentionDate,(
- SELECT LastLoginDate FROM PaMain WITH(NOLOCK) WHERE ID = @PaMainID
- ))
- FROM paPageViewLog WITH(NOLOCK)
- WHERE paMainId = @PaMainID
- )
- AND cvMainID IN(
- SELECT ID FROM cvMain WITH(NOLOCK) WHERE paMainID = @PaMainID
- )
-
- SELECT @ViewLogCnt = COUNT(1)
- FROM caCvViewLog WITH(NOLOCK)
- WHERE AddDate > (
- SELECT TOP 1 ISNULL(ViewLogDate,(
- SELECT LastLoginDate FROM PaMain WITH(NOLOCK) WHERE ID = @PaMainID
- ))
- FROM paPageViewLog WITH(NOLOCK)
- WHERE paMainId = @PaMainID
- )
- AND cvMainID IN(
- SELECT ID FROM cvMain WITH(NOLOCK) WHERE paMainID = @PaMainID
- )
-
- SELECT @InterviewCnt InterviewCnt,@IntentionCnt IntentionCnt,@ViewLogCnt ViewLogCnt
- END
- GO
- /****** Object: StoredProcedure [dbo].[procPaPageViewLogUpdate] Script Date: 2018/12/13 19:11:31 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[procPaPageViewLogUpdate]
- (
- @PaMainID INT,
- @ViewPageType TINYINT --1面试2应聘 3谁在关注 4关注 5 菜 6 申请的职位 7聊天记录
- )
- AS
- SET NOCOUNT ON
- BEGIN
- IF NOT EXISTS(SELECT 'x' FROM paPageViewLog WITH(NOLOCK) WHERE paMainId = @PaMainID)
- INSERT INTO paPageViewLog(paMainId, addDate, InterviewDate, IntentionDate, ViewLogDate,
- AttentionDate, YourFoodDate, ApplyReplyDate)
- VALUES(@PaMainID, GETDATE() - 10, GETDATE() - 10, GETDATE() - 10, GETDATE() - 10,
- GETDATE() - 10, GETDATE() - 10, GETDATE() - 10)
-
- IF @ViewPageType = 1
- UPDATE paPageViewLog SET InterviewDate = GETDATE(), InterviewCount=0 WHERE paMainId = @PaMainID
-
- IF @ViewPageType = 2
- UPDATE paPageViewLog SET IntentionDate = GETDATE(), CpInvitationCount=0 WHERE paMainId = @PaMainID
-
- IF @ViewPageType = 3
- UPDATE paPageViewLog SET ViewLogDate = GETDATE(), CvViewLogCount=0 WHERE paMainId = @PaMainID
-
- IF @ViewPageType = 4
- UPDATE paPageViewLog SET AttentionDate = GETDATE(), MyAttentionCount=0 WHERE paMainId = @PaMainID
-
- IF @ViewPageType = 5
- UPDATE paPageViewLog SET YourFoodDate = GETDATE(), YourFoodCount=0 WHERE paMainId = @PaMainID
-
- IF @ViewPageType = 6
- UPDATE paPageViewLog SET ApplyReplyDate = GETDATE(), JobAppliedCount=0 WHERE paMainId = @PaMainID
-
- IF @ViewPageType = 7
- UPDATE paPageViewLog SET ChatCount = 0 WHERE paMainId = @PaMainID
- END
- GO
- /****** Object: StoredProcedure [dbo].[procParefererSelectByAddDate] Script Date: 2018/12/13 19:11:32 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --分类统计个人注册来源数量
- --harry
- --2016-8-18
- --2017-2-13 harry 增加省份选择
- CREATE PROCEDURE [dbo].[procParefererSelectByAddDate]
- (
- @begin CHAR(8),
- @end CHAR(8),
- @type INT,
- @provinceid INT
- )
- AS
- SET NOCOUNT ON
- BEGIN
-
- DECLARE @str CHAR(50)
- IF @provinceid =0
- BEGIN
- SET @str = ' 1=1 AND '
- END
- ELSE
- BEGIN
- SET @str = ' a.dcProvinceID='+CONVERT(char(8),@provinceid) +' AND '
- END
-
- DECLARE @sql VARCHAR(MAX)
- IF @type=1--日
- BEGIN
- SET @sql='SELECT RegisterFrom,RegisterType,count(*) AS number,CONVERT(varchar(8), b.addDate, 112 ) AS [date]
- FROM maindb..pamain a left join maindb..pareferer b on a.id = b.pamainid
- WHERE '+@str+' CONVERT(varchar(8), b.adddate, 112) >='''+ @begin+''' AND CONVERT(varchar(8), b.adddate, 112)<='''+@end+
- ''' GROUP BY RegisterFrom,RegisterType,CONVERT(varchar(8), b.addDate,112)
- ORDER BY [date],registerfrom,registertype'
- END
- ELSE
- BEGIN--月
- SET @sql='SELECT RegisterFrom,RegisterType,count(*) AS number,CONVERT(varchar(6), b.addDate, 112) AS [date]
- FROM maindb..pamain a left join maindb..pareferer b on a.id = b.pamainid
- WHERE '+@str+' CONVERT(varchar(6), b.adddate, 112)>='''+ LEFT(@begin,6)+''' AND CONVERT(varchar(6), b.adddate, 112)<='''+ LEFT(@end,6)+''' GROUP BY RegisterFrom,RegisterType,CONVERT(varchar(6), b.addDate, 112 )
- ORDER BY [date],registerfrom,registertype'
- END
- EXEC (@sql)
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcParentRegionJobSalaryByRegionIDSelect] Script Date: 2018/12/13 19:11:32 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.3
- --创建人:John
- --说明:根据RegionID,Jobtype 获取其上级地区的平均月薪
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcParentRegionJobSalaryByRegionIDSelect]
- (
- @dcRegionID VARCHAR(4),
- @dcJobTypeID SMALLINT
- )
- AS
- BEGIN
- IF LEN(@dcRegionID) = 4
- BEGIN
- SELECT TOP 10 dcRegionid,AvgSalary
- FROM reportdb..SalaryReportJobtype
- WHERE (dcRegionid = SUBSTRING(@dcRegionID,1,2) OR dcRegionid = 0) AND dcJobTypeID = @dcJobTypeID
- ORDER BY dcRegionid DESC
- END
- ELSE
- BEGIN
- SELECT TOP 10 dcRegionid,AvgSalary
- FROM reportdb..SalaryReportJobtype
- WHERE dcRegionid = 0 AND dcJobTypeID = @dcJobTypeID
- END
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcParentRegionSalaryByRegionIDSelect] Script Date: 2018/12/13 19:11:32 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.31
- --创建人:John
- --说明:根据RegionID 获取其上级地区的平均月薪
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcParentRegionSalaryByRegionIDSelect]
- (
- @dcRegionID VARCHAR(4)
- )
- AS
- BEGIN
- IF LEN(@dcRegionID) = 4
- BEGIN
- SELECT TOP 10 dcRegionid,AvgSalary
- FROM reportdb..SalaryReportRegion
- WHERE (dcRegionid = SUBSTRING(@dcRegionID,1,2) OR dcRegionid = 0) ORDER BY dcRegionid DESC
- END
- ELSE
- BEGIN
- SELECT TOP 10 dcRegionid,AvgSalary FROM reportdb..SalaryReportRegion WHERE dcRegionid = 0
- END
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcPaSearchKeywordSelect] Script Date: 2018/12/13 19:11:32 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcPaSearchKeywordSelect]
- (
- @ProvinceId INT
- )
- AS
- BEGIN
- SELECT '/s_' + LTRIM(RTRIM(Keyword)) Link FROM paSearchKeyword WHERE HasSubmit = 1 ORDER BY ID
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcPaSearchKeywordUpdate] Script Date: 2018/12/13 19:11:32 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcPaSearchKeywordUpdate]
- AS
- BEGIN
- DELETE paSearchKeyword WHERE Keyword LIKE '%、%'
- DELETE paSearchKeyword WHERE Keyword LIKE '%。%'
- DELETE paSearchKeyword WHERE Keyword LIKE '%?%'
- DELETE paSearchKeyword WHERE Keyword LIKE '%/%'
- DELETE paSearchKeyword WHERE Keyword LIKE '%─%'
- DELETE paSearchKeyword WHERE LEN(Keyword) = 1
- DELETE paSearchKeyword WHERE LEN(Keyword) > 14
- IF DATEPART(WEEKDAY, GETDATE()) = 1
- BEGIN
- UPDATE paSearchKeyword SET HasSubMit = 9 WHERE HasSubMit = 1
- UPDATE paSearchKeyword SET HasSubMit = 1
- WHERE ID IN(SELECT TOP 3000 ID FROM paSearchKeyword WHERE ISNULL(HasSubmit, 0) = 0 ORDER BY ID)
- END
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcPaSMSWaitSelect] Script Date: 2018/12/13 19:11:33 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- -----------------
- --创建日期:2012-4-17
- --创建人:lambo
- --功能说明:个人汇总类短信发送。将marketdb..paSMSWait里的数据转入SmsMessageLog
- -----------------
- CREATE PROCEDURE [dbo].[ProcPaSMSWaitSelect]
- AS
- BEGIN TRY
- RETURN
- --删除今天已经登录过的个人的记录
- If DATEPART(HOUR,GETDATE())*100 + DATEPART(MINUTE,GETDATE()) <= 805
- DELETE FROM marketdb..paSMSWait WHERE paMainID IN(SELECT ID FROM paMain WITH(NOLOCK) WHERE LastLoginDate > GETDATE() - 1)
- ELSE
- DELETE FROM marketdb..paSMSWait WHERE paMainID IN(SELECT ID FROM paMain WITH(NOLOCK) WHERE LastLoginDate > DATEADD(MINUTE, -10, GETDATE()))
- SELECT TOP 20 * INTO #T FROM marketdb..paSMSWait WHERE LastLoginTime < DATEPART(HOUR, GETDATE())*100 + DATEPART(MINUTE, GETDATE()) AND Msg>''
- INSERT SmsMessageLog(SendMan, ManagerUSerId, paMainId, caMainId, Mobile, MsgType, IsCat, Msg)
- SELECT 0, NULL, paMainID, NULL, Mobile, 100+SmsType, 0,Msg FROM #T
- DELETE FROM marketdb..paSMSWait WHERE ID IN (select ID FROM #T)
- END TRY
- BEGIN CATCH
- END CATCH
- GO
- /****** Object: StoredProcedure [dbo].[procPaTagsMainByKeywordSelect] Script Date: 2018/12/13 19:11:33 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --根据输入获取关键词
- CREATE PROCEDURE [dbo].[procPaTagsMainByKeywordSelect]
- (
- @Keyword NVARCHAR(10)
- )
- AS
- BEGIN
- SELECT DISTINCT TOP 10 Tag
- FROM PaTagsMain
- WHERE Tag LIKE @Keyword + '%'
- END
- GO
- /****** Object: StoredProcedure [dbo].[procPaTagsMainByTagsInsert] Script Date: 2018/12/13 19:11:33 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --计划任务,定期将标签信息汇总插入到汇总表中 Peter 2017-1-19
- CREATE PROCEDURE [dbo].[procPaTagsMainByTagsInsert]
- AS
- BEGIN
- INSERT INTO paTagsMain(Tag,dcJobTypeID,TagType,UseCount)
- SELECT TOP 20 a.Tags,b.dcJobTypeID,2,COUNT(1) Cnt
- FROM cvTags a with(NOLOCK),cvJobType b WITH(NOLOCK)
- WHERE a.cvMainID=b.cvMainID
- GROUP BY a.Tags,b.dcJobTypeID
- HAVING COUNT(1) > 10
- AND NOT EXISTS(SELECT 'x' FROM paTagsMain WITH(NOLOCK) WHERE Tag=a.Tags AND dcJobTypeID = b.dcJobTypeID)
- ORDER BY COUNT(1) DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[procPaTagsMainByTagsUpdate] Script Date: 2018/12/13 19:11:33 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --定期审核判断黑名单 Peter 2017-1-19
- CREATE PROCEDURE [dbo].[procPaTagsMainByTagsUpdate]
- AS
- BEGIN
- --删除黑名单中的词
- DELETE FROM cvTags
- WHERE Tags IN(
- SELECT Tag
- FROM paTagsMain WITH(NOLOCK)
- WHERE TagType = 3
- )
- AND VerifyDate IS NULL
-
- UPDATE paTagsMain
- SET UseCount = (
- SELECT COUNT(1)
- FROM cvTags a WITH(NOLOCK),cvJobType b WITH(NOLOCK)
- WHERE a.cvMainID=b.cvMainID
- AND a.Tags = paTagsMain.Tag
- AND b.dcJobTypeID = paTagsMain.dcJobTypeID
- )
- WHERE TagType <> 3
- END
- GO
- /****** Object: StoredProcedure [dbo].[procPaTagsMainByVerifyUpdate] Script Date: 2018/12/13 19:11:34 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --审核 Peter 2017-1-13
- CREATE PROCEDURE [dbo].[procPaTagsMainByVerifyUpdate]
- (
- @TagsID VARCHAR(1000)
- )
- AS
- BEGIN
- UPDATE cvTags
- SET VerifyDate = GETDATE()
- WHERE Tags IN(
- SELECT b.Tags FROM dbo.fnSplit(@TagsID,',') a
- LEFT JOIN cvTags b ON b.ID = a.a
- )
- AND VerifyDate IS NULL
- END
- GO
- /****** Object: StoredProcedure [dbo].[procPaTagsMainDelete] Script Date: 2018/12/13 19:11:34 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --删除关键字 Peter 2017-1-13
- CREATE PROCEDURE [dbo].[procPaTagsMainDelete]
- (
- @TagsID INT
- )
- AS
- BEGIN
- INSERT INTO paTagsMain(Tag,dcJobTypeID,TagType,UseCount)
- SELECT Tags,0,3,0
- FROM cvTags WITH(NOLOCK)
- WHERE id = @TagsID
-
- DELETE FROM cvTags
- WHERE id = @TagsID
- END
- GO
- /****** Object: StoredProcedure [dbo].[procPersonReportInsert] Script Date: 2018/12/13 19:11:34 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- -- =============================================
- -- 创建人: Nick
- -- 日期: 2013-11-12
- -- 描述: 生成网站数据统计数据
- -- 修改人: Nick
- -- 日期: 2013-12-6
- -- 描述: 将手机注册加入个人注册量中
- -- =============================================
- CREATE PROCEDURE [dbo].[procPersonReportInsert]
- AS
- BEGIN
- DECLARE @ReportBeginDay VARCHAR(30),@ReportBeginMonth VARCHAR(30),@ReportEndDay VARCHAR(30),
- @ReportEndMonth VARCHAR(30),@ReportDate VARCHAR(8),@ReportDateMonth VARCHAR(8),@Now DATETIME--统计日期
- DECLARE @i INT ,@StrWhere VARCHAR(500), @Sql VARCHAR(1000),@isHaveMonthData int
-
- --统计日期赋值
- SET @Now = GETDATE()
- --SET @Now = '2013-09-03'
- SET @ReportBeginDay = CONVERT(varchar(40),DATEADD(day,-1,@Now), 23)
- SET @ReportEndDay = CONVERT(varchar(30),@Now, 23)
- SET @ReportBeginMonth = CONVERT(varchar(30),@NOW-1 - DAY(@NOW-1) + 1,23)
- SET @ReportEndMonth = CONVERT(varchar(30),DATEADD(MONTH, 1,@ReportBeginMonth),23)
- SET @ReportDate = CONVERT(varchar(30),DATEADD(day,-1,@Now), 112)
- SET @ReportDateMonth = SUBSTRING(@ReportDate,0,7)
-
- --删除当天日统计数据
- DELETE FROM PersonReport WHERE ReportDate = @ReportDate
- DECLARE @ProvinceID int ,@tmp int --临时变量,用来保存省份编号
- --判断是否已存在月份数据
- IF EXISTS(SELECT 'x' FROM PersonReport WITH(NOLOCK) WHERE ReportDate = @ReportDateMonth)
- BEGIN
- SET @isHaveMonthData = 1 --已经存
- END
- ELSE
- BEGIN
- SET @isHaveMonthData = 0 --不存在
- END
- --按照省份、状态 插入空数据
- DECLARE Province_curr CURSOR FOR --申明游标
- SELECT ID FROM DcProvince --查询省份编号
- OPEN Province_curr --打开游标
- FETCH NEXT FROM Province_curr into @ProvinceID --开始循环游标变量
- WHILE(@@fetch_status=0)
- BEGIN
- SET @i = 0
- --================类型条件赋值============================================
- WHILE @i<12
- BEGIN
- --插入日报
- INSERT INTO PersonReport (ReportDate,ProvinceID,TypeID)
- VALUES (@ReportDate,@ProvinceID,@i)
- IF(@isHaveMonthData = 0)
- BEGIN
- --插入月报
- INSERT INTO PersonReport (ReportDate,ProvinceID,TypeID)
- VALUES (@ReportDateMonth,@ProvinceID,@i)
- END
- SET @i = @i + 1
- END
- FETCH NEXT FROM Province_curr into @ProvinceID --开始循环游标变量
- END
- CLOSE Province_curr--关闭游标
- DEALLOCATE Province_curr --释放游标
- --================创建临时表============================================
- CREATE TABLE #t1 -- 临时表 #t1 登陆过且未完善的pamainid 日报
- (
- PamainID int,
- ProvinceID int
- )
- CREATE TABLE #t2 -- 临时表 #t2 登陆过且完善的pamainid 日报
- (
- PamainID int ,
- ProvinceID int
- )
- CREATE TABLE #t3 -- 临时表 #t3 登陆过且未完善的pamainid 月报
- (
- PamainID int ,
- ProvinceID int
- )
- CREATE TABLE #t4 -- 临时表 #t4 登陆过且完善的pamainid 月报
- (
- PamainID int ,
- ProvinceID int
- )
- CREATE TABLE #Interview -- 临时表 #Interview 收到面试通知的账号 日报
- (
- PamainID int,
- Adddate DateTime,
- ViewDate DateTime,
- ProvinceID int
- )
- CREATE TABLE #TmpInterview -- 临时表 #TmpInterview
- (
- PamainID int,
- Adddate DateTime,
- ViewDate DateTime,
- ProvinceID int
- )
- CREATE TABLE #Message -- 临时表 #Message 收到留言的账号 日报
- (
- PamainID int,
- ProvinceID int
- )
- CREATE TABLE #Favorate -- 临时表 Favorate 收藏职位的账号 日报
- (
- PamainID int,
- ProvinceID int
- )
- CREATE TABLE #Apply -- 临时表 #Apply 申请职位的账号 日报
- (
- PamainID int,
- ProvinceID int
- )
- CREATE TABLE #Intention -- 临时表 #Intention 收到应聘邀请的账号 日报
- (
- PamainID int,
- ReplyDate DateTime,
- ProvinceID int
- )
- CREATE TABLE #TmpIntention -- 临时表 #TmpIntention
- (
- PamainID int,
- ReplyDate DateTime,
- ProvinceID int
- )
- CREATE TABLE #Refresh -- 临时表 #Refresh 刷新简历的账号 日报
- (
- PamainID int,
- ProvinceID int
- )
- CREATE TABLE #Other -- 临时表 #Other
- (
- PamainID int,
- ProvinceID int
- )
- CREATE TABLE #Rate -- 临时表 #Rate 频次
- (
- ProvinceID int,
- RateTmp int,
- Cnt int
- )
- CREATE TABLE #InterviewMonth -- 临时表 #InterviewMonth 收到面试通知的账号 月报
- (
- PamainID int,
- Adddate DateTime,
- ViewDate DateTime,
- ProvinceID int
- )
- CREATE TABLE #MessageMonth -- 临时表 #MessageMonth 收到留言的账号 月报
- (
- PamainID int,
- ProvinceID int
- )
- CREATE TABLE #FavorateMonth -- 临时表 FavorateMonth 收藏职位的账号 月报
- (
- PamainID int,
- ProvinceID int
- )
- CREATE TABLE #ApplyMonth -- 临时表 #ApplyMonth 申请职位的账号 月报
- (
- PamainID int,
- ProvinceID int
- )
- CREATE TABLE #IntentionMonth -- 临时表 #IntentionMonth 收到应聘邀请的账号 月报
- (
- PamainID int,
- ReplyDate DateTime,
- ProvinceID int
- )
- CREATE TABLE #RefreshMonth -- 临时表 #RefreshMonth 刷新简历的账号 月报
- (
- PamainID int,
- ProvinceID int
- )
- CREATE TABLE #OtherMonth -- 临时表 #OtherMonth
- (
- PamainID int,
- ProvinceID int
- )
- CREATE TABLE #RateMonth -- 临时表 #RateMonth 频次
- (
- ProvinceID int,
- RateTmp int,
- Cnt int
- )
- --将收到面试通知的账号放入临时表 日报
- INSERT INTO #Interview
- SELECT b.PamainID,a.Adddate,a.ViewDate,c.dcProvinceID
- FROM exInterView a,CvMain b,PaMain c
- WHERE (a.AddDate BETWEEN @ReportBeginDay AND @ReportEndDay )
- AND a.CvMainID = b.ID
- AND b.PamainID = c.ID
- --将发送留言的账号放入临时表 日报
- INSERT INTO #Message
- SELECT b.PamainID,c.dcProvinceID
- FROM exMessagep2c a,CvMain b,PaMain c
- WHERE (a.AddDate BETWEEN @ReportBeginDay AND @ReportEndDay )
- AND a.CvMainID = b.ID
- AND b.PamainID = c.ID
- --将收藏职位的账号信息放入临时表 日报
- INSERT INTO #Favorate
- SELECT a.PamainID,b.dcProvinceID
- FROM paFavorate a,PaMain b
- WHERE (a.AddDate BETWEEN @ReportBeginDay AND @ReportEndDay )
- AND a.PamainID = b.ID
- --将申请职位的账号放入临时表 日报
- INSERT INTO #Apply
- SELECT b.PamainID,c.dcProvinceID
- FROM exJobApply a,CvMain b,PaMain c
- WHERE (a.AddDate BETWEEN @ReportBeginDay AND @ReportEndDay )
- AND a.CvMainID = b.ID
- AND b.PamainID = c.ID
- --将收到应聘邀请的账号放入临时表 日报
- INSERT INTO #Intention
- SELECT b.PamainID,a.ReplyDate,c.dcProvinceID
- FROM caCvIntention a,CvMain b,PaMain c
- WHERE (a.AddDate BETWEEN @ReportBeginDay AND @ReportEndDay )
- AND a.CvMainID = b.ID
- AND b.PamainID = c.ID
- --将刷新简历的账号放入临时表 日报
- INSERT INTO #Refresh
- SELECT a.PamainID,b.dcProvinceID FROM CvMain a,PaMain b
- WHERE (RefreshDate BETWEEN @ReportBeginDay AND @ReportEndDay )
- AND a.PamainID = b.ID
- --将收到面试通知的账号放入临时表 月报
- INSERT INTO #InterviewMonth
- SELECT b.PamainID,a.Adddate,a.ViewDate,c.dcProvinceID
- FROM exInterView a,CvMain b,PaMain c
- WHERE (a.AddDate BETWEEN @ReportBeginMonth AND @ReportEndMonth )
- AND a.CvMainID = b.ID
- AND b.PamainID = c.ID
- --将发送留言的账号放入临时表 月报
- INSERT INTO #MessageMonth
- SELECT b.PamainID,c.dcProvinceID
- FROM exMessagep2c a,CvMain b,PaMain c
- WHERE (a.AddDate BETWEEN @ReportBeginMonth AND @ReportEndMonth )
- AND a.CvMainID = b.ID
- AND b.PamainID = c.ID
- --将收藏职位的账号信息放入临时表 月报
- INSERT INTO #FavorateMonth
- SELECT a.PamainID,b.dcProvinceID
- FROM paFavorate a,PaMain b
- WHERE (a.AddDate BETWEEN @ReportBeginMonth AND @ReportEndMonth )
- AND a.PamainID = b.ID
- --将申请职位的账号放入临时表 月报
- INSERT INTO #ApplyMonth
- SELECT b.PamainID,c.dcProvinceID
- FROM exJobApply a,CvMain b,PaMain c
- WHERE (a.AddDate BETWEEN @ReportBeginMonth AND @ReportEndMonth )
- AND a.CvMainID = b.ID
- AND b.PamainID = c.ID
- --将收到应聘邀请的账号放入临时表 月报
- INSERT INTO #IntentionMonth
- SELECT b.PamainID,a.ReplyDate,c.dcProvinceID
- FROM caCvIntention a,CvMain b,PaMain c
- WHERE (a.AddDate BETWEEN @ReportBeginMonth AND @ReportEndMonth )
- AND a.CvMainID = b.ID
- AND b.PamainID = c.ID
- --将刷新简历的账号放入临时表 日月报
- INSERT INTO #RefreshMonth
- SELECT a.PamainID,b.dcProvinceID FROM CvMain a,PaMain b
- WHERE (RefreshDate BETWEEN @ReportBeginMonth AND @ReportEndMonth )
- AND a.PamainID = b.ID
- SET @i = 0
- WHILE @i<12
- BEGIN
- IF @i = 1 --邮件推广
- BEGIN
- SET @StrWhere = ' AND (b.RegisterMode = 1 OR b.RegisterMode = 11 OR b.RegisterType = 101 OR b.RegisterType = 102) '
- END
- ELSE IF @i=2 --招聘会推广
- BEGIN
- SET @StrWhere = ' AND (b.RegisterMode = 12 OR b.RegisterType = 151)'
- END
- ELSE IF @i=3 --电话推广
- BEGIN
- SET @StrWhere = ' AND (b.RegisterMode = 13 OR b.RegisterType = 152)'
- END
- ELSE IF @i=4 --短信推广
- BEGIN
- SET @StrWhere = ' AND (b.RegisterMode = 14 OR b.RegisterType = 103 OR b.RegisterType = 104)'
- END
- ELSE IF @i=5 --本人注册
- BEGIN
- SET @StrWhere = ' AND ((b.RegisterMode<>1 AND b.RegisterMode<>11 AND b.RegisterMode<>12 AND b.RegisterMode<>13 AND b.RegisterMode<>14) OR b.RegisterType = 1)'
- END
- ELSE IF @i=6 --公开
- BEGIN
- SET @StrWhere = ' AND IscvHidden <> 1 '
- END
- ELSE IF @i=7 --隐藏
- BEGIN
- SET @StrWhere = ' AND IscvHidden = 1 '
- END
- ELSE IF @i=8 --手机认证
- BEGIN
- SET @StrWhere = ' AND MobileVerifyDate IS NOT NULL '
- END
- ELSE IF @i=9 --邮箱认证
- BEGIN
- SET @StrWhere = ' AND EmailVerifyDate IS NOT NULL '
- END
- ELSE IF @i=10 --未认证
- BEGIN
- SET @StrWhere = ' AND (MobileVerifyDate IS NULL AND EmailVerifyDate IS NULL) '
- END
- ELSE IF @i=11 --竞价推广
- BEGIN
- SET @StrWhere = ' AND b.ID IN (SELECT paMainID FROM UrlAccount) '
- END
- ELSE
- BEGIN --全部
- SET @StrWhere = ''
- END
- --将登陆过且未完善的pamainid放入临时表 #t1 日报
- IF(@i=6 OR @i=7)
- BEGIN
- SET @Sql = 'SELECT a.PaMainID,b.dcProvinceID ProvinceID FROM PaLoginLog a,PaMain b
- WHERE (a.AddDate BETWEEN '''+@ReportBeginDay+''' AND '''+@ReportEndDay+''' )
- AND a.PamainID = b.ID
- AND a.PamainID IN(
- SELECT PamainID FROM CvMain WHERE CvLevel NOT LIKE ''1111_1%'' AND Attachment is null
- '+@StrWhere+'
- )'
- INSERT INTO #t1 EXEC(@Sql)
- print (@Sql)
- --将有完善简历的账户删除
- DELETE FROM #t1 WHERE PamainID IN (SELECT PamainID FROM CvMain WHERE CvLevel LIKE '1111_1%' or Attachment <>'')
- IF @i=7
- BEGIN
- --将公开的简历删除
- DELETE FROM #t1 WHERE PamainID IN (SELECT PamainID FROM CvMain WHERE IscvHidden <> 1)
- END
- --将登陆过且完善的pamainid放入临时表 #t2 日报
- SET @Sql = 'SELECT a.PaMainID,b.dcProvinceID ProvinceID FROM PaLoginLog a,PaMain b
- WHERE (a.AddDate BETWEEN '''+@ReportBeginDay+''' AND '''+@ReportEndDay+''' )
- AND a.PamainID = b.ID
- AND a.PaMainID IN (SELECT PamainID FROM CvMain WHERE (CvLevel LIKE ''1111_1%'' or Attachment <>'''') '+@StrWhere+')
- '
- INSERT INTO #t2 EXEC(@Sql)
- IF @i=7
- BEGIN
- --将公开的简历删除
- DELETE FROM #t2 WHERE PamainID IN (SELECT PamainID FROM CvMain WHERE IscvHidden <> 1)
- END
- --将登陆过且未完善的pamainid放入临时表 #t3 月报
- SET @Sql = 'SELECT a.PaMainID,b.dcProvinceID ProvinceID FROM PaLoginLog a,PaMain b
- WHERE (a.AddDate BETWEEN '''+@ReportBeginMonth+''' AND '''+@ReportEndMonth+''' )
- AND a.PamainID = b.ID
- AND a.PaMainID IN (SELECT PamainID FROM CvMain WHERE CvLevel NOT LIKE ''1111_1%'' AND Attachment is null '+@StrWhere+')
- '
- INSERT INTO #t3 EXEC(@Sql)
- --将有完善简历的账户删除
- DELETE FROM #t3 WHERE PamainID IN (SELECT PamainID FROM CvMain WHERE CvLevel LIKE '1111_1%' or Attachment <>'')
- IF @i=7
- BEGIN
- --将公开的简历删除
- DELETE FROM #t3 WHERE PamainID IN (SELECT PamainID FROM CvMain WHERE IscvHidden <> 1)
- END
- --将登陆过且完善的pamainid放入临时表 #t4 月报
- SET @Sql = 'SELECT a.PaMainID,b.dcProvinceID ProvinceID FROM PaLoginLog a,PaMain b
- WHERE (a.AddDate BETWEEN '''+@ReportBeginMonth+''' AND '''+@ReportEndMonth+''' )
- AND a.PamainID = b.ID
- AND a.PaMainID IN (SELECT PamainID FROM CvMain WHERE (CvLevel LIKE ''1111_1%'' or Attachment <>'''') '+@StrWhere+')
- '
- INSERT INTO #t4 EXEC(@Sql)
- IF @i=7
- BEGIN
- --将公开的简历删除
- DELETE FROM #t4 WHERE PamainID IN (SELECT PamainID FROM CvMain WHERE IscvHidden <> 1)
- END
- END
- ELSE
- BEGIN
- SET @Sql = 'SELECT a.PaMainID,b.dcProvinceID ProvinceID FROM PaLoginLog a,PaMain b
- WHERE (a.AddDate BETWEEN '''+@ReportBeginDay+''' AND '''+@ReportEndDay+''' )
- AND a.PamainID = b.ID
- AND a.PamainID IN(SELECT PamainID FROM CvMain WHERE CvLevel NOT LIKE ''1111_1%'' AND Attachment is null)
- ' + @StrWhere
- INSERT INTO #t1 EXEC(@Sql)
- --将有完善简历的账户删除
- DELETE FROM #t1 WHERE PamainID IN (SELECT PamainID FROM CvMain WHERE CvLevel LIKE '1111_1%' or Attachment <>'')
- --将登陆过且完善的pamainid放入临时表 #t2 日报
- SET @Sql = 'SELECT a.PaMainID,b.dcProvinceID ProvinceID FROM PaLoginLog a,PaMain b
- WHERE (a.AddDate BETWEEN '''+@ReportBeginDay+''' AND '''+@ReportEndDay+''' )
- AND a.PamainID = b.ID
- AND a.PaMainID IN (SELECT PamainID FROM CvMain WHERE CvLevel LIKE ''1111_1%'' or Attachment <>'''')
- ' + @StrWhere
- INSERT INTO #t2 EXEC(@Sql)
- --将登陆过且未完善的pamainid放入临时表 #t3 月报
- SET @Sql = 'SELECT a.PaMainID,b.dcProvinceID ProvinceID FROM PaLoginLog a,PaMain b
- WHERE (a.AddDate BETWEEN '''+@ReportBeginMonth+''' AND '''+@ReportEndMonth+''' )
- AND a.PamainID = b.ID
- AND a.PaMainID IN (SELECT PamainID FROM CvMain WHERE CvLevel NOT LIKE ''1111_1%'' AND Attachment is null)
- ' + @StrWhere
- INSERT INTO #t3 EXEC(@Sql)
- --将有完善简历的账户删除
- DELETE FROM #t3 WHERE PamainID IN (SELECT PamainID FROM CvMain WHERE CvLevel LIKE '1111_1%' or Attachment <>'')
- --将登陆过且完善的pamainid放入临时表 #t4 月报
- SET @Sql = 'SELECT a.PaMainID,b.dcProvinceID ProvinceID FROM PaLoginLog a,PaMain b
- WHERE (a.AddDate BETWEEN '''+@ReportBeginMonth+''' AND '''+@ReportEndMonth+''' )
- AND a.PamainID = b.ID
- AND a.PaMainID IN (SELECT PamainID FROM CvMain WHERE CvLevel LIKE ''1111_1%'' or Attachment <>'''')
- ' + @StrWhere
- INSERT INTO #t4 EXEC(@Sql)
- END
-
- --未完善简历的账号数量 赋值 日报
- UPDATE a SET a.LoginNoPerfectAccount=b.cnt
- FROM Personreport a ,(SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #t1 GROUP BY ProvinceID) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --未完善账号的登录次数 日报
- UPDATE a SET a.LoginNoPerfectCount=b.cnt
- FROM Personreport a ,(SELECT COUNT(PaMainID) cnt,ProvinceID FROM #t1 GROUP BY ProvinceID) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --完善简历的账号数量 赋值 日报
- UPDATE a SET a.LoginPerfectAccount=b.cnt
- FROM Personreport a ,(SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #t2 GROUP BY ProvinceID) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --完善简历的账号登陆次数 赋值 日报
- UPDATE a SET a.LoginPerfectCount=b.cnt
- FROM Personreport a ,(SELECT COUNT(PaMainID) cnt,ProvinceID FROM #t2 GROUP BY ProvinceID) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --收到面试通知的账号数量 日报
- UPDATE a SET a.InterviewAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #Interview
- WHERE PaMainID IN (SELECT PamainID FROM #t2)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --收到面试通知的条数 日报
- UPDATE a SET a.InterviewCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(*) cnt,ProvinceID FROM #Interview
- WHERE PaMainID in(SELECT PamainID FROM #t2)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND a.TypeID = @i AND a.ReportDate = @ReportDate
- --收到面试通知且已查看账号数量 日报
- UPDATE a SET a.InterviewViewAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #Interview
- WHERE (ViewDate BETWEEN @ReportBeginDay AND @ReportEndDay )
- AND PaMainID IN(SELECT PamainID FROM #t2)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --得到未查看的账号信息
- INSERT INTO #TmpInterview SELECT * FROM #Interview
- DELETE FROM #TmpInterview WHERE PaMainID IN (Select PaMainID FROM #Interview WHERE ViewDate BETWEEN @ReportBeginDay AND @ReportEndDay)
- --收到面试通知且未查看账号数量 日报
- UPDATE a SET a.InterviewNoViewAccount = b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #TmpInterview
- WHERE (ViewDate IS NULL )
- AND PaMainID IN(SELECT PamainID FROM #t2)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
-
- --收到面试通知且已查看的条数 日报
- UPDATE a SET a.InterviewViewCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #Interview
- WHERE (ViewDate BETWEEN @ReportBeginDay AND @ReportEndDay )
- AND PaMainID IN(SELECT PamainID FROM #t2)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --收到面试通知且未查看的条数 日报
- UPDATE a SET a.InterviewNoViewCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #Interview
- WHERE (ViewDate IS NULL )
- AND PaMainID IN(SELECT PamainID FROM #t2)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --留言的账号数量 日报
- UPDATE a SET a.MessageAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #t2
- WHERE PaMainID IN ( SELECT PamainID FROM #Message )
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --留言的条数 日报
- UPDATE a SET a.MessageCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #Message
- WHERE PaMainID IN ( SELECT PamainID FROM #t2 )
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --收藏职位的账号数量 日报
- UPDATE a SET a.FavoriteAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #t2
- WHERE PaMainID IN ( SELECT PamainID FROM #Favorate )
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --收藏职位的条数 日报
- UPDATE a SET a.FavoriteCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #Favorate
- WHERE PaMainID IN ( SELECT PamainID FROM #t2 )
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --申请职位的账号数量 日报
- UPDATE a SET a.ApplyAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #Apply
- WHERE PaMainID IN ( SELECT PamainID FROM #t2 )
- GROUP BY ProvinceID
- )b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --申请职位的条数 日报
- UPDATE a SET a.ApplyCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #Apply
- WHERE PaMainID IN ( SELECT PamainID FROM #t2 )
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --收到应聘邀请的账号数量 日报
- UPDATE a SET a.IntentionAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #Intention
- WHERE PaMainID IN (SELECT PamainID FROM #t2)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --收到应聘邀请的条数 日报
- UPDATE a SET a.IntentionCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(*) cnt,ProvinceID FROM #Intention
- WHERE PaMainID in(SELECT PamainID FROM #t2)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND a.TypeID = @i AND a.ReportDate = @ReportDate
- --收到应聘邀请且已查看账号数量 日报
- UPDATE a SET a.IntentionViewAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #Intention
- WHERE (ReplyDate BETWEEN @ReportBeginDay AND @ReportEndDay )
- AND PaMainID IN(SELECT PamainID FROM #t2)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --得到未查看的账号信息
- INSERT INTO #TmpIntention SELECT * FROM #Intention
- DELETE FROM #TmpIntention WHERE PaMainID IN (Select PaMainID FROM #Intention WHERE ReplyDate BETWEEN @ReportBeginDay AND @ReportEndDay)
- --收到应聘邀请且未查看账号数量 日报
- UPDATE a SET a.IntentionNoViewAccount = b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #TmpIntention
- WHERE (ReplyDate IS NULL )
- AND PaMainID IN(SELECT PamainID FROM #t2)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
-
- --收到应聘邀请且已查看的条数 日报
- UPDATE a SET a.IntentionViewCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #Intention
- WHERE (ReplyDate BETWEEN @ReportBeginDay AND @ReportEndDay )
- AND PaMainID IN(SELECT PamainID FROM #t2)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --收到应聘邀请且未查看的条数 日报
- UPDATE a SET a.IntentionNoViewCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #Intention
- WHERE (ReplyDate IS NULL )
- AND PaMainID IN(SELECT PamainID FROM #t2)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
-
- --刷新简历的账号数量 @RefreshAccount 日报
- UPDATE a SET a.RefreshAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #Refresh
- WHERE PaMainID IN ( SELECT PamainID FROM #t2 )
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --刷新简历的次数 日报
- UPDATE a SET a.RefreshCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #Refresh
- WHERE PaMainID IN ( SELECT PamainID FROM #t2 )
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --临时表赋值
- INSERT INTO #Other SELECT * FROM #t2
- DELETE FROM #Other
- WHERE PaMainID IN ( SELECT PamainID FROM #Interview)
- OR PaMainID IN ( SELECT PamainID FROM #Message)
- OR PaMainID IN ( SELECT PamainID FROM #Favorate)
- OR PaMainID IN ( SELECT PamainID FROM #Apply)
- OR PaMainID IN ( SELECT PamainID FROM #Intention)
- OR PaMainID IN ( SELECT PamainID FROM #Refresh )
- --其他账号数量、登录次数 日报
- UPDATE a SET OtherLoginAccount = b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #Other
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
-
- UPDATE a SET OtherLoginCount = b.cnt
- FROM Personreport a ,(
- SELECT COUNT(1) cnt,ProvinceID FROM #Other
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --频次 日报 begin-------------------------------
- INSERT INTO #Rate
- SELECT ProvinceID, Rate, Count(1) Cnt FROM (
- SELECT PamainID, ProvinceID, COUNT(1) Rate
- FROM #t2
- GROUP BY PamainID, ProvinceID
- ) a
- GROUP BY ProvinceId, Rate
- UPDATE a SET Rate1 = b.cnt
- FROM Personreport a ,#Rate b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate AND b.RateTmp=1
- UPDATE a SET Rate2 = b.cnt
- FROM Personreport a ,#Rate b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate AND b.RateTmp=2
- UPDATE a SET Rate3 = b.cnt
- FROM Personreport a ,#Rate b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate AND b.RateTmp=3
- UPDATE a SET Rate4 = b.cnt
- FROM Personreport a ,#Rate b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate AND b.RateTmp=4
- UPDATE a SET Rate5 = b.cnt
- FROM Personreport a ,#Rate b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate AND b.RateTmp=5
- UPDATE a SET Rate6 = b.cnt
- FROM Personreport a ,#Rate b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate AND b.RateTmp=6
- UPDATE a SET Rate7 = b.cnt
- FROM Personreport a ,#Rate b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate AND b.RateTmp=7
- UPDATE a SET Rate8 = b.cnt
- FROM Personreport a ,#Rate b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate AND b.RateTmp=8
- UPDATE a SET Rate9 = b.cnt
- FROM Personreport a ,#Rate b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate AND b.RateTmp BETWEEN 9 AND 14
- UPDATE a SET Rate15 = b.cnt
- FROM Personreport a ,#Rate b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate AND b.RateTmp BETWEEN 15 AND 25
- UPDATE a SET Rate15 = b.cnt
- FROM Personreport a ,#Rate b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate AND b.RateTmp>25
- --频次 日报 end-------------------------------
- --未完善简历的账号数量 赋值 月报
- UPDATE a SET a.LoginNoPerfectAccount=b.cnt
- FROM Personreport a ,(SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #t3 GROUP BY ProvinceID) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --未完善账号的登录次数 月报
- UPDATE a SET a.LoginNoPerfectCount=b.cnt
- FROM Personreport a ,(SELECT COUNT(PaMainID) cnt,ProvinceID FROM #t3 GROUP BY ProvinceID) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --完善简历的账号数量 赋值 月报
- UPDATE a SET a.LoginPerfectAccount=b.cnt
- FROM Personreport a ,(SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #t4 GROUP BY ProvinceID) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --完善简历的账号登陆次数 赋值 月报
- UPDATE a SET a.LoginPerfectCount=b.cnt
- FROM Personreport a ,(SELECT COUNT(PaMainID) cnt,ProvinceID FROM #t4 GROUP BY ProvinceID) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --收到面试通知的账号数量 月报
- UPDATE a SET a.InterviewAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #InterviewMonth
- WHERE PaMainID IN (SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --收到面试通知的条数 月报
- UPDATE a SET a.InterviewCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(*) cnt,ProvinceID FROM #InterviewMonth
- WHERE PaMainID in(SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND a.TypeID = @i AND a.ReportDate = @ReportDateMonth
- --收到面试通知且已查看账号数量 月报
- UPDATE a SET a.InterviewViewAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #InterviewMonth
- WHERE (ViewDate BETWEEN @ReportBeginMonth AND @ReportEndMonth )
- AND PaMainID IN(SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --清空临时表 #TmpInterview
- TRUNCATE TABLE #TmpInterview
- --得到未查看的账号信息
- INSERT INTO #TmpInterview SELECT * FROM #InterviewMonth
- DELETE FROM #TmpInterview WHERE PaMainID IN (Select PaMainID FROM #InterviewMonth WHERE ViewDate BETWEEN @ReportBeginDay AND @ReportEndDay)
- --收到面试通知且未查看账号数量 月报
- UPDATE a SET a.InterviewNoViewAccount = b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #TmpInterview
- WHERE (ViewDate IS NULL )
- AND PaMainID IN(SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
-
- --收到面试通知且已查看的条数 月报
- UPDATE a SET a.InterviewViewCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #InterviewMonth
- WHERE (ViewDate BETWEEN @ReportBeginMonth AND @ReportEndMonth )
- AND PaMainID IN(SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --收到面试通知且未查看的条数 月报
- UPDATE a SET a.InterviewNoViewCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #InterviewMonth
- WHERE (ViewDate IS NULL )
- AND PaMainID IN(SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --留言的账号数量 月报
- UPDATE a SET a.MessageAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #t4
- WHERE PaMainID IN ( SELECT PamainID FROM #MessageMonth )
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --留言的条数 月报
- UPDATE a SET a.MessageCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #MessageMonth
- WHERE PaMainID IN ( SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --收藏职位的账号数量 月报
- UPDATE a SET a.FavoriteAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #t4
- WHERE PaMainID IN ( SELECT PamainID FROM #FavorateMonth )
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --收藏职位的条数 月报
- UPDATE a SET a.FavoriteCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #FavorateMonth
- WHERE PaMainID IN ( SELECT PamainID FROM #t4 )
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --申请职位的账号数量 月报
- UPDATE a SET a.ApplyAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #ApplyMonth
- WHERE PaMainID IN ( SELECT PamainID FROM #t4 )
- GROUP BY ProvinceID
- )b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --申请职位的条数 月报
- UPDATE a SET a.ApplyCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #ApplyMonth
- WHERE PaMainID IN ( SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --收到应聘邀请的账号数量 月报
- UPDATE a SET a.IntentionAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #IntentionMonth
- WHERE PaMainID IN (SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --收到应聘邀请的条数 月报
- UPDATE a SET a.IntentionCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(*) cnt,ProvinceID FROM #IntentionMonth
- WHERE PaMainID in(SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND a.TypeID = @i AND a.ReportDate = @ReportDateMonth
- --收到应聘邀请且已查看账号数量 月报
- UPDATE a SET a.IntentionViewAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #IntentionMonth
- WHERE (ReplyDate BETWEEN @ReportBeginMonth AND @ReportEndMonth )
- AND PaMainID IN(SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --清空临时表 #TmpIntention
- TRUNCATE TABLE #TmpIntention
- --得到未查看的账号信息
- INSERT INTO #TmpIntention SELECT * FROM #IntentionMonth
- DELETE FROM #TmpIntention WHERE PaMainID IN (Select PaMainID FROM #IntentionMonth WHERE ReplyDate BETWEEN @ReportBeginDay AND @ReportEndDay)
- --收到应聘邀请且未查看账号数量 月报
- UPDATE a SET a.IntentionNoViewAccount = b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #TmpIntention
- WHERE (ReplyDate IS NULL )
- AND PaMainID IN(SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
-
- --收到应聘邀请且已查看的条数 月报
- UPDATE a SET a.IntentionViewCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #IntentionMonth
- WHERE (ReplyDate BETWEEN @ReportBeginMonth AND @ReportEndMonth)
- AND PaMainID IN(SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --收到应聘邀请且未查看的条数 月报
- UPDATE a SET a.IntentionNoViewCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #IntentionMonth
- WHERE (ReplyDate IS NULL )
- AND PaMainID IN(SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
-
- --刷新简历的账号数量 @RefreshAccount 月报
- UPDATE a SET a.RefreshAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #RefreshMonth
- WHERE PaMainID IN ( SELECT PamainID FROM #t4 )
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --刷新简历的次数 月报
- UPDATE a SET a.RefreshCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #RefreshMonth
- WHERE PaMainID IN ( SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --临时表赋值
- INSERT INTO #OtherMonth SELECT * FROM #t4
- DELETE FROM #OtherMonth
- WHERE PaMainID IN ( SELECT PamainID FROM #InterviewMonth)
- OR PaMainID IN ( SELECT PamainID FROM #MessageMonth)
- OR PaMainID IN ( SELECT PamainID FROM #FavorateMonth)
- OR PaMainID IN ( SELECT PamainID FROM #ApplyMonth)
- OR PaMainID IN ( SELECT PamainID FROM #IntentionMonth)
- OR PaMainID IN ( SELECT PamainID FROM #RefreshMonth)
- --其他账号数量、登录次数 月报
- UPDATE a SET OtherLoginAccount = b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #OtherMonth
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
-
- UPDATE a SET OtherLoginCount = b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #OtherMonth
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --频次 月报 begin-------------------------------
- INSERT INTO #RateMonth
- SELECT ProvinceID, Rate, Count(1) Cnt FROM (
- SELECT PamainID, ProvinceID, COUNT(1) Rate
- FROM #t4
- GROUP BY PamainID, ProvinceID
- ) a
- GROUP BY ProvinceId, Rate
- UPDATE a SET Rate1 = b.cnt
- FROM Personreport a ,#RateMonth b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth AND b.RateTmp=1
- UPDATE a SET Rate2 = b.cnt
- FROM Personreport a ,#RateMonth b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth AND b.RateTmp=2
- UPDATE a SET Rate3 = b.cnt
- FROM Personreport a ,#RateMonth b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth AND b.RateTmp=3
- UPDATE a SET Rate4 = b.cnt
- FROM Personreport a ,#RateMonth b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth AND b.RateTmp=4
- UPDATE a SET Rate5 = b.cnt
- FROM Personreport a ,#RateMonth b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth AND b.RateTmp=5
- UPDATE a SET Rate6 = b.cnt
- FROM Personreport a ,#RateMonth b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth AND b.RateTmp=6
- UPDATE a SET Rate7 = b.cnt
- FROM Personreport a ,#RateMonth b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth AND b.RateTmp=7
- UPDATE a SET Rate8 = b.cnt
- FROM Personreport a ,#RateMonth b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth AND b.RateTmp=8
- UPDATE a SET Rate9 = b.cnt
- FROM Personreport a ,#RateMonth b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth AND b.RateTmp BETWEEN 9 AND 14
- UPDATE a SET Rate15 = b.cnt
- FROM Personreport a ,#RateMonth b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth AND b.RateTmp BETWEEN 15 AND 25
- UPDATE a SET Rate15 = b.cnt
- FROM Personreport a ,#RateMonth b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth AND b.RateTmp >25
- --清空临时表
- TRUNCATE TABLE #T1
- TRUNCATE TABLE #T2
- TRUNCATE TABLE #T3
- TRUNCATE TABLE #T4
- TRUNCATE TABLE #Other
- TRUNCATE TABLE #OtherMonth
- TRUNCATE TABLE #Rate
- TRUNCATE TABLE #RateMonth
- TRUNCATE TABLE #TmpInterview
- TRUNCATE TABLE #TmpIntention
- SET @i = @i + 1
- END
- DROP TABLE #Interview
- DROP TABLE #Message
- DROP TABLE #Favorate
- DROP TABLE #Apply
- DROP TABLE #Intention
- DROP TABLE #Refresh
- DROP TABLE #InterviewMonth
- DROP TABLE #MessageMonth
- DROP TABLE #FavorateMonth
- DROP TABLE #ApplyMonth
- DROP TABLE #IntentionMonth
- DROP TABLE #RefreshMonth
- DROP TABLE #Other
- DROP TABLE #OtherMonth
- DROP TABLE #Rate
- DROP TABLE #RateMonth
- END
- GO
- /****** Object: StoredProcedure [dbo].[procPersonReportInsertTemp1110] Script Date: 2018/12/13 19:11:36 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- -- =============================================
- -- 创建人: Nick
- -- 日期: 2013-11-12
- -- 描述: 生成网站数据统计数据
- -- =============================================
- CREATE PROCEDURE [dbo].[procPersonReportInsertTemp1110]
- (
- @d int
- )
- AS
- BEGIN
- DECLARE @ReportBeginDay VARCHAR(30),@ReportBeginMonth VARCHAR(30),@ReportEndDay VARCHAR(30),
- @ReportEndMonth VARCHAR(30),@ReportDate VARCHAR(8),@ReportDateMonth VARCHAR(8),@Now DATETIME--统计日期
- DECLARE @i INT ,@StrWhere VARCHAR(500), @Sql VARCHAR(1000),@isHaveMonthData int
-
- --统计日期赋值
- SET @Now = GETDATE() - @d
- --SET @Now = '2013-09-03'
- SET @ReportBeginDay = CONVERT(varchar(40),DATEADD(day,-1,@Now), 23)
- SET @ReportEndDay = CONVERT(varchar(30),@Now, 23)
- SET @ReportBeginMonth = CONVERT(varchar(30),@NOW-1 - DAY(@NOW-1) + 1,23)
- SET @ReportEndMonth = CONVERT(varchar(30),DATEADD(MONTH, 1,@ReportBeginMonth),23)
- SET @ReportDate = CONVERT(varchar(30),DATEADD(day,-1,@Now), 112)
- SET @ReportDateMonth = SUBSTRING(@ReportDate,0,7)
-
- --删除当天日统计数据
- DELETE FROM PersonReport WHERE ReportDate = @ReportDate
- DECLARE @ProvinceID int ,@tmp int --临时变量,用来保存省份编号
- --判断是否已存在月份数据
- IF EXISTS(SELECT 'x' FROM PersonReport WITH(NOLOCK) WHERE ReportDate = @ReportDateMonth)
- BEGIN
- SET @isHaveMonthData = 1 --已经存
- END
- ELSE
- BEGIN
- SET @isHaveMonthData = 0 --不存在
- END
- --按照省份、状态 插入空数据
- DECLARE Province_curr CURSOR FOR --申明游标
- SELECT ID FROM DcProvince --查询省份编号
- OPEN Province_curr --打开游标
- FETCH NEXT FROM Province_curr into @ProvinceID --开始循环游标变量
- WHILE(@@fetch_status=0)
- BEGIN
- SET @i = 0
- --================类型条件赋值============================================
- WHILE @i<11
- BEGIN
- --插入日报
- INSERT INTO PersonReport (ReportDate,ProvinceID,TypeID)
- VALUES (@ReportDate,@ProvinceID,@i)
- IF(@isHaveMonthData = 0)
- BEGIN
- --插入月报
- INSERT INTO PersonReport (ReportDate,ProvinceID,TypeID)
- VALUES (@ReportDateMonth,@ProvinceID,@i)
- END
- SET @i = @i + 1
- END
- FETCH NEXT FROM Province_curr into @ProvinceID --开始循环游标变量
- END
- CLOSE Province_curr--关闭游标
- DEALLOCATE Province_curr --释放游标
- --================创建临时表============================================
- CREATE TABLE #t1 -- 临时表 #t1 登陆过且未完善的pamainid 日报
- (
- PamainID int,
- ProvinceID int
- )
- CREATE TABLE #t2 -- 临时表 #t2 登陆过且完善的pamainid 日报
- (
- PamainID int ,
- ProvinceID int
- )
- CREATE TABLE #t3 -- 临时表 #t3 登陆过且未完善的pamainid 月报
- (
- PamainID int ,
- ProvinceID int
- )
- CREATE TABLE #t4 -- 临时表 #t4 登陆过且完善的pamainid 月报
- (
- PamainID int ,
- ProvinceID int
- )
- CREATE TABLE #Interview -- 临时表 #Interview 收到面试通知的账号 日报
- (
- PamainID int,
- Adddate DateTime,
- ViewDate DateTime,
- ProvinceID int
- )
- CREATE TABLE #TmpInterview -- 临时表 #TmpInterview
- (
- PamainID int,
- Adddate DateTime,
- ViewDate DateTime,
- ProvinceID int
- )
- CREATE TABLE #Message -- 临时表 #Message 收到留言的账号 日报
- (
- PamainID int,
- ProvinceID int
- )
- CREATE TABLE #Favorate -- 临时表 Favorate 收藏职位的账号 日报
- (
- PamainID int,
- ProvinceID int
- )
- CREATE TABLE #Apply -- 临时表 #Apply 申请职位的账号 日报
- (
- PamainID int,
- ProvinceID int
- )
- CREATE TABLE #Intention -- 临时表 #Intention 收到应聘邀请的账号 日报
- (
- PamainID int,
- ReplyDate DateTime,
- ProvinceID int
- )
- CREATE TABLE #TmpIntention -- 临时表 #TmpIntention
- (
- PamainID int,
- ReplyDate DateTime,
- ProvinceID int
- )
- CREATE TABLE #Refresh -- 临时表 #Refresh 刷新简历的账号 日报
- (
- PamainID int,
- ProvinceID int
- )
- CREATE TABLE #Other -- 临时表 #Other
- (
- PamainID int,
- ProvinceID int
- )
- CREATE TABLE #Rate -- 临时表 #Rate 频次
- (
- ProvinceID int,
- RateTmp int,
- Cnt int
- )
- CREATE TABLE #InterviewMonth -- 临时表 #InterviewMonth 收到面试通知的账号 月报
- (
- PamainID int,
- Adddate DateTime,
- ViewDate DateTime,
- ProvinceID int
- )
- CREATE TABLE #MessageMonth -- 临时表 #MessageMonth 收到留言的账号 月报
- (
- PamainID int,
- ProvinceID int
- )
- CREATE TABLE #FavorateMonth -- 临时表 FavorateMonth 收藏职位的账号 月报
- (
- PamainID int,
- ProvinceID int
- )
- CREATE TABLE #ApplyMonth -- 临时表 #ApplyMonth 申请职位的账号 月报
- (
- PamainID int,
- ProvinceID int
- )
- CREATE TABLE #IntentionMonth -- 临时表 #IntentionMonth 收到应聘邀请的账号 月报
- (
- PamainID int,
- ReplyDate DateTime,
- ProvinceID int
- )
- CREATE TABLE #RefreshMonth -- 临时表 #RefreshMonth 刷新简历的账号 月报
- (
- PamainID int,
- ProvinceID int
- )
- CREATE TABLE #OtherMonth -- 临时表 #OtherMonth
- (
- PamainID int,
- ProvinceID int
- )
- CREATE TABLE #RateMonth -- 临时表 #RateMonth 频次
- (
- ProvinceID int,
- RateTmp int,
- Cnt int
- )
- --将收到面试通知的账号放入临时表 日报
- INSERT INTO #Interview
- SELECT b.PamainID,a.Adddate,a.ViewDate,c.dcProvinceID
- FROM exInterView a,CvMain b,PaMain c
- WHERE (a.AddDate BETWEEN @ReportBeginDay AND @ReportEndDay )
- AND a.CvMainID = b.ID
- AND b.PamainID = c.ID
- --将发送留言的账号放入临时表 日报
- INSERT INTO #Message
- SELECT b.PamainID,c.dcProvinceID
- FROM exMessagep2c a,CvMain b,PaMain c
- WHERE (a.AddDate BETWEEN @ReportBeginDay AND @ReportEndDay )
- AND a.CvMainID = b.ID
- AND b.PamainID = c.ID
- --将收藏职位的账号信息放入临时表 日报
- INSERT INTO #Favorate
- SELECT a.PamainID,b.dcProvinceID
- FROM paFavorate a,PaMain b
- WHERE (a.AddDate BETWEEN @ReportBeginDay AND @ReportEndDay )
- AND a.PamainID = b.ID
- --将申请职位的账号放入临时表 日报
- INSERT INTO #Apply
- SELECT b.PamainID,c.dcProvinceID
- FROM exJobApply a,CvMain b,PaMain c
- WHERE (a.AddDate BETWEEN @ReportBeginDay AND @ReportEndDay )
- AND a.CvMainID = b.ID
- AND b.PamainID = c.ID
- --将收到应聘邀请的账号放入临时表 日报
- INSERT INTO #Intention
- SELECT b.PamainID,a.ReplyDate,c.dcProvinceID
- FROM caCvIntention a,CvMain b,PaMain c
- WHERE (a.AddDate BETWEEN @ReportBeginDay AND @ReportEndDay )
- AND a.CvMainID = b.ID
- AND b.PamainID = c.ID
- --将刷新简历的账号放入临时表 日报
- INSERT INTO #Refresh
- SELECT a.PamainID,b.dcProvinceID FROM CvMain a,PaMain b
- WHERE (RefreshDate BETWEEN @ReportBeginDay AND @ReportEndDay )
- AND a.PamainID = b.ID
- --将收到面试通知的账号放入临时表 月报
- INSERT INTO #InterviewMonth
- SELECT b.PamainID,a.Adddate,a.ViewDate,c.dcProvinceID
- FROM exInterView a,CvMain b,PaMain c
- WHERE (a.AddDate BETWEEN @ReportBeginMonth AND @ReportEndMonth )
- AND a.CvMainID = b.ID
- AND b.PamainID = c.ID
- --将发送留言的账号放入临时表 月报
- INSERT INTO #MessageMonth
- SELECT b.PamainID,c.dcProvinceID
- FROM exMessagep2c a,CvMain b,PaMain c
- WHERE (a.AddDate BETWEEN @ReportBeginMonth AND @ReportEndMonth )
- AND a.CvMainID = b.ID
- AND b.PamainID = c.ID
- --将收藏职位的账号信息放入临时表 月报
- INSERT INTO #FavorateMonth
- SELECT a.PamainID,b.dcProvinceID
- FROM paFavorate a,PaMain b
- WHERE (a.AddDate BETWEEN @ReportBeginMonth AND @ReportEndMonth )
- AND a.PamainID = b.ID
- --将申请职位的账号放入临时表 月报
- INSERT INTO #ApplyMonth
- SELECT b.PamainID,c.dcProvinceID
- FROM exJobApply a,CvMain b,PaMain c
- WHERE (a.AddDate BETWEEN @ReportBeginMonth AND @ReportEndMonth )
- AND a.CvMainID = b.ID
- AND b.PamainID = c.ID
- --将收到应聘邀请的账号放入临时表 月报
- INSERT INTO #IntentionMonth
- SELECT b.PamainID,a.ReplyDate,c.dcProvinceID
- FROM caCvIntention a,CvMain b,PaMain c
- WHERE (a.AddDate BETWEEN @ReportBeginMonth AND @ReportEndMonth )
- AND a.CvMainID = b.ID
- AND b.PamainID = c.ID
- --将刷新简历的账号放入临时表 日月报
- INSERT INTO #RefreshMonth
- SELECT a.PamainID,b.dcProvinceID FROM CvMain a,PaMain b
- WHERE (RefreshDate BETWEEN @ReportBeginMonth AND @ReportEndMonth )
- AND a.PamainID = b.ID
- SET @i = 0
- WHILE @i<11
- BEGIN
- IF @i = 1 --邮件推广
- BEGIN
- SET @StrWhere = ' AND (b.RegisterMode = 1 or b.RegisterMode = 11) '
- END
- ELSE IF @i=2 --招聘会推广
- BEGIN
- SET @StrWhere = ' AND b.RegisterMode=12 '
- END
- ELSE IF @i=3 --电话推广
- BEGIN
- SET @StrWhere = ' AND b.RegisterMode=13 '
- END
- ELSE IF @i=4 --短信推广
- BEGIN
- SET @StrWhere = ' AND b.RegisterMode=14 '
- END
- ELSE IF @i=5 --本人注册
- BEGIN
- SET @StrWhere = ' AND b.RegisterMode=0'
- END
- ELSE IF @i=6 --公开
- BEGIN
- SET @StrWhere = ' AND IscvHidden <> 1 '
- END
- ELSE IF @i=7 --隐藏
- BEGIN
- SET @StrWhere = ' AND IscvHidden = 1 '
- END
- ELSE IF @i=8 --手机认证
- BEGIN
- SET @StrWhere = ' AND MobileVerifyDate IS NOT NULL '
- END
- ELSE IF @i=9 --邮箱认证
- BEGIN
- SET @StrWhere = ' AND EmailVerifyDate IS NOT NULL '
- END
- ELSE IF @i=10 --未认证
- BEGIN
- SET @StrWhere = ' AND (MobileVerifyDate IS NULL AND EmailVerifyDate IS NULL) '
- END
- ELSE
- BEGIN --全部
- SET @StrWhere = ''
- END
- --将登陆过且未完善的pamainid放入临时表 #t1 日报
- IF(@i=6 OR @i=7)
- BEGIN
- SET @Sql = 'SELECT a.PaMainID,b.dcProvinceID ProvinceID FROM PaLoginLog a,PaMain b
- WHERE (a.AddDate BETWEEN '''+@ReportBeginDay+''' AND '''+@ReportEndDay+''' )
- AND a.PamainID = b.ID
- AND a.PamainID IN(
- SELECT PamainID FROM CvMain WHERE CvLevel NOT LIKE ''1111_1%'' AND Attachment is null
- '+@StrWhere+'
- )'
- INSERT INTO #t1 EXEC(@Sql)
- print (@Sql)
- --将有完善简历的账户删除
- DELETE FROM #t1 WHERE PamainID IN (SELECT PamainID FROM CvMain WHERE CvLevel LIKE '1111_1%' or Attachment <>'')
- IF @i=7
- BEGIN
- --将公开的简历删除
- DELETE FROM #t1 WHERE PamainID IN (SELECT PamainID FROM CvMain WHERE IscvHidden <> 1)
- END
- --将登陆过且完善的pamainid放入临时表 #t2 日报
- SET @Sql = 'SELECT a.PaMainID,b.dcProvinceID ProvinceID FROM PaLoginLog a,PaMain b
- WHERE (a.AddDate BETWEEN '''+@ReportBeginDay+''' AND '''+@ReportEndDay+''' )
- AND a.PamainID = b.ID
- AND a.PaMainID IN (SELECT PamainID FROM CvMain WHERE (CvLevel LIKE ''1111_1%'' or Attachment <>'''') '+@StrWhere+')
- '
- INSERT INTO #t2 EXEC(@Sql)
- IF @i=7
- BEGIN
- --将公开的简历删除
- DELETE FROM #t2 WHERE PamainID IN (SELECT PamainID FROM CvMain WHERE IscvHidden <> 1)
- END
- --将登陆过且未完善的pamainid放入临时表 #t3 月报
- SET @Sql = 'SELECT a.PaMainID,b.dcProvinceID ProvinceID FROM PaLoginLog a,PaMain b
- WHERE (a.AddDate BETWEEN '''+@ReportBeginMonth+''' AND '''+@ReportEndMonth+''' )
- AND a.PamainID = b.ID
- AND a.PaMainID IN (SELECT PamainID FROM CvMain WHERE CvLevel NOT LIKE ''1111_1%'' AND Attachment is null '+@StrWhere+')
- '
- INSERT INTO #t3 EXEC(@Sql)
- --将有完善简历的账户删除
- DELETE FROM #t3 WHERE PamainID IN (SELECT PamainID FROM CvMain WHERE CvLevel LIKE '1111_1%' or Attachment <>'')
- IF @i=7
- BEGIN
- --将公开的简历删除
- DELETE FROM #t3 WHERE PamainID IN (SELECT PamainID FROM CvMain WHERE IscvHidden <> 1)
- END
- --将登陆过且完善的pamainid放入临时表 #t4 月报
- SET @Sql = 'SELECT a.PaMainID,b.dcProvinceID ProvinceID FROM PaLoginLog a,PaMain b
- WHERE (a.AddDate BETWEEN '''+@ReportBeginMonth+''' AND '''+@ReportEndMonth+''' )
- AND a.PamainID = b.ID
- AND a.PaMainID IN (SELECT PamainID FROM CvMain WHERE (CvLevel LIKE ''1111_1%'' or Attachment <>'''') '+@StrWhere+')
- '
- INSERT INTO #t4 EXEC(@Sql)
- IF @i=7
- BEGIN
- --将公开的简历删除
- DELETE FROM #t4 WHERE PamainID IN (SELECT PamainID FROM CvMain WHERE IscvHidden <> 1)
- END
- END
- ELSE
- BEGIN
- SET @Sql = 'SELECT a.PaMainID,b.dcProvinceID ProvinceID FROM PaLoginLog a,PaMain b
- WHERE (a.AddDate BETWEEN '''+@ReportBeginDay+''' AND '''+@ReportEndDay+''' )
- AND a.PamainID = b.ID
- AND a.PamainID IN(SELECT PamainID FROM CvMain WHERE CvLevel NOT LIKE ''1111_1%'' AND Attachment is null)
- ' + @StrWhere
- INSERT INTO #t1 EXEC(@Sql)
- --将登陆过且完善的pamainid放入临时表 #t2 日报
- SET @Sql = 'SELECT a.PaMainID,b.dcProvinceID ProvinceID FROM PaLoginLog a,PaMain b
- WHERE (a.AddDate BETWEEN '''+@ReportBeginDay+''' AND '''+@ReportEndDay+''' )
- AND a.PamainID = b.ID
- AND a.PaMainID IN (SELECT PamainID FROM CvMain WHERE CvLevel LIKE ''1111_1%'' or Attachment <>'''')
- ' + @StrWhere
- INSERT INTO #t2 EXEC(@Sql)
- --将登陆过且未完善的pamainid放入临时表 #t3 月报
- SET @Sql = 'SELECT a.PaMainID,b.dcProvinceID ProvinceID FROM PaLoginLog a,PaMain b
- WHERE (a.AddDate BETWEEN '''+@ReportBeginMonth+''' AND '''+@ReportEndMonth+''' )
- AND a.PamainID = b.ID
- AND a.PaMainID IN (SELECT PamainID FROM CvMain WHERE CvLevel NOT LIKE ''1111_1%'' AND Attachment is null)
- ' + @StrWhere
- INSERT INTO #t3 EXEC(@Sql)
- --将登陆过且完善的pamainid放入临时表 #t4 月报
- SET @Sql = 'SELECT a.PaMainID,b.dcProvinceID ProvinceID FROM PaLoginLog a,PaMain b
- WHERE (a.AddDate BETWEEN '''+@ReportBeginMonth+''' AND '''+@ReportEndMonth+''' )
- AND a.PamainID = b.ID
- AND a.PaMainID IN (SELECT PamainID FROM CvMain WHERE CvLevel LIKE ''1111_1%'' or Attachment <>'''')
- ' + @StrWhere
- INSERT INTO #t4 EXEC(@Sql)
- END
-
- --未完善简历的账号数量 赋值 日报
- UPDATE a SET a.LoginNoPerfectAccount=b.cnt
- FROM Personreport a ,(SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #t1 GROUP BY ProvinceID) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --未完善账号的登录次数 日报
- UPDATE a SET a.LoginNoPerfectCount=b.cnt
- FROM Personreport a ,(SELECT COUNT(PaMainID) cnt,ProvinceID FROM #t1 GROUP BY ProvinceID) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --完善简历的账号数量 赋值 日报
- UPDATE a SET a.LoginPerfectAccount=b.cnt
- FROM Personreport a ,(SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #t2 GROUP BY ProvinceID) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --完善简历的账号登陆次数 赋值 日报
- UPDATE a SET a.LoginPerfectCount=b.cnt
- FROM Personreport a ,(SELECT COUNT(PaMainID) cnt,ProvinceID FROM #t2 GROUP BY ProvinceID) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --收到面试通知的账号数量 日报
- UPDATE a SET a.InterviewAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #Interview
- WHERE PaMainID IN (SELECT PamainID FROM #t2)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --收到面试通知的条数 日报
- UPDATE a SET a.InterviewCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(*) cnt,ProvinceID FROM #Interview
- WHERE PaMainID in(SELECT PamainID FROM #t2)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND a.TypeID = @i AND a.ReportDate = @ReportDate
- --收到面试通知且已查看账号数量 日报
- UPDATE a SET a.InterviewViewAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #Interview
- WHERE (ViewDate BETWEEN @ReportBeginDay AND @ReportEndDay )
- AND PaMainID IN(SELECT PamainID FROM #t2)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --得到未查看的账号信息
- INSERT INTO #TmpInterview SELECT * FROM #Interview
- DELETE FROM #TmpInterview WHERE PaMainID IN (Select PaMainID FROM #Interview WHERE ViewDate BETWEEN @ReportBeginDay AND @ReportEndDay)
- --收到面试通知且未查看账号数量 日报
- UPDATE a SET a.InterviewNoViewAccount = b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #TmpInterview
- WHERE (ViewDate IS NULL )
- AND PaMainID IN(SELECT PamainID FROM #t2)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
-
- --收到面试通知且已查看的条数 日报
- UPDATE a SET a.InterviewViewCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #Interview
- WHERE (ViewDate BETWEEN @ReportBeginDay AND @ReportEndDay )
- AND PaMainID IN(SELECT PamainID FROM #t2)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --收到面试通知且未查看的条数 日报
- UPDATE a SET a.InterviewNoViewCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #Interview
- WHERE (ViewDate IS NULL )
- AND PaMainID IN(SELECT PamainID FROM #t2)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --留言的账号数量 日报
- UPDATE a SET a.MessageAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #t2
- WHERE PaMainID IN ( SELECT PamainID FROM #Message )
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --留言的条数 日报
- UPDATE a SET a.MessageCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #Message
- WHERE PaMainID IN ( SELECT PamainID FROM #t2 )
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --收藏职位的账号数量 日报
- UPDATE a SET a.FavoriteAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #t2
- WHERE PaMainID IN ( SELECT PamainID FROM #Favorate )
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --收藏职位的条数 日报
- UPDATE a SET a.FavoriteCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #Favorate
- WHERE PaMainID IN ( SELECT PamainID FROM #t2 )
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --申请职位的账号数量 日报
- UPDATE a SET a.ApplyAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #Apply
- WHERE PaMainID IN ( SELECT PamainID FROM #t2 )
- GROUP BY ProvinceID
- )b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --申请职位的条数 日报
- UPDATE a SET a.ApplyCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #Apply
- WHERE PaMainID IN ( SELECT PamainID FROM #t2 )
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --收到应聘邀请的账号数量 日报
- UPDATE a SET a.IntentionAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #Intention
- WHERE PaMainID IN (SELECT PamainID FROM #t2)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --收到应聘邀请的条数 日报
- UPDATE a SET a.IntentionCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(*) cnt,ProvinceID FROM #Intention
- WHERE PaMainID in(SELECT PamainID FROM #t2)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND a.TypeID = @i AND a.ReportDate = @ReportDate
- --收到应聘邀请且已查看账号数量 日报
- UPDATE a SET a.IntentionViewAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #Intention
- WHERE (ReplyDate BETWEEN @ReportBeginDay AND @ReportEndDay )
- AND PaMainID IN(SELECT PamainID FROM #t2)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --得到未查看的账号信息
- INSERT INTO #TmpIntention SELECT * FROM #Intention
- DELETE FROM #TmpIntention WHERE PaMainID IN (Select PaMainID FROM #Intention WHERE ReplyDate BETWEEN @ReportBeginDay AND @ReportEndDay)
- --收到应聘邀请且未查看账号数量 日报
- UPDATE a SET a.IntentionNoViewAccount = b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #TmpIntention
- WHERE (ReplyDate IS NULL )
- AND PaMainID IN(SELECT PamainID FROM #t2)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
-
- --收到应聘邀请且已查看的条数 日报
- UPDATE a SET a.IntentionViewCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #Intention
- WHERE (ReplyDate BETWEEN @ReportBeginDay AND @ReportEndDay )
- AND PaMainID IN(SELECT PamainID FROM #t2)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --收到应聘邀请且未查看的条数 日报
- UPDATE a SET a.IntentionNoViewCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #Intention
- WHERE (ReplyDate IS NULL )
- AND PaMainID IN(SELECT PamainID FROM #t2)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
-
- --刷新简历的账号数量 @RefreshAccount 日报
- UPDATE a SET a.RefreshAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #Refresh
- WHERE PaMainID IN ( SELECT PamainID FROM #t2 )
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --刷新简历的次数 日报
- UPDATE a SET a.RefreshCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #Refresh
- WHERE PaMainID IN ( SELECT PamainID FROM #t2 )
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --临时表赋值
- INSERT INTO #Other SELECT * FROM #t2
- DELETE FROM #Other
- WHERE PaMainID IN ( SELECT PamainID FROM #Interview)
- OR PaMainID IN ( SELECT PamainID FROM #Message)
- OR PaMainID IN ( SELECT PamainID FROM #Favorate)
- OR PaMainID IN ( SELECT PamainID FROM #Apply)
- OR PaMainID IN ( SELECT PamainID FROM #Intention)
- OR PaMainID IN ( SELECT PamainID FROM #Refresh )
- --其他账号数量、登录次数 日报
- UPDATE a SET OtherLoginAccount = b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #Other
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
-
- UPDATE a SET OtherLoginCount = b.cnt
- FROM Personreport a ,(
- SELECT COUNT(1) cnt,ProvinceID FROM #Other
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate
- --频次 日报 begin-------------------------------
- INSERT INTO #Rate
- SELECT ProvinceID, Rate, Count(1) Cnt FROM (
- SELECT PamainID, ProvinceID, COUNT(1) Rate
- FROM #t2
- GROUP BY PamainID, ProvinceID
- ) a
- GROUP BY ProvinceId, Rate
- UPDATE a SET Rate1 = b.cnt
- FROM Personreport a ,#Rate b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate AND b.RateTmp=1
- UPDATE a SET Rate2 = b.cnt
- FROM Personreport a ,#Rate b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate AND b.RateTmp=2
- UPDATE a SET Rate3 = b.cnt
- FROM Personreport a ,#Rate b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate AND b.RateTmp=3
- UPDATE a SET Rate4 = b.cnt
- FROM Personreport a ,#Rate b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate AND b.RateTmp=4
- UPDATE a SET Rate5 = b.cnt
- FROM Personreport a ,#Rate b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate AND b.RateTmp=5
- UPDATE a SET Rate6 = b.cnt
- FROM Personreport a ,#Rate b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate AND b.RateTmp=6
- UPDATE a SET Rate7 = b.cnt
- FROM Personreport a ,#Rate b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate AND b.RateTmp=7
- UPDATE a SET Rate8 = b.cnt
- FROM Personreport a ,#Rate b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate AND b.RateTmp=8
- UPDATE a SET Rate9 = b.cnt
- FROM Personreport a ,#Rate b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate AND b.RateTmp BETWEEN 9 AND 14
- UPDATE a SET Rate15 = b.cnt
- FROM Personreport a ,#Rate b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate AND b.RateTmp BETWEEN 15 AND 25
- UPDATE a SET Rate15 = b.cnt
- FROM Personreport a ,#Rate b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDate AND b.RateTmp>25
- --频次 日报 end-------------------------------
- --未完善简历的账号数量 赋值 月报
- UPDATE a SET a.LoginNoPerfectAccount=b.cnt
- FROM Personreport a ,(SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #t3 GROUP BY ProvinceID) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --未完善账号的登录次数 月报
- UPDATE a SET a.LoginNoPerfectCount=b.cnt
- FROM Personreport a ,(SELECT COUNT(PaMainID) cnt,ProvinceID FROM #t3 GROUP BY ProvinceID) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --完善简历的账号数量 赋值 月报
- UPDATE a SET a.LoginPerfectAccount=b.cnt
- FROM Personreport a ,(SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #t4 GROUP BY ProvinceID) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --完善简历的账号登陆次数 赋值 月报
- UPDATE a SET a.LoginPerfectCount=b.cnt
- FROM Personreport a ,(SELECT COUNT(PaMainID) cnt,ProvinceID FROM #t4 GROUP BY ProvinceID) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --收到面试通知的账号数量 月报
- UPDATE a SET a.InterviewAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #InterviewMonth
- WHERE PaMainID IN (SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --收到面试通知的条数 月报
- UPDATE a SET a.InterviewCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(*) cnt,ProvinceID FROM #InterviewMonth
- WHERE PaMainID in(SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND a.TypeID = @i AND a.ReportDate = @ReportDateMonth
- --收到面试通知且已查看账号数量 月报
- UPDATE a SET a.InterviewViewAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #InterviewMonth
- WHERE (ViewDate BETWEEN @ReportBeginMonth AND @ReportEndMonth )
- AND PaMainID IN(SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --清空临时表 #TmpInterview
- TRUNCATE TABLE #TmpInterview
- --得到未查看的账号信息
- INSERT INTO #TmpInterview SELECT * FROM #InterviewMonth
- DELETE FROM #TmpInterview WHERE PaMainID IN (Select PaMainID FROM #InterviewMonth WHERE ViewDate BETWEEN @ReportBeginDay AND @ReportEndDay)
- --收到面试通知且未查看账号数量 月报
- UPDATE a SET a.InterviewNoViewAccount = b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #TmpInterview
- WHERE (ViewDate IS NULL )
- AND PaMainID IN(SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
-
- --收到面试通知且已查看的条数 月报
- UPDATE a SET a.InterviewViewCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #InterviewMonth
- WHERE (ViewDate BETWEEN @ReportBeginMonth AND @ReportEndMonth )
- AND PaMainID IN(SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --收到面试通知且未查看的条数 月报
- UPDATE a SET a.InterviewNoViewCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #InterviewMonth
- WHERE (ViewDate IS NULL )
- AND PaMainID IN(SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --留言的账号数量 月报
- UPDATE a SET a.MessageAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #t4
- WHERE PaMainID IN ( SELECT PamainID FROM #MessageMonth )
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --留言的条数 月报
- UPDATE a SET a.MessageCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #MessageMonth
- WHERE PaMainID IN ( SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --收藏职位的账号数量 月报
- UPDATE a SET a.FavoriteAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #t4
- WHERE PaMainID IN ( SELECT PamainID FROM #FavorateMonth )
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --收藏职位的条数 月报
- UPDATE a SET a.FavoriteCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #FavorateMonth
- WHERE PaMainID IN ( SELECT PamainID FROM #t4 )
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --申请职位的账号数量 月报
- UPDATE a SET a.ApplyAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #ApplyMonth
- WHERE PaMainID IN ( SELECT PamainID FROM #t4 )
- GROUP BY ProvinceID
- )b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --申请职位的条数 月报
- UPDATE a SET a.ApplyCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #ApplyMonth
- WHERE PaMainID IN ( SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --收到应聘邀请的账号数量 月报
- UPDATE a SET a.IntentionAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #IntentionMonth
- WHERE PaMainID IN (SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --收到应聘邀请的条数 月报
- UPDATE a SET a.IntentionCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(*) cnt,ProvinceID FROM #IntentionMonth
- WHERE PaMainID in(SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND a.TypeID = @i AND a.ReportDate = @ReportDateMonth
- --收到应聘邀请且已查看账号数量 月报
- UPDATE a SET a.IntentionViewAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #IntentionMonth
- WHERE (ReplyDate BETWEEN @ReportBeginMonth AND @ReportEndMonth )
- AND PaMainID IN(SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --清空临时表 #TmpIntention
- TRUNCATE TABLE #TmpIntention
- --得到未查看的账号信息
- INSERT INTO #TmpIntention SELECT * FROM #IntentionMonth
- DELETE FROM #TmpIntention WHERE PaMainID IN (Select PaMainID FROM #IntentionMonth WHERE ReplyDate BETWEEN @ReportBeginDay AND @ReportEndDay)
- --收到应聘邀请且未查看账号数量 月报
- UPDATE a SET a.IntentionNoViewAccount = b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #TmpIntention
- WHERE (ReplyDate IS NULL )
- AND PaMainID IN(SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
-
- --收到应聘邀请且已查看的条数 月报
- UPDATE a SET a.IntentionViewCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #IntentionMonth
- WHERE (ReplyDate BETWEEN @ReportBeginMonth AND @ReportEndMonth)
- AND PaMainID IN(SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --收到应聘邀请且未查看的条数 月报
- UPDATE a SET a.IntentionNoViewCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #IntentionMonth
- WHERE (ReplyDate IS NULL )
- AND PaMainID IN(SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
-
- --刷新简历的账号数量 @RefreshAccount 月报
- UPDATE a SET a.RefreshAccount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #RefreshMonth
- WHERE PaMainID IN ( SELECT PamainID FROM #t4 )
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --刷新简历的次数 月报
- UPDATE a SET a.RefreshCount=b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #RefreshMonth
- WHERE PaMainID IN ( SELECT PamainID FROM #t4)
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --临时表赋值
- INSERT INTO #OtherMonth SELECT * FROM #t4
- DELETE FROM #OtherMonth
- WHERE PaMainID IN ( SELECT PamainID FROM #InterviewMonth)
- OR PaMainID IN ( SELECT PamainID FROM #MessageMonth)
- OR PaMainID IN ( SELECT PamainID FROM #FavorateMonth)
- OR PaMainID IN ( SELECT PamainID FROM #ApplyMonth)
- OR PaMainID IN ( SELECT PamainID FROM #IntentionMonth)
- OR PaMainID IN ( SELECT PamainID FROM #RefreshMonth)
- --其他账号数量、登录次数 月报
- UPDATE a SET OtherLoginAccount = b.cnt
- FROM Personreport a ,(
- SELECT COUNT(DISTINCT PaMainID) cnt,ProvinceID FROM #OtherMonth
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
-
- UPDATE a SET OtherLoginCount = b.cnt
- FROM Personreport a ,(
- SELECT COUNT(PaMainID) cnt,ProvinceID FROM #OtherMonth
- GROUP BY ProvinceID
- ) b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth
- --频次 月报 begin-------------------------------
- INSERT INTO #RateMonth
- SELECT ProvinceID, Rate, Count(1) Cnt FROM (
- SELECT PamainID, ProvinceID, COUNT(1) Rate
- FROM #t4
- GROUP BY PamainID, ProvinceID
- ) a
- GROUP BY ProvinceId, Rate
- UPDATE a SET Rate1 = b.cnt
- FROM Personreport a ,#RateMonth b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth AND b.RateTmp=1
- UPDATE a SET Rate2 = b.cnt
- FROM Personreport a ,#RateMonth b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth AND b.RateTmp=2
- UPDATE a SET Rate3 = b.cnt
- FROM Personreport a ,#RateMonth b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth AND b.RateTmp=3
- UPDATE a SET Rate4 = b.cnt
- FROM Personreport a ,#RateMonth b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth AND b.RateTmp=4
- UPDATE a SET Rate5 = b.cnt
- FROM Personreport a ,#RateMonth b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth AND b.RateTmp=5
- UPDATE a SET Rate6 = b.cnt
- FROM Personreport a ,#RateMonth b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth AND b.RateTmp=6
- UPDATE a SET Rate7 = b.cnt
- FROM Personreport a ,#RateMonth b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth AND b.RateTmp=7
- UPDATE a SET Rate8 = b.cnt
- FROM Personreport a ,#RateMonth b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth AND b.RateTmp=8
- UPDATE a SET Rate9 = b.cnt
- FROM Personreport a ,#RateMonth b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth AND b.RateTmp BETWEEN 9 AND 14
- UPDATE a SET Rate15 = b.cnt
- FROM Personreport a ,#RateMonth b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth AND b.RateTmp BETWEEN 15 AND 25
- UPDATE a SET Rate15 = b.cnt
- FROM Personreport a ,#RateMonth b
- WHERE a.ProvinceID = b.ProvinceID
- AND TypeID = @i AND ReportDate = @ReportDateMonth AND b.RateTmp >25
- --清空临时表
- TRUNCATE TABLE #T1
- TRUNCATE TABLE #T2
- TRUNCATE TABLE #T3
- TRUNCATE TABLE #T4
- TRUNCATE TABLE #Other
- TRUNCATE TABLE #OtherMonth
- TRUNCATE TABLE #Rate
- TRUNCATE TABLE #RateMonth
- TRUNCATE TABLE #TmpInterview
- TRUNCATE TABLE #TmpIntention
- SET @i = @i + 1
- END
- DROP TABLE #Interview
- DROP TABLE #Message
- DROP TABLE #Favorate
- DROP TABLE #Apply
- DROP TABLE #Intention
- DROP TABLE #Refresh
- DROP TABLE #InterviewMonth
- DROP TABLE #MessageMonth
- DROP TABLE #FavorateMonth
- DROP TABLE #ApplyMonth
- DROP TABLE #IntentionMonth
- DROP TABLE #RefreshMonth
- DROP TABLE #Other
- DROP TABLE #OtherMonth
- DROP TABLE #Rate
- DROP TABLE #RateMonth
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcPracticeJobSelect] Script Date: 2018/12/13 19:11:37 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.29
- --创建人:Nick
- --说明:获取最新实习职位
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcPracticeJobSelect]
- (
- @ProvinceID INT
- )
- AS
- BEGIN TRY
- SELECT *
- FROM PracticeJob WITH(NOLOCK)
- WHERE ProvinceId = @ProvinceID
- ORDER BY RowId
- END TRY
- BEGIN CATCH
- RETURN 0
- END CATCH
- GO
- /****** Object: StoredProcedure [dbo].[procPreColdcustomerSelect] Script Date: 2018/12/13 19:11:37 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --peter 2018-1-26
- --修改 :Alen 2018-10-23 添加58和齐鲁人才网分配数统计
- --修改:Sunshien 2018-11-16 修改推广人员
- CREATE PROCEDURE [dbo].[procPreColdcustomerSelect]
- (
- @isSpread INT
- )
- AS
- SET NOCOUNT ON
- BEGIN
- CREATE TABLE #t
- (
- Id INT IDENTITY(1, 1),
- sourceType INT,
- Total INT,--总数
- AllocateNumber INT,--已分配数量
- WaitAllocateNumber INT,--待分配数量
- LostNumber INT,--被抢注数量
- TodayTotal INT,--今日采集总数
- TodayAllocateNumber INT --今日已分配数量
- )
-
- CREATE TABLE #t1
- (
- Id INT IDENTITY(1, 1),
- ManagerUserId INT,
- zhilianNumber INT,
- wyNumber INT,
- dazhongNumber INT,
- ganjiNumber INT,
- xinshijiNumber INT,
- kongziNumber INT,
- yancaiNumber INT,
- qiluNumber INT,
- tongchengNumber INT
- )
-
- CREATE TABLE #t2
- (
- Id INT IDENTITY(1, 1),
- ManagerUserId INT,
- zhilianNumber INT,
- wyNumber INT,
- dazhongNumber INT,
- ganjiNumber INT,
- xinshijiNumber INT,
- kongziNumber INT,
- yancaiNumber INT,
- qiluNumber INT,
- tongchengNumber INT
- )
-
- INSERT INTO #t(sourceType,Total,AllocateNumber,WaitAllocateNumber,LostNumber,TodayTotal,TodayAllocateNumber)
- SELECT sourceType,
- SUM(case WHEN [state]!=2 THEN 1 ELSE 0 END),
- SUM(case WHEN [state]=1 THEN 1 ELSE 0 END),
- SUM(case WHEN [state]=0 THEN 1 ELSE 0 END),
- SUM(case WHEN [state]=2 THEN 1 ELSE 0 END),
- SUM(case WHEN (adddate>Convert(dateTime,Convert(char(10),getdate(),120),120) AND [state]!=2) THEN 1 ELSE 0 END),
- SUM(case WHEN (adddate>Convert(dateTime,Convert(char(10),getdate(),120),120) AND [state]=1 )THEN 1 ELSE 0 END)
- FROM preColdCustomer
- WHERE ISNULL(isSpread,0) = @isSpread
- GROUP BY sourceType
-
- IF @isSpread = 0
- BEGIN
- INSERT INTO #t1(ManagerUserId)
- select id from manageruser where status IN (1,2) AND deptid=42
- END
- ELSE
- BEGIN
- INSERT INTO #t1(ManagerUserId)
- select id from manageruser where status IN (1,2) AND deptid=15 --20181116Sunshien添加status=1
- END
- UPDATE #t1
- SET zhilianNumber=(SELECT sum(AllocateNumber) FROM ColdCustomerAllocateLog WHERE ManagerUserid=#t1.ManagerUserid AND sourceType=1),
- wyNumber=(SELECT sum(AllocateNumber) FROM ColdCustomerAllocateLog WHERE ManagerUserid=#t1.ManagerUserid AND sourceType=2),
- dazhongNumber=(SELECT sum(AllocateNumber) FROM ColdCustomerAllocateLog WHERE ManagerUserid=#t1.ManagerUserid AND sourceType=3),
- ganjiNumber=(SELECT sum(AllocateNumber) FROM ColdCustomerAllocateLog WHERE ManagerUserid=#t1.ManagerUserid AND sourceType=4),
- xinshijiNumber=(SELECT sum(AllocateNumber) FROM ColdCustomerAllocateLog WHERE ManagerUserid=#t1.ManagerUserid AND sourceType=5),
- kongziNumber=(SELECT sum(AllocateNumber) FROM ColdCustomerAllocateLog WHERE ManagerUserid=#t1.ManagerUserid AND sourceType=6),
- yancaiNumber=(SELECT sum(AllocateNumber) FROM ColdCustomerAllocateLog WHERE ManagerUserid=#t1.ManagerUserid AND sourceType=7),
- qiluNumber=(SELECT sum(AllocateNumber) FROM ColdCustomerAllocateLog WHERE ManagerUserid=#t1.ManagerUserid AND sourceType=8),
- tongchengNumber=(SELECT sum(AllocateNumber) FROM ColdCustomerAllocateLog WHERE ManagerUserid=#t1.ManagerUserid AND sourceType=9)
-
- IF @isSpread = 0
- BEGIN
- INSERT INTO #t2(ManagerUserId)
- select id from manageruser where status IN (1,2) AND deptid=42
- END
- ELSE
- BEGIN
- INSERT INTO #t2(ManagerUserId)
- select id from manageruser where status IN (1,2) AND deptid=15
- END
-
- UPDATE #t2
- SET zhilianNumber=(SELECT sum(AllocateNumber) FROM ColdCustomerAllocateLog WHERE ManagerUserid=#t2.ManagerUserid AND sourceType=1 AND addDate>Convert(dateTime,Convert(char(10),getdate(),120),120)),
- wyNumber=(SELECT sum(AllocateNumber) FROM ColdCustomerAllocateLog WHERE ManagerUserid=#t2.ManagerUserid AND sourceType=2 AND addDate>Convert(dateTime,Convert(char(10),getdate(),120),120)),
- dazhongNumber=(SELECT sum(AllocateNumber) FROM ColdCustomerAllocateLog WHERE ManagerUserid=#t2.ManagerUserid AND sourceType=3 AND addDate>Convert(dateTime,Convert(char(10),getdate(),120),120)),
- ganjiNumber=(SELECT sum(AllocateNumber) FROM ColdCustomerAllocateLog WHERE ManagerUserid=#t2.ManagerUserid AND sourceType=4 AND addDate>Convert(dateTime,Convert(char(10),getdate(),120),120)),
- xinshijiNumber=(SELECT sum(AllocateNumber) FROM ColdCustomerAllocateLog WHERE ManagerUserid=#t2.ManagerUserid AND sourceType=5 AND addDate>Convert(dateTime,Convert(char(10),getdate(),120),120)),
- kongziNumber=(SELECT sum(AllocateNumber) FROM ColdCustomerAllocateLog WHERE ManagerUserid=#t2.ManagerUserid AND sourceType=6 AND addDate>Convert(dateTime,Convert(char(10),getdate(),120) ,120)),
- yancaiNumber=(SELECT sum(AllocateNumber) FROM ColdCustomerAllocateLog WHERE ManagerUserid=#t2.ManagerUserid AND sourceType=7 AND addDate>Convert(dateTime,Convert(char(10),getdate(),120),120)),
- qiluNumber=(SELECT sum(AllocateNumber) FROM ColdCustomerAllocateLog WHERE ManagerUserid=#t2.ManagerUserid AND sourceType=8 AND addDate>Convert(dateTime,Convert(char(10),getdate(),120),120)),
- tongchengNumber=(SELECT sum(AllocateNumber) FROM ColdCustomerAllocateLog WHERE ManagerUserid=#t2.ManagerUserid AND sourceType=9 AND addDate>Convert(dateTime,Convert(char(10),getdate(),120),120))
-
- SELECT * FROM #t
- SELECT * FROM #t1
- SELECT * FROM #t2
- END
- SET NOCOUNT OFF
- GO
- /****** Object: StoredProcedure [dbo].[procProvinceSelect] Script Date: 2018/12/13 19:11:38 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.03
- --创建人:Nick
- --说明:获取省份信息
- --#####################################################
- CREATE PROCEDURE [dbo].[procProvinceSelect]
- AS
- BEGIN TRY
- Select *, (
- SELECT InternalIp
- FROM dcSubSite WITH(NOLOCK)
- WHERE dcSubSite.ID = dcProvince.ID) InternalIp,
- ( SELECT EmailUser
- FROM dcSubSite WITH(NOLOCK)
- WHERE dcSubSite.ID = dcProvince.ID
- ) EmailUser
- From dcProvince WITH(NOLOCK)
- ORDER BY ID
- END TRY
- BEGIN CATCH
- RETURN 0
- END CATCH
- GO
- /****** Object: StoredProcedure [dbo].[ProcPtGiftLogInsert] Script Date: 2018/12/13 19:11:38 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --sean 2014-5-12
- CREATE PROCEDURE [dbo].[ProcPtGiftLogInsert]
- (
- @AppointId INT,
- @Bi INT,
- @Ei INT,
- @Gift VARCHAR(40)
- )
- AS
- BEGIN
- IF EXISTS(SELECT 'x' FROM Marketdb..ptGiftLog WHERE ptWorkAppointId = @AppointId AND LookDate > '2010-1-1')
- RETURN
- DECLARE @I INT
- DECLARE @t AS TABLE(Id INT)
- SELECT @I = @Bi
- WHILE @I <= @Ei
- BEGIN
- INSERT @t SELECT @i
- SET @i = @i + 1
- END
- DELETE Marketdb..ptGiftLog WHERE ptWorkAppointId = @AppointId
- INSERT Marketdb..ptGiftLog SELECT @AppointId, NULL, 0, Id, NULL, NULL, NULL, NULL FROM @t ORDER BY NEWID()
- ------------------------------------
- DECLARE @Sql VARCHAR(MAX), @Gt VARCHAR(10), @GN VARCHAR(10)
- DECLARE @t1 AS TABLE(ID INT IDENTITY(1, 1), OneType VARCHAR(10), HasDone Bit)
- INSERT @t1(OneType, HasDone)
- SELECT a, 0 FROM MainDb.dbo.FnSplit(@Gift, ';')
- WHILE EXISTS(SELECT 'x' FROM @t1 WHERE HasDone = 0)
- BEGIN
- SELECT TOP 1 @I = Id, @Sql = OneType FROM @t1 WHERE HasDone = 0
- SELECT @Gt = LEFT(@Sql, CHARINDEX(',', @Sql) - 1),
- @Gn = RIGHT(@Sql, LEN(@SQL) - CHARINDEX(',', @Sql))
- UPDATE @t1 SET HasDone = 1 WHERE ID = @i
- SET @Sql = 'UPDATE MarketDb..ptGiftLog SET ptGiftTypeId = ' + @Gt + ' WHERE ID IN(SELECT TOP ' + @Gn + ' ID FROM MarketDb..ptGiftLog
- WHERE ptWorkAppointId = ' + LTRIM(STR(@AppointId)) + ' AND ptGiftTypeId = 0 ORDER BY NEWID())'
- --PRINT @SQL
- EXEC(@SQL)
- END
- END
- GO
- /****** Object: StoredProcedure [dbo].[procPtPutInCountUpdate] Script Date: 2018/12/13 19:11:38 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[procPtPutInCountUpdate]
- (
- @ptPutInPlaceID INT,
- @ptWorkAppointID INT,
- @CurrentNumber INT,
- @Type TINYINT
- )
- AS
- BEGIN
- DECLARE @OldNumber INT
- IF @Type = 0
- BEGIN
- SELECT @OldNumber = COUNT(*) FROM marketdb..ptPutIn WHERE ptPutInPlaceID = @ptPutInPlaceID
- DELETE FROM marketdb..ptPutIn WHERE ptPutInPlaceID = @ptPutInPlaceID
- END
- ELSE
- BEGIN
- SELECT @OldNumber = COUNT(*) FROM marketdb..ptPutInCheck WHERE ptPutInPlaceCheckID = @ptPutInPlaceID
- DELETE FROM marketdb..ptPutInCheck WHERE ptPutInPlaceCheckID = @ptPutInPlaceID
- END
- UPDATE marketdb..ptWorkAppoint SET CompleteNumber = ISNULL(CompleteNumber,0) - @OldNumber + @CurrentNumber WHERE ID = @ptWorkAppointID
- UPDATE marketdb..ptWorkAppoint SET DeliverySignDate = GETDATE() WHERE ID = @ptWorkAppointID AND DeliverySignDate IS NULL
- END
- GO
- /****** Object: StoredProcedure [dbo].[procPtPutInPlaceCheckSelect] Script Date: 2018/12/13 19:11:38 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[procPtPutInPlaceCheckSelect]
- (
- @ptWorkAppointID INT,
- @CheckStatus TINYINT,
- @KeyWord NVARCHAR(20),
- @Lng DECIMAL(8,5),
- @Lat DECIMAL(8,5)
- )
- AS
- BEGIN
- DECLARE @SQL VARCHAR(2000)
- SET @SQL = '
- SELECT
- a.ID,
- a.ptPutInPlaceID,
- b.PlaceName,
- b.HouseNumber,
- (SELECT COUNT(*) FROM marketdb..ptPutInCheck WHERE marketdb..ptPutInCheck.ptPutInPlaceCheckID=a.ID) SurvivingNumber,
- b.PutInNumber
- FROM
- marketdb..ptPutInPlaceCheck a,
- marketdb..ptPutInPlace b
- WHERE a.ptPutInPlaceID = b.ID AND a.ptWorkAppointID=' + CONVERT(VARCHAR,@ptWorkAppointID)
- IF @CheckStatus = '1'
- SET @SQL = @SQL + ' AND a.PhotoFile IS NULL'
- IF LEN(@KeyWord) > 0
- SET @SQL = @SQL + ' AND (b.PlaceName LIKE ''%' + @KeyWord + '%'' OR b.HouseNumber LIKE ''%' + @KeyWord + '%'')'
- IF @Lng > 0 AND @Lat > 0
- BEGIN
- DECLARE @Degree AS DECIMAL(8,5),@LBLng AS DECIMAL(8,5),@LBLat AS DECIMAL(8,5),
- @RTLng AS DECIMAL(8,5),@RTLat AS DECIMAL(8,5)
- SET @Degree = 200 / 100000.0;
- SET @LBLng = @Lng - @Degree
- SET @LBLat = @Lat - @Degree
- SET @RTLng = @Lng + @Degree
- SET @RTLat = @Lat + @Degree
- SET @SQL = @SQL + '
- AND b.Lng BETWEEN ' + CONVERT(VARCHAR,@LBLng) + ' AND ' + CONVERT(VARCHAR,@RTLng) + '
- AND b.Lat BETWEEN ' + CONVERT(VARCHAR,@LBLat) + ' AND ' + CONVERT(VARCHAR,@RTLat) + '
- AND (b.Lng-' + CONVERT(VARCHAR,@Lng) + ')*(b.Lng-' + CONVERT(VARCHAR,@Lng) + ')+
- (b.Lat-' + CONVERT(VARCHAR,@Lat) + ')*(b.Lat-' + CONVERT(VARCHAR,@Lat) + ')<' + CONVERT(VARCHAR,@Degree*@Degree)
- END
- --PRINT @SQL
- EXEC(@SQL)
- END
- GO
- /****** Object: StoredProcedure [dbo].[procPtPutInPlaceInsert] Script Date: 2018/12/13 19:11:38 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[procPtPutInPlaceInsert]
- (
- @ptWorkAppointID INT,
- @HouseNumber NVARCHAR(50),
- @PlaceName NVARCHAR(50),
- @Lng DECIMAL(8,5),
- @Lat DECIMAL(8,5),
- @PutInNumber INT
- )
- AS
- BEGIN TRY
- DECLARE @DeliveryQuantity INT, @HasSentNumber INT
- SELECT @DeliveryQuantity = DeliveryQuantity FROM marketdb..ptWorkAppoint WHERE ID = @ptWorkAppointID
- SELECT @HasSentNumber = SUM(PutInNumber) FROM marketdb..ptPutInPlace WHERE ptWorkAppointID = @ptWorkAppointID
- IF @DeliveryQuantity <= @HasSentNumber
- RETURN -1 --未加上此次投放已超标
- IF @DeliveryQuantity < @HasSentNumber + @PutInNumber
- RETURN -2 --加上此次投放超标
- DECLARE @CityName NVARCHAR(20),@dcRegionID VARCHAR(6)
- SET @dcRegionID = ''
- IF CHARINDEX('市',@HouseNumber) > 0
- SET @CityName = SUBSTRING(@HouseNumber,0,CHARINDEX('市',@HouseNumber))
- ELSE IF CHARINDEX('区',@HouseNumber) > 0
- SET @CityName = SUBSTRING(@HouseNumber,0,CHARINDEX('区',@HouseNumber))
- ELSE
- SET @CityName = ''
- IF LEN(@CityName) > 0
- SELECT @dcRegionID = ID FROM dcRegion WHERE FullName LIKE '%' + @CityName + '%' AND LEN(ID) = 4
- INSERT INTO marketdb..ptPutInPlace(dcRegionID, HouseNumber, PlaceName, Lng, Lat, PutInNumber, ptWorkAppointID, CheckStatus) VALUES
- (@dcRegionID, @HouseNumber, @PlaceName, @Lng, @Lat, @PutInNumber, @ptWorkAppointID, 0)
-
- RETURN @@IDENTITY
- END TRY
- BEGIN CATCH
- RETURN 0
- END CATCH
- GO
- /****** Object: StoredProcedure [dbo].[procPtPutInPlaceUpdate] Script Date: 2018/12/13 19:11:39 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[procPtPutInPlaceUpdate]
- (
- @ID INT,
- @ptWorkAppointID INT,
- @HouseNumber NVARCHAR(50),
- @PlaceName NVARCHAR(50),
- @PutInNumber INT
- )
- AS
- BEGIN TRY
- DECLARE @DeliveryQuantity INT, @HasSentNumber INT
- IF NOT EXISTS(SELECT 'X' FROM marketdb..ptPutInPlace WHERE ID = @ID AND ptWorkAppointID = @ptWorkAppointID)
- RETURN -3 --没有此条记录
- SELECT @DeliveryQuantity = DeliveryQuantity FROM marketdb..ptWorkAppoint WHERE ID = @ptWorkAppointID
- SELECT @HasSentNumber = SUM(PutInNumber) FROM marketdb..ptPutInPlace WHERE ptWorkAppointID = @ptWorkAppointID AND ID <> @ID
- IF @DeliveryQuantity < @HasSentNumber + @PutInNumber
- RETURN -2 --加上此次投放超标
- UPDATE marketdb..ptPutInPlace SET
- HouseNumber = @HouseNumber,
- PlaceName = @PlaceName,
- PutInNumber = @PutInNumber
- WHERE ID = @ID
-
- RETURN 1
- END TRY
- BEGIN CATCH
- RETURN 0
- END CATCH
- GO
- /****** Object: StoredProcedure [dbo].[ProcPtUserGiftRestSelect] Script Date: 2018/12/13 19:11:39 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- -- =============================================
- -- Author: 123
- -- Create date: 2014-5-10
- -- Description: 查询兼职剩余礼品概况
- -- =============================================
- CREATE PROCEDURE [dbo].[ProcPtUserGiftRestSelect]
- (
- @ptUserName NVARCHAR(5)
- )
- AS
- BEGIN
- DECLARE @sql VARCHAR(2000)
- SET @sql = 'SELECT a.ptUserID, b.Name'
- SELECT @sql = @sql + ', LTRIM(STR(SUM(CASE ptGiftTypeId WHEN ' + LTRIM(STR(ptGiftTypeId)) +
- ' THEN RemainNumber ELSE 0 END))) + ''('' + LTRIM(STR(SUM(CASE ptGiftTypeId WHEN ' + LTRIM(STR(ptGiftTypeId)) +
- ' THEN RemainNumber ELSE 0 END))) + '')'' AS [' + (SELECT GiftName FROM MarketDb..ptGiftType WHERE Id = ptGiftTypeId) + ']
- '
- FROM (SELECT distinct ptGiftTypeId FROM Marketdb..ptUserGift WHERE RemainNumber > 0) AS a
- SET @sql = @sql + 'FROM Marketdb..ptUserGift a, MarketDb..ptUser b
- WHERE a.ptUserId = b.Id
- AND RemainNumber > 0'
- IF @ptUserName > ''
- BEGIN
- SET @sql = @sql + '
- AND ptUserID IN (SELECT ID FROM MArketDb..ptUser WHERE Name =''' + LTRIM(RTRIM(@ptUserName)) + ''')'
- END
- SET @sql = @sql + '
- GROUP BY a.ptUserID, b.Name'
- EXEC(@sql)
- --PRINT @SQL
- END
- GO
- /****** Object: StoredProcedure [dbo].[procQlrcGovByHomepageSelect] Script Date: 2018/12/13 19:11:40 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[procQlrcGovByHomepageSelect]
- (
- @ProvinceID SMALLINT
- )
- AS
- BEGIN
- --IF @ProvinceID IN(1201, 1207, 1301, 1302, 1401, 2201, 3101, 3301, 3501, 3601, 4001, 4101, 4201, 6101, 6201, 7001, 7002, 7101, 7201, 8001, 8301)
- IF @ProvinceID IN(SELECT ID FROM dcSubSite WHERE IsMainSite = 0)
- SET @ProvinceId = LEFT(@ProvinceId, 2)
- SELECT TOP 1 ImageFile, alt
- FROM fpHomePageImage WITH(NOLOCK)
- WHERE ImageType = 4
- AND dcProvinceID = @ProvinceID
- ORDER BY AddDate DESC
- SELECT TOP 15 id newIds ,PreID id, title, announcedate ,content,type,refreshdate,versionid
- FROM SearchDb..HpQlrcGovDay WITH(NOLOCK)
- WHERE versionid = @ProvinceID
- ORDER BY newIds
- END
- GO
- /****** Object: StoredProcedure [dbo].[procQlrcNews5ByConditionSelect] Script Date: 2018/12/13 19:11:40 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.10
- --创建人:Nick
- --说明:根据省份获取政府招考信息
- --#####################################################
- CREATE PROCEDURE [dbo].[procQlrcNews5ByConditionSelect]
- (
- @Condition VARCHAR(MAX)
- )
- AS
- BEGIN
- DECLARE @SQL VARCHAR(MAX)
- SET @SQL = '
- SELECT top 5 ID, Title, RefreshDate, Author
- FROM QlrcNews WITH(NOLOCK) WHERE (
- EXISTS(
- SELECT ''x'' FROM fnSplit(DetailType, '', '') b, dcNewsType c WITH(NOLOCK)
- WHERE b.a=c.ID
- AND c.Category=1
- )
- OR DetailType IS NULL
- )
- AND NewsType = 2
- AND DetailType like ''%, 2, %'' '+@Condition+'
- ORDER BY RefreshDate DESC '
- PRINT (@SQL)
- EXEC (@SQL)
- END
- GO
- /****** Object: StoredProcedure [dbo].[procQlrcNews5ByProvinceIDSelect] Script Date: 2018/12/13 19:11:41 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.10
- --创建人:Nick
- --说明:根据省份获取政府招考信息
- --#####################################################
- CREATE PROCEDURE [dbo].[procQlrcNews5ByProvinceIDSelect]
- (
- @ProvinceID INT
- )
- AS
- BEGIN
- IF @ProvinceID = 32
- SELECT top 5 ID, Title, RefreshDate, Author
- FROM QlrcNews WITH(NOLOCK) WHERE (
- EXISTS(
- SELECT 'x' FROM fnSplit(DetailType, ',') b, dcNewsType c WITH(NOLOCK)
- WHERE b.a=c.ID
- AND c.Category=1
- )
- OR DetailType IS NULL
- )
- AND (VersionID=@ProvinceID OR VersionID=0)
- AND NewsType = 2
- AND DetailType like '%,2,%'
- ORDER BY RefreshDate DESC
- ELSE
- SELECT top 5 ID, Title, RefreshDate, Author
- FROM QlrcNews WITH(NOLOCK) WHERE (
- EXISTS(
- SELECT 'x' FROM fnSplit(DetailType, ',') b, dcNewsType c WITH(NOLOCK)
- WHERE b.a=c.ID
- AND c.Category=1
- )
- OR DetailType IS NULL
- )
- AND VersionID = @ProvinceID
- AND NewsType = 2
- AND DetailType like '%,2,%'
- ORDER BY RefreshDate DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcQlrcNewsBy51RcRebuild] Script Date: 2018/12/13 19:11:41 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcQlrcNewsBy51RcRebuild]
- AS
- BEGIN
- IF NOT EXISTS(SELECT 'x' FROM QlrcNews WITH(NOLOCK) WHERE RefreshDate > DATEADD(MI, -5, GETDATE()))
- RETURN
-
- DECLARE @q AS TABLE(
- Id int,
- title nvarchar(60),
- announcedate smalldatetime,
- content varchar(max),
- type smallint,
- refreshdate smalldatetime,
- versionid INT
- )
- DECLARE @t AS TABLE(title nvarchar(60), refreshdate smalldatetime)
- INSERT INTO @t(title, refreshdate)
- SELECT DISTINCT TOP 20 title, refreshdate
- FROM QlrcNews WITH(NOLOCK)
- WHERE NewsType = 2
- AND RefreshDate > GETDATE() - 2
- ORDER BY refreshdate DESC
- INSERT INTO @q(Title, Refreshdate)
- SELECT title, Max(RefreshDate) FROM @t GROUP BY Title ORDER BY Max(RefreshDate) DESC
- UPDATE a
- SET ID = (SELECT MAX(ID) FROM QlrcNews WITH(NOLOCK) WHERE QlrcNews.Title = a.Title)
- FROM @q a
- UPDATE a
- SET a.announcedate = b.announcedate,
- a.content = b.Content,
- a.type = b.Type,
- a.versionid = b.versionid
- FROM @q a, QlrcNews b WITH(NOLOCK)
- WHERE a.Id = b.Id
- TRUNCATE TABLE SearchDb..HpQlrcNews51Rc
- INSERT INTO SearchDb..HpQlrcNews51Rc
- SELECT TOP 15 id, title, announcedate ,content,type,refreshdate,versionid
- FROM @q
- ORDER BY refreshdate DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[procQlrcnewsBy51RCSelect] Script Date: 2018/12/13 19:11:41 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --创建人 Lambo
- --20101009
- --用于首页查询固定位置右边的职场新闻
- --2012-10-22 sean remove @provinceid=0 to procQlrcnewsBy51RCSelect
- CREATE PROCEDURE [dbo].[procQlrcnewsBy51RCSelect]
- AS
- BEGIN
- SELECT TOP 0 null ImageFile, null alt
- SELECT * FROM SearchDb..hpQlrcNews51Rc
- END
- GO
- /****** Object: StoredProcedure [dbo].[procQlrcNewsByCountryIDSelect] Script Date: 2018/12/13 19:11:41 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.5
- --创建人:NICK
- --说明:查询县级市的新闻,读取省份的新闻,优先县级市
- --#####################################################
- CREATE PROCEDURE [dbo].[procQlrcNewsByCountryIDSelect]
- (
- @CountryID VARCHAR(6)
- )
- AS
- BEGIN
- IF LEN(@CountryID) = 6
- SELECT TOP 400 Id, Title, RefreshDate, Author, Type, Content
- FROM QlrcNews WITH(NOLOCK)
- WHERE VersionId = @CountryID
- AND NewsType = 2
- ORDER BY Id DESC
- ELSE
- SELECT TOP 400 Id, Title, RefreshDate, Author, Type, Content
- FROM QlrcNews WITH(NOLOCK)
- WHERE VersionId LIKE @CountryID + '%'
- AND NewsType = 2
- ORDER BY CASE VersionId WHEN @CountryID THEN 0 ELSE 1 END,
- RefreshDate DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[procQlrcNewsByDetailTypeSelect] Script Date: 2018/12/13 19:11:41 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.10
- --创建人:NICK
- --说明:获取某类N条资讯
- --#####################################################
- CREATE PROCEDURE [dbo].[procQlrcNewsByDetailTypeSelect]
- (
- @newsNumber INT,
- @detailType VARCHAR(10),
- @provinceID VARCHAR(6),
- @NewID INT
- )
- AS
- BEGIN
- DECLARE @SQL VARCHAR(MAX)
- SET @SQL = '
- SELECT TOP '+CONVERT(VARCHAR(10),@newsNumber)+' *
- FROM qlrcNews WITH(NOLOCK)
- WHERE DetailType LIKE ''%,' + @detailType + ',%''
- AND VersionID = '+CONVERT(VARCHAR(10),@provinceID)
-
- IF @NewID <> 0
- BEGIN
- SET @SQL = @SQL + ' AND id<>' + CONVERT(VARCHAR(10),@NewID)
- END
- SET @SQL = @SQL + ' ORDER BY RefreshDate DESC '
- PRINT (@SQL)
- EXEC (@SQL)
- END
- GO
- /****** Object: StoredProcedure [dbo].[procQlrcnewsByHomepageSelect] Script Date: 2018/12/13 19:11:41 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --创建人 Lambo
- --20101009
- --用于首页查询固定位置右边的职场新闻
- --20121022 sean remove @provinceid=0 to [procQlrcnewsBy51rcSelect]
- --20180301 Carl 就业大数据、媒体动态与就业咨询合并
- --20180308 Carl
- --20180524 harry 164jane要求 ql固定显示1篇微职场3篇动态
- CREATE PROCEDURE [dbo].[procQlrcnewsByHomepageSelect]
- (
- @ProvinceID SMALLINT
- )
- AS
- SET NOCOUNT ON
- BEGIN
- DECLARE @t AS TABLE(
- NewIds INT NOT NULL,
- Id INT NOT NULL,
- Title NVARCHAR(60) NOT NULL,
- AnnounceDate SMALLDATETIME NOT NULL,
- [Content] VARCHAR(MAX) NOT NULL,
- Url VARCHAR(2000), --新增的
- [Type] SMALLINT NOT NULL,
- RefreshDate SMALLDATETIME NOT NULL,
- Seq INT IDENTITY(1, 1)
- )
- SELECT TOP 0 '' ImageFile, '' alt
- IF @ProvinceID=32
- BEGIN
- /*INSERT INTO @t
- SELECT *
- FROM (SELECT DISTINCT TOP 14 Id NewIds, PreID Id, Title, Announcedate, [Content], '' Url,[Type], RefreshDate
- FROM SearchDb..HpQlrcNewsDay WITH(NOLOCK)
- WHERE dcSubSiteId = @ProvinceID
- ORDER BY newIds) t1
- UNION
- SELECT *
- FROM (SELECT TOP 1 Id NewIds, Id, Title, Announcedate, [Content], '' Url,3 [Type], Refreshdate
- FROM MainDb..NewsAnalysis WITH(NOLOCK)
- ORDER BY Id DESC) t2
- UNION
- SELECT *
- FROM (SELECT TOP 1 Id NewIds, Id, Title, AddDate AnnounceDate, Brief [Content],Url, 4 [Type], AddDate RefreshDate
- FROM MarketDb..MarketMedia a, MarketDb..MarketProvince b
- WHERE a.ID = b.MarketID
- AND b.Type = 1 AND a.MediaType = 1
- AND (b.ProvinceID = 0 OR b.ProvinceID = @ProvinceID)
- ORDER BY a.Id DESC) t3
- */
- INSERT INTO @t
- SELECT DISTINCT TOP 1 Id NewIds, PreID Id, Title, Announcedate, [Content], '' Url,[Type], RefreshDate
- FROM SearchDb..HpQlrcNewsDay WITH(NOLOCK)
- WHERE dcSubSiteId = @ProvinceID
- ORDER BY newIds
- INSERT INTO @t
- SELECT TOP 3 Id NewIds, Id, Title, Announcedate, [Content], '' Url,3 [Type], Refreshdate
- FROM MainDb..NewsAnalysis WITH(NOLOCK)
- ORDER BY Id DESC
- INSERT INTO @t
- SELECT TOP 1 Id NewIds, Id, Title, AddDate AnnounceDate, Brief [Content],Url, 4 [Type], AddDate RefreshDate
- FROM MarketDb..MarketMedia a, MarketDb..MarketProvince b
- WHERE a.ID = b.MarketID
- AND b.Type = 1 AND a.MediaType = 1
- AND (b.ProvinceID = 0 OR b.ProvinceID = @ProvinceID)
- ORDER BY a.Id DESC
-
- END
- ELSE
- BEGIN
- INSERT INTO @t
- SELECT DISTINCT TOP 14 Id NewIds, PreID Id, Title, Announcedate, [Content], '' Url,[Type], RefreshDate
- FROM SearchDb..HpQlrcNewsDay WITH(NOLOCK)
- WHERE dcSubSiteId = @ProvinceID
- ORDER BY newIds
- END
- SELECT * FROM @t ORDER BY Announcedate DESC
- END
- SET NOCOUNT OFF
- GO
- /****** Object: StoredProcedure [dbo].[procQlrcNewsByID51rcSelect] Script Date: 2018/12/13 19:11:42 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.10
- --创建人:NICK
- --说明:得到网站公告
- --#####################################################
- CREATE PROCEDURE [dbo].[procQlrcNewsByID51rcSelect]
- (
- @ID INT
- )
- AS
- BEGIN
- SELECT title, content, announcedate, author, ViewNumber_All, refreshdate, type
- FROM qlrcnews WITH(NOLOCK)
- WHERE newstype = 1
- AND Id = @ID
- END
- GO
- /****** Object: StoredProcedure [dbo].[procQlrcNewsByIDSelect] Script Date: 2018/12/13 19:11:42 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.5
- --创建人:NICK
- --说明:获取一行职场新闻
- --#####################################################
- CREATE PROCEDURE [dbo].[procQlrcNewsByIDSelect]
- (
- @ID INT
- )
- AS
- BEGIN
- SELECT id, Type, Title, newstype, Content, Announcedate, Author, Appendix, AppendixName,DetailType,
- Viewnumber_All, RefreshDate, Label, VersionID ,
- (SELECT TOP 1 NewsType FROM dcNewsType WITH(NOLOCK) WHERE QlrcNews.DetailType LIKE '%,' + LTRIM(Id) +',%') NewsDetailType,
- (SELECT TOP 1 ID FROM dcNewsType WITH(NOLOCK) WHERE QlrcNews.DetailType LIKE '%,' + LTRIM(Id) + ',%') NewsDetailID,
- (SELECT TOP 1 Category FROM dcNewsType WITH(NOLOCK) WHERE QlrcNews.DetailType LIKE '%,' + LTRIM(Id) + ',%') Category
- FROM QlrcNews WITH(NOLOCK)
- WHERE Id = @ID
- END
- GO
- /****** Object: StoredProcedure [dbo].[procQlrcNewsByIDUpdate] Script Date: 2018/12/13 19:11:42 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.5
- --创建人:NICK
- --说明:记录职场新闻点击数
- --#####################################################
- CREATE PROCEDURE [dbo].[procQlrcNewsByIDUpdate]
- (
- @ID INT,
- @IsWhite INT
- )
- AS
- BEGIN
- DECLARE @SQL VARCHAR(MAX)
- SET @SQL = 'Update QlrcNews SET ViewNumber_All = ViewNumber_All + 1 '
- IF @IsWhite = 1
- BEGIN
- SET @SQL = @SQL + ', ViewNumber = ViewNumber + 1'
- END
- SET @SQL = @SQL + ' WHERE ID = '+CONVERT(VARCHAR(20),@ID)
- EXEC(@SQL)
- RETURN 1
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcQlrcNewsByNearSelect] Script Date: 2018/12/13 19:11:42 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcQlrcNewsByNearSelect]
- (
- @CountryID VARCHAR(6),
- @ID INT
- )
- AS
- SET NOCOUNT ON
- BEGIN
- SELECT PageType, NearId, Id, NearTitle Title
- FROM ShortDb..QlrcNewsNear WITH(NOLOCK)
- WHERE ID = @Id
- -- DECLARE @t AS TABLE(PageType INT, Id INT, Title NVARCHAR(100))
- -- INSERT @t
- -- SELECT TOP 1 1, Id, Title
- -- FROM QlrcNews WITH(NOLOCK)
- -- WHERE VersionId = @CountryID
- -- AND NewsType = 2
- -- AND Id > @Id
- -- ORDER BY Id
- --
- -- INSERT @t
- -- SELECT TOP 1 2, Id, Title
- -- FROM QlrcNews WITH(NOLOCK)
- -- WHERE VersionId = @CountryID
- -- AND NewsType = 2
- -- AND Id < @Id
- -- ORDER BY Id DESC
- --
- -- SELECT * FROM @t ORDER BY Id
- END
- GO
- /****** Object: StoredProcedure [dbo].[procQlrcNewsByOther51rcSelect] Script Date: 2018/12/13 19:11:42 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.10
- --创建人:NICK
- --说明:得到其他网站公告
- --#####################################################
- CREATE PROCEDURE [dbo].[procQlrcNewsByOther51rcSelect]
- AS
- BEGIN
- SELECT TOP 200 * FROM QlrcNews WITH(NOLOCK) WHERE NewsType = 1 ORDER BY RefreshDate DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[procQlrcNewsByProvinceID51rcSelect] Script Date: 2018/12/13 19:11:42 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.10
- --创建人:NICK
- --说明:关注排行
- --#####################################################
- CREATE PROCEDURE [dbo].[procQlrcNewsByProvinceID51rcSelect]
- (
- @ProvinceID INT
- )
- AS
- BEGIN
- SELECT TOP 10 *
- FROM QlrcNews WITH(NOLOCK)
- WHERE RefreshDate > DateAdd(Month, -3, GETDATE())
- AND VersionID = @ProvinceID
- ORDER BY ViewNumber_All DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[procQlrcNewsByProvinceIDSelect] Script Date: 2018/12/13 19:11:43 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.5
- --创建人:NICK
- --说明:就业资讯
- --#####################################################
- CREATE PROCEDURE [dbo].[procQlrcNewsByProvinceIDSelect]
- (
- @provinceID INT
- )
- AS
- BEGIN
- SELECT TOP 7 a.ID, Title, content, RefreshDate,
- (
- SELECT TOP 1 NewsType
- FROM dcNewsType WITH(NOLOCK)
- WHERE a.DetailType LIKE '%,'+Ltrim(str(id))+',%'
- AND category=1
- ) DetailType
- FROM qlrcnews a WITH(NOLOCK)
- where EXISTS(
- SELECT 'x'
- FROM fnSplit(DetailType,',') b, dcNewsType c WITH(NOLOCK)
- WHERE b.a = c.id
- AND c.category=1
- )
- AND VersionID=@provinceID
- AND type=1
- ORDER BY ID DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[procQlrcNewsByTypeIDSelect] Script Date: 2018/12/13 19:11:43 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.5
- --创建人:NICK
- --说明:职场攻略
- --#####################################################
- CREATE PROCEDURE [dbo].[procQlrcNewsByTypeIDSelect]
- (
- @ProvinceID INT
- )
- AS
- BEGIN
- SELECT TOP 7 a.ID, Title, Content, RefreshDate
- FROM qlrcnews a WITH(NOLOCK)
- WHERE exists(
- SELECT 'x' FROM fnSplit(DetailType, ',') b, dcNewsType c WITH(NOLOCK)
- WHERE b.a = c.id
- AND c.category=2
- )
- AND VersionID=@ProvinceID
- AND type = 1
- ORDER BY id DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[procQlrcNewsByVersionIDSelect] Script Date: 2018/12/13 19:11:43 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.5
- --创建人:NICK
- --说明:根据类别和省份获取新闻
- --#####################################################
- CREATE PROCEDURE [dbo].[procQlrcNewsByVersionIDSelect]
- (
- @ProvinceID INT,
- @Type VARCHAR(10)
- )
- AS
- BEGIN
- SELECT TOP 8 ID,Title,RefreshDate
- FROM qlrcNews WITH(NOLOCK)
- WHERE DetailType LIKE '%,'+@Type+',%'
- AND VersionID=@ProvinceID
- ORDER BY RefreshDate DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[procQlrcNewsByVersionIdTop2Select] Script Date: 2018/12/13 19:11:43 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.5
- --创建人:NICK
- --说明:获取新闻
- --#####################################################
- create PROCEDURE [dbo].[procQlrcNewsByVersionIdTop2Select]
- (
- @VersionId INT
- )
- AS
- BEGIN
- SELECT TOP 2 *
- FROM QlrcNews WITH(NOLOCK)
- WHERE (
- EXISTS(
- SELECT 'x'
- FROM fnSplit(DetailType, ',') b,
- dcNewsType c WITH(NOLOCK)
- WHERE b.a = c.ID)
- OR DetailType IS NULL
- )
- AND VersionID = @VersionId
- AND NewsType = 2
- AND DetailType NOT LIKE '%,2,%'
- ORDER BY RefreshDate DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcQlrcNewsExpertSelect] Script Date: 2018/12/13 19:11:44 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.28
- --创建人:Nick
- --说明:得到专家支招
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcQlrcNewsExpertSelect]
- (
- @ProvinceID INT
- )
- AS
- BEGIN TRY
- SELECT TOP 13 a.ID,Title
- FROM QlrcNews a WITH(NOLOCK)
- WHERE EXISTS(
- SELECT 'x' FROM fnSplit(DetailType,',') b,dcNewsType c WITH(NOLOCK)
- WHERE b.a = c.ID
- AND c.category=2
- )
- AND VersionID = @ProvinceID
- AND Type = 1
- And RefreshDate>DateAdd(Month,-1,GETDATE())
- ORDER BY ViewNumber DESC
- END TRY
- BEGIN CATCH
- RETURN 0
- END CATCH
- GO
- /****** Object: StoredProcedure [dbo].[ProcQlrcNewsLinkSelect] Script Date: 2018/12/13 19:11:44 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.28
- --创建人:John
- --说明:获取职场新闻链接
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcQlrcNewsLinkSelect]
- AS
- BEGIN TRY
- SELECT TOP 5000 '/news/' + CONVERT(VARCHAR, ID) + '.html' link
- FROM QlrcNews WITH(NOLOCK)
- WHERE NewsType = 2
- AND versionid = 0
- AND AnnounceDate > GETDATE()-7
- END TRY
- BEGIN CATCH
- RETURN 0
- END CATCH
- GO
- /****** Object: StoredProcedure [dbo].[procQlrcNewsListBy51rcSelect] Script Date: 2018/12/13 19:11:44 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.10
- --创建人:NICK
- --说明:根据类别和省份获取新闻
- --#####################################################
- CREATE PROCEDURE [dbo].[procQlrcNewsListBy51rcSelect]
- AS
- BEGIN
- SELECT ID,Title,Author,RefreshDate FROM qlrcNews WITH(NOLOCK)
- WHERE VersionID=0 AND NewsType=2
- ORDER BY RefreshDate DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[procQlrcNewsNumSelect] Script Date: 2018/12/13 19:11:44 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.5
- --创建人:NICK
- --说明:获取新闻
- --#####################################################
- CREATE PROCEDURE [dbo].[procQlrcNewsNumSelect]
- (
- @Num INT
- )
- AS
- BEGIN
- DECLARE @SQL VARCHAR(MAX)
- SET @SQL = 'SELECT TOP '+CONVERT(VARCHAR(10),@Num)+' *
- FROM QlrcNews WITH(NOLOCK)
- WHERE (EXISTS(SELECT ''x'' FROM fnSplit(DetailType,'','') b,
- dcNewsType c WITH(NOLOCK) WHERE b.a=c.ID ) OR DetailType IS NULL) AND
- VersionID=0 AND NewsType = 2 AND DetailType NOT LIKE ''%,2,%''
- ORDER BY RefreshDate DESC'
- EXEC(@SQL)
- END
- GO
- /****** Object: StoredProcedure [dbo].[procQlrcnewsSelect] Script Date: 2018/12/13 19:11:44 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --创建人 Lambo
- --时间 20101009
- --用于网站首页查询网站公告
- CREATE PROCEDURE [dbo].[procQlrcnewsSelect]
- (
- @province_id SMALLINT
- )
- AS
- BEGIN
- SELECT TOP 3 id, title, announcedate date, content, type, refreshdate
- FROM QlrcNews WITH(NOLOCK)
- WHERE (VersionId = @province_id OR VersionId = 0)
- AND NewsType = 1
- ORDER BY refreshdate DESC
- OPTION (KEEPFIXED PLAN)
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcQlrcNewsTop400Select] Script Date: 2018/12/13 19:11:45 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcQlrcNewsTop400Select]
- (
- @ProvinceID INT,
- @KeyWord NVARCHAR(100),
- @DetailType INT,
- @Type NVARCHAR(20)
- )
- AS
- BEGIN
- IF (@DetailType <= 0)
- SET @DetailType = 0
- SET @keyWord = REPLACE(dbo.SafeSql(@keyWord), '''', '')
- IF (LEN(@keyWord) > 0)
- BEGIN
- DECLARE @Sql VARCHAR(MAX)
- SET @Sql = 'SELECT TOP 400 Id, Title, RefreshDate, Author, Type, Content
- FROM QlrcNews WITH(NOLOCK)
- WHERE VersionId = ' + LTRIM(STR(@ProvinceID)) + '
- AND NewsType = 2'
- IF (@Type = 'title')
- SET @Sql = @Sql + ' AND Title LIKE ''%' + @KeyWord + '%'''
- ELSE
- BEGIN
- DECLARE @t AS TABLE(ID INT IDENTITY(1, 1), k NVARCHAR(50))
- INSERT @t(k) SELECT a FROM dbo.FnSplit(@KeyWord, ' ')
- UPDATE @t SET k = REPLACE(k, ' ', '')
- UPDATE @t SET k = REPLACE(k, '''', '')
- DELETE @t WHERE ISNULL(k, '') = ''
-
- SELECT @Sql = @Sql + ' AND Id IN(SELECT [Key] FROM CONTAINSTABLE(QlrcNews, *, ''' + k + ''', 10000) AS KeyJob)'
- FROM @t
- END
- IF (@DetailType > 0)
- SET @Sql = @Sql + ' AND DetailType LIKE ''%,' + LTRIM(STR(@DetailType)) + ',%'''
- ELSE
- SET @Sql = @Sql + ' AND DetailType NOT LIKE ''%,2,%'''
- SET @Sql = @Sql + ' ORDER BY RefreshDate DESC'
- --PRINT @SQL
- EXEC(@SQL)
- END
- ELSE
- BEGIN
- SELECT Id, Title, RefreshDate, Author, Type
- FROM QlrcNewsTop400 WITH(NOLOCK)
- WHERE ProvinceId = @ProvinceID
- AND DetailType = @DetailType
- ORDER BY RowID
- END
- END
- GO
- /****** Object: StoredProcedure [dbo].[procQuotaLogUpdate] Script Date: 2018/12/13 19:11:45 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --计划任务校正已经使用的配额量
- --harry
- --2017-12-8
- CREATE PROCEDURE [dbo].[procQuotaLogUpdate]
- AS
- SET NOCOUNT ON
- BEGIN
- create table #a
- (
- id int,
- caorderId INT,
- caMainid INT,
- download int
- )
- insert into #a(id,caorderId,caMainId)
- select id,caorderId,caMainId
- FROM QuotaLog
- DECLARE @size INT,@id INT
- SET @id=0
- SELECT @size=count(1) from #a
- WHILE @size>0
- BEGIN
- SET @size=@size-1
- SELECT TOP 1 @id =id FROM #a WHERE id> @id ORDER BY id asc
- UPDATE #a
- set download=(select count(1) from caactivelog where camainid=#a.caMainId AND caorderId= #a.caorderId)
- WHERE id= @id
-
- UPDATE #a
- set download=ISNULL(download,0)+
- (select count(1) from caactivelog
- where camainid=#a.caMainId AND caorderId IN
- (select id from caorder
- where mainorderid= #a.caorderId AND isdeleted=0 AND ordertype in(8,9) AND openDate is NOT NULL
- )
- )
- WHERE id= @id
- END
- UPDATE a
- SET a.remainQuota=(a.quota-b.download)
- FROM quotalog a, #a b
- WHERE a.id = b.id
- drop table #a
- END
- SET NOCOUNT OFF
- GO
- /****** Object: StoredProcedure [dbo].[ProcRecommendedRecruitmentSelect] Script Date: 2018/12/13 19:11:45 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.29
- --创建人:Nick
- --说明:获取推荐招聘会内容
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcRecommendedRecruitmentSelect]
- (
- @ProvinceID INT
- )
- AS
- BEGIN TRY
- SELECT TOP 10 a.ID,a.RecruitmentName
- FROM Recruitment a,dcRegion b,RecruitmentPlace c,RecruitmentDept d
- WHERE d.ID=a.RecruitmentDeptID
- AND d.ID<>1767
- AND b.ID=c.dcRegionID
- AND a.RecruitmentPlaceId=c.id And c.dcRegionID LIKE ''+CONVERT(VARCHAR(4),@ProvinceID)+'%'
- AND EndDate>GetDate()
- AND a.IsPause=0
- AND LEN(ManagerUserID)>0
- ORDER BY orderby, a.EndDate
- END TRY
- BEGIN CATCH
- RETURN 0
- END CATCH
- GO
- /****** Object: StoredProcedure [dbo].[ProcRecruitByBaiduXmlSelect] Script Date: 2018/12/13 19:11:45 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcRecruitByBaiduXmlSelect]
- (
- @ProvinceID INT
- )
- AS
- insert into proclog select 'ProcRecruitByBaiduXmlSelect', @ProvinceId, GETDATE()
- BEGIN
- DECLARE @pId VARCHAR(2)
- IF ISNULL(@ProvinceID, 0) = 0
- SET @Pid = ''
- ELSE
- SET @Pid = LTRIM(STR(@ProvinceId))
- Select a.ID, e.DeptName, a.RecruitmentName, a.EndDate, a.ModifyDate, a.BeginDate, a.Brief,
- c.PlaceName, c.Address, b.Description City, d.EmailSite, d.SubSiteName, OrderBy, MainId
- INTO #t
- From Recruitment a,
- dcRegion b,
- RecruitmentPlace c,
- dcSubSite d,
- RmDept e
- Where a.RecruitmentDeptId = e.Id
- AND Left(CityID, 2) = d.ID
- AND b.ID = c.dcRegionID
- AND a.RecruitmentPlaceId = c.id
- AND c.dcRegionID like @Pid + '%'
- AND EndDate > GetDate()
- AND RIGHT(CONVERT(VARCHAR(8), EndDate, 112), 4) <> '1231'
- AND a.ManagerUserId > 0
- AND a.IsPause = 0
- AND a.MainId IS NULL
- IF @ProvinceID IN(10, 11, 30, 60)
- UPDATE #t SET City = (SELECT SubSiteCity FROM dcSubSite WHERE ID = @ProvinceId)
- INSERT INTO #t
- Select a.ID, e.DeptName, a.RecruitmentName, a.EndDate, a.ModifyDate, a.BeginDate, a.Brief,
- c.PlaceName, c.Address, b.Description City, d.EmailSite, d.SubSiteName, OrderBy, MainId
- FROM Recruitment a,
- dcRegion b,
- RecruitmentPlace c,
- dcSubSite d,
- RmDept e
- WHERE a.RecruitmentDeptId = e.Id
- AND LEFT(CityID, 2) = d.ID
- AND b.ID = c.dcRegionID
- AND a.RecruitmentPlaceId = c.id
- AND c.dcRegionID LIKE @Pid + '%'
- AND a.MainId IN(SELECT ID FROM #t)
- SELECT * FROM #t
- --WHERE CHARINDEX(Left(City, 2), PlaceName) > 0
- ORDER BY OrderBy, ID DESc
- END
- GO
- /****** Object: StoredProcedure [dbo].[procRecruitmeetingByHomepageSelect] Script Date: 2018/12/13 19:11:45 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --创建人 Lambo
- --20101009
- --用于首页查询招聘会
- CREATE PROCEDURE [dbo].[procRecruitmeetingByHomepageSelect]
- (
- @ProvinceID SMALLINT
- )
- AS
- BEGIN
- /*
- SELECT TOP 1 ImageFile,alt FROM fpHomePageImage WITH(NOLOCK)
- WHERE ImageType = 2
- AND dcProvinceId = @ProvinceID
- ORDER BY AddDate DESC
- */
- SELECT TOP 0 '' ImageFile, '' alt
- -- IF @ProvinceID > 100
- -- SELECT @ProvinceID = CONVERT(INT, LEFT(@ProvinceID, 2))
- SELECT TOP 15 ID newIDs,PreID Id, Title, AddDate, WeekDay, MonthDay, StartDate
- FROM SearchDb..HpRecruitmeetingDay WITH(NOLOCK)
- WHERE ProvinceId = @ProvinceID
- ORDER BY newIDs
- END
- GO
- /****** Object: StoredProcedure [dbo].[procRecruitmeetingByHomepageSelectnew] Script Date: 2018/12/13 19:11:45 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --############################################
- --创建人 Lambo
- --20101009
- --用于首页查询招聘会
- --sean 2012-3-20
- --增加ip所在地的判断
- --############################################
- CREATE PROCEDURE [dbo].[procRecruitmeetingByHomepageSelectnew]
- (
- @ProvinceID SMALLINT,
- @strIp VARCHAR(20)
- )
- AS
- BEGIN
- SELECT TOP 1 ImageFile, alt FROM fpHomePageImage WITH(NOLOCK)
- WHERE ImageType = 2
- AND dcProvinceId = @ProvinceID
- ORDER BY AddDate DESC
- -- IF @ProvinceID > 100
- -- SELECT @ProvinceID = CONVERT(INT, LEFT(@ProvinceID, 2))
- DECLARE @dcSubSiteId AS INT, @Ip AS BIGINT
- SET @Ip = CONVERT(BIGINT, @strIp)
- SELECT TOP 1 @dcSubSiteId = CONVERT(INT, ISNULL(dcSubSiteId, 0))
- FROM dcIpPlace WITH(NOLOCK)
- WHERE IpStart <= @Ip
- ORDER BY IpStart DESC
- IF LTRIM(STR(@dcSubSiteId)) LIKE LTRIM(STR(@ProvinceID)) + '%'
- BEGIN
- SELECT TOP 15 ID newIDs,PreID Id, Title, AddDate, WeekDay, MonthDay, StartDate
- FROM SearchDb..HpRecruitmeetingDay WITH(NOLOCK)
- WHERE ProvinceId LIKE LTRIM(STR(@ProvinceID)) + '%'
- ORDER BY CASE ProvinceId WHEN @dcSubSiteId THEN 0 ELSE 1 END, newIDs
- --PRINT @dcSubSiteId
- END
- ELSE
- BEGIN
- SELECT TOP 15 ID newIDs,PreID Id, Title, AddDate, WeekDay, MonthDay, StartDate
- FROM SearchDb..HpRecruitmeetingDay WITH(NOLOCK)
- WHERE ProvinceId = @ProvinceID
- ORDER BY newIDs
- print 222222222
- END
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcRecruitMeetingLinkByProvinceIdSelect] Script Date: 2018/12/13 19:11:46 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.28
- --创建人:John
- --说明:获取招聘会链接
- --@provinceId 省份编号
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcRecruitMeetingLinkByProvinceIdSelect]
- (
- @provinceId VARCHAR(4)
- )
- AS
- BEGIN TRY
- SELECT TOP 5000 '/zhaopinhui/' + CONVERT(VARCHAR, ID) + '.html' link
- FROM RecruitMeeting WITH(NOLOCK)
- WHERE province_id = @provinceId
- AND ((EndTime > GETDATE() AND type = 2) OR (status = 1 AND type = 1))
- ORDER BY orderby, ID DESC
- END TRY
- BEGIN CATCH
- RETURN 0
- END CATCH
- GO
- /****** Object: StoredProcedure [dbo].[procRecruitment5ByConditionSelect] Script Date: 2018/12/13 19:11:46 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.10
- --创建人:Nick
- --说明:根据条件获取招聘会信息
- --#####################################################
- CREATE PROCEDURE [dbo].[procRecruitment5ByConditionSelect]
- (
- @Condition VARCHAR(MAX)
- )
- AS
- BEGIN
- DECLARE @SQL VARCHAR(MAX)
- SET @SQL = '
- SELECT top 5 a.ID, a.RecruitmentName, a.EndDate, a.BeginDate, c.PlaceName, c.Address, b.Description City
- FROM Recruitment a, dcRegion b, RecruitmentPlace c, RecruitmentDept d
- WHERE d.ID=a.RecruitmentDeptID
- AND d.ID<>1767
- AND b.ID=c.dcRegionID
- AND a.RecruitmentPlaceId=c.id
- AND EndDate>GetDate()
- AND a.IsPause=0
- AND Len(ManagerUserID)>0 '+@Condition+'
- ORDER BY OrderBy, a.EndDate '
- EXEC(@SQL)
- END
- GO
- /****** Object: StoredProcedure [dbo].[procRecruitmentByCondition51rcSelect] Script Date: 2018/12/13 19:11:46 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.10
- --创建人:NICK
- --说明:获取招聘会列表
- --修改:Andy, 2014-12-22,修改显示个数为当天所有记录
- --#####################################################
- CREATE PROCEDURE [dbo].[procRecruitmentByCondition51rcSelect]
- (
- @RegionID INT,
- @PlaceID INT,
- @BeginDate VARCHAR(10)
- )
- AS
- SET NOCOUNT ON
- BEGIN
- DECLARE @EndDate VARCHAR(10)
- IF DATEPART(HOUR, GETDATE()) < 13
- SET @EndDate = CONVERT(VARCHAR(10), CONVERT(DATETIME, @BeginDate) + 1, 120)
- ELSE
- SET @EndDate = CONVERT(VARCHAR(10), CONVERT(DATETIME, @BeginDate) + 2, 120)
- DECLARE @SQL VARCHAR(MAX)
- SET @SQL = 'SELECT a.ID,a.RecruitmentName,c.id as PlaceID,c.BusLine,a.EndDate,a.BeginDate,c.PlaceName,c.Lng,c.Lat,c.Address,b.Description City,
- d.dcprovinceid,c.mapbarid,c.dcregionid,d.dcprovinceid,c.dcregionid
- FROM SearchDb..RecruitmentTmp2 a WITH(NOLOCK),dcRegion b WITH(NOLOCK),RecruitmentPlace c WITH(NOLOCK),RecruitmentDept d WITH(NOLOCK)
- WHERE d.ID=a.RecruitmentDeptID
- AND d.ID<>1767
- AND b.ID=c.dcRegionID
- AND a.RecruitmentPlaceId=c.id '
- IF @PlaceID <> 0
- BEGIN
- SET @SQL = @SQL + ' AND c.ID = ' + CONVERT(VARCHAR(6), @PlaceID)
- END
- IF @RegionID <> 0
- BEGIN
- SET @SQL = @SQL +' AND c.dcRegionID like '''+CONVERT(VARCHAR(6), @RegionID) + '%'' '
- END
- IF @BeginDate <> ''
- BEGIN
- SET @SQL = @SQL+' AND begindate > ''' + @BeginDate + ''' AND begindate <= ''' + @EndDate + ''''
- END
- SET @SQL = @SQL + ' ORDER BY CONVERT(char(10), a.begindate, 120) asc,
- case dcprovinceid when 32 then 1 when 30 then 2 when 10 then 3 when 12 then 4 when 72 then 5 when 31 then 6 when 11 then 7 when 61 then 8 when 20 then 9 when 40 then 10 when 35 then 11 else 20 end,
- a.begindate '
- --PRINT(@SQL)
- EXEC(@SQL)
- END
- SET NOCOUNT OFF
-
- GO
- /****** Object: StoredProcedure [dbo].[procRecruitmentByCondition51rcSelect1111] Script Date: 2018/12/13 19:11:46 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.10
- --创建人:NICK
- --说明:获取招聘会列表
- --修改:Andy, 2014-12-22,修改显示个数为当天所有记录
- --#####################################################
- create PROCEDURE [dbo].[procRecruitmentByCondition51rcSelect1111]
- (
- @RegionID INT,
- @PlaceID INT,
- @BeginDate VARCHAR(10)
- )
- AS
- SET NOCOUNT ON
- BEGIN
- DECLARE @EndDate VARCHAR(10)
- IF DATEPART(HOUR, GETDATE()) < 13
- SET @EndDate = CONVERT(VARCHAR(10), CONVERT(DATETIME, @BeginDate) + 1, 120)
- ELSE
- SET @EndDate = CONVERT(VARCHAR(10), CONVERT(DATETIME, @BeginDate) + 2, 120)
- DECLARE @SQL VARCHAR(MAX)
- SET @SQL = 'SELECT a.ID,a.RecruitmentName,c.id as PlaceID,c.BusLine,a.EndDate,a.BeginDate,c.PlaceName,c.Lng,c.Lat,c.Address,b.Description City,
- d.dcprovinceid,c.mapbarid,c.dcregionid,d.dcprovinceid,c.dcregionid
- FROM Recruitment a WITH(NOLOCK),dcRegion b WITH(NOLOCK),RecruitmentPlace c WITH(NOLOCK),RecruitmentDept d WITH(NOLOCK)
- WHERE d.ID=a.RecruitmentDeptID
- AND d.ID<>1767
- AND b.ID=c.dcRegionID
- AND EndDate > GETDATE()
- AND a.RecruitmentPlaceId=c.id
- And a.IsPause=0 And Len(ManagerUserID)>0 '
- IF @PlaceID <> 0
- BEGIN
- SET @SQL = @SQL + ' AND c.ID = ' + CONVERT(VARCHAR(6), @PlaceID)
- END
- IF @RegionID <> 0
- BEGIN
- SET @SQL = @SQL +' AND c.dcRegionID like '''+CONVERT(VARCHAR(6), @RegionID) + '%'' '
- END
- IF @BeginDate <> ''
- BEGIN
- SET @SQL = @SQL+' AND begindate > ''' + @BeginDate + ''' AND begindate <= ''' + @EndDate + ''''
- END
- SET @SQL = @SQL + ' ORDER BY CONVERT(char(10), a.begindate, 120) asc,
- case dcprovinceid when 32 then 1 when 30 then 2 when 10 then 3 when 12 then 4 when 72 then 5 when 31 then 6 when 11 then 7 when 61 then 8 when 20 then 9 when 40 then 10 when 35 then 11 else 20 end '
- PRINT(@SQL)
- EXEC(@SQL)
- END
- SET NOCOUNT OFF
-
- GO
- /****** Object: StoredProcedure [dbo].[procRecruitmentByCondition51rcSelect2] Script Date: 2018/12/13 19:11:47 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.10
- --创建人:NICK
- --说明:获取招聘会列表
- --修改:Andy, 2014-12-22,修改显示个数为当天所有记录
- --#####################################################
- CREATE PROCEDURE [dbo].[procRecruitmentByCondition51rcSelect2]
- (
- @RegionID INT,
- @PlaceID INT,
- @BeginDate VARCHAR(10)
- )
- AS
- SET NOCOUNT ON
- BEGIN
- DECLARE @EndDate VARCHAR(10)
- IF DATEPART(HOUR, GETDATE()) < 13
- SET @EndDate = CONVERT(VARCHAR(10), CONVERT(DATETIME, @BeginDate) + 1, 120)
- ELSE
- SET @EndDate = CONVERT(VARCHAR(10), CONVERT(DATETIME, @BeginDate) + 2, 120)
- IF NOT EXISTS(SELECT 'x' FROM SearchDb..SysObjects WHERE Name = 'RecruitmentTmp')
- BEGIN
- CREATE TABLE SearchDb..RecruitmentTmp2(
- ID int NOT NULL,
- RecruitmentName nvarchar(50) NOT NULL,
- RecruitmentDeptID int NOT NULL,
- RecruitmentPlaceId int NOT NULL,
- IsPause tinyint NOT NULL,
- ManagerUserID smallint NULL,
- EndDate smalldatetime NOT NULL,
- BeginDate smalldatetime NOT NULL
- )
- INSERT INTO SearchDb..RecruitmentTmp2
- SELECT ID, RecruitmentName, RecruitmentDeptID, RecruitmentPlaceId, IsPause, ManagerUserID, EndDate, BeginDate
- FROM Recruitment WITH(NOLOCK)
- WHERE EndDate > GETDATE()
- And IsPause=0
- And Len(ManagerUserID)>0
- END
- IF EXISTS(SELECT 'x' FROM SearchDb..RecruitmentTmp2 WITH(NOLOCK) WHERE BeginDate < GETDATE())
- BEGIN
- TRUNCATE TABLE SearchDb..RecruitmentTmp2
- INSERT INTO SearchDb..RecruitmentTmp2
- SELECT ID, RecruitmentName, RecruitmentDeptID, RecruitmentPlaceId, IsPause, ManagerUserID, EndDate, BeginDate
- FROM Recruitment WITH(NOLOCK)
- WHERE EndDate > GETDATE()
- And IsPause=0
- And Len(ManagerUserID)>0
- END
- DECLARE @SQL VARCHAR(MAX)
- SET @SQL = 'SELECT a.ID,a.RecruitmentName,c.id as PlaceID,c.BusLine,a.EndDate,a.BeginDate,c.PlaceName,c.Lng,c.Lat,c.Address,b.Description City,
- d.dcprovinceid,c.mapbarid,c.dcregionid,d.dcprovinceid,c.dcregionid
- FROM SearchDb..RecruitmentTmp2 a WITH(NOLOCK),dcRegion b WITH(NOLOCK),RecruitmentPlace c WITH(NOLOCK),RecruitmentDept d WITH(NOLOCK)
- WHERE d.ID=a.RecruitmentDeptID
- AND d.ID<>1767
- AND b.ID=c.dcRegionID
- AND a.RecruitmentPlaceId=c.id '
- IF @PlaceID <> 0
- BEGIN
- SET @SQL = @SQL + ' AND c.ID = ' + CONVERT(VARCHAR(6), @PlaceID)
- END
- IF @RegionID <> 0
- BEGIN
- SET @SQL = @SQL +' AND c.dcRegionID like '''+CONVERT(VARCHAR(6), @RegionID) + '%'' '
- END
- IF @BeginDate <> ''
- BEGIN
- SET @SQL = @SQL+' AND begindate > ''' + @BeginDate + ''' AND begindate <= ''' + @EndDate + ''''
- END
- SET @SQL = @SQL + ' ORDER BY CONVERT(char(10), a.begindate, 120) asc,
- case dcprovinceid when 32 then 1 when 30 then 2 when 10 then 3 when 12 then 4 when 72 then 5 when 31 then 6 when 11 then 7 when 61 then 8 when 20 then 9 when 40 then 10 when 35 then 11 else 20 end,
- a.begindate '
- --PRINT(@SQL)
- EXEC(@SQL)
- END
- SET NOCOUNT OFF
-
- GO
- /****** Object: StoredProcedure [dbo].[procRecruitmentByID51RCSelect] Script Date: 2018/12/13 19:11:47 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.10
- --创建人:NICK
- --说明:通过招聘会id获取招聘会详细信息
- --#####################################################
- CREATE PROCEDURE [dbo].[procRecruitmentByID51RCSelect]
- (
- @ID INT
- )
- AS
- BEGIN
- SELECT a.*,c.PlaceName,c.Address,b.Description City,c.MapbarID,c.Lng,c.Lat,c.BusLine,CreditRating,
- case cityid when '3202' then 'www.daochengrc.com' else 'www.'+ProvinceDomain end SiteUrl,
- d.ID ProvinceID,a.RecruitmentDeptId From Recruitment a,dcRegion b,RecruitmentPlace c,dcProvince d,
- recruitmentdept e
- WHERE e.id=a.recruitmentdeptid
- AND b.ID=c.dcRegionID
- AND a.RecruitmentPlaceId=c.id
- AND d.ID=Left(a.CityID,2) And a.ID=@ID
- END
- GO
- /****** Object: StoredProcedure [dbo].[procRecruitmentByIDSelect] Script Date: 2018/12/13 19:11:47 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.30
- --创建人:Nick
- --说明:得到招聘会信息
- --修改harry 增加校园招聘会2018-3-20 3-21
- --#####################################################
- CREATE PROCEDURE [dbo].[procRecruitmentByIDSelect]
- (
- @ID INT
- )
- AS
- BEGIN
- IF @ID>0
- BEGIN
- SELECT a.*,b.Lng,b.Lat
- FROM Marketdb..Recruitment a,Marketdb..RmPlace b
- WHERE a.RecruitmentPlaceID = b.id
- AND a.ID=@ID
- END
- ELSE
- BEGIN
- SELECT a.*,a.Name AS RecruitmentName, b.Lng,b.Lat
- FROM wutongguodb..RecruitmentSchool a,Marketdb..RmPlace b
- WHERE a.RecruitmentPlaceID = b.id
- AND a.ID=ABS(@ID)
- END
- END
- GO
- /****** Object: StoredProcedure [dbo].[procRecruitmentByProvinceIDSelect] Script Date: 2018/12/13 19:11:47 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.10
- --创建人:Nick
- --说明:根据省份获取招聘会信息
- --#####################################################
- CREATE PROCEDURE [dbo].[procRecruitmentByProvinceIDSelect]
- (
- @ProvinceID VARCHAR(10)
- )
- AS
- BEGIN
- SELECT top 5 a.ID, a.RecruitmentName, a.EndDate, a.BeginDate, c.PlaceName, c.Address, b.Description City
- FROM Recruitment a, dcRegion b, RecruitmentPlace c, RecruitmentDept d
- WHERE d.ID=a.RecruitmentDeptID
- AND d.ID<>1767
- AND b.ID=c.dcRegionID
- AND a.RecruitmentPlaceId=c.id
- AND LEFT(c.dcRegionID, 2)=@ProvinceID
- AND EndDate>GetDate()
- AND a.IsPause=0
- AND Len(ManagerUserID)>0
- ORDER BY OrderBy, a.EndDate
- END
- GO
- /****** Object: StoredProcedure [dbo].[procRecruitmentByQlrcTopicSelect] Script Date: 2018/12/13 19:11:47 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[procRecruitmentByQlrcTopicSelect]
- (
- @dcRegionID INT, --地区编号 0表示全部 2位表示省份 4位表示城市
- @BeginDate VARCHAR(50),--开始时间 默认两年前数据
- @EndDate VARCHAR(50), --结束时间
- @PageNo INT --页码
- )
- AS
- BEGIN
- SET NOCOUNT ON
- DECLARE @SQL VARCHAR(MAX)
- DECLARE @WHERE VARCHAR(MAX) --查询条件
- DECLARE @TotalNum INT --总量
- IF @PageNo = 0
- BEGIN
- SET @PageNo = 1
- END
-
- SET @SQL = ''
- SET @WHERE = ''
-
- --筛选条件
- SET @WHERE = @WHERE + ' AND a.IsSchool = 1'
- IF @dcRegionID<>0 --选择地区
- BEGIN
- SET @WHERE = @WHERE +' AND c.dcRegionID like '''+CONVERT(VARCHAR(6),@dcRegionID)+'%'' '
- END
- IF @BeginDate<>'' AND @EndDate<>'' --选择时间
- BEGIN
- SET @WHERE = @WHERE + ' AND EndDate >= '''+@BeginDate +''' AND EndDate<'''+@EndDate+''''
- END
- ELSE
- BEGIN
- SET @WHERE = @WHERE + ' AND EndDate >= GETDATE() '
- END
-
- --创建临时表 存放招聘会
- CREATE TABLE #indextable(
- [NUM] int identity(1,1),
- ID INT NULL,
- Type INT NULL,
- DcRegionID INT
-
- )
-
- CREATE TABLE #indextable2(
- [NUM] int identity(1,1),
- ID INT NULL,
- Type INT NULL,
- dcRegionID INT
- )
- IF LEN(@dcRegionID)>=4
- BEGIN
- SET @SQL ='
- INSERT INTO #indextable2(ID,Type,dcRegionID)
- SELECT a.ID,a.IsSchool,b.ID
- FROM MarketDB..Recruitment a WITH(NOLOCK),maindb..dcRegion b WITH(NOLOCK),MarketDB..RmPlace c WITH(NOLOCK),MarketDB..RmDept d WITH(NOLOCK)
- WHERE d.ID=a.RecruitmentDeptID
- AND b.ID=c.dcRegionID
- AND a.RecruitmentPlaceId=c.id
- And a.IsPause=0 and d.IsPause=0 '+@WHERE +'
- AND EndDate > GETDATE() ORDER BY a.orderby, a.BeginDate ASC'
- EXEC(@SQL)
-
- ----------------------未过期
- --本城市
- SET @SQL ='
- INSERT INTO #indextable(ID,Type,dcRegionID)
- SELECT a.ID,a.Type,a.dcRegionID
- FROM #indextable2 a
- WHERE DcRegionID LIKE '''+LEFT(@dcRegionID,4)+'%''
- '
- EXEC(@SQL)
-
-
- END
- ELSE IF LEN(@dcRegionID)=2
- BEGIN
- --本省份
- SET @SQL ='
- INSERT INTO #indextable(ID,Type,dcRegionID)
- SELECT a.ID,a.IsSchool,b.ID
- FROM MarketDB..Recruitment a WITH(NOLOCK),maindb..dcRegion b WITH(NOLOCK),MarketDB..RmPlace c WITH(NOLOCK),MarketDB..RmDept d WITH(NOLOCK)
- WHERE d.ID=a.RecruitmentDeptID
- AND b.ID=c.dcRegionID
- AND a.RecruitmentPlaceId=c.id
- And a.IsPause=0 and d.IsPause=0 '+@WHERE +'
- AND c.DcRegionID LIKE '''+LTRIM(LEFT(@dcRegionID,2))+'%''
- AND EndDate > GETDATE() ORDER BY a.orderby,a.BeginDate '
-
- EXEC(@SQL)
- print '$$'+@SQL
-
- END
-
- DECLARE @SQLTmp VARCHAR(MAX)
- SET @SQLTmp = ''
-
- SET @SQLTmp =' FROM MarketDB..Recruitment a WITH(NOLOCK),MarketDB..RmPlace c WITH(NOLOCK)
- WHERE a.RecruitmentPlaceId=c.id
- AND a.ID IN (SELECT ID FROM #indextable) '
-
-
- --获取招聘会列表
- DECLARE @RecordCount INT
- DECLARE @PageSize INT
- SET @PageSize = 8
- DECLARE @PageLowerBound INT --定义此页的底码
- DECLARE @PageUpperBound INT --定义此页的顶码
- SET @PageLowerBound = (@PageNo -1) * @pagesize
- SET @PageUpperBound = @PageLowerBound + @pagesize
- SELECT @RecordCount = COUNT(*) FROM #indextable
- DELETE FROM #indextable WHERE Num <= @PageLowerBound Or Num > @PageUpperBound
- --创建临时表 存放招聘会
- CREATE TABLE #Rm(
- [ID] [int] NOT NULL,
- [RecruitmentName] NVARCHAR(100) NULL,
- [EndDate] SMALLDATETIME NULL,
- [BeginDate] SMALLDATETIME NULL,
- [PlaceID] INT NULL,
- [PlaceName] NVARCHAR(100) NULL,
- [Address] NVARCHAR(200) NULL,
- [City] NVARCHAR(200) NULL,
- [Lng] VARCHAR(20) NULL,
- [Lat] VARCHAR(20) NULL,
- [mapbarid] VARCHAR(100) NULL,
- [dcregionid] VARCHAR(10) NULL,
- [IsSchool] VARCHAR(20) NULL,
- [OrderNo] [INT] NULL,
- RecruitmentDeptID INT NULL,
- [PhotoNum] [INT] NULL,
- [IsAttention] [INT] NULL,
- BusLine NVARCHAR(500),
- Orderby INT
- )
-
- INSERT INTO #Rm
- SELECT a.ID,a.RecruitmentName,a.EndDate,a.BeginDate,c.id as PlaceID,c.PlaceName,
- c.Address,b.Description City,c.Lng, c.Lat,c.mapbarid,c.dcregionid,a.IsSchool,
- b.OrderNo,a.RecruitmentDeptID,0 AS PhotoNum,0 AS IsAttention,c.BusLine,a.Orderby
- FROM #indextable e,MarketDB..Recruitment a WITH(NOLOCK),maindb..dcRegion b WITH(NOLOCK),MarketDB..RmPlace c WITH(NOLOCK),MarketDB..RmDept d WITH(NOLOCK)
- WHERE e.ID = a.ID
- AND d.ID=a.RecruitmentDeptID
- AND b.ID=c.dcRegionID
- AND a.RecruitmentPlaceId=c.id
- ORDER BY e.Num ASC
-
- SELECT @RecordCount CNT --总数
- SELECT * FROM #Rm --招聘会列表
- SET NOCOUNT OFF
- END
- GO
- /****** Object: StoredProcedure [dbo].[procRecruitmentCallbackSelect] Script Date: 2018/12/13 19:11:48 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --简历投递回调
- --支付宝用
- CREATE PROCEDURE [dbo].[procRecruitmentCallbackSelect]
- (
- @BeginDate VARCHAR(50)
- )
- AS
- SET NOCOUNT ON
- BEGIN
- SELECT a.ID, a.JobID, a.InterviewDate, a.InterViewPlace, b.alipayResumeID, a.Remark
- INTO #T
- FROM exInterview a WITH(NOLOCK), paCvAlipayRelation b WITH(NOLOCK)
- WHERE a.cvMainID = b.cvMainID
- AND a.AddDate > @BeginDate
- SELECT * FROM #T
- SELECT a.ViewDate, a.Reply, b.alipayResumeID, a.JobID
- FROM exjobapply a WITH(NOLOCK INDEX(IX_ExJobApply_Date)), paCvAlipayRelation b WITH(NOLOCK)
- WHERE a.cvMainID = b.cvMainID
- AND (a.AddDate > @BeginDate OR a.ViewDate > @BeginDate OR a.ReplyDate > @BeginDate)
- AND NOT EXISTS(SELECT 'x' FROM #T WHERE alipayResumeID = b.alipayResumeID AND JobID = a.JobID)
- DROP TABLE #T
- END
- GO
- /****** Object: StoredProcedure [dbo].[procRecruitmentImageByRmIDSelect] Script Date: 2018/12/13 19:11:48 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.5
- --创建人:NICK
- --说明:获取招聘会图片
- --#####################################################
- CREATE PROCEDURE [dbo].[procRecruitmentImageByRmIDSelect]
- (
- @RmID INT
- )
- AS
- BEGIN
- SELECT * FROM RecruitmentImage
- WHERE recruitmentid=@RmID
- ORDER BY orderno ,adddate DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcRecruitmentListInsert] Script Date: 2018/12/13 19:11:48 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcRecruitmentListInsert]
- AS
- BEGIN
- DECLARE @ID INT, @Count INT
- SELECT TOP 0 * INTO #t fROM ShortDb..RecruitmentList
- SET @ID = 0
- WHILE EXISTS(SELECT 'x' FROM dcSubSite WHERE IsMainSite = 1 AND ID > @ID)
- BEGIN
- SELECT TOP 1 @ID = ID FROM dcSubSite WHERE IsMainSite = 1 AND ID > @ID ORDER BY ID
- SELECT @Count = COUNT(*)
- FROM Recruitment a, dcRegion b, RecruitmentPlace c, RecruitmentDept d
- WHERE d.ID = a.RecruitmentDeptID
- AND d.ID <> 1767
- AND b.ID = c.dcRegionID
- AND a.RecruitmentPlaceId = c.id
- AND LEFT(c.dcRegionID, 2) = @ID
- AND EndDate>GETDATE()
- AND a.IsPause = 0
- AND Len(ManagerUserID)>0
- IF @COUNT > 200
- SET @COUNT = 200
- INSERT INTO #T
- SELECT @ID Provinceid, *, @COUNT AS cnt
- FROM (SELECT TOP 200 ROW_NUMBER() OVER(ORDER BY OrderBy, a.EndDate) AS Rows,
- a.ID, a.RecruitmentName, a.EndDate, a.BeginDate,
- c.PlaceName, c.Address, b.Description City
- FROM Recruitment a, dcRegion b, RecruitmentPlace c, RecruitmentDept d
- WHERE d.ID = a.RecruitmentDeptID
- AND d.ID<>1767
- AND b.ID = c.dcRegionID
- AND a.RecruitmentPlaceId = c.id
- AND LEFT(c.dcRegionID, 2) = @ID
- AND EndDate>GETDATE()
- AND a.IsPause = 0
- AND LEN(ManagerUserID)>0
- ) AS a
- END
- TRUNCATE TABLE ShortDb..RecruitmentList
- INSERT ShortDb..RecruitmentList SELECT * FROM #t
- END
- GO
- /****** Object: StoredProcedure [dbo].[procRecruitmentPlaceByKeyWordSelect] Script Date: 2018/12/13 19:11:48 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.5
- --创建人:NICK
- --说明:根据关键词搜索招聘会
- --#####################################################
- CREATE PROCEDURE [dbo].[procRecruitmentPlaceByKeyWordSelect]
- (
- @keyword VARCHAR(50)
- )
- AS
- BEGIN
- SELECT TOP 10 a.ID,a.RecruitmentName,a.EndDate,a.BeginDate,c.PlaceName,c.Address,b.Description City
- From Recruitment a,dcRegion b,RecruitmentPlace c,RecruitmentDept d
- Where d.ID=a.RecruitmentDeptID
- AND d.ID<>1767
- AND b.ID=c.dcRegionID
- AND a.RecruitmentPlaceId=c.id
- And EndDate>GetDate()
- And a.IsPause=0 And Len(ManagerUserID)>0
- And (a.RecruitmentName like '%'+@keyword+'%' OR c.PlaceName like '%'+@keyword+'%' OR c.Address like '%'+@keyword+'%')
- ORDER BY orderby, a.EndDate
- END
- GO
- /****** Object: StoredProcedure [dbo].[procRecruitmentPlaceByRegionID2Select] Script Date: 2018/12/13 19:11:49 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.5
- --创建人:NICK
- --说明:获取场馆
- --#####################################################
- CREATE PROCEDURE [dbo].[procRecruitmentPlaceByRegionID2Select]
- (
- @RegionID INT
- )
- AS
- BEGIN
- SELECT * FROM RecruitmentPlace x
- WHERE dcRegionID like ''+CONVERT(VARCHAR(6),@RegionID)+'%'
- AND LEN(VerifyMan)>0
- AND IsCampus=0
- AND EXISTS(
- SELECT TOP 1 'x'
- FROM cvMain a WITH(NOLOCK)
- INNER JOIN marketdb..RmInvitationCode b WITH(NOLOCK)
- ON a.paMainID=b.paMainID
- AND b.Valid=1
- INNER JOIN marketdb..RmProject c WITH(NOLOCK)
- ON b.RmProjectID=c.ID INNER JOIN Recruitment d WITH(NOLOCK)
- ON c.RecruitmentID=d.ID INNER JOIN RecruitmentPlace e WITH(NOLOCK)
- ON d.RecruitmentPlaceID=e.ID
- AND e.ID=x.ID
- AND b.AddDate>GETDATE()-90
- )
- END
- GO
- /****** Object: StoredProcedure [dbo].[procRecruitmentPlaceByRegionIDSelect] Script Date: 2018/12/13 19:11:49 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.31
- --创建人:Nick
- --说明:获取场馆
- --#####################################################
- CREATE PROCEDURE [dbo].[procRecruitmentPlaceByRegionIDSelect]
- (
- @RegionID VARCHAR(6)
- )
- AS
- BEGIN TRY
- SELECT * FROM RecruitmentPlace
- WHERE dcRegionID LIKE @RegionID+'%'
- AND LEN(VerifyMan)>0
- AND EXISTS(
- SELECT 'X'
- FROM marketdb..RmInvitationCode a,marketdb..RmProject b,Recruitment c
- WHERE a.RmProjectID=b.ID
- AND b.RecruitmentID=c.ID
- AND c.RecruitmentPlaceID=RecruitmentPlace.ID
- AND a.Valid=1)
- END TRY
- BEGIN CATCH
- RETURN 0
- END CATCH
- GO
- /****** Object: StoredProcedure [dbo].[procRecruitmentPlaceMapBarIDSelect] Script Date: 2018/12/13 19:11:49 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.5
- --创建人:NICK
- --说明:获取招聘会的mapbarID
- --#####################################################
- CREATE PROCEDURE [dbo].[procRecruitmentPlaceMapBarIDSelect]
- (
- @regionID VARCHAR(6)
- )
- AS
- BEGIN
- SELECT DISTINCT MapBarId2 FROM RecruitmentPlace WHERE dcRegionID LIKE @regionID + '%'
- END
- GO
- /****** Object: StoredProcedure [dbo].[procRecruitmentSelect] Script Date: 2018/12/13 19:11:50 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[procRecruitmentSelect]
- (
- @Type INT, --招聘会类型 0 全部 1 校园招聘会 2社会招聘会
- @dcRegionID INT, --地区编号 0表示全部 2位表示省份 4位表示城市
- @PlaceID INT, --场馆ID
- @BeginDate VARCHAR(50),--开始时间 默认两年前数据
- @EndDate VARCHAR(50), --结束时间
- @LocationRegionID VARCHAR(10), --求职者所在地区
- @PageNo INT --页码
- )
- AS
- BEGIN
- SET NOCOUNT ON
- IF LEN(LTRIM(@LocationRegionID))=0 OR @LocationRegionID = '0'
- SET @LocationRegionID = 10
- DECLARE @SQL VARCHAR(MAX)
- DECLARE @WHERE VARCHAR(MAX),@WHERE2 VARCHAR(MAX) --查询条件
- DECLARE @TotalNum INT --总量
- IF @PageNo = 0
- BEGIN
- SET @PageNo = 1
- END
-
- SET @SQL = ''
- SET @WHERE = ''
- SET @WHERE2 = ''
-
- --筛选条件
- IF @Type = 1 --校园招聘会
- BEGIN
- SET @WHERE = @WHERE + ' AND a.IsSchool = 1'
- SET @WHERE2 = @WHERE2 + ' AND a.IsSchool = 1'
- END
- IF @Type = 2 --社会招聘会
- BEGIN
- SET @WHERE = @WHERE + ' AND a.IsSchool <> 1'
- SET @WHERE2 = @WHERE2 + ' AND a.IsSchool <> 1'
- END
- IF @dcRegionID<>0 --选择地区
- BEGIN
- SET @WHERE = @WHERE +' AND c.dcRegionID like '''+CONVERT(VARCHAR(6),@dcRegionID)+'%'' '
- SET @WHERE2 = @WHERE2 +' AND c.dcRegionID like '''+CONVERT(VARCHAR(6),@dcRegionID)+'%'' '
- END
- IF @PlaceID<>0 --筛选场馆
- BEGIN
- SET @WHERE = @WHERE + ' AND c.ID = '+CONVERT(VARCHAR(20),@PlaceID)
- SET @WHERE2 = @WHERE2 + ' AND c.ID = '+CONVERT(VARCHAR(20),@PlaceID)
- END
-
- IF @BeginDate<>'' AND @EndDate<>'' --选择时间
- BEGIN
- SET @WHERE = @WHERE + ' AND EndDate >= '''+@BeginDate +''' AND EndDate<'''+@EndDate+''''
- END
-
- --创建临时表 存放招聘会
- CREATE TABLE #indextable(
- [NUM] int identity(1,1),
- ID INT NULL,
- Type INT NULL,
- DcRegionID INT
-
- )
-
- CREATE TABLE #indextable2(
- [NUM] int identity(1,1),
- ID INT NULL,
- Type INT NULL,
- dcRegionID INT
- )
- IF @dcRegionID = 0 AND @PlaceID = 0
- BEGIN
- IF LEN(@LocationRegionID)>=4
- BEGIN
- SET @SQL ='
- INSERT INTO #indextable2(ID,Type,dcRegionID)
- SELECT a.ID,a.IsSchool,b.ID
- FROM MarketDB..Recruitment a WITH(NOLOCK),maindb..dcRegion b WITH(NOLOCK),MarketDB..RmPlace c WITH(NOLOCK),MarketDB..RmDept d WITH(NOLOCK)
- WHERE d.ID=a.RecruitmentDeptID
- AND b.ID=c.dcRegionID
- AND a.RecruitmentPlaceId=c.id
- AND a.ManagerUserID IS NOT NULL
- And a.IsPause=0 and d.IsPause=0 '+@WHERE +'
- AND EndDate > GETDATE() ORDER BY a.BeginDate ASC'
- EXEC(@SQL)
-
- ----------------------未过期
- --本城市
- SET @SQL ='
- INSERT INTO #indextable(ID,Type,dcRegionID)
- SELECT a.ID,a.Type,a.dcRegionID
- FROM #indextable2 a
- WHERE DcRegionID LIKE '''+LEFT(@LocationRegionID,4)+'%''
- '
- EXEC(@SQL)
-
- --本省份
- SET @SQL ='
- INSERT INTO #indextable(ID,Type,dcRegionID)
- SELECT a.ID,a.Type,a.dcRegionID
- FROM #indextable2 a
- WHERE a.DcRegionID LIKE '''+LEFT(@LocationRegionID,2)+'%''
- AND a.DcRegionID NOT LIKE '''+LEFT(@LocationRegionID,4)+'%''
- '
- EXEC(@SQL)
-
- --临近省份
- SET @SQL ='
- INSERT INTO #indextable(ID,Type,dcRegionID)
- SELECT a.ID,a.Type,a.dcRegionID
- FROM #indextable2 a
- WHERE LEFT(a.DcRegionID,2) IN (SELECT NearProvinceID FROM dcProvinceNear WITH(NOLOCK) WHERE dcProvinceID = '+LEFT(@LocationRegionID,2)+')
- '
- EXEC(@SQL)
-
- --其他省份
- SET @SQL ='
- INSERT INTO #indextable(ID,Type,dcRegionID)
- SELECT a.ID,a.Type,a.dcRegionID
- FROM #indextable2 a
- WHERE LEFT(a.DcRegionID,2) NOT IN (SELECT NearProvinceID FROM dcProvinceNear WITH(NOLOCK) WHERE dcProvinceID = '+LEFT(@LocationRegionID,2)+')
- AND LEFT(DcRegionID,2)<>'+LEFT(@LocationRegionID,2)+'
- '
- EXEC(@SQL)
- ------------------过期
- SET @SQL ='
- INSERT INTO #indextable(ID,Type,dcRegionID)
- SELECT a.ID,a.IsSchool,b.ID
- FROM MarketDB..Recruitment a WITH(NOLOCK),maindb..dcRegion b WITH(NOLOCK),MarketDB..RmPlace c WITH(NOLOCK),MarketDB..RmDept d WITH(NOLOCK)
- WHERE d.ID=a.RecruitmentDeptID
- AND b.ID=c.dcRegionID
- AND a.RecruitmentPlaceId=c.id
- AND a.ManagerUserID IS NOT NULL
- And a.IsPause=0 and d.IsPause=0 '+@WHERE +'
- AND EndDate < GETDATE()
- AND EndDate>GetDate()-365
- ORDER BY EndDate DESC'
- EXEC(@SQL)
- END
- IF LEN(@LocationRegionID)=2
- BEGIN
- --本省份
- SET @SQL ='
- INSERT INTO #indextable(ID,Type,dcRegionID)
- SELECT a.ID,a.IsSchool,b.ID
- FROM MarketDB..Recruitment a WITH(NOLOCK),maindb..dcRegion b WITH(NOLOCK),MarketDB..RmPlace c WITH(NOLOCK),MarketDB..RmDept d WITH(NOLOCK)
- WHERE d.ID=a.RecruitmentDeptID
- AND b.ID=c.dcRegionID
- AND a.RecruitmentPlaceId=c.id
- AND a.ManagerUserID IS NOT NULL
- And a.IsPause=0 and d.IsPause=0 '+@WHERE +'
- AND c.DcRegionID LIKE '''+LTRIM(LEFT(@LocationRegionID,2))+'%''
- AND EndDate > GETDATE() ORDER BY a.BeginDate '
-
- EXEC(@SQL)
- print '$$'+@SQL
- --临近省份
- SET @SQL ='
- INSERT INTO #indextable(ID,Type,dcRegionID)
- SELECT a.ID,a.IsSchool,b.ID
- FROM MarketDB..Recruitment a WITH(NOLOCK),maindb..dcRegion b WITH(NOLOCK),MarketDB..RmPlace c WITH(NOLOCK),MarketDB..RmDept d WITH(NOLOCK)
- WHERE d.ID=a.RecruitmentDeptID
- AND b.ID=c.dcRegionID
- AND a.RecruitmentPlaceId=c.id
- AND a.ManagerUserID IS NOT NULL
- And a.IsPause=0 and d.IsPause=0 '+@WHERE +'
- AND LEFT(c.DcRegionID,2) IN (SELECT NearProvinceID FROM dcProvinceNear WHERE dcProvinceID = LEFT('+@LocationRegionID+',2))
- AND EndDate > GETDATE() ORDER BY a.EndDate'
- EXEC(@SQL)
- print '$$'+@SQL
-
- --其他省份
- SET @SQL ='
- INSERT INTO #indextable(ID,Type,dcRegionID)
- SELECT a.ID,a.IsSchool,b.ID
- FROM MarketDB..Recruitment a WITH(NOLOCK),maindb..dcRegion b WITH(NOLOCK),MarketDB..RmPlace c WITH(NOLOCK),MarketDB..RmDept d WITH(NOLOCK)
- WHERE d.ID=a.RecruitmentDeptID
- AND b.ID=c.dcRegionID
- AND a.RecruitmentPlaceId=c.id
- AND a.ManagerUserID IS NOT NULL
- And a.IsPause=0 and d.IsPause=0 '+@WHERE +'
- AND LEFT(c.DcRegionID,2) NOT IN (SELECT NearProvinceID FROM dcProvinceNear WHERE dcProvinceID = LEFT('+@LocationRegionID+',2))
- AND LEFT(DcRegionID,2)<>'+@LocationRegionID+'
- AND EndDate > GETDATE() ORDER BY a.EndDate'
- EXEC(@SQL)
- print '$$'+@SQL
- ------------------过期
- SET @SQL ='
- INSERT INTO #indextable(ID,Type,dcRegionID)
- SELECT a.ID,a.IsSchool,b.ID
- FROM MarketDB..Recruitment a WITH(NOLOCK),maindb..dcRegion b WITH(NOLOCK),MarketDB..RmPlace c WITH(NOLOCK),MarketDB..RmDept d WITH(NOLOCK)
- WHERE d.ID=a.RecruitmentDeptID
- AND b.ID=c.dcRegionID
- AND a.RecruitmentPlaceId=c.id
- AND a.ManagerUserID IS NOT NULL
- And a.IsPause=0 and d.IsPause=0 '+@WHERE +'
- AND EndDate < GETDATE()
- AND EndDate>GetDate()-365
- ORDER BY EndDate DESC'
- EXEC(@SQL)
- print '$$'+@SQL
- END
- END
- ELSE
- BEGIN
- IF @BeginDate<>'' AND @EndDate<>''
- BEGIN
- SET @SQL ='
- INSERT INTO #indextable(ID,Type,dcRegionID)
- SELECT a.ID,a.IsSchool,b.ID
- FROM MarketDB..Recruitment a WITH(NOLOCK),maindb..dcRegion b WITH(NOLOCK),MarketDB..RmPlace c WITH(NOLOCK),MarketDB..RmDept d WITH(NOLOCK)
- WHERE d.ID=a.RecruitmentDeptID
- AND b.ID=c.dcRegionID
- AND a.RecruitmentPlaceId=c.id
- AND a.ManagerUserID IS NOT NULL
- And a.IsPause=0 and d.IsPause=0 '+@WHERE +' ORDER BY a.BeginDate '
- EXEC(@SQL)
- END
- ELSE
- BEGIN
- SET @SQL = '
- INSERT INTO #indextable(ID,Type,dcRegionID)
- SELECT a.ID,a.IsSchool,b.ID
- FROM MarketDB..Recruitment a WITH(NOLOCK),maindb..dcRegion b WITH(NOLOCK),MarketDB..RmPlace c WITH(NOLOCK),MarketDB..RmDept d WITH(NOLOCK)
- WHERE d.ID=a.RecruitmentDeptID
- AND b.ID=c.dcRegionID
- AND a.RecruitmentPlaceId=c.id
- AND a.ManagerUserID IS NOT NULL
- And a.IsPause=0 and d.IsPause=0 '+@WHERE +
- ' AND EndDate>GetDate() ORDER BY a.BeginDate ASC'
- EXEC(@SQL)
-
- SET @SQL ='
- INSERT INTO #indextable(ID,Type,dcRegionID)
- SELECT a.ID,a.IsSchool,b.ID
- FROM MarketDB..Recruitment a WITH(NOLOCK),maindb..dcRegion b WITH(NOLOCK),MarketDB..RmPlace c WITH(NOLOCK),MarketDB..RmDept d WITH(NOLOCK)
- WHERE d.ID=a.RecruitmentDeptID
- AND b.ID=c.dcRegionID
- AND a.RecruitmentPlaceId=c.id
- AND a.ManagerUserID IS NOT NULL
- And a.IsPause=0 And d.IsPause=0 '+@WHERE +
- ' And EndDate < GetDate() and EndDate>GetDate()-365 ORDER BY a.BeginDate DESC '
- EXEC(@SQL)
- END
- END
-
- --INSERT INTO #RmTmp2 SELECT * ,ROW_NUMBER() OVER(ORDER BY (SELECT 0)) AS RowNum FROM #RmTmp1
-
- DECLARE @SQLTmp VARCHAR(MAX)
- SET @SQLTmp = ''
-
- SET @SQLTmp =' FROM MarketDB..Recruitment a WITH(NOLOCK),MarketDB..RmPlace c WITH(NOLOCK)
- WHERE a.RecruitmentPlaceId=c.id
- AND a.ID IN (SELECT ID FROM #indextable) '
-
- --创建临时表 存放招聘会类型
- CREATE TABLE #RType(
- [Type] [int] NOT NULL
- )
-
- INSERT INTO #RType
- SELECT distinct Type FROM #indextable
- --创建临时表 存放地区信息
- CREATE TABLE #Region(
- [ID] [int] NOT NULL,
- [Description] NVARCHAR(50) NULL,
- [OrderNo] INT NULL
- )
- IF @dcRegionID = 0 --取省份信息
- BEGIN
- INSERT INTO #Region (ID)
- SELECT distinct LEFT(dcRegionID,2) FROM #indextable
-
- UPDATE a SET OrderNo = b.OrderNo,a.Description = b.Description FROM #Region a, MainDB..DcRegion b
- WHERE a.ID = b.ID
- END
-
- IF LEN(@dcRegionID)=2 AND @PlaceID=0 --取城市信息
- BEGIN
- SET @SQL = '
- INSERT INTO #Region (ID)
- SELECT SUBSTRING(dcRegionID,0,5) '+@SQLTmp +
- ' GROUP BY SUBSTRING(dcRegionID,0,5)'
- print '$$'+@SQL
-
- EXEC(@SQL)
- DELETE FROM #Region WHERE LEN(ID)=2
-
- UPDATE a SET OrderNo = b.OrderNo FROM #Region a, MainDB..DcRegion b WITH(NOLOCK)
- WHERE a.ID = b.ID
-
- UPDATE a
- SET a.Description = b.Description
- FROM #Region a,MainDB..dcRegion b
- WHERE a.ID = b.ID
- END
-
- --创建临时表 存放场馆
- CREATE TABLE #RmPlace(
- [ID] [int] NOT NULL,
- [PlaceName] NVARCHAR(100) NOT NULL,
- [Lng] decimal(8,5) NULL,
- [Lat] decimal(8,5) NULL
- )
-
- IF @dcRegionID<>0 AND @PlaceID=0
- BEGIN
- SET @SQL = '
- INSERT INTO #RmPlace
- SELECT e.ID,e.PlaceName,e.Lng,e.Lat
- FROM MarketDB..RmPlace e WITH(NOLOCK),
- ( SELECT c.ID,count(*) cnt '+@SQLTmp+' group by c.ID
- )f
- WHERE e.ID = f.ID
- ORDER BY e.dcregionid,f.cnt'
-
- --PRINT(@SQL)
- EXEC(@SQL)
- print '$$'+@SQL
- END
- --获取招聘会列表
- DECLARE @RecordCount INT
- DECLARE @PageSize INT
- SET @PageSize = 20
- DECLARE @PageLowerBound INT --定义此页的底码
- DECLARE @PageUpperBound INT --定义此页的顶码
- SET @PageLowerBound = (@PageNo -1) * @pagesize
- SET @PageUpperBound = @PageLowerBound + @pagesize
- SELECT @RecordCount = COUNT(*) FROM #indextable
- DELETE FROM #indextable WHERE Num <= @PageLowerBound Or Num > @PageUpperBound
- --创建临时表 存放招聘会
- CREATE TABLE #Rm(
- [ID] [int] NOT NULL,
- [RecruitmentName] NVARCHAR(100) NULL,
- [EndDate] SMALLDATETIME NULL,
- [BeginDate] SMALLDATETIME NULL,
- [PlaceID] INT NULL,
- [PlaceName] NVARCHAR(100) NULL,
- [Address] NVARCHAR(200) NULL,
- [City] NVARCHAR(200) NULL,
- [Lng] VARCHAR(20) NULL,
- [Lat] VARCHAR(20) NULL,
- [mapbarid] VARCHAR(100) NULL,
- [dcregionid] VARCHAR(10) NULL,
- [IsSchool] VARCHAR(20) NULL,
- [OrderNo] [INT] NULL,
- RecruitmentDeptID INT NULL,
- [PhotoNum] [INT] NULL,
- [IsAttention] [INT] NULL,
- BusLine NVARCHAR(500)
- )
-
- INSERT INTO #Rm
- SELECT a.ID,a.RecruitmentName,a.EndDate,a.BeginDate,c.id as PlaceID,c.PlaceName,
- c.Address,b.Description City,c.Lng, c.Lat,c.mapbarid,c.dcregionid,a.IsSchool,
- b.OrderNo,a.RecruitmentDeptID,0 AS PhotoNum,0 AS IsAttention,c.BusLine
- FROM #indextable e,MarketDB..Recruitment a WITH(NOLOCK),maindb..dcRegion b WITH(NOLOCK),MarketDB..RmPlace c WITH(NOLOCK),MarketDB..RmDept d WITH(NOLOCK)
- WHERE e.ID = a.ID
- AND d.ID=a.RecruitmentDeptID
- AND b.ID=c.dcRegionID
- AND a.RecruitmentPlaceId=c.id
- AND a.ManagerUserID IS NOT NULL
- ORDER BY e.Num ASC
-
- --修改照片上传数量
- UPDATE a
- SET PhotoNum =
- (
- SELECT COUNT(*)
- FROM marketdb..rmplacephoto m WITH(NOLOCK),marketdb..rmmyplace n WITH(NOLOCK)
- WHERE m.rmmyplaceid=n.id
- AND n.rmdeptid=a.RecruitmentDeptID
- AND n.rmplaceid=a.PlaceID
- AND m.verifyDate is NOT NULL
- ) FROM #Rm a
-
- --有招聘会的日期 (一个月之内)
- CREATE TABLE #RmDate(
- [Date] VARCHAR(30)
- )
-
- SET @SQL = '
- INSERT INTO #RmDate
- SELECT CONVERT(VARCHAR(10), a.BeginDate,20)
- FROM MarketDB..Recruitment a WITH(NOLOCK),dcRegion b WITH(NOLOCK),MarketDB..RmPlace c WITH(NOLOCK),MarketDB..RmDept d WITH(NOLOCK)
- WHERE d.ID=a.RecruitmentDeptID
- AND b.ID=c.dcRegionID
- AND a.RecruitmentPlaceId=c.id
- And a.IsPause=0 and d.IsPause=0 '+@WHERE2+'
- AND BeginDate > DATEADD(ms,0,DATEADD(dd, DATEDIFF(dd,0,GETDATE()), 0))
- AND BeginDate <DATEADD(mm,1,GETDATE())
- GROUP BY CONVERT(VARCHAR(10), a.BeginDate,20)
- HAVING COUNT(1)>0
- '
- EXEC(@SQL)
-
- SELECT @RecordCount CNT --总数
- SELECT * FROM #RType --招聘会类型
- SELECT * FROM #Region ORDER BY OrderNo --地区
- SELECT * FROM #RmPlace --场馆
- SELECT * FROM #Rm --招聘会列表
- --有招聘会的日期
- SELECT * FROM #RmDate
- SET NOCOUNT OFF
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcRecruitmentTop9Select] Script Date: 2018/12/13 19:11:50 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcRecruitmentTop9Select]
- (
- @ProvinceId INT
- )
- AS
- --INSERT INTO procLog select 'ProcRecruitmentTop9Seleect', '', getdate()
- BEGIN
- SELECT * FROM RecruitmentTop9 WITH(NOLOCK) WHERE ProvinceId = @ProvinceID ORDER BY RowID
- END
- GO
- /****** Object: StoredProcedure [dbo].[procRefererInsert] Script Date: 2018/12/13 19:11:50 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --创建人 Lambo 20101013
- --用于首页记录访问记录
- CREATE PROCEDURE [dbo].[procRefererInsert]
- (
- @province_id SMALLINT,
- @versionid SMALLINT,
- @referer VARCHAR(190),
- @ip VARCHAR(15),
- @keyve NVARCHAR(50)
- )
- AS
- SET NOCOUNT ON
- IF CHARINDEX(',', @ip) > 0
- SET @Ip = LEFT(@Ip, CHARINDEX(',', @Ip) - 1)
- BEGIN
- SET NOCOUNT ON
- SELECT TOP 1 ip
- FROM referer WITH(NOLOCK)
- WHERE versionid=@versionid
- AND referer=@referer
- AND ip=@ip
- AND LoginDate > DATEADD(MINUTE, -10, GETDATE())
- IF (@@ROWCOUNT=0)
- BEGIN
- INSERT INTO referer (province_id,versionid,referer,ip,keywords)
- VALUES(ISNULL(@province_id, 0), ISNULL(@versionid, 0),@referer,@ip,@keyve)
- END
- SET NOCOUNT OFF
- END
- GO
- /****** Object: StoredProcedure [dbo].[procRefererInsert2] Script Date: 2018/12/13 19:11:51 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --创建人 Lambo 20101013
- --用于首页记录访问记录
- --sean 20150324 sean add sessionid
- CREATE ProCEDURE [dbo].[procRefererInsert2]
- (
- @Province_id SMALLINT,
- @Versionid SMALLINT,
- @Referer VARCHAR(190),
- @Ip VARCHAR(15),
- @Keyve NVARCHAR(50),
- @SessionId VARCHAR(30)
- )
- AS
- SET NOCOUNT ON
- IF CHARINDEX(',', @ip) > 0
- SET @Ip = LEFT(@Ip, CHARINDEX(',', @Ip) - 1)
- BEGIN
- SET NOCOUNT ON
- SELECT TOP 1 Ip
- FROM Referer WITH(NOLOCK)
- WHERE Versionid = @Versionid
- AND Referer = @Referer
- AND Ip = @Ip
- AND LoginDate > DATEADD(MINUTE, -10, GETDATE())
- IF (@@ROWCOUNT=0)
- BEGIN
- INSERT INTO Referer(Province_id, Versionid, Referer, Ip, Keywords, SessionId)
- VALUES(ISNULL(@Province_id, 0), ISNULL(@Versionid, 0), @Referer, @Ip, @Keyve, @SessionId)
- END
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcRefuseIpInsert] Script Date: 2018/12/13 19:11:52 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcRefuseIpInsert]
- AS
- BEGIN
- SELECT Ip, COUNT(*) VisitNumber, DATEADD(HOUR, 6, GETDATE()) ReleaseTime
- INTO #t
- FROM Searchip
- --WHERE AddDate > DATEADD(MINUTE, -30, GETDATE())
- GROUP BY ip
- HAVING COUNT(*) > 250
- INSERT INTO #t
- SELECT Ip, COUNT(*) VisitNumber, DATEADD(HOUR, 2, GETDATE()) ReleaseTime
- FROM Searchip
- --WHERE AddDate > DATEADD(MINUTE, -30, GETDATE())
- GROUP BY ip
- HAVING COUNT(*) BETWEEN 151 AND 250
- INSERT INTO #t
- SELECT Ip, COUNT(*) VisitNumber, DATEADD(MINUTE, 30, GETDATE()) ReleaseTime
- FROM Searchip
- WHERE AddDate > DATEADD(MINUTE, -5, GETDATE())
- AND IP NOT IN(SELECT IP FROM #t)
- GROUP BY ip
- HAVING COUNT(*) > 80
- DELETE #t WHERE Ip NOT LIKE '%.%'
- DELETE a
- FROM RefuseIp a, #t b
- WHERE a.Ip = b.Ip
- AND a.ReleaseTime < b.ReleaseTime
- AND a.IsForever = 0
- DELETE #t WHERE Ip IN(SELECT Ip FROM RefuseIp)
- INSERT RefuseIp(Ip, VisitNumber, ReleaseTime) SELECT Ip, VisitNumber, ReleaseTime FROM #t
- DELETE RefuseIp WHERE ReleaseTime < GETDATE() AND IsForever = 0
- DECLARE @Cnt INT, @Cnt2 INT
- SELECT @Cnt = COUNT(*)
- FROM SearchDb..paSearchCondition WITH(NOLOCK)
- WHERE LogTime > DATEADD(MINUTE, -1, GETDATE())
- SELECT @Cnt2 = SUM(SearchCount) FROM SearchCountLog WHERE Id > (SELECT TOP 1 ID - 10 FROM SearchCountLog ORDER BY Id DESC)
- INSERT INTO SearchCountLog SELECT @Cnt, GETDATE()
- SET @Cnt = (@Cnt * 10 + @Cnt2) / 40
- SET @Cnt = @Cnt * 0.5
- IF @Cnt > 3000
- DELETE a FROM RefuseIp a, Ip_White b WHERE CHARINDEX(b.ip, a.Ip) > 0 AND RIGHT(a.Ip, 1) = 'a'
- ELSE IF @Cnt > 2600
- DELETE a FROM RefuseIp a, Ip_White b WHERE CHARINDEX(b.ip, a.Ip) > 0 AND RIGHT(a.Ip, 1) IN(SELECT A FROM dbo.FnSplit('0', ','))
- ELSE IF @Cnt > 2500
- DELETE a FROM RefuseIp a, Ip_White b WHERE CHARINDEX(b.ip, a.Ip) > 0 AND RIGHT(a.Ip, 1) IN(SELECT A FROM dbo.FnSplit('0,1', ','))
- ELSE IF @Cnt > 2400
- DELETE a FROM RefuseIp a, Ip_White b WHERE CHARINDEX(b.ip, a.Ip) > 0 AND RIGHT(a.Ip, 1) IN(SELECT A FROM dbo.FnSplit('0,1,2', ','))
- ELSE IF @Cnt > 2300
- DELETE a FROM RefuseIp a, Ip_White b WHERE CHARINDEX(b.ip, a.Ip) > 0 AND RIGHT(a.Ip, 1) IN(SELECT A FROM dbo.FnSplit('0,1,2,3', ','))
- ELSE IF @Cnt > 2200
- DELETE a FROM RefuseIp a, Ip_White b WHERE CHARINDEX(b.ip, a.Ip) > 0 AND RIGHT(a.Ip, 1) IN(SELECT A FROM dbo.FnSplit('0,1,2,3,4', ','))
- ELSE IF @Cnt > 2100
- DELETE a FROM RefuseIp a, Ip_White b WHERE CHARINDEX(b.ip, a.Ip) > 0 AND RIGHT(a.Ip, 1) IN(SELECT A FROM dbo.FnSplit('0,1,2,3,4,5', ','))
- ELSE IF @Cnt > 2000
- DELETE a FROM RefuseIp a, Ip_White b WHERE CHARINDEX(b.ip, a.Ip) > 0 AND RIGHT(a.Ip, 1) IN(SELECT A FROM dbo.FnSplit('0,1,2,3,4,5,6', ','))
- ELSE IF @Cnt > 1900
- DELETE a FROM RefuseIp a, Ip_White b WHERE CHARINDEX(b.ip, a.Ip) > 0 AND RIGHT(a.Ip, 1) IN(SELECT A FROM dbo.FnSplit('0,1,2,3,4,5,6,7', ','))
- ELSE IF @Cnt > 1800
- DELETE a FROM RefuseIp a, Ip_White b WHERE CHARINDEX(b.ip, a.Ip) > 0 AND RIGHT(a.Ip, 1) IN(SELECT A FROM dbo.FnSplit('0,1,2,3,4,5,6,7,8', ','))
- ELSE
- DELETE a FROM RefuseIp a, Ip_White b WHERE CHARINDEX(b.ip, a.Ip) > 0
- DELETE SearchIp WHERE AddDate < DATEADD(MINUTE, -30, GETDATE())
- update refuseip set isforever=1 where ip like '42.62.%'
- update refuseip set isforever=1 where ip like '42.156.%'
- update refuseip set isforever=1 where ip like '42.120.%'
- update refuseip set isforever=1 where ip like '208.115.1%'
- update refuseip set isforever=1 where ip like '212.7.%'
- update refuseip set isforever=1 where ip like '122.80.60.226'
- --
- -- SELECT LEFT(ip, LEN(ip) - CHARINDEX('.', REVERSE(ip))) ip INTO #1 FROM Searchip
- -- DELETE #1 WHERE Ip NOT LIKE '%.%.%'
- -- SELECT ip, COUNT(*) Cnt INTO #2 FROM #1 GROUP BY Ip
- --
- -- SELECT Ip, Cnt VisitNumber, DATEADD(HOUR, 6, GETDATE()) ReleaseTime
- -- INTO #tt
- -- FROM #2
- -- WHERE Cnt > 1000
- --
- -- INSERT RefuseIp SELECT *, GETDATE(), 0 FROM #tt WHERE IP NOT IN(SELECT IP FROM RefuseIp)
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcReSendSmsMessage] Script Date: 2018/12/13 19:11:52 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.4
- --创建人:John
- --说明:重新发送忘记密码通知短信
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcReSendSmsMessage]
- (
- @askNo VARCHAR(40)
- )
- AS
- BEGIN
- DECLARE @cnt INT
- SELECT @cnt = COUNT(1)
- FROM SmsMessageLog
- WHERE mobile =
- (
- SELECT TOP 1 mobile
- FROM paGetPasswordLog WITH(NOLOCK)
- WHERE askno = @askNo AND mobile IS NOT NULL
- )
- AND adddate > CONVERT(VARCHAR(10), GETDATE(), 23)
- AND MsgType=104
- IF @cnt < 5
- BEGIN
- INSERT INTO SmsMessageLog(SendMan, ManagerUserId, paMainId, caMainId, Mobile, MsgType, IsCat, Msg)
- SELECT TOP 1 SendMan, ManagerUSerId, paMainId, caMainId, Mobile, MsgType, IsCat, Msg
- FROM smsmessagelog
- WHERE mobile =
- (
- SELECT TOP 1 mobile
- FROM paGetPasswordLog WITH(NOLOCK)
- WHERE askno = @askNo AND mobile IS NOT NULL
- )
- AND adddate > CONVERT(VARCHAR(10), GETDATE(), 23)
- AND MsgType=104 ORDER BY id DESC
- RETURN @cnt
- END
- ELSE
- BEGIN
- RETURN -1
- END
- END
- GO
- /****** Object: StoredProcedure [dbo].[procRmCompanyCvByCvMainIDSelect] Script Date: 2018/12/13 19:11:53 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.31
- --创建人:Nick
- --说明:
- --#####################################################
- CREATE PROCEDURE [dbo].[procRmCompanyCvByCvMainIDSelect]
- (
- @CvMainID INT,
- @CpMainID INT
- )
- AS
- BEGIN TRY
- SELECT 'x' FROM RmCompanyCv WITH(NOLOCK)
- WHERE cvMainID=@CvMainID AND cpMainID=@CpMainID
- END TRY
- BEGIN CATCH
- RETURN 0
- END CATCH
- GO
- /****** Object: StoredProcedure [dbo].[procRmInvitationCodeByPaMainIDSelect] Script Date: 2018/12/13 19:11:53 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.31
- --创建人:Nick
- --说明:获取该简历在招聘会的认证信息
- --#####################################################
- CREATE PROCEDURE [dbo].[procRmInvitationCodeByPaMainIDSelect]
- (
- @paMainID VARCHAR(20)
- )
- AS
- BEGIN TRY
- SELECT AddDate
- FROM marketdb..RmInvitationCode WITH(NOLOCK)
- WHERE pamainid=@paMainID
- AND valid=1
- AND rmprojectid=1
- AND adddate > GETDATE()-90
- END TRY
- BEGIN CATCH
- RETURN 0
- END CATCH
- GO
- /****** Object: StoredProcedure [dbo].[ProcRtx_LogSelect] Script Date: 2018/12/13 19:11:53 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE procedure [dbo].[ProcRtx_LogSelect]
- AS
- BEGIN
- SELECT TOP 10 * FROM Rtx_Log WHERE AddDate > CONVERT(VARCHAR(10), GETDATE(), 120) ORDER BY ID DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcRtxNotifyLogBycaPlaintInsert] Script Date: 2018/12/13 19:11:53 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcRtxNotifyLogBycaPlaintInsert]
- AS
- BEGIN
- IF EXISTS(SELECT 'x' FROM caPlaint WHERE ReplyType = 0)
- BEGIN
- SELECT caMainId, 9999 cpMainId, SPACE(20) Consultantid, Plaint, cvMainId INTO #t FROM caPlaint WHERE ReplyType = 0
- UPDATE a SET a.cpMainID = b.cpMainId
- FROM #t a, caMain b
- WHERE a.caMainId = b.Id
-
- UPDATE a SET a.ConsultantId = b.ConsultantId
- FROM #t a, cpMain b
- WHERE a.cpMainId = b.Id
- UPDATE a SET a.ConsultantId = b.Superior
- FROM #t a, ManagerUser b
- WHERE a.ConsultantId = b.Id
- AND (b.Status > 2 OR b.RtxStatus = 0)
- DELETE #t WHERE ISNULL(ConsultantId, '') = ''
-
- INSERT RtxNotifyLog
- SELECT ConsultantId, '您有新的投诉,请及时处理', Plaint +
- ' 企业编号=' + LTRIM(STR(cpMainID)) + ' 简历帐号' + LTRIM(STR(cvMainID)+' http://sysback.51rc.com/newoa/Operate/Complaint/CaPlaint'),
- 0, 0, 0, Null, GETDATE()
- FROM #t
- END
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcRtxNotifyLogInsert] Script Date: 2018/12/13 19:11:54 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.28
- --创建人:John
- --说明:RTX通知日志新增
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcRtxNotifyLogInsert]
- (
- @Receiver VARCHAR(2000),
- @RtxTitle NVARCHAR(50),
- @RtxMessage VARCHAR(1000),
- @SendType TINYINT,
- @ShowType TINYINT,
- @DelayTime SMALLINT
- )
- AS
- SET NOCOUNT ON
- BEGIN TRY
- IF @Receiver NOT LIKE '1,%'
- INSERT INTO RtxNotifyLog (Receiver, RtxTitle, RtxMessage, SendType, ShowType, DelayTime)
- SELECT @Receiver, @RtxTitle, @RtxMessage, @SendType, @ShowType, @DelayTime
- END TRY
- BEGIN CATCH
- INSERT INTO RtxNotifyLog (Receiver, RtxTitle, RtxMessage, SendType, ShowType, DelayTime)
- SELECT '112', 'Error:' + @RtxTitle, @Receiver + '|' + @RtxMessage, 0, 0, 1
- END CATCH
- GO
- /****** Object: StoredProcedure [dbo].[ProcRtxNotifyLogSelect] Script Date: 2018/12/13 19:11:54 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcRtxNotifyLogSelect]
- AS
- BEGIN
- DECLARE @t AS TABLE(
- ID int,
- Receiver varchar(2000),
- RtxTitle nvarchar(50),
- RtxMessage varchar(1000),
- SendType tinyint,
- DelayTime smallint,
- ShowType TinyInt,
- SendTime smalldatetime,
- AddTime smalldatetime,
- IsDelete BIT,
- IsSms BIT
- )
- INSERT INTO @t
- SELECT TOP 100 *, 0 IsDelete, 0 IsSms FROM RtxNotifyLog WITH(NOLOCK) WHERE SendTime IS NULL
-
- UPDATE @t SET IsDelete = 1
- WHERE SendType = 0
- AND NOT EXISTS(
- SELECT 'x' FROM ManagerUser WITH(NOLOCK)
- WHERE ID IN(SELECT * FROM dbo.Split(Receiver, ','))
- AND RtxStatus IN(1, 2)
- )
- --
- UPDATE @t SET IsSms = 1
- WHERE SendType = 2
- AND NOT EXISTS(
- SELECT 'x' FROM ManagerUSer WITH(NOLOCK)
- WHERE ID IN(SELECT * FROM dbo.Split(Receiver, ','))
- AND RtxStatus IN(1, 2)
- )
- UPDATE RtxNotifyLog SET SendType = 4 WHERE ID IN(SELECT ID FROM @t WHERE IsDelete = 1)
- UPDATE RtxNotifyLog SET SendType = 5 WHERE ID IN(SELECT ID FROM @t WHERE IsSms = 1)
- UPDATE RtxNotifyLog SET SendTime = GETDATE() WHERE ID IN(SELECT ID FROM @t)
- INSERT INTO SmsMessageLog(SendMan, ManagerUSerID, Mobile, Msg, IsCat, SmsType, MsgType)
- SELECT 0, a.Receiver, b.Mobile, LEFT(a.RtxTitle + ',' + RtxMessage, 70), 0, 1, 205
- FROM @t a, Oadb..WorkUSer b WITH(NOLOCK)
- WHERE a.Receiver = b.ManagerUserId
- AND b.JobStatus < 3
- AND b.Mobile > ''
- AND a.Receiver NOT LIKE '%,%'
- AND a.IsSms = 1
- UPDATE @t SET Receiver = REPLACE(',' + Receiver + ',', ',1,', ',001,')
- UPDATE @t SET Receiver = SUBSTRING(Receiver, 2, LEN(Receiver) - 1)
- SELECT * FROM @t WHERE IsDelete = 0
- INSERT INTO ServiceRunLog(ServiceId, RunRows, RunId, RunStatus, RunMessage)
- SELECT 2, @@RowCount, 0, 1, '提取Rtx数据'
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSalaryAnalysisByJobTypeSelect] Script Date: 2018/12/13 19:11:54 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.3
- --创建人:John
- --说明:根据Jobtype和Region获取薪酬分析
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcSalaryAnalysisByJobTypeSelect]
- (
- @dcRegionID VARCHAR(4),
- @dcJobTypeID SMALLINT
- )
- AS
- BEGIN
- SELECT TOP 10 * FROM reportdb..SalaryReportJobtype WHERE dcRegionid = @dcRegionID AND dcJobTypeID = @dcJobTypeID
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSalaryAnalysisByRegionIDSelect] Script Date: 2018/12/13 19:11:54 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.31
- --创建人:John
- --说明:根据RegionID获取该地区的各项数据
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcSalaryAnalysisByRegionIDSelect]
- (
- @dcRegionID VARCHAR(6)
- )
- AS
- BEGIN
- SELECT TOP 10 * FROM reportdb..SalaryReportRegion WHERE dcRegionid = @dcRegionID
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSalaryRankByRegionIDSelect] Script Date: 2018/12/13 19:11:54 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.31
- --创建人:John
- --说明:根据RegionID 获取该地区岗位薪酬排行
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcSalaryRankByRegionIDSelect]
- (
- @dcRegionID VARCHAR(4)
- )
- AS
- BEGIN
- SELECT TOP 10 dcJobTypeID,AvgSalary FROM reportdb..SalaryReportJobType WHERE dcRegionid = @dcRegionID ORDER BY AvgSalary DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSalaryReportBydcRegionIdSelect] Script Date: 2018/12/13 19:11:54 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --一分钟自动生成期望月薪
- --harry
- --2018-6-22
- CREATE PROCEDURE [dbo].[ProcSalaryReportBydcRegionIdSelect]
- (
- @dcRegionID INT,
- @dcJobTypeID varchar(100)
- )
- AS
- SET NOCOUNT ON
- BEGIN
- DECLARE @T AS TABLE(id INT identity(1,1),data INT)
- INSERT INTO @T(data)
- SELECT * FROM dbo.fnSplit(@dcJobTypeID, ',')
-
- IF @dcRegionID=0
- SET @dcRegionID=32
- DECLARE @avgsalary INT
-
- DECLARE @jobtypeid INT, @id INT
- WHILE EXISTS(SELECT 'x' FROM @T)
- BEGIN
- SELECT TOP 1 @id = id,@jobtypeid=data FROM @T
- SELECT @avgsalary=AVG(AvgSalary)
- FROM reportdb..SalaryReportJobtype
- WHERE LEFT(dcregionId,LEN(@dcRegionID))=@dcRegionID
- AND LEFT(dcJobTypeId,LEN(@jobtypeid))=@jobtypeid
-
- IF @avgsalary>0
- BEGIN
- DELETE FROM @T
- END
- ELSE
- BEGIN
- DELETE FROM @T WHERE id=@id
- END
- END
- SELECT @avgsalary AS avgsalary
- END
- SET NOCOUNT OFF
- GO
- /****** Object: StoredProcedure [dbo].[procSalaryReportCvMajorSelect] Script Date: 2018/12/13 19:11:55 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- ---根据专业查工资
- ---harry
- ---2018-3-2
- --procSalaryReportCvMajorSelect '网络工程',11,32
- CREATE PROCEDURE [dbo].[procSalaryReportCvMajorSelect]
- (
- @MajorName NVARCHAR(40),
- @dcMajorId INT,
- @dcRegionId INT
- )
- AS
- SET NOCOUNT ON
- BEGIN
- CREATE TABLE #T
- (
- dcMajorId INT,
- majorName NVARCHAR(40),
- livePlace INT,
- dcJobTypeId SMALLINT,
- jobTypeName NVARCHAR(40),
- cvCnt INT, --数量
- allCnt INT --结果总数据
- )
- CREATE TABLE #Ttemp
- (
- dcRegionId INT,
- dcjobtypeId INT,
- averageExpectSalary INT,
- averageJobTypeSalary INT
- )
- CREATE TABLE #Tsalary
- (
- averageSalary INT,
- averageExpectSalary INT,
- salary0Number INT,--0-3k
- salary3Number INT,--3-5k
- salary5Number INT,--5-7k
- salary7Number INT,--7-9k
- salary9Number INT,--9-11k
- salary11Number INT,--11k+
- expectSalary0Number INT,--0-3k
- expectSalary3Number INT,--3-5k
- expectSalary5Number INT,--5-7k
- expectSalary7Number INT,--7-9k
- expectSalary9Number INT,--9-11k
- expectSalary11Number INT,--11k+
- )
-
- DECLARE @allcnt INT, @selectByMajorName INT --结果数量,查询标志
- IF @MajorName= ''
- BEGIN
- SET @allcnt =0
- END
- ELSE
- BEGIN
- SELECT @allcnt = COUNT(1)
- FROM reportdb..SalaryReportCvMajor
- WHERE majorname=@MajorName
- AND LEFT(liveplace,LEN(@dcRegionId))=@dcRegionId
- END
- IF @allcnt >5--少于5条数据的用专业id查询
- BEGIN
- SET @selectByMajorName =1
- --优先根据majorname查询,无结果时根据dcmajorid查询
- INSERT INTO #T(dcMajorId, majorName, livePlace, dcJobTypeId,jobTypeName, cvCnt, allCnt)
- SELECT TOP 5 @dcMajorId, @MajorName, LEFT(liveplace,LEN(@dcRegionId)), dcjobtypeId, dcJobType.[Description], count(1) cnt, @allcnt
- FROM reportdb..SalaryReportCvMajor, dcJobType
- WHERE majorname=@MajorName
- AND LEFT(liveplace,LEN(@dcRegionId))=@dcRegionId
- AND reportdb..SalaryReportCvMajor.dcJobTypeId = dcJobType.Id
- GROUP BY LEFT(liveplace,LEN(@dcRegionId)),dcjobtypeId , dcJobType.[Description]
- ORDER BY cnt DESC
- END
- ELSE
- BEGIN
- SELECT @allcnt = COUNT(1)
- FROM reportdb..SalaryReportCvMajor
- WHERE DcMajorId=@dcMajorId
- AND LEFT(liveplace,LEN(@dcRegionId))=@dcRegionId
-
- SET @selectByMajorName =0
- --优先根据dcmajorId查询,无结果时根据dcmajorid查询
- INSERT INTO #T(dcMajorId, majorName, livePlace, dcJobTypeId,jobTypeName, cvCnt, allCnt)
- SELECT TOP 5 dcmajorid, '', LEFT(liveplace,LEN(@dcRegionId)), dcjobtypeId, dcJobType.[Description], count(1) cnt, @allcnt
- FROM reportdb..SalaryReportCvMajor, dcJobType
- WHERE DcMajorId=@dcMajorId
- AND LEFT(liveplace,LEN(@dcRegionId))=@dcRegionId
- AND reportdb..SalaryReportCvMajor.dcJobTypeId = dcJobType.Id
- GROUP BY LEFT(liveplace,LEN(@dcRegionId)),dcjobtypeId ,dcmajorid, dcJobType.[Description]
- ORDER BY cnt DESC
- END
- SELECT * FROM #T
-
- --生成期望以及职位类别工资分布表
- IF @selectByMajorName =1
- BEGIN
- INSERT INTO #Ttemp(dcRegionId, dcjobtypeId, averageExpectSalary)
- SELECT LEFT(liveplace,LEN(@dcRegionId))AS dcRegionId, dcjobtypeId, AVG(expectSalary)
- FROM reportdb..SalaryReportCvMajor
- WHERE majorname=@MajorName
- AND LEFT(liveplace,LEN(@dcRegionId))=@dcRegionId
- GROUP BY LEFT(liveplace,LEN(@dcRegionId)), dcjobtypeId
- END
- ELSE
- BEGIN
- INSERT INTO #Ttemp(dcRegionId, dcjobtypeId, averageExpectSalary)
- SELECT LEFT(liveplace,LEN(@dcRegionId))AS dcRegionId, dcjobtypeId, AVG(expectSalary)
- FROM reportdb..SalaryReportCvMajor
- WHERE DcMajorId=@dcMajorId
- AND LEFT(liveplace,LEN(@dcRegionId))=@dcRegionId
- GROUP BY LEFT(liveplace,LEN(@dcRegionId)), dcjobtypeId
- END
- --每个职位列表的数据获取平均工资
- UPDATE a
- SET a.averageJobTypeSalary = b.AvgSalary
- FROM #Ttemp a, reportdb..SalaryReportJobtype b
- WHERE a.dcRegionId = b.dcRegionId
- AND a.dcJobTypeId = b.dcJobTypeId
- --生成#Tsalary数据
- INSERT INTO #Tsalary
- SELECT AVG(averageExpectSalary),
- AVG(averageJobTypeSalary),
- SUM(CASE WHEN averageExpectSalary<3000 THEN 1 ELSE 0 END),
- SUM(CASE WHEN averageExpectSalary >= 3000 AND averageExpectSalary <5000 THEN 1 ELSE 0 END),
- SUM(CASE WHEN averageExpectSalary >= 5000 AND averageExpectSalary <7000 THEN 1 ELSE 0 END),
- SUM(CASE WHEN averageExpectSalary >= 7000 AND averageExpectSalary <9000 THEN 1 ELSE 0 END),
- SUM(CASE WHEN averageExpectSalary >= 9000 AND averageExpectSalary <11000 THEN 1 ELSE 0 END),
- SUM(CASE WHEN averageExpectSalary >= 11000 THEN 1 ELSE 0 END),
- SUM(CASE WHEN averageJobTypeSalary<3000 THEN 1 ELSE 0 END),
- SUM(CASE WHEN averageJobTypeSalary >= 3000 AND averageJobTypeSalary <5000 THEN 1 ELSE 0 END),
- SUM(CASE WHEN averageJobTypeSalary >= 5000 AND averageJobTypeSalary <7000 THEN 1 ELSE 0 END),
- SUM(CASE WHEN averageJobTypeSalary >= 7000 AND averageJobTypeSalary <9000 THEN 1 ELSE 0 END),
- SUM(CASE WHEN averageJobTypeSalary >= 9000 AND averageJobTypeSalary <11000 THEN 1 ELSE 0 END),
- SUM(CASE WHEN averageJobTypeSalary >= 11000 THEN 1 ELSE 0 END)
- FROM #Ttemp
-
- SELECT * FROM #Tsalary
-
- --生成top5职位类别数据
- CREATE TABLE #Top5
- (
- dcMajorId INT,
- majorName VARCHAR(40),
- livePlace INT,
- dcJobTypeId SMALLINT,
- jobTypeName VARCHAR(100),
- averageSalary INT,
- salary0Number INT,--0-3k
- salary3Number INT,--3-5k
- salary5Number INT,--5-7k
- salary7Number INT,--7-9k
- salary9Number INT,--9-11k
- salary11Number INT--11k+
- )
- INSERT INTO #Top5
- SELECT a.dcMajorId, a.majorName, a.livePlace, a.dcJobTypeId, a.jobTypeName, AVG(b.AvgSalary),
- SUM(ISNULL(b.Salary2,0)+ISNULL(b.Salary3,0)+ISNULL(b.Salary4,0)+ISNULL(b.Salary5,0)),
- SUM(ISNULL(b.Salary6,0)+ISNULL(b.Salary7,0)+ISNULL(b.Salary8,0)),
- SUM(ISNULL(b.Salary9,0)+ISNULL(b.Salary10,0)),
- SUM(ISNULL(b.Salary11,0)),
- SUM(ISNULL(b.Salary12,0)),
- SUM(ISNULL(b.Salary13,0)+ISNULL(b.Salary14,0)+ISNULL(b.Salary15,0)+ISNULL(b.Salary16,0))
- FROM #T a, reportdb..SalaryReportJobtype b
- WHERE a.livePlace = b.dcRegionId AND a.dcJobTypeId = b.dcJobTypeId
- GROUP BY a.dcMajorId, a.majorName, a.livePlace, a.dcJobTypeId, a.jobTypeName
-
- SELECT * FROM #Top5 --5个职位类别数据
- --生成10个高薪职位,每个职位类别选取2个职位
- SELECT a.id,a.name,a.secondid,a.dcSalaryID,a.dcSalaryIDMax,a.caMainID,a.dcRegionId,a.dcEducationID,a.MinExperience,a.NeedNumber, ISNULL(c.IsOnline, 0) IsOnline,d.LogoFile AS logourl, d.SecondId AS cpSecondId, d.Name AS cpName
- FROM Job a WITH(NOLOCK)
- INNER JOIN dcRegion b WITH(NOLOCK) ON a.dcRegionID = b.ID
- LEFT JOIN caOnline c WITH(NOLOCK) ON a.caMainId = c.caMainId
- LEFT JOIN cpMain d WITH(NOLOCK) ON a.cpMainId =d.id
- WHERE a.id IN(SELECT DISTINCT TOP 10 jobid FROM(
- SELECT jobId,dcSalaryId FROM reportdb..HighSalaryJob
- WHERE dcjobTypeId IN(select dcJobTypeId FROM #Top5 )
- AND dcRegionId=@dcRegionId
- )a) ORDER BY dcSalaryId DESC
- IF @selectByMajorName =1
- SELECT @MajorName AS majorName
- ELSE
- select Description AS majorName from dcmajor where id= @dcMajorId
- DROP TABLE #Ttemp
- DROP TABLE #Tsalary
- DROP TABLE #T
- DROP TABLE #Top5
- END
- SET NOCOUNT OFF
- GO
- /****** Object: StoredProcedure [dbo].[procSalaryReportCvMajorSelectByMajorname] Script Date: 2018/12/13 19:11:55 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- ---获取各个省份TOP1专业信息
- ---harry
- ---2018-2-28
- --procSalaryReportCvMajorSelectByMajorname
- CREATE PROCEDURE [dbo].[procSalaryReportCvMajorSelectByMajorname]
- AS
- SET NOCOUNT ON
- BEGIN
- SELECT LEFT(LivePlace,2)AS dcProvinceId ,majorname ,DcMajorId,count(1)AS cnt
- INTO #t
- FROM reportdb..SalaryReportCvMajor
- WHERE majorname !='所学专业未填写' AND majorName !='无' AND majorname!='其他'
- GROUP BY majorname,LEFT(LivePlace,2),DcMajorId
-
- TRUNCATE TABLE reportdb..salaryReportProvinceTop1Major
-
- INSERT INTO reportdb..salaryReportProvinceTop1Major(dcProvinceId, majorName, dcMajorId, majorTypeName)
- SELECT a.dcProvinceId, a.majorName, a.dcMajorId, b.Description AS majorTypeName
- FROM(
- SELECT dcProvinceId,majorName,dcMajorId,cnt,ROW_NUMBER() over( partition by dcProvinceId order by cnt DESC) provinceId
- FROM #t
- )AS a, dcmajor b
- WHERE a.provinceId = 1
- AND a.dcMajorId = b.id
-
- DROP TABLE #t
- END
- SET NOCOUNT OFF
- GO
- /****** Object: StoredProcedure [dbo].[procsalaryReportProvinceTop1MajorSelect] Script Date: 2018/12/13 19:11:55 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- ---获取省份从事数量做多的一个专业信息
- ---harry
- ---2018-2-28
- CREATE PROCEDURE [dbo].[procsalaryReportProvinceTop1MajorSelect]
- (
- @dcProvinceId INT
- )
- AS
- SET NOCOUNT ON
- BEGIN
- SELECT *
- FROM reportdb..salaryReportProvinceTop1Major WITH(NOLOCK)
- WHERE dcProvinceId= @dcProvinceId
- END
- SET NOCOUNT OFF
- GO
- /****** Object: StoredProcedure [dbo].[ProcSalaryReportRegionLogSelect] Script Date: 2018/12/13 19:11:55 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcSalaryReportRegionLogSelect]
- (
- @ProvinceId INT
- )
- AS
- BEGIN
- CREATE TABLE #t(dcRegionId VARCHAR(4), Region NVARCHAR(10), SalaryNow INT, SalaryOld INT)
- IF @ProvinceId != 32
- INSERT INTO #t(dcRegionId, SalaryNow)
- SELECT dcRegionId, AvgSalary SalaryNow
- FROM ReportDb..SalaryReportRegion
- WHERE dcRegionId LIKE LTRIM(STR(@ProvinceId)) + '__'
- ELSE
- INSERT INTO #t(dcRegionId, SalaryNow)
- SELECT dcRegionId, AvgSalary SalaryNow
- FROM ReportDb..SalaryReportRegion
- WHERE dcRegionId LIKE LTRIM(STR(@ProvinceId)) + '__'
- AND dcRegionId != 3212
- -- AND Salary5 + Salary6 + Salary7 > 0
- UPDATE a SET a.SalaryOld = b.AvgSalary
- FROM #t a, ReportDb..SalaryReportRegionLog b
- WHERE a.dcRegionId = b.dcRegionId
- AND b.YearMonth = CONVERT(VARCHAR(6), DATEADD(Year, -1, GETDATE()), 112)
- -- AND Salary5 + Salary6 + Salary7 > 0
- UPDATE a SET a.Region = b.Abbr FROM #t a, MainDb..dcRegion b WHERE a.dcRegionId = b.Id
- SELECT LEFT(Region, 3) Region, SalaryNow, CONVERT(INT, ISNULL(SalaryOld, SalaryNow) * 0.9) SalaryOld FROM #t ORDER BY SalaryNow DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSalaryReportRegionMinSelect] Script Date: 2018/12/13 19:11:55 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.3
- --创建人:John
- --说明:获取各地最近三年最底工资标准新闻
- --修改:harry 最新年份无数据时,取之前的年份2018-1-11
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcSalaryReportRegionMinSelect]
- (
- @SalaryYearA VARCHAR(4),
- @SalaryYearB VARCHAR(4),
- @SalaryYearC VARCHAR(4)
- )
- AS
- BEGIN
- IF EXISTS(SELECT 'X' FROM Reportdb..SalaryReportRegionMin
- WHERE SalaryYear = @SalaryYearA)
- BEGIN
- SELECT * FROM Reportdb..SalaryReportRegionMin
- WHERE SalaryYear IN(@SalaryYearA,@SalaryYearB,@SalaryYearC)
- ORDER BY dcRegionid,SalaryYear DESC
- END
- ELSE
- BEGIN
- SELECT * FROM Reportdb..SalaryReportRegionMin
- WHERE SalaryYear IN(Convert(VARCHAR(4),Convert(INT,@SalaryYearA)-3),@SalaryYearB,@SalaryYearC)
- ORDER BY dcRegionid,SalaryYear DESC
- END
- END
-
- GO
- /****** Object: StoredProcedure [dbo].[ProcSalaryReportSelect] Script Date: 2018/12/13 19:11:56 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --新版查工资
- --harry
- --2018-3-2
- --ProcSalaryAnalysis 32,11,1,''
- CREATE PROCEDURE [dbo].[ProcSalaryReportSelect]
- (
- @dcRegionID INT,
- @dcJobTypeID SMALLINT,--0表示未选择
- @dcExperienceId CHAR(1),--''表示未选择
- @dcEducationId CHAR(1),--''表示未选择
- @inputSalary INT--输入的金额
- )
- AS
- SET NOCOUNT ON
- BEGIN
- --职位信息临时表
- SELECT TOP 0 * INTO #tSalaryReport FROM reportdb..salaryReport
- SELECT TOP 0 * INTO #temp FROM reportdb..SalaryReportEducation
- ALTER TABLE #temp Add dcJobTypeId SMALLINT NULL, dcExperienceId SMALLINT NULL
- ALTER TABLE #temp ALTER COLUMN dcEducationId SMALLINT NULL
- DECLARE @JobTypeGrade INT --职位类别grade
- IF @dcJobTypeID !=0
- SELECT @JobTypeGrade = grade
- FROM dcJobType
- WHERE id = @dcJobTypeID
- IF @dcRegionID = 0
- SET @dcRegionID = 32
- SET @dcRegionID = LEFT(@dcRegionID,4)
- IF @dcJobTypeID =0 AND @dcExperienceId ='' AND @dcEducationId =''---地区
- BEGIN
- SELECT TOP 10 *
- FROM reportdb..SalaryReportRegion
- WHERE dcRegionid = @dcRegionID
- END
- ELSE IF @dcJobTypeID !=0 AND @dcExperienceId ='' AND @dcEducationId =''---地区+职位类别
- BEGIN
- SELECT TOP 10 *
- FROM reportdb..SalaryReportJobtype
- WHERE dcRegionid = @dcRegionID
- AND dcJobTypeID = @dcJobTypeID
- END
- ELSE IF @dcJobTypeID =0 AND @dcExperienceId !='' AND @dcEducationId =''--地区+经验
- BEGIN
- IF LEN(@dcRegionID)=2
- BEGIN
- SELECT LEFT(dcRegionid,2)dcRegionid ,dcExperienceId,AVG(AvgSalary) AvgSalary,
- SUM(JobNumber)JobNumber,SUM(Salary2) Salary2,SUM(Salary3) Salary3,SUM(Salary4) Salary4,
- SUM(Salary5) Salary5, SUM(Salary6) Salary6, SUM(Salary7) Salary7, SUM(Salary8) Salary8,
- SUM(Salary9) Salary9, SUM(Salary10) Salary10, SUM(Salary11) Salary11, SUM(Salary12) Salary12,
- SUM(Salary13) Salary13, SUM(Salary14) Salary14, SUM(Salary15) Salary15, SUM(Salary16) Salary16,
- SUM(Salary100) Salary100, SUM(ExperienceNumber0) ExperienceNumber0, SUM(ExperienceNumber1) ExperienceNumber1,
- SUM(ExperienceNumber2) ExperienceNumber2, SUM(ExperienceNumber3) ExperienceNumber3, SUM(ExperienceNumber4) ExperienceNumber4, SUM(ExperienceNumber5) ExperienceNumber5,
- AVG(ExperienceSalary0)ExperienceSalary0, AVG(ExperienceSalary1)ExperienceSalary1, AVG(ExperienceSalary2)ExperienceSalary2,
- AVG(ExperienceSalary3)ExperienceSalary3, AVG(ExperienceSalary4)ExperienceSalary4, AVG(ExperienceSalary5)ExperienceSalary5, SUM(EducationNumber1)EducationNumber1,
- SUM(EducationNumber2)EducationNumber2, SUM(EducationNumber3)EducationNumber3, SUM(EducationNumber4)EducationNumber4,
- SUM(EducationNumber5)EducationNumber5, SUM(EducationNumber6)EducationNumber6, SUM(EducationNumber7)EducationNumber7,
- SUM(EducationNumber8)EducationNumber8, SUM(EducationNumber100)EducationNumber100, AVG(EducationSalary1)EducationSalary1, AVG(EducationSalary2)EducationSalary2,
- AVG(EducationSalary3)EducationSalary3, AVG(EducationSalary4)EducationSalary4, AVG(EducationSalary5)EducationSalary5,
- AVG(EducationSalary6)EducationSalary6, AVG(EducationSalary7)EducationSalary7, AVG(EducationSalary8)EducationSalary8, AVG(EducationSalary100)EducationSalary100,
- SUM(CompanyKindNumber1)CompanyKindNumber1, SUM(CompanyKindNumber2)CompanyKindNumber2, SUM(CompanyKindNumber3)CompanyKindNumber3,
- SUM(CompanyKindNumber4)CompanyKindNumber4, SUM(CompanyKindNumber5)CompanyKindNumber5, SUM(CompanyKindNumber6)CompanyKindNumber6,
- SUM(CompanyKindNumber7)CompanyKindNumber7, SUM(CompanyKindNumber8)CompanyKindNumber8, SUM(CompanyKindNumber9)CompanyKindNumber9,
- SUM(CompanyKindNumber10)CompanyKindNumber10, SUM(CompanyKindNumber100)CompanyKindNumber100,
- SUM(CompanySizeNumber1)CompanySizeNumber1, SUM(CompanySizeNumber2)CompanySizeNumber2, SUM(CompanySizeNumber3)CompanySizeNumber3,
- SUM(CompanySizeNumber4)CompanySizeNumber4, SUM(CompanySizeNumber5)CompanySizeNumber5, SUM(CompanySizeNumber6)CompanySizeNumber6
- FROM reportdb..SalaryReportExperience
- WHERE dcExperienceId = @dcExperienceId and LEFT(dcRegionid,2) = @dcRegionID
- GROUP BY LEFT(dcRegionid,2),dcExperienceId
- END
- ELSE
- BEGIN
- SELECT TOP 10 *
- FROM reportdb..SalaryReportExperience
- WHERE dcRegionid = @dcRegionID
- AND dcExperienceId = CONVERT(INT,@dcExperienceId)
- END
- END
- ELSE IF @dcJobTypeID =0 AND @dcExperienceId ='' AND @dcEducationId !=''--地区+学历
- BEGIN
- IF LEN(@dcRegionID)=2
- BEGIN
- SELECT LEFT(dcRegionid,2)dcRegionid ,dcEducationId, AVG(AvgSalary) AvgSalary,
- SUM(JobNumber)JobNumber,SUM(Salary2) Salary2,SUM(Salary3) Salary3,SUM(Salary4) Salary4,
- SUM(Salary5) Salary5, SUM(Salary6) Salary6, SUM(Salary7) Salary7, SUM(Salary8) Salary8,
- SUM(Salary9) Salary9, SUM(Salary10) Salary10, SUM(Salary11) Salary11, SUM(Salary12) Salary12,
- SUM(Salary13) Salary13, SUM(Salary14) Salary14, SUM(Salary15) Salary15, SUM(Salary16) Salary16,
- SUM(Salary100) Salary100, SUM(ExperienceNumber0) ExperienceNumber0, SUM(ExperienceNumber1) ExperienceNumber1,
- SUM(ExperienceNumber2) ExperienceNumber2, SUM(ExperienceNumber3) ExperienceNumber3, SUM(ExperienceNumber4) ExperienceNumber4, SUM(ExperienceNumber5) ExperienceNumber5,
- AVG(ExperienceSalary0)ExperienceSalary0, AVG(ExperienceSalary1)ExperienceSalary1, AVG(ExperienceSalary2)ExperienceSalary2,
- AVG(ExperienceSalary3)ExperienceSalary3, AVG(ExperienceSalary4)ExperienceSalary4, AVG(ExperienceSalary5)ExperienceSalary5, SUM(EducationNumber1)EducationNumber1,
- SUM(EducationNumber2)EducationNumber2, SUM(EducationNumber3)EducationNumber3, SUM(EducationNumber4)EducationNumber4,
- SUM(EducationNumber5)EducationNumber5, SUM(EducationNumber6)EducationNumber6, SUM(EducationNumber7)EducationNumber7,
- SUM(EducationNumber8)EducationNumber8, SUM(EducationNumber100)EducationNumber100, AVG(EducationSalary1)EducationSalary1, AVG(EducationSalary2)EducationSalary2,
- AVG(EducationSalary3)EducationSalary3, AVG(EducationSalary4)EducationSalary4, AVG(EducationSalary5)EducationSalary5,
- AVG(EducationSalary6)EducationSalary6, AVG(EducationSalary7)EducationSalary7, AVG(EducationSalary8)EducationSalary8, AVG(EducationSalary100)EducationSalary100,
- SUM(CompanyKindNumber1)CompanyKindNumber1, SUM(CompanyKindNumber2)CompanyKindNumber2, SUM(CompanyKindNumber3)CompanyKindNumber3,
- SUM(CompanyKindNumber4)CompanyKindNumber4, SUM(CompanyKindNumber5)CompanyKindNumber5, SUM(CompanyKindNumber6)CompanyKindNumber6,
- SUM(CompanyKindNumber7)CompanyKindNumber7, SUM(CompanyKindNumber8)CompanyKindNumber8, SUM(CompanyKindNumber9)CompanyKindNumber9,
- SUM(CompanyKindNumber10)CompanyKindNumber10, SUM(CompanyKindNumber100)CompanyKindNumber100,
- SUM(CompanySizeNumber1)CompanySizeNumber1, SUM(CompanySizeNumber2)CompanySizeNumber2, SUM(CompanySizeNumber3)CompanySizeNumber3,
- SUM(CompanySizeNumber4)CompanySizeNumber4, SUM(CompanySizeNumber5)CompanySizeNumber5, SUM(CompanySizeNumber6)CompanySizeNumber6
- FROM reportdb..SalaryReportEducation
- WHERE dcEducationId = @dcEducationId and LEFT(dcRegionid,2) = @dcRegionID
- GROUP BY LEFT(dcRegionid,2), dcEducationId
- END
- ELSE
- BEGIN
- SELECT TOP 10 *
- FROM reportdb..SalaryReportEducation
- WHERE dcRegionid = @dcRegionID
- AND dcEducationId = CONVERT(INT,@dcEducationId)
- END
- END
- ELSE IF @dcJobTypeID =0 AND @dcExperienceId !='' AND @dcEducationId !=''--地区+学历+经验
- BEGIN
- IF LEN(@dcRegionID)=2
- BEGIN
- SELECT LEFT(dcRegionid,2)dcRegionid ,dcEducationId, dcExperienceId, AVG(AvgSalary) AvgSalary,
- SUM(JobNumber)JobNumber,SUM(Salary2) Salary2,SUM(Salary3) Salary3,SUM(Salary4) Salary4,
- SUM(Salary5) Salary5, SUM(Salary6) Salary6, SUM(Salary7) Salary7, SUM(Salary8) Salary8,
- SUM(Salary9) Salary9, SUM(Salary10) Salary10, SUM(Salary11) Salary11, SUM(Salary12) Salary12,
- SUM(Salary13) Salary13, SUM(Salary14) Salary14, SUM(Salary15) Salary15, SUM(Salary16) Salary16,
- SUM(Salary100) Salary100, SUM(ExperienceNumber0) ExperienceNumber0, SUM(ExperienceNumber1) ExperienceNumber1,
- SUM(ExperienceNumber2) ExperienceNumber2, SUM(ExperienceNumber3) ExperienceNumber3, SUM(ExperienceNumber4) ExperienceNumber4, SUM(ExperienceNumber5) ExperienceNumber5,
- AVG(ExperienceSalary0)ExperienceSalary0, AVG(ExperienceSalary1)ExperienceSalary1, AVG(ExperienceSalary2)ExperienceSalary2,
- AVG(ExperienceSalary3)ExperienceSalary3, AVG(ExperienceSalary4)ExperienceSalary4, AVG(ExperienceSalary5)ExperienceSalary5, SUM(EducationNumber1)EducationNumber1,
- SUM(EducationNumber2)EducationNumber2, SUM(EducationNumber3)EducationNumber3, SUM(EducationNumber4)EducationNumber4,
- SUM(EducationNumber5)EducationNumber5, SUM(EducationNumber6)EducationNumber6, SUM(EducationNumber7)EducationNumber7,
- SUM(EducationNumber8)EducationNumber8, SUM(EducationNumber100)EducationNumber100, AVG(EducationSalary1)EducationSalary1, AVG(EducationSalary2)EducationSalary2,
- AVG(EducationSalary3)EducationSalary3, AVG(EducationSalary4)EducationSalary4, AVG(EducationSalary5)EducationSalary5,
- AVG(EducationSalary6)EducationSalary6, AVG(EducationSalary7)EducationSalary7, AVG(EducationSalary8)EducationSalary8, AVG(EducationSalary100)EducationSalary100,
- SUM(CompanyKindNumber1)CompanyKindNumber1, SUM(CompanyKindNumber2)CompanyKindNumber2, SUM(CompanyKindNumber3)CompanyKindNumber3,
- SUM(CompanyKindNumber4)CompanyKindNumber4, SUM(CompanyKindNumber5)CompanyKindNumber5, SUM(CompanyKindNumber6)CompanyKindNumber6,
- SUM(CompanyKindNumber7)CompanyKindNumber7, SUM(CompanyKindNumber8)CompanyKindNumber8, SUM(CompanyKindNumber9)CompanyKindNumber9,
- SUM(CompanyKindNumber10)CompanyKindNumber10, SUM(CompanyKindNumber100)CompanyKindNumber100,
- SUM(CompanySizeNumber1)CompanySizeNumber1, SUM(CompanySizeNumber2)CompanySizeNumber2, SUM(CompanySizeNumber3)CompanySizeNumber3,
- SUM(CompanySizeNumber4)CompanySizeNumber4, SUM(CompanySizeNumber5)CompanySizeNumber5, SUM(CompanySizeNumber6)CompanySizeNumber6
- FROM reportdb..SalaryReportEducationExperience
- WHERE dcEducationId = @dcEducationId and LEFT(dcRegionid,2) = @dcRegionID AND dcExperienceId = CONVERT(INT,@dcExperienceId)
- GROUP BY LEFT(dcRegionid,2), dcEducationId, dcExperienceId
- END
- ELSE
- BEGIN
- SELECT TOP 10 *
- FROM reportdb..SalaryReportEducationExperience
- WHERE dcRegionid = @dcRegionID
- AND dcEducationId = CONVERT(INT,@dcEducationId)
- AND dcExperienceId = CONVERT(INT,@dcExperienceId)
- END
- END
- ELSE IF @dcJobTypeID !=0 AND @dcExperienceId !='' AND @dcEducationId =''--地区+职位类别+经验
- BEGIN
- IF @JobTypeGrade = 2--职位类别大类(全部)
- BEGIN
- INSERT INTO #tSalaryReport
- SELECT * FROM reportdb..salaryReport
- WHERE LEFT(dcregionId,LEN(@dcRegionID)) = @dcRegionID
- AND (dcJobTypeId = @dcJobTypeID OR dcJobTypeId IN(SELECT id FROM dcjobtype where (id = @dcJobTypeID OR ID IN(select id from dcjobType where parentid= @dcJobTypeID))))
- AND MinExperience = CONVERT(INT,@dcExperienceId)
- END
- ELSE
- BEGIN
- INSERT INTO #tSalaryReport
- SELECT * FROM reportdb..salaryReport
- WHERE LEFT(dcregionId,LEN(@dcRegionID)) = @dcRegionID
- AND dcJobTypeId = @dcJobTypeID
- AND MinExperience = CONVERT(INT,@dcExperienceId)
- END
- END
- ELSE IF @dcJobTypeID !=0 AND @dcExperienceId ='' AND @dcEducationId !=''--地区+职位类别+学历
- BEGIN
- IF @JobTypeGrade = 2--职位类别大类(全部)
- BEGIN
- INSERT INTO #tSalaryReport
- SELECT * FROM reportdb..salaryReport
- WHERE LEFT(dcregionId,LEN(@dcRegionID)) = @dcRegionID
- AND (dcJobTypeId = @dcJobTypeID OR dcJobTypeId IN(SELECT id FROM dcjobtype where (id = @dcJobTypeID OR ID IN(select id from dcjobType where parentid= @dcJobTypeID))))
- AND dcEducationId = CONVERT(INT,@dcEducationId)
- END
- ELSE
- BEGIN
- INSERT INTO #tSalaryReport
- SELECT * FROM reportdb..salaryReport
- WHERE LEFT(dcregionId,LEN(@dcRegionID)) = @dcRegionID
- AND dcJobTypeId = @dcJobTypeID
- AND dcEducationId = CONVERT(INT,@dcEducationId)
- END
- END
- ELSE IF @dcJobTypeID !=0 AND @dcExperienceId !='' AND @dcEducationId !=''--地区+职位类别+经验+学历
- BEGIN
- IF @JobTypeGrade = 2--职位类别大类(全部)
- BEGIN
- INSERT INTO #tSalaryReport
- SELECT * FROM reportdb..salaryReport
- WHERE LEFT(dcregionId,LEN(@dcRegionID)) = @dcRegionID
- AND (dcJobTypeId = @dcJobTypeID OR dcJobTypeId IN(SELECT id FROM dcjobtype where (id = @dcJobTypeID OR ID IN(select id from dcjobType where parentid= @dcJobTypeID))))
- AND dcEducationId = CONVERT(INT,@dcEducationId)
- AND MinExperience = CONVERT(INT,@dcExperienceId)
- END
- ELSE
- BEGIN
- INSERT INTO #tSalaryReport
- SELECT * FROM reportdb..salaryReport
- WHERE LEFT(dcregionId,LEN(@dcRegionID)) = @dcRegionID
- AND dcJobTypeId = @dcJobTypeID
- AND dcEducationId = CONVERT(INT,@dcEducationId)
- AND MinExperience = CONVERT(INT,@dcExperienceId)
- END
- END
-
- IF @dcJobTypeID !=0
- BEGIN
- IF NOT EXISTS(SELECT 'X' FROM #tSalaryReport) AND(@dcExperienceId !='' OR @dcEducationId !='')
- BEGIN
- SELECT TOP 0 * FROM #tSalaryReport
- END
- ELSE
- BEGIN
- --汇总用的临时表
- CREATE TABLE #Sum(dcRegionId VARCHAR(4), dcJobTypeId INT, dcEducationId SMALLINT, dcExperienceId SMALLINT, Item INT, Cnt INt, Salary INT)
-
- IF @dcJobTypeID !=0 AND @dcExperienceId !='' AND @dcEducationId =''--地区+职位类别+经验
- BEGIN
- ---统计全部薪酬信息
- SELECT LEFT(dcregionId,LEN(@dcRegionID)) AS dcRegionId,dcJobTypeId, MinExperience AS dcExperienceId, CASE WHEN dcSalaryId = 17 THEN 16 ELSE dcSalaryId END dcSalaryId, COUNT(*) Cnt
- INTO #t1
- FROM #tSalaryReport WITH(NOLOCK)
- GROUP BY LEFT(dcregionId,LEN(@dcRegionID)),CASE WHEN dcSalaryId = 17 THEN 16 ELSE dcSalaryId END, dcJobTypeId, MinExperience
- SELECT dcJobTypeId, MinExperience AS dcExperienceId, LEFT(dcregionId,LEN(@dcRegionID)) AS dcRegionId,AVG(Salary) Salary
- INTO #tj1
- FROM #tSalaryReport WITH(NOLOCK)
- GROUP BY dcJobTypeId, MinExperience,LEFT(dcregionId,LEN(@dcRegionID))
-
- ----记录到SalaryReportEducationExperience
- INSERT INTO #temp(dcRegionId, dcJobTypeId, dcExperienceId, Salary2, Salary3, Salary4, Salary5, Salary6, Salary7, Salary8, Salary9, Salary10, Salary11, Salary12, Salary13, Salary14, Salary15, Salary16, Salary100)
- SELECT dcRegionId, dcJobTypeId, dcExperienceId, [2], [3], [4], [5], [6], [7], [8], [9], [10], [11], [12], [13], [14], [15], [16], [100]
- FROM (
- SELECT LEFT(dcregionId,LEN(@dcRegionID)) AS dcRegionId, dcJobTypeId, dcExperienceId, dcSalaryId, Cnt
- FROM #t1
- ) AS SourceTable
- PIVOT
- (
- AVG(Cnt)
- FOR dcSalaryId IN ([2], [3], [4], [5], [6], [7], [8], [9], [10], [11], [12], [13], [14], [15], [16], [100])
- ) AS PivotTable
- UPDATE a SET a.AvgSalary = b.Salary FROM #temp a, #tj1 b
- WHERE a.dcJobTypeId = b.dcJobTypeId AND a.dcRegionId = b.dcRegionId AND a.dcExperienceId = b.dcExperienceId
- DROP TABLE #t1
- DROP TABLE #tj1
- TRUNCATE TABLE #Sum
-
- ----统计企业性质
- INSERT INTO #Sum
- SELECT LEFT(dcregionId,LEN(@dcRegionID)) AS dcRegionId, dcJobTypeId,NULL, MinExperience, ISNULL(dcCompanyKindId,0) dcCompanyKindId, COUNT(DISTINCT cpMainId) Cnt, 0
- FROM #tSalaryReport WITH(NOLOCK)
- GROUP BY LEFT(dcregionId,LEN(@dcRegionID)), dcJobTypeId, MinExperience, ISNULL(dcCompanyKindId,0)
- UPDATE a
- SET a.CompanyKindNumber1 = b.[1],
- a.CompanyKindNumber2 = b.[2],
- a.CompanyKindNumber3 = b.[3],
- a.CompanyKindNumber4 = b.[4],
- a.CompanyKindNumber5 = b.[5],
- a.CompanyKindNumber6 = b.[6],
- a.CompanyKindNumber7 = b.[7],
- a.CompanyKindNumber8 = b.[8],
- a.CompanyKindNumber9 = b.[9],
- a.CompanyKindNumber10 = b.[10],
- a.CompanyKindNumber100 = b.[100]
- FROM #temp a, (
- SELECT dcRegionId, dcJobTypeId, dcExperienceId, [1], [2], [3], [4], [5], [6], [7], [8], [9], [10], [100]
- FROM (
- SELECT dcRegionId, dcJobTypeId, dcExperienceId, Item, Cnt
- FROM #Sum
- ) AS SourceTable
- PIVOT
- (
- AVG(Cnt)
- FOR Item IN ([1], [2], [3], [4], [5], [6], [7], [8], [9], [10], [100])
- ) AS PivotTable) b
- WHERE a.dcRegionId = b.dcRegionId
- AND a.dcJobTypeId = b.dcJobTypeId
- AND a.dcExperienceId = b.dcExperienceId
- TRUNCATE TABLE #Sum
- ----统计企业规模
- INSERT INTO #Sum
- SELECT LEFT(dcregionId,LEN(@dcRegionID)) AS dcRegionId, dcJobTypeId,NULL, MinExperience AS dcExperienceId, ISNULL(dcCompanySizeId,0) dcCompanySizeId, COUNT(DISTINCT cpMainId) Cnt, 0
- FROM #tSalaryReport WITH(NOLOCK)
- GROUP BY LEFT(dcregionId,LEN(@dcRegionID)), dcJobTypeId, MinExperience, ISNULL(dcCompanySizeId,0)
-
- UPDATE a
- SET a.CompanySizeNumber1 = b.[1],
- a.CompanySizeNumber2 = b.[2],
- a.CompanySizeNumber3 = b.[3],
- a.CompanySizeNumber4 = b.[4],
- a.CompanySizeNumber5 = b.[5],
- a.CompanySizeNumber6 = b.[6]
- FROM #temp a, (
- SELECT dcRegionId, dcJobTypeId, dcExperienceId, [1], [2], [3], [4], [5], [6]
- FROM (
- SELECT dcRegionId, dcJobTypeId, dcExperienceId, Item, Cnt
- FROM #Sum
- ) AS SourceTable
- PIVOT
- (
- AVG(Cnt)
- FOR Item IN ([1], [2], [3], [4], [5], [6])
- ) AS PivotTable) b
- WHERE a.dcRegionId = b.dcRegionId
- AND a.dcJobTypeId = b.dcJobTypeId
- AND a.dcExperienceId = b.dcExperienceId
-
-
- ----统计学历
- TRUNCATE TABLE #Sum
- INSERT INTO #Sum
- SELECT LEFT(dcregionId,LEN(@dcRegionID)) AS dcRegionId, dcJobTypeId,ISNULL(dcEducationId,0), MinExperience, ISNULL(dcEducationId,0) dcEducationId, COUNT(DISTINCT cpMainId) Cnt, 0
- FROM #tSalaryReport WITH(NOLOCK)
- GROUP BY LEFT(dcregionId,LEN(@dcRegionID)), dcJobTypeId, MinExperience, ISNULL(dcEducationId,0)
- UPDATE a
- SET a.EducationNumber1 = b.[1],
- a.EducationNumber2 = b.[2],
- a.EducationNumber3 = b.[3],
- a.EducationNumber4 = b.[4],
- a.EducationNumber5 = b.[5],
- a.EducationNumber6 = b.[6],
- a.EducationNumber7 = b.[7],
- a.EducationNumber8 = b.[8],
- a.EducationNumber100 = b.[100]
- FROM #temp a, (
- SELECT dcRegionId, dcExperienceId, dcJobTypeId,[1], [2], [3], [4], [5], [6], [7], [8], [100]
- FROM (
- SELECT dcRegionId, dcExperienceId, dcJobTypeId,Item, Cnt
- FROM #Sum
- ) AS SourceTable
- PIVOT
- (
- AVG(Cnt)
- FOR Item IN ([1], [2], [3], [4], [5], [6], [7], [8], [100])
- ) AS PivotTable) b
- WHERE a.dcRegionId = b.dcRegionId
- AND a.dcExperienceId = b.dcExperienceId
- AND a.dcJobTypeId =b.dcJobTypeId
-
- --更新经验月薪
- UPDATE a
- SET a.ExperienceSalary0=b.ExperienceSalary0,
- a.ExperienceSalary1=b.ExperienceSalary1,
- a.ExperienceSalary2=b.ExperienceSalary2,
- a.ExperienceSalary3=b.ExperienceSalary3,
- a.ExperienceSalary4=b.ExperienceSalary4,
- a.ExperienceSalary5=b.ExperienceSalary5
- FROM #temp a, reportdb..SalaryReportJobtype b
- WHERE a.dcRegionId = b.dcRegionId
- AND a.dcJobTypeID = b.dcJobTypeID
-
- IF LEN(@dcRegionID)= 2 OR @JobTypeGrade = 2--全省数据或职位类别大类(全部)
- BEGIN
- SELECT LEFT(dcRegionid,LEN(@dcRegionID))dcRegionid ,dcExperienceId,dcEducationId, LEFT(dcJobTypeID, LEN(@dcJobTypeID)) dcJobTypeID, AVG(AvgSalary) AvgSalary,
- SUM(JobNumber)JobNumber,SUM(Salary2) Salary2,SUM(Salary3) Salary3,SUM(Salary4) Salary4,
- SUM(Salary5) Salary5, SUM(Salary6) Salary6, SUM(Salary7) Salary7, SUM(Salary8) Salary8,
- SUM(Salary9) Salary9, SUM(Salary10) Salary10, SUM(Salary11) Salary11, SUM(Salary12) Salary12,
- SUM(Salary13) Salary13, SUM(Salary14) Salary14, SUM(Salary15) Salary15, SUM(Salary16) Salary16,
- SUM(Salary100) Salary100, SUM(ExperienceNumber0) ExperienceNumber0, SUM(ExperienceNumber1) ExperienceNumber1,
- SUM(ExperienceNumber2) ExperienceNumber2, SUM(ExperienceNumber3) ExperienceNumber3, SUM(ExperienceNumber4) ExperienceNumber4, SUM(ExperienceNumber5) ExperienceNumber5,
- AVG(ExperienceSalary0)ExperienceSalary0, AVG(ExperienceSalary1)ExperienceSalary1, AVG(ExperienceSalary2)ExperienceSalary2,
- AVG(ExperienceSalary3)ExperienceSalary3, AVG(ExperienceSalary4)ExperienceSalary4, AVG(ExperienceSalary5)ExperienceSalary5, SUM(EducationNumber1)EducationNumber1,
- SUM(EducationNumber2)EducationNumber2, SUM(EducationNumber3)EducationNumber3, SUM(EducationNumber4)EducationNumber4,
- SUM(EducationNumber5)EducationNumber5, SUM(EducationNumber6)EducationNumber6, SUM(EducationNumber7)EducationNumber7,
- SUM(EducationNumber8)EducationNumber8, SUM(EducationNumber100)EducationNumber100, AVG(EducationSalary1)EducationSalary1, AVG(EducationSalary2)EducationSalary2,
- AVG(EducationSalary3)EducationSalary3, AVG(EducationSalary4)EducationSalary4, AVG(EducationSalary5)EducationSalary5,
- AVG(EducationSalary6)EducationSalary6, AVG(EducationSalary7)EducationSalary7, AVG(EducationSalary8)EducationSalary8, AVG(EducationSalary100)EducationSalary100,
- SUM(CompanyKindNumber1)CompanyKindNumber1, SUM(CompanyKindNumber2)CompanyKindNumber2, SUM(CompanyKindNumber3)CompanyKindNumber3,
- SUM(CompanyKindNumber4)CompanyKindNumber4, SUM(CompanyKindNumber5)CompanyKindNumber5, SUM(CompanyKindNumber6)CompanyKindNumber6,
- SUM(CompanyKindNumber7)CompanyKindNumber7, SUM(CompanyKindNumber8)CompanyKindNumber8, SUM(CompanyKindNumber9)CompanyKindNumber9,
- SUM(CompanyKindNumber10)CompanyKindNumber10, SUM(CompanyKindNumber100)CompanyKindNumber100,
- SUM(CompanySizeNumber1)CompanySizeNumber1, SUM(CompanySizeNumber2)CompanySizeNumber2, SUM(CompanySizeNumber3)CompanySizeNumber3,
- SUM(CompanySizeNumber4)CompanySizeNumber4, SUM(CompanySizeNumber5)CompanySizeNumber5, SUM(CompanySizeNumber6)CompanySizeNumber6
- FROM #temp
- GROUP BY LEFT(dcRegionid,LEN(@dcRegionID)),dcExperienceId, dcEducationId,LEFT(dcJobTypeID, LEN(@dcJobTypeID))
- END
- ELSE
- BEGIN
- SELECT TOP 10 * FROM #temp
- END
- DROP TABLE #temp
- DROP TABLE #Sum
- END
- ELSE IF @dcJobTypeID !=0 AND @dcExperienceId ='' AND @dcEducationId !=''--地区+职位类别+学历
- BEGIN
- ---统计全部薪酬信息
- SELECT LEFT(dcregionId,LEN(@dcRegionID)) AS dcRegionId,dcJobTypeId, dcEducationId, CASE WHEN dcSalaryId = 17 THEN 16 ELSE dcSalaryId END dcSalaryId, COUNT(*) Cnt
- INTO #t2
- FROM #tSalaryReport
- GROUP BY LEFT(dcregionId,LEN(@dcRegionID)),CASE WHEN dcSalaryId = 17 THEN 16 ELSE dcSalaryId END, dcJobTypeId, dcEducationId
- SELECT dcJobTypeId, dcEducationId, LEFT(dcregionId,LEN(@dcRegionID)) AS dcRegionId,AVG(Salary) Salary
- INTO #tj2
- FROM #tSalaryReport
- GROUP BY dcJobTypeId, dcEducationId,LEFT(dcregionId,LEN(@dcRegionID))
-
- ----记录到SalaryReportEducationExperience
- INSERT INTO #temp(dcRegionId, dcJobTypeId, dcEducationId, Salary2, Salary3, Salary4, Salary5, Salary6, Salary7, Salary8, Salary9, Salary10, Salary11, Salary12, Salary13, Salary14, Salary15, Salary16, Salary100)
- SELECT dcRegionId, dcJobTypeId, dcEducationId, [2], [3], [4], [5], [6], [7], [8], [9], [10], [11], [12], [13], [14], [15], [16], [100]
- FROM (
- SELECT LEFT(dcregionId,LEN(@dcRegionID)) AS dcRegionId, dcJobTypeId, dcEducationId, dcSalaryId, Cnt
- FROM #t2
- ) AS SourceTable
- PIVOT
- (
- AVG(Cnt)
- FOR dcSalaryId IN ([2], [3], [4], [5], [6], [7], [8], [9], [10], [11], [12], [13], [14], [15], [16], [100])
- ) AS PivotTable
- UPDATE a SET a.AvgSalary = b.Salary FROM #temp a, #tj2 b
- WHERE a.dcJobTypeId = b.dcJobTypeId AND a.dcRegionId = b.dcRegionId AND a.dcEducationId = b.dcEducationId
- DROP TABLE #t2
- DROP TABLE #tj2
- TRUNCATE TABLE #Sum
-
- ----统计企业性质
- INSERT INTO #Sum
- SELECT LEFT(dcregionId,LEN(@dcRegionID)) AS dcRegionId, dcJobTypeId, dcEducationId,NULL, ISNULL(dcCompanyKindId,0) dcCompanyKindId, COUNT(DISTINCT cpMainId) Cnt, 0
- FROM #tSalaryReport WITH(NOLOCK)
- GROUP BY LEFT(dcregionId,LEN(@dcRegionID)), dcJobTypeId, dcEducationId, ISNULL(dcCompanyKindId,0)
- UPDATE a
- SET a.CompanyKindNumber1 = b.[1],
- a.CompanyKindNumber2 = b.[2],
- a.CompanyKindNumber3 = b.[3],
- a.CompanyKindNumber4 = b.[4],
- a.CompanyKindNumber5 = b.[5],
- a.CompanyKindNumber6 = b.[6],
- a.CompanyKindNumber7 = b.[7],
- a.CompanyKindNumber8 = b.[8],
- a.CompanyKindNumber9 = b.[9],
- a.CompanyKindNumber10 = b.[10],
- a.CompanyKindNumber100 = b.[100]
- FROM #temp a, (
- SELECT dcRegionId, dcJobTypeId, dcEducationId, [1], [2], [3], [4], [5], [6], [7], [8], [9], [10], [100]
- FROM (
- SELECT dcRegionId, dcJobTypeId, dcEducationId, Item, Cnt
- FROM #Sum
- ) AS SourceTable
- PIVOT
- (
- AVG(Cnt)
- FOR Item IN ([1], [2], [3], [4], [5], [6], [7], [8], [9], [10], [100])
- ) AS PivotTable) b
- WHERE a.dcRegionId = b.dcRegionId
- AND a.dcJobTypeId = b.dcJobTypeId
- AND a.dcEducationId = b.dcEducationId
- TRUNCATE TABLE #Sum
- ----统计企业规模
- INSERT INTO #Sum
- SELECT LEFT(dcregionId,LEN(@dcRegionID)) AS dcRegionId, dcJobTypeId, dcEducationId,NULL, ISNULL(dcCompanySizeId,0) dcCompanySizeId, COUNT(DISTINCT cpMainId) Cnt, 0
- FROM #tSalaryReport WITH(NOLOCK)
- GROUP BY LEFT(dcregionId,LEN(@dcRegionID)), dcJobTypeId, dcEducationId, ISNULL(dcCompanySizeId,0)
-
- UPDATE a
- SET a.CompanySizeNumber1 = b.[1],
- a.CompanySizeNumber2 = b.[2],
- a.CompanySizeNumber3 = b.[3],
- a.CompanySizeNumber4 = b.[4],
- a.CompanySizeNumber5 = b.[5],
- a.CompanySizeNumber6 = b.[6]
- FROM #temp a, (
- SELECT dcRegionId, dcJobTypeId, dcEducationId, [1], [2], [3], [4], [5], [6]
- FROM (
- SELECT dcRegionId, dcJobTypeId, dcEducationId, Item, Cnt
- FROM #Sum
- ) AS SourceTable
- PIVOT
- (
- AVG(Cnt)
- FOR Item IN ([1], [2], [3], [4], [5], [6])
- ) AS PivotTable) b
- WHERE a.dcRegionId = b.dcRegionId
- AND a.dcJobTypeId = b.dcJobTypeId
- AND a.dcEducationId = b.dcEducationId
-
-
- ----统计工作经历
- TRUNCATE TABLE #Sum
- INSERT INTO #Sum
- SELECT LEFT(dcregionId,LEN(@dcRegionID)) AS dcRegionId, dcJobTypeId,ISNULL(dcEducationId,0), MinExperience, ISNULL(MinExperience,0) MinExperience, COUNT(DISTINCT cpMainId) Cnt, 0
- FROM #tSalaryReport WITH(NOLOCK)
- GROUP BY LEFT(dcregionId,LEN(@dcRegionID)), dcJobTypeId, MinExperience, ISNULL(dcEducationId,0)
-
- ------工作经历数量
-
- UPDATE a
- SET a.ExperienceNumber0 = b.[0],
- a.ExperienceNumber1 = b.[1],
- a.ExperienceNumber2 = b.[2],
- a.ExperienceNumber3 = b.[3],
- a.ExperienceNumber4 = b.[4],
- a.ExperienceNumber5 = b.[5]
- FROM #temp a, (
- SELECT dcRegionId,dcJobTypeId, dcEducationId,[0], [1], [2], [3], [4], [5]
- FROM (
- SELECT dcRegionId, dcJobTypeId,dcEducationId, Item, Cnt
- FROM #Sum
- ) AS SourceTable
- PIVOT
- (
- AVG(Cnt)
- FOR Item IN ([0], [1], [2], [3], [4], [5])
- ) AS PivotTable) b
- WHERE a.dcRegionId = b.dcRegionId
- AND a.dcEducationId = b.dcEducationId
- AND a.dcJobTypeId = b.dcJobTypeId
-
- --更新学历月薪
- UPDATE a
- SET a.EducationSalary1=b.EducationSalary1,
- a.EducationSalary2=b.EducationSalary2,
- a.EducationSalary3=b.EducationSalary3,
- a.EducationSalary4=b.EducationSalary4,
- a.EducationSalary5=b.EducationSalary5,
- a.EducationSalary6=b.EducationSalary6,
- a.EducationSalary7=b.EducationSalary7,
- a.EducationSalary8=b.EducationSalary8,
- a.EducationSalary100=b.EducationSalary100
- FROM #temp a, reportdb..SalaryReportJobtype b
- WHERE a.dcRegionId = b.dcRegionId
- AND a.dcJobTypeId = b.dcJobTypeId
-
- IF LEN(@dcRegionID)= 2 OR @JobTypeGrade = 2--全省数据或职位类别大类(全部)
- BEGIN
- SELECT LEFT(dcRegionid,LEN(@dcRegionID))dcRegionid ,dcExperienceId,dcEducationId, LEFT(dcJobTypeID, LEN(@dcJobTypeID)) dcJobTypeID, AVG(AvgSalary) AvgSalary,
- SUM(JobNumber)JobNumber,SUM(Salary2) Salary2,SUM(Salary3) Salary3,SUM(Salary4) Salary4,
- SUM(Salary5) Salary5, SUM(Salary6) Salary6, SUM(Salary7) Salary7, SUM(Salary8) Salary8,
- SUM(Salary9) Salary9, SUM(Salary10) Salary10, SUM(Salary11) Salary11, SUM(Salary12) Salary12,
- SUM(Salary13) Salary13, SUM(Salary14) Salary14, SUM(Salary15) Salary15, SUM(Salary16) Salary16,
- SUM(Salary100) Salary100, SUM(ExperienceNumber0) ExperienceNumber0, SUM(ExperienceNumber1) ExperienceNumber1,
- SUM(ExperienceNumber2) ExperienceNumber2, SUM(ExperienceNumber3) ExperienceNumber3, SUM(ExperienceNumber4) ExperienceNumber4, SUM(ExperienceNumber5) ExperienceNumber5,
- AVG(ExperienceSalary0)ExperienceSalary0, AVG(ExperienceSalary1)ExperienceSalary1, AVG(ExperienceSalary2)ExperienceSalary2,
- AVG(ExperienceSalary3)ExperienceSalary3, AVG(ExperienceSalary4)ExperienceSalary4, AVG(ExperienceSalary5)ExperienceSalary5, SUM(EducationNumber1)EducationNumber1,
- SUM(EducationNumber2)EducationNumber2, SUM(EducationNumber3)EducationNumber3, SUM(EducationNumber4)EducationNumber4,
- SUM(EducationNumber5)EducationNumber5, SUM(EducationNumber6)EducationNumber6, SUM(EducationNumber7)EducationNumber7,
- SUM(EducationNumber8)EducationNumber8, SUM(EducationNumber100)EducationNumber100, AVG(EducationSalary1)EducationSalary1, AVG(EducationSalary2)EducationSalary2,
- AVG(EducationSalary3)EducationSalary3, AVG(EducationSalary4)EducationSalary4, AVG(EducationSalary5)EducationSalary5,
- AVG(EducationSalary6)EducationSalary6, AVG(EducationSalary7)EducationSalary7, AVG(EducationSalary8)EducationSalary8, AVG(EducationSalary100)EducationSalary100,
- SUM(CompanyKindNumber1)CompanyKindNumber1, SUM(CompanyKindNumber2)CompanyKindNumber2, SUM(CompanyKindNumber3)CompanyKindNumber3,
- SUM(CompanyKindNumber4)CompanyKindNumber4, SUM(CompanyKindNumber5)CompanyKindNumber5, SUM(CompanyKindNumber6)CompanyKindNumber6,
- SUM(CompanyKindNumber7)CompanyKindNumber7, SUM(CompanyKindNumber8)CompanyKindNumber8, SUM(CompanyKindNumber9)CompanyKindNumber9,
- SUM(CompanyKindNumber10)CompanyKindNumber10, SUM(CompanyKindNumber100)CompanyKindNumber100,
- SUM(CompanySizeNumber1)CompanySizeNumber1, SUM(CompanySizeNumber2)CompanySizeNumber2, SUM(CompanySizeNumber3)CompanySizeNumber3,
- SUM(CompanySizeNumber4)CompanySizeNumber4, SUM(CompanySizeNumber5)CompanySizeNumber5, SUM(CompanySizeNumber6)CompanySizeNumber6
- FROM #temp
- GROUP BY LEFT(dcRegionid,LEN(@dcRegionID)),dcExperienceId, dcEducationId,LEFT(dcJobTypeID, LEN(@dcJobTypeID))
- END
- ELSE
- BEGIN
- SELECT TOP 10 * FROM #temp
- END
- DROP TABLE #temp
- DROP TABLE #Sum
- END
- ELSE IF @dcJobTypeID !=0 AND @dcExperienceId !='' AND @dcEducationId !=''--地区+职位类别+经验+学历
- BEGIN
- ---统计全部薪酬信息
- SELECT LEFT(dcregionId,LEN(@dcRegionID)) AS dcRegionId,dcJobTypeId, dcEducationId, MinExperience AS dcExperienceId, CASE WHEN dcSalaryId = 17 THEN 16 ELSE dcSalaryId END dcSalaryId, COUNT(*) Cnt
- INTO #t3
- FROM #tSalaryReport
- GROUP BY LEFT(dcregionId,LEN(@dcRegionID)),CASE WHEN dcSalaryId = 17 THEN 16 ELSE dcSalaryId END, dcJobTypeId, dcEducationId, MinExperience
- SELECT dcJobTypeId, dcEducationId, MinExperience AS dcExperienceId, LEFT(dcregionId,LEN(@dcRegionID)) AS dcRegionId,AVG(Salary) Salary
- INTO #tj3
- FROM #tSalaryReport
- GROUP BY dcJobTypeId, MinExperience,LEFT(dcregionId,LEN(@dcRegionID)), dcEducationId
-
- ----记录到SalaryReportEducationExperience
- INSERT INTO #temp(dcRegionId, dcJobTypeId, dcEducationId, dcExperienceId, Salary2, Salary3, Salary4, Salary5, Salary6, Salary7, Salary8, Salary9, Salary10, Salary11, Salary12, Salary13, Salary14, Salary15, Salary16, Salary100)
- SELECT dcRegionId, dcJobTypeId, dcEducationId, dcExperienceId, [2], [3], [4], [5], [6], [7], [8], [9], [10], [11], [12], [13], [14], [15], [16], [100]
- FROM (
- SELECT LEFT(dcregionId,LEN(@dcRegionID)) AS dcRegionId, dcJobTypeId, dcEducationId, dcExperienceId, dcSalaryId, Cnt
- FROM #t3
- ) AS SourceTable
- PIVOT
- (
- AVG(Cnt)
- FOR dcSalaryId IN ([2], [3], [4], [5], [6], [7], [8], [9], [10], [11], [12], [13], [14], [15], [16], [100])
- ) AS PivotTable
- UPDATE a SET a.AvgSalary = b.Salary FROM #temp a, #tj3 b
- WHERE a.dcJobTypeId = b.dcJobTypeId AND a.dcRegionId = b.dcRegionId AND a.dcExperienceId = b.dcExperienceId AND a.dcEducationId = b.dcEducationId
- DROP TABLE #t3
- DROP TABLE #tj3
- TRUNCATE TABLE #Sum
- ----统计企业性质
- INSERT INTO #Sum
- SELECT LEFT(dcregionId,LEN(@dcRegionID)) AS dcRegionId, dcJobTypeId, dcEducationId, MinExperience AS dcExperienceId, ISNULL(dcCompanyKindId,0) dcCompanyKindId, COUNT(DISTINCT cpMainId) Cnt, 0
- FROM #tSalaryReport WITH(NOLOCK)
- GROUP BY LEFT(dcregionId,LEN(@dcRegionID)), dcJobTypeId, dcEducationId, MinExperience, ISNULL(dcCompanyKindId,0)
- UPDATE a
- SET a.CompanyKindNumber1 = b.[1],
- a.CompanyKindNumber2 = b.[2],
- a.CompanyKindNumber3 = b.[3],
- a.CompanyKindNumber4 = b.[4],
- a.CompanyKindNumber5 = b.[5],
- a.CompanyKindNumber6 = b.[6],
- a.CompanyKindNumber7 = b.[7],
- a.CompanyKindNumber8 = b.[8],
- a.CompanyKindNumber9 = b.[9],
- a.CompanyKindNumber10 = b.[10],
- a.CompanyKindNumber100 = b.[100]
- FROM #temp a, (
- SELECT dcRegionId, dcJobTypeId, dcEducationId, dcExperienceId, [1], [2], [3], [4], [5], [6], [7], [8], [9], [10], [100]
- FROM (
- SELECT dcRegionId, dcJobTypeId, dcEducationId, dcExperienceId, Item, Cnt
- FROM #Sum
- ) AS SourceTable
- PIVOT
- (
- AVG(Cnt)
- FOR Item IN ([1], [2], [3], [4], [5], [6], [7], [8], [9], [10], [100])
- ) AS PivotTable) b
- WHERE a.dcRegionId = b.dcRegionId
- AND a.dcJobTypeId = b.dcJobTypeId
- AND a.dcExperienceId = b.dcExperienceId
- AND a.dcEducationId = b.dcEducationId
- TRUNCATE TABLE #Sum
- ----统计企业规模
- INSERT INTO #Sum
- SELECT LEFT(dcregionId,LEN(@dcRegionID)) AS dcRegionId, dcJobTypeId, dcEducationId, MinExperience AS dcExperienceId, ISNULL(dcCompanySizeId,0) dcCompanySizeId, COUNT(DISTINCT cpMainId) Cnt, 0
- FROM #tSalaryReport WITH(NOLOCK)
- GROUP BY LEFT(dcregionId,LEN(@dcRegionID)), dcJobTypeId, dcEducationId, MinExperience, ISNULL(dcCompanySizeId,0)
-
- UPDATE a
- SET a.CompanySizeNumber1 = b.[1],
- a.CompanySizeNumber2 = b.[2],
- a.CompanySizeNumber3 = b.[3],
- a.CompanySizeNumber4 = b.[4],
- a.CompanySizeNumber5 = b.[5],
- a.CompanySizeNumber6 = b.[6]
- FROM #temp a, (
- SELECT dcRegionId, dcJobTypeId, dcEducationId, dcExperienceId, [1], [2], [3], [4], [5], [6]
- FROM (
- SELECT dcRegionId, dcJobTypeId, dcEducationId, dcExperienceId, Item, Cnt
- FROM #Sum
- ) AS SourceTable
- PIVOT
- (
- AVG(Cnt)
- FOR Item IN ([1], [2], [3], [4], [5], [6])
- ) AS PivotTable) b
- WHERE a.dcRegionId = b.dcRegionId
- AND a.dcJobTypeId = b.dcJobTypeId
- AND a.dcExperienceId = b.dcExperienceId
- AND a.dcEducationId = b.dcEducationId
-
- --更新经验月薪@dcExperienceId CHAR(1)@dcEducationId CHAR(1)
- --更新experiencesalary
- SELECT * INTO #tExperiencesalary2 FROM (
- SELECT avg(Salary)salary,LEFT(dcregionId,LEN(@dcRegionID))dcRegionId,MinExperience, dcJobTypeID,dcEducationId
- FROM reportdb..salaryReport
- WHERE dcEducationId=@dcEducationId AND dcJobTypeId =@dcJobTypeID AND LEFT(dcregionId,LEN(@dcRegionID))=@dcRegionID
- GROUP BY LEFT(dcregionId,LEN(@dcRegionID)),MinExperience,dcJobTypeID,dcEducationId
- )AS p
- PIVOT(AVG(salary)FOR MinExperience IN([0],[1],[2],[3],[4],[5]))AS T
- --更新
- UPDATE a
- SET a.ExperienceSalary0=b.[0],
- a.ExperienceSalary1=b.[1],
- a.ExperienceSalary2=b.[2],
- a.ExperienceSalary3=b.[3],
- a.ExperienceSalary4=b.[4],
- a.ExperienceSalary5=b.[5]
- FROM #temp a, #tExperiencesalary2 b
- WHERE a.dcRegionId = b.dcRegionId
- AND a.dcJobTypeID = b.dcJobTypeID
- AND a.dcEducationId = b.dcEducationId
- DROP TABLE #tExperiencesalary2
-
- --更新学历月薪
- SELECT * INTO #tEducationsalary2 FROM (
- SELECT avg(Salary)salary,LEFT(dcregionId,LEN(@dcRegionID))dcRegionId,dcEducationId, dcJobTypeId,MinExperience
- FROM reportdb..salaryReport
- WHERE MinExperience=@dcExperienceId AND dcJobTypeId =@dcJobTypeID AND LEFT(dcregionId,LEN(@dcRegionID))=@dcRegionID
- GROUP BY LEFT(dcregionId,LEN(@dcRegionID)),dcEducationId,dcJobTypeId,MinExperience
- )AS p
- PIVOT(AVG(salary)FOR dcEducationId IN([1],[2],[3],[4],[5],[6],[7],[8],[100]))AS T
- --更新
- UPDATE a
- SET a.EducationSalary1=b.[1],
- a.EducationSalary2=b.[2],
- a.EducationSalary3=b.[3],
- a.EducationSalary4=b.[4],
- a.EducationSalary5=b.[5],
- a.EducationSalary6=b.[6],
- a.EducationSalary7=b.[7],
- a.EducationSalary8=b.[8],
- a.EducationSalary100=b.[100]
- FROM #temp a, #tEducationsalary2 b
- WHERE a.dcRegionId = b.dcRegionId
- AND a.dcJobTypeId = b.dcJobTypeId
- AND a.dcExperienceId = b.MinExperience
- DROP TABLE #tEducationsalary2
-
- IF LEN(@dcRegionID)= 2 OR @JobTypeGrade = 2--全省数据或职位类别大类(全部)
- BEGIN
- SELECT LEFT(dcRegionid,LEN(@dcRegionID))dcRegionid ,dcExperienceId,dcEducationId, LEFT(dcJobTypeID, LEN(@dcJobTypeID)) dcJobTypeID, AVG(AvgSalary) AvgSalary,
- SUM(JobNumber)JobNumber,SUM(Salary2) Salary2,SUM(Salary3) Salary3,SUM(Salary4) Salary4,
- SUM(Salary5) Salary5, SUM(Salary6) Salary6, SUM(Salary7) Salary7, SUM(Salary8) Salary8,
- SUM(Salary9) Salary9, SUM(Salary10) Salary10, SUM(Salary11) Salary11, SUM(Salary12) Salary12,
- SUM(Salary13) Salary13, SUM(Salary14) Salary14, SUM(Salary15) Salary15, SUM(Salary16) Salary16,
- SUM(Salary100) Salary100, SUM(ExperienceNumber0) ExperienceNumber0, SUM(ExperienceNumber1) ExperienceNumber1,
- SUM(ExperienceNumber2) ExperienceNumber2, SUM(ExperienceNumber3) ExperienceNumber3, SUM(ExperienceNumber4) ExperienceNumber4, SUM(ExperienceNumber5) ExperienceNumber5,
- AVG(ExperienceSalary0)ExperienceSalary0, AVG(ExperienceSalary1)ExperienceSalary1, AVG(ExperienceSalary2)ExperienceSalary2,
- AVG(ExperienceSalary3)ExperienceSalary3, AVG(ExperienceSalary4)ExperienceSalary4, AVG(ExperienceSalary5)ExperienceSalary5, SUM(EducationNumber1)EducationNumber1,
- SUM(EducationNumber2)EducationNumber2, SUM(EducationNumber3)EducationNumber3, SUM(EducationNumber4)EducationNumber4,
- SUM(EducationNumber5)EducationNumber5, SUM(EducationNumber6)EducationNumber6, SUM(EducationNumber7)EducationNumber7,
- SUM(EducationNumber8)EducationNumber8, SUM(EducationNumber100)EducationNumber100, AVG(EducationSalary1)EducationSalary1, AVG(EducationSalary2)EducationSalary2,
- AVG(EducationSalary3)EducationSalary3, AVG(EducationSalary4)EducationSalary4, AVG(EducationSalary5)EducationSalary5,
- AVG(EducationSalary6)EducationSalary6, AVG(EducationSalary7)EducationSalary7, AVG(EducationSalary8)EducationSalary8, AVG(EducationSalary100)EducationSalary100,
- SUM(CompanyKindNumber1)CompanyKindNumber1, SUM(CompanyKindNumber2)CompanyKindNumber2, SUM(CompanyKindNumber3)CompanyKindNumber3,
- SUM(CompanyKindNumber4)CompanyKindNumber4, SUM(CompanyKindNumber5)CompanyKindNumber5, SUM(CompanyKindNumber6)CompanyKindNumber6,
- SUM(CompanyKindNumber7)CompanyKindNumber7, SUM(CompanyKindNumber8)CompanyKindNumber8, SUM(CompanyKindNumber9)CompanyKindNumber9,
- SUM(CompanyKindNumber10)CompanyKindNumber10, SUM(CompanyKindNumber100)CompanyKindNumber100,
- SUM(CompanySizeNumber1)CompanySizeNumber1, SUM(CompanySizeNumber2)CompanySizeNumber2, SUM(CompanySizeNumber3)CompanySizeNumber3,
- SUM(CompanySizeNumber4)CompanySizeNumber4, SUM(CompanySizeNumber5)CompanySizeNumber5, SUM(CompanySizeNumber6)CompanySizeNumber6
- FROM #temp
- GROUP BY LEFT(dcRegionid,LEN(@dcRegionID)),dcExperienceId, dcEducationId,LEFT(dcJobTypeID, LEN(@dcJobTypeID))
- END
- ELSE
- BEGIN
- SELECT TOP 10 * FROM #temp
- END
- DROP TABLE #temp
- DROP TABLE #Sum
- END
- END
- END
- --查询输入的金额占据的百分比
- IF @inputSalary !=0
- BEGIN
- DECLARE @allcnt INT, @lesscnt INT
- IF @dcJobTypeID =0
- BEGIN
- IF @dcExperienceId=''
- BEGIN
- IF @dcEducationId=''
- BEGIN
- SELECT @allcnt=COUNT(1) FROM reportdb..salaryReport
- WHERE LEFT(dcregionId,LEN(@dcRegionID))=@dcRegionID
-
- SELECT @lesscnt=COUNT(1) FROM reportdb..salaryReport
- WHERE LEFT(dcregionId,LEN(@dcRegionID))=@dcRegionID
- AND Salary<@inputSalary
- END
- ELSE
- BEGIN
- SELECT @allcnt=COUNT(1) FROM reportdb..salaryReport
- WHERE LEFT(dcregionId,LEN(@dcRegionID))=@dcRegionID
- AND dcEducationId =@dcEducationId
-
- SELECT @lesscnt=COUNT(1) FROM reportdb..salaryReport
- WHERE LEFT(dcregionId,LEN(@dcRegionID))=@dcRegionID
- AND dcEducationId =@dcEducationId
- AND Salary<@inputSalary
- END
- END
- ELSE
- BEGIN
- IF @dcEducationId=''
- BEGIN
- SELECT @allcnt=COUNT(1) FROM reportdb..salaryReport
- WHERE LEFT(dcregionId,LEN(@dcRegionID))=@dcRegionID
- AND MinExperience =@dcExperienceId
- SELECT @lesscnt=COUNT(1) FROM reportdb..salaryReport
- WHERE LEFT(dcregionId,LEN(@dcRegionID))=@dcRegionID
- AND Salary<@inputSalary
- AND MinExperience =@dcExperienceId
- END
- ELSE
- BEGIN
- SELECT @allcnt=COUNT(1) FROM reportdb..salaryReport
- WHERE LEFT(dcregionId,LEN(@dcRegionID))=@dcRegionID
- AND dcEducationId =@dcEducationId
- AND MinExperience =@dcExperienceId
- SELECT @lesscnt=COUNT(1) FROM reportdb..salaryReport
- WHERE LEFT(dcregionId,LEN(@dcRegionID))=@dcRegionID
- AND dcEducationId =@dcEducationId
- AND Salary<@inputSalary
- AND MinExperience =@dcExperienceId
- END
- END
- END
- ELSE
- BEGIN
- IF @dcExperienceId=''
- BEGIN
- IF @dcEducationId=''
- BEGIN
- SELECT @allcnt=COUNT(1) FROM reportdb..salaryReport
- WHERE LEFT(dcregionId,LEN(@dcRegionID))=@dcRegionID
- AND LEFT(dcJobtypeId,LEN(@dcJobTypeId)) =@dcJobTypeId
-
- SELECT @lesscnt=COUNT(1) FROM reportdb..salaryReport
- WHERE LEFT(dcregionId,LEN(@dcRegionID))=@dcRegionID
- AND LEFT(dcJobtypeId,LEN(@dcJobTypeId))=@dcJobTypeId
- AND Salary<@inputSalary
- END
- ELSE
- BEGIN
- SELECT @allcnt=COUNT(1) FROM reportdb..salaryReport
- WHERE LEFT(dcregionId,LEN(@dcRegionID))=@dcRegionID
- AND dcEducationId =@dcEducationId
- AND LEFT(dcJobtypeId,LEN(@dcJobTypeId)) =@dcJobTypeId
-
- SELECT @lesscnt=COUNT(1) FROM reportdb..salaryReport
- WHERE LEFT(dcregionId,LEN(@dcRegionID))=@dcRegionID
- AND dcEducationId =@dcEducationId
- AND LEFT(dcJobtypeId,LEN(@dcJobTypeId)) =@dcJobTypeId
- AND Salary<@inputSalary
- END
- END
- ELSE
- BEGIN
- IF @dcEducationId=''
- BEGIN
- SELECT @allcnt=COUNT(1) FROM reportdb..salaryReport
- WHERE LEFT(dcregionId,LEN(@dcRegionID))=@dcRegionID
- AND MinExperience =@dcExperienceId
- AND LEFT(dcJobtypeId,LEN(@dcJobTypeId))=@dcJobTypeId
- SELECT @lesscnt=COUNT(1) FROM reportdb..salaryReport
- WHERE LEFT(dcregionId,LEN(@dcRegionID))=@dcRegionID
- AND Salary<@inputSalary
- AND MinExperience =@dcExperienceId
- AND LEFT(dcJobtypeId,LEN(@dcJobTypeId))=@dcJobTypeId
- END
- ELSE
- BEGIN
- SELECT @allcnt=COUNT(1) FROM reportdb..salaryReport
- WHERE LEFT(dcregionId,LEN(@dcRegionID))=@dcRegionID
- AND dcEducationId =@dcEducationId
- AND MinExperience =@dcExperienceId
- AND LEFT(dcJobtypeId,LEN(@dcJobTypeId))=@dcJobTypeId
- SELECT @lesscnt=COUNT(1) FROM reportdb..salaryReport
- WHERE LEFT(dcregionId,LEN(@dcRegionID))=@dcRegionID
- AND dcEducationId =@dcEducationId
- AND Salary<@inputSalary
- AND MinExperience =@dcExperienceId
- AND LEFT(dcJobtypeId,LEN(@dcJobTypeId))=@dcJobTypeId
- END
- END
- END
- IF @allcnt=0 OR @lesscnt =0
- SELECT ''AS lesspercent
- ELSE
- SELECT CONVERT(VARCHAR(10),@lesscnt*100/@allcnt) +'%' AS lesspercent
- END
- ELSE
- BEGIN
- SELECT '' AS lesspercent
- END
-
- END
- SET NOCOUNT OFF
- GO
- /****** Object: StoredProcedure [dbo].[procSales_WorkdateStatusSelect] Script Date: 2018/12/13 19:11:58 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.03
- --创建人:Nick
- --说明:判断今天是否是工作日
- --#####################################################
- CREATE PROCEDURE [dbo].[procSales_WorkdateStatusSelect]
- (
- @WorkDate VARCHAR(20)
- )
- AS
- INSERT INTO procLog select 'procSales_WorkdateStatusSelect', @workdate, getdate()
- BEGIN TRY
- IF @WorkDate IS NULL
- SELECT status FROM sales_workdate WITH(NOLOCK)
- WHERE workdate = CONVERT(VARCHAR(8), GETDATE(), 112)
- AND Status=1
- ELSE
- SELECT status FROM sales_workdate WITH(NOLOCK)
- WHERE workdate = @WorkDate
- AND Status=1
- END TRY
- BEGIN CATCH
- RETURN 0
- END CATCH
- GO
- /****** Object: StoredProcedure [dbo].[ProcSaleWorkDateStatusSelect] Script Date: 2018/12/13 19:11:58 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.30
- --创建人:Nick
- --说明:判断今天是否是工作日
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcSaleWorkDateStatusSelect]
- (
- @Day INT
- )
- AS
- --INSERT INTO procLog select 'ProcSaleWorkDateStatusSelect', @Day, getdate()
- BEGIN
- IF @Day IS NULL
- SELECT 1 FROM WorkDate WITH(NOLOCK)
- WHERE WorkDate = CONVERT(VARCHAR(8), GETDATE(), 112)
- AND Type = 1
- ELSE
- SELECT 1
- FROM WorkDate WITH(NOLOCK)
- WHERE WorkDate = @Day
- AND Type = 1
- END
- GO
- /****** Object: StoredProcedure [dbo].[procSearchKeywordByKeyWordPinYinSelect] Script Date: 2018/12/13 19:11:58 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.10
- --创建人:NICK
- --说明:关键词
- --#####################################################
- CREATE PROCEDURE [dbo].[procSearchKeywordByKeyWordPinYinSelect]
- (
- @KeyWord VARCHAR(50)
- )
- AS
- BEGIN
- SELECT TOP 10 KeyType,KeyWord,KeyWordPinYin,SearchResult,SearchType
- FROM searchdb..SearchKeyword WITH(NOLOCK)
- WHERE (KeyWord LIKE @KeyWord+'%' OR KeyWordPinYin LIKE @KeyWord+'%')
- ORDER BY SearchNumber DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[procSearchKeywordByKeyWordSelect] Script Date: 2018/12/13 19:11:58 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.03
- --创建人:Nick
- --说明:获取关键词
- --#####################################################
- CREATE PROCEDURE [dbo].[procSearchKeywordByKeyWordSelect]
- (
- @KeyWord VARCHAR(50),
- @Type INT
- )
- AS
- BEGIN TRY
- IF @Type = 1
- BEGIN
- SELECT TOP 10 KeyType,KeyWord,KeyWordPinYin,SearchResult,SearchType
- FROM searchdb..SearchKeyword WITH(NOLOCK INDEX(IX_SearchKeyword_Keyword))
- WHERE KeyWord LIKE ''+@KeyWord+'%'
- ORDER BY SearchNumber DESC
- END
- ELSE
- BEGIN
- SELECT TOP 10 KeyType,KeyWord,KeyWordPinYin,SearchResult,SearchType
- FROM searchdb..SearchKeyword WITH(NOLOCK INDEX(IX_SearchKeyword_KeywordPinYin))
- WHERE KeyWordPinYin LIKE ''+@KeyWord+'%'
- ORDER BY SearchNumber DESC
- END
- END TRY
- BEGIN CATCH
- RETURN 0
- END CATCH
- GO
- /****** Object: StoredProcedure [dbo].[ProcSearchKeywordsPowerBtMergerUpdate] Script Date: 2018/12/13 19:11:58 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#######################################################
- --20111213 sean
- --用于排名工具,断点续传
- --#######################################################
- CREATE PROCEDURE [dbo].[ProcSearchKeywordsPowerBtMergerUpdate]
- AS
- BEGIN
- SET NOCOUNT ON;
- DECLARE @DayInterval AS INT, @Week6 AS VARCHAR(8), @Day AS VARCHAR(8), @I AS INT, @Today AS VARCHAR(8)
- SET @DayInterval =DATEPART(W, GETDATE())
- IF @DayInterval = 7
- SET @DayInterval = 0
- SELECT @Week6 = CONVERT(VARCHAR(8), GETDATE() - @DayInterval, 112), @i = 0, @Today = CONVERT(VARCHAR(8), GETDATE(), 112)
- WHILE @I < @DayInterval
- BEGIN
- SET @i = @i + 1
- SET @Day = CONVERT(VARCHAR(8), GETDATE() - @i, 112)
- IF @Day >= @Week6
- BEGIN
- UPDATE a SET a.YearMonthDay = @Today
- FROM SearchKeywordsPower a
- WHERE a.YearMonthDay = @Day
- AND NOT EXISTS(SELECT 'x' FROM SearchKeywordsPower
- WHERE SearchKeywords_Id = a.SearchKeywords_Id
- AND Engine = a.Engine
- AND YearMonthDay = @Today)
- END
- END
- DELETE SearchKeywordsPower WHERE YearMonthDay >= @Week6 AND YearMonthDay < @Today
- --update SearchKeywordsPower set YearMonthDay = @Week6 where YearMonthDay = @Today
- END
- GO
- /****** Object: StoredProcedure [dbo].[procSecondererInsert] Script Date: 2018/12/13 19:11:59 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --创建人 Lambo 20101013
- --用于首页记录访问记录
- CREATE PROCEDURE [dbo].[procSecondererInsert]
- (
- @province_id SMALLINT,
- @versionid INT,
- @referer VARCHAR(190),
- @ip VARCHAR(15),
- @keyve NVARCHAR(50)
- )
- AS
- BEGIN
- SET NOCOUNT ON
- SELECT TOP 1 ip
- FROM Seconderer WITH(NOLOCK)
- WHERE versionid=@versionid
- AND referer=@referer
- AND ip=@ip
- AND LoginDate > DATEADD(MINUTE, -10, GETDATE())
- IF(@@rowcount=0)
- BEGIN
- INSERT INTO seconderer (province_id,versionid,referer,ip,keywords)
- VALUES(@province_id,@versionid,@referer,@ip,@keyve)
- END
- SET NOCOUNT OFF
- END
- GO
- /****** Object: StoredProcedure [dbo].[procSecondererInsert2] Script Date: 2018/12/13 19:11:59 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --创建人 Lambo 20101013
- --用于首页记录访问记录
- CREATE PROCEDURE [dbo].[procSecondererInsert2]
- (
- @Province_ID SMALLINT,
- @VersionID INT,
- @Referer VARCHAR(190),
- @Ip VARCHAR(15),
- @Keyve NVARCHAR(50),
- @SessionID VARCHAR(30)
- )
- AS
- BEGIN
- SET NOCOUNT ON
- SELECT TOP 1 Ip
- FROM Seconderer WITH(NOLOCK)
- WHERE VersionID = @VersionID
- AND Referer = @Referer
- AND Ip = @Ip
- AND LoginDate > DATEADD(MINUTE, -10, GETDATE())
- IF(@@ROWCOUNT = 0)
- BEGIN
- INSERT INTO seconderer (Province_ID, VersionID, Referer, Ip, Keywords, Sessionid)
- VALUES(@Province_ID, @VersionID, @Referer, @Ip, @Keyve, @Sessionid)
- END
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcShareMainLogByClickCountUpdate] Script Date: 2018/12/13 19:11:59 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2015.1.19 --创建人:Harry
- --说明:分享点击量增加
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcShareMainLogByClickCountUpdate]
- (
- @ShareID VARCHAR(50)
- )
- AS
- BEGIN
- UPDATE LogDB..ShareMainLog
- SET ClickCount=ClickCount+1
- WHERE ShareID=@ShareID
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcShareMainLogInsert] Script Date: 2018/12/13 19:12:00 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcShareMainLogInsert]
- (
- @ShareID VARCHAR(20),
- @Url VARCHAR(200),
- @ShareMode TINYINT,
- @ShareWay TINYINT,
- @PageMark SMALLINT,
- @PageID VARCHAR(20), --INT,
- @ShareBy TINYINT,
- @ShareMan INT
- )
- AS
- SET NOCOUNT ON
- IF EXISTS(SELECT 'x' FROM Logdb..ShareMainLog WHERE AddDate > DATEADD(MINUTE, -2, GETDATE()) AND ShareID = @ShareID AND Url = @Url)
- RETURN
- DECLARE @PageNo INT
- BEGIN TRY
- SET @PageNo = CONVERT(INT, @PageID)
- END TRY
- BEGIN CATCH
- SET @PageNo = 0
- END CATCH
- BEGIN
- INSERT INTO Logdb..ShareMainLog(
- ShareID,
- Url,
- ShareMode,
- ShareWay,
- PageMark,
- PageID,
- ShareBy,
- ShareMan
- )
- VALUES(
- @ShareID,
- @Url,
- @ShareMode,
- @ShareWay,
- @PageMark,
- @PageNo,
- @ShareBy,
- @ShareMan
- )
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSmsMessageLogByBatchSendSelect] Script Date: 2018/12/13 19:12:00 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcSmsMessageLogByBatchSendSelect]
- AS
- --return
- SET NOCOUNT ON
- BEGIN
- IF DATEPART(HOUR, GETDATE()) < 8 OR DATEPART(HOUR, GETDATE()) > 17
- RETURN
- CREATE TABLE #t(ProvinceId INT, Cnt INT)
- CREATE TABLE #m(id INT, Mobile VARCHAR(20))
- INSERT INTO #t(ProvinceId, Cnt)
- SELECT ProvinceId, COUNT(*) Cnt
- FROM bsMobileSpread
- WHERE UserType = 1
- AND SendStatus IS NULL
- AND BatchId IS NULL
- --AND AddDate > CONVERT(VARCHAR(10), GETDATE(), 120)
- GROUP BY ProvinceId
- HAVING COUNT(*) > 199
-
- IF (SELECT COUNT(*) FROM #t) = 0
- RETURN
-
- DECLARE @MobileString VARCHAR(MAX), @Msg NVARCHAR(500), @ProvinceId INT, @Cnt INT
- SET @ProvinceId = 0
- WHILE EXISTS(SELECT 'x' FROM #t WHERE ProvinceId > @ProvinceId)
- BEGIN
- SELECT TOP 1 @MobileString = '', @ProvinceId = ProvinceId, @Cnt = Cnt FROM #t WHERE ProvinceId > @ProvinceId ORDER BY ProvinceId
- SELECT TOP 1 @Msg = [Message] FROM bsMobileMessage WHERE dcProvinceId = @ProvinceId AND EndDate > GETDATE() AND BeginDate < GETDATE() ORDER BY ID DESC
- IF @Cnt > 500
- SET @Cnt = 300
- TRUNCATE TABLE #m
- INSERT INTO #m
- SELECT TOP (@Cnt) Id, MobileNo
- FROM bsMobileSpread
- WHERE ProvinceId = @ProvinceId
- AND UserType = 1
- AND SendStatus IS NULL
- AND BatchID IS NULL
- --AND AddDate > CONVERT(VARCHAR(10), GETDATE() - 1, 120)
- ORDER BY ID
- SELECT TOP (@Cnt) @MobileString = @MobileString + ',' + Mobile
- FROM #m
- IF LEN(@MobileString) > 1
- BEGIN
- SET @MobileString = RIGHT(@MobileString, LEN(@MobileString) - 1)
- INSERT INTO smsBatchSend(Mobile, Msg) SELECT @MobileString, @Msg
- UPDATE bsMobileSpread SET BatchId = @@Identity WHERE ID IN(SELECT Id FROM #m)
- END
- END
- END
- GO
- /****** Object: StoredProcedure [dbo].[procSmsMessageLogByBirthDayInsert] Script Date: 2018/12/13 19:12:00 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[procSmsMessageLogByBirthDayInsert]
- AS
- BEGIN
- DECLARE @t VARCHAR(4)
- SELECT @t = RIGHT(CONVERT(VARCHAR(8), GETDATE(), 112), 4)
- INSERT SmsMessageLog(SendMan, ManagerUserId, paMainId, caMainId, Mobile, MsgType, IsCat, Msg)
- SELECT 1, ManagerUserId, NULL, NULL, Mobile, 207, 0,
- '一份祝福,一份真诚,在这个特别的日子里,伍亿全体同仁给您送上生日最最真挚的祝福,祝您生日.快乐、家庭幸福!伍亿的发展倾注了您和您家人的支持、奉献,感谢您的辛勤工作,在此向您表示衷心感谢!愿我们在今后的工作中和谐、同心,共创美好的明天!'
- FROM OaDb..WorkUser
- WHERE IDNumber LIKE '__________' + @t + '%'
- AND JobStatus <> 3
- end
- GO
- /****** Object: StoredProcedure [dbo].[ProcSmsMessageLogByCaSMSWaitInsert] Script Date: 2018/12/13 19:12:00 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- -----------------
- --创建日期:2012-4-17
- --创建人:lambo
- --功能说明:企业汇总类短信发送。将marketdb..caSMSWait里的数据转入SmsMessageLog
- -----------------
- CREATE PROCEDURE [dbo].[ProcSmsMessageLogByCaSMSWaitInsert]
- AS
- BEGIN TRY
- IF oadb.dbo.IsWorkDate(getdate()) <> 1
- RETURN
-
- --删除今天已经登录过的企业的记录
- If DATEPART(HOUR,GETDATE())*100 + DATEPART(MINUTE,GETDATE()) <= 905
- DELETE FROM marketdb..cpSmsWait WHERE cpMainID IN(SELECT ID FROM cpMain WITH(NOLOCK) WHERE LastLoginDate > GETDATE() - 1)
- ELSE
- DELETE FROM marketdb..cpSmsWait WHERE cpMainID IN(SELECT ID FROM cpMain WITH(NOLOCK) WHERE LastLoginDate > DATEADD(MINUTE, -10, GETDATE()))
- DECLARE @t AS TABLE(
- ID int,
- CpMainID int,
- CaMainID int,
- SmsType tinyint,
- Msg nvarchar(100),
- Mobile varchar(11),
- LastLoginTime int,
- exMessageP2CCount int,
- exInterviewCount int,
- exJobApplyCount int,
- cacvIntentionCount int,
- LastDate datetime,
- LastLoginDate smalldatetime,
- IsSend Bit
- )
- INSERT INTO @t
- SELECT *, 0 FROM marketdb..cpSmsWait
- WHERE LastLoginTime < DATEPART(HOUR, GETDATE()) * 100 + DATEPART(MINUTE, GETDATE())
- AND Msg > ''
- ORDER BY CASE WHEN SmsType > 16 THEN 0 ELSE 1 END, LastLoginTime DESC
- --UPDATE @t SET IsSend = 1 WHERE ID % 7 = 1
- UPDATE @t SET IsSend = 1
-
- --INSERT INTO SmsWatch
- --SELECT *, CONVERT(VARCHAR(8), GETDATE(), 112), SmsType-1 FROM @t
-
- INSERT SmsMessageLog(SendMan, ManagerUSerId, paMainId, caMainId, Mobile, MsgType, IsCat, Msg)
- SELECT 0, NULL, NULL, caMainID, Mobile, SmsType-1, 0,Msg FROM @T WHERE IsSend = 1
- DELETE FROM marketdb..cpSMSWait WHERE ID IN (select ID FROM @T)
- END TRY
- BEGIN CATCH
- END CATCH
- GO
- /****** Object: StoredProcedure [dbo].[ProcSmsMessageLogByEmrtReceiveInsert] Script Date: 2018/12/13 19:12:01 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcSmsMessageLogByEmrtReceiveInsert]
- (
- @Mobile VARCHAR(20),
- @Msg NVARCHAR(200)
- )
- AS
- BEGIN
- SET NOCOUNT ON
- SET @Mobile = LTRIM(RTRIM(REPLACE(@Mobile, '+', '')))
- IF(LEFT(@Mobile, 2) = '86')
- SET @Mobile = RIGHT(@Mobile, LEN(@Mobile) - 2)
- DECLARE @ReceiveDate VARCHAR(30)
- SET @ReceiveDate = CONVERT(VARCHAR(20), GETDATE(), 120)
- DECLARE @ID INT, @LeaveId AS INT, @WorkFlowID AS INT, @RunFlowId AS INT, @WorkStepId AS INT
- INSERT SmsMessageLog(SendMan, Mobile, Msg, IsCat, SendDate, SmsType, MsgType, PortNo)
- VALUES(-1, @Mobile, @Msg, 0, @ReceiveDate, 2, 255, 1)
-
- SET @ID = @@IDENTITY
- IF @Mobile LIKE '955%'
- BEGIN
- UPDATE SmsMessageLog SET SendMan = 140, MsgType = 245 WHERE ID = @ID
- RETURN
- END
- IF LEFT(@Msg, 3) = '???'
- SET @Msg = RIGHT(@Msg, LEN(@Msg) - 3)
- --判断是不是内部的手机号
- DECLARE @MID INT
- SELECT TOP 1 @MID = ManagerUserID FROM OADB..WorkUser WITH(NOLOCK) WHERE Mobile = @Mobile AND JobStatus <> 3
- IF @MID = 1
- BEGIN
- IF LEFT(@Msg, 1) IN('y', 'n')
- BEGIN
- IF (dbo.IsINT(RIGHT(@Msg, LEN(@Msg) - 1)) = 1 AND LEN(@Msg) BETWEEN 4 AND 6)
- BEGIN
- SET @LeaveId = CONVERT(INT, RIGHT(@MSg, LEN(@Msg) - 1))
- SELECT @RunFlowId = ID, @WorkFlowID = WorkFlowId
- FROM OaDb..RunFlow
- WHERE BusinessId = @LeaveId AND WorkUserId IN(1, 10) AND ModuleId = 101
- IF @RunFlowId IS NULL
- RETURN
- IF LEFT(@Msg, 1) = 'y'
- BEGIN
- UPDATE OaDb..RunFlow SET ViewDate = GETDATE(),SendDate = GETDATE(), ExecutionType = 1
- WHERE ID = @RunFlowId
- SELECT @WorkStepId = CASE @WorkFlowId WHEN 6 THEN 17 ELSE 24 END
- INSERT INTO Oadb..RunFlow(WorkStepID, WorkUserID, BusinessID, Opinion, ReceiveDate, ViewDate,
- SendDate, RemindNumber, NextRemindTime, ExecutionType, WorkFlowId, ModuleID)
- SELECT @WorkStepId, ID, @LeaveID, '', GETDATE(), NULL, NULL, 0, GETDATE(), 0, @WorkFlowId, 101
- FROM OADB..WorkUser WHERE ManagerUserID IN(101) AND JobStatus < 3
- END
- IF LEFT(@Msg, 1) = 'n'
- BEGIN
- UPDATE OaDb..RunFlow SET Opinion='退回', ViewDate = GETDATE(),SendDate = GETDATE(), ExecutionType = 1
- WHERE ID = @RunFlowId
- SELECT @WorkStepId = ID FROM Oadb..WorkStep WHERE WorkFlowId = @WorkFlowId AND IsStart = 1
-
- INSERT INTO Oadb..RunFlow(WorkStepID, WorkUserID, BusinessID, Opinion, ReceiveDate, ViewDate,
- SendDate, RemindNumber, NextRemindTime, ExecutionType, WorkFlowId, ModuleID)
- SELECT @WorkStepId, ApplicantID, @LeaveID, '', GETDATE(), NULL, NULL, 0, GETDATE(), 0, @WorkFlowId, 101
- FROM OADB..Leave WHERE ID = @LeaveId
- END
- END
- END
- END
- IF @MID > 0
- BEGIN
- UPDATE SmsMessageLog SET SendMan = @MID, MsgType = 241 WHERE ID = @ID
- ----Rtx
- IF LEFT(@Msg, 2) = '请假'
- BEGIN
- EXEC OaDb..ProcLeaveBySmsInsert @Msg, @Mobile
- END
- ELSE
- BEGIN
- --IF(GETDATE() BETWEEN '2013-2-2 15:00' AND '2013-2-2 21:59' OR @Mobile IN('15318161005', '18663412806', '13455496132'))
- INSERT INTO nhSms VALUES(@MID, @Mobile, @Msg, 0, 0, 0, GETDATE())
- END
- RETURN
- END
- DECLARE @CaMainID INT, @CompanyName VARCHAR(100), @cpMainId INT, @PaMainID INT, @ManagerUserID INT, @SendMan INT, @ConsultantID INT
- SET @ConsultantID = 131 --先暂时给lulu
-
- SELECT TOP 1 @CaMainID = CaMainID, @PaMainID = PaMainID, @ManagerUserID = ManagerUserID, @SendMan = SendMan
- FROM SmsMessageLog WITH(NOLOCK)
- WHERE Mobile = @Mobile
- AND SmsType = 1
- ORDER BY ID DESC
-
- IF @CaMainID > 0
- BEGIN
- IF @SendMan > 0
- UPDATE SmsMessageLog SET SendMan = @SendMan, caMainId = @caMainId, MsgType = 242 WHERE ID = @ID
- ELSE
- BEGIN
- SELECT @ConsultantID = ConsultantID
- FROM caMain a WITH(NOLOCK), cpMain b WITH(NOLOCK)
- WHERE a.cpMainID = b.ID
- AND a.ID = @caMainID
-
- IF @ConsultantID IS NULL
- BEGIN
- SET @ConsultantID = 131
- END
- UPDATE SmsMessageLog SET SendMan = @ConsultantID, MsgType = 242, caMainId = @caMainId WHERE ID = @ID
- END
- END
- ELSE IF @paMainID > 0
- BEGIN
- IF @SendMan > 0
- UPDATE SmsMessageLog SET SendMan = @SendMan, MsgType = 243, paMainId = @paMainId WHERE ID = @ID
- ELSE
- BEGIN
- SET @ConsultantID = 131
- UPDATE SmsMessageLog SET SendMan = @ConsultantID, MsgType = 243, paMainId = @paMainId WHERE ID = @ID
- END
- END
- ELSE IF @ManagerUserID > 0
- UPDATE SmsMessageLog SET SendMan = @ManagerUserID, MsgType =241 WHERE ID = @ID
- ELSE IF @SendMan > 0
- UPDATE SmsMessageLog SET SendMan = @SendMan WHERE ID = @ID
- ELSE
- BEGIN
- --是否企业用户的手机
- SELECT @caMainId = a.ID, @companyName = b.Name, @cpMainId = b.Id, @ConsultantID = b.ConsultantID
- FROM caMain a WITH(NOLOCK), cpMain b WITH(NOLOCK)
- WHERE a.cpMainID = b.ID
- AND a.Mobile = @Mobile
- IF @caMainId > 0
- BEGIN
- IF @ConsultantID > 0
- BEGIN
- UPDATE SmsMessageLog SET SendMan = @ConsultantID, caMainId = @caMainId, MsgType = 242 WHERE ID = @ID
-
- INSERT INTO rtxNotifyLog (Receiver, RtxTitle, RtxMessage, SendType, DelayTime, SendTime, AddTime)
- SELECT @ConsultantID, '您收到新的短信',
- '您收到短信,发信人:' + @companyName + '(' + LTRIM(STR(@cpMainId)) + '),时间:' + CONVERT(VARCHAR(20), GETDATE(), 120) +
- ',消息:' + @Msg + '。http://sysback.51rc.com/yehgiiaovbjkaie871/Others/mobilesend_list2.asp',
- 0, 0, 0, GETDATE()
- END
- ELSE
- BEGIN
- SET @ConsultantID = 131
- UPDATE SmsMessageLog SET SendMan = @ConsultantID, MsgType = 242, caMainId = @caMainId WHERE ID = @ID
- END
- RETURN
- END
- --是否招聘会认证的手机
- DECLARE @RID AS INT
- SELECT @RID = ID, @paMainId = paMainID FROM MarketDB..RmGiftRequire WITH(NOLOCK) WHERE Mobile = @Mobile
- IF @@ROWCOUNT = 0
- SELECT @RID = ID, @paMainId = paMainID FROM MarketDB..MobileRegisterCode WITH(NOLOCK) WHERE Mobile = @Mobile
- IF @RID > 0
- BEGIN
- SET @ConsultantID = 160
- UPDATE SmsMessageLog SET SendMan = @ConsultantID, paMainId = @paMainId, MsgType = 244 WHERE ID = @ID
- RETURN
- END
- --是否个人用户的手机
- SELECT @paMainId = ID
- FROM paMain WITH(NOLOCK)
- WHERE Mobile = @Mobile
- IF @paMainId > 0
- BEGIN
- SET @ConsultantID = 131
- UPDATE SmsMessageLog SET SendMan = @ConsultantID, paMainId = @paMainId, MsgType = 243 WHERE ID = @ID
- RETURN
- END
- END
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSmsMessageLogByPaSMSWaitInsert] Script Date: 2018/12/13 19:12:01 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- -----------------
- --创建日期:2012-4-17
- --创建人:lambo
- --功能说明:个人汇总类短信发送。将marketdb..paSMSWait里的数据转入SmsMessageLog
- --计划任务执行,8点至
- -----------------
- CREATE PROCEDURE [dbo].[ProcSmsMessageLogByPaSMSWaitInsert]
- AS
- BEGIN TRY
- --删除今天已经登录过的个人的记录
- If DATEPART(HOUR,GETDATE())*100 + DATEPART(MINUTE,GETDATE()) <= 805
- DELETE FROM marketdb..paSMSWait WHERE paMainID IN(SELECT ID FROM paMain WITH(NOLOCK) WHERE LastLoginDate > GETDATE() - 1)
- ELSE
- DELETE FROM marketdb..paSMSWait WHERE paMainID IN(SELECT ID FROM paMain WITH(NOLOCK) WHERE LastLoginDate > DATEADD(MINUTE, -10, GETDATE()))
- DECLARE @t AS TABLE(
- ID int,
- paMainID int,
- SmsType tinyint,
- Msg nvarchar(100),
- Mobile varchar(11),
- LastLoginTime int,
- LastDate datetime,
- IsSend Bit
- )
- INSERT INTO @t
- SELECT TOP 20 *, 1 FROM marketdb..paSMSWait WHERE LastLoginTime < DATEPART(HOUR, GETDATE())*100 + DATEPART(MINUTE, GETDATE()) AND Msg>''
- --UPDATE @t SET IsSend = 0 WHERE ID % 7 = 0
- --UPDATE @t SET IsSend = 1
-
- INSERT SmsMessageLog(SendMan, ManagerUSerId, paMainId, caMainId, Mobile, MsgType, IsCat, Msg)
- SELECT 0, NULL, paMainID, NULL, Mobile, 100 + SmsType, 0,Msg FROM @t --WHERE IsSend = 1
- --INSERT INTO SmsWatch(ID, cpMainId, caMainId, SmsType, MsgType, Msg, Mobile, LastLoginTime, LastDate, LastLoginDate, IsSend, WatchDate)
- --SELECT ID, paMainId, paMainId, smsType, 100 + SmsType, Msg, Mobile, LastLoginTime, LastDate, LastDate, IsSend, CONVERT(VARCHAR(8), GETDATE(), 112)
- --FROM @t
- DELETE FROM marketdb..paSMSWait WHERE ID IN (select ID FROM @t)
- END TRY
- BEGIN CATCH
- END CATCH
- GO
- /****** Object: StoredProcedure [dbo].[ProcSmsMessageLogByReceiveInsert] Script Date: 2018/12/13 19:12:02 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- /*
- used by zhongxinjiahe port 2
- sysback.51rc.com:81\.....\mobilereceived.asp
- */
- CREATE PROCEDURE [dbo].[ProcSmsMessageLogByReceiveInsert]
- (
- @Mobile VARCHAR(20),
- @Msg NVARCHAR(200),
- @ReceiveDate VARCHAR(30),
- @PortNo INT,
- @IsCat BIT
- )
- AS
- insert into proclog select 'ProcSmsMessageLogByReceiveInsert', @Mobile, getdate()
- BEGIN
- SET NOCOUNT ON
- SET @Mobile = LTRIM(RTRIM(REPLACE(REPLACE(@Mobile, '+', ''), '''', '')))
- SET @Msg = dbo.SafeSql(@Msg)
- SET @ReceiveDate = dbo.SafeSql(@ReceiveDate)
- IF(LEFT(@Mobile, 2) = '86')
- SET @Mobile = RIGHT(@Mobile, LEN(@Mobile) - 2)
- IF (LEN(ISNULL(@ReceiveDate, '')) < 8)
- SET @ReceiveDate = CONVERT(VARCHAR(20), GETDATE(), 120)
- DECLARE @ID INT, @LeaveId AS INT, @WorkFlowID AS INT, @RunFlowId AS INT, @WorkStepId AS INT
- INSERT SmsMessageLog(SendMan, Mobile, Msg, IsCat, SendDate, SmsType, MsgType, PortNo)
- VALUES(-1, @Mobile, @Msg, @IsCat, @ReceiveDate, 2, 255, @PortNo)
-
- SET @ID = @@IDENTITY
-
- --校园认证短信
- IF LEFT(@Msg,2) = '认证'
- BEGIN
- DECLARE @UserName VARCHAR(50),@dcProvinceID VARCHAR(2),@SubSiteUrl VARCHAR(200)
- SET @Msg = REPLACE(REPLACE(@Msg,'+',''),'认证','')
- SET @dcProvinceID = LEFT(@Msg,2)
- SET @UserName = RIGHT(@Msg,LEN(@Msg)-2)
- IF dbo.IsINT(@dcProvinceID)=1
- BEGIN
- SELECT @SubSiteUrl=SubSiteUrl FROM dcSubSite WHERE ID=@dcProvinceID
- IF ISNULL(@SubSiteUrl,'') = ''
- RETURN
- END
- ELSE
- RETURN
-
- IF dbo.IsEmail(@UserName)=1
- EXEC RmPaMainByMobileInsert @UserName,@dcProvinceID,@Mobile,@SubSiteUrl
- RETURN
- END
-
- IF @Mobile LIKE '955%'
- BEGIN
- UPDATE SmsMessageLog SET SendMan = 140, MsgType = 245 WHERE ID = @ID
- RETURN
- END
- IF LEFT(@Msg, 3) = '???'
- SET @Msg = RIGHT(@Msg, LEN(@Msg) - 3)
- --判断是不是内部的手机号
- DECLARE @MID INT
- SELECT TOP 1 @MID = ManagerUserID FROM OADB..WorkUser WITH(NOLOCK) WHERE Mobile = @Mobile AND JobStatus <> 3
- IF @MID = 1
- BEGIN
- IF LEFT(@Msg, 1) IN('y', 'n')
- BEGIN
- IF (dbo.IsINT(RIGHT(@Msg, LEN(@Msg) - 1)) = 1 AND LEN(@Msg) BETWEEN 4 AND 6)
- BEGIN
- SET @LeaveId = CONVERT(INT, RIGHT(@MSg, LEN(@Msg) - 1))
- SELECT @RunFlowId = ID, @WorkFlowID = WorkFlowId
- FROM OaDb..RunFlow
- WHERE BusinessId = @LeaveId AND WorkUserId IN(1, 10) AND ModuleId = 101
- IF @RunFlowId IS NULL
- RETURN
- IF LEFT(@Msg, 1) = 'y'
- BEGIN
- UPDATE OaDb..RunFlow SET ViewDate = GETDATE(),SendDate = GETDATE(), ExecutionType = 1
- WHERE ID = @RunFlowId
- SELECT @WorkStepId = CASE @WorkFlowId WHEN 6 THEN 17 ELSE 24 END
- INSERT INTO Oadb..RunFlow(WorkStepID, WorkUserID, BusinessID, Opinion, ReceiveDate, ViewDate,
- SendDate, RemindNumber, NextRemindTime, ExecutionType, WorkFlowId, ModuleID)
- SELECT @WorkStepId, ID, @LeaveID, '', GETDATE(), NULL, NULL, 0, GETDATE(), 0, @WorkFlowId, 101
- FROM OADB..WorkUser WHERE ManagerUserID IN(105) AND JobStatus < 3
- END
- IF LEFT(@Msg, 1) = 'n'
- BEGIN
- UPDATE OaDb..RunFlow SET Opinion='退回', ViewDate = GETDATE(),SendDate = GETDATE(), ExecutionType = 1
- WHERE ID = @RunFlowId
- SELECT @WorkStepId = ID FROM Oadb..WorkStep WHERE WorkFlowId = @WorkFlowId AND IsStart = 1
-
- INSERT INTO Oadb..RunFlow(WorkStepID, WorkUserID, BusinessID, Opinion, ReceiveDate, ViewDate,
- SendDate, RemindNumber, NextRemindTime, ExecutionType, WorkFlowId, ModuleID)
- SELECT @WorkStepId, ApplicantID, @LeaveID, '', GETDATE(), NULL, NULL, 0, GETDATE(), 0, @WorkFlowId, 101
- FROM OADB..Leave WHERE ID = @LeaveId
- END
- END
- END
- END
- IF @MID > 0
- BEGIN
- --UPDATE SmsMessageLog SET SendMan = @MID, MsgType = 241 WHERE ID = @ID
- IF LEFT(@Msg, 2) = '请假'
- BEGIN
- EXEC OaDb..ProcLeaveBySmsInsert @Msg, @Mobile
- END
- ELSE -- 年会时需要读取发送的手机号并保存到年会短信记录表里 2013-1-15 Lucifer
- BEGIN
- --IF(GETDATE() BETWEEN '2013-2-2 15:00' AND '2013-2-2 21:59' OR @Mobile IN('15318161005', '18663412806', '13455496132'))
- begin try
- INSERT INTO nhSms(ManageruserId) SELECT @MID
- --INSERT INTO nhSms VALUES(@MID, @Mobile, @Msg, 1, GETDATE())
- end try
- begin catch
- INSERT INTO nhSms(ManageruserId) SELECT @MID
- end catch
- END
- RETURN
- END
- DECLARE @CaMainID INT, @CompanyName VARCHAR(100), @cpMainId INT, @PaMainID INT, @ManagerUserID INT, @SendMan INT, @ConsultantID INT
- SET @ConsultantID = 131 --先暂时给lulu
-
- SELECT TOP 1 @CaMainID = CaMainID, @PaMainID = PaMainID, @ManagerUserID = ManagerUserID, @SendMan = SendMan
- FROM SmsMessageLog WITH(NOLOCK)
- WHERE Mobile = @Mobile
- AND SmsType = 2
- ORDER BY ID DESC
-
- IF @CaMainID > 0
- BEGIN
- IF @SendMan > 0
- UPDATE SmsMessageLog SET SendMan = @SendMan, caMainId = @caMainId, MsgType = 242 WHERE ID = @ID
- ELSE
- BEGIN
- SELECT @ConsultantID = ConsultantID
- FROM caMain a WITH(NOLOCK), cpMain b WITH(NOLOCK)
- WHERE a.cpMainID = b.ID
- AND a.ID = @caMainID
-
- IF @ConsultantID IS NULL
- BEGIN
- SET @ConsultantID = 131
- END
- UPDATE SmsMessageLog SET SendMan = @ConsultantID, MsgType = 242, caMainId = @caMainId WHERE ID = @ID
- END
- END
- ELSE IF @paMainID > 0
- BEGIN
- IF @SendMan > 0
- UPDATE SmsMessageLog SET SendMan = @SendMan, MsgType = 243, paMainId = @paMainId WHERE ID = @ID
- ELSE
- BEGIN
- SET @ConsultantID = 131
- UPDATE SmsMessageLog SET SendMan = @ConsultantID, MsgType = 243, paMainId = @paMainId WHERE ID = @ID
- END
- END
- ELSE IF @ManagerUserID > 0
- UPDATE SmsMessageLog SET SendMan = @ManagerUserID, MsgType =241 WHERE ID = @ID
- ELSE IF @SendMan > 0
- UPDATE SmsMessageLog SET SendMan = @SendMan WHERE ID = @ID
- ELSE
- BEGIN
- --是否企业用户的手机
- SELECT @caMainId = a.ID, @companyName = b.Name, @cpMainId = b.Id, @ConsultantID = b.ConsultantID
- FROM caMain a WITH(NOLOCK), cpMain b WITH(NOLOCK)
- WHERE a.cpMainID = b.ID
- AND a.Mobile = @Mobile
- IF @caMainId > 0
- BEGIN
- IF @ConsultantID > 0
- BEGIN
- UPDATE SmsMessageLog SET SendMan = @ConsultantID, caMainId = @caMainId, MsgType = 242 WHERE ID = @ID
-
- INSERT INTO rtxNotifyLog (Receiver, RtxTitle, RtxMessage, SendType, DelayTime, SendTime, AddTime)
- SELECT @ConsultantID, '您收到新的短信',
- '您收到短信,发信人:' + @companyName + '(' + LTRIM(STR(@cpMainId)) + '),时间:' + CONVERT(VARCHAR(20), GETDATE(), 120) +
- ',消息:' + @Msg + '。http://sysback.51rc.com/newoa/desktop/MobileSendList2',
- 0, 0, NULL, GETDATE()
- END
- ELSE
- BEGIN
- SET @ConsultantID = 131
- UPDATE SmsMessageLog SET SendMan = @ConsultantID, MsgType = 242, caMainId = @caMainId WHERE ID = @ID
- END
- RETURN
- END
- --是否招聘会认证的手机
- /* DECLARE @RID AS INT
- SELECT @RID = ID, @paMainId = paMainID FROM MarketDB..RmGiftRequire WITH(NOLOCK) WHERE Mobile = @Mobile
- IF @@ROWCOUNT = 0
- SELECT @RID = ID, @paMainId = paMainID FROM MarketDB..MobileRegisterCode WITH(NOLOCK) WHERE Mobile = @Mobile
- IF @RID > 0
- BEGIN
- SET @ConsultantID = 160
- UPDATE SmsMessageLog SET SendMan = @ConsultantID, paMainId = @paMainId, MsgType = 244 WHERE ID = @ID
- RETURN
- END
- */
- --是否个人用户的手机
- SELECT @paMainId = ID
- FROM paMain WITH(NOLOCK)
- WHERE Mobile = @Mobile
- IF @paMainId > 0
- BEGIN
- SET @ConsultantID = 131
- UPDATE SmsMessageLog SET SendMan = @ConsultantID, paMainId = @paMainId, MsgType = 243 WHERE ID = @ID
- RETURN
- END
- END
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSmsMessageLogBySales0514Insert] Script Date: 2018/12/13 19:12:03 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcSmsMessageLogBySales0514Insert]
- AS
- BEGIN
- /*
- 1、2个月内已提交订单(免费会员) 11个
- 2、5月12日--7月12日,这段时间到期的客户。 2978个
- 3、3月12日--5月12日,这段时间已到期没有续费的客户。 1585个
- 4、2个月内查看过资费标准(免费会员) 20576
- 以上四种是要发的客户。--用优势(中嘉和信通道吧)
- xxxx(单位名称),会员套餐惊喜无限,xxx人才网期待您的参与!详情请咨询4006265151-工号(有顾问的话显示工号,没有顾问就直接显示为0)
- */
- CREATE TABLE #t1(Id INT)
- --1、2个月内已提交订单(免费会员) 11个
- insert #t1
- select distinct cpmainid
- FROM Caorder where adddate>getdate()-61 and adddate < getdate()- 7
- and cpmainid in(select id from cpmain where membertype<3) and paid>0
- --2、5月12日--7月12日,这段时间到期的客户。
- insert #t1
- select distinct cpmainid
- FROM Caorder where Enddate BETWEEN GETDATE() AND GETDATE() + 61
- AND OrderType = 8
- and cpmainid in(select id from cpmain where membertype=3)
- --3、3月12日--5月12日,这段时间已到期没有续费的客户。
- insert #t1
- select distinct cpmainid
- FROM Caorder where Enddate BETWEEN GETDATE()-61 AND GETDATE()
- AND OrderType = 8
- and cpmainid in(select id from cpmain where membertype<3)
- --4、2个月内查看过资费标准(免费会员) 20576
- INSERT #t1
- SELECT a.Id
- FROM cpMain a, caMain b
- WHERE a.id= b.cpMainId
- AND b.Id IN(SELECT caMainId FROM caFeePageViewLog WHERE AddDate > GETDATE() - 61)
- AND a.MemberType < 3
- CREATE TABLE #t(ID INT, CompanyName NVARCHAR(100), ConsultantId INT, dcProvinceId INT, SiteName NVARCHAR(20), caMainId INT, Mobile VARCHAR(13))
- INSERT #t
- SELECT a.Id, a.Name, a.ConsultantId, a.dcProvinceId, '', b.Id, b.Mobile
- FROM cpMain a, caMain b
- WHERE a.Id = b.cpMainId
- AND b.AccountType = 1
- AND a.Id IN(SELECT ID FROM #t1)
- UPDATE a
- SET a.SiteName = b.SubSiteName
- FROM #t a, dcSubsite b
- WHERE a.dcProvinceId = b.Id
- UPDATE #t SET ConsultantId = 0 WHERE ConsultantId IS NULL OR ConsultantId IN(SELECT ID FROM ManagerUser WHERE Status > 2)
- DELETE FROM #t WHERE dbo.IsMobile(Mobile) = 0
- -- xxxx(单位名称),会员套餐惊喜无限,xxx人才网期待您的参与!详情请咨询4006265151-工号(有顾问的话显示工号,没有顾问就直接显示为0)
- INSERT SmsMessageLog(SendMan, Mobile, Msg, IsCat, AddDate, SmsType, MsgType)
- SELECT 112, Mobile, CompanyName + ',会员套餐惊喜无限,' + SiteName + '期待您的参与!详情请咨询4006265151-' + LTRIM(STR(ConsultantId)),
- 0, GETDATE(), 1, 26
- FROM #t
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSmsMessageLogBySendInsert] Script Date: 2018/12/13 19:12:03 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcSmsMessageLogBySendInsert]
- (
- @SendMan SMALLINT,
- @ManagerUserId SMALLINT,
- @paMainID INT,
- @caMainID INT,
- @Mobile VARCHAR(11),
- @Msg NVARCHAR(200),
- @MsgType TINYINT,
- @IsCat BIT
- )
- AS
- BEGIN
- INSERT SmsMessageLog(SendMan, ManagerUSerId, paMainId, caMainId, Mobile, Msg, MsgType, IsCat)
- VALUES(@SendMan, @ManagerUSerId, @paMainId, @caMainId, @Mobile, @Msg, @MsgType, @IsCat)
-
- RETURN @@IDENTITY
- END
- GO
- /****** Object: StoredProcedure [dbo].[procSmsmessageLogCountSelect] Script Date: 2018/12/13 19:12:03 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.30
- --创建人:Nick
- --说明:
- --#####################################################
- CREATE PROCEDURE [dbo].[procSmsmessageLogCountSelect]
- (
- @AskNo VARCHAR(50),
- @AddDate DATETIME
- )
- AS
- --BEGIN TRY
- DECLARE @CNT INT
- SET @CNT = 0
- SELECT @CNT = COUNT(*)
- FROM smsmessagelog
- WHERE mobile=(
- SELECT TOP 1 mobile
- FROM caGetPasswordLog WITH(NOLOCK)
- WHERE askno = @askNo
- AND mobile IS NOT NULL
- ) AND adddate > @AddDate
- AND MsgType=9
-
- IF @CNT < 5
- BEGIN
- INSERT INTO smsmessagelog(SendMan, ManagerUSerId, paMainId, caMainId, Mobile, MsgType, IsCat, Msg)
- SELECT TOP 1 SendMan, ManagerUSerId, paMainId, caMainId, Mobile, MsgType, IsCat, Msg
- FROM smsmessagelog
- WHERE mobile=(
- SELECT TOP 1 mobile
- FROM caGetPasswordLog WITH(NOLOCK)
- WHERE askno = @AskNo
- AND mobile IS NOT NULL
- ) AND adddate>@AddDate
- AND MsgType=9 ORDER BY id desc
- RETURN @CNT
- END
- RETURN -1
- --END TRY
- --BEGIN CATCH
- -- RETURN 0
- --END CATCH
- GO
- /****** Object: StoredProcedure [dbo].[ProcSmsMessageLogInsert] Script Date: 2018/12/13 19:12:03 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.28
- --创建人:John
- --说明:短信通知日志新增
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcSmsMessageLogInsert]
- (
- @SendMan SMALLINT,
- @ManagerUserId SMALLINT,
- @paMainId INT,
- @caMainId INT,
- @Mobile VARCHAR(20),
- @Msg NVARCHAR(210),
- @MsgType TINYINT,
- @IsCat BIT
- )
- AS
- SET NOCOUNT ON
- BEGIN
- IF @MsgType IN(102, 105) AND @paMainId > 0
- BEGIN
- IF EXISTS(SELECT 'x' FROM wxFans WITH(NOLOCK) WHERE paMainId = @paMainId)
- RETURN
- END
- -- IF @MsgType = 122 AND @Msg LIKE '%珠江%'
- -- BEGIN
- -- INSERT PROCLog SELECT 'ProcSmsMessageLogInsert', @Mobile, GETDATE()
- -- RETURN
- -- END
- IF EXISTS(SELECT 'x' FROM SmsMessageLog WITH(NOLOCK) WHERE Mobile = @Mobile AND Msg = @Msg AND AddDate > GETDATE() - 0.3)
- RETURN
-
- INSERT INTO SmsMessageLog (SendMan, ManagerUserId, paMainId, caMainId, Mobile, Msg, MsgType, IsCat)
- SELECT @SendMan, @ManagerUserId, @paMainId, @caMainId, @Mobile, @Msg, @MsgType, @IsCat
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSmsMessageLogInsertBySendDate] Script Date: 2018/12/13 19:12:03 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2018.4.26
- --创建人:Harry
- --说明:实时短信发送成功插入记录
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcSmsMessageLogInsertBySendDate]
- (
- @SendMan SMALLINT,
- @ManagerUserId SMALLINT,
- @paMainId INT,
- @caMainId INT,
- @Mobile VARCHAR(20),
- @Msg NVARCHAR(210),
- @PortNo INT,
- @MsgType TINYINT,
- @IsCat BIT
- )
- AS
- SET NOCOUNT ON
- BEGIN
- INSERT INTO SmsMessageLog (SendMan, ManagerUserId, paMainId, caMainId, Mobile, Msg,PortNo, MsgType, IsCat,AddDate,SendDate,SendStatus)
- SELECT @SendMan, @ManagerUserId, @paMainId, @caMainId, @Mobile, @Msg, @PortNo, @MsgType, @IsCat,GETDATE(),GETDATE(),1
- END
- SET NOCOUNT OFF
- GO
- /****** Object: StoredProcedure [dbo].[ProcSmsMessageLogSelect] Script Date: 2018/12/13 19:12:04 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --sean add
- CREATE PROCEDURE [dbo].[ProcSmsMessageLogSelect]
- AS
- SET NOCOUNT ON
- INSERT ProcLog SELECT 'ProcSmsMessageLogSelect', '', GETDATE()
- BEGIN
- DECLARE @Day7 AS DATETIME, @Day1 AS DATETIME
- SET @Day7 = CONVERT(DATETIME, CONVERT(VARCHAR(10), GETDATE() - 7, 120))
- SET @Day1 = CONVERT(DATETIME, CONVERT(VARCHAR(10), GETDATE() - 1, 120))
-
- DECLARE @t AS TABLE(
- ID int,
- SendMan smallint,
- ManagerUserId smallint,
- paMainId int,
- caMainId int,
- Mobile varchar(max),
- Msg nvarchar(210),
- IsCat bit,
- AddDate smalldatetime,
- PortNo tinyint,
- SendDate datetime,
- SendStatus bit,
- SmsType tinyint,
- MsgType tinyint,
- IsDelete BIT
- )
- DECLARE @c AS TABLE(
- Mobile VARCHAR(max),
- MsgType tinyint,
- AddDate DATETIME,
- Cnt INT
- )
- IF DATEPART(Hour, GETDATE()) >= 8 AND DATEPART(MINUTE, GETDATE()) < 10
- INSERT INTO @t
- SELECT TOP 30 *, 0 FROM SmsMessageLog WITH(NOLOCK)
- WHERE SendDate IS NULL
- AND SmsType = 1
- AND MsgType <> 116
- AND AddDate > DATEADD(MINUTE, -1200, GETDATE()) --@Day7
- ORDER BY Case Msgtype When 113 Then 1 ELSE 100 END, ID DESC
- ELSE
- INSERT INTO @t
- SELECT TOP 30 *, 0 FROM SmsMessageLog WITH(NOLOCK)
- WHERE SendDate IS NULL
- AND SmsType = 1
- AND MsgType <> 116
- AND AddDate > DATEADD(MINUTE, -20, GETDATE()) --@Day7
- --AND MOBILE = '18363443519'
- ORDER BY Case Msgtype When 113 Then 1 ELSE 100 END, ID DESC
- IF @@ROWCOUNT = 0
- BEGIN
- SELECT * FROM @t
- RETURN
- END
- DELETE @t WHERE MsgType = 116
- IF EXISTS(SELECT 'x' FROM @t WHERE paMainId > 0 OR caMainId > 0)
- BEGIN
- DECLARE @wx AS TABLE(Id INT, paMainId INT, caMainId INT, Msg NVARCHAR(210),
- WxFansId INT, OpenId VARCHAR(50), WxServiceNoID INT, paName NVARCHAR(6),
- WebsiteName NVARCHAR(10), WxTemplateNo VARCHAR(100),
- ParaValue VARCHAR(1000), JsonMessage VARCHAR(1000),
- UserType TINYINT, ProvinceDomain VARCHAR(100))
- INSERT INTO @wx(Id, paMainId, Msg, WxFansId, OpenId, wxServiceNoId, UserType)
- SELECT a.Id, a.paMainId, a.Msg, b.Id WxFansId, b.OpenId, b.wxServiceNoId, 1
- FROM @t a, WxFans b WITH(NOLOCK)
- WHERE a.paMainId = b.paMainId
- AND b.Status > 0
- AND a.PaMainId > 0
- AND MsgType NOT IN(9, 25, 104, 109, 110, 113, 117, 119, 122)
-
- INSERT INTO @wx(Id, caMainId, Msg, WxFansId, OpenId, wxServiceNoId, UserType) --new add
- SELECT a.Id, a.caMainId, a.Msg, b.Id WxFansId, b.OpenId, b.wxServiceNoId, 2
- FROM @t a, WxFans b WITH(NOLOCK)
- WHERE a.caMainId = b.caMainId
- AND b.caBindCancelDate IS NULL
- AND ISNULL(a.PaMainId, 0) = 0
- AND MsgType NOT IN(9, 10, 21, 22, 23, 25, 104, 109, 110, 113, 117, 119, 122, 139)
- UPDATE a SET a.paName = b.Name FROM @wx a, paMain b WITH(NOLOCK) WHERE a.paMainId = b.Id AND a.UserType = 1
- UPDATE a SET a.paName = b.Name FROM @wx a, caMain b WITH(NOLOCK) WHERE a.caMainId = b.Id AND a.UserType = 2
- UPDATE @Wx SET paName = '' WHERE paName IS NULL
- UPDATE a SET a.WebsiteName = c.WebsiteName, a.ProvinceDomain = c.ProvinceDomain
- FROM @wx a, WxServiceNo b WITH(NOLOCK), dcprovince c WITH(NOLOCK)
- WHERE a.WxServiceNoId = b.Id
- AND b.ProvinceID = c.Id
- UPDATE a SET a.WxTemplateNo = b.[no] FROM @wx a, WxTemplateNo b WITH(NOLOCK) WHERE a.WxServiceNoID = b.WxServiceNoID AND b.WxTemplateId = 13
- --插入参数数据
- UPDATE @wx SET ParaValue = '"first":{ "value":"#PaName#您好", "color":"#000000"}, "keyword1":{ "value":"网站消息", "color":"#004694"}, "keyword2":{ "value":"请您查看", "color":"#004694"}, "remark":{ "value":"#JobDesc# #WebsiteName#,找工作,更靠谱", "color":"#004694"}'
- UPDATE @wx SET ParaValue = REPLACE(ParaValue, '#PaName#', PaName)
- UPDATE @wx SET ParaValue = REPLACE(ParaValue, '#JobDesc#', Msg)
- UPDATE @wx SET ParaValue = REPLACE(ParaValue, '#WebsiteName#', WebsiteName)
- UPDATE @wx SET JsonMessage = '{"touser":"' + OpenId + '", "template_id":"' + WxTemplateNo + '", "url":"", "topcolor":"#000000", "data":{' + ParaValue + '}}' WHERE Msg NOT LIKE '%应聘简历未答复%'
- UPDATE @wx SET JsonMessage = '{"touser":"' + OpenId + '", "template_id":"' + WxTemplateNo + '", "url":"http://m.' + ProvinceDomain + '/library/WechatOauthCpLogin?opid=' + OpenId + '&urlfile=/company/cv/applycv", "topcolor":"#000000", "data":{' + ParaValue + '}}' WHERE Msg LIKE '%应聘简历未答复%'
- --更新wxmessagesend中的message
- INSERT INTO wxMessageSend2(TemplateType, WxfansId, paMainId, caMainId, MessageText, ErrorNumber, AddDate)
- SELECT 20, WxFansId, paMainId, caMAinId, JsonMessage, 0, GETDATE() FROM @wx
- --UPDATE @t SET IsDelete = 1 WHERE Id IN(SELECT Id FROM @Wx)
- END
- INSERT INTO @c
- SELECT Mobile, MsgType, MAX(AddDate), COUNT(*)
- FROM SmsMessageLog WITH(NOLOCK)
- WHERE SmsType = 1
- AND ID NOT IN(SELECT ID FROM @t)
- AND Mobile IN(SELECT Mobile FROM @t)
- --AND AddDate > @Day1
- GROUP BY Mobile, MsgType
- UPDATE @t SET IsDelete = 1
- WHERE MsgType IN(1, 3, 5)
- AND Mobile IN(SELECT Mobile FROM @c WHERE MsgType IN(1, 3, 5) AND AddDate > @Day1)
- --UPDATE @t SET IsDelete = 1 WHERE Msg like '%验证码是:'
-
- UPDATE @t SET IsDelete = 1
- WHERE MsgType IN(2, 4, 19)
- AND Mobile IN(SELECT Mobile FROM @c WHERE MsgType IN(2, 4, 19) AND AddDate > @Day1)
- UPDATE a SET a.IsDelete = 1
- FROM @t a, @c b
- WHERE a.MsgType = b.MsgType
- AND a.Mobile = b.Mobile
- AND b.AddDate > @Day1
- AND a.MsgType IN(7, 8, 20, 102)
-
- UPDATE a SET a.IsDelete = 1
- FROM @t a, @c b
- WHERE a.MsgType = b.MsgType
- AND a.Mobile = b.Mobile
- AND b.AddDate > @Day1
- AND a.MsgType IN(9, 10)
- AND b.Cnt > 2
- AND a.MsgType < 200
- UPDATE @t SET IsDelete = 1
- WHERE MsgType IN(12, 13, 14, 15)
- AND Mobile IN(SELECT Mobile FROM @c )
- UPDATE @t SET IsDelete = 1
- WHERE MsgType IN(11, 106, 107, 108)
- AND Mobile IN(SELECT Mobile FROM @c WHERE AddDate > @Day1)
- UPDATE @t SET IsDelete = 1
- WHERE MsgType IN(109, 111, 112)
- AND Mobile IN(SELECT Mobile FROM @c WHERE MsgType IN(109, 111, 112) AND AddDate > @Day7)
- UPDATE @t SET IsDelete = 1 WHERE dbo.IsMobile(Mobile) = 0 OR LEN(ISNULL(Msg, '')) < 4
- UPDATE @t SET IsDelete = 1 WHERE Mobile IN(SELECT Mobile FROM NoSendSms)
- UPDATE @t SET PortNo = 11
- --UPDATE @t SET PortNo = 11 WHERE MsgType IN(101)
- UPDATE @t SET PortNo = 12 WHERE MsgType IN(12, 25)
- --UPDATE @t SET PortNo = 13 WHERE MsgType IN(116)
- UPDATE @t SET PortNo = 12 WHERE MsgType IN(26, 220)
- UPDATE @t SET PortNo = 12 WHERE MsgType IN(9, 10, 17, 21, 22, 23, 104, 113, 117, 202, 204)
- --UPDATE @t SET PortNo = 1 WHERE MsgType IN(9, 10, 17, 21, 22, 23, 104, 113, 117, 202, 204)
- --UPDATE @t SET PortNo = 12 WHERE MsgType IN(9, 10, 17, 21, 22, 23, 104, 113, 117, 202, 204)
- --UPDATE @t SET PortNo = 1 WHERE MsgType IN(222)
- --UPDATE @t SET Msg = '【伍亿】' + msg WHERE PortNo = 1
- UPDATE @t SET Msg = REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(Msg, '发票', '发.票'), '银行', '银.行'), '开户', '开.户'), '..', '.'), '聘', '.聘'), '面试', '面.试')
- --WHERE PortNo = 2
- UPDATE @t SET Msg = REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(Msg, '求职', '求.职'), '房地产', '房.地.产'), '房产', '房.产'), '广告', '广.告'), '担保', '担.保')
- --WHERE PortNo = 2
- --UPDATE @t SET Msg = REPLACE(Msg, '@51rc_com', '@51rc.com')
- -- UPDATE a
- -- SET IsDelete = 1
- -- FROM @t a, BlackWord b WITH(NOLOCK)
- -- WHERE CHARINDEX(b.KeyWord, a.Msg) > 0
- UPDATE a
- SET IsDelete = 0
- FROM @t a, BlackWord b WITH(NOLOCK)
- WHERE MsgType = 113
- UPDATE SmsMessageLog SET SmsType = 3 WHERE ID IN(SELECT ID FROM @t WHERE IsDelete = 1)
- --INSERT @t
- --SELECT Id, 0, 0, 0, 0, Mobile, Msg, 0, GETDATE(), 13, NULL, NULL, 1, 116, 0
- --FROM smsBatchSend
- --WHERE SendStatus IS NULL
- SELECT * FROM @t WHERE IsDelete = 0
- INSERT INTO ServiceRunLog(ServiceId, RunRows, RunId, RunStatus, RunMessage)
- SELECT 1, @@RowCount, 0, 1, '提取短信数据'
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSmsMessageLogSelect2] Script Date: 2018/12/13 19:12:05 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --portno 1 yimei;2zhongjia;3~10 mobile cat; 11~13 dxt
- CREATE PROCEDURE [dbo].[ProcSmsMessageLogSelect2]
- AS
- SET NOCOUNT ON
- INSERT ProcLog SELECT 'ProcSmsMessageLogSelect2', '', GETDATE()
- BEGIN
- DECLARE @Day7 AS DATETIME, @Day1 AS DATETIME
- SET @Day7 = CONVERT(DATETIME, CONVERT(VARCHAR(10), GETDATE() - 7, 120))
- SET @Day1 = CONVERT(DATETIME, CONVERT(VARCHAR(10), GETDATE() - 1, 120))
-
- DECLARE @t AS TABLE(
- ID int,
- SendMan smallint,
- ManagerUserId smallint,
- paMainId int,
- caMainId int,
- Mobile varchar(max),
- Msg nvarchar(210),
- IsCat bit,
- AddDate smalldatetime,
- PortNo tinyint,
- SendDate datetime,
- SendStatus bit,
- SmsType tinyint,
- MsgType tinyint,
- IsDelete BIT
- )
- DECLARE @c AS TABLE(
- Mobile VARCHAR(max),
- MsgType tinyint,
- AddDate DATETIME,
- Cnt INT
- )
- /* IF DatePArt(Hour, GETDATE()) < 7 OR DatePArt(Hour, GETDATE()) >= 22
- BEGIN
- SELECT * FROM @t
- RETURN
- END
- */
- IF DatePArt(Hour, GETDATE()) > 7 OR DatePArt(Hour, GETDATE()) <= 23
- INSERT INTO @t
- SELECT TOP 160 *, 0 FROM SmsMessageLog WITH(NOLOCK)
- WHERE SendDate IS NULL
- AND SmsType = 1
- AND AddDate > DATEADD(MINUTE, -60, GETDATE()) --@Day7
- ORDER BY Case Msgtype When 113 Then 1 ELSE 100 END, ID DESC
- ELSE
- INSERT INTO @t
- SELECT TOP 160 *, 0 FROM SmsMessageLog WITH(NOLOCK)
- WHERE SendDate IS NULL
- AND SmsType = 1
- AND AddDate > DATEADD(MINUTE, -60, GETDATE()) --@Day7
- AND MsgType = 139
- ORDER BY ID DESC
- IF @@RowCount = 0
- BEGIN
- SELECT * FROM @t
- RETURN
- END
- DELETE @t WHERE MsgType = 116
- INSERT INTO @c
- SELECT Mobile, MsgType, Max(AddDate), COUNT(*)
- FROM SmsMessageLog WITH(NOLOCK)
- WHERE AddDate > @Day7
- AND SmsType = 1
- AND ID NOT IN(SELECT ID FROM @t)
- AND Mobile IN(SELECT Mobile FROM @t)
- GROUP BY Mobile, MsgType
- UPDATE @t SET IsDelete = 1
- WHERE MsgType IN(1,3,5)
- AND Mobile IN(SELECT Mobile FROM @c WHERE MsgType IN(1,3,5) AND AddDate > @Day1)
- UPDATE @t SET IsDelete = 1
- WHERE MsgType IN(2,4,19)
- AND Mobile IN(SELECT Mobile FROM @c WHERE MsgType IN(2,4,19) AND AddDate > @Day1)
- UPDATE @t SET IsDelete = 1
- WHERE MsgType = 7
- AND Mobile IN(SELECT Mobile FROM @c WHERE MsgType = 7 AND AddDate > @Day1)
- UPDATE @t SET IsDelete = 1
- WHERE MsgType = 8
- AND Mobile IN(SELECT Mobile FROM @c WHERE MsgType = 8 AND AddDate > @Day1)
- UPDATE @t SET IsDelete = 1
- WHERE MsgType = 9
- AND Mobile IN(SELECT Mobile FROM @c WHERE MsgType = 9 AND AddDate > @Day1 AND Cnt > 2)
- UPDATE @t SET IsDelete = 1
- WHERE MsgType = 20
- AND Mobile IN(SELECT Mobile FROM @c WHERE MsgType = 20 AND AddDate > @Day1)
- UPDATE @t SET IsDelete = 1
- WHERE MsgType = 10
- AND Mobile IN(SELECT Mobile FROM @c WHERE MsgType = 9 AND AddDate > @Day1 AND Cnt > 2)
- UPDATE @t SET IsDelete = 1
- WHERE MsgType IN(12,13,14,15)
- AND Mobile IN(SELECT Mobile FROM @c )
- UPDATE @t SET IsDelete = 1
- WHERE MsgType = 11
- AND Mobile IN(SELECT Mobile FROM @c WHERE AddDate > @Day1)
- UPDATE @t SET IsDelete = 1
- WHERE MsgType = 102
- AND Mobile IN(SELECT Mobile FROM @c WHERE MsgType = 102 AND AddDate > @Day1)
- UPDATE @t SET IsDelete = 1
- WHERE MsgType = 102
- AND Mobile IN(SELECT Mobile FROM @c WHERE MsgType = 102 AND AddDate > @Day1)
- UPDATE @t SET IsDelete = 1
- WHERE MsgType BETWEEN 106 AND 108
- AND Mobile IN(SELECT Mobile FROM @c WHERE AddDate > @Day1)
- UPDATE @t SET IsDelete = 1
- WHERE MsgType IN(109, 111, 112)
- AND Mobile IN(SELECT Mobile FROM @c WHERE MsgType IN(109, 111, 112) AND AddDate > @Day7)
- UPDATE @t SET IsDElete = 1 WHERE dbo.IsMobile(Mobile) = 0 OR LEN(ISNULL(Msg, '')) < 4
- UPDATE @t SET IsDElete = 1 WHERE Mobile IN(SELECT Mobile FROM NoSendSms)
- UPDATE @t SET PortNo = 11
- UPDATE @t SET PortNo = 12 WHERE MsgType IN(25)
- --UPDATE @t SET PortNo = 13 WHERE MsgType IN(116)
- UPDATE @t SET PortNo = 2 WHERE MsgType IN(26, 220)
- UPDATE @t SET PortNo = 1 WHERE MsgType IN(9,10,17,21,22,23,104,113,117,119,202,204)
- --UPDATE @t SET Msg = '【伍亿】'+msg
- --WHERE PortNo = 1
- UPDATE @t SET Msg = REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(Msg, '发票','发.票'), '银行', '银.行'), '开户', '开.户'), '..', '.'), '聘', '.聘'), '面试', '面.试'), 'www.', 'www_'), '.com', '_com')
- WHERE PortNo = 2
- UPDATE @t SET Msg = REPLACE(REPLACE(REPLACE(Msg, '求职', '求.职'), '房地产', '房.地.产'), '房产', '房.产')
- WHERE PortNo = 2
- UPDATE @t SET Msg = REPLACE(REPLACE(Msg, '广告', '广.告'), '发票', '发.票')
- UPDATE a
- SET IsDelete = 1
- FROM @t a, BlackWord b WITH(NOLOCK)
- WHERE CHARINDEX(b.KeyWord, a.Msg) > 0
- UPDATE a
- SET IsDelete = 0
- FROM @t a, BlackWord b WITH(NOLOCK)
- WHERE MsgType = 113
- UPDATE SmsMessageLog SET SmsType = 3 WHERE ID IN(SELECT ID FROM @t WHERE IsDelete = 1)
- --INSERT @t
- --SELECT Id, 0, 0, 0, 0, Mobile, Msg, 0, GETDATE(), 13, NULL, NULL, 1, 116, 0
- --FROM smsBatchSend
- SELECT * FROM @t WHERE IsDelete = 0
- INSERT INTO ServiceRunLog(ServiceId, RunRows, RunId, RunStatus, RunMessage)
- SELECT 1, @@RowCount, 0, 1, '提取短信数据'
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSmsMessageLogSelect3] Script Date: 2018/12/13 19:12:06 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --portno 1 yimei;2zhongjia;3~10 mobile cat; 11~13 dxt
- CREATE PROCEDURE [dbo].[ProcSmsMessageLogSelect3]
- AS
- BEGIN
- DECLARE @Day7 AS DATETIME, @Day1 AS DATETIME
- SET @Day7 = CONVERT(DATETIME, CONVERT(VARCHAR(10), GETDATE() - 7, 120))
- SET @Day1 = CONVERT(DATETIME, CONVERT(VARCHAR(10), GETDATE() - 1, 120))
-
- DECLARE @t AS TABLE(
- ID int,
- SendMan smallint,
- ManagerUserId smallint,
- paMainId int,
- caMainId int,
- Mobile varchar(max),
- Msg nvarchar(210),
- IsCat bit,
- AddDate smalldatetime,
- PortNo tinyint,
- SendDate datetime,
- SendStatus bit,
- SmsType tinyint,
- MsgType tinyint,
- IsDelete BIT
- )
- DECLARE @c AS TABLE(
- Mobile VARCHAR(max),
- MsgType tinyint,
- AddDate DATETIME,
- Cnt INT
- )
- /* IF DATEPART(Hour, GETDATE()) < 7 OR DATEPART(Hour, GETDATE()) >= 22
- BEGIN
- SELECT * FROM @t
- RETURN
- END
- */
- INSERT INTO @t
- SELECT TOP 10 *, 0 FROM SmsMessageLog WITH(NOLOCK)
- WHERE id = 8365770
- IF @@RowCount = 0
- BEGIN
- SELECT * FROM @t
- RETURN
- END
- DELETE @t WHERE MsgType = 116
- INSERT INTO @c
- SELECT Mobile, MsgType, Max(AddDate), COUNT(*)
- FROM SmsMessageLog WITH(NOLOCK)
- WHERE AddDate > @Day7
- AND SmsType = 1
- AND ID NOT IN(SELECT ID FROM @t)
- AND Mobile IN(SELECT Mobile FROM @t)
- GROUP BY Mobile, MsgType
- UPDATE @t SET IsDelete = 1
- WHERE MsgType IN(1,3,5)
- AND Mobile IN(SELECT Mobile FROM @c WHERE MsgType IN(1,3,5) AND AddDate > @Day1)
- --UPDATE @t SET IsDelete = 1 WHERE Msg like '%验证码是:'
- UPDATE @t SET IsDelete = 1
- WHERE MsgType IN(2,4,19)
- AND Mobile IN(SELECT Mobile FROM @c WHERE MsgType IN(2,4,19) AND AddDate > @Day1)
- UPDATE @t SET IsDelete = 1
- WHERE MsgType = 7
- AND Mobile IN(SELECT Mobile FROM @c WHERE MsgType = 7 AND AddDate > @Day1)
- UPDATE @t SET IsDelete = 1
- WHERE MsgType = 8
- AND Mobile IN(SELECT Mobile FROM @c WHERE MsgType = 8 AND AddDate > @Day1)
- UPDATE @t SET IsDelete = 1
- WHERE MsgType = 9
- AND Mobile IN(SELECT Mobile FROM @c WHERE MsgType = 9 AND AddDate > @Day1 AND Cnt > 2)
- UPDATE @t SET IsDelete = 1
- WHERE MsgType = 20
- AND Mobile IN(SELECT Mobile FROM @c WHERE MsgType = 20 AND AddDate > @Day1)
- UPDATE @t SET IsDelete = 1
- WHERE MsgType = 10
- AND Mobile IN(SELECT Mobile FROM @c WHERE MsgType = 9 AND AddDate > @Day1 AND Cnt > 2)
- UPDATE @t SET IsDelete = 1
- WHERE MsgType IN(12,13,14,15)
- AND Mobile IN(SELECT Mobile FROM @c )
- UPDATE @t SET IsDelete = 1
- WHERE MsgType = 11
- AND Mobile IN(SELECT Mobile FROM @c WHERE AddDate > @Day1)
- UPDATE @t SET IsDelete = 1
- WHERE MsgType = 102
- AND Mobile IN(SELECT Mobile FROM @c WHERE MsgType = 102 AND AddDate > @Day1)
- UPDATE @t SET IsDelete = 1
- WHERE MsgType = 102
- AND Mobile IN(SELECT Mobile FROM @c WHERE MsgType = 102 AND AddDate > @Day1)
- UPDATE @t SET IsDelete = 1
- WHERE MsgType BETWEEN 106 AND 108
- AND Mobile IN(SELECT Mobile FROM @c WHERE AddDate > @Day1)
- UPDATE @t SET IsDelete = 1
- WHERE MsgType IN(109, 111, 112)
- AND Mobile IN(SELECT Mobile FROM @c WHERE MsgType IN(109, 111, 112) AND AddDate > @Day7)
- select isdelete,1,* from @t
- UPDATE @t SET IsDElete = 1 WHERE dbo.IsMobile(Mobile) = 0 OR LEN(ISNULL(Msg, '')) < 4
- UPDATE @t SET IsDElete = 1 WHERE Mobile IN(SELECT Mobile FROM NoSendSms)
- UPDATE @t SET PortNo = 11
- --UPDATE @t SET PortNo = 11 WHERE MsgType IN(101)
- UPDATE @t SET PortNo = 12 WHERE MsgType IN(12,25)
- --UPDATE @t SET PortNo = 13 WHERE MsgType IN(116)
- UPDATE @t SET PortNo = 12 WHERE MsgType IN(26, 220)
- UPDATE @t SET PortNo = 12 WHERE MsgType IN(9,10,17,21,22,23,104,113,117,202,204)
- --UPDATE @t SET PortNo = 1 WHERE MsgType IN(9,10,17,21,22,23,104,113,117,202,204)
- --UPDATE @t SET PortNo = 12 WHERE MsgType IN(9,10,17,21,22,23,104,113,117,202,204)
- --UPDATE @t SET PortNo = 1 WHERE MsgType IN(222)
- --UPDATE @t SET Msg = '【伍亿】' + msg WHERE PortNo = 1
- UPDATE @t SET Msg = REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(Msg, '发票','发.票'), '银行', '银.行'), '开户', '开.户'), '..', '.'), '聘', '.聘'), '面试', '面.试')
- --WHERE PortNo = 2
- UPDATE @t SET Msg = REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(Msg, '求职', '求.职'), '房地产', '房.地.产'), '房产', '房.产'), '广告', '广.告'), '担保', '担.保')
- --WHERE PortNo = 2
- --UPDATE @t SET Msg = REPLACE(Msg, '@51rc_com', '@51rc.com')
- select isdelete,2,* from @t
- UPDATE a
- SET IsDelete = 1
- FROM @t a, BlackWord b WITH(NOLOCK)
- WHERE CHARINDEX(b.KeyWord, a.Msg) > 0
- select isdelete,3,* from @t
- UPDATE a
- SET IsDelete = 0
- FROM @t a, BlackWord b WITH(NOLOCK)
- WHERE MsgType = 113
- select isdelete,4,* from @t
- UPDATE SmsMessageLog SET SmsType = 3 WHERE ID IN(SELECT ID FROM @t WHERE IsDelete = 1)
- --INSERT @t
- --SELECT Id, 0, 0, 0, 0, Mobile, Msg, 0, GETDATE(), 13, NULL, NULL, 1, 116, 0
- --FROM smsBatchSend
- --WHERE SendStatus IS NULL
- SELECT * FROM @t WHERE IsDelete = 0
- INSERT INTO ServiceRunLog(ServiceId, RunRows, RunId, RunStatus, RunMessage)
- SELECT 1, @@RowCount, 0, 1, '提取短信数据'
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSmsWatchLogInsert] Script Date: 2018/12/13 19:12:06 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcSmsWatchLogInsert]
- (
- @d VARCHAR(8)
- )
- AS
- BEGIN
- UPDATE SmsWatch
- SET IsSend = 1
- WHERE IsSend = 0
- AND WatchDate = @d
- AND Mobile IN(SELECT Mobile FROM SmsMessageLog WHERE AddDate > @d)
- DECLARE @LoginNumber AS INT, @AllNumber AS INT,
- @LoginNumberSend AS INT, @AllNumberSend AS INT,
- @LoginNumberNotSend AS INT, @AllNumberNotSend AS INT,
- @Now AS DATETIME, @MsgType TINYINT
- SET @Now = GETDATE()
- DECLARE curMsgType CURSOR FOR SELECT DISTINCT MsgType FROM SmsWatch WHERE MsgType < 50
- OPEN curMsgType
- FETCH NEXT FROM curMsgType INTO @MsgType
- WHILE @@FETCH_STATUS >= 0
- BEGIN
- SELECT @LoginNumberNotSend = COUNT(DISTINCT a.caMainId)
- FROM SmsWatch a, caLoginLog b
- WHERE a.caMainId = b.caMainId
- AND b.AddDate > @d
- AND a.IsSend = 0
- AND a.WatchDate = @d
- AND MsgType = @MsgType
- SELECT @LoginNumberSend = COUNT(DISTINCT a.caMainId)
- FROM SmsWatch a, caLoginLog b
- WHERE a.caMainId = b.caMainId
- AND b.AddDate > @d
- AND a.IsSend = 1
- AND a.WatchDate = @d
- AND MsgType = @MsgType
- SELECT @AllNumberSend = COUNT(DISTINCT caMainId)
- FROM SmsWatch
- WHERE WatchDate = @d
- AND IsSend = 1
- AND MsgType = @MsgType
- SELECT @AllNumberNotSend = COUNT(DISTINCT caMainId)
- FROM SmsWatch
- WHERE WatchDate = @d
- AND IsSend = 0
- AND MsgType = @MsgType
- SELECT @LoginNumber = @LoginNumberSend + @LoginNumberNotSend, @AllNumber = @AllNumberSend + @AllNumberNotSend
- IF @AllNumber > 0
- INSERT SmsWatchLog (WatchDate, SendDate, LoginNumber, AllNumber, LoginNumberSend, AllNumberSend, LoginNumberNotSend, AllNumberNotSend, MsgType)
- SELECT @Now, @d, @LoginNumber, @AllNumber, @LoginNumberSend, @AllNumberSend, @LoginNumberNotSend, @AllNumberNotSend, @MsgType
- FETCH NEXT FROM curMsgType INTO @MsgType
- END
- CLOSE curMsgType
- DEALLOCATE curMsgType
- ------person summary
- DECLARE @t AS TABLE(ID INT, IsSend BIT, LastLoginDate SMALLDATETIME)
- DECLARE curMsgType2 CURSOR FOR SELECT DISTINCT MsgType FROM SmsWatch WHERE MsgType >100 AND MsgType < 200
- OPEN curMsgType2
- FETCH NEXT FROM curMsgType2 INTO @MsgType
- WHILE @@FETCH_STATUS >= 0
- BEGIN
- DELETE @t
- INSERT @t (ID, IsSend)
- SELECT caMainId, IsSend FROM SmsWatch
- WHERE WatchDate = @d
- AND MsgType = @MsgType
- UPDATE a SET a.LastLoginDate = b.LastLoginDate
- FROM @t a, paMain b
- WHERE a.id = b.Id
- SELECT @LoginNumberNotSend = COUNT(DISTINCT Id)
- FROM @t
- WHERE LastLoginDate > @d
- AND IsSend = 0
- SELECT @LoginNumberSend = COUNT(DISTINCT Id)
- FROM @t
- WHERE LastLoginDate > @d
- AND IsSend = 1
- SELECT @AllNumberSend = COUNT(DISTINCT caMainId)
- FROM SmsWatch
- WHERE WatchDate = @d
- AND IsSend = 1
- AND MsgType = @MsgType
- SELECT @AllNumberNotSend = COUNT(DISTINCT caMainId)
- FROM SmsWatch
- WHERE WatchDate = @d
- AND IsSend = 0
- AND MsgType = @MsgType
- SELECT @LoginNumber = @LoginNumberSend + @LoginNumberNotSend, @AllNumber = @AllNumberSend + @AllNumberNotSend
- IF @AllNumber > 0
- INSERT SmsWatchLog (WatchDate, SendDate, LoginNumber, AllNumber, LoginNumberSend, AllNumberSend, LoginNumberNotSend, AllNumberNotSend, MsgType)
- SELECT @Now, @d, @LoginNumber, @AllNumber, @LoginNumberSend, @AllNumberSend, @LoginNumberNotSend, @AllNumberNotSend, @MsgType
- FETCH NEXT FROM curMsgType2 INTO @MsgType
- END
- CLOSE curMsgType2
- DEALLOCATE curMsgType2
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSourceAnalysis1] Script Date: 2018/12/13 19:12:06 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcSourceAnalysis1]
- AS
- BEGIN
- DECLARE @CountDate INT, @ProvinceId INT,
- @Domain VARCHAR(50), @VersionId INT, @v INT
- SET @CountDate = CONVERT(VARCHAR(8), GETDATE() - 1, 112)
- DECLARE curVersion CURSOR FOR
- SELECT Version.Id, Version.Province_Id, Province.Domain
- FROM Version WITH(NOLOCK), Province WITH(NOLOCK)
- WHERE Version.Id <> Version.Province_Id
- AND Version.Province_Id = Province.Id
- ORDER BY Version.Id
- FOR READ ONLY
- OPEN curVersion
- FETCH NEXT FROM curVersion INTO @VersionId, @ProvinceId, @Domain
- WHILE @@FETCH_STATUS = 0
- BEGIN
- INSERT INTO Seconderer_Count(CountDate, Province_Id, Howmany, Referer, VersionId)
- SELECT TOP 200 @CountDate, @ProvinceId, COUNT(1) AllNum, LEFT(Referer, CHARINDEX('/', Referer, 8)) Ref, @VersionId
- FROM Seconderer WITH(NOLOCK)
- WHERE CHARINDEX('/', Referer, 8) > 0
- AND VersionId = @VersionId
- AND CHARINDEX(@Domain, Referer, 0) NOT BETWEEN 1 AND 10
- GROUP BY left(Referer, CHARINDEX('/', Referer, 8))
- ORDER BY AllNum DESC
- SET @v = 10000 + @VersionId
- INSERT INTO Seconderer_Count(CountDate, Province_Id, Howmany, Referer, VersionId)
- SELECT TOP 200 @CountDate, 100 + @ProvinceId, COUNT(1) AllNum, LEFT(Referer, CHARINDEX('/', Referer, 8)) Ref, @V
- FROM Seconderer WITH(NOLOCK)
- WHERE CHARINDEX('/', Referer, 8) > 0
- AND VersionId = @V
- AND CHARINDEX(@Domain, Referer, 0) NOT BETWEEN 1 AND 10
- GROUP BY left(Referer, CHARINDEX('/', Referer, 8))
- ORDER BY AllNum DESC
-
- SET @v = 20000 + @VersionId
- INSERT INTO Seconderer_Count(CountDate, Province_Id, Howmany, Referer, VersionId)
- SELECT TOP 200 @CountDate, 200 + @ProvinceId, COUNT(1) AllNum, LEFT(Referer, CHARINDEX('/', Referer, 8)) Ref, @V
- FROM Seconderer WITH(NOLOCK)
- WHERE CHARINDEX('/', Referer, 8) > 0
- AND VersionId = @V
- AND CHARINDEX(@Domain, Referer, 0) NOT BETWEEN 1 AND 10
- GROUP BY left(Referer, CHARINDEX('/', Referer, 8))
- ORDER BY AllNum DESC
- SET @v = 30000 + @VersionId
- INSERT INTO Seconderer_Count(CountDate, Province_Id, Howmany, Referer, VersionId)
- SELECT TOP 200 @CountDate, 100 + @ProvinceId, COUNT(1) AllNum, LEFT(Referer, CHARINDEX('/', Referer, 8)) Ref, @V
- FROM Seconderer WITH(NOLOCK)
- WHERE CHARINDEX('/', Referer, 8) > 0
- AND VersionId = @V
- AND CHARINDEX(@Domain, Referer, 0) NOT BETWEEN 1 AND 10
- GROUP BY left(Referer, CHARINDEX('/', Referer, 8))
- ORDER BY AllNum DESC
-
- FETCH NEXT FROM curVersion INTO @VersionId, @ProvinceId, @Domain
- END
- CLOSE curVersion
- DEALLOCATE curVersion
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSourceAnalysis1_2] Script Date: 2018/12/13 19:12:07 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcSourceAnalysis1_2]
- AS
- BEGIN
- DECLARE @CountDate INT, @ProvinceId INT,
- @Domain VARCHAR(50), @VersionId INT, @v INT
- SET @CountDate = CONVERT(VARCHAR(8), GETDATE() - 1, 112)
-
- /*
- DECLARE curVersion CURSOR FOR
- SELECT a.Id, b.Id Province_Id, b.Domain
- FROM dcRegion a WITH(NOLOCK), Province b WITH(NOLOCK)
- WHERE Len(a.Id) = 6
- AND LEFT(a.Id, 2) = b.Id
- AND a.ID IN(320108,320109,320110,320111,320209,320210,320211,320213,320306,320307,320308,320309,320310,320311,320312,320313,320407,320408,320409,320504,320505,320506,320507,320606,320607,320608,320609,320610,320611,320612,320613,320704,320705,320706,320707,320708,320709,320710,320711,320712,320713,320807,320903,320904,320905,320906,320907,320908,320909,320910,320911,320912,321003,321004,321005,321104,321105,321303,321304,321305,321306,321307,321308,321404,321405,321406,321503,321504,321505,321506,321507,321508,321509,321603,321604,321605,321606,321607,321608,321609,321610,321705,321706,321707,321708,321709,321710,321711,321712,321713)
- ORDER BY a.Id
- FOR READ ONLY
- */
- --2014-8-14 lambo 之前只是统计的山东的,现在统计所有省份的县级市
- DECLARE curVersion CURSOR FOR
- SELECT a.Id, b.Id Province_Id, b.Domain
- FROM (SELECT DISTINCT VersionId ID FROM Seconderer) a, Province b WITH(NOLOCK)
- WHERE Len(a.Id) = 6
- AND LEFT(a.Id, 2) = b.Id
- AND a.Id>100000
- ORDER BY a.Id
- FOR READ ONLY
- OPEN curVersion
- FETCH NEXT FROM curVersion INTO @VersionId, @ProvinceId, @Domain
- WHILE @@FETCH_STATUS = 0
- BEGIN
- INSERT INTO Seconderer_Count(CountDate, Province_Id, Howmany, Referer, VersionId)
- SELECT TOP 200 @CountDate, @ProvinceId, COUNT(1) AllNum, LEFT(Referer, CHARINDEX('/', Referer, 8)) Ref, @VersionId
- FROM Seconderer WITH(NOLOCK)
- WHERE CHARINDEX('/', Referer, 8)> 0
- AND VersionId = @VersionId
- AND CHARINDEX(@Domain, Referer, 0) NOT BETWEEN 1 AND 10
- GROUP BY left(Referer, CHARINDEX('/', Referer, 8))
- ORDER BY AllNum DESC
- SET @v = 10000 + @VersionId
- INSERT INTO Seconderer_Count(CountDate, Province_Id, Howmany, Referer, VersionId)
- SELECT TOP 200 @CountDate, 100 + @ProvinceId, COUNT(1) AllNum, LEFT(Referer, CHARINDEX('/', Referer, 8)) Ref, @V
- FROM Seconderer WITH(NOLOCK)
- WHERE CHARINDEX('/', Referer, 8) > 0
- AND VersionId = @V
- AND CHARINDEX(@Domain, Referer, 0) NOT BETWEEN 1 AND 10
- GROUP BY left(Referer, CHARINDEX('/', Referer, 8))
- ORDER BY AllNum DESC
-
- SET @v = 20000 + @VersionId
- INSERT INTO Seconderer_Count(CountDate, Province_Id, Howmany, Referer, VersionId)
- SELECT TOP 200 @CountDate, 200 + @ProvinceId, COUNT(1) AllNum, LEFT(Referer, CHARINDEX('/', Referer, 8)) Ref, @V
- FROM Seconderer WITH(NOLOCK)
- WHERE CHARINDEX('/', Referer, 8) > 0
- AND VersionId = @V
- AND CHARINDEX(@Domain, Referer, 0) NOT BETWEEN 1 AND 10
- GROUP BY left(Referer, CHARINDEX('/', Referer, 8))
- ORDER BY AllNum DESC
-
- FETCH NEXT FROM curVersion INTO @VersionId, @ProvinceId, @Domain
- END
- CLOSE curVersion
- DEALLOCATE curVersion
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSourceAnalysis10] Script Date: 2018/12/13 19:12:07 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcSourceAnalysis10]
- AS
- BEGIN
- SELECT Id, Pr, OutLink, Authority, Correlation, Deleted, Baidu, LinkOur, BaiduRank, Score
- INTO #t
- FROM Link WITH(NOLOCK)
- --UPDATE #t SET OutLink = 1 WHERE OutLink = 0
- UPDATE #t SET Score = 0 WHERE Deleted > 0 OR Baidu = 0 OR Linkour NOT IN(1, 2) OR OutLink = 0
- UPDATE #t SET Score = (0.15 + (0.85 * pr) / OutLink) * Authority * Correlation / 100
- WHERE Deleted = 0 AND Baidu = 1 AND Linkour IN(1, 2) AND OutLink > 0
- INSERT INTO Link_Score(Versionid, Score, Num)
- SELECT Versionid, SUM(Score) Score, COUNT(1) Cnt
- FROM Link WITH(NOLOCK)
- WHERE Type = 1
- AND Method = 1
- AND VaLid = 1
- AND Deleted < 1
- GROUP BY Versionid
- ORDER BY Versionid
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSourceAnalysis2] Script Date: 2018/12/13 19:12:07 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcSourceAnalysis2]
- AS
- BEGIN
- --1职位页面 2公司页面 3新闻页面 4招聘会页面 5求职互助页面 6职位地图
- --7兼职招聘 8校园招聘 9专业分类 10 /jinan_job/zhangqiu/ 15职位地图jobmap/1802.html
- --20县级新闻列表/zhangqiu/news/ 21个人文档下载 100其它
- CREATE TABLE #t(ProvinceId INT, Referer VARCHAR(200), AllNum INT, InnerPage INT)
- SELECT *, SPACE(200) Ref, SPACE(50) Domain INTO #In FROM Innerer --WHERE LoginDate < '2014-10-09 02:42:00'
- UPDATE #In SET Ref = LEFT(Referer, CHARINDEX('/', Referer, 8))
- DELETE #In WHERE Ref = ''
- UPDATE a SET a.Domain = b.ProvinceDomain FROM #In a, dcProvince b WHERE b.Id = a.Province_Id
- UPDATE a SET a.Domain = b.ProvinceDomain FROM #In a, dcProvince b WHERE b.Id + 100 = a.Province_Id
- UPDATE a SET a.Domain = b.ProvinceDomain FROM #In a, dcProvince b WHERE b.Id + 200 = a.Province_Id
- UPDATE #In SET Domain = '51rc.com' WHERE Domain IS NULL
- DELETE #In WHERE CHARINDEX(Domain, Referer, 0) > 0
- CREATE TABLE #p(ID INT, Domain VARCHAR(100))
- INSERT #p SELECT ID , ProvinceDomain FROM dcProvince
- INSERT #p SELECT 100 + ID , ProvinceDomain FROM dcProvince
- INSERT #p SELECT 200 + ID , ProvinceDomain FROM dcProvince
- INSERT #p SELECT 0, '51rc.com'
- CREATE TABLE #Ref(VersionId INT, Ref VARCHAR(500), Cnt INT)
- INSERT INTO #Ref
- SELECT Province_Id, Ref, COUNT(*) Cnt
- FROM #In WITH(NOLOCK)
- GROUP BY Province_Id, Ref
- ORDER BY Province_Id, COUNT(*) DESC, Ref
- INSERT INTO #Ref
- SELECT VersionId, Ref , COUNT(*) Cnt
- FROM #In
- WHERE LEN(VersionId) > 3
- GROUP BY VersionId, Ref
- ORDER BY VersionId, COUNT(*) DESC, Ref
- SELECT *, ROW_NUMBER() OVER(PARTITION BY VersionId ORDER BY Cnt DESC) RowNo INTO #r FROM #ref
- DELETE #r WHERE RowNo > 200
- INSERT INTO #t(ProvinceId, Referer, AllNum, InnerPage)
- SELECT Province_Id, a.Ref, COUNT(1) AllNum, InnerPage
- FROM #In a WITH(NOLOCK), #r b
- WHERE a.Province_Id = b.VersionId
- AND a.Ref = b.Ref
- GROUP BY Province_Id, a.Ref, InnerPage
- ORDER BY Province_Id, a.Ref, COUNT(*) DESC
- INSERT INTO #t(ProvinceId, Referer, AllNum, InnerPage)
- SELECT a.VersionId, a.Ref, COUNT(1) AllNum, InnerPage
- FROM #In a WITH(NOLOCK), #r b
- WHERE a.VersionId = b.VersionId
- AND a.Ref = b.Ref
- AND a.VersionId > 999
- GROUP BY a.VersionId, a.Ref, InnerPage
- ORDER BY a.VersionId, a.Ref, COUNT(*) DESC
- ---生成Innerer_Count的数据
- DECLARE @ProvinceId AS INT, @ProvinceDomain AS VARCHAR(100),
- @CountNumber AS INT, @CountDate AS VARCHAR(8),
- @AllNum AS INT, @InnerPage AS INT,
- @Referer AS VARCHAR(100), @HowMany AS INT,
- @ProvinceIdOld INT, @RefererOld VARCHAR(100),
- @p INT
- DECLARE @allCount INT
- SELECT @allCount =count(1) FROM #T
- PRINT '#t中有'+Ltrim(str(@allCount))+'条数据'
- DECLARE @JobPage INT, @CompanyPage INT, @NewsPage INT, @RecruitmentPage INT, @CountyPage INT, @RegionSearch INT,
- @JobHelpPage INT, @JobMapPage INT, @OtherPage INT, @partTimePage INT, @SchoolPage INT, @MajorPage INT,
- @JobNamePage INT, @NewJob INT, @paDownLoad INT, @sSearch INT
- SELECT @JobPage = 0, @CompanyPage = 0,
- @NewsPage = 0, @RecruitmentPage = 0,
- @JobHelpPage = 0, @JobMapPage = 0,
- @OtherPage = 0, @partTimePage = 0,
- @HowMany = 0, @SchoolPage = 0,
- @MajorPage = 0, @JobNamePage = 0,
- @CountyPage = 0, @RegionSearch = 0,
- @NewJob = 0, @paDownLoad = 0,
- @sSearch = 0
- DECLARE curSummary CURSOR FOR
- SELECT ProvinceId, Referer, AllNum, InnerPage FROM #t ORDER BY Provinceid, Referer, InnerPage DESC
- FOR READ ONLY
- OPEN curSummary
- FETCH NEXT FROM curSummary INTO @ProvinceId, @Referer, @AllNum, @InnerPage
- SELECT @CountDate = CONVERT(VARCHAR(8), GETDATE() - 1, 112),
- @RefererOld = @Referer, @ProvinceIdOld = @ProvinceId
- PRINT '开始循环游标'
- WHILE @@FETCH_STATUS = 0
- BEGIN
- PRINT '循环游标'+LTRIM(str(@ProvinceId))
- IF NOT(@Referer = @RefererOld AND @ProvinceId = @ProvinceIdOld)
- BEGIN
- PRINT '向Innerer_Count插入数据'
- INSERT INTO Innerer_Count0331(CountDate, Province_Id, howmany, Referer,JobPage, CompanyPage, NewsPage, RecruitmentPage,
- JobHelpPage, JobMapPage, OtherPage, partTimePage, SchoolPage, MajorPage, JobNamePage, NewJob, sSearch, CountyPage, paDownLoad, RegionSearch)
- VALUES (@CountDate, @ProvinceIdOld, @HowMany, @RefererOld, @JobPage, @CompanyPage, @NewsPage, @RecruitmentPage,
- @JobHelpPage, @JobMapPage, @OtherPage, @partTimePage, @SchoolPage, @MajorPage, @JobNamePage, @NewJob, @sSearch, @CountyPage, @paDownLoad, @RegionSearch)
- SELECT @RefererOld = @Referer, @ProvinceIdOld = @ProvinceId,
- @JobPage = 0, @CompanyPage = 0 ,
- @NewsPage = 0, @RecruitmentPage = 0,
- @JobHelpPage = 0, @JobMapPage = 0,
- @OtherPage = 0, @partTimePage = 0,
- @HowMany = 0, @SchoolPage = 0,
- @MajorPage = 0, @JobNamePage = 0,
- @CountyPage = 0, @RegionSearch = 0,
- @NewJob = 0, @paDownLoad = 0,
- @sSearch = 0
- END
- IF @InnerPage = 1
- SET @JobPage = @AllNum
- ELSE IF @InnerPage = 2
- SET @CompanyPage = @AllNum
- ELSE IF @InnerPage = 3
- SET @NewsPage = @AllNum
- ELSE IF @InnerPage = 4
- SET @RecruitmentPage = @AllNum
- ELSE IF @InnerPage = 5
- SET @JobHelpPage = @AllNum
- ELSE IF @InnerPage = 6
- SET @JobMapPage = @AllNum
- ELSE IF @InnerPage = 7
- SET @partTimePage = @AllNum
- ELSE IF @InnerPage = 8
- SET @SchoolPage = @AllNum
- ELSE IF @InnerPage = 9
- SET @MajorPage = @AllNum
- ELSE IF @InnerPage = 15
- SET @JobNamePage = @AllNum
- ELSE IF @InnerPage = 16
- SET @NewJob = @AllNum
- ELSE IF @InnerPage = 17
- SET @sSearch = @AllNum
- ELSE IF @InnerPage = 20
- SET @CountyPage = @AllNum
- ELSE IF @InnerPage = 21
- SET @paDownLoad = @AllNum
- ELSE IF @InnerPage = 10
- SET @RegionSearch = @AllNum
- ELSE --IF @InnerPage = 100
- SET @OtherPage = @AllNum
-
- SET @HowMany = @HowMany + @AllNum
- FETCH NEXT FROM curSummary INTO @ProvinceId, @Referer, @AllNum, @InnerPage
- END
- print '循环游标结束'
- IF NOT @AllNum IS NULL
- BEGIN
- INSERT INTO Innerer_Count0331(CountDate, Province_Id, howmany,Referer,JobPage, CompanyPage, NewsPage, RecruitmentPage,
- JobHelpPage, JobMapPage, partTimePage, OtherPage, SchoolPage, MajorPage, JobNamePage, NewJob, sSearch, CountyPage, RegionSearch)
- VALUES (@CountDate, @ProvinceIdOld, @HowMany, @RefererOld, @JobPage, @CompanyPage, @NewsPage, @RecruitmentPage,
- @JobHelpPage, @JobMapPage, @partTimePage, @OtherPage, @SchoolPage, @MajorPage, @JobNamePage, @NewJob, @sSearch, @CountyPage, @RegionSearch)
- END
- CLOSE curSummary
- DEALLOCATE curSummary
- DROP TABLE #Ref
- DROP TABLE #p
- DROP TABLE #R
- DROP TABLE #In
- DROP TABLE #t
- UPDATE Innerer_Count0331 SET VersionId = Province_Id WHERE CountDate = @CountDate
- UPDATE Innerer_Count0331 SET VersionId = RIGHT(Province_Id, LEN(Province_Id) - 1)
- WHERE CountDate = @CountDate
- AND LEN(Province_Id) IN(3, 5)
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSourceAnalysis2New] Script Date: 2018/12/13 19:12:09 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcSourceAnalysis2New]
- AS
- BEGIN
- --1职位页面 2公司页面 3新闻页面 4招聘会页面 5求职互助页面 6职位地图
- --7兼职招聘 8校园招聘 9专业分类 10 /jinan_job/zhangqiu/ 15职位地图jobmap/1802.html
- --20县级新闻列表/zhangqiu/news/ 21个人文档下载 100其它
- CREATE TABLE #t(ProvinceId INT, Referer VARCHAR(200), AllNum INT, InnerPage INT)
- SELECT *, SPACE(200) Ref, SPACE(50) Domain INTO #In FROM Innerer --WHERE LoginDate < '2014-10-09 02:42:00'
- UPDATE #In SET Ref = LEFT(Referer, CHARINDEX('/', Referer, 8))
- DELETE #In WHERE Ref = ''
- UPDATE a SET a.Domain = b.ProvinceDomain FROM #In a, dcProvince b WHERE b.Id = a.Province_Id
- UPDATE a SET a.Domain = b.ProvinceDomain FROM #In a, dcProvince b WHERE b.Id + 100 = a.Province_Id
- UPDATE a SET a.Domain = b.ProvinceDomain FROM #In a, dcProvince b WHERE b.Id + 200 = a.Province_Id
- UPDATE #In SET Domain = '51rc.com' WHERE Domain IS NULL
- DELETE #In WHERE CHARINDEX(Domain, Referer, 0) BETWEEN 1 AND 10
- CREATE TABLE #p(ID INT, Domain VARCHAR(100))
- INSERT #p SELECT ID , ProvinceDomain FROM dcProvince
- INSERT #p SELECT 100 + ID , ProvinceDomain FROM dcProvince
- INSERT #p SELECT 200 + ID , ProvinceDomain FROM dcProvince
- INSERT #p SELECT 0, '51rc.com'
- CREATE TABLE #Ref(VersionId INT, Ref VARCHAR(500), Cnt INT)
- INSERT INTO #Ref
- SELECT Province_Id, Ref, COUNT(*) Cnt
- FROM #In WITH(NOLOCK)
- GROUP BY Province_Id, Ref
- ORDER BY Province_Id, COUNT(*) DESC, Ref
- INSERT INTO #Ref
- SELECT VersionId, Ref , COUNT(*) Cnt
- FROM #In
- WHERE LEN(VersionId) > 3
- GROUP BY VersionId, Ref
- ORDER BY VersionId, COUNT(*) DESC, Ref
- SELECT *, ROW_NUMBER() OVER(PARTITION BY VersionId ORDER BY Cnt DESC) RowNo INTO #r FROM #ref
- DELETE #r WHERE RowNo > 200
- INSERT INTO #t(ProvinceId, Referer, AllNum, InnerPage)
- SELECT Province_Id, a.Ref, COUNT(1) AllNum, InnerPage
- FROM #In a WITH(NOLOCK), #r b
- WHERE a.Province_Id = b.VersionId
- AND a.Ref = b.Ref
- GROUP BY Province_Id, a.Ref, InnerPage
- ORDER BY Province_Id, a.Ref, COUNT(*) DESC
- INSERT INTO #t(ProvinceId, Referer, AllNum, InnerPage)
- SELECT a.VersionId, a.Ref, COUNT(1) AllNum, InnerPage
- FROM #In a WITH(NOLOCK), #r b
- WHERE a.VersionId = b.VersionId
- AND a.Ref = b.Ref
- AND a.VersionId > 999
- GROUP BY a.VersionId, a.Ref, InnerPage
- ORDER BY a.VersionId, a.Ref, COUNT(*) DESC
- DECLARE @CountDate AS VARCHAR(8)
- SET @CountDate = CONVERT(VARCHAR(8), GETDATE() - 1, 112)
- SELECT 0 ID, @CountDate CountDate, ProvinceId, Referer, SUM(AllNum) HowMany INTO #1 FROM #t GROUP BY ProvinceId, Referer
- INSERT INTO Innerer_CountNew(CountDate, Province_Id, HowMany, Referer) SELECT CountDate, ProvinceId, HowMany, Referer FROM #1
- UPDATE a SET A.Id = b.Id FROM #1 a, Innerer_CountNew b WHERE a.CountDate = b.CountDate AND a.ProvinceId = b.Province_Id AND a.Referer = b.Referer
- INSERT INTO Innerer_Count_Detail SELECT a.ID, b.InnerPage, b.AllNum FROM #1 a, #t b WHERE a.ProvinceId= b.ProvinceId AND a.Referer = b.Referer ORDER BY A.Id, b.InnerPage
- UPDATE Innerer_CountNew SET VersionId = Province_Id WHERE CountDate = @CountDate
- UPDATE Innerer_CountNew SET VersionId = RIGHT(Province_Id, LEN(Province_Id) - 1)
- WHERE CountDate = @CountDate
- AND LEN(Province_Id) IN(3, 5)
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSourceAnalysis3] Script Date: 2018/12/13 19:12:10 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcSourceAnalysis3]
- AS
- BEGIN
- DECLARE @Countdate VARCHAR(8), @Referer_AllNum INT,
- @Referer_Ref VARCHAR(200), @ProvinceId INT,
- @ProvinceDomain VARCHAR(50), @CountNumber AS INT,
- @p INT
- SET @CountDate = CONVERT(VARCHAR(8), GETDATE() - 1, 112)
- DECLARE @t AS TABLE(
- ID INT,
- Domain VARCHAR(100),
- CountNumber INT
- )
- INSERT INTO @t SELECT 0, '51rc.com', 100
- INSERT INTO @t SELECT Id, Domain, 200 FROM Province WITH(NOLOCK) ORDER BY Id
- DECLARE curSite CURSOR FOR
- SELECT Id, Domain, CountNumber FROM @t ORDER BY Id
- FOR READ ONLY
- OPEN curSite
- FETCH NEXT FROM curSite INTO @ProvinceId, @ProvinceDomain, @CountNumber
- WHILE @@FETCH_STATUS = 0
- BEGIN
- INSERT INTO Referer_Count(CountDate, Province_id, howmany, Referer)
- SELECT TOP (@CountNumber) @CountDate, @ProvinceId, COUNT(1), LEFT(Referer, CHARINDEX('/', Referer, 8)) Ref
- FROM Referer WITH(NOLOCK)
- WHERE CHARINDEX('/', Referer, 8) > 0
- AND Province_id = @ProvinceId
- AND CHARINDEX(@ProvinceDomain, Referer, 0) NOT BETWEEN 1 AND 10
- GROUP BY LEFT(Referer, CHARINDEX('/', Referer, 8))
- ORDER BY COUNT(1) DESC
-
- IF @ProvinceId > 0
- BEGIN
- SET @p = '1' + LTRIM(STR(@ProvinceId))
- INSERT INTO Referer_Count(CountDate, Province_id, howmany, Referer)
- SELECT TOP (@CountNumber) @CountDate, @p, COUNT(1), LEFT(Referer, CHARINDEX('/', Referer, 8)) Ref
- FROM Referer WITH(NOLOCK)
- WHERE CHARINDEX('/', Referer, 8) > 0
- AND Province_id = @p
- AND CHARINDEX(@ProvinceDomain, Referer, 0) NOT BETWEEN 1 AND 10
- GROUP BY LEFT(Referer, CHARINDEX('/', Referer, 8))
- ORDER BY COUNT(1) DESC
- SET @p = '2' + LTRIM(STR(@ProvinceId))
- INSERT INTO Referer_Count(CountDate, Province_id, howmany, Referer)
- SELECT TOP (@CountNumber) @CountDate, @p, COUNT(1), LEFT(Referer, CHARINDEX('/', Referer, 8)) Ref
- FROM Referer WITH(NOLOCK)
- WHERE CHARINDEX('/', Referer, 8) > 0
- AND Province_id = @p
- AND CHARINDEX(@ProvinceDomain, Referer, 0) NOT BETWEEN 1 AND 10
- GROUP BY LEFT(Referer, CHARINDEX('/', Referer, 8))
- ORDER BY COUNT(1) DESC
- END
- FETCH NEXT FROM curSite INTO @ProvinceId, @ProvinceDomain, @CountNumber
- END
- CLOSE curSite
- DEALLOCATE curSite
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSourceAnalysis4] Script Date: 2018/12/13 19:12:10 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcSourceAnalysis4]
- AS
- BEGIN
- DECLARE @Countdate VARCHAR(8), @Province_Id INT,
- @Referer VARCHAR(200), @Id INT,
- @VersionId INT
- SET @CountDate = CONVERT(VARCHAR(8), GETDATE() - 1, 112)
- DECLARE curSeconderer CURSOR FOR
- SELECT Id, Province_Id, Referer, VersionId FROM Seconderer_Count WITH(NOLOCK) WHERE Countdate = @Countdate
- FOR READ ONLY
- OPEN curSeconderer
- FETCH NEXT FROM curSeconderer INTO @Id, @Province_Id, @Referer, @VersionId
- WHILE @@FETCH_STATUS = 0
- BEGIN
- INSERT INTO Seconderer_Count_keywords(Referer_Count_Id, keywords, howmany)
- SELECT TOP 500 @Id, Keywords, COUNT(1) cnt
- FROM Seconderer WITH(NOLOCK)
- WHERE CHARINDEX(@Referer, Referer, 0) > 0
- AND VersionId = @VersionId
- AND LEN(keywords)>0
- GROUP BY Keywords
- ORDER BY cnt DESC
- FETCH NEXT FROM curSeconderer INTO @Id, @Province_Id, @Referer, @VersionId
- END
- CLOSE curSeconderer
- DEAllOCATE curSeconderer
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSourceAnalysis5] Script Date: 2018/12/13 19:12:10 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --修改Harry Innerer_Count改为Innerer_CountNew
- --修改时间 2015/3/30
- CREATE PROCEDURE [dbo].[ProcSourceAnalysis5]
- AS
- BEGIN
- DECLARE @Countdate AS VARCHAR(8), @Referer_Count_Id AS INT
- SET @CountDate = CONVERT(VARCHAR(8), GETDATE() - 1, 112)
- --从Innerer、Innerer_Count取数据插入#t表中
- SELECT TOP 0 * INTO #T FROM Innerer_Count_Keywords
- INSERT INTO #t(Referer_Count_id, Keywords, Howmany)
- SELECT b.Id, a.Keywords, COUNT(1) cnt
- FROM Innerer a WITH(NOLOCK), Innerer_CountNew b WITH(NOLOCK)
- WHERE a.Referer LIKE b.Referer + '%'
- AND a.Province_id = b.Province_id
- AND LEN(a.Keywords) > 0
- AND b.CountDate = @CountDate
- GROUP BY b.Id, a.Keywords
- ORDER BY Cnt DESC
- DECLARE @T TABLE (ID INT)
- --将数量超过500的Referer_Count_Id取出放入临时表
- INSERT INTO @T
- SELECT Referer_Count_Id
- FROM #t WITH(NOLOCK)
- GROUP BY Referer_Count_Id
- HAVING COUNT(*) > 500
- --将超过500的数量的去掉
- DECLARE curMoreThan500 CURSOR FOR
- SELECT Id FROM @t
- FOR READ ONLY
- OPEN curMoreThan500
- FETCH NEXT FROM curMoreThan500 INTO @Referer_Count_Id
- WHILE @@FETCH_STATUS = 0
- BEGIN
- DELETE FROM #t
- WHERE Referer_Count_id = @Referer_Count_Id
- AND KeyWords NOT IN (
- SELECT TOP 500 KeyWords
- FROM #t WITH(NOLOCK)
- WHERE Referer_Count_id = @Referer_Count_Id
- ORDER BY HowMany DESC
- )
- FETCH NEXT FROM curMoreThan500 INTO @Referer_Count_Id
- END
- CLOSE curMoreThan500
- DEALLOCATE curMoreThan500
- INSERT INTO Innerer_Count_Keywords SELECT * FROM #t
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSourceAnalysis6] Script Date: 2018/12/13 19:12:10 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcSourceAnalysis6]
- AS
- BEGIN
- DECLARE @Countdate VARCHAR(8), @Referer_Count_Id INT
- SET @CountDate = CONVERT(VARCHAR(8), GETDATE() - 1, 112)
- SELECT TOP 0 * INTO #t FROM Referer_Count_keywords
- INSERT INTO #t(Referer_Count_id, keywords, howmany)
- SELECT b.ID, a.Keywords, COUNT(1) cnt
- FROM Referer a WITH(NOLOCK), Referer_Count b WITH(NOLOCK)
- WHERE (a.Referer LIKE b.Referer + '%' OR a.Referer LIKE 'http://' + b.Referer + '%')
- AND a.Province_id = b.Province_id
- AND LEN(a.Keywords) > 0
- AND b.CountDate = @CountDate
- GROUP BY b.Id, a.Keywords
- ORDER BY Cnt DESC
- DECLARE curCount CURSOR FOR
- SELECT Referer_Count_Id
- FROM #t WITH(NOLOCK)
- GROUP BY Referer_Count_Id
- HAVING COUNT(*) > 500
- FOR READ ONLY
- OPEN curCount
- FETCH NEXT FROM curCount INTO @Referer_Count_Id
- WHILE @@FETCH_STATUS = 0
- BEGIN
- DELETE FROM #t
- WHERE Referer_Count_id = @Referer_Count_id
- AND KeyWords NOT IN (
- SELECT TOP 500 KeyWords FROM #t WITH(NOLOCK)
- WHERE Referer_Count_id = @Referer_Count_id
- ORDER BY HowMany DESC)
- FETCH NEXT FROM curCount INTO @Referer_Count_Id
- END
- CLOSE curCount
- DEAllOCATE curCount
- INSERT INTO Referer_Count_keywords(Referer_Count_id, keywords, howmany)
- SELECT * FROM #t
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSourceAnalysis7] Script Date: 2018/12/13 19:12:10 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcSourceAnalysis7]
- AS
- BEGIN
- DECLARE @CountMonth VARCHAR(6)
- SET @CountMonth = CONVERT(VARCHAR(6), GETDATE(), 112)
- SELECT Id, Link, Versionid, 10000 Cnt1, 10000 Cnt2, Vision, PowerAll, Power INTO #t FROM Link WITH(NOLOCK) WHERE Valid = 1
- UPDATE #t SET Link = LTRIM(RTRIM(LOWER(Link)))
- UPDATE #t SET Link = LEFT(Link, LEN(Link) - 1) WHERE RIGHT(Link, 1) = '/'
- UPDATE #t SET Cnt1 = (SELECT COUNT(1) FROM Referer WITH(NOLOCK)
- WHERE Referer LIKE #t.Link + '%'
- AND Referer.Versionid = #t.Versionid)
- UPDATE #t SET Cnt2 = (SELECT COUNT(1) FROM Seconderer WITH(NOLOCK)
- WHERE Referer LIKE #t.Link + '%'
- AND Seconderer.Versionid = #t.Versionid)
- UPDATE #t SET Vision=0, PowerAll = PowerAll + Cnt1 + Cnt2, Power = Cnt1 + Cnt2 WHERE Cnt1 + Cnt2 > 0
- UPDATE a
- SET a.PowerAll = b.PowerAll, a.Power = b.Power, a.Vision = b.Vision
- FROM Link a WITH(NOLOCK), #t b WITH(NOLOCK)
- WHERE a.ID = b.Id
- AND b.Power > 0
- INSERT INTO Link_Count(LinkId, YearMonth, Power)
- SELECT ID, @CountMonth, 0
- FROM Link WITH(NOLOCK)
- WHERE ID NOT IN(
- SELECT LinkId FROM Link_count WITH(NOLOCK)
- WHERE YearMonth = @CountMonth
- )
- AND Power > 0
- UPDATE a
- SET a.Power = a.Power + b.Power
- FROM Link_Count a, #t b
- WHERE a.LinkId = b.Id
- AND a.YearMonth = @CountMonth
- AND b.Power > 0
-
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSourceAnalysis8] Script Date: 2018/12/13 19:12:11 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcSourceAnalysis8]
- AS
- BEGIN
- DECLARE @CountMonth AS VARCHAR(8)
- SELECT @CountMonth = CONVERT(VARCHAR(6), GETDATE(), 112)
- SELECT Id, OutUrl, 10000 Cnt1, 10000 Cnt2, Mth_ClickNum, Yst_ClickNum
- INTO #t
- FROM OutLink WITH(NOLOCK)
- WHERE AddDate > GETDATE() - 30
- UPDATE #t SET OutUrl = LTRIM(RTRIM(LOWER(OutUrl)))
- UPDATE #t SET OutUrl = LEFT(OutUrl, LEN(OutUrl) - 1) WHERE RIGHT(OutUrl, 1) = '/'
- UPDATE #t SET Cnt1 = (SELECT COUNT(1) FROM Referer WITH(NOLOCK) WHERE Referer.Referer = #t.OutUrl)
- UPDATE #t SET Cnt2 = (SELECT COUNT(1) FROM Seconderer WITH(NOLOCK) WHERE Seconderer.Referer = #t.OutUrl)
- UPDATE #t SET Mth_ClickNum = Mth_ClickNum + Cnt1 + Cnt2, Yst_ClickNum = Yst_ClickNum + Cnt1 + Cnt2
- UPDATE a
- SET a.Yst_ClickNum = b.Yst_ClickNum, a.Mth_ClickNum = b.Mth_ClickNum
- FROM OutLink a WITH(NOLOCK), #t b WITH(NOLOCK)
- WHERE a.Id = b.Id
- INSERT INTO OutLink_Count(OutLinkid, YearMonth, Power)
- SELECT ID, @CountMonth, Cnt1 + Cnt2
- FROM #t
- WHERE Cnt1 + Cnt2 > 0
- AND ID NOT IN(
- SELECT OutLinkid FROM OutLink_Count WITH(NOLOCK)
- WHERE YearMonth = @CountMonth
- )
- UPDATE a
- SET a.Power = a.Power + b.Cnt1 + b.Cnt2
- FROM OutLink_Count a, #t b
- WHERE b.Yst_ClickNum > 0
- AND a.OutLinkid = b.Id
- AND a.YearMonth = @CountMonth
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSourceAnalysis9] Script Date: 2018/12/13 19:12:11 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --修改Harry Innerer_Count改为Innerer_CountNew
- --修改时间 2015/3/30
- CREATE PROCEDURE [dbo].[ProcSourceAnalysis9]
- AS
- BEGIN
- DELETE Referer_Count WHERE CountDate < CONVERT(VARCHAR(8), GETDATE() - 400, 112)
- DELETE Innerer_CountNew WHERE CountDate < CONVERT(VARCHAR(8), GETDATE() - 400, 112)
- DELETE Counter WHERE CountDate < CONVERT(VARCHAR(8), GETDATE() - 400, 112)
- END
- GO
- /****** Object: StoredProcedure [dbo].[procSpFamousCompanyByIdSelect] Script Date: 2018/12/13 19:12:11 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[procSpFamousCompanyByIdSelect]
- (
- @ID VARCHAR(10)
- )
- AS
- BEGIN
- SELECT a.*,b.Description RegionName,c.Description Industry
- FROM spFamousCompany a,dcRegion b with(nolock) ,dcIndustry c with(nolock)
- WHERE a.ID = @ID
- AND a.dcIndustryID = c.ID
- AND a.dcRegionID = b.ID
- END
- GO
- /****** Object: StoredProcedure [dbo].[procSpFamousCompanySelect] Script Date: 2018/12/13 19:12:12 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --根据站点、行业、关键字 查询名企信息 nick20140222
- CREATE PROCEDURE [dbo].[procSpFamousCompanySelect]
- (
- @dcSubsiteId SMALLINT,
- @dcIndustryID INT,
- @KeyWord NVARCHAR(50)
- )
- AS
- BEGIN
- IF(ISNULL(@KeyWord, '') > '' AND @dcIndustryID <> 0)
- BEGIN
- SELECT TOP 480 ID, CompanyName AS Title
- FROM spFamousCompany
- WHERE (CompanyName LIKE '%' + @KeyWord + '%' OR Description LIKE '%' + @KeyWord + '%')
- AND dcIndustryID = @dcIndustryID
- AND dcRegionID LIKE LTRIM(STR(@dcSubsiteId)) + '%'
- ORDER BY ID DESC
- END
- ELSE IF (@dcIndustryID <> 0 )
- BEGIN
- SELECT TOP 480 ID, CompanyName AS Title
- FROM spFamousCompany
- WHERE dcIndustryID = @dcIndustryID
- AND dcRegionID LIKE LTRIM(STR(@dcSubsiteId)) + '%'
- ORDER BY ID DESC
- END
- ELSE IF (ISNULL(@KeyWord, '') > '')
- BEGIN
- SELECT TOP 480 ID, CompanyName AS Title
- FROM spFamousCompany
- WHERE (CompanyName LIKE '%' + @KeyWord + '%' OR Description LIKE '%' + @KeyWord + '%')
- AND dcRegionID LIKE LTRIM(STR(@dcSubsiteId)) + '%'
- ORDER BY ID DESC
- END
- ELSE
- BEGIN
- SELECT TOP 480 ID, CompanyName AS Title
- FROM spFamousCompany
- WHERE dcRegionID LIKE LTRIM(STR(@dcSubsiteId)) + '%'
- ORDER BY ID DESC
- END
- END
- GO
- /****** Object: StoredProcedure [dbo].[procspFamousCompanyUpdate] Script Date: 2018/12/13 19:12:12 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.5
- --创建人:NICK
- --说明:记录知名企业点击数
- --#####################################################
- CREATE PROCEDURE [dbo].[procspFamousCompanyUpdate]
- (
- @NewsID INT,
- @IsWhite INT
- )
- AS
- BEGIN
- DECLARE @SQL VARCHAR(MAX)
- SET @SQL = 'UPDATE MainDB..spFamousCompany SET AllClickNumber = AllClickNumber + 1 '
- IF @IsWhite = 0
- BEGIN
- SET @SQL = @SQL +', ClickNumber = ClickNumber + 1 '
- END
- SET @SQL = @SQL +' WHERE ID = ' +CONVERT(VARCHAR(20),@NewsID)
- EXEC(@SQL)
- RETURN 1
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSpreadKeywordAssignByAutoSelect] Script Date: 2018/12/13 19:12:12 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcSpreadKeywordAssignByAutoSelect]
- (
- @ManagerUserId INT
- )
- AS
- BEGIN
- DECLARE @k VARCHAR(20), @TargetUrl VARCHAR(50), @IsValidTime INT, @SucceedCount INT
- SELECT @k = Keyword, @TargetUrl = SubSiteUrl
- FROM MarketDb..SpreadKeywordAssign WITH(NOLOCK)
- WHERE DEPTID IN(SELECT DeptId FROM ManagerUser WITH(NOLOCK) WHERE Id = @ManagerUserId)
- AND GETDATE() BETWEEN AddDate AND EndDate
-
- IF DATEPART(HOUR, GETDATE()) BETWEEN 7 AND 17
- SET @IsValidTime = 0
- ELSE
- SET @IsValidTime = 1
- IF EXISTS(SELECT 'x' FROM Oadb..WorkDate WHERE WorkDate = CONVERT(VARCHAR(8), GETDATE(), 112) AND WorkType <> 1)
- SET @IsValidTime = 1
- IF LEN(ISNULL(@k, '')) < 2
- SET @IsValidTime = 0
- --SET @IsValidTime = 1
- SELECT @SucceedCount = COUNT(*)
- FROM MarketDb..SpreadKeywordRefererLog WITH(NOLOCK)
- WHERE AddDate > CONVERT(VARCHAR(10), GETDATE(), 120)
- AND IsValid = 1
- AND ManagerUserId = @ManagerUserId
- SELECT @IsValidTime IsValidTime, @k KeyWord, @TargetUrl TargetUrl,
- 10 ActiveTime, --运行时间
- 20 SleepTime, --间隔时间
- 5 MinClickNumber, --最小点击数
- @SucceedCount SucceedCount
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSpreadKeywordRefererLogByBaiDuSave] Script Date: 2018/12/13 19:12:12 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --sean 2014-4-3 baidu 点击自动统计,工作日19:00~7:00算业余时间 非工作日0:00~24:00, 点击到结束 超过10分钟算有效
- CREATE PROCEDURE [dbo].[ProcSpreadKeywordRefererLogByBaiDuSave]
- AS
- RETURN
- BEGIN
- SET NOCOUNT ON
- /* Add Limit Condition*/
- --IF EXISTS(SELECT 'x' FROM Oadb..WorkDate WHERE WorkDate = CONVERT(VARCHAR(8), GETDATE(), 112) AND WorkType = 1)
- -- IF DATEPART(HOUR, GETDATE()) BETWEEN 7 AND 17 -- AND 1=2
- -- RETURN
-
- --Delete the login user in 10 Minutes
- DELETE ManagerLogSnap WHERE LoginDate < DATEADD(MINUTE, -10, GETDATE())
- DELETE SynUeoLog WHERE IP IN(SELECT IP FROM Ip_White)
-
- IF(SELECT COUNT(*) FROM ManagerLogSnap) > 0 --have login user
- BEGIN
- --记录Refer的ip
- SELECT *
- INTO #R
- FROM Referer WITH(NOLOCK)
- WHERE LoginDate > DATEADD(MINUTE, -10, GETDATE())
- AND Ip IN(SELECT IP FROM ManagerLogSnap)
- AND Referer LIKE '%.baidu.%'
-
- --记录seconderer的ip
- INSERT INTO #R
- SELECT *
- FROM Seconderer WITH(NOLOCK)
- WHERE LoginDate > DATEADD(MINUTE, -10, GETDATE())
- AND Ip IN(SELECT IP FROM ManagerLogSnap)
- AND Referer LIKE '%.baidu.%'
- --登录和referer匹配
- DECLARE @t AS TABLE
- (
- ManagerUserId INT,
- VersionId INT,
- IP VARCHAR(15),
- Referer VARCHAR(200),
- RefererDate DATETIME,
- SessionId VARCHAR(30),
- Engine TINYINT,
- IsValid BIT
- )
- INSERT INTO @t
- SELECT b.ManagerId, a.VersionId, a.Ip, a.Referer, a.LoginDate RefererDate, a.SessionId, 0, 0
- FROM #r a, ManagerLogSnap b
- WHERE a.Ip = b.Ip
-
- UPDATE @t SET Engine = 1 WHERE Referer LIKE '%.baidu.%'
-
- --删除先点击后登录的
- DELETE a
- FROM @t a, Marketdb..SpreadKeywordRefererLog b
- WHERE a.Referer = b.Referer
- AND a.Ip = b.Ip
- AND a.SessionId = b.SessionId
- AND a.Engine = b.Engine
- AND b.RefererDate > DATEADD(MINUTE, -30, GETDATE())
-
- --检查关键词
- UPDATE a SET IsValid = 1
- FROM @t a, Marketdb..SpreadKeywordAssign b, ManagerUser c
- WHERE a.ManagerUserId = c.Id
- AND b.DeptId = c.DeptId
- AND b.EndDate > GETDATE()
-
- --删除不是关键词的
- DELETE @t WHERE IsValid = 0
- DELETE @t WHERE LEN(VersionId) IN(3, 5)
- UPDATE @t SET VersionId = LEFT(VersionId, 2) WHERE LEN(VersionId) = 6
-
- SELECT SessionId, Min(addDate) AddDate
- INTO #l1
- FROM SynUeoLog b
- WHERE SessionId IN(SELECT SessionId FROM @t)
- GROUP BY SessionId
- DELETE a
- FROM @t a
- WHERE EXISTS(SELECT 'x' FROM #l1 b
- WHERE a.SessionId = b.SessionId
- AND b.AddDate < DATEADD(MINUTE, -10, a.RefererDate))
- --插入refererlog
- INSERT INTO Marketdb..SpreadKeywordRefererLog(SessionId, dcSubSiteId, ManagerUserId, Engine, Keyword, Referer, RefererDate, Ip, LoginType, ViewPageNumber, AddDate)
- SELECT SessionId, VersionId, ManagerUserId, Engine, '', Referer, RefererDate, Ip, 1, 0, GETDATE()
- FROM @t
- WHERE LEN(VersionId) <= 4
- END
- --从ueolog中搜索sessionid的开始、结束时间
- SELECT SessionId, DATEADD(MINUTE, -1, AddDate) AddDate, Engine, 0 PageNumber, 0 IsValid, 0 MaxId , GETDATE() - 1 EndDate, SPACE(500) Url
- INTO #u
- FROM Marketdb..SpreadKeywordRefererLog
- WHERE AddDate > DATEADD(MINUTE, -120, GETDATE())
- UPDATE #u SET IsValid = 1 WHERE SessionId IN(SELECT SessionId FROM SynUeoLog WHERE AddDate > DATEADD(MINUTE, -2, GETDATE()))
- DELETE #u WHERE IsValid = 0
- IF (SELECT COUNT(*) FROM #u) > 0
- BEGIN
- SELECT ID, SessionId, AddDate INTO #l3 FROM SynUeoLog b WHERE SessionId IN(SELECT SessionId FROM #u)
- UPDATE #u SET PageNumber = (SELECT COUNT(*) FROM #l3 b WHERE #u.SessionId = b.SessionId AND b.AddDate > #u.AddDate)
- SELECT SessionId, MAX(Id) ID
- INTO #l2
- FROM #l3 WITH(NOLOCK)
- GROUP BY SessionId
- UPDATE a SET a.MaxId = b.Id FROM #u a, #l2 b WHERE a.SessionId = b.SessionId
- UPDATE a
- SET a.EndDate = b.AddDate,
- a.Url = b.Url
- FROM #u a, SynUeoLog b
- WHERE a.MaxId = b.Id
- END
- -- SELECT * FROM #u
- UPDATE a
- SET a.EndDate = b.EndDate,
- a.EndUrl = b.Url,
- ViewPageNumber = b.PageNumber
- FROM Marketdb..SpreadKeywordRefererLog a, #u b
- WHERE a.AddDate > DATEADD(MINUTE, -120, GETDATE())
- AND a.Engine = b.Engine
- AND a.SessionId = b.SessionId
- --记录pageminute
- UPDATE Marketdb..SpreadKeywordRefererLog
- SET PageMinute = DATEDIFF(MINUTE, RefererDate, EndDate)
- WHERE EndDate > DATEADD(MINUTE, -5, GETDATE())
- AND IsValid = 0
- --10分钟有效
- UPDATE Marketdb..SpreadKeywordRefererLog
- SET IsValid = 1
- WHERE EndDate > DATEADD(MINUTE, -5, GETDATE())
- AND IsValid = 0
- AND DATEDIFF(MINUTE, RefererDate, EndDate) >= 10
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSpreadKeywordRefererLogByFixUpdate] Script Date: 2018/12/13 19:12:13 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --sean 2015-10-28 Used by baidu click.
- CREATE PROCEDURE [dbo].[ProcSpreadKeywordRefererLogByFixUpdate]
- (
- @ManagerId INt,
- @Ip VARCHAR(15),
- @SessionId VARCHAR(30)
- )
- AS
- BEGIN
- DECLARE @LoginDate DATETIME
- SELECT TOP 1 @LoginDate = LoginDate FROM Referer WITH(NOLOCK) WHERE Ip = @Ip ORDER BY LoginDate DESC
- IF @LoginDate IS NULL
- BEGIN
- UPDATE Referer SET Ip = @ip WHERE SessionId = @SessionId AND LoginDate > DATEADD(MI, -3, GETDATE())
- SELECT TOP 1 @LoginDate = LoginDate FROM Referer WITH(NOLOCK) WHERE Ip = @Ip ORDER BY LoginDate DESC
- END
- IF @LoginDate IS NULL
- RETURN
-
- UPDATE Referer
- SET SessionId = @SessionId
- WHERE Ip = @Ip
- AND LoginDate = @LoginDate
- UPDATE MarketDb..SpreadKeywordRefererLog
- SET SessionId = @SessionId, Ip = @Ip
- WHERE ManagerUserId = @ManagerId
- --AND Ip = @Ip
- AND AddDate > DATEADD(MINUTE, -10, GETDATE())
- AND IsValid = 0
- UPDATE MainDb..ManagerLogSnap SET Ip = @Ip WHERE ManagerId = @ManagerId
- IF NOT EXISTS(SELECT 'x' FROM SynUeoLog WITH(NOLOCK) WHERE Ip = @Ip AND AddDate > DATEADD(MINUTE, -3, GETDATE()))
- BEGIN
- INSERT SynUeoLog(SubsiteId, SessionId, paMainId, caMainId, PageId, AddDate, Ip, Url, IsSpider)
- SELECT 32, @SessionId, 0, 0, 0, GETDATE(), @Ip, 'http://www.qlrc.com/', 0
- END
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSpreadKeywordRefererLogByMonthPaySelect] Script Date: 2018/12/13 19:12:13 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcSpreadKeywordRefererLogByMonthPaySelect]
- (
- @Month VARCHAR(6)
- )
- AS
- BEGIN
- DECLARE @Sd DATETIME, @Ed DATETIME
- BEGIN TRY
- SET @sd = DATEADD(MONTH, -1, CONVERT(DATETIME, @Month + '01')) + 25
- SET @Ed = DATEADD(MONTH, 1, @Sd)
- END TRY
- BEGIN CATCH
- SET @Month = CONVERT(VARCHAR(6), GETDATE(), 112)
- SET @sd = DATEADD(MONTH, -1, CONVERT(DATETIME, @Month + '01')) + 25
- SET @Ed = DATEADD(MONTH, 1, @Sd)
- END CATCH
-
- DECLARE @t AS TABLE(
- Type INT,
- DeptSuperior INT,
- DeptID INT,
- DeptName NVARCHAR(20),
- ManagerUserId INT,
- ManagerUserName NVARCHAR(10),
- ValidNumber INT,
- PayNumber INT)
-
- INSERT @t(Type, ManagerUserId, ValidNumber, PayNumber)
- SELECT 2, ManagerUserID,
- SUM(CONVERT(INT, IsValid)) ValidNumber,
- SUM(CONVERT(INT, IsMore2Valid)) PayNumber
- FROM MarketDb..SpreadKeywordRefererLog
- WHERE AddDate BETWEEN @Sd AND @ED
- GROUP BY ManagerUserID
- UPDATE a
- SET a.ManagerUserName = b.Name,
- a.DeptID = b.DeptId
- FROM @t a, ManagerUser b
- WHERE b.id = a.ManagerUserId
- INSERT @t(Type, DeptId, ValidNumber, PayNumber)
- SELECT 1, DeptId, SUM(ValidNumber), SUM(PayNumber) FROM @t GROUP BY DeptId
- UPDATE a
- SET a.DeptName = b.DeptName,
- a.DeptSuperior = b.Superior
- FROM @t a, Dept b
- WHERE b.id = a.DeptId
- UPDATE @t SET DeptSuperior = DeptId WHERE DeptSuperior = 0
- SELECT Type, DeptName, LTRIM(STR(ManagerUserId)) + ' ' + ManagerUserName ManagerUserName, ValidNumber, PayNumber FROM @t ORDER BY Type, DeptSuperior, DeptId, ManagerUserId
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSpreadKeywordRefererLogByWtgSave] Script Date: 2018/12/13 19:12:14 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --sean 2014-4-3 baidu 点击自动统计,工作日19:00~7:00算业余时间 非工作日0:00~24:00, 点击到结束 超过10分钟算有效
- CREATE PROCEDURE [dbo].[ProcSpreadKeywordRefererLogByWtgSave]
- AS
- return
- BEGIN
- SET NOCOUNT ON
- /* Add Limit Condition*/
- IF EXISTS(SELECT 'x' FROM Oadb..WorkDate WHERE WorkDate = CONVERT(VARCHAR(8), GETDATE(), 112) AND WorkType = 1)
- IF DATEPART(HOUR, GETDATE()) BETWEEN 7 AND 17 -- AND 1=2
- RETURN
-
- --Delete the login user in 10 Minutes
- DELETE ManagerLogSnap WHERE LoginDate < DATEADD(MINUTE, -10, GETDATE())
- DELETE WuTongGuoDb..SynUeoLog WHERE IP IN(SELECT IP FROM Ip_White)
-
- IF(SELECT COUNT(*) FROM ManagerLogSnap) > 0 --have login user
- BEGIN
- --记录Refer的ip
- SELECT *
- INTO #R
- FROM WuTongGuoDb..Referer WITH(NOLOCK)
- WHERE LoginDate > DATEADD(MINUTE, -10, GETDATE())
- AND Ip IN(SELECT IP FROM ManagerLogSnap)
- AND ((Keywords > '' AND (Referer LIKE '%.haosou.%' OR Referer LIKE '%.sogou.%'))
- OR Referer LIKE '%.baidu.%')
- --记录seconderer的ip
- INSERT INTO #R
- SELECT *
- FROM WuTongGuoDb..Seconderer WITH(NOLOCK)
- WHERE LoginDate > DATEADD(MINUTE, -10, GETDATE())
- AND Ip IN(SELECT IP FROM ManagerLogSnap)
- AND ((Keywords > '' AND (Referer LIKE '%.haosou.%' OR Referer LIKE '%.sogou.%'))
- OR Referer LIKE '%.baidu.%')
-
- --登录和referer匹配
- DECLARE @t AS TABLE
- (
- ManagerUserId INT,
- VersionId INT,
- IP VARCHAR(15),
- Keywords NVARCHAR(50),
- Referer VARCHAR(200),
- RefererDate DATETIME,
- SessionId VARCHAR(30),
- Engine TINYINT,
- IsValid BIT
- )
- INSERT INTO @t
- SELECT b.ManagerId, a.VersionId, a.Ip, LTRIM(RTRIM(a.Keywords)), a.Referer, a.LoginDate RefererDate, a.SessionId, 0, 0
- FROM #r a, ManagerLogSnap b
- WHERE a.Ip = b.Ip
-
- UPDATE @t SET Engine = 2 WHERE Referer LIKE '%.haosou.%'
- UPDATE @t SET Engine = 3 WHERE Referer LIKE '%.sogou.%'
- UPDATE @t SET Engine = 1 WHERE Referer LIKE '%.baidu.%'
- --删除先点击后登录的
- DELETE a
- FROM @t a, Marketdb..SpreadKeywordRefererLog b
- WHERE a.Referer = b.Referer
- AND a.Ip = b.Ip
- AND a.SessionId = b.SessionId
- AND a.Engine = b.Engine
- AND b.RefererDate > DATEADD(MINUTE, -30, GETDATE())
-
- --检查关键词
- UPDATE a SET IsValid = 1
- FROM @t a, Marketdb..SpreadKeywordAssign b, ManagerUser c
- WHERE a.ManagerUserId = c.Id
- AND a.KeyWords = b.Keyword
- AND b.DeptId = c.DeptId
- AND b.EndDate > GETDATE()
- UPDATE a SET IsValid = 1
- FROM @t a, Marketdb..SpreadKeywordAssign b, ManagerUser c
- WHERE a.ManagerUserId = c.Id
- AND a.Referer LIKE '%www.baidu.com/%'
- AND b.DeptId = c.DeptId
- AND b.EndDate > GETDATE()
-
- --删除不是关键词的
- DELETE @t WHERE IsValid = 0
- DELETE @t WHERE LEN(VersionId) IN(3, 5)
- UPDATE @t SET VersionId = LEFT(VersionId, 2) WHERE LEN(VersionId) = 6
- SELECT SessionId, Min(addDate) AddDate
- INTO #l1
- FROM WuTongGuoDb..SynUeoLog b
- WHERE SessionId IN(SELECT SessionId FROM @t)
- GROUP BY SessionId
- DELETE a
- FROM @t a
- WHERE EXISTS(SELECT 'x' FROM #l1 b
- WHERE a.SessionId = b.SessionId
- AND b.AddDate < DATEADD(MINUTE, -10, a.RefererDate))
- --插入refererlog
- INSERT INTO Marketdb..SpreadKeywordRefererLog(SessionId, dcSubSiteId, ManagerUserId, Engine, Keyword, Referer, RefererDate, Ip, LoginType, ViewPageNumber, AddDate)
- SELECT SessionId, VersionId, ManagerUserId, Engine, Keywords, Referer, RefererDate, Ip, 1, 0, GETDATE()
- FROM @t
- WHERE LEN(VersionId) <= 4
- END
- --从ueolog中搜索sessionid的开始、结束时间
- SELECT SessionId, DATEADD(MINUTE, -1, AddDate) AddDate, Engine, 0 PageNumber, 0 IsValid, 0 MaxId , GETDATE() - 1 EndDate, SPACE(500) Url
- INTO #u
- FROM Marketdb..SpreadKeywordRefererLog
- WHERE AddDate > DATEADD(MINUTE, -120, GETDATE())
- UPDATE #u SET IsValid = 1 WHERE SessionId IN(SELECT SessionId FROM WuTongGuoDb..SynUeoLog WHERE AddDate > DATEADD(MINUTE, -2, GETDATE()))
- DELETE #u WHERE IsValid = 0
- IF (SELECT COUNT(*) FROM #u) > 0
- BEGIN
- SELECT ID, SessionId, AddDate INTO #l3 FROM WuTongGuoDb..SynUeoLog b WHERE SessionId IN(SELECT SessionId FROM #u)
- UPDATE #u SET PageNumber = (SELECT COUNT(*) FROM #l3 b WHERE #u.SessionId = b.SessionId AND b.AddDate > #u.AddDate)
- SELECT SessionId, MAX(Id) ID
- INTO #l2
- FROM #l3 WITH(NOLOCK)
- GROUP BY SessionId
- UPDATE a SET a.MaxId = b.Id FROM #u a, #l2 b WHERE a.SessionId = b.SessionId
- UPDATE a
- SET a.EndDate = b.AddDate,
- a.Url = b.Url
- FROM #u a, WuTongGuoDb..SynUeoLog b
- WHERE a.MaxId = b.Id
- END
- -- SELECT * FROM #u
- UPDATE a
- SET a.EndDate = b.EndDate,
- a.EndUrl = b.Url,
- ViewPageNumber = b.PageNumber
- FROM Marketdb..SpreadKeywordRefererLog a, #u b
- WHERE a.AddDate > DATEADD(MINUTE, -120, GETDATE())
- AND a.Engine = b.Engine
- AND a.SessionId = b.SessionId
- --记录pageminute
- UPDATE Marketdb..SpreadKeywordRefererLog
- SET PageMinute = DATEDIFF(MINUTE, RefererDate, EndDate)
- WHERE EndDate > DATEADD(MINUTE, -5, GETDATE())
- AND IsValid = 0
- --10分钟有效
- UPDATE Marketdb..SpreadKeywordRefererLog
- SET IsValid = 1
- WHERE EndDate > DATEADD(MINUTE, -5, GETDATE())
- AND IsValid = 0
- AND DATEDIFF(MINUTE, RefererDate, EndDate) >= 10
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSpreadKeywordRefererLogByWtgUpdate] Script Date: 2018/12/13 19:12:14 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --sean 2014-4-3 baidu 点击自动统计,工作日19:00~7:00算业余时间 非工作日0:00~24:00, 点击到结束 超过10分钟算有效
- CREATE PROCEDURE [dbo].[ProcSpreadKeywordRefererLogByWtgUpdate]
- AS
- SET NOCOUNT ON
- return
- BEGIN
- DECLARE @Now DATETIME
- SET @Now = GETDATE() --'2014-6-15 23:58'
- IF DATEPART(HOUR, @Now) BETWEEN 7 AND 17 -- AND 1=2
- IF EXISTS(SELECT 'x' FROM Oadb..WorkDate WHERE WorkDate = CONVERT(VARCHAR(8), @Now, 112) AND WorkType = 1)
- RETURN
-
- UPDATE Marketdb..SpreadKeywordRefererLog
- SET PageMinute = DATEDIFF(MINUTE, RefererDate, EndDate)
- WHERE EndDate IS NOT NULL
- AND EndDate > DATEADD(MINUTE, -10, @Now)
- SELECT *, 0 HasDone INTO #t FROM Marketdb..SpreadKeywordRefererLog
- WHERE RefererDate > CONVERT(VARCHAR(10), @Now, 120)
- AND PageMinute >= 10 AND IsRepeat = 0
- DECLARE @id INT, @Mid INT, @RDate DATETIME, @EDate DATETIME,
- @PrevRDate DATETIME, @PrevEDate DATETIME, @Sid VARCHAR(30),
- @N INT, @Ip VARCHAR(15), @IntervalMinute INT, @Engine INT
- WHILE EXISTS(SELECT 'x' FROM #t WHERE HasDone = 0 AND EndDate > DATEADD(MINUTE, -4, @Now))
- BEGIN
- SELECT @Id = Id, @MId = ManagerUSerId, @RDate = RefererDate, @EDate = EndDate,
- @Sid = SessionId, @ip = Ip, @Engine = Engine
- FROM #t
- WHERE HasDone = 0
- ORDER BY ManagerUserId, ID
- UPDATE #t SET HasDone = 1 WHERE ID = @Id
- IF EXISTS(SELECT 'x' FROM #t WHERE SessionId = @Sid AND @ip = IP AND Id < @ID AND Engine = @Engine)
- UPDATE #t SET IsRepeat = 1 WHERE ID = @ID
- ELSE
- BEGIN
- IF EXISTS(SELECT 'x' FROM #t WHERE @ip = IP AND Id < @ID AND Engine = @Engine)
- UPDATE #t SET IsIpRepeat = 1 WHERE ID = @ID
- SET @n = 0
- SELECT TOP 1 @N = 1, @PrevRDate = RefererDate, @PrevEDate = EndDate
- FROM #t
- WHERE ID < @ID AND ManagerUserId = @Mid
- AND IsValid = 1
- AND Engine = @Engine
- --AND IntervalMinute > 19
- ORDER BY ID DESC
- IF(@n = 1)
- SET @IntervalMinute = DATEDIFF(MINUTE, @PrevEDate, @RDate)
- ELSE
- SET @IntervalMinute = 99
- UPDATE #t
- SET IntervalMinute = @IntervalMinute
- WHERE ID = @ID
- END
- END
- DELETE #t WHERE ManagerUserid NOT IN(SELECT ManagerUserId FROM #t WHERE EndDate > DATEADD(MINUTE, -5, @Now))
- UPDATE a
- SET a.TodayNumber = b.Num
- FROM #t a, (
- SELECT Id, Engine, ManagerUserId, Row_Number() OVER(Partition BY ManagerUserId, Engine ORDER BY ID) Num
- FROM #t
- WHERE PageMinute>9 AND IntervalMinute > 19 AND IsRepeat = 0 AND dcSubSiteId = 90) b
- WHERE a.Id = b.Id
- AND a.Engine = b.Engine
- UPDATE #t SET IsValid = 0
- UPDATE #t SET IsValid = 1 WHERE PageMinute > 9 AND IntervalMinute > 19 AND TodayNumber < 3
- --select * from #t where manageruserid =112 order by id desc
- /* IF EXISTS(SELECT 'x' FROM Oadb..WorkDate WHERE WorkDate = CONVERT(VARCHAR(8), @Now, 112) AND WorkType = 3)
- UPDATE #t
- SET IsMore2Valid = 1
- WHERE PageMinute > 9 AND IntervalMinute > 19 AND TodayNumber > 2
- AND DATEPART(HOUR, RefererDate) BETWEEN 7 AND 17
- AND IsIpRepeat = 0
- */
- UPDATE a
- SET a.IsRepeat = b.IsRepeat,
- a.IntervalMinute = b.IntervalMinute,
- a.IsMore2Valid = b.IsMore2Valid,
- a.TodayNumber = b.TodayNumber
- FROM Marketdb..SpreadKeywordRefererLog a, #t b
- WHERE a.Id = b.Id
- UPDATE Marketdb..SpreadKeywordRefererLog SET IsValid = 1
- WHERE TodayNumber < 3 AND IsValid = 0 AND EndDate > @Now - 0.5 AND PageMinute > 9
- AND IntervalMinute > 19 AND IsValid = 0 AND IsRepeat = 0
- UPDATE Marketdb..SpreadKeywordRefererLog SET IsValid = 0
- WHERE TodayNumber > 2 AND IsValid = 1 AND EndDate > @Now - 0.5 AND ViewPageNumber <= 1 AND IsRepeat = 1
- UPDATE Marketdb..SpreadKeywordRefererLog SET IsValid = 0
- WHERE IntervalMinute < 20 AND PageMinute > 9 AND EndDate > @Now - 0.5 AND IsValid = 1 AND IsRepeat = 1
- UPDATE Marketdb..SpreadKeywordRefererLog SET IsValid = 0 WHERE EndDate > @Now - 0.5 AND IsValid = 1 AND IsRepeat = 1
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSpreadKeywordRefererLogSave] Script Date: 2018/12/13 19:12:15 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --sean 2014-4-3 baidu 点击自动统计,工作日19:00~7:00算业余时间 非工作日0:00~24:00, 点击到结束 超过10分钟算有效
- CREATE PROCEDURE [dbo].[ProcSpreadKeywordRefererLogSave]
- AS
- --return
- BEGIN
- SET NOCOUNT ON
- /* Add Limit Condition*/
- IF EXISTS(SELECT 'x' FROM Oadb..WorkDate WHERE WorkDate = CONVERT(VARCHAR(8), GETDATE(), 112) AND WorkType = 1)
- IF DATEPART(HOUR, GETDATE()) BETWEEN 7 AND 17 -- AND 1=2
- RETURN
-
- --Delete the login user in 10 Minutes
- DELETE ManagerLogSnap WHERE LoginDate < DATEADD(MINUTE, -10, GETDATE())
- DELETE SynUeoLog WHERE IP IN(SELECT IP FROM Ip_White)
-
- IF(SELECT COUNT(*) FROM ManagerLogSnap) > 0 --have login user
- BEGIN
- --记录Refer的ip
- SELECT *
- INTO #R
- FROM Referer WITH(NOLOCK)
- WHERE LoginDate > DATEADD(MINUTE, -10, GETDATE())
- AND Ip IN(SELECT IP FROM ManagerLogSnap)
- AND ((Keywords > '' AND (Referer LIKE '%.haosou.%' OR Referer LIKE '%.sogou.%'))
- OR Referer LIKE '%.baidu.%')
- --记录seconderer的ip
- INSERT INTO #R
- SELECT *
- FROM Seconderer WITH(NOLOCK)
- WHERE LoginDate > DATEADD(MINUTE, -10, GETDATE())
- AND Ip IN(SELECT IP FROM ManagerLogSnap)
- AND ((Keywords > '' AND (Referer LIKE '%.haosou.%' OR Referer LIKE '%.sogou.%'))
- OR Referer LIKE '%.baidu.%')
-
- --登录和referer匹配
- DECLARE @t AS TABLE
- (
- ManagerUserId INT,
- VersionId INT,
- IP VARCHAR(15),
- Keywords NVARCHAR(50),
- Referer VARCHAR(200),
- RefererDate DATETIME,
- SessionId VARCHAR(30),
- Engine TINYINT,
- IsValid BIT
- )
- INSERT INTO @t
- SELECT b.ManagerId, a.VersionId, a.Ip, LTRIM(RTRIM(a.Keywords)), a.Referer, a.LoginDate RefererDate, a.SessionId, 0, 0
- FROM #r a, ManagerLogSnap b
- WHERE a.Ip = b.Ip
-
- UPDATE @t SET Engine = 2 WHERE Referer LIKE '%.haosou.%'
- UPDATE @t SET Engine = 3 WHERE Referer LIKE '%.sogou.%'
- UPDATE @t SET Engine = 1 WHERE Referer LIKE '%.baidu.%'
- --删除先点击后登录的
- DELETE a
- FROM @t a, Marketdb..SpreadKeywordRefererLog b
- WHERE a.Referer = b.Referer
- AND a.Ip = b.Ip
- AND a.SessionId = b.SessionId
- AND a.Engine = b.Engine
- AND b.RefererDate > DATEADD(MINUTE, -30, GETDATE())
-
- --检查关键词
- UPDATE a SET IsValid = 1
- FROM @t a, Marketdb..SpreadKeywordAssign b, ManagerUser c
- WHERE a.ManagerUserId = c.Id
- AND a.KeyWords = b.Keyword
- AND b.DeptId = c.DeptId
- AND b.EndDate > GETDATE()
- UPDATE a SET IsValid = 1
- FROM @t a, Marketdb..SpreadKeywordAssign b, ManagerUser c
- WHERE a.ManagerUserId = c.Id
- AND a.Referer LIKE '%www.baidu.com/%'
- AND b.DeptId = c.DeptId
- AND b.EndDate > GETDATE()
-
- --删除不是关键词的
- DELETE @t WHERE IsValid = 0
- DELETE @t WHERE LEN(VersionId) IN(3, 5)
- UPDATE @t SET VersionId = LEFT(VersionId, 2) WHERE LEN(VersionId) = 6
- SELECT SessionId, Min(addDate) AddDate
- INTO #l1
- FROM SynUeoLog b
- WHERE SessionId IN(SELECT SessionId FROM @t)
- GROUP BY SessionId
- DELETE a
- FROM @t a
- WHERE EXISTS(SELECT 'x' FROM #l1 b
- WHERE a.SessionId = b.SessionId
- AND b.AddDate < DATEADD(MINUTE, -10, a.RefererDate))
- --插入refererlog
- INSERT INTO Marketdb..SpreadKeywordRefererLog(SessionId, dcSubSiteId, ManagerUserId, Engine, Keyword, Referer, RefererDate, Ip, LoginType, ViewPageNumber, AddDate)
- SELECT SessionId, VersionId, ManagerUserId, Engine, Keywords, Referer, RefererDate, Ip, 1, 0, GETDATE()
- FROM @t
- WHERE LEN(VersionId) <= 4
- END
- --从ueolog中搜索sessionid的开始、结束时间
- SELECT SessionId, DATEADD(MINUTE, -1, AddDate) AddDate, Engine, 0 PageNumber, 0 IsValid, 0 MaxId , GETDATE() - 1 EndDate, SPACE(500) Url
- INTO #u
- FROM Marketdb..SpreadKeywordRefererLog
- WHERE AddDate > DATEADD(MINUTE, -120, GETDATE())
- UPDATE #u SET IsValid = 1 WHERE SessionId IN(SELECT SessionId FROM SynUeoLog WHERE AddDate > DATEADD(MINUTE, -2, GETDATE()))
- DELETE #u WHERE IsValid = 0
- IF (SELECT COUNT(*) FROM #u) > 0
- BEGIN
- SELECT ID, SessionId, AddDate INTO #l3 FROM SynUeoLog b WHERE SessionId IN(SELECT SessionId FROM #u)
- UPDATE #u SET PageNumber = (SELECT COUNT(*) FROM #l3 b WHERE #u.SessionId = b.SessionId AND b.AddDate > #u.AddDate)
- SELECT SessionId, MAX(Id) ID
- INTO #l2
- FROM #l3 WITH(NOLOCK)
- GROUP BY SessionId
- UPDATE a SET a.MaxId = b.Id FROM #u a, #l2 b WHERE a.SessionId = b.SessionId
- UPDATE a
- SET a.EndDate = b.AddDate,
- a.Url = b.Url
- FROM #u a, SynUeoLog b
- WHERE a.MaxId = b.Id
- END
- -- SELECT * FROM #u
- UPDATE a
- SET a.EndDate = b.EndDate,
- a.EndUrl = b.Url,
- ViewPageNumber = b.PageNumber
- FROM Marketdb..SpreadKeywordRefererLog a, #u b
- WHERE a.AddDate > DATEADD(MINUTE, -120, GETDATE())
- AND a.Engine = b.Engine
- AND a.SessionId = b.SessionId
- --记录pageminute
- UPDATE Marketdb..SpreadKeywordRefererLog
- SET PageMinute = DATEDIFF(MINUTE, RefererDate, EndDate)
- WHERE EndDate > DATEADD(MINUTE, -5, GETDATE())
- AND IsValid = 0
- --10分钟有效
- UPDATE Marketdb..SpreadKeywordRefererLog
- SET IsValid = 1
- WHERE EndDate > DATEADD(MINUTE, -5, GETDATE())
- AND IsValid = 0
- AND DATEDIFF(MINUTE, RefererDate, EndDate) >= 10
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSpreadKeywordRefererLogUpdate] Script Date: 2018/12/13 19:12:15 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --sean 2014-4-3 baidu 点击自动统计,工作日19:00~7:00算业余时间 非工作日0:00~24:00, 点击到结束 超过10分钟算有效
- CREATE PROCEDURE [dbo].[ProcSpreadKeywordRefererLogUpdate]
- AS
- --return
- SET NOCOUNT ON
- BEGIN
- DECLARE @Now DATETIME
- SET @Now = GETDATE() --'2014-6-15 23:58'
- IF DATEPART(HOUR, @Now) BETWEEN 7 AND 17 -- AND 1=2
- IF EXISTS(SELECT 'x' FROM Oadb..WorkDate WHERE WorkDate = CONVERT(VARCHAR(8), @Now, 112) AND WorkType = 1)
- RETURN
-
- UPDATE Marketdb..SpreadKeywordRefererLog
- SET PageMinute = DATEDIFF(MINUTE, RefererDate, EndDate)
- WHERE EndDate IS NOT NULL
- AND EndDate > DATEADD(MINUTE, -10, @Now)
- SELECT *, 0 HasDone INTO #t FROM Marketdb..SpreadKeywordRefererLog
- WHERE RefererDate > CONVERT(VARCHAR(10), @Now, 120)
- AND PageMinute >= 10 AND IsRepeat = 0
- DECLARE @id INT, @Mid INT, @RDate DATETIME, @EDate DATETIME,
- @PrevRDate DATETIME, @PrevEDate DATETIME, @Sid VARCHAR(30),
- @N INT, @Ip VARCHAR(15), @IntervalMinute INT, @Engine INT
- WHILE EXISTS(SELECT 'x' FROM #t WHERE HasDone = 0 AND EndDate > DATEADD(MINUTE, -4, @Now))
- BEGIN
- SELECT @Id = Id, @MId = ManagerUSerId, @RDate = RefererDate, @EDate = EndDate,
- @Sid = SessionId, @ip = Ip, @Engine = Engine
- FROM #t
- WHERE HasDone = 0
- ORDER BY ManagerUserId, ID
- UPDATE #t SET HasDone = 1 WHERE ID = @Id
- IF EXISTS(SELECT 'x' FROM #t WHERE SessionId = @Sid AND @ip = IP AND Id < @ID AND Engine = @Engine)
- UPDATE #t SET IsRepeat = 1 WHERE ID = @ID
- ELSE
- BEGIN
- IF EXISTS(SELECT 'x' FROM #t WHERE @ip = IP AND Id < @ID AND Engine = @Engine)
- UPDATE #t SET IsIpRepeat = 1 WHERE ID = @ID
- SET @n = 0
- SELECT TOP 1 @N = 1, @PrevRDate = RefererDate, @PrevEDate = EndDate
- FROM #t
- WHERE ID < @ID AND ManagerUserId = @Mid
- AND IsValid = 1
- AND Engine = @Engine
- AND IntervalMinute > 19
- ORDER BY ID DESC
- IF(@n = 1)
- SET @IntervalMinute = DATEDIFF(MINUTE, @PrevEDate, @RDate)
- ELSE
- SET @IntervalMinute = 99
- UPDATE #t
- SET IntervalMinute = @IntervalMinute
- WHERE ID = @ID
- END
- END
- DELETE #t WHERE ManagerUserid NOT IN(SELECT ManagerUserId FROM #t WHERE EndDate > DATEADD(MINUTE, -5, @Now))
- UPDATE a
- SET a.TodayNumber = b.Num
- FROM #t a, (
- SELECT Id, Engine, ManagerUserId, Row_Number() OVER(Partition BY ManagerUserId, Engine ORDER BY ID) Num
- FROM #t
- WHERE PageMinute>9 AND IntervalMinute > 19 AND IsRepeat = 0) b
- WHERE a.Id = b.Id
- AND a.Engine = b.Engine
- UPDATE #t SET IsValid = 0
- UPDATE #t SET IsValid = 1 WHERE PageMinute > 9 AND IntervalMinute > 19 AND TodayNumber < 3
- --select * from #t where manageruserid =112 order by id desc
- /* IF EXISTS(SELECT 'x' FROM Oadb..WorkDate WHERE WorkDate = CONVERT(VARCHAR(8), @Now, 112) AND WorkType = 3)
- UPDATE #t
- SET IsMore2Valid = 1
- WHERE PageMinute > 9 AND IntervalMinute > 19 AND TodayNumber > 2
- AND DATEPART(HOUR, RefererDate) BETWEEN 7 AND 17
- AND IsIpRepeat = 0
- */
- UPDATE a
- SET a.IsRepeat = b.IsRepeat,
- a.IntervalMinute = b.IntervalMinute,
- a.IsMore2Valid = b.IsMore2Valid,
- a.TodayNumber = b.TodayNumber
- FROM Marketdb..SpreadKeywordRefererLog a, #t b
- WHERE a.Id = b.Id
- UPDATE Marketdb..SpreadKeywordRefererLog SET IsValid = 1
- WHERE TodayNumber < 3 AND IsValid = 0 AND EndDate > @Now - 0.5 AND PageMinute > 9
- AND IntervalMinute > 19 AND IsValid = 0 AND IsRepeat = 0
- UPDATE Marketdb..SpreadKeywordRefererLog SET IsValid = 0
- WHERE TodayNumber > 2 AND IsValid = 1 AND EndDate > @Now - 0.5 AND ViewPageNumber <= 1 AND IsRepeat = 1
- UPDATE Marketdb..SpreadKeywordRefererLog SET IsValid = 0
- WHERE IntervalMinute < 20 AND PageMinute > 9 AND EndDate > @Now - 0.5 AND IsValid = 1 AND IsRepeat = 1
- UPDATE Marketdb..SpreadKeywordRefererLog SET IsValid = 0 WHERE EndDate > @Now - 0.5 AND IsValid = 1 AND IsRepeat = 1
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSpreadLoginLogIdByIpSelect] Script Date: 2018/12/13 19:12:15 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.28
- --创建人:John
- --说明:推广部百度点击相关, 获取当前ip是否是内部员工点击的
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcSpreadLoginLogIdByIpSelect]
- (
- @ip VARCHAR(15)
- )
- AS
- BEGIN
- SELECT TOP 1 Id
- FROM SpreadLoginLogsnap
- WHERE Ip = @ip
- ORDER BY AddDate DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSpreadLoginLogSnapByIpSelect] Script Date: 2018/12/13 19:12:15 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.28
- --创建人:John
- --说明:推广部百度点击相关, 获取当前ip是否是内部员工点击的
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcSpreadLoginLogSnapByIpSelect]
- (
- @ip VARCHAR(15)
- )
- AS
- BEGIN
- SELECT TOP 1 Id, ManagerUserId, Ip, Cookies, AddDate, LoginNumber, Keyword --LEFT(Keyword, 4) Keyword
- FROM SpreadLoginLogsnap
- WHERE Ip = @ip
- ORDER BY AddDate DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSpreadRefererLogBySpreadLoginLogIdUpdate] Script Date: 2018/12/13 19:12:15 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- /*
- sean 2014-6-19 used by spread
- spreader visstt page
- */
- CREATE PROCEDURE [dbo].[ProcSpreadRefererLogBySpreadLoginLogIdUpdate]
- (
- @SpreadLoginLogId varchar(8),
- @EndUrl varchar(200),
- @VisitType INT
- )
- AS
- BEGIN
- UPDATE SpreadRefererLog
- SET EndUrl = @EndUrl, EndDate = GETDATE(), PageMinute = DATEDIFF(MINUTE, RefererDate, GETDATE())
- WHERE SpreadLoginLogId = @SpreadLoginLogId
- AND VisitType = @VisitType
- AND RefererDate > DATEADD(MINUTE, -100, GETDATE())
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSpreadRefererLogInsert] Script Date: 2018/12/13 19:12:16 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- /*
- sean 2014-6-19 used by spread
- spreader first visst first page
- Updated by sean,at 2014-7-7. Can't more than 2 in one day. Can't be office ip
- */
- CREATE PROCEDURE [dbo].[ProcSpreadRefererLogInsert]
- (
- @SpreadLoginLogId int,
- @dcSubSiteId smallint,
- @Keyword nvarchar(50),
- @Referer varchar(200),
- @SessionID varchar(30),
- @BeginUrl varchar(200),
- @VisitType TINYINT
- )
- AS
- SET NOCOUNT ON
- --INSERT INTO a2 SELECT @SpreadLoginLogId, @dcSubSiteId, @Keyword, @Referer, @SessionID, @BeginUrl, @VisitType, GETDATE()
- BEGIN
- --IF(@VisitType = 1)
- -- RETURN
- IF EXISTS(SELECT 'x' FROM SpreadRefererLog WHERE SessionId = @SessionId)
- RETURN 1
- IF EXISTS(SELECT 'x' FROM SpreadRefererLog
- WHERE SpreadLoginLogId = @SpreadLoginLogId
- AND VisitType = @VisitType)
- RETURN 2
- INSERT INTO SpreadRefererLog(SpreadLoginLogId, dcSubSiteId, Keyword,
- Referer, RefererDate, SessionID, BeginUrl, EndUrl, EndDate,
- PageMinute, VisitType)
- SELECT @SpreadLoginLogId, @dcSubSiteId, @Keyword,
- @Referer, GETDATE(), @SessionID, @BeginUrl, @BeginUrl, GETDATE(),
- 0, @VisitType
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSpreadRefererLogUpdate] Script Date: 2018/12/13 19:12:16 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- /*
- sean 2014-6-19 used by spread
- spreader visstt page
- */
- CREATE PROCEDURE [dbo].[ProcSpreadRefererLogUpdate]
- (
- @SessionID varchar(30),
- @EndUrl varchar(200)
- )
- AS
- BEGIN
- UPDATE SpreadRefererLog
- SET EndUrl = @EndUrl, EndDate = GETDATE(), PageMinute = DATEDIFF(MINUTE, RefererDate, GETDATE())
- WHERE SessionId = @SessionId
- AND RefererDate > DATEADD(MINUTE, -100, GETDATE())
- END
- GO
- /****** Object: StoredProcedure [dbo].[procSubSiteByAllSelect] Script Date: 2018/12/13 19:12:17 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[procSubSiteByAllSelect]
- AS
- BEGIN
- SELECT
- a.*,
- b.ProvinceName,
- b.WebsiteName,
- b.ProvinceDomain,
- b.SouthNorth,
- b.AssignConsultant,
- b.AdRemarks,
- (SELECT TOP 1 Keyword FROM Logdb..SpreadKeywordAssign c WITH(NOLOCK)
- WHERE c.dcSubSiteId = a.Id AND c.IsValid = 1) SpreadKeyword
- FROM dcSubSite a WITH(NOLOCK)
- INNER JOIN dcProvince b WITH(NOLOCK) ON a.ProvinceId= b.ID
- ORDER BY ProvinceId, ID
- END
- GO
- /****** Object: StoredProcedure [dbo].[procSubSiteByMainSiteSelect] Script Date: 2018/12/13 19:12:17 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[procSubSiteByMainSiteSelect]
- AS
- BEGIN
- SELECT
- a.*,
- b.ProvinceName,
- b.WebsiteName,
- b.ProvinceDomain,
- b.SouthNorth,
- b.AssignConsultant,
- b.AdRemarks,
- (SELECT TOP 1 Keyword FROM Logdb..SpreadKeywordAssign c WITH(NOLOCK)
- WHERE LEFT(c.dcSubSiteId, 2) = a.Id AND c.IsValid = 1) SpreadKeyword
- FROM dcSubSite a WITH(NOLOCK)
- INNER JOIN dcProvince b WITH(NOLOCK) ON a.ProvinceId= b.ID
- WHERE a.IsMainSite = 1
- ORDER BY ProvinceId, ID
- END
- GO
- /****** Object: StoredProcedure [dbo].[procSubsiteByProvinceIDSelect] Script Date: 2018/12/13 19:12:17 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --创建人 Lambo 20101018
- --用于首页根据省份编号查询改省的所有的地区
- CREATE PROCEDURE [dbo].[procSubsiteByProvinceIDSelect]
- (
- @provinceId INT
- )
- AS
- BEGIN
- SELECT id,SubsiteCity,SubsiteUrl
- FROM dcSubsite WITH(NOLOCK)
- WHERE provinceId = @provinceId
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSubSiteByUrlSelect] Script Date: 2018/12/13 19:12:18 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.28
- --创建人:John
- --说明:获取网站站点数据
- --@subSiteUrl 网站Url
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcSubSiteByUrlSelect]
- (
- @subSiteUrl VARCHAR(50)
- )
- AS
- BEGIN TRY
- SELECT id, SubSiteName WebSite, Replace(SubSiteUrl, 'www.', '') Domain
- FROM dcSubSite WITH(NOLOCK)
- WHERE SubSiteUrl = @subSiteUrl
- END TRY
- BEGIN CATCH
- RETURN 0
- END CATCH
- GO
- /****** Object: StoredProcedure [dbo].[procSubSiteSelect] Script Date: 2018/12/13 19:12:18 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[procSubSiteSelect]
- (
- @SubSiteUrl VARCHAR(50)
- )
- AS
- BEGIN
- IF EXISTS(SELECT 'x' FROM dcSubSite WITH(NOLOCK) WHERE SubSiteUrl LIKE @SubSiteUrl)
- SELECT
- a.*,
- b.ProvinceName,
- b.WebsiteName,
- b.ProvinceDomain,
- b.SouthNorth,
- b.AssignConsultant,
- b.AdRemarks
- FROM dcSubSite a WITH(NOLOCK)
- INNER JOIN dcProvince b WITH(NOLOCK) ON a.ProvinceId= b.ID
- WHERE a.SubSiteUrl = @SubSiteUrl
- ELSE
- BEGIN
- DECLARE @Url AS VARCHAR(50)
- IF CHARINDEX('/', @SubSiteUrl) = 0
- BEGIN
- SELECT TOP 0 'x'
- RETURN
- END
- SELECT @Url = LEFT(@SubSiteUrl, CHARINDEX('/', @SubSiteUrl) - 1)
- SELECT
- a.*,
- b.ProvinceName,
- b.WebsiteName,
- b.ProvinceDomain,
- b.SouthNorth,
- b.AssignConsultant,
- b.AdRemarks
- FROM dcSubSite a WITH(NOLOCK)
- INNER JOIN dcProvince b WITH(NOLOCK) ON a.ProvinceId = b.ID
- WHERE a.SubSiteUrl = @Url
- END
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcSynbsAskInfoClickNumberSelect] Script Date: 2018/12/13 19:12:18 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.28
- --创建人:Nick
- --说明:得到最新求职互助问题
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcSynbsAskInfoClickNumberSelect]
- (
- @ProvinceID INT,
- @SubSiteID INT
- )
- AS
- BEGIN TRY
- SELECT ID,Title
- FROM SynbsAskInfoClickNumber WITH(NOLOCK)
- WHERE ProvinceId = @ProvinceID
- ORDER BY ClickNumber DESC
- END TRY
- BEGIN CATCH
- RETURN 0
- END CATCH
- GO
- /****** Object: StoredProcedure [dbo].[procSynUeoLogInsert] Script Date: 2018/12/13 19:12:18 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[procSynUeoLogInsert]
- (
- @SessionId VARCHAR(50),
- @paMainId INT,
- @caMainId INT,
- @PageId INT,
- @SubSiteId int
- )
- AS
- RETURN
- SET NOCOUNT ON
- IF @SubSiteId = 9
- RETURN
- BEGIN
- INSERT LogDb..UeoLog(SessionId, paMainId, caMainId, PageId, SubSiteId)
- SELECT @SessionId, @paMainId, @caMainId, @PageId, @SubSiteId
- END
- GO
- /****** Object: StoredProcedure [dbo].[procSynUeoLogInsertNew] Script Date: 2018/12/13 19:12:18 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[procSynUeoLogInsertNew]
- (
- @SessionId VARCHAR(50),
- @paMainId INT,
- @caMainId INT,
- @PageId INT,
- @SubSiteId INT,
- @IP VARCHAR(20),
- @Url VARCHAR(200),
- @IsSpider BIT
- )
- AS
- RETURN
- SET NOCOUNT ON
- IF @SubSiteId = 9
- RETURN
- BEGIN
- INSERT LogDb..UeoLog(SessionId, paMainId, caMainId, PageId, SubSiteId, IP, Url, IsSpider)
- SELECT @SessionId, @paMainId, @caMainId, @PageId, @SubSiteId, @IP, @Url, @IsSpider
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcTelAreaSelect] Script Date: 2018/12/13 19:12:19 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.31
- --创建人:John
- --说明:获取座机所在的省份城市
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcTelAreaSelect]
- (
- @telNo INT
- )
- AS
- BEGIN
- SELECT TOP 1 Province, City FROM dcTelArea WITH(NOLOCK) WHERE AreaNo = @telNo
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcTmpWsLogInsert] Script Date: 2018/12/13 19:12:19 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcTmpWsLogInsert]
- (
- @Ip varchar(15),
- @PageId INT,
- @Para VARCHAR(100)
- )
- AS
- SET NOCOUNT ON
- BEGIN
- INSERT INTO tmpWSLog(ip, PageId, AddDate,para) SELECT @Ip, @PageID, GETDATE(),@Para
- RETURN @@IDENTITY
- END
- GO
- /****** Object: StoredProcedure [dbo].[procToolRunLogUpdate] Script Date: 2018/12/13 19:12:19 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[procToolRunLogUpdate]
- AS
- truncate table toolrunlog
- return
- BEGIN
- DELETE FROM ToolRunLog WHERE RunStatus=1 AND ID IN(
- SELECT ID FROM(
- SELECT row_number() OVER (PARTITION BY ToolType ORDER BY AddDate DESC) TypeRow,ID
- FROM ToolRunLog
- WHERE RunStatus=1
- ) t WHERE TypeRow > 1000
- )
- DELETE FROM ToolRunLog WHERE RunStatus = 0 AND ID IN(
- SELECT ID FROM(
- SELECT row_number() OVER (PARTITION BY ToolType ORDER BY AddDate DESC) TypeRow,ID
- FROM ToolRunLog
- WHERE RunStatus=0
- ) t WHERE TypeRow > 2000
- )
- INSERT INTO RtxNotifyLog(Receiver,RtxTitle,RtxMessage)
- SELECT '112,116', '服务未未运行提醒', ToolType
- FROM (
- SELECT CASE ToolType
- WHEN 1 THEN 'RTX发送'
- WHEN 2 THEN '短信发送'
- WHEN 3 THEN '文件监视'
- WHEN 4 THEN '文件更新'
- WHEN 5 THEN '传真发送'
- WHEN 6 THEN 'RTX状态检测'
- WHEN 7 THEN 'RTX消息检测'
- WHEN 8 THEN '百度收录'
- ELSE ''
- END + '服务已经30分钟没有运行了,请及时查找原因' ToolType,
- MAX(EndTime) EndTime
- FROM ToolRunLog
- GROUP BY ToolType) a
- WHERE DATEDIFF(MINUTE, EndTime, GETDATE()) > 30
-
- INSERT INTO RtxNotifyLog(Receiver,RtxTitle,RtxMessage)
- SELECT '112,116','服务异常提醒', ToolType
- FROM (
- SELECT CASE ToolType
- WHEN 1 THEN 'RTX发送'
- WHEN 2 THEN '短信发送'
- WHEN 3 THEN '文件监视'
- WHEN 4 THEN '文件更新'
- WHEN 5 THEN '传真发送'
- WHEN 6 THEN 'RTX状态检测'
- WHEN 7 THEN 'RTX消息检测'
- WHEN 8 THEN '邮件发送'
- ELSE ''
- END + '服务已经30分钟内运行失败超过3次了,请及时查找原因' ToolType,
- MAX(EndTime) EndTime
- FROM ToolRunLog
- WHERE DATEDIFF(MINUTE, EndTime, GETDATE()) < 30
- AND RunStatus = 0
- GROUP BY ToolType
- HAVING COUNT(1) >= 3) a
- DELETE ToolRunLog WHERE AddDate < GETDATE() - 1
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcTop10SalaryByJobTypeSelect] Script Date: 2018/12/13 19:12:19 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.3
- --创建人:John
- --说明:根据JobType 获取该职位全国各地区排行 从高到低
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcTop10SalaryByJobTypeSelect]
- (
- @dcJobTypeID SMALLINT
- )
- AS
- BEGIN
- SELECT TOP 10 a.dcJobTypeID,a.AvgSalary,b.FullName RegionName
- FROM reportdb..SalaryReportJobtype a LEFT JOIN dcRegion b ON b.id = a.dcRegionID
- WHERE dcJobTypeid = @dcJobTypeID
- ORDER BY AvgSalary DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcTopicNewsSelect] Script Date: 2018/12/13 19:12:20 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcTopicNewsSelect]
- (
- @ProvinceId INT
- )
- AS
- BEGIN
- SELECT * FROM ShortDb..TopicNews WHERE ProvinceId = @ProvinceId
- END
- GO
- /****** Object: StoredProcedure [dbo].[procTopics100ByTypeSelect] Script Date: 2018/12/13 19:12:20 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.5
- --创建人:NICK
- --说明:根据类别获取经常专题
- --#####################################################
- CREATE PROCEDURE [dbo].[procTopics100ByTypeSelect]
- (
- @Type INT
- )
- AS
- BEGIN
- IF @Type = 1
- BEGIN
- SELECT TOP 100 * FROM Topics WITH(NOLOCK) WHERE type=1 AND ID >= 199 ORDER BY adddate DESC
- END
- ELSE
- BEGIN
- SELECT TOP 100 * FROM Topics WITH(NOLOCK) WHERE type=2 AND ID >= 199 ORDER BY adddate DESC
- END
- END
- GO
- /****** Object: StoredProcedure [dbo].[procTopics10Select] Script Date: 2018/12/13 19:12:20 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.5
- --创建人:NICK
- --说明:精彩专题
- --#####################################################
- CREATE PROCEDURE [dbo].[procTopics10Select]
- AS
- BEGIN
- SELECT TOP 10 * FROM Topics WITH(NOLOCK) WHERE ID >= 199 ORDER BY adddate DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[procTopics20Select] Script Date: 2018/12/13 19:12:20 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.5
- --创建人:NICK
- --说明:精彩專題
- --#####################################################
- CREATE PROCEDURE [dbo].[procTopics20Select]
- AS
- BEGIN
- SELECT TOP 20 * FROM Topics WITH(NOLOCK) WHERE ID >= 199 ORDER BY adddate DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcTopicsByTypeIDSelect] Script Date: 2018/12/13 19:12:21 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.28
- --创建人:Nick
- --说明:
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcTopicsByTypeIDSelect]
- @TypeID VARCHAR(10)
- AS
- BEGIN TRY
- IF @TypeID = '1'
- BEGIN
- SELECT TOP 100 *
- FROM Topics WITH(NOLOCK)
- WHERE TYPE=1
- AND ID >= 199
- ORDER BY AddDate DESC
- END
- ELSE IF @TypeID = '2'
- BEGIN
- SELECT TOP 100 *
- FROM Topics WITH(NOLOCK)
- WHERE TYPE=1
- AND ID >= 199
- ORDER BY AddDate DESC
- END
- ELSE
- BEGIN
- SELECT TOP 100 *
- FROM Topics WITH(NOLOCK)
- WHERE ID >= 199
- ORDER BY AddDate DESC
- END
- END TRY
- BEGIN CATCH
- RETURN 0
- END CATCH
- GO
- /****** Object: StoredProcedure [dbo].[procTopicsByTypeSelect] Script Date: 2018/12/13 19:12:21 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.5
- --创建人:NICK
- --说明:根据类别获取经常专题
- --#####################################################
- CREATE PROCEDURE [dbo].[procTopicsByTypeSelect]
- (
- @Type INT
- )
- AS
- BEGIN
- IF @Type = 1
- BEGIN
- SELECT TOP 100 * FROM Topics WITH(NOLOCK) WHERE type=1 AND ID >= 199ORDER BY adddate DESC
- END
- ELSE IF @Type = 2
- BEGIN
- SELECT TOP 100 * FROM Topics WITH(NOLOCK) WHERE type=2 AND ID >= 199 ORDER BY adddate DESC
- END
- ELSE
- BEGIN
- SELECT TOP 100 * FROM Topics WITH(NOLOCK) WHERE ID >= 199ORDER BY adddate DESC
- END
- END
- GO
- /****** Object: StoredProcedure [dbo].[procTopicsOneSelect] Script Date: 2018/12/13 19:12:21 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.5
- --创建人:NICK
- --说明:获取最新的一条精彩专题
- --#####################################################
- CREATE PROCEDURE [dbo].[procTopicsOneSelect]
- AS
- BEGIN
- SELECT TOP 1 * FROM Topics WITH(NOLOCK) WHERE ID >= 199 ORDER BY AddDate DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcTrdLoginPaMainSelect] Script Date: 2018/12/13 19:12:22 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.4
- --创建人:John
- --说明:获取第三方登录的用户信息
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcTrdLoginPaMainSelect]
- (
- @contactType TINYINT,
- @Openid VARCHAR(100)
- )
- AS
- BEGIN
- SELECT TOP 1 b.ID,b.UserName,b.PassWord
- FROM paLoginContact a WITH(NOLOCK), paMain b WITH(NOLOCK)
- WHERE contacttype = @contactType
- AND a.paMainID = b.ID
- AND a.OpenID = @Openid
- AND a.OpenID > ''
- ORDER BY a.AddDate DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[procttttttt] Script Date: 2018/12/13 19:12:22 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE procedure [dbo].[procttttttt]
- as
- begin
- delete from exinterview where cvmainid=26171884
- declare @JobID INT,
- @cpMainID INT,
- @cvMainID INT,
- @InterviewDate VARCHAR(100),
- @InterViewPlace VARCHAR(200),
- @LinkMan VARCHAR(12),
- @Telephone VARCHAR(20),
- @Remark VARCHAR(1000)
- SELECT @JobID = 5338885, @cpMainID = 10025728, @cvMainID=26171884,
- @InterviewDate = '9:00-17:00', @InterViewPlace = '济南高新区舜风路齐鲁文化创意基地12号楼3单元西一层',
- @LinkMan ='靳总', @Telephone='18654514030', @Remark='携带个人简历'
- SET NOCOUNT ON
- DECLARE @InterviewPoint INT --直接发送面试通知 赠送积分
- DECLARE @ReplyInterviewPoint INT --答复后 发送面试通知 赠送积分
- SET @InterviewPoint = 7
- SET @ReplyInterviewPoint = 2
- DECLARE @caMainID INT, @paMainId INT, @ExInterViewID INT, @wxFansId INT, @MsgCount INT
- SELECT @caMainID = caMainId FROM Job WITH(NOLOCK) WHERE ID = @JobID AND cpMainID = @cpMainID
- IF ISNULL(@caMainID, 0) = 0
- RETURN -1
- SELECT @Remark = dbo.TrimNull(@Remark),
- @InterviewDate = dbo.Trim(@InterviewDate),
- @InterViewPlace = dbo.Trim(@InterViewPlace),
- @Telephone = dbo.Trim(@Telephone)
- INSERT INTO ExInterView(JobID, cvMainID, InterviewDate, InterViewPlace, LinkMan, Telephone, Remark)
- VALUES(@JobID, @cvMainID, @InterviewDate, @InterViewPlace, @LinkMan, @Telephone, @Remark)
- SET @ExInterViewID = @@IDENTITY
- print @ExInterViewID
- --未答复的修改答复状态
- UPDATE exJobApply SET Reply =1 WHERE JobID = @JobID AND CvMainID = @cvMainID
- BEGIN TRY
- SELECT @paMainId = paMainId FROM cvMain WITH(NOLOCK) WHERE Id = @cvMainId
- SELECT @wxFansId = id FROM wxFans WITH(NOLOCK) WHERE paMainId = @paMainId AND [Status] = 2
- IF @wxFansId IS NULL
- BEGIN
- print 'is null'
- SELECT @MsgCount = SUM(smsNumber) FROM ExInterView WITH(NOLOCK)
- WHERE JobId IN(SELECT ID FROM Job WITH(NOLOCK) WHERE cpMainId = @cpMainID)
- AND AddDate > CONVERT(VARCHAR(10), GETDATE() - 29, 120)
-
- IF @MsgCount < 30
- BEGIN
- print '< 30'
- INSERT SmsMessageLog(SendMan, ManagerUSerId, paMainId, caMainId, Mobile, MsgType, IsCat, Msg)
- SELECT 0, NULL, b.ID, @caMainID, b.Mobile, 101, 0,
- ISNULL(b.Name,'') +','+ d.Name +'在'+ c.SubSiteName + c.EmailSite +'上邀请您面试,请登录网站查看'
- FROM cvMain a WITH(NOLOCK), paMain b WITH(NOLOCK), dcSubSite c WITH(NOLOCK),cpMain d WITH(NOLOCK)
- WHERE a.paMainID = b.ID
- AND b.dcSubSiteID = c.ID
- AND d.ID = @cpMainID
- AND b.Mobile > ''
- AND a.ID = @cvMainID
- AND b.IsReceiveSms = 1
- print'
- INSERT SmsMessageLog(SendMan, ManagerUSerId, paMainId, caMainId, Mobile, MsgType, IsCat, Msg)
- SELECT 0, NULL, b.ID, ' + ltrim(str(@caMainID)) + ', b.Mobile, 101, 0,
- ISNULL(b.Name,'''') + '','' + d.Name + ''在'' + c.SubSiteName + c.EmailSite +''上邀请您面试,请登录网站查看''
- FROM cvMain a WITH(NOLOCK), paMain b WITH(NOLOCK), dcSubSite c WITH(NOLOCK),cpMain d WITH(NOLOCK)
- WHERE a.paMainID = b.ID
- AND b.dcSubSiteID = c.ID
- AND d.ID = ' + ltrim(str(@cpMainID)) + '
- AND b.Mobile > ''''
- AND a.ID = ' + ltrim(str(@cvMainID)) + '
- AND b.IsReceiveSms = 1
- '
- UPDATE ExInterView SET SmsNumber = ISNULL(SmsNumber, 0) + 1 WHERE ID = @ExInterViewID
- END
- END
- ELSE --关注的用户发送微信消息提醒
- BEGIN
- --插入到wxMessageSend表中
- INSERT WxMessageSend2(Templatetype, WxFansID, PaMainId, MainTableId, CpMainID, CvMainID, JobId, CaMainId, AddDate)
- SELECT 1, @wxFansId, @paMainId, @ExInterViewID, @cpMainId, @cvMainID, @JobId, @caMainID, GETDATE()
- END
-
- INSERT INTO paPushLog(paMainID, PushMessage, PushType)
- SELECT @paMainId, '亲,收到一份面试通知!', 2 WHERE EXISTS(SELECT 'X' FROM paIOSBind WHERE paMainID = @paMainId)
- END TRY
- BEGIN CATCH
- END CATCH
-
- --插入积分记录
- BEGIN TRY
- --插入积分记录
- DECLARE @TodayPoint AS INT
- DECLARE @TodayID AS INT
- SET @TodayPoint = 0
- SET @TodayID = 0
- SELECT TOP 1 @TodayPoint = ISNULL(Point,0),@TodayID = ISNULL(ID,0) FROM cpPoint WITH(NOLOCK) WHERE changeID = 4 AND LastModifyDate > CONVERT(VARCHAR(10), GETDATE(),120) AND cpMainID = @cpMainID
-
- --判断是否是应聘的简历
- DECLARE @JobApplyID INT,@Reply INT
- SELECT @JobApplyID = 0,@Reply = 0
- SELECT @JobApplyID = ID,@Reply = Reply
- FROM ExJobApply WITH(NOLOCK)
- WHERE JobID = @JobID
- AND CvMainID = @cvMainID
- IF @JobApplyID = 0 --未应聘
- BEGIN
- SET @TodayPoint = @ReplyInterviewPoint
- END
- ELSE
- BEGIN
- IF @Reply = 0
- BEGIN
- UPDATE ExJobApply
- SET Reply = 1
- WHERE ID = @JobApplyID
- SET @TodayPoint = @InterviewPoint
- END
- ELSE
- BEGIN
- SET @TodayPoint = @ReplyInterviewPoint
- END
- END
- SET @TodayPoint = @TodayPoint + @ReplyInterviewPoint
-
- IF @TodayPoint <= 50
- BEGIN
- IF @TodayID = 0
- BEGIN
- INSERT INTO cpPoint (cpMainID,ChangeID,Point,LastModifyDate) VALUES(@cpMainID,4,@TodayPoint,GETDATE())
- END
- ELSE
- BEGIN
- UPDATE cpPoint SET Point = Point + @TodayPoint,LastModifyDate = GETDATE() WHERE ID = @TodayID
- END
- END
-
- END TRY
- BEGIN CATCH
- END CATCH
-
- print ISNULL(@MsgCount, 0)
- end
- GO
- /****** Object: StoredProcedure [dbo].[ProcUeoLogByOverViewSelect] Script Date: 2018/12/13 19:12:22 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcUeoLogByOverViewSelect]
- (
- @IP VARCHAR(39),
- @PageID INT
- )
- AS
- SET NOCOUNT ON
- IF EXISTS(SELECT TOP 1 'X' FROM logDb..UeoLogShort
- WHERE PageID = @PageID
- AND IP = @IP)
- RETURN 1
- ELSE
- RETURN 0
- SET NOCOUNT OFF
- GO
- /****** Object: StoredProcedure [dbo].[procUeoLogShortInsert] Script Date: 2018/12/13 19:12:23 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[procUeoLogShortInsert]
- AS
- SET NOCOUNT ON
- BEGIN
- TRUNCATE TABLE LogDb..UeoLogShort
- INSERT INTO LogDb..UeoLogShort
- SELECT IP, PageID, COUNT(1)
- FROM logdb..UeoLog WITH(NOLOCK)
- WHERE AddDate > DATEADD(mi, -10, GETDATE())
- AND HasChecked = 0
- GROUP BY IP, PageID
- HAVING COUNT(1) > 5
- END
- SET NOCOUNT OFF
- GO
- /****** Object: StoredProcedure [dbo].[ProcUeoVerificationCodeInsert] Script Date: 2018/12/13 19:12:23 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcUeoVerificationCodeInsert]
- (
- @IP VARCHAR(39)
- )
- AS
- SET NOCOUNT ON
- INSERT INTO logDb..UeoVerificationCode(IP) VALUES(@IP)
- RETURN @@IDENTITY
- GO
- /****** Object: StoredProcedure [dbo].[ProcUeoVerificationCodeUpdate] Script Date: 2018/12/13 19:12:23 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcUeoVerificationCodeUpdate]
- (
- @ID INT,
- @Success BIT
- )
- AS
- SET NOCOUNT ON
- UPDATE logDb..UeoVerificationCode SET VerifyCount = ISNULL(VerifyCount, 0) + 1 WHERE ID = @ID
- IF @Success = 1
- BEGIN
- UPDATE logDb..UeoVerificationCode SET VerifyDate = GETDATE() WHERE ID = @ID
- UPDATE SynUeoLog SET HasChecked = 1 WHERE Ip = (SELECT IP FROM LogDb..UeoVerificationCode WHERE Id = @Id)
- DELETE FROM logDb..UeoLogShort WHERE IP = (SELECT IP FROM LogDb..UeoVerificationCode WHERE Id = @Id)
- END
- SET NOCOUNT OFF
- GO
- /****** Object: StoredProcedure [dbo].[procUrl_click_logInsert] Script Date: 2018/12/13 19:12:23 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --创建人 Lambo 20101013
- --用于首页记录点击记录
- CREATE PROCEDURE [dbo].[procUrl_click_logInsert]
- @id SMALLINT,
- @ip VARCHAR(15)
- AS
- SET NOCOUNT ON
- DECLARE @cnt SMALLINT
- DECLARE @ip_repeat SMALLINT
- SELECT @ip_repeat=ip_repeat FROM url WITH(NOLOCK) WHERE id=@id
- SELECT @cnt=COUNT(1) FROM url_click_log WITH(NOLOCK)
- WHERE ip=@ip AND url_id=@id AND adddate>GETDATE()-1
- IF (@cnt=0 or @ip_repeat=2)
- BEGIN
- INSERT INTO url_click_log (url_id,ip)
- VALUES(@id,@ip)
- UPDATE url SET allclick=allclick+1,todayclick=todayclick+1 WHERE id=@id
- END
- SET NOCOUNT OFF
- GO
- /****** Object: StoredProcedure [dbo].[procUrlByIDSelect] Script Date: 2018/12/13 19:12:24 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.04
- --创建人:Nick
- --说明:select url
- --#####################################################
- CREATE PROCEDURE [dbo].[procUrlByIDSelect]
- (
- @ID INT
- )
- AS
- BEGIN TRY
- SELECT url FROM url WITH(NOLOCK) WHERE id=@ID
- END TRY
- BEGIN CATCH
- RETURN 0
- END CATCH
- GO
- /****** Object: StoredProcedure [dbo].[ProcViInterviewRecordInsert] Script Date: 2018/12/13 19:12:24 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.29
- --创建人:John
- --说明:个人申请进入面试室/企业邀请个人进入面试室
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcViInterviewRecordInsert]
- (
- @viRoomId INT,
- @JobID INT,
- @CvMainID INT,
- @ApplyType TINYINT
- )
- AS
- BEGIN
- INSERT INTO ViInterviewRecord(viRoomId, cvMainID, paMainID, JobId, ApplyDate, ApplyType)
- SELECT @viRoomId, ID, paMainID, @JobId, GETDATE(), @ApplyType
- FROM cvMain
- WHERE ID = @cvMainID
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcViInterviewRecordUpdate] Script Date: 2018/12/13 19:12:24 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.29
- --创建人:John
- --说明:个人进入面试室更新时间
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcViInterviewRecordUpdate]
- (
- @viRoomID INT,
- @cvMainID INT
- )
- AS
- BEGIN
- UPDATE ViInterviewRecord
- SET LastRefreshTime = GETDATE(), BeginDate = GETDATE()
- WHERE viroomid = @viRoomID
- AND cvMainID = @cvMainID
- AND begindate IS NULL
- AND ReplyResult = 1
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcVIPlanByHomePageSelect] Script Date: 2018/12/13 19:12:24 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#########################################
- --lambo 2014-5-23
- --用于首页和宣传页面 取正在面试的企业 如果数据不够再取有面试计划的企业
- --#########################################
- CREATE PROCEDURE [dbo].[ProcVIPlanByHomePageSelect]
- (
- @dcProvinceID INT,
- @RecordCount INT
- )
- AS
- BEGIN
- BEGIN TRY
- CREATE TABLE #T(
- VIRoomID INT,
- VIPlanID INT,
- CpID VARCHAR(10),
- CpMainID VARCHAR(10),
- CompanyName NVARCHAR(50),
- JobIDs VARCHAR(50),
- JobNames NVARCHAR(200),
- InterviewDate SMALLDATETIME
- )
- --取@RecordCount条正在面试的企业
- INSERT INTO #T(VIRoomID, CpID, CpMainID, CompanyName)
- SELECT TOP(@RecordCount) a.ID, c.ID, ISNULL(c.SecondID,c.ID), c.Name
- FROM VIRoom a, caMain b, cpMain c
- WHERE a.caMainID = b.id
- AND b.cpMainID = c.ID
- AND a.EndDate IS NULL
- AND c.dcProvinceID LIKE LTRIM(STR(@dcProvinceID))+'%'
- AND c.IsLimitLogin<>9
- --如果不够@RecordCount条,从面试计划中补齐
- DECLARE @CompanyCount INT
- SELECT @CompanyCount = COUNT(*) FROM #T
-
- INSERT INTO #T(VIPlanID, CpID, CpMainID, CompanyName, InterviewDate)
- SELECT TOP(@RecordCount-@CompanyCount) a.ID, c.ID,ISNULL(c.SecondID,c.ID), c.Name, a.InterviewDate
- FROM VIPlan a, caMain b, cpMain c
- WHERE a.caMainID = b.id
- AND b.cpMainID = c.ID
- AND a.InterviewDate > GETDATE()
- AND a.IsCancel = 0
- AND c.dcProvinceID LIKE LTRIM(STR(@dcProvinceID))+'%'
- AND c.IsLimitLogin<>9
- ORDER BY InterviewDate
- UPDATE a SET
- JobIDs = STUFF(
- (
- SELECT TOP 3 ','+LTRIM(ISNULL(secondid,id))
- FROM Job WITH(NOLOCK)
- WHERE cpMainID = a.CpID
- AND Valid = 1
- ORDER BY DisplayNo, CONVERT(VARCHAR(4), dcJobtypeId),ID
- FOR XML PATH('')
- ),1,1,'')
- ,
- JobNames = STUFF(
- (
- SELECT TOP 3 ','+LTRIM(Name)
- FROM Job WITH(NOLOCK)
- WHERE cpMainID = a.CpID
- AND Valid = 1
- ORDER BY DisplayNo, CONVERT(VARCHAR(4), dcJobtypeId),ID
- FOR XML PATH('')
- ),1,1,'')
- FROM #T a
- SELECT * FROM #T ORDER BY CASE WHEN VIRoomID IS NULL THEN 1 ELSE 0 END,InterviewDate
- DROP TABLE #T
- END TRY
- BEGIN CATCH
- DROP TABLE #T
- END CATCH
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcViPlanByIDSelect] Script Date: 2018/12/13 19:12:25 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.30
- --创建人:John
- --说明:获取面试计划数据
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcViPlanByIDSelect]
- (
- @ID INT
- )
- AS
- BEGIN
- SELECT * FROM VIPlan WHERE id = @ID
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcViPlanByRegionIDSelect] Script Date: 2018/12/13 19:12:25 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.29
- --创建人:John
- --说明:根据区域位置获取该位置下所有面试计划
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcViPlanByRegionIDSelect]
- (
- @RegionID VARCHAR(10),
- @KeyWords VARCHAR(100)
- )
- AS
- BEGIN
- SELECT TOP 100 a.*,b.Name HrName,b.id caMainID,c.Name cpName,ISNULL(c.SecondID,c.ID) cpMainID,
- STUFF(
- (
- SELECT TOP 3 ','+LTRIM(ISNULL(secondid,id))
- FROM Job WITH(NOLOCK)
- WHERE cpMainID = c.ID
- AND Valid = 1
- ORDER BY DisplayNo, CONVERT(VARCHAR(4), dcJobtypeId),ID
- FOR XML PATH('')
- ),1,1,''
- ) JobIDs,
- STUFF(
- (
- SELECT TOP 3 ','+LTRIM(Name)
- FROM Job WITH(NOLOCK)
- WHERE cpMainID = c.ID
- AND Valid = 1
- ORDER BY DisplayNo, CONVERT(VARCHAR(4), dcJobtypeId),ID
- FOR XML PATH('')
- ),1,1,''
- ) JobNames
- FROM ViPlan a LEFT JOIN caMain b ON b.ID = a.caMainID LEFT JOIN cpMain c ON c.ID = b.cpMainID
- WHERE c.dcProvinceID LIKE @RegionID
- AND c.Name LIKE @KeyWords
- AND interviewdate > GETDATE()
- And IsCancel = 0
- AND c.IsLimitLogin <> 9
- ORDER BY interviewdate DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcViPlanInviteInsert] Script Date: 2018/12/13 19:12:25 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.29
- --创建人:John
- --说明:增加个人预约记录/企业邀请记录
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcViPlanInviteInsert]
- (
- @VIPlanID INT,
- @JobID INT,
- @CvMainID INT,
- @AddType BIT
- )
- AS
- BEGIN
- INSERT INTO ViPlanInviteLog(VIPlanID, JobID, CvMainID, AddType)
- SELECT @VIPlanID, @JobID, @CvMainID, @AddType
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcViRoomByRegionIDSelect] Script Date: 2018/12/13 19:12:26 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.29
- --创建人:John
- --说明:根据区域位置获取该位置下所有面试室
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcViRoomByRegionIDSelect]
- (
- @RegionID VARCHAR(10),
- @KeyWords VARCHAR(100)
- )
- AS
- BEGIN
- SELECT TOP 100 a.*,b.Name HrName,b.id caMainID,c.Name cpName,IsNULL(c.SecondID,c.ID) cpMainID,
- STUFF(
- (
- SELECT TOP 3 ','+LTRIM(ISNULL(secondid,id))
- FROM Job WITH(NOLOCK)
- WHERE cpMainID = c.ID
- AND Valid = 1
- ORDER BY DisplayNo, CONVERT(VARCHAR(4), dcJobtypeId),ID
- FOR XML PATH('')
- ),1,1,''
- ) JobIDs,
- STUFF(
- (
- SELECT TOP 3 ','+LTRIM(Name)
- FROM Job WITH(NOLOCK)
- WHERE cpMainID = c.ID
- AND Valid = 1
- ORDER BY DisplayNo, CONVERT(VARCHAR(4), dcJobtypeId),ID
- FOR XML PATH('')
- ),1,1,''
- ) JobNames
- FROM ViRoom a LEFT JOIN caMain b ON b.ID = a.caMainID LEFT JOIN cpMain c ON c.ID = b.cpMainID
- WHERE c.dcProvinceID LIKE @RegionID
- AND c.Name LIKE @KeyWords
- AND EndDate IS NULL
- AND c.IsLimitLogin <> 9
- ORDER BY BeginDate DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcViRoomInsert] Script Date: 2018/12/13 19:12:26 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.29
- --创建人:John
- --说明:企业创建房间
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcViRoomInsert]
- (
- @caMainID INT,
- @GUID VARCHAR(20)
- )
- AS
- BEGIN
- INSERT INTO viRoom(caMainID, LastRefreshTime, BeginDate, [GUID]) VALUES(@caMainID, GETDATE(), GETDATE(), @GUID)
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcViRoomReplyResultUpdate] Script Date: 2018/12/13 19:12:26 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.30
- --创建人:John
- --说明:修改邀请的答复状态
- --#####################################################
- CREATE PROCEDURE [dbo].[ProcViRoomReplyResultUpdate]
- (
- @ID INT,
- @result INT,
- @caMainID INT,
- @paMainID INT
- )
- AS
- BEGIN
- DECLARE @SQL VARCHAR(1000)
- SET @SQL = 'UPDATE viinterviewrecord SET ReplyDate = GETDATE(),ReplyResult = ' + CONVERT(VARCHAR(10), @result) + ' WHERE id = ' + CONVERT(VARCHAR(20), @ID)
- IF(@caMainID > 0)
- BEGIN
- SET @SQL = @SQL + ' AND viRoomId IN (SELECT id FROM viroom WHERE camainid = '+ CONVERT(VARCHAR(20), @caMainID) + ')'
- END
- IF(@paMainID > 0)
- BEGIN
- SET @SQL = @SQL + ' AND paMainID = ' + CONVERT(VARCHAR(20), @paMainID)
- END
- EXEC(@SQL)
- END
- GO
- /****** Object: StoredProcedure [dbo].[procVisitCountLogInsert] Script Date: 2018/12/13 19:12:26 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[procVisitCountLogInsert]
- AS
- SET NOCOUNT ON
- BEGIN
- INSERT INTO LogDb..VisitCountLog(IP, VisitCount)
- SELECT IP, COUNT(1) FROM logdb..VisitLog GROUP BY IP HAVING COUNT(1) > 10
- TRUNCATE TABLE LogDb..VisitLog
- END
- GO
- /****** Object: StoredProcedure [dbo].[procVisitLogInsert] Script Date: 2018/12/13 19:12:26 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[procVisitLogInsert]
- (
- @IP VARCHAR(31)
- )
- AS
- SET NOCOUNT ON
- BEGIN
- INSERT INTO logdb..VisitLog(IP) VALUES(@IP)
- END
- GO
- /****** Object: StoredProcedure [dbo].[procvrExchangeByRecommendIDSelect] Script Date: 2018/12/13 19:12:27 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.31
- --创建人:Nick
- --说明:得到兑换记录信息
- --#####################################################
- CREATE PROCEDURE [dbo].[procvrExchangeByRecommendIDSelect]
- (
- @RecommendID INT
- )
- AS
- BEGIN TRY
- SELECT a.*,b.GiftName
- FROM marketDB..cvrExchange a WITH(NOLOCK),marketDB..cvrGift b WITH(NOLOCK)
- WHERE a.cvrGift=b.ID
- AND RecommendID=@RecommendID
- ORDER BY a.ID DESC
- END TRY
- BEGIN CATCH
- RETURN 0
- END CATCH
- GO
- /****** Object: StoredProcedure [dbo].[procvrExchangeSelect] Script Date: 2018/12/13 19:12:27 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.31
- --创建人:Nick
- --说明:得到兑换记录信息
- --#####################################################
- CREATE PROCEDURE [dbo].[procvrExchangeSelect]
- AS
- BEGIN TRY
- SELECT TOP 20 a.ApplyTime,b.GiftName,c.Name paName,c.gender,c.ID
- FROM marketDB..cvrExchange a with(nolock),marketDB..cvrGift b with(nolock),paMain c
- WHERE a.cvrGift=b.ID
- AND a.RecommendID=c.id
- ORDER BY a.ID DESC
- END TRY
- BEGIN CATCH
- RETURN 0
- END CATCH
- GO
- /****** Object: StoredProcedure [dbo].[procvrGiftByIDSelect] Script Date: 2018/12/13 19:12:27 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.31
- --创建人:Nick
- --说明:得到礼品的详细信息
- --#####################################################
- CREATE PROCEDURE [dbo].[procvrGiftByIDSelect]
- (
- @ID INT
- )
- AS
- BEGIN TRY
- SELECT * FROM marketdb..cvrGift WHERE isonline = 1 AND ID = @ID
- END TRY
- BEGIN CATCH
- RETURN 0
- END CATCH
- GO
- /****** Object: StoredProcedure [dbo].[proCvrGiftSelect] Script Date: 2018/12/13 19:12:27 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.31
- --创建人:Nick
- --说明:获取礼品信息
- --#####################################################
- CREATE PROCEDURE [dbo].[proCvrGiftSelect]
- AS
- BEGIN TRY
- SELECT * FROM marketdb..cvrGift WHERE isonline = 1 AND Remainder>0 ORDER BY Cost
- END TRY
- BEGIN CATCH
- RETURN 0
- END CATCH
- GO
- /****** Object: StoredProcedure [dbo].[procvrRecommendByIDSelect] Script Date: 2018/12/13 19:12:27 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.31
- --创建人:Nick
- --说明:得到积分查询信息
- --#####################################################
- CREATE PROCEDURE [dbo].[procvrRecommendByIDSelect]
- (
- @ID INT
- )
- AS
- BEGIN TRY
- SELECT b.HasValid,b.mobile,HasReply,ReplyTime,b.DeductReason,p.id,p.name
- FROM marketDb..cvrRecommend b WITH(NOLOCK),paMain p
- WHERE b.UserID=p.id
- AND b.RecommendID=@ID
- ORDER BY b.id DESC
- END TRY
- BEGIN CATCH
- RETURN 0
- END CATCH
- GO
- /****** Object: StoredProcedure [dbo].[procvrRecommendRankingSelect] Script Date: 2018/12/13 19:12:28 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.10.31
- --创建人:Nick
- --说明:推荐排行榜
- --#####################################################
- CREATE PROCEDURE [dbo].[procvrRecommendRankingSelect]
- AS
- BEGIN TRY
- SELECT TOP 50 a.RecommendID,b.name,a.cnt,(
- SELECT TOP 1 ReplyTime
- FROM marketdb..cvrRecommend WITH(NOLOCK)
- WHERE RecommendID=a.RecommendID
- AND hasvalid = 3
- AND HasReply=1
- ORDER BY ReplyTime
- ) ReplyTime,stuff((
- SELECT TOP 4 ','+y.GiftName
- FROM marketDB..cvrExchange x WITH(NOLOCK),marketDB..cvrGift y WITH(NOLOCK)
- WHERE x.cvrGift=y.ID AND x.RecommendID=a.RecommendID And x.HasVerify =1
- ORDER BY x.ID DESC for xml path('')),1,1,'') gifts
- FROM (SELECT TOP 100 RecommendID,count(*) cnt
- FROM marketdb..cvrRecommend WITH(NOLOCK)
- WHERE hasvalid = 3
- AND HasReply=1
- GROUP BY RecommendID
- ORDER BY cnt DESC) a,paMain b
- WHERE a.RecommendID = b.id
- END TRY
- BEGIN CATCH
- RETURN 0
- END CATCH
- GO
- /****** Object: StoredProcedure [dbo].[ProcWebSafePaInfoInsert] Script Date: 2018/12/13 19:12:28 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcWebSafePaInfoInsert]
- AS
- BEGIN
- TRUNCATE TABLE ShortDb..WebSafePaInfoLog
- SELECT Id, paMainId, ROW_NUMBER() OVER(PARTITION BY paMainId ORDER BY cvLevel DESC, ID DESC) RowNo
- INTO #t
- FROM cvMain
- WHERE paMainId IN(SELECT Id FROM paMain WHERE AddDate > GETDATE() - 50 AND AddDate < GETDATE() - 10)
-
- DELETE #t WHERE paMainId IN(SELECT User_Id FROM ShortDb..WebSafePaInfo)
-
- INSERT INTO WebSafePaInfoLog(ICP_Code, DATA_TYPE, User_Id, User_Name, User_Password, STATUS, AddDate, Ip_Addr,
- MAC_ADDR, MOBILE_IMEI, BIND_EMAIL, BIND_TEL, CONTACT_TEL, REAL_NAME, SEX, BIRTHDAY, CERTIFICATE_CODE,
- PHOTO_FILE, RESUME_ID, DWELL_CITY, RESIDENCE, LIVE_CITY, JOB_CITY, JOB_POST, BLACKLIST, GRADUATE_SCHOOL,
- GRADUATE_TIME, QUALIFICATION, MAJOR, LAST_COMPANY)
- SELECT '10000013803693', 'JOB', a.ID, a.UserNameLower, a.Password, '新建', a.AddDate, LEFT(a.RegisterIp, 15),
- '', '', a.Email, a.Mobile, a.Mobile, a.Name, a.Gender, a.BIRTHDAY, '',
- '', b.Id, LivePlace, a.AccountPlace, a.GrowPlace, '', '', LEFT(a.HideConditions, 64), '',
- '', '', '', ''
- FROM paMain a, cvMain b
- WHERE a.Id = b.paMainId
- AND b.Id IN(SELECT Id FROM #t)
-
- UPDATE WebSafePaInfoLog SET PhotoId = User_Id WHERE User_Id IN(SELECT paMainId FROM paPhoto)
- UPDATE WebSafePaInfoLog SET PhotoPath = (PhotoId / 100000 + 1) * 100000
- UPDATE WebSafePaInfoLog SET PhotoPath = '000' + PhotoPath WHERE PhotoId < 1000000
- UPDATE WebSafePaInfoLog SET PhotoPath = '00' + PhotoPath WHERE PhotoId BETWEEN 1000000 AND 9999999
- UPDATE WebSafePaInfoLog SET PhotoPath = '0' + PhotoPath WHERE PhotoId > 9999999
- UPDATE WebSafePaInfoLog SET Photo_File = 'http://down.51rc.com/imagefolder/Photo/L' + PhotoPath + '/Processed/'
- UPDATE a
- SET a.Photo_File = 'http://down.51rc.com/imagefolder/Photo/L' + PhotoPath + '/Processed/' + b.PhotoProcessed
- FROM WebSafePaInfoLog a, paPhoto b
- WHERE a.User_Id = b.paMainId
- UPDATE WebSafePaInfoLog SET CREATE_TIME = REPLACE(REPLACE(REPLACE(CONVERT(VARCHAR(19), GETDATE(), 120), '-', ''), ' ', ''), ':', '')
- UPDATE WebSafePaInfoLog
- SET Ip_Addr = (SELECT TOP 1 LEFT(LoginIp, 15) FROM MainDb..paLoginLog b WHERE User_Id = b.paMainId ORDER BY ID DESC)
- WHERE Ip_Addr not LIKE '%.%'
- DELETE WebSafePaInfoLog WHERE Ip_Addr not LIKE '%.%'
- UPDATE WebSafePaInfoLog SET SEX = '男' WHERE Sex = '0'
- UPDATE WebSafePaInfoLog SET SEX = '女' WHERE Sex != '男'
- UPDATE WebSafePaInfoLog SET BirthDay = LEFT(BirthDay, 6) + '15120000'
- SELECT cvMainId, MAX(Id) ID, cvMainId JobId, SPACE(50) Region
- INTO #t1
- FROM MainDb..ExJobApply
- GROUP BY cvMainId
- UPDATE a
- SET a.JobId = b.JobId
- FROM #t1 a, MainDb..ExJobApply b
- WHERE a.Id = b.Id
- UPDATE a SET a.Region = c.Description
- FROM #t1 a, MainDb..Job b, MainDb..dcRegion c
- WHERE a.JobId = b.Id
- AND b.dcRegionId = c.Id
- UPDATE a
- SET a.REGISTER_CITY = b.Region
- FROM WebSafePaInfoLog a, #t1 b
- WHERE a.Resume_Id = b.cvMainId
- UPDATE a
- SET a.DWELL_CITY = b.FullName
- FROM WebSafePaInfoLog a, dcRegion b
- WHERE a.DWELL_CITY = b.Id
- UPDATE a
- SET a.RESIDENCE = b.FullName
- FROM WebSafePaInfoLog a, dcRegion b
- WHERE a.RESIDENCE = b.Id
- UPDATE a
- SET a.LIVE_CITY = b.FullName
- FROM WebSafePaInfoLog a, dcRegion b
- WHERE a.LIVE_CITY = b.Id
- SELECT cvMainId, dcRegionID, ROW_NUMBER() OVER(PARTITION BY cvMainId ORDER BY dcRegionId) RowNo
- INTO #t2
- FROM cvJobPlace
- WHERE cvMainId IN(SELECT Resume_Id FROM WebSafePaInfoLog)
- DELETE FROM #t2 WHERE RowNo > 1
- UPDATE a
- SET a.JOB_CITY = c.FullName
- FROM WebSafePaInfoLog a, #t2 b, dcRegion c
- WHERE a.Resume_Id = b.cvMainId
- AND b.dcRegionId = c.ID
- SELECT cvMainId, dcJobTypeID, ROW_NUMBER() OVER(PARTITION BY cvMainId ORDER BY dcJobTypeID) RowNo
- INTO #t3
- FROM cvJobType
- WHERE cvMainId IN(SELECT Resume_Id FROM WebSafePaInfoLog)
- DELETE FROM #t3 WHERE RowNo > 1
- UPDATE a
- SET a.JOB_Post= c.Description
- FROM WebSafePaInfoLog a, #t3 b, dcJobType c
- WHERE a.Resume_Id = b.cvMainId
- AND b.dcJobTypeID = c.ID
- UPDATE WebSafePaInfoLog SET BlackList = REPLACE(BlackList, '<>', '|') WHERE BlackList > ''
- UPDATE WebSafePaInfoLog SET BlackList = REPLACE(REPLACE(BlackList, '<', ''), '>', '') WHERE BlackList > ''
- SELECT cvMainId, GraduateCollage, Graduation, MajorName, Degree, SPACE(10) DegreeText,
- ROW_NUMBER() OVER(PARTITION BY cvMainId ORDER BY Degree DESC) RowNo
- INTO #t4
- FROM cvEducation
- WHERE cvMainId IN(SELECT Id FROM #t)
- UPDATE #t4 SET DegreeText = (SELECT Description FROM dcEducation WHERE Id = Degree)
- DELETE #t4 WHERE RowNo > 1
- UPDATE a
- SET a.GRADUATE_SCHOOL = b.GraduateCollage,
- a.GRADUATE_TIME = LEFT(Graduation, 4),
- a.QUALIFICATION = b.DegreeText,
- a.Major = b.MajorName
- FROM WebSafePaInfoLog a, #t4 b
- WHERE a.Resume_Id = b.cvMainId
- SELECT cvMainId, CompanyName,
- ROW_NUMBER() OVER(PARTITION BY cvMainId ORDER BY BeginDate DESC) RowNo
- INTO #t5
- FROM cvExperience
- WHERE cvMainId IN(SELECT Id FROM #t)
- DELETE #t5 WHERE RowNo > 1
- UPDATE a
- SET a.LAST_COMPANY = b.CompanyName
- FROM WebSafePaInfoLog a, #t5 b
- WHERE a.Resume_Id = b.cvMainId
- UPDATE WebSafePaInfoLog SET Ip_Addr = LEFT(Ip_Addr, CHARINDEX(',', Ip_Addr) - 1) WHERE Ip_Addr LIKE '%,%'
- UPDATE WebSafePaInfoLog SET Ip_Addr = '101.41.69.195' WHERE Ip_Addr LIKE '%101.41.69.195%'
- UPDATE WebSafePaInfoLog SET Ip_Addr = '58.14.0.0' WHERE Ip_Addr LIKE '%58.14.0.0%'
- UPDATE WebSafePaInfoLog SET Ip_Addr = '117.136.5.11' WHERE Ip_Addr LIKE '辽宁 117.136.5.11'
- UPDATE WebSafePaInfoLog SET Ip_Addr = REPLACE(Ip_Addr, '#', '') WHERE Ip_Addr LIKE '%#%'
-
- UPDATE WebSafePaInfoLog SET Ip1 = LEFT(Ip_Addr, CHARINDEX('.', Ip_Addr) - 1) WHERE CHARINDEX('.', Ip_Addr) > 1
- UPDATE WebSafePaInfoLog SET Ip_Addr = RIGHT(Ip_Addr, LEN(Ip_Addr) - LEN(Ip1) -1)
- UPDATE WebSafePaInfoLog SET Ip2 = LEFT(Ip_Addr, CHARINDEX('.', Ip_Addr) - 1) WHERE CHARINDEX('.', Ip_Addr) > 1
- UPDATE WebSafePaInfoLog SET Ip_Addr = RIGHT(Ip_Addr, LEN(Ip_Addr) - LEN(Ip2) -1)
-
- UPDATE WebSafePaInfoLog SET Ip3 = LEFT(Ip_Addr, CHARINDEX('.', Ip_Addr) - 1) WHERE CHARINDEX('.', Ip_Addr) > 1
- UPDATE WebSafePaInfoLog SET Ip_Addr = RIGHT(Ip_Addr, LEN(Ip_Addr) - LEN(Ip3) -1)
- UPDATE WebSafePaInfolog SET Ip_Addr = '255' WHERE Ip_Addr LIKE '%.%'
- UPDATE WebSafePaInfoLog SET Ip4 = Ip_Addr
- UPDATE WebSafePaInfoLog SET IpINT = Ip1
- UPDATE WebSafePaInfoLog SET Ip_Addr = IpINT * 256 * 256 * 256 + ip2 * 256 * 256 + ip3 * 256 + ip4
- DELETE WebSafePaInfoLog WHERE Ip1 IS NULL
- UPDATE WebSafePaInfoLog SET Ip2 = 0 WHERE Ip2 IS NULL
- UPDATE WebSafePaInfoLog SET Ip3 = 0 WHERE Ip3 IS NULL
- UPDATE WebSafePaInfoLog SET Ip4 = 0 WHERE Ip4 IS NULL
- UPDATE WebSafePaInfoLog SET Ip_Addr = IpINT * 256 * 256 * 256 + ip2 * 256 * 256 + ip3 * 256 + ip4
- WHERE Ip_Addr IS NULL
- DELETE WebSafePaInfoLog WHERE Ip_Addr IS NULL
- DELETE WebSafePaInfoLog WHERE Ip_Addr = '0'
-
- INSERT INTO WebSafePaInfo(ICP_CODE, DATA_TYPE, USER_ID, USER_NAME, USER_PASSWORD, STATUS, CREATE_TIME,
- IP_ADDR, MAC_ADDR, MOBILE_IMEI, BIND_EMAIL, BIND_TEL, CONTACT_TEL, REAL_NAME, SEX, BIRTHDAY,
- CERTIFICATE_CODE, PHOTO_FILE, RESUME_ID, REGISTER_CITY, DWELL_CITY, RESIDENCE, LIVE_CITY, JOB_CITY,
- JOB_POST, BLACKLIST, GRADUATE_SCHOOL, GRADUATE_TIME, QUALIFICATION, MAJOR, LAST_COMPANY, AddDate)
- SELECT ICP_CODE, DATA_TYPE, USER_ID, USER_NAME, USER_PASSWORD, STATUS, CREATE_TIME,
- IP_ADDR, MAC_ADDR, MOBILE_IMEI, BIND_EMAIL, BIND_TEL, CONTACT_TEL, REAL_NAME, SEX, BIRTHDAY,
- CERTIFICATE_CODE, PHOTO_FILE, RESUME_ID, REGISTER_CITY, DWELL_CITY, RESIDENCE, LIVE_CITY, JOB_CITY,
- JOB_POST, BLACKLIST, GRADUATE_SCHOOL, GRADUATE_TIME, QUALIFICATION, MAJOR, LAST_COMPANY, GETDATE()
- FROM WebSafePaInfoLog
- END
- GO
- /****** Object: StoredProcedure [dbo].[procWebSiteMonitorByIDUpdate] Script Date: 2018/12/13 19:12:28 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE proc [dbo].[procWebSiteMonitorByIDUpdate]
- (
- @Id int
- )
- as
- return
- GO
- /****** Object: StoredProcedure [dbo].[ProcWebVisitLogInsert] Script Date: 2018/12/13 19:12:28 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- create PROCEDURE [dbo].[ProcWebVisitLogInsert]
- (
- @VisitId INT,
- @VisitType INT
- )
- AS
- SET NOCOUNT ON
- BEGIN
- INSERT INTO WebVisitLog(VisitId, VisitType, AddDate) SELECT @VisitId, @VisitType, GETDATE()
- END
- GO
- /****** Object: StoredProcedure [dbo].[ProcWenWenProcess] Script Date: 2018/12/13 19:12:29 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[ProcWenWenProcess]
- AS
- BEGIN
- UPDATE Marketdb..WenWenAnswer SET AnswerKeyWord='伍亿人才网' WHERE CHARINDEX('伍亿人才网',Answer)>0 AND CheckDate>CONVERT(VARCHAR(10),GETDATE(),120)
- UPDATE Marketdb..WenWenAnswer SET IsLink=1 WHERE CHARINDEX('www.51rc.com',Lower(Answer))>0 AND CheckDate>CONVERT(VARCHAR(10),GETDATE(),120)
- UPDATE a SET AnswerKeyWord=ISNULL(AnswerKeyWord,'')+','+b.SubSiteName FROM Marketdb..WenWenAnswer a,(
- SELECT (SELECT TOP 1 SubSiteName FROM dcSubSite WHERE CHARINDEX(SubSiteName,f.Answer)>0 AND IsMainSite=1) SubSiteName,ID
- FROM Marketdb..WenWenAnswer f WHERE EXISTS(SELECT 'x' FROM dcSubSite b WHERE CHARINDEX(SubSiteName ,f.Answer)>0 AND IsMainSite=1)
- ) b
- WHERE a.ID=b.ID AND CheckDate>CONVERT(VARCHAR(10),GETDATE(),120)
- UPDATE Marketdb..WenWenAnswer SET AnswerKeyWord = RIGHT(AnswerKeyWord,LEN(AnswerKeyWord)-1) WHERE LEN(AnswerKeyWord)>0 AND CheckDate>CONVERT(VARCHAR(10),GETDATE(),120)
- UPDATE a SET IsLink=1 FROM Marketdb..WenWenAnswer a,(
- SELECT (SELECT TOP 1 Replace(SubSiteUrl,'www.','') FROM dcSubSite WHERE CHARINDEX(Replace(SubSiteUrl,'www.',''),f.Answer)>0 AND IsMainSite=1) ProvinceDomain,ID
- FROM Marketdb..WenWenAnswer f WHERE EXISTS(SELECT 'x' FROM dcSubSite b WHERE CHARINDEX(Replace(SubSiteUrl,'www.','') ,f.Answer)>0)
- ) b
- WHERE a.ID=b.ID AND CheckDate>CONVERT(VARCHAR(10),GETDATE(),120)
- UPDATE Marketdb..WenWenAnswer SET IsValid=0 WHERE AnswerKeyWord IS NULL AND CheckDate>CONVERT(VARCHAR(10),GETDATE(),120)
- UPDATE a SET IsValid=0 FROM Marketdb..WenWenAnswer a WHERE
- NOT EXISTS(SELECT b.a FROM dbo.FnSplit(a.AnswerKeyWord,',') b WHERE b.a IN(
- SELECT d.SubSiteName FROM dbo.FnSplit(a.dcProvinceID,',') c,dcSubSite d WHERE c.a=d.ID
- )) AND CheckDate>CONVERT(VARCHAR(10),GETDATE(),120) AND a.AnswerKeyWord<>'伍亿人才网' AND LEN(a.dcProvinceID)>0
- UPDATE Marketdb..WenWenAnswer SET IsValid=0 WHERE AnswerKeyWord='伍亿人才网' AND LEN(dcProvinceID)>0
- UPDATE Marketdb..WenWenAnswer SET IsValid=0 WHERE
- (SELECT Type FROM WorkDate WITH(NOLOCK) WHERE WorkDate = CONVERT(VARCHAR(8), AnswerDate, 112))=1
- AND AnswerDate>CONVERT(VARCHAR(10), AnswerDate, 120)+' 7:00' AND AnswerDate<CONVERT(VARCHAR(10), AnswerDate, 120)+' 18:00'
- AND CheckDate>CONVERT(VARCHAR(10),GETDATE(),120) AND LEN(dcProvinceID)>0
- END
- GO
- /****** Object: StoredProcedure [dbo].[procWishWallByCpMainIDSelect] Script Date: 2018/12/13 19:12:29 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[procWishWallByCpMainIDSelect]
- (
- @cpMainID INT
- )
- AS
- SET NOCOUNT OFF
- BEGIN
- SELECT * FROM ShortDB..WishWall WITH(NOLOCK)
- WHERE cpMainID = @cpMainID
- END
- SET NOCOUNT ON
- GO
- /****** Object: StoredProcedure [dbo].[procWishWallInsert] Script Date: 2018/12/13 19:12:29 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[procWishWallInsert]
- (
- @cpMainID INT,
- @Content NVARCHAR(30)
- )
- AS
- SET NOCOUNT OFF
- BEGIN
- DECLARE @GiftType TINYINT
- SET @GiftType = ROUND((6 * RAND() + 1), 0)
- IF EXISTS(SELECT 'X' FROM ShortDB..WishWall WITH(NOLOCK) WHERE cpMainID = @cpMainID)
- RETURN 0
- INSERT INTO ShortDB..WishWall(cpMainID, WishContent, GiftType) VALUES(@cpMainID, @Content, @GiftType)
-
- IF @GiftType < 4
- BEGIN
- DECLARE @Balance INT, @Coin INT
- SELECT TOP 1 @Balance = Balance FROM cpCoin WHERE cpMainID = @cpMainID ORDER BY ID DESC
- IF @GiftType = 1
- SET @Coin = 10
- ELSE IF @GiftType = 2
- SET @Coin = 20
- ELSE IF @GiftType = 3
- SET @Coin = 30
- SET @Balance = ISNULL(@Balance, 0) + @Coin
- INSERT INTO cpCoin(cpMainID, caOrderID, Coin, Balance, AddDate)
- VALUES(@cpMainID, 0, @Coin, @Balance, GETDATE())
- END
- ELSE
- BEGIN
- DECLARE @Point INT
- IF @GiftType = 4
- SET @Point = 200
- ELSE IF @GiftType = 5
- SET @Point = 500
- ELSE IF @GiftType = 6
- SET @Point = 800
- ELSE IF @GiftType = 7
- SET @Point = 1000
- INSERT INTO cpPoint(cpMainID, ChangeID, Point, Remark, LastModifyDate)
- VALUES(@cpMainID, 18, @Point, '送祝福得积分', GETDATE())
- END
- RETURN @GiftType
- END
- SET NOCOUNT ON
- GO
- /****** Object: StoredProcedure [dbo].[procWishWallSelect] Script Date: 2018/12/13 19:12:29 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[procWishWallSelect]
- AS
- SET NOCOUNT OFF
- BEGIN
- SELECT TOP 60 a.*, b.Name CompanyName FROM ShortDB..WishWall a WITH(NOLOCK), cpMain b WITH(NOLOCK)
- WHERE a.cpMainID = b.ID AND a.Valid = 1 ORDER BY a.ID DESC
- END
- SET NOCOUNT ON
- GO
- /****** Object: StoredProcedure [dbo].[procWishWallUpdate] Script Date: 2018/12/13 19:12:30 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- CREATE PROCEDURE [dbo].[procWishWallUpdate]
- (
- @PassId VARCHAR(MAX),
- @NoPassId VARCHAR(MAX)
- )
- AS
- SET NOCOUNT ON
- BEGIN
- SET @PassId = dbo.SafeSQL(@PassId)
- SET @NoPassId = dbo.SafeSQL(@NoPassId)
- UPDATE shortdb..WishWall SET Valid = 1
- WHERE ID IN(SELECT a FROM dbo.FnSplit(@PassId, ','))
- UPDATE shortdb..WishWall SET Valid = 0
- WHERE ID IN(SELECT a FROM dbo.FnSplit(@NoPassId, ','))
- END
- GO
- /****** Object: StoredProcedure [dbo].[procWxAttenTionDelete] Script Date: 2018/12/13 19:12:30 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2015.01.26
- --创建人:Nick
- --说明:删除WxAttenTion临时表
- --#####################################################
- CREATE PROCEDURE [dbo].[procWxAttenTionDelete]
- AS
- BEGIN
- DELETE FROM WxAttenTion
- END
- GO
- /****** Object: StoredProcedure [dbo].[procWxAttenTionUpdate] Script Date: 2018/12/13 19:12:31 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2015.01.26
- --创建人:Nick
- --说明:更新WxAttenTion临时表
- --#####################################################
- CREATE PROCEDURE [dbo].[procWxAttenTionUpdate]
- (
- @WxServiceNo INT,
- @OpenIDs VARCHAR(MAX)
- )
- AS
- BEGIN
- INSERT INTO WxAttention
- SELECT @WxServiceNo,*,GETDATE() FROM dbo.fnsplit(@OpenIDs,',')
- END
- GO
- /****** Object: StoredProcedure [dbo].[procWxFansByCaMainIDSelect] Script Date: 2018/12/13 19:12:31 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2016.4.15
- --创建人:Lucifer
- --说明:查询企业账户是否已绑定微信
- --#####################################################
- CREATE PROCEDURE [dbo].[procWxFansByCaMainIDSelect]
- (
- @CaMainID INT
- )
- AS
- BEGIN
- SET NOCOUNT ON
- SELECT * FROM MainDB..WxFans WITH(NOLOCK) WHERE CaMainID = @CaMainID AND caBindCancelDate IS NULL
- SET NOCOUNT OFF
- END
- GO
- /****** Object: StoredProcedure [dbo].[procWxFansByPaMainIDSelect] Script Date: 2018/12/13 19:12:31 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2015.2.2
- --创建人:John
- --说明:查询个人账户是否已绑定微信
- --#####################################################
- CREATE PROCEDURE [dbo].[procWxFansByPaMainIDSelect]
- (
- @PaMainID INT
- )
- AS
- BEGIN
- SET NOCOUNT ON
- SELECT * FROM MainDB..WxFans WHERE PaMainID = @PaMainID AND Status = 2
- SET NOCOUNT OFF
- END
- GO
- /****** Object: StoredProcedure [dbo].[procWxFunsByStatusUpdate] Script Date: 2018/12/13 19:12:31 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2015.01.26
- --创建人:Nick
- --说明:更新用户关注状态
- --#####################################################
- CREATE PROCEDURE [dbo].[procWxFunsByStatusUpdate]
- AS
- BEGIN
- --将取消关注的用户加入操作日志
- INSERT INTO WxMessageReceive
- SELECT ID, GETDATE(), '取消关注', 6
- FROM WxFans
- WHERE Status <> 0 AND OpenID NOT IN (
- SELECT Rtrim(Ltrim(OpenID)) FROM WxAttenTion
- )
-
- --更新用户的关注状态
- SELECT Status, OpenId INTO #t FROM WxFans WHERE Status <> 0
- DELETE #t WHERE OpenID In(SELECT Rtrim(Ltrim(OpenID)) FROM WxAttenTion) AND Status <> 0
- UPDATE WxFans SET Status=0, AttentionCancelDate = GETDATE()
- WHERE OpenID In(SELECT OpenID FROM #t) AND Status <> 0
- --UPDATE WxFans SET Status=0, AttentionCancelDate = GETDATE()
- --WHERE OpenID Not In(SELECT Rtrim(Ltrim(OpenID)) FROM WxAttenTion)
- --AND Status <> 0
- --更新用户的关注状态
- --UPDATE WxFans SET Status=1,AttentionDate=GETDATE() WHERE OpenID In(SELECT Ltrim(OpenID) FROM WxAttenTion) AND Status = 0
- UPDATE a SET a.Status=1,a.AttentionDate=GETDATE(),a.WxServiceNoID = b.WxServiceNoID
- FROM WxFans a,WxAttenTion b
- WHERE a.OpenID = Rtrim(Ltrim(b.OpenID))
- AND a.Status = 0
-
- --将关注用户插入数据表
- INSERT INTO WxFans (OpenID,AttentionDate,Status,WxServiceNoID)
- SELECT Ltrim(OpenID),getdate(),1,WxServiceNoID
- FROM WxAttenTion
- WHERE Rtrim(Ltrim(OpenID)) NOT IN (SELECT OpenID FROM WxFans)
- END
- GO
- /****** Object: StoredProcedure [dbo].[procWXLocationByOpenIDSelect] Script Date: 2018/12/13 19:12:31 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.11
- --创建人:NICK
- --说明:绑定微信的openid
- --#####################################################
- CREATE PROCEDURE [dbo].[procWXLocationByOpenIDSelect]
- (
- @OpenID VARCHAR(100)
- )
- AS
- BEGIN
- SELECT TOP 1 *
- FROM WXLocation
- WHERE openid=@OpenID
- AND adddate>DATEADD(hour,-1,getdate())
- ORDER BY id DESC
- END
- GO
- /****** Object: StoredProcedure [dbo].[procWXLocationInsert] Script Date: 2018/12/13 19:12:32 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.11
- --创建人:NICK
- --说明:增加关注着的微信位置
- --#####################################################
- CREATE PROCEDURE [dbo].[procWXLocationInsert]
- (
- @OpenId VARCHAR(100),
- @lng VARCHAR(20),
- @lat VARCHAR(20)
- )
- AS
- BEGIN
- IF NOT EXISTS(SELECT 'x' FROM WXLocation WITH(NOLOCK) WHERE OpenId = @OpenId AND AddDate > DATEADD(MINUTE, -120, GETDATE()))
- INSERT INTO WXLocation(OpenId, lng, lat) SELECT @OpenId, @lng, @lat
- RETURN 1
- END
- GO
- /****** Object: StoredProcedure [dbo].[procwxMessageByFromUserNameSelect] Script Date: 2018/12/13 19:12:32 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.10
- --创建人:Nick
- --说明:获取wxMessage的内容
- --#####################################################
- CREATE PROCEDURE [dbo].[procwxMessageByFromUserNameSelect]
- (
- @FromUserName VARCHAR(100),
- @type VARCHAR(10)
- )
- AS
- BEGIN
- IF @type = '11'
- BEGIN
- SELECT * FROM wxMessage WITH(NOLOCK) WHERE FromUserName=@FromUserName and Content ='推荐职位'
- END
- ELSE
- BEGIN
- SELECT * FROM wxMessage WITH(NOLOCK) WHERE FromUserName=@FromUserName and Content <>'推荐职位'
- END
- END
- GO
- /****** Object: StoredProcedure [dbo].[procwxMessageByNameSelect] Script Date: 2018/12/13 19:12:32 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2014.11.10
- --创建人:Nick
- --说明:获取wxMessage的内容
- --#####################################################
- CREATE PROCEDURE [dbo].[procwxMessageByNameSelect]
- (
- @FromUserName VARCHAR(100)
- )
- AS
- BEGIN
- SELECT * FROM wxMessage WITH(NOLOCK) WHERE FromUserName=@FromUserName
- END
- GO
- /****** Object: StoredProcedure [dbo].[procWxMessageReceiveInsert] Script Date: 2018/12/13 19:12:32 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- --#####################################################
- --创建时间:2015.01.30
- --创建人:Nick
- --说明:记录粉丝操作日志
- --修改harry2017-4-17 增加企业绑定,取消时200积分
- --#####################################################
- CREATE PROCEDURE [dbo].[procWxMessageReceiveInsert]
- (
- @OpenID VARCHAR(100),
- @LogType INT,
- @ProvinceID INT,
- @Message VARCHAR(200),
- @PaMainID INT
- )
- AS
- SET NOCOUNT ON
- BEGIN
- DECLARE @WxServiceNoID INT
- --根据省份得到服务号id
- SELECT TOP 1 @WxServiceNoID = ID FROM WxServiceNO WHERE ProvinceID = @ProvinceID
- DECLARE @WxFansID INT
- SELECT TOP 1 @WxFansID = ID FROM WxFans WHERE OpenID = @OpenID
- IF @WxFansID IS NULL
- BEGIN
- --插入粉丝表
- INSERT INTO WxFans(OpenID, AttentionDate, Status, WxServiceNoID, paMainId)
- VALUES (@OpenID,GETDATE(),1,@WxServiceNoID, Null)
- SELECT @WxFansID = @@IDENTITY
- END
-
- DECLARE @Content VARCHAR(50)
- IF @LogType = 1 --关注
- BEGIN
- --更新粉丝表
- UPDATE WxFans SET Status = 1,AttentionDate = GETDATE(),WxServiceNoID = @WxServiceNoID
- WHERE ID = @WxFansID
- SET @Content = '关注'
- END
- ELSE IF @LogType = 2 --取消关注
- BEGIN
- --更新粉丝表
- UPDATE WxFans SET Status = 0,AttentionCancelDate=GETDATE() WHERE ID = @WxFansID
- --删除 palogincontact
- DELETE FROM PaLoginContact where OpenID = @OpenID AND ContactType=4
- SET @Content = '取消关注'
- END
- ELSE IF @LogType = 3 --发送文本
- BEGIN
- --更新粉丝表最后发送消息
- UPDATE WxFans SET LastSendMessage = @Message WHERE ID = @WxFansID
- SET @Content = '发送文本'
- END
- ELSE IF @LogType = 4 --定位
- BEGIN
- SET @Content = '发送地理位置'
- END
- ELSE IF @LogType = 5 --菜单
- BEGIN
- SET @Content = '点击菜单'
- END
- ELSE IF @LogType = 6 --点击链接
- BEGIN
- SET @Content = '点击链接'
- END
- ELSE IF @LogType = 7
- BEGIN
- --更新粉丝表
- IF @PaMainID = 0
- UPDATE WxFans SET Status = 2, PaMainID = NULL WHERE ID = @WxFansID
- ELSE
- UPDATE WxFans SET Status = 2, PaMainID = @PaMainID WHERE ID = @WxFansID
- SET @Content = '绑定个人账号'
- END
- ELSE IF @LogType = 8
- BEGIN
- --更新粉丝表
- UPDATE WxFans SET Status = 1 WHERE ID = @WxFansID
-
- --删除 palogincontact
- DELETE FROM PaLoginContact where OpenID =@OpenID AND ContactType=4
-
- SET @Content = '取消绑定个人账号'
- END
- ELSE IF @LogType = 10
- BEGIN
- SET @Content = '发送语音'
- END
- ELSE IF @LogType = 11
- BEGIN
- SET @Content = '发送视频'
- END
- ELSE IF @LogType = 12
- BEGIN
- SET @Content = '发送图片'
- END
- ELSE IF @LogType = 13
- BEGIN
- SET @Content = '扫描二维码'
- END
- ELSE IF @LogType = 14
- BEGIN
- --更新粉丝表
- UPDATE WxFans SET caMainID = @PaMainID, caBindCancelDate = NULL WHERE ID = @WxFansID
- SET @Content = '绑定企业账号'
- --插入积分200
- DECLARE @cpMainid1 INT
- select top 1 @cpMainid1=cpMainID from camain where id=@PaMainID
- INSERT INTO cpPoint (cpMainID,ChangeID,Point,LastModifyDate) VALUES(@cpMainid1 ,21,200,GETDATE())
- END
- ELSE IF @LogType = 15
- BEGIN
- --更新粉丝表
- UPDATE WxFans SET caBindCancelDate = GETDATE() WHERE ID = @WxFansID
- --删除 palogincontact
- DELETE FROM PaLoginContact where OpenID =@OpenID AND ContactType=4
- SET @Content = '取消绑定企业账号'
- --删除积分200
- DECLARE @cpMainid2 INT
- select top 1 @cpMainid2=cpMainID from camain where id=@PaMainID
- INSERT INTO cpPoint (cpMainID,ChangeID,Point,LastModifyDate) VALUES(@cpMainid2,22,-200,GETDATE())
- END
- --插入日志表
- IF NOT EXISTS(SELECT 'x' FROM WxMessageReceive WITH(NOLOCK) WHERE AddDate > CONVERT(VARCHAR(10), GETDATE(), 120) AND WxFansId = @WxFansId) OR @Message > ''
- INSERT INTO WxMessageReceive VALUES(@WxFansID, GETDATE(), @Message, @LogType)
- END
- GO
|