userList.jsp 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395
  1. <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
  2. <jsp:include page="../../common/include.jsp" />
  3. <% String basePath = request.getScheme()+ "://" + request.getServerName() + ":" +request.getServerPort() + request.getContextPath(); %>
  4. <script type="text/javascript">
  5. //性别
  6. var sexObj = null;
  7. var sex_array = null;
  8. //用户组
  9. var groupObj = null;
  10. var group_array = null;
  11. $(function(){
  12. $.ajax({
  13. type: "post",//使用post方法访问后台
  14. dataType: "json",//返回json格式的数据
  15. url: "groupAction_findAll",//要访问的后台地址
  16. complete :function(){$("#load").hide();},//AJAX请求完成时隐藏loading提示
  17. success: function(msg){//msg为返回的数据,在这里做数据绑定
  18. if(msg.success){
  19. var data = msg.obj;
  20. var arr = data.split(";");
  21. var ids = arr[0].split(",");
  22. var names = arr[1].split(",");
  23. var select_arr = [];
  24. for(var i = 0; i < ids.length; i++ ){
  25. select_arr.push("<option value="+ids[i]+">"+names[i]+"</option>");
  26. }
  27. group_array = select_arr.join("");
  28. $("#group").append(select_arr);
  29. }
  30. }
  31. });
  32. //性别
  33. $.ajax({
  34. type: "post",//使用post方法访问后台
  35. dataType: "json",//返回json格式的数据
  36. url: "aa10Action_listAa10All",//要访问的后台地址
  37. data:{"aa10.letter":"sex" ,"aa10.name":"性别" },
  38. complete :function(){$("#load").hide();},//AJAX请求完成时隐藏loading提示
  39. success: function(msg){//msg为返回的数据,在这里做数据绑定
  40. if(msg.success){
  41. sexObj = msg.obj.rows;
  42. var select_arr = [];
  43. var data = sexObj;
  44. for(var nItem = 0; nItem < data.length; nItem++ ){
  45. select_arr.push("<option value="+data[nItem].code+">"+data[nItem].value+"</option>");
  46. }
  47. sex_array = select_arr.join("");
  48. }
  49. }
  50. });
  51. })
  52. /**用户显示区*/
  53. $(function() {
  54. $('#userDataGrid').datagrid({
  55. rownumbers:true,
  56. fit:true,
  57. pageSize:20,
  58. pageList : [ 10, 20, 30, 40, 50 ],
  59. fitColumns:false,
  60. border:false,
  61. sortOrder:'desc',
  62. pagination:true,
  63. idField:'id',
  64. url:whzl.basePath + '/userAction_listUser',
  65. toolbar:'#searchtool',
  66. checkOnSelect:true,
  67. selectOnCheck:false,
  68. nowrap:true,
  69. loadFilter:function(result){
  70. if(result.success){
  71. return result.obj;
  72. }else{
  73. $.messager.alert("提示",result.message);
  74. return ;
  75. }
  76. }
  77. }
  78. );
  79. });
  80. /**查询*/
  81. function searchFun(){
  82. $("#userDataGrid").datagrid("load", {
  83. "user.name":$("#tblQuery").find("input[id='name']").val(),
  84. "user.fullName":$("#tblQuery").find("input[id='fullName']").val(),
  85. "user.group.id":$("#tblQuery").find("select[id='group']").val()
  86. });
  87. }
  88. /*清除查询条件**/
  89. function ClearQuery() {
  90. $("#tblQuery").find("input").val("");
  91. $("#tblQuery").find("select").val("-1");
  92. }
  93. /**详细*/
  94. var groupNameFormatter = function(value , row , index){
  95. return row.group.name;
  96. };
  97. var departmentName = function(value , row , index){
  98. if(row.group.id=='3'){
  99. return row.department.name;
  100. }else{
  101. return "";
  102. }
  103. };
  104. /**详细*/
  105. var detailsFormatter = function(value , row , index){
  106. return "<img src='<%=basePath%>/js/easyui/themes/itemicon/detail.png' title='查看详情' onclick=userDetails(" + row.id + ") style='cursor:pointer' />";
  107. };
  108. /**详细页面对话框*/
  109. var userDetails = function(id){
  110. $("#detailUserDialog").dialog(
  111. {
  112. buttons : [
  113. {
  114. text : '确定',
  115. iconCls : 'icon-ok',
  116. handler : function(){
  117. $("#detailUserDialog").dialog("close");
  118. }
  119. }
  120. ],
  121. onLoad : function(){
  122. $.ajax({
  123. type: "post",//使用get方法访问后台
  124. dataType: "json",//返回json格式的数据
  125. url: "userAction_findById",//要访问的后台地址
  126. data: "user.id="+id,//要发送的数据
  127. complete :function(){$("#load").hide();},//AJAX请求完成时隐藏loading提示
  128. success: function(msg){//msg为返回的数据,在这里做数据绑定
  129. $("#id_detail").text(msg.obj.id);
  130. $("#name_detail").text(msg.obj.name);
  131. $("#fullName_detail").text(msg.obj.fullName);
  132. $("#phone_detail").text(msg.obj.phone);
  133. $("#group_detail").text(msg.obj.group.name);
  134. if(msg.obj.sex == 1){
  135. $("#sex_detail").text("男");
  136. }else{
  137. $("#sex_detail").text("女");
  138. }
  139. }
  140. });
  141. }
  142. }
  143. );
  144. };
  145. /**更新*/
  146. var updateFormatter = function(value , row , index){
  147. return "<img src='<%=basePath%>/js/easyui/themes/itemicon/update.png' title='修改' onclick=updateRow(" + row.id + ") style='cursor:pointer' />";
  148. };
  149. /**更新事件*/
  150. function updateRow(id){
  151. var updateIndex = $('#userDataGrid').datagrid('getRowIndex', id);
  152. $('#updateUserDialog').dialog(
  153. {
  154. buttons : [
  155. {
  156. text : '提交',
  157. iconCls : 'icon-ok',
  158. handler : function(){
  159. $('#updateUserForm').form('submit',
  160. {
  161. url : whzl.basePath+'/userAction_updateUser',
  162. success : function(result){
  163. var parseResult = $.parseJSON(result);
  164. if(parseResult.success){
  165. //修改完数据,更新对应行的数据
  166. $('#userDataGrid').datagrid('updateRow',
  167. {
  168. index : updateIndex,
  169. row : parseResult.obj
  170. }
  171. );
  172. $("#updateUserDialog").dialog("close");
  173. $('#userDataGrid').datagrid('reload');
  174. }else{
  175. $.messager.alert("提示",parseResult.message);
  176. }
  177. }
  178. }
  179. );
  180. }
  181. },
  182. {
  183. text : '取消',
  184. iconCls : 'icon-cancel',
  185. handler : function(){
  186. $("#updateUserDialog").dialog("close");
  187. }
  188. }
  189. ],
  190. onLoad : function(){
  191. $.ajax({
  192. type: "post",//使用get方法访问后台
  193. dataType: "json",//返回json格式的数据
  194. url: "userAction_findById",//要访问的后台地址
  195. data: "user.id="+id,//要发送的数据
  196. complete :function(){$("#load").hide();},//AJAX请求完成时隐藏loading提示
  197. success: function(msg){//msg为返回的数据,在这里做数据绑定
  198. $("#id_update").val(msg.obj.id);
  199. $("#password_update").val(msg.obj.password);
  200. $("#name_update").val(msg.obj.name);
  201. $("#fullName_update").val(msg.obj.fullName);
  202. $("#phone_update").val(msg.obj.phone);
  203. $("#group_update").combobox('setValue',msg.obj.group.id);
  204. $("#sex_update").val(msg.obj.sex);
  205. if(msg.obj.department.id>0){
  206. $('#dept_update').combotree('setValue',msg.obj.department.id);
  207. }
  208. }
  209. });
  210. }
  211. }
  212. );
  213. }
  214. /**删除*/
  215. var delFormatter = function(value , row , index){
  216. return "<img src='<%=basePath%>/js/easyui/themes/itemicon/delete.png' title='删除' onclick=deleteRow(" + row.id + ") style='cursor:pointer' />";
  217. };
  218. /**删除功能*/
  219. function deleteRow(id){
  220. $.messager.confirm('删除提示', '确定删除这条记录吗?', function(r){
  221. if (r){
  222. $.ajax({
  223. type: "post",//使用get方法访问后台
  224. dataType: "json",//返回json格式的数据
  225. url: "userAction_deleteUser",//要访问的后台地址
  226. data: "user.id="+id,//要发送的数据
  227. complete :function(){$("#load").hide();},//AJAX请求完成时隐藏loading提示
  228. success: function(msg){//msg为返回的数据,在这里做数据绑定
  229. if(msg.success){
  230. $.messager.alert('提示','删除成功!');
  231. $('#userDataGrid').datagrid('reload');
  232. }else{
  233. $.messager.alert('提示','删除失败!');
  234. }
  235. }
  236. });
  237. }
  238. });
  239. }
  240. /**初始化密码*/
  241. var initPWDFormatter = function(value , row , index){
  242. return "<img src='<%=basePath%>/js/easyui/themes/itemicon/initialize.png' title='初始化密码' onclick=initPWD(" + row.id + ") style='cursor:pointer' />";
  243. };
  244. /**初始化密码*/
  245. function initPWD(id){
  246. $.messager.confirm('提示', '确定初始化该用户密码吗?', function(r){
  247. if (r){
  248. $.ajax({
  249. type: "post",//使用get方法访问后台
  250. dataType: "json",//返回json格式的数据
  251. url: "userAction_initPwd",//要访问的后台地址
  252. data: "user.id="+id,//要发送的数据
  253. complete :function(){$("#load").hide();},//AJAX请求完成时隐藏loading提示
  254. success: function(msg){//msg为返回的数据,在这里做数据绑定
  255. if(msg.success){
  256. $.messager.alert('提示','初始化成功!初始密码888888');
  257. $('#userDataGrid').datagrid('reload');
  258. }else{
  259. $.messager.alert('提示','初始化失败!');
  260. }
  261. }
  262. });
  263. }
  264. });
  265. }
  266. /**增加用户*/
  267. function userAdd(){
  268. $('#addUserDialog').dialog(
  269. {
  270. buttons : [
  271. {
  272. text : '提交',
  273. iconCls : 'icon-ok',
  274. handler : function(){
  275. $('#addUserForm').form('submit',
  276. {
  277. url : whzl.basePath+'/userAction_addUser',
  278. success : function(result){
  279. var parseResult = $.parseJSON(result);
  280. if(parseResult.success){
  281. $("#addUserDialog").dialog("close");
  282. $('#userDataGrid').datagrid('reload');
  283. }else{
  284. $.messager.alert("提示",parseResult.message);
  285. }
  286. }
  287. }
  288. );
  289. }
  290. },
  291. {
  292. text : '取消',
  293. iconCls : 'icon-cancel',
  294. handler : function(){
  295. $("#addUserDialog").dialog("close");
  296. }
  297. }
  298. ],
  299. onLoad : function(){
  300. $("#group_add").append(group_array);
  301. $("#sex_add").append(sex_array);
  302. }
  303. }
  304. );
  305. }
  306. </script>
  307. <div class="easyui-layout" data-options="fit:true,border:false">
  308. <div data-options="region:'center',border:false">
  309. <div id="searchtool" data-options="region:'north' , border:false">
  310. <div class="clear"></div>
  311. <table id="tblQuery" style="width:100%;">
  312. <tr>
  313. <td align="right" style="width: 10%;"><span>登录名</span></td><td style="width: 10%;"><input id="name" name="user.name" type="text" style="width: 100px;"/></td>
  314. <td align="right" style="width: 8%;"><span>用户全名</span></td><td style="width: 10%;"><input id="fullName" name="user.fullName" type="text" style="width: 100px;"/></td>
  315. <td align="right" style="width: 8%;"><span>用户组</span></td>
  316. <td style="width: 14%;">
  317. <select id="group" name="user.group.id" style="width:100px">
  318. <option value="">全部</option>
  319. </select>
  320. </td>
  321. <td align="left" style="width: 40%;">
  322. <a href="javascript:searchFun();" class="easyui-linkbutton" data-options="iconCls:'icon-search',plain:true">查询</a>
  323. <a href="javascript:ClearQuery();" class="easyui-linkbutton" data-options="iconCls:'icon-emptied',plain:true">清空</a>
  324. <a href="javascript:userAdd();" class="easyui-linkbutton" data-options="iconCls:'icon-add',plain:true">增加</a>
  325. </td>
  326. </tr>
  327. </table>
  328. <div class="clear"></div>
  329. </div>
  330. <table id="userDataGrid">
  331. <thead frozen="true">
  332. <tr>
  333. <th data-options="field:'id',checkbox:true,width:30">ID</th>
  334. <th data-options="field:'name',sortable:true,width:100">用户名</th>
  335. </tr>
  336. </thead>
  337. <thead>
  338. <tr>
  339. <th data-options="field:'fullName',sortable:true,width:125">全名</th>
  340. <th data-options="field:'groupName',sortable:true,width:125,formatter:groupNameFormatter">所属组</th>
  341. <th data-options="field:'departmentName',sortable:true,width:125,formatter:departmentName">所属街道办</th>
  342. <th data-options="field:'phone',sortable:true,width:100">手机号码</th>
  343. <th data-options="field:'details',align:'center',width:60,formatter:detailsFormatter">查看详情</th>
  344. <th data-options="field:'update',align:'center',width:38,formatter:updateFormatter">修改</th>
  345. <th data-options="field:'init',align:'center',width:65,formatter:initPWDFormatter">初始化密码</th>
  346. <th data-options="field:'delete',align:'center',width:38,formatter:delFormatter">删除</th>
  347. </tr>
  348. </thead>
  349. </table>
  350. </div>
  351. </div>
  352. <div id="detailUserDialog" data-options="title:'&nbsp;用户详细信息',iconCls:'icon-details',width:500,height:300,modal:true,href:'<%=basePath %>/userAction_toDetail'">
  353. </div>
  354. <div id="updateUserDialog" data-options="title:'&nbsp;修改用户信息',iconCls:'icon-edit',width:500,height:300,modal:true,href:'<%=basePath %>/userAction_toUpdate'">
  355. </div>
  356. <div id="addUserDialog" data-options="title:'&nbsp;增加用户信息',iconCls:'icon-add',width:500,height:300,modal:true,href:'<%=basePath %>/userAction_toAdd'">
  357. </div>
  358. <script type="text/javascript">
  359. <!--
  360. parent.$.messager.progress('close');
  361. //-->
  362. </script>