require('../mock') const $ = require('jquery'); // require("../css/partDetailControl.less"); require("../../css/dept/improveStatisticsDept.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 iconDown= require("../../images/arrow_down.png") const loadingImg = require("../../images/loading.gif") const arrowLeft= require("../../images/arrow_left.png") const arrowRight = require("../../images/arrow_right.png"); $(".selectDept").append(`下拉`) listenScroll() let isPlacefile = getCookie('isPlacefile')||1 let deptName="",deptNameTemp="", behospitalCode="", behospitalCodeTemp="",deptId="",deptIdTemp="",casesName='',casesNameTemp='',entryName='',entryNameTemp='', data_desc="improveleNum",data_asc="",doctorId="",doctorIdTemp="",doctorName="",doctorNameTemp=""; let startDateParam = ""; let endDateParam = ""; $(function() { const iconCalenBlue= require("../../images/icon_calen_blue.png") const iconCalenGrey= require("../../images/icon_calen_grey.png") //获取科室列表 getDeptList() //日期控件事件绑定 $('.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() }) $("#casesName").on("input", function(e){ const val = $(this).val().trim() casesNameTemp = val }) $("#entryName").on("input", function(e){ const val = $(this).val().trim(); entryNameTemp = val }) $("#doctorName").on("input", function(e){ const val = $(this).val().trim() doctorNameTemp = val }) $("#doctorId").on("input", function(e){ const val = $(this).val().trim(); doctorIdTemp = val }) //日期默认当年 setDatePicker($("#datepicker"), $("#datepicker2"), 'default'); startDateParam=getPickerDate($("#datepicker"),1) endDateParam=getPickerDate($("#datepicker2"),2) //初始列表数据获取 getTabData(1); //导出事件绑定 $('.export').click(function(){ const param = getFilterParam(); if(param.start > param.end){ $.alerModal({"message":'开始时间不能大于结束时间~',type:"tip",time:'1000',isFather: true, fatherWrapper: $("#mainBox", parent.document)}); return } expJson(api.getEntryDefectImproveByDeptExport,param).then(res =>{ downloadExportedData(res.data,"条目缺陷改善统计(科室)"+startDateParam.substr(0,10).replace(/\//g,'')+"-"+endDateParam.substr(0,10).replace(/\//g,'')+".xls"); }) }) //给每一个标题绑定一个排序事件 $("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); }); //重置 $(".abnormalClear").click(function(){ data_desc="" data_asc="" setDatePicker($("#datepicker"),$("#datepicker2"),"default"); $("#casesName,#entryName,#doctorId,#doctorName").val(""); $("th[code]").removeClass("desc asc"); behospitalCode =behospitalCodeTemp= "" deptName = deptNameTemp = "" deptId = deptIdTemp = "" casesName=casesNameTemp=""; entryName=entryNameTemp=""; doctorId=doctorIdTemp="" doctorName=doctorNameTemp="" $(".selectDept").attr({'title':"全部",'data-id':''}).val("全部") getTabData(1) getDeptList() }) //查询 $(".filter").on("click", function(e){ startDateParam=getPickerDate($("#datepicker"),1) endDateParam=getPickerDate($("#datepicker2"),2) if(startDateParam > endDateParam){ $.alerModal({"message":'开始时间不能大于结束时间~',type:"tip",time:'1000',isFather: true, fatherWrapper: $("#mainBox", parent.document)}); return } deptId = deptIdTemp; deptName = deptNameTemp; casesName=casesNameTemp; entryName=entryNameTemp; doctorId=doctorIdTemp; doctorName=doctorNameTemp; getTabData(1) }) }); function getFilterParam(current){ const param = { "isPlacefile":isPlacefile, "deptId": deptName=="全部"?"":deptId||"", //科室id "casesName": casesName, "entryName":entryName, "deptName": deptName=="全部"?"":deptName||"", "asc":data_asc, //升序 "desc":data_desc, //降序 "startDate":startDateParam, "endDate":endDateParam, "doctorName":doctorName, "doctorId":doctorId, current } return param; } /*$(".partTitle a").click(function(){ //初始菜单选中 $(".menu .page",parent.document).removeClass("active").eq(0).addClass("active"); $(".container",parent.document).addClass("console-cont"); }) //判断有无某一权限 function hasData(data){ let trdObj = JSON.parse(getLocal("trdObj")) let lis = trdObj['YH-ZKK-TMQXGSTJ'] if(!lis){ return false } if(lis.indexOf(data)>-1){//有权限 return true } return false; }*/ function getTabData(activePage){ const param=getFilterParam(activePage); if(param.start > param.end){ $.alerModal({"message":'开始时间不能大于结束时间~',type:"tip",time:'1000',isFather: true, fatherWrapper: $("#mainBox", parent.document)}); console.log('开始时间',dateStatrt) return } $('.pagination').html("") $('.tbody').html(emptyBox('努力加载中...','',1)) post(api.getEntryDefectImproveDept,param).then(res =>{ if(res.data.code == '0'){ const data = res.data.data; const detail = data.records||[]; const totalPage = data.pages; const totalNum = data.total; renderTab(detail,detail.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) =>{ }) } //表格dom渲染 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.casesName || "-"} ${item.entryName || "-"} ${item.doctorName || "-"} ${item.doctorId || "-"} ${item.totalNum} ${item.handleNum} ${item.improveleNum} ${item.handleStr|| "-"} ` } $('.tbody').html(str?str:emptyBox()) $(".goHomeDetail").click(function(){ let casesId = $(this).parents("tr").attr("data-casesid"); let casesName = $(this).parents("tr").attr("data-casesname") let deptName = $(this).parents("tr").attr("data-dept") let deptId = $(this).parents("tr").attr("data-deptid") let typeMark = $(this).attr("data-type") $(parent.document).find("#contentIframe").attr("src", "statisticsDetailDept.html?deptName=" + deptName + "&deptId=" + deptId + "&casesId=" + casesId+"&defectName="+casesName+"&typeMark="+typeMark+"&startDate="+startDateParam+"&endDate="+endDateParam) }) } function getDeptList(val){ post(api.getDept,{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") }) //科室下拉显示、选中事件 $('.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) }) } /*function loading(){ const str = `
    loading
    ` $("#mainBox", parent.document).append(str) } function hideLoading(){ $("#mainBox .loadingBox", parent.document).remove() }*/ //分页渲染 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) } }) }