WXL
2025-04-08 9f5b4e23bbca058ecef83397ff95dbe0fed7bd5e
src/views/patient/patient/profile/index.vue
@@ -44,23 +44,17 @@
        >
        <el-tabs v-model="sonactiveName" @tab-click="handleClickson">
          <el-tab-pane name="outpatient"
            ><span class="mulsz" slot="label"
              >门诊({{ mznumber }})</span
            ></el-tab-pane
            ><span class="mulsz" slot="label">门诊</span></el-tab-pane
          >
          <el-tab-pane name="inhospital"
            ><span class="mulsz" slot="label"
              >在院({{ zynumber }})
            </span></el-tab-pane
            ><span class="mulsz" slot="label">在院 </span></el-tab-pane
          >
          <el-tab-pane name="checkout"
            ><span class="mulsz" slot="label"
              >出院({{ jynumber }})
            </span></el-tab-pane
            ><span class="mulsz" slot="label">出院 </span></el-tab-pane
          >
        </el-tabs>
      </el-tab-pane>
      <el-tab-pane name="monitor">
      <!-- <el-tab-pane name="monitor">
        <span class="mulsz" slot="label"
          ><i class="el-icon-s-data"></i> 健康监测</span
        >
@@ -97,7 +91,7 @@
            </span></el-tab-pane
          >
        </el-tabs></el-tab-pane
      >
      > -->
      <el-tab-pane name="serve">
        <span class="mulsz" slot="label"
          ><i class="el-icon-s-custom"></i> 服务记录</span
@@ -327,7 +321,8 @@
          >
            <el-table-column prop="id" label="序号" width="180">
            </el-table-column>
            <el-table-column prop="contactname" label="姓名" width="180">
            <el-table-column prop="contactname" label="姓名"
          width="100" >
            </el-table-column>
            <el-table-column prop="contactway" label="联系方式" width="180">
            </el-table-column>
@@ -369,12 +364,12 @@
          <el-table-column
            label="就诊时间"
            align="center"
            key="createTime"
            prop="createTime"
            key="admitdate"
            prop="admitdate"
            width="160"
          >
            <template slot-scope="scope">
              <span>{{ formatTime(scope.row.createTime) }}</span>
              <span>{{ formatTime(scope.row.admitdate) }}</span>
            </template>
          </el-table-column>
@@ -386,22 +381,12 @@
          />
          <el-table-column
            label="姓名"
          width="100"
            align="center"
            key="patname"
            prop="patname"
          />
          <el-table-column label="性别" align="center" key="sex" prop="sex">
            <template slot-scope="scope">
              <span>{{ scope.row.sex == 1 ? "男" : "女" }}</span>
            </template>
          </el-table-column>
          <el-table-column
            label="年龄"
            align="center"
            key="age"
            prop="age"
            width="120"
          />
          <el-table-column
            label="联系电话"
            align="center"
@@ -410,10 +395,17 @@
            width="120"
          />
          <el-table-column
            label="诊断"
            label="入院诊断"
            align="center"
            key="diagname"
            prop="diagname"
            width="190"
          />
          <el-table-column
            label="出院诊断"
            align="center"
            key="leavediagname"
            prop="leavediagname"
            width="190"
          />
@@ -425,14 +417,28 @@
            width="120"
          />
          <el-table-column
            label="接诊医生"
            label="所在病区"
            align="center"
            key="leavehospitaldistrictname"
            prop="leavehospitaldistrictname"
            width="120"
          />
          <el-table-column
            label="主治医生"
            align="center"
            key="drname"
            prop="drname"
            width="120"
          />
        </el-table>
          <el-table-column
            label="责任护士"
            align="center"
            key="nurseName"
            prop="nurseName"
            width="120"
          />
        </el-table>
        <pagination
          v-show="total > 0"
          :total="total"
