<template>
  <!-- 点击透析记录患者资料跳转的页面 -->
  <div class="main-contain">
    <div class="position">
      <bread-crumb :crumbs="crumbs"></bread-crumb>
      <div class="print" style="float:left;">
        <el-button
          v-if="queueConfig.txxqyxs == 1"
          size="small"
          type="primary"
          @click="call"
          >叫号</el-button
        >
        <el-button
          v-if="queueConfig.txxqyxs == 1"
          size="small"
          type="primary"
          @click="next"
          >下一位</el-button
        >   

        <el-button
          size="small"
          type="primary"
          @click="history_click"
          
          >透析历史</el-button>

        <el-button
          size="small"
          type="primary"
          @click="printOrderOne"
          icon="el-icon-printer"
          >打印上机单</el-button>

        <el-button
          size="small"
          type="primary"
          @click="printOrder"
          icon="el-icon-printer"
          >打印</el-button
        >

      </div>
    </div>

    <div
      class="loadingBox"
      v-loading="loading"
      element-loading-text="拼命加载中"
      element-loading-spinner="el-icon-loading"
      element-loading-background="rgba(0, 0, 0, 0.8)"
    >
    <div class="patientBox" style="width:300px;padding-left:10px;position: relative;" v-if="norefresh">
      <el-button
          style="position: absolute;right:0;top:2px;z-index:10"
          size="small"
          type="primary"
          @click="refresh"
          >刷新</el-button>
      <el-tabs v-model="activeName" @tab-click="handleClick">
        <!-- 候诊区 -->
        <el-tab-pane label="候诊区" name="first">
          <div class="cell clearfix" style="margin-bottom:10px;">
            <el-date-picker v-model="selected_date"
              prefix-icon="el-icon-date" @change="handleScheduleDateChange"
             :editable="false" :clearable="false"
              style="width: 45%;margin-right:10px;" type="date" placeholder="选择日期时间" align="right" >
            </el-date-picker>
            <el-input size="small" style="width:25%;" @keyup.enter.native='searchAction' v-model.trim="search_input" class="filter-item"/>
            <el-button size="small" class="filter-item" type="primary" style="margin-right:20px;" @click="searchAction">搜索</el-button>
          </div>
          <div class="cell clearfix" style="margin-bottom:10px;display:flex;">
            <el-select v-model="patientStateVal" placeholder="全部患者状态" style="margin-right:10px;" @change="handleStateChange">
              <el-option
                v-for="item in patient_state"
                :key="item.value"
                :label="item.label"
                :value="item.value">
              </el-option>
            </el-select>
            <el-select v-model="treatStateVal" placeholder="全部治疗状态" style="margin-right:20px;" @change="handleTreatChange">
              <el-option
                v-for="item in treat_state"
                :key="item.value"
                :label="item.label"
                :value="item.value">
              </el-option>
            </el-select>
          </div>
          <div class="cell clearfix" style="margin-bottom:10px;display:flex;">
            <el-select v-model="scheduleStateVal" placeholder="班次" style="margin-right:10px;" @change="handletimeType">
              <el-option
                v-for="item in schedule_options"
                :key="item.value"
                :label="item.label"
                :value="item.value">
              </el-option>
            </el-select>
            <el-select v-model="zoneVal" placeholder="分区" style="margin-right:20px;" @change="handleZoneChange">
              <el-option
                v-for="item in zone_options"
                :key="item.id"
                :label="item.text"
                :value="item.id">
              </el-option>
            </el-select>
          </div>
          <div style="padding-right:20px;">
            <el-table
              ref="tab"
              @row-click="changePatient"
              highlight-current-row
              :data="tableData"
              height="500"
              border
              style="width: 100%">
              <el-table-column
                prop="date"
                label="床号"
                width="50"
                >
                <template slot-scope="scope">
                  {{ scope.row.device_number.number }}
                </template>
              </el-table-column>
              <el-table-column
                prop="date"
                label="患者"
              >
                <template slot-scope="scope">
                  {{ scope.row.patient.name }}
                  <span v-if="scope.row.assessment_before_dislysis && patientStateVal == 1">
                    ({{ getTime(scope.row.assessment_before_dislysis.created_time) }})
                  </span>
                  <!-- <span class="touxi_cishu"  @click.stop="chishuclick(scope.row.patient.name)">
                    0/4
                  </span> -->
                </template>
              </el-table-column>
              <el-table-column
                prop="name"
                label="状态"
                >
                <template slot-scope="scope">
                  <div style="display:flex;align-items:center;justify-content:space-around;">
                    <span class="tip1" v-if="scope.row.prescription == null || scope.row.prescription.creater == 0">
                      待开处方
                    </span>
                    <span class="tip2" v-if="scope.row.assessment_before_dislysis == null || scope.row.assessment_before_dislysis.weight_before == ''">
                      待称重
                    </span>
                  </div>
                </template>
              </el-table-column>
            </el-table>
          </div>
        </el-tab-pane>
        <!-- 透析区 -->
        <el-tab-pane label="透析区" name="second">
          <div class="cell clearfix" style="margin-bottom:10px;">
            <el-date-picker v-model="selected_date" prefix-icon="el-icon-date" @change="handleScheduleDateChange" :editable="false" :clearable="false" style="width: 45%;margin-right:10px;" type="date" placeholder="选择日期时间" align="right" ></el-date-picker>
            <el-input size="small" style="width:25%;" @keyup.enter.native='searchAction' v-model.trim="search_input" class="filter-item"/>
            <el-button size="small" class="filter-item" style="margin-right:20px;" type="primary" @click="searchAction">搜索</el-button>
          </div>
          <div class="cell clearfix" style="margin-bottom:10px;display:flex;">
            <el-select v-model="patientStateVal" placeholder="全部患者状态" style="margin-right:10px;" @change="handleStateChange">
              <el-option
                v-for="item in patient_state"
                :key="item.value"
                :label="item.label"
                :value="item.value">
              </el-option>
            </el-select>
            <el-select v-model="treatStateVal" placeholder="全部治疗状态" style="margin-right:20px;" @change="handleTreatChange">
              <el-option
                v-for="item in treat_state"
                :key="item.value"
                :label="item.label"
                :value="item.value">
              </el-option>
            </el-select>
          </div>
          <div class="cell clearfix" style="margin-bottom:10px;display:flex;">
            <el-select v-model="scheduleStateVal" placeholder="班次" style="margin-right:10px;" @change="handletimeType">
              <el-option
                v-for="item in schedule_options"
                :key="item.value"
                :label="item.label"
                :value="item.value">
              </el-option>
            </el-select>
            <el-select v-model="zoneVal" placeholder="分区" style="margin-right:20px;" @change="handleZoneChange">
              <el-option
                v-for="item in zone_options"
                :key="item.id"
                :label="item.text"
                :value="item.id">
              </el-option>
            </el-select>
          </div>
          <div style="padding-right:20px;">
            <el-table
              ref="tab1"
              @row-click="changePatient"
              highlight-current-row
              :data="tableData1"
              height="500"
              border
              style="width: 100%">
              <el-table-column
                prop="date"
                label="床号"
                width="50"
                >
                <template slot-scope="scope">
                  {{ scope.row.device_number.number }}
                </template>
              </el-table-column>
              <el-table-column
                prop="date"
                label="患者"
                >
                <template slot-scope="scope">
                  {{ scope.row.patient.name }}
                  <span v-if="scope.row.assessment_before_dislysis && patientStateVal == 1">
                    （{{ getTime(scope.row.assessment_before_dislysis.created_time) }}）
                  </span>
                  <!-- <span class="touxi_cishu"  @click.stop="chishuclick(scope.row.patient.name)">
                    0/4
                  </span> -->
                </template>
              </el-table-column>
              <el-table-column
                prop="name"
                label="状态"
                >
                <template slot-scope="scope">
                  <div style="display:flex;align-items:center;justify-content:space-around;">
                      <span class="tip3" v-if="scope.row.dialysis_order ? scope.row.dialysis_order.stage == 1 : false">
                        已上机
                      </span>
                      <span class="tip4" v-if="scope.row.dialysis_order ? scope.row.dialysis_order.stage == 2 : false">
                        已下机
                      </span>
                    <span class="tip5" v-if="scope.row.treatment_summary == null || scope.row.treatment_summary.dialysis_summary == ''">
                      待开小结
                    </span>
                  </div>
                </template>
              </el-table-column>
            </el-table>
          </div>
        </el-tab-pane>
      </el-tabs>


<!-- 打印上机单弹窗 -->
    <el-dialog
      :visible.sync="startVisibility"
      :close-on-click-modal="false"
      :close-on-press-escape="false"
      :show-close="false"
      width="30%"
    >
      <el-button
        size="small"
        icon="el-icon-printer"
        type="primary"
        @click="printAction"
        style="float:right"
        >打印</el-button
      >
      <div id="print_content">
      <div class="print_main_content">
        <div class="table_panel">
            <div v-for="(main_collection,index) in printList" :key="index">
              <div class="signPrint" style="width: 360px;font-size:16px;">
                <div style="margin-left:50px;">姓名:
                  <span>{{main_collection.patient.name}} </span>
                  （{{ main_collection.patient.dialysis_no }}，{{getNewAge(main_collection.patient.id_card_no)  }}岁）
                </div>
                <div class="printCell" style="display:flex;justify-content: space-around;">
                  <span style="display: block;width: 50%;">
                    床号：{{ main_collection.number.number }}
                    <span style="width:auto;" v-if="main_collection.schedule_type == 1">上午</span>
                    <span style="width:auto;" v-if="main_collection.schedule_type == 2">下午</span>
                    <span style="width:auto;" v-if="main_collection.schedule_type == 3">晚上</span>
                  </span>
                  <span style="display: block;width: 50%;">{{ printDate }}</span>
                </div>
                <div class="printCell" style="display:flex;justify-content: space-around;">
                  <span style="display: block;width: 50%;">干体重：{{main_collection.assessmentbefor.dry_weight}}Kg</span>
                    <span style="display: block;width: 50%;">抗凝剂：{{ main_collection.dialysissolution.anticoagulant ? anticoagulants_confit[main_collection.dialysissolution.anticoagulant].name : ''}}</span>

                </div>
                <div class="printCell" style="display:flex;justify-content: space-around;">
                  <span style="display: block;width: 50%;">净重值：{{ main_collection.assessmentbefor.weight_before - main_collection.assessmentbefor.additional_weight }}Kg</span>

                  <span style="display: block;width: 50%;">
                    首剂： <span v-if="main_collection.dialysissolution.anticoagulant == 1">{{main_collection.dialysissolution.anticoagulant_shouji}} mg</span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 2">
                    {{main_collection.dialysissolution.anticoagulant_shouji}}mg
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 3">
                    {{main_collection.dialysissolution.anticoagulant_shouji}}iu
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 4">
                  {{main_collection.dialysissolution.anticoagulant_shouji}}mg
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 5">
                  {{main_collection.dialysissolution.anticoagulant_shouji}} mg
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 6">
                  {{main_collection.dialysissolution.anticoagulant_shouji}}iu
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 7">
                    {{main_collection.dialysissolution.anticoagulant_shouji}}iu
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 8">
                    {{main_collection.dialysissolution.anticoagulant_shouji}}iu
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 9">
                    {{main_collection.dialysissolution.anticoagulant_shouji}}iu
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 10">
                    {{main_collection.dialysissolution.anticoagulant_shouji}}iu
                    </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 11">
                    {{main_collection.dialysissolution.anticoagulant_shouji}}iu
                  </span>
                    </span>

                </div>
                <div class="printCell" style="display:flex;justify-content: space-around;">
                  <span style="display: block;width: 50%;">体重增加：{{ (main_collection.assessmentbefor.weight_before - assessmentAfterDislysis.weight_after).toFixed(2) }}Kg</span>
                <span style="display: block;width: 50%;">
                    维持：{{main_collection.dialysissolution.anticoagulant_weichi}}
                  <span v-if="main_collection.dialysissolution.anticoagulant == 1">
                    mg/h
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 2">
                    mg/h
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 3">
                  iu/h
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 4">
                    mg/h
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 5">
                    mg/h
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 6">
                  iu/h
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 7">
                  iu/h
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 8">
                    iu/h
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 9">
                    iu/h
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 10">
                    iu/h
                    </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 11">
                    iu/h
                  </span>
                  </span>

                </div>
                <div class="printCell" style="display:flex;justify-content: space-around;">
                  <span style="display: block;width: 50%;">处方脱水量：{{ main_collection.prescription.target_ultrafiltration }}
                    <span v-if="$store.getters.xt_user.org.id == 10278 || $store.getters.xt_user.org.id == 10138 || $store.getters.xt_user.org.id == 10460">ml</span>
                    <span v-else>L</span>
                  </span>
                  <span style="display: block;width: 50%;">
                    总量：{{main_collection.dialysissolution.anticoagulant_zongliang}}
                  <span v-if="main_collection.dialysissolution.anticoagulant == 1">
                    mg
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 2">
                    mg
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 3">
                    iu
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 4">
                  mg
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 5">
                    mg
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 6">
                  iu
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 7">
                    iu
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 8">
                    iu
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 9">
                  iu
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 10">
                    iu
                    </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 11">
                  iu
                  </span>
                  </span>
                </div>
              </div>
            </div>

            <!-- <div v-for="(main_collection,index) in printList" :key="index" style="width: 80%;">
              <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse; text-align: center; margin: auto;">

                <tr style="height: 20px;">
                  <td>{{ printDate }}</td>
                  <td>机号：{{ main_collection.number.number }}</td>
                </tr>
                <tr style="height: 20px;">
                  <td>姓名</td>
                  <td>{{main_collection.patient.name}}</td>
                </tr>
                <tr style="height: 20px;">
                  <td>治疗方式</td>
                  <td></td>
                </tr>
                <tr style="height: 20px;">
                  <td>透析时间</td>
                  <td>{{ printDate }}</td>
                </tr>
                <tr style="height: 20px;">
                  <td>透前体重</td>
                  <td></td>
                </tr>
                <tr style="height: 20px;">
                  <td>干体重</td>
                  <td>{{main_collection.assessmentbefor.dry_weight}}Kg</td>
                </tr>
                <tr style="height: 20px;">
                  <td>超滤量</td>
                  <td></td>
                </tr>
                <tr style="height: 20px;">
                  <td>透前血压</td>
                  <td>-</td>
                </tr>
                <tr style="height: 20px;">
                  <td></td>
                  <td></td>
                </tr>
                <tr style="height: 20px;">
                  <td></td>
                  <td></td>
                </tr>
              </table>
            </div> -->

        </div>
      </div>
      </div>

      <span slot="footer" class="dialog-footer">
        <el-button @click="startVisibility = false">取 消</el-button>
      </span>
    </el-dialog>

