商丘12345 前端

chat.js 6.3KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215
  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. helper.init.isload = 0;
  113. $.ajax({
  114. type:"get",
  115. url:huayi.config.callcenter_url+"Index/GetChatList",
  116. async:true,
  117. dataType:'json',
  118. data: {
  119. token: $.cookie("token"),
  120. fromuserId: $('.UserId').val()
  121. },
  122. success: function (data) {
  123. helper.init.isload = 1;
  124. $('.main_message .chatlist_con').html('');
  125. var con=data.rows;
  126. $(con).each(function(i,n){
  127. if($('.UserId').val()==n.FromUserId){
  128. $('<li>'+
  129. '<p class="message_time"><span>'+ n.CreateDate +'</span></p>'+
  130. '<div class="message_mincon self">'+
  131. '<img class="ver_middle" src="img/chat_pic.jpg" alt="" width="30" height="30"/>'+
  132. '<div class="message_text">'+ n.Content +'</div>'+
  133. '</div>'+
  134. '</li>').appendTo('.main_message .chatlist_con')
  135. }
  136. else{
  137. $('<li>'+
  138. '<p class="message_time"><span>'+ n.CreateDate +'</span></p>'+
  139. '<div class="message_mincon">'+
  140. '<img class="ver_middle" src="img/chat_list2.jpg" alt="" width="30" height="30"/>'+
  141. '<div class="message_text">'+ n.Content +'</div>'+
  142. '</div>'+
  143. '</li>').appendTo('.main_message .chatlist_con')
  144. }
  145. })
  146. var farTop=$(".main_message").css('height');
  147. $(".main_message").animate({ scrollTop:farTop});
  148. }
  149. });
  150. }
  151. $('.sendTo').click(function(){
  152. if($('.send_content').val()){
  153. send()
  154. }else{
  155. layer.msg("内容不允许为空!");
  156. }
  157. })
  158. function send(){
  159. $.ajax({
  160. type:"post",
  161. url:huayi.config.callcenter_url+"Index/SaveChatInfo",
  162. async:true,
  163. dataType:'json',
  164. data:{
  165. token: $.cookie("token"),
  166. Content:$('.send_content').val(),
  167. IsToAll:$('.IsToAll').val(),
  168. ToRoleId:$('.RoleId').val(),
  169. ToUserId:$('.UserId').val()
  170. },
  171. success:function(data){
  172. if(data.state.toLowerCase()=='success'){
  173. $('.send_content').val('');
  174. }
  175. }
  176. })
  177. }
  178. //键盘发送事件
  179. $('input').bind('keypress', function(event) {
  180. if(event.keyCode == "13") {
  181. $('.sendTo').trigger("click");
  182. }
  183. });
  184. $(document).keydown(function(event){
  185. if(event.keyCode==13){
  186. $(".sendTo").click();
  187. }
  188. });
  189. function Ajax(){
  190. side();
  191. jiShi();
  192. }
  193. setInterval(Ajax, 2000);//Ajax调用函数
  194. /*
  195. Index/SaveChatInfo?Content=&ToUserId=&ToRoleId=&IsToAll=
  196. 注意优先级:
  197. 当IsToAll=1时群发给所有人
  198. 当ToRoleId!=0时群发给所在角色
  199. 当ToUserId!=0时发给该坐席人员ssss
  200. */