appealHistory.js 41 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039
  1. const $ = require('jquery');
  2. require("../css/appealHistory.less");
  3. require('./modal.js');
  4. require('jquery-templates');
  5. const { api } = require('./api.js')
  6. const { post, getCookie, getLocal, getUrlArgObjectNew, setDatePicker,emptyBox, downloadExportedData, expJson, getLogoParam, listenScroll, getPickerDate, exportTimeLimit } = require('./utils.js')
  7. require('./../resource/jquery-ui/jquery-ui.min.js');
  8. require('./../resource/jquery-ui/jquery-ui.min.css');
  9. const iconCheck = require("./../images/icon_check.png")
  10. const iconUnCheck = require("./../images/icon_unchecked.png")
  11. const iconCalenBlue = require("./../images/icon_calen_blue.png")
  12. const iconCalenGrey = require("./../images/icon_calen_grey.png")
  13. const iconDown = require("./../images/arrow_down.png")
  14. const iconUp = require("./../images/arrow_up.png")
  15. const arrowLeft = require("./../images/arrow_left.png")
  16. const arrowRight = require("./../images/arrow_right.png")
  17. const goUpG = require("./../images/arrow_up_grey.png")
  18. const goUpB = require("./../images/arrow_up_blue.png")
  19. const goDownG = require("./../images/arrow_down_grey.png")
  20. const goDownB = require("./../images/arrow_down_blue.png");
  21. const ret = require('bluebird/js/release/util');
  22. listenScroll()
  23. let pageSet = [], pageSetCopy = [], showNum = 0, scrollTop = 0;
  24. $(".selectModular").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
  25. $(".selectType").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
  26. $(".selectDept").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
  27. $(".fpSelectCheck").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
  28. $(".qcSelectCheck").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
  29. let srcUrl = $("#contentIframe", parent.document).attr("src")
  30. let statisticsType = getUrlArgObjectNew("dateType", srcUrl) || getUrlArgObjectNew("shijian", srcUrl) || ""
  31. let startDateParam = getUrlArgObjectNew("startDateParam", srcUrl) || ""
  32. let endDateParam = getUrlArgObjectNew("endDateParam", srcUrl) || ""
  33. let page = getUrlArgObjectNew("page", srcUrl) || 1
  34. let behosDateStart = getUrlArgObjectNew("behosDateStart", srcUrl) || ""
  35. let behosDateEnd = getUrlArgObjectNew("behosDateEnd", srcUrl) || ""
  36. let deptId = getUrlArgObjectNew("deptId", srcUrl) || ""
  37. let deptName = getUrlArgObjectNew("deptName", srcUrl) || ""
  38. let moduleName = getUrlArgObjectNew("moduleName", srcUrl) || ""
  39. let name = getUrlArgObjectNew("name", srcUrl) || ""
  40. let operationType = getUrlArgObjectNew("operationType", srcUrl) || ""
  41. let state = getUrlArgObjectNew("state", srcUrl) || ""
  42. let patientName = getUrlArgObjectNew("patientName", srcUrl) || ""
  43. let tabList = [], deptNameTemp = "",
  44. deptIdTemp = "",
  45. fpCheckStatusTemp = "", fpCheckNameTemp = "", qcCheckNameTemp = "",
  46. global_checkers = []; //审核人列表;
  47. let isPlacefile = getCookie('isPlacefile') || 1
  48. $('.datapickerBox').append(`<img class="iconCalen" src=${iconCalenGrey} />`)
  49. $('.iconCalen').on("mouseenter", function (e) {
  50. $(this).attr("src", iconCalenBlue)
  51. })
  52. $('.iconCalen').on("mouseleave", function (e) {
  53. $(this).attr("src", iconCalenGrey)
  54. })
  55. $('.iconCalen').on("click", function (e) {
  56. $(this).parent().find("input").focus()
  57. })
  58. $(".menu .page", parent.document).removeClass("active")
  59. $(parent.document).find(".menu .page[code=YH-SSXX-SSJL]").addClass("active")
  60. if (deptName) {
  61. $('.selectDept').html(deptName).attr("title",deptName)
  62. $(".selectDept").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
  63. }
  64. if (moduleName) {
  65. $('.selectModular').html(moduleName).attr("title",moduleName)
  66. $(".selectModular").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
  67. }
  68. if (operationType) {
  69. $('.selectType').html(operationType).attr("title",operationType)
  70. $(".selectType").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
  71. }
  72. if (state) {
  73. $('.qcSelectCheck').html(state).attr("title",state)
  74. $(".qcSelectCheck").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
  75. }
  76. if (name) {
  77. $('.name').val(name)
  78. }
  79. if (patientName) {
  80. $('.patientNameInp').val(patientName)
  81. }
  82. $(".name").on("input", function (e) {
  83. const val = $(this).val().trim()
  84. name = val
  85. })
  86. $(".patientNameInp").on("input", function (e) {
  87. const val = $(this).val().trim()
  88. patientName = val
  89. })
  90. function getTabData(activePage) {
  91. behosDateStart = getPickerDate($("#datepicker"), 1)
  92. behosDateEnd = getPickerDate($("#datepicker2"), 2)
  93. const param = {
  94. current: activePage,
  95. deptId: deptId.trim(),
  96. deptName: deptName == "全部" ? "" : deptName || '',
  97. modeName: moduleName == "全部" ? "" : moduleName || '',
  98. operationType: operationType,
  99. state: state,
  100. size: 15,
  101. name: name,
  102. patientName: patientName,
  103. complaintDateEnd: behosDateEnd.replace(/\//g, '-'),
  104. complaintDateStart: behosDateStart.replace(/\//g, '-'),
  105. "desc": ['claimant_gmt_create'],
  106. }
  107. $('.pagination').html("")
  108. $('.tbody').html(emptyBox('努力加载中...', '',))
  109. return post(api.getComplaintRecord, param).then(res => {
  110. if (res.data.code == '0') {
  111. tabList = res.data.data.records
  112. const totalPage = res.data.data.pages
  113. const totalNum = res.data.data.total
  114. renderTab(tabList)
  115. renderPagination(totalPage, Number(activePage), totalNum)
  116. if (totalPage > 1) {
  117. renderPagination(totalPage, Number(activePage), totalNum)
  118. } else {
  119. $('.pagination').html("")
  120. }
  121. } else {
  122. const token = localStorage.getItem('accessToken');
  123. if (!token && window.location.href.indexOf('login') == -1) {
  124. //alert('无token判断,跳回登录')
  125. } else {
  126. $.alerModal({ "message": res.data.msg, type: "tip", time: '1000', isFather: true, fatherWrapper: $("#mainBox", parent.document) });
  127. }
  128. }
  129. }).catch((e) => {
  130. })
  131. }
  132. $(".filter").on("click", function (e) {
  133. behosDateStart = $("#datepicker").val()
  134. behosDateEnd = $("#datepicker2").val()
  135. const behosDateStartTime = new Date(behosDateStart).getTime()
  136. const behosDateEndTime = new Date(behosDateEnd).getTime()
  137. if (behosDateStartTime > behosDateEndTime) {
  138. $.alerModal({ "message": '申诉时间开始时间不能大于结束时间~', type: "tip", time: '1000', isFather: true, fatherWrapper: $("#mainBox", parent.document) });
  139. return
  140. }
  141. if (behosDateStart) {
  142. behosDateStart = behosDateStart.replace(/\//g, '-') + ' 00:00:00'
  143. }
  144. if (behosDateEnd) {
  145. behosDateEnd = behosDateEnd.replace(/\//g, '-') + ' 23:59:59'
  146. }
  147. deptId = deptIdTemp
  148. deptName = deptNameTemp
  149. fpCheckName = fpCheckNameTemp
  150. qcCheckName = qcCheckNameTemp
  151. fpCheckStatus = fpCheckStatusTemp
  152. qcCheckStatus = state
  153. getTabData(1)
  154. })
  155. $(".abnormalClear").on("click", function (e) {
  156. page = 1
  157. tabList = [];
  158. scoreSum = 0;
  159. deptId = "";
  160. deptIdTemp = "";
  161. deptName = deptNameTemp = "";
  162. fpCheckName = "";
  163. qcCheckName = "";
  164. qcCheckMain = "";
  165. fpCheckNameTemp = "";
  166. qcCheckNameTemp = "";
  167. qcCheckMainTemp = "";
  168. fpCheckStatus = "";
  169. fpCheckStatusTemp = "";
  170. qcCheckStatus = "";
  171. state = ""
  172. operationType = ""
  173. moduleName = "",
  174. data_desc = ["leave_hospital_date"]
  175. if (isPlacefile != 1) {
  176. data_desc = ["behospital_date"]
  177. }
  178. data_asc = [];
  179. $('.patientNameInp').val('')
  180. $('.name').val(''),
  181. // $('#datepicker').val('')
  182. // $('#datepicker2').val('')
  183. //默认日期为近一周
  184. $("#datepicker").datepicker({
  185. changeMonth: true,
  186. changeYear: true,
  187. dateFormat: "yy/mm/dd",
  188. }).datepicker("setDate", "-6d");
  189. $("#datepicker2").datepicker({
  190. changeMonth: true,
  191. changeYear: true,
  192. dateFormat: "yy/mm/dd"
  193. }).datepicker("setDate", new Date());
  194. $("#datepickerFp1").datepicker({
  195. changeMonth: true,
  196. changeYear: true,
  197. dateFormat: "yy/mm/dd",
  198. }).datepicker("setDate", "");
  199. $("#datepickerFp2").datepicker({
  200. changeMonth: true,
  201. changeYear: true,
  202. dateFormat: "yy/mm/dd"
  203. }).datepicker("setDate", "");
  204. $("#datepickerQc1").datepicker({
  205. changeMonth: true,
  206. changeYear: true,
  207. dateFormat: "yy/mm/dd",
  208. }).datepicker("setDate", "");
  209. $("#datepickerQc2").datepicker({
  210. changeMonth: true,
  211. changeYear: true,
  212. dateFormat: "yy/mm/dd"
  213. }).datepicker("setDate", "");
  214. $('.selectDept ').html('全部')
  215. $(".deptList").css("display", "none")
  216. $(".selectDept").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
  217. // $('.selectDept ').addClass('unSelect')
  218. $('.selectModular').html('全部')
  219. $(".modularList").css("display", "none")
  220. $(".selectModular").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
  221. // $('.selectModular ').addClass('unSelect')
  222. $('.selectType').html('全部')
  223. $(".typeList ").css("display", "none")
  224. $(".selectType").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
  225. $('.qcSelectCheck').html('全部')
  226. $(".qcCheckList").css("display", "none")
  227. $(".qcSelectCheck").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
  228. $("th[code]").removeClass("asc desc")
  229. if (isPlacefile == 1) {
  230. $(".leaveHospitalDate").addClass(" desc")
  231. } else {
  232. $(".behospitalDate").addClass(" desc")
  233. }
  234. behosDateStart = $("#datepicker").val()
  235. behosDateEnd = $("#datepicker2").val()
  236. if (behosDateStart) {
  237. behosDateStart = behosDateStart.replace(/\//g, '-') + ' 00:00:00'
  238. }
  239. if (behosDateEnd) {
  240. behosDateEnd = behosDateEnd.replace(/\//g, '-') + ' 23:59:59'
  241. }
  242. getTabData(page)
  243. })
  244. getmoduleList()
  245. //获取模块类型
  246. function getmoduleList() {
  247. post(api.getAppealMode, { pageType: 1 }).then(res => {
  248. if (res.data.code == '0') {
  249. const moduleTypeList = res.data.data
  250. renderModuleList(moduleTypeList)
  251. } else { }
  252. }).catch((e) => {
  253. })
  254. }
  255. function renderModuleList(moduleTypeList) {
  256. let str = `<li class="modularItem " data-id="" data-name="全部">全部</li>`
  257. for (let i = 0; i < moduleTypeList.length; i++) {
  258. str += `<li class="modularItem ellipsis" title=${moduleTypeList[i].modeName} data-id=${moduleTypeList[i].modeId} data-name=${moduleTypeList[i].modeName}> ${moduleTypeList[i].modeName}</li>`
  259. }
  260. $('.modularList').html(str)
  261. bindModuleSelect()
  262. }
  263. //模块类型选择
  264. function bindModuleSelect() {
  265. $('.modularItem').on("click", function () {
  266. const modularItemName = $(this).attr("data-name")
  267. const modularItemItemId = $(this).attr("data-id")
  268. moduleName = modularItemName
  269. $('.selectModular').html(modularItemName)
  270. $(".modularList").css("display", "none")
  271. $(".selectModular").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
  272. $('.selectModular').removeClass('unSelect')
  273. })
  274. }
  275. getAppealReviewDictionary()
  276. //获取操作类型
  277. function getAppealReviewDictionary() {
  278. post(api.getAppealReviewDictionary).then(res => {
  279. if (res.data.code == '0') {
  280. const typeList = res.data.data['操作类型']
  281. const statusList = res.data.data['状态']
  282. renderTypeList(typeList)
  283. renderStatusList(statusList)
  284. } else { }
  285. }).catch((e) => {
  286. })
  287. }
  288. function renderTypeList(data) {
  289. let str = `<li class="typeItem " data-id="" data-name="全部">全部</li>`
  290. for (var i in data) {
  291. str += `<li class="typeItem ellipsis" title=${data[i]} data-id=${i} data-name=${data[i]}> ${data[i]}</li>`
  292. }
  293. $('.typeList').html(str)
  294. bindTypedSelect()
  295. if (operationType) {
  296. $('.selectType').html(data[operationType]).attr("title", data[operationType])
  297. $(".selectType").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
  298. }
  299. }
  300. //操作类型选择
  301. function bindTypedSelect() {
  302. $('.typeItem').on("click", function () {
  303. const typeItemName = $(this).attr("data-name")
  304. const typeItemItemId = $(this).attr("data-id")
  305. operationType = typeItemItemId
  306. $('.selectType').html(typeItemName)
  307. $(".typeList").css("display", "none")
  308. $(".selectType").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
  309. $('.selectType').removeClass('unSelect')
  310. })
  311. }
  312. function renderStatusList(data) {
  313. let str = `<li class="qcCheckItem " data-id="" data-name="全部">全部</li>`
  314. for (var i in data) {
  315. str += `<li class="qcCheckItem ellipsis" title=${data[i]} data-id=${i} data-name=${data[i]}> ${data[i]}</li>`
  316. }
  317. $('.qcCheckList').html(str)
  318. bindCheckedSelectQc()
  319. if (state) {
  320. $('.qcSelectCheck').html(data[state]).attr("title", data[state])
  321. $(".qcSelectCheck").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
  322. }
  323. }
  324. //状态
  325. function bindCheckedSelectQc() {
  326. $('.qcCheckItem').on("click", function () {
  327. const qcCheckItemName = $(this).attr("data-name")
  328. const qcCheckItemItemId = $(this).attr("data-id") || ""
  329. state = qcCheckItemItemId
  330. $('.qcSelectCheck').html(qcCheckItemName)
  331. $(".qcCheckList").css("display", "none")
  332. $(".qcSelectCheck").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
  333. $('.qcSelectCheck').removeClass('unSelect')
  334. })
  335. }
  336. //获取审核人下拉列表
  337. function getCheckUser() {
  338. const param = {};
  339. post(api.getReviewer, param).then(function (res) {
  340. if (res.data.code === '0') {
  341. const data = res.data.data;
  342. global_checkers = data;
  343. $("#delModal .checker-drop-box ul").html("");
  344. $("#flawDropTmpl").tmpl({ info: data }).appendTo("#delModal .checker-drop-box ul");
  345. userDropEvent(".checker-drop-input", selectChecker);
  346. }
  347. });
  348. }
  349. function userDropEvent(domSelector, selectEvent) {
  350. // $("body").on("click", domSelector, function (e) {
  351. // e.stopPropagation()
  352. // $(domSelector).parents(".drop-box").addClass("show");
  353. // });
  354. $("body").on("click", ".checker-drop-box li", function () {
  355. $(".add-box .warning").hide();
  356. const n = $(this).attr("idx");
  357. selectEvent(domSelector, n);
  358. $(domSelector).parents(".drop-box").find(".warning").hide();
  359. $(domSelector).parents(".drop-box").removeClass("show");
  360. });
  361. }
  362. $(document).on("click", ".checker-drop-input", (e) => {
  363. e.stopPropagation()
  364. const showList = $("#delModal ul").css("display")
  365. if (showList == "none" || !showList) {
  366. $("#delModal ul").css("display", "block")
  367. } else {
  368. $("#delModal ul").css("display", "none")
  369. }
  370. });
  371. $(document).on("click", ".infoItem", (e) => {
  372. e.stopPropagation()
  373. $("#delModal ul").css("display", "none")
  374. });
  375. //审核人下拉选中
  376. function selectChecker(domSelector, n) {
  377. const flaw = global_checkers[n];
  378. const { id, userName } = flaw;
  379. $(domSelector).text(userName).attr({ "code": id, "title": userName });
  380. }
  381. function renderTab(data) {
  382. let str = ``
  383. if (data.length === 0) {
  384. $('.tbody').html(emptyBox(null, showNum + 12))
  385. return;
  386. }
  387. for (let i = 0; i < data.length; i++) {
  388. const item = data[i]
  389. str += `
  390. <tr>
  391. <td >${item.claimantName || "-"}</td>
  392. <td >${item.behDeptName || "-"}</td>
  393. <td >${item.claimantGmtCreate}</td>
  394. <td >${item.behospitalCode}</td>
  395. <td >${item.name || "-"}</td>
  396. <td >${item.modeName || "-"}</td>
  397. <td >${item.qcresultDetailMsg || "-"}</td>
  398. <td >${item.checkName || "-"}</td>
  399. <td >${item.checkGmtCreate || "-"}</td>
  400. <td >${item.appealOperationType == 0 ? '删改条目' : item.appealOperationType == 1 ? '新增已有条目' : item.appealOperationType == 2 ? '新增缺失条目' : '恢复条目'}</td>
  401. <td >${item.exampleStatus == 0 ? '<span class="review"><i></i>待审核</span>' : item.exampleStatus == 1 ? '<span class="rejected"><i></i>已驳回</span>' : '<span class="approved"><i></i>审核通过</span>'}</td>
  402. <td data-id="${item.id || ""}" data-hos="${item.hospitalId || ""}" data-behospitalCode="${item.behospitalCode || ""}" data-casesEntryId="${item.casesEntryId || ""}" data-qcresultDetailId="${item.qcresultDetailId || ""}" data-appealOperationType="${item.appealOperationType || ""}" data-index=${i}>
  403. ${item.exampleStatus == 0 ? `<span class="appealBtn goHomeDetail1">查看</span><span class="appealBtn withdraw" >撤回</span>` : ''}
  404. ${item.exampleStatus == 1 || item.exampleStatus == 2 ? `<span class="appealBtn goHomeDetail1">查看</span><span class="appealBtn appealAgain">再次申诉</span>` : ''}
  405. </td>
  406. </tr>
  407. `
  408. }
  409. $('.tbody').html(str)
  410. $(".withdraw").click(function () {
  411. let id = $(this).parent().attr("data-id")
  412. $("#delModal .modal-body").html("确定撤回该申诉?<br/>注:第一次提交的申诉撤回后,记录将被删除。");
  413. $("#delModal").show();
  414. $("#delModal .confirm").text("确定").unbind("click").click(function () {
  415. cancelAppealInfo(id)
  416. });
  417. })
  418. $(".appealAgain").click(function () {
  419. let i = $(this).parent().attr("data-index")
  420. let item = JSON.parse(JSON.stringify(data[i]))
  421. getAppealOperationType(item)
  422. })
  423. $(".goHomeDetail1").click(function () {
  424. let id = $(this).parent().attr("data-id")
  425. let hospitalId = $(this).parent().attr("data-hos")
  426. let behospitalCode = $(this).parent().attr("data-behospitalCode")
  427. let casesEntryId = $(this).parent().attr("data-casesEntryId")
  428. let qcresultDetailId = $(this).parent().attr("data-qcresultDetailId")
  429. let appealOperationType = $(this).parent().attr("data-appealOperationType")
  430. $(parent.document).find("#contentIframe").attr("src", "appealExamine.html?id=" + id + "&name=" + name + "&patientName=" + patientName + "&operationType=" + operationType + "&state=" + state + "&hospitalId=" + hospitalId + "&behospitalCode=" + behospitalCode + "&casesEntryId=" + casesEntryId + "&qcresultDetailId=" + qcresultDetailId + "&appealOperationType=" + appealOperationType + "&page=" + page + "&behosDateStart=" + behosDateStart + "&behosDateEnd=" + behosDateEnd + "&deptId=" + deptId + "&deptName=" + deptName + "&moduleName=" + moduleName + "&form=" + 3)
  431. })
  432. }
  433. function getComplaintDetailMsg(data) {
  434. post(api.getComplaintDetailMsg, { behospitalCode: data.behospitalCode, casesEntryId: data.casesEntryId, id: data.qcresultDetailId }).then(function (res) {
  435. if (res.data.code === '0') {
  436. data.qcresultDetailMsg = res.data.data.msg
  437. data.qcresultDetaiValue = res.data.data.score
  438. data.value = res.data.data.score,
  439. data.remark = res.data.data.explainInfo,
  440. $("#delModal").show();
  441. getCheckUser()
  442. $("#delModal .modal-body").html("");
  443. $("#appealDef").tmpl(data).appendTo("#delModal .modal-body");
  444. $("#delModal .confirm").text("确定").unbind("click").click(function () {
  445. addAppealInfo(data)
  446. });
  447. } else {
  448. $.alerModal({ "message": res.data.msg || '失败,请重试~', type: "tip", time: '1000', win: 'warn' });
  449. }
  450. }).catch(() => {
  451. $.alerModal({ "message": '失败,请重试~', type: "tip", time: '1000', win: 'default' });
  452. });
  453. }
  454. function getAppealOperationType(data) {
  455. post(api.getAppealOperationType, { appealOperationType: data.appealOperationType, exampleStatus: data.exampleStatus, qcresultDetailId: data.qcresultDetailId }).then(function (res) {
  456. if (res.data.code === '0') {
  457. if (data.appealOperationType == '2') {
  458. $("#delModal").show();
  459. getCheckUser()
  460. $("#delModal .modal-body").html("");
  461. $("#appealDef").tmpl(data).appendTo("#delModal .modal-body");
  462. $("#delModal .confirm").text("确定").unbind("click").click(function () {
  463. addAppealInfo(data)
  464. });
  465. } else {
  466. data.appealOperationType = res.data.data.appealOperationType
  467. getComplaintDetailMsg(data)
  468. }
  469. // $("#delModal .modal-body").html("");
  470. // $("#delModal").show();
  471. // $("#appealDef").tmpl(data).appendTo("#delModal .modal-body");
  472. // $("#delModal .confirm").text("确定").unbind("click").click(function () {
  473. // addAppealInfo(data)
  474. // });
  475. } else {
  476. $.alerModal({ "message": res.data.msg || '失败,请重试~', type: "tip", time: '1000', win: 'warn' });
  477. }
  478. }).catch(() => {
  479. $.alerModal({ "message": '失败,请重试~', type: "tip", time: '1000', win: 'default' });
  480. });
  481. }
  482. function cancelAppealInfo(id) {
  483. post(api.cancelAppealInfo, { id: id }).then(function (res) {
  484. if (res.data.code === '0') {
  485. getTabData(page)
  486. $("#delModal").hide();
  487. $.alerModal({ "message": "撤回成功", type: "tip", time: '1000', win: true });
  488. } else {
  489. $.alerModal({ "message": res.data.msg || '失败,请重试~', type: "tip", time: '1000', win: 'default' });
  490. }
  491. }).catch(() => {
  492. $.alerModal({ "message": '失败,请重试~', type: "tip", time: '1000', win: 'default' });
  493. });
  494. }
  495. //再次申诉
  496. function addAppealInfo(data) {
  497. $(".warning").hide();
  498. let val = $(".textarea").val()
  499. let num = 500
  500. if (!val) {
  501. $(".warning .red").text("申诉说明不能为空~");
  502. $(".warning").show();
  503. return
  504. } else if (val.length > num) {
  505. $(".warning .red").text("申诉说明不能超过" + num + "个字~");
  506. $(".warning").show();
  507. return
  508. }
  509. const param = {
  510. appealExplain: $(".textarea").val(),
  511. appealOperationType: data.appealOperationType,
  512. behospitalCode: data.behospitalCode,
  513. checkId: $(".checker-drop-input").attr("code"),
  514. appealType: 1,
  515. qcresultDetailId: data.qcresultDetailId,
  516. isReject: data.isReject,
  517. modeId: data.modeId,
  518. casesScore: data.casesScore,
  519. casesEntryId: data.casesEntryId,
  520. qcresultDetaiValue: data.qcresultDetaiValue,
  521. qcresultDetailMsg: data.qcresultDetailMsg,
  522. casesEntryMsg: data.qcresultDetailMsg,
  523. msg: data.msg,
  524. value: data.value,
  525. remark: data.remark,
  526. }
  527. post(api.addAppealInfo, param).then(function (res) {
  528. if (res.data.code === '0') {
  529. getTabData(page)
  530. $("#delModal").hide();
  531. $.alerModal({ "message": "申诉成功", type: "tip", time: '1000', win: true });
  532. } else {
  533. $.alerModal({ "message": res.data.msg || '失败,请重试~', type: "tip", time: '1000', win: 'default' });
  534. }
  535. }).catch(() => {
  536. $.alerModal({ "message": '失败,请重试~', type: "tip", time: '1000', win: 'default' });
  537. });
  538. }
  539. //选择申诉模块
  540. $('.selectModular').on("click", function (e) {
  541. e.stopPropagation()
  542. $(".typeList ").css("display", "none")
  543. $(".selectType .arrow").attr("src", iconDown)
  544. $(".deptList ").css("display", "none")
  545. $(".selectDept .arrow").attr("src", iconDown)
  546. $(".qcSelectCheck .arrow").attr("src", iconDown)
  547. $(".qcCheckList ").css("display", "none")
  548. const showList = $(".modularList ").css("display")
  549. if (showList == "none" || !showList) {
  550. $(".modularList ").css("display", "block")
  551. $(".selectModular .arrow").attr("src", iconUp)
  552. } else {
  553. $(".modularList ").css("display", "none")
  554. $(".selectModular .arrow").attr("src", iconDown)
  555. }
  556. })
  557. //操作类型
  558. $('.selectType').on("click", function (e) {
  559. e.stopPropagation()
  560. $(".deptList ").css("display", "none")
  561. $(".selectDept .arrow").attr("src", iconDown)
  562. $(".qcSelectCheck .arrow").attr("src", iconDown)
  563. $(".qcCheckList ").css("display", "none")
  564. $(".modularList ").css("display", "none")
  565. $(".selectModular .arrow").attr("src", iconDown)
  566. const showList = $(".typeList ").css("display")
  567. if (showList == "none" || !showList) {
  568. $(".typeList ").css("display", "block")
  569. $(".selectType .arrow").attr("src", iconUp)
  570. } else {
  571. $(".typeList ").css("display", "none")
  572. $(".selectType .arrow").attr("src", iconDown)
  573. }
  574. })
  575. //选择状态
  576. $('.qcSelectCheck').on("click", function (e) {
  577. e.stopPropagation()
  578. $(".typeList ").css("display", "none")
  579. $(".selectType .arrow").attr("src", iconDown)
  580. $(".deptList ").css("display", "none")
  581. $(".selectDept .arrow").attr("src", iconDown)
  582. $(".modularList ").css("display", "none")
  583. $(".selectModular .arrow").attr("src", iconDown)
  584. const showList = $(".qcCheckList ").css("display")
  585. if (showList == "none" || !showList) {
  586. $(".qcCheckList ").css("display", "block")
  587. $(".qcSelectCheck .arrow").attr("src", iconUp)
  588. } else {
  589. $(".qcCheckList ").css("display", "none")
  590. $(".qcSelectCheck .arrow").attr("src", iconDown)
  591. }
  592. })
  593. $('.selectDept').on("click", function (e) {
  594. e.stopPropagation()
  595. $(".typeList ").css("display", "none")
  596. $(".selectType .arrow").attr("src", iconDown)
  597. $(".modularList ").css("display", "none")
  598. $(".selectModular .arrow").attr("src", iconDown)
  599. $(".qcCheckList ").css("display", "none")
  600. $(".qcSelectCheck .arrow").attr("src", iconDown)
  601. const showList = $(".deptList ").css("display")
  602. if (showList == "none" || !showList) {
  603. $(".deptList ").css("display", "block")
  604. $(".selectDept .arrow").attr("src", iconUp)
  605. } else {
  606. $(".deptList ").css("display", "none")
  607. $(".selectDept .arrow").attr("src", iconDown)
  608. }
  609. })
  610. //获取科室列表
  611. getDeptList()
  612. function getDeptList() {
  613. post(api.getAppealDept, { inputStr: "", pageType: 1 }).then(res => {
  614. if (res.data.code == '0') {
  615. const deptList = res.data.data
  616. rendeDeptList(deptList)
  617. } else { }
  618. }).catch((e) => {
  619. })
  620. }
  621. function rendeDeptList(deptList) {
  622. let str = `<li class="deptItem ellipsis" data-id=" " data-name="全部">全部</li>`
  623. for (let i = 0; i < deptList.length; i++) {
  624. str += `<li class="deptItem ellipsis" title=${deptList[i].deptName} data-id=${deptList[i].deptId} data-name=${deptList[i].deptName}> ${deptList[i].deptName}</li>`
  625. }
  626. $('.deptList').html(str)
  627. bindDeptSelect()
  628. }
  629. //科室选择
  630. function bindDeptSelect() {
  631. $('.deptItem').on("click", function () {
  632. const deptItemName = $(this).attr("data-name")
  633. const deptItemId = $(this).attr("data-id")
  634. deptIdTemp = deptItemId
  635. deptName = deptNameTemp = deptItemName
  636. if (deptItemName.length > 10) {
  637. $('.selectDept').html(deptItemName.substring(0, 8) + '...')
  638. } else {
  639. $('.selectDept').html(deptItemName)
  640. }
  641. $('.selectDept ').attr('title', deptItemName)
  642. $(".selectDept").append(`<img class="arrow" src=${iconDown} alt="下拉">`)
  643. $('.selectDept').removeClass('unSelect')
  644. $(".deptList").css("display", "none")
  645. })
  646. }
  647. function renderColSet(list) {
  648. let pageSetList = list || pageSetCopy
  649. let allSelect = true
  650. for (let i = 0; i < pageSetList.length; i++) {
  651. if (pageSetList[i].status != 1) {
  652. allSelect = false
  653. }
  654. }
  655. let str = `<div class='colSetBox'>
  656. <div class='mask'></div>
  657. <div class='cloInfobox'>
  658. <div class='cloInfoTitle'><span class='cloInfoTitleTxt'>列显示设置</span> <img class="iconClose" src=${require('./../images/icon_close_default.png')} alt="关闭" /></div>
  659. <div class='cloInfo'></div>
  660. <div class='btnBox'><span class='defaultColSet'>恢复默认</span> <span class='cancalColSet'>取消</span> <span class='saveColSet'>保存设置</span></div>
  661. </div>
  662. </div>`
  663. let infoStr = `<div class='colTabTitle' ><span class='colOpera toggleSelectColAll' data-select=${allSelect}>${allSelect ? `<img src=${iconCheck} />` : `<img src=${iconUnCheck} />`}全选</span><span class='colName'>列名</span></div><div class='colTabInfoBox' >`
  664. for (let i = 0; i < pageSetList.length; i++) {
  665. infoStr += `<div class='colTabInfo' data-index=${i}>
  666. <span class='colOpera' data-index=${i}>${pageSetList[i].status == 1 ? `<img class="toggleSelectCol" src=${iconCheck} />` : `<img class="toggleSelectCol" src=${iconUnCheck} />`}</span>
  667. <span class='colName'>
  668. <span>${pageSetList[i].name}</span>
  669. <span class="pageOrder">
  670. <span class="pageSetUpBox">${i === 0 ? '' : `<img class="pageSetUp" src=${goUpG} />`}</span>
  671. <span class="pageSetDownBox">${i === pageSetList.length - 1 ? '' : `<img class="pageSetDown" src=${goDownG} />`}</span>
  672. </span>
  673. </span>
  674. </div>`
  675. }
  676. infoStr += "</div>"
  677. // $(".main-body").append(str)
  678. if (!$("#mainBox .colSetBox", parent.document).length) {
  679. $("#mainBox", parent.document).append(str)
  680. }
  681. $("#mainBox .colSetBox .cloInfo", parent.document).html(infoStr)
  682. $(".colTabInfoBox", parent.document).scrollTop(scrollTop)
  683. scrollTop = 0
  684. bindSelectCol()
  685. bindColOrder()
  686. bindSaveColSet()
  687. bindDefaultColset()
  688. bindCloseColSet()
  689. bindImgEnter()
  690. }
  691. function bindDefaultColset() {
  692. $('.defaultColSet', parent.document).off("hover").hover(function () {
  693. $(this).css('color', '#00A1FF')
  694. }, function () {
  695. $(this).css('color', '#777777')
  696. })
  697. $('.defaultColSet', parent.document).off("click").on('click', function () {
  698. return post(api.getDefaultPageSet, { pageType: 1 }).then(res => {
  699. if (res.data.code == '0') {
  700. pageSet = res.data.data
  701. pageSetCopy = JSON.parse(JSON.stringify(pageSet))
  702. renderColSet(pageSetCopy)
  703. } else { }
  704. }).catch((e) => {
  705. })
  706. // closeColSet()
  707. })
  708. }
  709. function bindImgEnter() {
  710. $(".pageSetUpBox img", parent.document).off("mouseenter").on("mouseenter", function () {
  711. $(this).attr('src', goUpB)
  712. })
  713. $(".pageSetDownBox img", parent.document).off("mouseenter").on("mouseenter", function () {
  714. $(this).attr('src', goDownB)
  715. })
  716. $(".pageSetUpBox img", parent.document).off("mouseout").on("mouseout", function () {
  717. $(this).attr('src', goUpG)
  718. })
  719. $(".pageSetDownBox img", parent.document).off("mouseout").on("mouseout", function () {
  720. $(this).attr('src', goDownG)
  721. })
  722. }
  723. function bindSelectCol() {
  724. $(".toggleSelectCol", parent.document).off("click").on("click", function () {
  725. const index = $(this).parent().attr("data-index")
  726. pageSetCopy[index].status = pageSetCopy[index].status == 1 ? 0 : 1
  727. scrollTop = $(".colTabInfoBox", parent.document).scrollTop()
  728. renderColSet(pageSetCopy)
  729. })
  730. $(".toggleSelectColAll", parent.document).off("click").on("click", function () {
  731. const hasSelectAll = $(this).attr("data-select")
  732. for (let i = 0; i < pageSetCopy.length; i++) {
  733. if (hasSelectAll == "true") {
  734. pageSetCopy[i].status = 0
  735. } else {
  736. pageSetCopy[i].status = 1
  737. }
  738. }
  739. scrollTop = $(".colTabInfoBox", parent.document).scrollTop()
  740. renderColSet(pageSetCopy)
  741. })
  742. }
  743. function closeColSet() {
  744. pageSetCopy = JSON.parse(JSON.stringify(pageSet))
  745. $("#mainBox .colSetBox", parent.document).remove()
  746. }
  747. function bindCloseColSet() {
  748. $(".colSetBox .iconClose", parent.document).off("click").on("click", function () {
  749. closeColSet()
  750. })
  751. $(".colSetBox .cancalColSet", parent.document).off("click").on("click", function () {
  752. closeColSet()
  753. })
  754. }
  755. function bindSaveColSet() {
  756. $(".saveColSet", parent.document).off("click").on("click", function () {
  757. let showNumSet = 0
  758. let sysUserPagesetVOList = []
  759. for (let i = 0; i < pageSetCopy.length; i++) {
  760. const item = pageSetCopy[i]
  761. sysUserPagesetVOList.push({
  762. name: item.name,
  763. orderNo: i,
  764. status: item.status,
  765. val: item.val
  766. })
  767. if (item.status == 1) {
  768. showNumSet++
  769. }
  770. }
  771. if (showNumSet === 0) {
  772. $.alerModal({ "message": '最少显示一列', type: "tip", time: '1000', isFather: true, fatherWrapper: $("#mainBox", parent.document) });
  773. return
  774. }
  775. return post(api.saveQcListPageSet, { pageType: 1, sysUserPagesetVOList: sysUserPagesetVOList }).then(res => {
  776. if (res.data.code == '0') {
  777. closeColSet()
  778. } else {
  779. $("#mainBox .colSetBox", parent.document).remove()
  780. $.alerModal({ "message": '保存失败,请重试~', type: "tip", time: '1000', isFather: true, fatherWrapper: $("#mainBox", parent.document) });
  781. }
  782. }).catch((e) => {
  783. $("#mainBox .colSetBox", parent.document).remove()
  784. $.alerModal({ "message": '保存失败,请重试~', type: "tip", time: '1000', isFather: true, fatherWrapper: $("#mainBox", parent.document) });
  785. })
  786. })
  787. }
  788. function bindColOrder() {
  789. $(".pageSetUp", parent.document).off("click").on("click", function () {
  790. const index = parseInt($(this).parent().parent().parent().parent().attr("data-index"))
  791. if (index != 0) {
  792. const upItem = pageSetCopy[index]
  793. const upItemPre = pageSetCopy[index - 1]
  794. pageSetCopy.splice(index - 1, 2, upItem, upItemPre)
  795. scrollTop = $(".colTabInfoBox", parent.document).scrollTop()
  796. renderColSet(pageSetCopy)
  797. } else {
  798. return
  799. }
  800. })
  801. $(".pageSetDown", parent.document).off("click").on("click", function () {
  802. const index = parseInt($(this).parent().parent().parent().parent().attr("data-index"))
  803. if (index == pageSetCopy.length - 1) {
  804. return
  805. } else {
  806. const downItem = pageSetCopy[index]
  807. const downItemBack = pageSetCopy[index + 1]
  808. pageSetCopy.splice(index, 2, downItemBack, downItem)
  809. scrollTop = $(".colTabInfoBox", parent.document).scrollTop()
  810. renderColSet(pageSetCopy)
  811. }
  812. })
  813. }
  814. $(function () {
  815. $.datepicker.regional['zh-CN'] = {
  816. clearText: '清除',
  817. clearStatus: '清除已选e799bee5baa6e59b9ee7ad9431333361303131日期',
  818. closeText: '关闭',
  819. closeStatus: '不改变当前选择',
  820. prevText: '<上月',
  821. prevStatus: '显示上月',
  822. prevBigText: '<<',
  823. prevBigStatus: '显示上一年',
  824. nextText: '下月>',
  825. nextStatus: '显示下月',
  826. nextBigText: '>>',
  827. nextBigStatus: '显示下一年',
  828. currentText: '今天',
  829. currentStatus: '显示本月',
  830. monthNames: ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'],
  831. monthNamesShort: ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'],
  832. yearNamesShort: ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'],
  833. monthStatus: '选择月份',
  834. yearStatus: '选择年份',
  835. weekHeader: '周',
  836. weekStatus: '年内周次',
  837. dayNames: ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'],
  838. dayNamesShort: ['周日', '周一', '周二', '周三', '周四', '周五', '周六'],
  839. dayNamesMin: ['日', '一', '二', '三', '四', '五', '六'],
  840. dayStatus: '设置 DD 为一周起始',
  841. dateStatus: '选择 m月 d日, DD',
  842. dateFormat: 'yy-mm-dd',
  843. firstDay: 1,
  844. initStatus: '请选择日期',
  845. isRTL: false
  846. };
  847. $.datepicker.setDefaults($.datepicker.regional['zh-CN']);
  848. let startDate = "", endDate = new Date()
  849. let year = new Date().getFullYear()
  850. let month = new Date().getMonth() + 1
  851. if (statisticsType == '1') {
  852. startDate = new Date(`${year}-${month}-01`)
  853. } else if (statisticsType == '2') {
  854. startDate = new Date(`${year}-01-01`)
  855. } else if (statisticsType == '3') {
  856. startDate = new Date(behosDateStart)
  857. endDate = new Date(behosDateEnd)
  858. } else {
  859. startDate = "-6d"
  860. }
  861. if (behosDateStart && behosDateEnd) {
  862. startDate = new Date(behosDateStart)
  863. endDate = new Date(behosDateEnd)
  864. }
  865. $("#datepicker").datepicker({
  866. changeMonth: true,
  867. changeYear: true,
  868. dateFormat: "yy/mm/dd",
  869. }).datepicker("setDate", startDate);
  870. $("#datepicker2").datepicker({
  871. changeMonth: true,
  872. changeYear: true,
  873. dateFormat: "yy/mm/dd"
  874. }).datepicker("setDate", endDate);
  875. getTabData(page)
  876. });
  877. //分页渲染
  878. function renderPagination(totalPage, activePage, totalNum) {
  879. let str = `<span class="totalSum">共${totalPage}页/${totalNum}条数据</span><span class="prePage"><img class="arrowPage" src=${arrowLeft} /></span>`
  880. if (totalPage <= 6) {
  881. for (let i = 1; i <= totalPage; i++) {
  882. str += `<span class="pageNum ${'page' + i}" data-page=${i}>${i}</span>`
  883. }
  884. } else {
  885. if (activePage <= 3) { //选中页数小于4
  886. for (let i = 1; i <= 4; i++) {
  887. str += `<span class="pageNum ${'page' + i}" data-page=${i}>${i}</span>`
  888. }
  889. str += `<span class="more" >...</span>`
  890. str += `<span class="pageNum ${'page' + totalPage}" data-page=${totalPage}>${totalPage}</span>`
  891. } else if (activePage > totalPage - 3) {
  892. str += `<span class="pageNum page1" data-page=1>1</span>`
  893. str += `<span class="more" >...</span>`
  894. str += `<span class="pageNum ${'page' + (totalPage - 3)}" data-page=${totalPage - 3}>${totalPage - 3}</span>`
  895. str += `<span class="pageNum ${'page' + (totalPage - 2)}" data-page=${totalPage - 2}>${totalPage - 2}</span>`
  896. str += `<span class="pageNum ${'page' + (totalPage - 1)}" data-page=${totalPage - 1}>${totalPage - 1}</span>`
  897. str += `<span class="pageNum ${'page' + totalPage}" data-page=${totalPage}>${totalPage}</span>`
  898. } else {
  899. str += `<span class="pageNum page1" data-page=1>1</span>`
  900. str += `<span class="more" >...</span>`
  901. str += `<span class="pageNum ${'page' + (activePage - 1)}" data-page=${activePage - 1}>${activePage - 1}</span>`
  902. str += `<span class="pageNum ${'page' + activePage}" data-page=${activePage}>${activePage}</span>`
  903. str += `<span class="pageNum ${'page' + (activePage + 1)}" data-page=${activePage + 1}>${activePage + 1}</span>`
  904. str += `<span class="more" >...</span>`
  905. str += `<span class="pageNum ${'page' + totalPage}" data-page=${totalPage}>${totalPage}</span>`
  906. }
  907. }
  908. str += `<span class="nextPage"><img class="arrowPage" src=${arrowRight} /></span>`
  909. $('.pagination').html(str)
  910. $('.page' + activePage).addClass('activePage')
  911. $(".pageNum").on("click", function (e) {
  912. const activePageNow = Number($(this).attr('data-page'))
  913. page = activePageNow
  914. getTabData(activePageNow)
  915. // renderPagination(totalPage,activePageNow,totalNum)
  916. })
  917. $(".prePage").on("click", function (e) {
  918. let activePageNow = Number($(".activePage").attr('data-page'))
  919. page = activePageNow
  920. if (activePageNow > 1) {
  921. activePageNow--
  922. getTabData(activePageNow)
  923. // renderPagination(totalPage,activePageNow,totalNum)
  924. }
  925. })
  926. $(".nextPage").on("click", function (e) {
  927. let activePageNow = Number($(".activePage").attr('data-page'))
  928. page = activePageNow
  929. if (activePageNow < totalPage) {
  930. activePageNow++
  931. getTabData(activePageNow)
  932. // renderPagination(totalPage,activePageNow,totalNum)
  933. }
  934. })
  935. }
  936. $(document).on("click", function () {
  937. $(".typeList ").css("display", "none")
  938. $(".modularList ").css("display", "none")
  939. $(".deptList").css("display", "none")
  940. $(".qcCheckList").css("display", "none")
  941. $(".selectDept .arrow").attr("src", iconDown)
  942. $(".selectModular .arrow").attr("src", iconDown)
  943. $(".qcSelectCheck .arrow").attr("src", iconDown)
  944. $(".selectType .arrow").attr("src", iconDown)
  945. $("#delModal ul").css("display", "none")
  946. })
  947. let radioCheck = 1;
  948. $((function ($) {
  949. $('.export').click(function () {
  950. const behosDateStartTime = new Date(behosDateStart).getTime()
  951. const behosDateEndTime = new Date(behosDateEnd).getTime()
  952. if (behosDateStartTime > behosDateEndTime) {
  953. $.alerModal({ "message": '开始时间不能大于结束时间~', type: "tip", time: '1000', isFather: true, fatherWrapper: $("#mainBox", parent.document) });
  954. return
  955. }
  956. const param = {
  957. deptId: deptId.trim(),
  958. deptName: deptName == "全部" ? "" : deptName || '',
  959. modeName: moduleName == "全部" ? "" : moduleName || '',
  960. operationType: operationType,
  961. isPlacefile: isPlacefile,
  962. state: state,
  963. size: 15,
  964. name: $('.name').val(),
  965. patientName: $('.patientNameInp').val(),
  966. complaintDateEnd: behosDateEnd.replaceAll("/", "-"),
  967. complaintDateStart: behosDateStart.replaceAll("/", "-"),
  968. "desc": ['claimant_gmt_create']
  969. }
  970. expJson(api.getComplaintRecordExport, param).then(res => {
  971. downloadExportedData(res.data, "申诉记录.xls")
  972. })
  973. })
  974. })($));