<template>
  <div id="dialysis-print-box">
    <div class="dialysis-print-order">
      <div class="order-yy-name"></div>
      <div class="order-title">{{ orgname }}&nbsp;&nbsp;&nbsp;血液净化治疗记录单</div>
      <table class="print-table" border="1" style="margin-top: 10px;">
        <tr>
          <td style="text-align:left;">
            <span style="display:inline-block;margin-left:15px;">{{ getDatge(queryParams.xtdate) }}</span>
          </td>
          <td style="text-align:center;">
            姓名:
            <span style="display:inline-block;margin-left:10px;">{{patientInfo.name}}</span>
          </td>
          <td style="text-align:center;">
            性别:
            <span style="display:inline-block;margin-left:10px;">{{ patientInfo.gender }}</span>
          </td>
          <td style="text-align:center;">
            年龄:
            <span style="display:inline-block;margin-left:10px;">{{ getAge(patientInfo) }}</span>
          </td>
          <td style="text-align:center;">
            <label-box showValue="门诊" :isChecked="patientInfo_source_1?true:false"></label-box>
            <label-box showValue="住院" :isChecked="patientInfo_source_2?true:false"></label-box>
          </td>
          <td style="text-align:center;">
            <template v-if="patientInfo_source_2">
              住院号:
              <span
                style="display:inline-block;margin-left:10px;"
              >{{receiverTreatmentAccess.admission_number?receiverTreatmentAccess.admission_number:"/"}}</span>
            </template>
            <template v-else>
              门诊号:
              <span
                style="display:inline-block;margin-left:10px;"
              >{{patientInfo.admission_number?patientInfo.admission_number:"/"}}</span>
            </template>
          </td>
          <td style="text-align:center;">
            机器号:
            <span style="display:inline-block;margin-left:10px;">
              {{
              dialysisOrder &&
              dialysisOrder.DeviceNumber &&
              dialysisOrder.DeviceNumber.number > 0
              ? dialysisOrder.DeviceNumber.number
              : patientInfo.DialysisSchedule.device_number.number
              }}
            </span>
          </td>
        </tr>
        <tr>
          <td style="text-align:left;" colspan="2">
            <span style="display:inline-block;margin-left:15px;">治疗方式:</span>
            <label-box :isChecked="prescription.mode_id == 1 ? true : false" showValue="HD"></label-box>&nbsp;
            <label-box :isChecked="prescription.mode_id == 2 ? true : false" showValue="HDF"></label-box>&nbsp;
            <label-box :isChecked="prescription.mode_id == 4 ? true : false" showValue="HP"></label-box>&nbsp;
            <label-box :isChecked="prescription.mode_id == 7 ? true : false" showValue="IUF"></label-box>&nbsp;
            <label-box :isChecked="prescription.mode_id == 5 ? true : false" showValue="HF"></label-box>&nbsp;
          </td>
          <td style="text-align:left;" colspan="5">
            <span style="display:inline-block;margin-left:15px;">诊断: {{patientInfo.diagnose}}</span>
          </td>
        </tr>
        <tr>
          <td style="text-align:left;" colspan="1">
            <span style="display:inline-block;margin-left:15px;">
              干体重:
              {{
              predialysis.dry_weight ? predialysis.dry_weight : "/"
              }}kg
            </span>
          </td>
          <td style="text-align:left;" colspan="1">
            <span
              style="display:inline-block;margin-left:15px;"
            >电导率:{{prescription.conductivity?prescription.conductivity:"/"}}&nbsp;(mS/cm)</span>
          </td>
          <td style="text-align:left;" colspan="2">
            <span style="display:inline-block;margin-left:15px;">
              钙:
              {{ prescription.calcium ? prescription.calcium : "/" }}&nbsp;mmol/L
            </span>
          </td>
          <td style="text-align:left;" colspan="4">
            <span
              style="display:inline-block;margin-left:15px;"
            >透析液温度:{{prescription.dialysate_temperature?prescription.dialysate_temperature:"/"}}&nbsp;℃</span>
          </td>
        </tr>
        <tr>
          <td style="text-align:left;" colspan="1">
            <span style="display:inline-block;margin-left:15px;" >透前体重:{{predialysis.weight_before?predialysis.weight_before:"/"}}kg</span>
          </td>
          <td style="text-align:left;" colspan="1">
            <span
              style="display:inline-block;margin-left:15px;"
            >设定脱水量:{{prescription.target_ultrafiltration?prescription.target_ultrafiltration:"/"}}L</span>
          </td>
          <td style="text-align:left;" colspan="2">
            <span style="display:inline-block;margin-left:15px;">
              <label-box :isChecked="anticoagulant == 1 ? true : false" showValue="无肝素"></label-box>
            </span>
          </td>
          <td style="text-align:left;" colspan="1">
            <span style="display:inline-block;margin-left:15px;">
              肝素首剂:
              {{
              prescription.anticoagulant_shouji
              ? prescription.anticoagulant_shouji
              : "/"
              }}
            </span>
            <span v-if="prescription.anticoagulant == 4">mg</span>
            <span v-if="prescription.anticoagulant == 3">iu</span>
            <span v-if="prescription.anticoagulant == 2">iu</span>
            <span v-if="prescription.anticoagulant == 1">mg</span>
          </td>
          <td style="text-align:left;" colspan="1">
            <span style="display:inline-block;margin-left:15px;">
              维持:
              {{
              prescription.anticoagulant_weichi
              ? prescription.anticoagulant_weichi
              : "/"
              }}
            </span>
            <span v-if="prescription.anticoagulant == 5">ml/h</span>
            <span v-if="prescription.anticoagulant == 4">mg/h</span>
            <span v-if="prescription.anticoagulant == 3">iu/h</span>
            <span v-if="prescription.anticoagulant == 2">iu/h</span>
            <span v-if="prescription.anticoagulant == 1">mg/h</span>
          </td>
          <td style="text-align:left;" colspan="2">
            <span style="display:inline-block;margin-left:15px;">
              总量:
              {{
              prescription.anticoagulant_zongliang
              ? prescription.anticoagulant_zongliang
              : "/"
              }}
            </span>
            <span v-if="prescription.anticoagulant == 4">mg</span>
            <span v-if="prescription.anticoagulant == 3">iu</span>
            <span v-if="prescription.anticoagulant == 2">iu</span>
            <span v-if="prescription.anticoagulant == 1">mg</span>
          </td>
        </tr>
        <tr>
          <td style="text-align:left;" colspan="1">
            <span style="display:inline-block;margin-left:15px;">
              透后体重:
              {{afterdialysis.weight_after ? parseFloat( afterdialysis.weight_after - afterdialysis.additional_weight ).toFixed(1) : "/"}}kg
            </span>
          </td>
          <td style="text-align:left;" colspan="1">
            <span
              style="display:inline-block;margin-left:15px;"
            >实际脱水量:{{afterdialysis.actual_ultrafiltration?afterdialysis.actual_ultrafiltration:"/"}}L</span>
          </td>
          <td style="text-align:left;" colspan="2">
            <span
              style="display:inline-block;margin-left:15px;"
            >透析时间: {{afterdialysis.actual_treatment_hour ? afterdialysis.actual_treatment_hour : "0" }}小时{{afterdialysis.actual_treatment_minute ? afterdialysis.actual_treatment_minute :"0"}}分钟</span>
          </td>
          <td style="text-align:left;" colspan="1">
            <span
              style="display:inline-block;margin-left:15px;"
            >透析器型号:{{ prescription.dialyzer_perfusion_apparatus ? prescription.dialyzer_perfusion_apparatus : "/" }}</span>
          </td>
          <td style="text-align:left;" colspan="2">
            <span style="display:inline-block;margin-left:15px;">
              置换方式:
              <label-box
                :isChecked="prescription.displace_liqui_part == 1 ? true : false"
                showValue="前"
              ></label-box>&nbsp;
              <label-box
                :isChecked="prescription.displace_liqui_part == 2 ? true : false"
                showValue="后"
              ></label-box>
              &nbsp;
              (总量：{{prescription.displace_liqui_value ? prescription.displace_liqui_value : "/" }}L)
            </span>
          </td>
        </tr>
        <tr>
          <td style="text-align:left;" colspan="1">
            <span style="display:inline-block;margin-left:15px;">
              <span v-if="orderForm.url === ''">责任护士:{{orderForm.start_nurse}}</span>
              <span v-if="orderForm.url !==''">
                责任护士:
                <img :src="orderForm.url" style="height:20px;" />
              </span>
            </span>
          </td>
          <td style="text-align:left;" colspan="1">
            <span style="display:inline-block;margin-left:15px;">
              <span v-if="orderForm.url === ''">上机护士:{{orderForm.start_nurse}}</span>
              <span v-if="orderForm.url !==''">
                上机护士:
                <img :src="orderForm.url" style="height:20px;" />
              </span>
            </span>
          </td>
          <td style="text-align:left;" colspan="3">
            <span style="display:inline-block;margin-left:15px;">
              <span v-if="orderForm.url === ''">抗凝剂执行护士:{{orderForm.start_nurse}}</span>
              <span v-if="orderForm.url !==''">
                抗凝剂执行护士:
                <img :src="orderForm.url" style="height:20px;" />
              </span>
            </span>
          </td>
          <td style="text-align:left;" colspan="3">
            <span style="display:inline-block;margin-left:15px;">
              <span v-if="doctorForm.url === ''">医生签名:{{doctorForm.doctor}}</span>
              <span v-if="doctorForm.url!==''">
                医生签名:
                <img style="height:20px" :src="doctorForm.url" />
              </span>
            </span>
          </td>
        </tr>
        <tr>
          <td style="text-align:left;" colspan="4">
            <span style="display:inline-block;margin-left:15px;">
              透前评估:
              入科方式:
              <label-box
                :isChecked="receiverTreatmentAccess.way == 1 ? true : false"
                showValue="步行"
              ></label-box>&nbsp;
              <label-box
                :isChecked="receiverTreatmentAccess.way == 2 ? true : false"
                showValue="扶行"
              ></label-box>&nbsp;
              <label-box
                :isChecked="receiverTreatmentAccess.way == 3 ? true : false"
                showValue="轮椅"
              ></label-box>&nbsp;
              <label-box
                :isChecked="receiverTreatmentAccess.way == 4 ? true : false"
                showValue="平车"
              ></label-box>&nbsp;
            </span>
          </td>
          <td style="text-align:left;" colspan="4">
            <span style="display:inline-block;margin-left:15px;">
              意识:
              <label-box
                :isChecked="receiverTreatmentAccess.consciousness == 1 ? true : false"
                showValue="清醒"
              ></label-box>&nbsp;
              <label-box
                :isChecked="receiverTreatmentAccess.consciousness == 2 ? true : false"
                showValue="嗜睡"
              ></label-box>&nbsp;
              <label-box
                :isChecked="receiverTreatmentAccess.consciousness == 4 ? true : false"
                showValue="模糊"
              ></label-box>&nbsp;
              <label-box
                :isChecked="receiverTreatmentAccess.consciousness == 3 ? true : false"
                showValue="昏迷"
              ></label-box>&nbsp;
            </span>
          </td>
        </tr>
        <tr>
          <td colspan="2" style="text-align:left;">
            <span style="display:inline-block;margin-left:15px;">食欲:</span>
            <label-box
              :isChecked="receiverTreatmentAccess.appetite == 1 ? true : false"
              showValue="正常"
            ></label-box>&nbsp;
            <label-box
              :isChecked="receiverTreatmentAccess.appetite == 2 ? true : false"
              showValue="减退"
            ></label-box>&nbsp;
            <label-box
              :isChecked="receiverTreatmentAccess.appetite == 3 ? true : false"
              showValue="恶心"
            ></label-box>&nbsp;
            <label-box
              :isChecked="receiverTreatmentAccess.appetite == 4 ? true : false"
              showValue="呕吐"
            ></label-box>&nbsp;
            <label-box
              :isChecked="receiverTreatmentAccess.appetite == 5 ? true : false"
              showValue="腹泻"
            ></label-box>&nbsp;
          </td>
          <td colspan="2" style="text-align:left;">
            <span
              style="display:inline-block;margin-left:15px;"
            >体温:{{predialysis.temperature?predialysis.temperature:'/'}} ℃</span>
          </td>
          <td colspan="3" style="text-align:left;">
            <span style="display:inline-block;margin-left:15px;">
              体位:
              <label-box
                v-for="(item, index) in posture_arr"
                :key="index"
                :isChecked="receiverTreatmentAccess.posture==item.id?true:false"
                :showValue="item.name"
              ></label-box>
              <label-box
                :isChecked="receiverTreatmentAccess.posture==1?true:false"
                showValue="自动体位"
              ></label-box>&nbsp;
              <label-box :isChecked="receiverTreatmentAccess.posture==2?true:false" showValue="平卧位"></label-box>&nbsp;
              <label-box :isChecked="receiverTreatmentAccess.posture==3?true:false" showValue="半卧位"></label-box>&nbsp;
              <label-box :isChecked="receiverTreatmentAccess.posture==4?true:false" showValue="端坐位"></label-box>&nbsp;
              <label-box
                :isChecked="receiverTreatmentAccess.posture==5?true:false"
                showValue="躁动不安"
              ></label-box>&nbsp;
            </span>
          </td>
        </tr>
        <tr>
          <td colspan="8" style="text-align:left;">
            <span style="display:inline-block;margin-left:15px;">
              血管通路:
              <label-box
                showValue="正常"
                :isChecked="predialysis.blood_access_internal_fistula&&predialysis.blood_access_internal_fistula.indexOf('正常')>-1?true:false"
              ></label-box>
              <label-box
                showValue="震颤"
                :isChecked="predialysis.blood_access_internal_fistula&&predialysis.blood_access_internal_fistula.indexOf('震颤')>-1?true:false"
              ></label-box>
              <label-box
                showValue="堵塞"
                :isChecked="predialysis.blood_access_internal_fistula&&predialysis.blood_access_internal_fistula.indexOf('堵塞')>-1?true:false"
              ></label-box>
              <label-box
                showValue="血肿"
                :isChecked="predialysis.blood_access_internal_fistula&&predialysis.blood_access_internal_fistula.indexOf('血肿')>-1?true:false"
              ></label-box>
              <label-box
                showValue="淤血"
                :isChecked="predialysis.blood_access_internal_fistula&&predialysis.blood_access_internal_fistula.indexOf('淤血')>-1?true:false"
              ></label-box>
              <label-box
                showValue="感染"
                :isChecked="predialysis.blood_access_internal_fistula&&predialysis.blood_access_internal_fistula.indexOf('感染')>-1?true:false"
              ></label-box>
              <label-box
                showValue="自体内瘘"
                :isChecked="predialysis.blood_access_internal_fistula&&predialysis.blood_access_internal_fistula.indexOf('自体内瘘')>-1?true:false"
              ></label-box>
              <label-box
                showValue="人工血管内瘘"
                :isChecked="predialysis.blood_access_internal_fistula&&predialysis.blood_access_internal_fistula.indexOf('人工血管内瘘')>-1?true:false"
              ></label-box>
            </span>
          </td>
        </tr>
        <tr>
          <td colspan="8" style="text-align:left;">
            <span style="display:inline-block;margin-left:15px;">中心静脉导管:</span>
            <label-box
              showValue="正常"
              :isChecked="predialysis.ductus_arantii.indexOf('正常')>-1?true:false"
            ></label-box>
            <label-box
              showValue="不畅"
              :isChecked="predialysis.ductus_arantii.indexOf('不畅')>-1?true:false"
            ></label-box>
            <label-box
              showValue="血流不足"
              :isChecked="predialysis.ductus_arantii.indexOf('血流不足')>-1?true:false"
            ></label-box>(
            <label-box
              showValue="正接"
              :isChecked="predialysis.ductus_arantii.indexOf('正接')>-1?true:false"
            ></label-box>/
            <label-box
              showValue="反接"
              :isChecked="predialysis.ductus_arantii.indexOf('反接')>-1?true:false"
            ></label-box>)
            <label-box
              showValue="血栓"
              :isChecked="predialysis.ductus_arantii.indexOf('血栓')>-1?true:false"
            ></label-box>
            <label-box
              showValue="缝线脱落"
              :isChecked="predialysis.ductus_arantii.indexOf('缝线脱落')>-1?true:false"
            ></label-box>
            <label-box
              showValue="导管脱落"
              :isChecked="predialysis.ductus_arantii.indexOf('导管脱落')>-1?true:false"
            ></label-box>
            <label-box
              showValue="感染"
              :isChecked="predialysis.ductus_arantii.indexOf('感染')>-1?true:false"
            ></label-box>
            <label-box
              showValue="破损"
              :isChecked="predialysis.ductus_arantii.indexOf('破损')>-1?true:false"
            ></label-box>
          </td>
        </tr>
        <tr>
          <td style="text-align:left;" colspan="8">
            <span style="display:inline-block;margin-left:15px;">
              血管通路皮肤:
              <label-box
                :isChecked="predialysis.internal_fistula_skin.indexOf('正常')>-1?true:false"
                showValue="正常"
              ></label-box>&nbsp;
              <label-box
                :isChecked="predialysis.internal_fistula_skin.indexOf('淤血')>-1?true:false"
                showValue="淤血"
              ></label-box>&nbsp;
              <label-box
                :isChecked="predialysis.internal_fistula_skin.indexOf('红')>-1?true:false"
                showValue="红"
              ></label-box>&nbsp;
              <label-box
                :isChecked="predialysis.internal_fistula_skin.indexOf('肿')>-1?true:false"
                showValue="肿"
              ></label-box>
              <!-- 其他: -->
            </span>
          </td>
        </tr>
        <tr>
          <td style="text-align:left;" colspan="8">
            <span style="display:inline-block;margin-left:15px;">皮肤:</span>
            <label-box showValue="完整" :isChecked="predialysis.skin==1?true:false"></label-box>
            <label-box showValue="干燥" :isChecked="predialysis.skin==2?true:false"></label-box>
            <label-box showValue="瘙痒" :isChecked="predialysis.skin==3?true:false"></label-box>
            <label-box showValue="菲薄" :isChecked="predialysis.skin==4?true:false"></label-box>/
            <label-box showValue="水肿" :isChecked="predialysis.skin==5?true:false"></label-box>
            <label-box showValue="皮疹" :isChecked="predialysis.skin==6?true:false"></label-box>
            <label-box showValue="出血点" :isChecked="predialysis.skin == 7?true:false"></label-box>
            <label-box showValue="压疮" :isChecked="predialysis.skin == 8 ? true:false"></label-box>
            <label-box showValue="皮下淤血" :isChecked="predialysis.skin == 9 ?true:false"></label-box>
          </td>
        </tr>
        <tr>
          <td style="text-align:left;" colspan="8">
            <span style="display:inline-block;margin-left:15px;">出血影响因素:</span>
            <label-box showValue="无" :isChecked="predialysis.is_hemorrhage==2?true:false"></label-box>
            <label-box showValue="异常" :isChecked="predialysis.is_hemorrhage==1?true:false"></label-box>&nbsp;
            <label-box
              showValue="穿刺点渗血"
              :isChecked="predialysis.is_hemorrhage==1&&predialysis.hemorrhage.indexOf('穿刺点渗血')>-1?true:false"
            ></label-box>
            <label-box
              showValue="牙龈出血"
              :isChecked="predialysis.is_hemorrhage==1&&predialysis.hemorrhage.indexOf('牙龈出血')>-1?true:false"
            ></label-box>
            <label-box
              showValue="消化道出血"
              :isChecked="predialysis.is_hemorrhage==1&&predialysis.hemorrhage.indexOf('消化道出血')>-1?true:false"
            ></label-box>
            <label-box
              showValue="女性经期"
              :isChecked="predialysis.is_hemorrhage==1&&predialysis.hemorrhage.indexOf('女性经期')>-1?true:false"
            ></label-box>其他:
            <span>{{predialysis.hemorrhage_other}}</span>
          </td>
        </tr>
        <tr>
          <td style="text-align:left;" colspan="8">
            <span style="display:inline-block;margin-left:15px;">使用特殊药物性:</span>
            <label-box :isChecked="prescription.special_medicine == 1 ? true : false" showValue="无"></label-box>
            <label-box :isChecked="prescription.special_medicine == 2 ? true : false" showValue="有"></label-box>:
            <label-box
              :isChecked="prescription.special_medicine == 3 ? true : false"
              showValue="降压药"
            ></label-box>
            <label-box
              :isChecked="prescription.special_medicine == 4 ? true : false"
              showValue="抗凝药"
            ></label-box>
            其他：{{prescription.special_medicine_other}}
          </td>
        </tr>
        <tr>
          <td style="text-align:left;" colspan="8">
            <span style="display:inline-block;margin-left:15px;">跌倒风险:</span>
            <label-box
              showValue="无"
              :isChecked="receiverTreatmentAccess.danger_level == 1?true:false"
            ></label-box>
            <label-box
              showValue="低风险"
              :isChecked="receiverTreatmentAccess.danger_level == 2?true:false"
            ></label-box>
            <label-box
              showValue="中度风险"
              :isChecked="receiverTreatmentAccess.danger_level == 3?true:false"
            ></label-box>
            <label-box
              showValue="高风险"
              :isChecked="receiverTreatmentAccess.danger_level == 4?true:false"
            ></label-box>跌倒风险预防措施：
            <label-box
              showValue="镇静剂"
              :isChecked="receiverTreatmentAccess.precaution == 1?true:false"
            ></label-box>
            <label-box
              showValue="约束带"
              :isChecked="receiverTreatmentAccess.precaution == 2?true:false"
            ></label-box>
            <label-box
              showValue="床栏"
              :isChecked="receiverTreatmentAccess.precaution == 3?true:false"
            ></label-box>
            <label-box
              showValue="加强宣传"
              :isChecked="receiverTreatmentAccess.precaution == 4?true:false"
            ></label-box>
          </td>
        </tr>
      </table>
      <table class="print-table" border="1" style="line-height:30px;">
        <tr style="line-height:20px;">
          <td style="min-width:60px">时间</td>
          <td style="min-width:60px">
            血压
            <br />(mmHg)
          </td>
          <td style="min-width:60px">
            心率
            <br />次/分
          </td>
          <td style="min-width:60px">
            血流量
            <br />ml/min
          </td>
          <td style="min-width:60px">
            动脉压
            <br />(mmHg)
          </td>
          <td style="min-width:60px">
            静脉压
            <br />(mmHg)
          </td>
          <td style="min-width:60px">
            跨膜压
            <br />(mmHg)
          </td>
          <td style="min-width:60px">
            超滤率
            <br />L/h
          </td>
          <td style="min-width:60px">
            超滤量
            <br />L
          </td>
          <td style="min-width:60px">
            NA⁺
            <br />
          </td>
          <td style="min-width:60px">病情变化及处理</td>
          <td style="min-width:110px">护士签名核对者</td>
        </tr>
        <tr v-for="(monitor, monindex) in monitors" :key="monindex">
          <td>{{ getTime(monitor.operate_time, "{h}:{i}") }}</td>
          <td>
            {{
            monitor.systolic_blood_pressure
            ? monitor.systolic_blood_pressure + "/"
            : ""
            }}{{
            monitor.diastolic_blood_pressure
            ? monitor.diastolic_blood_pressure
            : ""
            }}
          </td>
          <td>{{monitor.pulse_frequency}}</td>
          <td>{{monitor.blood_flow_volume}}</td>
          <td>{{monitor.arterial_pressure}}</td>
          <td>{{monitor.venous_pressure}}</td>
          <td>{{monitor.transmembrane_pressure}}</td>
          <td>{{monitor.ultrafiltration_rate}}</td>
          <td>{{monitor.ultrafiltration_volume}}</td>
          <td>{{monitor.sodium_concentration}}</td>
          <td><span style="line-height:18px;display:block;">{{ monitor.symptom }} &nbsp;{{ monitor.result }}</span></td>
          <td>
            <span v-if="setAdminUserES(monitor.monitoring_nurse) == ''">{{ getAdminUser(monitor.monitoring_nurse) }}</span>
            <img style="height:20px;" :src="setAdminUserES(monitor.monitoring_nurse)" alt srcset v-else />
          </td>
        </tr>
        <tr>
          <td style="text-align:left;" colspan="12">
            <span style="display:inline-block;margin-left:15px;">透析护理记录:</span>
          </td>
        </tr>
        <tr>
          <td style="text-align:left;" colspan="12">
            <span style="display:inline-block;margin-left:15px;">
              透后评估:
              透析过程:
              <label-box showValue="完成" :isChecked="afterdialysis.dialysis_process==1?true:false"></label-box>
              <label-box showValue="提前" :isChecked="afterdialysis.dialysis_process==2?true:false"></label-box>并发症:
              <label-box
                :isChecked="afterdialysis.complications_index.indexOf('低血压')>-1?true:false"
                showValue="低血压"
              ></label-box>
              <label-box
                :isChecked="afterdialysis.complications_index.indexOf('高血压')>-1?true:false"
                showValue="高血压"
              ></label-box>
              <label-box
                :isChecked="afterdialysis.complications_index.indexOf('心律失常')>-1?true:false"
                showValue="心律失常"
              ></label-box>
              <label-box
                :isChecked="afterdialysis.complications_index.indexOf('头晕')>-1?true:false"
                showValue="头晕"
              ></label-box>
              <label-box
                :isChecked="afterdialysis.complications_index.indexOf('头痛')>-1?true:false"
                showValue="头痛"
              ></label-box>
              <label-box
                :isChecked="afterdialysis.complications_index.indexOf('呕吐')>-1?true:false"
                showValue="呕吐"
              ></label-box>
              <label-box
                :isChecked="afterdialysis.complications_index.indexOf('抽搐')>-1?true:false"
                showValue="抽搐"
              ></label-box>
              <label-box
                :isChecked="afterdialysis.complications_index.indexOf('出血')>-1?true:false"
                showValue="出血"
              ></label-box>
              <label-box
                :isChecked="afterdialysis.complications_index.indexOf('心衰')>-1?true:false"
                showValue="心衰"
              ></label-box>
              <label-box
                :isChecked="afterdialysis.complications_index.indexOf('腹痛')>-1?true:false"
                showValue="腹痛"
              ></label-box>
              <label-box
                :isChecked="afterdialysis.complications_index.indexOf('无')>-1?true:false"
                showValue="无"
              ></label-box>
            </span>
          </td>
        </tr>
        <tr>
          <td style="text-align:left;" colspan="12">
            <span style="display:inline-block;margin-left:15px;">
              内瘘搏动及震颤音:
              <label-box showValue="存在" :isChecked="afterdialysis.tremor_noise==1?true:false"></label-box>
              <label-box showValue="减弱" :isChecked="afterdialysis.tremor_noise==2?true:false"></label-box>
              <label-box showValue="不存在" :isChecked="afterdialysis.tremor_noise==3?true:false"></label-box>
            </span>&nbsp;
            <span>
              透析器及管路凝血情况:
              <label-box showValue="0级" :isChecked="afterdialysis.dialyzer == 1?true:false"></label-box>
              <label-box showValue="1级" :isChecked="afterdialysis.dialyzer == 2?true:false"></label-box>
              <label-box showValue="2级" :isChecked="afterdialysis.dialyzer == 3?true:false"></label-box>
              <label-box showValue="3级" :isChecked="afterdialysis.dialyzer == 4?true:false"></label-box>
            </span>
          </td>
        </tr>
        <tr>
          <td style="text-align:left;" colspan="10">
            <span style="display:inline-block;margin-left:15px;">
              透析中进食:
              <label-box showValue="无" :isChecked="afterdialysis.dialysis_intakes == 0?true:false"></label-box>
              <label-box showValue="有" :isChecked="afterdialysis.dialysis_intakes  > 0 ?true:false"></label-box>
            </span>&nbsp;&nbsp;
            <span>
              患者去向:
              <label-box showValue="离院" :isChecked="afterdialysis.patient_gose==1?true:false"></label-box>
              <label-box showValue="留观" :isChecked="afterdialysis.patient_gose==2?true:false"></label-box>
              <label-box showValue="住院" :isChecked="afterdialysis.patient_gose==3?true:false"></label-box>
            </span>
          </td>
          <td style="text-align:left;" colspan="2">
            <span>
              <span v-if="finshForm.url === ''">下机护士:{{finshForm.finish_nurse}}</span>
              <span v-if="finshForm.url !==''">
                下机护士:
                <img :src="finshForm.url" style="height:20px;" />
              </span>
            </span>
          </td>
        </tr>
      </table>
      <table class="print-table" border="1">
        <tr>
          <td>时间</td>
          <td>医生</td>
          <td>临时医嘱</td>
          <td>执行者</td>
          <td>执行时间</td>
          <td>核对者</td>
        </tr>
        <tr v-for="(advice, advice_index) in tableAdvice" :key="advice_index">
          <td
            style="height:30px;line-height:30px"
          >{{getTime(advice.start_time,'{y}-{m}-{d} {h}:{i}')}}</td>
          <td>
            <span
              v-if="setAdminUserES(advice.advice_doctor) == ''"
            >{{ getAdminUser(advice.advice_doctor) }}</span>
            <img style="height:20px;" :src="setAdminUserES(advice.advice_doctor)" alt srcset v-else />
          </td>
          <td>
            <span v-if="advice.parent_id > 0">---></span>
            <span>{{ advice.advice_name }}</span>
            <span
              v-if="advice && advice.advice_desc"
            >({{ advice.advice_desc }}{{ advice.drug_spec_unit }})</span>
            <span
              v-if="advice.prescribing_number"
            >&nbsp;&nbsp; {{ advice.prescribing_number}}{{ advice.prescribing_number_unit }}</span>
            <span v-if="advice.single_dose != 0" >{{ advice.single_dose}}{{ advice.single_dose_unit }}</span>
            <span v-if="advice.parent_id == 0">{{advice.delivery_way}}</span>
            <span v-if="advice.parent_id == 0">{{advice.execution_frequency}}</span>
            <span v-if="advice.parent_id == 0 && advice.remark.length > 0">({{ advice.remark }})</span>
          </td>
          <td>
            <span
              v-if="setAdminUserES(advice.execution_staff) == ''"
            >{{ getAdminUser(advice.execution_staff) }}</span>
            <img
              style="height:20px;"
              :src="setAdminUserES(advice.execution_staff)"
              alt
              srcset
              v-else
            />
          </td>
          <td>{{getTime(advice.start_time,'{y}-{m}-{d} {h}:{i}')}}</td>
          <td>
            <span v-if="setAdminUserES(advice.checker) == ''">{{getAdminUser(advice.checker)}}</span>
            <img style="height:20px;" :src="setAdminUserES(advice.checker)" alt srcset v-else />
          </td>
        </tr>
        <tr>
          <td style="text-align:left;" colspan="6">
            <span
              style="display:inline-block;margin-left:15px;"
            >特殊记录:{{mission}}{{dialysis_summary}}</span>
          </td>
        </tr>
        <tr>
          <!-- <td style="text-align:left;" colspan="3">
            <span style="display:inline-block;margin-left:15px;">医生签名:</span>
            <span v-if="doctorForm.url === ''">{{doctorForm.doctor}}</span>
            <span v-if="doctorForm.url!==''">
              <img style="height:20px" :src="doctorForm.url" />
            </span>
          </td> -->
          <td style="text-align:left;" colspan="6">
            <span style="display:inline-block;margin-left:15px;">质控护士签名:</span>
            <div style="width: 80px;text-align: center;display:inline-block;" v-if="dialysisOrder != null">
              <span  v-if=" setAdminUserES(check == null ? 0 : check.creater) == '' " >{{ getAdminUser(check == null ? 0 : check.creater) }}</span>
              <img  style="height:20px;" :src="setAdminUserES(check == null ? 0 : check.creater)"  alt  srcset v-else  />
            </div>
          </td>
        </tr>
      </table>
      <!-- <div style="margin-top:20px">
        <span style="margin-left:280px;">肝素浓度:每毫升肝素生理盐水含肝素钠2.5毫克</span>
      </div> -->
    </div>
  </div>
