su
su1124
2024-01-03 4471426a152ff0361350e415307e384453351afd
src/views/doctor/check/index.vue
@@ -480,14 +480,14 @@
          >
        </div>
        <div style="margin: 10px 10px">
          <el-button type="primary" size="mini" @click="jianqian()"
          <el-button type="primary" size="mini" @click="jianqian"
            >检前问诊</el-button
          >
        </div>
      </div>
      <el-row>
        <el-col :span="18">
        <el-col v-show="baogaoqian">
          <template>
            <div style="margin-left: 10px">
              <el-radio-group
@@ -513,6 +513,7 @@
              prop="project.proName"
              label="检测项目"
              width="150"
              fixed="left"
            >
              <!-- <template slot-scope="scope">
            {{ scope.row.project.proName }}
@@ -700,8 +701,223 @@
            </div>
          </div>
        </el-col>
        <el-col :span="6">
          <Historicalreport v-show="lishi"
        <el-col :span="18" v-show="baogaohou">
          <template>
            <div style="margin-left: 10px">
              <el-radio-group
                v-model="radio"
                v-for="(item, index) in Parent"
                :key="index"
                @input="radioChange1(item.proId, item)"
              >
                <el-radio-button :label="item.proId">{{
                  item.proName
                }}</el-radio-button>
              </el-radio-group>
            </div>
          </template>
          <el-table
            v-loading="loading"
            :data="proParentList.sons"
            border
            height="460px"
            style="width: 96%; margin: 10px 10px"
          >
            <el-table-column
              prop="project.proName"
              label="检测项目"
              width="150"
              fixed="left"
            >
              <!-- <template slot-scope="scope">
            {{ scope.row.project.proName }}
          </template> -->
            </el-table-column>
            <el-table-column prop="proResult" label="检测结果" width="200">
              <template slot-scope="scope">
                <el-input
                  type="textarea"
                  autosize
                  size="mini"
                  v-model="scope.row.proResult"
                  autocomplete="off"
                  placeholder="请输入检测结果"
                  @blur="handleInputConfirm(scope.row)"
                  @input="vale"
                  @focus="handleInConfirm(scope.row)"
                ></el-input>
              </template>
            </el-table-column>
            <el-table-column label="规则" width="55">
              <template slot-scope="scope">
                <el-button class="blue-button" @click="handleguize(scope.row)"
                  >...</el-button
                >
              </template>
            </el-table-column>
            <el-table-column prop="project.proMetering" label="单位">
              <!-- <template slot-scope="scope">
            {{ scope.row.standard.company }}
          </template> -->
            </el-table-column>
            <el-table-column prop="project.proScope" label="参考范围">
            </el-table-column>
            <el-table-column prop="conclusion" label="结果结论" width="200">
              <template slot-scope="scope">
                <el-input
                  size="mini"
                  type="textarea"
                  autosize
                  v-model="scope.row.conclusion"
                  autocomplete="off"
                  placeholder="请输入检测结果"
                  disabled
                ></el-input>
              </template>
            </el-table-column>
            <el-table-column
              prop="exceptionDesc"
              label="是否异常"
              width="80px"
              align="center"
            >
              <template slot-scope="scope">
                <el-checkbox v-model="scope.row.exceptionDesc"></el-checkbox>
              </template>
            </el-table-column>
            <el-table-column
              prop="isReturn"
              label="是否复诊"
              width="80px"
              align="center"
            >
              <template slot-scope="scope">
                <el-checkbox v-model="scope.row.isReturn"></el-checkbox>
              </template>
            </el-table-column>
            <el-table-column prop="project.resultType" label="结果类型">
              <template slot-scope="scope">
                <dict-tag
                  :options="dict.type.tj_result_type"
                  :value="scope.row.project.resultType"
                />
              </template>
            </el-table-column>
            <el-table-column prop="isPositive" label="重大阳性">
              <template slot-scope="scope">
                <el-switch
                  v-model="scope.row.isPositive"
                  active-value="1"
                  inactive-value="0"
                  @change="checkboxchange(scope.row)"
                ></el-switch>
              </template>
            </el-table-column>
          </el-table>
          <div style="font-size: 14px; overflow-y: auto; height: 286px">
            <table
              style="
                width: 96%;
                margin: 4px 10px;
                border: 1px solid #dfe6ec;
                border-collapse: collapse;
              "
              cellspacing="4"
            >
              <tr style="border: 1px solid #dfe6ec; border-collapse: collapse">
                <td
                  style="border: 1px solid #dfe6ec; border-collapse: collapse"
                >
                  病种选择:
                </td>
                <td
                  style="border: 1px solid #dfe6ec; border-collapse: collapse"
                >
                  <el-select
                    v-model="value"
                    multiple
                    placeholder="请选择"
                    style="width: 100%; height: 45px"
                    v-if="deptAdviceList"
                    @change="sel"
                    filterable
                  >
                    <el-option
                      v-for="item in deptAdviceList"
                      :key="item.id"
                      :label="item.title"
                      :value="item.id"
                    >
                    </el-option>
                  </el-select>
                </td>
                <td
                  style="border: 1px solid #dfe6ec; border-collapse: collapse"
                >
                  主检医师:
                </td>
                <td
                  style="border: 1px solid #dfe6ec; border-collapse: collapse"
                >
                  <el-select
                    v-model="doctorName"
                    placeholder="请选择"
                    style="width: 100%"
                    v-if="deptAdviceList"
                    @change="selName"
                    filterable
                  >
                    <el-option
                      v-for="item in userList"
                      :key="item.userId"
                      :label="item.nickName"
                      :value="item.userId"
                    >
                    </el-option>
                  </el-select>
                </td>
              </tr>
              <tr style="border: 1px solid #dfe6ec; border-collapse: collapse">
                <td
                  style="border: 1px solid #dfe6ec; border-collapse: collapse"
                >
                  建议:
                </td>
                <td
                  style="border: 1px solid #dfe6ec; border-collapse: collapse"
                  colspan="2"
                >
                  <el-input
                    type="textarea"
                    placeholder="请输入内容"
                    v-model="proParentList.remark"
                    rows="7"
                  >
                  </el-input>
                </td>
              </tr>
            </table>
            <div slot="footer" class="dialog-footers">
              <!-- <el-button type="primary"
          size="mini"
          @click="radioChange"
          v-hasPermi="['system:notice:add']"
          v-show="tjStatus == '1'"
        >会诊申请</el-button> -->
              <el-button
                type="primary"
                @click="determine"
                v-show="tjStatus == '0'"
                >提 交</el-button
              >
            </div>
          </div>
        </el-col>
        <el-col :span="6" style="margin-top: 15px">
          <Historicalreport
            v-show="lishi"
            :reportHistorydata="reportHistorydata"
          ></Historicalreport>
        </el-col>
