OtherTradingBankProxy.lua 87 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250
  1. local RemoteProxy = requireProxy("remote/RemoteProxy")
  2. local OtherTradingBankProxy = class("OtherTradingBankProxy", RemoteProxy)
  3. OtherTradingBankProxy.NAME = global.ProxyTable.OtherTradingBankProxy
  4. local host =--[[release]] "https://exchange-api-pro.jyh.aml52.com"--[[pre]] --[["http://exchange-api-pre.jyh.aml52.com"]]--[[debug]] --[["http://exchange-api.jyh.aml52.com"]]
  5. local aes256key = --[[release]] "tz5XGiTqcK4ZwGaIdY33sxk4nwvGN40o"--[[pre]] --[["dujXZ0sE4FOUUy59aC3i1czXFgx7eD8W"]] --[[debug]] --[["zKlcyp4S4zt4jKMOMe4RFwL0Jy2qPaPc"]]
  6. local cjson = require("cjson")
  7. function OtherTradingBankProxy:ctor()
  8. OtherTradingBankProxy.super.ctor(self)
  9. self.m_userData = nil
  10. self.m_moneyData = {}
  11. self.m_yzToken = nil
  12. self.m_http_layer = {}
  13. self.m_mobile = nil
  14. self.m_uid = nil
  15. self.AuthProxy = global.Facade:retrieveProxy(global.ProxyTable.AuthProxy)
  16. self.loginProxy = global.Facade:retrieveProxy(global.ProxyTable.Login)
  17. self.m_tradingStatus = false --交易行开启状态
  18. self.m_gameToken = nil
  19. self.m_funcValues = {}
  20. self.m_funcIndex = 1
  21. self.HelpURL = {
  22. "http://charge-api.996box.com/help.txt", -- 售卖help
  23. "http://charge-api.996box.com/help.txt", -- 待入账help
  24. "http://charge-api.996box.com/help.txt", -- 唯一码help
  25. "http://charge-api.996box.com/help.txt", -- 合作协议
  26. }
  27. self.PrivacyPolicyList = {
  28. "https://kdocs.cn/l/ckeZ232XYBbd", --用户隐私协议
  29. "https://kdocs.cn/l/co9EgLjV3V5e", --儿童隐私保护指引
  30. "https://kdocs.cn/l/clplbS9gU28X", --个人信息收集清单
  31. "https://kdocs.cn/l/caVbpVBTMhku", --用户服务协议
  32. "https://kdocs.cn/l/ckTCV5fNIp3V", --第三方信息共享清单
  33. }
  34. self.wxCustomerServiceLink = "" --微信客服链接
  35. self.m_OnlyOneID = nil --唯一码
  36. self.m_outTime = 8 -- 商品过期时间
  37. self._scrollCacheData = {}
  38. self._scrollCurData = {}
  39. self._scrollCacheCount = 0
  40. self._scrollCacheCurCount = 0
  41. self._timeStep = 4
  42. self._scrollScheduleID = nil
  43. self._isShowCrossServerCommodity = 1 --展示跨区商品
  44. self._environment = 2
  45. self.androidUrl = ""
  46. self.iosUrl = ""
  47. self.publishOpen = 0 -- 寄售按钮是否打开
  48. self.publishKey = "" -- 寄售key
  49. self.publishKeyValidTime = 1800 -- 寄售key有效时间 30分钟
  50. self.publishLockID = 0 -- 寄售冻结ID
  51. self.publishTableData = "" -- 寄售返回的图片地址和信息
  52. self.sdkChannel = "" -- 当前包 SDK渠道号
  53. SL:Schedule(
  54. function()
  55. self.publishKeyValidTime = self.publishKeyValidTime - 1
  56. if self.publishKeyValidTime <= 0 then
  57. self.publishKeyValidTime = 0
  58. end
  59. end,
  60. 1
  61. )
  62. ---------
  63. local currentModule = global.L_ModuleManager:GetCurrentModule()
  64. local moduleGameEnv = currentModule:GetGameEnv()
  65. local environment = moduleGameEnv:GetCustomDataByKey("environment")
  66. environment = tonumber(environment) or 2 -- 0 debug 1 pre 2 pro
  67. self._environment = environment
  68. local aes256keyList = {"zKlcyp4S4zt4jKMOMe4RFwL0Jy2qPaPc", "dujXZ0sE4FOUUy59aC3i1czXFgx7eD8W", "tz5XGiTqcK4ZwGaIdY33sxk4nwvGN40o"}
  69. aes256key = aes256keyList[environment + 1]
  70. local exchangeAppId = moduleGameEnv:GetCustomDataByKey("exchangeAppId")
  71. local exchangeSecretKey = moduleGameEnv:GetCustomDataByKey("exchangeSecretKey")
  72. dump(exchangeAppId,"exchangeAppId___")
  73. dump(exchangeSecretKey,"exchangeSecretKey___")
  74. local exchangeDomain = moduleGameEnv:GetCustomDataByKey("exchangeDomain")
  75. dump(exchangeDomain,"exchangeDomain___")
  76. if exchangeAppId and exchangeAppId ~= "" and exchangeSecretKey and exchangeSecretKey ~= "" and global.OtherTradingBank then
  77. self.appid = exchangeAppId
  78. self.secret = self:Aes256DecodeSecret(exchangeSecretKey)
  79. dump(self.secret,"self.secret__")
  80. host = exchangeDomain
  81. self:initReportParam()
  82. self:initSDK()
  83. end
  84. end
  85. --当前包 版本渠道号
  86. function OtherTradingBankProxy:setSdkChannel(id)
  87. self.sdkChannel = id
  88. end
  89. function OtherTradingBankProxy:getSdkChannel()
  90. return self.sdkChannel
  91. end
  92. --寄售返回的图片地址和信息
  93. function OtherTradingBankProxy:getPublishTableData()
  94. return self.publishTableData
  95. end
  96. function OtherTradingBankProxy:setPublishTableData(data)
  97. self.publishTableData = data
  98. end
  99. --冻结寄售ID
  100. function OtherTradingBankProxy:getPublishLockID()
  101. return self.publishLockID
  102. end
  103. function OtherTradingBankProxy:setPublishLockID(id)
  104. self.publishLockID = id
  105. end
  106. --寄售key
  107. function OtherTradingBankProxy:getPublishKey()
  108. return self.publishKey
  109. end
  110. function OtherTradingBankProxy:setPublishKey(key)
  111. self.publishKey = key
  112. end
  113. --寄售按钮是否打开
  114. function OtherTradingBankProxy:getPublishOpen()
  115. return self.publishOpen
  116. end
  117. function OtherTradingBankProxy:setPublishOpen(open)
  118. self.publishOpen = open
  119. end
  120. function OtherTradingBankProxy:setAndroidWeb(url)
  121. self.androidUrl = url
  122. end
  123. function OtherTradingBankProxy:setIosWeb(url)
  124. self.iosUrl = url
  125. end
  126. function OtherTradingBankProxy:getAndroidWeb()
  127. return self.androidUrl
  128. end
  129. function OtherTradingBankProxy:getIosWeb()
  130. return self.iosUrl
  131. end
  132. --寄售key有效时间 30分钟
  133. function OtherTradingBankProxy:getPublishKeyValidTime()
  134. return self.publishKeyValidTime
  135. end
  136. function OtherTradingBankProxy:setPublishKeyValidTime(time)
  137. self.publishKeyValidTime = time
  138. end
  139. function OtherTradingBankProxy:getisShowCrossServerCommodity()
  140. return self._isShowCrossServerCommodity
  141. end
  142. function OtherTradingBankProxy:getOutTime()
  143. return self.m_outTime
  144. end
  145. function OtherTradingBankProxy:setOutTime(time)
  146. self.m_outTime = time
  147. end
  148. function OtherTradingBankProxy:getOnlyOneID()
  149. return self.m_OnlyOneID
  150. end
  151. function OtherTradingBankProxy:setOnlyOneID(id)
  152. self.m_OnlyOneID = id
  153. end
  154. function OtherTradingBankProxy:getOpenStatus()
  155. return self.m_tradingStatus
  156. end
  157. function OtherTradingBankProxy:setOpenStatus(isOpen)
  158. self.m_tradingStatus = isOpen
  159. end
  160. --n2g
  161. function OtherTradingBankProxy:callFunc(index, jsonString)
  162. dump({index, jsonString},"callFunc____")
  163. if index == -1 or index == "-1" then --h5接口
  164. local json = cjson.decode(jsonString)
  165. if json.action == "Capture" then
  166. global.Facade:sendNotification(global.NoticeTable.TradingBank_other_Capture)
  167. elseif json.action == "IsInSafeArea" then
  168. self:IsInSafeArea()
  169. elseif json.action == "GoToRole" then
  170. if global.gameWorldController then
  171. global.gameWorldController:OnGameLeaveWorld()
  172. end
  173. elseif json.action == "GoToServer" then
  174. global.Facade:sendNotification( global.NoticeTable.RestartGame )
  175. elseif json.action == "gameRecvDataFromH5" then--收到h5下发的内容再去返回给h5
  176. dump(json.jsonString,"gameRecvDataFromH5")
  177. local fromh5 = cjson.decode(json.jsonString)
  178. if fromh5.action == "screenshots" then
  179. if fromh5.type and (fromh5.type == "role" or fromh5.type == "prop") then
  180. global.Facade:sendNotification(global.NoticeTable.TradingBank_other_Capture,{type = fromh5})
  181. end
  182. end
  183. end
  184. else
  185. if self.m_funcValues[index] then
  186. if self.m_funcValues[index].func and jsonString then
  187. self.m_funcValues[index].func(jsonString)
  188. end
  189. if not self.m_funcValues[index].isNotNeedLoading then
  190. global.Facade:sendNotification(global.NoticeTable.Layer_LoadingBar_Close)
  191. end
  192. self.m_funcValues[index] = nil
  193. end
  194. end
  195. end
  196. --预留h5和游戏通讯接口
  197. function OtherTradingBankProxy:sendDataToH5(data,action)
  198. local params = {
  199. action = "",
  200. isH5 = true,
  201. params = {
  202. },
  203. }
  204. if action == "screenshots" then
  205. params.action = "sendDataToH5"
  206. local isHero = false
  207. local HeroPropertyProxy = global.Facade:retrieveProxy(global.ProxyTable.HeroPropertyProxy)
  208. if HeroPropertyProxy:IsHeroOpen() then
  209. local PlayerPropertyProxy = global.Facade:retrieveProxy(global.ProxyTable.PlayerProperty)
  210. if PlayerPropertyProxy:getIsMakeHero() then
  211. if HeroPropertyProxy:HeroIsLogin() then
  212. isHero = true
  213. end
  214. end
  215. end
  216. local res = {}
  217. if isHero then
  218. res = {
  219. uid = self.AuthProxy:GetUID(),
  220. game_id = self.AuthProxy:getGameId(),
  221. server_id = self.loginProxy:GetSelectedServerId(),
  222. server_name = self.loginProxy:GetSelectedServerName(),
  223. role_id = global.playerManager:GetMainPlayerID(),
  224. role = self.PlayerProperty:GetName(),
  225. sex = self.PlayerProperty:GetRoleSex(),
  226. vip = 0,
  227. role_level = self.PlayerProperty:GetRoleLevel(),
  228. ablity = self.PlayerProperty:GetRoleAttByAttType(GUIFunction:PShowAttType().Max_ATK),
  229. role_type = self.PlayerProperty:GetRoleJob(),
  230. images = data,
  231. game_type = 1,
  232. hero_role_id = self.HeroPropertyProxy:GetRoleUID(), --英雄角色ID
  233. hero_name = self.HeroPropertyProxy:GetName(), --英雄角色名字
  234. hero_sex = self.HeroPropertyProxy:GetRoleSex(), --英雄性别
  235. hero_level = self.HeroPropertyProxy:GetRoleLevel(), --英雄角色等级
  236. hero_role_type = self.HeroPropertyProxy:GetRoleJob(), --英雄职业
  237. hero_rein_lv = self.HeroPropertyProxy:GetRoleReinLv(), --转生
  238. hero_ability = self.HeroPropertyProxy:GetRoleAttByAttType(GUIFunction:PShowAttType().Max_ATK)--英雄战力
  239. }
  240. else
  241. res = {
  242. uid = self.AuthProxy:GetUID(),
  243. game_id = self.AuthProxy:getGameId(),
  244. server_id = self.loginProxy:GetSelectedServerId(),
  245. server_name = self.loginProxy:GetSelectedServerName(),
  246. role_id = global.playerManager:GetMainPlayerID(),
  247. role = self.PlayerProperty:GetName(),
  248. sex = self.PlayerProperty:GetRoleSex(),
  249. vip = 0,
  250. role_level = self.PlayerProperty:GetRoleLevel(),
  251. ablity = self.PlayerProperty:GetRoleAttByAttType(GUIFunction:PShowAttType().Max_ATK),
  252. role_type = self.PlayerProperty:GetRoleJob(),
  253. images = data,
  254. game_type = 1
  255. }
  256. end
  257. params.params.jsonStr = cjson.encode({action = action, data = res })
  258. end
  259. dump(params,"sendDataToH5___")
  260. self:addToCallFunc(params)
  261. end
  262. function OtherTradingBankProxy:addToCallFunc(params, func, layer, isNotNeedLoading)
  263. dump(params,"addToCallFunc___")
  264. if params.isH5 then
  265. local index = self:getFuncIndex()
  266. params.index = index
  267. local NativeBridgeProxy = global.Facade:retrieveProxy(global.ProxyTable.NativeBridgeProxy)
  268. NativeBridgeProxy:GN_TradingBank_Interface(params)
  269. else
  270. if layer then
  271. if not self:findLayer(layer) then
  272. self:addLayer(layer)
  273. end
  274. end
  275. if not isNotNeedLoading then
  276. global.Facade:sendNotification(global.NoticeTable.Layer_LoadingBar_Open)
  277. end
  278. local index = self:getFuncIndex()
  279. params.index = index
  280. local callback = function(jsonStr)
  281. -- if _DEBUG then
  282. -- if ShowSystemTips then
  283. -- ShowSystemTips((params.action or "")..":"..jsonStr)
  284. -- end
  285. -- end
  286. if layer then
  287. if not self:findLayer(layer) then
  288. return
  289. end
  290. end
  291. local json = cjson.decode(jsonStr)
  292. if json.code == 50003 or json.code == 50000 then --token过期
  293. if not (params.action == "takeBackRole" or params.action == "onShelfLimit") then
  294. self.m_yzToken = ""
  295. -- global.Facade:sendNotification(global.NoticeTable.SystemTips, json.msg)
  296. self:Login1_2(function(code, msg)--重新登录操作
  297. if code == 200 then
  298. self:addToCallFunc(params, func, layer, isNotNeedLoading)
  299. else
  300. ShowSystemTips(msg or "")
  301. end
  302. end)
  303. return
  304. end
  305. end
  306. func(json.code, json.data, json.msg)
  307. end
  308. self.m_funcValues[index] = { func = callback, isNotNeedLoading = isNotNeedLoading }
  309. local NativeBridgeProxy = global.Facade:retrieveProxy(global.ProxyTable.NativeBridgeProxy)
  310. NativeBridgeProxy:GN_TradingBank_Interface(params)
  311. end
  312. end
  313. function OtherTradingBankProxy:getFuncIndex()
  314. self.m_funcIndex = self.m_funcIndex + 1
  315. return self.m_funcIndex
  316. end
  317. function OtherTradingBankProxy:init()
  318. self.MoneyProxy = global.Facade:retrieveProxy(global.ProxyTable.MoneyProxy)
  319. self.MoneyType = self.MoneyProxy.MoneyType
  320. self.PlayerProperty = global.Facade:retrieveProxy(global.ProxyTable.PlayerProperty)
  321. self.HeroPropertyProxy = global.Facade:retrieveProxy(global.ProxyTable.HeroPropertyProxy)
  322. end
  323. function OtherTradingBankProxy:getGameToken()
  324. --"noToken"--
  325. return self.m_gameToken or ""
  326. end
  327. function OtherTradingBankProxy:setGameToken(token)
  328. self.m_gameToken = token
  329. end
  330. function OtherTradingBankProxy:getToken()
  331. return self.m_yzToken or ""
  332. end
  333. function OtherTradingBankProxy:setToken(token)
  334. self.m_yzToken = token
  335. end
  336. function OtherTradingBankProxy:getMobile()
  337. return self.m_mobile
  338. end
  339. function OtherTradingBankProxy:setMobile(phone)
  340. self.m_mobile = phone
  341. end
  342. function OtherTradingBankProxy:onRegister()
  343. OtherTradingBankProxy.super.onRegister(self)
  344. end
  345. function OtherTradingBankProxy:RegisterMsgHandler()
  346. OtherTradingBankProxy.super.RegisterMsgHandler(self)
  347. local msgType = global.MsgType
  348. --返回登陆
  349. if global.OtherTradingBank then
  350. LuaRegisterMsgHandler(msgType.MSG_SC_SELLROLESUCCESS_LOGOUT, handler(self, self.handle_MSG_SC_SELLROLESUCCESS_LOGOUT))
  351. end
  352. LuaRegisterMsgHandler(msgType.MSG_SC_LYTOKEN, handler(self, self.handle_MSG_SC_LYTOKEN)) -- token
  353. end
  354. function OtherTradingBankProxy:handle_MSG_SC_LYTOKEN(msg)
  355. local header = msg:GetHeader()
  356. local msgLen = msg:GetDataLength()
  357. if msgLen <= 0 then
  358. return nil
  359. end
  360. local token = msg:GetData():ReadString(msgLen)
  361. dump(token, "token___")
  362. dump(global.OtherTradingBankH5,"global.OtherTradingBankH5____")
  363. self.m_yzToken = nil --需要清理一下交易行token
  364. self.m_gameToken = token
  365. self:getTradingBankStatus({}, function(code, data, msg)
  366. if code == 200 then
  367. if global.OtherTradingBankH5 then
  368. if self:getGameToken() == "" then
  369. return
  370. end
  371. self:setGameTokenToH5(token)
  372. end
  373. end
  374. end, true)
  375. end
  376. function OtherTradingBankProxy:handle_MSG_SC_SELLROLESUCCESS_LOGOUT(msg)
  377. if global.IsVisitor then
  378. return
  379. end
  380. if self:getPublishOpen() == 1 then -- vivo下寄售角色不需要
  381. return
  382. end
  383. local outtime = self:getOutTime()
  384. local tipsStr = string.format(GET_STRING(600000457), outtime, "%s")
  385. global.Facade:sendNotification(global.NoticeTable.Layer_TradingBankTipsLayer_Open_other, { callback = function(code)
  386. if code == 1 then
  387. global.Facade:sendNotification(global.NoticeTable.Layer_TradingBankTipsLayer_Close_other)
  388. global.gameWorldController:OnGameLeaveWorld()
  389. end
  390. end, notcancel = true, exitTime = 30, txt = tipsStr, btntext = { GET_STRING(800802) } })
  391. end
  392. function OtherTradingBankProxy:reqUserData(layer, func)--请求用户数据
  393. local url = host.."/user/df/api/user/v1/userInfo"
  394. self:HTTPRequest(url, func, {}, nil, layer)
  395. end
  396. --请求 角色码(寄售key)
  397. function OtherTradingBankProxy:getPublishKeyUsing(layer, func)
  398. local url = host.."/exchange/df/api/exchange/v1/makePrePublishKey"
  399. local val = {
  400. gameType = 1,
  401. ability = self.PlayerProperty:GetRoleAttByAttType(GUIFunction:PShowAttType().Max_ATK),
  402. gameId = tonumber(self.AuthProxy:getGameId()),
  403. gameUid = self.AuthProxy:GetUID(), --用户标识 string
  404. hero = self.HeroPropertyProxy:GetName(), --英雄名 string
  405. heroAbility = self.HeroPropertyProxy:GetRoleAttByAttType(GUIFunction:PShowAttType().Max_ATK), --英雄战力 integer(int64)
  406. heroLevel = tonumber(self.HeroPropertyProxy:GetRoleLevel()), --英雄等级 integer(int64)
  407. heroRoleId = self.HeroPropertyProxy:GetRoleUID(), --英雄id string
  408. heroRoleType = self.HeroPropertyProxy:GetRoleJob(), --英雄职业 integer(int32)
  409. heroSex = self.HeroPropertyProxy:GetRoleSex(), --英雄性别 integer(int32)
  410. role = self.PlayerProperty:GetName(), --角色 string
  411. roleId = self.PlayerProperty:GetRoleUID(), --角色id string
  412. roleLevel = tonumber(self.PlayerProperty:GetRoleLevel()), --角色等级 integer(int64)
  413. roleType = self.PlayerProperty:GetRoleJob(), --角色职业 string
  414. serverId = tonumber(self.loginProxy:GetSelectedServerId()), --服务器id integer(int64)
  415. serverName = self.loginProxy:GetSelectedServerName(), --服务器名 string
  416. sex = self.PlayerProperty:GetRoleSex(), --角色性别 integer(int32)
  417. vip = 0, --角色vip integer(int64)
  418. customerSdkChannel = self:getSdkChannel() --当前包 版本渠道号
  419. }
  420. self:HTTPRequestPost(url, func, val, nil, layer)
  421. end
  422. --请求 "购买key"(账号ID)
  423. function OtherTradingBankProxy:getRoleKey(layer, func)
  424. local val = {
  425. roleId = self.PlayerProperty:GetRoleUID(), --角色id string
  426. serverId = tonumber(self.loginProxy:GetSelectedServerId()) --服务器id integer(int64)
  427. }
  428. local url = host.."/exchange/df/api/exchange/v1/getRoleKey"
  429. self:HTTPRequest(url, func, val, nil, layer)
  430. end
  431. -- 冻结角色 寄售接口拿来的key 在返回给服务器
  432. function OtherTradingBankProxy:lockPublishRole(layer, val, func)
  433. local url = host.."/exchange/df/api/exchange/v1/prePublishLock"
  434. self:HTTPRequestPost(url, func, val, nil, layer)
  435. end
  436. --解冻角色
  437. function OtherTradingBankProxy:unLockPublishRole(layer, data, func)
  438. local PlayerProperty = global.Facade:retrieveProxy(global.ProxyTable.PlayerProperty)
  439. local val = {
  440. roleId = data.roleid,
  441. gameAccount = self.AuthProxy:GetUID()
  442. }
  443. local url = host.."/exchange/pb/api/exchange/v1/prePublishRelease"
  444. self:HTTPRequestPost(url, func, val, nil, layer)
  445. end
  446. function OtherTradingBankProxy:setUserData(data)
  447. dump(data, "setUserData__")
  448. self.m_userData = data
  449. end
  450. function OtherTradingBankProxy:getUserData()
  451. return self.m_userData
  452. end
  453. function OtherTradingBankProxy:setMoneyData(data)
  454. dump(data, "setMoneyData__")
  455. self.m_moneyData = data
  456. end
  457. function OtherTradingBankProxy:getMoneyData()
  458. return self.m_moneyData
  459. end
  460. function OtherTradingBankProxy:LoginOut()
  461. --玩家登出交易重置寄售key
  462. self.publishKey = ""
  463. self.publishKeyValidTime = 0
  464. if not self._isLogin then
  465. return
  466. end
  467. self.m_yzToken = nil
  468. self._isLogin = false
  469. end
  470. function OtherTradingBankProxy:reqYZPhone(layer, phone, yzm, func)--手机登录
  471. local envProxy = global.Facade:retrieveProxy(global.ProxyTable.GameEnvironment)
  472. local packageName = envProxy:GetAPKPackageName()
  473. local val = {
  474. phone = phone,
  475. code = yzm,
  476. gameToken = self:getGameToken(),
  477. serverId = tonumber(self.loginProxy:GetSelectedServerId()),
  478. gameId = tonumber(self.AuthProxy:getGameId()),
  479. packageName = packageName,
  480. }
  481. local url = host.."/user/pb/api/user/v1/phoneLogin"
  482. self:HTTPRequestPost(url, func, val, nil, layer)
  483. end
  484. function OtherTradingBankProxy:openLock(layer, phone, yzm, func)--开启寄售锁
  485. local url = host.."/exchange/df/api/exchange/v1/verifyCode"
  486. local val = {
  487. phone = phone,
  488. code = yzm,
  489. gameToken = self:getGameToken(),
  490. serverId = tonumber(self.loginProxy:GetSelectedServerId()),
  491. gameId = tonumber(self.AuthProxy:getGameId()),
  492. }
  493. self:HTTPRequestPost(url, func, val, nil, layer)
  494. end
  495. --验证码 登录
  496. function OtherTradingBankProxy:reqLoginGetCode(layer, data, func)
  497. local url = host.."/user/pb/api/user/v1/sendSms"
  498. local val = {
  499. smsType = "phoneLogin"
  500. }
  501. for k, v in pairs(data) do
  502. val[k] = v
  503. end
  504. self:HTTPRequestPost(url, func, val, nil, layer)
  505. end
  506. --验证码 寄售锁
  507. function OtherTradingBankProxy:reqGetCode(layer, data, func)
  508. local url = host.."/user/pb/api/user/v1/sendSms"
  509. local val = {
  510. smsType = "verifyCode"
  511. }
  512. for k, v in pairs(data) do
  513. val[k] = v
  514. end
  515. self:HTTPRequestPost(url, func, val, nil, layer)
  516. end
  517. --是否实名
  518. function OtherTradingBankProxy:checkAuthentication(layer, func)
  519. local url = host.."/user/df/api/user/v1/checkAuthentication"
  520. local val = {}
  521. self:HTTPRequest(url, func, val, nil, layer)
  522. end
  523. --卖货币
  524. function OtherTradingBankProxy:sellMoney(layer, data, func)
  525. local url = host.."/exchange/df/api/exchange/v1/publishCoin"
  526. local val = {
  527. uid = self.AuthProxy:GetUID(),
  528. gameId = tonumber(self.AuthProxy:getGameId()),
  529. serverId = tonumber(self.loginProxy:GetSelectedServerId()),
  530. serverName = self.loginProxy:GetSelectedServerName(),
  531. roleId = global.playerManager:GetMainPlayerID(),
  532. role = self.PlayerProperty:GetName(),
  533. vip = 0,
  534. roleLevel = tonumber(self.PlayerProperty:GetRoleLevel()),
  535. token = self:getToken(),
  536. coinId = data.coin_id,
  537. coinNum = data.coin_num,
  538. gameType = 1,
  539. price = data.price,
  540. targetRoleName = data.target_rolename,
  541. desc = "",
  542. title = "",
  543. }
  544. self:HTTPRequestPost(url, func, val, nil, layer)
  545. end
  546. --卖角色
  547. function OtherTradingBankProxy:sellRole(layer, data, func)
  548. local url = host.."/exchange/df/api/exchange/v1/publishAccount"
  549. local val = {
  550. uid = self.AuthProxy:GetUID(),
  551. gameId = self.AuthProxy:getGameId(),
  552. serverId = self.loginProxy:GetSelectedServerId(),
  553. serverName = self.loginProxy:GetSelectedServerName(),
  554. roleId = global.playerManager:GetMainPlayerID(),
  555. role = self.PlayerProperty:GetName(),
  556. sex = self.PlayerProperty:GetRoleSex(),
  557. vip = 0,
  558. roleLevel = self.PlayerProperty:GetRoleLevel(),
  559. ablity = 0, --战力
  560. gameType = 1,
  561. roleType = self.PlayerProperty:GetRoleJob(),
  562. token = self:getToken(),
  563. new_version = global.IsNewBoxSellVersion and 1 or 0, --是否是支持收货验证版本
  564. price = data.price,
  565. attributeImages = data.attribute,
  566. bagImages = data.bag,
  567. clothesImages = data.clothes,
  568. equipImages = data.equip,
  569. skillImages = data.skill,
  570. statusImages = data.status,
  571. titleImages = data.title,
  572. warehouseImages = data.warehouse,
  573. heroAttributeImages = data.hero_attribute,
  574. heroBagImages = data.hero_bag,
  575. heroClothesImages = data.hero_clothes,
  576. heroEquipImages = data.hero_equip,
  577. heroSkillImages = data.hero_skill,
  578. heroStatusImages = data.hero_status,
  579. heroTitleImages = data.hero_title,
  580. desc = "",
  581. targetAccount = data.target_account,
  582. title = "",
  583. }
  584. self:HTTPRequestPost(url, func, val, nil, layer)
  585. end
  586. --装备交易 确定收货
  587. function OtherTradingBankProxy:equipTakeSure(layer, data, func)
  588. local PlayerProperty = global.Facade:retrieveProxy(global.ProxyTable.PlayerProperty)
  589. local val = {
  590. operationCode = data.operationCode,
  591. orderId = data.orderId,
  592. emailId = data.emailId
  593. }
  594. local url = host.."/exchange/pb/api/h5sdk/exchange/v1/itemConfirm"
  595. self:HTTPRequestPost(url, func, val, nil, layer)
  596. end
  597. --装备交易 取消收货
  598. function OtherTradingBankProxy:equipTakeRefuse(layer, data, func)
  599. local PlayerProperty = global.Facade:retrieveProxy(global.ProxyTable.PlayerProperty)
  600. local val = {
  601. operationCode = data.operationCode,
  602. orderId = data.orderId,
  603. emailId = data.emailId
  604. }
  605. local url = host.."/exchange/pb/api/h5sdk/exchange/v1/itemReject"
  606. self:HTTPRequestPost(url, func, val, nil, layer)
  607. end
  608. --获取商品信息
  609. --type 是 int 商品类型 1角色2货币
  610. --role_id 否 int 角色ID 获取指定我商品时传 废弃了
  611. --page 否 int 当前页 不传默认第一页
  612. --pagenum 否 int 每页条数 不传默认10条
  613. --role_type 否 int 角色类型 0战1法2道
  614. --coin_config_id 否 int 货币ID
  615. --order_price 否 string asc 或 desc 价格排序
  616. --order_level
  617. --order_coin_num
  618. function OtherTradingBankProxy:getGoodsInfo(layer, data, func)
  619. dump(data, "getGoodsInfo")
  620. local url = host.."/exchange/df/api/exchange/v1/commodityList"
  621. local val = {
  622. serverId = data.server_id or tonumber(self.loginProxy:GetSelectedServerId()),
  623. roleId = global.playerManager:GetMainPlayerID(),
  624. gameId = self.AuthProxy:getGameId(),
  625. page = data.page,
  626. pagenum = data.pagenum,
  627. type = data.type,
  628. coinConfigId = data.coin_config_id,
  629. orderCoinNum = data.order_coin_num,
  630. orderLevel = data.order_level,
  631. orderPrice = data.order_price,
  632. roleName = data.role_name,
  633. roleType = data.role_type,
  634. curServerId = tonumber(self.loginProxy:GetSelectedServerId())
  635. }
  636. self:HTTPRequest(url, func, val, nil, layer)
  637. end
  638. --获取我的货架 type类型 1角色2货币
  639. function OtherTradingBankProxy:getMyGoodsInfo(layer, data, func)
  640. dump(data, "getMyGoodsInfo")
  641. local url = host.."/exchange/df/api/exchange/v1/myCommodity"
  642. local val = {
  643. uid = self.AuthProxy:GetUID(),
  644. gameId = self.AuthProxy:getGameId(),
  645. roleId = global.playerManager:GetMainPlayerID(),
  646. serverId = self.loginProxy:GetSelectedServerId(),
  647. token = self:getToken(),
  648. page = data.page,
  649. pageNum = data.pagenum
  650. }
  651. self:HTTPRequest(url, func, val, nil, layer)
  652. end
  653. --获取可 上交易行货币
  654. function OtherTradingBankProxy:reqMoneyData(layer, func)
  655. local url = host.."/exchange/pb/api/exchange/v1/coinType"
  656. local val = {
  657. gameId = self.AuthProxy:getGameId(),
  658. }
  659. local callback = function(code, data, msg)
  660. if code == 200 then
  661. self:setMoneyData(data)
  662. end
  663. func(code, data, msg)
  664. end
  665. self:HTTPRequest(url, callback, val, nil, layer)
  666. end
  667. --查询商品信息
  668. function OtherTradingBankProxy:reqcommodityInfo(layer, data, func)
  669. local url = host.."/exchange/df/api/exchange/v1/commodityInfo"
  670. local val = {
  671. commodity_id = data.commodity_id
  672. }
  673. self:HTTPRequest(url, func, val, nil, layer)
  674. end
  675. --查询支付状态
  676. function OtherTradingBankProxy:reqOrderStatus(layer, data, func)
  677. local url = host.."/exchange/df/api/exchange/v1/orderStatus"
  678. local val = {
  679. orderId = data.order_id
  680. }
  681. self:HTTPRequest(url, func, val, nil, layer)
  682. end
  683. --寄售锁 第一次【我的】【货架】【寄售】】验证手机号
  684. function OtherTradingBankProxy:checkConsignmentSwitch(layer, data, func)
  685. local url = host.."/exchange/df/api/exchange/v1/checkConsignmentSwitch"
  686. local val = {
  687. gameId = self.AuthProxy:getGameId(),
  688. serverId = self.loginProxy:GetSelectedServerId(),
  689. }
  690. self:HTTPRequest(url, func, val, nil, layer)
  691. end
  692. --上架
  693. function OtherTradingBankProxy:reqOnShelf(layer, data, func)
  694. local url = host.."/exchange/df/api/exchange/v1/onShelf"
  695. local val = {
  696. commodityId = data.commodity_id
  697. }
  698. self:HTTPRequestPut(url, func, val, nil, layer)
  699. end
  700. --下架
  701. function OtherTradingBankProxy:reqDownShelf(layer, data, func)
  702. local url = host.."/exchange/df/api/exchange/v1/downShelf"
  703. local val = {
  704. commodityId = data.commodity_id
  705. }
  706. self:HTTPRequestPut(url, func, val, nil, layer)
  707. end
  708. --修改价格
  709. function OtherTradingBankProxy:reqModifyPrice(layer, data, func)
  710. local url = host.."/exchange/df/api/exchange/v1/modifyPrice"
  711. local val = {
  712. commodityId = data.commodity_id,
  713. price = data.price
  714. }
  715. self:HTTPRequestPut(url, func, val, nil, layer)
  716. end
  717. --取回
  718. function OtherTradingBankProxy:reqTakeBack(layer, data, func)
  719. local url = host.."/exchange/df/api/exchange/v1/takeBack"
  720. local val = {
  721. commodityId = data.commodity_id
  722. }
  723. self:HTTPRequestPost(url, func, val, nil, layer)
  724. end
  725. -- --删除
  726. -- function OtherTradingBankProxy:reqDelete(layer, data, func)
  727. -- local params = {
  728. -- action = "delCommodity",
  729. -- params = {
  730. -- token = self:getToken(),
  731. -- },
  732. -- }
  733. -- for k, v in pairs(val) do
  734. -- params.params[k] = v
  735. -- end
  736. -- self:addToCallFunc(params,func,layer)
  737. -- end
  738. --查询账号
  739. function OtherTradingBankProxy:reqAccountInfo(layer, data, func)
  740. local url = host.."/exchange/df/api/exchange/v1/takeBack"
  741. local val = {
  742. gameAccount = data.account
  743. }
  744. self:HTTPRequest(url, func, val, nil, layer)
  745. end
  746. function OtherTradingBankProxy:reqRoleInfo(layer, data, func)
  747. local url = host.."/exchange/df/api/exchange/v1/takeBack"
  748. local val = {
  749. gameId = self.AuthProxy:getGameId(),
  750. serverId = self.loginProxy:GetSelectedServerId(),
  751. roleName = data.role_name
  752. }
  753. self:HTTPRequest(url, func, val, nil, layer)
  754. end
  755. --下单
  756. function OtherTradingBankProxy:reqOrderPlace(layer, data, func)
  757. local url = host.."/exchange/df/api/exchange/v1/orderPlace"
  758. local device_t = global.isAndroid and "android" or "ios"
  759. local val = {
  760. commodityId = data.commodity_id,
  761. commodityQty = 1,
  762. deviceType = device_t,
  763. gameId = self.AuthProxy:getGameId(),
  764. roleId = global.playerManager:GetMainPlayerID(),
  765. token = self:getToken(),
  766. uid = self.AuthProxy:GetUID(),
  767. role = self.PlayerProperty:GetName(),
  768. level = self.PlayerProperty:GetRoleLevel(),
  769. serverName = self.loginProxy:GetSelectedServerName(),
  770. serverId = self.loginProxy:GetSelectedServerId(),
  771. tradeId = data.commodity_id,
  772. }
  773. self:HTTPRequestPost(url, func, val, nil, layer)
  774. end
  775. --获取help
  776. function OtherTradingBankProxy:reqHelpText(layer, data, func)
  777. local type = data.type or 1
  778. local url = self.HelpURL[type] or self.HelpURL[1] or ""
  779. if not self:findLayer(layer) then
  780. self:addLayer(layer)
  781. end
  782. dump(url, "url_____")
  783. HTTPRequest(url, function(success, response, code)
  784. dump({ success, response, code }, "reqHelpText__")
  785. if self:findLayer(layer) then
  786. local nosuccess = false
  787. if success then
  788. local data = cjson.decode(response)
  789. dump(data, "help___")
  790. if func then
  791. func(data)
  792. end
  793. -- end
  794. else
  795. nosuccess = true
  796. end
  797. if nosuccess then
  798. local data = {}
  799. data.txt = GET_STRING(600000186)
  800. data.callback = function(res)
  801. end
  802. data.btntext = { GET_STRING(600000139) }
  803. global.Facade:sendNotification(global.NoticeTable.Layer_TradingBankTipsLayer_Open_other, data)
  804. end
  805. end
  806. end
  807. )
  808. end
  809. --取消订单
  810. function OtherTradingBankProxy:reqCancelorder(layer, data, func)
  811. local url = host.."/exchange/df/api/exchange/v1/cancelOrder"
  812. local val = {
  813. orderId = data.order_id
  814. }
  815. self:HTTPRequest(url, func, val, nil, layer)
  816. end
  817. --取回角色
  818. function OtherTradingBankProxy:takeBackRole(layer, data, func)
  819. local url = host.."/exchange/df/api/exchange/v1/takeBackRole"
  820. local val = {
  821. roleId = data.role_id
  822. }
  823. self:HTTPRequestPost(url, func, val, nil, layer)
  824. end
  825. --角色是否有在售货币 等级 充值等
  826. function OtherTradingBankProxy:publishAccountCheck(layer, data, func)
  827. local url = host.."/exchange/df/api/exchange/v1/publishAccountCheck"
  828. local val = {
  829. token = self:getToken(),
  830. uid = self.AuthProxy:GetUID(),
  831. roleId = global.playerManager:GetMainPlayerID(),
  832. gameId = self.AuthProxy:getGameId(),
  833. serverId = tonumber(self.loginProxy:GetSelectedServerId()),
  834. serverName = self.loginProxy:GetSelectedServerName(),
  835. role = self.PlayerProperty:GetName(),
  836. vip = 0,
  837. roleLevel = tonumber(self.PlayerProperty:GetRoleLevel()),
  838. ablity = 0, --战力
  839. gameType = 1,
  840. price = data.price,
  841. roleType = self.PlayerProperty:GetRoleJob(),
  842. sex = self.PlayerProperty:GetRoleSex(),
  843. desc = "",
  844. targetAccount = data.target_account,
  845. new_version = global.IsNewBoxSellVersion and 1 or 0, --是否是支持收货验证版本
  846. }
  847. self:HTTPRequest(url, func, val, nil, layer)
  848. end
  849. --查询卖角色的配置
  850. function OtherTradingBankProxy:reqSellRoleInfo(layer, data, func)
  851. local url = host.."/exchange/pb/api/exchange/v1/sellConfig"
  852. self:HTTPRequest(url, func, data, nil, layer)
  853. end
  854. -- 取回到可寄售间隔 (上架时效)
  855. function OtherTradingBankProxy:reqGetSellCDTime(layer, data, func)
  856. local url = host.."/exchange/pb/api/exchange/v1/onShelfLimit"
  857. self:HTTPRequest(url, func, data, nil, layer)
  858. end
  859. --交易行是否开启
  860. function OtherTradingBankProxy:getTradingBankStatus(data, func, isNotNeedLoading, layer)
  861. local url = host.."/user/pb/api/user/v1/appParam"
  862. local deviceType = 1
  863. if global.isWindows then
  864. deviceType = 3
  865. elseif global.isIOS then
  866. deviceType = 2
  867. end
  868. local val = {
  869. deviceType = deviceType,
  870. serverId = tonumber(self.loginProxy:GetSelectedServerId()),
  871. channelId = SL:GetMetaValue("CHANNEL_ID"),
  872. }
  873. local urlKey = {
  874. "helpFileUrl", -- 售卖help
  875. "extractMemoUrl", -- 待入账help
  876. "onlyCodeMemoUrl", -- 唯一码help
  877. "cooperationAgreementUrl", --合作协议
  878. }
  879. local PrivacyPolicyKey = {
  880. "userPrivacyPolicyUrl", --用户隐私协议
  881. "childPrivacyProtectionGuidelinesUrl", --儿童隐私保护指引
  882. "personalInformationCollectionListUrl", --个人信息收集清单
  883. "userAgreementUrl", --用户服务协议
  884. "thirdPartyInformationSharingListUrl", --第三方信息共享清单
  885. }
  886. local callback = function(code, data, msg)
  887. if code == 200 and data then
  888. for i, v in ipairs(urlKey) do
  889. if data[v] then
  890. self.HelpURL[i] = data[v]
  891. end
  892. end
  893. for i, v in ipairs(PrivacyPolicyKey) do
  894. if data[v] then
  895. self.PrivacyPolicyList[i] = data[v]
  896. end
  897. end
  898. -- if data.appid then
  899. -- self.appid = data.appid
  900. -- end
  901. -- if data.secret then
  902. -- self.secret = data.secret
  903. -- end
  904. if data.isUseH5 and data.isUseH5 == 1 then
  905. global.OtherTradingBankH5 = true
  906. end
  907. --寄售按钮开关or寄售取回按钮 1开 其他不开;
  908. dump(data.openKeyPublish,"openKeyPublish")
  909. self:setPublishOpen(data.openKeyPublish)
  910. self:setAndroidWeb(data.downLoadUrl)
  911. self:setIosWeb(data.h5HomeUrl)
  912. if data.wxCustomerServiceLink then
  913. self.wxCustomerServiceLink = data.wxCustomerServiceLink
  914. end
  915. self._isShowCrossServerCommodity = data.isShowCrossServerCommodity or 1
  916. dump(data,"getTradingBankStatus____")
  917. end
  918. func(code, data, msg)
  919. end
  920. self:HTTPRequest(url, callback, val, nil, layer, isNotNeedLoading)
  921. end
  922. --用户余额
  923. function OtherTradingBankProxy:getUserMoneyBalance(layer, data, func)
  924. local url = host.."/exchange/df/api/exchange/v1/userBalance"
  925. self:HTTPRequest(url, func, data, nil, layer)
  926. end
  927. --唯一码
  928. function OtherTradingBankProxy:getTradeId(layer, data, func)
  929. local url = host.."/exchange/df/api/exchange/v1/getTradeId"
  930. self:HTTPRequest(url, func, data, nil, layer)
  931. end
  932. --提现账户信息
  933. function OtherTradingBankProxy:getExtractAccountInfo(layer, data, func)
  934. local url = host.."/extract/pt/api/extractApply/v1/userInfo"
  935. self:HTTPRequest(url, func, data, nil, layer)
  936. end
  937. --提现配置
  938. function OtherTradingBankProxy:getExtractConfig(layer, data, func)
  939. local url = host.."/extract/pt/api/extractApply/v1/config"
  940. self:HTTPRequest(url, func, data, nil, layer)
  941. end
  942. --提现红点
  943. function OtherTradingBankProxy:getExtractRedPoint(layer, data, func)
  944. local url = host.."/extract/pt/api/extractApply/v1/redPoint"
  945. self:HTTPRequest(url, func, data, nil, layer)
  946. end
  947. --提现申请
  948. function OtherTradingBankProxy:reqExtractApplyFor(layer, data, func)
  949. local url = host.."/extract/pt/api/extractApply/v1/save"
  950. local device_t = global.isAndroid and "android" or "ios"
  951. local val = {
  952. serverId = tonumber(self.loginProxy:GetSelectedServerId()),
  953. gameId = tonumber(self.AuthProxy:getGameId()),
  954. device = device_t,
  955. alipayAccount = data.account,
  956. money = (tonumber(data.money) or 0) * 100
  957. }
  958. self:HTTPRequestPost(url, func, val, nil, layer)
  959. end
  960. --提现记录
  961. function OtherTradingBankProxy:reqExtractRecordList(layer, data, func)
  962. local url = host.."/extract/pt/api/extractApply/v1/page"
  963. local val = {
  964. pageNum = data.page,
  965. pageSize = data.pagenum
  966. }
  967. self:HTTPRequest(url, func, val, nil, layer)
  968. end
  969. --提现记录详情
  970. function OtherTradingBankProxy:reqExtractRecordDetails(layer, data, func)
  971. local url = host.."/extract/pt/api/extractApply/v1/detail"
  972. local val = {
  973. id = data.id
  974. }
  975. self:HTTPRequest(url, func, val, nil, layer)
  976. end
  977. --撤销提现
  978. function OtherTradingBankProxy:cancelExtractApplyFor(layer, data, func)
  979. local url = host.."/extract/pt/api/extractApply/v1/cancel"
  980. local val = {
  981. extractApplyId = data.id
  982. }
  983. self:HTTPRequestPost(url, func, val, nil, layer)
  984. end
  985. --获取已购买列表
  986. function OtherTradingBankProxy:getFinishOrderList(layer, data, func)
  987. local url = host.."/exchange/df/api/exchange/v1/getFinishBuyOrderList"
  988. local val = {
  989. commodityType = data.type,
  990. page = data.page,
  991. pageNum = data.pagenum,
  992. type = data.type,
  993. orderPrice = data.orderPrice,
  994. }
  995. self:HTTPRequest(url, func, val, nil, layer)
  996. end
  997. --获取反馈类型
  998. function OtherTradingBankProxy:userFeedBackTypeList(layer, data, func)
  999. local url = host.."/user/pb/api/user/v1/userFeedbackTypeList"
  1000. local val = {}
  1001. self:HTTPRequest(url, func, val, nil, layer)
  1002. end
  1003. --用户反馈
  1004. function OtherTradingBankProxy:userFeedBack(layer, data, func)
  1005. local url = host.."/user/df/api/user/v1/feedback"
  1006. local val = {
  1007. feedBackTypeId = data.id,
  1008. text = data. content
  1009. }
  1010. self:HTTPRequestPost(url, func, val, nil, layer)
  1011. end
  1012. --帮助中心 详情
  1013. function OtherTradingBankProxy:HelpList(layer, data, func)
  1014. local url = host.."/user/pb/api/user/v1/faqList"
  1015. local val = {
  1016. keyword = data.keyword
  1017. }
  1018. self:HTTPRequest(url, func, val, nil, layer)
  1019. end
  1020. function OtherTradingBankProxy:addLayer(layer)
  1021. if not self:findLayer(layer) then
  1022. table.insert(self.m_http_layer, layer)
  1023. end
  1024. end
  1025. function OtherTradingBankProxy:findLayer(layer)
  1026. for i, v in ipairs(self.m_http_layer) do
  1027. if v == layer then
  1028. return true
  1029. end
  1030. end
  1031. return false
  1032. end
  1033. function OtherTradingBankProxy:removeLayer(layer)
  1034. for i, v in ipairs(self.m_http_layer) do
  1035. if v == layer then
  1036. table.remove(self.m_http_layer, i)
  1037. return
  1038. end
  1039. end
  1040. end
  1041. --取消 EditBox 的空白输入
  1042. function OtherTradingBankProxy:cancelEmpty(node)
  1043. node:onEditHandler(function(event)
  1044. if event.name == "changed" then
  1045. local s = event.target:getString()
  1046. s = string.gsub(s, "%s", "")
  1047. event.target:setString(s)
  1048. end
  1049. end)
  1050. end
  1051. -----------------------
  1052. --临时用 后面要放到sdk
  1053. local HMAC = require("lockbox.mac.hmac");
  1054. local SHA1 = require("lockbox.digest.sha1");
  1055. local Array = require("lockbox.util.array");
  1056. local Stream = require("lockbox.util.stream");
  1057. local ECBMode = require("lockbox.cipher.mode.ecb");
  1058. local Base64 = require("lockbox.util.base64");
  1059. local ZeroPadding = require("lockbox.padding.zero");
  1060. local AES256Cipher = require("lockbox.cipher.aes256");
  1061. function OtherTradingBankProxy:getParam(val)
  1062. val = val or {}
  1063. val.timestamp = os.time()
  1064. local originData = {}
  1065. for k, v in pairs(val) do
  1066. table.insert(originData, { key = k, value = v })
  1067. end
  1068. table.sort(originData, function(a, b)
  1069. return a.key < b.key
  1070. end)
  1071. -- 计算sign
  1072. local origin = ""
  1073. local isFirst = true
  1074. for i, v in ipairs(originData) do
  1075. local valueStr = v.value
  1076. if type(v.value) == "table" then
  1077. valueStr = cjson.encode(v.value)
  1078. end
  1079. if isFirst then
  1080. origin = string.format("%s=%s", v.key, valueStr)
  1081. isFirst = false
  1082. else
  1083. origin = string.format("%s&%s=%s", origin, v.key, valueStr)
  1084. end
  1085. end
  1086. origin = string.gsub(origin,"\\/","/")
  1087. dump(val,"val___")
  1088. dump(self.secret,"secret:")
  1089. dump(origin,"origin____")
  1090. local hash = HMAC();
  1091. local sign = hash
  1092. .setBlockSize(64)
  1093. .setDigest(SHA1)
  1094. .setKey(Array.fromString(self.secret))
  1095. .init()
  1096. .update(Stream.fromString(origin))
  1097. .finish()
  1098. .asHex();
  1099. val.sign = sign
  1100. dump(sign,"sign____")
  1101. return cjson.encode(val)
  1102. end
  1103. local function urlencodechar(char)
  1104. return "%" .. string.format("%02X", string.byte(char))
  1105. end
  1106. local function urlencodeT(input)
  1107. -- convert line endings
  1108. input = string.gsub(tostring(input), "\n", "\r\n")
  1109. -- escape all characters but alphanumeric, '.' and '-'
  1110. input = string.gsub(input, "([^%w%.%-%_%~ :/=?&#])", urlencodechar)
  1111. -- convert spaces to "+" symbols
  1112. return string.gsub(input, " ", "+")
  1113. end
  1114. local Aes256Encode = function(params)
  1115. --AES256/ecb/ZeroPadding 加密 加base64
  1116. local cipher = ECBMode.Cipher()
  1117. .setKey(Array.fromString(aes256key))
  1118. .setBlockCipher(AES256Cipher)
  1119. .setPadding(ZeroPadding);
  1120. local Output = cipher
  1121. .init()
  1122. .update(Stream.fromString(""))
  1123. .update(Stream.fromString(params))
  1124. .finish()
  1125. .asBytes();
  1126. local encodeStr = Base64.fromArray(Output)
  1127. return encodeStr
  1128. end
  1129. local Aes256Decode = function (params)
  1130. local decipher = ECBMode.Decipher()
  1131. .setKey(Array.fromString(aes256key))
  1132. .setBlockCipher(AES256Cipher)
  1133. .setPadding(ZeroPadding);
  1134. local decodeBytes = decipher
  1135. .init()
  1136. .update(Stream.fromString(""))
  1137. .update(Base64.toStream(params))
  1138. .finish()
  1139. .asBytes();
  1140. local decodedata = Array.toString(decodeBytes)
  1141. return decodedata
  1142. end
  1143. function OtherTradingBankProxy:Aes256DecodeSecret(secret)
  1144. -- local decipher = ECBMode.Decipher()
  1145. -- .setKey(Array.fromString(aes256key))
  1146. -- .setBlockCipher(AES256Cipher)
  1147. -- .setPadding(ZeroPadding);
  1148. -- local decodeBytes = decipher
  1149. -- .init()
  1150. -- .update(Stream.fromString(""))
  1151. -- .update(Stream.fromString(secret))
  1152. -- .finish()
  1153. -- .asBytes();
  1154. -- local decodedata = Array.toString(decodeBytes)
  1155. -- return decodedata
  1156. local decodedata = Aes256Decode(secret)
  1157. for i = 1,#decodedata do
  1158. local char = string.byte(decodedata, i)
  1159. if char == 0 then
  1160. decodedata = string.sub(decodedata, 1, i - 1)
  1161. return decodedata
  1162. end
  1163. end
  1164. return decodedata
  1165. end
  1166. function OtherTradingBankProxy:HTTPRequestImage(url, callback, data, header)
  1167. local directoryPath = global.FileUtilCtl:getWritablePath() .. global.L_ModuleManager:GetCurrentModulePath()
  1168. local filename = "jiaoyihang_down.png"
  1169. local filePath = directoryPath .. filename
  1170. dump(filePath,"filePath________")
  1171. local textureCache = global.Director:getTextureCache()
  1172. if textureCache:getTextureForKey(filePath) then
  1173. textureCache:removeTextureForKey(filePath)
  1174. end
  1175. if global.FileUtilCtl:isFileExist(filePath) then
  1176. global.FileUtilCtl:removeFile(filePath)
  1177. end
  1178. local resUrl = url
  1179. local httpRequest = cc.XMLHttpRequest:new()
  1180. httpRequest.responseType = cc.XMLHTTPREQUEST_RESPONSE_JSON
  1181. httpRequest.timeout = 100000 -- 10 s
  1182. httpRequest:open("GET", resUrl)
  1183. dump(resUrl,"get __url")
  1184. httpRequest:setRequestHeader("X-AppId", self.appid)
  1185. httpRequest:setRequestHeader("Content-type", "application/json")
  1186. httpRequest:setRequestHeader("X-Token", self:getToken())
  1187. dump("token__",self:getToken())
  1188. if header then
  1189. for k, v in pairs(header) do
  1190. httpRequest:setRequestHeader(k, v)
  1191. end
  1192. end
  1193. if callback then
  1194. local function HttpResponseCB()
  1195. dump("HTTPRequestImage2222")
  1196. local code = httpRequest.status
  1197. local response = httpRequest.response
  1198. local readyState = httpRequest.readyState
  1199. dump(readyState,"readyState____")
  1200. dump({code = code,response = response},"HttpResponseCB_____Get")
  1201. ------------------
  1202. releasePrint("Http Request Code:" .. tostring(code))
  1203. if readyState == 4 and (code >= 200 and code < 207) then
  1204. local file = io.open(filePath, "wb")
  1205. if file then
  1206. file:write(response)
  1207. file:close()
  1208. local texture = cc.Director:getInstance():getTextureCache():addImage(filePath)
  1209. if texture then
  1210. callback(filePath)
  1211. else
  1212. ShowSystemTips("图片下载失败")
  1213. end
  1214. else
  1215. ShowSystemTips("文件保存失败")
  1216. end
  1217. else
  1218. ShowSystemTips(string.format("请求失败 code:%s", code))
  1219. end
  1220. end
  1221. httpRequest:registerScriptHandler(HttpResponseCB)
  1222. end
  1223. httpRequest:send()
  1224. end
  1225. function OtherTradingBankProxy:HTTPRequest(url, callback, data, header, layer, isNotNeedLoading)
  1226. if layer then
  1227. if not self:findLayer(layer) then
  1228. self:addLayer(layer)
  1229. end
  1230. end
  1231. if not isNotNeedLoading then
  1232. global.Facade:sendNotification(global.NoticeTable.Layer_LoadingBar_Open)
  1233. end
  1234. local params = self:getParam(clone(data))
  1235. local encodeStr = Aes256Encode(params)
  1236. local resUrl = string.format("%s?aes_params=%s",url,urlencodeT(encodeStr))
  1237. local httpRequest = cc.XMLHttpRequest:new()
  1238. httpRequest.responseType = cc.XMLHTTPREQUEST_RESPONSE_JSON
  1239. httpRequest.timeout = 100000 -- 10 s
  1240. httpRequest:open("GET", resUrl)
  1241. dump(encodeStr,"encodeStr___")
  1242. dump(resUrl,"get __url")
  1243. httpRequest:setRequestHeader("X-AppId", self.appid)
  1244. httpRequest:setRequestHeader("Content-type", "application/json")
  1245. httpRequest:setRequestHeader("X-Token", self:getToken())
  1246. dump("token__",self:getToken())
  1247. if header then
  1248. for k, v in pairs(header) do
  1249. httpRequest:setRequestHeader(k, v)
  1250. end
  1251. end
  1252. ------------------------------
  1253. if callback then
  1254. local function HttpResponseCB()
  1255. if not isNotNeedLoading then
  1256. global.Facade:sendNotification(global.NoticeTable.Layer_LoadingBar_Close)
  1257. end
  1258. if layer then
  1259. if not self:findLayer(layer) then
  1260. return
  1261. end
  1262. end
  1263. local code = httpRequest.status
  1264. local response = httpRequest.response
  1265. dump({code = code,response = response},"HttpResponseCB_____Get")
  1266. ------------------
  1267. releasePrint("Http Request Code:" .. tostring(code))
  1268. if code >= 200 and code < 300 then
  1269. local json = cjson.decode(response)
  1270. if json.code == 50003 or json.code == 50000 then --token过期
  1271. if not (params.action == "takeBackRole" or params.action == "onShelfLimit") then
  1272. self.m_yzToken = ""
  1273. self:Login1_2(function(code, msg)--重新登录操作
  1274. if code == 200 then
  1275. self:HTTPRequest(url, callback, data, header, layer)
  1276. else
  1277. ShowSystemTips(msg or "")
  1278. end
  1279. end)
  1280. return
  1281. end
  1282. end
  1283. ------------------解密
  1284. local resData = json.data
  1285. if json.code == 200 then
  1286. if resData then
  1287. local decodedata = Aes256Decode(resData)
  1288. -- dump(decodedata,"decodedata___")
  1289. resData = cjson.decode(decodedata)
  1290. end
  1291. end
  1292. ----------------------
  1293. callback(json.code, resData and resData.data, json.msg)
  1294. else
  1295. callback(code, "", "接口异常")
  1296. end
  1297. end
  1298. httpRequest:registerScriptHandler(HttpResponseCB)
  1299. end
  1300. httpRequest:send()
  1301. end
  1302. function OtherTradingBankProxy:HTTPRequestPost(url, callback, data, header, layer)
  1303. if layer then
  1304. if not self:findLayer(layer) then
  1305. self:addLayer(layer)
  1306. end
  1307. end
  1308. global.Facade:sendNotification(global.NoticeTable.Layer_LoadingBar_Open)
  1309. local params = self:getParam(clone(data))
  1310. -- dump(params,"params___")
  1311. local encodeStr = Aes256Encode(params)
  1312. local httpRequest = cc.XMLHttpRequest:new()
  1313. httpRequest.responseType = cc.XMLHTTPREQUEST_RESPONSE_JSON
  1314. httpRequest.timeout = 100000 -- 10 s
  1315. httpRequest:open("POST", url)
  1316. dump(encodeStr,"encodeStr___")
  1317. dump(url,"url___")
  1318. httpRequest:setRequestHeader("X-AppId", self.appid)
  1319. httpRequest:setRequestHeader("Content-type", "application/json")
  1320. httpRequest:setRequestHeader("X-Token", self:getToken())
  1321. dump(self:getToken(),"token__")
  1322. if header then
  1323. for k, v in pairs(header) do
  1324. httpRequest:setRequestHeader(k, v)
  1325. end
  1326. end
  1327. ------------------------------
  1328. if callback then
  1329. local function HttpResponseCB()
  1330. global.Facade:sendNotification(global.NoticeTable.Layer_LoadingBar_Close)
  1331. if layer then
  1332. if not self:findLayer(layer) then
  1333. return
  1334. end
  1335. end
  1336. local code = httpRequest.status
  1337. local response = httpRequest.response
  1338. dump({code = code,response = response},"HttpResponseCB_____POST")
  1339. ------------------
  1340. releasePrint("Http Request Code:" .. tostring(code))
  1341. if code >= 200 and code < 300 then
  1342. local json = cjson.decode(response)
  1343. if json.code == 50003 or json.code == 50000 then --token过期
  1344. if not (params.action == "takeBackRole" or params.action == "onShelfLimit") then
  1345. self.m_yzToken = ""
  1346. self:Login1_2(function(code, msg)--重新登录操作
  1347. if code == 200 then
  1348. self:HTTPRequestPost(url, callback, data, header, layer)
  1349. else
  1350. ShowSystemTips(msg or "")
  1351. end
  1352. end)
  1353. return
  1354. end
  1355. end
  1356. ------------------解密
  1357. local resData = json.data
  1358. if json.code == 200 then
  1359. local decodedata = Aes256Decode(resData)
  1360. -- dump(decodedata,"decodedata___")
  1361. resData = cjson.decode(decodedata)
  1362. end
  1363. ----------------------
  1364. callback(json.code, resData.data, json.msg)
  1365. else
  1366. ShowSystemTips(string.format("请求失败 code:%s", code))
  1367. --callback(code, "", "")
  1368. end
  1369. end
  1370. httpRequest:registerScriptHandler(HttpResponseCB)
  1371. end
  1372. -- dump(cjson.encode({aes_params = encodeStr}),"????")
  1373. httpRequest:send(cjson.encode({aes_params = encodeStr}))
  1374. end
  1375. function OtherTradingBankProxy:HTTPRequestPut(url, callback, data, header, layer)
  1376. if layer then
  1377. if not self:findLayer(layer) then
  1378. self:addLayer(layer)
  1379. end
  1380. end
  1381. global.Facade:sendNotification(global.NoticeTable.Layer_LoadingBar_Open)
  1382. local params = self:getParam(clone(data))
  1383. -- dump(params,"params___")
  1384. local encodeStr = Aes256Encode(params)
  1385. local httpRequest = cc.XMLHttpRequest:new()
  1386. httpRequest.responseType = cc.XMLHTTPREQUEST_RESPONSE_JSON
  1387. httpRequest.timeout = 100000 -- 10 s
  1388. httpRequest:open("PUT", url)
  1389. dump(encodeStr,"encodeStr___")
  1390. dump(url,"url___")
  1391. httpRequest:setRequestHeader("X-AppId", self.appid)
  1392. httpRequest:setRequestHeader("Content-type", "application/json")
  1393. httpRequest:setRequestHeader("X-Token", self:getToken())
  1394. dump(self:getToken(),"token__")
  1395. if header then
  1396. for k, v in pairs(header) do
  1397. httpRequest:setRequestHeader(k, v)
  1398. end
  1399. end
  1400. ------------------------------
  1401. if callback then
  1402. local function HttpResponseCB()
  1403. global.Facade:sendNotification(global.NoticeTable.Layer_LoadingBar_Close)
  1404. if layer then
  1405. if not self:findLayer(layer) then
  1406. return
  1407. end
  1408. end
  1409. local code = httpRequest.status
  1410. local response = httpRequest.response
  1411. dump({code = code,response = response},"HttpResponseCB_____POST")
  1412. ------------------
  1413. releasePrint("Http Request Code:" .. tostring(code))
  1414. if code >= 200 and code < 300 then
  1415. local json = cjson.decode(response)
  1416. if json.code == 50003 or json.code == 50000 then --token过期
  1417. if not (params.action == "takeBackRole" or params.action == "onShelfLimit") then
  1418. self.m_yzToken = ""
  1419. self:Login1_2(function(code, msg)--重新登录操作
  1420. if code == 200 then
  1421. self:HTTPRequestPut(url, callback, data, header, layer)
  1422. else
  1423. ShowSystemTips(msg or "")
  1424. end
  1425. end)
  1426. return
  1427. end
  1428. end
  1429. ------------------解密
  1430. local resData = json.data
  1431. if json.code == 200 then
  1432. local decodedata = Aes256Decode(resData)
  1433. -- dump(decodedata,"decodedata___")
  1434. resData = cjson.decode(decodedata)
  1435. end
  1436. ----------------------
  1437. callback(json.code, resData.data, json.msg)
  1438. else
  1439. ShowSystemTips(string.format("请求失败 code:%s", code))
  1440. --callback(code, "", "")
  1441. end
  1442. end
  1443. httpRequest:registerScriptHandler(HttpResponseCB)
  1444. end
  1445. -- dump(cjson.encode({aes_params = encodeStr}),"????")
  1446. httpRequest:send(cjson.encode({aes_params = encodeStr}))
  1447. end
  1448. --实名认证
  1449. function OtherTradingBankProxy:identification(layer, val, callback)
  1450. local url = host.."/user/df/api/user/v1.2/identification"
  1451. self:HTTPRequestPost(url, callback, val, nil, layer)
  1452. end
  1453. function OtherTradingBankProxy:Login1_2(func)
  1454. -------------新登陆
  1455. local params = {
  1456. serverId = tonumber(self.loginProxy:GetSelectedServerId()),
  1457. gameToken = self:getGameToken(),
  1458. gameId = tonumber(self.AuthProxy:getGameId()),
  1459. packageName = SL:GetMetaValue("PACKAGE_NAME"),
  1460. roleName = self.PlayerProperty:GetName(),
  1461. roleId = self.PlayerProperty:GetRoleUID()
  1462. }
  1463. local callback = function(code, data, msg)
  1464. dump(data,"Login data___")
  1465. if code == 200 then
  1466. self.m_yzToken = data.token
  1467. self.m_mobile = data.mobile
  1468. self.m_uid = data.uid
  1469. self._isLogin = true
  1470. self:doTrack(OtherTradingBankProxy.UpLoadData.TraingLogin)
  1471. else
  1472. ShowSystemTips(msg or "")
  1473. end
  1474. func(code, msg)
  1475. -- func(code, data)
  1476. end
  1477. self:gameTokenLogin(params,callback)
  1478. end
  1479. --gameTokenLogin
  1480. function OtherTradingBankProxy:gameTokenLogin(val, callback)
  1481. local url = host.."/user/pb/api/user/v1.2/gameTokenLogin"
  1482. -- dump(url,"url")
  1483. self:HTTPRequestPost(url, callback, val)
  1484. end
  1485. --checkBindPhone
  1486. function OtherTradingBankProxy:checkBindPhone(layer,val,callback)
  1487. local url = host.."/user/df/api/user/v1.2/checkBindPhone"
  1488. -- dump(url,"url")
  1489. self:HTTPRequest(url, callback, val, nil, layer)
  1490. end
  1491. --bindPhone
  1492. function OtherTradingBankProxy:bindPhone(layer,val,callback)
  1493. local url = host.."/user/df/api/user/v1.2/bindPhone"
  1494. -- dump(url,"url")
  1495. val.gameId = tonumber(self.AuthProxy:getGameId())
  1496. val.gameToken = self:getGameToken()
  1497. val.serverId = tonumber(self.loginProxy:GetSelectedServerId())
  1498. self:HTTPRequestPost(url, callback, val, nil, layer)
  1499. end
  1500. --是否自己下单
  1501. function OtherTradingBankProxy:commodityIsMyOrder(layer,val,callback)
  1502. local url = host.."/exchange/df/api/exchange/v1/commodityIsMyOrder"
  1503. self:HTTPRequest(url, callback, val, nil, layer)
  1504. end
  1505. --获取跑马灯数据
  1506. function OtherTradingBankProxy:getScrollDataItem(layer, func)
  1507. if #self._scrollCurData == 0 then
  1508. if self._scrollCacheCurCount >= self._scrollCacheCount then
  1509. local tFunc
  1510. tFunc = function (code, data, msg, isSchedule)
  1511. dump({code,data,msg},"跑马灯数据")
  1512. if code == 200 then
  1513. -- if self._scrollScheduleID then
  1514. -- UnSchedule(self._scrollScheduleID)
  1515. -- self._scrollScheduleID = nil
  1516. -- end
  1517. self._scrollCacheCurCount = 0
  1518. local cacheTime = data.cacheTime or 10 --缓存时间 分钟
  1519. cacheTime = cacheTime * 60
  1520. self._scrollCacheCount = data.cacheCount or 0 --缓存读取次数
  1521. local quickUpdate = data.quickUpdate or 0 -- 0 缓存滚完刷新 1立即刷新
  1522. self._timeStep = data.timeStep or 4
  1523. local msgList = data.msgList or {}
  1524. self._scrollCacheData = msgList
  1525. if isSchedule then
  1526. if quickUpdate == 1 then--立即刷新
  1527. self._scrollCacheCurCount = 1
  1528. self._scrollCurData = clone(self._scrollCacheData)
  1529. end
  1530. else
  1531. self._scrollCacheCurCount = 1
  1532. self._scrollCurData = clone(self._scrollCacheData)
  1533. func(table.remove(self._scrollCurData, 1), self._timeStep)
  1534. end
  1535. -- self._scrollScheduleID = PerformWithDelayGlobal(function ()
  1536. -- self._scrollScheduleID = nil
  1537. -- self:reqMarqueeList(layer, function (code, data, msg)
  1538. -- tFunc(code, data, msg, true)
  1539. -- end)
  1540. -- end, cacheTime)
  1541. else
  1542. ShowSystemTips(msg or "")
  1543. func(nil, self._timeStep)
  1544. end
  1545. end
  1546. self:reqMarqueeList(layer,tFunc)
  1547. else
  1548. self._scrollCacheCurCount = self._scrollCacheCurCount + 1
  1549. self._scrollCurData = clone(self._scrollCacheData)
  1550. func(table.remove(self._scrollCurData, 1), self._timeStep)
  1551. end
  1552. else
  1553. func(table.remove(self._scrollCurData, 1), self._timeStep)
  1554. end
  1555. end
  1556. --跑马灯列表
  1557. function OtherTradingBankProxy:reqMarqueeList(layer,func)
  1558. local url = host.."/exchange/pb/api/exchange/v1/marqueeList"
  1559. self:HTTPRequest(url, func, nil, nil, layer, true)
  1560. end
  1561. --获取服务器名字
  1562. function OtherTradingBankProxy:getServerNames(layer,val,callback)
  1563. local url = host.."/exchange/pb/api/exchange/v1/serverPage"
  1564. -- val.gameIds = {tonumber(self.AuthProxy:getGameId())}
  1565. self:HTTPRequest(url, callback, val, nil, layer)
  1566. end
  1567. --交易行公告
  1568. function OtherTradingBankProxy:getNotice(layer,val,callback)
  1569. local url = host.."/exchange/pb/api/exchange/v1/announcement"
  1570. -- val.gameIds = {tonumber(self.AuthProxy:getGameId())}
  1571. self:HTTPRequest(url, callback, val, nil, layer)
  1572. end
  1573. --求购列表
  1574. function OtherTradingBankProxy:getRequestBuyData(layer,val,callback)
  1575. local url = host.."/exchange/df/api/exchange/v1/commodityRequest/list"
  1576. -- val.gameIds = {tonumber(self.AuthProxy:getGameId())}
  1577. self:HTTPRequest(url, callback, val, nil, layer)
  1578. end
  1579. --提交求购
  1580. function OtherTradingBankProxy:addRequestBuyData(layer,val,callback)
  1581. local url = host.."/exchange/df/api/exchange/v1/commodityRequest/add"
  1582. -- val.gameIds = {tonumber(self.AuthProxy:getGameId())}
  1583. self:HTTPRequestPost(url, callback, val, nil, layer)
  1584. end
  1585. --获取求购次数
  1586. function OtherTradingBankProxy:getRequestBuyCount(layer,val,callback)
  1587. local url = host.."/exchange/df/api/exchange/v1/commodityRequest/todayAddQuestCount"
  1588. -- val.gameIds = {tonumber(self.AuthProxy:getGameId())}
  1589. self:HTTPRequest(url, callback, val, nil, layer)
  1590. end
  1591. --获取求购记录
  1592. function OtherTradingBankProxy:getRequestBuyRecord(layer,val,callback)
  1593. local url = host.."/exchange/df/api/exchange/v1/commodityRequest/myList"
  1594. -- val.gameIds = {tonumber(self.AuthProxy:getGameId())}
  1595. val.pageNum = val.page
  1596. val.pageSize = val.pagenum
  1597. self:HTTPRequest(url, callback, val, nil, layer)
  1598. end
  1599. --删除求购记录
  1600. function OtherTradingBankProxy:deleteRequestBuyRecord(layer,val,callback)
  1601. local url = host.."/exchange/df/api/exchange/v1/commodityRequest/delete"
  1602. -- val.gameIds = {tonumber(self.AuthProxy:getGameId())}
  1603. self:HTTPRequestPost(url, callback, val, nil, layer)
  1604. end
  1605. --支付
  1606. function OtherTradingBankProxy:reqpayOrder2(layer, val, callback)
  1607. local url = host.."/pay/pt/api/pay/v1/wap/alipay"
  1608. -- val.gameIds = {tonumber(self.AuthProxy:getGameId())}
  1609. local params = {}
  1610. params.bizNo = val.order_id
  1611. params.price = val.price
  1612. params.payChannelType = val.channel == "HUABEI" and 4 or 1
  1613. self:HTTPRequestPost(url, callback, params, nil, layer)
  1614. end
  1615. --支付二维码
  1616. function OtherTradingBankProxy:reqpayOrderEWM(layer, val, callback)
  1617. local url = host.."/pay/pt/api/pay/v1/scan/alipay"
  1618. -- val.gameIds = {tonumber(self.AuthProxy:getGameId())}
  1619. local params = {}
  1620. params.bizNo = val.order_id
  1621. params.price = val.price
  1622. params.payChannelType = val.channel == "ALIPAY_EWM" and 1
  1623. self:HTTPRequestPost(url, callback, params, nil, layer)
  1624. end
  1625. --下载交易行按钮图片
  1626. function OtherTradingBankProxy:reqTradingButton(url,val,callback)
  1627. self:HTTPRequestImage(url, callback, val, nil)
  1628. end
  1629. ------------------------------
  1630. ---图片上传
  1631. -----上传图片
  1632. function OtherTradingBankProxy:uploadImg2(layer, val, func)
  1633. local params = {
  1634. game_id = self.AuthProxy:getGameId(),
  1635. roleId = global.playerManager:GetMainPlayerID(),
  1636. imageType = val.position
  1637. }
  1638. -- --imageType
  1639. -- for k, v in pairs(val) do
  1640. -- params[k] = v
  1641. -- end
  1642. local path = val.path
  1643. local upFunc = function (code, data, msg)
  1644. if code == 200 then
  1645. dump(data,"上传接口")
  1646. local FileUtils = cc.FileUtils:getInstance()
  1647. if not FileUtils:isFileExist(path) then
  1648. func(-1,"","文件不存在")
  1649. return
  1650. end
  1651. local upUrl = data
  1652. local imageServerPath = string.match(data,"commodity_.*%.jpg")
  1653. dump(imageServerPath,"imageServerPath___")
  1654. local httpRequest = cc.XMLHttpRequest:new()
  1655. httpRequest.responseType = cc.XMLHTTPREQUEST_RESPONSE_JSON
  1656. httpRequest.timeout = 100000 -- 10 s
  1657. httpRequest:open("PUT", upUrl)
  1658. httpRequest:setRequestHeader("X-AppId", self.appid)
  1659. httpRequest:setRequestHeader("Content-type", "image/jpeg")
  1660. httpRequest:setRequestHeader("X-Token", self:getToken())
  1661. dump("token__",self:getToken())
  1662. global.Facade:sendNotification(global.NoticeTable.Layer_LoadingBar_Open)
  1663. ------------------------------
  1664. local function HttpResponseCB()
  1665. global.Facade:sendNotification(global.NoticeTable.Layer_LoadingBar_Close)
  1666. if layer then
  1667. if not self:findLayer(layer) then
  1668. return
  1669. end
  1670. end
  1671. local code = httpRequest.status
  1672. local response = httpRequest.response
  1673. ------------------
  1674. releasePrint("Http Request Code:" .. tostring(code))
  1675. if code >= 200 and code < 300 then
  1676. func(code, imageServerPath, "")
  1677. else
  1678. func(code, "", "上传图片接口异常")
  1679. end
  1680. end
  1681. httpRequest:registerScriptHandler(HttpResponseCB)
  1682. local fileData = FileUtils:getDataFromFileEx(path)
  1683. dump(fileData,"fileData___")
  1684. httpRequest:send(fileData)
  1685. else
  1686. ShowSystemTips(msg or "")
  1687. func(code, data, msg)
  1688. end
  1689. end
  1690. self:getUploadImgUrl(layer, params, upFunc)
  1691. end
  1692. function OtherTradingBankProxy:getUploadImgUrl(layer,val,callback)
  1693. local url = host.."/exchange/df/api/exchange/v1/generatePreSignedUrl"
  1694. -- val.gameIds = {tonumber(self.AuthProxy:getGameId())}
  1695. self:HTTPRequest(url, callback, val, nil, layer)
  1696. end
  1697. --寄售key 上传截图
  1698. function OtherTradingBankProxy:UpPublishKeyUrl(layer, val, callback)
  1699. local url = host.."/exchange/df/api/exchange/v1/addImageSize"
  1700. self:HTTPRequestPost(url, callback, val, nil, layer)
  1701. end
  1702. -----上传图片 图片地址已经拿到
  1703. function OtherTradingBankProxy:uploadImg3(layer, serverurl, path, func)
  1704. dump({serverurl,path},"上传图片地址和本地路径")
  1705. local FileUtils = cc.FileUtils:getInstance()
  1706. if not FileUtils:isFileExist(path) then
  1707. func(-1,"","文件不存在")
  1708. return
  1709. end
  1710. local upUrl = serverurl
  1711. local imageServerPath = string.match(serverurl,"commodity_.*%.jpg")
  1712. dump(imageServerPath,"imageServerPath___")
  1713. local httpRequest = cc.XMLHttpRequest:new()
  1714. httpRequest.responseType = cc.XMLHTTPREQUEST_RESPONSE_JSON
  1715. httpRequest.timeout = 100000 -- 10 s
  1716. httpRequest:open("PUT", upUrl)
  1717. httpRequest:setRequestHeader("X-AppId", self.appid)
  1718. httpRequest:setRequestHeader("Content-type", "image/jpeg")
  1719. httpRequest:setRequestHeader("X-Token", self:getToken())
  1720. dump("token__",self:getToken())
  1721. global.Facade:sendNotification(global.NoticeTable.Layer_LoadingBar_Open)
  1722. ------------------------------
  1723. local function HttpResponseCB()
  1724. global.Facade:sendNotification(global.NoticeTable.Layer_LoadingBar_Close)
  1725. local code = httpRequest.status
  1726. local response = httpRequest.response
  1727. releasePrint("Http Request Code:" .. tostring(code))
  1728. if code >= 200 and code < 300 then
  1729. func(code, imageServerPath, "")
  1730. else
  1731. func(code, "", "上传图片接口异常")
  1732. end
  1733. end
  1734. httpRequest:registerScriptHandler(HttpResponseCB)
  1735. local fileData = FileUtils:getDataFromFileEx(path)
  1736. dump(fileData,"fileData___")
  1737. httpRequest:send(fileData)
  1738. end
  1739. --客服链接
  1740. function OtherTradingBankProxy:getKeFuWxUrl()
  1741. return self.wxCustomerServiceLink
  1742. end
  1743. ---------------
  1744. OtherTradingBankProxy.UpLoadData = {
  1745. TraingIconBtnClick = {event = {name = "click"},properities = {button_name = "交易行入口按钮"}},
  1746. TraingBuyLayerClick = {event = {name = "click"},properities = {button_name = "购买页签按钮"}},
  1747. TraingBuyLayerBuyBtnClick = {event = {name = "click"},properities = {button_name = "购买界面“购买”按钮"}},
  1748. TraingBuyLayerSearchBtnClick = {event = {name = "click"},properities = {button_name = "购买界面“搜索”按钮"}},
  1749. TraingBuyLayerOKBtnClick = {event = {name = "click"},properities = {button_name = "购买界面“确认支付”按钮"}},
  1750. TraingSellLayerClick = {event = {name = "click"},properities = {button_name = "寄售页签按钮"}},
  1751. TraingSellLayerNextBtnClick = {event = {name = "click"},properities = {button_name = "寄售界面”下一步“按钮"}},
  1752. TraingGoodsLayerClick = {event = {name = "click"},properities = {button_name = "货架页签按钮"}},
  1753. TraingGoodsLayerDownBtnClick = {event = {name = "click"},properities = {button_name = "货架界面“下架”按钮"}},
  1754. TraingGoodsLayerGetBtnClick = {event = {name = "click"},properities = {button_name = "货架界面“取回”按钮"}},
  1755. TraingGoodsLayerModityBtnClick = {event = {name = "click"},properities = {button_name = "货架界面“修改”按钮"}},
  1756. TraingMeLayerClick = {event = {name = "click"},properities = {button_name = "我的页签按钮"}},
  1757. TraingMeLayerGetMoneyBtnClick = {event = {name = "click"},properities = {button_name = "我的界面“提现”按钮"}},
  1758. TraingGetMoneyLayerApplyBtnClick = {event = {name = "click"},properities = {button_name = "提现确认界面“申请提现”按钮"}},
  1759. TraingRoleSell = {event = {name = "put_on_shelves"},properities = {goods_type = "角色",num = 1 }},
  1760. TraingMoneySell = {event = {name = "put_on_shelves"},properities = {goods_type = "货币" }},
  1761. TraingCreateOrder = {event = {name = "prepay"},properities = {platform = "alipay"}},
  1762. TraingLogin = {event = {name = "user_login"},properities = {}},
  1763. TraingBuyLayerReqBuyBtnClick = {event = {name = "click"},properities = {button_name = "购买界面“求购”页签"}},
  1764. TraingReqBuyShowGoSellClick = {event = {name = "click"},properities = {button_name = "求购展示页-去寄售按钮"}},
  1765. TraingReqBuyLayerPutClick = {event = {name = "click"},properities = {button_name = "求购页-发布求购按钮"}},
  1766. TraingMeLayerReqBuyRecordBtnClick = {event = {name = "click"},properities = {button_name = "我的页面“求购记录”按钮"}},
  1767. TraingReqBuyRecordOKBtnClick = {event = {name = "click"},properities = {button_name = "求购记录“确认删除”按钮"}},
  1768. TraingCobyUrlBtnClick = {event = {name = "click"},properities = {button_name = "交易行“复制链接”按钮"}},
  1769. TraingCobyPlayerIDBtnClick = {event = {name = "click"},properities = {button_name = "“复制角色码”按钮"}},
  1770. TraingCobyAccountIDBtnClick = {event = {name = "click"},properities = {button_name = "“复制账号ID”按钮"}},
  1771. }
  1772. --数据上报
  1773. function OtherTradingBankProxy:doTrack(val, params)
  1774. local url = host.."/exchange/pb/api/eventTracking/v1/doTrack"
  1775. local envProxy = global.Facade:retrieveProxy(global.ProxyTable.GameEnvironment)
  1776. local netType = envProxy:GetNetType()
  1777. local networkDesc = {[-1] = "UNKNOWN", [0] = "WIFI", [1] = "2G", [2] = "3G", [3] = "4G"}
  1778. local device_t = global.isAndroid and "android" or "ios"
  1779. local director = cc.Director:getInstance()
  1780. local view = director:getOpenGLView()
  1781. local framesize = view:getFrameSize()
  1782. if global.isWindows then
  1783. device_t = "pc"
  1784. end
  1785. -- dump(url,"url")
  1786. val.sdk_ver = "1.0.10"
  1787. val.app_ver = SL:GetMetaValue("REMOTE_RES_VERSION")--游戏版本号
  1788. val.channel = SL:GetMetaValue("CHANNEL_ID")
  1789. val.net_type = networkDesc[netType]
  1790. val.device = {
  1791. type = device_t,
  1792. model = "UNKNOWN",
  1793. id = self:getUUID(),
  1794. os = "UNKNOWN",
  1795. width = framesize.width,
  1796. height = framesize.height,
  1797. }
  1798. val.event = val.event or {}
  1799. val.event.time = os.time()
  1800. val.event.type = "track"
  1801. val.user ={}
  1802. if self.m_uid then
  1803. val.user.id = self.m_uid
  1804. end
  1805. val.properities = val.properities or {}
  1806. val.properities.servid = tonumber(self.loginProxy:GetSelectedServerId())
  1807. val.properities.server_name = self.loginProxy:GetSelectedServerName()
  1808. val.properities.role_id = global.playerManager:GetMainPlayerID()
  1809. val.properities.role_name = self.loginProxy:GetSelectedRoleName()
  1810. val.properities.role_level = self.PlayerProperty:GetRoleLevel()
  1811. val.properities.job_id = self.PlayerProperty:GetRoleJob()
  1812. val.properities.job_name = SL:GetMetaValue("JOB_NAME",val.job_id)--职业名
  1813. val.properities.game_id = tonumber(self.AuthProxy:getGameId())
  1814. if params and params.properities then
  1815. for k, v in pairs(params.properities) do
  1816. val.properities[k] = v
  1817. end
  1818. end
  1819. dump(val,"上报数据——————————")
  1820. local jsonStr = cjson.encode(val)
  1821. local p = {eventJson = jsonStr}
  1822. local func = function (code,data,msg)
  1823. dump({code,data,msg},"上报结果")
  1824. end
  1825. self:HTTPRequestPostUpLoad(url, func, p)
  1826. end
  1827. --模拟一下 就第一个角色id+时间戳
  1828. function OtherTradingBankProxy:getUUID()
  1829. local path = "TradingBankConfig"
  1830. local userData = UserData:new(path)
  1831. local key = "uuid"
  1832. local jsonStr = userData:getStringForKey(key, "")
  1833. if not jsonStr or string.len(jsonStr) == 0 then
  1834. jsonStr = string.format("%s_%s", global.playerManager:GetMainPlayerID(), os.time())
  1835. userData:setStringForKey(key, jsonStr)
  1836. end
  1837. return jsonStr
  1838. end
  1839. function OtherTradingBankProxy:HTTPRequestPostUpLoad(url, callback, data)
  1840. local params = self:getParam(clone(data))
  1841. -- dump(params,"params___")
  1842. local encodeStr = Aes256Encode(params)
  1843. local httpRequest = cc.XMLHttpRequest:new()
  1844. httpRequest.responseType = cc.XMLHTTPREQUEST_RESPONSE_JSON
  1845. httpRequest.timeout = 100000 -- 10 s
  1846. httpRequest:open("POST", url)
  1847. dump(encodeStr,"encodeStr___")
  1848. dump(url,"url___")
  1849. httpRequest:setRequestHeader("X-AppId", self.appid)
  1850. httpRequest:setRequestHeader("Content-type", "application/json")
  1851. httpRequest:setRequestHeader("X-Token", self:getToken())
  1852. ------------------------------
  1853. if callback then
  1854. local function HttpResponseCB()
  1855. local code = httpRequest.status
  1856. local response = httpRequest.response
  1857. dump({code = code,response = response},"HttpResponseCB_____POST上报")
  1858. ------------------
  1859. releasePrint("Http Request Code:" .. tostring(code))
  1860. if code >= 200 and code < 300 then
  1861. local json = cjson.decode(response)
  1862. ------------------解密
  1863. local resData = json.data
  1864. if json.code == 200 then
  1865. local decodedata = Aes256Decode(resData)
  1866. -- dump(decodedata,"decodedata___")
  1867. resData = cjson.decode(decodedata)
  1868. end
  1869. ----------------------
  1870. callback(json.code, resData.data, json.msg)
  1871. else
  1872. end
  1873. end
  1874. httpRequest:registerScriptHandler(HttpResponseCB)
  1875. end
  1876. -- dump(cjson.encode({aes_params = encodeStr}),"????")
  1877. httpRequest:send(cjson.encode({aes_params = encodeStr}))
  1878. end
  1879. ----------------------
  1880. function OtherTradingBankProxy:captureResult(data)
  1881. local params = {
  1882. action = "captureResult",
  1883. isH5 = true,
  1884. params = {
  1885. },
  1886. }
  1887. local isHero = false
  1888. local HeroPropertyProxy = global.Facade:retrieveProxy(global.ProxyTable.HeroPropertyProxy)
  1889. if HeroPropertyProxy:IsHeroOpen() then
  1890. local PlayerPropertyProxy = global.Facade:retrieveProxy(global.ProxyTable.PlayerProperty)
  1891. if PlayerPropertyProxy:getIsMakeHero() then
  1892. if HeroPropertyProxy:HeroIsLogin() then
  1893. isHero = true
  1894. end
  1895. end
  1896. end
  1897. local res = {}
  1898. dump(isHero,"isHero")
  1899. if isHero then
  1900. res = {
  1901. uid = self.AuthProxy:GetUID(),
  1902. game_id = self.AuthProxy:getGameId(),
  1903. server_id = self.loginProxy:GetSelectedServerId(),
  1904. server_name = self.loginProxy:GetSelectedServerName(),
  1905. role_id = global.playerManager:GetMainPlayerID(),
  1906. role = self.PlayerProperty:GetName(),
  1907. sex = self.PlayerProperty:GetRoleSex(),
  1908. vip = 0,
  1909. role_level = self.PlayerProperty:GetRoleLevel(),
  1910. ablity = self.PlayerProperty:GetRoleAttByAttType(GUIFunction:PShowAttType().Max_ATK),
  1911. role_type = self.PlayerProperty:GetRoleJob(),
  1912. images = data,
  1913. game_type = 1,
  1914. hero_role_id = self.HeroPropertyProxy:GetRoleUID(), --英雄角色ID
  1915. hero_name = self.HeroPropertyProxy:GetName(), --英雄角色名字
  1916. hero_sex = self.HeroPropertyProxy:GetRoleSex(), --英雄性别
  1917. hero_level = self.HeroPropertyProxy:GetRoleLevel(), --英雄角色等级
  1918. hero_role_type = self.HeroPropertyProxy:GetRoleJob(), --英雄职业
  1919. hero_rein_lv = self.HeroPropertyProxy:GetRoleReinLv(), --转生
  1920. hero_ability = self.HeroPropertyProxy:GetRoleAttByAttType(GUIFunction:PShowAttType().Max_ATK)--英雄战力
  1921. }
  1922. else
  1923. res = {
  1924. uid = self.AuthProxy:GetUID(),
  1925. game_id = self.AuthProxy:getGameId(),
  1926. server_id = self.loginProxy:GetSelectedServerId(),
  1927. server_name = self.loginProxy:GetSelectedServerName(),
  1928. role_id = global.playerManager:GetMainPlayerID(),
  1929. role = self.PlayerProperty:GetName(),
  1930. sex = self.PlayerProperty:GetRoleSex(),
  1931. vip = 0,
  1932. role_level = self.PlayerProperty:GetRoleLevel(),
  1933. ablity = self.PlayerProperty:GetRoleAttByAttType(GUIFunction:PShowAttType().Max_ATK),
  1934. role_type = self.PlayerProperty:GetRoleJob(),
  1935. images = data,
  1936. game_type = 1
  1937. }
  1938. end
  1939. -- for k, v in pairs(data) do
  1940. -- res[k] = v
  1941. -- end
  1942. params.params.res = cjson.encode(res)
  1943. self:addToCallFunc(params)
  1944. end
  1945. function OtherTradingBankProxy:setGameTokenToH5(token)
  1946. local params = {
  1947. action = "setGameToken",
  1948. isH5 = true,
  1949. params = {
  1950. },
  1951. }
  1952. local currentModule = global.L_ModuleManager:GetCurrentModule()
  1953. local gameName = currentModule:GetName()
  1954. local job_id = self.PlayerProperty:GetRoleJob()
  1955. local gameSkdEnv = "pro"
  1956. if self._environment == 0 then
  1957. gameSkdEnv = "test"
  1958. elseif self._environment == 1 then
  1959. gameSkdEnv = "pre"
  1960. end
  1961. params.params.info = cjson.encode({
  1962. game_token = token,
  1963. game_id = tonumber(self.AuthProxy:getGameId()),
  1964. server_id = tonumber(self.loginProxy:GetSelectedServerId()),
  1965. role = self.PlayerProperty:GetName(),
  1966. server_name = self.loginProxy:GetSelectedServerName(),
  1967. role_id = global.playerManager:GetMainPlayerID(),
  1968. game_name = gameName,
  1969. vip = 0,
  1970. role_level = self.PlayerProperty:GetRoleLevel(),
  1971. game_type = 1,
  1972. job_id = job_id,
  1973. job_name = GetJobName(job_id),
  1974. gameSkdEnv = gameSkdEnv,
  1975. clientVersion = 1 --作为h5交易行更新标识符,兼容他们客户端用
  1976. })
  1977. self:addToCallFunc(params)
  1978. end
  1979. function OtherTradingBankProxy:showTradingView()
  1980. local params = {
  1981. action = "showTradingView",
  1982. isH5 = true,
  1983. params = {
  1984. },
  1985. }
  1986. self:addToCallFunc(params)
  1987. end
  1988. function OtherTradingBankProxy:IsInSafeArea()
  1989. local MapProxy = global.Facade:retrieveProxy( global.ProxyTable.Map )
  1990. local res = MapProxy:IsInSafeArea()
  1991. local params = {
  1992. action = "IsInSafeArea",
  1993. isH5 = true,
  1994. params = {
  1995. res = res and 1 or 0
  1996. },
  1997. }
  1998. dump(params,"IsInSafeArea___")
  1999. self:addToCallFunc(params)
  2000. end
  2001. function OtherTradingBankProxy:showBackToView()
  2002. if self._showBackToView then
  2003. return
  2004. end
  2005. local params = {
  2006. action = "showBackToView",
  2007. isH5 = true,
  2008. params = {
  2009. },
  2010. }
  2011. self._showBackToView = true
  2012. self:addToCallFunc(params)
  2013. end
  2014. function OtherTradingBankProxy:dismissBackToView()
  2015. if not self._showBackToView then
  2016. return
  2017. end
  2018. self._showBackToView = false
  2019. local params = {
  2020. action = "dismissBackToView",
  2021. isH5 = true,
  2022. params = {
  2023. },
  2024. }
  2025. self:addToCallFunc(params)
  2026. end
  2027. function OtherTradingBankProxy:setLoginSuccessTimes()
  2028. local uid = self.AuthProxy:GetUID() or ""
  2029. local params = {
  2030. action = "setLoginSuccessTimes",
  2031. isH5 = true,
  2032. params = {
  2033. time = os.time(),
  2034. uid = uid,
  2035. gameId = tonumber(self.AuthProxy:getGameId()),
  2036. },
  2037. }
  2038. self:addToCallFunc(params)
  2039. end
  2040. function OtherTradingBankProxy:initSDK()
  2041. local currModule = global.L_ModuleManager:GetCurrentModule()
  2042. local envProxy = global.Facade:retrieveProxy(global.ProxyTable.GameEnvironment)
  2043. local manifestVer = currModule:GetRemoteVersion() or ""
  2044. local channelID = envProxy:GetChannelID() or ""
  2045. local uid = self.AuthProxy:GetUID() or ""
  2046. local exData = {
  2047. app_ver = manifestVer,
  2048. channel = channelID,
  2049. id = uid
  2050. }
  2051. local jsonStr = cjson.encode(exData)
  2052. local params = {
  2053. action = "initSDK",
  2054. isH5 = true,
  2055. params = {
  2056. appid = self.appid ,
  2057. secret = self.secret,
  2058. exJsonStr = jsonStr
  2059. },
  2060. }
  2061. self:addToCallFunc(params)
  2062. end
  2063. function OtherTradingBankProxy:initReportParam()
  2064. local currModule = global.L_ModuleManager:GetCurrentModule()
  2065. local envProxy = global.Facade:retrieveProxy(global.ProxyTable.GameEnvironment)
  2066. local manifestVer = currModule:GetRemoteVersion() or ""
  2067. local channelID = envProxy:GetChannelID() or ""
  2068. local uid = self.AuthProxy:GetUID() or ""
  2069. local exData = {
  2070. app_ver = manifestVer,
  2071. channel = channelID,
  2072. id = uid
  2073. }
  2074. local jsonStr = cjson.encode(exData)
  2075. local params = {
  2076. action = "initReportParam",
  2077. isH5 = true,
  2078. params = {
  2079. exJsonStr = jsonStr
  2080. },
  2081. }
  2082. self:addToCallFunc(params)
  2083. end
  2084. return OtherTradingBankProxy