index.js 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166
  1. const _Http = getApp().globalData.http;
  2. Page({
  3. data: {
  4. loading: false,
  5. list: [{
  6. label: "跟进内容",
  7. key: "content",
  8. value: "",
  9. }],
  10. content: {
  11. }
  12. },
  13. onLoad(options) {
  14. getApp().globalData.Language.getLanguagePackage(this, '跟进');
  15. if (options.ownertable) {
  16. this.setData({
  17. ...options
  18. })
  19. };
  20. //编辑获取原信息,新建初始化模板
  21. if (options.sys_datafollowupid) {
  22. _Http.basic({
  23. "id": 20221026085601,
  24. "content": {
  25. "sys_datafollowupid": options.sys_datafollowupid
  26. },
  27. }).then(res => {
  28. console.log("跟进详情", res)
  29. if (res.code != '1') {
  30. wx.showToast({
  31. title: res.msg,
  32. icon: "none"
  33. })
  34. setTimeout(() => {
  35. wx.navigateBack()
  36. }, 300)
  37. };
  38. this.setData({
  39. [`list[0].value`]: res.data.content,
  40. resource: res.data.resource
  41. })
  42. if (res.data.attinfos.length) this.selectComponent("#Yl_files").handleFiles(res.data.attinfos);
  43. this.data.content = Object.assign(res.data, options);
  44. })
  45. } else {
  46. options.sys_datafollowupid = 0;
  47. this.data.content = options;
  48. }
  49. },
  50. changeState({
  51. detail
  52. }) {
  53. this.setData({
  54. loading: detail
  55. })
  56. },
  57. onInput(e) {
  58. const {
  59. index
  60. } = e.target.dataset;
  61. this.data.list[index].value = e.detail.value;
  62. this.setData({
  63. list: this.data.list
  64. })
  65. },
  66. onVoiceInput(e) {
  67. let {
  68. index
  69. } = e.target.dataset;
  70. this.setData({
  71. [`list[${index}].value`]: e.detail
  72. })
  73. },
  74. /* 绑定媒体 */
  75. insertImgEdit({
  76. detail
  77. }) {
  78. this.handleFileLink(detail)
  79. },
  80. handleFileLink(attachmentids, ownertable = "temporary", ownerid = 1, data) {
  81. _Http.basic({
  82. "classname": "system.attachment.Attachment",
  83. "method": "createFileLink",
  84. "content": {
  85. ownertable,
  86. ownerid,
  87. usetype: 'default',
  88. attachmentids
  89. }
  90. }).then(res => {
  91. console.log('跟进记录绑定附件', res)
  92. if (res.code != '1') return wx.showToast({
  93. title: res.msg,
  94. icon: "none"
  95. })
  96. if (ownertable == 'temporary') {
  97. this.selectComponent("#Yl_files").handleFiles(res.data)
  98. } else {
  99. if (res.data.length) data.attinfos = res.data;
  100. this.changeItem(data)
  101. setTimeout(() => {
  102. wx.navigateBack()
  103. }, 500)
  104. }
  105. })
  106. },
  107. changeItem(data) {
  108. this.setData({
  109. loading: false
  110. })
  111. let page = getCurrentPages()[getCurrentPages().length - 2],
  112. isDetail = page.__route__ == 'packageA/setclient/modules/trace/detail/index';
  113. if (isDetail) {
  114. page.getDetail();
  115. page = getCurrentPages()[getCurrentPages().length - 3];
  116. }
  117. let model = page.selectComponent("#Trace");
  118. if (this.data.content.sys_datafollowupid == 0) {
  119. if (page) {
  120. if (model) model.getList(0, true)
  121. }
  122. } else {
  123. let list = model.data.list,
  124. index = list.findIndex(v => v.sys_datafollowupid == data.sys_datafollowupid);
  125. if (index != -1) list[index] = data;
  126. model.setData({
  127. list
  128. })
  129. }
  130. },
  131. submit() {
  132. this.setData({
  133. loading: true
  134. })
  135. let content = Object.assign(this.data.content, this.selectComponent("#Form").submit())
  136. content.content = this.data.list[0].value;
  137. content.resource = this.data.resource || ''
  138. _Http.basic({
  139. "id": 20220930121601,
  140. content
  141. }).then(res => {
  142. console.log("保存跟进内容", res)
  143. this.setData({
  144. loading: false
  145. })
  146. wx.showToast({
  147. title: getApp().globalData.Language.getMapText(res.code != 1 ? res.msg : content.sys_datafollowupid == 0 ? '保存成功' : '修改成功'),
  148. icon: "none",
  149. mask: res.code != 1
  150. });
  151. if (res.msg != '成功') return;
  152. let attachmentids = this.selectComponent("#Yl_files").getFiles().attachmentids;
  153. if (attachmentids.length) return this.handleFileLink(attachmentids, 'sys_datafollowup', res.data.sys_datafollowupid, res.data);
  154. this.changeItem(res.data)
  155. setTimeout(() => {
  156. wx.navigateBack()
  157. }, 500)
  158. })
  159. },
  160. onUnload() {
  161. if (this.data.content.sys_datafollowupid == 0) this.selectComponent("#Yl_files").deleteAll()
  162. }
  163. })