register.js 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523
  1. var Register = {
  2. registData: {},
  3. validateFields: {
  4. username: {validators: {notEmpty: {message: '登录账号不能为空'}}},
  5. name: {validators: {notEmpty: {message: '单位名称不能为空'},regexp:{regexp:/^[\u4e00-\u9fa5]{1,100}$/,message:"单位名称只允许中文"}}},
  6. idCard: {validators: {notEmpty: {message: '社会信用代码不能为空'}}},
  7. agentName: {validators: {notEmpty: {message: '人才联络员不能为空'}}},
  8. agentPhone: {
  9. validators: {
  10. notEmpty: {
  11. message: '人才联络员手机号不能为空'
  12. }, regexp: {
  13. regexp: /((\d{11})|^((\d{7,8})|(\d{4}|\d{3})-(\d{7,8})|(\d{4}|\d{3})-(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1})|(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1}))$)/,
  14. message: "人才联络员手机号格式不合法"
  15. }
  16. }
  17. },
  18. verificationCode: {validators: {notEmpty: {message: '手机验证码不能为空'}}},
  19. legal: {validators: {notEmpty: {message: '法人代表不能为空'},regexp:{regexp:/^[\u4e00-\u9fa5]{1,50}$/,message:"法人代表只允许中文"}}},
  20. street: {validators: {notEmpty: {message: '所属街道不能为空'}}},
  21. address: {validators: {notEmpty: {message: '单位地址不能为空'}}},
  22. ephone: {
  23. validators: {
  24. notEmpty: {
  25. message: '单位电话不能为空'
  26. }, regexp: {
  27. regexp: /((\d{11})|^((\d{7,8})|(\d{4}|\d{3})-(\d{7,8})|(\d{4}|\d{3})-(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1})|(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1}))$)/,
  28. message: "单位电话格式不合法"
  29. }
  30. }
  31. },
  32. agentEmail: {
  33. validators: {
  34. notEmpty: {
  35. message: '电子邮箱不能为空'
  36. },
  37. regexp: {
  38. regexp: /[\w!#$%&'*+/=?^_`{|}~-]+(?:\.[\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\w](?:[\w-]*[\w])?\.)+[\w](?:[\w-]*[\w])?/,
  39. message: "电子邮箱格式不正确"
  40. }
  41. }
  42. },
  43. bankCard: {validators: {notEmpty: {message: '企业银行账号不能为空'}}},
  44. bankNetwork: {validators: {notEmpty: {message: '企业开户银行网点不能为空'}}},
  45. bank: {validators: {notEmpty: {message: '企业开户银行不能为空'}}}
  46. }
  47. };
  48. var enterpriseCountDown = 0;
  49. var enterpriseSmsBtn = $("#enterprise_sms_btn");
  50. var persionCountDown = 0;
  51. var psSmsBtn = $("#ps_sms_btn");
  52. var lock = false;
  53. Register.addSubmit = function() {
  54. var regType = $(".active").attr("regType");
  55. if (regType == "en") { //企业用户注册
  56. Register.enterpriseUserRegister();
  57. } else if (regType == "ps") { //个人用户注册
  58. Register.personUserRegister();
  59. }
  60. };
  61. /**
  62. * 验证数据
  63. */
  64. Register.validate = function () {
  65. $('#ep_form').data("bootstrapValidator").resetForm();
  66. $('#ep_form').bootstrapValidator('validate');
  67. return $("#ep_form").data('bootstrapValidator').isValid();
  68. }
  69. var isDis = false;
  70. Register.enterpriseUserRegister = function() {
  71. if(!Register.validate()){
  72. return ;
  73. }
  74. isDis = $("#type").prop("disabled");
  75. var source = $("#source").val();
  76. var username = $("#username").val();
  77. var password = $("#password").val();
  78. var rePassword = $("#re_password").val();
  79. var name = $("#name").val();
  80. var idCard = $("#idCard").val();
  81. var agentName = $("#agentName").val();
  82. var agentPhone = $("#agentPhone").val();
  83. var verificationCode = $("#verificationCode").val();
  84. var legal = $("#legal").val();
  85. var street = $("#street").val();
  86. var address = $("#address").val();
  87. if(isDis){
  88. $("#type").removeAttr("disabled");
  89. }
  90. var type = $("#type").val();
  91. var agentEmail = $("#agentEmail").val();
  92. var talentType = $("#talentType").val();
  93. var enterpriseTag = $("#enterpriseTag").val();
  94. var ephone = $("#ephone").val();
  95. var industryFieldNew = $("#industryFieldNew").val();
  96. var bankCard = $("#bankCard").val();
  97. var bank = $("#bank").val();
  98. var bankNetwork = $("#bankNetwork").val();
  99. if (username==null || username=='') {
  100. Feng.info("请填写账号!");
  101. return;
  102. }
  103. if (username.length > 50) {
  104. Feng.info("账号最多50个字符!");
  105. return;
  106. }
  107. if(source != 2){
  108. if (password==null || password=='') {
  109. Feng.info("请填写密码!");
  110. return;
  111. }
  112. if (!/^(?=.*\d)(?=.*[a-zA-Z]).{8,20}$/.test(password)){
  113. Feng.info("密码格式错误,密码由字母、数字及特殊字符且8-20个字符组成!");
  114. return;
  115. }
  116. if (rePassword==null || rePassword=='') {
  117. Feng.info("请填写重复密码!");
  118. return;
  119. }
  120. if (password != rePassword) {
  121. Feng.info("两次密码填写不一致!");
  122. return;
  123. }
  124. }
  125. if (name==null || name=='') {
  126. Feng.info("请填写单位名称!");
  127. return;
  128. }
  129. if(!/^[\u4e00-\u9fa5]{1,100}$/.test(name)){
  130. Feng.info("单位名称只能输入中文 !");
  131. return;
  132. }
  133. if (name.length > 100) {
  134. Feng.info("单位名称最多100个字符!");
  135. return;
  136. }
  137. if (idCard==null || idCard=='') {
  138. Feng.info("请填写社会信用代码!");
  139. return;
  140. }
  141. if (type==null || type=='') {
  142. Feng.info("请选择申报类型!");
  143. return;
  144. }
  145. if (idCard.length > 40) {
  146. Feng.info("社会信用代码最多40个字符!");
  147. return;
  148. }
  149. if (agentName==null || agentName=='') {
  150. Feng.info("请填写人才联络员!");
  151. return;
  152. }
  153. if (agentName.length > 30) {
  154. Feng.info("人才联络员最多30个字符!");
  155. return;
  156. }
  157. if (agentPhone==null || agentPhone=='') {
  158. Feng.info("请填写人才联络员电话!");
  159. return;
  160. }
  161. if(ephone == null || ephone==''){
  162. Feng.info("请填写单位电话");
  163. return;
  164. }
  165. if (verificationCode==null || verificationCode=='') {
  166. Feng.info("请填写手机验证码!");
  167. return;
  168. }
  169. if (legal==null || legal=='') {
  170. Feng.info("请填写法人代表!");
  171. return;
  172. }
  173. if(!/^[\u4e00-\u9fa5]{1,50}$/.test(legal)){
  174. Feng.info("法人代表只能输入中文 !");
  175. return;
  176. }
  177. if (street==null || street=='') {
  178. Feng.info("请选择所属街道!");
  179. return;
  180. }
  181. if (address==null || address=='') {
  182. Feng.info("请填写单位地址!");
  183. return;
  184. }
  185. if(type==null || type==''){
  186. Feng.info("请选择企业类别");
  187. return ;
  188. }
  189. if (agentEmail==null || agentEmail=='') {
  190. Feng.info("请填写电子邮箱!");
  191. return;
  192. }
  193. if (bankCard==null || bankCard=='') {
  194. Feng.info("请填写企业银行账号!");
  195. return;
  196. }
  197. if (bank==null || bank=='') {
  198. Feng.info("请填写企业开户银行!");
  199. return;
  200. }
  201. if (bankNetwork==null || bankNetwork=='') {
  202. Feng.info("请填写企业开户银行网点");
  203. return;
  204. }
  205. if(type==1 ){
  206. if(enterpriseTag==null||enterpriseTag==''){
  207. Feng.info("请选择单位标签!");
  208. return;
  209. }
  210. if(industryFieldNew == null || industryFieldNew ==''){
  211. Feng.info("请选择产业领域");
  212. return ;
  213. }
  214. }
  215. var x=document.getElementById("imgurl").value;
  216. if(x==""){
  217. Feng.info("请上传营业执照照片!");
  218. return;
  219. }
  220. if(!/((\d{11})|^((\d{7,8})|(\d{4}|\d{3})-(\d{7,8})|(\d{4}|\d{3})-(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1})|(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1}))$)/.test(ephone)){
  221. Feng.info("单位电话格式不合法!");
  222. return;
  223. }
  224. if(!/((\d{11})|^((\d{7,8})|(\d{4}|\d{3})-(\d{7,8})|(\d{4}|\d{3})-(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1})|(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1}))$)/.test(agentPhone)){
  225. Feng.info("人才联络员电话格式不合法!");
  226. return;
  227. }
  228. if(!/[\w!#$%&'*+/=?^_`{|}~-]+(?:\.[\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\w](?:[\w-]*[\w])?\.)+[\w](?:[\w-]*[\w])?/.test(agentEmail)){
  229. Feng.info("电子邮箱格式不合法!");
  230. return;
  231. }
  232. if(!lock){
  233. lock = true;
  234. }else{
  235. Feng.info("不能重复点击");
  236. return;
  237. }
  238. $("#ep_form")[0].submit();
  239. };
  240. Register.personUserRegister = function() {
  241. var source = $("#ps_source").val();
  242. var username = $("#ps_username").val();
  243. var password = $("#ps_password").val();
  244. var rePassword = $("#ps_re_password").val();
  245. var name = $("#ps_name").val();
  246. var sex = $("#ps_sex").val();
  247. var idCard = $("#ps_idCard").val();
  248. var phone = $("#ps_phone").val();
  249. var verificationCode = $("#ps_verificationCode").val();
  250. if (username==null || username=='') {
  251. Feng.info("请填写账号!");
  252. return;
  253. }
  254. if (username.length > 50) {
  255. Feng.info("账号最多20个字符!");
  256. return;
  257. }
  258. if(source !=2 ){
  259. if (password==null || password=='') {
  260. Feng.info("请填写密码!");
  261. return;
  262. }
  263. if (rePassword==null || rePassword=='') {
  264. Feng.info("请填写重复密码!");
  265. return;
  266. }
  267. if (password != rePassword) {
  268. Feng.info("两次密码填写不一致!");
  269. return;
  270. }
  271. }
  272. if (name==null || name=='') {
  273. Feng.info("请填写姓名!");
  274. return;
  275. }
  276. if (name.length > 20) {
  277. Feng.info("姓名最多20个字符!");
  278. return;
  279. }
  280. if (sex==null || sex=='') {
  281. Feng.info("请选择性别!");
  282. return;
  283. }
  284. if (idCard==null || idCard=='') {
  285. Feng.info("请填写身份证号!");
  286. return;
  287. }
  288. if (phone==null || phone=='') {
  289. Feng.info("请填写手机号!");
  290. return;
  291. }
  292. if (verificationCode==null || verificationCode=='') {
  293. Feng.info("请填写手机验证码!")
  294. return;
  295. }
  296. if(!/0?(13|14|15|17|18|19)[0-9]{9}/.test(phone)){
  297. Feng.info("手机号格式不合法!");
  298. return;
  299. }
  300. var da = {"source":source,"username":username, "password":password, "name":name, "sex":sex, "idCard":idCard, "phone":phone, "verificationCode":verificationCode};
  301. var ajax = new $ax(Feng.ctxPath + "/api/personalUser/register", function(data){
  302. Feng.info(data.msg);
  303. if (data.code == 200) {
  304. parent.layer.close(window.parent.Login.layerIndex);
  305. }
  306. },function(data){
  307. Feng.error("操作失败!" + data.responseJSON.message + "!");
  308. });
  309. ajax.set(da);
  310. ajax.start();
  311. };
  312. Register.getEnterpriseSms = function() {
  313. var agentPhone = $("#agentPhone").val();
  314. if (agentPhone==null || agentPhone=="") {
  315. Feng.info("请填写人才联络员手机号!");
  316. return;
  317. }
  318. agentPhone = $.trim(agentPhone);
  319. if (!Feng.checkMobilePhoneNum(agentPhone)) {
  320. Feng.info("手机号格式有误,请填写正确的手机号码!");
  321. return;
  322. }
  323. Register.enterpriseBtnCountDown();
  324. var ajax = new $ax(Feng.ctxPath + "/common/auth/verificationCode?phone="+agentPhone+"&type=1", function(data){
  325. Feng.info(data.msg);
  326. },function(data){
  327. Feng.error("操作失败!" + data.responseJSON.message + "!");
  328. });
  329. ajax.set(null);
  330. ajax.start();
  331. };
  332. Register.enterpriseBtnCountDown = function() {
  333. if (enterpriseCountDown == 0) {
  334. enterpriseCountDown = 60;
  335. } else if (enterpriseCountDown == 1) {
  336. enterpriseSmsBtn.removeAttr("disabled");
  337. enterpriseSmsBtn.html("获取验证码");
  338. enterpriseCountDown = 0;
  339. return;
  340. }
  341. enterpriseSmsBtn.attr("disabled", true);
  342. enterpriseSmsBtn.html(enterpriseCountDown + "秒");
  343. enterpriseCountDown--;
  344. setTimeout("Register.enterpriseBtnCountDown()", 1000);
  345. };
  346. Register.getPersionSms = function() {
  347. var phone = $("#ps_phone").val();
  348. if (phone==null || phone=="") {
  349. Feng.info("请填写手机号!");
  350. return;
  351. }
  352. phone = $.trim(phone);
  353. if (!Feng.checkMobilePhoneNum(phone)) {
  354. Feng.info("手机号格式有误,请填写正确的手机号码!");
  355. return;
  356. }
  357. Register.getPersionBtnCountDown();
  358. var ajax = new $ax(Feng.ctxPath + "/common/auth/verificationCode?phone="+phone+"&type=1", function(data){
  359. Feng.info(data.msg);
  360. },function(data){
  361. Feng.error("操作失败!" + data.responseJSON.message + "!");
  362. });
  363. ajax.set(null);
  364. ajax.start();
  365. };
  366. Register.getPersionBtnCountDown = function() {
  367. if (persionCountDown == 0) {
  368. persionCountDown = 60;
  369. } else if (persionCountDown == 1) {
  370. psSmsBtn.removeAttr("disabled");
  371. psSmsBtn.html("获取验证码");
  372. persionCountDown = 0;
  373. return;
  374. }
  375. psSmsBtn.attr("disabled", true);
  376. psSmsBtn.html(persionCountDown + "秒");
  377. persionCountDown--;
  378. setTimeout("Register.getPersionBtnCountDown()", 1000);
  379. };
  380. /**
  381. * 企业用户注册回调
  382. */
  383. Register.epCallBack = function(data) {
  384. lock = false;
  385. var nowDis = $("#type").prop("disabled");
  386. if(isDis!=nowDis){
  387. $("#type").attr("disabled","disabled");
  388. }
  389. Feng.info(data.msg);
  390. if (data.code == 200) {
  391. parent.layer.close(window.parent.Login.layerIndex);
  392. }
  393. };
  394. Register.typeChange = function(){
  395. $("#type").removeAttr("disabled");
  396. var type = $("#type").val();
  397. if(type==1){
  398. $("#typeGroup").attr("style","display:block");
  399. }else{
  400. $("typeGroup").attr("style","display:none");
  401. $("#enterpriseTag,#industryFieldNew,#industryFieldOld").val("");
  402. }
  403. }
  404. Register.industryChange = function(){
  405. var industryNew = $("#industryFieldNew").val();
  406. var arr = [{"name":"industryFieldOld","code":industryNew+"_field"}];
  407. Feng.findChildDictBatch(JSON.stringify(arr));
  408. }
  409. $(function(){
  410. $('#ep_form').bootstrapValidator({
  411. feedbackIcons: {
  412. valid: 'glyphicon glyphicon-ok',
  413. invalid: 'glyphicon glyphicon-remove',
  414. validating: 'glyphicon glyphicon-refresh'
  415. },
  416. group:'.rowGroup',
  417. fields: Register.validateFields,
  418. live: 'enabled',
  419. message: '该字段不能为空'
  420. });
  421. var userType = Feng.getUrlValue("userType");
  422. var username = Feng.getUrlValue("username");
  423. var name = Feng.getUrlValue("name");
  424. var idCard = Feng.getUrlValue("idCard");
  425. var type = Feng.getUrlValue("type");
  426. if(userType == 1){ //企业用户trigger
  427. $("#source").val(2);
  428. $("#username").val(username).attr("readonly","readonly");
  429. $("#name").val(name).attr("readonly","readonly");
  430. $("#idCard").val(idCard).attr("readonly","readonly");
  431. $("#type").val(type).trigger("change");
  432. $("#type").attr("disabled","disabled");
  433. $("#password").val("").attr("placeholder","密码为聚才网账号密码").attr("readonly","readonly");
  434. $("#re_password").val("").attr("placeholder","密码为聚才网账号密码").attr("readonly","readonly");
  435. $("#personTab").css("pointer-events","none");
  436. } else if(userType == 2){ //个人用户
  437. $("#personTab").css("pointer-events","block");
  438. $("#personTab").children().click();
  439. $("#ps_source").val(2);
  440. $("#ps_username").val(name).attr("readonly","readonly");
  441. $("#ps_idCard").val(idCard).attr("readonly","readonly");
  442. $("#ps_password").val("").attr("placeholder","密码为聚才网账号密码").attr("readonly","readonly");
  443. $("#ps_re_password").val("").attr("placeholder","密码为聚才网账号密码").attr("readonly","readonly");
  444. $("#enTab").css("pointer-events","none");
  445. } else{ //无
  446. }
  447. var arr = [
  448. {"name":"street","code":"street"},
  449. {"name":"enterpriseTag","code":"enterprise_tag"},
  450. {"name":"industryFieldNew","code":"industry_field"},
  451. {"name":"enterpriseType","code":"enterprise_type"}];
  452. Feng.findChildDictBatch(JSON.stringify(arr));
  453. $("#imgurl").change(function (e) {
  454. var tag = e.target;
  455. var file = tag.files[0];
  456. var imgSrc;
  457. var reader = new FileReader();
  458. reader.readAsDataURL(file);
  459. reader.onload = function() {
  460. var src = $("#imgurl").val();
  461. var sn = src.lastIndexOf(".");
  462. var suffix = src.substring(sn+1,src.length);
  463. if(suffix == 'pdf' || suffix == 'PDF'){
  464. $("#photoImg").attr("src", Feng.ctxPath + "/static/img/Pdf.png");
  465. }else{
  466. imgSrc = this.result;
  467. $("#photoImg").attr("src", imgSrc);
  468. }
  469. };
  470. });
  471. $("#bankImg").change(function (e) {
  472. var tag = e.target;
  473. var file = tag.files[0];
  474. var imgSrc;
  475. var reader = new FileReader();
  476. reader.readAsDataURL(file);
  477. reader.onload = function() {
  478. var src = $("#bankImg").val();
  479. var sn = src.lastIndexOf(".");
  480. var suffix = src.substring(sn+1,src.length);
  481. if(suffix == 'pdf' || suffix == 'PDF'){
  482. $("#photoImg1").attr("src", Feng.ctxPath + "/static/img/Pdf.png");
  483. }else{
  484. imgSrc = this.result;
  485. $("#photoImg1").attr("src", imgSrc);
  486. }
  487. };
  488. });
  489. $("#domainImg").change(function (e) {
  490. var tag = e.target;
  491. var file = tag.files[0];
  492. var imgSrc;
  493. var reader = new FileReader();
  494. reader.readAsDataURL(file);
  495. reader.onload = function() {
  496. var src = $("#domainImg").val();
  497. var sn = src.lastIndexOf(".");
  498. var suffix = src.substring(sn+1,src.length);
  499. if(suffix == 'pdf' || suffix == 'PDF'){
  500. $("#photoImg2").attr("src", Feng.ctxPath + "/static/img/Pdf.png");
  501. }else{
  502. imgSrc = this.result;
  503. $("#photoImg2").attr("src", imgSrc);
  504. }
  505. };
  506. });
  507. });