beforetest.js 9.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373
  1. const app=getApp();
  2. var util=require("../../../utils/util")
  3. var utils=require("../../../utils/http");
  4. var stoptime=0;
  5. Page({
  6. /**
  7. * 页面的初始数据
  8. */
  9. data: {
  10. imgUrl:app.globalData.imgUrl,
  11. nextsrc:'',
  12. toolobj:'',
  13. testurl:'',
  14. type:'',
  15. loginFlag:false,
  16. phoneFlag:false,
  17. errorText:'请求错误!',
  18. oneButton: [{text: '确定'}],
  19. share_user_id:'',
  20. canIUseGetUserProfile: false,
  21. shareidflag:false,
  22. employeeflag:false,
  23. top:app.globalData.statusBarHeight,
  24. hgt:app.globalData.titleBarHeight,
  25. },
  26. /**
  27. * 生命周期函数--监听页面加载
  28. */
  29. onLoad: function (options) {
  30. var that=this;
  31. wx.showLoading({
  32. title: '数据加载中...',
  33. })
  34. if (wx.getUserProfile) {
  35. this.setData({
  36. canIUseGetUserProfile: true
  37. })
  38. }
  39. this.setData({
  40. type:options.type,
  41. nextsrc:options.type
  42. })
  43. app.globalData.clientype=options.clientype;
  44. // if(!!options.share_user_id){
  45. // 客户点击进来
  46. wx.hideHomeButton();
  47. app.globalData.shareuserid=options.share_user_id;
  48. that.login();
  49. that.setData({
  50. share_user_id:options.share_user_id,
  51. shareidflag:false
  52. })
  53. // }else{
  54. // that.setData({
  55. // shareidflag:false
  56. // })
  57. // that.getnum();
  58. // }
  59. },
  60. login:function(){
  61. var that=this;
  62. wx.login({
  63. success: function (data) {
  64. if (data.errMsg == 'login:ok') {
  65. utils.$post({
  66. url: app.globalData.webUrl + 'api/users/code2sessionmini',
  67. data: {
  68. code: data.code,
  69. share: that.data.share_user_id,
  70. client_type:app.globalData.clientype
  71. },
  72. success: function (r) {
  73. if(r.data.code=='0'){
  74. app.globalData.token=r.data.token;
  75. app.globalData.sharepersonobj=r.data.share?r.data.share:r.data.user;
  76. app.globalData.companyobj=r.data.company_data;
  77. app.globalData.personMsg = r.data.user;
  78. app.globalData.companyname=r.data.company;
  79. app.globalData.official_openid = r.data.official_openid;
  80. app.globalData.agentEmployeEid = r.data.agent_employee_id;
  81. that.getnum();
  82. if(!!r.data.user.phone){
  83. app.globalData.personMsg=r.data.user;
  84. app.globalData.sharename=!!r.data.share?r.data.share.nickname:r.data.user.nickname;
  85. that.setData({
  86. loginFlag:false,
  87. phoneFlag:false,
  88. employeeflag: (!!r.data.user.binded && r.data.user.binded.state == '在职') ? true : false,
  89. })
  90. if (!!r.data.user.binded && r.data.user.binded.state == '在职'){
  91. app.globalData.currentUserId = r.data.user.binded.id;
  92. }
  93. app.globalData.use_id=r.data.user.id;
  94. app.globalData.userflag=false;//有个人信息
  95. app.globalData.phone=true;//有手机号
  96. wx.hideLoading();
  97. }else{
  98. wx.hideLoading();
  99. that.setData({
  100. errorflag:true,
  101. loginFlag:false,
  102. phoneFlag:true
  103. })
  104. }
  105. }
  106. }
  107. })
  108. }
  109. }
  110. })
  111. },
  112. goindextap:function(){
  113. wx.reLaunch({
  114. url: '/pages/consoledesk/consoledesk',
  115. })
  116. },
  117. getnum:function(){
  118. let that=this;
  119. utils.$post({
  120. url: app.globalData.webUrl + 'api/tool/toolsnumbers',
  121. header: {
  122. 'Authorization':'bearer '+app.globalData.token
  123. },
  124. data:{
  125. id:that.data.aid,
  126. user:that.data.shareuserid
  127. },
  128. success: function (res) {
  129. if(res.data.code=='0'){
  130. let arr=that.toolobj(res.data.data);
  131. that.setData({
  132. toolobj:arr
  133. })
  134. }
  135. }
  136. })
  137. },
  138. toolobj:function(arr){
  139. var that=this;
  140. var obj={};
  141. for(var i=0;i<arr.length;i++){
  142. obj[arr[i].tool_type]={
  143. share_number:arr[i].share_number,
  144. use_number:arr[i].use_number
  145. }
  146. }
  147. return obj;
  148. },
  149. /**
  150. * 生命周期函数--监听页面初次渲染完成
  151. */
  152. onReady: function () {
  153. },
  154. getUserProfile: function () {
  155. var that=this;
  156. wx.getUserProfile({
  157. lang:'zh_CN',
  158. desc: '为了更好的体验申请获取以下信息', // 声明获取用户个人信息后的用途,后续会展示在弹窗中,请谨慎填写
  159. success: (res) => {
  160. if(res.errMsg=='getUserProfile:ok'){
  161. utils.$post({
  162. url: app.globalData.webUrl + 'api/users/setUserInfo',
  163. data: {
  164. encryptedData:res.encryptedData,
  165. iv:res.iv,
  166. rawData:res.rawData,
  167. signature:res.signature,
  168. },
  169. header: {
  170. 'Authorization':'bearer '+app.globalData.token
  171. },
  172. success: function (r) {
  173. if(r.data.code=='0'){
  174. that.setData({
  175. loginFlag:false,
  176. phoneFlag:true
  177. })
  178. app.globalData.userflag=false;//有个人信息
  179. that.login();
  180. }else{
  181. that.setData({
  182. errorText:r.data.msg,
  183. errorflag:true,
  184. loginFlag:true
  185. })
  186. }
  187. }
  188. })
  189. }else{
  190. that.setData({
  191. loginFlag:true
  192. })
  193. }
  194. }
  195. })
  196. },
  197. getUserInfoTap:function(res){
  198. var that=this;
  199. if(res.detail.errMsg=='getUserInfo:ok'){
  200. utils.$post({
  201. url: app.globalData.webUrl + 'api/users/setUserInfo',
  202. data: {
  203. encryptedData:res.detail.encryptedData,
  204. iv:res.detail.iv,
  205. rawData:res.detail.rawData,
  206. signature:res.detail.signature,
  207. },
  208. header: {
  209. 'Authorization':'bearer '+app.globalData.token
  210. },
  211. success: function (r) {
  212. if(r.data.code=='0'){
  213. that.setData({
  214. loginFlag:false,
  215. phoneFlag:true
  216. })
  217. app.globalData.userflag=false;//有个人信息
  218. that.login();
  219. }else{
  220. that.setData({
  221. errorText:r.data.msg,
  222. errorflag:true,
  223. loginFlag:true
  224. })
  225. }
  226. }
  227. })
  228. }else{
  229. that.setData({
  230. loginFlag:true
  231. })
  232. }
  233. },
  234. getPhoneNumberTap:function(res){
  235. var that=this;
  236. if(res.detail.errMsg=='getPhoneNumber:ok'){
  237. utils.$post({
  238. url: app.globalData.webUrl + 'api/users/setUserMobile',
  239. data: {
  240. encryptedData:res.detail.encryptedData,
  241. iv:res.detail.iv
  242. },
  243. header: {
  244. 'Authorization':'bearer '+app.globalData.token
  245. },
  246. success: function (r) {
  247. if(r.data.code=='0'){
  248. that.login();
  249. app.globalData.phone=true;
  250. that.setData({
  251. phoneFlag:false
  252. })
  253. }else{
  254. that.setData({
  255. errorText:r.data.msg,
  256. errorflag:true
  257. })
  258. }
  259. }
  260. })
  261. }
  262. },
  263. /**
  264. * 生命周期函数--监听页面显示
  265. */
  266. onShow: function () {
  267. stoptime=0;
  268. setTimeout(function(){
  269. stoptime=stoptime*1+1;
  270. },1000)
  271. },
  272. /**
  273. * 生命周期函数--监听页面隐藏
  274. */
  275. onHide: function () {
  276. },
  277. /**
  278. * 生命周期函数--监听页面卸载
  279. */
  280. onUnload: function () {
  281. },
  282. /**
  283. * 页面相关事件处理函数--监听用户下拉动作
  284. */
  285. onPullDownRefresh: function () {
  286. },
  287. /**
  288. * 页面上拉触底事件的处理函数
  289. */
  290. onReachBottom: function () {
  291. },
  292. nextrouteTap:function(){
  293. wx.navigateTo({
  294. url: "/share/pages/customertool/customertool?type="+this.data.nextsrc,
  295. });
  296. },
  297. addshare:function(){
  298. var that=this;
  299. var type="";
  300. if(that.data.type=='decorateoffer'){
  301. type='priceCalculation';
  302. }else if(that.data.type=='housestyle'){
  303. type='styleTest';
  304. }else{
  305. type='likeTest';
  306. }
  307. utils.$post({
  308. url: app.globalData.webUrl + 'api/tool/tool_share',
  309. header: {
  310. 'Authorization':'bearer '+app.globalData.token
  311. },
  312. data:{
  313. type:type// 装修风格/styleTest 老房翻新/likeTest
  314. },
  315. success: function (res) {
  316. }
  317. })
  318. },
  319. addsharetap: function (type) {
  320. let that = this;
  321. utils.$post({
  322. url: app.globalData.webUrl + 'api/share/addlog',
  323. header: {
  324. 'Authorization': 'bearer ' + app.globalData.token
  325. },
  326. data: {
  327. id: '0',
  328. type: type,
  329. },
  330. success: function (r) {}
  331. })
  332. },
  333. /**
  334. * 用户点击右上角分享
  335. */
  336. onShareAppMessage: function () {
  337. var title;
  338. var that=this;
  339. var img="../../img/sharezqxg.jpg";
  340. that.addsharetap('customerJsAll');
  341. if(this.data.type=='decorateoffer'){
  342. title='装修报价算一算'
  343. img='https://o.nczyzs.com/xcx/pricetool.jpg';
  344. }else if(this.data.type=='housestyle'){
  345. title='装修风格测一测'
  346. img='https://o.nczyzs.com/xcx/styletool.jpg';
  347. }else{
  348. title='老房翻新测一测'
  349. img="../../img/oldbewell.jpg";
  350. }
  351. this.addshare();
  352. return {
  353. title: title, // 默认是小程序的名称(可以写slogan等)
  354. path: '/share/pages/beforetest/beforetest?type=' + this.data.type + "&share_user_id=" + app.globalData.shareuserid+"&clientype="+app.globalData.clientype,
  355. imageUrl: img, //自定义。显示图片长宽比是 5:4
  356.   }
  357. }
  358. })