index.js 6.2 KB

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