Sin descripción

proMailList.js 5.3KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185
  1. /**
  2. * 项目通讯录
  3. * */
  4. $(function() {
  5. $('.tool_bars').authorizeButton();
  6. laydate.render({
  7. elem: '#sc_times',
  8. range: '~',
  9. theme: '#249fea',
  10. });
  11. helper.getDropList.getProlistDrop($('#sc_pro'));
  12. initTable();
  13. //搜索
  14. $("#sc_btns").click(function() {
  15. initTable();
  16. })
  17. });
  18. function initTable() {
  19. //先销毁表格
  20. $('#table_all').bootstrapTable('destroy');
  21. //初始化表格,动态从服务器加载数据
  22. $('#table_all').bootstrapTable({
  23. method: "get", //使用get请求到服务器获取数据
  24. url: huayi.config.callcenter_url + "equipmentapi/api/ProjectUser/getlistsbypage", //获取数据的Servlet地址
  25. contentType: "application/x-www-form-urlencoded",
  26. striped: true, //表格显示条纹
  27. pagination: true, //启动分页
  28. pageSize: 10, //每页显示的记录数
  29. pageNumber: 1, //当前第几页
  30. pageList: [10, 20, 50, 100], //记录数可选列表
  31. search: false, //是否启用查询
  32. showColumns: false, //显示下拉框勾选要显示的列
  33. showRefresh: false, //显示刷新按钮
  34. sidePagination: "server", //表示服务端请求
  35. //设置为undefined可以获取pageNumber,pageSize,searchText,sortName,sortOrder
  36. //设置为limit可以获取limit, offset, search, sort, order
  37. queryParamsType: "undefined",
  38. queryParams: function queryParams(params) { //设置查询参数
  39. var param = {
  40. pageindex: params.pageNumber,
  41. pagesize: params.pageSize,
  42. keyword: $('#sc_keyWords').val(), // keyword 否 string 模糊查询(名称,手机,电话)
  43. projectid: $('#sc_pro').val(), //否 string 项目id
  44. type: $('#sc_type').val(), // 否 int 类型(1甲方2诺达)
  45. stime: $('#sc_times').val() && $('#sc_times').val().split(' ~ ')[0], //否 datetime 起始时间
  46. etime: $('#sc_times').val() && $('#sc_times').val().split(' ~ ')[1], //否 datetime 结束时间
  47. };
  48. return param;
  49. },
  50. onLoadSuccess: function(res) { //加载成功时执行
  51. //layer.msg("加载成功");
  52. if(res.state.toLowerCase() == "success") {
  53. var newData = {};
  54. newData.state = res.state;
  55. newData.message = res.message;
  56. newData.rows = res.data.rows;
  57. newData.total = res.data.total;
  58. $('#table_all').bootstrapTable('load', newData);
  59. }
  60. $('.tool_down').authorizeOperateButton();
  61. },
  62. onLoadError: function() { //加载失败时执行
  63. //layer.msg("加载数据失败", { time: 1500, icon: 2 });
  64. }
  65. });
  66. }
  67. //添加
  68. function btn_add() {
  69. layer.open({
  70. type: 2,
  71. content: "template/addOrEditProMailList.html", //iframe的url,no代表不显示滚动条
  72. title: '添加项目通讯录',
  73. resize: false,
  74. area: ['80%', '90%'], //宽高
  75. });
  76. }
  77. //批量删除
  78. function btn_deletes() {
  79. var ids = $.map($('#table_all').bootstrapTable('getSelections'),
  80. function(row) {
  81. return row.id;
  82. });
  83. /*判断长度*/
  84. if(ids.length <= 0) {
  85. layer.confirm('请选择要删除的选项', {
  86. icon: 7,
  87. btn: ['确定'] //按钮
  88. });
  89. return;
  90. }
  91. btn_delete(ids);
  92. }
  93. //删除
  94. function btn_delete(del_id) {
  95. /*发送请求*/
  96. layer.confirm('您确定要删除当前所选项吗?', {
  97. icon: 7,
  98. btn: ['确定', '取消'],
  99. yes: function(index, layero) {
  100. $.post(huayi.config.callcenter_url + "equipmentapi/api/ProjectUser/delete", {
  101. ids: del_id,
  102. }, function(result) {
  103. result = JSON.parse(result);
  104. if(result.state.toLowerCase() == "success") {
  105. $('#table_all').bootstrapTable('refresh');
  106. layer.msg("删除成功");
  107. }
  108. })
  109. },
  110. });
  111. }
  112. //编辑
  113. function btn_edit(edit_id) {
  114. layer.open({
  115. type: 2,
  116. content: "template/addOrEditProMailList.html?edit_id=" + edit_id, //iframe的url,no代表不显示滚动条
  117. title: '编辑项目通讯录',
  118. resize: false,
  119. area: ['80%', '90%'], //宽高
  120. });
  121. }
  122. //导入通讯录
  123. function btn_import() {
  124. layer.open({
  125. maxmin: true, //开启最大化最小化按钮
  126. type: 2,
  127. content: "template/importProMailList.html", //iframe的url,no代表不显示滚动条
  128. title: '导入项目通讯录',
  129. area: ['50%', '55%'], //宽高
  130. });
  131. }
  132. //格式化操作
  133. function formatterOperate(val, row) {
  134. var str = '<div class="task_tools" onclick = helper.methods.taskTools(this)>' +
  135. '<a title="操作"><i class="fa fa-cogs" aria-hidden="true"></i></a>' +
  136. '<ul class="tool_down">' +
  137. '<li><a class="aBtn" authorize="yes" id="HY_edit_' + row.id + '" onclick="btn_edit(\'' + row.id + '\')"><i class="fa icon-edit tub"></i>编辑</a><li>' +
  138. '<li><a class="aBtn" authorize="yes" id="HY_delete_' + row.id + '" onclick="btn_delete(\'' + row.id + '\')"><i class="fa icon-delete tub"></i>删除</a><li>' +
  139. '</ul></div>'
  140. return str;
  141. }
  142. //格式化用户类型
  143. function formatterType(val) {
  144. var strType = '-';
  145. if(val === 1) {
  146. strType = '客户';
  147. } else if(val === 2) {
  148. strType = '内部员工';
  149. } else {
  150. strType = '-';
  151. }
  152. return strType;
  153. }
  154. //格式化头像
  155. function formatterimgurl(val) {
  156. if(val) {
  157. return '<img src="' + val + '" alt="头像" title="头像" class="head_portrait">';
  158. } else {
  159. return '-';
  160. }
  161. }
  162. //格式化 备注
  163. function formatterRemark(val, row) {
  164. if(val) {
  165. var codeContent = decodeURIComponent(val);
  166. codeContent = helper.filter.delHtmlTag(codeContent);
  167. codeContent = $.trim(codeContent);
  168. var cc = codeContent.length > 10 ? codeContent.substr(0, 10) + '...' : codeContent;
  169. return '<div title="' + codeContent + '">' + cc + '</div>';
  170. } else {
  171. return '-';
  172. }
  173. }