change.js 6.3 KB

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