郑州第一人民医院UI

userManage.js 8.6KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340
  1. $(document).ready(function() {
  2. $('.tool_bars').authorizeButton();
  3. helper.getDropList.getProlistDrop($('#sc_pro'));
  4. //角色下拉
  5. GetRoleName($('#roleid'));
  6. // .then(function() {
  7. // $('#sc_pro').on('change', function() {
  8. // $('#roleid').selectpicker('destroy');
  9. // //角色下拉
  10. // GetRoleName($('#roleid'), $(this).val());
  11. // });
  12. // });
  13. $('#sc_btns').click(function() {
  14. getSuggestionList()
  15. })
  16. getSuggestionList()
  17. });
  18. //获取意见建议列表
  19. function getSuggestionList() {
  20. //销毁表格
  21. $('#user_table').bootstrapTable('destroy');
  22. //初始化表格,动态从服务器加载数据
  23. $("#user_table").bootstrapTable({
  24. method: "get", //使用get请求到服务器获取数据
  25. url: huayi.config.callcenter_url + "signtokenapi/api/UserAccount/getlistsbypage", //获取数据的Servlet地址
  26. contentType: "application/x-www-form-urlencoded",
  27. striped: true, //表格显示条纹
  28. pagination: true, //启动分页
  29. pageSize: 10, //每页显示的记录数
  30. pageNumber: 1, //当前第几页
  31. pageList: [10, 20, 50, 100], //记录数可选列表
  32. // fixedColumns: true,
  33. // fixedNumber: 3,
  34. search: false, //是否启用查询
  35. showColumns: false, //显示下拉框勾选要显示的列
  36. showRefresh: false, //显示刷新按钮
  37. sidePagination: "server", //表示服务端请求
  38. //设置为undefined可以获取pageNumber,pageSize,searchText,sortName,sortOrder
  39. //设置为limit可以获取limit, offset, search, sort, order
  40. queryParamsType: "undefined",
  41. queryParams: function queryParams(params) { //设置查询参数
  42. var param = {
  43. pageindex: params.pageNumber,
  44. pagesize: params.pageSize,
  45. // deptid: $('#deptid').val(), // 否 string 科室id
  46. roleid: $('#roleid').val(), // 否 string 角色id
  47. projectid: $('#sc_pro').val(), // 否 string 项目id
  48. keyword: $('#searCon').val() //否 string 模糊查询(名称)
  49. };
  50. return param;
  51. },
  52. responseHandler: function(res) {
  53. return {
  54. "total": res.data && res.data.total, //总页数
  55. "rows": res.data && res.data.rows //数据
  56. };
  57. },
  58. onLoadSuccess: function(data) { //加载成功时执行
  59. // layer.msg("加载成功");
  60. $('.table_con').popover();
  61. $('.tool_downs').authorizeOperateButton();
  62. },
  63. onLoadError: function() { //加载失败时执行
  64. //layer.msg("加载数据失败", { time: 1500, icon: 2 });
  65. }
  66. });
  67. }
  68. //格式化操作
  69. function formatterOperate(val, row) {
  70. var isBind = row.weixin;
  71. var str = '<ul class="tool_downs">' +
  72. //不含坐席
  73. '<li><a class="aBtn" authorize="yes" id="HY_edit_' + row.id + '" onclick="btn_edit(\'' + row.id + '\')">编辑</a><li>' +
  74. //包含坐席
  75. '<li><a class="aBtn" authorize="yes" id="HY_userEdit_' + row.id + '" onclick="btn_userEdit(\'' + row.id + '\')">编辑</a><li>'
  76. if(!isBind){
  77. str += '<li><a class="aBtn" authorize="yes" id="HY_binding_' + row.id + '" onclick="btn_binding(\'' + row.usercode + '\')">绑定微信</a><li>'
  78. }else{
  79. str += '<li><a class="aBtn" authorize="yes" id="HY_unBind_' + row.id + '" onclick="btn_unBind(\'' + row.usercode + '\')">解绑</a><li>'
  80. }
  81. str += '<li><a class="aBtn" authorize="yes" id="HY_delete_' + row.id + '" onclick="btn_remove(\'' + row.id + '\')">删除</a><li>' +
  82. '</ul>'
  83. return str
  84. }
  85. function formatterTime(val, row) {
  86. var t = val.substr(0, 10);
  87. return t
  88. }
  89. //话务标志
  90. function formatterSeatFlag(val, row) {
  91. var str = ""
  92. if(val) {
  93. str = "是";
  94. } else {
  95. str = "否";
  96. }
  97. return str
  98. }
  99. //格式化 是否绑定微信
  100. function formatterWeiXin(val, row) {
  101. var stateClass = 'timeout_default';
  102. var stateTxt = '-';
  103. if(val) {
  104. stateClass = 'timeout_success';
  105. stateTxt = '已绑定';
  106. } else {
  107. stateClass = 'timeout_refuse';
  108. stateTxt = '未绑定';
  109. }
  110. return '<span class="' + stateClass + '">' + stateTxt + '</span>';
  111. }
  112. //类型
  113. function formatterType(val, row) {
  114. var str = ""
  115. switch(val + '') {
  116. case '0':
  117. str = "内部员工";
  118. break;
  119. case '1':
  120. str = "客户";
  121. break;
  122. case '2':
  123. str = "普通群众用户";
  124. break;
  125. default:
  126. str = "其他";
  127. }
  128. return str
  129. }
  130. //头像显示
  131. function formatterHeadImg(val, row) {
  132. if(val){
  133. return '<img src="' + val + '" alt="头像" width="50px" height="50px" />'
  134. }else{
  135. return '-';
  136. }
  137. }
  138. //格式化项目信息
  139. function formatterProjectname(val, row){
  140. val = val && val.split(',');
  141. if(val && val.length === 0){
  142. return '-'
  143. }
  144. if(val && val.length > 3){
  145. return '<span class="table_con" data-container="body" data-toggle="popover" data-placement="top" data-content="'+ val +'">'+ val.splice(0,3) +'...</span>';
  146. }else{
  147. return '<span>'+ val +'</span>';
  148. }
  149. }
  150. //绑定微信
  151. function btn_binding(ucode){
  152. $.ajax({
  153. type: "get",
  154. url: huayi.config.callcenter_url + "wechatapi/api/login/getqrcode",
  155. async: true,
  156. dataType: 'json',
  157. data: {
  158. usercode: ucode,// 是 string 用户账号
  159. },
  160. success: function(result) {
  161. if(result.state.toLowerCase() == "success") {
  162. var qrcodeUrl = result.data;
  163. if(qrcodeUrl){
  164. layer.open({
  165. type: 1,
  166. content: '<div class="text-center">'+
  167. '<img class="img-rounded wxQrCode" src="'+ qrcodeUrl +'" alt="二维码" title="扫描二维码绑定微信">'+
  168. '<p class="help-block text-warning">'+
  169. '扫描二维码绑定微信'+
  170. '</p>'+
  171. '</div>',
  172. title: '账号二维码',
  173. resize: false,
  174. area: ['400px', '370px'], //宽高
  175. end: function(index, layero){
  176. $('#user_table').bootstrapTable('refresh');
  177. },
  178. });
  179. }else{
  180. layer.confirm('二维码生成失败,请稍后再试。', {
  181. icon: 7,
  182. btn: ['确定'] //按钮
  183. });
  184. }
  185. }
  186. }
  187. });
  188. }
  189. //解除绑定
  190. function btn_unBind(ucode){
  191. $.ajax({
  192. type: "post",
  193. url: huayi.config.callcenter_url + "signtokenapi/api/Token/wechat_unbind",
  194. async: true,
  195. dataType: 'json',
  196. data: {
  197. usercode: ucode,// 是 string 用户账号
  198. },
  199. success: function(result) {
  200. if(result.state.toLowerCase() === "success") {
  201. layer.confirm('解绑成功', {
  202. icon: 6,
  203. btn: ['确定'], //按钮
  204. yes: function(index, layero){
  205. layer.close(index); //如果设定了yes回调,需进行手工关闭
  206. $('#user_table').bootstrapTable('refresh');
  207. },
  208. end: function(index, layero){
  209. $('#user_table').bootstrapTable('refresh');
  210. },
  211. });
  212. }else{
  213. layer.confirm('解绑失败', {
  214. icon: 5,
  215. btn: ['确定'] //按钮
  216. });
  217. }
  218. }
  219. });
  220. }
  221. //新增
  222. function btn_add() {
  223. layer.open({
  224. type: 2,
  225. content: "template/addUserManage.html",
  226. title: '新增用户信息',
  227. area: ['85%', '90%'], //宽高
  228. });
  229. }
  230. //新增坐席
  231. function btn_seatAdd() {
  232. layer.open({
  233. type: 2,
  234. content: "template/addOrEditUserManage.html",
  235. title: '新增用户信息',
  236. area: ['85%', '90%'], //宽高
  237. });
  238. }
  239. //编辑坐席
  240. function btn_userEdit(ids) {
  241. layer.open({
  242. type: 2,
  243. content: "template/addOrEditUserManage.html?ids=" + ids,
  244. title: '修改用户信息',
  245. area: ['85%', '90%'], //宽高
  246. });
  247. }
  248. /*删除内容*/
  249. function btn_delete() {
  250. var ids = $.map($('#user_table').bootstrapTable('getSelections'),
  251. function(row) {
  252. return row.id;
  253. });
  254. /*判断长度*/
  255. if(ids.length <= 0) {
  256. layer.confirm('没有可删除的选项?', {
  257. icon: 7,
  258. btn: ['确定'] //按钮
  259. });
  260. return;
  261. }
  262. remove(ids);
  263. }
  264. /*删除提示*/
  265. function btn_remove(id) {
  266. layer.confirm('确定删除当前记录?', {
  267. icon: 7,
  268. btn: ['是', '否'] //按钮
  269. }, function() {
  270. /*执行删除*/
  271. // var ids = $.map($('#list').bootstrapTable('getSelections'),
  272. // function(row) {
  273. // return row.id;
  274. // });
  275. if(id == '5aaa5a55b9c1893cb015df27') {
  276. layer.confirm('系统维护账户不允许删除!', {
  277. icon: 7,
  278. btn: ['确定']
  279. });
  280. return;
  281. }
  282. /*发送请求*/
  283. $.ajax({
  284. type: "post",
  285. url: huayi.config.callcenter_url + "signtokenapi/api/UserAccount/delete",
  286. async: true,
  287. dataType: 'json',
  288. data: {
  289. ids: id
  290. },
  291. success: function(result) {
  292. if(result.state.toLowerCase() == "success") {
  293. layer.msg("删除成功");
  294. getSuggestionList();
  295. }
  296. }
  297. });
  298. });
  299. }
  300. /*修改编辑*/
  301. function btn_edit(ids) {
  302. layer.open({
  303. type: 2,
  304. content: "template/addUserManage.html?ids=" + ids,
  305. title: '修改用户信息',
  306. area: ['85%', '90%'], //宽高
  307. });
  308. }
  309. //角色
  310. function GetRoleName(obj) {
  311. obj.empty();
  312. obj.append("<option value=''>请选择角色</option>");
  313. $.getJSON(huayi.config.callcenter_url + "configurationapi/api/RoleInfo/getlistdrop", function(data) {
  314. if(data.state.toLowerCase() == "success") {
  315. var content = data.data;
  316. $(content).each(function(i, n) {
  317. $("<option value='" + n.id + "'>" + n.role_name + "</option>").appendTo(obj);
  318. })
  319. obj.selectpicker('refresh');
  320. }
  321. })
  322. }