<!-- 打印上机单弹窗----新 -->
    <el-dialog
      :visible.sync="centerDialogVisible"
      width="30%"
      >
      <el-button
        size="small"
        icon="el-icon-printer"
        type="primary"
        @click="printAction"
        style="float:right"
        >打印</el-button
      >
      <div id="print_content">
        <div class="print_main_content">
          <div class="table_panel" v-for="(main_collection,index) in printList">
            <div style="border: 1px solid black;width: 82%;"  >
              <div style="margin: 5px 0;">
                <span style="font-weight: bolder;">{{main_collection.patient.name}} </span>&nbsp;&nbsp;

                <span>
                  <span v-if="main_collection.patient.gender==1">男</span>
                  <span v-if="main_collection.patient.gender==2">女</span>
                </span>&nbsp;&nbsp;
                <span>{{getNewAge(main_collection.patient.id_card_no)  }}岁</span>&nbsp;&nbsp;<span>{{getTimes(main_collection.schedule_date)}}</span>&nbsp;&nbsp;
                <span></span>
                  &nbsp;&nbsp;
                  <span>
                    <span style="width:auto;" v-if="main_collection.schedule_type == 1">上午</span>
                    <span style="width:auto;" v-if="main_collection.schedule_type == 2">下午</span>
                    <span style="width:auto;" v-if="main_collection.schedule_type == 3">晚上</span>
                </span>&nbsp;&nbsp;<span>{{ main_collection.number.number }}</span>
              </div>
              <div style="margin: 5px 0;">
                <span>身高:{{ main_collection.patient.height?main_collection.patient.height:"" }} cm</span>&nbsp;&nbsp;<span>干体重:{{main_collection.assessmentbefor.dry_weight}}kg</span>&nbsp;&nbsp;
                 <span>HCT:%</span>&nbsp;&nbsp;<span>KTV目标:</span>
              </div>
            </div>
            <div style="height: 30px;width: 82%;border: 1px solid black;">

            </div>
            <div style="border: 1px solid black;width: 82%;">
              <div style="display: flex;margin: 5px 0;">
                <div style="flex: 1;">透析模式:{{getModeId(main_collection.mode_id)}}</div>
                <div style="flex: 1;">透析器/灌流器:{{main_collection.prescription.dialyzer_perfusion_apparatus }} </div>

              </div>
              <div style="display: flex;margin: 5px 0;">
                <div style="flex: 1;">血流量:{{main_collection.prescription.blood_flow_volume}}ml/min</div>
                <div style="flex: 1;">置换液总量:<span v-if="main_collection.prescription.displace_liqui_value>0">{{main_collection.prescription.displace_liqui_value}}</span>L</div>
              </div>
              <div style="margin: 5px 0;">
                <div>透析液类型:
                  <span>Na:{{ main_collection.prescription.sodium }}</span>
                  <span>K:{{ main_collection.prescription.kalium }}</span>
                  <span>Ca:{{main_collection.prescription.calcium }}</span>
                  <span>
                    <span v-if="main_collection.prescription.chaptalization==0"> 不含 </span>
                    <span v-if="main_collection.prescription.chaptalization>0"> 含糖:{{main_collection.prescription.chaptalization}} </span>
                    HCO3:</span>
                </div>
              </div>
              <div style="display: flex;margin: 5px 0;">
                <div style="flex: 1;">超滤曲线:</div>
                <div style="flex: 1;">Na曲线:</div>
              </div>
              <div style="margin: 5px 0;">
                <span>抗凝方案:</span>
                <span>{{ main_collection.dialysissolution.anticoagulant ? anticoagulants_confit[main_collection.dialysissolution.anticoagulant].name : ''}}</span>
                <span>
                  首剂：<span v-if="main_collection.dialysissolution.anticoagulant == 1">{{main_collection.dialysissolution.anticoagulant_shouji}} mg</span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 2">
                    {{main_collection.dialysissolution.anticoagulant_shouji}}mg
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 3">
                    {{main_collection.dialysissolution.anticoagulant_shouji}}iu
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 4">
                  {{main_collection.dialysissolution.anticoagulant_shouji}}mg
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 5">
                  {{main_collection.dialysissolution.anticoagulant_shouji}} mg
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 6">
                  {{main_collection.dialysissolution.anticoagulant_shouji}}iu
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 7">
                    {{main_collection.dialysissolution.anticoagulant_shouji}}iu
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 8">
                    {{main_collection.dialysissolution.anticoagulant_shouji}}iu
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 9">
                    {{main_collection.dialysissolution.anticoagulant_shouji}}iu
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 10">
                    {{main_collection.dialysissolution.anticoagulant_shouji}}iu
                    </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 11">
                    {{main_collection.dialysissolution.anticoagulant_shouji}}iu
                  </span>
                </span>

                <span>
                  维持：{{main_collection.dialysissolution.anticoagulant_weichi}}
                  <span v-if="main_collection.dialysissolution.anticoagulant == 1">
                    mg/h
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 2">
                    mg/h
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 3">
                  iu/h
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 4">
                    mg/h
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 5">
                    mg/h
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 6">
                  iu/h
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 7">
                  iu/h
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 8">
                    iu/h
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 9">
                    iu/h
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 10">
                    iu/h
                    </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 11">
                    iu/h
                  </span>
                </span>

                <span>
                    总量：{{main_collection.dialysissolution.anticoagulant_zongliang}}
                  <span v-if="main_collection.dialysissolution.anticoagulant == 1">
                    mg
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 2">
                    mg
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 3">
                    iu
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 4">
                  mg
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 5">
                    mg
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 6">
                  iu
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 7">
                    iu
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 8">
                    iu
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 9">
                  iu
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 10">
                    iu
                    </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 11">
                  iu
                  </span>
                  </span>
              </div>
              <div style="margin: 5px 0;">
                血管通路:{{getBloodAccess(main_collection.assessmentbefor.blood_access_part_opera_id)   }}
              </div>
            </div>
            <div style="border: 1px solid black;width: 82%;">
              <div style="margin: 5px 0;">高危因素:{{ main_collection.prescription.remark }}</div>
            </div>
          </div>
        </div>
      </div>

      <span slot="footer" class="dialog-footer">
        <el-button @click="centerDialogVisible = false">取 消</el-button>
      </span>
    </el-dialog>

      <el-dialog
          :visible.sync="endVisibility"
          :close-on-click-modal="false"
          :close-on-press-escape="false"
          :show-close="false"
          width="30%"
        >
         <el-button
            size="small"
            icon="el-icon-printer"
            type="primary"
            @click="printAction"
            style="float:right"
            >打印</el-button
          >
       <div id="print_content">
        <div class="print_main_content">
          <div class="table_panel">
             <div v-for="(main_collection,index) in printList" :key="index">
              <div class="signPrint" style="width: 360px;font-size:16px;">
                <div style="margin-left:50px;">姓名:
                  <span>{{main_collection.patient.name}} </span>
                  （{{ main_collection.patient.dialysis_no }}，{{getNewAge(main_collection.patient.id_card_no)  }}岁）
                </div>
                <div class="printCell" style="display:flex;justify-content: space-around;">
                  <span style="display: block;width: 50%;">
                    床号：{{ main_collection.number.number }}
                    <span style="width:auto;" v-if="main_collection.schedule_type == 1">上午</span>
                    <span style="width:auto;" v-if="main_collection.schedule_type == 2">下午</span>
                    <span style="width:auto;" v-if="main_collection.schedule_type == 3">晚上</span>
                  </span>
                  <span style="display: block;width: 50%;">{{ printDate }}</span>
                </div>
                <div class="printCell" style="display:flex;justify-content: space-around;">
                   <span style="display: block;width: 50%;">干体重：{{main_collection.assessmentbefor.dry_weight}}Kg</span>
                    <span style="display: block;width: 50%;">抗凝剂：{{ main_collection.dialysissolution.anticoagulant ? anticoagulants_confit[main_collection.dialysissolution.anticoagulant].name : ''}}</span>

                </div>
                <div class="printCell" style="display:flex;justify-content: space-around;">
                  <span style="display: block;width: 50%;">净重值：{{ main_collection.assessmentbefor.weight_before - main_collection.assessmentbefor.additional_weight }}Kg</span>

                  <span style="display: block;width: 50%;">
                    首剂： <span v-if="main_collection.dialysissolution.anticoagulant == 1">{{main_collection.dialysissolution.anticoagulant_shouji}} mg</span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 2">
                    {{main_collection.dialysissolution.anticoagulant_shouji}}mg
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 3">
                    {{main_collection.dialysissolution.anticoagulant_shouji}}iu
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 4">
                   {{main_collection.dialysissolution.anticoagulant_shouji}}mg
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 5">
                   {{main_collection.dialysissolution.anticoagulant_shouji}} mg
                   </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 6">
                   {{main_collection.dialysissolution.anticoagulant_shouji}}iu
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 7">
                    {{main_collection.dialysissolution.anticoagulant_shouji}}iu
                   </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 8">
                    {{main_collection.dialysissolution.anticoagulant_shouji}}iu
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 9">
                    {{main_collection.dialysissolution.anticoagulant_shouji}}iu
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 10">
                     {{main_collection.dialysissolution.anticoagulant_shouji}}iu
                    </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 11">
                    {{main_collection.dialysissolution.anticoagulant_shouji}}iu
                   </span>
                    </span>

                </div>
                <div class="printCell" style="display:flex;justify-content: space-around;">
                  <span style="display: block;width: 50%;">体重增加：{{ (main_collection.assessmentbefor.weight_before - assessmentAfterDislysis.weight_after).toFixed(2) }}Kg</span>
                 <span style="display: block;width: 50%;">
                     维持：{{main_collection.dialysissolution.anticoagulant_weichi}}
                   <span v-if="main_collection.dialysissolution.anticoagulant == 1">
                    mg/h
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 2">
                    mg/h
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 3">
                   iu/h
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 4">
                    mg/h
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 5">
                    mg/h
                   </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 6">
                   iu/h
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 7">
                   iu/h
                   </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 8">
                    iu/h
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 9">
                    iu/h
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 10">
                    iu/h
                    </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 11">
                    iu/h
                   </span>
                  </span>

                </div>
                <div class="printCell" style="display:flex;justify-content: space-around;">
                  <span style="display: block;width: 50%;">处方脱水量：{{ main_collection.prescription.target_ultrafiltration }}
                    <span v-if="$store.getters.xt_user.org.id == 10278 || $store.getters.xt_user.org.id == 10138">ml</span>
                    <span v-else>L</span>
                  </span>
                  <span style="display: block;width: 50%;">
                    总量：{{main_collection.dialysissolution.anticoagulant_zongliang}}
                  <span v-if="main_collection.dialysissolution.anticoagulant == 1">
                    mg
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 2">
                    mg
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 3">
                    iu
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 4">
                   mg
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 5">
                    mg
                   </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 6">
                   iu
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 7">
                    iu
                   </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 8">
                     iu
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 9">
                   iu
                  </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 10">
                    iu
                    </span>
                  <span v-if="main_collection.dialysissolution.anticoagulant == 11">
                   iu
                   </span>
                  </span>
                </div>
              </div>
            </div>
          </div>
        </div>
      </div>

      <span slot="footer" class="dialog-footer">
        <el-button @click="endVisibility = false">取 消</el-button>
      </span>
    </el-dialog>

 <!-- 显示透析日期的弹窗 -->
      <el-dialog
        :title="'患者信息（姓名：'+Dialysis_patient+'、透析号：'+20011120+'）'"
        :visible.sync="cishu_dialogVisible"
        width="50%"
        :modal-append-to-body='false'
        :close-on-click-modal="false">
        <div>
          <div style="line-height: 40px;">
            透析频率：HD(每周2次)
          </div>
          <div style="line-height: 40px;">
            已排详情
          </div>
          <div>
            <el-calendar>
              <!-- 这里使用的是 2.5 slot 语法，对于新项目请使用 2.6 slot 语法-->
              <template
                slot="dateCell"
                slot-scope="{date, data}">
                <P v-if="data.day.split('-').slice(1).join('-')=='03-06'"
                  style="background: red;color: white;text-align: center;">
                  HD
                </P>
                <p :class="data.isSelected ? 'is-selected' : ''" style="text-align: center;">
                  {{ data.day.split('-').slice(2).join('-') }} {{ data.isSelected ? '✔️' : ''}}<br/>
                  <span v-if="data.day.split('-').slice(1).join('-')=='03-06'">上午 门诊</span>
                </p>

              </template>
            </el-calendar>
          </div>
        </div>
      </el-dialog>
    </div>
    <!-- 右侧内容 -->
    <div style="width:75%" v-show="!showView">
      <!-- <div v-if="Refresh"> -->
        <div style="margin-left:60px;color:#34495e">
          <span>{{ patient.name }}({{ patient.dialysis_no }})</span>
          <span v-if="newTime != ''">&nbsp;&nbsp;|&nbsp;&nbsp;</span>
          <span v-if="newTime != ''">签到时间：{{ newTime }}</span>
        </div>

        <nav-igation
          ref="nav"
          title="弹窗导航"
          @advice="adviceFunc"
          :patient="patient"
          :schedual="schedual"
          :prescription="prescription"
          :solution="solution"
          :receiver_treatment_access="receiver_treatment_access"
          :predialysis_evaluation="predialysis_evaluation"
          :doctor_advices="doctor_advices"
          :double_check="double_check"
          :assessment_after_dislysis="assessment_after_dislysis"
          :treatment_summary="treatment_summary"
          :monitor_records="monitor_records"
          :dialysis_order="dialysis_order"
          :admin_users="admin_users"
          :devices="devices"
          :device_numbers="device_numbers"
          :admin_user_map="admin_user_map"
          :device_map="device_map"
          :device_number_map="device_number_map"
          :niprocart_info="niprocart_info"
          :jms_info="jms_info"
          :fistula_needle_set_info="fistula_needle_set_info"
          :fistula_needle_set_16_info="fistula_needle_set_16_info"
          :hemoperfusion_info="hemoperfusion_info"
          :dialyser_sterilised_info="dialyser_sterilised_info"
          :filtryzer_info="filtryzer_info"
          :dialyzers_info="dialyzers_info"
          :injector_info="injector_info"
          :bloodlines_info="bloodlines_info"
          :tubingHemodialysis_info="tubingHemodialysis_info"
          :safe_package_info="safe_package_info"
          :aliquid_info="aliquid_info"
          :config="config"
          :longAdvices="longAdvices"
          :waitUploadAdvices="waitUploadAdvices"
          :is_open="is_open"
          :last_predialysis_evaluation="lastPredialysisEvaluation"
          :last_monitor_record="lastMonitorRecord"
          :last_assessment_after_dislysis="lastAssessmentAfterDislysis"
          :last_dialysis_prescribe="lastDialysisPrescribe"
          :last_dryWeight_dislysis="lastDryWeightDislysis"
          :special_premission="headNurses"
          @assessmentAfterDislysis="assessmentAfterDislysisFunc"
          :system_prescribe="system_prescribe"
          :his_is_open="his_is_open"
          :is_advice_open="is_advice_open"
          :lastAssessment="lastAssessment"
          :stockType="stockType"
          :his_doctor_advices="his_doctor_advices"
          :lastOrder="lastOrder"
          :dryWeightList="dryWeightList"
          :docList="docList"

        >
        </nav-igation>

        <basic-infor
          :patient="patient"
          :dialysis_date="dialysis_date"
          :device_number="schedual.id == 0 ? '' : schedual.device_number.number"
          :steps="steps"
          title="基本信息"
        ></basic-infor>

        <dialysis-prescription
          :prescription="prescription"
          :solution="solution"
          :device_map="device_map"
          :preparestock="preparestock"
          title="透析处方"
        ></dialysis-prescription>

        <!-- <past-data class="往期数据"></past-data> -->
        <div style="height: 20px;background-color: #f6f8f9"></div>
        <accepts-assessment
          :record="receiver_treatment_access"
          title="接诊评估"
        ></accepts-assessment>

        <assessment-before
          :record="predialysis_evaluation"
          ref="assessment_before"
          title="透前评估"
        ></assessment-before>

        <stat-order
          ref="stat_order"
          :advices="doctor_advices"
          :doctor_map="admin_user_map"
          title="临时医嘱"
        ></stat-order>

        <double-check
          ref="double_check"
          :record="double_check"
          :admin_map="admin_user_map"
          title="双人核对 "
        ></double-check>

        <dialysis-computer
          ref="dialysis_computer"
          :record="dialysis_order"
          :admin_map="admin_user_map"
          :device_number_map="device_number_map"
          title="透析上机 "
        ></dialysis-computer>

        <dialysis-monitoring
          ref="monitoring"
          :monitores="monitor_records"
          title="透析监测"
        ></dialysis-monitoring>
      <!-- </div> -->
      <el-dialog
        title="长期医嘱单"
        :visible.sync="dialogFormVisible"
        width="960px"
      >
        <div class="printForm">
          <h1 class="title">长期医嘱单</h1>
          <div class="info">
            <ul>
              <li>
                <span class="name">姓名：</span>
                <input type="text" class="InputBox" />
              </li>
              <li>
                <span class="name">性别：</span>
                <input type="text" class="InputBox" />
              </li>
              <li>
                <span class="name">年龄：</span>
                <input type="text" class="InputBox" />
              </li>
              <li>
                <span class="name">科别：</span>
                <input type="text" class="InputBox" />
              </li>
              <li>
                <span class="name">床号：</span>
                <input type="text" class="InputBox" />
              </li>
              <li>
                <span class="name">住院号：</span>
                <input type="text" class="InputBox" />
              </li>
            </ul>
          </div>
          <table
            border="1"
            style="border:1px #999 solid;margin-top:20px;"
            bordercolorlight="#fff"
            bordercolordark="#fff"
            width="100%"
            cellpadding="0"
            cellspacing="0"
            class="printTable"
          >
            <tbody>
              <tr align="center">
                <th style="width:20%;" colspan="2" align="center">起始</th>
                <th style="width:20%;" rowspan="2" align="center">医嘱</th>
                <th style="width:8%;" rowspan="2" align="center">医师签名</th>
                <th style="width:6%;" rowspan="2" align="center">执行护士签名</th>
                <th style="width:42%;" colspan="4" align="center">停止</th>
              </tr>
              <tr align="center">
                <th align="center">日期</th>
                <th align="center">时间</th>
                <th style="width:10%;" align="center">日期</th>
                <th style="width:10%;" align="center">时间</th>
                <th style="width:10%;" align="center">医师签名</th>
                <th style="width:6%;" align="center">执行护士签名</th>
              </tr>
              <tr align="center">
                <td>2018-90-09</td>
                <td>2018-90-09</td>
                <td>地方开发发地方开发发方发发发大渡岗</td>
                <td>张三</td>
                <td>张三</td>
                <td>张三</td>
                <td>张三</td>
                <td>张三</td>
                <td>张三</td>
              </tr>
              <tr align="center">
                <td>2018-90-09</td>
                <td>2018-90-09</td>
                <td>地方开发发地方开发发方发发发大渡岗</td>
                <td>张三</td>
                <td>张三</td>
                <td>张三</td>
                <td>张三</td>
                <td>张三</td>
                <td>张三</td>
              </tr>
            </tbody>
          </table>
        </div>
      </el-dialog>

      <el-dialog title="临时医嘱单" :visible.sync="orders" width="960px">
        <div class="printForm">
          <h1 class="title">临时医嘱单</h1>
          <div class="info">
            <ul>
              <li>
                <span class="name">姓名：</span>
                <input type="text" class="InputBox" />
              </li>
              <li>
                <span class="name">性别：</span>
                <input type="text" class="InputBox" />
              </li>
              <li>
                <span class="name">年龄：</span>
                <input type="text" class="InputBox" />
              </li>
              <li>
                <span class="name">科：</span>
                <input type="text" class="InputBox" />
              </li>
              <li>
                <span class="name">区：</span>
                <input type="text" class="InputBox" />
              </li>
              <li>
                <span class="name">房：</span>
                <input type="text" class="InputBox" />
              </li>
              <li>
                <span class="name">床：</span>
                <input type="text" class="InputBox" />
              </li>
              <li>
                <span class="name">住院号：</span>
                <input type="text" class="InputBox" />
              </li>
            </ul>
          </div>
          <table
            border="1"
            style="border:1px #999 solid;margin-top:20px;"
            bordercolorlight="#fff"
            bordercolordark="#fff"
            width="100%"
            cellpadding="0"
            cellspacing="0"
            class="printTable"
          >
            <tbody>
              <tr align="center">
                <th style="width:10%;" align="center">日期</th>
                <th style="width:10%;" align="center">时间</th>
                <th style="width:10%;" align="center">医生签名</th>
                <th style="width:40%;" align="center">医嘱内容</th>
                <th style="width:10%;" align="center">执行时间</th>
                <th style="width:10%;" align="center">护士签名</th>
                <th style="width:10%;" align="center">金额</th>
              </tr>
              <tr align="center">
                <td>2018-90-09</td>
                <td>2018-90-09</td>
                <td>张三</td>
                <td>张三</td>
                <td>张三</td>
                <td>张三</td>
                <td>888</td>
              </tr>
              <tr align="center">
                <td>2018-90-09</td>
                <td>2018-90-09</td>
                <td>张三</td>
                <td>张三</td>
                <td>2018-90-09</td>
                <td>张三</td>
                <td>888</td>
              </tr>
            </tbody>
          </table>
        </div>
      </el-dialog>

      <dialysis-off
        ref="dialysis_off"
        :record="dialysis_order"
        :admin_map="admin_user_map"
        title="透析下机 "
      ></dialysis-off>

      <assessment-after
        ref="assessment_after"
        :record="assessment_after_dislysis"
        title="透后评估"
      ></assessment-after>

      <treatment-of
        ref="treatment_of"
        :record="treatment_summary"
        title="治疗小结"
      ></treatment-of>
    </div>
    <div v-if="showView" style="text-align:center;margin: 0 auto;font-size:20px;">
      <p style="margin-top:20px;">当前叫号</p>
      <p style="margin-top:20px;">{{ $route.query.patient_name ? $route.query.patient_name : ""}}</p>
      <p style="margin-top:20px;">签到时间：{{ $route.query.curPatientTime ? getDates($route.query.curPatientTime) : '' }}</p>
      <p style="color:red;margin-top:20px;">提示：当前患者无排班，请先排班</p>

    </div>
    </div>

    <!-- 透析历史 -->
    <el-dialog class="history"
      :title="'患者信息（姓名：'+patient.name+'、透析号：'+patient.dialysis_no +'）' "
      :visible.sync="historyclick"
      width="50%"
      >
      <div>
        <!-- <div >
          透析频率：
          <div class="touxipl"></div>
        </div> -->
        <div style="margin: 20px 0;">
          <div style="border-left: 2px solid #409eff;color: #409eff;padding: 0 10px;">
            <span>已排详情</span>
          </div>
          <div @click="viewDayWork">
            <el-calendar v-model="time_value">  
              
                <template
                  slot="dateCell"
                  slot-scope="{date, data}">
                    <p :class="data.isSelected ? 'is-selected' : ''" style="text-align: center;">
                      {{ data.day.split('-').slice(2).join('-') }}<br/>
                      <span v-for="(item,index) in orderList" :key="index" style="background: red;color: white;text-align: center;">
                        <span v-if="data.day == item.order_date">
                          {{ getModeId(item.mode_id) }}
                          <span v-if="item.schedual_type_name ==1">上午</span>
                          <span v-if="item.schedual_type_name ==2">下午</span>
                          <span v-if="item.schedual_type_name ==3">晚上</span>
                        </span>
                      </span>
                    </p>
              </template>
            
            </el-calendar>
          </div>
        </div>
      </div>
    </el-dialog>
  </div>
