information.js 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480
  1. ;
  2. var informationPage = new Vue({
  3. el: "#informationPage",
  4. mixins: [cmSysVitaMixins],
  5. data: {
  6. isRequset:true,
  7. loginLoading: false,
  8. showTabContentIndex:1,
  9. showSupplierConfirm:true,
  10. advisoryStatus: false,
  11. userId:0,
  12. showClass:'',
  13. mobilCount:0,
  14. mobileCodeText:'获取验证码',
  15. mobilTime:null,
  16. isMobileDisabled:false,
  17. isCodeModel:false,
  18. codeImagePath:'https://dss2.bdstatic.com/8_V1bjqh_Q23odCf/pacific/1819816496.jpg',
  19. codeImageToken:'',
  20. imageCode:'',
  21. bindMobile:'',
  22. userIdentity:'',
  23. clubUpgradeUser: {
  24. userId:0,
  25. clubId:0, //会所Id
  26. name:'', //机构名称
  27. linkMan:'', //联系人
  28. contractEmail:'', //邮箱
  29. shortName:'', //机构简称
  30. provinceId:0, //省Id
  31. cityId:0, //市Id
  32. townId:0, //区Id
  33. address:'', //地址
  34. socialCreditCode:'', //营业执照编号
  35. businessLicense:'', //营业执照图片
  36. shopPhoto:'', //门头照
  37. firstClubType:'', //机构类型分类 医美:0和生美:1
  38. secondClubType:'', //机构类型二级分类 诊所:1,门诊:2,医院:3
  39. department:'', //科室
  40. medicalPracticeLicense:'',//资质图片
  41. isAgreed:0, //是否勾选协议
  42. mainProduct:[], //主营内容
  43. fax:'', //传真
  44. contractPhone:'', //固定电话
  45. profile : '', //公司简介
  46. linkManIdentity:0 //联系人身份
  47. },
  48. userMainPros:[],
  49. formData:new FormData(),
  50. isAgreed:0,
  51. isAgree:false,
  52. isShowAgree:false,
  53. mentuzCampNullList:[
  54. {value:'1',name:'整形'},
  55. {value:'2',name:'轻医美'},
  56. {value:'3',name:'皮肤科'},
  57. {value:'4',name:'产后修复'},
  58. ],
  59. medicaCampNullList: [
  60. {name:'美容'},
  61. {name:'美体'},
  62. {name:'美发'},
  63. {name:'皮肤管理'},
  64. {name:'光电'},
  65. {name:'综合类'},
  66. {name:'中医养生'},
  67. {name:'spa'},
  68. ],
  69. mainPros: ['产品','仪器','服务','整形'],
  70. mainProEdit: '',
  71. ProvinceList:[],
  72. cityArray:[],
  73. townArray:[],
  74. addressfrom: {
  75. provinceId: '',//省id
  76. cityId: '',//市ID
  77. townId: '',//地区ID
  78. name:'请选择'
  79. },
  80. rule:{
  81. name: '^[a-zA-Z\\u4e00-\\u9fa5]{2,}$',
  82. phone: '^\\d{6,12}$',
  83. code: '^\\d{6}$',
  84. license: '^[a-zA-Z0-9_]{18}$',
  85. email: '^(([^<>()\\[\\]\\\\.,;:\\s@&quot;]+(\\.[^<>()\\[\\]\\\\.,;:\\s@&quot;]+)*)|(&quot;.+&quot;))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$',
  86. password: "^[^\\u4e00-\\u9fa5]{8,16}$"
  87. },
  88. flagshow:false,
  89. businessflag:false,
  90. typeflag:false,
  91. secondtypeflag:false,
  92. mproflag:false,
  93. userMainProflag:false,
  94. medicalPracticeLicenseFlag: false
  95. },
  96. computed: {
  97. },
  98. watch: {
  99. },
  100. methods: {
  101. handleChangeType: function(type){
  102. if(type === parseInt(this.clubUpgradeUser.firstClubType)) return;
  103. this.userMainPros = [];
  104. this.clubUpgradeUser.secondClubType = (type === 1 ? 1 : 5);
  105. },
  106. infoInformationData:function(){
  107. var _self = this;
  108. UserApi.GetApplicationData({userId:_self.userId},function (response) {
  109. if(response.code === 0){
  110. var data = response.data;
  111. _self.isRequset = false;
  112. _self.clubUpgradeUser = data.club;
  113. _self.bindMobile = data.user.bindMobile ? data.user.bindMobile : '';
  114. _self.userIdentity = data.user.userIdentity ? data.user.userIdentity : '';
  115. _self.addressfrom.clubId = data.user.clubId;
  116. _self.addressfrom.userId = data.user.userId;
  117. _self.addressfrom.contractEmail = data.user.contractEmail ? data.user.contractEmail : '';
  118. _self.addressfrom.provinceId = data.club.provinceId ? data.club.provinceId : 0;
  119. _self.addressfrom.cityId = data.club.cityId ? data.club.cityId : '';
  120. _self.addressfrom.townId = data.club.townId ? data.club.townId : '';
  121. _self.clubUpgradeUser.linkManIdentity = data.club.linkManIdentity ? data.club.linkManIdentity : 0;
  122. _self.clubUpgradeUser.provinceId = data.club.provinceId ? data.club.provinceId : '';
  123. _self.clubUpgradeUser.cityId = data.club.cityId ? data.club.cityId : '';
  124. _self.clubUpgradeUser.townId= data.club.townId ? data.club.townId : '';
  125. _self.clubUpgradeUser.shopPhoto = data.club.shopPhoto ? data.club.shopPhoto : '';
  126. _self.clubUpgradeUser.businessLicense = data.club.businessLicense ? data.club.businessLicense : '';
  127. _self.clubUpgradeUser.firstClubType = data.club.firstClubType ? data.club.firstClubType : '';
  128. _self.clubUpgradeUser.secondClubType = data.club.secondClubType ? data.club.secondClubType :'';
  129. _self.clubUpgradeUser.address = data.club.address ? data.club.address : null;
  130. _self.firstClubType = _self.clubUpgradeUser.firstClubType;
  131. if( _self.clubUpgradeUser.firstClubType === 1){
  132. if(data.club.mainProduct){
  133. _self.userMainPros = _self.setNewMainpro(data.club.mainProduct);
  134. _self.medicaCampNullList = _self.setNewMainProduct(_self.userMainPros);
  135. console.log(_self.userMainPros)
  136. }else{
  137. _self.userMainPros = _self.medicaCampNullList;
  138. }
  139. }else{
  140. if(data.club.mainProduct){
  141. _self.userMainPros = _self.setNewMainpro(data.club.mainProduct);
  142. _self.mentuzCampNullList = _self.setNewMainProduct(_self.userMainPros);
  143. console.log(_self.userMainPros)
  144. }else{
  145. _self.userMainPros = _self.mentuzCampNullList;
  146. }
  147. }
  148. _self.GetProvinceFn();
  149. if( _self.addressfrom.townId){
  150. _self.GetCtiyFn();
  151. _self.GetTownFn();
  152. }
  153. }else{
  154. CAIMEI.Alert(response.msg,'确定',false);
  155. }
  156. })
  157. },
  158. clunConfirmFn:function() {//保存提交
  159. var _self = this;
  160. var params ={};
  161. var pass = verifyForm();
  162. if (!pass) {return false;}
  163. if(_self.userIdentity === 2) {
  164. if(!_self.clubUpgradeUser.linkManIdentity){
  165. $('#userNameType').parent().addClass("error");
  166. $('#userNameType').siblings('.errTips').text('请选择联系人身份').addClass("show");
  167. _self.scrollIntoView();
  168. return false;
  169. }
  170. if (_self.clubUpgradeUser.townId == 0 || _self.clubUpgradeUser.address == '') {
  171. _self.flagshow = true;
  172. setTimeout(function () {
  173. _self.flagshow = false;
  174. }, 2000);
  175. return;
  176. }
  177. if (_self.clubUpgradeUser.businessLicense == '' || _self.clubUpgradeUser.businessLicense == null) {
  178. _self.businessflag = true;
  179. setTimeout(function () {
  180. _self.businessflag = false;
  181. }, 2000);
  182. return;
  183. }
  184. if (_self.clubUpgradeUser.firstClubType == '' || _self.clubUpgradeUser.firstClubType == null) {
  185. _self.typeflag = true;
  186. setTimeout(function () {
  187. _self.typeflag = false;
  188. }, 2000);
  189. return;
  190. }
  191. if (_self.clubUpgradeUser.firstClubType == 1) {
  192. if (_self.clubUpgradeUser.secondClubType == '' || _self.clubUpgradeUser.secondClubType == null) {
  193. _self.secondtypeflag = true;
  194. setTimeout(function () {
  195. _self.secondtypeflag = false;
  196. }, 2000);
  197. return;
  198. }
  199. if (!_self.clubUpgradeUser.medicalPracticeLicense) {
  200. _self.medicalPracticeLicenseFlag = true;
  201. setTimeout(function () {
  202. _self.medicalPracticeLicenseFlag = false;
  203. }, 2000);
  204. return;
  205. }
  206. if (_self.userMainPros == '') {
  207. _self.mproflag = true;
  208. setTimeout(function () {
  209. _self.mproflag = false;
  210. }, 2000);
  211. return;
  212. }
  213. }
  214. if (_self.clubUpgradeUser.firstClubType == 2) {
  215. if (_self.userMainPros == '') {
  216. _self.userMainProflag = true;
  217. setTimeout(function () {
  218. _self.userMainProflag = false;
  219. }, 2000);
  220. return;
  221. }
  222. }
  223. _self.clubUpgradeUser.mainProduct = _self.userMainPros.join("/");
  224. params = {
  225. userId: _self.clubUpgradeUser.userId,
  226. clubId: _self.clubUpgradeUser.clubId, //会所Id
  227. name: _self.clubUpgradeUser.name,
  228. linkMan: _self.clubUpgradeUser.linkMan,
  229. linkManIdentity: _self.clubUpgradeUser.linkManIdentity,
  230. shortName: _self.clubUpgradeUser.shortName,
  231. contractEmail: _self.clubUpgradeUser.contractEmail,
  232. provinceId: _self.clubUpgradeUser.provinceId,
  233. cityId: _self.clubUpgradeUser.cityId,
  234. townId: _self.clubUpgradeUser.townId,
  235. address: _self.clubUpgradeUser.address,
  236. socialCreditCode: _self.clubUpgradeUser.socialCreditCode,
  237. businessLicense: _self.clubUpgradeUser.businessLicense,
  238. shopPhoto: _self.clubUpgradeUser.shopPhoto,
  239. firstClubType: _self.clubUpgradeUser.firstClubType, //机构类型分类 医美:0和生美:1
  240. secondClubType: _self.clubUpgradeUser.secondClubType, //机构类型二级分类 诊所:1,门诊:2,医院:3
  241. department: _self.clubUpgradeUser.department, //科室
  242. medicalPracticeLicense: _self.clubUpgradeUser.medicalPracticeLicense,//资质图片
  243. mainProduct: _self.clubUpgradeUser.mainProduct,
  244. fax: _self.clubUpgradeUser.fax,
  245. contractPhone: _self.clubUpgradeUser.contractPhone,
  246. profile: _self.clubUpgradeUser.profile
  247. }
  248. }else{
  249. params = {
  250. userId:_self.clubUpgradeUser.userId,
  251. clubId:_self.clubUpgradeUser.clubId, //会所Id
  252. linkMan:_self.clubUpgradeUser.linkMan,
  253. fax:_self.clubUpgradeUser.fax,
  254. contractPhone:_self.clubUpgradeUser.contractPhone,
  255. profile : _self.clubUpgradeUser.profile,
  256. }
  257. }
  258. if (_self.loginLoading) { return false; }
  259. this.$nextTick(function() {
  260. _self.loginLoading = true;
  261. UserApi.UpdateModifiedData(params,function (response) {
  262. if(response.code === 0){
  263. CAIMEI.dialog('修改成功',true,function () {
  264. window.location.href='/user/dashboard.html';
  265. _self.loginLoading = false;
  266. });
  267. } else {
  268. CAIMEI.Alert(response.msg,'确定',false);
  269. _self.loginLoading = false;
  270. }
  271. });
  272. });
  273. },
  274. setNewMainProduct:function(arr){
  275. var Array = [];
  276. if(arr){
  277. arr.forEach(function(item){
  278. var obj ={
  279. name:item,
  280. };
  281. Array.push(obj);
  282. });
  283. }
  284. return Array
  285. },
  286. setNewMainpro:function(arr){//回显处理主营内容
  287. var newArr = [];
  288. if(arr){
  289. arr.split('/').forEach(function(item){
  290. newArr.push(item);
  291. });
  292. }
  293. return newArr
  294. },
  295. mainProAdd: function(){//添加主营
  296. var _self = this;
  297. if (_self.mainProEdit.length>0) {
  298. if (_self.mainPros.indexOf(_self.mainProEdit)<0){
  299. var obj = {name:_self.mainProEdit};
  300. console.log(obj);
  301. if(_self.clubUpgradeUser.firstClubType === 2){
  302. if(_self.checkedArray(_self.mainProEdit,_self.mentuzCampNullList)){
  303. CAIMEI.dialog('主营内容已存在!',false);
  304. }else {
  305. _self.mentuzCampNullList.push(obj);
  306. _self.mainProEdit = '';
  307. }
  308. }else{
  309. if(_self.checkedArray(_self.mainProEdit,_self.medicaCampNullList)){
  310. CAIMEI.dialog('主营内容已存在!',false);
  311. }else {
  312. _self.medicaCampNullList.push(obj);
  313. _self.mainProEdit = '';
  314. }
  315. }
  316. }
  317. }
  318. },
  319. checkedArray:function(content,arr){//判断主营内容是否已存在
  320. for(var i in arr){
  321. if(arr[i].name == content){
  322. return true;
  323. }
  324. }
  325. return false;
  326. },
  327. blurHandle: function(event) { // 失去焦点校验
  328. var el = event.currentTarget;
  329. verifyHandle(el);
  330. },
  331. uploadBusinessLicenseImageFn: function(event){//上传营业执照
  332. var _self = this;
  333. var inputDOM = _self.$refs.businessLicenseImage;
  334. var file = inputDOM.files;
  335. _self.formData.append('file', file[0]);
  336. console.log(file)
  337. PublicApi.uploadimg(_self.formData,function(response){
  338. _self.clubUpgradeUser.businessLicense = response.data;
  339. event.target.value = '';
  340. });
  341. },
  342. uploadMentuzImageFn: function(event){//上传营业执照
  343. var _self = this;
  344. var inputDOM = _self.$refs.businessMentuImage;
  345. var file = inputDOM.files;
  346. _self.formData.append('file', file[0]);
  347. PublicApi.uploadimg(_self.formData,function(response){
  348. _self.clubUpgradeUser.shopPhoto = response.data;
  349. event.target.value = '';
  350. });
  351. },
  352. uploadMedicaImageFn: function(event){//上传资质证书
  353. var _self = this;
  354. var inputDOM = _self.$refs.businessMedicaImage;
  355. var file = inputDOM.files;
  356. _self.formData.append('file', file[0]);
  357. PublicApi.uploadimg(_self.formData,function(response){
  358. _self.clubUpgradeUser.medicalPracticeLicense = response.data;
  359. event.target.value = '';
  360. });
  361. },
  362. deleteBusinessImage:function(){//清楚营业执照图片
  363. this.clubUpgradeUser.businessLicense = '';
  364. },
  365. deleteMentuzImage:function(){//清楚门头照图片
  366. this.clubUpgradeUser.shopPhoto = '';
  367. },
  368. deleteMedicalImage:function(){//清楚资质照图片
  369. this.clubUpgradeUser.medicalPracticeLicense = '';
  370. },
  371. checkedIsAgreeFn:function () {
  372. var _self = this;
  373. _self.isAgree = !_self.isAgree;
  374. if (_self.isAgree){
  375. _self.isShowAgree = false;
  376. _self.isAgreed = 1;
  377. }else{
  378. _self.isShowAgree = true;
  379. _self.isAgreed = 0;
  380. }
  381. },
  382. GetProvinceFn: function(){//获取全部省份
  383. var _self = this;
  384. PublicApi.GetProvince({},function(response){
  385. if(response.code == 0){
  386. _self.ProvinceList =response.data;
  387. }else{
  388. CAIMEI.Alert(response.msg,'确定',false);
  389. }
  390. })
  391. },
  392. ChangeProvince:function () {//选择省份
  393. var _self = this;
  394. _self.addressfrom.provinceId = event.target.value;
  395. _self.clubUpgradeUser.provinceId = event.target.value;
  396. if(_self.addressfrom.provinceId==''){//省为请选择时市区初始化
  397. _self.cityArray=[];
  398. _self.townArray=[];
  399. _self.clubUpgradeUser.townId='';
  400. _self.clubUpgradeUser.cityId='';
  401. }else {
  402. _self.clubUpgradeUser.townId='';
  403. _self.clubUpgradeUser.cityId='';
  404. _self.GetCtiyFn();
  405. }
  406. },
  407. ChangeGetcity:function(event){//加载市
  408. var _self = this;
  409. _self.addressfrom.cityId = event.target.value;
  410. _self.clubUpgradeUser.cityId = event.target.value;
  411. if(_self.addressfrom.cityId==''){
  412. _self.townArray=[];
  413. }else {
  414. _self.GetTownFn();
  415. }
  416. },
  417. ChangeGetcTown:function(event){//选择地区
  418. var _self = this;
  419. _self.clubUpgradeUser.townId = event.target.value;
  420. },
  421. GetProvinceFn: function(){//获取全部省份
  422. var _self = this;
  423. PublicApi.GetProvince({},function(response){
  424. if(response.code == 0){
  425. _self.ProvinceList =response.data;
  426. }else{
  427. CAIMEI.Alert(response.msg,'确定',false);
  428. }
  429. })
  430. },
  431. GetCtiyFn: function(){//获取市
  432. var _self = this;
  433. PublicApi.GetCity({ type:1, parentId: _self.addressfrom.provinceId },function(response){
  434. if(response.code == 0 ){
  435. _self.cityArray = response.data;
  436. }else{
  437. CAIMEI.Alert(response.msg,'确定',false);
  438. }
  439. })
  440. },
  441. GetTownFn: function(){//获取区
  442. var _self = this;
  443. PublicApi.GetTown({ type:2, parentId: _self.addressfrom.cityId },function(response){
  444. if(response.code == 0 ){
  445. _self.townArray = response.data;
  446. }else{
  447. CAIMEI.Alert(response.msg,'确定',false);
  448. }
  449. })
  450. },
  451. showViewerImageFn:function(){//预览营业执照图片
  452. var viewer = new Viewer(document.getElementById('businessLicenseImage'));
  453. },
  454. showViewerImageFn1:function(){//预览门头照图片
  455. var viewer = new Viewer(document.getElementById('uploadMentuzImage'));
  456. },
  457. showViewerImageFn2:function(){//预览资质图片
  458. var viewer = new Viewer(document.getElementById('medicalPracticeLicenseImg'));
  459. },
  460. changeUserNameType:function(event){
  461. $('#userNameType').parent().removeClass("error");
  462. $('#userNameType').siblings('.errTips').removeClass("show");
  463. },
  464. scrollIntoView: function(){
  465. document.getElementById('informationPage').scrollIntoView({block: 'start', behavior: 'smooth'});
  466. },
  467. },
  468. mounted: function () {
  469. var _self = this;
  470. if(globalUserData){
  471. _self.userId = globalUserData.userId;
  472. _self.infoInformationData();
  473. }
  474. _self.GetProvinceFn();
  475. $('.navLayout').find('.navList').removeClass("on").find('.con').hide().find('a').removeClass("on");
  476. $('.navLayout').find('.navList').eq(1).addClass("on").find('.con').show().find('a').eq(0).addClass("on");
  477. }
  478. });