index.js 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226
  1. const api = require("../api/api")
  2. Page({
  3. /**
  4. * 页面的初始数据
  5. */
  6. data: {
  7. dateVisible:false,
  8. timerid:null,
  9. bindSignNameData:{
  10. "ownertable": "sa_workorder_confirmation",
  11. "ownerid": 0,
  12. "usetype": "signature",
  13. },
  14. paidServiceAmount:0
  15. },
  16. async billData () {
  17. const res = await api._post({
  18. "id": "20230211105803",
  19. "content": {
  20. "sa_workorder_confirmationid":this.data.id
  21. }
  22. })
  23. let ishave = false
  24. res.data.confirmationcontent.forEach(item=>{
  25. if(item.nextTreatmentTime){
  26. ishave = true
  27. }
  28. })
  29. if (!ishave) {
  30. let arr = [{nextTreatmentTime:{confirm_value:''}},{treatment:{confirm_value:''}},{explain:{confirm_value:''}},{repairResult:{confirm_value:''}},{rebackTime:{confirm_value:''}},{nextRebackTime:{confirm_value:''}}]
  31. arr.forEach(e=>{
  32. res.data.confirmationcontent.push(e)
  33. },this)
  34. }
  35. this.setData({
  36. mainData:res.data,
  37. stopClick:res.data.status !== '新建'?'stopClick':this.data.stopClick
  38. })
  39. this.setInputData()
  40. },
  41. setInputData () {
  42. let that = this
  43. that.data.mainData.confirmationcontent.forEach(e=>{
  44. Object.keys(e).map((key,index)=>{
  45. that.setData({
  46. paidServiceAmount:that.data.paidServiceAmount + e[key].amount
  47. })
  48. if (key === 'nextTreatmentTime') {
  49. this.setData({
  50. nextTreatmentTime:e[key].confirm_value
  51. })
  52. }
  53. if (key === 'treatment') {
  54. this.setData({
  55. treatment:e[key].confirm_value
  56. })
  57. }
  58. if (key === 'explain') {
  59. this.setData({
  60. explain:e[key].confirm_value
  61. })
  62. }
  63. if (key === 'nextRebackTime') {
  64. this.setData({
  65. nextRebackTime:e[key].confirm_value
  66. })
  67. }
  68. })
  69. })
  70. },
  71. async updateBill () {
  72. if (this.data.mainData.status !== '新建') return wx.showToast({
  73. title: '非新建状态,修改的数据将不会保存',
  74. icon:'none'
  75. })
  76. const res = await api._post({
  77. "id": "20230211105703",
  78. "content": this.data.mainData
  79. })
  80. },
  81. // 改变评分
  82. onChange(e) {
  83. this.data.mainData[e.currentTarget.dataset.name] = e.detail.value
  84. this.setData({
  85. mainData:this.data.mainData
  86. });
  87. this.updateBill()
  88. },
  89. async submit () {
  90. const res = await api._post({
  91. "id": "20230211110003",
  92. "content": {
  93. "sa_workorder_confirmationid":this.data.mainData.sa_workorder_confirmationid
  94. }
  95. })
  96. if (res.code == 1) {
  97. wx.showToast({
  98. title: '提交成功',
  99. icon:"success"
  100. })
  101. this.billData()
  102. }
  103. },
  104. async delete () {
  105. const res = await api._post({
  106. "id": "20230211110103",
  107. "content": {
  108. "sa_workorder_confirmationids":[this.data.mainData.sa_workorder_confirmationid]
  109. }
  110. })
  111. if (res.code == 1) {
  112. wx.navigateBack()
  113. }
  114. },
  115. inputChange(data) {
  116. let name = data.currentTarget.dataset.name
  117. this.data.mainData.confirmationcontent.forEach(e=>{
  118. Object.keys(e).map((key,index)=>{
  119. if (name === key) {
  120. e[key].confirm_value = data.detail.value
  121. }
  122. })
  123. })
  124. this.updateBill()
  125. },
  126. showNextTimePicker (data) {
  127. let name = data.currentTarget.dataset.name
  128. this.setData({
  129. pickkerName:name,
  130. dateVisible:!this.data.dateVisible
  131. })
  132. },
  133. onConfirm (data) {
  134. let name = this.data.pickkerName
  135. this.data.mainData.confirmationcontent.forEach(e=>{
  136. Object.keys(e).map((key,index)=>{
  137. if (name === key) {
  138. e[key].confirm_value = data.detail.value
  139. }
  140. })
  141. })
  142. this.setData({
  143. mainData:this.data.mainData
  144. })
  145. this.updateBill()
  146. this.setInputData()
  147. },
  148. /**
  149. * 生命周期函数--监听页面加载
  150. */
  151. onLoad(options) {
  152. this.data.bindSignNameData.ownerid = options.id
  153. this.setData({
  154. stopClick:options.class,
  155. id:options.id,
  156. bindSignNameData:this.data.bindSignNameData
  157. })
  158. this.billData()
  159. },
  160. /**
  161. * 生命周期函数--监听页面初次渲染完成
  162. */
  163. onReady() {
  164. },
  165. /**
  166. * 生命周期函数--监听页面显示
  167. */
  168. onShow() {
  169. this.setData({
  170. SignName:true
  171. })
  172. },
  173. /**
  174. * 生命周期函数--监听页面隐藏
  175. */
  176. onHide() {
  177. this.setData({
  178. SignName:false
  179. })
  180. },
  181. /**
  182. * 生命周期函数--监听页面卸载
  183. */
  184. onUnload() {
  185. },
  186. /**
  187. * 页面相关事件处理函数--监听用户下拉动作
  188. */
  189. onPullDownRefresh() {
  190. },
  191. /**
  192. * 页面上拉触底事件的处理函数
  193. */
  194. onReachBottom() {
  195. },
  196. /**
  197. * 用户点击右上角分享
  198. */
  199. onShareAppMessage() {
  200. }
  201. })