</template>

<script>
const moment = require('moment')
import axios from 'axios'
import NavIgation from './NavIgation'
import BasicInfor from './BasicInfor'
import DialysisPrescription from './DialysisPrescription'
import PastData from './pastData'
import AcceptsAssessment from './acceptsAssessment'
import AssessmentBefore from './assessmentBefore'
import StatOrder from './statOrder'
import DialysisComputer from './dialysisComputer'
import DoubleCheck from './doubleCheck'
import DialysisMonitoring from './dialysisMonitoring'
import DialysisOff from './dialysisOff'
import AssessmentAfter from './assessmentAfter'
import TreatmentOf from './treatmentOf'
import OperationStaff from './operationStaff'
import {
  getDialysisScheduleDetail,
  getLongAdviceTwo,
  getDialysisRecordInitData,
  getDialysisSchedules,
  getInitPrintData,
  getPatientDialysisRecordList
} from '@/api/dialysis_record'
import { getDataConfig } from '@/utils/data'
import { parseTime } from '@/utils'
import BreadCrumb from '@/xt_pages/components/bread-crumb'
import print from 'print-js'
import { uParseTime } from '@/utils/tools'
import Calendar from 'vue-calendar-component'
import data from '../../../store/modules/data'
export default {
  name: 'index',
  components: {
    NavIgation,
    BasicInfor,
    DialysisPrescription,
    PastData,
    AcceptsAssessment,
    AssessmentBefore,
    StatOrder,
    DialysisComputer,
    DoubleCheck,
    DialysisMonitoring,
    DialysisOff,
    AssessmentAfter,
    TreatmentOf,
    OperationStaff,
    BreadCrumb,
    Calendar,//日历
  },
  data() {
    return {
      crumbs: [
        { path: false, name: '透析管理' },
        { path: false, name: '透析记录' },
        { path: false, name: '透析单' }
      ],
      dialogFormVisible: false,
      orders: false,
      loading: false,
      cishu_dialogVisible:false,//
      patient_id: 0,
      date: 0,
      dialysis_date:0,

      longAdvices: [],
      waitUploadAdvices: [],
      is_open: 0,
      targetAdvices: [],

      patient: { id: 0 }, // 患者信息
      schedual: { id: 0 }, // 患者排班信息
      prescription: { id: 0 }, // 透析处方
      solution: { id: 0 }, // 透析方案
      system_prescribe: { id: 0 },
      receiver_treatment_access: { id: 0 }, // 接诊评估
      predialysis_evaluation: { id: 0 }, // 透前评估
      doctor_advices: [], // 临时医嘱
      double_check: { id: 0 }, // 双人核对
      assessment_after_dislysis: { id: 0 }, // 透后评估
      treatment_summary: { id: 0 }, // 治疗小结
      monitor_records: [], // 透析监测
      dialysis_order: { id: 0 }, // 透析记录
      admin_users: [], // 系统用户列表
      devices: [], // 设备
      device_numbers: [], // 床位号

      admin_user_map: {}, // {user_id: admin_user object}
      device_map: {}, // {device_id: device}
      device_number_map: {}, // {device_number_id: device_number}

      niprocart_info: [],
      jms_info: [],
      fistula_needle_set_info: [],
      fistula_needle_set_16_info: [],
      hemoperfusion_info: [],
      dialyser_sterilised_info: [],
      filtryzer_info: [],
      dialyzers_info: [],
      injector_info: [],
      bloodlines_info: [],
      tubingHemodialysis_info: [],
      safe_package_info: [],
      aliquid_info: [],
      config: {},

      his_is_open:0,
      is_advice_open:0,
      lastPredialysisEvaluation: { id: 0 },
      lastMonitorRecord: { id: 0 },
      lastAssessmentAfterDislysis: { id: 0 },
      lastDryWeightDislysis: { id: 0 },
      lastAssessment:{id:0},
      headNurses: [],
      lastDialysisPrescribe: { id: 0 },
      //
      activeName: 'first',
      selected_date: new Date(),
      // search_input 和 search_keyword，使输入关键字时不会经常刷新 filtedSchedules
      search_keyword: '', // 确定用于搜索的关键字
      search_input: '', // 输入中的关键字
      patient_state: [
        { value: 0, label: '全部患者' },
        { value: 1, label: '已签到' },
        { value: 2, label: '未签到' },
        { value: 3, label: '已上机' },
        { value: 4, label: '已下机' }
      ],
      patientStateVal: 0,
      treat_state: [
        { value: 0, label: '全部治疗' },
        { value: 1, label: '待开处方' },
        { value: 2, label: '待开小结' },
        { value: 3, label: '待医嘱核对' },
      ],
      treatStateVal: 0,
      schedule_options: [
        { value: 0, label: '全部班' },
        { value: 1, label: '上午' },
        { value: 2, label: '下午' },
        { value: 3, label: '晚上' }
      ],
      scheduleStateVal: 0,
      zone_options: [
        { id: 0, text: '全部分区' }
      ],
      zoneVal: 0,
      tableData: [],
      tableData1: [],
      arr: [],
      newName: '',
      newTime: '',
      scheudle_mode:"",

      showView:false,
      curPatient:{},

      queueConfig:{},
      stockType:[],
      preparestock:[],
      his_doctor_advices:[],
      startVisibility:false,
      endVisibility:false,
      centerDialogVisible:false,//新上机单弹窗
      printList:[],
      anticoagulants_confit:null,
      printDate:'',
      assessmentAfterDislysis:{},
      lastOrder:{},
      dryWeightList:[],
      docList:[],
      blood_access_part_opera: [],
      Dialysis_patient:'',
      Refresh:true,
      norefresh:true,
      historyclick:false,
      time_value:new Date(),
      
      start_time:moment().startOf('months').format('YYYY-MM-DD'),
      end_time:moment().endOf('months').format('YYYY-MM-DD'),
      orderList:[]
    }
  },
  created() {
    
   this.blood_access_part_opera = getDataConfig('hemodialysis', 'vascular_access_desc')
   this.org_id = this.$store.getters.xt_user.org.id,
   this.printDate = moment().format("YYYY-MM-DD HH:mm:ss")
    if(this.$route.query.showView){
      this.showView = this.$route.query.showView
    }
    if(sessionStorage.getItem("nameActive")){
      this.activeName = sessionStorage.getItem("nameActive")
    }
    var patient_id = this.$route.query.patient_id
    var date = this.$route.query.date
    this.patient_id = patient_id
    this.date = date
    this.dialysis_date=
    this.getScheduleDetail()
    this.getLongAdvice()

    this.selected_date = this.$route.query.date * 1000
    var schedule_type_selected = this.$store.getters.schedule_type_selected
    var zone_selected = this.$store.getters.zone_selected
    var patient_state_selected = this.$store.getters.patient_state_selected
    var treat_state_selected = this.$store.getters.treat_state_selected
    var selected_date = this.$store.getters.selected_date
    if (schedule_type_selected) {
      this.scheduleStateVal = schedule_type_selected.schedule_type_selected
    }
    if (zone_selected) {
      this.zoneVal = zone_selected.zone_selected
    }
    if (patient_state_selected) {
      this.patientStateVal = patient_state_selected.patient_state_selected
    }
    if (treat_state_selected) {
      this.treatStateVal = treat_state_selected.treat_state_selected
    }
    if (selected_date.selected_date) {
      this.selected_date = selected_date.selected_date
    }

    this.initData = {
      cmd: "queue/join",
      data: {type:3,page:0,size:0},
    };
    this.websocketSend(this.initData)
    this.getInitData()

    this.anticoagulants_confit = this.$store.getters.anticoagulants_confit
  },
  computed: {
    websocket() {
      return this.$store.state.user.websocket;
    },
    steps: function() {
      var steps = [
        { title: '透析处方', finish: false },
        { title: '接诊评估', finish: false },
        { title: '透前评估', finish: false },
        { title: '临时医嘱', finish: false },
        { title: '双人核对', finish: false },
        { title: '透析上机', finish: false },
        { title: '透析监测', finish: false },
        { title: '透析下机', finish: false },
        { title: '透后评估', finish: false },
        { title: '治疗小结', finish: false }
      ]

      steps[0].finish = this.prescription.id && this.prescription.creater > 0
      steps[1].finish = this.receiver_treatment_access.id > 0
      // steps[2].finish =this.predialysis_evaluation.id > 0 && this.predialysis_evaluation.creater > 0
      steps[2].finish =this.predialysis_evaluation.id > 0
      steps[3].finish = this.doctor_advices.length > 0
      steps[5].finish = this.dialysis_order.id > 0
      steps[7].finish =
        this.dialysis_order.id > 0 && this.dialysis_order.stage == 2

      steps[4].finish =
        this.double_check.id > 0 &&
        this.double_check.creater > 0 &&
        this.double_check.modifier > 0
      steps[6].finish = this.monitor_records.length > 0
      // steps[8].finish = this.assessment_after_dislysis.id > 0 && this.assessment_after_dislysis.creater > 0
      steps[8].finish = this.assessment_after_dislysis.id > 0
      steps[9].finish = this.treatment_summary.id > 0

      return steps
    },
    filtedSchedules: function() {
      var search_keyword = this.search_keyword
      if (search_keyword.length > 0) {
        var schedules = []
        for (let o_i = 0; o_i < this.zone_schedules.length; o_i++) {
          const scheduleInfo = this.zone_schedules[o_i]
          var originSchedules = scheduleInfo.schedules
          if (originSchedules.length == 0) {
            continue
          }
          var filtedSchedules = []
          for (let s_i = 0; s_i < originSchedules.length; s_i++) {
            const schedule = originSchedules[s_i]
            if ((schedule.patient.name.indexOf(search_keyword) != -1) || (schedule.patient.first_letter.indexOf(search_keyword) != -1)) {
              filtedSchedules.push(schedule)
              // break
            }
          }
          if (filtedSchedules.length > 0) {
            schedules.push({ zone_id: scheduleInfo.zone_id, zone_name: scheduleInfo.zone_name, schedules: filtedSchedules })
          }
        }
        return schedules
      }

      // var zone_selected = this.zoneVal
      // var timetype_selected = this.scheduleStateVal
      // if ((zone_selected == 0 && timetype_selected == 0) || this.zone_options.length <= 1) {
      //   var schedules = []
      //   for (let index = 0; index < this.zone_schedules.length; index++) {
      //     const scheduleInfo = this.zone_schedules[index]
      //     if (scheduleInfo.schedules.length != 0) {
      //       schedules.push(scheduleInfo)
      //     }
      //   }
      //   return schedules
      // }

      // var schedules = []
      // for (let o_i = 0; o_i < this.zone_schedules.length; o_i++) {
      //   const scheduleInfo = this.zone_schedules[o_i]
      //   if (zone_selected == scheduleInfo.zone_id && timetype_selected == 0) {
      //     if (scheduleInfo.schedules.length == 0) {
      //       return []
      //     } else {
      //       return [scheduleInfo]
      //     }
      //   }
      //   var originSchedules = scheduleInfo.schedules
      //   if (originSchedules.length == 0) {
      //     continue
      //   }
      //   var filtedSchedules = []
      //   for (let s_i = 0; s_i < originSchedules.length; s_i++) {
      //     const schedule = originSchedules[s_i]
      //     if (zone_selected != 0) {
      //       if (zone_selected == schedule.device_number.zone.id) {
      //         if (timetype_selected == 0 || schedule.schedule_type == timetype_selected) {
      //           filtedSchedules.push(schedule)
      //         }
      //       }
      //     } else {
      //       if (timetype_selected == 0 || schedule.schedule_type == timetype_selected) {
      //         filtedSchedules.push(schedule)
      //       }
      //     }
      //   }
      //   if (filtedSchedules.length > 0) {
      //     schedules.push({ zone_id: scheduleInfo.zone_id, zone_name: scheduleInfo.zone_name, schedules: filtedSchedules })
      //   }
      // }

      // return schedules
    }
  },
  beforeMount() {
    if (this.websocket) {
      if (this.websocket.readyState == 1) {
        console.log('执行1')
        this.websocketMess();
      } else {
        setTimeout(() => {
          console.log('执行2')
          this.websocketMess();
        }, 1000);
      }
    } else {
      setTimeout(() => {
        if (this.websocket) {
          console.log('执行3')
          this.websocketMess();
        } else {
          setTimeout(() => {
            console.log('执行4')
            this.websocketMess();
          }, 1000);
        }
      }, 1000);
    }
  },
  mounted() {
    const timer = setInterval(() => {
      // this.getInitData();
      this.requestDialysisSchedules()
    }, 1000 * 30)
    // 通过$once来监听定时器，在beforeDestroy钩子可以被清除。
    this.$once('hook:beforeDestroy', () => {
      clearInterval(timer)
    })

    let obj = {
      cmd: "queue/join",
      data: {type:3,page:0,size:0},
    };
    this.websocketSend(obj)
    // this.getmonth(this.time_value)
    // this.handlePick(this.time_value)
  },
 
  beforeDestroy(){

    let unObj = {
      cmd: "queue/unjoin",
      data: {type:3},
    };
    this.websocketSend(unObj)
  },
  methods: {
    // 透析次数
    chishuclick(row){
      this.cishu_dialogVisible=true
      console.log('ddddddd',row);
      this.Dialysis_patient=row
    },
     getNewAge(UUserCard) {
      if (UUserCard != null && UUserCard != '') {
        // 获取年龄
        var myDate = new Date()
        var month = myDate.getMonth() + 1
        var day = myDate.getDate()
        var age = myDate.getFullYear() - UUserCard.substring(6, 10) - 1
        if (UUserCard.substring(10, 12) < month || UUserCard.substring(10, 12) == month && UUserCard.substring(12, 14) <= day) {
          age++
        }
        return age
      }
    },
    adviceFunc() {
      this.getScheduleDetail()
    },
    getLongAdvice() {
      const params = {
        patient_id: this.patient_id,
        schedule_date:this.$route.query.date,

      }
      getLongAdviceTwo(params).then(rs => {
        var resp = rs.data
        if (resp.state == 1) {
          console.log('vbnvnffvvvv',resp);
          var status = parseInt(resp.data.status)
          switch (status) {
            case 2:
              var totalAdvice = resp.data.advices
              var longAdvicesTwo = resp.data.advices_two
              var waitUploadAdvices = []
              for (let i = 0; i < totalAdvice.length; i++) {
                totalAdvice[i]['isCheck'] = 1
              }

              for (let i = 0; i < totalAdvice.length; i++) {
                for (let a = 0; a < longAdvicesTwo.length; a++) {
                  if (
                    totalAdvice[i].template_id ==
                      longAdvicesTwo[a].template_id &&
                    totalAdvice[i].frequency_type ==
                      longAdvicesTwo[a].frequency_type
                  ) {
                    totalAdvice[i]['isCheck'] = 0
                  }
                }
              }

              for (let i = 0; i < totalAdvice.length; i++) {
                if (totalAdvice[i].isCheck == 1) {
                  waitUploadAdvices.push(totalAdvice[i])
                }
              }

              this.is_open = resp.data.is_open_remind
              if(this.his_is_open == 1){
                this.is_open = 0
              }
              if(this.is_advice_open == 1){
                this.is_open = 1
              }
              this.longAdvices = totalAdvice
              console.log("长期医嘱汇总 u 公告让你😯23232322332",this.longAdvices)
              this.waitUploadAdvices = waitUploadAdvices
              break
          }
        } else {
          this.$message.error(resp.msg)
        }
      })
    },
    assessmentAfterDislysisFunc: function(val) {
      for (var index in val) {
        this.$set(this.assessment_after_dislysis, index, val[index])
      }
    },
    didDelMonitor(record_id) {
      var mrl = this.monitor_records.length
      for (let index = 0; index < mrl; index++) {
        if (this.monitor_records[index].id == record_id) {
          this.monitor_records.splice(index, 1)
          break
        }
      }
    },
    getScheduleDetail: function() {
      this.loading = true
      var dateStr = parseTime(this.date, '{y}-{m}-{d}')
      if(this.$route.query.showView == true){
        this.loading = false
        return
      }
      // console.log('kkkkkkk',dateStr);
      this.doctor_advices = []
      getDialysisScheduleDetail(this.patient_id, dateStr).then(rs => {

        var resp = rs.data
        if (resp.state == 1) {
          var patient = resp.data.patient // 患者信息
          var schedual = resp.data.schedual // 患者排班信息
          console.log("排班22222222222",resp)
          var prescription = resp.data.prescription // 透析处方

          if (prescription != null) {
            if (prescription.body_fluid == -2) {
              prescription.body_fluid = 0
            }
            if(prescription.bilirubin_adsorption_column == 0){
               prescription.bilirubin_adsorption_column  = ""
            }

             if(prescription.plasma_separator == 0){
               prescription.plasma_separator  = ""
            }
          }

          var solution = resp.data.solution // 透析方案

          var receiver_treatment_access = resp.data.receiver_treatment_access // 接诊评估

          var predialysis_evaluation = resp.data.predialysis_evaluation // 透前评估

          if (predialysis_evaluation != null) {
            if (predialysis_evaluation.blood_access_part_id == -2) {
              predialysis_evaluation.blood_access_part_id = 0
            }
            if(predialysis_evaluation.blood_pressure_during_dialysis == 0){
              predialysis_evaluation.blood_pressure_during_dialysis = ""
            }
          }
          var doctor_advices = resp.data.doctor_advices // 临时医嘱

          var double_check = resp.data.double_check // 双人核对
          var assessment_after_dislysis = resp.data.assessment_after_dislysis // 透后评估

          var treatment_summary = resp.data.treatment_summary // 治疗小结
          var monitor_records = resp.data.monitor_records // 透析监测
          var dialysis_order = resp.data.dialysis_order // 透析记录

          var niprocart_info = resp.data.niprocart_info
          var jms_info = resp.data.jms_info
          var fistula_needle_set_info = resp.data.fistula_needle_set_info
          var fistula_needle_set_16_info = resp.data.fistula_needle_set_16_info
          var hemoperfusion_info = resp.data.hemoperfusion_info
          var dialyser_sterilised_info = resp.data.dialyser_sterilised_info
          var filtryzer_info = resp.data.filtryzer_info
          var dialyzers_info = resp.data.dialyzers_info
          var injector_info = resp.data.injector_info
          var bloodlines_info = resp.data.bloodlines_info
          var tubingHemodialysis_info = resp.data.tubingHemodialysis_info
          var safe_package_info = resp.data.safe_package_info
          var aliquid_info = resp.data.aliquid_info

          var lastPredialysisEvaluation = resp.data.lastPredialysisEvaluation

          if (lastPredialysisEvaluation != null) {
            if (lastPredialysisEvaluation.blood_access_part_id == -2) {
              lastPredialysisEvaluation.blood_access_part_id = 0
            }
          }
          var lastMonitorRecord = resp.data.lastMonitorRecord
          var lastAssessmentAfterDislysis = resp.data.lastAssessmentAfterDislysis
          // if(lastAssessmentAfterDislysis.hypertenison!=""){
          //   lastAssessmentAfterDislysis.hypertenison = lastAssessmentAfterDislysis.hypertenison.toString()
          // }
          //  if(lastAssessmentAfterDislysis.hypopiesia!=""){
          //   lastAssessmentAfterDislysis.hypopiesia = lastAssessmentAfterDislysis.hypopiesia.toString()
          // }
          var lastDialysisPrescribe = resp.data.lastDialysisPrescribe
          var lastDryWeightDislysis = resp.data.lastDryWeightDislysis

          var system_prescribe = resp.data.system_prescribe

          var lastAssessment =  resp.data.lastAssessment

          var lastOrder = resp.data.lastOrder
          this.lastOrder = lastOrder
          this.$refs.nav.setLastRecord(
            lastPredialysisEvaluation,
            lastMonitorRecord,
            lastAssessmentAfterDislysis,
            lastDialysisPrescribe,
            lastDryWeightDislysis,
            schedual,
            system_prescribe,
            lastAssessment,
          )

          var headNurses = resp.data.headNurse

          var config = resp.data.config
          this.lastPredialysisEvaluation = lastPredialysisEvaluation
          this.lastMonitorRecord = lastMonitorRecord
          this.lastAssessmentAfterDislysis = lastAssessmentAfterDislysis
          this.lastDialysisPrescribe = lastDialysisPrescribe
          this.lastDryWeightDislysis = lastDryWeightDislysis
          this.lastAssessment = lastAssessment
          this.headNurses = headNurses
          this.system_prescribe = system_prescribe



          this.niprocart_info = []
          this.jms_info = []
          this.fistula_needle_set_info = []
          this.fistula_needle_set_16_info = []
          this.hemoperfusion_info = []
          this.dialyser_sterilised_info = []

          this.filtryzer_info = []
          this.dialyzers_info = []
          this.injector_info = []

          this.bloodlines_info = []
          this.tubingHemodialysis_info = []
          this.safe_package_info = []
          this.aliquid_info = []

          this.niprocart_info = niprocart_info
          this.jms_info = jms_info
          this.fistula_needle_set_info = fistula_needle_set_info
          this.fistula_needle_set_16_info = fistula_needle_set_16_info
          this.hemoperfusion_info = hemoperfusion_info
          this.dialyser_sterilised_info = dialyser_sterilised_info
          this.filtryzer_info = filtryzer_info
          this.dialyzers_info = dialyzers_info
          this.injector_info = injector_info
          this.bloodlines_info = bloodlines_info
          this.tubingHemodialysis_info = tubingHemodialysis_info
          this.safe_package_info = safe_package_info
          this.aliquid_info = aliquid_info
          this.config = config
            // console.log('sdfdasfda4444444',this.patient);
          this.patient = patient
          console.log('bbbbbbbcccccccccc',this.patient);
          this.schedual = schedual == null ? { id: 0 } : schedual
          this.prescription = prescription == null ? { id: 0 } : prescription
          this.solution = solution == null ? { id: 0 } : solution
          this.receiver_treatment_access =
            receiver_treatment_access == null
              ? { id: 0 }
              : receiver_treatment_access
          this.predialysis_evaluation =
            predialysis_evaluation == null ? { id: 0 } : predialysis_evaluation
          this.doctor_advices = doctor_advices == null ? [] : doctor_advices
          this.double_check = double_check == null ? { id: 0 } : double_check
          this.assessment_after_dislysis =
            assessment_after_dislysis == null
              ? { id: 0 }
              : assessment_after_dislysis
          this.treatment_summary =
            treatment_summary == null ? { id: 0 } : treatment_summary
          this.monitor_records = monitor_records == null ? [] : monitor_records
          this.dialysis_order =
            dialysis_order == null ? { id: 0 } : dialysis_order



          this.admin_users = resp.data.doctors
          this.devices = resp.data.devices
          this.device_numbers = resp.data.device_numbers

          var his_doctor_advices = resp.data.his_advices

          this.his_doctor_advices = his_doctor_advices
          this.his_is_open = resp.data.is_open_config.is_open

          this.is_advice_open = resp.data.is_advice_open.is_advice_open

          var stockType =  resp.data.stockType
          this.stockType = stockType

          this.dryWeightList = resp.data.dryWeightList
          this.docList = resp.data.docList
          console.log("doclist-----",this.docList)
          var prepare = resp.data.prepare
          if(prepare!=null){
            this.preparestock = prepare
          }else{
            this.preparestock = []
          }

          for (let i = 0; i <  this.doctor_advices.length; i++){
            this.doctor_advices[i]['origin'] = 1
          }

          if (his_doctor_advices != null) {
            for (let i = 0; i < his_doctor_advices.length; i++) {
              his_doctor_advices[i]['origin'] = 2
              his_doctor_advices[i]['way'] = 1
              this.doctor_advices.push(his_doctor_advices[i])
            }
          }

          const obj = {}
          this.doctor_advices = this.doctor_advices.reduce((cur, next) => {
            obj[next.id] ? '' : obj[next.id] = true && cur.push(next)
            return cur
          }, []) // 设置cur默认类型为数组，并且初始值为空的数组

          var device_map = {}
          for (let index = 0; index < this.devices.length; index++) {
            const device = this.devices[index]
            device_map[device.id] = device
          }
          this.device_map = device_map

          var admin_map = {}
          for (let index = 0; index < this.admin_users.length; index++) {
            const admin = this.admin_users[index]
            admin_map[admin.id] = admin
          }
          this.admin_user_map = admin_map

          var device_number_map = {}
          for (let index = 0; index < this.device_numbers.length; index++) {
            const device_number = this.device_numbers[index]
            device_number_map[device_number.id] = device_number
          }
          this.device_number_map = device_number_map
        } else {
          this.$message.error(resp.msg)
        }

       // 目标超滤量是否默认上次数据
        if (this.lastDialysisPrescribe != null) {
          delete this.lastDialysisPrescribe.target_ultrafiltration
        }
        if (this.solution != null) {
          delete this.solution.target_ultrafiltration
        }
        if(this.predialysis_evaluation.id > 0){
          this.newTime = parseTime(this.predialysis_evaluation.created_time, '{h}:{i}')
          this.dialysis_date = parseTime(this.predialysis_evaluation.created_time, '{y}-{m}-{d}')
          console.log('qqqqqqqqq',this.dialysis_date);
          // this.dialysis_date=this.predialysis_evaluation.created_time
        }

        this.loading = false
      })
    },
    printOrder() {
      var xtdate = parseTime(this.date, '{y}-{m}-{d}')
      this.$router.push(
        '/dialysis/print?xtdate=' + xtdate + '&xtno=' + this.patient.dialysis_no +"&patient_id="+this.patient.id
      )
    },
    printOrderOne(){

      this.getInitPrintData()

    },
    // 日期
    handleScheduleDateChange: function(index) {
      this.treatStateVal = 0
      this.patientStateVal = 0
      this.zoneVal = 0
      this.scheduleStateVal = 0
      this.search_keyword = this.search_input = ''
      // this.$store.dispatch("SaveDialysisAreaSelectIndexs", {
      //   zone: this.zone_selected,
      //   schedule_type: this.schedule_type_selected,
      //   schedule_date: this.selected_date,
      // })
      this.selected_date = index
      this.$store.dispatch('SetSelectedDate', { selected_date: index })
      this.requestDialysisSchedules()
    },
    // 初始化数据
    getInitData: function() {
      getDialysisRecordInitData().then(rs => {
        var resp = rs.data
        if (resp.state == 1) {
          var zones = resp.data.zones
          var schedules = resp.data.schedules
          var zone_options = [{ id: 0, text: '全部分区' }]
          for (let z_i = 0; z_i < zones.length; z_i++) {
            const zone = zones[z_i]
            zone_options.push({ id: zone.id, text: zone.name })
          }
          this.zone_options = zone_options
          this.arr = this.processedDialysisSchedules(schedules, this.zone_options)
          this.requestDialysisSchedules()
        } else {
          this.$message.error(resp.msg)
        }
      })
    },
    // 班次
    handletimeType: function(index) {
      this.scheduleStateVal = index
      this.$store.dispatch('SetScheduleTypeSelected', { schedule_type_selected: index })
      this.search_keyword = this.search_input = ''
      this.getData()
    },
    // 分区
    handleZoneChange: function(index) {
      this.zoneVal = index
      this.$store.dispatch('SetZoneSelected', { zone_selected: index })
      this.search_keyword = this.search_input = ''
      this.getData()
    },
    // 患者状态
    handleStateChange: function(index) {
      this.patientStateVal = index
      this.$store.dispatch('SetPatientStateSelected', { patient_state_selected: index })
      this.search_keyword = this.search_input = ''
      this.getData()
    },
    handleTreatChange: function(index) {
      this.treatStateVal = index
      this.$store.dispatch('SetTreatStateSelected', { treat_state_selected: index })
      this.search_keyword = this.search_input = ''
      this.getData()
    },
    processedDialysisSchedules: function(schedules, zone_options) {
      var zoneMap = {}
      var scheduleMap = {}
      for (let z_i = 0; z_i < zone_options.length; z_i++) {
        const zone = zone_options[z_i]
        if (zone.id == 0) {
          continue
        }
        scheduleMap[zone.id] = []
      }
      for (let index = 0; index < schedules.length; index++) {
        const schedule = schedules[index]
        scheduleMap[schedule.device_number.zone.id].push(schedule)
      }
      var zone_schedules = []
      for (let index = 0; index < zone_options.length; index++) {
        const zone = zone_options[index]
        if (zone.id == 0) {
          continue
        }
        var schedules = scheduleMap[zone.id]
        zone_schedules.push({ zone_id: zone.id, zone_name: zone.text, schedules: schedules })
      }
      return zone_schedules
    },
    searchAction: function() {
      this.search_keyword = this.search_input
      this.scheduleStateVal = 0
      this.zoneVal = 0
      this.treatStateVal = 0
      this.patientStateVal = 0
      if (this.search_input != '') {
        const arr = []
        this.filtedSchedules.map(item => {
          arr.push(...item.schedules)
        })
        if (this.activeName == 'first') {
          this.tableData = arr
        } else if (this.activeName == 'second') {
          this.tableData1 = arr
        }
      } else {
        this.getData()
      }
    },
    requestDialysisSchedules: function() {
     
      var ymd = parseTime(this.selected_date, '{y}-{m}-{d}')
      getDialysisSchedules(ymd).then(rs => {
        var resp = rs.data
        if (resp.state == 1) {
          var schedules = resp.data.schedules
          // if(this.prescription!=null){
          //   for(let i=0;i<schedules.length;i++){
          //     if(this.prescription.patient_id == schedules[i].patient_id){
          //       this.prescription = schedules[i].prescription
          //     }
          //   }
          // }


          this.zone_schedules = this.processedDialysisSchedules(schedules, this.zone_options)
          const patientArr = JSON.parse(JSON.stringify(this.zone_schedules))
          if (this.activeName == 'first') {
            for (let i = 0; i < patientArr.length; i++) {
              for (let j = 0; j < patientArr[i].schedules.length; j++) {
                if (patientArr[i].schedules.length > 0 && patientArr[i].schedules[j].dialysis_order != null) {
                  // 删除元素后改变i的值
                  patientArr[i].schedules.splice(j--, 1)
                }
              }
            }
          } else if (this.activeName == 'second') {
            for (let i = 0; i < patientArr.length; i++) {
              for (let j = 0; j < patientArr[i].schedules.length; j++) {
                if (patientArr[i].schedules.length > 0 && patientArr[i].schedules[j].dialysis_order == null) {
                  // 删除元素后改变i的值
                  patientArr[i].schedules.splice(j--, 1)
                }
              }
            }
          }
          const newArr = []
          patientArr.map(item => {
            newArr.push(...item.schedules)
          })

          // console.log("newArrwowowowowoowwowo",newArr)
          this.tableData = newArr
          this.getData()

        } else {
          this.$message.error(resp.msg)
        }
      })
    },
    changePatient(schedual) {
        this.patient_id = schedual.patient_id
        this.date = schedual.schedule_date
         this.getScheduleDetail();
        console.log('schedual',schedual);
        //this.getLongAdvice();

        var patient_id = schedual.patient_id
        var date = schedual.schedule_date
        this.$router.push({
          path: '/dialysis/details',
          query: {
            patient_id: patient_id,
            date: date,
            patient_name: schedual.patient.name,
            mode_id:schedual.mode_id
          }
        })
    },
    handleClick(type) {
      sessionStorage.setItem('nameActive', type.name);
      this.getData()
    },
    getData() {
      let patientArr = []
      patientArr = JSON.parse(JSON.stringify(this.zone_schedules))

      if (this.activeName == 'first') {
        for (let i = 0; i < patientArr.length; i++) {
          for (let j = 0; j < patientArr[i].schedules.length; j++) {
            if (patientArr[i].schedules.length > 0 && patientArr[i].schedules[j].dialysis_order != null) {
              // 删除元素后改变i的值

              // console.log('候诊区', patientArr[i].schedules[j])
              patientArr[i].schedules.splice(j--, 1)
            }
          }
        }
        let arr1 = []
        if (this.patientStateVal == 0) {
          arr1 = patientArr
        } else if (this.patientStateVal == 1) {
          let arr = []
          arr = patientArr
          for (let i = 0; i < arr.length; i++) {
            for (let j = 0; j < arr[i].schedules.length; j++) {
              if (arr[i].schedules.length > 0 && (arr[i].schedules[j].assessment_before_dislysis == null || (arr[i].schedules[j].assessment_before_dislysis.weight_before == '' && arr[i].schedules[j].assessment_before_dislysis.diastolic_blood_pressure == '' && arr[i].schedules[j].assessment_before_dislysis.systolic_blood_pressure == ''))) {
                // 删除元素后改变i的值
                arr[i].schedules.splice(j--, 1)
              }
            }
          }
          // console.log('执行1', arr)
          arr1 = arr
        } else if (this.patientStateVal == 2) {
          let arr = []
          arr = patientArr
          for (let i = 0; i < arr.length; i++) {
            for (let j = 0; j < arr[i].schedules.length; j++) {
              if (arr[i].schedules.length > 0 && (arr[i].schedules[j].assessment_before_dislysis != null && (arr[i].schedules[j].assessment_before_dislysis.weight_before != 0 || arr[i].schedules[j].assessment_before_dislysis.diastolic_blood_pressure != 0 || arr[i].schedules[j].assessment_before_dislysis.systolic_blood_pressure != 0))) {
                // 删除元素后改变i的值
                arr[i].schedules.splice(j--, 1)
              }
            }
          }
          // console.log('执行2', arr)
          arr1 = arr
        }

        let arr2 = []
        if (this.treatStateVal == 0) {
          arr2 = JSON.parse(JSON.stringify(arr1))
        } else if (this.treatStateVal == 1) {
          let arr = []
          arr = JSON.parse(JSON.stringify(arr1))
          for (let i = 0; i < arr.length; i++) {
            for (let j = 0; j < arr[i].schedules.length; j++) {
              if (arr[i].schedules.length > 0 && (arr[i].schedules[j].prescription != null || arr[i].schedules[j].prescription != null ? arr[i].schedules[j].prescription.creater != 0 : false)) {
                // 删除元素后改变i的值
                arr[i].schedules.splice(j--, 1)
              }
            }
          }
          arr2 = arr
        } else if(this.treatStateVal == 3){
          let arr = []
          arr = JSON.parse(JSON.stringify(arr1))
          for (let i = 0; i < arr.length; i++) {
            for (let j = 0; j < arr[i].schedules.length; j++) {
              if(arr[i].schedules[j].doctor_advice.length == 0){
                arr[i].schedules.splice(j--, 1)
              }
              if(arr[i].schedules && arr[i].schedules[j] && arr[i].schedules[j].doctor_advice){
                let sign = 0
                arr[i].schedules[j].doctor_advice.map(item => {
                  if(item.check_state == 1){
                    sign++
                  }
                })
                if(sign == arr[i].schedules[j].doctor_advice.length && arr[i].schedules[j].doctor_advice.length > 0){
                  arr[i].schedules.splice(j--, 1)
                }
              }
            }
          }
          arr2 = arr
        }

        let arr3 = []
        if (this.scheduleStateVal == 0) {
          arr3 = JSON.parse(JSON.stringify(arr2))
        } else {
          let arr = []
          arr = JSON.parse(JSON.stringify(arr2))
          for (let i = 0; i < arr.length; i++) {
            for (let j = 0; j < arr[i].schedules.length; j++) {
              if (this.scheduleStateVal != arr[i].schedules[j].schedule_type) {
                // 删除元素后改变i的值
                arr[i].schedules.splice(j--, 1)
              }
            }
          }
          arr3 = arr
        }

        let arr4 = []
        if (this.zoneVal == 0) {
          arr4 = JSON.parse(JSON.stringify(arr3))
        } else {
          let arr = []
          arr = JSON.parse(JSON.stringify(arr3))
          for (let i = 0; i < arr.length; i++) {
            if (this.zoneVal != arr[i].zone_id) {
              // 删除元素后改变i的值
              arr.splice(i--, 1)
            }
          }
          arr4 = arr
        }
        const newArr = []
        arr4.map(item => {
          newArr.push(...item.schedules)
        })
        if(this.patientStateVal == 1){
          newArr.map(item => {
            item.created_time = item.assessment_before_dislysis.created_time
          })
          newArr.sort(this.compare('created_time'))
        }

        if(this.org_id ==10579 || this.org_id == 0 || this.org_id ==10587 || this.org_id ==10571){
          if(newArr!=null && newArr.length>0){
            for(let i=0;i<newArr.length;i++){
              newArr[i].sort =0
              newArr[i].sort =newArr[i].device_number.sort
            }
          }

          newArr.sort(function(a, b) {
           return a.sort - b.sort;
          });
        }


        // console.log('排序',newArr)
        this.tableData = newArr
        const name = this.$route.query.patient_name
        this.tableData.map((item, index) => {
          if (name == item.patient.name) {
            // if (item.assessment_before_dislysis != null) {
            //   this.newTime = parseTime(item.assessment_before_dislysis.created_time, '{h}:{i}')
            // }

            setTimeout(() => {
              this.$refs.tab.setCurrentRow(this.tableData[index])
            }, 10)
          }
        })
      } else if (this.activeName == 'second') {
        for (let i = 0; i < patientArr.length; i++) {
          for (let j = 0; j < patientArr[i].schedules.length; j++) {
            if (patientArr[i].schedules.length > 0 && patientArr[i].schedules[j].dialysis_order == null) {
              // 删除元素后改变i的值

              patientArr[i].schedules.splice(j--, 1)
            }
          }
        }
        let arr1 = []

        // let patientArr =
        if (this.patientStateVal == 0) {
          arr1 = patientArr
        } else if (this.patientStateVal == 1) {
          let arr = []
          arr = patientArr
          for (let i = 0; i < arr.length; i++) {
            for (let j = 0; j < arr[i].schedules.length; j++) {
              if (arr[i].schedules.length > 0 && (arr[i].schedules[j].assessment_before_dislysis == null || (arr[i].schedules[j].assessment_before_dislysis.weight_before == '' && arr[i].schedules[j].assessment_before_dislysis.diastolic_blood_pressure == '' && arr[i].schedules[j].assessment_before_dislysis.systolic_blood_pressure == ''))) {
                // 删除元素后改变i的值
                arr[i].schedules.splice(j--, 1)
              }
            }
          }

          arr1 = arr
        } else if (this.patientStateVal == 2) {
          let arr = []
          arr = patientArr
          for (let i = 0; i < arr.length; i++) {
            for (let j = 0; j < arr[i].schedules.length; j++) {
              if (arr[i].schedules.length > 0 && (arr[i].schedules[j].assessment_before_dislysis != null && (arr[i].schedules[j].assessment_before_dislysis.weight_before != 0 || arr[i].schedules[j].assessment_before_dislysis.diastolic_blood_pressure != 0 || arr[i].schedules[j].assessment_before_dislysis.systolic_blood_pressure != 0))) {
                // 删除元素后改变i的值
                arr[i].schedules.splice(j--, 1)
              }
            }
          }

          arr1 = arr
        } else if (this.patientStateVal == 3) {
          let arr = []
          arr = patientArr
          for (let i = 0; i < arr.length; i++) {
            for (let j = 0; j < arr[i].schedules.length; j++) {
              if (arr[i].schedules.length > 0 && (arr[i].schedules[j].dialysis_order != null && arr[i].schedules[j].dialysis_order.stage != 1)) {
                // 删除元素后改变i的值
                arr[i].schedules.splice(j--, 1)
              }
            }
          }

          arr1 = arr
        } else if (this.patientStateVal == 4) {
          let arr = []
          arr = patientArr
          for (let i = 0; i < arr.length; i++) {
            for (let j = 0; j < arr[i].schedules.length; j++) {
              if (arr[i].schedules.length > 0 && (arr[i].schedules[j].dialysis_order != null && arr[i].schedules[j].dialysis_order.stage != 2)) {
                // 删除元素后改变i的值
                arr[i].schedules.splice(j--, 1)
              }
            }
          }

          arr1 = arr
        }

        let arr2 = []
        if (this.treatStateVal == 0) {
          arr2 = JSON.parse(JSON.stringify(arr1))
        } else if (this.treatStateVal == 2) {
          let arr = []
          arr = JSON.parse(JSON.stringify(arr1))
          for (let i = 0; i < arr.length; i++) {
            for (let j = 0; j < arr[i].schedules.length; j++) {
              if (arr[i].schedules.length > 0 && arr[i].schedules[j].treatment_summary != null && arr[i].schedules[j].treatment_summary.dialysis_summary != '') {
                // 删除元素后改变i的值
                arr[i].schedules.splice(j--, 1)
              }
            }
          }
          arr2 = arr
        } else if(this.treatStateVal == 3){
          let arr = []
          arr = JSON.parse(JSON.stringify(arr1))
          for (let i = 0; i < arr.length; i++) {
            for (let j = 0; j < arr[i].schedules.length; j++) {

              if(arr[i].schedules[j].doctor_advice.length == 0){
                arr[i].schedules.splice(j--, 1)
              }
              if(arr[i].schedules && arr[i].schedules[j] && arr[i].schedules[j].doctor_advice){
                let sign = 0
                arr[i].schedules[j].doctor_advice.map(item => {
                  if(item.check_state == 1){
                    sign++
                  }
                })
                if(sign == arr[i].schedules[j].doctor_advice.length && arr[i].schedules[j].doctor_advice.length > 0){
                  arr[i].schedules.splice(j--, 1)
                }
              }
            }
          }
          arr2 = arr
        }

        let arr3 = []
        if (this.scheduleStateVal == 0) {
          arr3 = JSON.parse(JSON.stringify(arr2))
        } else {
          let arr = []
          arr = JSON.parse(JSON.stringify(arr2))
          for (let i = 0; i < arr.length; i++) {
            for (let j = 0; j < arr[i].schedules.length; j++) {
              if (this.scheduleStateVal != arr[i].schedules[j].schedule_type) {
                // 删除元素后改变i的值
                arr[i].schedules.splice(j--, 1)
              }
            }
          }
          arr3 = arr
        }

        let arr4 = []
        if (this.zoneVal == 0) {
          arr4 = JSON.parse(JSON.stringify(arr3))
        } else {
          let arr = []
          arr = JSON.parse(JSON.stringify(arr3))
          for (let i = 0; i < arr.length; i++) {
            if (this.zoneVal != arr[i].zone_id) {
              // 删除元素后改变i的值
              arr.splice(i--, 1)
            }
          }
          arr4 = arr
        }
        const newArr = []
        arr4.map(item => {
          newArr.push(...item.schedules)
        })
        if(this.patientStateVal == 1){
          newArr.map(item => {
            item.created_time = item.assessment_before_dislysis.created_time
          })
          newArr.sort(this.compare('created_time'))
        }

        if(this.org_id == 0 || this.org_id == 10579 || this.org_id ==10587){
          if(newArr!=null && newArr.length>0){
            for(let i=0;i<newArr.length;i++){
              newArr[i].sort =0
              newArr[i].sort =newArr[i].device_number.sort
            }
          }

          newArr.sort(function(a, b) {
           return a.sort - b.sort;
          });
        }

        this.tableData1 = newArr
        const name = this.$route.query.patient_name
        this.tableData1.map((item, index) => {
          if (name == item.patient.name) {
            // if (item.assessment_before_dislysis != null) {
            //   this.newTime = parseTime(item.assessment_before_dislysis.created_time, '{h}:{i}')
            // }

            setTimeout(() => {
              this.$refs.tab1.setCurrentRow(this.tableData1[index])
            }, 10)
          }
        })
      }
    },
    compare(property){
      return function(a,b){
        var value1 = a[property];
        var value2 = b[property];
        return value2 - value1;
      }
    },
    getTime(date){
      date = new Date(date * 1000)
      var Y = date.getFullYear() + '-';
      var M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1);
      var D = (date.getDate() < 10 ? '0'+date.getDate() : date.getDate());
      var h = (date.getHours() < 10 ? '0'+date.getHours() : date.getHours());
      var m = (date.getMinutes() < 10 ? '0'+date.getMinutes() : date.getMinutes());
      var s = (date.getSeconds() < 10 ? '0'+date.getSeconds() : date.getSeconds());

      let strDate = h  + ':' + m;
      return strDate;
    },
    getTimes(time) {
      return uParseTime(time, '{y}-{m}-{d}')
    },
    refresh(){
      this.requestDialysisSchedules()
    },
    websocketSend(data) {
      try {
        this.websocket.send(JSON.stringify(data))

      } catch (error) {
        this.showError = true;
        this.showIndex = 4;
        this.errorInfo = "网络异常，请稍后退出重试！";
      }
    },
    websocketMess() {

      this.websocket.onmessage = e => {
        let res = JSON.parse(e.data);
        // let res = re.data;
        // console.log('res3333333333',res)
        if(res.channel == 'queue/join'){
          let timeType = null
          if(this.scheduleStateVal == 1){
            timeType = 1
          }else if(this.scheduleStateVal == 2){
            timeType = 2
          }else{
            if(new Date().getHours() < 10){
              timeType = 1
            }else if(new Date().getHours() >= 10){
              timeType = 2
            }
          }
          let fisrtQueueInfo = []
          this.newFisrtQueueInfo = res.data.fisrtQueueInfo
          this.queueConfig = res.data.queueConfig
          if(res.data.fisrtQueueInfo != null){
              if(timeType == 1){
                  fisrtQueueInfo = res.data.fisrtQueueInfo.morning
                  if(fisrtQueueInfo.create_time){
                      fisrtQueueInfo.create_time = moment(parseInt(fisrtQueueInfo.create_time) * 1000).format('HH:mm')
                  }
              }else if(timeType == 2){
                  fisrtQueueInfo = res.data.fisrtQueueInfo.afternoon
                  if(fisrtQueueInfo.create_time){
                      fisrtQueueInfo.create_time = moment(parseInt(fisrtQueueInfo.create_time) * 1000).format('HH:mm')
                  }
              }
          }
          this.fisrtQueueInfo = fisrtQueueInfo

          // this.fisrtQueueInfo = res.data.fisrtQueueInfo
          let arr = res.data.patientQueueList.data
          let waitingCalledArr = []
          let calledArr = []
          arr.map(item => {
              if(item.status == 1){
                  // item.create_time = moment(item.create_time * 1000).format('HH:mm:ss')
                  waitingCalledArr.push(item)
              }else if(item.status == 2){
                  // item.create_time = moment(item.create_time * 1000).format('HH:mm:ss')
                  calledArr.push(item)
              }
          })

          this.waitingCalled = waitingCalledArr
          this.called = calledArr
        }else if(res.channel == 'allQueueList'){
          let arr = res.data.queue_list.data
          let waitingCalledArr = []
          let calledArr = []
          arr.map(item => {
              if(item.status == 1){
                // item.create_time = moment(item.create_time * 1000).format('HH:mm:ss')
                waitingCalledArr.push(item)
              }else if(item.status == 2){
                // item.create_time = moment(item.create_time * 1000).format('HH:mm:ss')
                calledArr.push(item)
              }
          })
          this.waitingCalled = waitingCalledArr
          this.called = calledArr
        }else if(res.channel == 'patientCallInfo'){
          res.data.patientInfo.create_time = moment(res.data.patientInfo.create_time * 1000).format('HH:mm')
          this.fisrtQueueInfo = res.data.patientInfo
        }else if(res.channel == 'fisrtQueueInfo'){
          if(this.scheduleStateVal == 1){
            timeType = 1
          }else if(this.scheduleStateVal == 2){
            timeType = 2
          }else{
            if(new Date().getHours() < 10){
              timeType = 1
            }else if(new Date().getHours() >= 10){
              timeType = 2
            }
          }
          let fisrtQueueInfo = []
          this.newFisrtQueueInfo = res.data.patientInfo
          if(res.data.patientInfo != null){
              if(timeType == 1){
                  fisrtQueueInfo = res.data.patientInfo.morning
                  if(fisrtQueueInfo.create_time){
                      fisrtQueueInfo.create_time = moment(parseInt(fisrtQueueInfo.create_time) * 1000).format('HH:mm')
                  }
              }else if(timeType == 2){
                  fisrtQueueInfo = res.data.patientInfo.afternoon
                  if(fisrtQueueInfo.create_time){
                      fisrtQueueInfo.create_time = moment(parseInt(fisrtQueueInfo.create_time) * 1000).format('HH:mm')
                  }
              }
          }
          this.fisrtQueueInfo = fisrtQueueInfo
        }
      }
    },
    call(){
      // console.log('patient_id',patient_id)
      let org_id =  parseInt(sessionStorage.getItem("org_id"));
      let admin_user_id = parseInt(sessionStorage.getItem("admin_user_id"));
      axios.get('/api/index/callpatient?org_id=' + org_id + '&patient_id=' + this.patient_id + '&admin_user_id=' + admin_user_id).then(res => {

        // let patientArr = res.data.queue_list.data
        // this.patientArr = patientArr
        // this.$emit('child-event',this.patientArr)
        if(res.data.data.patientInfo == null){
          this.$message.error('已经是最后一位了');
          return
        }
        if(res.data.code == 200){
          this.$message({
            message: res.data.msg,
            type: 'success'
          });
          this.curPatient = res.data.data.patientInfo
          let arr = []
          let newArr = []
          this.zone_schedules.map(item => {
            newArr.push(...item.schedules)
          })
          newArr.map(item => {
            arr.push(item.patient_id)
          })
          if(arr.indexOf(parseInt(res.data.data.patientInfo.patient_id)) > -1){

            this.showView = false
            this.$router.push({
              path: '/dialysis/details',
              query: {
                patient_id: parseInt(res.data.data.patientInfo.patient_id),
                date: this.$route.query.date,
                patient_name: res.data.data.patientInfo.patient_name,
                mode_id:newArr[arr.indexOf(parseInt(res.data.data.patientInfo.patient_id))].mode_id,
                curPatientTime:res.data.data.patientInfo.create_time,
                showView:false
              }
            })

          }else {

            this.showView = true
            this.$router.push({
              path: '/dialysis/details',
              query: {
                patient_id: parseInt(res.data.data.patientInfo.patient_id),
                date: this.$route.query.date,
                patient_name: res.data.data.patientInfo.patient_name,
                mode_id:this.$route.query.mode_id,
                curPatientTime:res.data.data.patientInfo.create_time,
                showView:true
              }
            })
          }
        }
      })
    },
    next(){
      let schedule_type = null
      if(new Date().getHours() < 11){
        schedule_type = 1
      }else {
        schedule_type = 2
      }

      let org_id =  parseInt(sessionStorage.getItem("org_id"));
      let admin_user_id = parseInt(sessionStorage.getItem("admin_user_id"));
      axios.get('/api/index/nextcall?org_id=' + org_id + '&patient_id=' + this.patient_id + '&admin_user_id=' + admin_user_id + '&schedule_type=' + schedule_type).then(res => {
        if(res.data.data.patientInfo == null){
          this.$message.error('已经是最后一位了');
          return
        }
        if(res.data.code == 200){
          this.$message({
            message: res.data.msg,
            type: 'success'
          });
          this.curPatient = res.data.data.patientInfo
          let arr = []
          let newArr = []
          this.zone_schedules.map(item => {
            newArr.push(...item.schedules)
          })
          newArr.map(item => {
            arr.push(item.patient_id)
          })
          if(arr.indexOf(parseInt(res.data.data.patientInfo.patient_id)) > -1){
            this.showView = false
            this.$router.push({
              path: '/dialysis/details',
              query: {
                patient_id: parseInt(res.data.data.patientInfo.patient_id),
                date: this.$route.query.date,
                patient_name: res.data.data.patientInfo.patient_name,
                mode_id:newArr[arr.indexOf(parseInt(res.data.data.patientInfo.patient_id))].mode_id,
                curPatientTime:res.data.data.patientInfo.create_time,
                showView:false
              }
            })
          }else {
            this.showView = true
            this.$router.push({
              path: '/dialysis/details',
              query: {
                patient_id: parseInt(res.data.data.patientInfo.patient_id),
                date: this.$route.query.date,
                patient_name: res.data.data.patientInfo.patient_name,
                mode_id:this.$route.query.mode_id,
                curPatientTime:res.data.data.patientInfo.create_time,
                showView:true
              }
            })
          }
        }
      })
    },
    getDates(time){
      return moment(time * 1000).format('HH:mm:ss')
    },
    printAction: function() {
        const style = '@media print {.signPrint{margin-left:30px;} .print_main_content { background-color: white; width:960px;  margin:0 auto; padding: 0 0 20px 0; } .order_title_panl { text-align: center; } .main_title { font-size: 18px; line-height: 40px; font-weight: 500; } .table_panel { } .table { width: 100%; border: 1px solid; border-collapse: collapse; padding: 2px; } thead tr td { border: 1px solid; text-align: center; font-size: 20px; padding: 15px 5px; } tbody tr td { border: 1px solid; text-align: center; font-size: 18px; padding: 10px 5px; } .proj { padding: 5px 0; text-align: left; } .proj_title { font-size: 16px; font-weight: 500; line-height: 25px; } .proj_item { font-size: 15px; line-height: 20px; } .zone_name { font-weight: 500; } .printCell span{display: inline-block;width: 180px;} @page {margin-top:10px;}}'
        const style1 = '@page {margin-top:10px;} @media print{}'
        printJS({
          printable: 'print_content',
          type: 'html',
          documentTitle: '',
          style: style1,
          scanStyles: false
        })
      },
    getInitPrintData(){
      const loading = this.$loading({
        lock: true,
        text: 'Loading',
        spinner: 'el-icon-loading',
        background: 'rgba(0, 0, 0, 0.7)'
       })

       var params = {
         patient_id:this.$route.query.patient_id,
         record_date:this.$route.query.date,
       }
      getInitPrintData(params).then(response=>{
        if(response.data.state == 1){
          var list = response.data.data.list
          console.log("listwowoowowowowow",list)
          var assessmentAfterDislysis =  response.data.data.assessmentAfterDislysis

          this.printList = list
          this.assessmentAfterDislysis = assessmentAfterDislysis

          if(this.org_id == 0 || this.org_id ==10469){
            this.centerDialogVisible = true
          }else{
            this.startVisibility = true
          }
          loading.close()
        }
      })
    },
    getModeId(val){
      var name =""
      if(val == 1){
        name ="HD"
      }
      if(val == 2){
        name ="HDF"
      }
      if(val == 3){
        name ="HD+HP"
      }
      if(val == 4){
        name ="HP"
      }
      if(val == 5){
        name ="HF"
      }
      if(val == 6){
        name ="SCUF"
      }
      if(val == 7){
        name ="IUF"
      }
      if(val == 8){
        name ="IUF"
      }
      if(val == 9){
        name ="HFHD+HP"
      }
      if(val == 10){
        name ="HFHD+HP"
      }
      if(val == 11){
        name ="HFR"
      }
      if(val == 12){
        name ="HDF+HP"
      }
      if(val == 13){
        name ="CRRT"
      }
      if(val == 14){
        name ="腹水回输"
      }
      if(val == 19){
        name ="IUF+HD"
      }
      if(val == 20){
        name ="UF"
      }
      if(val == 21){
        name ="HD+"
      }
      if(val == 22){
        name ="血浆胆红素吸附+HDF"
      }
      if(val == 23){
        name ="血浆胆红素吸附"
      }
      if(val == 24){
        name ="I-HDF"
      }
      if(val == 25){
        name ="HD高通"
      }
      if(val == 26){
        name ="CVVH"
      }
      if(val == 27){
        name ="CVVHD"
      }
      if(val == 28){
        name ="CVVHDF"
      }
      if(val == 29){
        name ="PE"
      }
      if(val == 30){
        name ="血浆胆红素吸附+HP"
      }
      if(val == 31){
        name ="HPD"
      }
      if(val == 32){
        name ="HDP"
      }
      if(val == 33){
        name ="HDP"
      }
      if(val == 33){
        name ="HFD"
      }
      if(val == 34){
        name ="HDF100"
      }
      if(val == 35){
        name ="HDF600"
      }
      if(val == 36){
        name ="HDF800"
      }
      if(val == 37){
        name ="HDF1000"
      }
      return name
    },
    getBloodAccess(id){
        var name = ""
        for(let i=0;i<this.blood_access_part_opera.length;i++){
          if(id == this.blood_access_part_opera[i].id){
             name = this.blood_access_part_opera[i].name
          }
        }
        return name
    },
    // 透析历史
    history_click(){
      this.getPatientDialysisRecordList()
      // this.getmonth(this.time_value2)
      // console.log('time_value',moment(this.time_value2).format('YYYY-MM-DD'));
    },
    getPatientDialysisRecordList(){
      var params= {
        patient_id:this.$route.query.patient_id,
        start_time:this.start_time,
        end_time:this.end_time,
      }
      getPatientDialysisRecordList(params).then(response=>{
         if(response.data.state == 1){
           var list  = response.data.data.list
           this.historyclick =true
           if(list!=null && list.length>0){
             for(let i=0;i<list.length;i++){
              
               list[i].order_date =""
               if(this.org_id ==9538 || this.org_id ==10101||this.org_id ==10353){
                  list[i].order_date = this.getOrderTime(list[i].dialysis_date) 
                  list[i].schedual_type_name= list[i].schedual_type
               }else{
                 list[i].order_date = this.getOrderTime(list[i].schedule_date) 
                 list[i].schedual_type_name= list[i].schedule_type
               }
              
             }
           }
           console.log("list------",list)
           this.orderList = []
           this.orderList = list
         }
      })
    },
    // 获取每个月的第一天和最后一天
    getmonth(val){
      // const months= new Date(val).getMonth()
      // let startTime =  moment().month(months).startOf('month').format('YYYY-MM-DD')
      
      // //   //某月最后一天
      // let endTime = moment().month(months).endOf('month').format('YYYY-MM-DD')
      // this.startTime = startTime
      // this.endTime = endTime
      // console.log('time_value333333',this.startTime,this.endTime);
    },
    getOrderTime(val){
      if (val < 0) {
        return "";
      }
      if (val == "") {
        return "";
      } else {
        return uParseTime(val, "{y}-{m}-{d}");
      }
    },
    viewDayWork(val){
      console.log("val33333333333333",val)
      var patient_id = this.$route.query.patient_id
      var start_time = this.timestamp(this.start_time)
      this.$router.push({
        path: "/dialysis/details",
        query: { patient_id:patient_id , date: start_time}
      });
      this.history_click = false
    },
    timestamp(start_time) {
      // 使用 Date 对象和它的 getTime 方法将日期字符串转换为时间戳
      return new Date(start_time).getTime()/1000 - 28800;
    }
  
  },
  watch:{
    time_value:{
      handler(newValue,oldValue){
        console.log("newValue----------",newValue)
        // this.initData()
        this.time_value = newValue
        this.getmonth(this.time_value)
        console.log('yyyyyyyyyyy',moment(this.time_value).format('YYYY-MM-DD'),moment(oldValue).format('YYYY-MM-DD'))

        this.start_time = moment(this.time_value).format('YYYY-MM-DD')
        this.end_time =   moment(oldValue).format('YYYY-MM-DD')

      }
    }
  }
}
</script>

