|
@@ -4,21 +4,22 @@ require('jquery-templates');
|
|
|
require('./modal.js');
|
|
|
const {post,getUrlArgObject,setBoxHeight,getCookie} = require('./utils.js');
|
|
|
const {api} = require('./api.js');
|
|
|
-//本页全局变量
|
|
|
-let global_flawData = {}; //缺陷数据
|
|
|
-const global_id=getUrlArgObject("id");
|
|
|
-const global_age = getUrlArgObject("age");
|
|
|
-const global_code = getUrlArgObject("code");
|
|
|
-let global_activeTab=$(".sub-menu .page.active").attr("code"); //当前激活菜单项
|
|
|
-let global_modules ={}; //模板数据缓存
|
|
|
window.document.title="质控评分-"+getUrlArgObject("name");
|
|
|
|
|
|
$(function(){
|
|
|
- //getSubMenu();
|
|
|
- //initScoreItem();
|
|
|
- //getRecordDetail();
|
|
|
- getAllModules()
|
|
|
- //getInfoModule(15); //根据对应id获取模板
|
|
|
+//本页全局变量
|
|
|
+ let global_flawData = {}; //缺陷数据
|
|
|
+ const global_id=getUrlArgObject("id");
|
|
|
+ const global_age = getUrlArgObject("age");
|
|
|
+ const global_code = getUrlArgObject("code");
|
|
|
+ let global_activeTab=$(".sub-menu .page.active").attr("code"); //当前激活菜单项
|
|
|
+ let global_modules ={}; //模板数据缓存
|
|
|
+ let global_flaws=[]; //缺陷条目列表缓存
|
|
|
+ let global_selectedFlaw = {}; //新增时选中的条目信息
|
|
|
+ getAllModules();
|
|
|
+ $(".add-flaw").click(function(){
|
|
|
+ getQcCasesEntry();
|
|
|
+ });
|
|
|
function initMenu(data){
|
|
|
const menu=[{id:0,name:"缺陷总览",parentId: -1,sonMode: []},...(data||[])];
|
|
|
//菜单数据填充
|
|
@@ -133,6 +134,9 @@ function initContent(data){
|
|
|
let info=[];
|
|
|
let hml='',moduleId='';
|
|
|
for(let k in obj){
|
|
|
+ if(k==="谈话告知书"){
|
|
|
+ continue;
|
|
|
+ }
|
|
|
if(k==="病案首页"){ //病案首页不使用动态模板
|
|
|
info=formatInfoData(k,obj[k][0]);
|
|
|
$("#indexTmpl").tmpl(info).appendTo("#contentInfo");
|
|
@@ -270,6 +274,22 @@ function editScore(info){
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
+//添加评分项
|
|
|
+function addScore(info){
|
|
|
+ const param={
|
|
|
+ "behospitalCode": global_id,
|
|
|
+ "optResultAlgVO": info
|
|
|
+ };
|
|
|
+ post(api.addScore,param).then(function(res){
|
|
|
+ if(res.data.code==='0'){
|
|
|
+ $("#delModal").hide();
|
|
|
+ updateFlaws(res.data.data);
|
|
|
+ $.alerModal({"message":"添加成功",type:"tip",time:'1000'});
|
|
|
+ }
|
|
|
+ });
|
|
|
+}
|
|
|
+
|
|
|
+
|
|
|
//显示删除/修改弹窗
|
|
|
function showModal(flag,code,i){
|
|
|
$("#delModal .modal-body").html("");
|
|
@@ -311,6 +331,45 @@ function showModal(flag,code,i){
|
|
|
const obj = Object.assign({},info,{msg:$("#delModal #qcMsg").val(),score:$("#delModal #qcScore").val()});
|
|
|
editScore(obj);
|
|
|
});
|
|
|
+ }else if(flag==='2'){ //新增
|
|
|
+ $("#delModal .title").text("新增");
|
|
|
+ $("#delModal .confirm").text("保存");
|
|
|
+ $("#addFlawTmpl").tmpl().appendTo("#delModal .modal-body");
|
|
|
+ $("#flawDropTmpl").tmpl({info:code}).appendTo("#delModal .modal-body ul");
|
|
|
+ //分数输入验证
|
|
|
+ $("#addQcScore").on("input",function(){
|
|
|
+ const val=$(this).val();
|
|
|
+ if(/^[0-9]\d*$|^[0-9]\d*(.\d)?$/.test(val) && val <= 100){
|
|
|
+ $(".add-box .warning").hide();
|
|
|
+ }else{
|
|
|
+ $(".add-box .warning .red").text("支持≥0且≤100的数字输入,最多保留小数点后1位~");
|
|
|
+ $(".add-box .warning").show();
|
|
|
+ }
|
|
|
+ });
|
|
|
+ //提示信息输入验证
|
|
|
+ $("#addQcMsg").on("input",function(){
|
|
|
+ const val=$(this).val();
|
|
|
+ if(val.trim()){
|
|
|
+ $(".add-box .warning").hide();
|
|
|
+ }else{
|
|
|
+ $(".add-box .warning .red").text("提示信息不能为空~");
|
|
|
+ $(".add-box .warning").show();
|
|
|
+ }
|
|
|
+ });
|
|
|
+ $("#delModal .confirm").click(function(){
|
|
|
+ if(!$(".flaw-drop-input").attr("code")){
|
|
|
+ $(".add-box .warning .red").text("请选择质控条目~");
|
|
|
+ $(".add-box .warning").show();
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ const msg=$("#delModal #addQcMsg").val();
|
|
|
+ const score=$("#delModal #addQcScore").val();
|
|
|
+ if($(".add-box .warning").is(":visible")||!msg.trim()||!score){
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ const obj = Object.assign({},global_selectedFlaw,{msg,score});
|
|
|
+ addScore(obj);
|
|
|
+ });
|
|
|
}else{
|
|
|
$("#delModal .title").text("删除评分");
|
|
|
$("#delModal .confirm").text("确定");
|
|
@@ -328,6 +387,57 @@ function formatFlawKeys(data){
|
|
|
}
|
|
|
return obj;
|
|
|
}
|
|
|
+ //获取缺陷条目下拉列表
|
|
|
+ function getQcCasesEntry(name){
|
|
|
+ const id=$("#subMenu [code="+global_activeTab+"]").attr("mode");
|
|
|
+ const param = {
|
|
|
+ 'behospitalCode':global_id,
|
|
|
+ 'entryName':name,
|
|
|
+ 'modeId':id
|
|
|
+ };
|
|
|
+ post(api.findQcCasesEntry,param).then(function(res){
|
|
|
+ if(res.data.code==='0'){
|
|
|
+ const data = res.data.data;
|
|
|
+ if(name){
|
|
|
+ global_flaws=data;
|
|
|
+ $("#delModal .modal-body ul").html("");
|
|
|
+ $("#flawDropTmpl").tmpl({info:data}).appendTo("#delModal .modal-body ul");
|
|
|
+ addFlawEvent();
|
|
|
+ }else{
|
|
|
+ global_flaws=data;
|
|
|
+ showModal('2',data);
|
|
|
+ addFlawEvent();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+//增加条目弹窗元素事件
|
|
|
+ function addFlawEvent(){
|
|
|
+ $(".add-box .flaw-drop-input").off("click").on("click",function(){
|
|
|
+ $(".add-box .drop-box ul").show();
|
|
|
+ });
|
|
|
+ $(".add-box .flaw-drop-input").off("blur").on("blur",function(){
|
|
|
+ setTimeout(function(){
|
|
|
+ $(".add-box .drop-box ul").hide();
|
|
|
+ },300)
|
|
|
+
|
|
|
+ });
|
|
|
+ $(".add-box .flaw-drop-input").off("input").on("input",function(){
|
|
|
+ $(this).attr("code","");
|
|
|
+ getQcCasesEntry($(this).val().trim());
|
|
|
+ });
|
|
|
+ $(".add-box .drop-box li").off("click").on("click",function(){
|
|
|
+ const n = $(this).attr("idx");
|
|
|
+ const flaw=global_flaws[n];
|
|
|
+ const {score,msg,entryName,casesEntryId}=flaw;
|
|
|
+ global_selectedFlaw=flaw;
|
|
|
+ $(".flaw-drop-input").val(entryName).attr("code",casesEntryId);
|
|
|
+ $("#addQcMsg").val(msg);
|
|
|
+ $("#addQcScore").val(score);
|
|
|
+ $(".add-box .warning").hide();
|
|
|
+ $(".add-box .drop-box ul").hide();
|
|
|
+ });
|
|
|
+ }
|
|
|
|
|
|
//更新缺陷列表
|
|
|
function updateFlaws(info){
|