Нет описания

dischargedPatients.js 6.2KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239
  1. $(function() {
  2. getdept()
  3. laydate.render({
  4. elem: '#settime',
  5. theme: '#249fea',
  6. range: '~',
  7. // type: 'datetime'
  8. });
  9. $("#sc_btns").click(function() {
  10. initTable();
  11. })
  12. initTable()
  13. })
  14. $(function() {
  15. getdept()
  16. })
  17. //导出
  18. function btn_export() {
  19. $.ajax({
  20. type: "get",
  21. url: huayi.config.callcenter_url + "testusertypeapi/api/Test/getdeptname",
  22. async: true,
  23. dataType: 'json',
  24. data:{
  25. PageIndex :0,
  26. PageSize:0,
  27. name:$("#nameSearch").val(),
  28. phonemodel:$("#phone").val(),
  29. stime: $('#settime').val() && $('#settime').val().split(' ~ ')[0],
  30. etime: $('#settime').val() && $('#settime').val().split(' ~ ')[1],
  31. deptname: $("#deptname").val()
  32. },
  33. success: function(data) {
  34. let jsonData = data.data;
  35. //列标题,逗号隔开,每一个逗号就是隔开一个单元格
  36. var str = `病人姓名,病人性别,住院年龄,住院科室名称,住院号,住院天数,联系地址,本人联系电话\n`;
  37. //增加\t为了不让表格显示科学计数法或者其他格式
  38. for(let i = 0; i < jsonData.length; i++) {
  39. for(let item in jsonData[i]) {
  40. str += `${jsonData[i][item] + '\t'},`;
  41. }
  42. str += '\n';
  43. }
  44. //encodeURIComponent解决中文乱码
  45. let uri = 'data:text/csv/xls;charset=utf-8,\ufeff' + encodeURIComponent(str);
  46. //通过创建a标签实现
  47. let link = document.createElement("a");
  48. link.href = uri;
  49. //对下载的文件命名
  50. link.download = "出院患者.xls";
  51. document.body.appendChild(link);
  52. link.click();
  53. document.body.removeChild(link);
  54. }
  55. });
  56. }
  57. function getdept() {
  58. $("#deptname").html('');
  59. equipmentdata = []
  60. $("#deptname").append('<option value="">请选择科室名称</option>');
  61. $.ajax({
  62. type: "get",
  63. url: huayi.config.callcenter_url + "testusertypeapi/api/Test/getdeptname",
  64. async: true,
  65. dataType: 'json',
  66. success: function(data) {
  67. var leveldata = []
  68. if(data.state.toLowerCase() == 'success') {
  69. console.log(data)
  70. leveldata = data.data
  71. $(leveldata).each(function(q, p) {
  72. $("<option value='" + p.CY_DEPT_NAME + "'>" + p.CY_DEPT_NAME + "</option>").appendTo("#deptname");
  73. $("#deptname").selectpicker('refresh');
  74. });
  75. } else {
  76. $("#deptname").empty();
  77. $("#deptname").selectpicker('refresh');
  78. }
  79. }
  80. });
  81. }
  82. function initTable() {
  83. var $tableLeft = $('#table_all');
  84. $tableLeft.bootstrapTable('destroy');
  85. //先销毁表格
  86. $tableLeft.bootstrapTable({
  87. method: "get", //使用get请求到服务器获取数据
  88. url: huayi.config.callcenter_url + "testusertypeapi/api/Test/gethzxxs",
  89. contentType: "application/x-www-form-urlencoded",
  90. striped: true, //表格显示条纹
  91. pagination: true, //启动分页
  92. pageSize: 500, //每页显示的记录数
  93. pageNumber: 1, //当前第几页
  94. fixedColumns: true,
  95. fixedNumber: 3,
  96. pageList: [500, 1000, 1500], //记录数可选列表
  97. search: false, //是否启用查询
  98. showColumns: false, //显示下拉框勾选要显示的列
  99. showRefresh: false, //显示刷新按钮
  100. sidePagination: "server", //表示服务端请求
  101. //设置为undefined可以获取pageNumber,pageSize,searchText,sortName,sortOrder
  102. //设置为limit可以获取limit, offset, search, sort, order
  103. queryParamsType: "undefined",
  104. queryParams: function queryParams(params) { //设置查询参数
  105. console.log(params)
  106. var param = {
  107. PageIndex: params.pageNumber,
  108. PageSize: params.pageSize,
  109. stime: $('#settime').val() && $('#settime').val().split(' ~ ')[0],
  110. etime: $('#settime').val() && $('#settime').val().split(' ~ ')[1],
  111. deptname: $("#deptname").val(),
  112. name:$("#nameSearch").val(),
  113. phonemodel:$("#phone").val()
  114. };
  115. return param;
  116. },
  117. onLoadSuccess: function(data) { //加载成功时执行
  118. console.log(data)
  119. var newDataL = {};
  120. newDataL.state = data.data.state;
  121. newDataL.message = data.data.message;
  122. newDataL.rows = data.data.rows.Rows;
  123. newDataL.total = data.data.rows.Totals;
  124. $tableLeft.bootstrapTable('load', newDataL);
  125. $('.tool_downs').authorizeOperateButton();
  126. },
  127. onLoadError: function() { //加载失败时执行
  128. layer.msg("加载数据失败", {
  129. time: 1500,
  130. icon: 2
  131. });
  132. }
  133. });
  134. }
  135. //格式化操作
  136. function formatterOperate(val, row) {
  137. {
  138. var str = '<ul class="tool_downs">' +
  139. '<li><a class="aBtn" authorize="yes" id="HY_detail_' + row.PAT_PHONE + '" onclick="btn_detail(\'' + row.PAT_PHONE +
  140. '\',\'' + row.CY_DATE + '\')">详情</a><li>'
  141. '</ul>';
  142. return str
  143. }
  144. }
  145. // 详细信息
  146. function btn_detail(phone, date) {
  147. layer.open({
  148. type: 2,
  149. content: "./patientDetail.html?phone=" + phone + "&date=" + date,
  150. title: '患者详细信息',
  151. area: ['50%', '65%'], //宽高
  152. });
  153. }
  154. // 批量随访
  155. function btn_add() {
  156. var phones = $.map($('#table_all').bootstrapTable('getSelections'),
  157. function(row) {
  158. if(row.PAT_PHONE == null) {
  159. return "";
  160. } else {
  161. return row.PAT_PHONE;
  162. }
  163. // return row.PAT_PHONE;
  164. });
  165. var dates = $.map($('#table_all').bootstrapTable('getSelections'),
  166. function(row) {
  167. return row.CY_DATE;
  168. });
  169. var names = $.map($('#table_all').bootstrapTable('getSelections'),
  170. function(row) {
  171. return row.NAME;
  172. });
  173. /*判断长度*/
  174. if(phones.length <= 0) {
  175. layer.confirm('没有可随访的选项?', {
  176. icon: 7,
  177. btn: ['确定'] //按钮
  178. });
  179. return;
  180. }
  181. removeR(phones, dates, names)
  182. }
  183. function removeR(phones, dates, names) {
  184. layer.confirm('确定随访选中记录?', {
  185. icon: 7,
  186. btn: ['是', '否'], //按钮
  187. yes: function() {
  188. for(var i = 0; i < phones.length; i++) {
  189. console.log(phones[i])
  190. var _index = i
  191. $.ajax({
  192. type: "get",
  193. url: huayi.config.callcenter_url + "testusertypeapi/api/Test/addfxqytabs",
  194. dataType: 'json',
  195. async: true,
  196. beforeSend: function() {
  197. //注意,layer.msg默认3秒自动关闭,如果数据加载耗时比较长,需要设置time
  198. layer.msg('正在更新数据,请稍候……', {
  199. icon: 16,
  200. shade: 0.01,
  201. shadeClose: false,
  202. time: 6000000
  203. });
  204. },
  205. data: {
  206. ids: phones[i],
  207. nowdatetime: dates[_index],
  208. name: names[_index]
  209. },
  210. success: function(data) {
  211. if(data.state.toLowerCase() == 'success') {
  212. layer.msg("随访 成功!");
  213. initTable();
  214. }
  215. }
  216. });
  217. }
  218. }
  219. });
  220. }