</template>

<script>
import { getDialysisRecord } from '@/api/dialysis'
import { getDataConfig } from '@/utils/data'
import { jsGetAge, uParseTime } from '@/utils/tools'
import LabelBox from '../printItem/LabelBox'
import CheckBox from '../batch_print/option_check_box'
import BreadCrumb from '@/xt_pages/components/bread-crumb'
// import DialysisPrintOrderOne from './template/dialysisPrintOrderOne'
// import DialysisPrintOrderTwo from './template/dialysisPrintOrderTwo'

export default {
  name: 'dialysisPrintOrderOne',
  components: {
    // DialysisPrintOrderOne,
    // DialysisPrintOrderTwo,
    LabelBox,
    BreadCrumb,
    CheckBox
  },
  data() {
    return {
      crumbs: [
        { path: false, name: '透析管理' },
        { path: false, name: '打印单' }
      ],
      operators: [],
      adminUser: [],
      check: {},
      dialysisOrder: {
        DeviceNumber: []
      },
      posture_arr: [],
      operatorMaps: {},
      complications: [
        '低血压',
        '高血压',
        '心律失常',
        '头晕',
        '头痛',
        '呕吐',
        '抽搐',
        '出血',
        '心衰',
        '腹痛',
        '无'
      ],
      consciousness_arr: [],
      jilurow: 0,
      advice_jilurow: 0,
      loading: false,
      orgname: '',
      patientInfo_gender_1: false,
      patientInfo_gender_2: false,
      patientInfo_source_2: false,
      patientInfo_source_1: false,
      modeOptions: {},
      replacementWays: [],
      perfusionApparatus: [],
      anticoagulantsConfit: {},
      bloodAccessParOpera: {},
      dialysateFormulationOptions: {},

      queryParams: {
        xtdate: '',
        xtno: ''
      },
      patientInfo: {
        birth: '',
        age: '',
        DialysisSchedule: {
          device_number: { number: '' },
          device_zone: { name: '' }
        },
        gender: 0
      },
      predialysis: {
        score: '',
        internal_fistula: '',
        internal_fistula_skin: '',
        catheter: '',
        blood_access_part_opera_name: ''
      },
      afterdialysis: {
        complications_index: ''
      },
      prescription: {
        dialysate_formulation_name: '',
        device: {}
      },
      advices: [],
      users: [],
      monitors: [],
      summary: {},
      receiverTreatmentAccess: {},
      org_template_info: {},

      doctor_advices: [],
      advice_groups: [],
      schedule: [],

      AlPanel: {
        id: 0,
        name: '',
        type: 1,
        shouji: 2,
        weichi: 2,
        zongliang: 2,
        gaimingcheng: -1,
        gaijiliang: -1,
        shouji_unit: 'mg',
        weichi_unit: 'mg/h',
        zongliang_unit: 'mg',
        gaimingcheng_unit: '',
        gaijiliang_unit: ''
      },
      list: 5,
      replacement_total: '',
      actual_treatment_hour: '',
      actual_treatment_minute: '',
      anticoagulant: '',
      anticoagulant_shouji: '',
      anticoagulant_zongliang: '',
      prescription_dewatering: '',
      blood_flow_volume: '',
      dialysate_flow: '',
      bed: '',
      dialyzer_perfusion_apparatus: '',
      dialysate_formulation: '',
      blood_access: '',
      doctor: '',
      nurse: '',
      doctorAdvice: [],
      total: '',
      weight_before: '',
      dry_weight: '',
      weight_after: '',
      weightloss_after: '',
      actual_ultrafiltration: '',
      temperature: '',
      systolic_blood_pressure: '',
      diastolic_blood_pressure: '',
      mission: '',
      dialysis_summary: '',
      orderForm: {
        start_nurse: '',
        url: ''
      },
      doctorForm: {
        doctor: '',
        url: ''
      },
      finshForm: {
        finish_nurse: '',
        url: ''
      },
      tableAdvice: [],
      monitor: [],
      displace_liqui: '',
      kalium: '',
      sodium: '',
      calcium: '',
      weight_gain: '',
      afterWeightLast: '',
      anticoagulant_weichi: '',
      target_ultrafiltration: '',
      blood_access_internal_fistula: '',
      venous_catheterization: '',
      blood_access_part_opera_id: '',
      dryWeight_add: '',
      weight: '',
      vascularId: 0,
      PunctureNurse: {
        user_name: '',
        url: ''
      }
    }
  },
  methods: {
    getAdminUser(id) {
      if (id == 0) {
        return ''
      }
      if (id == undefined) {
        return ''
      }
      for (let i = 0; i < this.adminUser.length; i++) {
        if (this.adminUser[i].id == id) {
          return this.adminUser[i].name
        }
      }
    },
    getDatge(value) {
      var times = Date.parse(value) / 1000
      var timestr = uParseTime(times, '{y}年{m}月{d}日')
      return timestr
    },
    getTime(value, temp) {
      if (value == 0) {
        return ''
      }
      if (value != undefined) {
        return uParseTime(value, temp)
      }
      return ''
    },
    getTimes(time) {
      if (time === '') {
        return ''
      }
      return uParseTime(time, '{y}-{m}-{d} {h}:{i}')
    },
    printThisPage() {
      var ptime = Math.round(new Date().getTime() / 1000)
      this.print_time = uParseTime(ptime, '{y}-{m}-{d} {h}:{i}')

      const style =
        '@media print {.dialysis-print-order{width:960px;margin:0 auto}.dialysis-print-order .order-yy-name{margin:auto;text-align:center;font-size:20px;letter-spacing:5px}.dialysis-print-order .order-title{margin:auto;font-weight:600;text-align:center;font-size:22px;padding:10px 20px 20px 20px}.dialysis-print-order .table-box{width:100%;line-height:23px;font-size:14px}.dialysis-print-order .print-table{width:100%;text-align:center;border-collapse:collapse;line-height:25px;font-size:14px}.dialysis-print-order .print-table-no{width:100%;text-align:center;border-collapse:collapse;font-size:14px}.dialysis-print-order .under-line{border-bottom:1px solid #999;width:95%;text-align:center;margin-left:2px}.dialysis-print-order .title-box{text-align:center;font-size:16px;border:1px solid #666}.dialysis-print-order .radio-lebel-box{font-weight:400;cursor:pointer}.dialysis-print-order .radio-no{opacity:0;outline:0;position:absolute;margin:0;width:0;height:0;z-index:-1}.dialysis-print-order .radio-inner{white-space:nowrap;cursor:pointer;outline:0;display:inline-block;line-height:1;position:relative;vertical-align:middle}.dialysis-print-order .radio-fang{display:inline-block;position:relative;border:1px solid #000;box-sizing:border-box;width:14px;height:14px;background-color:#fff;z-index:1;transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46)}.dialysis-print-order .is-checked-radio::after{content:"√";font-size:15px}}.dialysis-print-order .print-table-no tr td { padding: 8px 5px; line-height: 25px; }.es-img{height: 20px; }.advice-name{text-align: left;}.advice-children{display:flex;} .dialysis-print-order .print-table tr td{padding: 0px 0px;} .print-template-two tr {line-height: 30px;}   .title-box-pro{border: 0 #fff;line-height: 40px;height: 40px;text-align: left;padding-left: 10px !important;}  .text-align-left{text-align: left !important;padding-left:10px !important;font-size: 14px !important;line-height: 25px;}'

      if (this.org_template_info.template_id == 1) {
        printJS({
          printable: 'dialysis-print-box',
          type: 'html',
          style: style,
          scanStyles: false
        })
      } else if (
        this.org_template_info.template_id == 2 ||
        this.org_template_info.template_id == 0
      ) {
        printJS({
          printable: 'dialysis-print-box-1',
          type: 'html',
          style: style,
          scanStyles: false
        })
      }
    },
    getNumber() {
      if (this.dialysisOrder != null) {
        return (
          this.patientInfo.DialysisSchedule.device_zone.name +
          this.dialysisOrder.DeviceNumber.number
        )
      } else {
        return (
          this.patientInfo.DialysisSchedule.device_zone.name +
          this.patientInfo.DialysisSchedule.device_number.number
        )
      }
    },

    getXuserName(id) {
      if (id <= 0) {
        return ''
      }
      var name = ''
      if (this.users == null || typeof this.users.length === 'undefined') {
        return name
      }
      var leng = this.users.length
      if (leng === 0) {
        return name
      }
      for (let index = 0; index < leng; index++) {
        if (this.users[index].id === id) {
          name = this.users[index].name
          break
        }
      }
      return name
    },
    setAdminUserES(id) {
      console.log(id)
      if (id === 0) {
        return ''
      }
      if (id in this.operatorMaps) {
        return this.operatorMaps[id].url
      } else {
        return ''
      }
    },
    modeName(mode_id) {
      return typeof this.modeOptions[mode_id] !== 'undefined' &&
        typeof this.modeOptions[mode_id].name !== 'undefined'
        ? this.modeOptions[mode_id].name
        : ''
    },
    getDialysisRecord() {
      this.loading = true

      getDialysisRecord(this.queryParams).then(response => {
        if (response.data.state === 1) {
          this.adminUser = response.data.data.users
          this.users = response.data.data.users
          var patientInfo = response.data.data.patientInfo
          console.log('patientInfo', patientInfo)
          if (patientInfo.gender === 1) {
            patientInfo.gender = '男'
          }
          if (patientInfo.gender === 2) {
            patientInfo.gender = '女'
          }
          this.patientInfo = response.data.data.patientInfo
          console.log('透析记录', this.patientInfo)

          this.patientInfo.birth = uParseTime(
            this.patientInfo.birthday,
            '{y}-{m}-{d}'
          )
          // this.patientInfo.age = jsGetAge(this.patientInfo.birth, '-')
          if (response.data.data.patientInfo.first_dialysis_date != 0) {
            this.patientInfo.first_dialysis_date = uParseTime(
              response.data.data.patientInfo.first_dialysis_date,
              '{y}-{m}-{d}'
            )
          } else {
            this.patientInfo.first_dialysis_date = ''
          }
          this.check = response.data.data.check
          var predialysis = response.data.data.PredialysisEvaluation
          var predialysName = response.data.data.predialysName
          this.blood_access_part_opera_id = predialysName.name
          // console.log('血管', predialysName)
          // this.weight_before = predialysis.weight_before
          this.dry_weight = predialysis.dry_weight
          this.weight_gain = predialysis.weight_gain
          this.blood_access_internal_fistula =
            predialysis.blood_access_internal_fistula
          this.venous_catheterization = predialysis.venous_catheterization
          // this.blood_access_part_opera_id = predialysis.blood_access_part_opera_id
          // console.log('血管通路', this.blood_access_part_opera_id)
          var arry = []
          arry = getDataConfig('hemodialysis', 'vascular_access_desc')
          console.log('arry', arry)
          // eslint-disable-next-line no-empty
          var id = 0
          for (let i = 0; i < arry.length; i++) {
            console.log(arry[i].id)
            if (arry[i].id === predialysis.blood_access_part_opera_id) {
              id = predialysis.blood_access_part_opera_id
            }
            this.vascularId = id
          }
          this.predialysis = predialysis
          // console.log('透前评估', this.predialysis)

          this.predialysis.blood_access_part_opera_name = this.bloodAccessParOperaName(
            this.predialysis.blood_access_part_opera_id
          )
          var afterdialysis = response.data.data.AssessmentAfterDislysis
          // eslint-disable-next-line no-undef
          console.log('透后评估', afterdialysis)
          this.temperature = afterdialysis.temperature
          this.actual_ultrafiltration = afterdialysis.actual_ultrafiltration
          this.actual_treatment_hour = afterdialysis.actual_treatment_hour
          this.actual_treatment_minute = afterdialysis.actual_treatment_minute
          this.systolic_blood_pressure = afterdialysis.systolic_blood_pressure
          this.diastolic_blood_pressure =
            afterdialysis.diastolic_blood_pressure
          this.afterdialysis = afterdialysis
          // eslint-disable-next-line no-unused-vars
          var doctoradvce = response.data.data.doctorAdvice
          var doctorAdevieInfo = response.data.data.doctorAdevieInfo
          var tableAdvice = doctorAdevieInfo
          // console.log('医生', tableAdvice.length)
          if (tableAdvice.length === 0) {
            var obj = { advice_name: '', start_time: '' }
            var obj1 = { advice_name: '', start_time: '' }
            var obj2 = { advice_name: '', start_time: '' }
            var obj3 = { advice_name: '', start_time: '' }
            var obj4 = { advice_name: '', start_time: '' }
            var obj5 = { advice_name: '', start_time: '' }
            var obj6 = { advice_name: '', start_time: '' }
            tableAdvice.push(obj)
            tableAdvice.push(obj1)
            tableAdvice.push(obj2)
            tableAdvice.push(obj3)
            tableAdvice.push(obj4)
            tableAdvice.push(obj5)
            tableAdvice.push(obj6)
            this.tableAdvice = tableAdvice
          }
          if (tableAdvice.length === 1) {
            var obj = { advice_name: '', start_time: '' }
            var obj1 = { advice_name: '', start_time: '' }
            var obj2 = { advice_name: '', start_time: '' }
            var obj3 = { advice_name: '', start_time: '' }
            var obj4 = { advice_name: '', start_time: '' }
            var obj5 = { advice_name: '', start_time: '' }
            tableAdvice.push(obj)
            tableAdvice.push(obj1)
            tableAdvice.push(obj2)
            tableAdvice.push(obj3)
            tableAdvice.push(obj4)
            tableAdvice.push(obj5)
            this.tableAdvice = tableAdvice
          }
          if (tableAdvice.length === 2) {
            var obj = { advice_name: '', start_time: '' }
            var obj1 = { advice_name: '', start_time: '' }
            var obj2 = { advice_name: '', start_time: '' }
            var obj3 = { advice_name: '', start_time: '' }
            var obj4 = { advice_name: '', start_time: '' }
            tableAdvice.push(obj)
            tableAdvice.push(obj1)
            tableAdvice.push(obj2)
            tableAdvice.push(obj3)
            tableAdvice.push(obj4)
            this.tableAdvice = tableAdvice
          }
          if (tableAdvice.length === 3) {
            // eslint-disable-next-line no-redeclare
            var obj = { advice_name: '', start_time: '' }
            // eslint-disable-next-line no-redeclare
            var obj1 = { advice_name: '', start_time: '' }
            // eslint-disable-next-line no-redeclare
            var obj2 = { advice_name: '', start_time: '' }
            // eslint-disable-next-line no-redeclare
            var obj3 = { advice_name: '', start_time: '' }

            tableAdvice.push(obj)
            tableAdvice.push(obj1)
            tableAdvice.push(obj2)
            tableAdvice.push(obj3)

            this.tableAdvice = tableAdvice
          }
          if (tableAdvice.length === 4) {
            // eslint-disable-next-line no-redeclare
            var obj = { advice_name: '', start_time: '' }
            // eslint-disable-next-line no-redeclare
            var obj1 = { advice_name: '', start_time: '' }
            // eslint-disable-next-line no-redeclare
            var obj2 = { advice_name: '', start_time: '' }

            tableAdvice.push(obj)
            tableAdvice.push(obj1)
            tableAdvice.push(obj2)
            this.tableAdvice = tableAdvice
          }
          if (tableAdvice.length === 5) {
            // eslint-disable-next-line no-redeclare
            var obj = { advice_name: '', start_time: '' }
            // eslint-disable-next-line no-redeclare
            var obj1 = { advice_name: '', start_time: '' }
            tableAdvice.push(obj)
            tableAdvice.push(obj1)
            this.tableAdvice = tableAdvice
          }
          if (tableAdvice.length === 6) {
            // eslint-disable-next-line no-redeclare
            var obj = { advice_name: '', start_time: '' }
            tableAdvice.push(obj)
            this.tableAdvice = tableAdvice
          }
          if (tableAdvice.length >= 7) {
            this.tableAdvice = tableAdvice
          }
          var doctor = response.data.data.doctor
          this.doctor = doctor.user_name
          // console.log('医生', doctor)
          this.PunctureNurse = response.data.data.nurse
          // console.log('穿刺护士', this.PunctureNurse)
          var operators = response.data.data.operators
          // console.log('operators', operators)
          var total = response.data.data.total
          console.log('total', total)
          this.total = total
          this.operators = operators
          this.dialysisOrder =
            response.data.data.dialysisOrder === null
              ? null
              : response.data.data.dialysisOrder

          if (this.operators.length > 0) {
            var operatorsLen = this.operators.length
            for (var index = 0; index < operatorsLen; index++) {
              this.$set(
                this.operatorMaps,
                this.operators[index].creator,
                this.operators[index]
              )
            }
          }

          this.afterdialysis.txqnx = -1
          if (this.afterdialysis.cruor.indexOf('0度') > -1) {
            this.afterdialysis.txqnx = 0
          }
          if (this.afterdialysis.cruor.indexOf('Ⅰ度') > -1) {
            this.afterdialysis.txqnx = 1
          }
          if (this.afterdialysis.cruor.indexOf('Ⅱ度') > -1) {
            this.afterdialysis.txqnx = 2
          }
          if (this.afterdialysis.cruor.indexOf('Ⅲ度') > -1) {
            this.afterdialysis.txqnx = 3
          }

          this.afterdialysis.complications = this.afterdialysis.complication.split(
            ','
          )
          this.afterdialysis.complications_other = []
          this.afterdialysis.complications_index = []
          var acllen = this.afterdialysis.complications.length
          for (let index = 0; index < acllen; index++) {
            if (
              this.complications.indexOf(
                this.afterdialysis.complications[index]
              ) >= 0
            ) {
              this.afterdialysis.complications_index.push(
                this.afterdialysis.complications[index]
              )
            } else if (
              this.complications.indexOf(
                this.afterdialysis.complications[index]
              ) < 0 &&
              this.afterdialysis.complications_other.indexOf(
                this.afterdialysis.complications[index]
              ) < 0
            ) {
              this.afterdialysis.complications_other.push(
                this.afterdialysis.complications[index]
              )
            }
          }
          this.afterdialysis.complications_other = this.afterdialysis.complications_other.join(
            ','
          )

          var prescription = response.data.data.dialysisPrescription
          this.prescription = prescription
          var schedule = response.data.data.schedule
          // console.log('排班', schedule)
          this.schedule = schedule
          var receiverTreatmentAccess =
            response.data.data.receiverTreatmentAccess
          console.log('接诊评估', receiverTreatmentAccess)
          this.receiverTreatmentAccess = receiverTreatmentAccess
          var dialysisway = response.data.data.dialysisway
          console.log('透析处方', dialysisway)
          this.target_ultrafiltration = dialysisway.target_ultrafiltration
          var order = response.data.data.order
          // console.log('上下机', order)
          var start_nurse = response.data.data.startNuse
          // console.log('上机护士', start_nurse)
          this.orderForm.start_nurse = start_nurse.user_name
          this.orderForm.url = start_nurse.url
          var finish_nurse = response.data.data.FinishNuse
          // console.log('下机护士', finish_nurse)
          this.finshForm.url = finish_nurse.url
          this.finshForm.finish_nurse = finish_nurse.user_name

          var doctorname = response.data.data.DoctorName
          // console.log('医师签名', doctorname)
          this.doctorForm.doctor = doctorname.user_name
          this.doctorForm.url = doctorname.url
          this.bed = order.number
          this.replacement_total = dialysisway.replacement_total
          this.anticoagulant = dialysisway.anticoagulant
          this.anticoagulant_shouji = dialysisway.anticoagulant_shouji
          this.anticoagulant_zongliang = dialysisway.anticoagulant_zongliang
          this.prescription_dewatering = dialysisway.prescription_dewatering
          this.blood_flow_volume = dialysisway.blood_flow_volume
          this.dialysate_flow = dialysisway.dialysate_flow
          this.dialyzer_perfusion_apparatus =
            dialysisway.dialyzer_perfusion_apparatus
          this.dialysate_formulation = dialysisway.dialysate_formulation
          this.blood_access = dialysisway.blood_access
          this.displace_liqui = dialysisway.displace_liqui
          this.kalium = dialysisway.kalium
          this.sodium = dialysisway.sodium
          this.calcium = dialysisway.calcium
          this.anticoagulant_weichi = dialysisway.anticoagulant_weichi
          // var afterWeightLast = response.data.data.assessmentAfterDislysis
          // this.afterWeightLast = afterWeightLast.weight_after
          // eslint-disable-next-line no-undef
          // console.log('透前体重', this.weight_before)
          // console.log('干体中', this.dry_weight)
          // console.log('什么体重', predialysis.additional_weight)
          // console.log('较干体中增加量', this.dryWeight_add)
          // this.afterWeightLast = afterWeightLast.weight_after
          this.prescription.mode = this.modeName(this.prescription.mode_id)
          var rwLen = this.replacementWays.length
          this.prescription.replacement = ''
          for (let index = 0; index < rwLen; index++) {
            if (
              this.replacementWays[index].id ==
              this.prescription.replacement_way
            ) {
              this.prescription.replacement = this.replacementWays[index].name
              break
            }
          }

          this.prescription.dialysate_formulation_name = this.dialysateFormulationName(
            this.prescription.dialysate_formulation
          )

          var paLen = this.perfusionApparatus.length
          this.prescription.perfusion_apparatus_name = ''
          for (let index = 0; index < paLen; index++) {
            if (
              this.perfusionApparatus[index].id ==
              this.prescription.perfusion_apparatus
            ) {
              this.prescription.perfusion_apparatus_name = this.perfusionApparatus[
                index
              ].name
              break
            }
          }

          // eslint-disable-next-line no-unused-vars
          var acLen = this.anticoagulantsConfit.length
          var thisALID = this.prescription.anticoagulant
          this.prescription.anticoagulant_name = ''

          if (
            typeof this.anticoagulantsConfit[thisALID] !== 'undefined' &&
            this.anticoagulantsConfit[thisALID] != null
          ) {
            this.prescription.anticoagulant_name = this.anticoagulantsConfit[
              thisALID
            ].name
            this.AlPanel = this.anticoagulantsConfit[thisALID]
          }
          this.advices = response.data.data.advices
          // console.log('医嘱', this.advices)
          var monitor = response.data.data.monitor
          // console.log('透析监测', monitor)
          this.monitor = monitor
          // console.log('monitor', monitor)
          this.monitors = response.data.data.monitors
          console.log('透析监测', this.monitors)
          var summary = response.data.data.summary
          //  console.log('透析小结', summary)
          this.mission = summary.mission
          this.dialysis_summary = summary.dialysis_summary
          this.org_template_info = response.data.data.org_template_info
          if (this.monitors.length < 7) {
            var nl = 8 - this.monitors.length
            for (let index = 0; index < nl; index++) {
              this.monitors.push([])
            }
          }
          this.jilurow = this.monitors.length + 1

          this.advice_jilurow = this.advices.length + 1

          var childMap = {}
          for (const index in this.advices) {
            if (this.advices[index].parent_id == 0) {
              continue
            }
            if (!(this.advices[index].parent_id in childMap)) {
              childMap[this.advices[index].parent_id] = []
            }
            childMap[this.advices[index].parent_id].push(this.advices[index])
          }

          var advices = []
          for (const index in this.advices) {
            if (this.advices[index].parent_id > 0) {
              continue
            }
            var item = this.advices[index]
            if (item.id in childMap) {
              item.children = childMap[item.id]
            } else {
              item.children = []
            }
            advices.push(item)
          }

          var leftAdvice = []
          var rightAdvice = []
          var adlen = advices.length

          var halfLen = adlen % 2 == 0 ? adlen / 2 : (adlen + 1) / 2
          for (var i = 0; i < halfLen; i++) {
            leftAdvice.push(advices[i])
            rightAdvice.push(advices[i + halfLen])
          }
          if (halfLen < 5) {
            var nl = 5 - leftAdvice.length
            for (let index = 0; index < nl; index++) {
              leftAdvice.push([])
            }
            var nl = 5 - rightAdvice.length
            for (let index = 0; index < nl; index++) {
              rightAdvice.push([])
            }
          }

          this.advices = []
          for (var i = 0; i < halfLen; i++) {
            var item = []
            item.push(leftAdvice[i])
            item.push(rightAdvice[i])
            this.advices.push(item)
          }
          this.loading = false

          this.doctor_advices =
            response.data.data.advices == null
              ? []
              : response.data.data.advices

          for (let index = 0; index < this.doctor_advices.length; index++) {
            this.doctor_advices[index]['isShow'] = 2
          }

          if (this.doctor_advices.length > 0) {
            var group = this.newAdviceGroupObject()
            var initGroupBlock = function(group, advice) {
              group.group_no = advice.groupno
            }
            for (
              let index = this.doctor_advices.length - 1;
              index >= 0;
              index--
            ) {
              var new_advice_index = 0

              if (
                'children' in this.doctor_advices[index] &&
                this.doctor_advices[index].children.length > 0
              ) {
                new_advice_index =
                  index + this.doctor_advices[index].children.length + 1

                var doctor_advice = {
                  delivery_way: this.doctor_advices[index].delivery_way,
                  execution_frequency: this.doctor_advices[index]
                    .execution_frequency,
                  groupno: this.doctor_advices[index].groupno,
                  id: this.doctor_advices[index].id,
                  parent_id: this.doctor_advices[index].parent_id,
                  children: this.doctor_advices[index].children,
                  remark: this.doctor_advices[index].remark
                }
                doctor_advice['isShow'] = 1
                this.doctor_advices.splice(new_advice_index, 0, doctor_advice)
                // this.doctor_advices.push(doctor_advice)
              }
            }

            for (let index = 0; index < this.doctor_advices.length; index++) {
              const advice = this.doctor_advices[index]
              if (advice.groupno == 0) {
                // 老版本的医嘱没有分组的概念，所以这一个 if 是解决这个问题的，将每个无分组的医嘱各自归为一组
                if (advice.parent_id > 0) {
                  if (this.advice_groups.length > 0) {
                    var parent_group = this.advice_groups[
                      this.advice_groups.length - 1
                    ]
                    if (parent_group.advices.length > 0) {
                      if (parent_group.advices[0].id == advice.parent_id) {
                        parent_group.advices.push(advice)
                      }
                    }
                  }
                  continue
                } else {
                  if (group.group_no > 0) {
                    this.advice_groups.push(group)
                    group = this.newAdviceGroupObject()
                  }

                  initGroupBlock(group, advice)
                  group.advices.push(advice)
                  this.advice_groups.push(group)
                  group = this.newAdviceGroupObject()
                  continue
                }
              }

              if (group.group_no > 0 && group.group_no != advice.groupno) {
                this.advice_groups.push(group)
                group = this.newAdviceGroupObject()
              }
              if (group.group_no == 0) {
                initGroupBlock(group, advice)
              }
              if (group.group_no == advice.groupno) {
                group.advices.push(advice)
              }
            }
            if (group.group_no > 0) {
              // 上述的算法会导致最后一组没有加到advice_groups，这里要手动加上
              this.advice_groups.push(group)
            }
          }
          console.log(this.advice_groups)
        } else {
          this.loading = false
          this.$message.error('请求数据失败')
          return false
        }
      })
    },
    bloodAccessParOperaName(id) {
      if (id in this.bloodAccessParOpera) {
        return this.bloodAccessParOpera[id].name
      }
      return ''
    },
    dialysateFormulationName(id) {
      if (id in this.dialysateFormulationOptions) {
        return this.dialysateFormulationOptions[id].name
      }
      return ''
    },
    getAge: function(val) {
      if (val.birthday != 0) {
        return jsGetAge(val.birth, '-')
      } else {
        return ''
      }
    },
    newAdviceGroupObject: function() {
      return Object.assign(
        {},
        {
          group_no: 0,
          // advice_doctor: 0,
          // start_time: 0,
          advices: []
          // exec_staff: 0,
          // exec_time: 0,
          // checker: 0,
        }
      )
    }
  },
  watch: {
    'patientInfo.gender': function() {
      if (this.patientInfo.gender == 1) {
        this.patientInfo_gender_1 = true
        this.patientInfo_gender_2 = false
      } else if (this.patientInfo.gender == 2) {
        this.patientInfo_gender_2 = true
        this.patientInfo_gender_1 = false
      } else {
        this.patientInfo_gender_2 = false
        this.patientInfo_gender_1 = false
      }
    },
    'patientInfo.source': function() {
      if (this.patientInfo.source == 1) {
        this.patientInfo_source_1 = true
        this.patientInfo_source_2 = false
      } else if (this.patientInfo.source == 2) {
        this.patientInfo_source_2 = true
        this.patientInfo_source_1 = false
      } else {
        this.patientInfo_source_2 = false
        this.patientInfo_source_1 = false
      }
    }
  },
  created() {
    var xtuser = this.$store.getters.xt_user
    this.orgname = xtuser.org.org_name
    // this.orgname = "遂溪方济医院";
    this.modeOptions = this.$store.getters.treatment_mode
    this.replacementWays = this.$store.getters.replacement_ways
    this.perfusionApparatus = this.$store.getters.perfusion_apparatus
    this.anticoagulantsConfit = this.$store.getters.anticoagulants_confit
    this.consciousness_arr = getDataConfig('hemodialysis', 'consciousness')
    // this.bloodAccessParOpera = getDataConfig('hemodialysis', 'vascular_access_desc')

    var bloodAccessParOpera = getDataConfig(
      'hemodialysis',
      'vascular_access_desc'
    )
    for (var key in bloodAccessParOpera) {
      this.bloodAccessParOpera[bloodAccessParOpera[key].id] =
        bloodAccessParOpera[key]
    }

    var dialysateFormulationOptions = getDataConfig(
      'hemodialysis',
      'dialysate_formulation'
    )
    for (var key in dialysateFormulationOptions) {
      this.dialysateFormulationOptions[dialysateFormulationOptions[key].id] =
        dialysateFormulationOptions[key]
    }

    const xtdate = this.$route.query && this.$route.query.xtdate
    const xtno = this.$route.query && this.$route.query.xtno
    if (
      typeof xtdate === 'string' &&
      xtdate.length > 0 &&
      typeof xtno === 'string' &&
      xtno.length > 0
    ) {
      this.queryParams.xtdate = xtdate
      this.queryParams.xtno = xtno
      this.getDialysisRecord()
    } else {
      this.$message.error('参数不齐')
      return false
    }

    this.ways = getDataConfig('hemodialysis', 'way')
    this.consciousnesses = getDataConfig('hemodialysis', 'consciousness')
    this.appetites = getDataConfig('hemodialysis', 'appetite')
    this.postures = getDataConfig('hemodialysis', 'posture')
    this.sick_condition = getDataConfig('hemodialysis', 'sick_condition')
    this.precautions = getDataConfig('hemodialysis', 'precaution')
    this.intake = getDataConfig('hemodialysis', 'intake')
    this.nutrition = getDataConfig('hemodialysis', 'nutrition')
    console.log('nutrition', this.nutrition)
  }
}
</script>