<style style="stylesheet/scss" lang="scss" scoped>
.details-bg {
  background: #fff;
  margin: 0 15px;
}
.printForm {
  .title {
    font-size: 30px;
    font-weight: 500;
    text-align: center;
    line-height: 60px;
  }
  .info {
    ul {
      display: -webkit-box;
      display: -moz-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      align-items: center;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box;
      box-sizing: border-box;
      -webkit-justify-content: space-around;
      -moz-justify-content: space-around;
      -ms-justify-content: space-around;
      -o-justify-content: space-around;
      justify-content: space-around;
      li {
        display: flex;
        box-sizing: border-box;
        justify-content: space-around;
        // .name {
        // }
        .InputBox {
          padding: 0;
          border: none;
          border-bottom: 1px #e5e5e5 solid;
          width: 60px;
          outline: none;
        }
      }
    }
  }
  .printTable {
    tr {
      padding: 2px;
      th {
        padding: 6px 4px;
      }
      td {
        padding: 6px 4px;
      }
    }
  }
}
.loadingBox{
  display: flex;
  .patientBox{
    background: #fff;
    .touxi_cishu{
      display: inline-block;
      border: 1px solid #409eff;
      width: 30px;
      text-align: center;
      border-radius: 10px;
    }
  }
  .tip1{
    background: #4fc7cb;
    border-radius: 5px;
    text-align: center;
    font-size: 12px;
    display: inline-block;
    width: 60px;
    // height: 23px;
    // line-height: 23px;
    color: #fff;

  }
  .tip2{
    background: #ee8556;
    border-radius: 5px;
    text-align: center;
    font-size: 12px;
    display: inline-block;
    width: 60px;
    // height: 23px;
    // line-height: 23px;
    color: #fff;
  }
  .tip3{
    background: #409eff;
    border-radius: 5px;
    text-align: center;
    font-size: 12px;
    display: inline-block;
    width: 60px;
    color: #fff;
  }
  .tip4{
    background: #a8b3ba;
    border-radius: 5px;
    text-align: center;
    font-size: 12px;
    display: inline-block;
    width: 60px;
    color: #fff;
  }
  .tip5{
    background: #7bce91;
    border-radius: 5px;
    text-align: center;
    font-size: 12px;
    display: inline-block;
    width: 60px;
    color: #fff;
  }
}
.history{
  .touxipl{
    display: inline-block;
    width: 60%;
    border-bottom:1px solid gray;
  }
}
</style>