@@ -756,9 +972,10 @@
      width="1000px"
      :before-close="handleClose1"
    >
       <jianqianwenzhen
          :jianqianwenzhendatas="jianqianwenzhendatas"
        ></jianqianwenzhen>
      <jianqianwenzhen
        :jianqianwenzhendata="jianqianwenzhendata"
        v-if="flags"
      ></jianqianwenzhen>
      <span slot="footer" class="dialog-footer">
        <el-button @click="jianqians = false">取 消</el-button>
      </span>
@@ -792,13 +1009,15 @@
export default {
  dicts: ["sys_user_sex", "sys_yes_no", "tj_result_type", "lj_positive"],
  name: "check",
  components: { Public, Historicalreport,jianqianwenzhen },
  components: { Public, Historicalreport, jianqianwenzhen },
  data() {
    return {
      lishi:false,
      rowes:{},
      jianqianwenzhendatas:[],
      jianqians:false,
      baogaoqian: true,
      baogaohou: false,
      flags: false,
      lishi: false,
      jianqianwenzhendata: [],
      jianqians: false,
      selected: false,
      checkval: false,
      // 遮罩层
@@ -873,6 +1092,7 @@
      deptId: "",
      userId: "",
      nickName: "",
      doctorNames: "",
      date: new Date(new Date().getTime() + 8 * 3600 * 1000)
        .toJSON()
        .substr(0, 19)
@@ -923,6 +1143,12 @@
      listUser(this.addDateRange(this.queryParams, this.dateRange)).then(
        (response) => {
          this.userList = response.rows;
          this.userList.forEach((element) => {
            const userName = this.$store.state.user.name;
            if (userName == element.userName) {
              this.doctorName = element.nickName;
            }
          });
        }
      );
      getInfo().then((response) => {
@@ -935,8 +1161,8 @@
    handleClose() {
      this.$tab.refreshPage();
    },
    handleClose1(){
      this.jianqians = false
    handleClose1() {
      this.jianqians = false;
    },
    // 获取医生
    selName(val) {
@@ -1208,7 +1434,6 @@
    },
    hadleedit(row) {
      console.log(row, 111);
      this.form.hzType = row.hzType;
      this.form.id = row.id;
      // this.form.hzDeptId = row.hzDeptNameList;
@@ -1324,19 +1549,20 @@
      this.Hzlog(this.tableAll.tjNumber);
    },
    historicalreport() {
      this.baogaoqian = false;
      this.baogaohou = true;
      this.loading = true;
      let data = {
        cusId: this.tableAll.cusId,
      };
      reportHistory(data).then((res) => {
        console.log(res);
        this.loading = false;
        if (res.data[0] != null) {
          this.reportHistorydata = res.data;
        }
        if(this.reportHistorydata.length >= 1){
        if (this.reportHistorydata.length >= 1) {
          this.lishi = true;
        }else{
        } else {
          this.lishi = true;
          this.$modal.msgError("暂无历史报告");
        }
@@ -1344,31 +1570,10 @@
    },
    jianqian() {
      let tjNumber = this.rowes.tjNumber;
       getInfoById(tjNumber).then((response) => {
        this.jianqianwenzhendatas = response.data;
        if (this.form.xiyan == null) {
          this.form.xiyan = "1";
        }
        if (this.form.xiyanpinlv == null) {
          this.form.xiyanpinlv = "0";
        }
        if (this.form.xiyanyear == null) {
          this.form.xiyanyear = "0";
        }
        if (this.form.yinjiu == null) {
          this.form.yinjiu = "1";
        }
        if (this.form.yinjiupinlv == null) {
          this.form.yinjiupinlv = "0";
        }
        if (this.form.yinjiuyear == null) {
          this.form.yinjiuyear = "0";
        }
        this.form.tjAskHistorysList = response.data.tjAskHistorysList;
        // this.isdisabled= true
      });
      this.flags = true;
      this.jianqians = true;
      let tjNumber = this.tableAll.tjNumber;
      this.jianqianwenzhendata.push(tjNumber);
    },
    handlecan(row) {
@@ -1452,8 +1657,6 @@
    // 点击详情
    handleClick(row) {
      this.rowes = row;
      console.log(this.rowes);
      this.getDept(row.tjNumber);
      this.loading = true;
      this.drawer = true;
@@ -1536,6 +1739,14 @@
        this.proParentList.sons.forEach((item) => {
          this.doctorName = item.doctorName;
          if (this.doctorName == null) {
            this.userList.forEach((element) => {
              const userName = this.$store.state.user.name;
              if (userName == element.userName) {
                this.doctorName = element.nickName;
              }
            });
          }
          if (item.isReturn == 1) {
            item.isReturn = true;
@@ -1671,6 +1882,14 @@
            }
            this.proParentList.sons.forEach((item) => {
              this.doctorName = item.doctorName;
              if (this.doctorName == null) {
                this.userList.forEach((element) => {
                  const userName = this.$store.state.user.name;
                  if (userName == element.userName) {
                    this.doctorName = element.nickName;
                  }
                });
              }
              if (item.isReturn == 1) {
                item.isReturn = true;
              }
@@ -1725,6 +1944,14 @@
            }
            this.proParentList.sons.forEach((item) => {
              this.doctorName = item.doctorName;
              if (this.doctorName == null) {
                this.userList.forEach((element) => {
                  const userName = this.$store.state.user.name;
                  if (userName == element.userName) {
                    this.doctorName = element.nickName;
                  }
                });
              }
              if (item.isReturn == 1) {
                item.isReturn = true;
              }