<style>
.dialysis-print-order {
  width: 960px;
  margin: 0 auto;
}

.dialysis-print-order .order-yy-name {
  margin: auto;
  text-align: center;
  font-size: 20px;
  letter-spacing: 5px;
}

.dialysis-print-order .order-title {
  margin: auto;
  font-weight: 600;
  text-align: center;
  font-size: 22px;
  padding: 10px 20px 20px 20px;
}

.dialysis-print-order .table-box {
  width: 100%;
  line-height: 23px;
  font-size: 14px;
}

.dialysis-print-order .print-table {
  width: 100%;
  text-align: center;
  border-collapse: collapse;
  line-height: 40px;
  font-size: 14px;
}

.dialysis-print-order .print-table-no {
  width: 100%;
  text-align: center;
  border-collapse: collapse;
  font-size: 14px;
}

.dialysis-print-order .under-line {
  border-bottom: 1px solid #999;
  width: 95%;
  text-align: center;
  margin-left: 2px;
}

.dialysis-print-order .title-box {
  text-align: center;
  font-size: 16px;
}

.dialysis-print-order .radio-lebel-box {
  font-weight: 400;
  cursor: pointer;
}

.dialysis-print-order .radio-no {
  opacity: 0;
  outline: none;
  position: absolute;
  margin: 0;
  width: 0;
  height: 0;
  z-index: -1;
}

