JXServer.m 211 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295
  1. //
  2. // JXServer.m
  3. // sjvodios
  4. //
  5. // Created by on 12-5-22.
  6. // Copyright (c) 2012年 __MyCompanyName__. All rights reserved.
  7. //
  8. #import "JXServer.h"
  9. #import "JXConnection.h"
  10. #import "AppDelegate.h"
  11. #import "JSON.h"
  12. #import "JXImageView.h"
  13. #import "versionManage.h"
  14. //#import "MobClick.h"
  15. #import "md5.h"
  16. #import "WeiboReplyData.h"
  17. #import "loginVC.h"
  18. #import "webpageVC.h"
  19. #import "searchData.h"
  20. #import "roomData.h"
  21. #import "BPush.h"
  22. #import "photo.h"
  23. #import "resumeData.h"
  24. #import "ATMHud.h"
  25. #import "JXMyTools.h"
  26. #import "JXLocation.h"
  27. #import "UIImageView+WebCache.h"
  28. #import "MD5Util.h"
  29. #import "NSMutableDictionary+NSMutableDictionary_SK.h"
  30. #import "JXKeyChainStore.h"
  31. #import "SDImageCache.h"
  32. #import "JXMainLoginVc.h"
  33. @interface JXServer ()<JXLocationDelegate,JXConnectionDelegate>
  34. @property (nonatomic, assign) BOOL isGetSetting;
  35. @end
  36. @implementation JXServer
  37. @synthesize isLoginWeibo,longitude,latitude;
  38. @synthesize count_money;
  39. @synthesize user_id;
  40. @synthesize user_type;
  41. @synthesize myself;
  42. @synthesize access_token;
  43. @synthesize isLogin;
  44. @synthesize lastOfflineTime;
  45. -(id)init{
  46. self = [super init];
  47. _arrayConnections= [[NSMutableArray alloc] init];
  48. _dictWaitViews = [[NSMutableDictionary alloc] init];
  49. _bAlreadyAutoLogin= NO;
  50. isLogin = NO;
  51. // latitude = 22.6;
  52. // longitude = 114.04;
  53. latitude = 0;
  54. longitude = 0;
  55. _locationCount = 0;
  56. // self.location = [[JXLocation alloc] init];
  57. // self.location.delegate = self;
  58. [self locate]; //定位
  59. // [self performSelector:@selector(startLocation) withObject:nil afterDelay:10];
  60. access_token = @"8864c3159c964c82bf0719ae0ade5ccd";//个人
  61. myself = [[JXUserObject alloc] init];
  62. myself.userId = @"100003";
  63. //企业:18908983800,qqq, 18503054766,123456 ,189388807760,1234
  64. //个人:18503054765,123456 18938880756,1234
  65. //18938880752,为客服号
  66. myself.userNickname = Localized(@"JX_NickName");
  67. myself.userDescription = Localized(@"JX_GiftText");
  68. myself.birthday = [NSDate date];
  69. myself.companyId = [NSNumber numberWithInt:1];
  70. myself.level = [NSNumber numberWithInt:1];
  71. myself.fansCount = [NSNumber numberWithInt:1000];
  72. myself.attCount = [NSNumber numberWithInt:1000];
  73. myself.userHead = @"http://image.tianjimedia.com/uploadImages/2013/231/KJQIZSVQ013Q.jpg";
  74. [self readDefaultSetting];
  75. _hud = [[ATMHud alloc] initWithDelegate:self];
  76. // self.multipleLogin = [JXMultipleLogin sharedInstance];
  77. return self;
  78. }
  79. -(void)dealloc{
  80. // [_location release];
  81. // [mvViewArray release];
  82. // [_arrayConnections release];
  83. // [_dictWaitViews release];
  84. // [_dictSingers release];
  85. // [myself release];
  86. // [iExamArray release];
  87. // [wExamArray release];
  88. // [jobArray release];
  89. //
  90. // [super dealloc];
  91. }
  92. -(JXConnection*)addTask:(NSString*)action param:(id)param toView:(id)delegate{
  93. if([action length]<=0)
  94. return nil;
  95. if(param==nil)
  96. param = @"";
  97. NSString* url=nil;
  98. NSString* s=@"";
  99. JXConnection *task = [[JXConnection alloc] init];
  100. if([action rangeOfString:@"http://"].location == NSNotFound){
  101. if([action isEqualToString:act_UploadFile] ||[action isEqualToString:act_UploadVoiceServlet] || [action isEqualToString:act_UploadHeadImage] || [action isEqualToString:act_SetGroupAvatarServlet]){
  102. s = g_config.uploadUrl;
  103. }
  104. else{
  105. NSRange range = [g_config.apiUrl rangeOfString:@"config"];
  106. if (range.location != NSNotFound) {
  107. s = [g_config.apiUrl substringToIndex:range.location];
  108. }else {
  109. s = g_config.apiUrl;
  110. }
  111. }
  112. }
  113. url = [NSString stringWithFormat:@"%@%@%@",s,action,param];
  114. task.url = url;
  115. // task.timeOutSeconds = jx_connect_timeout;
  116. task.param = param;
  117. task.delegate = self;
  118. task.action = action;
  119. task.toView = delegate;
  120. // [url1 release];
  121. if([task.toView respondsToSelector:@selector(didServerConnectStart:)])
  122. [task.toView didServerConnectStart:task];
  123. if([task isImage] || [task isAudio] || [task isVideo])
  124. [task go];
  125. [_arrayConnections addObject:task];
  126. // [task release];
  127. return task;
  128. }
  129. -(void)stopConnection:(id)toView{
  130. for(NSInteger i=[_arrayConnections count]-1;i>=0;i--){
  131. JXConnection* task = [_arrayConnections objectAtIndex:i];
  132. if(toView == task.toView){
  133. [_arrayConnections removeObjectAtIndex:i];
  134. [task stop];
  135. }
  136. task = nil;
  137. }
  138. }
  139. #pragma mark ------------------服务器数据成功----------------
  140. -(void)requestSuccess:(JXConnection*)task
  141. {
  142. if( [task isImage] ){
  143. [self doSaveImage:task];
  144. return;
  145. }
  146. if ([task isAudio] || [task isVideo]) {
  147. [self doSaveVideoAudio:task];
  148. return;
  149. }
  150. @autoreleasepool {
  151. NSString* string = task.responseData;
  152. // NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
  153. NSString* error=nil;
  154. SBJsonParser * resultParser = [[SBJsonParser alloc] init] ;
  155. id resultObject = [resultParser objectWithString:string];
  156. // id resultObject = [resultParser objectWithData:task.responseData];
  157. // [resultParser release];
  158. if( [resultObject isKindOfClass:[NSDictionary class]] ){
  159. int resultCode = [[(NSDictionary *)resultObject objectForKey:@"resultCode"] intValue];
  160. if(resultCode != 1)
  161. {
  162. error = [(NSDictionary *)resultObject objectForKey:@"resultMsg"];
  163. if([error length]<=0)
  164. error = Localized(@"JXServer_Error");
  165. }
  166. }else{
  167. error = Localized(@"JXServer_ErrorReturn");
  168. if([string length]>=6){
  169. if([[string substringToIndex:6] isEqualToString:@"<html>"])
  170. error = Localized(@"JXServer_ErrorSever");
  171. }
  172. }
  173. if(error){
  174. [self doError:task dict:resultObject resultMsg:string errorMsg:error];
  175. }else{
  176. // NSLog(@"%@成功:%@",task.action,string);
  177. if ([task.action isEqualToString:act_getCurrentTime] || [task.action isEqualToString:act_Config]) {
  178. // 获取服务器时间,然后对比当前客户端时间
  179. // 两个接口调用,防止单个接口出现空值
  180. if ([[(NSDictionary *)resultObject objectForKey:@"currentTime"] doubleValue] > 0) {
  181. self.serverCurrentTime = [[(NSDictionary *)resultObject objectForKey:@"currentTime"] doubleValue];
  182. self.timeDifference = self.serverCurrentTime - ([[NSDate date] timeIntervalSince1970] *1000);
  183. [share_defaults setObject:[NSNumber numberWithInt:self.timeDifference] forKey:kShare_timeDifference];
  184. }
  185. NSLog(@"currentTime: %@ - %f",task.action,self.timeDifference);
  186. }
  187. resultObject = [(NSDictionary *)resultObject objectForKey:@"data"];
  188. NSDictionary * dict = nil;
  189. NSArray* array = nil;
  190. if( [resultObject isKindOfClass:[NSDictionary class]] )
  191. dict = resultObject;
  192. if( [resultObject isKindOfClass:[NSArray class]] )
  193. array = resultObject;
  194. if ([resultObject isKindOfClass:[NSString class]]) {
  195. dict = [NSDictionary dictionaryWithObject:resultObject forKey:@"resultObject"];
  196. }
  197. if( [task.toView respondsToSelector:@selector(didServerResultSucces:dict:array:)] )
  198. [task.toView didServerResultSucces:task dict:dict array:array];
  199. dict = nil;
  200. array = nil;
  201. }
  202. resultObject = nil;
  203. // [pool release];
  204. [_arrayConnections removeObject:task];
  205. }
  206. }
  207. -(void)requestError:(JXConnection *)task
  208. {
  209. // NSLog(@"http失败");
  210. [_arrayConnections removeObject:task];
  211. if( [task.toView respondsToSelector:@selector(didServerConnectError:error:)] ){
  212. int n = [task.toView didServerConnectError:task error:task.error];
  213. if(n != hide_error){
  214. // if(task.showError)
  215. // [g_App showAlert:[NSString stringWithFormat:@"%@%@",Localized(@"JXServer_ErrorNetwork"),task.error.localizedDescription]];
  216. }
  217. }
  218. }
  219. -(void) doError:(JXConnection*)task dict:(NSDictionary*)dict resultMsg:(NSString*)string errorMsg:(NSString*)errorMsg{
  220. // NSLog(@"%@错误:%@",task.action,string);
  221. int resultCode = [[dict objectForKey:@"resultCode"] intValue];
  222. if(![task.action isEqualToString:act_UserLogout] && ![task.action isEqualToString:act_OutTime] && ![task.action isEqualToString:act_UserDeviceIsAuth]){
  223. if(resultCode != 1)
  224. {
  225. if(resultCode == 1030101 || resultCode == 1030102 || resultCode == 1030112){//未登陆时
  226. if (isLogin || [task.action isEqualToString:act_userLoginAuto] || [task.action isEqualToString:act_userLoginAutoV1]) {
  227. // 自动登录失败后要清除token ,不然会影响到手动登录
  228. g_server.access_token = nil;
  229. [g_default removeObjectForKey:kMY_USER_TOKEN];
  230. [share_defaults removeObjectForKey:kMY_ShareExtensionToken];
  231. // [g_App showAlert:Localized(@"JX_LogonExpiresPleaseLoginAgain") delegate:self tag:11000 onlyConfirm:YES];
  232. }
  233. isLogin = NO;
  234. return;
  235. }
  236. }
  237. }
  238. int n=show_error;
  239. if ([task.toView respondsToSelector:@selector(didServerResultFailed:dict:)])
  240. n= [task.toView didServerResultFailed:task dict:dict];
  241. if ([task.action isEqualToString:act_OutTime]) {
  242. n = hide_error;
  243. }
  244. if(n != hide_error){
  245. // if(task.showError)
  246. // [g_App showAlert:[NSString stringWithFormat:@"%@",errorMsg]]; //修改了
  247. }
  248. }
  249. - (void)otherUpdatePassword {
  250. isLogin = NO;
  251. g_server.access_token = nil;
  252. [g_default removeObjectForKey:kMY_USER_TOKEN];
  253. [share_defaults removeObjectForKey:kMY_ShareExtensionToken];
  254. [g_App showAlert:Localized(@"JX_OtherLoginNeedAgain") delegate:self tag:11000 onlyConfirm:YES];
  255. }
  256. -(void)doSaveImage:(JXConnection*)task{
  257. @try {
  258. [_arrayConnections removeObject:task];
  259. UIImage* p = [[UIImage alloc]initWithData:task.responseData];
  260. if(p==nil)
  261. return;
  262. NSString* file = [[task.action lastPathComponent] stringByDeletingPathExtension];
  263. NSString* ext = [[task.action lastPathComponent] pathExtension];
  264. NSString* filepath;
  265. if([task.action rangeOfString:@"/t/"].location == NSNotFound)
  266. filepath = [NSString stringWithFormat:@"%@o/",tempFilePath];
  267. else
  268. filepath = [NSString stringWithFormat:@"%@t/",tempFilePath];
  269. [FileInfo createDir:filepath];
  270. filepath = [NSString stringWithFormat:@"%@%@@2x.%@",filepath,file,ext];
  271. [task.responseData writeToFile:filepath atomically:YES];
  272. //为了双倍分辨率:
  273. // [p release];
  274. p = [[UIImage alloc]initWithContentsOfFile:filepath];
  275. //显示图像
  276. if(task.toView){
  277. JXImageView* iv = (JXImageView*)task.toView;
  278. iv.image = p;
  279. iv = nil;
  280. }
  281. // NSLog(@"%@成功:%@",task.action,filepath);
  282. // [p release];
  283. }
  284. @catch (NSException *exception) {
  285. }
  286. return;
  287. }
  288. -(void) doSaveVideoAudio:(JXConnection*)task{
  289. @try {
  290. NSString * filePath = [myTempFilePath stringByAppendingString:[[task.url stringByRemovingPercentEncoding] lastPathComponent]];
  291. task.downloadFile = filePath;
  292. BOOL success = [task.responseData writeToFile:filePath options:NSDataWritingAtomic error:nil];
  293. if (!success) {
  294. NSLog(@"文件写入失败");
  295. }else{
  296. if( [task.toView respondsToSelector:@selector(didServerResultSucces:dict:array:)] )
  297. [task.toView didServerResultSucces:task dict:nil array:nil];
  298. // [g_notify postNotificationName:@"audiaoDownloadFinished" object:task];
  299. }
  300. } @catch (NSException *exception) {
  301. } @finally {
  302. [_arrayConnections removeObject:task];
  303. }
  304. }
  305. -(NSString*)getHeadImageOUrl:(NSString*)userId{
  306. NSString* dir = [NSString stringWithFormat:@"%d",[userId intValue] % 10000];
  307. NSString* url = [NSString stringWithFormat:@"%@avatar/o/%@/%@.jpg",g_config.downloadAvatarUrl,dir,userId];
  308. return url;
  309. }
  310. -(NSString*)getHeadImageTUrl:(NSString*)userId{
  311. NSString* dir = [NSString stringWithFormat:@"%d",[userId intValue] % 10000];
  312. NSString* url = [NSString stringWithFormat:@"%@avatar/t/%@/%@.jpg",g_config.downloadAvatarUrl,dir,userId];
  313. return url;
  314. }
  315. -(void)getHeadImageSmall:(NSString*)userId userName:(NSString *)userName imageView:(UIImageView*)iv{
  316. for (UIView *subView in iv.subviews) {
  317. [subView removeFromSuperview];
  318. }
  319. // 客服头像
  320. if([userId intValue]<10100 && [userId intValue]>=10000){ // im_10000
  321. iv.image = [UIImage imageNamed:[NSString stringWithFormat:@"ALOGO_120"]];
  322. return;
  323. }
  324. // 支付公众号
  325. if ([userId intValue] == [SHIKU_TRANSFER intValue]) {
  326. iv.image = [UIImage imageNamed:[NSString stringWithFormat:@"shiku_transfer"]];
  327. return;
  328. }
  329. NSString* s;
  330. if([userId isKindOfClass:[NSNumber class]])
  331. s = [(NSNumber*)userId stringValue];
  332. else
  333. s = userId;
  334. // if([s length]<=0)
  335. // return;
  336. // Android头像
  337. if ([s isEqualToString:ANDROID_USERID]) {
  338. iv.image = [UIImage imageNamed:@"my_Android_icon"];
  339. return;
  340. }
  341. // PC头像
  342. if ([s isEqualToString:PC_USERID]) {
  343. iv.image = [UIImage imageNamed:@"my_windows_icon"];
  344. return;
  345. }
  346. // MAC头像
  347. if ([s isEqualToString:MAC_USERID]) {
  348. iv.image = [UIImage imageNamed:@"my_mac_computer_icon"];
  349. return;
  350. }
  351. // WEB头像
  352. if ([s isEqualToString:WEB_USERID]) {
  353. iv.image = [UIImage imageNamed:@"my_web_icon"];
  354. return;
  355. }
  356. UIImage *placeholderImage = [UIImage imageNamed:@"avatar_normal"];
  357. if (iv.image) {
  358. placeholderImage = iv.image;
  359. }
  360. NSString* dir = [NSString stringWithFormat:@"%d",[s intValue] % 10000];
  361. NSString* url = [NSString stringWithFormat:@"%@avatar/t/%@/%@.jpg",g_config.downloadAvatarUrl,dir,s];
  362. // [iv sd_setImageWithURL:[NSURL URLWithString:url] placeholderImage:[UIImage imageNamed:@"avatar_normal"] options:SDWebImageRetryFailed];
  363. [self getDefultHeadImage:[NSURL URLWithString:url] userId:userId userName:userName placeholderImage:placeholderImage iv:iv];
  364. }
  365. -(void)getHeadImageLarge:(NSString*)userId userName:(NSString *)userName imageView:(UIImageView*)iv{
  366. for (UIView *subView in iv.subviews) {
  367. [subView removeFromSuperview];
  368. }
  369. // 客服头像
  370. if([userId intValue]<10100 && [userId intValue]>=10000){ // im_10000
  371. iv.image = [UIImage imageNamed:[NSString stringWithFormat:@"ALOGO_120"]];
  372. return;
  373. }
  374. // 支付公众号
  375. if ([userId intValue] == [SHIKU_TRANSFER intValue]) {
  376. iv.image = [UIImage imageNamed:[NSString stringWithFormat:@"shiku_transfer"]];
  377. return;
  378. }
  379. NSString* s;
  380. if([userId isKindOfClass:[NSNumber class]])
  381. s = [(NSNumber*)userId stringValue];
  382. else
  383. s = userId;
  384. // if([s length]<=0)
  385. // return;
  386. // 我的其他手机设备头像
  387. if ([s isEqualToString:ANDROID_USERID]) {
  388. iv.image = [UIImage imageNamed:@"fdy"];
  389. return;
  390. }
  391. // 我的电脑端头像
  392. if ([s isEqualToString:PC_USERID] || [s isEqualToString:MAC_USERID] || [s isEqualToString:WEB_USERID]) {
  393. iv.image = [UIImage imageNamed:@"feb"];
  394. return;
  395. }
  396. NSString* dir = [NSString stringWithFormat:@"%d",[s intValue] % 10000];
  397. NSString* url = [NSString stringWithFormat:@"%@avatar/o/%@/%@.jpg",g_config.downloadAvatarUrl,dir,s];
  398. UIImage *placeholderImage = [UIImage imageNamed:@"avatar_normal"];
  399. if (iv.image) {
  400. placeholderImage = iv.image;
  401. }
  402. // [iv sd_setImageWithURL:[NSURL URLWithString:url] placeholderImage:placeholderImage options:SDWebImageRetryFailed];
  403. [self getDefultHeadImage:[NSURL URLWithString:url] userId:userId userName:userName placeholderImage:placeholderImage iv:iv];
  404. }
  405. -(void)getRoomHeadImageSmall:(NSString*)userId roomId:(NSString *)roomId imageView:(UIImageView*)iv{
  406. for (UIView *subView in iv.subviews) {
  407. [subView removeFromSuperview];
  408. }
  409. if (roomId.length <= 0) {
  410. return;
  411. }
  412. int hashCode = [self gethashCode:userId];
  413. int a = abs(hashCode % 10000);
  414. int b = abs(hashCode % 20000);
  415. NSString *urlStr = [NSString stringWithFormat:@"%@avatar/o/%d/%d/%@.jpg",g_config.downloadAvatarUrl,a,b,userId];
  416. [iv sd_setImageWithURL:[NSURL URLWithString:urlStr] placeholderImage:[self roomHeadImage:userId roomId:roomId] options:SDWebImageRefreshCached completed:^(UIImage * _Nullable image, NSError * _Nullable error, SDImageCacheType cacheType, NSURL * _Nullable imageURL) {
  417. if (error) {
  418. // [[SDWebImageManager sharedManager] removeFaileUrl:[NSURL URLWithString:urlStr]];
  419. }
  420. }];
  421. }
  422. -(UIImage *)roomHeadImage:(NSString *)userId roomId:(NSString *)roomId{
  423. UIImage *image;
  424. NSString *groupImagePath = [NSString stringWithFormat:@"%@%@/%@.%@",NSTemporaryDirectory(),g_myself.userId,userId,@"jpg"];
  425. if (groupImagePath && [[NSFileManager defaultManager] fileExistsAtPath:groupImagePath]) {
  426. return [UIImage imageWithContentsOfFile:groupImagePath];
  427. }
  428. //获取全部
  429. NSArray * allMem = [memberData fetchAllMembers:roomId];
  430. if(!allMem || allMem.count <= 1){
  431. return [UIImage imageNamed:@"groupImage"];//数据库没有值
  432. }
  433. NSMutableArray * userIdArr = [[NSMutableArray alloc] init];
  434. NSMutableArray * downLoadImageArr = [[NSMutableArray alloc] init];
  435. __block int finishCount = 0;
  436. NSString * roomIdStr = [userId mutableCopy];
  437. if (roomIdStr.length <= 0) {
  438. return [UIImage imageNamed:@"groupImage"];
  439. }
  440. // dispatch_async(dispatch_get_global_queue(0, 0), ^{
  441. //webcache
  442. SDWebImageManager * manager = [SDWebImageManager sharedManager];
  443. for (int i = 0; (i<allMem.count) && (i<10); i++) {
  444. memberData * member = allMem[i];
  445. //取userId
  446. long longUserId = member.userId;
  447. if (longUserId >= 10000000){
  448. [userIdArr addObject:[NSNumber numberWithLong:longUserId]];
  449. }
  450. if(userIdArr.count >= 5)
  451. break;
  452. }
  453. for (NSNumber * userIdNum in userIdArr) {
  454. NSString* dir = [NSString stringWithFormat:@"%ld",[userIdNum longValue] % 10000];
  455. NSString* url = [NSString stringWithFormat:@"%@avatar/t/%@/%@.jpg",g_config.downloadAvatarUrl,dir,userIdNum];
  456. [manager loadImageWithURL:[NSURL URLWithString:url] options:SDWebImageRefreshCached progress:^(NSInteger receivedSize, NSInteger expectedSize, NSURL * _Nullable targetURL) {
  457. } completed:^(UIImage * _Nullable image, NSData * _Nullable data, NSError * _Nullable error, SDImageCacheType cacheType, BOOL finished, NSURL * _Nullable imageURL) {
  458. finishCount++;
  459. if(image){
  460. [downLoadImageArr addObject:image];
  461. }
  462. if(error){
  463. }
  464. if (downLoadImageArr.count >= 5 || finishCount >= userIdArr.count){
  465. if (downLoadImageArr.count <userIdArr.count){
  466. UIImage * defaultImage = [UIImage imageNamed:@"userhead"];
  467. for (int i=(int)downLoadImageArr.count; i<userIdArr.count; i++) {
  468. [downLoadImageArr addObject:defaultImage];
  469. }
  470. }
  471. //生成群头像
  472. image = [self combineImage:downLoadImageArr];
  473. dispatch_async(dispatch_get_main_queue(), ^{
  474. if (image) {
  475. NSDictionary * groupDict = @{@"groupHeadImage":image,@"roomJid":roomIdStr};
  476. [g_notify postNotificationName:kGroupHeadImageModifyNotifaction object:groupDict];
  477. NSString *groupImagePath = [NSString stringWithFormat:@"%@%@/%@.%@",NSTemporaryDirectory(),g_myself.userId,roomIdStr,@"jpg"];
  478. if (groupImagePath && [[NSFileManager defaultManager] fileExistsAtPath:groupImagePath]) {
  479. NSError * error = nil;
  480. [[NSFileManager defaultManager] removeItemAtPath:groupImagePath error:&error];
  481. if (error)
  482. NSLog(@"删除文件错误:%@",error);
  483. }
  484. [g_server saveImageToFile:image file:groupImagePath isOriginal:NO];
  485. }
  486. });
  487. }
  488. }];
  489. }
  490. // });
  491. return image;
  492. }
  493. - (UIImage *)combineImage:(NSArray *)imageArray {
  494. UIView *view5 = [JJHeaders createHeaderView:140
  495. images:imageArray];
  496. view5.center = CGPointMake(235, 390);
  497. view5.backgroundColor = [UIColor colorWithRed:230/255.0 green:230/255.0 blue:230/255.0 alpha:1.0];
  498. CGSize s = view5.bounds.size;
  499. // 下面方法,第一个参数表示区域大小。第二个参数表示是否是非透明的。如果需要显示半透明效果,需要传NO,否则传YES。第三个参数就是屏幕密度了
  500. UIGraphicsBeginImageContextWithOptions(s, YES, 1.0);
  501. [view5.layer renderInContext:UIGraphicsGetCurrentContext()];
  502. UIImage*image = UIGraphicsGetImageFromCurrentImageContext();
  503. UIGraphicsEndImageContext();
  504. return image;
  505. }
  506. -(int)gethashCode:(NSString *)str {
  507. // 字符串转hash
  508. int hash = 0;
  509. for (int i = 0; i<[str length]; i++) {
  510. NSString *s = [str substringWithRange:NSMakeRange(i, 1)];
  511. char *unicode = (char *)[s cStringUsingEncoding:NSUnicodeStringEncoding];
  512. int charactorUnicode = 0;
  513. size_t length = strlen(unicode);
  514. for (int n = 0; n < length; n ++) {
  515. charactorUnicode += (int)((unicode[n] & 0xff) << (n * sizeof(char) * 8));
  516. }
  517. hash = hash * 31 + charactorUnicode;
  518. }
  519. return hash;
  520. }
  521. - (void)getDefultHeadImage:(NSURL *)url userId:(NSString *)userId userName:(NSString *)userName placeholderImage:(UIImage *)placeholderImage iv:(UIImageView *)iv {
  522. [iv sd_setImageWithURL:url placeholderImage:placeholderImage options:SDWebImageRefreshCached completed:^(UIImage * _Nullable image, NSError * _Nullable error, SDImageCacheType cacheType, NSURL * _Nullable imageURL) {
  523. if (error) {
  524. iv.image = [self getPlaceholderImage:userId userName:userName placeholderImage:placeholderImage iv:iv];
  525. }
  526. }];
  527. }
  528. - (UIImage *)getPlaceholderImage:(NSString *)userId userName:(NSString *)userName placeholderImage:(UIImage *)placeholderImage iv:(UIImageView *)iv {
  529. JXUserObject *user = [[JXUserObject sharedInstance] getUserById:userId];
  530. if (user.roomId.length > 0) {
  531. return placeholderImage;
  532. }else {
  533. NSString *nameStr = [NSString string];
  534. UILabel *name = [[UILabel alloc] initWithFrame:iv.bounds];
  535. name.layer.backgroundColor = THEMECOLOR.CGColor;
  536. name.textColor = [UIColor whiteColor];
  537. name.textAlignment = NSTextAlignmentCenter;
  538. name.font = SYSFONT(name.frame.size.width/3);
  539. if (userName.length <= 0) {
  540. if ([userId intValue] == [MY_USER_ID intValue]) {
  541. nameStr = MY_USER_NAME;
  542. }else {
  543. nameStr = user.userNickname;
  544. }
  545. }else {
  546. nameStr = userName;
  547. }
  548. name.text = [self subTextString:nameStr len:2];
  549. if (nameStr.length <= 0) {
  550. return placeholderImage;
  551. }
  552. return [UIImage imageWithView:name];
  553. }
  554. }
  555. -(NSString*)subTextString:(NSString*)str len:(NSInteger)len{
  556. if(str.length<=len)return str;
  557. int count=0;
  558. NSMutableString *sb = [NSMutableString string];
  559. for (NSUInteger i=str.length-1; i>0; i--) {
  560. NSRange range = NSMakeRange(i, 1) ;
  561. NSString *aStr = [str substringWithRange:range];
  562. count += [aStr lengthOfBytesUsingEncoding:NSUTF8StringEncoding]>1?2:1;
  563. [sb insertString:aStr atIndex:0];
  564. if(count >= len*2-1) {
  565. if (sb.length <= 2) {
  566. return [sb copy];
  567. }
  568. if (count >= len*2) {
  569. return [sb copy];
  570. }
  571. }
  572. }
  573. return str;
  574. }
  575. -(void)getImage:(NSString*)url imageView:(UIImageView*)iv{
  576. for (UIView *subView in iv.subviews) {
  577. [subView removeFromSuperview];
  578. }
  579. [iv sd_setImageWithURL:[NSURL URLWithString:url] placeholderImage:[UIImage imageNamed:@"avatar_normal"] options:SDWebImageRefreshCached completed:^(UIImage * _Nullable image, NSError * _Nullable error, SDImageCacheType cacheType, NSURL * _Nullable imageURL) {
  580. if (iv.image.size.width != iv.image.size.height) {
  581. CGRect rect;//然后,将此部分从图片中剪切出来
  582. if (iv.image.size.width > iv.image.size.height) {
  583. rect = CGRectMake((iv.image.size.width - iv.image.size.height) / 2, 0, iv.image.size.height, iv.image.size.height);
  584. }else {
  585. rect = CGRectMake(0, (iv.image.size.height - iv.image.size.width) / 2, iv.image.size.width, iv.image.size.width);
  586. }
  587. CGImageRef imageRef = CGImageCreateWithImageInRect([iv.image CGImage], rect);
  588. UIImage *image1 = [UIImage imageWithCGImage:imageRef];
  589. iv.image = image1;
  590. }
  591. }];
  592. // //按比例缩小iv
  593. // float count = iv.frame.size.height / iv.image.size.height;
  594. //
  595. // iv.frame = CGRectMake(0, iv.frame.origin.y, iv.image.size.width * count, iv.frame.size.height);
  596. //
  597. // iv.contentMode = UIViewContentModeScaleAspectFit;
  598. }
  599. -(void)delHeadImage:(NSString*)userId{
  600. NSString* s1;
  601. //获取userId
  602. if([userId isKindOfClass:[NSNumber class]])
  603. s1 = [(NSNumber*)userId stringValue];
  604. else
  605. s1 = userId;
  606. NSString* dir1 = [NSString stringWithFormat:@"%lld",[s1 longLongValue] % 10000];
  607. //头像网址
  608. NSString* url1 = [NSString stringWithFormat:@"%@avatar/t/%@/%@.jpg",g_config.downloadAvatarUrl,dir1,s1];
  609. NSString* url2 = [NSString stringWithFormat:@"%@avatar/o/%@/%@.jpg",g_config.downloadAvatarUrl,dir1,s1];
  610. [[SDImageCache sharedImageCache] removeImageForKey:url1 withCompletion:nil];
  611. [[SDImageCache sharedImageCache] removeImageForKey:url2 withCompletion:nil];
  612. // [[SDImageCache sharedImageCache] removeImageForKey:url1];
  613. // [[SDImageCache sharedImageCache] removeImageForKey:url2];
  614. }
  615. -(void)waitStart:(UIView*)view{
  616. [self waitEnd:view];
  617. UIActivityIndicatorView* aiv;
  618. aiv = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];
  619. aiv.center = view.center;
  620. //aiv.center = CGPointMake(view.bounds.size.width / 2.0f, view.bounds.size.height/2 + 30.0f);
  621. [aiv startAnimating];
  622. [view addSubview:aiv];
  623. // [aiv release];
  624. [self performSelector:@selector(waitFree:) withObject:view afterDelay:jx_connect_timeout];
  625. [_dictWaitViews setObject:aiv forKey:[NSString stringWithFormat:@"%ld",view.tag]];
  626. // NSLog(@"_dictWaitViews=%d",[_dictWaitViews count]);
  627. }
  628. -(void)waitEnd:(UIView*)view{
  629. UIActivityIndicatorView* aiv = [_dictWaitViews objectForKey:[NSString stringWithFormat:@"%ld",view.tag]];
  630. if(aiv)
  631. @try {
  632. [aiv stopAnimating];
  633. aiv.hidden = YES;
  634. }
  635. @catch (NSException *exception) {
  636. }
  637. aiv =nil;
  638. }
  639. -(void)waitFree:(UIView*)sender{
  640. NSString* s=[NSString stringWithFormat:@"%ld",sender.tag];
  641. UIActivityIndicatorView* aiv = [_dictWaitViews objectForKey:s];
  642. [_dictWaitViews removeObjectForKey:s];
  643. // NSLog(@"_dictWaitViews=%d",[_dictWaitViews count]);
  644. [aiv stopAnimating];
  645. [aiv removeFromSuperview];
  646. aiv = nil;
  647. }
  648. -(void)showMsg:(NSString*)s{
  649. [g_window addSubview:_hud.view];
  650. [_hud setCaption:s];
  651. [_hud show];
  652. [_hud hideAfter:1.0];
  653. }
  654. -(void)showMsg:(NSString*)s delay:(float)delay{
  655. [g_window addSubview:_hud.view];
  656. [_hud setCaption:s];
  657. [_hud show];
  658. if (delay)
  659. [_hud hideAfter:delay];
  660. else
  661. [_hud hideAfter:1.0];
  662. }
  663. -(NSString*)getString:(NSString*)s{
  664. if(s == nil || ![s isKindOfClass:[NSString class]])
  665. return @"";
  666. else
  667. return s;
  668. }
  669. //获取服务器当前时间
  670. - (void)getCurrentTimeToView:(id)toView{
  671. JXConnection* p = [self addTask:act_getCurrentTime param:nil toView:toView];
  672. [p setPostValue:self.access_token forKey:@"access_token"];
  673. [p go];
  674. }
  675. #pragma mark-----登录加密
  676. -(void)login:(JXUserObject*)user toView:(id)toView{
  677. NSString *uuid = [JXKeyChainStore getUUIDByKeyChain];
  678. NSLog(@"%@",g_macAddress);
  679. NSString *identifier = [[NSBundle mainBundle] bundleIdentifier];
  680. JXConnection* p = [self addTask:act_UserLogin param:nil toView:toView];
  681. [p setPostValue:[self getMD5String:user.telephone] forKey:@"telephone"];
  682. [p setPostValue:user.areaCode forKey:@"areaCode"];
  683. [p setPostValue:user.password forKey:@"password"];
  684. [p setPostValue:user.verificationCode forKey:@"verificationCode"];
  685. [p setPostValue:@"client_credentials" forKey:@"grant_type"];
  686. [p setPostValue:user.model forKey:@"model"];
  687. [p setPostValue:user.osVersion forKey:@"osVersion"];
  688. [p setPostValue:g_macAddress forKey:@"serial"];
  689. [p setPostValue:[NSNumber numberWithDouble:self.latitude] forKey:@"latitude"];
  690. [p setPostValue:[NSNumber numberWithDouble:self.longitude] forKey:@"longitude"];
  691. [p setPostValue:user.location forKey:@"location"];
  692. [p setPostValue:identifier forKey:@"appId"];
  693. [p setPostValue:[NSNumber numberWithInt:1] forKey:@"xmppVersion"];
  694. [p setPostValue:uuid forKey:@"serial"];
  695. // 登录类型 0:账号密码登录,1:短信验证码登录
  696. if (user.verificationCode.length > 0) {
  697. [p setPostValue:@1 forKey:@"loginType"];
  698. }else {
  699. [p setPostValue:@0 forKey:@"loginType"];
  700. }
  701. // 是否开启集群
  702. if ([g_config.isOpenCluster integerValue] == 1) {
  703. NSString *area = [g_default objectForKey:kLocationArea];
  704. [p setPostValue:area forKey:@"area"];
  705. }
  706. [p go];
  707. }
  708. // -(void)loginV1:(NSString *)userId salt:(NSString *)salt data:(NSString *)data model:(NSString *)model secrity:(NSString *)security toView:(id)toView
  709. // 新版登录
  710. -(void)loginV1:(NSString *)userId salt:(NSString *)salt data:(NSString *)data toView:(id)toView{
  711. JXConnection* p = [self addTask:act_UserLoginV1 param:nil toView:toView];
  712. [p setPostValue:userId forKey:@"userId"];
  713. [p setPostValue:salt forKey:@"salt"];
  714. [p setPostValue:data forKey:@"data"];
  715. [p setPostValue:@"ios" forKey:@"deviceId"];
  716. [p go];
  717. }
  718. -(void)loginV1:(NSString *)userId salt:(NSString *)salt data:(NSString *)data model:(NSString *)model secrity:(NSString *)security toView:(id)toView{
  719. JXConnection* p = [self addTask:act_UserLoginV1 param:nil toView:toView];
  720. [p setPostValue:userId forKey:@"userId"];
  721. [p setPostValue:salt forKey:@"salt"];
  722. [p setPostValue:data forKey:@"data"];
  723. [p setPostValue:@"ios" forKey:@"deviceId"];
  724. [p setPostValue:model forKey:@"model"];
  725. [p setPostValue:security forKey:@"security"];
  726. [p setPostValue:[JXKeyChainStore getUUIDByKeyChain] forKey:@"serial"];
  727. [p go];
  728. }
  729. -(BOOL)autoLogin:(id)toView{
  730. NSString * userId = MY_USER_ID;
  731. NSString * token = [[NSUserDefaults standardUserDefaults] stringForKey:kMY_USER_TOKEN];
  732. NSString * userName = MY_USER_NAME;
  733. NSString *identifier = [[NSBundle mainBundle] bundleIdentifier];
  734. if([token length]<=0)
  735. return NO;
  736. myself.userId = userId;
  737. myself.userNickname = userName;
  738. self.access_token = token;
  739. JXConnection* p = [self addTask:act_userLoginAuto param:nil toView:toView];
  740. [p setPostValue:userId forKey:@"userId"];
  741. [p setPostValue:token forKey:@"access_token"];
  742. [p setPostValue:[JXKeyChainStore getUUIDByKeyChain] forKey:@"serial"];
  743. [p setPostValue:[NSNumber numberWithDouble:latitude] forKey:@"latitude"];
  744. [p setPostValue:[NSNumber numberWithDouble:longitude] forKey:@"longitude"];
  745. [p setPostValue:identifier forKey:@"appId"];
  746. [p setPostValue:[NSNumber numberWithInt:1] forKey:@"xmppVersion"];
  747. // 是否开启集群
  748. if ([g_config.isOpenCluster integerValue] == 1) {
  749. NSString *area = [g_default objectForKey:kLocationArea];
  750. [p setPostValue:area forKey:@"area"];
  751. }
  752. [p go];
  753. return YES;
  754. }
  755. -(void)autoLoginV1:(NSString *)loginToken salt:(NSString *)salt data:(NSString *)data toView:(id)toView {
  756. JXConnection* p = [self addTask:act_userLoginAutoV1 param:nil toView:toView];
  757. [p setPostValue:loginToken forKey:@"loginToken"];
  758. // [p setPostValue:access_token forKey:@"access_token"];
  759. [p setPostValue:salt forKey:@"salt"];
  760. [p setPostValue:data forKey:@"data"];
  761. [p go];
  762. }
  763. //短信登录
  764. - (void)userSMSLogin:(NSString *)areaCode account:(NSString *)account salt:(NSString *)salt data:(NSString *)data toView:(id)toView {
  765. JXConnection* p = [self addTask:act_UserSMSLogin param:nil toView:toView];
  766. [p setPostValue:areaCode forKey:@"areaCode"];
  767. [p setPostValue:account forKey:@"account"];
  768. [p setPostValue:salt forKey:@"salt"];
  769. [p setPostValue:data forKey:@"data"];
  770. [p setPostValue:@"ios" forKey:@"deviceId"];
  771. [p go];
  772. }
  773. #pragma mark----授权登录
  774. - (void)loginIsAuthKey:(NSString *)authKey toView:(id )toView{
  775. JXConnection *p = [self addTask:act_UserDeviceIsAuth param:nil toView:toView];
  776. [p setPostValue:authKey forKey:@"authKey"];
  777. [p go];
  778. }
  779. - (void)agreeAuthLogin:(NSString *)authKey toView:(id )toView{
  780. // [self readDefaultSetting];
  781. NSString *identifier = [[NSBundle mainBundle] bundleIdentifier];
  782. JXConnection* p = [self addTask:act_UserAffirmAuth param:nil toView:toView];
  783. [p setPostValue:myself.userId forKey:@"userId"];
  784. [p setPostValue:self.access_token forKey:@"access_token"];
  785. [p setPostValue:[JXKeyChainStore getUUIDByKeyChain] forKey:@"serial"];
  786. [p setPostValue:myself.latitude forKey:@"latitude"];
  787. [p setPostValue:myself.longitude forKey:@"longitude"];
  788. [p setPostValue:identifier forKey:@"appId"];
  789. [p setPostValue:[NSNumber numberWithInt:1] forKey:@"xmppVersion"];
  790. [p setPostValue:authKey forKey:@"authKey"];
  791. [p go];
  792. }
  793. #pragma mark----登出
  794. -(void)logout:(NSString *)areaCode toView:(id)toView{
  795. JXConnection* p = [self addTask:act_UserLogout param:nil toView:toView];
  796. NSString *identifier = [[NSBundle mainBundle] bundleIdentifier];
  797. [p setPostValue:access_token forKey:@"access_token"];
  798. [p setPostValue:[self getMD5String:myself.telephone] forKey:@"telephone"];
  799. [p setPostValue:areaCode forKey:@"areaCode"];
  800. [p setPostValue:myself.userId forKey:@"userId"];
  801. [p setPostValue:myself.model forKey:@"model"];
  802. [p setPostValue:myself.osVersion forKey:@"osVersion"];
  803. [p setPostValue:myself.serialNumber forKey:@"serialNumber"];
  804. [p setPostValue:myself.latitude forKey:@"latitude"];
  805. [p setPostValue:myself.longitude forKey:@"longitude"];
  806. [p setPostValue:myself.location forKey:@"location"];
  807. [p setPostValue:identifier forKey:@"appId"];
  808. [p setPostValue:@"ios" forKey:@"deviceKey"];
  809. [p go];
  810. self.lastOfflineTime = [[NSDate date] timeIntervalSince1970];
  811. [g_default setObject:[NSNumber numberWithLongLong:self.lastOfflineTime] forKey:kLastOfflineTime];
  812. [g_default synchronize];
  813. }
  814. -(void)outTime:(id)toView{
  815. JXConnection* p = [self addTask:act_OutTime param:nil toView:toView];
  816. [p setPostValue:access_token forKey:@"access_token"];
  817. [p setPostValue:myself.userId forKey:@"userId"];
  818. [p go];
  819. self.lastOfflineTime = [[NSDate date] timeIntervalSince1970];
  820. [g_default setObject:[NSNumber numberWithLongLong:self.lastOfflineTime] forKey:kLastOfflineTime];
  821. [g_default synchronize];
  822. }
  823. -(void)doGetUserIdList:(NSMutableDictionary*)map array:(NSArray*)array{
  824. // for(int i=0;i<[map count];i++){
  825. // [[[map allValues] objectAtIndex:i] release];
  826. // [[[map allKeys] objectAtIndex:i] release];
  827. // }
  828. [map removeAllObjects];
  829. for(int i=0;i<[array count];i++){
  830. NSDictionary* p = [array objectAtIndex:i];
  831. [map setObject:[[p objectForKey:@"keyId"] copy] forKey:[[p objectForKey:@"userId"] copy]];
  832. p = nil;
  833. }
  834. }
  835. -(void)doLoginOK:(NSDictionary*)dict user:(JXUserObject*)user{
  836. g_securityUtil = [[JXSecurityUtil alloc] init];
  837. #ifdef IS_MsgEncrypt
  838. g_msgUtil = [[JXMsgUtil alloc] init];
  839. #endif
  840. isLogin = YES;
  841. myself.password = user.password;
  842. myself.telephone = user.telephone;
  843. myself.userId = user.userId;
  844. myself.companyId = user.companyId;
  845. myself.userNickname = user.userNickname;
  846. myself.areaCode = user.areaCode;
  847. myself.myInviteCode = user.myInviteCode;
  848. myself.role = user.role;
  849. [self doSaveUser:dict];//保存用户信息
  850. [self performSelector:@selector(setPushChannelId:) withObject:[BPush getChannelId] afterDelay:2];
  851. if([dict objectForKey:@"access_token"])
  852. self.access_token = [dict objectForKey:@"access_token"];
  853. if([dict objectForKey:@"loginToken"])
  854. self.loginToken = [dict objectForKey:@"loginToken"];
  855. if([dict objectForKey:@"loginKey"])
  856. self.loginKey = [dict objectForKey:@"loginKey"];
  857. if([dict objectForKey:@"httpKey"])
  858. self.httpKey = [dict objectForKey:@"httpKey"];
  859. if([dict objectForKey:@"messageKey"])
  860. self.messageKey = [dict objectForKey:@"messageKey"];
  861. if ([dict objectForKey:@"payKey"]) {
  862. self.payKey = [dict objectForKey:@"payKey"];
  863. }
  864. [self saveDefaultSetting];//写到配置表
  865. // 创建系统号
  866. [[JXUserObject sharedInstance] createSystemFriend];
  867. self.multipleLogin = [[JXMultipleLogin alloc] init];
  868. [FileInfo createDir:myTempFilePath];
  869. #if TAR_IM
  870. #ifdef Meeting_Version
  871. [g_meeting startMeeting];
  872. if ([g_default objectForKey:@"voipToken"]) {
  873. [g_server pkpushSetToken:[g_default objectForKey:@"voipToken"] deviceId:nil isVoip:1 toView:nil];
  874. }
  875. #endif
  876. #endif
  877. if (![g_config.isOpenAPNSorJPUSH boolValue]) {
  878. // 上传推送apnsToken
  879. if ([g_default objectForKey:@"apnsToken"]) {
  880. [g_server pkpushSetToken:[g_default objectForKey:@"apnsToken"] deviceId:nil isVoip:0 toView:nil];
  881. }
  882. }else {
  883. // 上传jPush专用RegistrationID
  884. if ([g_default objectForKey:@"jPushRegistrationID"]) {
  885. [g_server jPushSetToken:[g_default objectForKey:@"jPushRegistrationID"] toView:self];
  886. }
  887. }
  888. if ([g_myself.telephone rangeOfString:@"18938880001"].location != NSNotFound) {
  889. myself.phoneDic = [myself getPhoneDic];
  890. }
  891. // 登录成功后清除过期聊天记录
  892. [[JXUserObject sharedInstance] deleteUserChatRecordTimeOutMsg];
  893. if ([g_config.showContactsUser intValue] == 1) {
  894. // 上传通讯录
  895. _addressBook = [JXAddressBook sharedInstance];
  896. [_addressBook uploadAddressBookContacts];
  897. }
  898. // 系统登录成功
  899. [g_notify postNotificationName:kSystemLoginNotifaction object:self userInfo:nil];
  900. }
  901. // 抢奖品
  902. - (void)geact_roomgroupTypePackRedsalt:(NSString *)salt groupTypeDeliveryId:(NSString *)groupTypeDeliveryId ToView:(id)toView {
  903. JXConnection* p = [self addTask:act_roomgroupTypePackRed param:nil toView:toView];
  904. [p setPostValue:salt forKey:@"salt"];
  905. [p setPostValue:access_token forKey:@"access_token"];
  906. [p setPostValue:groupTypeDeliveryId forKey:@"groupTypeDeliveryId"];
  907. [p go];
  908. }
  909. // 抢奖品
  910. - (void)getRroomActivity:(NSString *)roomActivityId ToView:(id)toView {
  911. JXConnection* p = [self addTask:act_roomActivity param:nil toView:toView];
  912. [p setPostValue:access_token forKey:@"access_token"];
  913. [p setPostValue:roomActivityId forKey:@"activityDeliveryId"];
  914. [p go];
  915. }
  916. // 用户开奖列表
  917. - (void)getRoomActivityRecordToView:(id)toView {
  918. JXConnection* p = [self addTask:act_roomActivityRecord param:nil toView:toView];
  919. [p setPostValue:access_token forKey:@"access_token"];
  920. [p go];
  921. }
  922. // 奖品列表
  923. - (void)getRoomActivitylistToView:(id)toView {
  924. JXConnection* p = [self addTask:act_getRoomActivitylist param:nil toView:toView];
  925. [p setPostValue:access_token forKey:@"access_token"];
  926. [p setPostValue:@3 forKey:@"type"];
  927. [p go];
  928. }
  929. // 根据等级获取表情列表
  930. - (void)getFaceListByGradeToView:(id)toView {
  931. JXConnection* p = [self addTask:act_getFaceListByGrade param:nil toView:toView];
  932. [p setPostValue:access_token forKey:@"access_token"];
  933. [p go];
  934. }
  935. // 获取所有气泡字体 无参数
  936. - (void)getAllBubbleFontListToView:(id)toView {
  937. JXConnection* p = [self addTask:act_getAllBubbleFontList param:nil toView:toView];
  938. // [p setPostValue:access_token forKey:@"access_token"];
  939. [p go];
  940. }
  941. // 获取气泡字体根据用户等级 参数userId 不传userId 就是查询自己
  942. - (void)getbubbleFontByUserId:(NSString *)userId ToView:(id)toView {
  943. JXConnection* p = [self addTask:act_getbubbleFontByUserId param:nil toView:toView];
  944. if (userId != nil) {
  945. [p setPostValue:userId forKey:@"userId"];
  946. }
  947. [p setPostValue:access_token forKey:@"access_token"];
  948. [p go];
  949. }
  950. // 更改用户默认气泡字体 id是选中的
  951. - (void)changeUserDefaultBubbleFont:(NSString *)id ToView:(id)toView {
  952. JXConnection* p = [self addTask:act_changeUserDefaultBubbleFont param:nil toView:toView];
  953. [p setPostValue:id forKey:@"bubbleFontId"];
  954. [p setPostValue:access_token forKey:@"access_token"];
  955. [p go];
  956. }
  957. // 所有等级数据
  958. - (void)getAllGradeListToView:(id)toView {
  959. JXConnection* p = [self addTask:act_getGradeList param:nil toView:toView];
  960. [p go];
  961. }
  962. /// 第三方支付接口
  963. /// @param amount 金额 不能小于1
  964. /// @param type 支付方式 支付宝:1
  965. /// @param toView 代理
  966. - (void)paymentByThirdAmount:(NSString *)amount type:(NSString *)type ToView:(id)toView {
  967. if (amount.doubleValue < 1.0) {
  968. [g_App showAlert:@"金额不能小于1元"];
  969. return;
  970. }
  971. JXConnection* p = [self addTask:act_paymentByThird param:nil toView:toView];
  972. [p setPostValue:amount forKey:@"amount"];
  973. [p setPostValue:[NSNumber numberWithInt:type.intValue] forKey:@"type"];
  974. [p setPostValue:access_token forKey:@"access_token"];
  975. [p go];
  976. }
  977. /// App 资源获取
  978. /// @param code 0:导航链接 1:欢迎语 2:启动页广告 3:开奖结果 4:开奖广告 5:丝带
  979. /// @param toView 回调页面
  980. -(void)getAppResource:(NSString *)code ToView:(id)toView{
  981. JXConnection* p = [self addTask:act_getAppResource param:nil toView:toView];
  982. [p setPostValue:code forKey:@"code"];
  983. [p go];
  984. }
  985. - (void)getAdvertisingToView:(id)toView{
  986. JXConnection* p = [self addTask:act_getAdvertising param:nil toView:toView];
  987. [p setPostValue:access_token forKey:@"access_token"];
  988. [p go];
  989. }
  990. //客服
  991. -(void)customerLinkList:(id)toView{
  992. JXConnection* p = [self addTask:act_customerLinkList param:nil toView:toView];
  993. [p go];
  994. }
  995. - (void)getFaceList:(NSString *)type View:(id)toView{
  996. JXConnection* p = [self addTask:act_FaceList param:nil toView:toView];
  997. [p setPostValue:access_token forKey:@"access_token"];
  998. [p setPostValue:type forKey:@"type"];
  999. [p go];
  1000. }
  1001. - (void)getFaceDetail:(NSString *)name View:(id)toView {
  1002. JXConnection* p = [self addTask:act_FaceGetName param:nil toView:toView];
  1003. [p setPostValue:access_token forKey:@"access_token"];
  1004. [p setPostValue:name forKey:@"name"];
  1005. [p go];
  1006. }
  1007. - (void)addFaceClollect:(NSString *)faceId faceName:(NSString *)faceName url:(NSString *)url View:(id)toView {
  1008. JXConnection* p = [self addTask:act_FaceClollectAddFaceClollect param:nil toView:toView];
  1009. [p setPostValue:access_token forKey:@"access_token"];
  1010. [p setPostValue:g_myself.userId forKey:@"userId"];
  1011. [p setPostValue:faceId forKey:@"faceId"];
  1012. [p setPostValue:faceName forKey:@"faceName"];
  1013. [p setPostValue:url forKey:@"url"];
  1014. [p go];
  1015. }
  1016. // act_FaceClollectDeleteByFaceName
  1017. - (void)faceClollectDeleteByFaceName:(NSString *)faceName View:(id)toView {
  1018. JXConnection* p = [self addTask:act_FaceClollectDeleteByFaceName param:nil toView:toView];
  1019. [p setPostValue:access_token forKey:@"access_token"];
  1020. [p setPostValue:g_myself.userId forKey:@"userId"];
  1021. [p setPostValue:faceName forKey:@"name"];
  1022. [p go];
  1023. }
  1024. // act_FaceClollectList 收藏表情包列表:0 / 获取收藏的单个表情列表:1
  1025. - (void)faceClollectListType:(NSString *)type View:(id)toView {
  1026. JXConnection* p = [self addTask:act_FaceClollectList param:nil toView:toView];
  1027. [p setPostValue:access_token forKey:@"access_token"];
  1028. [p setPostValue:g_myself.userId forKey:@"userId"];
  1029. [p setPostValue:type forKey:@"type"];
  1030. [p go];
  1031. }
  1032. // act_FaceClollectDeleteFaceClollect 批量删除单个表情集合
  1033. - (void)faceClollectDeleteFaceClollect:(NSString *)ids View:(id)toView {
  1034. JXConnection* p = [self addTask:act_FaceClollectDeleteFaceClollect param:nil toView:toView];
  1035. [p setPostValue:access_token forKey:@"access_token"];
  1036. [p setPostValue:g_myself.userId forKey:@"userId"];
  1037. [p setPostValue:ids forKey:@"ids"];
  1038. [p go];
  1039. }
  1040. -(void)doSaveUser:(NSDictionary*)dict{
  1041. if([dict objectForKey:@"userId"])
  1042. myself.userId = [[dict objectForKey:@"userId"] stringValue];
  1043. if([dict objectForKey:@"nickname"])
  1044. myself.userNickname = [dict objectForKey:@"nickname"];
  1045. if([dict objectForKey:@"companyId"])
  1046. myself.companyId = [dict objectForKey:@"companyId"];
  1047. if([dict objectForKey:@"password"])
  1048. myself.password = [dict objectForKey:@"password"];
  1049. if([dict objectForKey:@"telephone"])
  1050. myself.telephone = [dict objectForKey:@"telephone"];
  1051. if([dict objectForKey:@"phone"])
  1052. myself.phone = [dict objectForKey:@"phone"];
  1053. if([dict objectForKey:@"areaCode"])
  1054. myself.areaCode = [dict objectForKey:@"areaCode"];
  1055. if([dict objectForKey:@"myInviteCode"])
  1056. myself.myInviteCode = [dict objectForKey:@"myInviteCode"];
  1057. if ([dict objectForKey:@"role"]) {
  1058. myself.role = [dict objectForKey:@"role"];
  1059. }
  1060. if([(NSDictionary *)[dict objectForKey:@"login"] objectForKey:@"offlineTime"]){
  1061. long long lastOfflineTime = [[g_default objectForKey:kLastOfflineTime] longLongValue];
  1062. if (lastOfflineTime > 0) {
  1063. self.lastOfflineTime = lastOfflineTime;
  1064. }else {
  1065. self.lastOfflineTime = [[(NSDictionary *)[dict objectForKey:@"login"] objectForKey:@"offlineTime"] longLongValue];
  1066. }
  1067. // NSDate * da = [NSDate dateWithTimeIntervalSince1970:self.lastOfflineTime];
  1068. // NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
  1069. // [dateFormatter setDateFormat: @"yyyy-MM-dd HH:mm:ss"];
  1070. // NSDate *destDate= [dateFormatter dateFromString:<#(nonnull NSString *)#>];
  1071. }
  1072. if ([dict objectForKey:@"friendCount"]) {
  1073. myself.friendCount = [dict objectForKey:@"friendCount"];
  1074. }
  1075. if ([dict objectForKey:@"settings"]) {
  1076. myself.chatRecordTimeOut = [NSString stringWithFormat:@"%@",[(NSDictionary *)[dict objectForKey:@"settings"] objectForKey:@"chatRecordTimeOut"]];
  1077. myself.chatSyncTimeLen = [NSString stringWithFormat:@"%@",[(NSDictionary *)[dict objectForKey:@"settings"] objectForKey:@"chatSyncTimeLen"]];
  1078. myself.groupChatSyncTimeLen = [NSString stringWithFormat:@"%@",[(NSDictionary *)[dict objectForKey:@"settings"] objectForKey:@"groupChatSyncTimeLen"]];
  1079. myself.friendsVerify = [NSString stringWithFormat:@"%@",[(NSDictionary *)[dict objectForKey:@"settings"] objectForKey:@"friendsVerify"]];
  1080. myself.isEncrypt = [NSString stringWithFormat:@"%@",[(NSDictionary *)[dict objectForKey:@"settings"] objectForKey:@"isEncrypt"]];
  1081. myself.isTyping = [NSString stringWithFormat:@"%@",[(NSDictionary *)[dict objectForKey:@"settings"] objectForKey:@"isTyping"]];
  1082. myself.isVibration = [NSString stringWithFormat:@"%@",[(NSDictionary *)[dict objectForKey:@"settings"] objectForKey:@"isVibration"]];
  1083. myself.multipleDevices = [NSString stringWithFormat:@"%@",[(NSDictionary *)[dict objectForKey:@"settings"] objectForKey:@"multipleDevices"]];
  1084. myself.isUseGoogleMap = [NSString stringWithFormat:@"%@",[(NSDictionary *)[dict objectForKey:@"settings"] objectForKey:@"isUseGoogleMap"]];
  1085. myself.filterCircleUserIds = [(NSDictionary *)[dict objectForKey:@"settings"] objectForKey:@"filterCircleUserIds"];
  1086. }
  1087. myself.countryId = [dict objectForKey:@"countryId"];
  1088. myself.provinceId = [dict objectForKey:@"provinceId"];
  1089. myself.cityId = [dict objectForKey:@"cityId"];
  1090. myself.areaId = [dict objectForKey:@"areaId"];
  1091. myself.level = [dict objectForKey:@"level"];
  1092. myself.vip = [dict objectForKey:@"vip"];
  1093. myself.userType = [dict objectForKey:@"userType"];
  1094. myself.status = [dict objectForKey:@"status"];
  1095. myself.attCount = [dict objectForKey:@"attCount"];
  1096. myself.fansCount = [dict objectForKey:@"fansCount"];
  1097. myself.sex = [dict objectForKey:@"sex"];
  1098. myself.userDescription = [dict objectForKey:@"description"];
  1099. myself.isupdate = [dict objectForKey:@"isupdate"];
  1100. // myself.isMultipleLogin = [dict objectForKey:@"multipleDevices"];
  1101. myself.isPayPassword = [dict objectForKey:@"payPassword"];
  1102. myself.birthday = [NSDate dateWithTimeIntervalSince1970:[[dict objectForKey:@"birthday"] longLongValue]];
  1103. myself.timeCreate = [NSDate dateWithTimeIntervalSince1970:[[dict objectForKey:@"createTime"] longLongValue]];
  1104. myself.account = [dict objectForKey:@"account"];
  1105. myself.setAccountCount = [dict objectForKey:@"setAccountCount"];
  1106. #ifdef IS_MsgEncrypt
  1107. if ([dict objectForKey:@"dhMsgPublicKey"]) {
  1108. g_msgUtil.dhPublicKey = [dict objectForKey:@"dhMsgPublicKey"];
  1109. }
  1110. NSString *dhPrivateKey = [g_default objectForKey:kMY_USER_PrivateKey_DH];
  1111. if (dhPrivateKey && dhPrivateKey.length > 0) {
  1112. NSData *dhPriKeyData = [[NSData alloc] initWithBase64EncodedString:dhPrivateKey options:NSDataBase64DecodingIgnoreUnknownCharacters];
  1113. NSData *data = [AESUtil decryptAESData:dhPriKeyData key:[MD5Util getMD5DataWithString:myself.userId]];
  1114. g_msgUtil.dhPrivateKey = [data base64EncodedStringWithOptions:0];
  1115. }else {
  1116. if ([dict objectForKey:@"dhMsgPrivateKey"]) {
  1117. NSString *dhPriKey = [dict objectForKey:@"dhMsgPrivateKey"];
  1118. NSData *dhPriKeyData = [[NSData alloc] initWithBase64EncodedString:dhPriKey options:NSDataBase64DecodingIgnoreUnknownCharacters];
  1119. NSData *data = [AESUtil decryptAESData:dhPriKeyData key:[MD5Util getMD5DataWithString:self.temporaryPWD]];
  1120. g_msgUtil.dhPrivateKey = [data base64EncodedStringWithOptions:0];
  1121. NSData *dhPriData = [[NSData alloc] initWithBase64EncodedString:g_msgUtil.dhPrivateKey options:NSDataBase64DecodingIgnoreUnknownCharacters];
  1122. NSData *dhPriAesData = [AESUtil encryptAESData:dhPriData key:[MD5Util getMD5DataWithString:myself.userId]];
  1123. NSString *dhPriStr = [dhPriAesData base64EncodedStringWithOptions:0];
  1124. [g_default setObject:dhPriStr forKey:kMY_USER_PrivateKey_DH];
  1125. }
  1126. }
  1127. if ([dict objectForKey:@"rsaMsgPublicKey"]) {
  1128. g_msgUtil.rsaPublicKey = [dict objectForKey:@"rsaMsgPublicKey"];
  1129. }
  1130. NSString *rsaPrivateKey = [g_default objectForKey:kMY_USER_PrivateKey_RSA];
  1131. if (rsaPrivateKey && rsaPrivateKey.length > 0) {
  1132. NSData *rsaPriKeyData = [[NSData alloc] initWithBase64EncodedString:rsaPrivateKey options:NSDataBase64DecodingIgnoreUnknownCharacters];
  1133. NSData *data = [AESUtil decryptAESData:rsaPriKeyData key:[MD5Util getMD5DataWithString:myself.userId]];
  1134. g_msgUtil.rsaPrivateKey = [data base64EncodedStringWithOptions:0];
  1135. }else {
  1136. if ([dict objectForKey:@"rsaMsgPrivateKey"]) {
  1137. NSString *rsaPriKey = [dict objectForKey:@"rsaMsgPrivateKey"];
  1138. NSData *rsaPriKeyData = [[NSData alloc] initWithBase64EncodedString:rsaPriKey options:NSDataBase64DecodingIgnoreUnknownCharacters];
  1139. NSData *data = [AESUtil decryptAESData:rsaPriKeyData key:[MD5Util getMD5DataWithString:self.temporaryPWD]];
  1140. g_msgUtil.rsaPrivateKey = [data base64EncodedStringWithOptions:0];
  1141. NSData *rsaPriData = [[NSData alloc] initWithBase64EncodedString:g_msgUtil.rsaPrivateKey options:NSDataBase64DecodingIgnoreUnknownCharacters];
  1142. NSData *rsaPriAesData = [AESUtil encryptAESData:rsaPriData key:[MD5Util getMD5DataWithString:myself.userId]];
  1143. NSString *rsaPriStr = [rsaPriAesData base64EncodedStringWithOptions:0];
  1144. [g_default setObject:rsaPriStr forKey:kMY_USER_PrivateKey_RSA];
  1145. self.temporaryPWD = nil;
  1146. }
  1147. }
  1148. #endif
  1149. }
  1150. -(void)saveDefaultSetting{
  1151. // [g_App saveMeetingId:myself.userId];
  1152. //初始化一个供App Groups使用的NSUserDefaults对象
  1153. //写入数据
  1154. [g_default setObject:self.access_token forKey:kMY_USER_TOKEN];
  1155. if (self.loginToken) {
  1156. [g_default setObject:self.loginToken forKey:kMY_USER_LOGINTOKEN];
  1157. [share_defaults setValue:self.loginToken forKey:kMY_ShareExtensionLoginToken];
  1158. }
  1159. if (self.loginKey) {
  1160. [g_default setObject:self.loginKey forKey:kMY_USER_LOGINKEY];
  1161. [share_defaults setValue:self.loginKey forKey:kMY_ShareExtensionLoginKey];
  1162. }
  1163. if (self.httpKey) {
  1164. [g_default setObject:self.httpKey forKey:kMY_USER_HTTPKEY];
  1165. [share_defaults setValue:self.httpKey forKey:kMY_ShareExtensionHttpKey];
  1166. }
  1167. [share_defaults setValue:self.access_token forKey:kMY_ShareExtensionToken];
  1168. if (!IsStringNull(myself.password)) {
  1169. [g_default setObject:myself.password forKey:kMY_USER_PASSWORD];
  1170. [share_defaults setValue:myself.password forKey:kMY_ShareExtensionPassword];
  1171. }
  1172. [g_default setObject:myself.telephone forKey:kMY_USER_LoginName];
  1173. if (!IsStringNull(myself.userId)) {
  1174. [g_default setObject:myself.userId forKey:kMY_USER_ID];
  1175. [share_defaults setValue:myself.userId forKey:kMY_ShareExtensionUserId];
  1176. }
  1177. if (!IsStringNull(myself.areaCode)) {
  1178. [g_default setObject:myself.areaCode forKey:kMY_USER_AREACODE];
  1179. }
  1180. [g_default setObject:myself.companyId forKey:kMY_USER_COMPANY_ID];
  1181. [g_default setObject:myself.userNickname forKey:kMY_USER_NICKNAME];
  1182. [g_default setObject:myself.myInviteCode forKey:kMY_USER_INVITECODE];
  1183. [g_default setObject:myself.role forKey:kMY_USER_ROLE];
  1184. }
  1185. -(void)readDefaultSetting{
  1186. myself.password = [g_default objectForKey:kMY_USER_PASSWORD];
  1187. myself.telephone = [g_default objectForKey:kMY_USER_LoginName];
  1188. myself.userId = MY_USER_ID;
  1189. myself.companyId =[g_default objectForKey:kMY_USER_COMPANY_ID];
  1190. self.access_token = [g_default objectForKey:kMY_USER_TOKEN];
  1191. self.httpKey = [g_default objectForKey:kMY_USER_HTTPKEY];
  1192. self.loginToken = [g_default objectForKey:kMY_USER_LOGINTOKEN];
  1193. self.loginKey = [g_default objectForKey:kMY_USER_LOGINKEY];
  1194. myself.myInviteCode = [g_default objectForKey:kMY_USER_INVITECODE];
  1195. myself.role = [g_default objectForKey:kMY_USER_ROLE];
  1196. myself.userNickname = MY_USER_NAME;
  1197. }
  1198. - (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {
  1199. // NSString * URLString = [NSString stringWithString:@"http://itunes.apple.com/cn/app/id333206289?mt=8"];
  1200. if (alertView.tag == 11000) {
  1201. [g_xmpp.reconnectTimer invalidate];
  1202. g_xmpp.reconnectTimer = nil;
  1203. g_xmpp.isReconnect = NO;
  1204. [g_xmpp logout];
  1205. NSLog(@"XMPP ---- jxserver");
  1206. if (![g_navigation.rootViewController isKindOfClass:[loginVC class]]) {
  1207. [self showLogin];
  1208. }else {
  1209. loginVC *vc = (loginVC *)g_navigation.rootViewController;
  1210. vc.btn.userInteractionEnabled = YES;
  1211. vc.launchImageView.hidden = YES;
  1212. }
  1213. }else {
  1214. NSString * URLString = @"http://itunes.apple.com/cn/app/id333206289?mt=8";
  1215. [[UIApplication sharedApplication] openURL:[NSURL URLWithString:URLString]];
  1216. }
  1217. }
  1218. -(long)getUserIdFromDict:(NSDictionary*)dict key:(NSString*)key{
  1219. NSArray* p=[dict allKeys];
  1220. long j=-1;
  1221. for(int i=0;i<[p count];i++){
  1222. if([key isEqualToString:[p objectAtIndex:i]]){
  1223. j=i;
  1224. break;
  1225. }
  1226. }
  1227. if(j<[p count] && j>=0)
  1228. j = [[[dict allValues] objectAtIndex:j] intValue];
  1229. else
  1230. j = 0;
  1231. p = nil;
  1232. return j;
  1233. }
  1234. -(void) showAddMoney:(NSDictionary*)dict msg:(NSString*)s autoHide:(BOOL)autoHide{
  1235. if(s == nil)
  1236. s = Localized(@"JXServer_OK");
  1237. if([dict objectForKey:@"thisMoney"] != nil){
  1238. int n = [[dict objectForKey:@"thisMoney"] intValue];
  1239. self.count_money += n;
  1240. if(self.count_money<0)
  1241. self.count_money = 0;
  1242. if(n>=0)
  1243. s = [NSString stringWithFormat:@"%@,%@%d%@%ld",s,Localized(@"JXServer_SystemSend1"),n,Localized(@"JXServer_SystemSend2"),self.count_money];
  1244. else
  1245. s = [NSString stringWithFormat:@"%@,%@%d%@%ld",s,Localized(@"JXServer_SystemSend3"),n,Localized(@"JXServer_SystemSend2"),self.count_money];
  1246. }
  1247. if(autoHide)
  1248. [g_App.jxServer showMsg:s];
  1249. else
  1250. [g_App showAlert:s];
  1251. }
  1252. -(void)bindUser:(NSString*)blogId type:(int)type toView:(id)toView{
  1253. [self addTask:act_BindUser param:[NSString stringWithFormat:@"?blogId=%@&type=%d",blogId,type] toView:toView];
  1254. }
  1255. -(void)unBindUser:(NSString*)blogId type:(int)type toView:(id)toView{
  1256. [self addTask:act_UnBindUser param:[NSString stringWithFormat:@"?blogId=%@&type=%d",blogId,type] toView:toView];
  1257. }
  1258. -(void)selectBindUser:(id)toView{
  1259. }
  1260. -(void)checkPhone:(NSString*)phone areaCode:(NSString *)areaCode verifyType:(int)verifyType toView:(id)toView{
  1261. JXConnection* p = [self addTask:act_CheckPhone param:nil toView:toView];
  1262. [p setPostValue:phone forKey:@"telephone"];
  1263. [p setPostValue:areaCode forKey:@"areaCode"];
  1264. if (verifyType > 0) {
  1265. [p setPostValue:[NSNumber numberWithInt:verifyType] forKey:@"verifyType"];
  1266. }
  1267. [p go];
  1268. }
  1269. -(NSString*)getMD5String:(NSString*)s{
  1270. if(s==nil)
  1271. return nil;
  1272. // if(s.length == 32){
  1273. // return s;
  1274. // }
  1275. const char *buf = [s cStringUsingEncoding:NSUTF8StringEncoding];
  1276. unsigned char md[MD5_DIGEST_LENGTH];
  1277. unsigned long n = strlen(buf);
  1278. MD5(buf, n, md);
  1279. printf("%s md5: ", buf);
  1280. char t[50]="",p[50]="";
  1281. int i;
  1282. for(i = 0; i< MD5_DIGEST_LENGTH; i++){
  1283. sprintf(t, "%02x", md[i]);
  1284. strcat(p, t);
  1285. printf("%02x", md[i]);
  1286. }
  1287. s = [NSString stringWithCString:p encoding:NSUTF8StringEncoding];
  1288. printf("/n");
  1289. // NSLog(@"%@",s);
  1290. return s;
  1291. }
  1292. #pragma mark-----注册密码加密
  1293. -(void)registerUser:(JXUserObject*)user inviteCode:(NSString *)inviteCode workexp:(int)workexp diploma:(int)diploma isSmsRegister:(BOOL)isSmsRegister toView:(id)toView{
  1294. JXConnection* p;
  1295. if (self.openId.length <= 0) {
  1296. p = [self addTask:act_Register param:nil toView:toView];
  1297. }else {
  1298. p = [self addTask:act_registerSDK param:nil toView:toView];
  1299. [p setPostValue:[NSNumber numberWithInteger:2] forKey:@"type"];
  1300. [p setPostValue:self.openId forKey:@"loginInfo"];
  1301. }
  1302. [p setPostValue:user.telephone forKey:@"telephone"];
  1303. [p setPostValue:user.password forKey:@"password"];
  1304. [p setPostValue:user.areaCode forKey:@"areaCode"];
  1305. [p setPostValue:user.userType forKey:@"userType"];
  1306. [p setPostValue:user.userNickname forKey:@"nickname"];
  1307. [p setPostValue:user.userDescription forKey:@"description"];
  1308. [p setPostValue:[NSNumber numberWithLongLong:[user.birthday timeIntervalSince1970]] forKey:@"birthday"];
  1309. [p setPostValue:user.sex forKey:@"sex"];
  1310. [p setPostValue:user.companyId forKey:@"companyId"];
  1311. [p setPostValue:user.countryId forKey:@"countryId"];
  1312. [p setPostValue:user.provinceId forKey:@"provinceId"];
  1313. if ([user.cityId integerValue] > 0) {
  1314. [p setPostValue:user.cityId forKey:@"cityId"];
  1315. }else {
  1316. [p setPostValue:[NSNumber numberWithInt:self.cityId] forKey:@"cityId"];
  1317. }
  1318. [p setPostValue:user.areaId forKey:@"areaId"];
  1319. [p setPostValue:user.model forKey:@"model"];
  1320. [p setPostValue:user.osVersion forKey:@"osVersion"];
  1321. [p setPostValue:user.serialNumber forKey:@"serialNumber"];
  1322. [p setPostValue:user.latitude forKey:@"latitude"];
  1323. [p setPostValue:user.longitude forKey:@"longitude"];
  1324. [p setPostValue:user.location forKey:@"location"];
  1325. [p setPostValue:[NSNumber numberWithInt:workexp] forKey:@"w"];
  1326. [p setPostValue:[NSNumber numberWithInt:diploma] forKey:@"d"];
  1327. [p setPostValue:[NSNumber numberWithInt:1] forKey:@"xmppVersion"];
  1328. [p setPostValue:[NSNumber numberWithInt:(isSmsRegister ? 1 : 0)] forKey:@"isSmsRegister"];
  1329. [p setPostValue:inviteCode forKey:@"inviteCode"];
  1330. [p setPostValue:[JXKeyChainStore getUUIDByKeyChain] forKey:@"serial"];
  1331. [p go];
  1332. }
  1333. // 注册(新)
  1334. -(void)registerUser:(NSString *)salt data:(NSString *)data toView:(id)toView {
  1335. JXConnection* p;
  1336. if (self.openId.length <= 0) {
  1337. p = [self addTask:act_RegisterV1 param:nil toView:toView];
  1338. }else {
  1339. p = [self addTask:act_registerSDKV1 param:nil toView:toView];
  1340. }
  1341. [p setPostValue:salt forKey:@"salt"];
  1342. [p setPostValue:data forKey:@"data"];
  1343. [p setPostValue:@"ios" forKey:@"deviceId"];
  1344. [p go];
  1345. }
  1346. -(void)checkPhone:(NSString*)phone toView:(id)toView{
  1347. JXConnection* p = [self addTask:act_CheckPhone param:nil toView:toView];
  1348. [p setPostValue:phone forKey:@"telephone"];
  1349. [p setPostValue:access_token forKey:@"access_token"];
  1350. [p go];
  1351. }
  1352. -(NSString *)getImgCode:(NSString*)telephone areaCode:(NSString *)areaCode{
  1353. if(telephone==nil)
  1354. return nil;
  1355. // http://192.168.0.168:8080/getImgCode?telephone=8618318722019
  1356. NSString *s;
  1357. NSRange range = [g_config.apiUrl rangeOfString:@"config"];
  1358. if (range.location != NSNotFound) {
  1359. s = [g_config.apiUrl substringToIndex:range.location];
  1360. }else {
  1361. s = g_config.apiUrl;
  1362. }
  1363. JXConnection *p = [[JXConnection alloc] init];
  1364. [p setPostValue:[NSString stringWithFormat:@"%@%@",areaCode,telephone] forKey:@"telephone"];
  1365. [p getSecret];
  1366. NSMutableString *paramStr = [NSMutableString string];
  1367. for (NSInteger i = 0; i < [p.params allKeys].count; i ++) {
  1368. NSString * key = [[p.params allKeys] objectAtIndex:i];
  1369. if (i == [p.params allKeys].count - 1) {
  1370. [paramStr appendString:[NSString stringWithFormat:@"%@=%@",key, p.params[key]]];
  1371. }else {
  1372. [paramStr appendString:[NSString stringWithFormat:@"%@=%@&",key, p.params[key]]];
  1373. }
  1374. }
  1375. return [NSString stringWithFormat:@"%@%@?%@",s,act_GetCode,paramStr];
  1376. }
  1377. -(void)updateUser:(JXUserObject*)user toView:(id)toView{
  1378. JXConnection* p = [self addTask:act_UserUpdate param:nil toView:toView];
  1379. [p setPostValue:user.userType forKey:@"userType"];
  1380. [p setPostValue:user.userNickname forKey:@"nickname"];
  1381. [p setPostValue:user.userDescription forKey:@"description"];
  1382. [p setPostValue:[NSNumber numberWithLongLong:[user.birthday timeIntervalSince1970]] forKey:@"birthday"];
  1383. [p setPostValue:user.sex forKey:@"sex"];
  1384. [p setPostValue:user.countryId forKey:@"countryId"];
  1385. [p setPostValue:user.provinceId forKey:@"provinceId"];
  1386. [p setPostValue:user.cityId forKey:@"cityId"];
  1387. [p setPostValue:user.areaId forKey:@"areaId"];
  1388. NSData *aesData = [AESUtil encryptAESData:[g_myself.userId dataUsingEncoding:NSUTF8StringEncoding] key:[MD5Util getMD5DataWithString:user.payPassword]];
  1389. [p setPostValue:[MD5Util getMD5StringWithData:aesData] forKey:@"payPassword"];
  1390. [p setPostValue:user.msgBackGroundUrl forKey:@"msgBackGroundUrl"];
  1391. [p setPostValue:access_token forKey:@"access_token"];
  1392. // [p setPostValue:user.isMultipleLogin forKey:@"multipleDevices"];
  1393. [p go];
  1394. }
  1395. -(void)updateShikuNum:(JXUserObject*)user toView:(id)toView{
  1396. JXConnection* p = [self addTask:act_UserUpdate param:nil toView:toView];
  1397. [p setPostValue:access_token forKey:@"access_token"];
  1398. [p setPostValue:user.account forKey:@"account"];
  1399. [p go];
  1400. }
  1401. -(void)updateShikuNum:(JXUserObject*)user salt:(NSString *)salt membershipAccount:(NSString *)membership toView:(id)toView{
  1402. NSString *language;
  1403. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  1404. language = @"en";
  1405. }else{
  1406. language = @"zh";
  1407. }
  1408. JXConnection* p = [self addTask:act_UserUpdate param:nil toView:toView];
  1409. [p setPostValue:g_server.access_token forKey:@"access_token"];
  1410. [p setPostValue:salt forKey:@"salt"];
  1411. [p setPostValue:language forKey:@"language"];
  1412. [p setPostValue:membership forKey:@"membershipAccount"];
  1413. [p go];
  1414. }
  1415. // 获取首页的最近一条的聊天记录列表
  1416. - (void)getLastChatListStartTime:(NSNumber *)startTime toView:(id)toView {
  1417. JXConnection* p = [self addTask:act_tigaseGetLastChatList param:nil toView:toView];
  1418. NSTimeInterval endTime = [[NSDate date] timeIntervalSince1970] * 1000;
  1419. [p setPostValue:startTime forKey:@"startTime"];
  1420. // [p setPostValue:[NSString stringWithFormat:@"%f",endTime] forKey:@"endTime"];
  1421. // [p setPostValue:[NSNumber numberWithLong:endTime] forKey:@"endTime"];
  1422. [p setPostValue:access_token forKey:@"access_token"];
  1423. [p go];
  1424. }
  1425. -(void)getUser:(NSString*)theUserId toView:(id)toView{
  1426. if(theUserId==nil)
  1427. return;
  1428. JXConnection* p = [self addTask:act_UserGet param:nil toView:toView];
  1429. [p setPostValue:access_token forKey:@"access_token"];
  1430. [p setPostValue:theUserId forKey:@"userId"];
  1431. [p go];
  1432. }
  1433. -(void)getact_reliefgetMyRelief:(NSString*)theUserId membershipAccount:(NSString*)membershipAccount toView:()toView{
  1434. JXConnection* p = [self addTask:act_reliefgetMyRelief param:nil toView:toView];
  1435. [p setPostValue:g_server.access_token forKey:@"access_token"];
  1436. [p setPostValue:theUserId forKey:@"salt"];
  1437. [p setPostValue:membershipAccount forKey:@"membershipAccount"];
  1438. [p go];
  1439. }
  1440. -(void)getUser:(NSString*)theUserId membershipAccount:(NSString*)membershipAccount toView:()toView{
  1441. NSString *language;
  1442. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  1443. language = @"en";
  1444. }else{
  1445. language = @"zh";
  1446. }
  1447. JXConnection* p = [self addTask:act_reliefReceiveRelief param:nil toView:toView];
  1448. [p setPostValue:g_server.access_token forKey:@"access_token"];
  1449. [p setPostValue:theUserId forKey:@"salt"];
  1450. [p setPostValue:language forKey:@"language"];
  1451. [p setPostValue:membershipAccount forKey:@"membershipAccount"];
  1452. [p go];
  1453. }
  1454. // 上下级里面的微信
  1455. -(void)get_act_GetshangXiaJi:(NSString*)membershipAccount salt:(NSString *)salt toView:(id)toView{
  1456. NSString *language;
  1457. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  1458. language = @"en";
  1459. }else{
  1460. language = @"zh";
  1461. }
  1462. JXConnection* p = [self addTask:act_GetshangXiaJi param:nil toView:toView];
  1463. [p setPostValue:g_server.access_token forKey:@"access_token"];
  1464. [p setPostValue:salt forKey:@"salt"];
  1465. [p setPostValue:language forKey:@"language"];
  1466. [p setPostValue:membershipAccount forKey:@"membershipAccount"];
  1467. [p go];
  1468. }
  1469. //获取微信号
  1470. -(void)get_act_userServeWXget:(NSString*)qqName salt:(NSString *)salt Wx:(NSString *)Wx toView:(id)toView{
  1471. NSString *language;
  1472. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  1473. language = @"en";
  1474. }else{
  1475. language = @"zh";
  1476. }
  1477. JXConnection* p = [self addTask:act_GetSerServeWxget param:nil toView:toView];
  1478. [p setPostValue:g_server.access_token forKey:@"access_token"];
  1479. [p setPostValue:salt forKey:@"salt"];
  1480. [p setPostValue:language forKey:@"language"];
  1481. [p go];
  1482. }
  1483. //获取福利qq号
  1484. -(void)get_act_userServeqqget:(NSString*)qqName salt:(NSString *)salt qq:(NSString *)qq toView:(id)toView{
  1485. NSString *language;
  1486. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  1487. language = @"en";
  1488. }else{
  1489. language = @"zh";
  1490. }
  1491. JXConnection* p = [self addTask:act_userServeqqget param:nil toView:toView];
  1492. [p setPostValue:g_server.access_token forKey:@"access_token"];
  1493. [p setPostValue:salt forKey:@"salt"];
  1494. [p setPostValue:language forKey:@"language"];
  1495. //[p setPostValue:qqName forKey:@"qqName"];
  1496. //[p setPostValue:qq forKey:@"qq"];
  1497. [p go];
  1498. }
  1499. -(void)getUser:(NSString*)theUserId veryCare:(NSString *)veryCare veryCareTones:(NSString *)veryCareTones toView:(id)toView{
  1500. if(theUserId==nil)
  1501. return;
  1502. JXConnection* p = [self addTask:act_FriendsAttention param:nil toView:toView];
  1503. [p setPostValue:access_token forKey:@"access_token"];
  1504. [p setPostValue:theUserId forKey:@"toUserId"];
  1505. [p setPostValue:veryCare forKey:@"veryCare"];
  1506. [p setPostValue:veryCareTones forKey:@"veryCareTones"];
  1507. [p go];
  1508. }
  1509. -(void)searchUser:(JXUserObject*)user minAge:(int)minAge maxAge:(int)maxAge page:(int)page toView:(id)toView{
  1510. // JXConnection* p = [self addTask:act_UserSearch param:[NSString stringWithFormat:@"?pageIndex=%d&pageSize=%d&access_token=fc77f5174c82416aa2c84ba1b96f7939",page,jx_page_size] toView:toView];
  1511. JXConnection* p = [self addTask:act_UserSearch param:nil toView:toView];
  1512. [p setPostValue:[NSNumber numberWithInt:jx_page_size] forKey:@"pageSize"];
  1513. [p setPostValue:[NSNumber numberWithInt:page] forKey:@"pageIndex"];
  1514. [p setPostValue:user.telephone forKey:@"telephone"];
  1515. [p setPostValue:user.userNickname forKey:@"nickname"];
  1516. [p setPostValue:user.userDescription forKey:@"description"];
  1517. [p setPostValue:[NSNumber numberWithLongLong:[user.birthday timeIntervalSince1970]] forKey:@"birthday"];
  1518. [p setPostValue:user.sex forKey:@"sex"];
  1519. [p setPostValue:user.countryId forKey:@"countryId"];
  1520. [p setPostValue:user.provinceId forKey:@"provinceId"];
  1521. [p setPostValue:user.cityId forKey:@"cityId"];
  1522. [p setPostValue:user.areaId forKey:@"areaId"];
  1523. [p setPostValue:user.latitude forKey:@"latitude"];
  1524. [p setPostValue:user.longitude forKey:@"longitude"];
  1525. [p setPostValue:user.location forKey:@"location"];
  1526. [p setPostValue:access_token forKey:@"access_token"];
  1527. [p go];
  1528. }
  1529. // 搜索公众号列表
  1530. - (void)searchPublicWithKeyWorld:(NSString *)keyWorld limit:(int)limit page:(int)page toView:(id)toView{
  1531. if ([g_config.enableMpModule boolValue]) {
  1532. JXConnection* p = [self addTask:act_PublicSearch param:nil toView:toView];
  1533. [p setPostValue:keyWorld forKey:@"keyWorld"];
  1534. [p setPostValue:[NSNumber numberWithInt:limit] forKey:@"limit"];
  1535. [p setPostValue:[NSNumber numberWithInt:page] forKey:@"page"];
  1536. [p setPostValue:access_token forKey:@"access_token"];
  1537. [p go];
  1538. }
  1539. }
  1540. -(void)reportUser:(NSString *)toUserId roomId:(NSString *)roomId webUrl:(NSString *)webUrl reasonId:(NSNumber *)reasonId toView:(id)toView{
  1541. JXConnection* p = [self addTask:act_Report param:nil toView:toView];
  1542. [p setPostValue:toUserId forKey:@"toUserId"];
  1543. [p setPostValue:roomId forKey:@"roomId"];
  1544. [p setPostValue:reasonId forKey:@"reason"];
  1545. [p setPostValue:webUrl forKey:@"webUrl"];
  1546. [p setPostValue:access_token forKey:@"access_token"];
  1547. [p go];
  1548. }
  1549. -(void)saveImageToFile:(UIImage*)image file:(NSString*)file isOriginal:(BOOL)isOriginal{
  1550. if(![[NSFileManager defaultManager] fileExistsAtPath:file]){
  1551. NSData *data = [Photo image2Data:image isOriginal:isOriginal];
  1552. [data writeToFile:file atomically:YES];
  1553. data = nil;
  1554. }
  1555. }
  1556. -(void)saveDataToFile:(NSData*)data file:(NSString*)file{
  1557. if(![[NSFileManager defaultManager] fileExistsAtPath:file]){
  1558. [data writeToFile:file atomically:YES];
  1559. data = nil;
  1560. }
  1561. }
  1562. -(void) uploadFile:(NSArray*)files audio:(NSString*)audio video:(NSString*)video file:(NSString*)file type:(int)type validTime:(NSString *)validTime timeLen:(int)timeLen toView:(id)toView gifDic:(NSDictionary *)gifDic{
  1563. JXConnection* p = [self addTask:act_UploadFile param:nil toView:toView];
  1564. // if (type == 4 && audio.length > 0) {
  1565. // p = [self addTask:act_UploadVoiceServlet param:nil toView:toView];
  1566. // }
  1567. // [p setPostValue:[NSNumber numberWithInt:type] forKey:@"uploadFlag"];
  1568. [p setPostValue:[NSNumber numberWithInt:type] forKey:@"type"];
  1569. [p setPostValue:myself.userId forKey:@"userId"];
  1570. if (!validTime) {
  1571. validTime = @"-1";
  1572. }
  1573. [p setPostValue:validTime forKey:@"validTime"];
  1574. NSString* s;
  1575. for(int i=0;i<[files count];i++){
  1576. UIImage *img = files[i];
  1577. NSData *data;
  1578. if (img.images.count > 0) {
  1579. s = [NSString stringWithFormat:@"file%d.gif",i+1];
  1580. if (gifDic) {
  1581. data = [gifDic objectForKey:[NSString stringWithFormat:@"%d",i]];
  1582. }
  1583. }else{
  1584. s = [NSString stringWithFormat:@"file%d.jpg",i+1];
  1585. data = UIImageJPEGRepresentation([files objectAtIndex:i], 0.5);
  1586. }
  1587. [p setData:data forKey:s messageId:nil];
  1588. }
  1589. [p setPostValue:@(timeLen) forKey:@"length"];
  1590. [p setData:[NSData dataWithContentsOfFile:audio] forKey:[audio lastPathComponent] messageId:nil];
  1591. if ([NSData dataWithContentsOfFile:video]) {
  1592. [p setData:[NSData dataWithContentsOfFile:video] forKey:[video lastPathComponent] messageId:nil];
  1593. }else {
  1594. [p setData:[NSData dataWithContentsOfURL:[NSURL URLWithString:video]] forKey:[video lastPathComponent] messageId:nil];
  1595. }
  1596. [p setData:[NSData dataWithContentsOfFile:file] forKey:[file lastPathComponent] messageId:nil];
  1597. [p go];
  1598. }
  1599. //上传文件到服务器(传路径)
  1600. -(void)uploadFile:(NSString*)file validTime:(NSString *)validTime messageId:(NSString *)messageId toView:(id)toView{
  1601. if(!file)
  1602. return;
  1603. if(![[NSFileManager defaultManager] fileExistsAtPath:file])
  1604. return;
  1605. JXConnection* p = [self addTask:act_UploadFile param:nil toView:toView];
  1606. // [p setPostValue:[NSNumber numberWithInt:2] forKey:@"uploadFlag"];
  1607. [p setPostValue:MY_USER_ID forKey:@"userId"];
  1608. if (!validTime) {
  1609. validTime = @"-1";
  1610. }
  1611. [p setPostValue:validTime forKey:@"validTime"];
  1612. [p setData:[NSData dataWithContentsOfFile:file] forKey:[file lastPathComponent] messageId:nil];
  1613. p.userData = [file lastPathComponent];
  1614. p.messageId = messageId;
  1615. [p go];
  1616. }
  1617. // 上传音频文件
  1618. -(void)UploadVoiceServlet:(NSString*)file validTime:(NSString *)validTime messageId:(NSString *)messageId toView:(id)toView{
  1619. if(!file)
  1620. return;
  1621. if(![[NSFileManager defaultManager] fileExistsAtPath:file])
  1622. return;
  1623. JXConnection* p = [self addTask:act_UploadVoiceServlet param:nil toView:toView];
  1624. // [p setPostValue:[NSNumber numberWithInt:2] forKey:@"uploadFlag"];
  1625. [p setPostValue:MY_USER_ID forKey:@"userId"];
  1626. if (!validTime) {
  1627. validTime = @"-1";
  1628. }
  1629. [p setPostValue:validTime forKey:@"validTime"];
  1630. [p setData:[NSData dataWithContentsOfFile:file] forKey:[file lastPathComponent] messageId:nil];
  1631. p.userData = [file lastPathComponent];
  1632. p.messageId = messageId;
  1633. [p go];
  1634. }
  1635. // 上传文件(传data)
  1636. -(void)uploadFileData:(NSData*)data key:(NSString *)key toView:(id)toView{
  1637. if(!data)
  1638. return;
  1639. if (!key) {
  1640. return;
  1641. }
  1642. JXConnection* p = [self addTask:act_UploadFile param:nil toView:toView];
  1643. // [p setPostValue:[NSNumber numberWithInt:2] forKey:@"uploadFlag"];
  1644. [p setPostValue:myself.userId forKey:@"userId"];
  1645. [p setData:data forKey:key messageId:nil];
  1646. p.userData = key;
  1647. [p go];
  1648. }
  1649. -(void)uploadHeadImage:(NSString*)userId image:(UIImage*)image toView:(id)toView{
  1650. JXConnection* p = [self addTask:act_UploadHeadImage param:nil toView:toView];
  1651. [p setPostValue:userId forKey:@"userId"];
  1652. [p setData:UIImageJPEGRepresentation(image, 0.5) forKey:@"file.jpg" messageId:nil];
  1653. [p go];
  1654. }
  1655. //获取用户余额
  1656. -(void)getUserMoenyToView:(id)toView{
  1657. JXConnection* p = [self addTask:act_getUserMoeny param:nil toView:toView];
  1658. [p setPostValue:access_token forKey:@"access_token"];
  1659. [p go];
  1660. }
  1661. //获取签名
  1662. - (void)getSign:(NSString *)price payType:(NSInteger)payType toView:(id)toView{
  1663. JXConnection *p = [self addTask:act_getSign param:nil toView:toView];
  1664. [p setPostValue:self.access_token forKey:@"access_token"];
  1665. [p setPostValue:price forKey:@"price"];
  1666. [p setPostValue:[NSNumber numberWithInteger:payType] forKey:@"payType"];
  1667. [p go];
  1668. }
  1669. //获取支付宝授权authInfo
  1670. - (void)getAliPayAuthInfoToView:(id)toView{
  1671. JXConnection *p = [self addTask:act_getAliPayAuthInfo param:nil toView:toView];
  1672. [p setPostValue:self.access_token forKey:@"access_token"];
  1673. [p go];
  1674. }
  1675. //保存支付宝用户Id
  1676. - (void)aliPayUserId:(NSString *)aliUserId toView:(id)toView{
  1677. JXConnection *p = [self addTask:act_aliPayUserId param:nil toView:toView];
  1678. [p setPostValue:self.access_token forKey:@"access_token"];
  1679. [p setPostValue:aliUserId forKey:@"aliUserId"];
  1680. [p go];
  1681. }
  1682. //支付宝提现
  1683. - (void)alipayTransfer:(NSString *)amount secret:(NSString *)secret time:(NSNumber *)time toView:(id)toView{
  1684. JXConnection *p = [self addTask:act_alipayTransfer param:nil toView:toView];
  1685. [p setPostValue:self.access_token forKey:@"access_token"];
  1686. [p setPostValue:amount forKey:@"amount"];
  1687. [p setPostValue:secret forKey:@"secret"];
  1688. [p setPostValue:time forKey:@"time"];
  1689. [p go];
  1690. }
  1691. //二维码支付
  1692. - (void)codePayment:(NSString *)paymentCode money:(NSString *)money time:(long)time desc:(NSString *)desc secret:(NSString *)secret toView:(id)toView {
  1693. JXConnection *p = [self addTask:act_codePayment param:nil toView:toView];
  1694. [p setPostValue:self.access_token forKey:@"access_token"];
  1695. [p setPostValue:paymentCode forKey:@"paymentCode"];
  1696. [p setPostValue:money forKey:@"money"];
  1697. [p setPostValue:[NSNumber numberWithLong:time] forKey:@"time"];
  1698. [p setPostValue:desc forKey:@"desc"];
  1699. [p setPostValue:secret forKey:@"secret"];
  1700. [p go];
  1701. }
  1702. //二维码支付(新)
  1703. - (void)codePaymentV1:(NSString *)paymentCode money:(NSString *)money desc:(NSString *)desc toView:(id)toView {
  1704. JXConnection *p = [self addTask:act_codePaymentV1 param:nil toView:toView];
  1705. [p setPostValue:self.access_token forKey:@"access_token"];
  1706. NSMutableDictionary *dict = [NSMutableDictionary dictionary];
  1707. [dict setNotNullObject:paymentCode forKey:@"paymentCode"];
  1708. [dict setNotNullObject:money forKey:@"money"];
  1709. [dict setNotNullObject:desc forKey:@"desc"];
  1710. SBJsonWriter * OderJsonwriter = [SBJsonWriter new];
  1711. NSString * jsonString = [OderJsonwriter stringWithObject:dict];
  1712. NSData *key = [[NSData alloc] initWithBase64EncodedString:g_server.payKey options:NSDataBase64DecodingIgnoreUnknownCharacters];
  1713. NSData *data = [AESUtil encryptAESData:[jsonString dataUsingEncoding:NSUTF8StringEncoding] key:key];
  1714. NSString *dataStr = [data base64EncodedStringWithOptions:0];
  1715. [p setPostValue:dataStr forKey:@"data"];
  1716. [p go];
  1717. }
  1718. // 验证付款码qrKey
  1719. - (void)payVerifyQrKeyWithSalt:(NSString *)salt mac:(NSString *)mac toView:(id)toView {
  1720. JXConnection* p = [self addTask:act_payVerifyQrKey param:nil toView:toView];
  1721. [p setPostValue:access_token forKey:@"access_token"];
  1722. [p setPostValue:salt forKey:@"salt"];
  1723. [p setPostValue:mac forKey:@"mac"];
  1724. [p go];
  1725. }
  1726. //二维码收款
  1727. - (void)codeReceipt:(NSString *)toUserId money:(NSString *)money time:(long)time desc:(NSString *)desc secret:(NSString *)secret toView:(id)toView {
  1728. JXConnection *p = [self addTask:act_codeReceipt param:nil toView:toView];
  1729. [p setPostValue:self.access_token forKey:@"access_token"];
  1730. [p setPostValue:toUserId forKey:@"toUserId"];
  1731. [p setPostValue:money forKey:@"money"];
  1732. [p setPostValue:[NSNumber numberWithLong:time] forKey:@"time"];
  1733. [p setPostValue:desc forKey:@"desc"];
  1734. [p setPostValue:secret forKey:@"secret"];
  1735. [p go];
  1736. }
  1737. //接受转账
  1738. - (void)getTransfer:(NSString *)transferId toView:(id)toView{
  1739. JXConnection *p = [self addTask:act_receiveTransfer param:nil toView:toView];
  1740. [p setPostValue:self.access_token forKey:@"access_token"];
  1741. [p setPostValue:transferId forKey:@"id"];
  1742. [p go];
  1743. }
  1744. //获取转账信息
  1745. - (void)transferDetail:(NSString *)transferId toView:(id)toView{
  1746. JXConnection *p = [self addTask:act_getTransferInfo param:nil toView:toView];
  1747. [p setPostValue:self.access_token forKey:@"access_token"];
  1748. [p setPostValue:transferId forKey:@"id"];
  1749. [p go];
  1750. }
  1751. //好友交易记录明细
  1752. - (void)getConsumeRecordList:(NSString *)toUserId pageIndex:(int)pageIndex pageSize:(int)pageSize toView:(id)toView{
  1753. JXConnection *p = [self addTask:act_getConsumeRecordList param:nil toView:toView];
  1754. [p setPostValue:self.access_token forKey:@"access_token"];
  1755. [p setPostValue:toUserId forKey:@"toUserId"];
  1756. [p setPostValue:[NSNumber numberWithInt:pageIndex] forKey:@"pageIndex"];
  1757. [p setPostValue:[NSNumber numberWithInt:pageSize] forKey:@"pageSize"];
  1758. [p go];
  1759. }
  1760. //转账
  1761. - (void)transferUserId:(NSString *)toUserId money:(NSString *)money remark:(NSString *)remark time:(long)time secret:(NSString *)secret toView:(id)toView{
  1762. JXConnection *p = [self addTask:act_sendTransfer param:nil toView:toView];
  1763. [p setPostValue:self.access_token forKey:@"access_token"];
  1764. [p setPostValue:toUserId forKey:@"toUserId"];
  1765. [p setPostValue:money forKey:@"money"];
  1766. [p setPostValue:remark forKey:@"remark"];
  1767. [p setPostValue:[NSString stringWithFormat:@"%ld",time] forKey:@"time"];
  1768. [p setPostValue:secret forKey:@"secret"];
  1769. [p go];
  1770. }
  1771. //直接充值
  1772. - (void)userRecharge:(NSString *)price toView:(id)toView{
  1773. JXConnection *p = [self addTask:act_userRechagrge param:nil toView:toView];
  1774. [p setPostValue:self.access_token forKey:@"access_token"];
  1775. [p setPostValue:[NSNumber numberWithDouble:[price doubleValue]] forKey:@"money"];
  1776. [p setPostValue:[NSNumber numberWithInteger:1] forKey:@"type"];
  1777. [p go];
  1778. }
  1779. //发红包
  1780. - (void)sendRedPacket:(double)money type:(int)type count:(int)count greetings:(NSString *)greet roomJid:(NSString*)roomJid toUserId:(NSString *)toUserId time:(long)time secret:(NSString *)secret toView:(id)toView{
  1781. JXConnection *p = [self addTask:act_sendRedPacket param:nil toView:toView];
  1782. [p setPostValue:self.access_token forKey:@"access_token"];
  1783. [p setPostValue:roomJid forKey:@"roomJid"];
  1784. [p setPostValue:toUserId forKey:@"toUserId"];
  1785. [p setPostValue:[NSNumber numberWithDouble:money] forKey:@"money"];
  1786. [p setPostValue:[NSNumber numberWithInteger:type] forKey:@"type"];
  1787. [p setPostValue:[NSNumber numberWithInteger:count] forKey:@"count"];
  1788. [p setPostValue:greet forKey:@"greetings"];
  1789. [p setPostValue:[NSString stringWithFormat:@"%ld",time] forKey:@"time"];
  1790. [p setPostValue:secret forKey:@"secret"];
  1791. [p go];
  1792. }
  1793. //发红包(新版)
  1794. - (void)sendRedPacketV1:(double)money type:(int)type count:(int)count greetings:(NSString *)greet roomJid:(NSString*)roomJid toUserId:(NSString *)toUserId time:(long)time secret:(NSString *)secret toView:(id)toView{
  1795. JXConnection *p = [self addTask:act_sendRedPacketV1 param:nil toView:toView];
  1796. [p setPostValue:self.access_token forKey:@"access_token"];
  1797. [p setPostValue:roomJid forKey:@"roomJid"];
  1798. [p setPostValue:toUserId forKey:@"toUserId"];
  1799. [p setPostValue:[NSNumber numberWithDouble:money] forKey:@"moneyStr"];
  1800. [p setPostValue:[NSNumber numberWithInteger:type] forKey:@"type"];
  1801. [p setPostValue:[NSNumber numberWithInteger:count] forKey:@"count"];
  1802. [p setPostValue:greet forKey:@"greetings"];
  1803. [p setPostValue:[NSString stringWithFormat:@"%ld",time] forKey:@"time"];
  1804. [p setPostValue:secret forKey:@"secret"];
  1805. [p go];
  1806. }
  1807. //交易记录
  1808. - (void)getConsumeRecord:(int)pageIndex toView:(id)toView{
  1809. JXConnection *p = [self addTask:act_consumeRecord param:nil toView:toView];
  1810. [p setPostValue:self.access_token forKey:@"access_token"];
  1811. [p setPostValue:[NSNumber numberWithInteger:pageIndex] forKey:@"pageIndex"];
  1812. [p setPostValue:[NSNumber numberWithInteger:20] forKey:@"pageSize"];
  1813. [p go];
  1814. }
  1815. // 获得发送的红包
  1816. - (void)redPacketGetSendRedPacketListIndex:(NSInteger)index toView:(id)toView {
  1817. JXConnection *p = [self addTask:act_redPacketGetSendRedPacketList param:nil toView:toView];
  1818. [p setPostValue:self.access_token forKey:@"access_token"];
  1819. [p setPostValue:[NSNumber numberWithInteger:index] forKey:@"pageIndex"];
  1820. // [p setPostValue:[NSNumber numberWithInteger:10] forKey:@"pageSize"];
  1821. [p go];
  1822. }
  1823. // 获得接收的红包
  1824. - (void)redPacketGetRedReceiveListIndex:(NSInteger)index toView:(id)toView {
  1825. JXConnection *p = [self addTask:act_redPacketGetRedReceiveList param:nil toView:toView];
  1826. [p setPostValue:self.access_token forKey:@"access_token"];
  1827. [p setPostValue:[NSNumber numberWithInteger:index] forKey:@"pageIndex"];
  1828. [p go];
  1829. }
  1830. // 红包回复
  1831. - (void)redPacketReply:(NSString *)redPacketId content:(NSString *)content toView:(id)toView {
  1832. JXConnection *p = [self addTask:act_redPacketReply param:nil toView:toView];
  1833. [p setPostValue:self.access_token forKey:@"access_token"];
  1834. [p setPostValue:redPacketId forKey:@"id"];
  1835. [p setPostValue:content forKey:@"reply"];
  1836. [p go];
  1837. }
  1838. // 申请提现
  1839. //http://127.0.0.1:8092/api/addWithdrawl?platformName=测试平台&account=1000&amount=120.0&reason=提现原因&verifyCode=123456&userId=1001&userName=测试用户
  1840. - (void)addWithdrawlPlatformName:(NSString *)platformName
  1841. account:(NSString *)account
  1842. amount:(NSString *)amount
  1843. reason:(NSString *)reason
  1844. remark:(NSString *)remark
  1845. verifyCode:(NSString *)verifyCode
  1846. userId:(NSString *)userId
  1847. userName:(NSString *)userName toView:(id)toView {
  1848. JXConnection *p = [self addTask:act_addWithdrawl param:nil toView:toView];
  1849. [p setPostValue:self.access_token forKey:@"access_token"];
  1850. [p setPostValue:platformName forKey:@"platformName"];
  1851. [p setPostValue:account forKey:@"account"];
  1852. [p setPostValue:amount forKey:@"amount"];
  1853. [p setPostValue:reason forKey:@"reason"];
  1854. [p setPostValue:remark forKey:@"remark"];
  1855. [p setPostValue:verifyCode forKey:@"verifyCode"];
  1856. [p setPostValue:userId forKey:@"userId"];
  1857. [p setPostValue:userName forKey:@"userName"];
  1858. [p go];
  1859. }
  1860. // 提现记录
  1861. - (void)withdrawlListUserId:(NSString *)userId toView:(id)toView {
  1862. JXConnection *p = [self addTask:act_withdrawlList param:nil toView:toView];
  1863. [p setPostValue:self.access_token forKey:@"access_token"];
  1864. [p setPostValue:userId forKey:@"userId"];
  1865. [p go];
  1866. }
  1867. #pragma mark-----删除服务器消息
  1868. - (void)readDeleteMsg:(JXMessageObject *)msg toView:(id)toView{
  1869. JXConnection *p = [self addTask:act_readDelMsg param:nil toView:toView];
  1870. [p setPostValue:msg.messageId forKey:@"messageId"];
  1871. [p setPostValue:self.access_token forKey:@"access_token"];
  1872. [p go];
  1873. }
  1874. - (void)getRedPacket:(NSString *)redPacketId toView:(id)toView{
  1875. JXConnection *p = [self addTask:act_getRedPacket param:nil toView:toView];
  1876. [p setPostValue:self.access_token forKey:@"access_token"];
  1877. [p setPostValue:redPacketId forKey:@"id"];
  1878. [p go];
  1879. }
  1880. - (void)openRedPacket:(NSString *)redPacketId toView:(id)toView{
  1881. JXConnection *p = [self addTask:act_openRedPacket param:nil toView:toView];
  1882. [p setPostValue:self.access_token forKey:@"access_token"];
  1883. [p setPostValue:redPacketId forKey:@"id"];
  1884. [p go];
  1885. }
  1886. -(void)addPhoto:(NSString*)photos toView:(id)toView{
  1887. JXConnection* p = [self addTask:act_PhotoAdd param:nil toView:toView];
  1888. [p setPostValue:access_token forKey:@"access_token"];
  1889. [p setPostValue:photos forKey:@"photos"];
  1890. [p go];
  1891. }
  1892. -(void)delPhoto:(NSString*)photoId toView:(id)toView{
  1893. JXConnection* p = [self addTask:act_PhotoDel param:nil toView:toView];
  1894. [p setPostValue:access_token forKey:@"access_token"];
  1895. [p setPostValue:photoId forKey:@"photoId"];
  1896. [p go];
  1897. }
  1898. -(void)updatePhoto:(NSString*)photoId oUrl:(NSString*)oUrl tUrl:(NSString*)tUrl toView:(id)toView{
  1899. JXConnection* p = [self addTask:act_PhotoMod param:nil toView:toView];
  1900. [p setPostValue:access_token forKey:@"access_token"];
  1901. [p setPostValue:photoId forKey:@"photoId"];
  1902. [p setPostValue:oUrl forKey:@"oUrl"];
  1903. [p setPostValue:tUrl forKey:@"tUrl"];
  1904. [p go];
  1905. }
  1906. -(void)listPhoto:(NSString*)theUserId toView:(id)toView{
  1907. JXConnection* p = [self addTask:act_PhotoList param:nil toView:toView];
  1908. [p setPostValue:access_token forKey:@"access_token"];
  1909. [p setPostValue:theUserId forKey:@"userId"];
  1910. [p go];
  1911. }
  1912. -(void)setHeadImage:(NSString*)photoId toView:(id)toView{
  1913. JXConnection* p = [self addTask:act_SetHeadImage param:nil toView:toView];
  1914. [p setPostValue:access_token forKey:@"access_token"];
  1915. [p setPostValue:photoId forKey:@"photoId"];
  1916. [p go];
  1917. }
  1918. -(void)setGroupAvatarServlet:(NSString*)roomId image:(UIImage *)image toView:(id)toView{
  1919. JXConnection* p = [self addTask:act_SetGroupAvatarServlet param:nil toView:toView];
  1920. [p setPostValue:access_token forKey:@"access_token"];
  1921. [p setPostValue:roomId forKey:@"jid"];
  1922. [p setData:UIImageJPEGRepresentation(image, 0.5) forKey:@"file.jpg" messageId:nil];
  1923. [p go];
  1924. }
  1925. - (NSString *) getPhotoLocalPath:(NSString*)s
  1926. {
  1927. return [NSString stringWithFormat:@"%@/tmp/%@", NSHomeDirectory(), [s lastPathComponent]];
  1928. }
  1929. -(void)resetPwd:(NSString*)telephone areaCode:(NSString *)areaCode randcode:(NSString*)randcode newPwd:(NSString*)newPassword toView:(id)toView{
  1930. if(telephone==nil || newPassword==nil || randcode==nil)
  1931. return;
  1932. #ifdef IS_MsgEncrypt
  1933. JXConnection* p = [self addTask:act_PwdResetV1 param:nil toView:toView];
  1934. // 上传消息加密的DH公私钥
  1935. [g_msgUtil generatekeyPairsDH];
  1936. NSData *dhPriData = [[NSData alloc] initWithBase64EncodedString:g_msgUtil.dhPrivateKey options:NSDataBase64DecodingIgnoreUnknownCharacters];
  1937. NSData *dhPriAesData = [AESUtil encryptAESData:dhPriData key:[MD5Util getMD5DataWithString:newPassword]];
  1938. NSString *dhPriStr = [dhPriAesData base64EncodedStringWithOptions:0];
  1939. [p setPostValue:dhPriStr forKey:@"dhPrivateKey"];
  1940. [p setPostValue:g_msgUtil.dhPublicKey forKey:@"dhPublicKey"];
  1941. // 上传群组消息加密的RSA公私钥
  1942. [g_msgUtil generatekeyPairsRSA];
  1943. NSData *rsaPriData = [[NSData alloc] initWithBase64EncodedString:g_msgUtil.rsaPrivateKey options:NSDataBase64DecodingIgnoreUnknownCharacters];
  1944. NSData *rsaPriAesData = [AESUtil encryptAESData:rsaPriData key:[MD5Util getMD5DataWithString:newPassword]];
  1945. NSString *rsaPriStr = [rsaPriAesData base64EncodedStringWithOptions:0];
  1946. [p setPostValue:rsaPriStr forKey:@"rsaPrivateKey"];
  1947. [p setPostValue:g_msgUtil.rsaPublicKey forKey:@"rsaPublicKey"];
  1948. NSString *mac = [g_loginServer getUpdatePWDMacWithValue:telephone password:newPassword];
  1949. [p setPostValue:mac forKey:@"mac"];
  1950. #else
  1951. JXConnection* p = [self addTask:act_PwdReset param:nil toView:toView];
  1952. #endif
  1953. [p setPostValue:telephone forKey:@"telephone"];
  1954. [p setPostValue:randcode forKey:@"randcode"];
  1955. [p setPostValue:areaCode forKey:@"areaCode"];
  1956. NSData *newData = [AESUtil encryptAESData:[MD5Util getMD5DataWithString:newPassword] key:[MD5Util getMD5DataWithString:newPassword]];
  1957. [p setPostValue:[MD5Util getMD5StringWithData:newData] forKey:@"newPassword"];
  1958. [p go];
  1959. }
  1960. -(void)updatePwd:(NSString*)telephone areaCode:(NSString *)areaCode oldPwd:(NSString*)oldPassword newPwd:(NSString*)newPassword checkCode:(NSString *)checkCode toView:(id)toView{
  1961. if(telephone==nil || newPassword==nil || oldPassword==nil)
  1962. return;
  1963. #ifdef IS_MsgEncrypt
  1964. JXConnection* p = [self addTask:act_PwdUpdateV1 param:nil toView:toView];
  1965. // 更新DH私钥
  1966. NSData *dhPriData = [[NSData alloc] initWithBase64EncodedString:g_msgUtil.dhPrivateKey options:NSDataBase64DecodingIgnoreUnknownCharacters];
  1967. NSData *dhPriAesData = [AESUtil encryptAESData:dhPriData key:[MD5Util getMD5DataWithString:newPassword]];
  1968. NSString *dhPriStr = [dhPriAesData base64EncodedStringWithOptions:0];
  1969. g_msgUtil.dhPrivateKey = dhPriStr;
  1970. [p setPostValue:dhPriStr forKey:@"dhPrivateKey"];
  1971. // [p setPostValue:g_msgUtil.dhPublicKey forKey:@"dhPublicKey"];
  1972. // 更新RSA私钥
  1973. NSData *rsaPriData = [[NSData alloc] initWithBase64EncodedString:g_msgUtil.rsaPrivateKey options:NSDataBase64DecodingIgnoreUnknownCharacters];
  1974. NSData *rsaPriAesData = [AESUtil encryptAESData:rsaPriData key:[MD5Util getMD5DataWithString:newPassword]];
  1975. NSString *rsaPriStr = [rsaPriAesData base64EncodedStringWithOptions:0];
  1976. g_msgUtil.rsaPrivateKey = rsaPriStr;
  1977. [p setPostValue:rsaPriStr forKey:@"rsaPrivateKey"];
  1978. // [p setPostValue:g_msgUtil.rsaPublicKey forKey:@"rsaPublicKey"];
  1979. NSString *mac = [g_loginServer getUpdatePWDMacWithValue:checkCode password:newPassword];
  1980. [p setPostValue:mac forKey:@"mac"];
  1981. #else
  1982. JXConnection* p = [self addTask:act_PwdUpdate param:nil toView:toView];
  1983. #endif
  1984. [p setPostValue:telephone forKey:@"telephone"];
  1985. [p setPostValue:areaCode forKey:@"areaCode"];
  1986. NSData *oldData = [AESUtil encryptAESData:[MD5Util getMD5DataWithString:oldPassword] key:[MD5Util getMD5DataWithString:oldPassword]];
  1987. NSData *newData = [AESUtil encryptAESData:[MD5Util getMD5DataWithString:newPassword] key:[MD5Util getMD5DataWithString:newPassword]];
  1988. [p setPostValue:[MD5Util getMD5StringWithData:oldData] forKey:@"oldPassword"];
  1989. [p setPostValue:[MD5Util getMD5StringWithData:newData] forKey:@"newPassword"];
  1990. [p setPostValue:access_token forKey:@"access_token"];
  1991. [p go];
  1992. }
  1993. //-(void)sendSMS:(NSString*)telephone toView:(id)toView{
  1994. //
  1995. // if(telephone==nil)
  1996. // return;
  1997. // JXConnection* p = [self addTask:act_SendSMS param:nil toView:toView];
  1998. // [p setPostValue:telephone forKey:@"telephone"];
  1999. // [p go];
  2000. //
  2001. //}
  2002. #pragma mark---发送验证码
  2003. -(void)sendSMS:(NSString*)telephone areaCode:(NSString *)areaCode isRegister:(BOOL)isRegister imgCode:(NSString *)imgCode toView:(id)toView{
  2004. if(telephone==nil)
  2005. return;
  2006. JXConnection* p = [self addTask:act_SendSMS param:nil toView:toView];
  2007. [p setPostValue:telephone forKey:@"telephone"];
  2008. [p setPostValue:areaCode forKey:@"areaCode"];
  2009. NSString *language;
  2010. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  2011. language = @"en";
  2012. }else{
  2013. language = @"zh";
  2014. }
  2015. [p setPostValue:language forKey:@"language"];
  2016. p.timeout = 30;
  2017. [p setPostValue:[NSNumber numberWithBool:isRegister] forKey:@"isRegister"];
  2018. if(imgCode==nil || imgCode.length <= 0)
  2019. return;
  2020. [p setPostValue:imgCode forKey:@"imgCode"];
  2021. [p setPostValue:@"1" forKey:@"version"];
  2022. [p go];
  2023. }
  2024. #pragma mark---创建公司
  2025. - (void)createCompany:(NSString *)companyName toView:(id)toView{
  2026. JXConnection *p = [self addTask:act_creatCompany param:nil toView:toView];
  2027. [p setPostValue:companyName forKey:@"companyName"];
  2028. [p setPostValue:g_myself.userId forKey:@"createUserId"];
  2029. [p setPostValue:access_token forKey:@"access_token"];
  2030. [p go];
  2031. }
  2032. #pragma mark---退出公司/解散公司
  2033. - (void)quitCompany:(NSString *)companyId toView:(id)toView{
  2034. JXConnection *p = [self addTask:act_companyQuit param:nil toView:toView];
  2035. [p setPostValue:companyId forKey:@"companyId"];
  2036. [p setPostValue:g_myself.userId forKey:@"userId"];
  2037. [p setPostValue:access_token forKey:@"access_token"];
  2038. [p go];
  2039. }
  2040. #pragma mark---自动查找公司
  2041. - (void)getCompanyAuto:(id)toView{
  2042. JXConnection *p = [self addTask:act_getCompany param:nil toView:toView];
  2043. [p setPostValue:g_myself.userId forKey:@"userId"];
  2044. [p setPostValue:access_token forKey:@"access_token"];
  2045. [p go];
  2046. }
  2047. #pragma mark---指定管理员
  2048. - (void)setManager:(NSString *)userId toView:(id)toView{
  2049. JXConnection *p = [self addTask:act_setManager param:nil toView:toView];
  2050. [p setPostValue:userId forKey:@"managerId"];
  2051. [p setPostValue:access_token forKey:@"access_token"];
  2052. [p go];
  2053. }
  2054. #pragma mark---管理员列表
  2055. - (void)getCompanyManager:(NSString *)companyId toView:(id)toView{
  2056. JXConnection *p = [self addTask:act_managerList param:nil toView:toView];
  2057. [p setPostValue:companyId forKey:@"companyId"];
  2058. [p setPostValue:access_token forKey:@"access_token"];
  2059. [p go];
  2060. }
  2061. #pragma mark---修改公司名
  2062. - (void)updataCompanyName:(NSString *)companyName noticeContent:(NSString *)noticeContent companyId:(NSString *)companyId toView:(id)toView{
  2063. JXConnection *p = [self addTask:act_updataCompanyName param:nil toView:toView];
  2064. if (companyName.length > 0) {
  2065. [p setPostValue:companyName forKey:@"companyName"];
  2066. }
  2067. if (noticeContent.length > 0) {
  2068. [p setPostValue:noticeContent forKey:@"noticeContent"];
  2069. }
  2070. [p setPostValue:companyId forKey:@"companyId"];
  2071. [p setPostValue:access_token forKey:@"access_token"];
  2072. [p go];
  2073. }
  2074. #pragma mark---更改公司公告
  2075. - (void)changeCompanyNotice:(NSString *)noticeContent companyId:(NSString *)companyId toView:(id)toView{
  2076. JXConnection *p = [self addTask:act_changeNotice param:nil toView:toView];
  2077. [p setPostValue:noticeContent forKey:@"noticeContent"];
  2078. [p setPostValue:companyId forKey:@"companyId"];
  2079. [p setPostValue:access_token forKey:@"access_token"];
  2080. [p go];
  2081. }
  2082. #pragma mark---查找公司
  2083. - (void)seachCompany:(NSString *)keyworld toView:(id)toView{
  2084. JXConnection *p = [self addTask:act_seachCompany param:nil toView:toView];
  2085. [p setPostValue:keyworld forKey:@"keyworld"];
  2086. [p setPostValue:access_token forKey:@"access_token"];
  2087. [p go];
  2088. }
  2089. #pragma mark---删除公司
  2090. - (void)deleteCompany:(NSString *)companyId userId:(NSString *)userId toView:(id)toView{
  2091. JXConnection *p = [self addTask:act_deleteCompany param:nil toView:toView];
  2092. [p setPostValue:companyId forKey:@"companyId"];
  2093. [p setPostValue:userId forKey:@"userId"];
  2094. [p setPostValue:access_token forKey:@"access_token"];
  2095. [p go];
  2096. }
  2097. #pragma mark---创建部门
  2098. - (void)createDepartment:(NSString *)companyId parentId:(NSString *)parentId departName:(NSString *)departName createUserId:(NSString *)createUserId toView:(id)toView{
  2099. JXConnection *p = [self addTask:act_createDepartment param:nil toView:toView];
  2100. [p setPostValue:companyId forKey:@"companyId"];
  2101. [p setPostValue:parentId forKey:@"parentId"];
  2102. [p setPostValue:g_myself.userId forKey:@"createUserId"];
  2103. [p setPostValue:departName forKey:@"departName"];
  2104. [p setPostValue:access_token forKey:@"access_token"];
  2105. [p go];
  2106. }
  2107. #pragma mark---修改部门名
  2108. - (void)updataDepartmentName:(NSString *)departmentName departmentId:(NSString *)departmentId toView:(id)toView{
  2109. JXConnection *p = [self addTask:act_updataDepartmentName param:nil toView:toView];
  2110. [p setPostValue:departmentName forKey:@"dpartmentName"];
  2111. [p setPostValue:departmentId forKey:@"departmentId"];
  2112. [p setPostValue:access_token forKey:@"access_token"];
  2113. [p go];
  2114. }
  2115. #pragma mark---删除部门
  2116. - (void)deleteDepartment:(NSString *)departmentId toView:(id)toView{
  2117. JXConnection *p = [self addTask:act_deleteDepartment param:nil toView:toView];
  2118. [p setPostValue:departmentId forKey:@"departmentId"];
  2119. [p setPostValue:access_token forKey:@"access_token"];
  2120. [p go];
  2121. }
  2122. #pragma mark---添加员工
  2123. - (void)addEmployee:(NSArray *)userIdArray companyId:(NSString *)companyId departmentId:(NSString *)departmentId roleArray:(NSArray *)roleArray toView:(id)toView{
  2124. JXConnection *p = [self addTask:act_addEmployee param:nil toView:toView];
  2125. [p setPostValue:[userIdArray componentsJoinedByString:@","] forKey:@"userId"];
  2126. [p setPostValue:companyId forKey:@"companyId"];
  2127. [p setPostValue:departmentId forKey:@"departmentId"];
  2128. if (roleArray) {
  2129. [p setPostValue:roleArray forKey:@"roleArray"];
  2130. }
  2131. [p setPostValue:access_token forKey:@"access_token"];
  2132. [p go];
  2133. }
  2134. #pragma mark---删除员工
  2135. - (void)deleteEmployee:(NSString *)departmentId userId:(NSString *)userId toView:(id)toView{
  2136. JXConnection *p = [self addTask:act_deleteEmployee param:nil toView:toView];
  2137. [p setPostValue:userId forKey:@"userIds"];
  2138. [p setPostValue:departmentId forKey:@"departmentId"];
  2139. [p setPostValue:access_token forKey:@"access_token"];
  2140. [p go];
  2141. }
  2142. #pragma mark---更改员工部门
  2143. - (void)modifyDpart:(NSString *)userId companyId:(NSString *)companyId newDepartmentId:(NSString *)newDepartmentId toView:(id)toView{
  2144. JXConnection *p = [self addTask:act_modifyDpart param:nil toView:toView];
  2145. [p setPostValue:userId forKey:@"userId"];
  2146. [p setPostValue:companyId forKey:@"companyId"];
  2147. [p setPostValue:newDepartmentId forKey:@"newDepartmentId"];
  2148. [p setPostValue:access_token forKey:@"access_token"];
  2149. [p go];
  2150. }
  2151. #pragma mark---部门员工列表
  2152. - (void)empList:(NSString *)departmentId toView:(id)toView{
  2153. JXConnection *p = [self addTask:act_empList param:nil toView:toView];
  2154. [p setPostValue:departmentId forKey:@"departmentId"];
  2155. [p setPostValue:access_token forKey:@"access_token"];
  2156. [p go];
  2157. }
  2158. #pragma mark---更改员工角色
  2159. - (void)modifyRole:(NSString *)userId companyId:(NSString *)companyId role:(NSNumber *)role toView:(id)toView{
  2160. JXConnection *p = [self addTask:act_modifyRole param:nil toView:toView];
  2161. [p setPostValue:userId forKey:@"userId"];
  2162. [p setPostValue:role forKey:@"role"];
  2163. [p setPostValue:companyId forKey:@"companyId"];
  2164. [p setPostValue:access_token forKey:@"access_token"];
  2165. [p go];
  2166. }
  2167. #pragma mark---更改员工职位(头衔)
  2168. - (void)modifyPosition:(NSString *)position companyId:(NSString *)companyId userId:(NSString *)userId toView:(id)toView{
  2169. JXConnection *p = [self addTask:act_modifyPosition param:nil toView:toView];
  2170. [p setPostValue:userId forKey:@"userId"];
  2171. [p setPostValue:position forKey:@"position"];
  2172. [p setPostValue:companyId forKey:@"companyId"];
  2173. [p setPostValue:access_token forKey:@"access_token"];
  2174. [p go];
  2175. }
  2176. #pragma mark---公司列表
  2177. - (void)companyListPage:(NSNumber *)pageIndex toView:(id)toView{
  2178. JXConnection *p = [self addTask:act_companyList param:nil toView:toView];
  2179. [p setPostValue:pageIndex forKey:@"pageIndex"];
  2180. [p setPostValue:[NSNumber numberWithInt:12] forKey:@"pageSize"];
  2181. [p setPostValue:access_token forKey:@"access_token"];
  2182. [p go];
  2183. }
  2184. #pragma mark---部门列表
  2185. - (void)departmentListPage:(NSNumber *)pageIndex companyId:(NSString *)companyId toView:(id)toView{
  2186. JXConnection *p = [self addTask:act_departmentList param:nil toView:toView];
  2187. [p setPostValue:pageIndex forKey:@"pageIndex"];
  2188. [p setPostValue:companyId forKey:@"companyId"];
  2189. [p setPostValue:access_token forKey:@"access_token"];
  2190. [p go];
  2191. }
  2192. #pragma mark---员工列表
  2193. - (void)employeeListPage:(NSNumber *)pageIndex companyId:(NSString *)companyId toView:(id)toView{
  2194. JXConnection *p = [self addTask:act_employeeList param:nil toView:toView];
  2195. [p setPostValue:pageIndex forKey:@"pageIndex"];
  2196. [p setPostValue:companyId forKey:@"companyId"];
  2197. [p setPostValue:access_token forKey:@"access_token"];
  2198. [p go];
  2199. }
  2200. #pragma mark---获取公司详情
  2201. - (void)getCompanyInfo:(NSString *)companyId toView:(id)toView{
  2202. JXConnection *p = [self addTask:act_companyInfo param:nil toView:toView];
  2203. [p setPostValue:companyId forKey:@"companyId"];
  2204. [p setPostValue:access_token forKey:@"access_token"];
  2205. [p go];
  2206. }
  2207. #pragma mark---员工详情
  2208. - (void)getEmployeeInfo:(NSString *)userId toView:(id)toView{
  2209. JXConnection *p = [self addTask:act_employeeInfo param:nil toView:toView];
  2210. [p setPostValue:userId forKey:@"userId"];
  2211. [p setPostValue:access_token forKey:@"access_token"];
  2212. [p go];
  2213. }
  2214. #pragma mark---部门详情
  2215. - (void)getDepartmentInfo:(NSString *)departmentId toView:(id)toView{
  2216. JXConnection *p = [self addTask:act_dpartmentInfo param:nil toView:toView];
  2217. [p setPostValue:departmentId forKey:@"departmentId"];
  2218. [p setPostValue:access_token forKey:@"access_token"];
  2219. [p go];
  2220. }
  2221. #pragma mark---公司员工数
  2222. - (void)getCompanyCount:(NSString *)companyId toView:(id)toView{
  2223. JXConnection *p = [self addTask:act_companyNum param:nil toView:toView];
  2224. [p setPostValue:companyId forKey:@"companyId"];
  2225. [p setPostValue:access_token forKey:@"access_token"];
  2226. [p go];
  2227. }
  2228. #pragma mark---部门员工数
  2229. - (void)getDepartmentCount:(NSString *)departmentId toView:(id)toView{
  2230. JXConnection *p = [self addTask:act_dpartmentNum param:nil toView:toView];
  2231. [p setPostValue:departmentId forKey:@"departmentId"];
  2232. [p setPostValue:access_token forKey:@"access_token"];
  2233. [p go];
  2234. }
  2235. -(void)getMessage:(NSString*)messageId toView:(id)toView{
  2236. if([messageId length]<=0)
  2237. return;
  2238. JXConnection* p = [self addTask:act_MsgGet param:nil toView:toView];
  2239. [p setPostValue:messageId forKey:@"messageId"];
  2240. [p setPostValue:access_token forKey:@"access_token"];
  2241. [p go];
  2242. }
  2243. -(void)listMessage:(int)type messageId:(NSString*)messageId toView:(id)toView{
  2244. JXConnection* p = [self addTask:act_MsgList param:nil toView:toView];
  2245. [p setPostValue:[NSNumber numberWithInt:jx_page_size] forKey:@"pageSize"];
  2246. [p setPostValue:messageId forKey:@"messageId"];
  2247. [p setPostValue:[NSNumber numberWithInt:type] forKey:@"type"];
  2248. [p setPostValue:access_token forKey:@"access_token"];
  2249. [p go];
  2250. }
  2251. -(void)addMessage:(NSString*)text type:(int)type data:(NSDictionary*)dict flag:(int)flag visible:(int)visible lookArray:(NSArray *)lookArray coor:(CLLocationCoordinate2D)coor location:(NSString *)location remindArray:(NSArray *)remindArray lable:(NSString *)lable isAllowComment:(int)isAllowComment toView:(id)toView{
  2252. if(text==nil)
  2253. return;
  2254. NSMutableArray* array;
  2255. NSString * jsonFiles=nil;
  2256. // NSMutableArray* a=[[NSMutableArray alloc]init];
  2257. SBJsonWriter * OderJsonwriter = [SBJsonWriter new];
  2258. array = [dict objectForKey:@"images"];
  2259. NSString * jsonImages = nil;
  2260. if([array count]>0){
  2261. [self doCheckUploadResult:array];
  2262. jsonImages = [OderJsonwriter stringWithObject:array];
  2263. jsonFiles = jsonImages;
  2264. }
  2265. array = [dict objectForKey:@"videos"];
  2266. NSString * jsonVideos=nil;
  2267. if([array count]>0){
  2268. [self doCheckUploadResult:array];
  2269. jsonVideos = [OderJsonwriter stringWithObject:array];
  2270. jsonFiles = jsonVideos;
  2271. // for(int i =0;i<[array count];i++)
  2272. // [a addObject:[[array objectAtIndex:i] objectForKey:@"oUrl"]];
  2273. // jsonVideos = [OderJsonwriter stringWithObject:a];
  2274. }
  2275. array = [dict objectForKey:@"audios"];
  2276. NSString * jsonAudios=nil;
  2277. if([array count]>0){
  2278. [self doCheckUploadResult:array];
  2279. jsonAudios = [OderJsonwriter stringWithObject:array];
  2280. jsonFiles = jsonAudios;
  2281. // for(int i =0;i<[array count];i++)
  2282. // [a addObject:[[array objectAtIndex:i] objectForKey:@"oUrl"]];
  2283. // jsonAudios = [OderJsonwriter stringWithObject:a];
  2284. }
  2285. array = [dict objectForKey:@"others"];
  2286. if([array count]>0){
  2287. [self doCheckUploadResult:array];
  2288. jsonFiles = [OderJsonwriter stringWithObject:array];
  2289. // for(int i =0;i<[array count];i++)
  2290. // [a addObject:[[array objectAtIndex:i] objectForKey:@"oUrl"]];
  2291. // jsonAudios = [OderJsonwriter stringWithObject:a];
  2292. }
  2293. array = nil;
  2294. JXConnection* p = [self addTask:act_MsgAdd param:nil toView:toView];
  2295. [p setPostValue:[NSNumber numberWithInt:type] forKey:@"type"];
  2296. [p setPostValue:[NSNumber numberWithInt:flag] forKey:@"flag"];
  2297. [p setPostValue:[NSNumber numberWithInt:visible] forKey:@"visible"];
  2298. [p setPostValue:[NSNumber numberWithInt:1] forKey:@"cityId"];
  2299. [p setPostValue:access_token forKey:@"access_token"];
  2300. [p setPostValue:text forKey:@"text"];
  2301. if (type == 5) {
  2302. [p setPostValue:jsonFiles forKey:@"files"];
  2303. }else if (type == 6) {
  2304. [p setPostValue:[dict objectForKey:@"sdkUrl"] forKey:@"sdkUrl"];
  2305. [p setPostValue:[dict objectForKey:@"sdkIcon"] forKey:@"sdkIcon"];
  2306. [p setPostValue:[dict objectForKey:@"sdkTitle"] forKey:@"sdkTitle"];
  2307. }
  2308. else {
  2309. [p setPostValue:jsonImages forKey:@"images"];
  2310. [p setPostValue:jsonAudios forKey:@"audios"];
  2311. [p setPostValue:jsonVideos forKey:@"videos"];
  2312. }
  2313. [p setPostValue:myself.model forKey:@"model"];
  2314. [p setPostValue:myself.osVersion forKey:@"osVersion"];
  2315. [p setPostValue:myself.serialNumber forKey:@"serialNumber"];
  2316. [p setPostValue:lable forKey:@"lable"];
  2317. [p setPostValue:[NSNumber numberWithInt:isAllowComment] forKey:@"isAllowComment"];
  2318. if (location.length > 0) {
  2319. [p setPostValue:[NSNumber numberWithDouble:coor.latitude] forKey:@"latitude"];
  2320. [p setPostValue:[NSNumber numberWithDouble:coor.longitude] forKey:@"longitude"];
  2321. [p setPostValue:location forKey:@"location"];
  2322. }
  2323. if (lookArray.count >0 && (visible == 3 || visible == 4)) {
  2324. NSString * lookStr = [lookArray componentsJoinedByString:@","];
  2325. NSString * arrayTitle = nil;
  2326. switch (visible) {
  2327. case 3:
  2328. arrayTitle = @"userLook";
  2329. break;
  2330. case 4:
  2331. arrayTitle = @"userNotLook";
  2332. break;
  2333. // case 5:
  2334. // arrayTitle = @"userRemindLook";
  2335. // break;
  2336. default:
  2337. arrayTitle = @"";
  2338. break;
  2339. }
  2340. [p setPostValue:lookStr forKey:arrayTitle];
  2341. }
  2342. if (remindArray.count > 0) {
  2343. [p setPostValue:[remindArray componentsJoinedByString:@","] forKey:@"userRemindLook"];
  2344. }
  2345. [p go];
  2346. }
  2347. -(void)forwardMessage:(NSString*)text messageId:(NSString*)messageId toView:(id)toView{
  2348. if(text==nil)
  2349. return;
  2350. JXConnection* p = [self addTask:act_Msgforward param:nil toView:toView];
  2351. [p setPostValue:text forKey:@"text"];
  2352. [p setPostValue:messageId forKey:@"messageId"];
  2353. [p setPostValue:access_token forKey:@"access_token"];
  2354. [p setPostValue:myself.model forKey:@"model"];
  2355. [p setPostValue:myself.osVersion forKey:@"osVersion"];
  2356. [p setPostValue:myself.serialNumber forKey:@"serialNumber"];
  2357. [p setPostValue:myself.latitude forKey:@"latitude"];
  2358. [p setPostValue:myself.longitude forKey:@"longitude"];
  2359. [p setPostValue:myself.location forKey:@"location"];
  2360. [p go];
  2361. }
  2362. -(void)delMessage:(NSString*)messageId toView:(id)toView{
  2363. if(messageId==nil)
  2364. return;
  2365. JXConnection* p = [self addTask:act_MsgDel param:nil toView:toView];
  2366. [p setPostValue:messageId forKey:@"messageId"];
  2367. [p setPostValue:access_token forKey:@"access_token"];
  2368. [p go];
  2369. }
  2370. -(void)listComment:(NSString*)messageId pageIndex:(NSInteger)pageIndex pageSize:(NSInteger)pageSize commentId:(NSString*)commentId toView:(id)toView{
  2371. JXConnection* p = [self addTask:act_CommentList param:nil toView:toView];
  2372. [p setPostValue:messageId forKey:@"messageId"];
  2373. if (pageIndex == 0) { // 第一次请求才传该参数
  2374. [p setPostValue:commentId forKey:@"commentId"];
  2375. }
  2376. [p setPostValue:[NSNumber numberWithInteger:pageIndex] forKey:@"pageIndex"];
  2377. [p setPostValue:[NSNumber numberWithInteger:pageSize] forKey:@"pageSize"];
  2378. [p setPostValue:access_token forKey:@"access_token"];
  2379. [p go];
  2380. }
  2381. -(void)listPraise:(NSString*)messageId pageIndex:(NSInteger)pageIndex pageSize:(NSInteger)pageSize praiseId:(NSString*)praiseId toView:(id)toView{
  2382. JXConnection* p = [self addTask:act_PraiseList param:nil toView:toView];
  2383. [p setPostValue:messageId forKey:@"messageId"];
  2384. if (pageIndex == 0) { // 第一次请求才传该参数
  2385. [p setPostValue:praiseId forKey:@"praiseId"];
  2386. }
  2387. [p setPostValue:[NSNumber numberWithInteger:pageIndex] forKey:@"pageIndex"];
  2388. [p setPostValue:[NSNumber numberWithInteger:pageSize] forKey:@"pageSize"];
  2389. [p setPostValue:access_token forKey:@"access_token"];
  2390. [p go];
  2391. }
  2392. -(void)listGift:(NSString*)messageId giftId:(NSString*)giftId toView:(id)toView{
  2393. JXConnection* p = [self addTask:act_GiftList param:nil toView:toView];
  2394. [p setPostValue:[NSNumber numberWithInt:jx_page_size] forKey:@"pageSize"];
  2395. [p setPostValue:giftId forKey:@"giftId"];
  2396. [p setPostValue:messageId forKey:@"messageId"];
  2397. [p setPostValue:access_token forKey:@"access_token"];
  2398. [p go];
  2399. }
  2400. -(void)addPraise:(NSString*)messageId toView:(id)toView{
  2401. if(messageId==nil)
  2402. return;
  2403. JXConnection* p = [self addTask:act_PraiseAdd param:nil toView:toView];
  2404. [p setPostValue:messageId forKey:@"messageId"];
  2405. [p setPostValue:access_token forKey:@"access_token"];
  2406. [p go];
  2407. }
  2408. -(void)delPraise:(NSString*)messageId toView:(id)toView{
  2409. if(messageId==nil)
  2410. return;
  2411. JXConnection* p = [self addTask:act_PraiseDel param:nil toView:toView];
  2412. [p setPostValue:messageId forKey:@"messageId"];
  2413. [p setPostValue:access_token forKey:@"access_token"];
  2414. [p go];
  2415. }
  2416. - (void)addForward:(NSString *)messageId toView:(id)toView{
  2417. if (messageId == nil) {
  2418. return;
  2419. }
  2420. JXConnection *p = [self addTask:act_ForwardAdd param:nil toView:toView];
  2421. [p setPostValue:messageId forKey:@"messageId"];
  2422. [p setPostValue:access_token forKey:@"access_token"];
  2423. [p go];
  2424. }
  2425. - (void)addPlayAmount:(NSString *)messageId toView:(id)toView{
  2426. if (messageId == nil) {
  2427. return;
  2428. }
  2429. JXConnection *p = [self addTask:act_PlayAmountAdd param:nil toView:toView];
  2430. [p setPostValue:messageId forKey:@"messageId"];
  2431. [p setPostValue:access_token forKey:@"access_token"];
  2432. [p go];
  2433. }
  2434. -(void)addGift:(NSString*)messageId gifts:(NSString*)gifts toView:(id)toView{
  2435. if(messageId==nil)
  2436. return;
  2437. JXConnection* p = [self addTask:act_GiftAdd param:nil toView:toView];
  2438. [p setPostValue:messageId forKey:@"messageId"];
  2439. [p setPostValue:gifts forKey:@"gifts"];
  2440. [p setPostValue:access_token forKey:@"access_token"];
  2441. [p go];
  2442. }
  2443. -(void)addComment:(WeiboReplyData*)reply toView:(id)toView{
  2444. if(reply.messageId==nil)
  2445. return;
  2446. JXConnection* p = [self addTask:act_CommentAdd param:nil toView:toView];
  2447. [p setPostValue:reply.messageId forKey:@"messageId"];
  2448. [p setPostValue:reply.body forKey:@"body"];
  2449. [p setPostValue:reply.toUserId forKey:@"toUserId"];
  2450. [p setPostValue:reply.toNickName forKey:@"toNickname"];
  2451. [p setPostValue:reply.toBody forKey:@"toBody"];
  2452. [p setPostValue:access_token forKey:@"access_token"];
  2453. [p go];
  2454. }
  2455. -(void)delComment:(NSString*)messageId commentId:(NSString*)commentId toView:(id)toView{
  2456. if(messageId==nil)
  2457. return;
  2458. JXConnection* p = [self addTask:act_CommentDel param:nil toView:toView];
  2459. [p setPostValue:messageId forKey:@"messageId"];
  2460. [p setPostValue:commentId forKey:@"commentId"];
  2461. [p setPostValue:access_token forKey:@"access_token"];
  2462. [p go];
  2463. }
  2464. -(void)addFriend:(NSString*)toUserId toView:(id)toView{
  2465. if(toUserId==nil)
  2466. return;
  2467. JXConnection* p = [self addTask:act_FriendAdd param:nil toView:toView];
  2468. [p setPostValue:toUserId forKey:@"toUserId"];
  2469. [p setPostValue:access_token forKey:@"access_token"];
  2470. [p go];
  2471. }
  2472. -(void)delFriend:(NSString*)toUserId toView:(id)toView{
  2473. if(toUserId==nil)
  2474. return;
  2475. JXConnection* p = [self addTask:act_FriendDel param:nil toView:toView];
  2476. [p setPostValue:toUserId forKey:@"toUserId"];
  2477. [p setPostValue:access_token forKey:@"access_token"];
  2478. [p go];
  2479. }
  2480. -(void)listFriend:(int)page userId:(NSString*)userId toView:(id)toView{
  2481. JXConnection* p = [self addTask:act_FriendList param:nil toView:toView];
  2482. [p setPostValue:[NSNumber numberWithInt:jx_page_size] forKey:@"pageSize"];
  2483. [p setPostValue:[NSNumber numberWithInt:page] forKey:@"pageIndex"];
  2484. [p setPostValue:userId forKey:@"userId"];
  2485. [p setPostValue:access_token forKey:@"access_token"];
  2486. [p go];
  2487. }
  2488. -(void)listFans:(int)page userId:(NSString*)userId toView:(id)toView{
  2489. JXConnection* p = [self addTask:act_FansList param:nil toView:toView];
  2490. [p setPostValue:[NSNumber numberWithInt:jx_page_size] forKey:@"pageSize"];
  2491. [p setPostValue:[NSNumber numberWithInt:page] forKey:@"pageIndex"];
  2492. [p setPostValue:userId forKey:@"userId"];
  2493. [p setPostValue:access_token forKey:@"access_token"];
  2494. [p go];
  2495. }
  2496. -(void)listAttention:(int)page userId:(NSString*)userId toView:(id)toView{
  2497. JXConnection* p = [self addTask:act_AttentionList param:nil toView:toView];
  2498. [p setPostValue:[NSNumber numberWithInt:jx_page_size] forKey:@"pageSize"];
  2499. [p setPostValue:[NSNumber numberWithInt:page] forKey:@"pageIndex"];
  2500. [p setPostValue:userId forKey:@"userId"];
  2501. [p setPostValue:access_token forKey:@"access_token"];
  2502. [p go];
  2503. }
  2504. -(void)addAttention:(NSString*)toUserId fromAddType:(int)fromAddType toView:(id)toView{
  2505. if(toUserId==nil)
  2506. return;
  2507. JXConnection* p = [self addTask:act_AttentionAdd param:nil toView:toView];
  2508. [p setPostValue:toUserId forKey:@"toUserId"];
  2509. [p setPostValue:@(fromAddType) forKey:@"fromAddType"];
  2510. [p setPostValue:access_token forKey:@"access_token"];
  2511. [p go];
  2512. }
  2513. -(void)delAttention:(NSString*)toUserId toView:(id)toView{
  2514. if(toUserId==nil)
  2515. return;
  2516. JXConnection* p = [self addTask:act_AttentionDel param:nil toView:toView];
  2517. [p setPostValue:toUserId forKey:@"toUserId"];
  2518. [p setPostValue:access_token forKey:@"access_token"];
  2519. [p go];
  2520. }
  2521. -(void)addBlacklist:(NSString*)toUserId toView:(id)toView{
  2522. if(toUserId==nil)
  2523. return;
  2524. JXConnection* p = [self addTask:act_BlacklistAdd param:nil toView:toView];
  2525. [p setPostValue:toUserId forKey:@"toUserId"];
  2526. [p setPostValue:access_token forKey:@"access_token"];
  2527. [p go];
  2528. }
  2529. -(void)delBlacklist:(NSString*)toUserId toView:(id)toView{
  2530. if(toUserId==nil)
  2531. return;
  2532. JXConnection* p = [self addTask:act_BlacklistDel param:nil toView:toView];
  2533. [p setPostValue:toUserId forKey:@"toUserId"];
  2534. [p setPostValue:access_token forKey:@"access_token"];
  2535. [p go];
  2536. }
  2537. -(void)listBlacklist:(int)page toView:(id)toView{
  2538. JXConnection* p = [self addTask:act_BlacklistList param:nil toView:toView];
  2539. [p setPostValue:[NSNumber numberWithInt:page] forKey:@"pageIndex"];
  2540. [p setPostValue:[NSNumber numberWithInt:jx_page_size] forKey:@"pageSize"];
  2541. [p setPostValue:access_token forKey:@"access_token"];
  2542. [p go];
  2543. }
  2544. -(void)setFriendName:(NSString*)toUserId noteName:(NSString*)noteName describe:(NSString *)describe toView:(id)toView{
  2545. if(toUserId==nil)
  2546. return;
  2547. JXConnection* p = [self addTask:act_FriendRemark param:nil toView:toView];
  2548. [p setPostValue:toUserId forKey:@"toUserId"];
  2549. [p setPostValue:noteName forKey:@"remarkName"];
  2550. [p setPostValue:describe forKey:@"describe"];
  2551. [p setPostValue:access_token forKey:@"access_token"];
  2552. [p go];
  2553. }
  2554. // 修改好友的聊天记录过期时间
  2555. -(void)friendsUpdate:(NSString *)toUserId chatRecordTimeOut:(NSString *)chatRecordTimeOut toView:(id)toView {
  2556. if(toUserId==nil)
  2557. return;
  2558. JXConnection* p = [self addTask:act_FriendsUpdate param:nil toView:toView];
  2559. [p setPostValue:toUserId forKey:@"toUserId"];
  2560. [p setPostValue:chatRecordTimeOut forKey:@"chatRecordTimeOut"];
  2561. [p setPostValue:access_token forKey:@"access_token"];
  2562. [p go];
  2563. }
  2564. -(void)getNewMessage:(NSString*)messageId toView:(id)toView{
  2565. JXConnection* p = [self addTask:act_MsgListNew param:nil toView:toView];
  2566. [p setPostValue:[NSNumber numberWithInt:jx_page_size*5] forKey:@"pageSize"];
  2567. [p setPostValue:messageId forKey:@"messageId"];
  2568. [p setPostValue:access_token forKey:@"access_token"];
  2569. [p go];
  2570. }
  2571. //设置是否需要好友验证
  2572. -(void)changeFriendSetting:(NSString *)friendsVerify allowAtt:(NSString *)allowAtt allowGreet:(NSString*)allowGreet key:(NSString *)key value:(NSString *)value toView:(id)toView{
  2573. JXConnection * p = [self addTask:act_SettingsUpdate param:nil toView:toView];
  2574. [p setPostValue:access_token forKey:@"access_token"];
  2575. [p setPostValue:friendsVerify forKey:@"friendsVerify"];
  2576. [p setPostValue:allowAtt forKey:@"allowAtt"];
  2577. [p setPostValue:allowGreet forKey:@"allowGreet"];
  2578. [p setPostValue:value forKey:key];
  2579. [p go];
  2580. }
  2581. //获取好友验证设置
  2582. - (void)getFriendSettings:(NSString *)userID toView:(id)toView{
  2583. JXConnection * p = [self addTask:act_Settings param:nil toView:toView];
  2584. [p setPostValue:userID forKey:@"userId"];
  2585. [p setPostValue:access_token forKey:@"access_token"];
  2586. [p go];
  2587. }
  2588. //离线期间调用的接口
  2589. - (void)offlineOperation:(double)offlineTime toView:(id)toView{
  2590. JXConnection * p = [self addTask:act_offlineOperation param:nil toView:toView];
  2591. [p setPostValue:[NSNumber numberWithDouble:offlineTime] forKey:@"offlineTime"];
  2592. [p setPostValue:access_token forKey:@"access_token"];
  2593. [p go];
  2594. }
  2595. -(void)getUserMessage:(NSString*)userId messageId:(NSString*)messageId toView:(id)toView{
  2596. JXConnection* p = [self addTask:act_MsgListUser param:nil toView:toView];
  2597. [p setPostValue:[NSNumber numberWithInt:jx_page_size*5] forKey:@"pageSize"];
  2598. [p setPostValue:messageId forKey:@"messageId"];
  2599. [p setPostValue:userId forKey:@"userId"];
  2600. [p setPostValue:access_token forKey:@"access_token"];
  2601. [p go];
  2602. }
  2603. -(void)getSetting:(id)toView{
  2604. JXConnection* p = [self addTask:act_Config param:nil toView:toView];
  2605. NSString *area = [g_default objectForKey:kLocationArea];
  2606. area = [self httpDataStr:area];
  2607. [p setPostValue:area forKey:@"area"];
  2608. [p go];
  2609. }
  2610. //http传输过程的数据转换
  2611. - (NSString *)httpDataStr:(NSString *)str {
  2612. NSString *outputStr = (NSString *)CFBridgingRelease(CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,(CFStringRef)str,NULL,(CFStringRef)@"!*'();:@&=+$/?%#[] ",kCFStringEncodingUTF8));
  2613. return outputStr;
  2614. }
  2615. -(long)user_id{
  2616. return [myself.userId intValue];
  2617. }
  2618. -(void)doCheckUploadResult:(NSMutableArray*)a{
  2619. NSMutableDictionary* p;
  2620. for(NSInteger i=[a count]-1;i>=0;i--){
  2621. p = [a objectAtIndex:i];
  2622. if([[p objectForKey:@"status"]intValue]!=1){
  2623. [a removeObjectAtIndex:i];
  2624. continue;
  2625. }
  2626. [p removeObjectForKey:@"status"];
  2627. // [p removeObjectForKey:@"oFileName"];
  2628. }
  2629. }
  2630. -(void)showLogin{
  2631. // 显示手动登录界面, 隐藏悬浮窗
  2632. g_App.subWindow.hidden = YES;
  2633. [g_default removeObjectForKey:kMY_USER_PASSWORD];
  2634. [g_default removeObjectForKey:kMY_USER_TOKEN];
  2635. [share_defaults removeObjectForKey:kMY_ShareExtensionToken];
  2636. JXMainLoginVc* vc = [JXMainLoginVc alloc];
  2637. //loginVC* vc = [loginVC alloc];
  2638. vc.isAutoLogin = NO;
  2639. vc.isSwitchUser= NO;
  2640. vc = [vc init];
  2641. g_navigation.rootViewController = vc;
  2642. // [g_navigation.subViews removeAllObjects];
  2643. // g_mainVC = nil;
  2644. // [g_navigation pushViewController:vc];
  2645. // g_App.window.rootViewController = vc;
  2646. // [g_App.window makeKeyAndVisible];
  2647. // loginVC* vc = [loginVC alloc];
  2648. // vc.isAutoLogin = NO;
  2649. // vc.isSwitchUser= YES;
  2650. // vc = [vc init];
  2651. // [g_window addSubview:vc.view];
  2652. // [g_navigation pushViewController:vc];
  2653. }
  2654. -(void)showWebPage:(NSString*)url title:(NSString*)s{
  2655. webpageVC* webVC = [webpageVC alloc];
  2656. webVC.title = s;
  2657. webVC.isSend = YES;
  2658. webVC.url = url;
  2659. webVC = [webVC init];
  2660. [g_navigation.navigationView addSubview:webVC.view];
  2661. // [g_navigation pushViewController:vc animated:YES];
  2662. }
  2663. -(void)listPays:(id)toView{
  2664. JXConnection* p = [self addTask:act_payList param:nil toView:toView];
  2665. [p setPostValue:access_token forKey:@"access_token"];
  2666. [p go];
  2667. }
  2668. -(void)order:(int)goodId count:(int)count type:(int)rechargeType toView:(id)toView{
  2669. JXConnection* p = [self addTask:act_payBuy param:nil toView:toView];
  2670. [p setPostValue:[NSString stringWithFormat:@"%d",goodId] forKey:@"goodsId"];
  2671. [p setPostValue:[NSString stringWithFormat:@"%d",count] forKey:@"count"];
  2672. [p setPostValue:[NSString stringWithFormat:@"%d",rechargeType] forKey:@"rechargeType"];
  2673. [p setPostValue:access_token forKey:@"access_token"];
  2674. [p go];
  2675. }
  2676. -(void)listBizs:(id)toView{
  2677. JXConnection* p = [self addTask:act_bizList param:nil toView:toView];
  2678. [p setPostValue:access_token forKey:@"access_token"];
  2679. [p go];
  2680. }
  2681. -(void)buy:(int)goodId count:(int)count toView:(id)toView{
  2682. JXConnection* p = [self addTask:act_bizBuy param:nil toView:toView];
  2683. [p setPostValue:[NSString stringWithFormat:@"%d",goodId] forKey:@"goodsId"];
  2684. [p setPostValue:[NSString stringWithFormat:@"%d",count] forKey:@"count"];
  2685. [p setPostValue:access_token forKey:@"access_token"];
  2686. [p go];
  2687. }
  2688. #pragma mark----新用户
  2689. - (void)nearbyNewUser:(searchData*)search nearOnly:(BOOL)bNearOnly page:(int)page toView:(id)toView{
  2690. JXConnection *p = [self addTask:act_nearNewUser param:nil toView:toView];
  2691. [p setPostValue:[NSNumber numberWithInt:jx_page_size] forKey:@"pageSize"];
  2692. [p setPostValue:[NSNumber numberWithInt:page] forKey:@"pageIndex"];
  2693. [p setPostValue:[NSNumber numberWithInt:search.minAge] forKey:@"minAge"];
  2694. [p setPostValue:[NSNumber numberWithInt:search.maxAge] forKey:@"maxAge"];
  2695. if(search.sex != -1)
  2696. [p setPostValue:[NSNumber numberWithInt:search.sex] forKey:@"sex"];
  2697. if(bNearOnly){
  2698. [p setPostValue:[NSNumber numberWithDouble:longitude] forKey:@"longitude"];
  2699. [p setPostValue:[NSNumber numberWithDouble:latitude] forKey:@"latitude"];
  2700. }
  2701. [p setPostValue:access_token forKey:@"access_token"];
  2702. [p go];
  2703. }
  2704. -(void)nearbyUser:(searchData*)search nearOnly:(BOOL)bNearOnly lat:(double)lat lng:(double)lng page:(int)page toView:(id)toView{
  2705. JXConnection* p = [self addTask:act_nearbyUser param:nil toView:toView];
  2706. [p setPostValue:[NSNumber numberWithInt:12] forKey:@"pageSize"];
  2707. [p setPostValue:[NSNumber numberWithInt:page] forKey:@"pageIndex"];
  2708. if (search) {
  2709. [p setPostValue:search.name forKey:@"nickname"];
  2710. // [p setPostValue:[NSNumber numberWithInt:search.minAge] forKey:@"minAge"];
  2711. // [p setPostValue:[NSNumber numberWithInt:search.maxAge] forKey:@"maxAge"];
  2712. if(search.sex != -1)
  2713. [p setPostValue:[NSNumber numberWithInt:search.sex] forKey:@"sex"];
  2714. }
  2715. if(bNearOnly && (lat != 0) &&(lng != 0)){
  2716. [p setPostValue:[NSNumber numberWithDouble:lng] forKey:@"longitude"];
  2717. [p setPostValue:[NSNumber numberWithDouble:lat] forKey:@"latitude"];
  2718. }else if (bNearOnly){
  2719. [p setPostValue:[NSNumber numberWithDouble:longitude] forKey:@"longitude"];
  2720. [p setPostValue:[NSNumber numberWithDouble:latitude] forKey:@"latitude"];
  2721. }
  2722. [p setPostValue:access_token forKey:@"access_token"];
  2723. [p go];
  2724. }
  2725. -(void)addRoom:(roomData*)room isPublic:(BOOL)isPublic isNeedVerify:(BOOL)isNeedVerify category:(NSInteger)category toView:(id)toView{
  2726. JXConnection* p = [self addTask:act_roomAdd param:nil toView:toView];
  2727. [p setPostValue:room.roomJid forKey:@"jid"];
  2728. [p setPostValue:room.name forKey:@"name"];
  2729. [p setPostValue:room.desc forKey:@"desc"];
  2730. [p setPostValue:[NSNumber numberWithInt:(isPublic ? 1:0)] forKey:@"isLook"];
  2731. [p setPostValue:[NSNumber numberWithInt:(isNeedVerify ? 1:0)] forKey:@"isNeedVerify"];
  2732. [p setPostValue:[NSNumber numberWithInt:(room.showMember ? 1:0)] forKey:@"showMember"];
  2733. [p setPostValue:[NSNumber numberWithInt:(room.allowSendCard ? 1:0)] forKey:@"allowSendCard"];
  2734. [p setPostValue:[NSNumber numberWithInt:(room.allowInviteFriend ? 1:0)] forKey:@"allowInviteFriend"];
  2735. [p setPostValue:[NSNumber numberWithInt:(room.allowUploadFile ? 1:0)] forKey:@"allowUploadFile"];
  2736. [p setPostValue:[NSNumber numberWithInt:(room.allowConference ? 1:0)] forKey:@"allowConference"];
  2737. [p setPostValue:[NSNumber numberWithInt:(room.allowSpeakCourse ? 1:0)] forKey:@"allowSpeakCourse"];
  2738. [p setPostValue:[NSNumber numberWithInt:(room.allowHostUpdate ? 1:0)] forKey:@"allowHostUpdate"];
  2739. [p setPostValue:[NSNumber numberWithInt:(room.isSecretGroup ? 1:0)] forKey:@"isSecretGroup"];
  2740. #ifdef IS_MsgEncrypt
  2741. if (room.chatKeyGroup && room.chatKeyGroup.length > 0) {
  2742. SecKeyRef pubKey = [g_securityUtil getRSAKeyWithBase64Str:g_msgUtil.rsaPublicKey isPrivateKey:NO];
  2743. NSData *enData = [g_securityUtil encryptMessageRSA:[room.chatKeyGroup dataUsingEncoding:NSUTF8StringEncoding] withPublicKey:pubKey];
  2744. NSString *enStr = [enData base64EncodedStringWithOptions:0];
  2745. NSDictionary *dic = [NSDictionary dictionaryWithObject:enStr forKey:g_myself.userId];
  2746. SBJsonWriter * OderJsonwriter = [SBJsonWriter new];
  2747. NSString * keys = [OderJsonwriter stringWithObject:dic];
  2748. [p setPostValue:keys forKey:@"keys"];
  2749. }
  2750. #endif
  2751. if (room.showRead) {
  2752. [p setPostValue:[NSNumber numberWithInt:1] forKey:@"showRead"];
  2753. }else{
  2754. [p setPostValue:[NSNumber numberWithInt:0] forKey:@"showRead"];
  2755. }
  2756. [p setPostValue:[NSNumber numberWithInt:room.countryId] forKey:@"countryId"];
  2757. [p setPostValue:[NSNumber numberWithInt:room.provinceId] forKey:@"provinceId"];
  2758. [p setPostValue:[NSNumber numberWithInt:room.cityId] forKey:@"cityId"];
  2759. [p setPostValue:[NSNumber numberWithInt:room.areaId] forKey:@"areaId"];
  2760. [p setPostValue:[NSNumber numberWithDouble:room.longitude] forKey:@"longitude"];
  2761. [p setPostValue:[NSNumber numberWithDouble:room.latitude] forKey:@"latitude"];
  2762. [p setPostValue:[NSNumber numberWithInteger:category] forKey:@"category"];
  2763. [p setPostValue:access_token forKey:@"access_token"];
  2764. [p go];
  2765. }
  2766. -(void)roomJoin:(NSString*)roomId userId:(NSString*)userId nickName:(NSString*)nickName toView:(id)toView{
  2767. JXConnection* p = [self addTask:act_roomJoin param:nil toView:toView];
  2768. [p setPostValue:roomId forKey:@"roomId"];
  2769. [p setPostValue:userId forKey:@"userId"];
  2770. [p setPostValue:nickName forKey:@"nickname"];
  2771. [p setPostValue:access_token forKey:@"access_token"];
  2772. [p go];
  2773. }
  2774. -(void)delRoom:(NSString*)roomId toView:(id)toView{
  2775. JXConnection* p = [self addTask:act_roomDel param:nil toView:toView];
  2776. [p setPostValue:roomId forKey:@"roomId"];
  2777. [p setPostValue:access_token forKey:@"access_token"];
  2778. [p go];
  2779. }
  2780. -(void)getRoom:(NSString*)roomId toView:(id)toView{
  2781. JXConnection* p = [self addTask:act_roomGet param:nil toView:toView];
  2782. [p setPostValue:roomId forKey:@"roomId"];
  2783. // [p setPostValue:[NSNumber numberWithInt:kRoomMemberListNum] forKey:@"pageSize"];
  2784. [p setPostValue:access_token forKey:@"access_token"];
  2785. [p go];
  2786. }
  2787. -(void)updateRoom:(roomData*)room toView:(id)toView{
  2788. JXConnection* p = [self addTask:act_roomSet param:nil toView:toView];
  2789. [p setPostValue:room.roomId forKey:@"roomId"];
  2790. [p setPostValue:room.name forKey:@"roomName"];
  2791. [p setPostValue:room.chatRecordTimeOut forKey:@"chatRecordTimeOut"];
  2792. [p setPostValue:[NSNumber numberWithLong:room.talkTime] forKey:@"talkTime"];
  2793. [p setPostValue:[NSNumber numberWithInt:room.maxCount] forKey:@"maxUserSize"];
  2794. [p setPostValue:access_token forKey:@"access_token"];
  2795. [p go];
  2796. }
  2797. -(void)updateRoomMaxUserSize:(roomData*)room toView:(id)toView{
  2798. JXConnection* p = [self addTask:act_roomSet param:nil toView:toView];
  2799. [p setPostValue:room.roomId forKey:@"roomId"];
  2800. [p setPostValue:[NSNumber numberWithInt:room.maxCount] forKey:@"maxUserSize"];
  2801. [p setPostValue:access_token forKey:@"access_token"];
  2802. [p go];
  2803. }
  2804. - (void)updateRoom:(roomData *)room key:(NSString *)key value:(NSString *)value toView:(id)toView {
  2805. JXConnection* p = [self addTask:act_roomSet param:nil toView:toView];
  2806. [p setPostValue:room.roomId forKey:@"roomId"];
  2807. [p setPostValue:access_token forKey:@"access_token"];
  2808. if (value) {
  2809. [p setPostValue:value forKey:key];
  2810. }
  2811. [p go];
  2812. }
  2813. -(void)updateRoomShowRead:(roomData*)room key:(NSString *)key value:(BOOL)value toView:(id)toView{
  2814. JXConnection* p = [self addTask:act_roomSet param:nil toView:toView];
  2815. [p setPostValue:room.roomId forKey:@"roomId"];
  2816. if (value) {
  2817. [p setPostValue:[NSNumber numberWithInt:1] forKey:key];
  2818. }else {
  2819. [p setPostValue:[NSNumber numberWithInt:0] forKey:key];
  2820. }
  2821. //
  2822. // if (room.showRead)
  2823. // [p setPostValue:[NSNumber numberWithInt:1] forKey:@"showRead"];
  2824. // else
  2825. // [p setPostValue:[NSNumber numberWithInt:0] forKey:@"showRead"];
  2826. //
  2827. //
  2828. // [p setPostValue:[NSNumber numberWithInt:room.isLook ? 1 : 0] forKey:@"isLook"];
  2829. // [p setPostValue:[NSNumber numberWithInt:room.isNeedVerify ? 1 : 0] forKey:@"isNeedVerify"];
  2830. // [p setPostValue:[NSNumber numberWithInt:room.showMember ? 1 : 0] forKey:@"showMember"];
  2831. // [p setPostValue:[NSNumber numberWithInt:room.allowSendCard ? 1 : 0] forKey:@"allowSendCard"];
  2832. [p setPostValue:access_token forKey:@"access_token"];
  2833. [p go];
  2834. }
  2835. -(void)updateRoomDesc:(roomData*)room toView:(id)toView{
  2836. JXConnection* p = [self addTask:act_roomSet param:nil toView:toView];
  2837. [p setPostValue:room.roomId forKey:@"roomId"];
  2838. [p setPostValue:room.desc forKey:@"desc"];
  2839. [p setPostValue:access_token forKey:@"access_token"];
  2840. [p go];
  2841. }
  2842. -(void)updateRoomNotify:(roomData*)room toView:(id)toView{
  2843. JXConnection* p = [self addTask:act_roomSet param:nil toView:toView];
  2844. [p setPostValue:room.roomId forKey:@"roomId"];
  2845. [p setPostValue:room.note forKey:@"notice"];
  2846. [p setPostValue:access_token forKey:@"access_token"];
  2847. [p go];
  2848. }
  2849. -(void)updateNotice:(NSString*)roomId noticeId:(NSString *)noticeId noticeContent:(NSString *)noticeContent toView:(id)toView{
  2850. JXConnection* p = [self addTask:act_updateNotice param:nil toView:toView];
  2851. [p setPostValue:roomId forKey:@"roomId"];
  2852. [p setPostValue:noticeId forKey:@"noticeId"];
  2853. [p setPostValue:noticeContent forKey:@"noticeContent"];
  2854. [p setPostValue:access_token forKey:@"access_token"];
  2855. [p go];
  2856. }
  2857. -(void)listRoom:(int)page roomName:(NSString *)roomName toView:(id)toView{
  2858. JXConnection* p = [self addTask:act_roomList param:nil toView:toView];
  2859. [p setPostValue:[NSNumber numberWithInt:page] forKey:@"pageIndex"];
  2860. [p setPostValue:roomName forKey:@"roomName"];
  2861. [p setPostValue:access_token forKey:@"access_token"];
  2862. [p go];
  2863. }
  2864. -(void)listHisRoom:(int)page pageSize:(int)pageSize toView:(id)toView{
  2865. // JXConnection* p = [self addTask:act_roomListHis param:[NSString stringWithFormat:@"?pageSize=%d&pageIndex=%d",jx_page_size,page] toView:toView];
  2866. JXConnection* p = [self addTask:act_roomListHis param:nil toView:toView];
  2867. [p setPostValue:[NSNumber numberWithInt:pageSize] forKey:@"pageSize"];
  2868. [p setPostValue:[NSNumber numberWithInt:page] forKey:@"pageIndex"];
  2869. [p setPostValue:[NSNumber numberWithInt:0] forKey:@"type"];
  2870. [p setPostValue:access_token forKey:@"access_token"];
  2871. [p go];
  2872. }
  2873. -(void)listRoomMember:(NSString*)roomId page:(int)page toView:(id)toView{
  2874. JXConnection* p = [self addTask:act_roomMemberList param:nil toView:toView];
  2875. [p setPostValue:[NSNumber numberWithInt:jx_page_size] forKey:@"pageSize"];
  2876. [p setPostValue:[NSNumber numberWithInt:page] forKey:@"pageIndex"];
  2877. [p setPostValue:roomId forKey:@"roomId"];
  2878. [p setPostValue:access_token forKey:@"access_token"];
  2879. [p go];
  2880. }
  2881. -(void)getRoomMember:(NSString*)roomId userId:(long)userId toView:(id)toView{
  2882. JXConnection* p = [self addTask:act_roomMemberGet param:nil toView:toView];
  2883. [p setPostValue:roomId forKey:@"roomId"];
  2884. [p setPostValue:[NSNumber numberWithLong:userId] forKey:@"userId"];
  2885. [p setPostValue:access_token forKey:@"access_token"];
  2886. [p go];
  2887. }
  2888. -(void)delRoomMember:(NSString*)roomId userId:(long)userId toView:(id)toView{
  2889. JXConnection* p = [self addTask:act_roomMemberDel param:nil toView:toView];
  2890. [p setPostValue:roomId forKey:@"roomId"];
  2891. [p setPostValue:[NSNumber numberWithLong:userId] forKey:@"userId"];
  2892. [p setPostValue:access_token forKey:@"access_token"];
  2893. [p go];
  2894. }
  2895. -(void)setRoomMember:(NSString*)roomId member:(memberData*)member toView:(id)toView{
  2896. if(!member)
  2897. return;
  2898. JXConnection* p = [self addTask:act_roomMemberSet param:nil toView:toView];
  2899. [p setPostValue:roomId forKey:@"roomId"];
  2900. [p setPostValue:[NSNumber numberWithLong:member.userId] forKey:@"userId"];
  2901. // [p setPostValue:[NSNumber numberWithInt:member.role] forKey:@"role"];
  2902. // [p setPostValue:[NSNumber numberWithInt:member.sub] forKey:@"sub"];
  2903. if (member.lordRemarkName.length > 0) {
  2904. [p setPostValue:member.lordRemarkName forKey:@"remarkName"];
  2905. }else {
  2906. [p setPostValue:member.userNickName forKey:@"nickname"];
  2907. }
  2908. [p setPostValue:access_token forKey:@"access_token"];
  2909. [p go];
  2910. }
  2911. -(void)setDisableSay:(NSString*)roomId member:(memberData*)member toView:(id)toView{
  2912. JXConnection* p = [self addTask:act_roomMemberSet param:nil toView:toView];
  2913. [p setPostValue:roomId forKey:@"roomId"];
  2914. [p setPostValue:[NSNumber numberWithLongLong:member.talkTime] forKey:@"talkTime"];
  2915. [p setPostValue:[NSNumber numberWithLong:member.userId] forKey:@"userId"];
  2916. [p setPostValue:access_token forKey:@"access_token"];
  2917. [p go];
  2918. }
  2919. -(void)setRoomAdmin:(NSString*)roomId userId:(NSString*)userId type:(int)type toView:(id)toView{
  2920. JXConnection* p = [self addTask:act_roomSetAdmin param:nil toView:toView];
  2921. [p setPostValue:roomId forKey:@"roomId"];
  2922. [p setPostValue:userId forKey:@"touserId"];
  2923. [p setPostValue:[NSNumber numberWithInt:type] forKey:@"type"];
  2924. [p setPostValue:access_token forKey:@"access_token"];
  2925. [p go];
  2926. }
  2927. // 指定监控人、隐身人
  2928. -(void)setRoomInvisibleGuardian:(NSString*)roomId userId:(NSString*)userId type:(int)type toView:(id)toView{
  2929. JXConnection* p = [self addTask:act_roomSetInvisibleGuardian param:nil toView:toView];
  2930. [p setPostValue:roomId forKey:@"roomId"];
  2931. [p setPostValue:userId forKey:@"touserId"];
  2932. [p setPostValue:[NSNumber numberWithInt:type] forKey:@"type"];
  2933. [p setPostValue:access_token forKey:@"access_token"];
  2934. [p go];
  2935. }
  2936. // 转让群主
  2937. - (void)roomTransfer:(NSString *)roomId toUserId:(NSString *)toUserId toView:(id)toView {
  2938. JXConnection* p = [self addTask:act_roomTransfer param:nil toView:toView];
  2939. [p setPostValue:roomId forKey:@"roomId"];
  2940. [p setPostValue:toUserId forKey:@"toUserId"];
  2941. [p setPostValue:access_token forKey:@"access_token"];
  2942. [p go];
  2943. }
  2944. -(void)addRoomMember:(NSString*)roomId userId:(NSString*)userId nickName:(NSString*)nickName toView:(id)toView{
  2945. JXConnection* p = [self addTask:act_roomMemberSet param:nil toView:toView];
  2946. [p setPostValue:roomId forKey:@"roomId"];
  2947. [p setPostValue:userId forKey:@"userId"];
  2948. [p setPostValue:nickName forKey:@"nickname"];
  2949. [p setPostValue:access_token forKey:@"access_token"];
  2950. [p go];
  2951. }
  2952. -(void)addRoomMember:(NSString*)roomId userArray:(NSArray*)array toView:(id)toView{
  2953. NSString * text;
  2954. if([array count]<=0)
  2955. return;
  2956. SBJsonWriter * OderJsonwriter = [SBJsonWriter new];
  2957. text = [OderJsonwriter stringWithObject:array];
  2958. JXConnection* p = [self addTask:act_roomMemberSet param:nil toView:toView];
  2959. #ifdef IS_MsgEncrypt
  2960. JXUserObject *roomObj = [[JXUserObject sharedInstance] getUserByRoomId:roomId];
  2961. if (roomObj.chatKeyGroup && roomObj.chatKeyGroup.length > 0) {
  2962. NSString *chatKeyGroup = [g_msgUtil decryptRoomMsgKey:roomId randomKey:roomObj.chatKeyGroup];
  2963. NSMutableDictionary *keysDic = [NSMutableDictionary dictionary];
  2964. for (NSInteger i = 0; i < array.count; i ++) {
  2965. NSString *userId = array[i];
  2966. JXUserObject *user = [[JXUserObject sharedInstance] getUserById:userId];
  2967. SecKeyRef pubKey = [g_securityUtil getRSAKeyWithBase64Str:user.publicKeyRSARoom isPrivateKey:NO];
  2968. NSData *enData = [g_securityUtil encryptMessageRSA:[chatKeyGroup dataUsingEncoding:NSUTF8StringEncoding] withPublicKey:pubKey];
  2969. NSString *enStr = [enData base64EncodedStringWithOptions:0];
  2970. [keysDic setObject:enStr forKey:userId];
  2971. }
  2972. SBJsonWriter * OderJsonwriter = [SBJsonWriter new];
  2973. NSString * keys = [OderJsonwriter stringWithObject:keysDic];
  2974. [p setPostValue:keys forKey:@"keys"];
  2975. }
  2976. #endif
  2977. [p setPostValue:roomId forKey:@"roomId"];
  2978. [p setPostValue:text forKey:@"text"];
  2979. [p setPostValue:access_token forKey:@"access_token"];
  2980. [p go];
  2981. }
  2982. /**添加共享文件*/
  2983. -(void)roomShareAddRoomId:(NSString *)roomId url:(NSString *)fileUrl fileName:(NSString *)fileName size:(NSNumber *)size type:(NSInteger)type toView:(id)toView{
  2984. JXConnection* p = [self addTask:act_shareAdd param:nil toView:toView];
  2985. [p setPostValue:roomId forKey:@"roomId"];
  2986. [p setPostValue:g_myself.userId forKey:@"userId"];
  2987. [p setPostValue:fileUrl forKey:@"url"];
  2988. [p setPostValue:fileName forKey:@"name"];
  2989. [p setPostValue:size forKey:@"size"];
  2990. [p setPostValue:[NSNumber numberWithInteger:type] forKey:@"type"];
  2991. [p setPostValue:access_token forKey:@"access_token"];
  2992. [p go];
  2993. }
  2994. /**获取文件列表*/
  2995. -(void)roomShareListRoomId:(NSString *)roomId userId:(NSString *)userId pageSize:(int)pageSize pageIndex:(int)pageIndex toView:(id)toView{
  2996. JXConnection* p = [self addTask:act_shareList param:nil toView:toView];
  2997. [p setPostValue:[NSNumber numberWithInt:jx_page_size] forKey:@"pageSize"];
  2998. [p setPostValue:[NSNumber numberWithInt:pageIndex] forKey:@"pageIndex"];
  2999. [p setPostValue:roomId forKey:@"roomId"];
  3000. if (userId.length > 0) {
  3001. [p setPostValue:g_myself.userId forKey:@"userId"];
  3002. }
  3003. [p setPostValue:access_token forKey:@"access_token"];
  3004. [p go];
  3005. }
  3006. /**获取单个文件信息*/
  3007. -(void)roomShareGetRoomId:(NSString *)roomId shareId:(NSString *)shareId toView:(id)toView{
  3008. JXConnection* p = [self addTask:act_shareGet param:nil toView:toView];
  3009. [p setPostValue:roomId forKey:@"roomId"];
  3010. [p setPostValue:shareId forKey:@"shareId"];
  3011. [p setPostValue:access_token forKey:@"access_token"];
  3012. [p go];
  3013. }
  3014. /**删除文件*/
  3015. -(void)roomShareDeleteRoomId:(NSString *)roomId shareId:(NSString *)shareId toView:(id)toView{
  3016. JXConnection* p = [self addTask:act_shareDelete param:nil toView:toView];
  3017. [p setPostValue:roomId forKey:@"roomId"];
  3018. [p setPostValue:shareId forKey:@"shareId"];
  3019. [p setPostValue:g_myself.userId forKey:@"userId"];
  3020. [p setPostValue:access_token forKey:@"access_token"];
  3021. [p go];
  3022. }
  3023. // 群成员分页获取
  3024. - (void)roomMemberGetMemberListByPageWithRoomId:(NSString *)roomId joinTime:(long)joinTime toView:(id)toView {
  3025. JXConnection* p = [self addTask:act_roomMemberGetMemberListByPage param:nil toView:toView];
  3026. [p setPostValue:roomId forKey:@"roomId"];
  3027. [p setPostValue:[NSNumber numberWithLong:joinTime] forKey:@"joinTime"];
  3028. [p setPostValue:[NSNumber numberWithInt:kRoomMemberListNum] forKey:@"pageSize"];
  3029. [p setPostValue:access_token forKey:@"access_token"];
  3030. [p go];
  3031. }
  3032. -(void)setPushChannelId:(NSString*)channelId{
  3033. if(channelId==nil)
  3034. return;
  3035. NSString *identifier = [[NSBundle mainBundle] bundleIdentifier];
  3036. JXConnection* p = [self addTask:act_setPushChannelId param:nil toView:nil];
  3037. [p setPostValue:@"2" forKey:@"deviceId"];
  3038. [p setPostValue:channelId forKey:@"channelId"];
  3039. [p setPostValue:access_token forKey:@"access_token"];
  3040. [p setPostValue:identifier forKey:@"appId"];
  3041. [p go];
  3042. }
  3043. //简历接口:
  3044. -(void)updateResume:(NSString*)resumeId nodeName:(NSString*)nodeName text:(NSString*)text toView:(id)toView{
  3045. JXConnection* p = [self addTask:act_resumeUpdate param:nil toView:toView];
  3046. [p setPostValue:resumeId forKey:@"resumeId"];
  3047. [p setPostValue:nodeName forKey:@"nodeName"];
  3048. [p setPostValue:text forKey:@"text"];
  3049. [p setPostValue:access_token forKey:@"access_token"];
  3050. [p go];
  3051. }
  3052. - (void)locate {
  3053. // 判断定位操作是否被允许
  3054. if([CLLocationManager locationServicesEnabled]) {
  3055. // _location = [[CLLocationManager alloc] init] ;
  3056. // _location.delegate = self;
  3057. // if ([[UIDevice currentDevice].systemVersion floatValue] >= 8.0) {
  3058. //// [_location requestAlwaysAuthorization];//始终允许访问位置信息,必须关闭
  3059. // [_location requestWhenInUseAuthorization];//使用应用程序期间允许访问位置数据
  3060. // }
  3061. [self.location locationStart];
  3062. }else {
  3063. }
  3064. // 没开启定位
  3065. if ([CLLocationManager authorizationStatus] == kCLAuthorizationStatusDenied) {
  3066. [self.location getLocationWithIp];
  3067. }
  3068. }
  3069. #pragma mark JXLocationDelegate
  3070. //- (void)location:(JXLocation *)location CountryCode:(NSString *)countryCode CityName:(NSString *)cityName CityId:(NSString *)cityId Address:(NSString *)address Latitude:(double)lat Longitude:(double)lon{
  3071. // self.countryCode = countryCode;
  3072. // self.cityName = cityName;
  3073. // self.cityId = [cityId intValue];
  3074. // self.address = address;
  3075. // self.latitude = lat;
  3076. // self.longitude = lon;
  3077. //
  3078. // if (isLogin || _isGetSetting) {
  3079. // //[self getSetting:self];//根据城市不同返回不同配置
  3080. // }
  3081. //}
  3082. -(double)getLocation:(double)latitude1 longitude:(double)longitude1{
  3083. if (latitude1 == 0 || longitude1 == 0) {
  3084. return 0;
  3085. }
  3086. CLLocation * hisLocation=[[CLLocation alloc] initWithLatitude:latitude1 longitude:longitude1];//在手机上测试
  3087. CLLocation *myLocation=[[CLLocation alloc] initWithLatitude:latitude longitude:longitude];//在simulator上测试,成功获得位置:22.602976,114.052067
  3088. double n = [myLocation distanceFromLocation:hisLocation];//[myLocation getDistanceFrom:hisLocation];
  3089. // [hisLocation release];
  3090. // [myLocation release];
  3091. return n;
  3092. }
  3093. // 获取首页视频
  3094. - (void)getact_apiAppFileResourceall:(NSString *)salt toView:(id)toView {
  3095. NSString *language;
  3096. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  3097. language = @"en";
  3098. }else{
  3099. language = @"zh";
  3100. }
  3101. JXConnection* p = [self addTask:act_apiAppFileResourceall param:nil toView:toView];
  3102. [p setPostValue:g_server.access_token forKey:@"access_token"];
  3103. // [p setPostValue:salt forKey:@"salt"];
  3104. // [p setPostValue:language forKey:@"language"];
  3105. [p go];
  3106. }
  3107. // 获取单聊漫游聊天记录
  3108. - (void)tigaseMsgsWithReceiver:(NSString *)receiver StartTime:(long)startTime EndTime:(long)endTime PageIndex:(int)pageIndex toView:(id)toView; {
  3109. JXConnection* p = [self addTask:act_tigaseMsgs param:nil toView:toView];
  3110. [p setPostValue:[NSNumber numberWithInt:pageIndex] forKey:@"pageIndex"];
  3111. [p setPostValue:[NSNumber numberWithInt:50] forKey:@"pageSize"];
  3112. [p setPostValue:[NSNumber numberWithLong:startTime] forKey:@"startTime"];
  3113. [p setPostValue:[NSNumber numberWithLong:endTime] forKey:@"endTime"];
  3114. [p setPostValue:receiver forKey:@"receiver"];
  3115. [p setPostValue:access_token forKey:@"access_token"];
  3116. [p go];
  3117. }
  3118. // 获取群聊漫游聊天记录
  3119. - (void)tigaseMucMsgsWithRoomId:(NSString *)roomId StartTime:(long)startTime EndTime:(long)endTime PageIndex:(int)pageIndex PageSize:(int)pageSize toView:(id)toView {
  3120. JXConnection* p = [self addTask:act_tigaseMucMsgs param:nil toView:toView];
  3121. [p setPostValue:[NSNumber numberWithInt:pageIndex] forKey:@"pageIndex"];
  3122. [p setPostValue:[NSNumber numberWithInt:pageSize] forKey:@"pageSize"];
  3123. [p setPostValue:[NSNumber numberWithLong:startTime] forKey:@"startTime"];
  3124. [p setPostValue:[NSNumber numberWithLong:endTime] forKey:@"endTime"];
  3125. [p setPostValue:roomId forKey:@"roomId"];
  3126. [p setPostValue:access_token forKey:@"access_token"];
  3127. [p go];
  3128. }
  3129. // 公众号菜单
  3130. - (void)getPublicMenuListWithUserId:(NSString *)userId toView:(id)toView {
  3131. if ([g_config.enableMpModule boolValue]) {
  3132. JXConnection* p = [self addTask:act_publicMenuList param:nil toView:toView];
  3133. [p setPostValue:userId forKey:@"userId"];
  3134. [p setPostValue:access_token forKey:@"access_token"];
  3135. [p go];
  3136. }
  3137. }
  3138. // 获取所有群助手列表
  3139. - (void)getHelperList:(int)pageIndex pageSize:(int)pageSize toView:(id)toView {
  3140. JXConnection* p = [self addTask:act_getHelperList param:nil toView:toView];
  3141. [p setPostValue:[NSNumber numberWithInt:pageIndex] forKey:@"pageIndex"];
  3142. [p setPostValue:[NSNumber numberWithInt:pageSize] forKey:@"pageSize"];
  3143. [p setPostValue:access_token forKey:@"access_token"];
  3144. [p go];
  3145. }
  3146. // 查询房间群助手接口
  3147. - (void)queryGroupHelper:(NSString *)roomId toView:(id)toView {
  3148. JXConnection* p = [self addTask:act_queryGroupHelper param:nil toView:toView];
  3149. [p setPostValue:roomId forKey:@"roomId"];
  3150. [p setPostValue:access_token forKey:@"access_token"];
  3151. [p go];
  3152. }
  3153. // 添加群助手接口
  3154. - (void)addGroupHelper:(NSString *)roomId roomJid:(NSString *)roomJid helperId:(NSString *)helperId toView:(id)toView {
  3155. JXConnection* p = [self addTask:act_addGroupHelper param:nil toView:toView];
  3156. [p setPostValue:roomId forKey:@"roomId"];
  3157. [p setPostValue:roomJid forKey:@"roomJid"];
  3158. [p setPostValue:helperId forKey:@"helperId"];
  3159. [p setPostValue:access_token forKey:@"access_token"];
  3160. [p go];
  3161. }
  3162. // 移除群助手接口
  3163. - (void)deleteGroupHelper:(NSString *)groupHelperId toView:(id)toView {
  3164. JXConnection* p = [self addTask:act_deleteGroupHelper param:nil toView:toView];
  3165. [p setPostValue:groupHelperId forKey:@"groupHelperId"];
  3166. [p setPostValue:access_token forKey:@"access_token"];
  3167. [p go];
  3168. }
  3169. // 添加自动回复关键字
  3170. - (void)addAutoResponse:(NSString *)roomId helperId:(NSString *)helperId keyword:(NSString *)keyword value:(NSString *)value toView:(id)toView {
  3171. JXConnection* p = [self addTask:act_addAutoResponse param:nil toView:toView];
  3172. [p setPostValue:roomId forKey:@"roomId"];
  3173. [p setPostValue:keyword forKey:@"keyword"];
  3174. [p setPostValue:value forKey:@"value"];
  3175. [p setPostValue:helperId forKey:@"helperId"];
  3176. [p setPostValue:access_token forKey:@"access_token"];
  3177. [p go];
  3178. }
  3179. // 删除自动回复关键字接口
  3180. - (void)deleteAutoResponse:(NSString *)groupHelperId keyWordId:(NSString *)keyWordId toView:(id)toView {
  3181. JXConnection* p = [self addTask:act_deleteAutoResponse param:nil toView:toView];
  3182. [p setPostValue:groupHelperId forKey:@"groupHelperId"];
  3183. [p setPostValue:keyWordId forKey:@"keyWordId"];
  3184. [p setPostValue:access_token forKey:@"access_token"];
  3185. [p go];
  3186. }
  3187. // 删除&撤回聊天记录
  3188. - (void)tigaseDeleteMsgWithMessageId:(NSString *)msgId type:(int)type deleteType:(int)deleteType roomJid:(NSString *)roomJid deleteOrWithdraw:(int)deleteOrWithdrawType toView:(id)toView {
  3189. JXConnection* p = [self addTask:act_tigaseDeleteMsg param:nil toView:toView];
  3190. [p setPostValue:access_token forKey:@"access_token"];
  3191. [p setPostValue:msgId forKey:@"messageId"];
  3192. [p setPostValue:[NSNumber numberWithInt:type] forKey:@"type"];
  3193. [p setPostValue:[NSNumber numberWithInt:deleteType] forKey:@"delete"];
  3194. [p setPostValue:[NSNumber numberWithInt:deleteOrWithdrawType] forKey:@"deleteType"];
  3195. if (roomJid) {
  3196. [p setPostValue:roomJid forKey:@"roomJid"];
  3197. }
  3198. [p go];
  3199. }
  3200. // 通用接口请求,只是单纯的请求接口,不做其他操作
  3201. - (void)requestWithUrl:(NSString *)url toView:(id)toView {
  3202. JXConnection* p = [self addTask:url param:nil toView:toView];
  3203. [p go];
  3204. }
  3205. // 消息免打扰(是否开启或关闭消息免打扰、阅后即焚、聊天置顶 统一都是0:关闭,1:开启),新增参数type(type = 0 消息免打扰 ,type = 1 阅后即焚 ,type = 2 聊天置顶)
  3206. - (void)friendsUpdateOfflineNoPushMsgUserId:(NSString *)userId toUserId:(NSString *)toUserId offlineNoPushMsg:(int)offlineNoPushMsg type:(int)type toView:(id)toView {
  3207. JXConnection* p = [self addTask:act_friendsUpdateOfflineNoPushMsg param:nil toView:toView];
  3208. [p setPostValue:access_token forKey:@"access_token"];
  3209. [p setPostValue:userId forKey:@"userId"];
  3210. [p setPostValue:toUserId forKey:@"toUserId"];
  3211. [p setPostValue:[NSNumber numberWithInt:offlineNoPushMsg] forKey:@"offlineNoPushMsg"];
  3212. [p setPostValue:[NSNumber numberWithInt:type] forKey:@"type"];
  3213. [p go];
  3214. }
  3215. -(void)pkpushSetToken:(NSString *)token deviceId:(NSString *)deviceId isVoip:(int)isVoip toView:(id)toView{
  3216. NSString *identifier = [[NSBundle mainBundle] bundleIdentifier];
  3217. JXConnection* p = [self addTask:act_PKPushSetToken param:nil toView:toView];
  3218. [p setPostValue:access_token forKey:@"access_token"];
  3219. [p setPostValue:token forKey:@"token"];
  3220. [p setPostValue:@"2" forKey:@"deviceId"];
  3221. [p setPostValue:[NSNumber numberWithInt:isVoip] forKey:@"isVoip"];
  3222. [p setPostValue:identifier forKey:@"appId"];
  3223. [p go];
  3224. }
  3225. -(void)jPushSetToken:(NSString *)token toView:(id)toView{
  3226. NSString *identifier = [[NSBundle mainBundle] bundleIdentifier];
  3227. JXConnection* p = [self addTask:act_jPushSetToken param:nil toView:toView];
  3228. [p setPostValue:access_token forKey:@"access_token"];
  3229. [p setPostValue:token forKey:@"regId"];
  3230. [p setPostValue:@"4" forKey:@"deviceId"];
  3231. [p setPostValue:identifier forKey:@"appId"];
  3232. [p go];
  3233. }
  3234. //添加收藏
  3235. -(void)addFavoriteWithEmoji:(NSMutableArray *)emoji toView:(id)toView{
  3236. JXConnection* p = [self addTask:act_userEmojiAdd param:nil toView:toView];
  3237. // NSMutableArray *emoji = [[NSMutableArray alloc] init];
  3238. // NSDictionary *dict = [[NSDictionary alloc] init];
  3239. // if ([type length] > 0)
  3240. // [dict setValue:type forKey:@"type"];
  3241. //
  3242. // if ([type intValue] == 6) {
  3243. // [dict setValue:url forKey:@"url"];
  3244. // }else {
  3245. // [dict setValue:msgId forKey:@"msgId"];
  3246. // if (roomJid) {
  3247. // [dict setValue:roomJid forKey:@"roomJid"];
  3248. // }
  3249. // }
  3250. // [emoji addObject:dict];
  3251. SBJsonWriter * OderJsonwriter = [SBJsonWriter new];
  3252. NSString * emojiJson = [OderJsonwriter stringWithObject:emoji];
  3253. [p setPostValue:access_token forKey:@"access_token"];
  3254. [p setPostValue:emojiJson forKey:@"emoji"];
  3255. [p go];
  3256. }
  3257. ////添加收藏
  3258. //-(void)addFavoriteWithContent:(NSString *)contentStr type:(int)type toView:(id)toView{
  3259. // JXConnection* p = [self addTask:act_userEmojiAdd param:nil toView:toView];
  3260. // [p setPostValue:access_token forKey:@"access_token"];
  3261. // [p setPostValue:contentStr forKey:@"url"];
  3262. // [p setPostValue:[NSNumber numberWithInt:type] forKey:@"type"];
  3263. // [p go];
  3264. //}
  3265. // 收藏表情
  3266. //- (void)userEmojiAddWithUrl:(NSString *)url toView:(id)toView {
  3267. // JXConnection* p = [self addTask:act_userEmojiAdd param:nil toView:toView];
  3268. // [p setPostValue:access_token forKey:@"access_token"];
  3269. // [p setPostValue:url forKey:@"url"];
  3270. // [p go];
  3271. //}
  3272. // 取消收藏
  3273. - (void)userEmojiDeleteWithId:(NSString *)emojiId toView:(id)toView {
  3274. JXConnection* p = [self addTask:act_userEmojiDelete param:nil toView:toView];
  3275. [p setPostValue:access_token forKey:@"access_token"];
  3276. [p setPostValue:emojiId forKey:@"emojiId"];
  3277. [p go];
  3278. }
  3279. // 朋友圈里面取消收藏
  3280. - (void)userWeiboEmojiDeleteWithId:(NSString *)messageId toView:(id)toView {
  3281. JXConnection* p = [self addTask:act_WeiboDeleteCollect param:nil toView:toView];
  3282. [p setPostValue:access_token forKey:@"access_token"];
  3283. [p setPostValue:messageId forKey:@"messageId"];
  3284. [p go];
  3285. }
  3286. // 不看他(她)生活圈和视频 toUserId : 对方用户Id type : 1 屏蔽 -1 取消屏蔽
  3287. //shieldType 屏蔽类型 -1 屏蔽某人的生活圈短视频,取消屏蔽某人的生活圈,短视频 1 不让某人看我的生活圈短视频,取消某人不让看我的生活圈短视频
  3288. - (void)filterUserCircle:(NSString *)toUserId shieldType:(NSNumber *)shieldType type:(NSNumber *)type toView:(id)toView {
  3289. JXConnection* p = [self addTask:act_filterUserCircle param:nil toView:toView];
  3290. [p setPostValue:access_token forKey:@"access_token"];
  3291. [p setPostValue:toUserId forKey:@"toUserId"];
  3292. [p setPostValue:type forKey:@"type"];
  3293. [p setPostValue:shieldType forKey:@"shieldType"];
  3294. [p go];
  3295. }
  3296. // 收藏列表
  3297. -(void)userCollectionListWithType:(int)type pageIndex:(int)pageIndex toView:(id)toView{
  3298. JXConnection* p = [self addTask:act_userCollectionList param:nil toView:toView];
  3299. [p setPostValue:access_token forKey:@"access_token"];
  3300. [p setPostValue:g_myself.userId forKey:@"userId"];
  3301. if (type > 0)
  3302. [p setPostValue:[NSNumber numberWithInt:type] forKey:@"type"];
  3303. [p setPostValue:[NSNumber numberWithInteger:pageIndex] forKey:@"pageIndex"];
  3304. [p setPostValue:[NSNumber numberWithInteger:1000] forKey:@"pageSize"];
  3305. [p go];
  3306. }
  3307. //收藏的表情列表
  3308. - (void)userEmojiListWithPageIndex:(int)pageIndex toView:(id)toView {
  3309. JXConnection* p = [self addTask:act_userEmojiList param:nil toView:toView];
  3310. [p setPostValue:access_token forKey:@"access_token"];
  3311. [p setPostValue:g_myself.userId forKey:@"userId"];
  3312. [p setPostValue:[NSNumber numberWithInteger:pageIndex] forKey:@"pageIndex"];
  3313. [p setPostValue:[NSNumber numberWithInteger:1000] forKey:@"pageSize"];
  3314. [p go];
  3315. }
  3316. // 添加课程
  3317. - (void)userCourseAddWithMessageIds:(NSString *)messageIds CourseName:(NSString *)courseName RoomJid:(NSString *)roomJid toView:(id)toView {
  3318. JXConnection* p = [self addTask:act_userCourseAdd param:nil toView:toView];
  3319. if (roomJid.length > 0) {
  3320. [p setPostValue:roomJid forKey:@"roomJid"];
  3321. }
  3322. [p setPostValue:access_token forKey:@"access_token"];
  3323. [p setPostValue:g_myself.userId forKey:@"userId"];
  3324. [p setPostValue:messageIds forKey:@"messageIds"];
  3325. [p setPostValue:courseName forKey:@"courseName"];
  3326. long long time = [[NSDate date] timeIntervalSince1970];
  3327. [p setPostValue:[NSString stringWithFormat:@"%lld",time] forKey:@"createTime"];
  3328. [p go];
  3329. }
  3330. // 查询课程
  3331. - (void)userCourseList:(id)toView {
  3332. JXConnection* p = [self addTask:act_userCourseList param:nil toView:toView];
  3333. [p setPostValue:access_token forKey:@"access_token"];
  3334. [p setPostValue:g_myself.userId forKey:@"userId"];
  3335. [p go];
  3336. }
  3337. // 修改课程
  3338. - (void)userCourseUpdateWithCourseId:(NSString *)courseId MessageIds:(NSString *)messageIds CourseName:(NSString *)courseName CourseMessageId:(NSString *)courseMessageId toView:(id)toView {
  3339. JXConnection* p = [self addTask:act_userCourseUpdate param:nil toView:toView];
  3340. [p setPostValue:access_token forKey:@"access_token"];
  3341. if (courseId.length > 0) {
  3342. [p setPostValue:courseId forKey:@"courseId"];
  3343. }
  3344. if (messageIds.length > 0) {
  3345. [p setPostValue:messageIds forKey:@"messageIds"];
  3346. }
  3347. if (courseName.length > 0) {
  3348. [p setPostValue:courseName forKey:@"courseName"];
  3349. }
  3350. if (courseMessageId.length > 0) {
  3351. [p setPostValue:courseMessageId forKey:@"courseMessageId"];
  3352. }
  3353. long long time = [[NSDate date] timeIntervalSince1970];
  3354. [p setPostValue:[NSString stringWithFormat:@"%lld",time] forKey:@"updateTime"];
  3355. [p go];
  3356. }
  3357. // 删除课程
  3358. - (void)userCourseDeleteWithCourseId:(NSString *)courseId toView:(id)toView {
  3359. JXConnection* p = [self addTask:act_userCourseDelete param:nil toView:toView];
  3360. [p setPostValue:access_token forKey:@"access_token"];
  3361. [p setPostValue:courseId forKey:@"courseId"];
  3362. [p go];
  3363. }
  3364. // 课程详情
  3365. - (void)userCourseGetWithCourseId:(NSString *)courseId toView:(id)toView {
  3366. JXConnection* p = [self addTask:act_userCourseGet param:nil toView:toView];
  3367. [p setPostValue:access_token forKey:@"access_token"];
  3368. [p setPostValue:courseId forKey:@"courseId"];
  3369. [p go];
  3370. }
  3371. // 更新角标
  3372. - (void)userChangeMsgNum:(NSInteger)num toView:(id)toView {
  3373. JXConnection* p = [self addTask:act_userChangeMsgNum param:nil toView:toView];
  3374. [p setPostValue:access_token forKey:@"access_token"];
  3375. [p setPostValue:[NSNumber numberWithInteger:num] forKey:@"num"];
  3376. [p go];
  3377. }
  3378. // 设置群消息免打扰
  3379. - (void)roomMemberSetOfflineNoPushMsg:(NSString *)roomId userId:(NSString *)userId type:(int)type offlineNoPushMsg:(int)offlineNoPushMsg toView:(id)toView{
  3380. JXConnection* p = [self addTask:act_roomMemberSetOfflineNoPushMsg param:nil toView:toView];
  3381. [p setPostValue:access_token forKey:@"access_token"];
  3382. [p setPostValue:roomId forKey:@"roomId"];
  3383. [p setPostValue:userId forKey:@"userId"];
  3384. [p setPostValue:[NSNumber numberWithInt:type] forKey:@"type"];
  3385. [p setPostValue:[NSNumber numberWithInt:offlineNoPushMsg] forKey:@"offlineNoPushMsg"];
  3386. [p go];
  3387. }
  3388. // 添加标签
  3389. - (void)friendGroupAdd:(NSString *)groupName toView:(id)toView {
  3390. JXConnection* p = [self addTask:act_FriendGroupAdd param:nil toView:toView];
  3391. [p setPostValue:access_token forKey:@"access_token"];
  3392. [p setPostValue:groupName forKey:@"groupName"];
  3393. [p go];
  3394. }
  3395. // 修改好友标签
  3396. - (void)friendGroupUpdateGroupUserList:(NSString *)groupId userIdListStr:(NSString *)userIdListStr toView:(id)toView {
  3397. JXConnection* p = [self addTask:act_FriendGroupUpdateGroupUserList param:nil toView:toView];
  3398. [p setPostValue:access_token forKey:@"access_token"];
  3399. [p setPostValue:groupId forKey:@"groupId"];
  3400. [p setPostValue:userIdListStr forKey:@"userIdListStr"];
  3401. [p go];
  3402. }
  3403. // 更新标签名
  3404. - (void)friendGroupUpdate:(NSString *)groupId groupName:(NSString *)groupName toView:(id)toView {
  3405. JXConnection* p = [self addTask:act_FriendGroupUpdate param:nil toView:toView];
  3406. [p setPostValue:access_token forKey:@"access_token"];
  3407. [p setPostValue:groupId forKey:@"groupId"];
  3408. [p setPostValue:groupName forKey:@"groupName"];
  3409. [p go];
  3410. }
  3411. // 删除标签
  3412. - (void)friendGroupDelete:(NSString *)groupId toView:(id)toView {
  3413. JXConnection* p = [self addTask:act_FriendGroupDelete param:nil toView:toView];
  3414. [p setPostValue:access_token forKey:@"access_token"];
  3415. [p setPostValue:groupId forKey:@"groupId"];
  3416. [p go];
  3417. }
  3418. // 标签列表
  3419. - (void)friendGroupListToView:(id)toView {
  3420. JXConnection* p = [self addTask:act_FriendGroupList param:nil toView:toView];
  3421. [p setPostValue:access_token forKey:@"access_token"];
  3422. [p go];
  3423. }
  3424. // 获取购彩web
  3425. - (void)actGetconfigconcatdomainnow:(id)toView {
  3426. JXConnection* p = [self addTask:act_Getconfigconcatdomainnow param:nil toView:toView];
  3427. [p setPostValue:access_token forKey:@"access_token"];
  3428. [p go];
  3429. }
  3430. // 修改好友的分组列表
  3431. - (void)friendGroupUpdateFriendToUserId:(NSString *)toUserId groupIdStr:(NSString *)groupIdStr toView:(id)toView {
  3432. JXConnection* p = [self addTask:act_FriendGroupUpdateFriend param:nil toView:toView];
  3433. [p setPostValue:access_token forKey:@"access_token"];
  3434. [p setPostValue:toUserId forKey:@"toUserId"];
  3435. [p setPostValue:groupIdStr forKey:@"groupIdStr"];
  3436. [p go];
  3437. }
  3438. // 删除群组公告
  3439. - (void)roomDeleteNotice:(NSString *)roomId noticeId:(NSString *)noticeId ToView:(id)toView {
  3440. JXConnection* p = [self addTask:act_roomDeleteNotice param:nil toView:toView];
  3441. [p setPostValue:access_token forKey:@"access_token"];
  3442. [p setPostValue:roomId forKey:@"roomId"];
  3443. [p setPostValue:noticeId forKey:@"noticeId"];
  3444. [p go];
  3445. }
  3446. // 拷贝文件
  3447. - (void)uploadCopyFileServlet:(NSString *)paths validTime:(NSString *)validTime toView:(id)toView {
  3448. JXConnection* p = [self addTask:act_UploadCopyFileServlet param:nil toView:toView];
  3449. [p setPostValue:access_token forKey:@"access_token"];
  3450. [p setPostValue:validTime forKey:@"validTime"];
  3451. [p setPostValue:paths forKey:@"paths"];
  3452. [p go];
  3453. }
  3454. // 群组复制
  3455. - (void)copyRoom:(NSString *)roomId toView:(id)toView {
  3456. JXConnection* p = [self addTask:act_copyRoom param:nil toView:toView];
  3457. [p setPostValue:access_token forKey:@"access_token"];
  3458. [p setPostValue:roomId forKey:@"roomId"];
  3459. [p go];
  3460. }
  3461. // 清空聊天记录
  3462. - (void)emptyMsgWithTouserId:(NSString *)toUserId type:(NSNumber *)type toView:(id)toView {
  3463. JXConnection* p = [self addTask:act_EmptyMsg param:nil toView:toView];
  3464. [p setPostValue:access_token forKey:@"access_token"];
  3465. [p setPostValue:toUserId forKey:@"toUserId"];
  3466. [p setPostValue:type forKey:@"type"];
  3467. [p go];
  3468. }
  3469. // 获取通讯录所有号码
  3470. - (void)getAddressBookAll:(id)toView {
  3471. JXConnection* p = [self addTask:act_AddressBookGetAll param:nil toView:toView];
  3472. [p setPostValue:self.access_token forKey:@"access_token"];
  3473. [p go];
  3474. }
  3475. // 上传通讯录
  3476. - (void)uploadAddressBookUploadStr:(NSString *)uploadStr toView:(id)toView {
  3477. JXConnection* p = [self addTask:act_AddressBookUpload param:nil toView:toView];
  3478. [p setPostValue:self.access_token forKey:@"access_token"];
  3479. [p setPostValue:uploadStr forKey:@"uploadJsonStr"];
  3480. [p go];
  3481. }
  3482. // 添加手机联系人好友
  3483. - (void)friendsAttentionBatchAddToUserIds:(NSString *)toUserIds toView:(id)toView {
  3484. JXConnection* p = [self addTask:act_FriendsAttentionBatchAdd param:nil toView:toView];
  3485. [p setPostValue:self.access_token forKey:@"access_token"];
  3486. [p setPostValue:toUserIds forKey:@"toUserIds"];
  3487. [p go];
  3488. }
  3489. // 用户绑定微信code,获取openid
  3490. - (void)userBindWXCodeWithCode:(NSString *)code toView:(id)toView {
  3491. JXConnection* p = [self addTask:act_UserBindWXCode param:nil toView:toView];
  3492. [p setPostValue:self.access_token forKey:@"access_token"];
  3493. [p setPostValue:code forKey:@"code"];
  3494. [p go];
  3495. }
  3496. // 更新手机号
  3497. - (void)getact_UserupdateUserPhone:(NSString *)salt telephone:(NSString *)telephone toView:(id)toView {
  3498. NSString *language;
  3499. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  3500. language = @"en";
  3501. }else{
  3502. language = @"zh";
  3503. }
  3504. JXConnection* p = [self addTask:act_updateUserPhone param:nil toView:toView];
  3505. [p setPostValue:g_server.access_token forKey:@"access_token"];
  3506. [p setPostValue:salt forKey:@"salt"];
  3507. [p setPostValue:telephone forKey:@"telephone"];
  3508. [p setPostValue:language forKey:@"language"];
  3509. [p go];
  3510. }
  3511. // 登录后绑定微信号
  3512. - (void)userBindWXAccount:(JXUserObject*)user type:(NSInteger)type openId:(NSString *)openId isLogin:(BOOL)isLogin toView:(id)toView {
  3513. JXConnection* p = [self addTask:act_UserBindWXAccount param:nil toView:toView];
  3514. [p setPostValue:self.access_token forKey:@"access_token"];
  3515. if (self.openId.length > 0 ) {
  3516. NSString *tel = [NSString stringWithFormat:@"%@%@",user.areaCode,user.telephone];
  3517. [p setPostValue:tel forKey:@"telephone"];
  3518. }else {
  3519. [p setPostValue:user.telephone forKey:@"telephone"];
  3520. }
  3521. [p setPostValue:user.password forKey:@"password"];
  3522. [p setPostValue:[NSNumber numberWithInteger:type] forKey:@"type"];
  3523. [p setPostValue:openId forKey:@"loginInfo"];
  3524. [p go];
  3525. }
  3526. /**
  3527. * 余额微信提现
  3528. * amout -- 提现金额,0.3=30,单位为分,最少0.5
  3529. * secret -- 提现秘钥
  3530. * time -- 请求时间,服务器检查,允许5分钟时差
  3531. */
  3532. - (void)transferWXPayWithAmount:(NSString *)amount secret:(NSString *)secret time:(NSNumber *)time toView:(id)toView {
  3533. JXConnection* p = [self addTask:act_TransferWXPay param:nil toView:toView];
  3534. [p setPostValue:self.access_token forKey:@"access_token"];
  3535. [p setPostValue:amount forKey:@"amount"];
  3536. [p setPostValue:secret forKey:@"secret"];
  3537. [p setPostValue:time forKey:@"time"];
  3538. [p go];
  3539. }
  3540. // 检查支付密码是否正确
  3541. - (void)checkPayPasswordWithUser:(JXUserObject *)user toView:(id)toView {
  3542. JXConnection* p = [self addTask:act_CheckPayPassword param:nil toView:toView];
  3543. [p setPostValue:self.access_token forKey:@"access_token"];
  3544. NSData *aesData = [AESUtil encryptAESData:[g_myself.userId dataUsingEncoding:NSUTF8StringEncoding] key:[MD5Util getMD5DataWithString:user.payPassword]];
  3545. [p setPostValue:[MD5Util getMD5StringWithData:aesData] forKey:@"payPassword"];
  3546. [p go];
  3547. }
  3548. // 更新支付密码
  3549. - (void)updatePayPasswordWithUser:(JXUserObject *)user toView:(id)toView {
  3550. JXConnection* p = [self addTask:act_UpdatePayPassword param:nil toView:toView];
  3551. [p setPostValue:self.access_token forKey:@"access_token"];
  3552. NSData *aesData = [AESUtil encryptAESData:[g_myself.userId dataUsingEncoding:NSUTF8StringEncoding] key:[MD5Util getMD5DataWithString:user.payPassword]];
  3553. NSData *aesDataOld = [AESUtil encryptAESData:[g_myself.userId dataUsingEncoding:NSUTF8StringEncoding] key:[MD5Util getMD5DataWithString:user.oldPayPassword]];
  3554. [p setPostValue:[MD5Util getMD5StringWithData:aesData] forKey:@"payPassword"];
  3555. [p setPostValue:user.oldPayPassword ? [MD5Util getMD5StringWithData:aesDataOld] : @"" forKey:@"oldPayPassword"];
  3556. [p go];
  3557. }
  3558. // 获取集群音视频服务地址
  3559. - (void)userOpenMeetWithToUserId:(NSString *)toUserId toView:(id)toView {
  3560. JXConnection* p = [self addTask:act_UserOpenMeet param:nil toView:toView];
  3561. [p setPostValue:self.access_token forKey:@"access_token"];
  3562. NSString *area = [g_default objectForKey:kLocationArea];
  3563. [p setPostValue:area forKey:@"area"];
  3564. [p setPostValue:toUserId forKey:@"toUserId"];
  3565. [p go];
  3566. }
  3567. // 获取群组信息
  3568. - (void)roomGetRoom:(NSString *)roomId toView:(id)toView {
  3569. JXConnection* p = [self addTask:act_roomGetRoom param:nil toView:toView];
  3570. [p setPostValue:self.access_token forKey:@"access_token"];
  3571. [p setPostValue:roomId forKey:@"roomId"];
  3572. [p go];
  3573. }
  3574. // 朋友圈纯视频接口
  3575. - (void)circleMsgPureVideoPageIndex:(NSInteger)pageIndex lable:(NSString *)lable toView:(id)toView{
  3576. JXConnection* p = [self addTask:act_CircleMsgPureVideo param:nil toView:toView];
  3577. [p setPostValue:self.access_token forKey:@"access_token"];
  3578. [p setPostValue:[NSNumber numberWithInteger:pageIndex] forKey:@"pageIndex"];
  3579. [p setPostValue:lable forKey:@"lable"];
  3580. [p setPostValue:[NSNumber numberWithInteger:20] forKey:@"pageSize"];
  3581. [p go];
  3582. }
  3583. // 获取音乐列表
  3584. - (void)musicListPageIndex:(NSInteger)pageIndex keyword:(NSString *)keyword toView:(id)toView {
  3585. JXConnection* p = [self addTask:act_MusicList param:nil toView:toView];
  3586. [p setPostValue:self.access_token forKey:@"access_token"];
  3587. [p setPostValue:[NSNumber numberWithInteger:pageIndex] forKey:@"pageIndex"];
  3588. [p setPostValue:[NSNumber numberWithInteger:20] forKey:@"pageSize"];
  3589. [p setPostValue:keyword forKey:@"keyword"];
  3590. [p go];
  3591. }
  3592. // 第三方认证
  3593. - (void)openOpenAuthInterfaceWithUserId:(NSString *)userId appId:(NSString *)appId appSecret:(NSString *)appSecret type:(NSInteger)type toView:(id)toView{
  3594. JXConnection* p = [self addTask:act_OpenAuthInterface param:nil toView:toView];
  3595. [p setPostValue:self.access_token forKey:@"access_token"];
  3596. [p setPostValue:userId forKey:@"userId"];
  3597. [p setPostValue:appId forKey:@"appId"];
  3598. [p setPostValue:appSecret forKey:@"appSecret"];
  3599. [p setPostValue:[NSNumber numberWithInteger:type] forKey:@"type"];
  3600. long time = (long)[[NSDate date] timeIntervalSince1970];
  3601. [p setPostValue:[NSNumber numberWithLong:time] forKey:@"time"];
  3602. NSString *str1 = [g_server getMD5String:appSecret];
  3603. NSMutableString *str2 = [NSMutableString string];
  3604. [str2 appendString:self.access_token];
  3605. [str2 appendString:[NSString stringWithFormat:@"%ld",time]];
  3606. str2 = [[g_server getMD5String:str2] mutableCopy];
  3607. NSMutableString *str3 = [NSMutableString string];
  3608. [str3 appendString:APIKEY];
  3609. [str3 appendString:appId];
  3610. [str3 appendString:userId];
  3611. [str3 appendString:str2];
  3612. [str3 appendString:str1];
  3613. str3 = [[g_server getMD5String:str3] mutableCopy];
  3614. [p setPostValue:str3 forKey:@"secret"];
  3615. [p go];
  3616. }
  3617. // 获取微信登录openid
  3618. - (void)getWxOpenId:(NSString *)code toView:(id)toView {
  3619. JXConnection* p = [self addTask:act_GetWxOpenId param:nil toView:toView];
  3620. [p setPostValue:code forKey:@"code"];
  3621. [p go];
  3622. }
  3623. - (void)wxSdkLogin:(JXUserObject *)user type:(NSInteger)type openId:(NSString *)openId toView:(id)toView {
  3624. NSString *identifier = [[NSBundle mainBundle] bundleIdentifier];
  3625. JXConnection* p = [self addTask:act_sdkLogin param:nil toView:toView];
  3626. [p setPostValue:[NSNumber numberWithInteger:type] forKey:@"type"];
  3627. [p setPostValue:openId forKey:@"loginInfo"];
  3628. // [p setPostValue:user forKey:@"UserExample"];
  3629. [p setPostValue:user.areaCode forKey:@"areaCode"];
  3630. [p setPostValue:user.verificationCode forKey:@"verificationCode"];
  3631. [p setPostValue:@"client_credentials" forKey:@"grant_type"];
  3632. [p setPostValue:user.model forKey:@"model"];
  3633. [p setPostValue:user.osVersion forKey:@"osVersion"];
  3634. [p setPostValue:g_macAddress forKey:@"serial"];
  3635. [p setPostValue:[NSNumber numberWithDouble:self.latitude] forKey:@"latitude"];
  3636. [p setPostValue:[NSNumber numberWithDouble:self.longitude] forKey:@"longitude"];
  3637. [p setPostValue:user.location forKey:@"location"];
  3638. [p setPostValue:identifier forKey:@"appId"];
  3639. [p setPostValue:[NSNumber numberWithInt:1] forKey:@"xmppVersion"];
  3640. // 是否开启集群
  3641. if ([g_config.isOpenCluster integerValue] == 1) {
  3642. NSString *area = [g_default objectForKey:kLocationArea];
  3643. [p setPostValue:area forKey:@"area"];
  3644. }
  3645. [p go];
  3646. }
  3647. // 微信登录(新)
  3648. - (void)wxSdkLoginV1:(NSString *)salt data:(NSString *)data toView:(id)toView {
  3649. JXConnection* p = [self addTask:act_sdkLoginV1 param:nil toView:toView];
  3650. [p setPostValue:salt forKey:@"salt"];
  3651. [p setPostValue:data forKey:@"data"];
  3652. [p setPostValue:@"ios" forKey:@"deviceId"];
  3653. [p go];
  3654. }
  3655. // 第三方绑定手机号
  3656. -(void)thirdLogin:(JXUserObject*)user type:(NSInteger)type openId:(NSString *)openId isLogin:(BOOL)isLogin toView:(id)toView{
  3657. // type 第三方登录类型 1: QQ 2: 微信
  3658. NSString *identifier = [[NSBundle mainBundle] bundleIdentifier];
  3659. JXConnection* p = [self addTask:act_thirdLogin param:nil toView:toView];
  3660. [p setPostValue:[NSNumber numberWithInteger:type] forKey:@"type"];
  3661. [p setPostValue:openId forKey:@"loginInfo"];
  3662. if (self.openId.length > 0 ) {
  3663. NSString *tel = [NSString stringWithFormat:@"%@%@",user.areaCode,user.telephone];
  3664. [p setPostValue:tel forKey:@"telephone"];
  3665. }else {
  3666. [p setPostValue:user.telephone forKey:@"telephone"];
  3667. }
  3668. [p setPostValue:user.password forKey:@"password"];
  3669. // 没有在登录后 绑定 才需要传下面的参数
  3670. if (!isLogin) {
  3671. [p setPostValue:user.areaCode forKey:@"areaCode"];
  3672. [p setPostValue:@"client_credentials" forKey:@"grant_type"];
  3673. [p setPostValue:user.model forKey:@"model"];
  3674. [p setPostValue:user.osVersion forKey:@"osVersion"];
  3675. [p setPostValue:g_macAddress forKey:@"serial"];
  3676. [p setPostValue:[NSNumber numberWithDouble:latitude] forKey:@"latitude"];
  3677. [p setPostValue:[NSNumber numberWithDouble:longitude] forKey:@"longitude"];
  3678. [p setPostValue:user.location forKey:@"location"];
  3679. [p setPostValue:identifier forKey:@"appId"];
  3680. [p setPostValue:[NSNumber numberWithInt:1] forKey:@"xmppVersion"];
  3681. // 是否开启集群
  3682. if ([g_config.isOpenCluster integerValue] == 1) {
  3683. NSString *area = [g_default objectForKey:kLocationArea];
  3684. [p setPostValue:area forKey:@"area"];
  3685. }
  3686. }
  3687. [p go];
  3688. }
  3689. // 第三方绑定手机号(新)
  3690. -(void)thirdLoginV1:(NSString*)userId salt:(NSString *)salt data:(NSString *)data toView:(id)toView {
  3691. JXConnection* p = [self addTask:act_thirdLoginV1 param:nil toView:toView];
  3692. [p setPostValue:userId forKey:@"userId"];
  3693. [p setPostValue:salt forKey:@"salt"];
  3694. [p setPostValue:data forKey:@"data"];
  3695. [p setPostValue:@"ios" forKey:@"deviceId"];
  3696. [p go];
  3697. }
  3698. // 第三方网页授权
  3699. - (void)openCodeAuthorCheckAppId:(NSString *)appId state:(NSString *)state callbackUrl:(NSString *)callbackUrl toView:(id)toView {
  3700. JXConnection* p = [self addTask:act_openCodeAuthorCheck param:nil toView:toView];
  3701. [p setPostValue:appId forKey:@"appId"];
  3702. [p setPostValue:state forKey:@"state"];
  3703. [p setPostValue:callbackUrl forKey:@"callbackUrl"];
  3704. [p go];
  3705. }
  3706. // 检查网址是否被锁定
  3707. - (void)userCheckReportUrl:(NSString *)webUrl toView:(id)toView {
  3708. JXConnection* p = [self addTask:act_userCheckReportUrl param:nil toView:toView];
  3709. [p setPostValue:webUrl forKey:@"webUrl"];
  3710. // [p setPostValue:self.access_token forKey:@"access_token"];
  3711. [p go];
  3712. }
  3713. // 第三方解绑
  3714. - (void)setAccountUnbind:(int)type toView:(id)toView {
  3715. // type 第三方登录类型 1: QQ 2: 微信
  3716. JXConnection* p = [self addTask:act_unbind param:nil toView:toView];
  3717. [p setPostValue:[NSNumber numberWithInt:type] forKey:@"type"];
  3718. [p setPostValue:self.access_token forKey:@"access_token"];
  3719. [p go];
  3720. }
  3721. // 获取用户绑定信息接口
  3722. - (void)getBindInfo:(id)toView {
  3723. JXConnection* p = [self addTask:act_getBindInfo param:nil toView:toView];
  3724. [p setPostValue:self.access_token forKey:@"access_token"];
  3725. [p go];
  3726. }
  3727. // 面对面建群
  3728. //面对面建群查询
  3729. - (void)roomLocationQueryWithIsQuery:(int)isQuery password:(NSString *)password toView:(id)toView{
  3730. JXConnection* p = [self addTask:act_RoomLocationQuery param:nil toView:toView];
  3731. [p setPostValue:[NSNumber numberWithDouble:longitude] forKey:@"longitude"];
  3732. [p setPostValue:[NSNumber numberWithDouble:latitude] forKey:@"latitude"];
  3733. [p setPostValue:[NSNumber numberWithInt:isQuery] forKey:@"isQuery"];
  3734. [p setPostValue:password forKey:@"password"];
  3735. [p setPostValue:self.access_token forKey:@"access_token"];
  3736. [p go];
  3737. }
  3738. //面对面建群加入
  3739. - (void)roomLocationJoinWithJid:(NSString *)jid toView:(id)toView{
  3740. JXConnection* p = [self addTask:act_RoomLocationJoin param:nil toView:toView];
  3741. [p setPostValue:jid forKey:@"jid"];
  3742. [p setPostValue:self.access_token forKey:@"access_token"];
  3743. [p go];
  3744. }
  3745. //面对面建群退出
  3746. - (void)roomLocationExitWithJid:(NSString *)jid toView:(id)toView{
  3747. JXConnection* p = [self addTask:act_RoomLocationExit param:nil toView:toView];
  3748. [p setPostValue:jid forKey:@"jid"];
  3749. [p setPostValue:self.access_token forKey:@"access_token"];
  3750. [p go];
  3751. }
  3752. // 支付
  3753. // 接口获取订单信息
  3754. - (void)payGetOrderInfoWithAppId:(NSString *)appId prepayId:(NSString *)prepayId toView:(id)toView{
  3755. JXConnection* p = [self addTask:act_PayGetOrderInfo param:nil toView:toView];
  3756. [p setPostValue:appId forKey:@"appId"];
  3757. [p setPostValue:prepayId forKey:@"prepayId"];
  3758. [p setPostValue:self.access_token forKey:@"access_token"];
  3759. [p go];
  3760. }
  3761. // 输入密码后支付接口
  3762. - (void)payPasswordPaymentWithAppId:(NSString *)appId prepayId:(NSString *)prepayId sign:(NSString *)sign time:(NSString *)time secret:(NSString *)secret toView:(id)toView {
  3763. JXConnection* p = [self addTask:act_PayPasswordPayment param:nil toView:toView];
  3764. [p setPostValue:appId forKey:@"appId"];
  3765. [p setPostValue:prepayId forKey:@"prepayId"];
  3766. [p setPostValue:sign forKey:@"sign"];
  3767. [p setPostValue:secret forKey:@"secret"];
  3768. [p setPostValue:time forKey:@"time"];
  3769. [p setPostValue:self.access_token forKey:@"access_token"];
  3770. [p go];
  3771. }
  3772. // 重置支付密码
  3773. - (void)authkeysResetPayPasswordWithSalt:(NSString *)salt mac:(NSString *)mac toView:(id)toView {
  3774. JXConnection* p = [self addTask:act_AuthkeysResetPayPassword param:nil toView:toView];
  3775. [p setPostValue:access_token forKey:@"access_token"];
  3776. [p setPostValue:salt forKey:@"salt"];
  3777. [p setPostValue:mac forKey:@"mac"];
  3778. [p go];
  3779. }
  3780. // weba扫描二维码登录
  3781. - (void)userQrCodeLoginWithQRCodeKey:(NSString *)qrCodeKey type:(NSString *)type toView:(id)toView {
  3782. JXConnection* p = [self addTask:act_UserQrCodeLogin param:nil toView:toView];
  3783. [p setPostValue:qrCodeKey forKey:@"qrCodeKey"];
  3784. [p setPostValue:type forKey:@"type"];
  3785. [p setPostValue:self.access_token forKey:@"access_token"];
  3786. [p go];
  3787. }
  3788. // 根据通讯号获取用户资料
  3789. - (void)userGetByAccountWithAccount:(NSString *)account toView:(id)toView {
  3790. JXConnection* p = [self addTask:act_UserGetByAccount param:nil toView:toView];
  3791. [p setPostValue:access_token forKey:@"access_token"];
  3792. [p setPostValue:account forKey:@"account"];
  3793. [p go];
  3794. }
  3795. // 获取加密私钥
  3796. - (void)authkeysGetPayPrivateKey:(id)toView {
  3797. JXConnection* p = [self addTask:act_AuthkeysGetPayPrivateKey param:nil toView:toView];
  3798. [p setPostValue:access_token forKey:@"access_token"];
  3799. [p go];
  3800. }
  3801. // 上传RSA公私钥
  3802. - (void)authkeysUploadPayKeyWithPrivateKey:(NSString *)privateKey publicKey:(NSString *)publicKey mac:(NSString *)mac toView:(id)toView {
  3803. JXConnection* p = [self addTask:act_AuthkeysUploadPayKey param:nil toView:toView];
  3804. [p setPostValue:access_token forKey:@"access_token"];
  3805. [p setPostValue:privateKey forKey:@"privateKey"];
  3806. [p setPostValue:publicKey forKey:@"publicKey"];
  3807. [p setPostValue:mac forKey:@"mac"];
  3808. [p go];
  3809. }
  3810. // 获取加固临时密码
  3811. - (void)transactionGetCodeWithSalt:(NSString *)salt mac:(NSString *)mac toView:(id)toView {
  3812. JXConnection* p = [self addTask:act_TransactionGetCode param:nil toView:toView];
  3813. [p setPostValue:access_token forKey:@"access_token"];
  3814. [p setPostValue:salt forKey:@"salt"];
  3815. [p setPostValue:mac forKey:@"mac"];
  3816. [p go];
  3817. }
  3818. // 支付通用接口
  3819. - (void)payCommonWithAction:(NSString *)action code:(NSString *)code codeId:(NSString *)codeId param:(NSMutableArray *)param time:(long)time payPassword:(NSString *)payPassword data:(NSString *)data toView:(id)toView {
  3820. JXConnection* p = [self addTask:action param:nil toView:toView];
  3821. [p setPostValue:access_token forKey:@"access_token"];
  3822. [p setPostValue:codeId forKey:@"codeId"];
  3823. [p setPostValue:data forKey:@"data"];
  3824. [p go];
  3825. }
  3826. // 登录加密
  3827. // 获取登录加密私钥
  3828. - (void)authkeysGetLoginPrivateKeyWithUserId:(NSString *)userId salt:(NSString *)salt mac:(NSString *)mac toView:(id)toView {
  3829. JXConnection* p = [self addTask:act_AuthkeysGetLoginPrivateKey param:nil toView:toView];
  3830. [p setPostValue:userId forKey:@"userId"];
  3831. [p setPostValue:salt forKey:@"salt"];
  3832. [p setPostValue:mac forKey:@"mac"];
  3833. [p go];
  3834. }
  3835. // 登录上传公私钥
  3836. - (void)authkeysUploadLoginKeyWithUserId:(NSString *)userId salt:(NSString *)salt privateKey:(NSString *)privateKey publicKey:(NSString *)publicKey mac:(NSString *)mac toView:(id)toView {
  3837. JXConnection* p = [self addTask:act_AuthkeysUploadLoginKey param:nil toView:toView];
  3838. [p setPostValue:userId forKey:@"userId"];
  3839. [p setPostValue:salt forKey:@"salt"];
  3840. [p setPostValue:privateKey forKey:@"privateKey"];
  3841. [p setPostValue:publicKey forKey:@"publicKey"];
  3842. [p setPostValue:mac forKey:@"mac"];
  3843. [p go];
  3844. }
  3845. // 登录获取临时加固密码
  3846. - (void)authGetLoginCodeWithAreaCode:(NSString *)areaCode account:(NSString *)account salt:(NSString *)salt deviceId:(NSString *)deviceId mac:(NSString *)mac toView:(id)toView {
  3847. JXConnection* p = [self addTask:act_AuthGetLoginCode param:nil toView:toView];
  3848. [p setPostValue:areaCode forKey:@"areaCode"];
  3849. [p setPostValue:salt forKey:@"salt"];
  3850. [p setPostValue:account forKey:@"account"];
  3851. [p setPostValue:deviceId forKey:@"deviceId"];
  3852. [p setPostValue:mac forKey:@"mac"];
  3853. [p go];
  3854. }
  3855. - (void)authGetLoginCodeWithAreaCodeXX:(NSString *)areaCode account:(NSString *)account salt:(NSString *)salt deviceId:(NSString *)deviceId model:(NSString *)model security:(NSString *)security mac:(NSString *)mac toView:(id)toView{
  3856. JXConnection* p = [self addTask:act_AuthGetLoginCode param:nil toView:toView];
  3857. [p setPostValue:areaCode forKey:@"areaCode"];
  3858. [p setPostValue:salt forKey:@"salt"];
  3859. [p setPostValue:account forKey:@"account"];
  3860. [p setPostValue:deviceId forKey:@"deviceId"];
  3861. [p setPostValue:mac forKey:@"mac"];
  3862. [p go];
  3863. }
  3864. // 消息加密
  3865. // 获取好友DH公钥表
  3866. - (void)authkeysGetDHMsgKeyListWithUserId:(NSString *)userId toView:(id)toView {
  3867. JXConnection* p = [self addTask:act_AuthkeysGetDHMsgKeyList param:nil toView:toView];
  3868. [p setPostValue:access_token forKey:@"access_token"];
  3869. [p setPostValue:userId forKey:@"userId"];
  3870. [p go];
  3871. }
  3872. //获取校验码,修改登录密码验签用
  3873. - (void)userGetRandomStr:(id)toView {
  3874. JXConnection* p = [self addTask:act_UserGetRandomStr param:nil toView:toView];
  3875. [p setPostValue:access_token forKey:@"access_token"];
  3876. [p go];
  3877. }
  3878. //红包抽奖记录
  3879. -(void)getRedPacketInvestPackageHistory:(NSString *)salt andToView:(id)toView{
  3880. NSString *language;
  3881. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  3882. language = @"en";
  3883. }else{
  3884. language = @"zh";
  3885. }
  3886. JXConnection* p = [self addTask:act_GetinvestPackageHistory param:nil toView:toView];
  3887. [p setPostValue:g_server.access_token forKey:@"access_token"];
  3888. [p setPostValue:salt forKey:@"salt"];
  3889. [p setPostValue:language forKey:@"language"];
  3890. [p go];
  3891. }
  3892. -(void)getact_getinviteget:(NSString *)salt andUserId:(NSString *)userId andToView:(id)toView{
  3893. NSString *language;
  3894. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  3895. language = @"en";
  3896. }else{
  3897. language = @"zh";
  3898. }
  3899. JXConnection* p = [self addTask:act_getinviteget param:nil toView:toView];
  3900. [p setPostValue:g_server.access_token forKey:@"access_token"];
  3901. [p setPostValue:salt forKey:@"salt"];
  3902. [p setPostValue:language forKey:@"language"];
  3903. [p setPostValue:userId forKey:@"userId"];
  3904. [p go];
  3905. }
  3906. -(void)getact_act_userINFO:(NSString *)salt andToView:(id)toView{
  3907. NSString *language;
  3908. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  3909. language = @"en";
  3910. }else{
  3911. language = @"zh";
  3912. }
  3913. JXConnection* p = [self addTask:act_GetUserVipInformation param:nil toView:toView];
  3914. [p setPostValue:g_server.access_token forKey:@"access_token"];
  3915. [p setPostValue:salt forKey:@"salt"];
  3916. [p setPostValue:language forKey:@"language"];
  3917. [p go];
  3918. }
  3919. -(void)getact_act_act_SilkPlanallByJidlist:(NSString *)salt jid:(NSString *)jid andToView:(id)toView{
  3920. NSString *language;
  3921. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  3922. language = @"en";
  3923. }else{
  3924. language = @"zh";
  3925. }
  3926. JXConnection* p = [self addTask:act_SilkPlanallByJidlist param:nil toView:toView];
  3927. [p setPostValue:g_server.access_token forKey:@"access_token"];
  3928. [p setPostValue:salt forKey:@"salt"];
  3929. [p setPostValue:jid forKey:@"jid"];
  3930. [p setPostValue:language forKey:@"language"];
  3931. [p go];
  3932. }
  3933. -(void)getact_act_userGradelistGrade:(NSString *)salt andToView:(id)toView{
  3934. NSString *language;
  3935. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  3936. language = @"en";
  3937. }else{
  3938. language = @"zh";
  3939. }
  3940. JXConnection* p = [self addTask:act_userGradelistGrade param:nil toView:toView];
  3941. [p setPostValue:g_server.access_token forKey:@"access_token"];
  3942. [p setPostValue:salt forKey:@"salt"];
  3943. [p setPostValue:language forKey:@"language"];
  3944. [p go];
  3945. }
  3946. -(void)getact_getinviteget:(NSString *)salt andUserId:(NSString *)userId invite:(NSString *)invite andToView:(id)toView{
  3947. NSString *language;
  3948. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  3949. language = @"en";
  3950. }else{
  3951. language = @"zh";
  3952. }
  3953. JXConnection* p = [self addTask:act_getinvitedit param:nil toView:toView];
  3954. [p setPostValue:g_server.access_token forKey:@"access_token"];
  3955. [p setPostValue:salt forKey:@"salt"];
  3956. [p setPostValue:language forKey:@"language"];
  3957. [p setPostValue:userId forKey:@"userId"];
  3958. [p setPostValue:invite forKey:@"invite"];
  3959. [p go];
  3960. }
  3961. // 反馈意见提交
  3962. -(void)getMyFeedSubmit:(NSString *)salt type:(NSString *)type desc:(NSString *)desc img:(NSString *)img targetUserId:(NSString *)targetUserId andToView:(id)toView{
  3963. NSString *language;
  3964. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  3965. language = @"en";
  3966. }else{
  3967. language = @"zh";
  3968. }
  3969. JXConnection* p = [self addTask:act_feedbacksubmit param:nil toView:toView];
  3970. [p setPostValue:g_server.access_token forKey:@"access_token"];
  3971. [p setPostValue:salt forKey:@"salt"];
  3972. [p setPostValue:language forKey:@"language"];
  3973. [p setPostValue:type forKey:@"type"];
  3974. [p setPostValue:desc forKey:@"desc"];
  3975. [p setPostValue:img forKey:@"img"];
  3976. [p setPostValue:targetUserId forKey:@"targetUserId"];
  3977. // NSLog(@"请求参数:%@",[p mj_keyValues]);
  3978. [p go];
  3979. }
  3980. //排行榜
  3981. -(void)getMyPaihangBang:(NSString *)salt andType:(NSString *)type andToView:(id)toView{
  3982. NSString *language;
  3983. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  3984. language = @"en";
  3985. }else{
  3986. language = @"zh";
  3987. }
  3988. JXConnection* p = [self addTask:act_usertopPHBall param:nil toView:toView];
  3989. [p setPostValue:g_server.access_token forKey:@"access_token"];
  3990. [p setPostValue:salt forKey:@"salt"];
  3991. [p setPostValue:type forKey:@"type"];
  3992. [p setPostValue:language forKey:@"language"];
  3993. [p go];
  3994. }
  3995. /**
  3996. 用户反馈列表
  3997. */
  3998. -(void)getact_usermyfeedbacktypes:(NSString *)salt andType:(NSString *)type andToView:(id)toView{
  3999. NSString *language;
  4000. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4001. language = @"en";
  4002. }else{
  4003. language = @"zh";
  4004. }
  4005. JXConnection* p = [self addTask:act_usermyfeedbacktypes param:nil toView:toView];
  4006. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4007. [p setPostValue:salt forKey:@"salt"];
  4008. // [p setPostValue:type forKey:@"type"];
  4009. [p setPostValue:language forKey:@"language"];
  4010. [p go];
  4011. }
  4012. -(void)getact_act_act_getGroupListType:(NSString *)salt andToView:(id)toView{
  4013. NSString *language;
  4014. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4015. language = @"en";
  4016. }else{
  4017. language = @"zh";
  4018. }
  4019. JXConnection* p = [self addTask:act_getAllGroupListType param:nil toView:toView];
  4020. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4021. [p setPostValue:salt forKey:@"salt"];
  4022. [p setPostValue:language forKey:@"language"];
  4023. [p go];
  4024. }
  4025. /**
  4026. 获取单个群的群类型
  4027. */
  4028. -(void)getact_act_act_getGroupOneType:(NSString *)salt jid:(NSString *)jid andToView:(id)toView{
  4029. NSString *language;
  4030. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4031. language = @"en";
  4032. }else{
  4033. language = @"zh";
  4034. }
  4035. JXConnection* p = [self addTask:act_getGroupOneType param:nil toView:toView];
  4036. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4037. [p setPostValue:salt forKey:@"salt"];
  4038. [p setPostValue:jid forKey:@"jid"];
  4039. [p setPostValue:language forKey:@"language"];
  4040. [p go];
  4041. }
  4042. /**
  4043. 添加群组发图片的次数
  4044. */
  4045. -(void)getact_act_aact_getGroupImg:(NSString *)salt jid:(NSString *)jid andToView:(id)toView{
  4046. JXConnection* p = [self addTask:act_getGroupImg param:nil toView:toView];
  4047. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4048. [p setPostValue:jid forKey:@"jid"];
  4049. [p go];
  4050. }
  4051. /**
  4052. 添加群组发 语音的次数
  4053. */
  4054. -(void)getact_act_act_getGroupaudio:(NSString *)salt jid:(NSString *)jid andToView:(id)toView{
  4055. NSString *language;
  4056. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4057. language = @"en";
  4058. }else{
  4059. language = @"zh";
  4060. }
  4061. JXConnection* p = [self addTask:act_getGroupaudio param:nil toView:toView];
  4062. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4063. [p setPostValue:salt forKey:@"salt"];
  4064. [p setPostValue:jid forKey:@"jid"];
  4065. [p go];
  4066. }
  4067. /**
  4068. 添加群组发文字的次数
  4069. */
  4070. -(void)getact_act_act_getGroupText:(NSString *)salt jid:(NSString *)jid andToView:(id)toView{
  4071. JXConnection* p = [self addTask:act_getGroupText param:nil toView:toView];
  4072. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4073. [p setPostValue:jid forKey:@"jid"];
  4074. [p go];
  4075. }
  4076. /**
  4077. 用户反馈提交
  4078. */
  4079. -(void)getact_act_usermyfeedSubmit:(NSString *)salt andType:(NSString *)type andToView:(id)toView{
  4080. NSString *language;
  4081. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4082. language = @"en";
  4083. }else{
  4084. language = @"zh";
  4085. }
  4086. JXConnection* p = [self addTask:act_usermyfeedSubmit param:nil toView:toView];
  4087. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4088. [p setPostValue:salt forKey:@"salt"];
  4089. [p setPostValue:type forKey:@"type"];
  4090. [p setPostValue:language forKey:@"language"];
  4091. [p go];
  4092. }
  4093. -(void)getRedPacketBalanceTimesToViewBySalt:(NSString *)salt andToView:(id)toView
  4094. {
  4095. NSString *language;
  4096. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4097. language = @"en";
  4098. }else{
  4099. language = @"zh";
  4100. }
  4101. JXConnection* p = [self addTask:act_GetBalanceRedTimes param:nil toView:toView];
  4102. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4103. [p setPostValue:salt forKey:@"salt"];
  4104. [p setPostValue:language forKey:@"language"];
  4105. [p go];
  4106. }
  4107. -(void)getUserGetAllPhoneDeviceInformation:(NSString *)salt userID:(NSString *)userID andToView:(id)toView{
  4108. NSString *language;
  4109. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4110. language = @"en";
  4111. }else{
  4112. language = @"zh";
  4113. }
  4114. JXConnection* p = [self addTask:act_userdeviceLogGetAllDeviceLog param:nil toView:toView];
  4115. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4116. [p setPostValue:salt forKey:@"salt"];
  4117. [p setPostValue:language forKey:@"language"];
  4118. [p setPostValue:userID forKey:@"userId"];
  4119. [p go];
  4120. }
  4121. -(void)getUserDeleteAllPhoneDeviceInformation:(NSString *)salt userID:(NSString *)userID deviceName:(NSString *)deviceName andToView:(id)toView{
  4122. NSString *language;
  4123. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4124. language = @"en";
  4125. }else{
  4126. language = @"zh";
  4127. }
  4128. JXConnection* p = [self addTask:act_userdeviceLogdeleteDeviceLog param:nil toView:toView];
  4129. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4130. [p setPostValue:salt forKey:@"salt"];
  4131. [p setPostValue:language forKey:@"language"];
  4132. [p setPostValue:userID forKey:@"userId"];
  4133. [p setPostValue:deviceName forKey:@"deviceIMSI"];
  4134. [p go];
  4135. }
  4136. -(void)updateUserPhone:(NSString *)salt telephone:(NSString*)telephone areaCode:(NSString *)randcode toView:(id)toView{
  4137. JXConnection* p = [self addTask:act_updateUserPhone param:nil toView:toView];
  4138. [p setPostValue:telephone forKey:@"telephone"];
  4139. [p setPostValue:randcode forKey:@"randcode"];
  4140. NSString *language;
  4141. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4142. language = @"en";
  4143. }else{
  4144. language = @"zh";
  4145. }
  4146. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4147. [p setPostValue:salt forKey:@"salt"];
  4148. [p setPostValue:language forKey:@"language"];
  4149. [p go];
  4150. }
  4151. -(void)UserRoomAttentionLookattention:(NSString *)salt userId:(NSString *)userId jid:(NSString *)jid andToView:(id)toView{
  4152. NSString *language;
  4153. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4154. language = @"en";
  4155. }else{
  4156. language = @"zh";
  4157. }
  4158. JXConnection* p = [self addTask:act_UserRoomManyLookAttenion param:nil toView:toView];
  4159. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4160. [p setPostValue:salt forKey:@"salt"];
  4161. [p setPostValue:language forKey:@"language"];
  4162. [p setPostValue:userId forKey:@"userId"];
  4163. [p setPostValue:jid forKey:@"jid"];
  4164. [p go];
  4165. }
  4166. -(void)act_UsergoldMangerHistory:(NSString *)salt andToView:(id)toView{
  4167. NSString *language;
  4168. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4169. language = @"en";
  4170. }else{
  4171. language = @"zh";
  4172. }
  4173. JXConnection* p = [self addTask:act_goldMangerHistory param:nil toView:toView];
  4174. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4175. [p setPostValue:salt forKey:@"salt"];
  4176. [p setPostValue:language forKey:@"language"];
  4177. [p go];
  4178. }
  4179. -(void)Useract_act_VipConfigGoldMag:(NSString *)salt andToView:(id)toView{
  4180. NSString *language;
  4181. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4182. language = @"en";
  4183. }else{
  4184. language = @"zh";
  4185. }
  4186. JXConnection* p = [self addTask:act_VipConfigGoldMag param:nil toView:toView];
  4187. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4188. [p setPostValue:salt forKey:@"salt"];
  4189. [p setPostValue:language forKey:@"language"];
  4190. [p go];
  4191. }
  4192. -(void)Useract_getGroupOneType:(NSString *)salt jid:(NSString *)jid andToView:(id)toView{
  4193. NSString *language;
  4194. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4195. language = @"en";
  4196. }else{
  4197. language = @"zh";
  4198. }
  4199. JXConnection* p = [self addTask:act_getGroupOneType param:nil toView:toView];
  4200. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4201. [p setPostValue:salt forKey:@"salt"];
  4202. [p setPostValue:language forKey:@"language"];
  4203. [p setPostValue:jid forKey:@"jid"];
  4204. [p go];
  4205. }
  4206. -(void)UserRoomAttentionListion:(NSString *)salt userId:(NSString *)userId jid:(NSString *)jid attentionUserId:(NSString *)attentionUserId andToView:(id)toView{
  4207. NSString *language;
  4208. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4209. language = @"en";
  4210. }else{
  4211. language = @"zh";
  4212. }
  4213. JXConnection* p = [self addTask:act_UserRoomListAttenion param:nil toView:toView];
  4214. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4215. [p setPostValue:salt forKey:@"salt"];
  4216. [p setPostValue:language forKey:@"language"];
  4217. [p setPostValue:userId forKey:@"userId"];
  4218. [p setPostValue:jid forKey:@"jid"];
  4219. [p setPostValue:attentionUserId forKey:@"attentionUserId"];
  4220. [p go];
  4221. }
  4222. /**获取用户关心的人*/
  4223. -(void)UserRoomAttentionattention:(NSString *)salt userId:(NSString *)userId jid:(NSString *)jid attentionUserId:(NSString *)attentionUserId andToView:(id)toView{
  4224. NSString *language;
  4225. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4226. language = @"en";
  4227. }else{
  4228. language = @"zh";
  4229. }
  4230. JXConnection* p = [self addTask:act_UserRoomOneOneAttenion param:nil toView:toView];
  4231. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4232. [p setPostValue:salt forKey:@"salt"];
  4233. [p setPostValue:language forKey:@"language"];
  4234. [p setPostValue:userId forKey:@"userId"];
  4235. [p setPostValue:jid forKey:@"jid"];
  4236. [p setPostValue:attentionUserId forKey:@"attentionUserId"];
  4237. [p go];
  4238. }
  4239. -(void)act_UserAct_fuwenBenGetAllt:(NSString *)salt andToView:(id)toView{
  4240. NSString *language;
  4241. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4242. language = @"en";
  4243. }else{
  4244. language = @"zh";
  4245. }
  4246. JXConnection* p = [self addTask:act_fuwenBenGetAllt param:nil toView:toView];
  4247. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4248. [p setPostValue:salt forKey:@"salt"];
  4249. [p setPostValue:language forKey:@"language"];
  4250. [p go];
  4251. }
  4252. -(void)act_UserfuwenBenLogin:(NSString *)salt type:(NSString *)type title:(NSString *)title andToView:(id)toView{
  4253. NSString *language;
  4254. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4255. language = @"en";
  4256. }else{
  4257. language = @"zh";
  4258. }
  4259. JXConnection* p = [self addTask:act_fuwenBenLogin param:nil toView:toView];
  4260. //[p setPostValue:g_server.access_token forKey:@"access_token"];
  4261. //[p setPostValue:salt forKey:@"salt"];
  4262. //[p setPostValue:language forKey:@"language"];
  4263. [p setPostValue:type forKey:@"type"];
  4264. //[p setPostValue:title forKey:@"title"];
  4265. [p go];
  4266. }
  4267. /**获取用户关心的人 最后一条信息 */
  4268. -(void)getUserRoomAttentionattentionLastInfo:(NSString *)salt userId:(NSString *)userId jid:(NSString *)jid andToView:(id)toView{
  4269. NSString *language;
  4270. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4271. language = @"en";
  4272. }else{
  4273. language = @"zh";
  4274. }
  4275. JXConnection* p = [self addTask:act_UserRoomgetlastMessage param:nil toView:toView];
  4276. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4277. [p setPostValue:salt forKey:@"salt"];
  4278. [p setPostValue:language forKey:@"language"];
  4279. [p setPostValue:userId forKey:@"userId"];
  4280. [p setPostValue:jid forKey:@"jid"];
  4281. [p go];
  4282. }
  4283. //删除群所有消息
  4284. -(void)get_acttigasedeleteAllMsg:(NSString *)salt roomJid:(NSString *)roomJid andToView:(id)toView{
  4285. NSString *language;
  4286. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4287. language = @"en";
  4288. }else{
  4289. language = @"zh";
  4290. }
  4291. JXConnection* p = [self addTask:act_tigasedeleteAllMsg param:nil toView:toView];
  4292. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4293. [p setPostValue:salt forKey:@"salt"];
  4294. [p setPostValue:language forKey:@"language"];
  4295. [p setPostValue:roomJid forKey:@"roomJid"];
  4296. [p go];
  4297. }
  4298. /**获取用户关心的人 最后一条信息*/
  4299. -(void)UserRoomAttentionattentionLastInfo:(NSString *)salt userId:(NSString *)userId jid:(NSString *)jid andToView:(id)toView{
  4300. NSString *language;
  4301. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4302. language = @"en";
  4303. }else{
  4304. language = @"zh";
  4305. }
  4306. JXConnection* p = [self addTask:act_UserRoomgetRoomAttention param:nil toView:toView];
  4307. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4308. [p setPostValue:salt forKey:@"salt"];
  4309. [p setPostValue:language forKey:@"language"];
  4310. [p setPostValue:userId forKey:@"userId"];
  4311. [p setPostValue:jid forKey:@"jid"];
  4312. [p go];
  4313. }
  4314. -(void)getRedPacktBy:(NSString *)salt andToView:(id)toView
  4315. {
  4316. NSString *language;
  4317. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4318. language = @"en";
  4319. }else{
  4320. language = @"zh";
  4321. }
  4322. JXConnection* p = [self addTask:act_GetRedPackageInfo param:nil toView:toView];
  4323. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4324. [p setPostValue:salt forKey:@"salt"];
  4325. [p setPostValue:language forKey:@"language"];
  4326. [p go];
  4327. }
  4328. -(void)getUserVipInformation:(NSString *)salt andToView:(id)toView
  4329. {
  4330. NSString *language;
  4331. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4332. language = @"en";
  4333. }else{
  4334. language = @"zh";
  4335. }
  4336. JXConnection* p = [self addTask:act_GetUserVipInformation param:nil toView:toView];
  4337. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4338. //[p setPostValue:salt forKey:@"salt"];
  4339. // [p setPostValue:language forKey:@"language"];
  4340. [p go];
  4341. }
  4342. -(void)vipGainCoin:(NSString *)salt andToView:(id)toView
  4343. {
  4344. NSString *language;
  4345. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4346. language = @"en";
  4347. }else{
  4348. language = @"zh";
  4349. }
  4350. JXConnection* p = [self addTask:act_GainUserCoin param:nil toView:toView];
  4351. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4352. [p setPostValue:salt forKey:@"salt"];
  4353. [p setPostValue:language forKey:@"language"];
  4354. [p go];
  4355. }
  4356. //用户vip等级列表
  4357. -(void)getUseract_userGradelistGrade:(NSString *)salt andToView:(id)toView{
  4358. NSString *language;
  4359. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4360. language = @"en";
  4361. }else{
  4362. language = @"zh";
  4363. }
  4364. JXConnection* p = [self addTask:act_userGradelistGrade param:nil toView:toView];
  4365. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4366. [p setPostValue:salt forKey:@"salt"];
  4367. [p setPostValue:language forKey:@"language"];
  4368. [p go];
  4369. }
  4370. -(void)getUserTaskDailyBySalt:(NSString *)salt andToView:(id)toView
  4371. {
  4372. NSString *language;
  4373. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4374. language = @"en";
  4375. }else{
  4376. language = @"zh";
  4377. }
  4378. JXConnection* p = [self addTask:act_GetTaskRecord param:nil toView:toView];
  4379. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4380. [p setPostValue:salt forKey:@"salt"];
  4381. [p setPostValue:language forKey:@"language"];
  4382. [p go];
  4383. }
  4384. //抽奖剩余次数
  4385. -(void)getUserturntableSurplusCountl:(NSString *)salt andToView:(id)toView
  4386. {
  4387. NSString *language;
  4388. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4389. language = @"en";
  4390. }else{
  4391. language = @"zh";
  4392. }
  4393. JXConnection* p = [self addTask:act_turntableSurplusCountl param:nil toView:toView];
  4394. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4395. [p setPostValue:salt forKey:@"salt"];
  4396. [p setPostValue:language forKey:@"language"];
  4397. [p go];
  4398. }
  4399. -(void)getUseact_firstNearTurntableHistory:(NSString *)salt andToView:(id)toView
  4400. {
  4401. NSString *language;
  4402. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4403. language = @"en";
  4404. }else{
  4405. language = @"zh";
  4406. }
  4407. JXConnection* p = [self addTask:act_firstNearTurntableHistory param:nil toView:toView];
  4408. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4409. [p setPostValue:salt forKey:@"salt"];
  4410. [p setPostValue:language forKey:@"language"];
  4411. [p go];
  4412. }
  4413. //转盘奖品获取
  4414. -(void)getUseract_act_getTurntable:(NSString *)salt andToView:(id)toView
  4415. {
  4416. NSString *language;
  4417. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4418. language = @"en";
  4419. }else{
  4420. language = @"zh";
  4421. }
  4422. JXConnection* p = [self addTask:act_getTurntable param:nil toView:toView];
  4423. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4424. [p setPostValue:salt forKey:@"salt"];
  4425. [p setPostValue:language forKey:@"language"];
  4426. [p go];
  4427. }
  4428. //转盘抽奖接口
  4429. -(void)getUseract_turntableDo:(NSString *)salt andToView:(id)toView
  4430. {
  4431. NSString *language;
  4432. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4433. language = @"en";
  4434. }else{
  4435. language = @"zh";
  4436. }
  4437. JXConnection* p = [self addTask:act_turntableDo param:nil toView:toView];
  4438. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4439. [p setPostValue:salt forKey:@"salt"];
  4440. [p setPostValue:language forKey:@"language"];
  4441. [p go];
  4442. }
  4443. -(void)getMyCoinsss:(NSString *)salt andToView:(id)toView
  4444. {
  4445. NSString *language;
  4446. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4447. language = @"en";
  4448. }else{
  4449. language = @"zh";
  4450. }
  4451. JXConnection* p = [self addTask:act_GetMyCoin param:nil toView:toView];
  4452. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4453. [p setPostValue:salt forKey:@"salt"];
  4454. [p setPostValue:language forKey:@"language"];
  4455. [p go];
  4456. }
  4457. -(void)getAllQuestions:(NSString *)salt andToView:(id)toView
  4458. {
  4459. NSString *language;
  4460. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4461. language = @"en";
  4462. }else{
  4463. language = @"zh";
  4464. }
  4465. JXConnection* p = [self addTask:act_GetQuestionAndRules param:nil toView:toView];
  4466. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4467. [p setPostValue:salt forKey:@"salt"];
  4468. [p setPostValue:language forKey:@"language"];
  4469. [p go];
  4470. }
  4471. -(void)postQuestionAnswers:(NSString *)salt andOptions:(NSString *)options andToView:(id)toView
  4472. {
  4473. NSString *language;
  4474. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4475. language = @"en";
  4476. }else{
  4477. language = @"zh";
  4478. }
  4479. JXConnection* p = [self addTask:act_PostQuestionAnswers param:nil toView:toView];
  4480. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4481. [p setPostValue:salt forKey:@"salt"];
  4482. [p setPostValue:language forKey:@"language"];
  4483. [p setPostValue:options forKey:@"questions"];
  4484. [p go];
  4485. }
  4486. -(void)userSignBySalt:(NSString *)salt andToView:(id)toView
  4487. {
  4488. NSString *language;
  4489. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4490. language = @"en";
  4491. }else{
  4492. language = @"zh";
  4493. }
  4494. JXConnection* p = [self addTask:act_UserSign param:nil toView:toView];
  4495. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4496. [p setPostValue:salt forKey:@"salt"];
  4497. [p setPostValue:language forKey:@"language"];
  4498. [p go];
  4499. }
  4500. -(void)getContinutyAwardBySalt:(NSString *)salt andToView:(id)toView
  4501. {
  4502. NSString *language;
  4503. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4504. language = @"en";
  4505. }else{
  4506. language = @"zh";
  4507. }
  4508. JXConnection* p = [self addTask:act_GetContinu param:nil toView:toView];
  4509. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4510. [p setPostValue:salt forKey:@"salt"];
  4511. [p setPostValue:language forKey:@"language"];
  4512. [p go];
  4513. }
  4514. -(void)getUserSignHistory:(NSString *)salt andToView:(id)toView
  4515. {
  4516. NSString *language;
  4517. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4518. language = @"en";
  4519. }else{
  4520. language = @"zh";
  4521. }
  4522. JXConnection* p = [self addTask:act_SignHistory param:nil toView:toView];
  4523. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4524. [p setPostValue:salt forKey:@"salt"];
  4525. [p setPostValue:language forKey:@"language"];
  4526. [p go];
  4527. }
  4528. -(void)getAwardBy:(NSString *)salt andToView:(id)toView
  4529. {
  4530. NSString *language;
  4531. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4532. language = @"en";
  4533. }else{
  4534. language = @"zh";
  4535. }
  4536. JXConnection* p = [self addTask:act_GainContinueAward param:nil toView:toView];
  4537. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4538. [p setPostValue:salt forKey:@"salt"];
  4539. [p setPostValue:language forKey:@"language"];
  4540. [p go];
  4541. }
  4542. -(void)withDrawCoinBySalt:(NSString *)salt andCoin:(NSString *)coin andToView:(id)toView
  4543. {
  4544. NSString *language;
  4545. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4546. language = @"en";
  4547. }else{
  4548. language = @"zh";
  4549. }
  4550. JXConnection* p = [self addTask:act_GainContinueAward param:nil toView:toView];
  4551. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4552. [p setPostValue:salt forKey:@"salt"];
  4553. [p setPostValue:language forKey:@"language"];
  4554. [p setPostValue:coin forKey:@"amount"];
  4555. [p go];
  4556. }
  4557. -(void)getact_UserdeviceLogsecurity:(NSString *)salt userId:(NSString *)userId andToView:(id)toView
  4558. {
  4559. NSString *language;
  4560. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4561. language = @"en";
  4562. }else{
  4563. language = @"zh";
  4564. }
  4565. JXConnection* p = [self addTask:act_UserdeviceLogsecurity param:nil toView:toView];
  4566. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4567. [p setPostValue:salt forKey:@"salt"];
  4568. [p setPostValue:language forKey:@"language"];
  4569. [p setPostValue:userId forKey:@"userId"];
  4570. [p go];
  4571. }
  4572. -(void)getColoredCoin:(NSString *)salt andToView:(id)toView
  4573. {
  4574. NSString *language;
  4575. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4576. language = @"en";
  4577. }else{
  4578. language = @"zh";
  4579. }
  4580. JXConnection* p = [self addTask:act_GetColoredCoin param:nil toView:toView];
  4581. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4582. [p setPostValue:salt forKey:@"salt"];
  4583. [p setPostValue:language forKey:@"language"];
  4584. [p go];
  4585. }
  4586. -(void)withDrawColoredCoin:(NSString *)salt andToView:(id)toView
  4587. {
  4588. NSString *language;
  4589. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4590. language = @"en";
  4591. }else{
  4592. language = @"zh";
  4593. }
  4594. JXConnection* p = [self addTask:act_withDrawColoredCoin param:nil toView:toView];
  4595. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4596. [p setPostValue:salt forKey:@"salt"];
  4597. [p setPostValue:language forKey:@"language"];
  4598. [p go];
  4599. }
  4600. -(void)gainAllAward:(NSString *)salt andToView:(id)toView
  4601. {
  4602. NSString *language;
  4603. if ([g_constant.sysLanguage isEqualToString:@"en"]) {
  4604. language = @"en";
  4605. }else{
  4606. language = @"zh";
  4607. }
  4608. JXConnection* p = [self addTask:act_GainAllAward param:nil toView:toView];
  4609. [p setPostValue:g_server.access_token forKey:@"access_token"];
  4610. [p setPostValue:salt forKey:@"salt"];
  4611. [p setPostValue:language forKey:@"language"];
  4612. [p go];
  4613. }
  4614. @end