activityInfo.js 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147
  1. const { default: activity } = require("../../api/activity");
  2. import QRCode from '../../utils/weapp-qrcode.js'
  3. Page({
  4. /**
  5. * 页面的初始数据
  6. */
  7. data: {
  8. activityId:0, //活动id
  9. userMobile:'', //电话
  10. codeId:'',//code唯一码
  11. },
  12. /**
  13. * 生命周期函数--监听页面加载
  14. */
  15. onLoad: function (options) {
  16. console.log('接受参数');
  17. console.log(options);
  18. let _self = this;
  19. if(options.id){
  20. this.activityInfo(options.id)
  21. _self.setData({
  22. activityId:options.id,
  23. })
  24. }
  25. //用户手机
  26. if(options.mobile) {
  27. _self.setData({
  28. userMobile:options.mobile
  29. })
  30. }
  31. if(_self.data.activityId!=0 && _self.data.userMobile!='') {
  32. //获取code
  33. _self.getCode()
  34. }
  35. },
  36. /**
  37. * 生命周期函数--监听页面初次渲染完成
  38. */
  39. onReady: function () {
  40. },
  41. /**
  42. * 生命周期函数--监听页面显示
  43. */
  44. onShow: function () {
  45. },
  46. /**
  47. * 生命周期函数--监听页面隐藏
  48. */
  49. onHide: function () {
  50. },
  51. /**
  52. * 生命周期函数--监听页面卸载
  53. */
  54. onUnload: function () {
  55. },
  56. /**
  57. * 页面相关事件处理函数--监听用户下拉动作
  58. */
  59. onPullDownRefresh: function () {
  60. },
  61. /**
  62. * 页面上拉触底事件的处理函数
  63. */
  64. onReachBottom: function () {
  65. },
  66. /**
  67. * 用户点击右上角分享
  68. */
  69. onShareAppMessage: function () {
  70. },
  71. /**
  72. * 获取活动详细信息
  73. * @param {*} activityId
  74. */
  75. async activityInfo(activityId){
  76. let result = await activity.getActivityDetail(activityId);
  77. console.log('获取活动详细信息');
  78. console.log(result)
  79. var objSwitch = getApp().globalData.typeSwitchObj
  80. var couponTypeAndNumObj = {};
  81. var couponList = result.activityCouponList;
  82. for (let j = 0; j < couponList.length; j++) {
  83. var couponNum = couponList[j]['num'] ? couponList[j]['num'] : 1;
  84. var value = couponList[j]['coupon']['type'];
  85. var showText = objSwitch[couponList[j]['coupon']['type']];
  86. var nowNume = 0;
  87. if (couponTypeAndNumObj[value]) {
  88. nowNume = couponTypeAndNumObj[value]['num'];
  89. console.log(nowNume)
  90. }
  91. couponTypeAndNumObj[value] = {
  92. "typeText": showText,
  93. "num": couponNum + nowNume
  94. }
  95. }
  96. result.couponTypeAndNumObj = couponTypeAndNumObj
  97. this.setData({
  98. activityInfo:result
  99. })
  100. },
  101. /**
  102. * 获取分享码
  103. */
  104. async getCode() {
  105. let _self = this;
  106. let res = await activity.createShareActivityCode(_self.data.activityId,_self.data.userMobile);
  107. _self.setData({
  108. codeId:res.codeId,
  109. })
  110. //根据codeId 生成二维码
  111. new QRCode('myQrcode',{
  112. // text: 'https://oapi.shpr.top?id=Bg5740r78w',
  113. text: 'https://oapi.shpr.top?id='+_self.data.codeId,
  114. width: 150,
  115. height:150,
  116. padding: 10, // 生成二维码四周自动留边宽度,不传入默认为0
  117. correctLevel: QRCode.CorrectLevel.L, // 二维码可辨识度
  118. callback: (res) => {
  119. console.log(res.path)
  120. // 接下来就可以直接调用微信小程序的api保存到本地或者将这张二维码直接画在海报上面去,看各自需求
  121. }
  122. })
  123. }
  124. })