@@ -447,35 +453,24 @@
          <el-table-column
            label="住院号"
            align="center"
            key="patid"
            prop="patid"
            key="inhospno"
            prop="inhospno"
            width="180"
          />
          <el-table-column
            label="姓名"
          width="100"
            align="center"
            key="patname"
            prop="patname"
          />
          <el-table-column label="性别" align="center" key="sex" prop="sex">
            <template slot-scope="scope">
              <span>{{ scope.row.sex == 1 ? "男" : "女" }}</span>
            </template>
          </el-table-column>
          <el-table-column
            label="年龄"
            align="center"
            key="age"
            prop="age"
            width="120"
          />
          <el-table-column
            label="联系电话"
            align="center"
            key="telephone"
            prop="telephone"
            key="telcode"
            prop="telcode"
            width="120"
          />
          <el-table-column
            label="入院诊断"
            align="center"
@@ -483,19 +478,26 @@
            prop="diagname"
            width="190"
          />
          <el-table-column
            label="出院诊断"
            align="center"
            key="leavediagname"
            prop="leavediagname"
            width="190"
          />
          <el-table-column
            label="病区"
            label="就诊科室"
            align="center"
            key="deptname"
            prop="deptname"
            width="120"
          />
          <el-table-column
            label="床位号"
            label="所在病区"
            align="center"
            key="bedNo"
            prop="bedNo"
            key="leavehospitaldistrictname"
            prop="leavehospitaldistrictname"
            width="120"
          />
          <el-table-column
@@ -505,29 +507,101 @@
            prop="drname"
            width="120"
          />
          <el-table-column
            label="责任护士"
            align="center"
            key="Sister"
            prop="Sister"
            key="nurseName"
            prop="nurseName"
            width="120"
          />
          <el-table-column
            label="床位号"
            align="center"
            key="bedNo"
            prop="bedNo"
            width="120"
          />
        </el-table>
      </div>
      <!-- 出院 -->
      <div v-if="sonactiveName == 'checkout'">
        <el-table :data="serviceDatacy" style="width: 100%">
          <el-table-column prop="godaya" label="体检类型"> </el-table-column>
          <el-table-column prop="hospitalname" label="体检套餐名称">
          </el-table-column>
          <el-table-column prop="result" label="体检预约日期">
          </el-table-column>
          <el-table-column prop="administrative" label="体检项目">
          </el-table-column>
          <el-table-column prop="administrative" label="体检报告日">
          </el-table-column>
          <el-table-column prop="administrative" label="体检总检报告">
          </el-table-column>
          <el-table-column
            label="住院号"
            align="center"
            key="inhospno"
            prop="inhospno"
            width="120"
          />
          <el-table-column
            label="姓名"
          width="100"
            align="center"
            key="patname"
            prop="patname"
          />
          <el-table-column
            label="联系电话"
            align="center"
            key="telcode"
            prop="telcode"
            width="120"
          />
          <el-table-column
            label="入院诊断"
            align="center"
            key="diagname"
            prop="diagname"
            width="190"
          />
          <el-table-column
            label="出院诊断"
            align="center"
            key="leavediagname"
            prop="leavediagname"
            width="190"
          />
          <el-table-column
            label="就诊科室"
            align="center"
            key="deptname"
            prop="deptname"
            width="120"
          />
          <el-table-column
            label="所在病区"
            align="center"
            key="leavehospitaldistrictname"
            prop="leavehospitaldistrictname"
            width="120"
          />
          <el-table-column
            label="主治医生"
            align="center"
            key="drname"
            prop="drname"
            width="120"
          />
          <el-table-column
            label="责任护士"
            align="center"
            key="nurseName"
            prop="nurseName"
            width="120"
          />
          <el-table-column
            label="床位号"
            align="center"
            key="bedNo"
            prop="bedNo"
            width="120"
          />
        </el-table>
      </div>
    </div>
