|  | @@ -488,7 +488,7 @@ $(function () {
 | 
	
		
			
				|  |  |                          var tableData = $("#tb_table_western_medicine").bootstrapTable('getData');
 | 
	
		
			
				|  |  |                          if (tableData != null && tableData.length > 0 && dataIndex != null) {
 | 
	
		
			
				|  |  |                              var trData = tableData[dataIndex];
 | 
	
		
			
				|  |  | -                            checkYpInfo(trData.code, trData.serial, trData.ypType, true, null);
 | 
	
		
			
				|  |  | +                            checkYpInfo(trData.code, trData.serial, trData.ypType, true, null,3);
 | 
	
		
			
				|  |  |                              $("#western_medicine_name").click();
 | 
	
		
			
				|  |  |                          }
 | 
	
		
			
				|  |  |                      } else {
 | 
	
	
		
			
				|  | @@ -2887,56 +2887,58 @@ function editPrescription(jsonData, type) {
 | 
	
		
			
				|  |  |                  //appendGroupOrder()
 | 
	
		
			
				|  |  |                  $("#groupId").selectpicker('val', groupOrder);
 | 
	
		
			
				|  |  |                  $('#groupId').selectpicker('refresh');
 | 
	
		
			
				|  |  | -                //模板和历史轨迹回调的时候,如果前一个处方不满5个,就将后面的处方的药品添加到上一个处方中,但如果同一组药不能全部添加到上一个处方,就不会追加到该处方中
 | 
	
		
			
				|  |  | -                var orderNoLength = orderNoAndLengthMap.get(orderNo);
 | 
	
		
			
				|  |  | -                if (currentOrderNo == null) {
 | 
	
		
			
				|  |  | -                    currentOrderNo = orderNo;
 | 
	
		
			
				|  |  | -                } else if (orderAndGroupNoMap.get(currentOrderNo) != orderAndGroupNoMap.get(orderNo)) {
 | 
	
		
			
				|  |  | -                    var currentGroupNos = $("#xyTabContent").find("input.current_groupNo");
 | 
	
		
			
				|  |  | -                    //查询还没有满5个的处方页
 | 
	
		
			
				|  |  | -                    var tempOrderNo = null;
 | 
	
		
			
				|  |  | -                    for (var k = 0; k < currentGroupNos.length; k++) {
 | 
	
		
			
				|  |  | -                        if ($(currentGroupNos[k]).val() == groupNo) {
 | 
	
		
			
				|  |  | -                            var next = $(currentGroupNos[k]).next();
 | 
	
		
			
				|  |  | -                            if ($(next).children().length < 4) {
 | 
	
		
			
				|  |  | -                                var parentId = $(currentGroupNos[k]).parent().attr("id");
 | 
	
		
			
				|  |  | -                                tempOrderNo = tableIdAndOrderNoMap.get(parentId);
 | 
	
		
			
				|  |  | +                if(type==1 || type==2){
 | 
	
		
			
				|  |  | +                    //模板和历史轨迹回调的时候,如果前一个处方不满5个,就将后面的处方的药品添加到上一个处方中,但如果同一组药不能全部添加到上一个处方,就不会追加到该处方中
 | 
	
		
			
				|  |  | +                    var orderNoLength = orderNoAndLengthMap.get(orderNo);
 | 
	
		
			
				|  |  | +                    if (currentOrderNo == null) {
 | 
	
		
			
				|  |  | +                        currentOrderNo = orderNo;
 | 
	
		
			
				|  |  | +                    } else if (orderAndGroupNoMap.get(currentOrderNo) != orderAndGroupNoMap.get(orderNo)) {
 | 
	
		
			
				|  |  | +                        var currentGroupNos = $("#xyTabContent").find("input.current_groupNo");
 | 
	
		
			
				|  |  | +                        //查询还没有满5个的处方页
 | 
	
		
			
				|  |  | +                        var tempOrderNo = null;
 | 
	
		
			
				|  |  | +                        for (var k = 0; k < currentGroupNos.length; k++) {
 | 
	
		
			
				|  |  | +                            if ($(currentGroupNos[k]).val() == groupNo) {
 | 
	
		
			
				|  |  | +                                var next = $(currentGroupNos[k]).next();
 | 
	
		
			
				|  |  | +                                if ($(next).children().length < 4) {
 | 
	
		
			
				|  |  | +                                    var parentId = $(currentGroupNos[k]).parent().attr("id");
 | 
	
		
			
				|  |  | +                                    tempOrderNo = tableIdAndOrderNoMap.get(parentId);
 | 
	
		
			
				|  |  | +                                }
 | 
	
		
			
				|  |  |                              }
 | 
	
		
			
				|  |  |                          }
 | 
	
		
			
				|  |  | -                    }
 | 
	
		
			
				|  |  | -                    currentOrderNo = tempOrderNo;
 | 
	
		
			
				|  |  | -                } else if (currentOrderNo != orderNo && orderNoLength < 5) {
 | 
	
		
			
				|  |  | -                    var currentOrderNoLength = orderNoAndLengthMap.get(currentOrderNo);
 | 
	
		
			
				|  |  | -                    var groupOrderLength = groupOrderAndLengthMap.get(groupOrder);
 | 
	
		
			
				|  |  | -                    if (groupOrderLength + currentOrderNoLength <= 5) {
 | 
	
		
			
				|  |  | -                        currentOrderNoLength = currentOrderNoLength + 1;
 | 
	
		
			
				|  |  | -                        orderNoLength = orderNoLength - 1;
 | 
	
		
			
				|  |  | -                        groupOrderLength = groupOrderLength - 1;
 | 
	
		
			
				|  |  | -                        orderNoAndLengthMap.put(currentOrderNo, currentOrderNoLength);
 | 
	
		
			
				|  |  | -                        orderNoAndLengthMap.put(orderNo, orderNoLength);
 | 
	
		
			
				|  |  | -                        groupOrderAndLengthMap.put(groupOrder, groupOrderLength);
 | 
	
		
			
				|  |  | -                        orderNo = currentOrderNo;
 | 
	
		
			
				|  |  | -                        if (currentOrderNoLength == 5) {
 | 
	
		
			
				|  |  | -                            var currentGroupNos = $("#xyTabContent").find("input.current_groupNo");
 | 
	
		
			
				|  |  | -                            //查询还没有满5个的处方页,
 | 
	
		
			
				|  |  | -                            var tempOrderNo = null;
 | 
	
		
			
				|  |  | -                            for (var k = 0; k < currentGroupNos.length; k++) {
 | 
	
		
			
				|  |  | -                                if ($(currentGroupNos[k]).val() == groupNo) {
 | 
	
		
			
				|  |  | -                                    var next = $(currentGroupNos[k]).next();
 | 
	
		
			
				|  |  | -                                    //这里判断是4,是因为已经把组号设置了,所以要减去1
 | 
	
		
			
				|  |  | -                                    if ($(next).children().length < 4) {
 | 
	
		
			
				|  |  | -                                        var parentId = $(currentGroupNos[k]).parent().attr("id");
 | 
	
		
			
				|  |  | -                                        tempOrderNo = tableIdAndOrderNoMap.get(parentId);
 | 
	
		
			
				|  |  | +                        currentOrderNo = tempOrderNo;
 | 
	
		
			
				|  |  | +                    } else if (currentOrderNo != orderNo && orderNoLength < 5) {
 | 
	
		
			
				|  |  | +                        var currentOrderNoLength = orderNoAndLengthMap.get(currentOrderNo);
 | 
	
		
			
				|  |  | +                        var groupOrderLength = groupOrderAndLengthMap.get(groupOrder);
 | 
	
		
			
				|  |  | +                        if (groupOrderLength + currentOrderNoLength <= 5) {
 | 
	
		
			
				|  |  | +                            currentOrderNoLength = currentOrderNoLength + 1;
 | 
	
		
			
				|  |  | +                            orderNoLength = orderNoLength - 1;
 | 
	
		
			
				|  |  | +                            groupOrderLength = groupOrderLength - 1;
 | 
	
		
			
				|  |  | +                            orderNoAndLengthMap.put(currentOrderNo, currentOrderNoLength);
 | 
	
		
			
				|  |  | +                            orderNoAndLengthMap.put(orderNo, orderNoLength);
 | 
	
		
			
				|  |  | +                            groupOrderAndLengthMap.put(groupOrder, groupOrderLength);
 | 
	
		
			
				|  |  | +                            orderNo = currentOrderNo;
 | 
	
		
			
				|  |  | +                            if (currentOrderNoLength == 5) {
 | 
	
		
			
				|  |  | +                                var currentGroupNos = $("#xyTabContent").find("input.current_groupNo");
 | 
	
		
			
				|  |  | +                                //查询还没有满5个的处方页,
 | 
	
		
			
				|  |  | +                                var tempOrderNo = null;
 | 
	
		
			
				|  |  | +                                for (var k = 0; k < currentGroupNos.length; k++) {
 | 
	
		
			
				|  |  | +                                    if ($(currentGroupNos[k]).val() == groupNo) {
 | 
	
		
			
				|  |  | +                                        var next = $(currentGroupNos[k]).next();
 | 
	
		
			
				|  |  | +                                        //这里判断是4,是因为已经把组号设置了,所以要减去1
 | 
	
		
			
				|  |  | +                                        if ($(next).children().length < 4) {
 | 
	
		
			
				|  |  | +                                            var parentId = $(currentGroupNos[k]).parent().attr("id");
 | 
	
		
			
				|  |  | +                                            tempOrderNo = tableIdAndOrderNoMap.get(parentId);
 | 
	
		
			
				|  |  | +                                        }
 | 
	
		
			
				|  |  |                                      }
 | 
	
		
			
				|  |  |                                  }
 | 
	
		
			
				|  |  | +                                currentOrderNo = tempOrderNo;
 | 
	
		
			
				|  |  |                              }
 | 
	
		
			
				|  |  | -                            currentOrderNo = tempOrderNo;
 | 
	
		
			
				|  |  | +                        } else {
 | 
	
		
			
				|  |  | +                            currentOrderNo = orderNo;
 | 
	
		
			
				|  |  |                          }
 | 
	
		
			
				|  |  | -                    } else {
 | 
	
		
			
				|  |  | -                        currentOrderNo = orderNo;
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  | -                checkYpInfo(code, serial, groupNo, false, orderNo);
 | 
	
		
			
				|  |  | +                checkYpInfo(code, serial, groupNo, false, orderNo,type);
 | 
	
		
			
				|  |  |                  // 给药方式 同组药品给药方式相同
 | 
	
		
			
				|  |  |                  $("#supplyType").selectpicker('val', mzChargeDetail.supplyCode);
 | 
	
		
			
				|  |  |                  $('#supplyType').selectpicker('refresh');
 | 
	
	
		
			
				|  | @@ -6372,7 +6374,7 @@ function loadYpList(index, event) {
 | 
	
		
			
				|  |  |              $('#' + MedicineName).webuiPopover('hide');
 | 
	
		
			
				|  |  |              if (index == 0) {
 | 
	
		
			
				|  |  |                  clearWesternMedicine(false);
 | 
	
		
			
				|  |  | -                checkYpInfo(row.code, row.serial, row.ypType, true, null);
 | 
	
		
			
				|  |  | +                checkYpInfo(row.code, row.serial, row.ypType, true, null,3);
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |              if (index == 1) {
 | 
	
		
			
				|  |  |                  checkZyInfo(row.code, row.serial, true);
 | 
	
	
		
			
				|  | @@ -6389,8 +6391,9 @@ function loadYpList(index, event) {
 | 
	
		
			
				|  |  |   * @param groupNo
 | 
	
		
			
				|  |  |   * @param needNotice 是否需要提示 当用户操作的时候 true 需要提示, 范文和处方回写的时候false不需要提示
 | 
	
		
			
				|  |  |   * @param orderNo 处方号,回写的时候需要用,因为有的处方没有满5个
 | 
	
		
			
				|  |  | + * @param type 操作类型  0 修改 1 医疗范文 2 就诊详情 3 处方开立
 | 
	
		
			
				|  |  |   */
 | 
	
		
			
				|  |  | -function checkYpInfo(code, serial, groupNo, needNotice, orderNo) {
 | 
	
		
			
				|  |  | +function checkYpInfo(code, serial, groupNo, needNotice, orderNo,type) {
 | 
	
		
			
				|  |  |      //判断是否有重复的项目  返回true 说明有重复的
 | 
	
		
			
				|  |  |      if (verifyRepeat(code, serial, null, 0)) {
 | 
	
		
			
				|  |  |          return;
 | 
	
	
		
			
				|  | @@ -6450,7 +6453,7 @@ function checkYpInfo(code, serial, groupNo, needNotice, orderNo) {
 | 
	
		
			
				|  |  |                                      //$("#xyTab").find("a[href='#" + tableId + "']").off("click").click();
 | 
	
		
			
				|  |  |                                      //因为存在没有满5个的处方页,直接保存到该页
 | 
	
		
			
				|  |  |                                      needAddTable = false;
 | 
	
		
			
				|  |  | -                                    fitWesternMedicine(res, groupNo);
 | 
	
		
			
				|  |  | +                                    fitWesternMedicine(res, groupNo,type);
 | 
	
		
			
				|  |  |                                  }
 | 
	
		
			
				|  |  |                              }
 | 
	
		
			
				|  |  |                          }
 | 
	
	
		
			
				|  | @@ -6470,14 +6473,14 @@ function checkYpInfo(code, serial, groupNo, needNotice, orderNo) {
 | 
	
		
			
				|  |  |                                  $("#messageButton").off("click").on("click", function (t) {
 | 
	
		
			
				|  |  |                                      $("#messageModal").modal("hide");
 | 
	
		
			
				|  |  |                                      refreshNavTabs(0, groupNo, orderNo);
 | 
	
		
			
				|  |  | -                                    fitWesternMedicine(res, groupNo);
 | 
	
		
			
				|  |  | +                                    fitWesternMedicine(res, groupNo,type);
 | 
	
		
			
				|  |  |                                      // //选中药品后,光标默认到用法
 | 
	
		
			
				|  |  |                                      // $("#supplyType").next().click();
 | 
	
		
			
				|  |  |                                  });
 | 
	
		
			
				|  |  |                                  $("#cancelButton").off("click");
 | 
	
		
			
				|  |  |                              } else {
 | 
	
		
			
				|  |  |                                  refreshNavTabs(0, groupNo, orderNo);
 | 
	
		
			
				|  |  | -                                fitWesternMedicine(res, groupNo);
 | 
	
		
			
				|  |  | +                                fitWesternMedicine(res, groupNo,type);
 | 
	
		
			
				|  |  |                              }
 | 
	
		
			
				|  |  |                          }
 | 
	
		
			
				|  |  |                          //当前编辑的处方非普通西药处方
 | 
	
	
		
			
				|  | @@ -6488,12 +6491,12 @@ function checkYpInfo(code, serial, groupNo, needNotice, orderNo) {
 | 
	
		
			
				|  |  |                              $("#messageButton").off("click").on("click", function (t) {
 | 
	
		
			
				|  |  |                                  $("#messageModal").modal("hide");
 | 
	
		
			
				|  |  |                                  refreshNavTabs(0, groupNo, orderNo);
 | 
	
		
			
				|  |  | -                                fitWesternMedicine(res, groupNo);
 | 
	
		
			
				|  |  | +                                fitWesternMedicine(res, groupNo,type);
 | 
	
		
			
				|  |  |                              });
 | 
	
		
			
				|  |  |                              $("#cancelButton").off("click");
 | 
	
		
			
				|  |  |                          } else {
 | 
	
		
			
				|  |  |                              refreshNavTabs(0, groupNo, orderNo);
 | 
	
		
			
				|  |  | -                            fitWesternMedicine(res, groupNo);
 | 
	
		
			
				|  |  | +                            fitWesternMedicine(res, groupNo,type);
 | 
	
		
			
				|  |  |                          }
 | 
	
		
			
				|  |  |                      } else {
 | 
	
		
			
				|  |  |                          //修改药品
 | 
	
	
		
			
				|  | @@ -6514,10 +6517,10 @@ function checkYpInfo(code, serial, groupNo, needNotice, orderNo) {
 | 
	
		
			
				|  |  |                              } else {
 | 
	
		
			
				|  |  |                                  refreshNavTabs(0, groupNo, orderNo);
 | 
	
		
			
				|  |  |                              }
 | 
	
		
			
				|  |  | -                            fitWesternMedicine(res, groupNo);
 | 
	
		
			
				|  |  | +                            fitWesternMedicine(res, groupNo,type);
 | 
	
		
			
				|  |  |                          } else {
 | 
	
		
			
				|  |  |                              $("#xyTab li.active").find("a").find("small.cfdesc").text("(" + cfdesc + ")");
 | 
	
		
			
				|  |  | -                            fitWesternMedicine(res, groupNo);
 | 
	
		
			
				|  |  | +                            fitWesternMedicine(res, groupNo,type);
 | 
	
		
			
				|  |  |                          }
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  |                  }
 | 
	
	
		
			
				|  | @@ -7432,10 +7435,14 @@ function autoAddGroupId(res) {
 | 
	
		
			
				|  |  |   * 填充西药选中的内容
 | 
	
		
			
				|  |  |   * @param res
 | 
	
		
			
				|  |  |   * @param groupNo
 | 
	
		
			
				|  |  | + * @param type 操作类型  0 修改 1 医疗范文 2 就诊详情 3 处方开立
 | 
	
		
			
				|  |  |   */
 | 
	
		
			
				|  |  | -function fitWesternMedicine(res, groupNo) {
 | 
	
		
			
				|  |  | +function fitWesternMedicine(res, groupNo,type) {
 | 
	
		
			
				|  |  |      hintProjectSelfPayInfo(res.data.selfpayProp, "药品");
 | 
	
		
			
				|  |  | -    autoAddGroupId(res);
 | 
	
		
			
				|  |  | +    if(type!=0){
 | 
	
		
			
				|  |  | +        //处方修改的时候不改变组号
 | 
	
		
			
				|  |  | +        autoAddGroupId(res);
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  |      $("#categoriesFlag").val(res.data.categoriesFlag);
 | 
	
		
			
				|  |  |      //prevCategoriesFlag = res.data.categoriesFlag;
 | 
	
		
			
				|  |  |      $("#western_medicine_name").val(res.data.name);
 |