leaveadd.js 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. // pages/leaveadd/leaveadd.js
  2. const app = getApp();
  3. const { axios } = app.globalData;
  4. Page({
  5. /**
  6. * 页面的初始数据
  7. */
  8. data: {
  9. },
  10. /**
  11. * 生命周期函数--监听页面加载
  12. */
  13. onLoad: function (options) {
  14. wx.lxd.Ctr({
  15. // nav
  16. title: "新增", //标题
  17. back: true,//返回按钮,tabber必须false(除非会改)
  18. });
  19. },
  20. // 挑选地址
  21. ChooseAddress () {
  22. wx.navigateTo({
  23. url: `/pages/adddata/adddata?data=${JSON.stringify({ source: 'leaveadd' })}`,
  24. })
  25. },
  26. // 选择日期
  27. choosedata (e) {
  28. let { datas } = this.data, { index } = e.currentTarget.dataset;
  29. datas[index][2] = !datas[index][2] ? true : false;
  30. this.setData({ datas })
  31. },
  32. // 选择类别
  33. choosetype (e) {
  34. let { type } = this.data, { index } = e.currentTarget.dataset;
  35. type[index]["lock"] = !type[index]["lock"] ? true : false;
  36. this.setData({ type });
  37. },
  38. // 提交
  39. submit () {
  40. let { useraddress, datas, type } = this.data;
  41. if (!useraddress.id) {
  42. wx.showToast({
  43. title: '请选择学生',
  44. icon: "error"
  45. })
  46. return false;
  47. }
  48. let arr = [], brr = [];
  49. datas.forEach(item => {
  50. item[2] ? arr.push(item[0]) : '';
  51. })
  52. if (arr.length <= 0) {
  53. wx.showToast({
  54. title: '请选择请假日期',
  55. icon: "error"
  56. })
  57. return false;
  58. }
  59. type.forEach(item => {
  60. item['lock'] ? brr.push(item["id"]) : '';
  61. })
  62. if (brr.length <= 0) {
  63. wx.showToast({
  64. title: '请选择请假内容',
  65. icon: "error"
  66. })
  67. return false;
  68. }
  69. console.log(arr)
  70. axios({
  71. url: '/order/student_leave/',
  72. method: 'post',
  73. data: {
  74. student: useraddress.id,
  75. leave_dates: JSON.stringify(arr),
  76. order_ids: JSON.stringify(brr)
  77. },
  78. success (res) {
  79. wx.navigateBack({
  80. delta: 1, // 回退前 delta(默认为1) 页面
  81. })
  82. }
  83. })
  84. },
  85. /**
  86. * 生命周期函数--监听页面初次渲染完成
  87. */
  88. onReady: function () {
  89. },
  90. /**
  91. * 生命周期函数--监听页面显示
  92. */
  93. onShow: function () {
  94. let { useraddress } = app.globalData, datas = [], type = [], that = this;
  95. if (!useraddress.id) {
  96. useraddress["name"] = "请挑选学生"
  97. } else {
  98. axios({
  99. url: `/order/student_leave/get_info/?student=${useraddress.id}`,
  100. method: "get",
  101. success (res) {
  102. let { data } = res.data, { lead_dates, orders } = data;
  103. type = orders;
  104. datas = lead_dates.map(item => {
  105. item = item.replace(/\(/, '?');
  106. item = item.replace(/\)/, '?');
  107. item = item.split("?").splice(0, 2);
  108. return item;
  109. })
  110. console.log(type)
  111. that.setData({ datas, type })
  112. }
  113. })
  114. }
  115. this.setData({ useraddress })
  116. },
  117. /**
  118. * 生命周期函数--监听页面隐藏
  119. */
  120. onHide: function () {
  121. },
  122. /**
  123. * 生命周期函数--监听页面卸载
  124. */
  125. onUnload: function () {
  126. },
  127. /**
  128. * 页面相关事件处理函数--监听用户下拉动作
  129. */
  130. onPullDownRefresh: function () {
  131. },
  132. /**
  133. * 页面上拉触底事件的处理函数
  134. */
  135. onReachBottom: function () {
  136. },
  137. /**
  138. * 用户点击右上角分享
  139. */
  140. onShareAppMessage: function () {
  141. }
  142. })