@@ -548,27 +622,41 @@
              border-left: 4px solid rgb(190, 65, 134);
            "
          >
            {{ item.name }}
          <span v-if="item.serviceType==2">出院随访</span>
          <span v-if="item.serviceType==1">心电随访</span>
          <span v-if="item.serviceType==3">影像随访</span>
          <span v-if="item.serviceType==4">宣教关怀</span>
          </div>
          <el-divider></el-divider>
          <div style="margin-top: 10px">
            {{ item.name }}状态:已终止<span style="color: #2775b6"
              >(终止原因:患者痊愈回访结束,终止时间:2023-12-18 12:00)</span
            服务名称:<span style="color: #2775b6"
              >{{ item.templatename }}</span
            >
          </div>
          <div style="margin-top: 10px">
            {{ item.name }}发送时间:<span style="color: #2775b6"
              >2023-11-23 12:00</span
            创建时间:<span style="color: #2775b6"
              >{{item.createTime}}</span
            >
          </div>
          <div style="margin-top: 10px">
            {{ item.name }}完成时间:<span style="color: #2775b6"
              >2023-12-18 12:00</span
            完成时间:<span style="color: #2775b6"
              >{{ item.finishtime }}</span
            >
          </div>
          <div style="margin-top: 10px">
            疼痛程度:<span style="color: #2775b6">中度</span>
            <el-row :gutter="20">
              <el-col :span="12"
                >科室:
                <span style="color: #2775b6">{{ item.deptname }}</span></el-col
              >
              <el-col :span="12"
                >病区:
                <span style="color: #2775b6">{{ item.leavehospitaldistrictname }}</span></el-col
              >
            </el-row>
          </div>
          <div
            style="
              font-size: 20px;
@@ -577,37 +665,38 @@
              border-left: 4px solid rgb(65, 161, 190);
            "
          >
            人工{{ item.name }}记录
            人工记录
          </div>
          <div style="margin-top: 10px">
            <el-row :gutter="20">
              <el-col :span="6"
                >{{ item.name }}日期:
                <span style="color: #2775b6">2023-11-22 11:22</span></el-col
                >负责人:
                <span style="color: #2775b6">{{ item.createBy }}</span></el-col
              >
              <el-col :span="6"
                >{{ item.name }}人:
                <span style="color: #2775b6">吴小龙</span></el-col
                >主治医生:
                <span style="color: #2775b6">{{ item.drname }}</span></el-col
              >
              <el-col :span="6"
                >患者配合度: <span style="color: #2775b6">高</span></el-col
                >责任护士 <span style="color: #2775b6">{{ item.nurseName }}</span></el-col
              >
            </el-row>
          </div>
          <div style="margin-top: 10px">
            {{ item.name }}结果:
            <span style="color: #2775b6">患者痊愈,身体倍棒</span>
            结果状态:
            <span style="color: #2775b6" v-if="item.excep==0">服务正常</span>
            <span style="color: #B55E54" v-if="item.excep==1">异常</span>
          </div>
          <div style="margin-top: 10px">
            {{ item.name }}备注:
          <!-- <div style="margin-top: 10px">
            备注:
            <span style="color: #2775b6">提醒注意饮食健康</span>
          </div>
          </div> -->
        </el-card>
      </div>
    </div>
    <!-- 健康监测 -->
    <div class="medical-record" v-show="activeName == 'monitor'">
      <!-- 血压图标 -->
    <!-- <div class="medical-record" v-show="activeName == 'monitor'">
      <div v-show="sontwoactiveName == 'blood'" style="display: flex">
        <div
          id="xyeCharts"
@@ -625,7 +714,6 @@
          </el-card>
        </div>
      </div>
      <!-- 血糖 -->
      <div v-show="sontwoactiveName == 'glucose'" style="display: flex">
        <div
          id="xteCharts"
@@ -643,7 +731,6 @@
          </el-card>
        </div>
      </div>
      <!-- 体重 -->
      <div v-show="sontwoactiveName == 'weight'" style="display: flex">
        <div
          id="tzeCharts"
@@ -661,7 +748,6 @@
          </el-card>
        </div>
      </div>
      <!-- 心率 -->
      <div v-show="sontwoactiveName == 'heartrate'" style="display: flex">
        <div
          id="xleCharts"
