portal html css js resource

consult.js 11KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346
  1. $(function(){
  2. $(".onlogin .headnavbtn li").eq(0).addClass("navcurrent");
  3. $(".workmenu>ul>li").eq(1).addClass("nowLi");
  4. loginStatus();//判断个人是否登录
  5. valUser();
  6. })
  7. //用户id
  8. var userid = $.cookie("userid");
  9. //getConsultData参数
  10. var pageSize = 5;
  11. var pageNo, isbind, status, timeType, sortType;
  12. getConsultData(pageSize, 1, true, 0, 1, 0);
  13. consultPullDownMenu();
  14. function getConsultData(pageSize, pageNo, isbind, status, timeType, sortType) {
  15. var params = {
  16. "professorId": userid, //专家ID
  17. "status": status, //查询状态 0-全部,1-进行中,2-未感谢,3-未评价,4-已完成, 可以不传,默认为0
  18. "timeType": timeType, //排序目的 0-按发起时间,1-按最后回复时间,2-按完成时间 默认为0
  19. "sortType": sortType, //排序目的 0-倒序,1-正序 默认为0
  20. "pageSize": pageSize, //每页记录数 默认为5
  21. "pageNo": pageNo //当前页码 默认为1
  22. };
  23. // console.log(params);
  24. $.ajax({
  25. url: "/ajax/consult/pqPro",
  26. type: "get",
  27. //传值:登陆人id:咨询id
  28. data: params,
  29. async: false,
  30. dataType: "json",
  31. contentType: "application/x-www-form-urlencoded",
  32. success: function(response) {
  33. // console.log(response);
  34. //数据为空时
  35. if(response.success) {
  36. if(response["data"]["data"] == null || response["data"]["data"] == undefined || response["data"]["data"] == "") {
  37. return;
  38. } else {
  39. var consultStr;
  40. var allData = response.data;
  41. var myData = allData["data"];
  42. // console.log(myData);
  43. //拿到收到咨询数据
  44. $("#workContainer").html(""); //清空数据
  45. if(myData.length != 0 && myData.length != null) {
  46. consultStr = handleData(myData, "professorId", "lookBtn");
  47. // console.log(consultStr)
  48. $("#workContainer").append(consultStr);
  49. } else {
  50. return;
  51. }
  52. //分页
  53. if(isbind == true) {
  54. $(".getConsultPage").createPage({
  55. pageCount: Math.ceil(allData.total / pageSize),
  56. current: allData.pageNo,
  57. backFn: function(p) {
  58. getConsultData(pageSize, p, false, status, timeType, sortType);
  59. }
  60. });
  61. }
  62. }
  63. }
  64. },
  65. error: function(response) {
  66. $.MsgBox.Alert('提示', "收到咨询数据请求失败");
  67. },
  68. complete: function() {
  69. }
  70. });
  71. };
  72. //data:需要处理的数据,htmlStr:页面中需要的html字符串拼接,
  73. //attrParams:数据中不同的参数比如:收到咨询是professorId,收到答复:consultantId
  74. function handleData(data, attrParams, btnCls) {
  75. var htmlStr = '';
  76. var title,
  77. office,
  78. orgName,
  79. department,
  80. address;
  81. for(var i = 0; i < data.length; i++) {
  82. //text:回复/查看,state:进行中/已完成/未评价,photoUrl:头像地址,proModify:专家认证
  83. var text, state, stateStyle, photoUrl, proModify;
  84. var modifyclass = '';
  85. if(data[i]["professor"]) { //过滤没有专家对象的数据
  86. if(data[i]["consultStatus"] == 0) {
  87. state = "进行中";
  88. stateStyle = 'status-1';
  89. text = '回复';
  90. } else if(data[i]["consultStatus"] == 1) {
  91. text = "查看";
  92. state = "已完成";
  93. stateStyle = 'status-3';
  94. if(attrParams == 'consultId') {
  95. if(data[i]["assessStatus"] == 0) {
  96. state = "待评价";
  97. stateStyle = 'status-2';
  98. }
  99. }
  100. } else if(data[i]["consultStatus"] == 2) {
  101. text = "查看";
  102. state = "新咨询";
  103. stateStyle = 'status-2';
  104. } else if(data[i]["consultStatus"] == 3) {
  105. text = "查看";
  106. state = "已谢绝";
  107. stateStyle = 'status-5';
  108. } else if(data[i]["consultStatus"] == undefined) {
  109. text = "";
  110. state = "";
  111. }
  112. //专家头像
  113. if(data[i]["professor"]["hasHeadImage"] == 0) {
  114. photoUrl = "images/default-photo.jpg"
  115. } else {
  116. photoUrl = "images/head/" + data[i]["professor"]["id"] + "_l.jpg"
  117. };
  118. //认证
  119. var oSty=autho(data[i]["professor"].authType,data[i]["professor"].orgAuth,data[i]["professor"].authStatus);
  120. modifyclass = oSty.sty;
  121. //未读消息
  122. var unread = unreadConsultFn(userid, data[i]["consultId"], i);
  123. htmlStr += "<div class='workselectitem' id='" + data[i]["consultId"] + "' >" +
  124. "<table width='100%'><tbody><tr><td width='14%' class='messagebox'>" +
  125. "<a class='workhead workitimg userRadius'>" +
  126. "<img class='headPhoto' src='" + photoUrl + "' width='100%' height='100%'>" +
  127. "</a>" +
  128. "<span class='msgprompt showUnreadMsg' style='" + unread.style + "' id='" + data[i]["consultId"] + "'>" + unread.unreadCount + "</span>" +
  129. "</td>" +
  130. "<td style='position:relative;top:20px;' width='86%'>" +
  131. "<div class='workinfor worksitcon'><h4><a class='named' id='nameS'> " + data[i]["professor"]["name"] + " </a>" +
  132. "<a class='authiconNew " + modifyclass + "' title='"+oSty.title+"' style='top:9px;'></a><input type='text' class='assessStar' value='" + data[i]["assessStar"] + "' style='display: none;'></h4><h6 class='h3Font'>";
  133. if(data[i]["professor"]["title"]) {
  134. htmlStr += "<span>" + data[i]["professor"]["title"] + "</span>, ";
  135. };
  136. if(data[i]["professor"]["office"]) {
  137. if(data[i]["professor"]["orgName"] || data[i]["professor"]["department"]) {
  138. htmlStr += "<span>" + data[i]["professor"]["office"] + "</span>, ";
  139. } else {
  140. htmlStr += "<span>" + data[i]["professor"]["office"] + "</span>";
  141. }
  142. };
  143. if(data[i]["professor"]["orgName"]) {
  144. if(data[i]["professor"]["department"]) {
  145. htmlStr += "<span>" + data[i]["professor"]["orgName"] + "</span>, ";
  146. } else {
  147. htmlStr += "<span>" + data[i]["professor"]["orgName"] + "</span>";
  148. }
  149. };
  150. if(data[i]["professor"]["department"]) {
  151. htmlStr += "<span>" + data[i]["professor"]["department"] + "</span>";
  152. };
  153. if(data[i]["professor"]["address"]) {
  154. htmlStr += ' | ' + "<span>" + data[i]["professor"]["address"] + "</span>";
  155. };
  156. htmlStr += "</h6><h6 style='position:relative;'>" +
  157. "<div class='titList'>咨询主题:<em class='h4Font'> " + data[i]["consultTitle"] + " </em></div>" +
  158. "<span class='lasttime rightTime'>" + lastReplyFn(userid, data[i]["consultId"])["lastReplyTime"] + "</span>" +
  159. "<div style='height:70px;'><p class='rebackcon lastReplyCon' >" + lastReplyFn(userid, data[i]["consultId"])["lastReplyCon"] + "</p></div>" +
  160. "</h6></div>" +
  161. "<div class='workhandle'>" +
  162. "<div class='rightopert floatR'>" +
  163. "<span attrP='" + attrParams + "' class='replybtn " + btnCls + "' id='" + data[i]["consultId"] + "' consultStatus='" + data[i]["consultStatus"] + "' assess='" + data[i]["assessStatus"] + "' thanks='" + data[i]["thanksStatus"] +
  164. "' onclick='clickLookBtn2(\"" + userid + "\",\"" + attrParams + "\",\"" + data[i]["consultId"] + "\"," + data[i]["consultStatus"] + "," + data[i]["assessStatus"] + "," + data[i]["thanksStatus"] + ");'>" +
  165. text +
  166. "</span>" +
  167. "<span class='moreopert complain'>...</span>" +
  168. "<ul class='moreopertbtn'>" +
  169. "<li>投诉</li>" +
  170. "</ul>" +
  171. "</div>" +
  172. "<div class='leftstate floatR'>" +
  173. "<span class='coultstate " + stateStyle + "'><i>" + state + "</i></span>" +
  174. "</div>" +
  175. "<div class='leftstate floatR'>" +
  176. "<span class='coultstate coulstAim status-4'><i>" + data[i]["consultType"] + "</i></span>" +
  177. "</div>" +
  178. "</div>" +
  179. "</td>" +
  180. "</tr></tbody></table>" +
  181. "</div>";
  182. }
  183. };
  184. return htmlStr;
  185. };
  186. //未读信息接口
  187. function unreadConsultFn(senderId, consultId, i) {
  188. var unreadCount, style;
  189. var params = {
  190. "senderId": senderId, //发送者ID
  191. "consultId": consultId //咨询ID
  192. };
  193. $.ajax({
  194. url: "/ajax/tidings/qaNotReadTidings",
  195. type: "get",
  196. async: false,
  197. data: params,
  198. success: function(response) {
  199. unreadCount = response["data"];
  200. if(unreadCount == 0) {
  201. style = "display:none;"
  202. } else {
  203. style = "display:block;"
  204. }
  205. },
  206. error: function(error) {
  207. $.MsgBox.Alert('提示', "未读消息请求失败");
  208. }
  209. });
  210. return {
  211. "unreadCount": unreadCount,
  212. "style": style
  213. }
  214. };
  215. //列表最后回复
  216. function lastReplyFn(sendId, consultId) {
  217. var lastReplyTimeData, lastReplyTime, lastReplyCon;
  218. $.ajax({
  219. url: "/ajax/tidings/qaLastRevovery",
  220. async: false,
  221. data: {
  222. "consultId": consultId, //咨询ID
  223. "senderId": sendId //登录者ID
  224. },
  225. success: function(response) {
  226. // console.log(response)
  227. if(response["data"] == null || response["data"] == "" || response["data"] == undefined) {
  228. lastReplyTimeData = '';
  229. lastReplyTime = '';
  230. lastReplyCon = '';
  231. } else {
  232. lastReplyTimeData = response["data"]["createTime"];
  233. lastReplyTime = lastReplyTimeData.substr(0, 4) + "-" + lastReplyTimeData.substr(4, 2) + "-" + lastReplyTimeData.substr(6, 2) + " " + lastReplyTimeData.substr(8, 2) + ":" + lastReplyTimeData.substr(10, 2)
  234. lastReplyCon = response["data"]["tidingsContant"];
  235. }
  236. },
  237. error: function(error) {
  238. $.MsgBox.Alert('提示', "最后回复数据失败");
  239. }
  240. });
  241. return {
  242. "lastReplyTime": lastReplyTime,
  243. "lastReplyCon": lastReplyCon
  244. };
  245. };
  246. //咨询下拉菜单顺序处理函数
  247. function consultPullDownMenu() { //点击下拉菜单
  248. $(".consultOption ul").find("li").click(function() {
  249. status = $(this).attr("tip");
  250. timeType = $("#showTimeSort").attr("tim");
  251. sortType = $("#timeSortId").val();
  252. $("#workContainer").remove();
  253. $("#shoudao").append('<div id="workContainer"></div>')
  254. $(".getConsultPage").remove();
  255. $("#shoudao").append('<div class="tcdPageCode getConsultPage"></div>');
  256. //console.log(status + timeType + sortType);
  257. getConsultData(pageSize, 1, true, status, timeType, sortType);
  258. });
  259. $(".timeOption ul").find("li").click(function() {
  260. status = $("#showStatus").attr("tip");
  261. timeType = $(this).attr("tim");
  262. sortType = $("#timeSortId").val();
  263. $("#workContainer").remove();
  264. $("#shoudao").append('<div id="workContainer"></div>')
  265. $(".getConsultPage").remove();
  266. $("#shoudao").append('<div class="tcdPageCode getConsultPage"></div>');
  267. //console.log(status + timeType + sortType);
  268. getConsultData(pageSize, 1, true, status, timeType, sortType);
  269. });
  270. var sortFlag = true;
  271. $("#consultArrow").click(function() {
  272. if(sortFlag == true) {
  273. $(this).find("div").css("background-position", "-20px 1px");
  274. $("#timeSortId").val("1");
  275. sortFlag = false;
  276. } else {
  277. $(this).find("div").css("background-position", "0px 1px");
  278. $("#timeSortId").val("0");
  279. sortFlag = true;
  280. }
  281. status = $("#showStatus").attr("tip");
  282. timeType = $("#showTimeSort").attr("tim");
  283. sortType = $("#timeSortId").val();
  284. $("#workContainer").remove();
  285. $("#shoudao").append('<div id="workContainer"></div>')
  286. $(".getConsultPage").remove();
  287. $("#shoudao").append('<div class="tcdPageCode getConsultPage"></div>');
  288. //console.log(status + timeType + sortType);
  289. getConsultData(pageSize, 1, true, status, timeType, sortType);
  290. });
  291. };
  292. //咨询和回复中点击查看或者回复
  293. function clickLookBtn2(sendId, attrParams, consultId, consultStatus, assessStatus, thanksStatus) {
  294. if(consultStatus == 2) {
  295. window.location.href = "consultSure.html?consultId=" + consultId
  296. } else {
  297. window.location.href = "diloags.html?sendId=" + sendId + "&attrParams=" + attrParams + "&consultId=" + consultId + "&consultStatus=" + consultStatus + "&assessStatus=" + assessStatus + "&thanksStatus=" + thanksStatus;
  298. }
  299. }