1
0

address.js 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. var util = require('../../../utils/util.js');
  2. var api = require('../../../config/api.js');
  3. var app = getApp();
  4. // 引入SDK核心类
  5. var QQMapWX = require('../../../lib/qqmap/qqmap-wx-jssdk.js');
  6. // 实例化API核心类
  7. var qqMap = new QQMapWX({
  8. key: 'BNVBZ-U7RHQ-UUM5Q-GLW6J-SOKSZ-4GBDL' // 必填
  9. });
  10. Page({
  11. data: {
  12. addressList: [],
  13. },
  14. onLoad: function (options) {
  15. // 页面初始化 options为页面跳转所带来的参数
  16. this.getAddressList();
  17. },
  18. onReady: function () {
  19. // 页面渲染完成
  20. },
  21. onShow: function () {
  22. // 页面显示
  23. },
  24. getAddressList() {
  25. let that = this;
  26. util.request(api.AddressList).then(function (res) {
  27. if (res.errno === 0) {
  28. that.setData({
  29. addressList: res.data
  30. });
  31. }
  32. });
  33. },
  34. addressAddOrUpdate(event) {
  35. console.log(event)
  36. wx.navigateTo({
  37. url: '/pages/ucenter/addressAdd/addressAdd?id=' + event.currentTarget.dataset.addressId
  38. })
  39. },
  40. deleteAddress(event) {
  41. console.log(event.target)
  42. let that = this;
  43. wx.showModal({
  44. title: '',
  45. content: '确定要删除地址?',
  46. success: function (res) {
  47. if (res.confirm) {
  48. let addressId = event.target.dataset.addressId;
  49. util.request(api.AddressDelete, { id: addressId }, 'POST').then(function (res) {
  50. if (res.errno === 0) {
  51. that.getAddressList();
  52. }
  53. });
  54. console.log('用户点击确定')
  55. }
  56. }
  57. })
  58. return false;
  59. },
  60. getWtAddress() {
  61. let that = this;
  62. wx.chooseAddress({
  63. success: function (res) {
  64. console.log(res.detailInfo);
  65. qqMap.geocoder({ //调用地址解析类
  66. address: res.provinceName+","+res.cityName+","+res.countyName+","+ res.detailInfo,
  67. success: gcres => {
  68. res.latitude = gcres.result.location.lat;
  69. res.longitude = gcres.result.location.lng;
  70. that.syncAddress(res);
  71. },
  72. fail: function (gcres) {
  73. console.log("fail:" + gcres);
  74. that.syncAddress(res);
  75. },
  76. complete: function (gcres) {
  77. console.log("complete:" + gcres);
  78. }
  79. });
  80. }
  81. })
  82. },
  83. syncAddress(res) {
  84. let that = this;
  85. if (!(/^1[34578]\d{9}$/.test(res.telNumber)) || res.telNumber.length != 11) {
  86. util.showErrorToast('手机号有误');
  87. return false;
  88. }
  89. util.request(api.AddressSync, {
  90. userName: res.userName,
  91. telNumber: res.telNumber,
  92. provinceName: res.provinceName,
  93. cityName: res.cityName,
  94. countyName: res.countyName,
  95. detailInfo: res.detailInfo,
  96. postalCode: res.postalCode,
  97. nationalCode: res.nationalCode,
  98. latitude: res.latitude,
  99. longitude: res.longitude
  100. }, 'POST').then(function (res) {
  101. if (res.errno === 0) {
  102. that.getAddressList();
  103. } else {
  104. util.showErrorToast(res.errmsg);
  105. }
  106. });
  107. },
  108. onHide: function () {
  109. // 页面隐藏
  110. },
  111. onUnload: function () {
  112. // 页面关闭
  113. }
  114. })