api_service.dart 116 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275
  1. import 'dart:io';
  2. import 'package:dio/dio.dart';
  3. import 'package:fake_push/fake_push.dart';
  4. import 'package:flustars/flustars.dart';
  5. import 'package:flutter/cupertino.dart';
  6. import 'package:liftmanager/common/common.dart';
  7. import 'package:liftmanager/common/user_db.dart';
  8. import 'package:liftmanager/internal/account/account_router.dart';
  9. import 'package:liftmanager/internal/account/model/certificate_item.dart';
  10. import 'package:liftmanager/internal/account/model/user_entity.dart';
  11. import 'package:liftmanager/internal/account/model/user_info_entity.dart';
  12. import 'package:liftmanager/internal/news/model/news_comm_entity.dart';
  13. import 'package:liftmanager/internal/bbs/model/news_detail_item.dart';
  14. import 'package:liftmanager/internal/heavy/model/heavy_item.dart';
  15. import 'package:liftmanager/internal/heavy/model/heavy_count_item.dart';
  16. import 'package:liftmanager/internal/heavy/model/heavy_list_entity.dart';
  17. import 'package:liftmanager/internal/heavy/model/heavy_user_entity.dart';
  18. import 'package:liftmanager/internal/message/model/message_list_entity.dart';
  19. import 'package:liftmanager/internal/wode/model/punishments_model.dart' as punishments;
  20. import 'package:liftmanager/internal/repair/model/repair_count_item.dart';
  21. import 'package:liftmanager/internal/maintenance/model/maintenance_count_item.dart';
  22. import 'package:liftmanager/internal/lift/model/lift_brand_entity.dart';
  23. import 'package:liftmanager/internal/lift/model/lift_detail_item.dart';
  24. import 'package:liftmanager/internal/wode/model/version_item.dart';
  25. import 'package:liftmanager/internal/team/model/team_auth_item.dart';
  26. import 'package:liftmanager/internal/yearly/model/yearly_count_item.dart';
  27. import 'package:liftmanager/internal/team/model/team_info_item.dart';
  28. import 'package:liftmanager/internal/lift/model/lift_item.dart';
  29. import 'package:liftmanager/internal/lift/model/lift_list_entity.dart';
  30. import 'package:liftmanager/internal/maintenance/model/maintenance_detail_item.dart';
  31. import 'package:liftmanager/internal/maintenance/model/maintenance_last_entity.dart';
  32. import 'package:liftmanager/internal/maintenance/model/maintenance_list_entity.dart';
  33. import 'package:liftmanager/internal/maintenance/model/maintenance_options_item.dart';
  34. import 'package:liftmanager/internal/project/model/project_list_entity.dart';
  35. import 'package:liftmanager/internal/project/model/worker_entity.dart';
  36. import 'package:liftmanager/internal/repair/model/repair_fault_entity.dart';
  37. import 'package:liftmanager/internal/repair/model/repair_list_entity.dart';
  38. import 'package:liftmanager/internal/sign/model/sign_config_item.dart';
  39. import 'package:liftmanager/internal/sign/model/sign_list_entity.dart';
  40. import 'package:liftmanager/internal/team/model/team_current_entity.dart';
  41. import 'package:liftmanager/internal/team/model/team_entity.dart';
  42. import 'package:liftmanager/internal/team/model/team_user_entity.dart';
  43. import 'package:liftmanager/internal/work/model/banner_entity.dart';
  44. import 'package:liftmanager/internal/work/model/count_doing_item.dart';
  45. import 'package:liftmanager/internal/yearly/model/yearly_list_entity.dart';
  46. import 'package:liftmanager/net/dio_utils.dart';
  47. import 'package:liftmanager/routers/fluro_navigator.dart';
  48. import 'package:liftmanager/utils/toast.dart';
  49. import 'package:flustars/flustars.dart' as f;
  50. import 'dart:convert';
  51. import 'package:liftmanager/internal/bbs/model/banner_model.dart';
  52. import 'package:liftmanager/internal/bbs/model/upload_model.dart';
  53. import 'package:liftmanager/internal/bbs/model/question_model.dart';
  54. import 'package:liftmanager/internal/bbs/model/question_detail.dart';
  55. import 'package:liftmanager/internal/bbs/model/shop_detail.dart';
  56. import 'package:liftmanager/internal/bbs/model/video_detail.dart';
  57. import 'package:liftmanager/internal/bbs/model/video_model.dart';
  58. // import 'package:liftmanager/internal/bbs/model/video_like.dart';
  59. import 'package:liftmanager/internal/bbs/model/coupon_model_page.dart'
  60. as coupon;
  61. import 'package:liftmanager/internal/wode/model/wallet_model.dart';
  62. import 'package:liftmanager/internal/bbs/model/shop_model.dart';
  63. import 'package:liftmanager/internal/bbs/model/position_model.dart';
  64. import 'package:liftmanager/internal/bbs/model/brand_model.dart' as brandM;
  65. import 'package:liftmanager/internal/bbs/model/brand_model_type.dart';
  66. import 'package:liftmanager/internal/bbs/model/expert_model.dart' as expertM;
  67. import 'package:liftmanager/internal/bbs/model/expert_comment_model.dart';
  68. import 'package:liftmanager/internal/bbs/model/control_model.dart' as controlM;
  69. import 'package:liftmanager/internal/bbs/model/means_model.dart';
  70. import 'package:liftmanager/internal/bbs/model/error_model.dart';
  71. import 'package:liftmanager/internal/bbs/model/file_categorys_tree.dart';
  72. import 'package:liftmanager/internal/bbs/model/find_one.dart';
  73. import 'package:liftmanager/internal/bbs/model/liftcase_model.dart' as liftcase;
  74. import 'package:liftmanager/internal/bbs/model/mix_model.dart' as mixmix;
  75. import 'package:liftmanager/internal/bbs/model/search_model.dart';
  76. import 'package:liftmanager/internal/wode/model/order_model.dart';
  77. import 'package:liftmanager/internal/wode/model/xieyi_model.dart';
  78. import 'package:liftmanager/internal/wode/model/invoices_model.dart';
  79. import 'package:liftmanager/internal/wode/model/comment_model.dart';
  80. import 'package:liftmanager/internal/wode/model/piao_order_model.dart';
  81. import 'package:liftmanager/internal/wode/model/become_model.dart';
  82. import 'package:liftmanager/internal/wode/model/piao_model.dart' as piao;
  83. import 'package:liftmanager/internal/wode/model/piao_tou_model.dart' as piaotou;
  84. import 'package:liftmanager/internal/wode/model/representation_model.dart';
  85. import 'package:liftmanager/internal/wode/model/notice_model.dart';
  86. import 'package:liftmanager/internal/friends/model/friend_model.dart';
  87. import 'package:liftmanager/internal/friends/model/near_model.dart';
  88. import 'package:liftmanager/internal/wode/model/table_dicts_model.dart';
  89. import 'package:liftmanager/internal/wode/model/privilege_model.dart';
  90. import 'package:liftmanager/internal/wode/model/vipfee_model.dart';
  91. import 'package:liftmanager/internal/wode/model/share_model.dart';
  92. class ApiUrl {
  93. ///上传图片
  94. static const String upload = "/business/common/upload";
  95. static const String uploads = "/business/common/uploads";
  96. ///banner
  97. static const String banner_list = "/system/banner/list";
  98. ///统计
  99. static const String count_doing = "/business/common/countDoing";
  100. ///登录
  101. static const String version = "/system/version";
  102. static const String account_login = "/system/login/login";
  103. static const String account_wxlogin = "/system/login/wxLogin";
  104. static const String account_smscode = "/system/login/smsCode";
  105. static const String account_register = "/system/login/register";
  106. static const String account_resetPassword = "/system/login/resetPassword";
  107. static const String account_appBindMobile = "/system/login/appBindMobile";
  108. static const String account_wxregister = "/system/login/wxRegister";
  109. ///用户信息相关
  110. static const String user_info = "/system/user/info";
  111. static const String modify_avatar = "/system/user/modifyAvatar";
  112. static const String modify_name = "/system/user/modifyName";
  113. static const String user_update = "/system/user/update";
  114. ///操作证
  115. static const String liftCertificate_add = "/enterprise/oa/liftCertificate/add";
  116. static const String liftCertificate_findByUser =
  117. "/enterprise/oa/liftCertificate/findByUser";
  118. ///消息中心列表
  119. static const String notification_list = "/system/notification/list";
  120. ///团队
  121. static const String mtcompany_ownList = "/system/mtcompany/ownList";
  122. static const String mtcompany_list = "/system/mtcompany/list";
  123. static const String mtcompany_createTeam = "/system/mtcompany/createTeam";
  124. static const String mtcompany_changeTeam = "/system/login/changeTeam";
  125. static const String mtcompany_applyTeam = "/system/userapply/applyTeam";
  126. static const String mtcompany_applyAudit = "/system/attestation/applyAudit";
  127. static const String mtcompany_teamInfo = "/system/mtcompany/teamInfo";
  128. static const String mtcompany_auditResult = "/system/attestation/auditResult";
  129. static const String mtcompany_userList =
  130. "/system/companyuser/app/getCompanyMembers";
  131. ///项目
  132. static const String project_list = "/business/app/project/list";
  133. static const String project_detail = "/business/app/project/detail";
  134. static const String project_user = "/business/app/project/user/list";
  135. ///电梯
  136. static const String lift_list = "/business/app/lift/list";
  137. static const String lift_detail = "/business/lift/detail";
  138. static const String lift_brand = "/business/common/brand/list";
  139. static const String lift_add = "/business/app/lift/add";
  140. static const String lift_modify = "/business/app/lift/modify";
  141. ///急修
  142. static const String repair_count =
  143. "/business/emergency/emergency-repair/count";
  144. static const String repair_list =
  145. "/business/emergency/emergency-repair/pageWorker";
  146. static const String repair_add =
  147. "/business/emergency/emergency-repair/add";
  148. static const String repair_taking =
  149. "/business/emergency/emergency-repair/taking";
  150. static const String repair_arrive =
  151. "/business/emergency/emergency-repair/arrive";
  152. static const String repair_stop = "/business/emergency/emergency-repair/stop";
  153. static const String repair_fault_tree =
  154. "/business/emergency/emergency-repair/fault/tree";
  155. static const String repair_fault_list =
  156. "/business/emergency/emergency-repair/fault/list";
  157. static const String repair_repairOrder =
  158. "/business/emergency/emergency-repair/repairOrder";
  159. static const String repair_detail =
  160. "/business/emergency/emergency-repair/findOne";
  161. static const String repair_evaluate =
  162. "/business/emergency/emergency-repair/evaluate";
  163. ///日常保养
  164. static const String maintenance_count = "/business/app/maintenance/count";
  165. static const String maintenance_planTask_list = "/business/app/maintenance/planTask";
  166. static const String maintenance_recordTask_list = "/business/app/maintenance/recordTask";
  167. static const String maintenance_list = "/business/app/maintenance/task";
  168. static const String maintenance_record_info =
  169. "/business/app/maintenance/record/info";
  170. static const String maintenance_options = "/enterprise/maintenance-option/options";
  171. static const String maintenance_record_add = "/business/app/record/add";
  172. static const String maintenance_record_modify = "/business/app/record/modify";
  173. static const String maintenance_record_detail = "/business/app/record/detail";
  174. static const String maintenance_record_evaluate = "/business/maintenance/record/evaluate";
  175. ///年检
  176. static const String yearly_list =
  177. "/business/annualinspection/annual-inspection/pageWorker";
  178. static const String yearly_toConfirmList =
  179. "/business/annualinspection/annual-inspection/toConfirm";
  180. static const String yearly_confirm =
  181. "/business/annualinspection/annual-inspection/confirm";
  182. static const String yearly_selfcheck =
  183. "/business/annualinspection/annual-inspection/selfcheck";
  184. static const String yearly_check =
  185. "/business/annualinspection/annual-inspection/check";
  186. static const String yearly_finish =
  187. "/business/annualinspection/annual-inspection/finish";
  188. static const String yearly_count = "/business/annualinspection/annual-inspection/count";
  189. ///新闻
  190. static const String news_city = "/quan/news/location";
  191. static const String news_list = "/quan/news/app/list";
  192. static const String news_detail = "/quan/news";
  193. static const String news_zan = "/quan/news/like";
  194. ///大修
  195. static const String capital_count = "/business/app/capital/count";
  196. static const String capital_project_list = "/business/app/capital/project/list";
  197. static const String capital_lift_list = "/business/app/capital/lift/list";
  198. static const String capital_attendance_list = "/business/app/capital/attendance/list";
  199. static const String capital_sign_in = "/business/app/capital/sign/in";
  200. static const String capital_overdueApply = "/business/app/capital/overdueApply";
  201. static const String capital_project_detail = "/business/app/capital/project/detail";
  202. static const String capital_begin = "/business/app/capital/begin";
  203. static const String capital_completed = "/business/app/capital/completed";
  204. ///消息
  205. static const String push_msg_list = "/push/message/list";
  206. static const String push_msg = "/push/message";
  207. ///考勤签到
  208. static const String sign_list = "/enterprise/oa/attendance/pageByUser";
  209. static const String sign_config = "/enterprise/oa/attendance/time";
  210. static const String sign_add = "/enterprise/oa/attendance/clock";
  211. }
  212. class ApiService {
  213. BuildContext context;
  214. ApiService({this.context});
  215. Push _push = Push();
  216. Future uploadMore(List<File> files,
  217. {String name="",String code="",Function onSuccess, Function(int code, String msg) onError}) async {
  218. FormData formData = FormData.fromMap({
  219. "workerName":name,
  220. "registrationCode":code
  221. });
  222. for (var i = 0; i < files.length; ++i) {
  223. File file = files[i];
  224. print(file.path);
  225. var name = file.path.substring(file.path.lastIndexOf("/") + 1);
  226. formData.files.add(MapEntry(
  227. "files",
  228. MultipartFile.fromFileSync(file.path, filename: "${name}.jpg"),
  229. ));
  230. }
  231. // Map<String, dynamic> map = Map();
  232. // List<MultipartFile> list = [];
  233. // for (var i = 0; i < files.length; ++i) {
  234. // var file = files[i];
  235. // list.add(await MultipartFile.fromFile(file.path));
  236. // }
  237. await DioUtils().requestNetwork<String>(Method.post, ApiUrl.uploads,
  238. params: formData,
  239. options: _getFormOptions(),
  240. isList: true,
  241. onSuccessList: onSuccess,
  242. onError:(code,msg){
  243. loginExpire(code);
  244. onError(code,msg);
  245. });
  246. }
  247. ///上传图片
  248. Future upload(String file,
  249. {Function onSuccess, Function(int code, String msg) onError}) async {
  250. var name = file.substring(file.lastIndexOf("/") + 1);
  251. FormData formData =
  252. FormData.fromMap({"file": await MultipartFile.fromFile(file)});
  253. await DioUtils().requestNetwork<String>(Method.post, ApiUrl.upload,
  254. params: formData,
  255. options: _getFormOptions(),
  256. onSuccess: onSuccess, onError: (code, msg) {
  257. loginExpire(code);
  258. onError(code, msg);
  259. });
  260. }
  261. ///获取City
  262. Future getCity(lat, lng,
  263. {Function onSuccess, Function(int code, String msg) onError}) async {
  264. await DioUtils().requestNetwork<String>(
  265. Method.get, "${ApiUrl.news_city}?point=${lat},${lng}",
  266. onSuccessList: onSuccess, onError: (code, msg) {
  267. loginExpire(code);
  268. onError(code, msg);
  269. });
  270. }
  271. ///获取banner图
  272. Future getBanner(
  273. {Function onSuccess, Function(int code, String msg) onError}) async {
  274. var data = {"type": 1};
  275. await DioUtils()
  276. .requestNetwork<BannerEntity>(Method.post, ApiUrl.banner_list,
  277. objectFromJson: (res) => BannerEntity.fromJsonMap(res),
  278. params: data,
  279. isList: true,
  280. onSuccessList: onSuccess,
  281. onError: (code, msg) {
  282. loginExpire(code);
  283. onError(code, msg);
  284. });
  285. }
  286. ///获取统计
  287. Future countDoing(
  288. {Function onSuccess, Function(int code, String msg) onError}) async {
  289. var data = {
  290. "userId": int.parse(SpUtil.getString(Constant.userId)),
  291. "mtCompanyId": SpUtil.getString(Constant.companyId),
  292. };
  293. await DioUtils()
  294. .requestNetwork<CountDoingItem>(Method.post, ApiUrl.count_doing,
  295. objectFromJson: (res) => CountDoingItem.fromJsonMap(res),
  296. params: data,
  297. onSuccess: onSuccess,
  298. onError: (code, msg) {
  299. loginExpire(code);
  300. onError(code, msg);
  301. });
  302. }
  303. Future version( {Function onSuccess, Function(int code, String msg) onError}) async {
  304. await DioUtils().requestNetwork<VersionItem>(
  305. Method.post, ApiUrl.version,
  306. objectFromJson: (res) => VersionItem.fromJsonMap(res),
  307. params: {
  308. "deviceModel":Platform.isIOS?2:1
  309. },
  310. onSuccess: onSuccess,
  311. onError:(code,msg){
  312. loginExpire(code);
  313. onError(code,msg);
  314. });
  315. }
  316. ///手机号密码登录
  317. Future login(String account, String password,
  318. {Function onSuccess, Function(int code, String msg) onError}) async {
  319. var data = {
  320. "mobile": account,
  321. "password": password,
  322. "deviceModel": Platform.isIOS ? 2 : 1,
  323. "deviceFlag": await _push.getDeviceToken(),
  324. "mobileType": 1
  325. };
  326. await DioUtils()
  327. .requestNetwork<UserEntity>(Method.post, ApiUrl.account_login,
  328. objectFromJson: (res) => UserEntity.fromJsonMap(res),
  329. params: data,
  330. onSuccess: onSuccess,
  331. onError: (code, msg) {
  332. loginExpire(code);
  333. onError(code, msg);
  334. });
  335. }
  336. ///微信登录
  337. void wxLogin(String authCode,
  338. {Function onSuccess, Function(int code, String msg) onError}) async {
  339. var data = {
  340. "authCode": "${authCode}",
  341. "deviceModel": Platform.isIOS ? 2 : 1,
  342. "deviceFlag": await _push.getDeviceToken()
  343. };
  344. await DioUtils().requestNetwork<UserEntity>(
  345. Method.post, ApiUrl.account_wxlogin, params: data, onSuccess: onSuccess,
  346. onError: (code, msg) {
  347. loginExpire(code);
  348. onError(code, msg);
  349. });
  350. }
  351. ///获取验证码
  352. Future getVCode(String account,
  353. {Function onSuccess, Function(int code, String msg) onError}) async {
  354. var data = {
  355. "mobile": account,
  356. };
  357. await DioUtils().requestNetwork(Method.get, ApiUrl.account_smscode,
  358. queryParameters: data, onSuccess: onSuccess, onError: (code, msg) {
  359. loginExpire(code);
  360. onError(code, msg);
  361. });
  362. }
  363. ///注册
  364. Future register(String account, String password, String name, String vCode,
  365. String authCode,
  366. {Function onSuccess, Function(int code, String msg) onError}) async {
  367. var data = {
  368. "mobile": account,
  369. "password": password,
  370. "name": name,
  371. "inputSmsCode": vCode,
  372. "authCode": authCode,
  373. "deviceModel":Platform.isIOS?2:1,
  374. "deviceFlag":await _push.getDeviceToken()
  375. };
  376. await DioUtils().requestNetwork(Method.post,authCode.length>0?ApiUrl.account_wxregister: ApiUrl.account_register,
  377. params: data, onSuccess: onSuccess, onError:(code,msg){
  378. loginExpire(code);
  379. onError(code,msg);
  380. });
  381. }
  382. ///注册
  383. Future resetPassword(String account, String password, String vCode,
  384. {Function onSuccess, Function(int code, String msg) onError}) async {
  385. var data = {
  386. "mobile": account,
  387. "password": password,
  388. "inputSmsCode": vCode,
  389. };
  390. await DioUtils().requestNetwork(Method.post, ApiUrl.account_resetPassword,
  391. params: data, onSuccess: onSuccess, onError: (code, msg) {
  392. loginExpire(code);
  393. onError(code, msg);
  394. });
  395. }
  396. Future accountAppBindMobile(String authCode, {Function onSuccess, Function(int code, String msg) onError}) async {
  397. var data = {
  398. "authCode": authCode,
  399. "deviceModel":Platform.isIOS?2:1,
  400. "deviceFlag":await _push.getDeviceToken()
  401. };
  402. print(data);
  403. await DioUtils().requestNetwork(Method.post,ApiUrl.account_appBindMobile,
  404. params: data, onSuccess: onSuccess, onError:(code,msg){
  405. loginExpire(code);
  406. onError(code,msg);
  407. });
  408. }
  409. ///用户信息
  410. Future userInfo(
  411. {Function onSuccess, Function(int code, String msg) onError}) async {
  412. var data = {
  413. "userId": int.parse(SpUtil.getString(Constant.userId)),
  414. "companyId": SpUtil.getString(Constant.companyId)
  415. };
  416. print("用户信息接口参数");
  417. print(data);
  418. await DioUtils()
  419. .requestNetwork<UserInfoEntity>(Method.post, ApiUrl.user_info,
  420. objectFromJson: (res) => UserInfoEntity.fromJsonMap(res),
  421. params: data,
  422. onSuccess: onSuccess,
  423. onError: (code, msg) {
  424. loginExpire(code);
  425. onError(code, msg);
  426. });
  427. }
  428. Future modifyAvatar(url,
  429. {Function onSuccess, Function(int code, String msg) onError}) async {
  430. var data = {
  431. "userId": int.parse(SpUtil.getString(Constant.userId)),
  432. "avatarUrl": url
  433. };
  434. await DioUtils().requestNetwork<String>(Method.post, ApiUrl.modify_avatar,
  435. params: data, onSuccess: onSuccess, onError: (code, msg) {
  436. loginExpire(code);
  437. onError(code, msg);
  438. });
  439. }
  440. Future modifyName(name,
  441. {Function onSuccess, Function(int code, String msg) onError}) async {
  442. var data = {
  443. "userId": int.parse(SpUtil.getString(Constant.userId)),
  444. "name": name
  445. };
  446. await DioUtils().requestNetwork<String>(Method.post, ApiUrl.modify_name,
  447. params: data, onSuccess: onSuccess, onError: (code, msg) {
  448. loginExpire(code);
  449. onError(code, msg);
  450. });
  451. }
  452. Future userUpdate(name,
  453. {Function onSuccess, Function(int code, String msg) onError}) async {
  454. var data = {
  455. "userId": int.parse(SpUtil.getString(Constant.userId)),
  456. "name": name
  457. };
  458. await DioUtils().requestNetwork<String>(Method.post, ApiUrl.user_update,
  459. params: data, onSuccess: onSuccess, onError: (code, msg) {
  460. loginExpire(code);
  461. onError(code, msg);
  462. });
  463. }
  464. Future userUpdates(name,
  465. {Function onSuccess, Function(int code, String msg) onError}) async {
  466. var data = {
  467. "userId": int.parse(SpUtil.getString(Constant.userId)),
  468. "realName": name
  469. };
  470. await DioUtils().requestNetwork<String>(Method.post, ApiUrl.user_update,
  471. params: data, onSuccess: onSuccess, onError: (code, msg) {
  472. loginExpire(code);
  473. onError(code, msg);
  474. });
  475. }
  476. Future userUpdateJj(name,
  477. {Function onSuccess, Function(int code, String msg) onError}) async {
  478. var data = {
  479. "userId": int.parse(SpUtil.getString(Constant.userId)),
  480. "signature": name
  481. };
  482. await DioUtils().requestNetwork<String>(Method.post, ApiUrl.user_update,
  483. params: data, onSuccess: onSuccess, onError: (code, msg) {
  484. loginExpire(code);
  485. onError(code, msg);
  486. });
  487. }
  488. Future liftCertificateAdd(code, issuanceAgency, expirationDate,
  489. certificateType, firstImgUrl, secondImgUrl,
  490. {Function onSuccess, Function(int code, String msg) onError}) async {
  491. var data = {
  492. "ownerId": int.parse(SpUtil.getString(Constant.userId)),
  493. "mtCompanyId": SpUtil.getString(Constant.companyId),
  494. "code": code,
  495. "issuanceAgency": issuanceAgency,
  496. "expirationDate": expirationDate,
  497. "certificateType": certificateType,
  498. "firstImgUrl": firstImgUrl,
  499. "secondImgUrl": secondImgUrl,
  500. };
  501. await DioUtils().requestNetwork<bool>(
  502. Method.post, ApiUrl.liftCertificate_add,
  503. params: data, onSuccess: onSuccess, onError: (code, msg) {
  504. loginExpire(code);
  505. onError(code, msg);
  506. });
  507. }
  508. Future liftCertificateFindByUser(
  509. {Function onSuccess, Function(int code, String msg) onError}) async {
  510. var data = {
  511. "ownerId": int.parse(SpUtil.getString(Constant.userId)),
  512. "mtCompanyId": SpUtil.getString(Constant.companyId)
  513. };
  514. await DioUtils().requestNetwork<CertificateItem>(
  515. Method.post, ApiUrl.liftCertificate_findByUser,
  516. objectFromJson: (res) => CertificateItem.fromJsonMap(res),
  517. params: data,
  518. onSuccess: onSuccess,
  519. onError: (code, msg) {
  520. loginExpire(code);
  521. onError(code, msg);
  522. });
  523. }
  524. ///项目列表
  525. Future searchProject(pageNum, pageSize, searchStr,
  526. {Function onSuccess, Function(int code, String msg) onError}) async {
  527. var data = {
  528. "mtCompanyId": SpUtil.getString(Constant.companyId),
  529. "pageNum": pageNum,
  530. "projectName": searchStr,
  531. "pageSize": pageSize
  532. };
  533. await DioUtils()
  534. .requestNetwork<ProjectListEntity>(Method.post, ApiUrl.project_list,
  535. objectFromJson: (res) => ProjectListEntity.fromJsonMap(res),
  536. params: data,
  537. onSuccess: onSuccess,
  538. onError: (code, msg) {
  539. loginExpire(code);
  540. onError(code, msg);
  541. });
  542. }
  543. ///项目详情
  544. Future projectDetail(id,
  545. {Function onSuccess, Function(int code, String msg) onError}) async {
  546. var data = {
  547. "id": id,
  548. };
  549. await DioUtils()
  550. .requestNetwork<ProjectListItem>(Method.post, ApiUrl.project_detail,
  551. objectFromJson: (res) => ProjectListItem.fromJsonMap(res),
  552. params: data,
  553. onSuccess: onSuccess,
  554. onError: (code, msg) {
  555. loginExpire(code);
  556. onError(code, msg);
  557. });
  558. }
  559. ///项目用户
  560. Future projectUser(id,
  561. {Function onSuccess, Function(int code, String msg) onError}) async {
  562. var data = {
  563. "id": id,
  564. };
  565. await DioUtils()
  566. .requestNetwork<WorkerItem>(Method.post, ApiUrl.project_user,
  567. objectFromJson: (res) => WorkerItem.fromJsonMap(res),
  568. isList: true,
  569. params: data,
  570. onSuccessList: onSuccess,
  571. onError: (code, msg) {
  572. loginExpire(code);
  573. onError(code, msg);
  574. });
  575. }
  576. ///电梯列表
  577. Future searchLift(projectId, pageNum, pageSize, searchStr,
  578. {Function onSuccess, Function(int code, String msg) onError}) async {
  579. var data = {
  580. "id": projectId,
  581. "pageNum": pageNum,
  582. "pageSize": pageSize,
  583. "registrationCode": searchStr
  584. };
  585. await DioUtils()
  586. .requestNetwork<LiftListEntity>(Method.post, ApiUrl.lift_list,
  587. objectFromJson: (res) => LiftListEntity.fromJsonMap(res),
  588. params: data,
  589. onSuccess: onSuccess,
  590. onError: (code, msg) {
  591. loginExpire(code);
  592. onError(code, msg);
  593. });
  594. }
  595. ///电梯详情
  596. Future liftDetail(projectId,id,
  597. {Function onSuccess, Function(int code, String msg) onError}) async {
  598. var data = {
  599. "projectId":projectId,
  600. "id": id,
  601. };
  602. await DioUtils().requestNetwork<LiftItem>(
  603. Method.post, ApiUrl.lift_detail,
  604. objectFromJson: (res) => LiftItem.fromJsonMap(res),
  605. params: data,
  606. onSuccess: onSuccess,
  607. onError:(code,msg){
  608. loginExpire(code);
  609. onError(code,msg);
  610. });
  611. }
  612. ///品牌
  613. Future liftBrand(
  614. {Function onSuccess, Function(int code, String msg) onError}) async {
  615. await DioUtils().requestNetwork<LiftBrandEntity>(
  616. Method.post, ApiUrl.lift_brand,
  617. objectFromJson: (res) => LiftBrandEntity.fromJsonMap(res),
  618. params: {},
  619. isList: true,
  620. onSuccessList: onSuccess,
  621. onError: onError);
  622. }
  623. ///添加电梯
  624. Future liftAdd(projectId, workerId, lift,
  625. {Function onSuccess, Function(int code, String msg) onError}) async {
  626. var data = {
  627. "workerId": workerId,
  628. "mtCompanyId": SpUtil.getString(Constant.companyId),
  629. "projectId": projectId,
  630. "lift": lift
  631. };
  632. await DioUtils().requestNetwork<bool>(Method.post, ApiUrl.lift_add,
  633. params: data, onSuccess: onSuccess, onError: onError);
  634. }
  635. ///编辑电梯
  636. Future liftEdit(projectId, workerId, lift,
  637. {Function onSuccess, Function(int code, String msg) onError}) async {
  638. var data = {
  639. "workerId": workerId,
  640. "mtCompanyId": SpUtil.getString(Constant.companyId),
  641. "projectId": projectId,
  642. "lift": lift
  643. };
  644. await DioUtils().requestNetwork<bool>(Method.post, ApiUrl.lift_modify,
  645. params: data, onSuccess: onSuccess, onError: onError);
  646. }
  647. ///获取消息中心列表
  648. Future notificationList(
  649. {Function onSuccess, Function(int code, String msg) onError}) async {
  650. var data = {
  651. "userId": SpUtil.getString(Constant.userId),
  652. "companyId": SpUtil.getString(Constant.companyId)
  653. };
  654. await DioUtils().requestNetwork<TeamItem>(
  655. Method.post, ApiUrl.notification_list,
  656. params: data, onSuccessList: onSuccess, onError: onError);
  657. }
  658. ///已加入的团队列表
  659. Future teamList(
  660. {Function onSuccess, Function(int code, String msg) onError}) async {
  661. var data = {
  662. "userId": SpUtil.getString(Constant.userId),
  663. "companyId": SpUtil.getString(Constant.companyId)
  664. };
  665. await DioUtils().requestNetwork<TeamItem>(
  666. Method.post, ApiUrl.mtcompany_ownList,
  667. params: data,
  668. isList: true,
  669. objectFromJson: (res) => TeamItem.fromJsonMap(res),
  670. onSuccessList: onSuccess,
  671. onError: onError);
  672. }
  673. ///搜索团队列表
  674. Future teamSearch(pageNum, pageSize, companyName,
  675. {Function onSuccess, Function(int code, String msg) onError}) async {
  676. var data = {
  677. "pageNum": "${pageNum}",
  678. "pageSize": "${pageSize}",
  679. "companyName": "${companyName}",
  680. };
  681. await DioUtils().requestNetwork<TeamEntity>(
  682. Method.post, ApiUrl.mtcompany_list,
  683. params: data, onSuccess: onSuccess, onError: onError);
  684. }
  685. ///团队创建
  686. Future teamCreate(logoImg, companyName, remarks, corporator, telephone,
  687. {Function onSuccess, Function(int code, String msg) onError}) async {
  688. var data = {
  689. "logoImg": "${logoImg}",
  690. "companyName": "${companyName}",
  691. "remarks": "${remarks}",
  692. "corporator": "${corporator}",
  693. "telephone": "${telephone}",
  694. "userId": SpUtil.getString(Constant.userId)
  695. };
  696. await DioUtils().requestNetwork<TeamEntity>(
  697. Method.post, ApiUrl.mtcompany_createTeam,
  698. params: data, onSuccess: onSuccess, onError: onError);
  699. }
  700. ///切换团队
  701. Future changTeam(companyId,
  702. {Function onSuccess, Function(int code, String msg) onError}) async {
  703. var data = {
  704. "companyId": companyId,
  705. "userId": SpUtil.getString(Constant.userId)
  706. };
  707. await DioUtils().requestNetwork<TeamCurrentEntity>(
  708. Method.post, ApiUrl.mtcompany_changeTeam,
  709. params: data, onSuccess: onSuccess, onError: onError);
  710. }
  711. ///申请加入团队
  712. Future applyTeam(companyId, desc,
  713. {Function onSuccess, Function(int code, String msg) onError}) async {
  714. var data = {
  715. "companyId": companyId,
  716. "userId": SpUtil.getString(Constant.userId),
  717. "description": desc
  718. };
  719. await DioUtils().requestNetwork<TeamEntity>(
  720. Method.post, ApiUrl.mtcompany_applyTeam,
  721. params: data, onSuccess: onSuccess, onError: onError);
  722. }
  723. Future teamUserList(pageNum, pageSize,
  724. {Function onSuccess, Function(int code, String msg) onError}) async {
  725. var data = {
  726. "companyId": SpUtil.getString(Constant.companyId),
  727. "pageNum": pageNum,
  728. "pageSize": pageSize
  729. };
  730. await DioUtils().requestNetwork<TeamUserEntity>(
  731. Method.post, ApiUrl.mtcompany_userList,
  732. objectFromJson: (res) => TeamUserEntity.fromJsonMap(res),
  733. params: data,
  734. onSuccess: onSuccess,
  735. onError: onError);
  736. }
  737. /**
  738. * 发起认证
  739. */
  740. Future teamUploadAuth(id,attestationName,contactsName,contactsTel,businessLicenseAnnex,taxRegistration,logo,
  741. {Function onSuccess, Function(int code, String msg) onError}) async {
  742. var data = {
  743. "id":id,
  744. "attestationName":attestationName,
  745. "contactsName":contactsName,
  746. "contactsTel":contactsTel,
  747. "businessLicenseAnnex":businessLicenseAnnex,
  748. "taxRegistration":taxRegistration,
  749. "logoImg":logo,
  750. "userId": SpUtil.getString(Constant.userId),
  751. "mtCompanyId": SpUtil.getString(Constant.companyId),
  752. };
  753. await DioUtils().requestNetwork<TeamAuthItem>(
  754. Method.post, ApiUrl.mtcompany_applyAudit,
  755. objectFromJson: (res) => TeamAuthItem.fromJsonMap(res),
  756. params: data, onSuccess: onSuccess, onError: (code,msg){
  757. loginExpire(code);
  758. onError(code,msg);
  759. });
  760. }
  761. Future teamDetail(
  762. {Function onSuccess, Function(int code, String msg) onError}) async {
  763. var data = {
  764. "companyId": SpUtil.getString(Constant.companyId),
  765. };
  766. await DioUtils().requestNetwork<TeamInfoItem>(
  767. Method.post, ApiUrl.mtcompany_teamInfo,
  768. objectFromJson: (res) => TeamInfoItem.fromJsonMap(res),
  769. params: data, onSuccess: onSuccess, onError: (code,msg){
  770. loginExpire(code);
  771. onError(code,msg);
  772. });
  773. }
  774. Future teamAuth(
  775. {Function onSuccess, Function(int code, String msg) onError}) async {
  776. var data = {
  777. "mtCompanyId": SpUtil.getString(Constant.companyId),
  778. };
  779. await DioUtils().requestNetwork<TeamAuthItem>(
  780. Method.post, ApiUrl.mtcompany_auditResult,
  781. objectFromJson: (res) => TeamAuthItem.fromJsonMap(res),
  782. params: data, onSuccess: onSuccess, onError: (code,msg){
  783. loginExpire(code);
  784. onError(code,msg);
  785. });
  786. }
  787. Future maintenanceCount(String time,
  788. {Function onSuccess, Function(int code, String msg) onError}) async {
  789. var data = {
  790. "userId": SpUtil.getString(Constant.userId),
  791. "beginTime":time.substring(0,8)+"01",
  792. };
  793. await DioUtils().requestNetwork<MantenanceCountItem>(
  794. Method.post, ApiUrl.maintenance_count,
  795. objectFromJson: (res) => MantenanceCountItem.fromJsonMap(res),
  796. isList: true,
  797. params: data, onSuccessList: onSuccess, onError: (code,msg){
  798. loginExpire(code);
  799. onError(code,msg);
  800. });
  801. }
  802. ///保养列表
  803. Future maintenanceList(pageNum, pageSize, status,time,
  804. {Function onSuccess, Function(int code, String msg) onError}) async {
  805. if(status == 0 || status == 3){
  806. var data = {
  807. "pageNum": pageNum,
  808. "pageSize": pageSize,
  809. "workerId": SpUtil.getString(Constant.userId),
  810. "status": status==3?-1:status,
  811. "currentTime": time
  812. };
  813. await DioUtils().requestNetwork<MaintenanceListEntity>(
  814. Method.post, ApiUrl.maintenance_planTask_list,
  815. objectFromJson: (res) => MaintenanceListEntity.fromJsonMap(res),
  816. params: data,
  817. onSuccess: onSuccess,
  818. onError: (code,msg){
  819. loginExpire(code);
  820. onError(code,msg);
  821. });
  822. }else{
  823. var data = {
  824. "pageNum": pageNum,
  825. "pageSize": pageSize,
  826. "workerId": SpUtil.getString(Constant.userId),
  827. "status": status,
  828. "currentTime": time
  829. };
  830. await DioUtils().requestNetwork<MaintenanceListEntity>(
  831. Method.post, ApiUrl.maintenance_recordTask_list,
  832. objectFromJson: (res) => MaintenanceListEntity.fromJsonMap(res),
  833. params: data,
  834. onSuccess: onSuccess,
  835. onError: (code,msg){
  836. loginExpire(code);
  837. onError(code,msg);
  838. });
  839. }
  840. }
  841. ///保养详情
  842. Future maintenanceRecordDetail(id,
  843. {Function onSuccess, Function(int code, String msg) onError}) async {
  844. var data = {
  845. "id": id
  846. };
  847. await DioUtils().requestNetwork<MaintenanceDetailEntity>(
  848. Method.post, ApiUrl.maintenance_record_detail,
  849. objectFromJson: (res)=>MaintenanceDetailEntity.fromJsonMap(res),
  850. params: data,
  851. onSuccess: onSuccess,
  852. onError: (code,msg){
  853. loginExpire(code);
  854. onError(code,msg);
  855. });
  856. }
  857. ///保养评价
  858. Future maintenanceEvaluate(id, advice, serviceLevel, starLevel, imgUrl,
  859. {Function onSuccess,
  860. Function(int code, String msg) onError}) async {
  861. var data = {
  862. "userId": SpUtil.getString(Constant.userId),
  863. "recordId": id,
  864. "type": 2,
  865. "advice": advice,
  866. "serviceLevel": serviceLevel,
  867. "starLevel": starLevel,
  868. "imgUrl": imgUrl,
  869. };
  870. await DioUtils().requestNetwork<bool>(
  871. Method.post, ApiUrl.maintenance_record_evaluate,
  872. params: data, onSuccess: onSuccess, onError: (code,msg){
  873. loginExpire(code);
  874. onError(code,msg);
  875. });
  876. }
  877. ///上次维保信息
  878. Future maintenanceRecordInfo(liftId,
  879. {Function onSuccess, Function(int code, String msg) onError}) async {
  880. var data = {
  881. "mtCompanyId": SpUtil.getString(Constant.companyId),
  882. "liftId": liftId
  883. };
  884. await DioUtils().requestNetwork<MaintenanceLastEntity>(
  885. Method.post, ApiUrl.maintenance_record_info,
  886. objectFromJson: (res) => MaintenanceLastEntity.fromJsonMap(res),
  887. params: data,
  888. onSuccess: onSuccess,
  889. onError: onError);
  890. }
  891. ///保养项目
  892. Future maintenanceOptions(type, liftType,
  893. {Function onSuccess, Function(int code, String msg) onError}) async {
  894. var data = {
  895. "mtCompanyId": SpUtil.getString(Constant.companyId),
  896. "type": type,
  897. "liftType": liftType
  898. };
  899. await DioUtils().requestNetwork<MaintenanceOptionsItem>(
  900. Method.post, ApiUrl.maintenance_options,
  901. objectFromJson: (res) => MaintenanceOptionsItem.fromJsonMap(res),
  902. params: data,
  903. isList: true,
  904. onSuccessList: onSuccess,
  905. onError: onError);
  906. }
  907. ///保养项目
  908. Future maintenanceRecordAdd(id,workerId, liftId, liftType, projectId, type,
  909. safetyConfirm, coordinate, address,isRegular,isRepair,
  910. {Function onSuccess, Function(int code, String msg) onError}) async {
  911. String mType = "1";
  912. if(type == "6" || type == "18"){
  913. mType = "2";
  914. }else if(type == "12"){
  915. mType = "3";
  916. }else if(type == "24" ){
  917. mType ="4";
  918. }
  919. var data = {
  920. "coordinate":coordinate,
  921. "periods":type,
  922. "record": {
  923. "mtCompanyId": SpUtil.getString(Constant.companyId),
  924. "workerId1": SpUtil.getString(Constant.userId),
  925. "workerId": workerId,
  926. "mtPlanId": id,
  927. "liftId": liftId,
  928. "liftType": liftType,
  929. "projectId": projectId,
  930. "type": mType,
  931. "safetyConfirm": safetyConfirm,
  932. "position": address,
  933. "isRegular":isRegular,
  934. "isRepair":isRepair
  935. }
  936. };
  937. await
  938. DioUtils().requestNetwork<String>(
  939. Method.post, ApiUrl.maintenance_record_add,
  940. params: data,
  941. onSuccess: onSuccess,
  942. onError: (code,msg){
  943. loginExpire(code);
  944. onError(code,msg);
  945. });
  946. }
  947. ///提交保养单
  948. Future maintenanceRecordModify(id, maintenanceAdvice, options,
  949. signatureImg1, signatureImg2, images,
  950. {Function onSuccess, Function(int code, String msg) onError}) async {
  951. var data =
  952. {
  953. "record": {
  954. "id": id,
  955. "maintenanceAdvice": maintenanceAdvice,
  956. "maintenanceOption": options,
  957. "signatureImg1": signatureImg1,
  958. "signatureImg2": signatureImg2,
  959. },
  960. "recordImageList": images
  961. };
  962. await DioUtils().requestNetwork<bool>(
  963. Method.post, ApiUrl.maintenance_record_modify,
  964. params: data,
  965. onSuccess: onSuccess,
  966. onError: (code,msg){
  967. loginExpire(code);
  968. onError(code,msg);
  969. });
  970. }
  971. ///急修列表
  972. Future repairCount(
  973. {Function onSuccess, Function(int code, String msg) onError}) async {
  974. await DioUtils().requestNetwork<RepairCountItem>(
  975. Method.post, ApiUrl.repair_count,
  976. objectFromJson: (res) => RepairCountItem.fromJsonMap(res),
  977. params: {},
  978. onSuccess: onSuccess,
  979. onError: (code,msg){
  980. loginExpire(code);
  981. onError(code,msg);
  982. });
  983. }
  984. ///急修列表
  985. Future repairList(pageNum, pageSize, status,
  986. {Function onSuccess, Function(int code, String msg) onError}) async {
  987. var data = {
  988. "pageNum": pageNum,
  989. "pageSize": pageSize,
  990. "workerId": SpUtil.getString(Constant.userId),
  991. "status": status
  992. };
  993. await DioUtils().requestNetwork<RepairListEntity>(
  994. Method.post, ApiUrl.repair_list,
  995. objectFromJson: (res) => RepairListEntity.fromJsonMap(res),
  996. params: data,
  997. onSuccess: onSuccess,
  998. onError: onError);
  999. }
  1000. ///新增急修
  1001. Future repairAdd(projectId,liftId, isTrapped,isCritical,repairReason,callerFaultDescription,callerName,callerTel,callerDate,
  1002. {Function onSuccess, Function(int code, String msg) onError}) async {
  1003. var data = {
  1004. "mtCompanyId": SpUtil.getString(Constant.companyId),
  1005. "workerId1":SpUtil.getString(Constant.userId),
  1006. "projectId": projectId,
  1007. "liftId": liftId,
  1008. "isTrapped": isTrapped,
  1009. "isCritical": isCritical,
  1010. "repairReason": repairReason,
  1011. "callerFaultDescription": callerFaultDescription,
  1012. "source": 2,
  1013. "callerName": callerName,
  1014. "callerTel": callerTel,
  1015. "callerDate": callerDate,
  1016. };
  1017. await DioUtils().requestNetwork<bool>(Method.post, ApiUrl.repair_add,
  1018. params: data, onSuccess: onSuccess, onError: (code,msg){
  1019. loginExpire(code);
  1020. onError(code,msg);
  1021. });
  1022. }
  1023. ///接单
  1024. Future repairTaking(id, takingTime,
  1025. {Function onSuccess, Function(int code, String msg) onError}) async {
  1026. var data = {
  1027. "id": id,
  1028. "takingTime": takingTime,
  1029. };
  1030. await DioUtils().requestNetwork<bool>(Method.post, ApiUrl.repair_taking,
  1031. params: data, onSuccess: onSuccess, onError: onError);
  1032. }
  1033. ///到达
  1034. Future repairArrive(id, arriveTime, position,
  1035. {Function onSuccess, Function(int code, String msg) onError}) async {
  1036. var data = {"id": id, "arriveTime": arriveTime, "position": position};
  1037. await DioUtils().requestNetwork<bool>(Method.post, ApiUrl.repair_arrive,
  1038. params: data, onSuccess: onSuccess, onError: onError);
  1039. }
  1040. ///停梯
  1041. Future repairStop(id, stopDate, safetyConfirm,
  1042. {Function onSuccess, Function(int code, String msg) onError}) async {
  1043. var data = {"id": id, "stopDate": stopDate, "safetyConfirm": safetyConfirm};
  1044. await DioUtils().requestNetwork<bool>(Method.post, ApiUrl.repair_stop,
  1045. params: data, onSuccess: onSuccess, onError: onError);
  1046. }
  1047. ///获取急修故障
  1048. Future repairFaultTree(liftCategory,
  1049. {Function onSuccess, Function(int code, String msg) onError}) async {
  1050. var data = {"liftCategory": liftCategory};
  1051. await DioUtils().requestNetwork<RepairFaultEntity>(
  1052. Method.post, ApiUrl.repair_fault_tree,
  1053. objectFromJson: (res) => RepairFaultEntity.fromJsonMap(res),
  1054. params: data,
  1055. isList: true,
  1056. onSuccessList: onSuccess,
  1057. onError: onError);
  1058. }
  1059. ///保存急修单
  1060. Future repairSaveOrder(
  1061. id,
  1062. recoveryDate,
  1063. erRecordImg,
  1064. fieldDescription,
  1065. mainSign,
  1066. secondSign,
  1067. faultPart,
  1068. faultReason,
  1069. faultHandle,
  1070. faultNature,
  1071. faultDuty,
  1072. {Function onSuccess,
  1073. Function(int code, String msg) onError}) async {
  1074. var data = {
  1075. "id": id,
  1076. "recoveryDate": recoveryDate,
  1077. "erRecordImg": erRecordImg,
  1078. "fieldDescription": fieldDescription,
  1079. "mainSign": mainSign,
  1080. "secondSign": secondSign,
  1081. "faultPart": faultPart,
  1082. "faultReason": faultReason,
  1083. "faultHandle": faultHandle,
  1084. "faultNature": faultNature,
  1085. "faultDuty": faultDuty,
  1086. };
  1087. print(data);
  1088. await DioUtils().requestNetwork<bool>(
  1089. Method.post, ApiUrl.repair_repairOrder,
  1090. params: data, onSuccess: onSuccess, onError: onError);
  1091. }
  1092. ///获取急修单
  1093. Future repairDetail(id,
  1094. {Function onSuccess, Function(int code, String msg) onError}) async {
  1095. var data = {"id": id};
  1096. await DioUtils().requestNetwork<RepairItem>(
  1097. Method.post, ApiUrl.repair_detail,
  1098. objectFromJson: (res) => RepairItem.fromJsonMap(res),
  1099. params: data,
  1100. onSuccess: onSuccess,
  1101. onError: onError);
  1102. }
  1103. ///急修评价
  1104. Future repairEvaluate(id, advice, serviceLevel, starLevel, imgUrl,
  1105. {Function onSuccess, Function(int code, String msg) onError}) async {
  1106. var data = {
  1107. "userId": SpUtil.getString(Constant.userId),
  1108. "recordId": id,
  1109. "type": 2,
  1110. "advice": advice,
  1111. "serviceLevel": serviceLevel,
  1112. "starLevel": starLevel,
  1113. "imgUrl": imgUrl,
  1114. };
  1115. await DioUtils().requestNetwork<bool>(Method.post, ApiUrl.repair_evaluate,
  1116. params: data, onSuccess: onSuccess, onError: onError);
  1117. }
  1118. ///年检列表
  1119. Future yearlyList(pageNum, pageSize, status,
  1120. {Function onSuccess, Function(int code, String msg) onError}) async {
  1121. var data = {
  1122. "pageNum": pageNum,
  1123. "pageSize": pageSize,
  1124. "workerId": SpUtil.getString(Constant.userId),
  1125. "status": status //年检完成状态(0 待完成;1 已完成;2 超期)
  1126. };
  1127. await DioUtils().requestNetwork<YearlyListEntity>(
  1128. Method.post, ApiUrl.yearly_list,
  1129. objectFromJson: (res) => YearlyListEntity.fromJsonMap(res),
  1130. params: data,
  1131. onSuccess: onSuccess,
  1132. onError: onError);
  1133. }
  1134. ///年检列表
  1135. Future yearlyConfirm(liftId,isCheckGoverner,loadInspectionSetting,planDate,
  1136. {Function onSuccess, Function(int code, String msg) onError}) async {
  1137. var data = {
  1138. "liftId": liftId,
  1139. "mtCompanyId": SpUtil.getString(Constant.companyId),
  1140. "isCheckGoverner": isCheckGoverner,
  1141. "loadInspectionSetting": loadInspectionSetting,
  1142. "planDate": planDate
  1143. };
  1144. await DioUtils().requestNetwork<String>(Method.post, ApiUrl.yearly_confirm,
  1145. params: data, onSuccess: onSuccess, onError: (code,msg){
  1146. loginExpire(code);
  1147. onError(code,msg);
  1148. });
  1149. }
  1150. ///年检管理-待确认年检列表
  1151. Future yearlyNoConfirmList(pageNum, pageSize, status,
  1152. {Function onSuccess, Function(int code, String msg) onError}) async {
  1153. var data = {
  1154. "pageNum": pageNum,
  1155. "pageSize": pageSize,
  1156. "mtCompanyId": SpUtil.getString(Constant.companyId),
  1157. };
  1158. await DioUtils().requestNetwork<YearlyListEntity>(
  1159. Method.post, ApiUrl.yearly_toConfirmList,
  1160. objectFromJson: (res) => YearlyListEntity.fromJsonMap(res),
  1161. params: data,
  1162. onSuccess: onSuccess,
  1163. onError: (code,msg){
  1164. loginExpire(code);
  1165. onError(code,msg);
  1166. });
  1167. }
  1168. ///上传质检报告
  1169. Future yearlySelfCheck(id, time, imgUrl,
  1170. {Function onSuccess, Function(int code, String msg) onError}) async {
  1171. var data = {
  1172. "id": id,
  1173. "selfcheckDate": "${time}",
  1174. "selfcheckReportImg": "${imgUrl}"
  1175. };
  1176. await DioUtils().requestNetwork<bool>(Method.post, ApiUrl.yearly_selfcheck,
  1177. params: data, onSuccess: onSuccess, onError: onError);
  1178. }
  1179. ///上传检验结果
  1180. Future yearlyCheck(id, time, imgUrl,
  1181. {Function onSuccess, Function(int code, String msg) onError}) async {
  1182. var data = {
  1183. "id": id,
  1184. "checkDate": "${time}",
  1185. "checkResultImg": "${imgUrl}"
  1186. };
  1187. await DioUtils().requestNetwork<bool>(Method.post, ApiUrl.yearly_check,
  1188. params: data, onSuccess: onSuccess, onError: onError);
  1189. }
  1190. ///上传检验结果
  1191. Future yearlyFinish(id, imgUrl, imgUrl2,
  1192. {Function onSuccess, Function(int code, String msg) onError}) async {
  1193. var data = {
  1194. "id": id,
  1195. "certificateImgUrl": "${imgUrl}",
  1196. "annualInspectionImg": "${imgUrl2}"
  1197. };
  1198. await DioUtils().requestNetwork<bool>(Method.post, ApiUrl.yearly_finish,
  1199. params: data, onSuccess: onSuccess, onError: onError);
  1200. }
  1201. ///年检统计
  1202. Future yearlyCount(
  1203. {Function onSuccess, Function(int code, String msg) onError}) async {
  1204. await DioUtils().requestNetwork<YearlyCountItem>(Method.post, ApiUrl.yearly_count,
  1205. objectFromJson:(res) => YearlyCountItem.fromJsonMap(res),
  1206. params: {}, onSuccess: onSuccess, onError: (code,msg){
  1207. loginExpire(code);
  1208. onError(code,msg);
  1209. });
  1210. }
  1211. Future newsList(pageNum, pageSize, haveTops, title, city,
  1212. {Function onSuccess, Function(int code, String msg) onError}) async {
  1213. var data = {
  1214. "pageNum": pageNum,
  1215. "pageSize": pageSize,
  1216. "haveTops": haveTops,
  1217. "title": title,
  1218. "district": city
  1219. };
  1220. await DioUtils().requestNetwork<NewsCommEntity>(
  1221. Method.post, ApiUrl.news_list,
  1222. objectFromJson: (res) => NewsCommEntity.fromJsonMap(res),
  1223. params: data,
  1224. onSuccess: onSuccess,
  1225. onError: onError);
  1226. }
  1227. Future newsDetail(id,
  1228. {Function onSuccess, Function(int code, String msg) onError}) async {
  1229. var data = {
  1230. "id": id,
  1231. };
  1232. await DioUtils().requestNetwork<NewsDetailItem>(
  1233. Method.post, ApiUrl.news_detail,
  1234. objectFromJson: (res) => NewsDetailItem.fromJsonMap(res),
  1235. params: data,
  1236. onSuccess: onSuccess,
  1237. onError: onError);
  1238. }
  1239. Future newsZan(id,
  1240. {Function onSuccess, Function(int code, String msg) onError}) async {
  1241. var data = {
  1242. "id": id,
  1243. "userId": SpUtil.getString(Constant.userId)
  1244. };
  1245. await DioUtils().requestNetwork<NewsDetailItem>(Method.post, ApiUrl.news_zan,
  1246. objectFromJson: (res) => NewsDetailItem.fromJsonMap(res),
  1247. params: data, onSuccess: onSuccess, onError: (code,msg){
  1248. loginExpire(code);
  1249. onError(code,msg);
  1250. });
  1251. }
  1252. Future signList(pageNum, pageSize, clockTime,
  1253. {Function onSuccess, Function(int code, String msg) onError}) async {
  1254. var data = {
  1255. "pageNum": pageNum,
  1256. "pageSize": pageSize,
  1257. "userId": int.parse(SpUtil.getString(Constant.userId)),
  1258. "clockTime": clockTime,
  1259. };
  1260. await DioUtils().requestNetwork<SignListEntity>(
  1261. Method.post, ApiUrl.sign_list,
  1262. objectFromJson: (res) => SignListEntity.fromJsonMap(res),
  1263. params: data,
  1264. onSuccess: onSuccess,
  1265. onError: onError);
  1266. }
  1267. Future signConfig(
  1268. {Function onSuccess, Function(int code, String msg) onError}) async {
  1269. var data = {
  1270. "mtCompanyId": SpUtil.getString(Constant.companyId),
  1271. };
  1272. await DioUtils().requestNetwork<SignConfigItem>(
  1273. Method.post, ApiUrl.sign_config,
  1274. objectFromJson: (res) => SignConfigItem.fromJsonMap(res),
  1275. params: data,
  1276. onSuccess: onSuccess,
  1277. onError: onError);
  1278. }
  1279. Future signAdd(coordinate, address, type,
  1280. {Function onSuccess, Function(int code, String msg) onError}) async {
  1281. var data = {
  1282. "mtCompanyId": SpUtil.getString(Constant.companyId),
  1283. "userId": int.parse(SpUtil.getString(Constant.userId)),
  1284. "coordinate": coordinate,
  1285. "address": address,
  1286. "type": type
  1287. };
  1288. await DioUtils().requestNetwork<SignConfigItem>(
  1289. Method.post, ApiUrl.sign_add,
  1290. objectFromJson: (res) => SignConfigItem.fromJsonMap(res),
  1291. params: data,
  1292. onSuccess: onSuccess,
  1293. onError: onError);
  1294. }
  1295. ///大修统计
  1296. Future heavyCount(
  1297. {Function onSuccess, Function(int code, String msg) onError}) async {
  1298. await DioUtils().requestNetwork<HeavyCountItem>(
  1299. Method.post, ApiUrl.capital_count,
  1300. objectFromJson: (res) => HeavyCountItem.fromJsonMap(res),
  1301. params: {},
  1302. onSuccess: onSuccess,
  1303. onError: (code,msg){
  1304. loginExpire(code);
  1305. onError(code,msg);
  1306. });
  1307. }
  1308. ///大修项目列表
  1309. Future searchHeavyProject(pageNum, pageSize, status,
  1310. {Function onSuccess, Function(int code, String msg) onError}) async {
  1311. var data = {
  1312. "mtCompanyId": SpUtil.getString(Constant.companyId),
  1313. "userId":SpUtil.getString(Constant.userId),
  1314. "projectStatus":status,
  1315. "pageNum": pageNum,
  1316. "projectName":"",
  1317. "pageSize": pageSize
  1318. };
  1319. await DioUtils().requestNetwork<HeavyListEntity>(
  1320. Method.post, ApiUrl.capital_project_list,
  1321. objectFromJson: (res) => HeavyListEntity.fromJsonMap(res),
  1322. params: data,
  1323. onSuccess: onSuccess,
  1324. onError: (code,msg){
  1325. loginExpire(code);
  1326. onError(code,msg);
  1327. });
  1328. }
  1329. ///大修电梯列表
  1330. Future searchHeavyLift(projectId, pageNum, pageSize, searchStr,
  1331. {Function onSuccess, Function(int code, String msg) onError}) async {
  1332. var data = {
  1333. "id": projectId,
  1334. "pageNum": pageNum,
  1335. "pageSize": pageSize,
  1336. "registrationCode":searchStr
  1337. };
  1338. await DioUtils().requestNetwork<LiftListEntity>(
  1339. Method.post, ApiUrl.capital_lift_list,
  1340. objectFromJson: (res) => LiftListEntity.fromJsonMap(res),
  1341. params: data,
  1342. onSuccess: onSuccess,
  1343. onError: (code,msg){
  1344. loginExpire(code);
  1345. onError(code,msg);
  1346. });
  1347. }
  1348. ///大修项目详情
  1349. Future heavyProjectDetail(id,
  1350. {Function onSuccess, Function(int code, String msg) onError}) async {
  1351. var data = {
  1352. "id": id,
  1353. };
  1354. await DioUtils().requestNetwork<HeavyItem>(
  1355. Method.post, ApiUrl.capital_project_detail,
  1356. objectFromJson: (res) => HeavyItem.fromJsonMap(res),
  1357. params: data,
  1358. onSuccess: onSuccess,
  1359. onError: (code,msg){
  1360. loginExpire(code);
  1361. onError(code,msg);
  1362. });
  1363. }
  1364. ///大修项目用户列表
  1365. Future heavyUserList(projectId,isUser,signDate,
  1366. {Function onSuccess, Function(int code, String msg) onError}) async {
  1367. var data = {
  1368. "mtCompanyId": SpUtil.getString(Constant.companyId),
  1369. "projectId":projectId,
  1370. "userId":isUser?SpUtil.getString(Constant.userId):"",
  1371. };
  1372. if(signDate.length>0){
  1373. data['signDate'] = signDate;
  1374. }
  1375. await DioUtils().requestNetwork<HeavyUserEntity>(
  1376. Method.post, ApiUrl.capital_attendance_list,
  1377. objectFromJson: (res) => HeavyUserEntity.fromJsonMap(res),
  1378. isList: true,
  1379. params: data, onSuccessList: onSuccess, onError: (code,msg){
  1380. loginExpire(code);
  1381. onError(code,msg);
  1382. });
  1383. }
  1384. ///大修签到
  1385. Future heavySignAdd(coordinate,address,projectId,{Function onSuccess, Function(int code, String msg) onError}) async {
  1386. var data = {
  1387. "mtCompanyId": SpUtil.getString(Constant.companyId),
  1388. "userId": SpUtil.getString(Constant.userId),
  1389. "projectId":projectId,
  1390. "coordinate": coordinate,
  1391. "address": address
  1392. };
  1393. await DioUtils().requestNetwork<bool>(Method.post, ApiUrl.capital_sign_in,
  1394. params: data, onSuccess: onSuccess, onError: (code,msg){
  1395. loginExpire(code);
  1396. onError(code,msg);
  1397. });
  1398. }
  1399. ///开始项目
  1400. Future capitalBegin(id,{Function onSuccess, Function(int code, String msg) onError}) async {
  1401. var data = {
  1402. "projectId": id,
  1403. };
  1404. await DioUtils().requestNetwork<bool>(Method.post, ApiUrl.capital_begin,
  1405. params: data, onSuccess: onSuccess, onError: (code,msg){
  1406. loginExpire(code);
  1407. onError(code,msg);
  1408. });
  1409. }
  1410. ///竣工
  1411. Future capitalCompleted(id,imgs,{Function onSuccess, Function(int code, String msg) onError}) async {
  1412. var data = {
  1413. "mtCompanyId": SpUtil.getString(Constant.companyId),
  1414. "projectId": id,
  1415. "imageUrlList":imgs
  1416. };
  1417. await DioUtils().requestNetwork<String>(Method.post, ApiUrl.capital_completed,
  1418. params: data, onSuccess: onSuccess, onError: (code,msg){
  1419. loginExpire(code);
  1420. onError(code,msg);
  1421. });
  1422. }
  1423. ///消息列表
  1424. Future messageList(pageIndex,pageSize,type,
  1425. {Function onSuccess, Function(int code, String msg) onError}) async {
  1426. var data = {
  1427. "userId": SpUtil.getString(Constant.userId),
  1428. "type":type,
  1429. "pageNum":pageIndex,
  1430. "pageSize":pageSize,
  1431. };
  1432. await DioUtils().requestNetwork<MessageListEntity>(
  1433. Method.post, ApiUrl.push_msg_list,
  1434. objectFromJson: (res) => MessageListEntity.fromJsonMap(res),
  1435. params: data, onSuccess: onSuccess, onError: (code,msg){
  1436. loginExpire(code);
  1437. onError(code,msg);
  1438. });
  1439. }
  1440. ///消息列表
  1441. Future messageDetail(id,
  1442. {Function onSuccess, Function(int code, String msg) onError}) async {
  1443. var data = {
  1444. "id":id,
  1445. };
  1446. await DioUtils().requestNetwork<MessageListItem>(
  1447. Method.post, ApiUrl.push_msg,
  1448. objectFromJson: (res) => MessageListItem.fromJsonMap(res),
  1449. params: data, onSuccess: onSuccess, onError: (code,msg){
  1450. loginExpire(code);
  1451. onError(code,msg);
  1452. });
  1453. }
  1454. loginExpire(int code) {
  1455. if (code == 10 && context != null) {
  1456. showAlert(context, "提示", "用户登录失效,请重新登录", "重新登录", () {
  1457. User().clearUser();
  1458. _push.unbindAccount(account: f.SpUtil.getString(Constant.phone));
  1459. NavigatorUtils.push(context, AccountRouter.loginPage, clearStack: true);
  1460. });
  1461. }
  1462. }
  1463. Options _getFormOptions() {
  1464. Map<String, String> map = new Map();
  1465. // map["Content-Type"] = "multipart/form-data; charset=utf-8";
  1466. map["Accept"] = "application/json";
  1467. // return Options(contentType: "multipart/form-data; charset=utf-8",responseType: ResponseType.json);
  1468. return Options(contentType: "multipart/form-data; charset=utf-8");
  1469. }
  1470. }
  1471. class NewApiUrl {
  1472. static const String banner_list = "/udream/api/bannerImages/query-page";
  1473. static const String userCoupons = "/udream/api/userCoupons/couponNum";
  1474. static const String uploadFiles = "/udream/files";
  1475. static const String uploadFilesOss = "/udream/files/oss";
  1476. static const String question_list = "/udream/api/questionBanks/query-page";
  1477. static const String question_detail_all = "/udream/api/questionBanks/query/";
  1478. static const String product_collect_list =
  1479. "/udream/api/userCollects/query-shopping";
  1480. static const String position_collect_list =
  1481. "/udream/api/userCollects/query-recruitmentInfo";
  1482. static const String question_collect_list =
  1483. "/udream/api/userCollects/query-question";
  1484. static const String video_collect_list =
  1485. "/udream/api/userCollects/query-schoolVideo";
  1486. static const String question_detail = "/udream/api/questionBanks/query-app/";
  1487. static const String question_like = "/udream/api/questionBanks/like/";
  1488. static const String question_noLike = "/udream/api/questionBanks/noLike/";
  1489. static const String question_fav = "/udream/api/questionBanks/collect/";
  1490. static const String question_noFav = "/udream/api/questionBanks/noCollect/";
  1491. static const String add_video = "/udream/api/schoolVideos/insert";
  1492. static const String edit_video = "/udream/api/schoolVideos/update";
  1493. static const String updateDownLoadNum = "/udream/api/liftFiles/updateDownLoadNum/";
  1494. static const String video_list = "/udream/api/schoolVideos/query-page";
  1495. static const String video_detail =
  1496. "/udream/api/schoolVideos/detailWithRecord";
  1497. static const String video_like = "/udream/api/schoolVideoOperates/insert";
  1498. static const String video_like_cancel =
  1499. "/udream/api/schoolVideoOperates/delete/";
  1500. static const String shop_fav = "/udream/api/shoppingOperates/insert";
  1501. static const String shop_fav_cancel = "/udream/api/shoppingOperates/delete/";
  1502. static const String shop_list = "/udream/api/shoppings/query-page";
  1503. static const String expertsPunishments = "/udream/api/expertsPunishments/query-page";
  1504. static const String shop_detail = "/udream/api/shoppings/detailWithRecord";
  1505. static const String punishments_detail = "/udream/api/expertsPunishments/query/";
  1506. static const String position_list = "/udream/api/recruitmentInfos/query-page";
  1507. static const String xieyiListNoPage = "/udream/api/userAgreements/queryListCharge";
  1508. static const String liftFilesDetail = "/udream/api/liftFiles/query/";
  1509. static const String position_detail =
  1510. "/udream/api/recruitmentInfos/detailWithRecord";
  1511. static const String insertRecruitmentOperates =
  1512. "/udream/api/recruitmentOperates/insert";
  1513. static const String deleteRecruitmentOperates =
  1514. "/udream/api/recruitmentOperates/delete/";
  1515. static const String applyJob = "/udream/api/userResumes/applyJob";
  1516. static const String brand_list_page = "/udream/api/liftBrands/query-page";
  1517. static const String brand_list_nopage = "/udream/api/liftBrands/query";
  1518. static const String coupon_list_nopage = "/udream/api/userCoupons/queryAll";
  1519. static const String coupon_list_page = "/udream/api/userCoupons/query-page";
  1520. static const String brand_list_type = "/udream/api/liftBrands/brandListApp";
  1521. static const String add_brand = "/udream/api/liftBrands/insert";
  1522. static const String control_list_page = "/udream/api/liftControls/query-page";
  1523. static const String control_detail = "/udream/api/liftControls/query/";
  1524. static const String expert_list = "/udream/api/userInfos/listExpert";
  1525. static const String getAllRebate = "/udream/api/userRebates/getAllRebate/";
  1526. static const String expert_comment_list =
  1527. "/udream/api/expertComments/query-expert";
  1528. static const String expert_list_nopage =
  1529. "/udream/api/userInfos/queryAllExpert";
  1530. static const String expert_detail = "/udream/api/userInfos/query/";
  1531. static const String rest_qrcode = "/udream/api/userInfos/rebuildQrCode/";
  1532. static const String coupon_list = "/udream/api/userCoupons/query-page";
  1533. static const String lift_files_page = "/udream/api/liftFiles/query-page";
  1534. static const String brand_detail = "/udream/api/liftBrands/query/";
  1535. static const String fault_code_page = "/udream/api/liftFaultCodes/query-page";
  1536. static const String fault_code_detail = "/udream/api/liftFaultCodes/query/";
  1537. static const String liftcase_list_page = "/udream/api/liftCases/query-page";
  1538. static const String liftcase_list_nopage =
  1539. "/udream/api/liftCases/getAllCaseToInvoice";
  1540. static const String liftcase_detail = "/udream/api/liftCases/query/";
  1541. static const String liftcase_receiving =
  1542. "/udream/api/liftCases/inviteExperts";
  1543. static const String liftcase_refuze = "/udream/api/liftCases/refusedExperts";
  1544. static const String fileCategorysTree =
  1545. "/udream/api/liftCategorys/queryToTree";
  1546. static const String create_case = "/udream/api/liftCases/createLiftCase";
  1547. static const String aliPayTo = "/udream/api/alipay";
  1548. static const String wxTo = "/udream/api/wxpay/case";
  1549. static const String tableDictsConstant =
  1550. "/udream/api/tableDicts/query-constant";
  1551. static const String wallet_list = "/udream/api/userBills/query-page";
  1552. static const String findOneByLiftCase =
  1553. "/udream/api/chatSessions/findOneByLiftCase";
  1554. static const String generateOrder = "/udream/api/liftCases/generateOrder";
  1555. static const String generateRoom = "/udream/api/liftCases/generateRoom";
  1556. static const String testAlipayNotify = "/udream/api/testAlipayNotify/";
  1557. static const String getServiceFee =
  1558. "/udream/api/liftCases/platformServiceFee";
  1559. static const String user_order_page = "/udream/api/userOrderss/query-page";
  1560. static const String vipFeeSettings = "/udream/api/vipFeeSettings/query-page";
  1561. static const String user_order_detail = "/udream/api/userOrderss/query/";
  1562. static const String becomeMasterDetail = "/udream/api/applyExperts/queryByUserId/";
  1563. static const String updataUserLoginInfo = "/udream/api/userInfos/getNewInfo";
  1564. static const String becomeMasterUpdate = "/udream/api/applyExperts/update";
  1565. static const String isDelayAddressUrl = "/udream/api/otherSettings/query-new";
  1566. static const String startDelayAddressUrl = "/udream/api/motionTrails/addTrail";
  1567. static const String user_order_update = "/udream/api/userOrderss/update";
  1568. static const String apply_invoice = "/udream/api/applyInvoices/applyInvoice";
  1569. static const String submit_comments = "/udream/api/expertComments/insert";
  1570. static const String search_index = "/udream/api/searchIndexs/search-index/";
  1571. static const String piaotou_list_page = "/udream/api/userInvoices/query-page";
  1572. static const String getNearUser = "/udream/api/userInfos/getNearUser";
  1573. static const String add_piaotou = "/udream/api/userInvoices/insert";
  1574. static const String edit_piaotou = "/udream/api/userInvoices/update";
  1575. static const String detail_piaotou = "/udream/api/userInvoices/query/";
  1576. static const String add_appeal = "/udream/api/liftCaseAppeals/insert";
  1577. static const String delete_piaotou = "/udream/api/userInvoices/delete/";
  1578. static const String vipOrExpert = "/udream/api/userRebates/isVipOrExpert/";
  1579. static const String queryPageByInvoiceId =
  1580. "/udream/api/liftCases/queryPageByInvoiceId";
  1581. static const String piao_list_page = "/udream/api/applyInvoices/query-page";
  1582. static const String piao_detail = "/udream/api/applyInvoices/query/";
  1583. static const String update_user = "/udream/api/userInfos/updateUser";
  1584. static const String alipayBalanceApp = "/udream/api/alipayBalanceApp";
  1585. static const String createPrivateChatRoom =
  1586. "/udream/api/chatSessions/createPrivateChatRoom";
  1587. static const String friend_list = "/udream/api/chatSessions/findFriendList";
  1588. // static const String friend_list = "/udream/api/chatSessions/query-page";
  1589. static const String user_make_sure_case =
  1590. "/udream/api/liftCases/userMakeSureCase"; // 用户确认诊单
  1591. static const String quote = "/udream/api/liftCases/toOffer"; // 专家报价
  1592. static const String chargeToClock =
  1593. "/udream/api/liftCases/chargeToClock"; // 专家打卡
  1594. static const String chargeMakeSureCase =
  1595. "/udream/api/liftCases/chargeMakeSureCase/"; // 专家确认订单
  1596. static const String userToClock =
  1597. "/udream/api/liftCases/userToClock"; // 用户确认打卡
  1598. static const String question_collect =
  1599. "/udream/api/questionBanks/question-collect"; // 问题归档
  1600. static const String update_vip = "/udream/api/userInfos/toVip"; // 修改用户信息
  1601. static const String getMemberAllMenu =
  1602. "/udream/api/appuserMenus/getMemberAllMenu"; // 获取vip等级和对应权限
  1603. static const String getAllMenu =
  1604. "/udream/api/appuserMenus/getAllMenu"; // 根据用户角色获取用户权益
  1605. static const String createRecharge =
  1606. "/udream/api/userRechargeDetails/createRecharge"; // 创建充值订单
  1607. static const String insetWithdrwa =
  1608. "/udream/api/userWithdraws/insetWithdrwa"; // 提现
  1609. static const String alipayRecharge =
  1610. "/udream/api/alipayRecharge"; // 支付宝-APP用户充值
  1611. static const String alipayRechargewx =
  1612. "/udream/api/wxpay/recharge"; // wx-APP用户充值
  1613. static const String alipayReward = "/udream/api/reward"; // 支付宝-打赏
  1614. static const String wxReward = "/udream/api/wxpay/reward"; // 微信-打赏
  1615. static const String rechargeVIP = "/udream/api/rechargeVIP"; // 支付宝-VIP
  1616. static const String rechargeVIPwx = "/udream/api/wxpay/rechargeVIP"; // wx-VIP
  1617. static const String userRebates = "/udream/api/userRebates/insert"; //
  1618. static const String applyExperts =
  1619. "/udream/api/applyExperts/insert"; // 申请成为专家
  1620. ///我的消息列表
  1621. static const String mynotifica_list = "/push/message/list";
  1622. static const String mynotifica_updata = "/push/message/read";
  1623. }
  1624. class NewApiService {
  1625. Options _getFormOptions() {
  1626. Map<String, String> map = new Map();
  1627. // map["Content-Type"] = "multipart/form-data; charset=utf-8";
  1628. map["Accept"] = "application/json";
  1629. // return Options(contentType: "multipart/form-data; charset=utf-8",responseType: ResponseType.json);
  1630. return Options(contentType: "multipart/form-data; charset=utf-8");
  1631. }
  1632. Future newsDetail(id,
  1633. {Function onSuccess, Function(int code, String msg) onError}) async {
  1634. var data = {
  1635. "id": id,
  1636. };
  1637. await DioUtils().requestNetwork<NewsDetailItem>(
  1638. Method.post, ApiUrl.news_detail,
  1639. objectFromJson: (res) => NewsDetailItem.fromJsonMap(res),
  1640. params: data,
  1641. onSuccess: onSuccess,
  1642. onError: onError);
  1643. }
  1644. // 文件上传
  1645. Future upload(String file,
  1646. {Function onSuccess, Function(int code, String msg) onError}) async {
  1647. var name = file.substring(file.lastIndexOf("/") + 1);
  1648. FormData formData =
  1649. FormData.fromMap({"files": await MultipartFile.fromFile(file)});
  1650. await DioUtils().requestNetwork<UploadModel>(
  1651. Method.post, NewApiUrl.uploadFilesOss,
  1652. objectFromJson: (res) => UploadModel.fromJson(res),
  1653. params: formData,
  1654. options: _getFormOptions(),
  1655. onSuccess: onSuccess,
  1656. onError: onError);
  1657. }
  1658. ///附近的人列表
  1659. Future nearListNoPage(obj,
  1660. {Function onSuccess, Function(int code, String msg) onError}) async {
  1661. await DioUtils().requestNetwork<NearModel>(
  1662. Method.post, "${NewApiUrl.getNearUser}",
  1663. params: obj,
  1664. objectFromJson: (res) => NearModel.fromJson(res),
  1665. isList: true,
  1666. onSuccessList: onSuccess,
  1667. onError: onError);
  1668. }
  1669. ///搜索
  1670. Future getSearchIndex(text,
  1671. {Function onSuccess, Function(int code, String msg) onError}) async {
  1672. await DioUtils().requestNetwork<SearchModel>(
  1673. Method.post, "${NewApiUrl.search_index}$text",
  1674. // Method.post, "${NewApiUrl.search_index}${Uri.encodeComponent(text)}",
  1675. objectFromJson: (res) => SearchModel.fromJson(res),
  1676. isList: true,
  1677. onSuccessList: onSuccess,
  1678. onError: onError);
  1679. }
  1680. ///获取banner图
  1681. Future getBanner(pageNum, pageSize,
  1682. {Function onSuccess, Function(int code, String msg) onError}) async {
  1683. var data = {
  1684. "pageNum": pageNum,
  1685. "pageSize": pageSize,
  1686. "type":3
  1687. };
  1688. await DioUtils().requestNetwork<BannerModel>(
  1689. Method.post, NewApiUrl.banner_list,
  1690. objectFromJson: (res) => BannerModel.fromJson(res),
  1691. params: data,
  1692. onSuccess: onSuccess,
  1693. onError: onError);
  1694. }
  1695. ///朋友分页列表
  1696. Future getFriendListPage(pageNum, pageSize,
  1697. {Function onSuccess, Function(int code, String msg) onError}) async {
  1698. var data = {
  1699. // "pageNum": pageNum,
  1700. // "pageSize": pageSize,
  1701. "userId": int.parse(SpUtil.getString(Constant.userId))
  1702. // "sort": {
  1703. // "order": "desc",
  1704. // "orderBy": "msgCreateTime"
  1705. // }
  1706. };
  1707. await DioUtils().requestNetwork<FriendModel>(
  1708. Method.post, "${NewApiUrl.friend_list}",
  1709. objectFromJson: (res) => FriendModel.fromJson(res),
  1710. params: data,
  1711. onSuccess: onSuccess,
  1712. onError: onError);
  1713. }
  1714. ///获取 我的消息列表
  1715. Future myNotificaList(pageNum, pageSize,
  1716. {Function onSuccess, Function(int code, String msg) onError}) async {
  1717. await DioUtils().requestNetwork<Autogenerated>(
  1718. Method.post, "${NewApiUrl.mynotifica_list}",
  1719. params: {
  1720. "userId": SpUtil.getString(Constant.userId),
  1721. "pageNum": pageNum,
  1722. "pageSize": pageSize,
  1723. },
  1724. objectFromJson: (res) => Autogenerated.fromJson(res),
  1725. onSuccess: onSuccess,
  1726. onError: onError);
  1727. }
  1728. ///变更消息状态
  1729. Future changeNotificaList(idList,
  1730. {Function onSuccess, Function(int code, String msg) onError}) async {
  1731. await DioUtils()
  1732. .requestNetwork<String>(Method.post, "${NewApiUrl.mynotifica_updata}",
  1733. params: {
  1734. "ids": idList,
  1735. },
  1736. onSuccess: onSuccess,
  1737. onError: onError);
  1738. }
  1739. ///进入私聊初始化房间号
  1740. Future createPrivateChatRoom(createUserId,
  1741. {Function onSuccess, Function(int code, String msg) onError}) async {
  1742. var data = {
  1743. "userId": SpUtil.getString(Constant.userId),
  1744. "createUserId": createUserId
  1745. };
  1746. await DioUtils().requestNetwork<Map>(
  1747. Method.post, "${NewApiUrl.createPrivateChatRoom}",
  1748. params: data, onSuccess: onSuccess, onError: onError);
  1749. }
  1750. ///发票抬头分页列表
  1751. Future getPiaoTouListPage(pageNum, pageSize, type,isDefault,
  1752. {Function onSuccess, Function(int code, String msg) onError}) async {
  1753. var data = {
  1754. "isDefault": isDefault,
  1755. "type": type,
  1756. "pageNum": pageNum,
  1757. "pageSize": pageSize,
  1758. "userId": int.parse(SpUtil.getString(Constant.userId))
  1759. };
  1760. await DioUtils().requestNetwork<piaotou.PiaoTouModel>(
  1761. Method.post, "${NewApiUrl.piaotou_list_page}",
  1762. objectFromJson: (res) => piaotou.PiaoTouModel.fromJson(res),
  1763. params: data,
  1764. onSuccess: onSuccess,
  1765. onError: onError);
  1766. }
  1767. ///删除抬头
  1768. Future getTouDelete(id,
  1769. {Function onSuccess, Function(int code, String msg) onError}) async {
  1770. var data = {
  1771. "id": id,
  1772. };
  1773. await DioUtils().requestNetwork<piaotou.Records>(
  1774. Method.delete, "${NewApiUrl.delete_piaotou}",
  1775. // Method.delete, "${NewApiUrl.delete_piaotou}${id.toString()}",
  1776. // objectFromJson: (res) => piaotou.Records.fromJson(res),
  1777. params: data,
  1778. onSuccess: onSuccess,
  1779. onError: onError);
  1780. }
  1781. ///获取抬头详情
  1782. Future getTouDetail(id,
  1783. {Function onSuccess, Function(int code, String msg) onError}) async {
  1784. // var data = {
  1785. // "id": id,
  1786. // };
  1787. await DioUtils().requestNetwork<piaotou.Records>(
  1788. Method.get, "${NewApiUrl.detail_piaotou}${id.toString()}",
  1789. objectFromJson: (res) => piaotou.Records.fromJson(res),
  1790. // params: data,
  1791. onSuccess: onSuccess,
  1792. onError: onError);
  1793. }
  1794. ///改变用户信息
  1795. Future updateUser(obj,
  1796. {Function onSuccess, Function(int code, String msg) onError}) async {
  1797. await DioUtils().requestNetwork<String>(
  1798. Method.post, "${NewApiUrl.update_user}",
  1799. params: obj, onSuccess: onSuccess, onError: onError);
  1800. }
  1801. ///账户余额支付
  1802. Future getAlipayBalanceApp(obj,
  1803. {Function onSuccess, Function(int code, String msg) onError}) async {
  1804. await DioUtils().requestNetwork<String>(
  1805. Method.post, "${NewApiUrl.alipayBalanceApp}",
  1806. params: obj, onSuccess: onSuccess, onError: onError);
  1807. }
  1808. ///我的卡券红包数量
  1809. Future getUserCoupons(
  1810. {Function onSuccess, Function(int code, String msg) onError}) async {
  1811. await DioUtils().requestNetwork<Map>(Method.post,
  1812. "${NewApiUrl.userCoupons}?userId=${SpUtil.getString(Constant.userId)}",
  1813. onSuccess: onSuccess, onError: onError);
  1814. }
  1815. ///添加发票抬头
  1816. Future addPiaoTouListPage(obj,
  1817. {Function onSuccess, Function(int code, String msg) onError}) async {
  1818. await DioUtils().requestNetwork<String>(
  1819. Method.post, "${NewApiUrl.add_piaotou}",
  1820. params: obj, onSuccess: onSuccess, onError: onError);
  1821. }
  1822. ///编辑发票抬头
  1823. Future editPiaoTouListPage(obj,
  1824. {Function onSuccess, Function(int code, String msg) onError}) async {
  1825. await DioUtils().requestNetwork<String>(
  1826. Method.put, "${NewApiUrl.edit_piaotou}",
  1827. params: obj, onSuccess: onSuccess, onError: onError);
  1828. }
  1829. ///我的发票查订单分页列表
  1830. Future getQueryPageByInvoiceId(pageNum, pageSize, invoiceId,
  1831. {Function onSuccess, Function(int code, String msg) onError}) async {
  1832. var data = {
  1833. "pageNum": pageNum,
  1834. "pageSize": pageSize,
  1835. "invoiceId": invoiceId
  1836. };
  1837. await DioUtils().requestNetwork<PiaoOrderModel>(
  1838. Method.post, "${NewApiUrl.queryPageByInvoiceId}",
  1839. objectFromJson: (res) => PiaoOrderModel.fromJson(res),
  1840. params: data,
  1841. onSuccess: onSuccess,
  1842. onError: onError);
  1843. }
  1844. ///我的发票分页列表
  1845. Future getPiaoListPage(pageNum, pageSize, userId,
  1846. {Function onSuccess, Function(int code, String msg) onError}) async {
  1847. var data = {
  1848. "pageNum": pageNum,
  1849. "pageSize": pageSize,
  1850. "userId": int.parse(SpUtil.getString(Constant.userId))
  1851. };
  1852. await DioUtils().requestNetwork<piao.PiaoModelPage>(
  1853. Method.post, "${NewApiUrl.piao_list_page}",
  1854. objectFromJson: (res) => piao.PiaoModelPage.fromJson(res),
  1855. params: data,
  1856. onSuccess: onSuccess,
  1857. onError: onError);
  1858. }
  1859. ///获取发票详情
  1860. Future getPiaoDetail(id,
  1861. {Function onSuccess, Function(int code, String msg) onError}) async {
  1862. // var data = {
  1863. // "id": id,
  1864. // };
  1865. await DioUtils().requestNetwork<piao.Records>(
  1866. Method.get, "${NewApiUrl.piao_detail}${id.toString()}",
  1867. objectFromJson: (res) => piao.Records.fromJson(res),
  1868. // params: data,
  1869. onSuccess: onSuccess,
  1870. onError: onError);
  1871. }
  1872. ///根据订单id支付
  1873. Future getTestAlipayNotify(orderId,
  1874. {Function onSuccess, Function(int code, String msg) onError}) async {
  1875. await DioUtils().requestNetwork<int>(
  1876. Method.get, "${NewApiUrl.testAlipayNotify}${orderId.toString()}",
  1877. onSuccess: onSuccess, onError: onError);
  1878. }
  1879. ///根据诊单id查询房间信息
  1880. Future findOne(dataId,
  1881. {Function onSuccess, Function(int code, String msg) onError}) async {
  1882. var data = {
  1883. "dataId": dataId,
  1884. "userId": int.parse(SpUtil.getString(Constant.userId)),
  1885. };
  1886. await DioUtils().requestNetwork<FindOneModel>(
  1887. Method.post, NewApiUrl.findOneByLiftCase,
  1888. objectFromJson: (res) => FindOneModel.fromJson(res),
  1889. params: data,
  1890. onSuccess: onSuccess,
  1891. onError: onError);
  1892. }
  1893. ///完善诊单,创建订单
  1894. Future generateOrder(data,
  1895. {Function onSuccess, Function(int code, String msg) onError}) async {
  1896. await DioUtils().requestNetwork<String>(
  1897. Method.post, NewApiUrl.generateOrder,
  1898. params: data, onSuccess: onSuccess, onError: onError);
  1899. }
  1900. ///绑定专家
  1901. Future generateRoom(data,
  1902. {Function onSuccess, Function(int code, String msg) onError}) async {
  1903. await DioUtils().requestNetwork<String>(Method.post, NewApiUrl.generateRoom,
  1904. params: data, onSuccess: onSuccess, onError: onError);
  1905. }
  1906. ///获取新闻列表
  1907. Future newsList(pageNum, pageSize, haveTops, title, city,
  1908. {Function onSuccess, Function(int code, String msg) onError}) async {
  1909. var data = {
  1910. "pageNum": pageNum,
  1911. "pageSize": pageSize,
  1912. "haveTops": haveTops,
  1913. "title": title,
  1914. "district": city
  1915. };
  1916. await DioUtils().requestNetwork<NewsCommEntity>(
  1917. Method.post, ApiUrl.news_list,
  1918. objectFromJson: (res) => NewsCommEntity.fromJsonMap(res),
  1919. params: data,
  1920. onSuccess: onSuccess,
  1921. onError: onError);
  1922. }
  1923. ///获取题库列表
  1924. Future getQuestionList(pageNum, pageSize, brandId, name, title,
  1925. {Function onSuccess, Function(int code, String msg) onError}) async {
  1926. var data = {
  1927. "pageNum": pageNum,
  1928. "pageSize": pageSize,
  1929. "platform": "app",
  1930. "brandId": brandId,
  1931. "userName": name,
  1932. "title": title,
  1933. };
  1934. await DioUtils()
  1935. .requestNetwork<mixmix.MixModel>(Method.post, NewApiUrl.question_list,
  1936. objectFromJson: (res) => mixmix.MixModel.fromJson(res),
  1937. // objectFromJson: (res) => QuestionModel.fromJson(res),
  1938. params: data,
  1939. onSuccess: onSuccess,
  1940. onError: onError);
  1941. }
  1942. ///获取题库详情
  1943. Future getQuestionDetail(id,
  1944. {Function onSuccess, Function(int code, String msg) onError}) async {
  1945. // var data = {
  1946. // "id": id,
  1947. // };
  1948. await DioUtils().requestNetwork<QuestionDetailModel>(Method.get,
  1949. "${NewApiUrl.question_detail}${id.toString()}/${SpUtil.getString(Constant.userId)}",
  1950. objectFromJson: (res) => QuestionDetailModel.fromJson(res),
  1951. // params: data,
  1952. onSuccess: onSuccess,
  1953. onError: onError);
  1954. }
  1955. ///获取题库详情
  1956. Future getQuestionDetailAll(id,
  1957. {Function onSuccess, Function(int code, String msg) onError}) async {
  1958. var data = {
  1959. "pageNum": 1,
  1960. "platform": "web",
  1961. "liftCaseId": id,
  1962. };
  1963. await DioUtils()
  1964. .requestNetwork<mixmix.MixModel>(Method.post, NewApiUrl.question_list,
  1965. objectFromJson: (res) => mixmix.MixModel.fromJson(res),
  1966. // objectFromJson: (res) => QuestionModel.fromJson(res),
  1967. params: data,
  1968. onSuccess: onSuccess,
  1969. onError: onError);
  1970. }
  1971. ///问题点赞
  1972. Future questionLike(questionId, userId,
  1973. {Function onSuccess, Function(int code, String msg) onError}) async {
  1974. await DioUtils().requestNetwork<bool>(Method.post,
  1975. "${NewApiUrl.question_like}${SpUtil.getString(Constant.userId)}/${questionId.toString()}",
  1976. onSuccess: onSuccess, onError: onError);
  1977. }
  1978. ///问题取消点赞
  1979. Future questionLikeCancel(questionId, userId,
  1980. {Function onSuccess, Function(int code, String msg) onError}) async {
  1981. await DioUtils().requestNetwork<bool>(Method.post,
  1982. "${NewApiUrl.question_noLike}${SpUtil.getString(Constant.userId)}/${questionId.toString()}",
  1983. onSuccess: onSuccess, onError: onError);
  1984. }
  1985. ///问题收藏
  1986. Future questionFav(questionId, userId,
  1987. {Function onSuccess, Function(int code, String msg) onError}) async {
  1988. await DioUtils().requestNetwork<bool>(Method.post,
  1989. "${NewApiUrl.question_fav}${SpUtil.getString(Constant.userId)}/${questionId.toString()}",
  1990. onSuccess: onSuccess, onError: onError);
  1991. }
  1992. ///问题取消收藏
  1993. Future questionFavCancel(questionId, userId,
  1994. {Function onSuccess, Function(int code, String msg) onError}) async {
  1995. await DioUtils().requestNetwork<bool>(Method.post,
  1996. "${NewApiUrl.question_noFav}${SpUtil.getString(Constant.userId)}/${questionId.toString()}",
  1997. onSuccess: onSuccess, onError: onError);
  1998. }
  1999. ///上传视频
  2000. Future addVideo(obj,
  2001. {Function onSuccess, Function(int code, String msg) onError}) async {
  2002. await DioUtils().requestNetwork<String>(Method.post, NewApiUrl.add_video,
  2003. params: obj, onSuccess: onSuccess, onError: onError);
  2004. }
  2005. ///编辑视频
  2006. Future editVideo(obj,
  2007. {Function onSuccess, Function(int code, String msg) onError}) async {
  2008. await DioUtils().requestNetwork<String>(Method.put, NewApiUrl.edit_video,
  2009. params: obj, onSuccess: onSuccess, onError: onError);
  2010. }
  2011. ///获取学堂列表
  2012. Future getVideoList(pageNum, pageSize, userId, title, brandId, type,
  2013. {Function onSuccess, Function(int code, String msg) onError}) async {
  2014. var data = {
  2015. "pageNum": pageNum,
  2016. "pageSize": pageSize,
  2017. "platform": type,
  2018. "userId": userId,
  2019. "title": title,
  2020. "brandId": brandId
  2021. };
  2022. await DioUtils()
  2023. .requestNetwork<mixmix.MixModel>(Method.post, NewApiUrl.video_list,
  2024. objectFromJson: (res) => mixmix.MixModel.fromJson(res),
  2025. // objectFromJson: (res) => VideoModel.fromJson(res),
  2026. params: data,
  2027. onSuccess: onSuccess,
  2028. onError: onError);
  2029. }
  2030. ///获取学堂详情
  2031. Future getVideoDetail(id, userId,
  2032. {Function onSuccess, Function(int code, String msg) onError}) async {
  2033. await DioUtils().requestNetwork<VideoDetailModel>(Method.get,
  2034. "${NewApiUrl.video_detail}?id=${id.toString()}&userId=${SpUtil.getString(Constant.userId)}",
  2035. objectFromJson: (res) => VideoDetailModel.fromJson(res),
  2036. onSuccess: onSuccess,
  2037. onError: onError);
  2038. }
  2039. ///获取下载量
  2040. Future getUpdateDownLoadNum(id,
  2041. {Function onSuccess, Function(int code, String msg) onError}) async {
  2042. await DioUtils().requestNetwork<String>(Method.get,
  2043. "${NewApiUrl.updateDownLoadNum}${id.toString()}",
  2044. onSuccess: onSuccess,
  2045. onError: onError);
  2046. }
  2047. ///学堂点赞
  2048. Future videoLike(dataId, type, userId,
  2049. {Function onSuccess, Function(int code, String msg) onError}) async {
  2050. var data = {
  2051. "dataId": dataId,
  2052. "type": type,
  2053. "userId": int.parse(SpUtil.getString(Constant.userId)),
  2054. };
  2055. await DioUtils().requestNetwork<bool>(Method.post, NewApiUrl.video_like,
  2056. params: data, onSuccess: onSuccess, onError: onError);
  2057. }
  2058. ///学堂取消点赞
  2059. Future videoLikeCancel(id,
  2060. {Function onSuccess, Function(int code, String msg) onError}) async {
  2061. var data = {
  2062. "id":id
  2063. };
  2064. await DioUtils().requestNetwork<bool>(
  2065. Method.delete, "${NewApiUrl.video_like_cancel}",
  2066. params: data,
  2067. onSuccess: onSuccess, onError: onError);
  2068. }
  2069. ///商城收藏
  2070. Future shopFav(dataId, type, userId,
  2071. {Function onSuccess, Function(int code, String msg) onError}) async {
  2072. var data = {
  2073. "dataId": dataId,
  2074. "type": type,
  2075. "userId": int.parse(SpUtil.getString(Constant.userId)),
  2076. };
  2077. await DioUtils().requestNetwork<bool>(Method.post, NewApiUrl.shop_fav,
  2078. params: data, onSuccess: onSuccess, onError: onError);
  2079. }
  2080. ///商城取消收藏
  2081. Future shopFavCancel(id,
  2082. {Function onSuccess, Function(int code, String msg) onError}) async {
  2083. var data = {
  2084. "id":id
  2085. };
  2086. await DioUtils().requestNetwork<bool>(
  2087. Method.delete, "${NewApiUrl.shop_fav_cancel}",
  2088. params: data,
  2089. onSuccess: onSuccess, onError: onError);
  2090. }
  2091. ///获取商品列表
  2092. Future getShopList(pageNum, pageSize, userId, name,
  2093. {Function onSuccess, Function(int code, String msg) onError}) async {
  2094. var data = {
  2095. "pageNum": pageNum,
  2096. "pageSize": pageSize,
  2097. "platform": "app",
  2098. "userId": userId,
  2099. "name": name,
  2100. };
  2101. await DioUtils().requestNetwork<mixmix.MixModel>(
  2102. Method.post, NewApiUrl.shop_list,
  2103. objectFromJson: (res) => mixmix.MixModel.fromJson(res),
  2104. params: data,
  2105. onSuccess: onSuccess,
  2106. onError: onError);
  2107. }
  2108. ///惩罚列表
  2109. Future getExpertsPunishmentsList(pageNum, pageSize,
  2110. {Function onSuccess, Function(int code, String msg) onError}) async {
  2111. var data = {
  2112. "pageNum": pageNum,
  2113. "pageSize": pageSize,
  2114. "chargeId": int.parse(SpUtil.getString(Constant.userId))
  2115. };
  2116. await DioUtils().requestNetwork<punishments.PunishmentsModel>(
  2117. Method.post, NewApiUrl.expertsPunishments,
  2118. objectFromJson: (res) => punishments.PunishmentsModel.fromJson(res),
  2119. params: data,
  2120. onSuccess: onSuccess,
  2121. onError: onError);
  2122. }
  2123. ///获取钱包明细列表
  2124. Future getWalletList(pageNum, pageSize,
  2125. {int currentYear,
  2126. int currentMonth,
  2127. Function onSuccess,
  2128. Function(int code, String msg) onError}) async {
  2129. var data = {
  2130. "pageNum": pageNum,
  2131. "pageSize": pageSize,
  2132. "currentYear": currentYear,
  2133. "currentMonth": currentMonth,
  2134. "userId": int.parse(SpUtil.getString(Constant.userId)),
  2135. "sort": {
  2136. "order":"desc",
  2137. "orderBy":"create_time",
  2138. }
  2139. };
  2140. await DioUtils().requestNetwork<WalletModel>(
  2141. Method.post, NewApiUrl.wallet_list,
  2142. objectFromJson: (res) => WalletModel.fromJson(res),
  2143. params: data,
  2144. onSuccess: onSuccess,
  2145. onError: onError);
  2146. }
  2147. ///获取商品详情
  2148. Future getShopDetail(id, userId,
  2149. {Function onSuccess, Function(int code, String msg) onError}) async {
  2150. await DioUtils().requestNetwork<ShopDetailModel>(Method.get,
  2151. "${NewApiUrl.shop_detail}?id=${id.toString()}&userId=${SpUtil.getString(Constant.userId)}",
  2152. objectFromJson: (res) => ShopDetailModel.fromJson(res),
  2153. onSuccess: onSuccess,
  2154. onError: onError);
  2155. }
  2156. ///获取惩罚详情
  2157. Future getPunishmentsDetail(id,
  2158. {Function onSuccess, Function(int code, String msg) onError}) async {
  2159. await DioUtils().requestNetwork<punishments.Records>(Method.get,
  2160. "${NewApiUrl.punishments_detail}$id",
  2161. objectFromJson: (res) => punishments.Records.fromJson(res),
  2162. onSuccess: onSuccess,
  2163. onError: onError);
  2164. }
  2165. ///获取职位列表
  2166. Future getPositionList(
  2167. pageNum,
  2168. pageSize, {
  2169. String provinceName,
  2170. String cityName,
  2171. int minSalary,
  2172. int maxSalary,
  2173. String job,
  2174. Function onSuccess,
  2175. Function(int code, String msg) onError,
  2176. }) async {
  2177. var data = {
  2178. "pageNum": pageNum,
  2179. "pageSize": pageSize,
  2180. "platform": "app",
  2181. // "userId": userId,
  2182. "provinceName": provinceName,
  2183. "cityName": cityName,
  2184. "minSalary": minSalary,
  2185. "maxSalary": maxSalary,
  2186. "job": job,
  2187. "statuz": 1
  2188. };
  2189. await DioUtils().requestNetwork<mixmix.MixModel>(
  2190. Method.post, NewApiUrl.position_list,
  2191. objectFromJson: (res) => mixmix.MixModel.fromJson(res),
  2192. params: data,
  2193. onSuccess: onSuccess,
  2194. onError: onError);
  2195. }
  2196. // 获取专家协议列表
  2197. Future getXieyiListNoPage(
  2198. {Function onSuccess, Function(int code, String msg) onError}) async {
  2199. await DioUtils().requestNetwork<XieyiModel>(Method.get,
  2200. "${NewApiUrl.xieyiListNoPage}",
  2201. objectFromJson: (res) => XieyiModel.fromJson(res),
  2202. isList: true,
  2203. onSuccessList: onSuccess,
  2204. onError: onError);
  2205. }
  2206. // 获取职位详情
  2207. Future getPositionDetail(id,
  2208. {Function onSuccess, Function(int code, String msg) onError}) async {
  2209. await DioUtils().requestNetwork<PositionDetailModel>(Method.get,
  2210. "${NewApiUrl.position_detail}?id=${id.toString()}&userId=${SpUtil.getString(Constant.userId)}",
  2211. objectFromJson: (res) => PositionDetailModel.fromJson(res),
  2212. onSuccess: onSuccess,
  2213. onError: onError);
  2214. }
  2215. // 获取文件详情
  2216. Future getLiftFilesDetail(id,
  2217. {Function onSuccess, Function(int code, String msg) onError}) async {
  2218. await DioUtils().requestNetwork<Map>(Method.get,
  2219. "${NewApiUrl.liftFilesDetail}${id.toString()}",
  2220. onSuccess: onSuccess,
  2221. onError: onError);
  2222. }
  2223. // 插入招聘操作记录
  2224. Future insertRecruitmentOperates(dataId, type,
  2225. {Function onSuccess, Function(int code, String msg) onError}) async {
  2226. await DioUtils().requestNetwork<PositionDetailModel>(
  2227. Method.post, "${NewApiUrl.insertRecruitmentOperates}",
  2228. objectFromJson: (res) => PositionDetailModel.fromJson(res),
  2229. params: {
  2230. "userId": int.parse(SpUtil.getString(Constant.userId)),
  2231. "dataId": dataId,
  2232. "type": type
  2233. },
  2234. onSuccess: onSuccess,
  2235. onError: onError);
  2236. }
  2237. ///添加品牌
  2238. Future addBrand(name,
  2239. {Function onSuccess, Function(int code, String msg) onError}) async {
  2240. await DioUtils().requestNetwork<bool>(Method.post, NewApiUrl.add_brand,
  2241. params: {"name": name}, onSuccess: onSuccess, onError: onError);
  2242. }
  2243. ///品牌按字母排序
  2244. Future getBrandListType(title,
  2245. {Function onSuccess, Function(int code, String msg) onError}) async {
  2246. await DioUtils().requestNetwork<BrandModelType>(
  2247. Method.post, "${NewApiUrl.brand_list_type}",
  2248. params: {
  2249. "sercheKey":title
  2250. },
  2251. objectFromJson: (res) => BrandModelType.fromJson(res),
  2252. isList: true,
  2253. onSuccessList: onSuccess,
  2254. onError: onError);
  2255. }
  2256. ///品牌不分页列表
  2257. Future getBrandListNoPage(
  2258. {Function onSuccess, Function(int code, String msg) onError}) async {
  2259. await DioUtils().requestNetwork<brandM.Records>(
  2260. Method.post, NewApiUrl.brand_list_nopage,
  2261. objectFromJson: (res) => brandM.Records.fromJson(res),
  2262. isList: true,
  2263. onSuccessList: onSuccess,
  2264. onError: onError);
  2265. }
  2266. ///卡券不分页列表
  2267. Future getCouponListNoPage(type, amount,
  2268. {Function onSuccess, Function(int code, String msg) onError}) async {
  2269. await DioUtils().requestNetwork<coupon.Records>(Method.get,
  2270. "${NewApiUrl.coupon_list_nopage}?type=${type.toString()}&userId=${SpUtil.getString(Constant.userId)}&amount=$amount",
  2271. objectFromJson: (res) => coupon.Records.fromJson(res),
  2272. isList: true,
  2273. onSuccessList: onSuccess,
  2274. onError: onError);
  2275. }
  2276. ///卡券分页列表
  2277. Future getCouponListPage(pageNum, pageSize, usedFlag, type, userId,
  2278. {Function onSuccess, Function(int code, String msg) onError}) async {
  2279. var data = {
  2280. "pageNum": pageNum,
  2281. "pageSize": pageSize,
  2282. "usedFlag": usedFlag,
  2283. "type": type,
  2284. "userId": int.parse(SpUtil.getString(Constant.userId))
  2285. };
  2286. await DioUtils().requestNetwork<coupon.CouponModelPage>(
  2287. Method.post, "${NewApiUrl.coupon_list_page}",
  2288. objectFromJson: (res) => coupon.CouponModelPage.fromJson(res),
  2289. params: data,
  2290. onSuccess: onSuccess,
  2291. onError: onError);
  2292. }
  2293. ///品牌分页列表
  2294. Future getBrandListPage(pageNum, pageSize,
  2295. {String searchWord,
  2296. int hotFlag,
  2297. Function onSuccess,
  2298. Function(int code, String msg) onError}) async {
  2299. var data = {
  2300. "pageNum": pageNum,
  2301. "pageSize": pageSize,
  2302. "statuz": 1,
  2303. "name": searchWord,
  2304. "hotFlag": hotFlag
  2305. };
  2306. await DioUtils().requestNetwork<brandM.BrandModel>(
  2307. Method.post, NewApiUrl.brand_list_page,
  2308. objectFromJson: (res) => brandM.BrandModel.fromJson(res),
  2309. params: data,
  2310. onSuccess: onSuccess,
  2311. onError: onError);
  2312. }
  2313. ///专家分页列表
  2314. Future getExpertList(pageNum, pageSize, sortType, brandId,lat,lng,
  2315. {Function onSuccess, Function(int code, String msg) onError}) async {
  2316. var data = {
  2317. "lat":lat,
  2318. "lng":lng,
  2319. "userId":int.parse(SpUtil.getString(Constant.userId)),
  2320. "expertFlag": 1,
  2321. "deleteFlag": 0,
  2322. "pageNum": pageNum,
  2323. "pageSize": pageSize,
  2324. "statuz": 1,
  2325. "brandId": brandId ?? null,
  2326. "sort": {"order": "desc", "orderBy": sortType}
  2327. };
  2328. print(753);
  2329. await DioUtils().requestNetwork<expertM.ExpertModel>(
  2330. Method.post, NewApiUrl.expert_list,
  2331. objectFromJson: (res) => expertM.ExpertModel.fromJson(res),
  2332. params: data,
  2333. onSuccess: onSuccess,
  2334. onError: onError);
  2335. }
  2336. ///专家评论分页列表
  2337. Future getExpertCommentList(pageNum, pageSize, expertId,
  2338. {Function onSuccess, Function(int code, String msg) onError}) async {
  2339. var data = {
  2340. "expertId": expertId,
  2341. "pageNum": pageNum,
  2342. "pageSize": pageSize,
  2343. // "statuz":1,
  2344. };
  2345. await DioUtils().requestNetwork<ExpertCommentModel>(
  2346. Method.post, NewApiUrl.expert_comment_list,
  2347. objectFromJson: (res) => ExpertCommentModel.fromJson(res),
  2348. params: data,
  2349. onSuccess: onSuccess,
  2350. onError: onError);
  2351. }
  2352. ///返利记录
  2353. Future getPayMoneyList(
  2354. {Function onSuccess, Function(int code, String msg) onError}) async {
  2355. await DioUtils().requestNetwork<ShareModel>(Method.post,
  2356. "${NewApiUrl.getAllRebate}${SpUtil.getString(Constant.userId)}",
  2357. objectFromJson: (res) => ShareModel.fromJson(res),
  2358. isList: true,
  2359. onSuccessList: onSuccess,
  2360. onError: onError);
  2361. }
  2362. ///专家不分页列表
  2363. Future getExpertListNoPage(
  2364. {Function onSuccess, Function(int code, String msg) onError}) async {
  2365. await DioUtils().requestNetwork<expertM.Records>(
  2366. Method.post, NewApiUrl.expert_list_nopage,
  2367. objectFromJson: (res) => expertM.Records.fromJson(res),
  2368. isList: true,
  2369. onSuccessList: onSuccess,
  2370. onError: onError);
  2371. }
  2372. ///获取专家详情
  2373. Future getExpertDetail(id,
  2374. {Function onSuccess, Function(int code, String msg) onError}) async {
  2375. await DioUtils().requestNetwork<expertM.Records>(
  2376. Method.get, "${NewApiUrl.expert_detail}${id.toString()}",
  2377. objectFromJson: (res) => expertM.Records.fromJson(res),
  2378. onSuccess: onSuccess,
  2379. onError: onError);
  2380. }
  2381. ///重新获取二维码
  2382. Future getQrCode(
  2383. {Function onSuccess, Function(int code, String msg) onError}) async {
  2384. await DioUtils().requestNetwork<expertM.Records>(
  2385. Method.post, "${NewApiUrl.rest_qrcode}${SpUtil.getString(Constant.userId)}",
  2386. objectFromJson: (res) => expertM.Records.fromJson(res),
  2387. onSuccess: onSuccess,
  2388. onError: onError);
  2389. }
  2390. ///获取诊单费用
  2391. Future getFee(
  2392. {Function onSuccess, Function(int code, String msg) onError}) async {
  2393. await DioUtils().requestNetwork<double>(Method.get, NewApiUrl.getServiceFee,
  2394. onSuccess: onSuccess, onError: onError);
  2395. }
  2396. ///获取诊单详情
  2397. Future getLiftcaseDetail(id,
  2398. {Function onSuccess, Function(int code, String msg) onError}) async {
  2399. await DioUtils().requestNetwork<liftcase.LiftCasesDetailModel>(
  2400. Method.get, "${NewApiUrl.liftcase_detail}${id.toString()}",
  2401. objectFromJson: (res) => liftcase.LiftCasesDetailModel.fromJson(res),
  2402. onSuccess: onSuccess,
  2403. onError: onError);
  2404. }
  2405. ///诊单接单
  2406. Future orderReceiving(obj,
  2407. {Function onSuccess, Function(int code, String msg) onError}) async {
  2408. await DioUtils().requestNetwork<String>(
  2409. Method.post, NewApiUrl.liftcase_receiving,
  2410. params: obj, onSuccess: onSuccess, onError: onError);
  2411. }
  2412. ///诊单拒绝接单
  2413. Future orderRefuze(id,
  2414. {Function onSuccess, Function(int code, String msg) onError}) async {
  2415. await DioUtils().requestNetwork<String>(
  2416. Method.get, "${NewApiUrl.liftcase_refuze}?id=${id.toString()}",
  2417. onSuccess: onSuccess, onError: onError);
  2418. }
  2419. ///诊单分页列表
  2420. Future getLiftCasesListPage(dataInfo,userType,
  2421. {Function onSuccess, Function(int code, String msg) onError}) async {
  2422. var data = {
  2423. "pageNum": dataInfo['pageNum'],
  2424. "pageSize": dataInfo['pageSize'],
  2425. "type": dataInfo['type'],
  2426. "createUserId": dataInfo['createUserId'],
  2427. "chargerId": dataInfo['chargerId'],
  2428. "sort": {"order": "desc", "orderBy": "create_time"},
  2429. "userType":userType
  2430. };
  2431. await DioUtils().requestNetwork<liftcase.LiftCasesModel>(
  2432. Method.post, NewApiUrl.liftcase_list_page,
  2433. objectFromJson: (res) => liftcase.LiftCasesModel.fromJson(res),
  2434. params: data,
  2435. onSuccess: onSuccess,
  2436. onError: onError);
  2437. }
  2438. ///诊单不分页列表
  2439. Future getLiftCasesListNoPage(
  2440. {Function onSuccess, Function(int code, String msg) onError}) async {
  2441. await DioUtils().requestNetwork<liftcase.LiftCasesDetailModel>(Method.get,
  2442. "${NewApiUrl.liftcase_list_nopage}?userId=${SpUtil.getString(Constant.userId)}",
  2443. objectFromJson: (res) => liftcase.LiftCasesDetailModel.fromJson(res),
  2444. isList: true,
  2445. onSuccessList: onSuccess,
  2446. onError: onError);
  2447. }
  2448. // 创建诊单
  2449. Future createCase(obj,
  2450. {Function onSuccess, Function(int code, String msg) onError}) async {
  2451. await DioUtils().requestNetwork<int>(
  2452. Method.post, "${NewApiUrl.create_case}",
  2453. params: obj, onSuccess: onSuccess, onError: onError);
  2454. }
  2455. ///控制系统分页列表
  2456. Future getControlListPage(pageNum, pageSize,
  2457. {int topFlag,
  2458. String searchWord,
  2459. Function onSuccess,
  2460. Function(int code, String msg) onError}) async {
  2461. var data = {
  2462. "pageNum": pageNum,
  2463. "pageSize": pageSize,
  2464. "statuz": 1,
  2465. "name": searchWord,
  2466. "topFlag": topFlag,
  2467. };
  2468. await DioUtils().requestNetwork<controlM.ControlModelPage>(
  2469. Method.post, NewApiUrl.control_list_page,
  2470. objectFromJson: (res) => controlM.ControlModelPage.fromJson(res),
  2471. params: data,
  2472. onSuccess: onSuccess,
  2473. onError: onError);
  2474. }
  2475. //获取电梯控制系统详情
  2476. Future getControlDetail(id,
  2477. {Function onSuccess, Function(int code, String msg) onError}) async {
  2478. await DioUtils().requestNetwork<controlM.Records>(
  2479. Method.get, "${NewApiUrl.control_detail}${id.toString()}",
  2480. objectFromJson: (res) => controlM.Records.fromJson(res),
  2481. onSuccess: onSuccess,
  2482. onError: onError);
  2483. }
  2484. // 根据id删除招聘操作记录
  2485. Future deleteRecruitmentOperates(id,
  2486. {Function onSuccess, Function(int code, String msg) onError}) async {
  2487. var data = {
  2488. "id":id
  2489. };
  2490. await DioUtils().requestNetwork<PositionDetailModel>(
  2491. Method.delete, "${NewApiUrl.deleteRecruitmentOperates}",
  2492. params: data,
  2493. onSuccess: onSuccess, onError: onError);
  2494. }
  2495. // 用户投递简历
  2496. Future applyJob(userJob,
  2497. {Function onSuccess, Function(int code, String msg) onError}) async {
  2498. await DioUtils().requestNetwork<PositionDetailModel>(
  2499. Method.post, "${NewApiUrl.applyJob}",
  2500. objectFromJson: (res) => PositionDetailModel.fromJson(res),
  2501. params: userJob,
  2502. onSuccess: onSuccess,
  2503. onError: onError);
  2504. }
  2505. //获取官网文件列表
  2506. Future getMeansList(pageNum, pageSize, dataTable, catagoryId, brandId,
  2507. {String searchWord,
  2508. Function onSuccess,
  2509. Function(int code, String msg) onError}) async {
  2510. var data = {
  2511. "pageNum": pageNum,
  2512. "pageSize": pageSize,
  2513. "statuz": 1,
  2514. "brandId": brandId,
  2515. "dataTable": dataTable,
  2516. "catagoryId": catagoryId,
  2517. "name": searchWord,
  2518. };
  2519. print(data);
  2520. await DioUtils().requestNetwork<MeansModel>(
  2521. Method.post, NewApiUrl.lift_files_page,
  2522. objectFromJson: (res) => MeansModel.fromJson(res),
  2523. params: data,
  2524. onSuccess: onSuccess,
  2525. onError: onError);
  2526. }
  2527. //获取电梯品牌详情
  2528. Future getBrandDetail(id,
  2529. {Function onSuccess, Function(int code, String msg) onError}) async {
  2530. await DioUtils().requestNetwork<brandM.Records>(
  2531. Method.get, "${NewApiUrl.brand_detail}${id.toString()}",
  2532. objectFromJson: (res) => brandM.Records.fromJson(res),
  2533. onSuccess: onSuccess,
  2534. onError: onError);
  2535. }
  2536. //获取错误码列表
  2537. Future getFaultCodeList(brandId, pageNum, pageSize,
  2538. {String searchWord,
  2539. int topFlag,
  2540. Function onSuccess,
  2541. Function(int code, String msg) onError}) async {
  2542. var data = {
  2543. "brandId": brandId,
  2544. "pageNum": pageNum,
  2545. "pageSize": pageSize,
  2546. "statuz": 1,
  2547. "topFlag": topFlag,
  2548. "code": searchWord,
  2549. };
  2550. await DioUtils().requestNetwork<ErrorModel>(
  2551. Method.post, NewApiUrl.fault_code_page,
  2552. objectFromJson: (res) => ErrorModel.fromJson(res),
  2553. params: data,
  2554. onSuccess: onSuccess,
  2555. onError: onError);
  2556. }
  2557. //获取错误码详情
  2558. Future getFaultCodeDetail(id,
  2559. {Function onSuccess, Function(int code, String msg) onError}) async {
  2560. await DioUtils().requestNetwork<ErrorDetailModel>(
  2561. Method.get, "${NewApiUrl.fault_code_detail}${id.toString()}",
  2562. objectFromJson: (res) => ErrorDetailModel.fromJson(res),
  2563. onSuccess: onSuccess,
  2564. onError: onError);
  2565. }
  2566. //获取资料的树型分类接口
  2567. Future getFileCategorysTree(brandId,
  2568. {Function onSuccess, Function(int code, String msg) onError}) async {
  2569. await DioUtils().requestNetwork<FileCategorysTreeModel>(Method.get,
  2570. "${NewApiUrl.fileCategorysTree}?brandId=${brandId.toString()}",
  2571. objectFromJson: (res) => FileCategorysTreeModel.fromJson(res),
  2572. isList: true,
  2573. onSuccessList: onSuccess,
  2574. onError: onError);
  2575. }
  2576. // 支付宝支付
  2577. Future aliPay(
  2578. {String orders,
  2579. int liftCaseType,
  2580. bool isUserId = false,
  2581. Function onSuccess,
  2582. Function(int code, String msg) onError}) async {
  2583. await DioUtils().requestNetwork<String>(Method.post, NewApiUrl.aliPayTo,
  2584. params: {
  2585. "orders": orders,
  2586. "liftCaseType": liftCaseType,
  2587. "userId":
  2588. isUserId ? int.parse(SpUtil.getString(Constant.userId)) : null
  2589. },
  2590. onSuccess: onSuccess,
  2591. onError: onError);
  2592. }
  2593. // 支付宝支付
  2594. Future wxPay(
  2595. {String orders,
  2596. int liftCaseType,
  2597. bool isUserId = false,
  2598. Function onSuccess,
  2599. Function(int code, String msg) onError}) async {
  2600. await DioUtils().requestNetwork<Map>(Method.post, NewApiUrl.wxTo,
  2601. params: {
  2602. "orders": orders,
  2603. "liftCaseType": liftCaseType,
  2604. "userId":
  2605. isUserId ? int.parse(SpUtil.getString(Constant.userId)) : null
  2606. },
  2607. onSuccess: onSuccess,
  2608. onError: onError);
  2609. }
  2610. //字典表-根据表名和字段查询常量
  2611. Future queryConstant(tableName, field,
  2612. {Function onSuccess, Function(int code, String msg) onError}) async {
  2613. await DioUtils().requestNetwork<TableDictsModel>(
  2614. Method.post, "${NewApiUrl.tableDictsConstant}",
  2615. objectFromJson: (res) => TableDictsModel.fromJson(res),
  2616. params: {"tableName": tableName, "field": field},
  2617. isList: true,
  2618. onSuccessList: onSuccess,
  2619. onError: onError);
  2620. }
  2621. //获取会费列表
  2622. Future getVipFeeList(userLevelId,
  2623. {Function onSuccess, Function(int code, String msg) onError}) async {
  2624. var data = {
  2625. "pageNum": 1,
  2626. "pageSize": 999999,
  2627. "examineFlag": 1,
  2628. "userLevelId": userLevelId
  2629. };
  2630. await DioUtils().requestNetwork<FeeModel>(
  2631. Method.post, NewApiUrl.vipFeeSettings,
  2632. objectFromJson: (res) => FeeModel.fromJson(res),
  2633. params: data,
  2634. onSuccess: onSuccess,
  2635. onError: onError);
  2636. }
  2637. //获取错误码列表
  2638. Future getOrderList(pageNum, pageSize, orderStatus,
  2639. {Function onSuccess, Function(int code, String msg) onError}) async {
  2640. var data = {
  2641. "pageNum": pageNum,
  2642. "pageSize": pageSize,
  2643. "orderStatus": orderStatus,
  2644. "userId": int.parse(SpUtil.getString(Constant.userId))
  2645. };
  2646. await DioUtils().requestNetwork<OrderModel>(
  2647. Method.post, NewApiUrl.user_order_page,
  2648. objectFromJson: (res) => OrderModel.fromJson(res),
  2649. params: data,
  2650. onSuccess: onSuccess,
  2651. onError: onError);
  2652. }
  2653. //获取电梯品牌详情
  2654. Future getOrderDetail(id,
  2655. {Function onSuccess, Function(int code, String msg) onError}) async {
  2656. await DioUtils().requestNetwork<OrerDetailModel>(
  2657. Method.get, "${NewApiUrl.user_order_detail}${id.toString()}",
  2658. objectFromJson: (res) => OrerDetailModel.fromJson(res),
  2659. onSuccess: onSuccess,
  2660. onError: onError);
  2661. }
  2662. //修改订单信息
  2663. Future updateOrder(data,
  2664. {Function onSuccess, Function(int code, String msg) onError}) async {
  2665. await DioUtils().requestNetwork<OrerDetailModel>(
  2666. Method.put, "${NewApiUrl.user_order_update}",
  2667. params: data,
  2668. objectFromJson: (res) => OrerDetailModel.fromJson(res),
  2669. onSuccess: onSuccess,
  2670. onError: onError);
  2671. }
  2672. // 申请开票
  2673. Future applyInvoice(invoiceInfo,
  2674. {Function onSuccess, Function(int code, String msg) onError}) async {
  2675. await DioUtils().requestNetwork<InvoicesDetailModel>(
  2676. Method.post, "${NewApiUrl.apply_invoice}",
  2677. objectFromJson: (res) => InvoicesDetailModel.fromJson(res),
  2678. params: invoiceInfo,
  2679. onSuccess: onSuccess,
  2680. onError: onError);
  2681. }
  2682. // 发布评论
  2683. Future submitComments(commentInfo,
  2684. {Function onSuccess, Function(int code, String msg) onError}) async {
  2685. await DioUtils().requestNetwork<CommentDetailModel>(
  2686. Method.post, "${NewApiUrl.submit_comments}",
  2687. objectFromJson: (res) => CommentDetailModel.fromJson(res),
  2688. params: commentInfo,
  2689. onSuccess: onSuccess,
  2690. onError: onError);
  2691. }
  2692. ///获取题库收藏列表
  2693. Future getCollectQuestionList(pageNum, pageSize,
  2694. {Function onSuccess, Function(int code, String msg) onError}) async {
  2695. var data = {
  2696. "pageNum": pageNum,
  2697. "pageSize": pageSize,
  2698. "uid": int.parse(SpUtil.getString(Constant.userId))
  2699. };
  2700. await DioUtils().requestNetwork<mixmix.MixModel>(
  2701. Method.post, NewApiUrl.question_collect_list,
  2702. objectFromJson: (res) => mixmix.MixModel.fromJson(res),
  2703. // objectFromJson: (res) => QuestionModel.fromJson(res),
  2704. params: data,
  2705. onSuccess: onSuccess,
  2706. onError: onError);
  2707. }
  2708. ///获取视频收藏列表
  2709. Future getCollectVideoList(pageNum, pageSize,
  2710. {Function onSuccess, Function(int code, String msg) onError}) async {
  2711. var data = {
  2712. "pageNum": pageNum,
  2713. "pageSize": pageSize,
  2714. "uid": int.parse(SpUtil.getString(Constant.userId))
  2715. };
  2716. await DioUtils().requestNetwork<mixmix.MixModel>(
  2717. Method.post, NewApiUrl.video_collect_list,
  2718. objectFromJson: (res) => mixmix.MixModel.fromJson(res),
  2719. // objectFromJson: (res) => QuestionModel.fromJson(res),
  2720. params: data,
  2721. onSuccess: onSuccess,
  2722. onError: onError);
  2723. }
  2724. ///获取职位收藏列表
  2725. Future getCollectPositionList(pageNum, pageSize,
  2726. {Function onSuccess, Function(int code, String msg) onError}) async {
  2727. var data = {
  2728. "pageNum": pageNum,
  2729. "pageSize": pageSize,
  2730. "uid": int.parse(SpUtil.getString(Constant.userId))
  2731. };
  2732. await DioUtils().requestNetwork<mixmix.MixModel>(
  2733. Method.post, NewApiUrl.position_collect_list,
  2734. objectFromJson: (res) => mixmix.MixModel.fromJson(res),
  2735. // objectFromJson: (res) => QuestionModel.fromJson(res),
  2736. params: data,
  2737. onSuccess: onSuccess,
  2738. onError: onError);
  2739. }
  2740. ///获取商品收藏列表
  2741. Future getCollectProductList(pageNum, pageSize,
  2742. {Function onSuccess, Function(int code, String msg) onError}) async {
  2743. var data = {
  2744. "pageNum": pageNum,
  2745. "pageSize": pageSize,
  2746. "uid": int.parse(SpUtil.getString(Constant.userId))
  2747. };
  2748. await DioUtils().requestNetwork<mixmix.MixModel>(
  2749. Method.post, NewApiUrl.product_collect_list,
  2750. objectFromJson: (res) => mixmix.MixModel.fromJson(res),
  2751. // objectFromJson: (res) => QuestionModel.fromJson(res),
  2752. params: data,
  2753. onSuccess: onSuccess,
  2754. onError: onError);
  2755. }
  2756. // 提交申诉
  2757. Future submitAppeal(data,
  2758. {Function onSuccess, Function(int code, String msg) onError}) async {
  2759. print(data);
  2760. var applyInfo = {
  2761. "appealerId": int.parse(SpUtil.getString(Constant.userId)),
  2762. "dataId": data['dataId'],
  2763. "content": data['content'],
  2764. "imgs": data['imgs']
  2765. };
  2766. await DioUtils().requestNetwork<RepresentationDetailModel>(
  2767. Method.post, "${NewApiUrl.add_appeal}",
  2768. objectFromJson: (res) => RepresentationDetailModel.fromJson(res),
  2769. params: applyInfo,
  2770. onSuccess: onSuccess,
  2771. onError: onError);
  2772. }
  2773. // 用户确认诊单
  2774. Future userConfirmOrder(id,
  2775. {Function onSuccess, Function(int code, String msg) onError}) async {
  2776. await DioUtils().requestNetwork<dynamic>(
  2777. Method.get, "${NewApiUrl.user_make_sure_case}?id=${id.toString()}",
  2778. onSuccess: onSuccess, onError: onError);
  2779. }
  2780. // 专家报价
  2781. Future quote(data,
  2782. {Function onSuccess, Function(int code, String msg) onError}) async {
  2783. await DioUtils().requestNetwork<dynamic>(Method.post, "${NewApiUrl.quote}",
  2784. params: data, onSuccess: onSuccess, onError: onError);
  2785. }
  2786. // 专家打卡
  2787. Future chargeToClock(data,
  2788. {Function onSuccess, Function(int code, String msg) onError}) async {
  2789. await DioUtils().requestNetwork<dynamic>(
  2790. Method.post, "${NewApiUrl.chargeToClock}",
  2791. params: data, onSuccess: onSuccess, onError: onError);
  2792. }
  2793. // 专家确认订单
  2794. Future chargeMakeSureCase(data,
  2795. {Function onSuccess, Function(int code, String msg) onError}) async {
  2796. await DioUtils().requestNetwork<dynamic>(
  2797. Method.post, "${NewApiUrl.chargeMakeSureCase}",
  2798. params: data, onSuccess: onSuccess, onError: onError);
  2799. }
  2800. // 专家确认订单
  2801. Future userToClock(id,
  2802. {Function onSuccess, Function(int code, String msg) onError}) async {
  2803. await DioUtils().requestNetwork<dynamic>(
  2804. Method.get, "${NewApiUrl.userToClock}?id=${id.toString()}",
  2805. onSuccess: onSuccess, onError: onError);
  2806. }
  2807. // 问题归档
  2808. Future questionCollect(data,
  2809. {Function onSuccess, Function(int code, String msg) onError}) async {
  2810. await DioUtils().requestNetwork<dynamic>(
  2811. Method.post, "${NewApiUrl.question_collect}",
  2812. params: data, onSuccess: onSuccess, onError: onError);
  2813. }
  2814. // 是否是专家和VIP
  2815. Future getIsVipOrExpert(
  2816. {Function onSuccess, Function(int code, String msg) onError}) async {
  2817. await DioUtils().requestNetwork<String>(
  2818. Method.post, "${NewApiUrl.vipOrExpert}${SpUtil.getString(Constant.userId)}",
  2819. onSuccess: onSuccess, onError: onError);
  2820. }
  2821. // 修改用户Vip等级
  2822. Future updateVip(appRoleId,
  2823. {Function onSuccess, Function(int code, String msg) onError}) async {
  2824. var data = {
  2825. "userId": int.parse(SpUtil.getString(Constant.userId)),
  2826. "appRoleId": appRoleId,
  2827. };
  2828. await DioUtils().requestNetwork<dynamic>(
  2829. Method.post, "${NewApiUrl.update_vip}",
  2830. params: data, onSuccess: onSuccess, onError: onError);
  2831. }
  2832. // 获取vip等级和对应权限
  2833. Future getMemberAllMenu(
  2834. {Function onSuccess, Function(int code, String msg) onError}) async {
  2835. await DioUtils().requestNetwork<PrivilegeModel>(
  2836. Method.get, "${NewApiUrl.getMemberAllMenu}",
  2837. objectFromJson: (res) => PrivilegeModel.fromJson(res),
  2838. isList: true,
  2839. onSuccessList: onSuccess,
  2840. onError: onError);
  2841. }
  2842. // 根据用户角色获取用户权益
  2843. Future getAllMenu(levelId,
  2844. {Function onSuccess, Function(int code, String msg) onError}) async {
  2845. await DioUtils().requestNetwork<MenuList>(
  2846. Method.get, "${NewApiUrl.getAllMenu}?levelId=${levelId}",
  2847. objectFromJson: (res) => MenuList.fromJson(res),
  2848. isList: true,
  2849. onSuccessList: onSuccess,
  2850. onError: onError);
  2851. }
  2852. // 创建充值记录
  2853. Future createRecharge(
  2854. {int payType,
  2855. String productPrice,
  2856. String productName,
  2857. String memo,
  2858. Function onSuccess,
  2859. Function(int code, String msg) onError}) async {
  2860. await DioUtils()
  2861. .requestNetwork<String>(Method.post, "${NewApiUrl.createRecharge}",
  2862. params: {
  2863. "payType": payType,
  2864. "productPrice": productPrice,
  2865. "productName": productName,
  2866. "memo": memo,
  2867. "userId": int.parse(SpUtil.getString(Constant.userId)),
  2868. },
  2869. onSuccess: onSuccess,
  2870. onError: onError);
  2871. }
  2872. // 提现
  2873. Future getInsetWithdrwa(
  2874. {amount,
  2875. type,
  2876. Function onSuccess,
  2877. Function(int code, String msg) onError}) async {
  2878. await DioUtils()
  2879. .requestNetwork<String>(Method.post, "${NewApiUrl.insetWithdrwa}",
  2880. params: {
  2881. "type": type,
  2882. "amount": amount,
  2883. "userId": int.parse(SpUtil.getString(Constant.userId)),
  2884. },
  2885. onSuccess: onSuccess,
  2886. onError: onError);
  2887. }
  2888. // 支付宝支付-用户充值
  2889. Future alipayRecharge(
  2890. {String orders,
  2891. Function onSuccess,
  2892. Function(int code, String msg) onError}) async {
  2893. await DioUtils()
  2894. .requestNetwork<String>(Method.post, NewApiUrl.alipayRecharge,
  2895. params: {
  2896. "orders": orders,
  2897. },
  2898. onSuccess: onSuccess,
  2899. onError: onError);
  2900. }
  2901. // wx支付-用户充值
  2902. Future alipayRechargewx(
  2903. {String orders,
  2904. Function onSuccess,
  2905. Function(int code, String msg) onError}) async {
  2906. await DioUtils()
  2907. .requestNetwork<Map>(Method.post, NewApiUrl.alipayRechargewx,
  2908. params: {
  2909. "orders": orders,
  2910. },
  2911. onSuccess: onSuccess,
  2912. onError: onError);
  2913. }
  2914. // 支付宝支付-用户打赏
  2915. Future alipayReward(
  2916. {String orders,
  2917. int rewardType,
  2918. String payway,
  2919. String reawrdMoney,
  2920. Function onSuccess,
  2921. Function(int code, String msg) onError}) async {
  2922. await DioUtils().requestNetwork<String>(Method.post, NewApiUrl.alipayReward,
  2923. params: {
  2924. "orders": orders,
  2925. "rewardType": rewardType,
  2926. "payway": payway,
  2927. "reawrdMoney": reawrdMoney,
  2928. "userId": int.parse(SpUtil.getString(Constant.userId)),
  2929. },
  2930. onSuccess: onSuccess,
  2931. onError: onError);
  2932. }
  2933. // 微信支付-用户打赏
  2934. Future wxReward(
  2935. {String orders,
  2936. int rewardType,
  2937. String payway,
  2938. String reawrdMoney,
  2939. Function onSuccess,
  2940. Function(int code, String msg) onError}) async {
  2941. await DioUtils().requestNetwork<Map>(Method.post, NewApiUrl.wxReward,
  2942. params: {
  2943. "orders": orders,
  2944. "rewardType": rewardType,
  2945. "payway": payway,
  2946. "reawrdMoney": reawrdMoney,
  2947. "userId": int.parse(SpUtil.getString(Constant.userId)),
  2948. },
  2949. onSuccess: onSuccess,
  2950. onError: onError);
  2951. }
  2952. // 支付宝支付-VIP
  2953. Future getRechargeVIP(
  2954. {String orders,
  2955. Function onSuccess,
  2956. Function(int code, String msg) onError}) async {
  2957. await DioUtils().requestNetwork<String>(Method.post, NewApiUrl.rechargeVIP,
  2958. params: {
  2959. "orders": orders,
  2960. "userId": int.parse(SpUtil.getString(Constant.userId)),
  2961. },
  2962. onSuccess: onSuccess,
  2963. onError: onError);
  2964. }
  2965. // wx支付-VIP
  2966. Future getRechargeVIPwx(
  2967. {String orders,
  2968. Function onSuccess,
  2969. Function(int code, String msg) onError}) async {
  2970. await DioUtils().requestNetwork<Map>(Method.post, NewApiUrl.rechargeVIPwx,
  2971. params: {
  2972. "orders": orders,
  2973. "userId": int.parse(SpUtil.getString(Constant.userId)),
  2974. },
  2975. onSuccess: onSuccess,
  2976. onError: onError);
  2977. }
  2978. // 邀请成为其他人下线
  2979. Future getUserRebates(id,
  2980. {String orders,
  2981. Function onSuccess,
  2982. Function(int code, String msg) onError}) async {
  2983. await DioUtils().requestNetwork<String>(Method.post, NewApiUrl.userRebates,
  2984. params: {
  2985. "userId": id,
  2986. "lowerUserId": SpUtil.getString(Constant.userId),
  2987. },
  2988. onSuccess: onSuccess,
  2989. onError: onError);
  2990. }
  2991. // 申请成为专家
  2992. Future applyExperts(data,
  2993. {Function onSuccess, Function(int code, String msg) onError}) async {
  2994. await DioUtils().requestNetwork<String>(Method.post, NewApiUrl.applyExperts,
  2995. params: data, onSuccess: onSuccess, onError: onError);
  2996. }
  2997. //申请专家详情
  2998. Future getBecomeMasterDetail(
  2999. {Function onSuccess, Function(int code, String msg) onError}) async {
  3000. await DioUtils().requestNetwork<BecomeModel>(
  3001. Method.get, "${NewApiUrl.becomeMasterDetail}${SpUtil.getString(Constant.userId)}",
  3002. objectFromJson: (res) => BecomeModel.fromJson(res),
  3003. onSuccess: onSuccess,
  3004. onError: onError);
  3005. }
  3006. //申请专家编辑
  3007. Future updateBecomeMaster(obj,
  3008. {Function onSuccess, Function(int code, String msg) onError}) async {
  3009. await DioUtils().requestNetwork<String>(
  3010. Method.put, "${NewApiUrl.becomeMasterUpdate}",
  3011. params: obj, onSuccess: onSuccess, onError: onError);
  3012. }
  3013. //更新用户权限
  3014. Future upDataUserLogin(
  3015. {Function onSuccess, Function(int code, String msg) onError}) async {
  3016. await DioUtils()
  3017. .requestNetwork<UserEntity>(Method.get, "${NewApiUrl.updataUserLoginInfo}?userId=${SpUtil.getString(Constant.userId)}",
  3018. objectFromJson: (res) => UserEntity.fromJsonMap(res),
  3019. onSuccess: onSuccess,
  3020. onError: onError);
  3021. }
  3022. //判断是否要定时传当前位置
  3023. Future isDelayAddress(
  3024. {Function onSuccess, Function(int code, String msg) onError}) async {
  3025. await DioUtils().requestNetwork<Map>(
  3026. Method.get, "${NewApiUrl.isDelayAddressUrl}",
  3027. onSuccess: onSuccess,
  3028. onError: onError);
  3029. }
  3030. //定时传当前位置
  3031. Future startDelayAddress(data,
  3032. {Function onSuccess, Function(int code, String msg) onError}) async {
  3033. await DioUtils().requestNetwork<String>(
  3034. Method.post, "${NewApiUrl.startDelayAddressUrl}",
  3035. params: data,
  3036. onSuccess: onSuccess,
  3037. onError: onError);
  3038. }
  3039. }