qcScore.js 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165
  1. require("../css/qcScore.less");
  2. const $ = require('jquery');
  3. require('jquery-templates');
  4. const {api,post,getUrlArgObject} = require('./utils.js');
  5. //本页全局变量
  6. let global_flawData = {}; //缺陷数据
  7. const global_id=getUrlArgObject("id");
  8. let global_activeTab=$(".sub-menu .page.active").attr("code"); //当前激活菜单项
  9. $(function(){
  10. //getSubMenu();
  11. //initScoreItem();
  12. getRecordDetail();
  13. function initMenu(data){
  14. //菜单数据填充
  15. $("#subMenuTmpl").tmpl(data).appendTo("#subMenu");
  16. //菜单收起展开
  17. $(".list-1").on("click",function(){
  18. $(".list-1 .slide-up").removeClass('slide-up');
  19. $(this).toggleClass('slide-up');
  20. $(this).find("ul").slideToggle();
  21. });
  22. $(".list-1 li").on("click",function(e){
  23. e.stopPropagation();
  24. });
  25. //右侧内容切换
  26. $(".page").on("click",function(){
  27. //选中样式
  28. $(".sub-menu .active").removeClass('active');
  29. $(this).addClass("active");
  30. //显示对应内容
  31. const code=$(this).attr("code");
  32. global_activeTab=code;
  33. $(".content-item,.flaw-item").hide();
  34. $(".content-item[code="+code+"],.flaw-item[code="+code+"]").show();
  35. });
  36. }
  37. /*function getSubMenu(){
  38. post(api.getSubMenu).then(function(res){
  39. if(res.data.code==='0'){
  40. const data = res.data.data;
  41. initMenu(data);
  42. $(".sub-menu li:first-child.page").addClass("active");
  43. }
  44. });
  45. };*/
  46. //获取病例明细
  47. function getRecordDetail(){
  48. post(api.getRecordDetail,{'behospitalCode':global_id}).then(function(res){
  49. if(res.data.code==='0'){
  50. const data = res.data.data;
  51. const {beHospital,result,msg} = data;
  52. const info=Object.assign(beHospital,result);
  53. initMenu(JSON.parse(result.menuData));
  54. $(".sub-menu li:first-child.page").addClass("active");
  55. global_activeTab=$(".sub-menu .page.active").attr("code");
  56. initPatientInfo(info);
  57. initContent(result.pageData);
  58. initScoreItem(msg);
  59. global_flawData=msg;
  60. }
  61. });
  62. }
  63. //填充患者信息
  64. function initPatientInfo(data){
  65. $("#infoTmpl").tmpl(data).appendTo("#patientInfo");
  66. }
  67. //显示病例模块明细
  68. function initContent(data){
  69. const obj = JSON.parse(data);
  70. for(let k in obj){
  71. $("#contentTmpl").tmpl({title:k,info:obj[k]}).appendTo("#contentInfo");
  72. }
  73. $(".content-item[code="+global_activeTab+"]").show();
  74. console.log(obj)
  75. }
  76. //评分项数据填充
  77. function initScoreItem(data){
  78. $("#flaws .flaw-box").html("");
  79. for(let k in data){
  80. $("#flawTmpl").tmpl(data[k]).appendTo("#flaws .flaw-box");
  81. }
  82. $(".flaw-item[code="+global_activeTab+"]").show();
  83. $(".flaw-item .oper a").click(function () {
  84. //const activeTab=$(".sub-menu .page.active").attr("code");
  85. const i = $(".flaw-item[code="+global_activeTab+"]").index($(this).parents(".flaw-item"));
  86. const code=$(this).attr("code");
  87. const isEdit = $(this).is(".edit-flaw");
  88. showModal(isEdit?'0':'1',code,i);
  89. })
  90. }
  91. //删除评分项
  92. function delScore(id){
  93. const param={
  94. 'behospitalCode':global_id,
  95. 'optResultAlgVO':{
  96. 'id':id
  97. }
  98. };
  99. post(api.delScore,param).then(function(res){
  100. if(res.data.code==='0'){
  101. $("#delModal").hide();
  102. updateFlaws();
  103. alert('删除成功');
  104. }
  105. });
  106. }
  107. //修改评分项
  108. function editScore(info){
  109. const param={
  110. "behospitalCode": global_id,
  111. "optResultAlgVO": info
  112. };
  113. post(api.editScore,param).then(function(res){
  114. if(res.data.code==='0'){
  115. $("#delModal").hide();
  116. updateFlaws();
  117. alert("修改成功");
  118. }
  119. });
  120. }
  121. //显示删除/修改弹窗
  122. function showModal(flag,code,i){
  123. $("#delModal .modal-body").html("");
  124. $("#delModal").show();
  125. $("#delModal .confirm").off("click");
  126. const info = global_flawData[global_activeTab][i];
  127. if(flag==='0'){ //修改
  128. $("#delModal .title").text("修改评分");
  129. $("#editTmpl").tmpl(info).appendTo("#delModal .modal-body");
  130. $("#delModal .confirm").click(function(){
  131. const obj = Object.assign({},info,{msg:$("#delModal #qcMsg").val(),score:$("#delModal #qcScore").val()});
  132. editScore(obj);
  133. });
  134. }else{
  135. $("#delModal .title").text("删除评分");
  136. $("#delModal .modal-body").html('<p>确定要删除该评分记录吗?</p>');
  137. $("#delModal .confirm").click(function(){
  138. delScore(code,info);
  139. });
  140. }
  141. }
  142. //更新缺陷列表
  143. function updateFlaws(){
  144. const param = {
  145. 'behospitalCode':global_id,
  146. 'paramStr':[
  147. "msg"
  148. ]
  149. };
  150. post(api.getRecordDetail,param).then(function(res){
  151. if(res.data.code==='0'){
  152. const data = res.data.data;
  153. const {msg} = data;
  154. initScoreItem(msg);
  155. global_flawData=msg;
  156. }
  157. });
  158. }
  159. });