.dialysis-print-order .radio-inner {
  white-space: nowrap;
  cursor: pointer;
  outline: none;
  display: inline-block;
  line-height: 1;
  position: relative;
  vertical-align: middle;
}

.dialysis-print-order .radio-fang {
  display: inline-block;
  position: relative;
  border: 1px solid #000;
  box-sizing: border-box;
  width: 14px;
  height: 14px;
  background-color: #fff;
  z-index: 1;
  transition: border-color 0.25s cubic-bezier(0.71, -0.46, 0.29, 1.46),
    background-color 0.25s cubic-bezier(0.71, -0.46, 0.29, 1.46);
}

.dialysis-print-order .is-checked-radio::after {
  content: "√";
  font-size: 15px;
}

.dialysis-print-order .print-table-no tr td {
  padding: 8px 5px;
  line-height: 25px;
}

.dialysis-print-order .print-table tr td {
  padding: 1px 1px;
  /*line-height: 25px;*/
}

.es-img {
  height: 25px;
}

.advice-name {
  text-align: left;
}

.advice-children {
  display: flex;
}

.title-box-pro {
  border: 0 #fff;
  line-height: 25px;
  height: 25px;
  text-align: left;
  padding-left: 10px !important;
}
.title-box-pro-tr {
  border: 0 #fff;
}
.text-align-left {
  text-align: left !important;
  padding-left: 10px !important;
  font-size: 14px !important;
  line-height: 25px;
}
.print-table-tr-new td {
  line-height: 20px !important;
}
.border-top-solid {
  border: solid 1px #000;
}
.print-template-two tr {
  line-height: 30px;
}
</style>
