index.ts 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230
  1. import { appConfig } from '../../config/index';
  2. import Dialog from '../../miniprogram_npm/@vant/weapp/dialog/dialog'
  3. import { queryBankAccountSign } from '../../services/api/account/index';
  4. import { accountid, getLoginCode, loginid, loginQuery, setLoginCode, taAccount, userid } from '../../services/utils';
  5. import { hideLoading, showLoading, showToast } from '../../utils/message/index';
  6. Page({
  7. /**
  8. * 页面的初始数据
  9. */
  10. data: {
  11. /// 图片地址
  12. imgUrl: appConfig.imgUrl,
  13. // 功能菜单项
  14. menulists: [{id: 1, title: '我的库存', img: 'mine-wdkc', path: '/mMine/pages/myinventorys/list/index'},
  15. {id: 2, title: "我的订单", img: 'mine-wddd', path: '/mMine/pages/myorders/list/index'},
  16. {id: 3, title: '我的履约', img: 'mine-wdly', path: '/mMine/pages/myperformance/list/index'},
  17. {id: 4, title: '我的出境', img: 'mine-cjjc', path: '/mHome/pages/inspection/list/index'},
  18. {id: 5, title: '我的保税', img: 'mine-bsfw', path: '/mHome/pages/bond/list/index'}],
  19. // 列表菜单项
  20. tablelists: [{id: 1, title: '签约账户', iconfont: 'mine-qyzh', path: '/mMine/pages/bank/index'},
  21. {id: 2, title: '收货地址', iconfont: 'mine-shdz', path: '/mMine/pages/address/list/index'},
  22. {id: 3, title: '发票信息', iconfont: 'mine-fpxx', path: '/mMine/pages/invoice/list/index'},
  23. {id: 4, title: '账户安全', iconfont: 'mine-mmxg', path: '/mMine/pages/modifypwd/index'},
  24. {id: 5, title: '关于我们', iconfont: 'mine-gywm', path: '/mMine/pages/about/about/index'}],
  25. /// 微信头像
  26. avatarUrl: wx.getStorageSync('avatarUrl'),
  27. /// 微信昵称
  28. nickName: '',
  29. /// 资金账户信息
  30. ta: <GuangZuan.TaAccount>({}),
  31. /// 登录账号
  32. loginid: loginid(),
  33. /// 是否脱敏显示
  34. isOpenEye: false,
  35. /// 签约信息
  36. sign: <GuangZuan.BankAccountSign>({}),
  37. /// 状态栏高度
  38. statusBarHeight: getApp().globalData.statusBarHeight,
  39. /// 导航栏高度
  40. navHeight: getApp().globalData.navHeight
  41. },
  42. onEye() {
  43. this.setData({
  44. isOpenEye: !this.data.isOpenEye
  45. })
  46. },
  47. /**
  48. * 按钮点击响应事件
  49. */
  50. onButtonPressed(e: any) {
  51. /// 出入金操作
  52. this.goToInOutGold(e.target.id)
  53. },
  54. /// 出入金操作
  55. goToInOutGold(id: string) {
  56. if (this.data.sign === undefined) {
  57. showToast('当前未查询到签约信息,请先签约!')
  58. return
  59. }
  60. switch (id) {
  61. case 'into-gold': /// 充值
  62. wx.navigateTo({ url: '/mMine/pages/inoutgold/index?id=0' })
  63. break;
  64. default: /// 提现
  65. wx.navigateTo({ url: '/mMine/pages/inoutgold/index?id=1' })
  66. break;
  67. }
  68. },
  69. /**
  70. * 进入系统设置
  71. */
  72. goToSettings() {
  73. wx.navigateTo({
  74. url: '/mMine/pages/settings/settings'
  75. })
  76. },
  77. /**
  78. * 生命周期函数--监听页面加载
  79. */
  80. onLoad() {
  81. this.setData({
  82. /// 设置账户信息
  83. ta: taAccount(accountid()),
  84. nickName: loginQuery().userInfo.customername
  85. })
  86. /// 查询签约信息
  87. this.queryBankAccountSign()
  88. },
  89. /**
  90. * 获取用户信息
  91. */
  92. getUserInfo() {
  93. /// 如果不为空
  94. if (this.data.avatarUrl != '') {
  95. return
  96. }
  97. wx.getUserProfile({
  98. desc: '获取微信头像',
  99. success: (res) => {
  100. /// 存储头像
  101. wx.setStorageSync('avatarUrl', res.userInfo.avatarUrl)
  102. /// 显示信息
  103. this.setData({
  104. avatarUrl: res.userInfo.avatarUrl
  105. })
  106. }, fail: () => {
  107. showToast('获取用户头像失败!')
  108. }
  109. })
  110. },
  111. /**
  112. * 查询用户已签约信息
  113. */
  114. queryBankAccountSign() {
  115. /// loding.....
  116. showLoading(() => {
  117. /// 发送请求
  118. queryBankAccountSign({
  119. data: {
  120. userid: userid()
  121. },
  122. success: (res) => {
  123. /// 请求失败
  124. if (res.code != 200) {
  125. hideLoading(() => {}, '用户签约信息请求失败,原因:'+res.msg)
  126. return
  127. }
  128. hideLoading(() => {
  129. const sign = res.data.filter(obj => {
  130. return obj.signstatus === 2 || obj.signstatus === 3 || obj.signstatus === 4
  131. })[0]
  132. /// 数据赋值
  133. this.setData({ sign: sign })
  134. })
  135. },
  136. fail: (emsg) => {
  137. hideLoading(() => {}, emsg)
  138. }
  139. })
  140. })
  141. },
  142. /**
  143. * 系统登出响应
  144. */
  145. onLoginOut() {
  146. Dialog.confirm({
  147. title: '提示',
  148. message: '确定要退出系统吗?',
  149. }).then(() => {
  150. /// 获取上次登录账号
  151. const username = getLoginCode()
  152. /// 清楚所有的缓存数据
  153. wx.clearStorage()
  154. /// 设置登录账号
  155. setLoginCode(username)
  156. /// loding....
  157. showLoading(()=>{
  158. /// 登出
  159. setTimeout(function () {
  160. hideLoading(()=>{
  161. // on confirm
  162. wx.reLaunch({ url: '/pages/login/index' })
  163. }, '登出成功', 'success')
  164. }, 3000)
  165. }, '登出中....')
  166. }).catch(() => {
  167. // on cancel
  168. });
  169. },
  170. /**
  171. * 生命周期函数--监听页面初次渲染完成
  172. */
  173. onReady() {
  174. },
  175. /**
  176. * 生命周期函数--监听页面显示
  177. */
  178. onShow() {
  179. this.getTabBar().init()
  180. },
  181. /**
  182. * 生命周期函数--监听页面隐藏
  183. */
  184. onHide() {
  185. },
  186. /**
  187. * 生命周期函数--监听页面卸载
  188. */
  189. onUnload() {
  190. },
  191. /**
  192. * 页面相关事件处理函数--监听用户下拉动作
  193. */
  194. onPullDownRefresh() {
  195. },
  196. /**
  197. * 页面上拉触底事件的处理函数
  198. */
  199. onReachBottom() {
  200. },
  201. /**
  202. * 用户点击右上角分享
  203. */
  204. onShareAppMessage() {
  205. }
  206. })