You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

296 lines
7.6 KiB

  1. const config = require('../../../config/config.js')
  2. const Http = require('../../../utils/http.js')
  3. const HttpBasics = require('../../../utils/HttpBasics.js')
  4. const app = getApp()
  5. const format = require('../../../utils/util.js')
  6. Page({
  7. data: {
  8. list: [],
  9. getFullYear: new Date().getFullYear(),
  10. getMonth: new Date().getMonth() + 1,
  11. getDate: new Date().getDate(),
  12. dateTime: '',
  13. flag: true,
  14. defaultId: 0,
  15. text: '',
  16. page: 1,
  17. dataList: [],
  18. nowDateTime: '',
  19. hide: false,
  20. name: '',
  21. timeName: '',
  22. todayDate: "",
  23. pageNum: 1,
  24. amount: "",
  25. total: "",
  26. type: ""
  27. },
  28. //进到记录页面初始化显示的数据
  29. getList(statetId, page, dateTime) {
  30. let {
  31. dataList,
  32. show,
  33. isShow,
  34. listInfo
  35. } = this.data
  36. if (statetId == 0) {
  37. //今日交易额记录
  38. return new Promise((resolve, reject) => {
  39. Http.getRequest(config.api.couponOrderListUnVerified, app.globalData.token, '加载中', {
  40. date: dateTime,
  41. pageNum: page,
  42. pageSize: 8,
  43. }, (res) => {
  44. console.log(res)
  45. if (res.data.list.list && res.data.list.list.length > 0) {
  46. res.data && res.data.list.list.map(file => {
  47. file.expiredTime = format.formatTime(file.expiredTime, 'yyyy-MM-dddd hh:mm:ss')
  48. file.createDate = format.formatTime(file.createDate, 'yyyy-MM-dddd hh:mm:ss')
  49. file.updateDate = format.formatTime(file.updateDate, 'yyyy-MM-dddd hh:mm:ss')
  50. file.ids = file.id.slice(0, 4) + `******` + file.id.slice(14)
  51. dataList.push(file)
  52. })
  53. } else {
  54. dataList = []
  55. }
  56. this.setData({
  57. list: dataList,
  58. hide: res.data.list.list == 0 ? true : false
  59. })
  60. console.log(this.data.list)
  61. resolve(res)
  62. })
  63. })
  64. } else {
  65. //今日核销记录
  66. return new Promise((resolve, reject) => {
  67. Http.getRequest(config.api.couponOrderListVerified, app.globalData.token, '加载中', {
  68. date: dateTime,
  69. pageNum: page,
  70. pageSize: 10,
  71. }, (res) => {
  72. console.log(res)
  73. if (res.data.list && res.data.list.list.length > 0) {
  74. res.data && res.data.list.list.map(file => {
  75. file.expiredTime = format.formatTime(file.expiredTime, 'yyyy-MM-dddd hh:mm:ss')
  76. file.createDate = format.formatTime(file.createDate, 'yyyy-MM-dddd hh:mm:ss')
  77. file.updateDate = format.formatTime(file.updateDate, 'yyyy-MM-dddd hh:mm:ss')
  78. file.ids = file.id.slice(0, 4) + `******` + file.id.slice(14)
  79. dataList.push(file)
  80. })
  81. } else {
  82. dataList = []
  83. }
  84. this.setData({
  85. list: dataList,
  86. hide: res.data.list.list == 0 ? true : false
  87. })
  88. resolve(res)
  89. })
  90. })
  91. }
  92. },
  93. getListV2() {
  94. const that = this
  95. const pageNum = that.data.pageNum
  96. const data = {
  97. pageNum,
  98. pageSize: 20,
  99. startDate: that.data.todayDate + " 00:00:00",
  100. endDate: that.data.todayDate + " 23:59:59"
  101. // startDate: " 00:00:00",
  102. // endDate: " 23:59:59"
  103. }
  104. HttpBasics.get({
  105. url: config.api.couponOrderListVerifiedV2,
  106. data
  107. })
  108. .then(res => {
  109. console.log(res, 'res');
  110. if (res.data.list && res.data.list.list.length > 0) {
  111. res.data && res.data.list.list.map(file => {
  112. file.expiredTime = format.formatTime(file.expiredTime, 'yyyy-MM-dddd hh:mm:ss')
  113. file.createDate = format.formatTime(file.createDate, 'yyyy-MM-dddd hh:mm:ss')
  114. file.updateDate = format.formatTime(file.updateDate, 'yyyy-MM-dddd hh:mm:ss')
  115. file.ids = file.id.slice(0, 4) + `******` + file.id.slice(14)
  116. })
  117. }
  118. if (pageNum == 1) {
  119. that.setData({
  120. list: res.data.list.list,
  121. // amount: res.data.amount / 100
  122. })
  123. } else if (pageNum > 1) {
  124. const list = that.data.list
  125. // let amount = that.data.amount + res.data.amount
  126. res.data.list.list.forEach(item => {
  127. list.push(item)
  128. })
  129. that.setData({
  130. list,
  131. // amount
  132. })
  133. }
  134. wx.hideLoading()
  135. }).catch(err => {
  136. })
  137. },
  138. getSum() {
  139. const that = this
  140. const data = {
  141. startDate: that.data.todayDate + " 00:00:00",
  142. endDate: that.data.todayDate + " 23:59:59"
  143. }
  144. HttpBasics.get({
  145. url: config.api.couponOrderSumVerified,
  146. data
  147. })
  148. .then(res => {
  149. console.log(res, 'res');
  150. that.setData({
  151. amount: res.data.amount / 100,
  152. total: res.data.total
  153. })
  154. }).catch(err => {
  155. console.log(err, 'err');
  156. })
  157. },
  158. onLoad(e) {
  159. let {
  160. page,
  161. getFullYear,
  162. getMonth,
  163. getDate,
  164. dateTime
  165. } = this.data
  166. let nowTime = getFullYear + '-' + getMonth + '-' + getDate
  167. this.setData({
  168. dateTime: nowTime,
  169. nowDateTime: nowTime,
  170. type: e.type
  171. })
  172. if (e.type == '0') { // 交易流水
  173. this.setData({
  174. flag: true,
  175. text: '未核销',
  176. defaultId: e.type,
  177. name: '购买用户',
  178. timeName: '购买时间'
  179. })
  180. wx.setNavigationBarTitle({
  181. title: '交易记录',
  182. })
  183. this.getList(e.type, page, nowTime)
  184. } else { // 核销
  185. this.setData({
  186. flag: false,
  187. text: '已核销',
  188. defaultId: e.type,
  189. name: '核销员',
  190. timeName: '核销时间'
  191. })
  192. wx.setNavigationBarTitle({
  193. title: '核销记录',
  194. })
  195. let myDate = new Date();
  196. let date_value = myDate.getFullYear() + '-' + (myDate.getMonth() + 1) + '-' + myDate.getDate();
  197. this.setData({
  198. todayDate: date_value
  199. })
  200. this.getListV2()
  201. this.getSum()
  202. }
  203. },
  204. onShow() {
  205. },
  206. onReachBottom() {
  207. if (e.type == '0') {
  208. let {
  209. page,
  210. defaultId,
  211. dateTime,
  212. } = this.data
  213. page += 1
  214. this.getList(defaultId, page, dateTime)
  215. } else {
  216. wx.showLoading({
  217. title: '玩命加载中',
  218. })
  219. let pageNum = this.data.pageNum + 1
  220. this.setData({
  221. pageNum
  222. })
  223. this.getListV2()
  224. this.getSum()
  225. }
  226. },
  227. refund(e) {
  228. console.log(e.currentTarget.dataset.id) //从这里拿到当前的id
  229. Http.postRequest(config.api.refundOrderCreate, app.globalData.token, '加载中', {
  230. couponOrderId: e.currentTarget.dataset.id
  231. }, (res) => {
  232. if (res.code == 200) {
  233. // 退券退款申请成功
  234. wx.showToast({
  235. title: res.message,
  236. image: './../../../static/images/success.png'
  237. })
  238. setTimeout(() => {
  239. wx.switchTab({
  240. url: '/pages/main/main'
  241. })
  242. }, 1000)
  243. } else {
  244. wx.showModal({
  245. title: '错误',
  246. content: res.message,
  247. showCancel: false
  248. })
  249. }
  250. }, (err) => {
  251. console.log("err", err)
  252. wx.showModal({
  253. title: '错误',
  254. content: err.message,
  255. showCancel: false
  256. })
  257. })
  258. },
  259. //往回传用户选择的日期渲染不同的数据
  260. bindDateChange(e) {
  261. let {
  262. page,
  263. defaultId
  264. } = this.data
  265. this.setData({
  266. dateTime: e.detail.value,
  267. dataList: []
  268. })
  269. page = 1
  270. this.setData({
  271. page: page
  272. })
  273. this.getList(defaultId, page, e.detail.value)
  274. },
  275. findByDate() {
  276. wx.navigateTo({
  277. url: '/pages/receiveDateX/receiveDate?type=transaction',
  278. })
  279. }
  280. })