index.js 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238
  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. attinfos: [], //头像
  15. fname: "",
  16. fphonenumber: "",
  17. fsex: "",
  18. fbirthdate: "",
  19. femail: "",
  20. fwechatno: "",
  21. faddress: "",
  22. frole: "",
  23. YMD:"",//日期
  24. /* 错误提示 */
  25. errTips: {
  26. fname: false, //用户名
  27. frole: false, //身份/职位
  28. fphonenumber: false, //手机号
  29. femail: false, //邮箱
  30. },
  31. },
  32. /**
  33. * 生命周期函数--监听页面加载
  34. */
  35. onLoad: function (options) {
  36. /* 日期 */
  37. let time = new Date(Date.parse(new Date()) - 86400000);
  38. let d = time.getDate();
  39. if (d < 10) d = '0' + d;
  40. this.setData({
  41. YMD: time.getFullYear() + '-' + (time.getMonth() + 1) + '-' + d
  42. });
  43. const userMessage = JSON.parse(options.data);
  44. let attinfos = [];
  45. if (userMessage.attinfos.length >= 1) {
  46. attinfos = [{
  47. url: userMessage.attinfos[0].fobsurl,
  48. ownerid: userMessage.attinfos[0].ownerid,
  49. tattachmentid: userMessage.attinfos[0].tattachmentid,
  50. ownertable: userMessage.attinfos[0].ownertable,
  51. fdocument: userMessage.attinfos[0].fdocument
  52. }];
  53. }
  54. this.setData({
  55. attinfos,
  56. fname: userMessage.fname,
  57. fphonenumber: userMessage.fphonenumber,
  58. fsex: userMessage.fsex,
  59. fbirthdate: userMessage.fbirthdate,
  60. femail: userMessage.femail,
  61. fwechatno: userMessage.fwechatno,
  62. faddress: userMessage.faddress,
  63. frole: userMessage.frole
  64. })
  65. },
  66. timeChange({detail}){
  67. this.setData({
  68. fbirthdate:detail.value
  69. })
  70. },
  71. /* 修改性别 */
  72. sexOnChange(event) {
  73. this.setData({
  74. fsex: event.detail,
  75. });
  76. },
  77. /* 表单验证 */
  78. formVerify() {
  79. let errTips = this.data.errTips,
  80. verify = true;
  81. /* 验证用户名 */
  82. if (!_Verify.required(this.data.fname)) {
  83. errTips.fname = true;
  84. verify = false;
  85. }
  86. /* 验证身份 */
  87. if (!_Verify.required(this.data.frole)) {
  88. errTips.frole = true;
  89. verify = false;
  90. }
  91. /* 验证邮箱 */
  92. if (this.data.errTips.femail && this.data.femail != '') {
  93. wx.showToast({
  94. title: '请检查邮箱格式!',
  95. icon: "none"
  96. })
  97. verify = false;
  98. }
  99. if (!verify) {
  100. this.setData({
  101. errTips
  102. })
  103. }
  104. return verify;
  105. },
  106. /* 提交 */
  107. submit() {
  108. if (!this.formVerify()) return wx.showToast({
  109. title: '请检查表单内容',
  110. icon: "none"
  111. });
  112. _Http.basic({
  113. "accesstoken": wx.getStorageSync('userData').token,
  114. "classname": "customer.usercenter.usermsg.usermsg",
  115. "method": "update_usermsg",
  116. "content": {
  117. "fname": this.data.fname,
  118. "fsex": this.data.fsex,
  119. "fbirthdate": this.data.fbirthdate,
  120. "femail": this.data.femail,
  121. "fwechatno": this.data.fwechatno,
  122. "faddress": this.data.faddress,
  123. "frole": this.data.frole
  124. }
  125. }).then(res => {
  126. console.log(res)
  127. if (res.msg == "成功") {
  128. wx.showToast({
  129. title: '保存成功',
  130. })
  131. setTimeout(() => {
  132. wx.navigateBack({
  133. delta: 1
  134. })
  135. }, 500)
  136. }
  137. })
  138. },
  139. /* 获取焦点 */
  140. inputFocus(e) {
  141. const {
  142. name
  143. } = e.currentTarget.dataset;
  144. let errTips = this.data.errTips;
  145. errTips[name] = false;
  146. this.setData({
  147. errTips
  148. })
  149. },
  150. /* 失去焦点 */
  151. inputBlur(e) {
  152. const {
  153. name
  154. } = e.currentTarget.dataset;
  155. const {
  156. value
  157. } = e.detail;
  158. console.log(_Verify.removeSpecialCharacters(value));
  159. if (name == 'femail') {
  160. var reg = /^([a-zA-Z]|[0-9])(\w|\-)+@[a-zA-Z0-9]+\.([a-zA-Z]{2,4})$/;
  161. if (!reg.test(value.trim())) {
  162. wx.showToast({
  163. title: '请检查邮箱格式!',
  164. icon: "none"
  165. })
  166. let errTips = this.data.errTips;
  167. errTips[name] = true;
  168. this.setData({
  169. errTips
  170. })
  171. }
  172. return;
  173. }
  174. if (value.trim() == "") {
  175. let errTips = this.data.errTips;
  176. errTips[name] = true;
  177. this.setData({
  178. errTips
  179. })
  180. }
  181. },
  182. /* 修改用户头像 */
  183. userImageChange(data) {
  184. this.setData({
  185. attinfos: data.detail.fileList
  186. })
  187. },
  188. /**
  189. * 生命周期函数--监听页面初次渲染完成
  190. */
  191. onReady: function () {
  192. },
  193. /**
  194. * 生命周期函数--监听页面显示
  195. */
  196. onShow: function () {
  197. },
  198. /**
  199. * 生命周期函数--监听页面隐藏
  200. */
  201. onHide: function () {
  202. },
  203. /**
  204. * 生命周期函数--监听页面卸载
  205. */
  206. onUnload: function () {
  207. },
  208. /**
  209. * 页面相关事件处理函数--监听用户下拉动作
  210. */
  211. onPullDownRefresh: function () {
  212. },
  213. /**
  214. * 页面上拉触底事件的处理函数
  215. */
  216. onReachBottom: function () {
  217. },
  218. /**
  219. * 用户点击右上角分享
  220. */
  221. onShareAppMessage: function () {
  222. }
  223. })