personal-info.js 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162
  1. (function() {
  2. Vue.component('personal-info', {
  3. template: '<div class="container ptb20 ">\
  4. <div class="row w3-row">\
  5. <left-menu :code="code"></left-menu>\
  6. <div class="pl251">\
  7. <div class="bgc-fff c-border ptb30">\
  8. <form class="mainbox" id="form" role="form" onsubmit="return false;" enctype="multipart/form-data" id="newInterfaceForm">\
  9. <div class="c-t-center mb10">\
  10. <img :src="userinfo.imgRemotePath || defaultImg" class="img-circle" width="100" height="100" id="personalImg" />\
  11. <div class="c-f14 c-909090 pt15">\
  12. <span>修改头像</span>\
  13. <input type="file" @change="uploadImg($event)" class="c-vam c-inline-block type-hide pl105" accept="image/jpg,image/jpeg,image/png" style="height:150px;margin-top:-150px;"></div>\
  14. </div>\
  15. <div class="w3-row mt50 form-group" style="height: 40px;">\
  16. <div class="w3-col c-f16 m5 c-t-right" style="width:80px;">姓&emsp;&emsp;名</div>\
  17. <div class="w3-rest pl15">\
  18. <input type="text" class="form-control" v-model="userinfo.realName" name="realName">\
  19. </div>\
  20. </div>\
  21. <div class="w3-row form-group" style="height: 40px;">\
  22. <div class="w3-col c-f16 m5 c-t-right" style="width:80px;">性&emsp;&emsp;别</div>\
  23. <div class="w3-rest pl15 c-f14">\
  24. <input type="radio" name="gender" value="0" v-model="userinfo.gender">&emsp;男&emsp;\
  25. <input type="radio" name="gender" value="1" v-model="userinfo.gender">&emsp;女\
  26. </div>\
  27. </div>\
  28. <div class="w3-row mt25 form-group">\
  29. <div class="w3-col c-f16 m5 c-t-right" style="width:80px;">手机号码</div>\
  30. <div class="w3-rest pl15">\
  31. <input type="text" class="form-control" v-model="userinfo.telephone" name="telephone">\
  32. </div>\
  33. </div>\
  34. <div class="w3-row mt25 form-group">\
  35. <div class="w3-col c-f16 m5 c-t-right" style="width:80px;">身份证号</div>\
  36. <div class="w3-rest pl15">\
  37. <input type="text" class="form-control" v-model="userinfo.idCardNo" name="idCardNo" readonly="readonly">\
  38. </div>\
  39. </div>\
  40. <div class="w3-row mt25 form-group">\
  41. <div class="w3-col c-f16 m5 c-t-right" style="width:80px;">社保卡号</div>\
  42. <div class="w3-rest pl15">\
  43. <input type="text" class="form-control" v-model="userinfo.ssid" name="ssid">\
  44. </div>\
  45. </div>\
  46. <div class="w3-row mt25 form-group">\
  47. <div class="w3-col c-f16 m5 c-t-right" style="width:80px;">医疗保险号</div>\
  48. <div class="w3-rest pl15">\
  49. <input type="text" class="form-control" v-model="userinfo.micard" name="micard">\
  50. </div>\
  51. </div>\
  52. <div class="w3-row mt25 form-group">\
  53. <div class="w3-col c-323232 c-f16 m5 c-t-right" style="width:80px;">行&emsp;&emsp;业</div>\
  54. <div class="pl105" data-toggle="modal" data-target="#selindustry">\
  55. <input id="industry" placeholder="请选择行业" type="text" class="form-control" name="industry" v-model="userinfo.profession" name="profession"><span class="caret selcaret"></span>\
  56. </div>\
  57. </div>\
  58. <div class="w3-row mt25">\
  59. <div class="w3-col c-323232 c-f16 m5 c-t-right" style="width:80px;">家庭住址</div>\
  60. <div class="pl105">\
  61. <selsect-address ref="getAddress"></selsect-address>\
  62. <div class="form-group">\
  63. <textarea class="form-control mt10" v-model="userinfo.street" name="street"></textarea>\
  64. </div>\
  65. </div>\
  66. </div>\
  67. <div class="c-t-center ">\
  68. <button type="submit" class="btn btn-theme c-f16 mtb30" style="width:144px;" @click="update()">保 存</button>\
  69. </div>\
  70. </form>\
  71. <select-industry ref="getIndustry"></select-industry>\
  72. </div>\
  73. </div>\
  74. </div>\
  75. </div>',
  76. props: [],
  77. data: function() {
  78. return {
  79. userinfo: {},
  80. code: "info",
  81. address: '',
  82. defaultImg: "../../../images/moren_touxiang_img.png",
  83. }
  84. },
  85. mounted: function() {
  86. var vm = this
  87. vm.initinfo()
  88. $('#selindustry').on('hidden.bs.modal', function(e) {
  89. vm.getNewIndustry()
  90. })
  91. },
  92. methods: {
  93. initinfo: function() {
  94. var vm = this;
  95. var loginInfo = JSON.parse(sessionStorage.getItem("oauthInfo"));
  96. var data1 = {
  97. userName: loginInfo.user,
  98. token: loginInfo.accessToken
  99. }
  100. loginAPI.getUserInfo(data1).then(function(res) {
  101. vm.userinfo = res
  102. })
  103. },
  104. getNewAddress: function() {
  105. var vm = this
  106. vm.userinfo.provinceId = vm.$refs.getAddress.provinceid
  107. vm.userinfo.cityId = vm.$refs.getAddress.cityid
  108. vm.userinfo.areaId = vm.$refs.getAddress.countyid
  109. vm.userinfo.provinceName = vm.$refs.getAddress.provincename
  110. vm.userinfo.cityName = vm.$refs.getAddress.cityname
  111. vm.userinfo.areaName = vm.$refs.getAddress.countyname
  112. },
  113. getNewIndustry: function() {
  114. var vm = this
  115. var aaa = vm.$refs.getIndustry.industryname
  116. var bbb = vm.$refs.getIndustry.directionname
  117. if(bbb != "请选择方向") {
  118. vm.userinfo.profession = bbb
  119. } else if(aaa != "请选择行业") {
  120. vm.userinfo.profession = aaa
  121. }
  122. },
  123. uploadImg: function(e) {
  124. var file = {},
  125. vm = this
  126. file = e.target.files[0]
  127. if(file.size > 5 * 1024 * 1024) {
  128. toastr.error("图片大小格式超出5M范围不可用")
  129. return false
  130. }
  131. var formData = new FormData()
  132. formData.append('file', file)
  133. var param = {
  134. files: formData,
  135. creator: vm.userinfo.id,
  136. objectId: 'EHR',
  137. }
  138. fileAPI.uploadImg(param).then(function(reslove) {
  139. vm.userinfo.imgRemotePath = reslove.obj.httpUrl //上传到图片服务器成功则修改个人资料
  140. }, function(err) {
  141. toastr.error("选择图片失败");
  142. })
  143. },
  144. update: function() {
  145. var vm = this
  146. var flag = $("#newInterfaceForm").valid();
  147. if(!flag) {
  148. //没有通过验证
  149. return;
  150. }
  151. vm.getNewAddress()
  152. mineAPI.userInforUpdate(vm.userinfo).then(function (res) {
  153. toastr.success("修改成功!")
  154. }).catch(function(){
  155. toastr.error("修改失败!")
  156. })
  157. },
  158. },
  159. })
  160. })()