portal html css js resource

searchNew.js 17KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537
  1. $(function() {
  2. loginStatus();//判断个人是否登录
  3. var userid = $.cookie("userid");
  4. var num;
  5. var keyt,subject,industry,address;
  6. var authType = 1;
  7. var searchContent = $.trim(GetQueryString("searchContent"));
  8. var subjectText = $.trim(GetQueryString("subject"));
  9. var tagnum = $.trim(GetQueryString("tagflag"));
  10. if(tagnum==""){
  11. num = 1;
  12. }else{
  13. num = tagnum;
  14. if(num==1){
  15. $(".choosediv.filterdiv li").eq(0).addClass("liactive").siblings().removeClass("liactive");
  16. $(".listdiv .listbox").eq(0).show().siblings().hide();
  17. $(".searchsome").attr("placeholder","请输入专家姓名、机构、研究方向");
  18. }else if(num==2){
  19. $(".choosediv.filterdiv li").eq(1).addClass("liactive").siblings().removeClass("liactive");
  20. $(".listdiv .listbox").eq(1).show().siblings().hide();
  21. $(".searchsome").attr("placeholder","请输入资源名称、用途、机构");
  22. }else{
  23. $(".choosediv.filterdiv li").eq(2).addClass("liactive").siblings().removeClass("liactive");
  24. $(".listdiv .listbox").eq(2).show().siblings().hide();
  25. $(".searchsome").attr("placeholder","请输入文章标题、作者");
  26. }
  27. }
  28. if(subjectText==""){
  29. subject="";
  30. }else{
  31. subject=subjectText;
  32. }
  33. if(searchContent==""){
  34. keyt="";
  35. }else{
  36. keyt=searchContent;
  37. $(".searchsome").val(searchContent);
  38. }
  39. expertListVal(keyt,subject,industry,address,authType,20,1,true);
  40. articalListVal(20, 1,true);
  41. resourceListVal(20, 1,true);
  42. academicFieldVal(subjectText);
  43. applicationIndustryVal();
  44. cityVal();
  45. //切换搜索范围
  46. jquerytab("col-w-12");
  47. //筛选条件的选择
  48. $(".filterUl").on("click","li",function(){
  49. this.parentNode.querySelector('li.filterCurrent').classList.remove("filterCurrent");
  50. this.classList.add("filterCurrent");
  51. })
  52. //筛选条件的展开关闭
  53. $(".filterListNew").on("click",".rightbtn",function(){
  54. if(this.querySelector("em").className == "unfoldtr") {
  55. this.querySelector("em").classList.remove("unfoldtr");
  56. this.querySelector("em").classList.add("foldtr");
  57. this.parentNode.querySelector(".filterUl").classList.remove("filterUlactive");
  58. } else {
  59. this.querySelector("em").classList.add("unfoldtr");
  60. this.querySelector("em").classList.remove("foldtr");
  61. this.parentNode.querySelector(".filterUl").classList.add("filterUlactive");
  62. }
  63. })
  64. $(".searchblock").hide();
  65. $(document).scroll(function() {
  66. var top = $(document).scrollTop();
  67. if (top >= 80) {
  68. $(".searchblock").stop(true,false).fadeIn();
  69. }else{
  70. $(".searchblock").stop(true,false).fadeOut();
  71. }
  72. })
  73. $(".searchsome").keydown(function(e) {
  74. if(e.which == 13) {
  75. num = $(".liactive").attr("data-id");
  76. if(num==1){
  77. expertBox();
  78. }else if(num==2){
  79. resourceListVal(20, 1,true);
  80. }else if(num==3){
  81. articalListVal(20, 1,true);
  82. }
  83. }
  84. })
  85. $(".searchgo").on("click",function(e) {
  86. num = $(".liactive").attr("data-id");
  87. if(num==1){
  88. expertBox();
  89. }else if(num==2){
  90. resourceListVal(20, 1,true);
  91. }else if(num==3){
  92. articalListVal(20, 1,true);
  93. }
  94. })
  95. $("#academicField,#applicationIndustry,#cityList").on("click","li",function(e) {
  96. expertBox();
  97. })
  98. function expertBox(){
  99. keyt = $(".searchsome").val();
  100. var subjectVal= $("#academicField li.filterCurrent").text();
  101. if(subjectVal=="不限"){
  102. subject = "";
  103. }else{
  104. subject = subjectVal;
  105. }
  106. var industryVal= $("#applicationIndustry li.filterCurrent").text();
  107. if(industryVal=="不限"){
  108. industry = "";
  109. }else{
  110. industry = industryVal;
  111. }
  112. var addressVal= $("#cityList li.filterCurrent").text();
  113. if(addressVal=="不限"){
  114. address = "";
  115. }else{
  116. address = addressVal;
  117. }
  118. expertListVal(keyt,subject,industry,address,authType,20,1,true);
  119. }
  120. });
  121. function jquerytab(name){
  122. var oDome=$('.' + name);
  123. var oSpan=oDome.find('.filterdiv li');
  124. var oP=oDome.find('.listdiv .listbox');
  125. oSpan.click(function(){
  126. $(this).addClass('liactive').siblings().removeClass('liactive');
  127. var index =oSpan.index(this);
  128. oP.eq(index).show().siblings().hide();
  129. //$(".searchsome").val("");
  130. if(index==0){
  131. //expertListVal(keyt,subject,industry,address,authType,20,1,true);
  132. $(".searchsome").attr("placeholder","请输入专家姓名、机构、研究方向");
  133. }else if(index==1){
  134. //resourceListVal(20, 1,true);
  135. $(".searchsome").attr("placeholder","请输入资源名称、用途、机构");
  136. }else{
  137. //articalListVal(20, 1,true);
  138. $(".searchsome").attr("placeholder","请输入文章标题、作者");
  139. }
  140. });
  141. }
  142. //学术领域
  143. function academicFieldVal(subjectText){
  144. $.ajax({
  145. "url": "/ajax/dataDict/qaDictCode",
  146. "type": "get",
  147. "async": false,
  148. "data": {
  149. "dictCode":"SUBJECT",
  150. },
  151. "success": function(data) {
  152. console.log(data);
  153. if(data.success) {
  154. $("#academicField").html("");
  155. $("#academicField").append('<li class="filterCurrent">不限</li>');
  156. for(var i = 0; i < data.data.length; i++) {
  157. var itemlist = '<li class="ititle">'+data.data[i].caption+'</li>';
  158. $("#academicField").append(itemlist);
  159. if(i > 20)
  160. break;
  161. }
  162. $("#academicField li").each(function(i){
  163. var textt = $(this).text();
  164. if(textt == subjectText){
  165. $(this).addClass("filterCurrent").siblings().removeClass("filterCurrent");
  166. }
  167. });
  168. }
  169. },
  170. "error": function() {
  171. $.MsgBox.Alert('提示', '链接服务器超时')
  172. }
  173. });
  174. }
  175. //应用行业
  176. function applicationIndustryVal(){
  177. $.ajax({
  178. "url": "/ajax/dataDict/qaDictCode",
  179. "type": "get",
  180. "data": {
  181. "dictCode":"INDUSTRY",
  182. },
  183. "success": function(data) {
  184. console.log(data);
  185. if(data.success) {
  186. $("#applicationIndustry").html("");
  187. $("#applicationIndustry").append('<li class="filterCurrent">不限</li>');
  188. for(var i = 0; i < data.data.length; i++) {
  189. var itemlist = '<li class="ititle">'+data.data[i].caption+'</li>';
  190. $("#applicationIndustry").append(itemlist);
  191. if(i > 20)
  192. break;
  193. }
  194. }
  195. },
  196. "error": function() {
  197. $.MsgBox.Alert('提示', '链接服务器超时')
  198. }
  199. });
  200. }
  201. //所在城市
  202. function cityVal(){
  203. $.ajax({
  204. "url": "/ajax/dataDict/qaCity",
  205. "type": "get",
  206. "data": {
  207. "dictCode":"ADDRESS",
  208. },
  209. "success": function(data) {
  210. console.log(data);
  211. if(data.success) {
  212. $("#cityList").html("");
  213. $("#cityList").append('<li class="filterCurrent">不限</li>');
  214. for(var i = 0; i < data.data.length; i++) {
  215. var itemlist = '<li class="ititle">'+data.data[i].caption+'</li>';
  216. $("#cityList").append(itemlist);
  217. if(i > 20)
  218. break;
  219. }
  220. }
  221. },
  222. "error": function() {
  223. $.MsgBox.Alert('提示', '链接服务器超时')
  224. }
  225. });
  226. }
  227. //专家点击咨询
  228. $('#expertList').on("click",".rightop",function(){
  229. if (userid && userid != "null" && userid != null) {
  230. var professorId = $(this).attr("id");
  231. ConsultApply();
  232. //点击的发送
  233. $("#sendConsultBtn").click(function() {
  234. sendConsultHandler($(this).attr("proId"))
  235. });
  236. concultProInfo(professorId);
  237. }else{
  238. $.MsgBox.Alert('提示',"请先登录再进行咨询");
  239. $("#mb_btn_ok").val("去登录");
  240. var aele = document.createElement('a');
  241. $("#mb_btnbox").append(aele);
  242. $("#mb_btnbox a").css({
  243. 'display': "block",
  244. 'width': '100%',
  245. 'height': '40px',
  246. 'position': 'absolute',
  247. 'bottom': '-6px',
  248. 'left': '0'
  249. });
  250. aele.setAttribute('href', '../login.html');
  251. }
  252. })
  253. //专家
  254. function expertListVal(keyt,subject,industry,address,authType,pageSize,pageNo,isexpert) {
  255. $.ajax({
  256. "url": "/ajax/professor/pqBaseInfo",
  257. "type": "get",
  258. "data": {
  259. "key":keyt,
  260. "subject":subject,
  261. "industry":industry,
  262. "address":address,
  263. "authType":authType,
  264. "pageSize": pageSize,
  265. "pageNo": pageNo
  266. },
  267. "beforeSend": function() {
  268. $("#expertList").append('<img src="../images/loading.gif" class="loading" style="position: absolute;left: 50%; top: 50%;" />');
  269. },
  270. "success": function(data) {
  271. console.log(data);
  272. if(data.success) {
  273. if(data.data.data.length > 0){
  274. $("#expertList,.expertPageCode").show();
  275. $(".expertPage").hide();
  276. $("#expertList").html("");
  277. var itemlist = '';
  278. for(var i = 0; i < data.data.data.length; i++) {
  279. var itemlist = '<li class="flexCenter">';
  280. itemlist += '<a href="" class="expertUrl linkhref"><div class="lefthead userheadt userRadius" id="expertImg"></div>';
  281. itemlist += '<div class="centercon">';
  282. itemlist += '<p class="h1font">';
  283. itemlist += '<span class="nameSpan" id="Name"></span>';
  284. itemlist += '<em class="authiconNew" title="科袖认证专家"></em></p>';
  285. itemlist += '<p class="h2font ellipsisSty" id="ellipsisSty">职称/职位,所在机构</p>';
  286. itemlist += '<p class="h2font ellipsisSty" id="researchAreas"></p>';
  287. itemlist += '</div></a><span class="rightop" style="display:none" id="">咨询</span>';
  288. itemlist += '</li>';
  289. $itemlist = $(itemlist);
  290. $("#expertList").append($itemlist);
  291. var datalist = data.data.data[i];
  292. $itemlist.find(".expertUrl").attr("href", "userInforShow.html?professorId=" + datalist.id );
  293. $itemlist.find("#Name").text(datalist.name);
  294. $itemlist.find(".rightop").attr("id",datalist.id);
  295. if(datalist.id != userid){
  296. $itemlist.find(".rightop").show();
  297. }
  298. var userType = autho(datalist.authType, datalist.orgAuth, datalist.authStatus);
  299. $itemlist.find(".authiconNew").attr("title", userType.title);
  300. $itemlist.find(".authiconNew").addClass(userType.sty);
  301. if(datalist.hasHeadImage) {
  302. $itemlist.find("#expertImg").attr("style", "background-image: url(/images/head/" + datalist.id + "_l.jpg);");
  303. }
  304. var title = datalist.title || "";
  305. var orgName = datalist.orgName || "";
  306. var office = datalist.office || "";
  307. if(title != "") {
  308. var ttitle = title + ",";
  309. }else{
  310. if(office!=""){
  311. var ttitle = office + ",";
  312. }else{
  313. var ttitle = office;
  314. }
  315. }
  316. if(orgName != "") {
  317. orgName = orgName;
  318. }
  319. $itemlist.find("#ellipsisSty").text(ttitle+orgName);
  320. /*获取研究方向信息*/
  321. var researchAreas = datalist.researchAreas;
  322. if( researchAreas.length > 0){
  323. var rlist = '研究方向:';
  324. for(var n = 0; n < researchAreas.length; n++) {
  325. //console.log(researchAreas[n].caption);
  326. rlist += researchAreas[n].caption
  327. if(n < researchAreas.length - 1) {
  328. rlist += ";"
  329. }
  330. }
  331. $itemlist.find("#researchAreas").text(rlist);
  332. }
  333. }
  334. //分页
  335. if(isexpert==true){
  336. $(".expertPageCode").createPage({
  337. pageCount: Math.ceil(data.data.total / 20),
  338. current: data.data.pageNo,
  339. backFn: function(p) {
  340. $("#expertList").html("");
  341. expertListVal(keyt,subject,industry,address,authType,20,p,false);
  342. document.body.scrollTop = document.documentElement.scrollTop = 0;
  343. }
  344. });
  345. }
  346. }else{
  347. $("#expertList,.expertPageCode").hide();
  348. $(".expertPage").show();
  349. }
  350. $(".loading").remove();
  351. }
  352. },
  353. "error": function() {
  354. $.MsgBox.Alert('提示', '链接服务器超时')
  355. }
  356. });
  357. }
  358. //文章
  359. function articalListVal(pageSize, pageNo,isbind) {
  360. $.ajax({
  361. "url": "/ajax/article/firstpq",
  362. "type": "get",
  363. "async": true,
  364. "data": {
  365. "key":$(".searchsome").val(),
  366. "pageSize": pageSize,
  367. "pageNo": pageNo
  368. },
  369. "beforeSend": function() {
  370. $("#articalList").append('<img src="../images/loading.gif" class="loading" style="position: absolute;left: 50%; top: 50%;" />');
  371. },
  372. "success": function(data) {
  373. console.log(data);
  374. if(data.success) {
  375. if(data.data.data.length > 0){
  376. $("#articalList,.articalPageCode").show();
  377. $(".articalPage").hide();
  378. var itemlist = '';
  379. $("#articalList").html("");
  380. for(var i = 0; i < data.data.data.length; i++) {
  381. var itemlist = '<li class="flexCenter">';
  382. itemlist += '<a href="" class="artivleUrl linkhref"><div class="lefthead articalhead" id="articleImg"></div>';
  383. itemlist += '<div class="centercon centercon2">';
  384. itemlist += '<p class="h1font ellipsisSty" id="articalTitle"></p>';
  385. itemlist += '<p class="h2font">';
  386. itemlist += '<span class="nameSpan" id="userName"></span>';
  387. itemlist += '<em class="authiconNew" title="科袖认证专家"></em>';
  388. itemlist += '</p></div></a></li>';
  389. $itemlist = $(itemlist);
  390. $("#articalList").append($itemlist);
  391. var datalist = data.data.data[i];
  392. var articleType = datalist.articleType;
  393. $itemlist.find("#articalTitle").text(datalist.articleTitle);
  394. $itemlist.find(".artivleUrl").attr("href", "articalShow.html?articleId=" + datalist.articleId );
  395. if(datalist.articleImg) {
  396. $itemlist.find("#articleImg").attr("style", "background-image: url(/data/article/" + datalist.articleImg + ");");
  397. }
  398. if(articleType == 1) { //个人文章
  399. $itemlist.find("#userName").text(datalist.professor.name);
  400. var userType = autho(datalist.professor.authType, datalist.professor.orgAuth, datalist.professor.authStatus);
  401. $itemlist.find(".authiconNew").attr("title", userType.title);
  402. $itemlist.find(".authiconNew").addClass(userType.sty);
  403. } else if(articleType == 2) { //企业文章
  404. $itemlist.find("#userName").text(datalist.editOrganization.name);
  405. if(datalist.editOrganization.authStatus==3){
  406. $itemlist.find(".authiconNew").addClass("authicon-com-ok").attr("title", "认证企业");;
  407. }
  408. }
  409. }
  410. //分页
  411. if(isbind==true){
  412. $(".articalPageCode").createPage({
  413. pageCount: Math.ceil(data.data.total / 20),
  414. current: data.data.pageNo,
  415. backFn: function(p) {
  416. $("#articalList").html("");
  417. articalListVal(20, p,false);
  418. document.body.scrollTop = document.documentElement.scrollTop = 0;
  419. }
  420. });
  421. }
  422. }else{
  423. $("#articalList,.articalPageCode").hide();
  424. $(".articalPage").show();
  425. }
  426. $(".loading").remove();
  427. }
  428. },
  429. "error": function() {
  430. $.MsgBox.Alert('提示', '链接服务器超时')
  431. }
  432. });
  433. }
  434. //资源
  435. function resourceListVal(pageSize, pageNo,isresource) {
  436. $.ajax({
  437. "url": "/ajax/resource/firstpq",
  438. "type": "get",
  439. "async": true,
  440. "data": {
  441. "key":$(".searchsome").val(),
  442. "pageSize": pageSize,
  443. "pageNo": pageNo
  444. },
  445. "beforeSend": function() {
  446. $("#resourceList").append('<img src="../images/loading.gif" class="loading" style="position: absolute;left: 50%; top: 50%;" />');
  447. },
  448. "success": function(data) {
  449. console.log(data);
  450. if(data.success) {
  451. if(data.data.data.length > 0){
  452. $("#resourceList,.resourcePageCode").show();
  453. $(".resourcePage").hide();
  454. var itemlist = '';
  455. $("#resourceList").html("");
  456. for(var i = 0; i < data.data.data.length; i++) {
  457. var itemlist = '<li class="flexCenter">';
  458. itemlist += '<a href="" class="resourceUrl linkhref"><div class="lefthead resouhead" id="resourceImg"></div>';
  459. itemlist += '<div class="centercon">';
  460. itemlist += '<p class="h1font" id="resourceName"></p>';
  461. itemlist += '<p class="h2font ellipsisSty" id="supportedServices"></p>';
  462. itemlist += '<p class="h2font">';
  463. itemlist += '<span class="nameSpan" id="username"></span>';
  464. itemlist += '<em class="authiconNew authicon-pro" title="科袖认证专家"></em>';
  465. itemlist += '</p></div></a></li>';
  466. $itemlist = $(itemlist);
  467. $("#resourceList").append($itemlist);
  468. var datalist = data.data.data[i];
  469. var resourceType = datalist.resourceType;
  470. $itemlist.find("#resourceName").text(datalist.resourceName);
  471. $itemlist.find("#supportedServices").text("用途:" + datalist.supportedServices);
  472. $itemlist.find(".resourceUrl").attr("href", "resourceShow.html?resourceId=" + datalist.resourceId );
  473. if(datalist.images.length > 0) {
  474. $itemlist.find("#resourceImg").attr("style", "background-image: url(/data/resource/" + datalist.images[0].imageSrc + ");");
  475. }
  476. if(resourceType == 1) { //个人资源
  477. $itemlist.find("#username").text(datalist.editProfessor.name);
  478. var userType = autho(datalist.editProfessor.authType, datalist.editProfessor.orgAuth, datalist.editProfessor.authStatus);
  479. $itemlist.find(".authiconNew").attr("title", userType.title);
  480. $itemlist.find(".authiconNew").addClass(userType.sty);
  481. } else if(resourceType == 2) { //企业资源
  482. $itemlist.find("#username").text(datalist.organization.name);
  483. if(datalist.organization.authStatus==3){
  484. $itemlist.find(".authiconNew").addClass("authicon-com-ok").attr("title", "认证企业");;
  485. }
  486. }
  487. }
  488. //分页
  489. if(isresource==true){
  490. $(".resourcePageCode").createPage({
  491. pageCount: Math.ceil(data.data.total / 20),
  492. current: data.data.pageNo,
  493. backFn: function(p) {
  494. $("#resourceList").html("");
  495. resourceListVal(20, p,false);
  496. document.body.scrollTop = document.documentElement.scrollTop = 0;
  497. }
  498. });
  499. }
  500. }else{
  501. $("#resourceList,.resourcePageCode").hide();
  502. $(".resourcePage").show();
  503. }
  504. $(".loading").remove();
  505. }
  506. },
  507. "error": function() {
  508. $.MsgBox.Alert('提示', '链接服务器超时')
  509. }
  510. });
  511. }