index.js 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179
  1. const _Http = getApp().globalData.http,
  2. currency = require("../../utils/currency"),
  3. CNY = value => currency(value, {
  4. symbol: "¥",
  5. precision: 2
  6. }).format();
  7. Component({
  8. properties: {
  9. ownertable: {
  10. type: String
  11. },
  12. ownerid: {
  13. type: String
  14. },
  15. ownerid1: {
  16. type: String
  17. },
  18. disabled: {
  19. type: Boolean,
  20. value: true
  21. },
  22. isAdmin: {
  23. type: Boolean
  24. }
  25. },
  26. options: {
  27. addGlobalClass: true
  28. },
  29. data: {
  30. content: {
  31. nocache: true,
  32. pageNumber: 1,
  33. pageSize: 10,
  34. pageTotal: 1,
  35. total: null
  36. },
  37. list: []
  38. },
  39. methods: {
  40. getList(id, init = false) {
  41. let content = {
  42. ...this.data.content,
  43. "ownertable": this.data.ownertable,
  44. "ownerid": this.data.ownerid,
  45. };
  46. if (init) {
  47. content.pageNumber = 1
  48. content.pageTotal = 1
  49. }
  50. _Http.basic({
  51. "id": 20220930121501,
  52. content
  53. }).then(res => {
  54. console.log("跟进动态", res)
  55. if (res.msg != '成功') return wx.showToast({
  56. title: res.data,
  57. icon: "none"
  58. });
  59. let list = res.data.map(v => {
  60. try {
  61. v.names = v.contacts.map(n => n.name)
  62. } catch (error) {
  63. v.names = null
  64. }
  65. v.showsalesfeesamount = CNY(v.salesfeesamount)
  66. return v
  67. })
  68. this.setData({
  69. "content.pageNumber": res.pageNumber + 1,
  70. "content.pageTotal": res.pageTotal,
  71. "content.total": res.total,
  72. list: res.pageNumber == 1 ? list : this.data.list.concat(list)
  73. })
  74. })
  75. },
  76. editItem(e) {
  77. let item = null;
  78. try {
  79. item = e.currentTarget.dataset.item;
  80. } catch (error) {
  81. item = e
  82. }
  83. let parems = {
  84. ownertable: this.data.ownertable,
  85. ownerid: this.data.ownerid,
  86. ownerid1: this.data.ownerid1,
  87. sys_datafollowupid: item.sys_datafollowupid,
  88. content: item.content,
  89. target: item.target,
  90. results: item.results,
  91. nextplan: item.nextplan,
  92. contactsid: item.names ? [item.names, item.dataextend.contactsid] : "",
  93. type: item.type,
  94. attinfos: item.attinfos
  95. }
  96. wx.navigateTo({
  97. url: '/pages/trace/insert?parems=' + JSON.stringify(parems),
  98. })
  99. _Http.changeItem = this.changeItem.bind(this)
  100. },
  101. changeItem(item) {
  102. let list = this.data.list,
  103. index = list.findIndex(v => v.sys_datafollowupid == item.sys_datafollowupid);
  104. if (index != -1) {
  105. list[index] = item;
  106. } else {
  107. list.unshift(item)
  108. this.setData({
  109. "content.total": this.data.content.total += 1
  110. })
  111. }
  112. this.setData({
  113. list
  114. })
  115. },
  116. deleteItem(e) {
  117. const {
  118. item
  119. } = e.currentTarget.dataset;
  120. wx.navigateTo({
  121. url: `/packageA/setclient/modules/trace/list/delete?item=${JSON.stringify({
  122. "sys_datafollowupid": item.sys_datafollowupid,
  123. "ownertable": this.data.ownertable,
  124. "ownerid": this.data.ownerid
  125. })}`,
  126. })
  127. },
  128. expenseBreakdown(e) {
  129. const {
  130. item,
  131. index
  132. } = e.currentTarget.dataset;
  133. wx.navigateTo({
  134. url: `/packageA/expenseBreakdown/index?ownertable=${item.ownertable}&ownerid=${item.sys_datafollowupid}&isAdmin=${this.data.isAdmin}&item=${
  135. JSON.stringify(item)
  136. }`,
  137. })
  138. _Http.updateEBList = function (salesfeesamount, showsalesfeesamount) {
  139. this.setData({
  140. [`list[${index}].salesfeesamount`]: salesfeesamount,
  141. [`list[${index}].showsalesfeesamount`]: showsalesfeesamount,
  142. })
  143. }.bind(this)
  144. },
  145. insetr() {
  146. let parems = {
  147. ownertable: this.data.ownertable,
  148. ownerid: this.data.ownerid,
  149. ownerid1: this.data.ownerid1,
  150. sys_datafollowupid: 0,
  151. content: ""
  152. }
  153. wx.navigateTo({
  154. url: '/pages/trace/insert?parems=' + JSON.stringify(parems),
  155. })
  156. },
  157. toDetail(e) {
  158. const {
  159. item
  160. } = e.currentTarget.dataset;
  161. wx.navigateTo({
  162. url: `/pages/trace/detail?data=` + JSON.stringify({
  163. "sys_datafollowupid": item.sys_datafollowupid,
  164. "ownertable": this.data.ownertable,
  165. "ownerid": this.data.ownerid
  166. }),
  167. });
  168. _Http.changeItem = this.changeItem.bind(this);
  169. _Http.editItem = this.editItem.bind(this);
  170. },
  171. changeTotal() {
  172. this.setData({
  173. "content.total": this.data.content.total - 1
  174. })
  175. }
  176. }
  177. })