shareuser.js 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. import common from '../../utils/util';
  2. import main from '../../utils/main';
  3. const app = getApp();
  4. var downloadNumber = 0;
  5. var shareUrl = "";
  6. Page({
  7. data: {},
  8. onLoad: function (options) {
  9. this.setData({
  10. Containnerheight: main.getWindowHeight(),
  11. ServerImage: app.globalData.uploadImageUrl + "web/"
  12. });
  13. this.init();
  14. downloadNumber = 0;
  15. shareUrl = "WebExtend?UserID=" + app.globalData.userInfo.UserID;
  16. shareUrl = app.globalData.serverUrl + common.Encrypt(shareUrl);
  17. },
  18. init: function () {
  19. var that = this;
  20. main.getData('GetMiaoguoShareInfo220?Version=' + app.globalData.Version, function (data) {
  21. wx.hideLoading();
  22. if (data) {
  23. that.setData({
  24. List: data,
  25. });
  26. }
  27. });
  28. main.getData("GetClassList?Flag=0", function (data) {
  29. if (data && data.length > 0) {
  30. that.setData({
  31. StartDate: common.formatDateCHS(data[0].StartDate),
  32. })
  33. }
  34. });
  35. },
  36. buildImage: function (e) {
  37. var that = this;
  38. if (!app.globalData.userInfo) {
  39. app.globalData.userInfo = {};
  40. app.globalData.userInfo.UserID = 1;
  41. }
  42. wx.showLoading({
  43. title: '请稍候',
  44. });
  45. var id = e.currentTarget.dataset.id;
  46. var imageUrl = '../../pages_agent/images/promotion_poster0' + id + '.png';
  47. var timeout = 100;
  48. //如果没有生成过二维码,则生成
  49. if (!app.globalData.userInfo.HasACode) {
  50. var imageQRCode = "BuildMiaoguoQRCode?IsWeb=1&UserID=" + app.globalData.userInfo.UserID;
  51. console.log(imageQRCode);
  52. main.getData(imageQRCode, function (data) {});
  53. timeout = 5000;
  54. app.globalData.userInfo.HasACode=1;
  55. }
  56. var downloadUrl = app.globalData.uploadImageUrl + "MiaoguoUser" + common.Encrypt(app.globalData.userInfo.UserID) + ".png";
  57. setTimeout(function () {
  58. var downloadTask = wx.downloadFile({
  59. url: downloadUrl,
  60. success(res) {
  61. if (res.statusCode === 200) {
  62. var downloadTask2 = wx.downloadFile({
  63. url: app.globalData.userInfo.AvatarUrl,
  64. success(res2) {
  65. if (res2.statusCode === 200) {
  66. var canvas = wx.createCanvasContext("shareCanvas", that);
  67. canvas.drawImage(imageUrl, 0, 0, 750, 1110);
  68. canvas.drawImage(res2.tempFilePath, 30, 995, 70, 70);
  69. canvas.drawImage("../../pages_agent/images/promotion_face_circle.png", 30, 995, 70, 70);
  70. canvas.drawImage(res.tempFilePath, 600, 970, 120, 120);
  71. canvas.draw(1, function (n) {
  72. wx.canvasToTempFilePath({
  73. x: 0,
  74. y: 0,
  75. width: 750,
  76. height: 1110,
  77. destWidth: 750,
  78. destHeight: 1110,
  79. canvasId: 'shareCanvas',
  80. success: function (res2) {
  81. console.log(res2.tempFilePath);
  82. wx.hideLoading();
  83. wx.previewImage({
  84. current: res2.tempFilePath, // 当前显示图片的http链接
  85. urls: [res2.tempFilePath] // 需要预览的图片http链接列表
  86. });
  87. },
  88. fail: function (err) {
  89. wx.hideLoading();
  90. }
  91. })
  92. });
  93. }
  94. }
  95. });
  96. } else {
  97. wx.hideLoading();
  98. }
  99. },
  100. fail: function (err) {
  101. console.log("err:" + err);
  102. wx.hideLoading();
  103. downloadNumber++;
  104. if (downloadNumber < 3)
  105. that.buildImage();
  106. }
  107. });
  108. downloadTask.onProgressUpdate((res) => {
  109. console.log('下载进度', res.progress)
  110. console.log('已经下载的数据长度', res.totalBytesWritten)
  111. console.log('预期需要下载的数据总长度', res.totalBytesExpectedToWrite)
  112. })
  113. }, timeout);
  114. },
  115. buildUrl: function () {
  116. wx.setClipboardData({
  117. data: shareUrl,
  118. success(res) {
  119. wx.showToast({
  120. title: '已复制',
  121. });
  122. }
  123. });
  124. },
  125. buildText: function () {
  126. var text = "我家孩子在用「秒过」小程序做复习。它可以解决错别字、背古诗、记单词,还能牢记词语、成语、公式、定理、史地政等一切基础知识,都可以用它来练习。详情体验:" + shareUrl;
  127. wx.setClipboardData({
  128. data: text,
  129. success(res) {
  130. wx.showToast({
  131. title: '已复制',
  132. });
  133. }
  134. });
  135. },
  136. onShareAppMessage: function () {
  137. return {
  138. title: app.globalData.ShareTitle,
  139. path: app.globalData.SharePath + '?UserID=' + app.globalData.userInfo.UserID,
  140. imageUrl: "../../pages/images/program_screenshot_main.png",
  141. }
  142. },
  143. });