change.js 5.9 KB

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