index.js 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155
  1. //index.js
  2. //获取应用实例
  3. const app = getApp()
  4. var id = 0;
  5. var playimg = '/images/icons/play.png';
  6. var pauseimg = '/images/icons/zanting.png';
  7. let innerAudioContext = null;
  8. Page({
  9. data: {
  10. taskContent: {
  11. title: '投诉内容',
  12. img: playimg,
  13. second: ''
  14. },
  15. image: {
  16. title: '图片'
  17. },
  18. video: {
  19. title: '视频'
  20. },
  21. summary: {
  22. title: '总结'
  23. },
  24. info: {},
  25. flag: 0
  26. },
  27. onLoad: function (res) {
  28. id = res.id;
  29. this.showData();
  30. },
  31. onShow: function () {
  32. var that = this;
  33. app.ajaxReadyCallback = res => {
  34. var imgs = [];
  35. if (res.data.data.images){
  36. imgs = res.data.data.images.split(',');
  37. }
  38. var info = {
  39. content: res.data.data.content,
  40. imgs: imgs,
  41. videos: res.data.data.videos,
  42. voices: res.data.data.voices,
  43. note:res.data.data.note,
  44. summary:res.data.data.summary,
  45. orderId:res.data.data.orderId,
  46. }
  47. that.setData({
  48. info: info
  49. });
  50. }
  51. },
  52. showData: function () {
  53. app.ajax({
  54. url: app.globalData.serverUrl + '/complain/detail',
  55. type: 'POST',
  56. data: {
  57. id: id,
  58. }
  59. });
  60. },
  61. playaudio: function(e){
  62. innerAudioContext = null;
  63. innerAudioContext = wx.createInnerAudioContext();
  64. innerAudioContext.autoplay = false;
  65. var audiosrc = e.currentTarget.dataset.audio;
  66. var flag = e.currentTarget.dataset.flag;
  67. var that = this;
  68. if(!audiosrc){
  69. wx.showToast({
  70. title: '未上传音频',
  71. icon: 'none',
  72. duration: 1500
  73. });
  74. return false;
  75. }
  76. if(flag == 0){ //播放
  77. innerAudioContext.autoplay = false;
  78. innerAudioContext.src = that.data.info.voices;
  79. innerAudioContext.play();
  80. }else{ //停止
  81. innerAudioContext.stop();
  82. }
  83. setTimeout(() => {
  84. innerAudioContext.duration;
  85. },300)
  86. innerAudioContext.onTimeUpdate(() => {
  87. var task = that.data.taskContent;
  88. task.second = innerAudioContext.duration.toFixed(1)+'"';
  89. that.setData({
  90. taskContent: task
  91. });
  92. })
  93. innerAudioContext.onPlay(() => {
  94. var task = that.data.taskContent;
  95. task.img = pauseimg;
  96. that.setData({
  97. flag: 1,
  98. taskContent: task
  99. })
  100. })
  101. innerAudioContext.onStop(() => {
  102. var task = that.data.taskContent;
  103. task.img = playimg;
  104. that.setData({
  105. flag: 0,
  106. taskContent: task
  107. })
  108. })
  109. innerAudioContext.onEnded(() => {
  110. var task = that.data.taskContent;
  111. task.img = playimg;
  112. that.setData({
  113. flag: 0,
  114. taskContent: task
  115. })
  116. })
  117. innerAudioContext.onError((res) => {
  118. wx.showToast({
  119. title: '音频播放失败',
  120. icon: 'none',
  121. duration: 1500
  122. });
  123. return false;
  124. })
  125. },
  126. //图片预览
  127. previewImage: function (e) {
  128. var current = e.target.dataset.src;
  129. wx.previewImage({
  130. current: current, // 当前显示图片的http链接
  131. urls: this.data.info.imgs, // 需要预览的图片http链接列表
  132. success: function (e) {
  133. console.log(e);
  134. }
  135. })
  136. },
  137. videotap: function(e){
  138. var video = e.target.dataset.video;
  139. app.gotopage('/pages/video/index', { video: video });
  140. },
  141. orderDetail: function(e){ //跳转到详情
  142. wx.navigateTo({
  143. url: '/pages/order/detail/index?id=' + this.data.info.orderId
  144. })
  145. },
  146. })