12345市长热线标准版-前端

chat.js 6.3KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213
  1. var token= $.cookie("token");
  2. var username=$.cookie("zx_user");
  3. $('.chat_sidebar_list ul').on('click','li',function(){
  4. if($('.disnone').css('display')=="none"){
  5. $('.disnone').css('display','block')
  6. }
  7. $(this).addClass("actives").siblings().removeClass("actives");
  8. var person_name=$(this).find('.chat_name .names').html();
  9. var person_userId=$(this).find('.chat_name .user_id').html();
  10. $('.chat_person .chat_name').html(person_name+" "+person_userId);
  11. })
  12. left();//角色
  13. side();
  14. function left(){
  15. $.ajax({
  16. type:"get",
  17. url:huayi.config.callcenter_url+"Index/GetRoleList",
  18. async:true,
  19. dataType:'json',
  20. data:{
  21. token: $.cookie("token")
  22. },
  23. success:function(data){
  24. if(data.state.toLowerCase()=='success'){
  25. $('.chat_left ul').html('');
  26. var con=data.data;
  27. $('<li IsToAll="1" RoleId="0" UserId="0">'+
  28. '<p class="chat_name">所有人</p>'+
  29. '</li>').appendTo('.chat_left ul');
  30. $(con).each(function(i,n){
  31. $('<li IsToAll="0" RoleId="'+n.F_RoleId +'" RoleCode="'+ n.F_RoleCode +'" UserId="0">'+
  32. '<p class="chat_name">'+n.F_RoleName +'</p>'+
  33. '</li>').appendTo('.chat_left ul');
  34. })
  35. }
  36. }
  37. });
  38. }
  39. $('.chat_left ul').on('click','li',function(){
  40. if($('.disnone').css('display')=="none"){
  41. $('.disnone').css('display','block')
  42. }
  43. $(this).addClass("actives").siblings().removeClass("actives");
  44. var person_name=$(this).find('.chat_name').html();
  45. $('.chat_person .chat_name').html(person_name);
  46. var roleId=$(this).attr("RoleId");
  47. var userId=$(this).attr("UserId");
  48. var IsToAll=$(this).attr("IsToAll");
  49. $('.IsToAll').val(IsToAll);
  50. $('.RoleId').val(roleId);
  51. $('.UserId').val(userId);
  52. side();
  53. jiShi()
  54. })
  55. //side
  56. function side(){
  57. $.ajax({
  58. type:"get",
  59. url:huayi.config.callcenter_url+"Index/GetUserListByRoleId",
  60. async:true,
  61. dataType:'json',
  62. data:{
  63. token: $.cookie("token"),
  64. roleid:$('.RoleId').val(),
  65. keyword:$('.sidebar_foot_seach').val()
  66. },
  67. success:function(data){
  68. if(data.state.toLowerCase()=='success'){
  69. $('.chat_sidebar_list ul').html('');
  70. var html='';
  71. var con=data.data;
  72. console.log(username)
  73. $(con).each(function(i,n){
  74. if(username==n.F_UserCode){
  75. $('.chat_sidebar_head').find('.chat_name').html(n.F_UserName+n.F_UserCode)
  76. }
  77. html='<li IsToAll="0" RoleId="'+n.F_RoleId +'" UserId="'+ n.F_UserId +'" UserCode="'+ n.F_UserCode +'">'+
  78. // src="'+ huayi.config.callcenter_url.substr(0, huayi.config.callcenter_url.length - 1) + n.F_See +'"
  79. '<img class="ver_middle" src="img/chat_pic.jpg" alt="" width="30" height="30"/>'+
  80. '<p class="chat_name"><span class="names">'+n.F_UserName +'</span><br/><span class="user_id">'+ n.F_UserCode +'</span></p>'
  81. if(n.counts>0){
  82. html+='<p class="message_count">'+n.counts+'</p>'
  83. }
  84. html+='</li>'
  85. $('.chat_sidebar_list ul').append(html);
  86. })
  87. }
  88. }
  89. });
  90. if( $('.UserId').val()!=0){
  91. $('.chat_sidebar_list ul li').each(function(i,n){
  92. if($(n).attr('UserId')==$('.UserId').val()){
  93. $(this).addClass('actives');
  94. }
  95. })
  96. }
  97. }
  98. $('.chat_sidebar_list ul').on('click','li',function(){
  99. var userId=$(this).attr("userid");
  100. // var roleId=$(this).attr("roleid");
  101. // var IsToAll=$(this).attr("IsToAll");
  102. $('.RoleId').val(0);
  103. $('.IsToAll').val(0);
  104. $('.UserId').val(userId);
  105. jiShi(userId);
  106. })
  107. $('.sidebar_foot_seach').on('input focus',function(){
  108. side()
  109. })
  110. //即时通讯
  111. function jiShi(){
  112. $.ajax({
  113. type:"get",
  114. url:huayi.config.callcenter_url+"Index/GetChatList",
  115. async:true,
  116. dataType:'json',
  117. data:{
  118. token: $.cookie("token"),
  119. fromuserId: $('.UserId').val()
  120. },
  121. success:function(data){
  122. $('.main_message .chatlist_con').html('');
  123. var con=data.rows;
  124. $(con).each(function(i,n){
  125. if($('.UserId').val()==n.FromUserId){
  126. $('<li>'+
  127. '<p class="message_time"><span>'+ n.CreateDate +'</span></p>'+
  128. '<div class="message_mincon self">'+
  129. '<img class="ver_middle" src="img/chat_pic.jpg" alt="" width="30" height="30"/>'+
  130. '<div class="message_text">'+ n.Content +'</div>'+
  131. '</div>'+
  132. '</li>').appendTo('.main_message .chatlist_con')
  133. }
  134. else{
  135. $('<li>'+
  136. '<p class="message_time"><span>'+ n.CreateDate +'</span></p>'+
  137. '<div class="message_mincon">'+
  138. '<img class="ver_middle" src="img/chat_list2.jpg" alt="" width="30" height="30"/>'+
  139. '<div class="message_text">'+ n.Content +'</div>'+
  140. '</div>'+
  141. '</li>').appendTo('.main_message .chatlist_con')
  142. }
  143. })
  144. var farTop=$(".main_message").css('height');
  145. $(".main_message").animate({ scrollTop:farTop});
  146. }
  147. });
  148. }
  149. $('.sendTo').click(function(){
  150. if($('.send_content').val()){
  151. send()
  152. }else{
  153. layer.msg("内容不允许为空!");
  154. }
  155. })
  156. function send(){
  157. $.ajax({
  158. type:"post",
  159. url:huayi.config.callcenter_url+"Index/SaveChatInfo",
  160. async:true,
  161. dataType:'json',
  162. data:{
  163. token: $.cookie("token"),
  164. Content:$('.send_content').val(),
  165. IsToAll:$('.IsToAll').val(),
  166. ToRoleId:$('.RoleId').val(),
  167. ToUserId:$('.UserId').val()
  168. },
  169. success:function(data){
  170. if(data.state.toLowerCase()=='success'){
  171. $('.send_content').val('');
  172. }
  173. }
  174. })
  175. }
  176. //键盘发送事件
  177. $('input').bind('keypress', function(event) {
  178. if(event.keyCode == "13") {
  179. $('.sendTo').trigger("click");
  180. }
  181. });
  182. $(document).keydown(function(event){
  183. if(event.keyCode==13){
  184. $(".sendTo").click();
  185. }
  186. });
  187. function Ajax(){
  188. side();
  189. jiShi();
  190. }
  191. setInterval(Ajax, 2000);//Ajax调用函数
  192. /*
  193. Index/SaveChatInfo?Content=&ToUserId=&ToRoleId=&IsToAll=
  194. 注意优先级:
  195. 当IsToAll=1时群发给所有人
  196. 当ToRoleId!=0时群发给所在角色
  197. 当ToUserId!=0时发给该坐席人员ssss
  198. */