change.js 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233
  1. import {
  2. ApiModel
  3. } from "../../utils/api";
  4. const _Http = new ApiModel();
  5. import {
  6. TestVerify
  7. } from "../../utils/verify"
  8. const _Verify = new TestVerify();
  9. Page({
  10. /**
  11. * 页面的初始数据
  12. */
  13. data: {
  14. fname: '', //用户名称
  15. frole: '', //身份/职位
  16. fphonenumber: '', //手机号码
  17. subusers: [], //权限
  18. tenterprise_userid: 0, //用户id
  19. checked: true, //是否启用
  20. fisused: 1,
  21. throttle: false, //节流阀
  22. /* 必填项 */
  23. errTips: {
  24. fname: false,
  25. frole: false,
  26. fphonenumber: false
  27. }
  28. },
  29. /* input事件剔除特殊字符 */
  30. eliminate(value) {
  31. const {
  32. name
  33. } = value.target.dataset;
  34. this.setData({
  35. [name]: _Verify.Eliminate(value.detail)
  36. })
  37. },
  38. /**
  39. * 生命周期函数--监听页面加载
  40. */
  41. onLoad: function (options) {
  42. if (options.data) {
  43. const memberMessage = JSON.parse(options.data);
  44. console.log(memberMessage)
  45. const checked = (memberMessage.fisused == 1) ? true : false
  46. this.setData({
  47. fname: memberMessage.fname,
  48. frole: memberMessage.frole,
  49. fphonenumber: memberMessage.fphonenumber,
  50. fname: memberMessage.fname,
  51. subusers: memberMessage.subusers,
  52. fisused: memberMessage.fisused,
  53. tenterprise_userid: memberMessage.tenterprise_userid,
  54. checked,
  55. fisadministrator: memberMessage.fisadministrator
  56. })
  57. }
  58. },
  59. /* 提交 */
  60. submit() {
  61. if (!this.submitVerify()) return wx.showToast({
  62. title: '请检查表单内容',
  63. icon: "none"
  64. });
  65. if (this.data.throttle) return;
  66. _Http.basic({
  67. "accesstoken": wx.getStorageSync('userData').token,
  68. "classname": "customer.usercenter.teammsg.teammsg",
  69. "method": "update_userMsg",
  70. "content": {
  71. "tenterprise_userid": this.data.tenterprise_userid,
  72. "fname": this.data.fname,
  73. "frole": this.data.frole,
  74. "fphonenumber": this.data.fphonenumber,
  75. "subusers": this.data.subusers,
  76. "fisused": this.data.fisused
  77. }
  78. }).then(res => {
  79. console.log(res)
  80. if (res.msg != "成功") return wx.showToast({
  81. title: res.data,
  82. icon: "none"
  83. });
  84. //节流阀
  85. this.setData({
  86. throttle: true
  87. })
  88. wx.showToast({
  89. title: '保存成功',
  90. });
  91. setTimeout(() => {
  92. wx.navigateBack({
  93. delta: 1
  94. })
  95. }, 500)
  96. })
  97. },
  98. /* 商户提交前验证表单 */
  99. submitVerify() {
  100. let errTips = this.data.errTips,
  101. verify = true;
  102. //账户名称
  103. if (!_Verify.required(this.data.fname)) {
  104. errTips.fname = true;
  105. verify = false;
  106. };
  107. //身份/职位
  108. if (!_Verify.required(this.data.frole)) {
  109. errTips.frole = true;
  110. verify = false;
  111. };
  112. //验证联系方式
  113. if (!_Verify.phoneNumber(this.data.fphonenumber)) {
  114. errTips.fphonenumber = true;
  115. verify = false;
  116. }
  117. this.setData({
  118. errTips
  119. })
  120. return verify;
  121. },
  122. /* 获取焦点 */
  123. inputFocus(e) {
  124. const {
  125. name
  126. } = e.currentTarget.dataset;
  127. let errTips = this.data.errTips;
  128. errTips[name] = false;
  129. this.setData({
  130. errTips
  131. })
  132. },
  133. /* 失去焦点 */
  134. inputBlur(e) {
  135. const {
  136. name
  137. } = e.currentTarget.dataset;
  138. const {
  139. value
  140. } = e.detail;
  141. if (name == 'fphonenumber') {
  142. if (!_Verify.phoneNumber(this.data.fphonenumber, 1)) return this.setData({
  143. "errTips.fphonenumber": true
  144. })
  145. };
  146. if (value.trim() == "") {
  147. let errTips = this.data.errTips;
  148. errTips[name] = true;
  149. this.setData({
  150. errTips
  151. })
  152. }
  153. },
  154. /* 开关 */
  155. onChange() {
  156. if (this.data.fisadministrator == 1) return wx.showToast({
  157. title: '商户主账号不可停用',
  158. icon: "none"
  159. });
  160. const that = this;
  161. if (this.data.tenterprise_userid != 0) {
  162. wx.showModal({
  163. title: "提示",
  164. content: (this.data.checked) ? '是否停用“' + this.data.fname + '”,停用后该角色将暂时无法登陆' : '是否启用“' + this.data.fname + '”',
  165. success(res) {
  166. if (res.confirm) {
  167. const checked = !that.data.checked,
  168. fisused = (checked) ? 1 : 0
  169. that.setData({
  170. checked,
  171. fisused
  172. })
  173. }
  174. }
  175. })
  176. } else {
  177. const checked = !that.data.checked,
  178. fisused = (checked) ? 1 : 0
  179. that.setData({
  180. checked,
  181. fisused
  182. })
  183. }
  184. },
  185. /**
  186. * 生命周期函数--监听页面初次渲染完成
  187. */
  188. onReady: function () {
  189. },
  190. /**
  191. * 生命周期函数--监听页面显示
  192. */
  193. onShow: function () {
  194. },
  195. /**
  196. * 生命周期函数--监听页面隐藏
  197. */
  198. onHide: function () {
  199. },
  200. /**
  201. * 生命周期函数--监听页面卸载
  202. */
  203. onUnload: function () {},
  204. /**
  205. * 页面相关事件处理函数--监听用户下拉动作
  206. */
  207. onPullDownRefresh: function () {
  208. },
  209. /**
  210. * 页面上拉触底事件的处理函数
  211. */
  212. onReachBottom: function () {
  213. },
  214. /**
  215. * 用户点击右上角分享
  216. */
  217. onShareAppMessage: function () {
  218. }
  219. })