<style lang="scss">
.loadingBox{
  .el-loading-spinner{
    top:10%;
  }
  .el-button--small, .el-button--small.is-round{
    padding:9px 10px;
  }
  .el-date-editor{
    .el-input__inner{
      padding-right:0px;
    }
  }
  .el-table td, .el-table th{
    text-align: center;

  }
  .el-table td{
    height: 44px !important;
  }
  .el-table .cell{
    padding: 0;
  }
}
.history{
  .el-dialog{
    .el-dialog__header{
      padding: 10px 10px 10px;
      background-color: #409eff;
      .el-dialog__title{
        color: white;
        font-size: 15px;
      }
      .el-dialog__headerbtn{
        position: absolute;
        top: 12px;
        right: 20px;
        .el-dialog__close{
          color: white;
        }
      }
    }
    .el-dialog__body{
      padding: 15px 10px 
    }
  }
  
}
.Calendar{
    color: #000 !important;
    width: 100% !important;
    max-width: 839px !important;
    .wh_content_all{
      background-color: #fff;
      .wh_top_changge{
        .wh_jiantou1{
          border-top: 2px solid #000;
          border-left: 2px solid #000;
        }
        .wh_content_li{
          color: #000;
        }
        .wh_jiantou2{
          border-top: 2px solid #000;
          border-right: 2px solid #000;
        }
      }
      .wh_content_item{
        text-align: center;
        color: #000 ;
        height: 50px;
        .wh_top_tag{
          width: 100%;
          height: 50px ;
          line-height: 50px;
          margin: 0;
          display: flex;
          justify-content: center;
          align-items: center;
          text-align: center
        }
        .wh_isToday{
          border: 1px solid #409eff;
          background: #409eff !important;
          color: #fff;
          border-radius: 0;
        }
        .wh_chose_day{
          border: 1px solid #409eff;
          background: #fff !important;
          color: #409eff;
          border-radius: 0;
        }
        .wh_item_date{
          width: 100%;
          height: 50px;
          line-height: 50px;
          margin: 0;
          display: flex;
          justify-content: center;
          align-items: center;
        }
        .wh_item_date:hover {
            background: #fff;
            cursor: pointer;
        }
      }
    }
}
</style>