@@ -679,7 +765,6 @@
          </el-card>
        </div>
      </div>
      <!-- 血氧 -->
      <div v-show="sontwoactiveName == 'bloodoxygen'" style="display: flex">
        <div
          id="xueyangeCharts"
@@ -697,7 +782,6 @@
          </el-card>
        </div>
      </div>
      <!-- 体温 -->
      <div v-show="sontwoactiveName == 'animalheat'" style="display: flex">
        <div
          id="tweCharts"
@@ -715,11 +799,12 @@
          </el-card>
        </div>
      </div>
    </div>
    </div> -->
    <el-dialog :title="titletb" :visible.sync="AddanumberVisible">
      <el-form :model="numberform" label-width="100px">
        <el-form-item label="姓名">
        <el-form-item label="姓名"
          width="100">
          <el-input v-model="numberform.contactname"></el-input>
        </el-form-item>
        <el-form-item label="联系电话">
@@ -757,6 +842,11 @@
  alterpatient,
  Patientclinic,
} from "@/api/patient/homepage";
import {
  getsearchrResults,
  getTaskservelist,
} from "@/api/AiCentre/index";
import { listPatouthosp } from "@/api/smartor/patouthosp";
import { listpatient } from "@/api/patient/record";
@@ -781,19 +871,39 @@
      id: "",
      loading: false,
      activeName: "health", //一类导航
      sonactiveName: "outpatient", //健康监测导航
      sonactiveName: "inhospital", //健康监测导航
      sontwoactiveName: "blood", //医疗档案导航
      dynamicTags: [],
      record: [
        {
          name: "宣教任务",
          serviceType:'4',
          templatename:'管饲宣教一期',
          createTime:'2024-11-10',
          finishtime:'2024-11-12',
          createBy:'王政',
          drname:'刘明',
          nurseName:'张淑琴',
          excep:'0',
          deptname:'呼吸科',
          leavehospitaldistrictname:'五病区',
        },
        {
          name: "通知任务",
          name: "随访任务",
          serviceType:'2',
          templatename:'心血管随访一期',
          createTime:'2024-11-11',
          finishtime:'2024-11-14',
          createBy:'章程',
          drname:'刘明',
          nurseName:'李丽',
          excep:'0',
          deptname:'呼吸科',
          leavehospitaldistrictname:'五病区',
        },
        {
          name: "问卷调查",
        },
        // {
        //   name: "问卷调查",
        // },
      ],
      inputVisible: false,
      AddanumberVisible: false,
@@ -944,19 +1054,22 @@
        // 门诊记录
        listPatouthosp({ patid: this.id }).then((response) => {
          if (response.code == 200) {
            this.serviceData = response.rows;
            // this.serviceData = response.rows;
            this.serviceData = [];
          }
        });
      } else if (type == 1) {
        listpatient({ patid: this.id }).then((response) => {
        listpatient({ patid: this.id, cry: 0 }).then((response) => {
          if (response.code == 200) {
            this.serviceDatary = response.rows;
          }
        });
      } else if (type == 2) {
        listpatient({ patid: this.id }).then((response) => {
        listpatient({ patid: this.id, cry: 1 }).then((response) => {
          if (response.code == 200) {
            this.serviceDatacy = response.rows;
            console.log(this.serviceDatacy);
            this.$forceUpdate()
          }
        });
      }
@@ -1117,13 +1230,25 @@
    // tab切换
    handleClick(tab, event) {
      if (tab.index == "1") {
        this.getList(0);
        this.getList(1);
      }else if (tab.index == "2") {
this.handleClickfw();
      }
    },
    handleClickson(tab, event) {
      console.log(tab.index, "son");
      console.log(tab, "son");
      this.getList(tab.index);
    },
    // 查询服务记录
    handleClickfw(){
      getTaskservelist({
        patid: this.id,
      }).then((res) => {
        if (res.code == 200) {
          this.record = res.rows[0].serviceSubtaskList;
        }
      });
    },
    // 联系方式新增
    Addanumber() {},
    // 标签--------------------------