Przeglądaj źródła

门诊处方保存的时候,校验是否进行了读卡操作

hurugang 3 lat temu
rodzic
commit
228cc634e6
1 zmienionych plików z 56 dodań i 6 usunięć
  1. 56 6
      src/main/resources/static/js/mz/clinic.js

+ 56 - 6
src/main/resources/static/js/mz/clinic.js

@@ -12,6 +12,8 @@ var printIndex = -1;
 var prevEleId = null;
 //打开检查检验报告的时候不知道哪个有报告,如果检查没有就自动打开检验,但是为了防止死循环,次数加到1就不在进行重试
 var retryCount = 0;
+//是否在读卡中
+var mztczfSiReadCardStatus =false;
 $(function () {
     initGenderSelect();
     iniAdmissStatus();
@@ -775,7 +777,7 @@ $(function () {
      * 门诊统筹支付医保电子凭证读卡
      */
     $("#mztczfSiReadCard").on("click", function (t) {
-        mztczfSiReadCard();
+        mztczfSiReadCard(true);
     });
 
 
@@ -1958,18 +1960,22 @@ function queryInsuinfo(patientId) {
 
 /**
  * 读医保电子凭证
+ * @param asyncFlag true 异步 false 同步
  */
-function mztczfSiReadCard() {
+function mztczfSiReadCard(asyncFlag) {
+    mztczfSiReadCardStatus =true;
     $.ajax({
         type: "GET",
         url: 'http://localhost:8321/readcard/entry?param=qrcode_01101',
         contentType: "application/json;charset=UTF-8",
         dataType: "json",
+        async:asyncFlag,
         headers: {
             'Accept': 'application/json',
             'Authorization': 'Bearer ' + localStorage.getItem("token")
         },
         success: function (res) {
+            mztczfSiReadCardStatus =false;
             if (res == '401' || res == 401) {
                 window.location.href = '/thmz/login/view'
                 return;
@@ -1981,11 +1987,25 @@ function mztczfSiReadCard() {
                 $("#ecToken").val(data.ecToken);
                 $("#idNo").val(data.idNo);
                 $("#userNameMztc").val(data.userName);
+                $("#messageContent").html("读卡成功,是否保存处方?");
             } else {
+                $("#messageContent").html("读卡失败,是否保存处方(不享受门诊统筹)?");
                 errorMesage(res);
             }
+        },
+        error:function (XMLHttpRequest, textStatus, errorThrown){
+            mztczfSiReadCardStatus =false;
+            $("#messageContent").html("读卡异常,是否保存处方(不享受门诊统筹)?");
         }
-    });
+});
+}
+
+/**
+ * 实际读医保电子凭证
+ * @param asyncFlag true 异步 false 同步
+ */
+function realMztczfSiReadCard(asyncFlag) {
+
 }
 
 /**
@@ -7653,10 +7673,40 @@ function savePrescription() {
     $("#chinese_medicine_name").webuiPopover('hide');
     $("#jcJyItem").webuiPopover('hide');
     $("#zlItem").webuiPopover('hide');
-    $("#messageModal").modal();
+    var zgmztczf=$("#zgmztczf").val();
+    var idNo=$("#idNo").val();
+    if((zgmztczf==1||zgmztczf=="1") &&(idNo==null || idNo=="")){
+        $("#messageModal").modal();
+        $("#messageContent").html("门诊统筹处方必须读卡,是否立即读卡?");
+        $("#messageButton").off("click").bind("click", function (t) {
+            mztczfSiReadCard(true);
+            realSavePrescription(false);
+        });
+        $("#cancelButton").off("click").bind("click", function (t) {
+            t.stopPropagation();
+            t.preventDefault();
+            realSavePrescription(false);
+        });
+    }else {
+        realSavePrescription(true);
+    }
+}
+
+
+/**
+ * 最终保存处方方法
+ * @param openModel 是否需要打开提示弹层 true 需要 false 不需要
+ */
+function realSavePrescription(openModel) {
+    if(openModel){
+        $("#messageModal").modal();
+    }
     $("#messageContent").html("确认保存处方吗?");
-    $("#messageButton").off("click").on("click", function (t) {
-        //$("#messageModal").modal("hide");
+    $("#messageButton").off("click").bind("click", function (t) {
+        if(mztczfSiReadCardStatus){
+            $("#messageContent").html("门诊统筹正在读卡中,次操作需与医保中心交互,耗时较长,请耐心等待...");
+            return;
+        }
         $("#messageButton").attr("disabled", true);
         var jsonData = getParamsForpPrescription(1);
         $.ajax({