<template>
  <div>
    <template>
      <el-button
        style="position:fixed;right:25px;z-index:999"
        :loading="loading"
        size="small"
        icon="el-icon-printer"
        @click="printThisPage"
        type="primary"
      >打印</el-button
      >
    </template>

    <div class='dialysisPage' style="padding-top:40px;">
      <printOne :info="info" :p_admin="p_admin" :charge_admin="charge_admin"></printOne>
    </div>
  </div>
</template>

<script>


  import { parseTime } from "@/utils";
  import { getDialysisRecord } from "@/api/dialysis";
  import { getDataConfig } from "@/utils/data";
  import { jsGetAge, uParseTime } from "@/utils/tools";
  import axios from 'axios'

  import BreadCrumb from "@/xt_pages/components/bread-crumb";
  import print from "print-js";
  import printOne from "./statementTemplate/printOne"
  import { getAllDoctorList,getAllHisPatientList,getPrescriptionPrint } from "@/api/project/project"
  export default {
    name: "newStatementPrint",
    components: {
      BreadCrumb,
      printOne
    },
    props:{
      paramsObj:Object
    },
    data() {
      return {
        crumbs: [
          { path: false, name: '门诊医生站' },
          { path: false, name: '打印' }
        ],
        record_date:"",
        patientTableData:[],
        advicePrint:[],
        hisPatient:{},
        patient:{},
        search_input:"",
        loading:false,
        patient_id:0,
        prescription_id:0,
        ids:'',
        info:null,
        p_admin:{},
        charge_admin:{},
      };
    },
    methods:{
      printThisPage() {
        var ptime = Math.round(new Date().getTime() / 1000);
        this.print_time = uParseTime(ptime, "{y}-{m}-{d} {h}:{i}");

        const style =
          '@media print {.statementTitle{font-size: 28px;text-align: center;font-weight: bold;margin-bottom: 10px;}.statementTable{width: 100%;text-align: center;border-collapse: collapse;line-height: 40px;font-size: 16px;border-color: #000;}}';
        printJS({
          printable: "statement-print",
          type: "html",
          style: style,
          scanStyles: false
        });

        // if (this.org_template_info.template_id == 1) {
        //   printJS({
        //     printable: "dialysis-print-box",
        //     type: "html",
        //     style: style,
        //     scanStyles: false
        //   });
        // }
      },
      getAllDoctorList(){
        getAllDoctorList().then(response=>{
          if(response.data.state == 1){
            var doctor =  response.data.data.doctor;

            this.doctorList = doctor
          }
        })
      },
      getAllHisPatientList(){
        const params = {
          record_date:this.record_date
        };
        getAllHisPatientList(params).then(response=>{
          if(response.data.state == 1){
            this.patientTableData = response.data.data.list;
            this.patientTableDataTwo = response.data.data.list;

            console.log('222', this.patientTableData);
            let cal_one = 0;
            let cal_two = 0;
            for (let i = 0; i < response.data.data.list.length; i++) {
              if (response.data.data.list[i].prescription == null || response.data.data.list[i].prescription.length == 0) {
                cal_one = cal_one + 1
              }
              if (response.data.data.list[i].prescription != null && response.data.data.list[i].prescription.length > 0) {
                cal_two = cal_two + 1
              }
            }
            // this.$refs.tab.setCurrentRow(this.patientTableData[0])
            // console.log(this.patientTableData[0])
            // this.choosePatient(this.patientTableData[0])
            this.cal_one = cal_one;
            this.cal_two = cal_two
          }
        })
      },

      changePatient(row){
        console.log("row",row);
        this.patient_id = row.patient_id;
        this.record_date = this.record_date;
        this.prescription_id = this.prescription_id
        //   var params = {
        //     patient_id:row.patient_id,
        //     record_date:this.record_date,
        //     prescription_id:this.prescription_id,
        //   }
        // getPrescriptionPrint(params).then(response=>{
        //     if(response.data.state == 1){
        //       var advicePrint =  response.data.data.advicePrint
        //       console.log("adviceprint",advicePrint)
        //       this.advicePrint = advicePrint
        //       // var hisPatient =  response.data.data.hisPatient
        //       // console.log("hispatient",hisPatient)
        //       // this.hisPatient = hisPatient
        //       var patient =  response.data.data.patient
        //       console.log("patient",patient)
        //       this.patient = patient
        //       var doctorPorject = response.data.data.doctorPorject
        //       console.log("doctorporject",doctorPorject)
        //     }
        // })
      },  getTimes(time) {
        return uParseTime(time, '{y}-{m}-{d}')
      },
      searchAction(){

      },
      getInfo(order_id) {
          var that = this;
          axios.get('http://127.0.0.1:9532/api/settle/query', {
            params: {
              order_id: order_id,
              admin_user_id:that.$store.getters.xt_user.user.id
            }
          })
            .then(function (response) {
              if (response.data.state == 0) {
                this.$message.error(response.data.msg);
                return false
              } else {
                console.log("logloglog");

                console.log(response.data.data.info);
                that.info = response.data.data.info;
                that.p_admin = response.data.data.printor_admin;
                that.charge_admin = response.data.data.charge_admin;
                that.info['p_admin'] =  that.p_admin;
                that.info['charge_admin'] =  that.charge_admin;

                that.info['date'] =  response.data.data.date;
                that.info['number'] =  response.data.data.number;
                that.info['order_infos'] =  response.data.data.order_infos;
                that.info['diagnosis'] =  response.data.data.diagnosis;


                that.info['bed_cost_total'] = response.data.data.bedCostTotal;
                that.info['bed_cost_self_total'] = response.data.data.bedCostSelfTotal;
                that.info['bed_cost_part_self_total'] = response.data.data.bedCostPartSelfTotal;

                that.info['operation_cost_total'] = response.data.data.operationCostTotal;
                that.info['operation_cost_self_total'] = response.data.data.operationCostSelfTotal;
                that.info['operation_cost_part_self_total'] = response.data.data.operationCostPartSelfTotal;

                that.info['other_cost_total'] = response.data.data.otherCostTotal;
                that.info['other_cost_self_total'] = response.data.data.otherCostSelfTotal;
                that.info['other_cost_part_self_total'] = response.data.data.otherCostPartSelfTotal;

                that.info['material_cost_total'] = response.data.data.materialCostTotal;
                that.info['material_cost_self_total'] = response.data.data.materialCostSelfTotal;
                that.info['material_cost_part_self_total'] = response.data.data.materialCostPartSelfTotal;

                that.info['western_medicine_cost_total'] = response.data.data.westernMedicineCostTotal;
                that.info['western_medicine_cost_self_total'] = response.data.data.westernMedicineCostSelfTotal;
                that.info['western_medicine_cost_part_self_total'] = response.data.data.westernMedicineCostPartSelfTotal;

                that.info['chinese_traditional_medicine_cost_total'] = response.data.data.chineseTraditionalMedicineCostTotal;
                that.info['chinese_traditional_medicine_cost_self_total'] = response.data.data.chineseTraditionalMedicineCostSelfTotal;
                that.info['chinese_traditional_medicine_cost_part_self_total'] = response.data.data.chineseTraditionalMedicineCostPartSelfTotal;


                that.info['check_cost_total'] = response.data.data.checkCostTotal;
                that.info['check_cost_self_total'] = response.data.data.checkCostSelfTotal;
                that.info['check_cost_part_self_total'] = response.data.data.checkCostPartSelfTotal;


                that.info['laboratory_cost_total'] = response.data.data.laboratoryCostTotal;
                that.info['laboratory_cost_self_total'] = response.data.data.laboratoryCostSelfTotal;
                that.info['laboratory_cost_part_self_total'] = response.data.data.laboratoryCostPartSelfTotal;

                that.info['treat_cost_total'] = response.data.data.treatCostTotal;
                that.info['treat_cost_self_total'] = response.data.data.treatCostSelfTotal;
                that.info['treat_cost_part_self_total'] = response.data.data.treatCostPartSelfTotal;

                if(that.paramsObj.settle_type != 1){
                  that.info.begndate = that.getTimes(that.paramsObj.start_time)
                  that.info.enddate = that.getTimes(that.paramsObj.end_time)
                }
              }
            })
            .catch(function (error) {

            });
      }

    },

    created() {
      this.getInfo(this.paramsObj.order_id)
    },
    watch:{
      paramsObj:{//深度监听，可监听到对象、数组的变化
        handler(val, oldVal){
          this.paramsObj = val;
          this.getInfo(this.paramsObj.order_id)

        },
        deep:true
      }
    }

  };
</script>

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .es-img {
    height: 30px;
  }

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

  .advice-children {
    display: flex;
  }

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

  .table-box1 {
    border: 1px solid #000;
    width: 100%;
    line-height: 30px;
    font-size: 14px;
    border-collapse: collapse;
  }
  .table-box1 tr {
    border-bottom: 1px solid #000;
  }
</style>

<style lang="scss">

  .newContainer{
  .dialysisPage::-webkit-scrollbar {
    height: 15px;
  }

  .el-date-editor{
  .el-input__inner{
    padding-right:0px;
  }
  }
  .el-table td, .el-table th{
    text-align: center;
  }
  }
  .newContainer::-webkit-scrollbar{
    height: 15px !important;
  }
</style>
