const $ = require('jquery');
require("../css/creatCheckTask.less");
require('./modal.js');
const {api,ywCheckApi} = require('./api.js')
const {post,getCookie,emptyBox,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 iconDisCheck = require("./../images/icon_dis.png")
const iconCalenBlue= require("./../images/icon_calen_blue.png")
const iconCalenGrey= require("./../images/icon_calen_grey.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")
listenScroll()
let tabList = [], global_level="",global_status="0", global_deptId=[],global_deptName="",
data_desc=["leaveHospitalDate"],data_asc=[],global_taskList=[],global_delOrAdd=1;//1生成0取消
let global_activeTabCode = '0'; //激活的tab code
let isPlacefile = getCookie('isPlacefile')||1
$(function() {
const checkAuth = getCookie('checkAuth');
/*if(!checkAuth){
$(".tabs").hide();
toast("没有质控核查权限!");
return
}*/
const tabs = checkAuth.replace(/[^456]/g,'');
if(tabs.length===0){
$(".tabs").hide();
toast("没有质控核查权限!");
return;
}else if(tabs.length<2){
//只有一个权限,隐藏tab切换
$(".tabs").hide();
}else{//隐藏没有权限的tab
const last = "456".replace(tabs,'');
$(".tabs [data-code="+(last-4)+"]").parent().hide();
}
global_activeTabCode=tabs.substr(0,1)-4;
//获取科室列表
if(global_activeTabCode=="0"){
getSubDeptList();
}else{
getDeptList();
}
$(".tabs [data-code="+global_activeTabCode+"]").addClass("active");
$('.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()
})
$(".menu .page", parent.document).removeClass("active")
$(parent.document).find(".menu .page[code=YH-ZKHC-SCHCRW]").addClass("active")
$(".filter").on("click", function(e){
global_taskList=[];
getTabData(1)
})
$(".abnormalClear").on("click", function(e){
clearFilter();
getTabData(1)
})
//切换tab
$(".tabBox .tabs button").on("click",(e)=>{
const me = e.target;
$('.selectDept i').text('全部')
$(".deptItem.active").removeClass("active");
$(".deptList").css("display", "none")
global_deptId=[];
global_deptName="";
global_activeTabCode = $(me).attr("data-code");
if(global_activeTabCode=="0"){
getSubDeptList();
}else{
getDeptList();
}
$(".tabBox .tabs button").removeClass("active");
$(me).addClass("active");
//更新列表并重置筛选条件
$(".filter").click();
});
//选择生成状态
$('.selectStatus').on("click", function(e){
e.stopPropagation()
$(".statusList ").css("display", "none")
$(".selectStatus .arrow").attr("src",iconDown)
const showList = $(".statusList ").css("display")
if(showList == "none" ||!showList){
$(".statusList ").css("display","block")
$(".selectStatus .arrow").attr("src",iconUp)
}else{
$(".statusList ").css("display", "none")
$(".selectStatus .arrow").attr("src",iconDown)
}
})
//选择病历等级
$('.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)
}
})
//科室选择
$('.selectDept').on("click", function(e){
e.stopPropagation();
$(".levelList ").css("display","none")
$(".selectLevel .arrow").attr("src",iconDown)
$(".deptList ").css("display","block")
})
$(".creatTask").click(function(){
if(!global_taskList.join("").length){
toast("至少勾选一个任务");
return;
}
$(".modal-container .modal-body p").text("确定要生成这些任务吗?");
$(".modal-container").show();
global_delOrAdd=1;
});
$(".modal-container .confirm").click(function(){
creatTask(global_delOrAdd)
});
$(".modal-container .cancel,.modal-container .close").click(function(){
if(global_delOrAdd==0){
global_taskList=[];
}
$(".modal-container").hide();
})
//出院日期初始化
$.datepicker.regional['zh-CN'] = {
clearText: '清除',
clearStatus: '清除已选日期',
closeText: '关闭',
closeStatus: '不改变当前选择',
prevText: '<上月',
prevStatus: '显示上月',
prevBigText: '<<',
prevBigStatus: '显示上一年',
nextText: '下月>',
nextStatus: '显示下月',
nextBigText: '>>',
nextBigStatus: '显示下一年',
currentText: '今天',
currentStatus: '显示本月',
monthNames: ['一月','二月','三月','四月','五月','六月', '七月','八月','九月','十月','十一月','十二月'],
monthNamesShort: ['一月','二月','三月','四月','五月','六月', '七月','八月','九月','十月','十一月','十二月'],
yearNamesShort: ['一月','二月','三月','四月','五月','六月', '七月','八月','九月','十月','十一月','十二月'],
monthStatus: '选择月份',
yearStatus: '选择年份',
weekHeader: '周',
weekStatus: '年内周次',
dayNames: ['星期日','星期一','星期二','星期三','星期四','星期五','星期六'],
dayNamesShort: ['周日','周一','周二','周三','周四','周五','周六'],
dayNamesMin: ['日','一','二','三','四','五','六'],
dayStatus: '设置 DD 为一周起始',
dateStatus: '选择 m月 d日, DD',
dateFormat: 'yy-mm-dd',
firstDay: 1,
initStatus: '请选择日期',
isRTL: false};
const days = new Date().getDate()-1;
let startDate = "-"+days+"d",endDate=new Date();
$.datepicker.setDefaults($.datepicker.regional['zh-CN']);
$( "#datepicker" ).datepicker({
changeMonth: true,
changeYear: true,
dateFormat:"yy-mm-dd",
}).datepicker( "setDate", startDate);
$( "#datepicker2" ).datepicker({
changeMonth: true,
changeYear: true,
dateFormat:"yy-mm-dd"
}).datepicker( "setDate",endDate);
//获取列表数据
getTabData(1)
//状态选择
bindStatusSelect()
//等级选择
bindLeveldSelect()
//关闭下拉
$(document).on("click", function(){
$(".levelList ").css("display", "none")
$(".deptList ").css("display", "none")
$(".statusList ").css("display", "none")
$(".selectDept .arrow").attr("src",iconDown)
$(".selectLevel .arrow").attr("src",iconDown)
$(".selectStatus .arrow").attr("src",iconDown)
})
});
//判断有无某一权限
function hasData(data){
let trdObj = JSON.parse(getCookie("trdObj"))
let lis = trdObj['YH-ZKHC-SCRW']
if(!lis){
return false
}
if(lis.indexOf(data)>-1){//有权限
return true
}
return false;
}
//排序事件
function bindOrder(){
$("th[code]").off("click").on("click", function (e) {
const code = $(this).attr("code");
if (data_asc[0] === 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 bindCancelTaskEvent(){
$(".taskCancel").unbind("click").click(function(){
global_delOrAdd=0;
global_taskList = [$(this).attr("code")];
$(".modal-container .modal-body p").text("确定要取消该任务吗?");
$(".modal-container").show();
});
}
//生成任务
function creatTask(flag){
const param={
behospitalCodeList:global_taskList,
jobType:global_activeTabCode,
checkStatus:flag,
};
post(ywCheckApi.addCheck,param).then(res =>{
if(res.data.code == '0'){
global_taskList=[];
$(".modal-container").hide();
toast("操作成功!");
getTabData(1)
}else{
toast(res.data.msg);
}
}).catch((e) =>{
})
}
function getTabData(activePage){
const filterData = getFilterData();
const param = {
jobType:global_activeTabCode, //科室/质控科/院级
creatStatus:global_status,
current:activePage,
hospitalId:'',
level:global_level,//病历等级
department: global_deptId,
asc:data_asc, //升序
desc:data_desc, //降序
size: 15,
...filterData,
startDate:filterData.startDate+" 00:00:00",
endDate:filterData.endDate+" 23:59:59",
}
$('.pagination').html("")
$('.tbody').html(emptyBox('努力加载中...','',16))
return post(ywCheckApi.getTaskList,param).then(res =>{
if(res.data.code == '0'){
const data = res.data.data;
tabList = data.records;
const totalPage = data.pages;
const totalNum = data.total;
renderTab(tabList,data.hospitalId);
renderPagination(totalPage,Number(activePage),totalNum)
if(totalPage > 1){
renderPagination(totalPage,Number(activePage),totalNum)
} else{
$('.pagination').html("")
}
}else{
toast(res.data.msg);
}
}).catch((e) =>{
})
}
function toast(msg){
$.alerModal({"message":msg,type:"tip",time:'1000',isFather: true, fatherWrapper: $("#mainBox", parent.document)});
}
function renderTab(data){
let str = ``,code="";
let hasSelectAll = true;
if(data.length===0){
$('.tbody').html(emptyBox(null,16))
// initScroll("qcList","YX",1)
return;
}
const titles = $(".tabTitle th[valCode]");
for(let i = 0; i < data.length; i++){
const item = data[i]
str += `