Index.cshtml 8.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194
  1. @{
  2. ViewBag.Title = "企业号成员";
  3. Layout = "~/Views/Shared/_Index.cshtml";
  4. }
  5. <script>
  6. $(function () {
  7. InitialPage();
  8. GetGrid();
  9. });
  10. //初始化页面
  11. function InitialPage() {
  12. //resize重设(表格、树形)宽高
  13. $(window).resize(function (e) {
  14. window.setTimeout(function () {
  15. $('#gridTable').setGridWidth(($('.gridPanel').width()));
  16. $("#gridTable").setGridHeight($(window).height() - 108.5);
  17. }, 200);
  18. e.stopPropagation();
  19. });
  20. }
  21. //加载表格
  22. function GetGrid() {
  23. var selectedRowIndex = 0;
  24. var $gridTable = $('#gridTable');
  25. $gridTable.jqGrid({
  26. url: "../../WeChatManage/User/GetListJson",
  27. datatype: "json",
  28. height: $(window).height() - 108.5,
  29. autowidth: true,
  30. colModel: [
  31. { label: 'Id', name: 'Id', hidden: true },
  32. { label: '账户', name: 'UserId', index: 'UserId', width: 100, align: 'left' },
  33. { label: '姓名', name: 'RealName', index: 'RealName', width: 100, align: 'left', sortable: false },
  34. {
  35. label: '性别', name: 'Gender', index: 'Gender', width: 45, align: 'center', sortable: false,
  36. formatter: function (cellvalue, options, rowObject) {
  37. return cellvalue == 1 ? "男" : "女";
  38. }
  39. },
  40. { label: '手机', name: 'Mobile', width: 100, align: 'center', sortable: false },
  41. { label: '邮箱', name: 'Email', width: 150, align: 'left', sortable: false },
  42. { label: '微信', name: 'WeChat', width: 150, align: 'left', sortable: false },
  43. { label: '部门', name: 'DeptName', index: 'DeptName', width: 100, align: 'left', sortable: false },
  44. { label: '职位', name: 'PostName', width: 100, align: 'left', sortable: false },
  45. {
  46. label: "同步时间", name: "CreateDate", index: "CreateDate", width: 130, align: "center",
  47. formatter: function (cellvalue, options, rowObject) {
  48. return formatDate(cellvalue, 'yyyy-MM-dd hh:mm');
  49. }
  50. },
  51. {
  52. label: "同步状态", name: "SyncState", index: "SyncState", width: 80, align: "center",
  53. formatter: function (cellvalue, options, rowObject) {
  54. if (cellvalue == -1) {
  55. return "<span class=\"label label-danger\">未同步</span>";
  56. } else if (cellvalue == 1) {
  57. return "<span class=\"label label-success\">已关注</span>";
  58. } else if (cellvalue == 2) {
  59. return "<span class=\"label label-default\">已禁用</span>";
  60. } else if (cellvalue == 4) {
  61. return "<span class=\"label label-info\">未关注</span>";
  62. } else {
  63. return cellvalue;
  64. }
  65. }
  66. },
  67. { label: "同步日志", name: "SyncLog", width: 200, align: "left", sortable: false }
  68. ],
  69. pager: false,
  70. rowNum: "1000",
  71. rownumbers: true,
  72. shrinkToFit: false,
  73. gridview: true,
  74. onSelectRow: function () {
  75. selectedRowIndex = $("#" + this.id).getGridParam('selrow');
  76. },
  77. gridComplete: function () {
  78. $("#" + this.id).setSelection(selectedRowIndex, false);
  79. }
  80. });
  81. $gridTable.authorizeColModel();
  82. //查询条件
  83. $("#queryCondition .dropdown-menu li").click(function () {
  84. var text = $(this).find('a').html();
  85. var value = $(this).find('a').attr('data-value');
  86. $("#queryCondition .dropdown-text").html(text).attr('data-value', value)
  87. });
  88. //查询事件
  89. $("#btn_Search").click(function () {
  90. var queryJson = {
  91. condition: $("#queryCondition").find('.dropdown-text').attr('data-value'),
  92. keyword: $("#txt_Keyword").val()
  93. }
  94. $gridTable.jqGrid('setGridParam', {
  95. postData: { queryJson: JSON.stringify(queryJson) }
  96. }).trigger('reloadGrid');
  97. });
  98. //查询回车
  99. $('#txt_Keyword').bind('keypress', function (event) {
  100. if (event.keyCode == "13") {
  101. $('#btn_Search').trigger("click");
  102. }
  103. });
  104. }
  105. //添加成员
  106. function btn_member() {
  107. dialogOpen({
  108. id: "Member",
  109. title: '添加成员',
  110. url: '/WeChatManage/User/MemberForm',
  111. width: "840px",
  112. height: "520px",
  113. callBack: function (iframeId) {
  114. top.frames[iframeId].AcceptClick();
  115. }
  116. });
  117. }
  118. //删除
  119. function btn_delete() {
  120. var keyValue = $("#gridTable").jqGridRowValue("UserId");
  121. if (keyValue) {
  122. $.RemoveForm({
  123. url: "../../WeChatManage/User/DeleteMember",
  124. param: { keyValue: keyValue },
  125. success: function (data) {
  126. $("#gridTable").trigger("reloadGrid");
  127. }
  128. })
  129. } else {
  130. dialogMsg('请选择需要移除的成员!', 0);
  131. }
  132. }
  133. //一键同步
  134. function btn_synchronization() {
  135. var userIds = [];
  136. var getRowData = $("#gridTable").jqGrid("getRowData");
  137. if (getRowData.length == 0) {
  138. return false;
  139. }
  140. for (var i = 0; i < getRowData.length; i++) {
  141. userIds.push(getRowData[i].Id);
  142. }
  143. $.ConfirmAjax({
  144. msg: "注:您确定要一键同步成员到微信企业号里面吗?",
  145. url: "../../WeChatManage/User/Synchronization",
  146. param: { userIds: String(userIds) },
  147. success: function (data) {
  148. $("#gridTable").trigger("reloadGrid");
  149. }
  150. })
  151. }
  152. </script>
  153. <div class="titlePanel">
  154. <div class="title-search">
  155. <table>
  156. <tr>
  157. <td>
  158. <div id="queryCondition" class="btn-group">
  159. <a class="btn btn-default dropdown-text">选择条件</a>
  160. <a class="btn btn-default dropdown-toggle" data-toggle="dropdown"><span class="caret"></span></a>
  161. <ul class="dropdown-menu">
  162. <li><a data-value="Account">账户</a></li>
  163. <li><a data-value="RealName">姓名</a></li>
  164. <li><a data-value="Mobile">手机</a></li>
  165. <li><a data-value="Mobile">邮箱</a></li>
  166. <li><a data-value="Mobile">微信</a></li>
  167. </ul>
  168. </div>
  169. </td>
  170. <td style="padding-left: 2px;">
  171. <input id="txt_Keyword" type="text" class="form-control" placeholder="请输入要查询关键字" style="width: 200px;" />
  172. </td>
  173. <td style="padding-left: 5px;">
  174. <a id="btn_Search" class="btn btn-primary"><i class="fa fa-search"></i>&nbsp;查询</a>
  175. </td>
  176. </tr>
  177. </table>
  178. </div>
  179. <div class="toolbar">
  180. <div class="btn-group">
  181. <a id="lr-replace" class="btn btn-default" onclick="reload();"><i class="fa fa-refresh"></i>&nbsp;刷新</a>
  182. <a id="lr-member" class="btn btn-default" onclick="btn_member()"><i class="fa fa-plus"></i>&nbsp;添加成员</a>
  183. <a id="lr-delete" class="btn btn-default" onclick="btn_delete()"><i class="fa fa-trash-o"></i>&nbsp;移除成员</a>
  184. </div>
  185. <div class="btn-group">
  186. <a id="lr-synchronization" class="btn btn-default" onclick="btn_synchronization()"><i class="fa fa-refresh"></i>&nbsp;一键同步</a>
  187. </div>
  188. <script>$('.toolbar').authorizeButton()</script>
  189. </div>
  190. </div>
  191. <div class="gridPanel">
  192. <table id="gridTable"></table>
  193. </div>