const $ = require('jquery'); require("../css/other.less"); require('./../resource/jquery-ui/jquery-ui.min.js'); require('./modal.js'); const { api } = require('./api.js') const { post, getCookie, getUrlArgObjectNew, emptyBox, focusMenuItem, setDatePicker, getPickerDate, downloadExportedData, expJson, initScroll, listenScroll } = require('./utils.js') const switchIconOpen = require("./../images/btn_open.png") const switchIconClose = require("./../images/btn_close.png") const iconDown = require("./../images/arrow_down.png") const iconUp = require("./../images/arrow_up.png") const arrowLeft = require("./../images/arrow_left.png") const arrowRight = require("./../images/arrow_right.png") let isPlacefile = getCookie('isPlacefile') || 1 const currentPage = $(window.parent.document).find(".menu .page.active").attr("code"); if (currentPage === "YH-ZKK-TMQXZB_XQ") { $(".export").css("display", "inline-block"); } listenScroll('.adviceWrp') let casesId = "", adviceShow = '1', fpCheckStatus = "", fpCheckStatusTemp = "", name = "", medic = "", medicTemp = "", names = "", isReject = "", deptName = "", startDateParam = "", data_asc = [], data_desc = ['recDate'], endDateParam = "", isUsed = "", casesIdTemp = "", nameTemp = "", nameTemps = "", isRejectTemp = "", model = '', isUsedTemp = "", from = "", deptIdTemp = "", deptItemId = "", deptId = "", isSingleReject = "", isSingleRejectTemp = "", casesName = "", casesNameTemp = "", paramObj = {} $(".selectModuleType").append(`下拉`) $(".selectReject").append(`下拉`) $(".selectUsed").append(`下拉`) $(".selectDept").append(`下拉`) $(".fpSelectCheck").append(`下拉`) let deptList = JSON.parse(getCookie("deptList")) || [] $(function () { dateChange() let srcUrl = window.parent.location.href let srcUrlSon = window.location.href perId = getUrlArgObjectNew("id", srcUrl) || "" isRejectTemp = isReject = getUrlArgObjectNew("shijian", srcUrl) || "" selectReject = getUrlArgObjectNew("selectReject", srcUrl) || "" from = getUrlArgObjectNew("from", srcUrl) || "" special = getUrlArgObjectNew("special", srcUrl) || "" name = nameTemp = getUrlArgObjectNew("qxName", srcUrl) || "" casesName = casesNameTemp = getUrlArgObjectNew("model", srcUrl) || "" startDateParam = getUrlArgObjectNew("startDateParam", srcUrl) || "" endDateParam = getUrlArgObjectNew("endDateParam", srcUrl) || "" adviceShow = getUrlArgObjectNew("adviceShow", srcUrlSon) || "1" let fromThree = getUrlArgObjectNew("fromThree", srcUrl) || "" if (name) { $(".moduleItemInp").attr("title", name).val(name) selectReject = 1 } if (adviceShow) { $(".whichAdvice span[data-type=" + adviceShow + "]").addClass('active').siblings('span').removeClass('active') } if (casesName) { $(".selectModuleType").html(casesName).attr("title", casesName).append(`下拉`) } if (selectReject) { isSingleReject = isSingleRejectTemp = '1' $(".selectReject").html("是").append(`下拉`) } if (special) { $(".singleVeto .partTitle .pices span").html("条目缺陷占比") } $(".partTitle a").click(function () { //初始菜单选中 $(".managerContainer").remove() if (from == 2) { focusMenuItem('YH-KZTKS') } else { focusMenuItem('YH-KZT') } $(".container", parent.document).addClass("console-cont"); }) $(".abnormalClear").click(function () { // window.location.reload() setDatePicker($("#datepicker"), $("#datepicker2"), "default") $(".selectModuleType").html("全部") $(".selectReject").html("全部") $('.fpSelectCheck').html('全部') $(".fpCheckList").css("display", "none") $(".fpSelectCheck").append(`下拉`) $(".selectModuleType").append(`下拉`) $(".selectReject").append(`下拉`) name = "" names = "" casesName = casesNameTemp = "" casesId = casesIdTemp = "" isSingleReject = isSingleRejectTemp = "" fpCheckStatus = fpCheckStatusTemp = ""; data_asc = [], data_desc = ['recDate'] $("th[code]").removeClass("asc desc").addClass("desc"); $(".moduleItemInp").val("") $(".moduleItemInps").val("") $(".moduleMedicInp").val("") getTabData(1) }) if (isReject == 1) { $(".monthYear .mon").css({ backgroundColor: '#00A1FF', color: '#fff' }).siblings().css({ color: '#00A1FF', backgroundColor: '#fff' }) setDatePicker($("#datepicker"), $("#datepicker2"), 1) } else if (isReject == 2) { $(".monthYear .year").css({ backgroundColor: '#00A1FF', color: '#fff' }).siblings().css({ color: '#00A1FF', backgroundColor: '#fff' }) setDatePicker($("#datepicker"), $("#datepicker2"), 2) } else if (isReject == 3) { setDatePicker($("#datepicker"), $("#datepicker2"), 3, new Date(startDateParam), new Date(endDateParam)) } else { setDatePicker($("#datepicker"), $("#datepicker2"), "default") } if (!isReject) { setDatePicker($("#datepicker"), $("#datepicker2"), "default") } getTabData(1)//条目缺陷 }) bindDeptSelect() //科室选择 function bindDeptSelect() { $(document).on("click", '.deptItem', function () { const deptItemName = $(this).attr("data-name") const deptItemId = $(this).attr("data-id") deptIdTemp = deptItemId if (deptItemName.length > 10) { $('.selectDept').html(deptItemName.substring(0, 8) + '...') } else { $('.selectDept').html(deptItemName) } $('.selectDept ').attr('title', deptItemName) $(".selectDept").append(`下拉`) $(".deptList").css("display", "none") }) } bindCheckedSelectFp() //病案首页核查状态选择 function bindCheckedSelectFp() { $('.fpCheckItem').on("click", function () { const fpCheckItemName = $(this).attr("data-name") const fpCheckItemItemId = $(this).attr("data-id") || "" fpCheckStatusTemp = fpCheckItemItemId $('.fpSelectCheck').html(fpCheckItemName) $(".fpCheckList").css("display", "none") $(".fpSelectCheck").append(`下拉`) $('.fpSelectCheck').removeClass('unSelect') }) } //药品类型选择 $('.fpSelectCheck').on("click", function (e) { e.stopPropagation() $(".deptList ").css("display", "none") $(".selectDept .arrow").attr("src", iconDown) $(".levelList ").css("display", "none") $(".selectLevel .arrow").attr("src", iconDown) $(".qcSelectCheck .arrow").attr("src", iconDown) $(".qcCheckList ").css("display", "none") const showList = $(".fpCheckList ").css("display") if (showList == "none" || !showList) { $(".fpCheckList ").css("display", "block") $(".fpSelectCheck .arrow").attr("src", iconUp) } else { $(".fpCheckList ").css("display", "none") $(".fpSelectCheck .arrow").attr("src", iconDown) } }) //缺陷类别展示切换 $(".whichAdvice span").click(function () { let type = $(this).attr("data-type") if (type != adviceShow) { name = nameTemp = names = nameTemps = medic = medicTemp = fpCheckStatus = fpCheckStatusTemp = '' $(".fpSelectCheck").html("全部").append(`下拉`) setDatePicker($("#datepicker"), $("#datepicker2"), "default") $(".moduleItemInp,.moduleItemInps,.moduleMedicInp").val('') } adviceShow = $(this).attr("data-type") $(this).addClass("active").siblings("span").removeClass("active") window.abortAjax.abort() getTabData(1) }) //全选绑定 $('.selectDept').on("click", function (e) { e.stopPropagation() $(".levelList ").css("display", "none") $(".selectLevel .arrow").attr("src", iconDown) const showList = $(".deptList ").css("display") if (showList == "none" || !showList) { $(".deptList ").css("display", "block") $(".selectDept .arrow").attr("src", iconUp) } else { $(".deptList ").css("display", "none") $(".selectDept .arrow").attr("src", iconDown) } }) function getTabData(activePage) { const dateStatrt = getPickerDate($("#datepicker"), 1) const dateEnd = getPickerDate($("#datepicker2"), 2) const start = new Date(dateStatrt).getTime() const end = new Date(dateEnd).getTime() if (start > end) { $.alerModal({ "message": '开始时间不能大于结束时间~', type: "tip", time: '1000', isFather: true, fatherWrapper: $("#mainBox", parent.document) }); return } startDateParam = dateStatrt endDateParam = dateEnd const param = { current: activePage, recTitle: names, behospitalCode: perId, size: 15, "recDateStart": dateStatrt.replace(/\//g, '-'), "recDateEnd": dateEnd.replace(/\//g, '-'), "descs": data_desc, "ascs": data_asc } $('.pagination').html("") $('.tbody').html(emptyBox('努力加载中...', '', 1)) post(api.getMedRecordOtherPage, param).then(res => { if (res.data.code == '0') { const data = res.data.data.records const totalPage = res.data.data.pages const totalNum = res.data.data.total renderTab(data, activePage) if (totalPage > 1) { renderPagination(totalPage, Number(activePage), totalNum) } else { $('.pagination').html("") } } else { } }).catch((e) => { }) } //所有数据切换日期筛选 function dateChange() { $(".monthYear .mon").click(function () { $(this).css({ backgroundColor: '#00A1FF', color: '#fff' }).siblings().css({ color: '#00A1FF', backgroundColor: '#fff' }) isRejectTemp = isReject = 1 setDatePicker($("#datepicker"), $("#datepicker2"), 1) getTabData(1) }) $(".monthYear .year").click(function () { $(this).css({ backgroundColor: '#00A1FF', color: '#fff' }).siblings().css({ color: '#00A1FF', backgroundColor: '#fff' }) isRejectTemp = isReject = 2 setDatePicker($("#datepicker"), $("#datepicker2"), 2) getTabData(1) }) } //判断有无某一权限 function hasData(data) { let lis = JSON.parse(getCookie("codeLis")) || [] if (lis.indexOf(data) > -1) {//有权限 return true } return false; } $(".moduleItemInp").on("input", function (e) { const val = $(this).val().trim() nameTemp = val }) $(".moduleMedicInp").on("input", function (e) { const val = $(this).val().trim() medicTemp = val }) $(".moduleItemInps").on("input", function (e) { const val = $(this).val().trim() nameTemps = val }) $(".filter").on("click", function (e) { casesId = casesIdTemp, medic = medicTemp, fpCheckStatus = fpCheckStatusTemp, name = nameTemp, names = nameTemps, isReject = isRejectTemp, isUsed = isUsedTemp, deptId = deptIdTemp, isSingleReject = isSingleRejectTemp, casesName = casesNameTemp getTabData(1) }) $(".filterclear").on("click", function (e) { nameTemp = "" nameTemps = "" medicTemp = "" $(".moduleMedicInp").val("") $(".moduleItemInp").val("") $(".moduleItemInps").val("") }) $('.selectModuleType').on("click", function (e) { e.stopPropagation() $(".rejectList ").css("display", "none") $(".usedList ").css("display", "none") $(".selectReject .arrow").attr("src", iconDown) $(".selectUsed .arrow").attr("src", iconDown) const showList = $(".moduleTypeList").css("display") if (showList == "none" || !showList) { $(".moduleTypeList ").css("display", "block") $(".selectModuleType .arrow").attr("src", iconUp) } else { $(".moduleTypeList ").css("display", "none") $(".selectModuleType .arrow").attr("src", iconDown) } }) $('.selectReject').on("click", function (e) { e.stopPropagation() $(".moduleTypeList ").css("display", "none") $(".usedList ").css("display", "none") $(".selectModuleType .arrow").attr("src", iconDown) $(".selectUsed .arrow").attr("src", iconDown) const showList = $(".rejectList ").css("display") if (showList == "none" || !showList) { $(".rejectList ").css("display", "block") $(".selectUsed .arrow").attr("src", iconUp) } else { $(".rejectList ").css("display", "none") $(".selectUsed .arrow").attr("src", iconDown) } }) $('.selectUsed').on("click", function (e) { e.stopPropagation() $(".moduleTypeList ").css("display", "none") $(".rejectList ").css("display", "none") $(".selectModuleType .arrow").attr("src", iconDown) $(".selectReject .arrow").attr("src", iconDown) const showList = $(".usedList ").css("display") if (showList == "none" || !showList) { $(".usedList ").css("display", "block") $(".selectUsed .arrow").attr("src", iconUp) } else { $(".usedList ").css("display", "none") $(".selectUsed .arrow").attr("src", iconDown) } }) // bindRejectSelect() // bindUsedSelect() // getTabData(1) // getmoduleTypeList() function renderTab(data, activePage) { let str = ``; const cls = hasData("FUNC000007") ? "editItem" : "editItemDis"; for (let i = 0; i < data.length; i++) { const item = data[i] str += ` ${(activePage - 1) * 15 + i + 1} ${item.recTitle || '-'} ${item.recDate || '-'} ` } $('.tbody').html(str ? str : emptyBox()) bindEdit(data, activePage) goDetail(data) // initScroll("singleVeto","Y",1) } $("th[code]").on("click", function (e) { const code = $(this).attr("code"); if (data_asc == code) { data_desc = [code]; data_asc = []; $("th[code]").removeClass("asc desc"); $(this).addClass("desc"); } else { data_desc = []; data_asc = [code]; $("th[code]").removeClass("asc desc"); $(this).addClass("asc"); } getTabData(1); }); function goDetail(data) { $(".goDetailther").click(function () { const id = $(this).attr("data-id") getMedRecordContentOther(id) // let defectName = $(this).attr("data-name") // const item = data[index] // // focusMenuItem("YH-ZKK-GKSQXZB_XQ"); // $(parent.document).find("#contentIframe").attr("src",`./qcListCopy.html?defectName=${defectName}&startDate=${startDateParam}&endDate=${endDateParam}&from=${from}&isSingleReject=${item.isReject}&deptName=${deptName}&deptId=${deptName}`) }) } function getMedRecordContentOther(id) { post(api.getMedRecordContentOther, { recId: id }).then(res => { if (res.data.code == '0') { let data = res.data.data.htmlText window["filter"] = data; window.open("mentCenter.html"); } else { } }).catch((e) => { }) } function bindEdit(data, activePage) { if (!hasData('FUNC000007')) { return } $('.editItem').click(function (e) { const index = $(this).parent().attr('data-index') editItem(data[index], activePage) }) } //修改 function editItem(item, activePage) { const itemCpoy = JSON.parse(JSON.stringify(item)) $('.pop-box').remove() $('.container').append('
') const str = `

修改 关闭

模块名称: ${itemCpoy.casesName}
条目名称: ${itemCpoy.name}
提示信息:
分值:

支持≥0的数字输入,最多保留小数点后1位~

单项否决:${item.isReject == '1' ? `` : ` `}
启用:${item.isUsed == '1' ? `` : ` `}
保存
` $("#mainBox", parent.document).append(str) $("#mainBox .itemMsgBox .iconClose", parent.document).on("click", function (e) { $("#mainBox .itemMsgBox", parent.document).remove() }) $("#mainBox .itemMsgBox .itemTipMsg", parent.document).on("input", function (e) { const val = $(this).val().trim() itemCpoy.msg = val }) $("#mainBox .itemMsgBox .itemScore", parent.document).on("keypress", function (e) { return (/[0-9\.]/.test(String.fromCharCode(e.keyCode))) }) $("#mainBox .itemMsgBox .itemScore", parent.document).on("input", function (e) { const val = $(this).val() itemCpoy.score = val }) $("#mainBox .itemMsgBox .itemReject", parent.document).on("click", function (e) { itemCpoy.isReject = itemCpoy.isReject == 1 ? 0 : 1 $('#mainBox .itemMsgBox', parent.document).remove() editItem(itemCpoy, activePage) }) $("#mainBox .itemMsgBox .itemUsed", parent.document).on("click", function (e) { itemCpoy.isUsed = itemCpoy.isUsed == 1 ? 0 : 1 $('#mainBox .itemMsgBox', parent.document).remove() editItem(itemCpoy, activePage) }) $("#mainBox .itemMsgBox .confirmEdit", parent.document).on("click", function () { var reg = new RegExp(/^\d+(\.\d)?$/); if (reg.test(itemCpoy.score)) { // console.log('itemCopy', itemCpoy) if (!itemCpoy.msg.trim()) { $.alerModal({ "message": "提示信息不能为空~", type: "tip", time: '1000', isFather: true, fatherWrapper: $("#mainBox", parent.document) }); return } saveEdit(itemCpoy, activePage) $("#mainBox .itemMsgBox .itemMsgInfoTips", parent.document).css("display", "none") $('#mainBox .itemMsgBox', parent.document).remove() return } else { $("#mainBox .itemMsgBox .itemMsgInfoTips", parent.document).css("display", "block") return } }) } //保存修改 function saveEdit(item, activePage) { const param = { id: item.id, isReject: item.isReject, isUsed: item.isUsed, msg: item.msg, score: item.score } post(api.updataQcCasesEntry, param).then(res => { if (res.data.code == '0') { // const data = res.data.data $.alerModal({ "message": "修改成功", type: "tip", time: '1000', isFather: true, win: true, fatherWrapper: $("#mainBox", parent.document) }); getTabData(activePage) } else { $.alerModal({ "message": '修改失败,请重试~', type: "tip", time: '1000', isFather: true, win: 'default', fatherWrapper: $("#mainBox", parent.document) }); } }).catch((e) => { $.alerModal({ "message": '修改失败,请重试~', type: "tip", time: '1000', isFather: true, win: 'default', fatherWrapper: $("#mainBox", parent.document) }); }) } getmoduleTypeList() //获取模块类型 function getmoduleTypeList() { post(api.getQcCasesAll).then(res => { if (res.data.code == '0') { const moduleTypeList = res.data.data renderModuleTypeList(moduleTypeList) } else { } }).catch((e) => { }) } function renderModuleTypeList(moduleTypeList) { let str = `
  • 全部
  • ` for (let i = 0; i < moduleTypeList.length; i++) { str += `
  • ${moduleTypeList[i].name}
  • ` } $('.moduleTypeList').html(str) bindModuleTypeSelect() } //模块类型选择 function bindModuleTypeSelect() { $('.modeTypeItem').on("click", function () { const modeTypeItemName = $(this).attr("data-name") const modeTypeItemId = $(this).attr("data-id") casesIdTemp = modeTypeItemId if (modeTypeItemId) { casesName = casesNameTemp = modeTypeItemName } else { casesName = casesNameTemp = "" } $('.selectModuleType').html(modeTypeItemName).attr("title", modeTypeItemName) $(".selectModuleType").append(`下拉`) $(".moduleTypeList ").css("display", "none") }) } bindRejectSelect() //单项否决选择 function bindRejectSelect() { $('.rejectItem').on("click", function () { const rejectItemName = $(this).attr("data-name") const rejectItemId = $(this).attr("data-id") isSingleReject = isSingleRejectTemp = rejectItemId $('.selectReject').html(rejectItemName) $(".rejectList ").css("display", "none") $(".selectReject").append(`下拉`) }) } //是否启用选择 function bindUsedSelect() { $('.usedItem').on("click", function () { const usedItemName = $(this).attr("data-name") const usedItemItemId = $(this).attr("data-id") isUsedTemp = usedItemItemId $('.selectUsed').html(usedItemName) $(".usedList").css("display", "none") $(".selectUsed").append(`下拉`) }) } //分页渲染 function renderPagination(totalPage, activePage, totalNum) { let str = `共${totalPage}页/${totalNum}条数据` if (totalPage <= 6) { for (let i = 1; i <= totalPage; i++) { str += `${i}` } } else { if (activePage <= 3) { //选中页数小于4 for (let i = 1; i <= 4; i++) { str += `${i}` } str += `...` str += `${totalPage}` } else if (activePage > totalPage - 3) { str += `1` str += `...` str += `${totalPage - 3}` str += `${totalPage - 2}` str += `${totalPage - 1}` str += `${totalPage}` } else { str += `1` str += `...` str += `${activePage - 1}` str += `${activePage}` str += `${activePage + 1}` str += `...` str += `${totalPage}` } } str += `` $('.pagination').html(str) $('.page' + activePage).addClass('activePage') $(".pageNum").on("click", function (e) { const activePageNow = Number($(this).attr('data-page')) getTabData(activePageNow) // renderPagination(totalPage,activePageNow,totalNum) }) $(".prePage").on("click", function (e) { let activePageNow = Number($(".activePage").attr('data-page')) if (activePageNow > 1) { activePageNow-- getTabData(activePageNow) // renderPagination(totalPage,activePageNow,totalNum) } }) $(".nextPage").on("click", function (e) { let activePageNow = Number($(".activePage").attr('data-page')) if (activePageNow < totalPage) { activePageNow++ getTabData(activePageNow) // renderPagination(totalPage,activePageNow,totalNum) } }) } $(document).on("click", function () { $(".moduleTypeList ").css("display", "none") $(".rejectList ").css("display", "none") $(".fpCheckList ").css("display", "none") $(".usedList ").css("display", "none") $(".selectModuleType .arrow").attr("src", iconDown) $(".selectReject .arrow").attr("src", iconDown) $(".selectUsed .arrow").attr("src", iconDown) }) $(function () { const iconCalenBlue = require("./../images/darkDate.png") const iconCalenGrey = require("./../images/icon_calen_grey.png") $('.datapickerBox').append(``) $('.iconCalen').on("mouseenter", function (e) { $(this).attr("src", iconCalenBlue) }) $('.iconCalen').on("mouseleave", function (e) { $(this).attr("src", iconCalenGrey) }) $('.iconCalen').on("click", function (e) { $(this).parent().find("input").focus() }) $('.export').click(function () { const start = new Date(startDateParam).getTime() const end = new Date(endDateParam).getTime() if (start > end) { $.alerModal({ "message": '开始时间不能大于结束时间~', type: "tip", time: '1000', isFather: true, fatherWrapper: $("#mainBox", parent.document) }); return } const param = { type: 0, casesId: casesId, //模块Id casesName: casesName == '全部' ? '' : casesName, //模块Id isReject: isSingleReject, //是否单项否决 name: name, //条目名 deptName: deptId, //科室名 "isPlacefile": isPlacefile, "startDate": startDateParam, "endDate": endDateParam }; expJson(api.exportItemFlaw, param).then(res => { downloadExportedData(res.data, "条目缺陷占比.xls") }) }) });