addAndEditor.js 6.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212
  1. const _Http = getApp().globalData.http;
  2. Page({
  3. data: {
  4. showAll: false,
  5. form: [{
  6. label: "企业名称",
  7. error: false,
  8. errMsg: "",
  9. type: "textarea",
  10. value: "",
  11. placeholder: "企业全称",
  12. valueName: "enterprisename",
  13. checking: "base",
  14. required: true
  15. }, {
  16. label: "企业简称",
  17. error: false,
  18. errMsg: "",
  19. type: "textarea",
  20. value: "",
  21. placeholder: "企业简称",
  22. valueName: "abbreviation",
  23. checking: "base",
  24. required: false
  25. }, {
  26. label: "统一社会信用代码",
  27. error: false,
  28. errMsg: "",
  29. type: "textarea",
  30. value: "",
  31. placeholder: "企业税号/注册号/营业执照号码",
  32. valueName: "taxno",
  33. checking: "base",
  34. required: false
  35. }, {
  36. label: "法定代表人",
  37. error: false,
  38. errMsg: "",
  39. type: "text",
  40. value: "",
  41. placeholder: "企业法人",
  42. valueName: "contact",
  43. checking: "base",
  44. required: false
  45. }, {
  46. label: "法人电话号码",
  47. error: false,
  48. errMsg: "",
  49. type: "number",
  50. value: "",
  51. placeholder: "法人联系手机号",
  52. valueName: "phonenumber",
  53. checking: "phone",
  54. required: false
  55. }, {
  56. label: "所属行业",
  57. error: false,
  58. errMsg: "",
  59. type: "option", //自定义选择 配合预定接口
  60. optionNmae: "industry", //选择类型
  61. optionType: "radio", //复选 radio 单选
  62. value: "",
  63. placeholder: "企业所属行业",
  64. valueName: "industry",
  65. checking: "base",
  66. required: false
  67. }, {
  68. label: "地区",
  69. error: false,
  70. errMsg: "",
  71. type: "region",
  72. value: [],
  73. placeholder: "所属地区 省/市/区",
  74. valueName: "region",
  75. required: false
  76. }, {
  77. label: "注册地址",
  78. error: false,
  79. errMsg: "",
  80. type: "textarea",
  81. value: "",
  82. placeholder: "企业注册地址",
  83. valueName: "address",
  84. checking: "base",
  85. required: false
  86. }, {
  87. label: "客户类型",
  88. error: false,
  89. errMsg: "",
  90. type: "option",
  91. optionNmae: "customertypemx",
  92. optionType: "radio", //复选 radio 单选
  93. value: "",
  94. placeholder: "客户类型",
  95. valueName: "type",
  96. checking: "base",
  97. required: false
  98. }, {
  99. label: "客户级别",
  100. error: false,
  101. errMsg: "",
  102. type: "option",
  103. optionNmae: "customergrade",
  104. optionType: "radio", //复选 radio 单选
  105. value: "",
  106. placeholder: "客户数字级别",
  107. valueName: "grade",
  108. checking: "base",
  109. required: false
  110. }],
  111. content: {
  112. "sa_customersid": 0, //新增是传0
  113. "parentid": 0, //上级客户ID,默认或没有上级的时候传0
  114. "sys_enterpriseid": 0, //合作企业档案ID,新增是传0,更新
  115. "sa_customerpoolid": 0, //客户池(公海池)ID,默认或没有的时候传0
  116. "source": "", //客户来源
  117. },
  118. disabled: true
  119. },
  120. setOption(item) {
  121. let i = this.data.form.findIndex(v => v.valueName == item.valueName);
  122. this.setData({
  123. [`form[${i}]`]: item
  124. })
  125. },
  126. onLoad(options) {
  127. if (options.data) {
  128. let data = JSON.parse(options.data);
  129. this.setData({
  130. disabled: false,
  131. content: {
  132. sa_customersid: data.sa_customersid,
  133. parentid: data.parentid,
  134. sys_enterpriseid: data.sys_enterpriseid,
  135. sa_customerpoolid: data.sa_customerpoolid,
  136. source: data.source,
  137. },
  138. form: this.data.form.map(v => {
  139. if (v.valueName != 'region') {
  140. v.value = data[v.valueName];
  141. } else {
  142. v.value = data.province ? [data.province, data.city, data.county] : []
  143. }
  144. return v
  145. })
  146. })
  147. }
  148. },
  149. /* 表单必填项是否完成 */
  150. onConfirm({
  151. detail
  152. }) {
  153. this.setData({
  154. disabled: detail
  155. })
  156. },
  157. // 是否显示全部
  158. onChange({
  159. detail
  160. }) {
  161. this.setData({
  162. showAll: detail
  163. })
  164. },
  165. submit() {
  166. let data = this.selectComponent("#Form").submit();
  167. if (data.region.length != 0) {
  168. data.province = data.region[0]
  169. data.city = data.region[1]
  170. data.county = data.region[2]
  171. };
  172. delete(data.region);
  173. _Http.basic({
  174. "id": 20221012163902,
  175. "content": {
  176. ...this.data.content,
  177. ...data,
  178. }
  179. }).then(res => {
  180. console.log("新建客户", res)
  181. if (res.msg != '成功') return wx.showToast({
  182. title: res.data,
  183. icon: "none"
  184. })
  185. wx.showToast({
  186. title: '保存成功',
  187. icon: "none"
  188. })
  189. setTimeout(() => {
  190. wx.navigateBack()
  191. getCurrentPages().forEach(v => {
  192. switch (v.__route__) {
  193. case 'packageA/setclient/index':
  194. v.getList(true);
  195. break;
  196. case 'packageA/setclient/search':
  197. v.getList(true);
  198. break;
  199. case 'packageA/setclient/detail':
  200. v.getDetail();
  201. break;
  202. }
  203. })
  204. let pages = getCurrentPages();
  205. if (pages[pages.length - 2].__route__ == 'packageA/setclient/index') wx.navigateTo({
  206. url: '/packageA/setclient/detail?id=' + res.data.sa_customersid,
  207. })
  208. }, 300)
  209. })
  210. },
  211. })