setting_user.html 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <meta name="renderer" content="webkit" />
  6. <title>用户管理 - 铂沅能源管理平台 - Powered by ZKSF</title>
  7. <link rel="Shortcut Icon" href="/images/favicon.ico" />
  8. <link rel="stylesheet" type="text/css" href="http://static.vbdsm.com/js/lib/easyui/themes/vber/easyui.css" />
  9. <link rel="stylesheet" type="text/css" href="http://static.vbdsm.com/js/lib/easyui/themes/icon.css" />
  10. <script type="text/javascript" src="http://static.vbdsm.com/js/lib/jquery-1.8.0.min.js"></script>
  11. <script type="text/javascript" src="http://static.vbdsm.com/js/lib/easyui/jquery.easyui.min.js"></script>
  12. <script type="text/javascript" src="http://static.vbdsm.com/js/lib/easyui/locale/easyui-lang-zh_CN.js"></script>
  13. <script type="text/javascript" src="http://static.vbdsm.com/js/easyui.support.js"></script>
  14. <script type="text/javascript" src="http://static.vbdsm.com/js/static.support.js"></script>
  15. <script type="text/javascript" src="http://static.vbdsm.com/js/common.tools.js"></script>
  16. <script type="text/javascript" src="http://static.vbdsm.com/js/util.js"></script>
  17. <style type="text/css">
  18. .datagrid-header-rownumber,.datagrid-cell-rownumber{height:26px;line-height: 26px;}
  19. </style>
  20. </head>
  21. <body style="margin: 0px;">
  22. <div class="easyui-layout" data-options="fit:true" >
  23. <div data-options="region:'center'" style="overflow: auto;">
  24. <div id="toolBar" style="padding-left:30px; padding:2px; background-color: #eee; border-bottom: solid 1px #ddd; border-top:solid 1px #ddd;">
  25. 用户名:<input id="query_loginname" class="easyui-textbox" style="width: 100px;"/>
  26. 真实姓名:<input id="query_realname" class="easyui-textbox" style="width: 100px;" />
  27. 用户类型:<select id="query_usertype" class="easyui-combobox" style="width: 120px;"></select>
  28. 所属站点:<select id="query_site" class="easyui-combobox" style="width: 120px;"></select>
  29. <a id="btn_query" class="easyui-linkbutton" data-options="iconCls:'icon-search'">查询</a>
  30. <a id="btn_add" class="easyui-linkbutton" data-options="iconCls:'icon-add-w'">新增用户</a>
  31. </div>
  32. <div id="content" style="width: 100%; height: 100%;">
  33. <table id="easyui-datagrid-tab"></table>
  34. </div>
  35. <div id="user-resetpass-window" style="width: 540px; height: 120px; " data-options="modal:true,collapsible:false,minimizable:false,maximizable:false,closed:true">
  36. <form id="userResetpassFrm" target="ajaxResult" method="post">
  37. <input id="user_resetpass_id" type="hidden" name="id" />
  38. <table style="width: 450px; border: 0; font-size: 12px; margin-top:5px;">
  39. <tbody>
  40. <tr>
  41. <td style="width: 100px;" align="right">重置密码:</td>
  42. <td style="width: 230px;"><input id="resetPass" name="resetPass" style="width: 220px;" class="easyui-validatebox easyui-textbox" autocomplete="off" minlength="6" maxlength="100" required="true" /><span style="color: #FF0000">*</span></td>
  43. </tr>
  44. </tbody>
  45. </table>
  46. </form>
  47. <div align="center" style="bottom: 15px; position:absolute; width:98%;">
  48. <hr style="color: #045B83; border: 1px solid; margin-left: 10px; margin-right: 10px;" />
  49. <a id="btn-resetpass-success" href="javascript:void(0)" class="easyui-linkbutton" data-options="iconCls:'icon-save'">确认</a>
  50. <a id="btn-resetpass-undo" href="javascript:void(0)" class="easyui-linkbutton" onclick="closeResetPassWindow()" data-options="iconCls:'icon-undo'">取消</a>
  51. </div>
  52. </div>
  53. <div id="user-window" style="width: 540px; height: 500px; " data-options="modal:true,collapsible:false,minimizable:false,maximizable:false,closed:true">
  54. <form id="userFrm" target="ajaxResult" method="post">
  55. <input id="user_id" type="hidden" name="id" />
  56. <table style="width: 450px; border: 0; font-size: 12px; margin-top:5px;">
  57. <tbody>
  58. <tr>
  59. <td style="width: 100px;" align="right">登录名称:</td>
  60. <td style="width: 230px;"><input id="loginName" name="loginName" style="width: 220px;" class="easyui-validatebox easyui-textbox" autocomplete="off" maxlength="100" required="true" /><span style="color: #FF0000">*</span></td>
  61. </tr>
  62. <tr>
  63. <td style="width: 100px;" align="right">用户密码:</td>
  64. <td style="width: 230px;"><input id="loginPass" name="loginPass" style="width: 220px;" type="password" class="easyui-validatebox easyui-textbox" autocomplete="off" maxlength="255" required="true" /><span style="color: #FF0000">*</span></td>
  65. </tr>
  66. <tr>
  67. <td style="width: 100px;" align="right">真实姓名:</td>
  68. <td style="width: 230px;"><input id="realName" name="realName" style="width: 220px;" class="easyui-validatebox easyui-textbox" autocomplete="off" maxlength="255" required="true" /><span style="color: #FF0000">*</span></td>
  69. </tr>
  70. <tr>
  71. <td style="width: 100px;" align="right">邮箱地址:</td>
  72. <td style="width: 230px;"><input id="email" name="email" style="width: 220px;" class="easyui-validatebox easyui-textbox" data-options="validType:'email'" autocomplete="off" maxlength="255"/></td>
  73. </tr>
  74. <tr>
  75. <td align="right">所属行业:</td>
  76. <td>
  77. <select id="industry" class="easyui-combobox" name="industry" style="width: 220px;"></select>
  78. </td>
  79. </tr>
  80. <tr>
  81. <td align="right">角色名称:</td>
  82. <td>
  83. <select id="roleId" class="easyui-validatebox easyui-combobox" name="roleId" style="width: 220px;" data-options="required:true,editable:false"></select><span style="color: #FF0000">*</span>
  84. </td>
  85. </tr>
  86. <tr>
  87. <td align="right">用户类型:</td>
  88. <td>
  89. <select id="userType" class="easyui-validatebox easyui-combobox" name="userType" style="width: 220px; data-options="required:true,editable:false"></select><span style="color: #FF0000">*</span>
  90. </td>
  91. </tr>
  92. <tr>
  93. <td align="right">行政区域:</td>
  94. <td>
  95. <select id="province" class="easyui-validatebox easyui-combobox" name="province" style="width:80px; data-options="required:true,editable:false"></select>省<span style="color: #FF0000">*</span>
  96. <select id="city" class="easyui-combobox" name="city" style="width:80px; data-options="editable:false"></select>市
  97. <select id="area" class="easyui-combobox" name="area" style="width:80px; data-options="editable:false"></select>区
  98. </td>
  99. </tr>
  100. <tr>
  101. <td align="right">过期时间:</td>
  102. <td>
  103. <select id="expiredTime" class="easyui-validatebox easyui-datebox" name="expiredTime" style="width: 220px; data-options="required:true,editable:false"></select><span style="color: #FF0000">*</span>
  104. </td>
  105. </tr>
  106. <tr>
  107. <td align="right">是否设定为虚拟用户:</td>
  108. <td>
  109. <input type="radio" style="width: 20px;" name="virtualAble" value="0" id="virtualAble_0" checked="checked" onchange="showVirtual()"><label for="virtualAble_0">否</label>
  110. <input type="radio" style="width: 20px;" name="virtualAble" value="1" id="virtualAble_1" onchange="showVirtual()"><label for="virtualAble_1">是</label>
  111. </td>
  112. </tr>
  113. <tr>
  114. <td align="right">绑定虚拟用户:</td>
  115. <td>
  116. <select id="virtualId" class="easyui-combobox" name="virtualId" disabled="disabled" style="width: 220px;"></select>
  117. </td>
  118. </tr>
  119. <tr>
  120. <td align="right">状态:</td>
  121. <td>
  122. <select id="state" class="easyui-validatebox easyui-combobox" name="state" style="width: 220px;" data-options="required:true,editable:false,panelHeight:'auto'">
  123. <option value="1">有效</option>
  124. <option value="0">禁用</option>
  125. </select>
  126. </td>
  127. </tr>
  128. <tr>
  129. <td style="width: 100px;" align="right">备注:</td>
  130. <td style="width: 230px;"><textarea id="remark" name="remark" style="width: 220px; height:100px;" ></textarea></td>
  131. </tr>
  132. </tbody>
  133. </table>
  134. </form>
  135. <div align="center" style="bottom: 15px; position:absolute; width:98%;">
  136. <hr style="color: #045B83; border: 1px solid; margin-left: 10px; margin-right: 10px;" />
  137. <a id="btn-save" href="javascript:void(0)" class="easyui-linkbutton" data-options="iconCls:'icon-save'">保存</a>
  138. <a id="btn-undo" href="javascript:void(0)" class="easyui-linkbutton" onclick="closeWindow()" data-options="iconCls:'icon-undo'">取消</a>
  139. </div>
  140. </div>
  141. </div>
  142. </div>
  143. <script type="text/javascript">
  144. var userTypeMap = new Map(),/* 用户类型 */ roleMap = new Map()/* 角色 */,rootMap = new Map()/* 角色类型 */,
  145. industryMap = new Map()/* 所属行业 */,orgMap = new Map()/* 机构 */,siteMap = new Map()/* 站点 */;
  146. //创建window对象
  147. var win = $('#user-window').window({
  148. closed:true
  149. });
  150. var resetPassWin = $('#user-resetpass-window').window({
  151. closed:true
  152. });
  153. //关闭window窗口
  154. function closeWindow(){
  155. win.window('close');
  156. }
  157. function closeResetPassWindow(){
  158. resetPassWin.window('close');
  159. }
  160. $("#query_usertype").combobox({
  161. valueField:'code',
  162. textField:'value',
  163. panelHeight:"auto",
  164. editable:false
  165. });
  166. $("#query_site").combobox({
  167. valueField:'code',
  168. textField:'value',
  169. panelHeight:"auto",
  170. editable:false
  171. });
  172. $('#easyui-datagrid-tab').datagrid({
  173. rownumbers:false,
  174. border:false,
  175. fit: true,
  176. fitcolumns:true,
  177. toolbar:"#toolBar",
  178. animate:true,
  179. pagination:true,
  180. rowStyler:function(index,row){
  181. //return "height:34px";
  182. },
  183. columns:[[
  184. {field:'loginName',title:'登录名称',width:100,align:'center'},
  185. {field:'realName',title:'用户名称',width:110,align:'left'},
  186. {field:'roleId',title:'角色名称',width:100,align:'left',
  187. formatter: function(value,row,index){
  188. return roleMap.get(value);
  189. }
  190. },
  191. {field:'userType',title:'用户类型',width:120,align:'left',
  192. formatter: function(value,row,index){
  193. return userTypeMap.get(value);
  194. }
  195. },
  196. {field:'companyId',title:'所属机构',width:200,align:'left',
  197. formatter: function(value,row,index){
  198. return orgMap.get(value);
  199. }
  200. },
  201. {field:'industry',title:'所属行业',width:120,align:'center',
  202. formatter: function(value,row,index){
  203. var str = '';
  204. if(value){
  205. ids = value.split(",")
  206. $(ids).each(function(index, obj){
  207. str += industryMap.get(obj);
  208. if(index < ids.length-1)
  209. str+=",";
  210. });
  211. }
  212. return str;
  213. }
  214. },
  215. {field:'virtualAble',title:'虚拟用户',width:60,align:'center',
  216. formatter: function(value,row,index){
  217. if(rootMap.get(row.roleId) == 1) return '';
  218. if(value == 0) return '否';
  219. else if(value == 1) return '是';
  220. }
  221. },
  222. {field:'state',title:'用户状态',width:60,align:'center',
  223. formatter: function(value,row,index){
  224. if(rootMap.get(row.roleId) == 1) return '';
  225. if(value == 0) return '<span style="color:#D9B300">不可用</span>';
  226. else if(value == 1) return '<span style="color:#00DB00">可用</span>';
  227. else if(value == 2) return '<span style="color:#642100">已禁用</span>';
  228. else if(value == -1) return '<span style="color:#EA0000">已删除</span>';
  229. }
  230. },
  231. {field:'operate',title:'操作',width:200,align:'center',
  232. formatter: function(value,row,index){
  233. if(rootMap.get(row.roleId) == 1)
  234. return '【默认用户不允许操作】';
  235. return '<a class="btn_modify" href="javascript:void(0);" onclick=\'modifyUser('+JSON.stringify(row)+')\'>修改</a>'
  236. +'<a class="btn_remove" href="javascript:void(0);" onclick="removeUser('+row.id+','+index+')">删除</a>'
  237. +'<a class="btn_reset" href="javascript:void(0);" onclick="resetPass('+row.id+')">重置密码</a>';
  238. }
  239. }
  240. ]],
  241. onLoadError:function(){
  242. alert("载入数据发生错误,可能是由于您的登录已失效。</br>请刷新后再试。");
  243. },
  244. onLoadSuccess:function(data){
  245. $(".btn_modify").linkbutton({plain:true,iconCls:"icon-edit",size:"small"});
  246. $(".btn_remove").linkbutton({plain:true,iconCls:"icon-remove",size:"small"});
  247. $(".btn_reset").linkbutton({plain:true,iconCls:"icon-undo",size:"small"});
  248. }
  249. });
  250. function initGridData(){
  251. var p = $("#easyui-datagrid-tab").datagrid('getPager');
  252. //设置分页组件参数
  253. $(p).pagination({
  254. pageSize: 15,
  255. pageNumber: 1,
  256. pageList: [15, 20, 50],
  257. onSelectPage: function (pageNumber, pageSize) {
  258. var _param = {};
  259. _param.loginName = $("#query_loginname").textbox('getValue');
  260. _param.realName = $("#query_realname").textbox('getValue');
  261. _param.userType = $("#query_usertype").combobox('getValue');
  262. _param.siteId = $("#query_site").combobox('getValue');
  263. _param.pageNo = pageNumber;
  264. _param.pageSize = pageSize;
  265. //var _param = {"pageNo":pageNumber, "pageSize":pageSize};
  266. loadUserData(_param);
  267. }
  268. });
  269. var obj = $(p).pagination('options');
  270. var _param = {};
  271. _param.loginName = $("#query_loginname").textbox('getValue');
  272. _param.realName = $("#query_realname").textbox('getValue');
  273. _param.userType = $("#query_usertype").combobox('getValue');
  274. _param.siteId = $("#query_site").combobox('getValue');
  275. _param.pageNo = obj.pageNumber;
  276. _param.pageSize = obj.pageSize;
  277. //var _param = {"pageNo":obj.pageNumber, "pageSize":obj.pageSize};
  278. loadUserData(_param);
  279. }
  280. //加载数据
  281. function loadUserData(param){
  282. ajax({
  283. url:'/web/user/getAllUserPage.json',
  284. dataType:'json',
  285. async:false,
  286. type:'POST',
  287. data:param,
  288. success:function(data){
  289. $('#easyui-datagrid-tab').datagrid('loadData',data.data);
  290. }
  291. });
  292. }
  293. $("#btn_query").click(function(){
  294. var _param = {};
  295. _param.loginName = $("#query_loginname").textbox('getValue');
  296. _param.realName = $("#query_realname").textbox('getValue');
  297. _param.userType = $("#query_usertype").combobox('getValue');
  298. _param.siteId = $("#query_site").combobox('getValue');
  299. _param.pageNo = 1;
  300. _param.pageSize = 15;
  301. loadUserData(_param);
  302. });
  303. //新增用户
  304. $("#btn_add").click(function(){
  305. win.find('form').form('clear');
  306. showVirtual();
  307. $("#loginPass").addClass("easyui-validatebox").addClass("validatebox-text").addClass("validatebox-invalid").textbox('enableValidation');
  308. $("#loginPass").textbox("enable");
  309. $("#virtualAble_0").attr("checked", true)
  310. //$("#virtualId").combobox('disable');
  311. var industry_box = new Array(),role_box = new Array(),userType_box = new Array();
  312. //所属行业
  313. $(industryMap.elements).each(function(index, obj){
  314. industry_box.push({"id":obj.key,"text":obj.value});
  315. });
  316. $("#industry").combobox({
  317. multiple:true,
  318. separator:",",
  319. valueField:'id',
  320. textField:'text',
  321. data:industry_box
  322. });
  323. //角色
  324. $(roleMap.elements).each(function(index, obj){
  325. role_box.push({"id":obj.key,"text":obj.value});
  326. });
  327. $("#roleId").combobox({
  328. valueField:'id',
  329. textField:'text',
  330. data:role_box
  331. });
  332. //用户类型
  333. $(userTypeMap.elements).each(function(index, obj){
  334. userType_box.push({"id":obj.key,"text":obj.value});
  335. });
  336. $("#userType").combobox({
  337. valueField:'id',
  338. textField:'text',
  339. data:userType_box
  340. });
  341. //省市区
  342. $("#city").combobox('disable');
  343. $("#area").combobox('disable');
  344. loadDistrictData("province","city","");
  345. win.dialog('setTitle','新增用户');
  346. win.window('open');
  347. });
  348. function loadDistrictData(_target,next_target,parentId){
  349. if(_target=="province"){
  350. $("#city").combobox('disable');
  351. $("#area").combobox('disable');
  352. }
  353. ajax({//用户行业
  354. url:'web/area/getComboxData.json?parentId=' + parentId,
  355. async:false,
  356. success:function(data){
  357. $("#"+_target).combobox({
  358. valueField: 'id',
  359. textField: 'title',
  360. data:data,
  361. onSelect:function(record){
  362. if(_target != 'area') {
  363. loadDistrictData(next_target,"area",record.id);
  364. $("#"+next_target).combobox('enable');
  365. }
  366. }
  367. });
  368. }
  369. });
  370. }
  371. //显示虚拟用户列表
  372. function showVirtual(){
  373. var virtualAble = $('#user-window input[name="virtualAble"]:checked').val();
  374. if(virtualAble == 1){
  375. var virtual_box = new Array();
  376. ajax({//用户行业
  377. url:'/web/user/getVirtualUser.json',
  378. async:false,
  379. success:function(data){
  380. $(data.data).each(function(index, obj){
  381. virtual_box.push({"id":obj.id,"text":"登录名:"+obj.loginName+",真实姓名:"+obj.realName});
  382. });
  383. }
  384. });
  385. $("#virtualId").combobox({
  386. panelHeight:"auto",
  387. valueField: 'id',
  388. textField: 'text',
  389. data:virtual_box
  390. })
  391. $("#virtualId").combobox('enable');
  392. } else {
  393. var virtual_box = new Array();
  394. $("#virtualId").combobox({
  395. panelHeight:"auto",
  396. valueField: 'id',
  397. textField: 'text',
  398. data:virtual_box
  399. })
  400. $("#virtualId").combobox('disable');
  401. }
  402. }
  403. //编辑用户
  404. function modifyUser(row){
  405. var industry_box = new Array(),role_box = new Array(),userType_box = new Array();
  406. win.find('form').form('clear');
  407. $("#loginPass").removeClass("easyui-validatebox").removeClass("validatebox-text").removeClass("validatebox-invalid").textbox('disableValidation');
  408. $("#loginPass").textbox("disable");
  409. $("#user_id").val(row.id);
  410. $("#loginName").textbox('setValue',row.loginName);
  411. $("#realName").textbox('setValue',row.realName);
  412. $("#email").textbox('setValue',row.email);
  413. //所属行业
  414. $(industryMap.elements).each(function(index, obj){
  415. industry_box.push({"id":obj.key,"text":obj.value});
  416. });
  417. $("#industry").combobox({
  418. multiple:true,
  419. separator:",",
  420. panelHeight:200,
  421. valueField:'id',
  422. textField:'text',
  423. data:industry_box
  424. });
  425. $("#industry").combobox('setValues',row.industry);
  426. //角色
  427. $(roleMap.elements).each(function(index, obj){
  428. role_box.push({"id":obj.key,"text":obj.value});
  429. });
  430. $("#roleId").combobox({
  431. panelHeight:200,
  432. valueField:'id',
  433. textField:'text',
  434. data:role_box
  435. });
  436. $("#roleId").combobox('setValue',row.roleId);
  437. //用户类型
  438. $(userTypeMap.elements).each(function(index, obj){
  439. userType_box.push({"id":obj.key,"text":obj.value});
  440. });
  441. $("#userType").combobox({
  442. panelHeight:200,
  443. valueField:'id',
  444. textField:'text',
  445. data:userType_box
  446. });
  447. $("#userType").combobox('setValue',row.userType);
  448. $("#virtualAble_"+row.virtualAble).attr("checked", true);
  449. if(row.virtualAble == 0){
  450. showVirtual();
  451. $("#virtualId").combobox('setValue',row.virtualId);
  452. }
  453. $("#city").combobox('disable');
  454. $("#area").combobox('disable');
  455. loadDistrictData("province","city","");
  456. $("#province").combobox('setValue',row.province);
  457. if(row.city != ""){
  458. loadDistrictData("city","area",row.province);
  459. $("#city").combobox('setValue',row.city);
  460. }
  461. if(row.area != ""){
  462. loadDistrictData("area","",row.city);
  463. $("#area").combobox('setValue',row.area);
  464. }
  465. if(row.expiredTime != "") {
  466. var d = new Date(row.expiredTime); //根据时间戳生成的时间对象
  467. var date = (d.getFullYear()) + "-" + (d.getMonth() + 1) + "-" + (d.getDate());
  468. $("#expiredTime").datebox('setValue',date);
  469. }
  470. $("#state").combobox('setValue',row.state);
  471. remark:$("#remark").val(row.remark);
  472. win.dialog('setTitle','修改用户');
  473. win.window('open');
  474. }
  475. //删除用户
  476. function removeUser(id,rowIndex){
  477. confirm("重要操作","删除后,将导致某些关联数据无法显示。<br/>您确定要删除选中数据吗?",function(r){
  478. if(r){
  479. ajax({
  480. url:'/web/user/remove.json',
  481. data:{id:id},
  482. success:function(data){
  483. if(data.status==1)
  484. $("#easyui-datagrid-tab").datagrid('deleteRow',rowIndex);
  485. toast(data.msg);
  486. }
  487. });
  488. }
  489. });
  490. }
  491. //重置密码
  492. function resetPass(id){
  493. /* ajax({
  494. url:'/web/user/resetPass.json',
  495. data:{uid:id},
  496. success:function(data){
  497. toast(data.msg);
  498. }
  499. }); */
  500. resetPassWin.find('form').form('clear');
  501. $('#user_resetpass_id').val(id);
  502. resetPassWin.dialog('setTitle','重置密码');
  503. resetPassWin.window('open');
  504. }
  505. //确认
  506. $("#btn-resetpass-success").click(function(){
  507. if(!resetPassWin.find('form').form('validate')) {return;} //验证表单
  508. var id = $("#user_resetpass_id").val();
  509. var resetPass = $("#resetPass").val();
  510. if(resetPass.length < 6){
  511. alert('密码长度至少是6位!');
  512. return;
  513. }
  514. ajax({
  515. url:'/web/user/resetPass.json',
  516. data:{uid:id,resetPass:resetPass},
  517. success:function(data){
  518. if(data.status == 1) {
  519. closeResetPassWindow();
  520. }
  521. toast(data.msg);
  522. }
  523. });
  524. });
  525. //保存
  526. $("#btn-save").click(function(){
  527. if(!win.find('form').form('validate')) {return;} //验证表单
  528. var _id = $("#user_id").val();
  529. var expiredDate = $("#expiredTime").datebox('getValue');
  530. expiredDate = expiredDate.replace(/-/g,'/');
  531. var _data = {
  532. id:_id,
  533. loginName:$("#loginName").val(),
  534. loginPass:$("#loginPass").val(),
  535. realName:$("#realName").val(),
  536. email:$("#email").val(),
  537. roleId:$("#roleId").combobox('getValue'),
  538. userType:$("#userType").combobox('getValue'),
  539. province:$("#province").combobox('getValue'),
  540. city:$("#city").combobox('getValue'),
  541. area:$("#area").combobox('getValue'),
  542. expiredTime:new Date(expiredDate).getTime(),
  543. state:$("#state").combobox('getValue'),
  544. remark:$("#remark").val()
  545. };
  546. var _industry = $("#industry").combobox('getValues'), val="";
  547. $(_industry).each(function(index, obj){
  548. val += obj;
  549. if(index < _industry.length-1) val += ",";
  550. })
  551. _data.industry = val;
  552. var _virtualId = $("#virtualId").combobox('getValue');
  553. if(_virtualId == 0){
  554. _data.virtualAble=$('#user-window input[name="virtualAble"]:checked').val()
  555. }
  556. _data.virtualId = _virtualId;
  557. _url = (_id == "")?'/web/user/add.json':'/web/user/modify.json',
  558. ajax({
  559. url:_url,
  560. type:"POST",
  561. data:_data,
  562. success:function(data){
  563. if(data.status == 1) {
  564. var options = $('#easyui-datagrid-tab').datagrid('getPager').data("pagination").options;
  565. var _param = {"pageNo":options.pageNo,"pageSize":options.pageSize};//Math.ceil(options.total/options.pageSize)
  566. _param.loginName = $("#query_loginname").textbox('getValue');
  567. _param.realName = $("#query_realname").textbox('getValue');
  568. _param.userType = $("#query_usertype").combobox('getValue');
  569. _param.siteId = $("#query_site").combobox('getValue');
  570. loadUserData(_param);
  571. closeWindow();
  572. }
  573. toast(data.msg);
  574. }
  575. });
  576. });
  577. $(document).ready(function() {
  578. ajax({//角色
  579. url:'/web/role/getAll.json',
  580. async:false,
  581. success:function(data){
  582. $(data.data.rows).each(function(index, role){
  583. roleMap.put(role.id,role.name);
  584. rootMap.put(role.id,role.root);
  585. });
  586. }
  587. });
  588. ajax({//用户类型
  589. url:'/web/code/getList/01080000.json',
  590. async:false,
  591. success:function(data){
  592. var box_data = new Array();
  593. box_data.push({"codeSole":"","codeZH":"=====全部====="});
  594. $(data.data).each(function(index, code){
  595. userTypeMap.put(code.codeSole,code.codeZH);
  596. box_data.push({"codeSole":code.codeSole,"codeZH":code.codeZH});
  597. });
  598. $("#query_usertype").combobox({
  599. valueField:'codeSole',
  600. textField:'codeZH',
  601. data:box_data
  602. });
  603. }
  604. });
  605. ajax({//用户行业
  606. url:'/web/industry/getComboxData.json',
  607. async:false,
  608. success:function(data){
  609. $(data).each(function(index, obj){
  610. industryMap.put(obj.id,obj.name);
  611. });
  612. }
  613. });
  614. ajax({//用户行业
  615. url:'/web/user/getOrgList.json',
  616. async:false,
  617. success:function(data){
  618. $(data.data).each(function(index, obj){
  619. orgMap.put(obj.id,obj.name);
  620. });
  621. }
  622. });
  623. ajax({//站点
  624. url:'/web/site/getAll.json',
  625. async:false,
  626. success:function(data){
  627. var box_data = new Array();
  628. box_data.push({"id":"","text":"=====全部====="});
  629. $(data.data.rows).each(function(index, site){
  630. siteMap.put(site.id,site.name);
  631. box_data.push({"id":site.id,"text":site.name});
  632. });
  633. $("#query_site").combobox({
  634. valueField:'id',
  635. textField:'text',
  636. data:box_data
  637. });
  638. }
  639. });
  640. //加载数据
  641. initGridData();
  642. });
  643. </script>
  644. </body>
  645. </html>