const $ = require('jquery');
require("../css/partDetailControl.less");
require('./modal.js');
const {api} = require('./api.js')
const {post,getCookie,getLocal,getUrlArgObjectNew,emptyBox,setTitleTxt,setDatePicker,getPickerDate,downloadExportedData,expJson,initScroll,listenScroll} = require('./utils.js')
require('./../resource/jquery-ui/jquery-ui.min.js');
require('./../resource/jquery-ui/jquery-ui.min.css');
const iconCheck= require("./../images/icon_check.png")
const iconUnCheck = require("./../images/icon_unchecked.png")
const iconDown= require("./../images/arrow_down.png")
const iconUp = require("./../images/arrow_up.png")
const loadingImg = require("./../images/loading.gif")
const arrowLeft= require("./../images/arrow_left.png")
const arrowRight = require("./../images/arrow_right.png")
$(".selectLevel").append(`
`)
$(".selectDept").append(`
`)
listenScroll()
let isPlacefile = getCookie('isPlacefile')||1
let tabList = [], name = "",deptName="",deptNameTemp="", behospitalCode="", behosDateStart="", level="",behosDateEnd="", scoreSum = 0,statisticsType="",
nameTemp = "", behospitalCodeTemp="",levelTemp="", deptId="",deptIdTemp="", doctorName="", doctorNum="",doctorNameTemp="",doctorNumTemp="",
data_desc="deptName",data_asc="";
let srcUrl = $("#contentIframe",parent.document).attr("src")
statisticsType = getUrlArgObjectNew("dateType",srcUrl)||""
from = getUrlArgObjectNew("from",srcUrl)||""
lineType = getUrlArgObjectNew("lineType",srcUrl)||""
let startDateParam = getUrlArgObjectNew("startDateParam",srcUrl)||""
let endDateParam = getUrlArgObjectNew("endDateParam",srcUrl)||""
data_desc = (lineType == "合格率")?"firstLevelPercent":(lineType=="完整率"?"emptyPercent":"deptName")
if(lineType){
$("th[code="+data_desc+"]").addClass("desc");
}
//setTitleTxt('',from) //导航栏面包屑
if(statisticsType == 1){
$(".monthYear .mon").css({
backgroundColor:'#00A1FF',
color:'#fff'
}).siblings().css({
color:'#00A1FF',
backgroundColor:'#fff'
})
setDatePicker($("#datepicker"),$("#datepicker2"),1)
}else if(statisticsType == 2){
$(".monthYear .year").css({
backgroundColor:'#00A1FF',
color:'#fff'
}).siblings().css({
color:'#00A1FF',
backgroundColor:'#fff'
})
setDatePicker($("#datepicker"),$("#datepicker2"),2)
}else if(statisticsType == 3){
setDatePicker($("#datepicker"),$("#datepicker2"),3,new Date(startDateParam),new Date(endDateParam))
}else{
setDatePicker($("#datepicker"),$("#datepicker2"),'default')
}
if(!statisticsType){
setDatePicker($("#datepicker"),$("#datepicker2"),'default')
}
$(".abnormalClear").click(function(){
data_desc=""
data_asc=""
setDatePicker($("#datepicker"),$("#datepicker2"),"default")
$(".patientNumInp").val("")
$("th[code]").removeClass("desc asc");
behospitalCode =behospitalCodeTemp= ""
deptName = deptNameTemp = ""
level = levelTemp = ""
deptId = deptIdTemp = ""
$(".selectDept").attr({'title':"全部",'data-id':''}).val("全部")
getTabData(1)
getDeptList()
})
$(".partTitle a").click(function(){
//初始菜单选中
$(".menu .page",parent.document).removeClass("active").eq(0).addClass("active");
$(".container",parent.document).addClass("console-cont");
})
$('.recordScoreBtn').css("opacity",hasData('FUNC000017')?'1':'0.5')
dateChange()
//所有数据切换日期筛选
function dateChange(){
$(".monthYear .mon").click(function(){
$(this).css({
backgroundColor:'#00A1FF',
color:'#fff'
}).siblings().css({
color:'#00A1FF',
backgroundColor:'#fff'
})
$(".dayDetail .deptListWrap").css("display","block")
$(".dayDetail .dayFilter").css("display","none")
statisticsType = 1
setDatePicker($("#datepicker"),$("#datepicker2"),1)
getTabData(1)
})
$(".monthYear .year").click(function(){
$(this).css({
backgroundColor:'#00A1FF',
color:'#fff'
}).siblings().css({
color:'#00A1FF',
backgroundColor:'#fff'
})
$(".dayDetail .deptListWrap").css("display","none")
$(".dayDetail .dayFilter").css("display","block")
statisticsType = 2
setDatePicker($("#datepicker"),$("#datepicker2"),2)
getTabData(1)
})
}
// YH-ZKK-BASYHGLZB_XQ
$(".menu .page", parent.document).removeClass("active")
$(parent.document).find(".menu .page[code=YH-ZKK-BASYHGLZB_XQ]").addClass("active")
//判断有无某一权限
function hasData(data){
let trdObj = JSON.parse(getLocal("trdObj"))
let lis = trdObj['YH-BLZK-ZKPF']
if(!lis){
return false
}
if(lis.indexOf(data)>-1){//有权限
return true
}
return false;
}
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
}
const param = {
"level": "",
"name": behospitalCode||"",
"deptName": deptName=="全部"?"":deptName||"",
"asc":data_asc, //升序
"desc":data_desc, //降序
"type": 0, //1-本月,2-本年,0-自定义时间(现在所有都是自定义时间,都会传开始日期和结束日期)
"startDate":dateStatrt,
"endDate":dateEnd
}
startDateParam = dateStatrt
endDateParam = dateEnd
$('.pagination').html("")
$('.tbody').html(emptyBox('努力加载中...','',1))
post(api.homePageLevelStatistics,param).then(res =>{
if(res.data.code == '0'){
const data = res.data.data||[];
renderTab(data,data.hospitalId,activePage);
renderPagination(totalPage,Number(activePage),totalNum)
if(totalPage > 1){
renderPagination(totalPage,Number(activePage),totalNum)
} else{
$('.pagination').html("")
}
}else{
$.alerModal({"message":res.data.msg,type:"tip",time:'1000',isFather: true, fatherWrapper: $("#mainBox", parent.document)});
}
}).catch((e) =>{
})
}
getTabData(1)
$(".filter").on("click", function(e){
name = nameTemp
behospitalCode = behospitalCodeTemp
level = levelTemp
deptId = deptIdTemp
deptName = deptNameTemp
if(deptName == ""){
$(".selectDept").attr({'title':"全部",'data-id':''}).val("全部")
}
getTabData(1)
})
function renderTab(data,hisId,activePage){
let str = ``
for(let i = 0; i < data.length; i++){
const item = data[i]
str += `
${(activePage-1)*15 + i+1} |
${item.deptName || "-"} |
${item.entryNum || "-"} |
${item.secondLevelNum} |
${item.firstLevelNum} |
${item.firstLevelPercentStr || "-"} |
${item.emptyNum+'' || "-"} |
${item.emptyPercentStr+'' || "-"} |
${item.errorNum+'' || "-"} |
${item.errorPercentStr+'' || "-"} |
${item.averageValue===null?'-':item.averageValue} |
${item.mrNum+'' || "-"} |
`
}
$('.tbody').html(str?str:emptyBox())
bindScoreDetail(hisId)
$(".goHomeDetail").click(function(){
let index = $(this).parent().attr("data-index")
let deptName = $(this).attr("data-dept")
let ruleType = $(this).attr("data-ruleType")
let deptId = data[index].deptId
$(parent.document).find("#contentIframe").attr("src","quexianDetailControlHome.html?deptName="+deptName+"&deptId="+deptId+"&from=1&casesId=243"+"&shijian=3"+"&ruleType="+ruleType+"&startDateParam="+startDateParam+"&endDateParam="+endDateParam)
})
// 不合格数跳转至 病历列表详情页
$(".goHomeDetail1").click(function () {
let index = $(this).parent().attr("data-index")
let deptName = $(this).attr("data-dept")
let titleName = $(this).attr("data-title")
// let ruleType = $(this).attr("data-ruleType")
let deptId = data[index].deptId
// $(parent.document).find("#contentIframe").attr("src", "qcListCopy.html?deptName=" + deptName + "&deptId=" + deptId + "&from=4&casesId=243" + "&shijian=3" + "&ruleType=" + ruleType + "&startDate=" + startDateParam + "&endDate=" + endDateParam + "&defectName=" + defectName)
$(parent.document).find("#contentIframe").attr("src", "qcListCopyUnqualified.html?deptName=" + deptName + "&deptId=" + deptId + "&from=4&casesId=243" + "&shijian=3" + "&startDate=" + startDateParam + "&endDate=" + endDateParam+"&titleName="+titleName )
})
// initScroll("partDetailControl","YX",1)
}
function scoreDetail(id,age,hid,code){
window.open(`./qcScore.html?id=${id}&age=${age}&hid=${hid}&code=${code}`)
}
function bindScoreDetail(hisId){
$('.patientNameSpan').on('click',function(e){
const index = $(this).attr("data-index")
const type = $(this).attr("data-type")
const item = tabList[index]
midifyMsgBox(item,type)
})
}
function midifyMsgBox(item,type){
const itemCopy = JSON.parse(JSON.stringify(item))
let msgBox = ''
if(type == 1){
msgBox = `
修改 })
状态:
${itemCopy.status == 0?"未处理":"已处理"}
备注:
支持≥0的数字输入,最多保留小数点后1位~
保存
`
}else{
msgBox = `
修改 })
确认要删除该条异常记录?
删除
取消
`
}
$("#mainBox", parent.document).append(msgBox)
$(".midifyEditDel", parent.document).on("click",function(){
delModifyOne(itemCopy)
})
$(".midifyEditQuit", parent.document).on("click",function(){
$("#mainBox .midifyMsgBox", parent.document).remove()
})
$(".abnormalAll", parent.document).on("click",function(){
$(".abnormalStatusLis", parent.document).slideToggle()
})
$(".abnormalStatusLis li", parent.document).on("click",function(){
let status = $(this).attr("data-status")
let str = $(this).html()
$(".abnormalAll", parent.document).attr("data-status",status).html(str)
$(".abnormalStatusLis", parent.document).slideToggle()
})
$("#mainBox .midifyMsgBox .iconClose", parent.document).on("click", function(e){
$("#mainBox .midifyMsgBox", parent.document).remove()
})
$("#mainBox .midifyMsgBox .itemScore", parent.document).on("keypress", function(event){
return (/[\d\.]/.test(String.fromCharCode(event.keyCode)))
})
$("#mainBox .midifyMsgBox .itemScore", parent.document).on("input", function(e){
const val = $(this).val()
itemCopy.score = val
})
$("#mainBox .midifyMsgBox .midifyEdit", parent.document).on("click", function(e){
saveModifyOne(itemCopy)
})
}
//保存修改
function delModifyOne(itemCopy){
let param = {
"id": itemCopy.id
}
post(api.delQcAnnormal,param).then(res =>{
if(res.data.code == '0'){
const data = res.data.data;
getTabData(1)
$("#mainBox .midifyMsgBox", parent.document).remove()
$.alerModal({"message":'删除成功',type:"tip",time:'1000',isFather: true,win: true, fatherWrapper: $("#mainBox", parent.document)});
}else{
$.alerModal({"message":'删除失败,请重试~',type:"tip",time:'1000',win:'default',isFather: true, fatherWrapper: $("#mainBox", parent.document)});
}
}).catch((e) =>{
$.alerModal({"message":'删除失败,请重试~',type:"tip",time:'1000',win:'default',isFather: true, fatherWrapper: $("#mainBox", parent.document)});
})
}
//保存修改
function saveModifyOne(itemCopy){
let txt = $(".abnormalTxt", parent.document).val()
let status = $(".abnormalAll", parent.document).attr("data-status")
let param = {
"id": itemCopy.id,
"remark": txt,
"status": status
}
post(api.saveQcAnnormal,param).then(res =>{
if(res.data.code == '0'){
const data = res.data.data;
getTabData(1)
$("#mainBox .midifyMsgBox", parent.document).remove()
$.alerModal({"message":'修改成功',type:"tip",time:'1000',isFather: true,win: true, fatherWrapper: $("#mainBox", parent.document)});
}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)});
})
}
//选择病历等级
$('.selectLevel').on("click", function(e){
e.stopPropagation()
$(".deptList ").css("display", "none")
$(".selectDept .arrow").attr("src",iconDown)
const showList = $(".levelList ").css("display")
if(showList == "none" ||!showList){
$(".levelList ").css("display","block")
$(".selectLevel .arrow").attr("src",iconUp)
}else{
$(".levelList ").css("display", "none")
$(".selectLevel .arrow").attr("src",iconDown)
}
})
bindLeveldSelect()
//是否启用选择
function bindLeveldSelect(){
$('.levelItem').on("click",function(){
const levelItemName = $(this).attr("data-name")
const levelItemItemId = $(this).attr("data-id")
levelTemp =levelItemItemId
$('.selectLevel').html(levelItemName)
$(".levelList").css("display", "none")
$(".selectLevel").append(`
`)
})
}
//全选绑定
$('.selectDept').on("focus", function(e){
e.stopPropagation()
$(".deptList ").css("display","block")
})
$('.selectDept').on("blur", function(e){
$(".deptList ").css("display", "none")
$(".selectDept .arrow").attr("src",iconDown)
})
$('.selectDept').on("input", function(e){
let val = $(this).val().trim()
deptName = deptNameTemp = val
getDeptList(deptName)
})
//获取科室列表
getDeptList()
function getDeptList(val){
post(api.getDeptList,{inputStr:val=="全部"?"":val||""}).then(res =>{
if(res.data.code == '0'){
const deptList = res.data.data||[]
rendeDeptList(deptList)
}else{
rendeDeptList([])
}
}).catch((e) =>{
})
}
function rendeDeptList(deptList){
if(deptList.length == 0){
$('.deptList').html("")
return
}
let str = `全部`
for(let i = 0; i < deptList.length; i++){
str += ` ${deptList[i].deptName}`
}
$('.deptList').html(str)
bindDeptSelect()
}
//科室选择
function bindDeptSelect(){
$('.deptItem').on("mousedown",function(){
const deptItemName = $(this).attr("data-name")
const deptItemId = $(this).attr("data-id")
deptNameTemp=deptItemName=="全部"?"":deptItemName;
deptIdTemp =deptItemId||''
$('.selectDept').val(deptItemName)
$('.selectDept ').attr('title',deptItemName)
$(".deptList").css("display", "none")
})
}
function loading(){
const str = `
`
$("#mainBox", parent.document).append(str)
}
function hideLoading(){
$("#mainBox .loadingBox", parent.document).remove()
}
$('.recordScoreBtn').on("click",function(e){
if(!hasData('FUNC000017')){
return
}
let scoreList = []
for(let i = 0; i {
if(res.data.code == '0'){
scoreSum++
if(scoreSum === totalNum){
hideLoading()
scoreSum = 0
const activePage = $(".activePage").attr('data-page') || 1
getTabData(activePage)
}
}else{}
}).catch((e) =>{
})
}
$(".patientNumInp").on("input", function(e){
const val = $(this).val().trim()
behospitalCodeTemp = val
})
$(".patientNameInp").on("input", function(e){
const val = $(this).val().trim()
nameTemp = val
})
$(".doctorInp").on("input", function(e){
const val = $(this).val().trim()
doctorNameTemp = val
})
$(".doctorNumInp").on("input", function(e){
const val = $(this).val().trim();
doctorNumTemp = val
})
//分页渲染
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)
}
})
}
$(function() {
const iconCalenBlue= require("./../images/icon_calen_blue.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 = {
"isPlacefile":isPlacefile,
"level": "",
"name": behospitalCode||"",
"deptName": deptName=="全部"?"":deptName||"",
"asc":data_asc, //升序
"desc":data_desc, //降序
"type": statisticsType||2, //1-本月,2-本年
"startDate":startDateParam,
"endDate":endDateParam
}
expJson(api.exportIndexQualified,param).then(res =>{
downloadExportedData(res.data,"病案首页合格率占比.xls")
})
})
});