WXL
2025-04-27 400d13ddc80a7560860939f65b318b2fa78f9004
测试完成
已修改8个文件
320 ■■■■■ 文件已修改
src/api/patient/homepage.js 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/followvisit/discharge/index.vue 81 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/followvisit/record/detailpage/index.vue 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/patient/follow/index.vue 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/patient/patient/behospitalized.vue 35 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/patient/patient/hospital.vue 137 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/patient/patient/index.vue 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/patient/patient/outpatient.vue 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/patient/homepage.js
@@ -17,6 +17,14 @@
    data: data
  })
};
// 用户信息查询患者列表
export function patarchivelist(data) {
  return request({
    url: '/smartor/patarchive/list',
    method: 'post',
    data: data
  })
};
// 修改患者档案
export function alterpatient(data) {
src/views/followvisit/discharge/index.vue
@@ -131,16 +131,16 @@
          </el-select>
        </el-form-item>
        <el-form-item label="排序方式" prop="status">
   <el-select v-model="topqueryParams.sort" placeholder="请选择">
   <el-option
    v-for="item in topicoptionssort"
    :key="item.value"
    :label="item.label"
    :value="item.value"
   >
   </el-option>
   </el-select>
  </el-form-item>
          <el-select v-model="topqueryParams.sort" placeholder="请选择">
            <el-option
              v-for="item in topicoptionssort"
              :key="item.value"
              :label="item.label"
              :value="item.value"
            >
            </el-option>
          </el-select>
        </el-form-item>
        <el-form-item>
          <el-button
@@ -249,12 +249,11 @@
          prop="sendname"
        >
          <template slot-scope="scope">
            <el-button
              size="medium"
              type="text"
              @click="
                gettoken360(scope.row.sfzh,scope.row.drcode,scope.row.drname)
                gettoken360(scope.row.sfzh, scope.row.drcode, scope.row.drname)
              "
              ><span class="button-textsc">{{
                scope.row.sendname
@@ -409,7 +408,6 @@
          prop="nurseName"
        />
        <!-- <el-table-column
          label="病历号"
          align="center"
@@ -521,8 +519,8 @@
              <el-button
                size="medium"
                type="text"
                v-if="scope.row.isVisitAgain!=2"
                @click="followupvisit(scope.row)"
                v-hasPermi="['system:user:edit']"
                ><span class="button-bb"
                  ><i class="el-icon-s-promotion"></i>再次随访</span
                ></el-button
@@ -789,12 +787,9 @@
  getTaskservelist,
  buidegetTasklist,
  addserviceSubtask,
  query360PatInfo
  query360PatInfo,
} from "@/api/AiCentre/index";
import {
  alterpatient,
  particularpatient,
} from "@/api/patient/homepage";
import { alterpatient, particularpatient } from "@/api/patient/homepage";
import Treeselect from "@riophae/vue-treeselect";
import store from "@/store";
import "@riophae/vue-treeselect/dist/vue-treeselect.css";
@@ -924,7 +919,7 @@
        qystatus: "",
        btstatus: "",
      },
      topicoptionssort:[
      topicoptionssort: [
        {
          value: 0,
          label: "出院时间(正序)",
@@ -1024,7 +1019,7 @@
        },
        YeWuXX: {
          BingRenXX: {
            ZhengJianHM: '',
            ZhengJianHM: "",
            ZhengJianLXDM: "01",
            ZhengJianLXMC: "居民身份证",
            ZuZhiJGID: localStorage.getItem("orgid"),
@@ -1041,7 +1036,7 @@
          },
        },
      },
      amendtag:false,
      amendtag: false,
      errtype: "",
      leavehospitaldistrictcode: "",
      serviceState: [],
@@ -1149,9 +1144,9 @@
        this.total = response.total;
      });
    },
    affiliation(){
      this.topqueryParams.drcode=store.getters.hisUserId;
      this.topqueryParams.nurseId=store.getters.hisUserId;
    affiliation() {
      this.topqueryParams.drcode = store.getters.hisUserId;
      this.topqueryParams.nurseId = store.getters.hisUserId;
      this.getList(1);
    },
    buidegetTasklist(type) {
@@ -1277,14 +1272,14 @@
        this.topqueryParams.leavehospitaldistrictcodes =
          store.getters.belongWards.map((obj) => obj.districtCode);
      }
      console.log('1');
      console.log("1");
      this.topqueryParams.pageNum = 1;
      this.topqueryParams.startOutHospTime = this.dateRange[0];
      this.topqueryParams.endOutHospTime = this.dateRange[1];
      this.topqueryParams.startSendDateTime = this.dateRangefs[0];
      this.topqueryParams.endSendDateTime = this.dateRangefs[1];
      console.log('2');
      console.log("2");
      this.getList(refresh);
    },
    // 患者范围处理
@@ -1309,7 +1304,7 @@
    resetQuery() {
      this.dateRange = [];
      this.dateRangefs = [];
      this.topqueryParams = {
      (this.topqueryParams = {
        pageNum: 1,
        pageSize: 10,
        sendstate: 2,
@@ -1319,8 +1314,8 @@
        scopetype: [],
        leaveldeptcodes: [],
        leavehospitaldistrictcodes: [],
      },
      this.handleQuery(1);
      }),
        this.handleQuery(1);
    },
    // 多选框选中数据
    handleSelectionChange(selection) {
@@ -1359,21 +1354,20 @@
      });
    },
    //患者360跳转
    gettoken360(sfzh,drcode,drname) {
    gettoken360(sfzh, drcode, drname) {
      this.postData.YeWuXX.BingRenXX.ZhengJianHM = sfzh;
      if (this.postData.XiaoXiTou.ZuHuMC=='丽水市中医院') {
        this.postData.YeWuXX.YongHuXX.YongHuID = '1400398571877961728';
        this.postData.YeWuXX.YongHuXX.YongHuXM = 'LSZYY';
      if (this.postData.XiaoXiTou.ZuHuMC == "丽水市中医院") {
        this.postData.YeWuXX.YongHuXX.YongHuID = "1400398571877961728";
        this.postData.YeWuXX.YongHuXX.YongHuXM = "LSZYY";
      }
      query360PatInfo(this.postData).then((res) => {
        if (res.data.url) {
           window.open(res.data.url, '_blank');
          window.open(res.data.url, "_blank");
          // this.linkUrl = res.data.url;
        }else{
        } else {
          this.$modal.msgWarning("360查询无结果");
        }
      });
    },
    /** 重置密码按钮操作 */
@@ -1571,6 +1565,8 @@
    setupsubtask() {
      this.$refs["zcform"].validate((valid) => {
        if (valid) {
          this.zcform.remark =
            this.zcform.remark + "【" + this.getCurrentTime() + "】";
          let form = structuredClone(this.zcform);
          form.longSendTime = this.formatTime(form.date1);
          form.finishtime = "";
@@ -1595,6 +1591,17 @@
        }
      });
    },
    getCurrentTime() {
      const now = new Date();
      const year = now.getFullYear();
      const month = String(now.getMonth() + 1).padStart(2, "0");
      const day = String(now.getDate()).padStart(2, "0");
      const hours = String(now.getHours()).padStart(2, "0");
      const minutes = String(now.getMinutes()).padStart(2, "0");
      const seconds = String(now.getSeconds()).padStart(2, "0");
      return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
    },
  },
};
</script>
src/views/followvisit/record/detailpage/index.vue
@@ -243,7 +243,7 @@
              <el-button plain type="info" @click="Editsingletaskson('5')"
                >中心随访</el-button
              >
              <el-button type="primary" round @click="sendAgain()"
              <el-button type="primary" round v-if="this.form.isVisitAgain!=2" @click="sendAgain()"
                >再次随访</el-button
              >
            </div>
@@ -1019,6 +1019,8 @@
    setupsubtask() {
      this.$refs["zcform"].validate((valid) => {
        if (valid) {
          this.form.remark =
            this.form.remark + "【" + this.getCurrentTime() + "】";
          let form = structuredClone(this.form);
          form.longSendTime = this.formatTime(form.date1);
          form.finishtime = "";
@@ -1043,6 +1045,17 @@
        }
      });
    },
    getCurrentTime() {
      const now = new Date();
      const year = now.getFullYear();
      const month = String(now.getMonth() + 1).padStart(2, "0");
      const day = String(now.getDate()).padStart(2, "0");
      const hours = String(now.getHours()).padStart(2, "0");
      const minutes = String(now.getMinutes()).padStart(2, "0");
      const seconds = String(now.getSeconds()).padStart(2, "0");
      return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
    },
    updateScore(a, b, c) {
      console.log(a);
      console.log(b);
src/views/patient/follow/index.vue
@@ -221,7 +221,7 @@
import { delUser } from "@/api/system/user";
import {
  messagelistpatient,
  patarchivelist,
  alterpatient,
  addfiltration,
  particularpatient,
@@ -369,8 +369,7 @@
    /** 查询患者列表 */
    getList() {
      this.loading = true;
      messagelistpatient(this.queryParams).then((response) => {
      patarchivelist(this.queryParams).then((response) => {
        console.log(response);
        this.userList = response.rows;
        this.total = response.total;
src/views/patient/patient/behospitalized.vue
@@ -168,7 +168,13 @@
              <el-button
                size="medium"
                type="text"
                @click="gettoken360(scope.row.idcardno,scope.row.drcode,scope.row.drname)"
                @click="
                  gettoken360(
                    scope.row.idcardno,
                    scope.row.drcode,
                    scope.row.drname
                  )
                "
                ><span class="button-textsc">{{
                  scope.row.patname
                }}</span></el-button
@@ -706,11 +712,11 @@
      this.handleQuery();
    },
    //患者360跳转
    gettoken360(sfzh,drcode,drname) {
    gettoken360(sfzh, drcode, drname) {
      this.postData.YeWuXX.BingRenXX.ZhengJianHM = sfzh;
      if (this.postData.XiaoXiTou.ZuHuMC=='丽水市中医院') {
        this.postData.YeWuXX.YongHuXX.YongHuID = '1400398571877961728';
        this.postData.YeWuXX.YongHuXX.YongHuXM = 'LSZYY';
      if (this.postData.XiaoXiTou.ZuHuMC == "丽水市中医院") {
        this.postData.YeWuXX.YongHuXX.YongHuID = "1400398571877961728";
        this.postData.YeWuXX.YongHuXX.YongHuXM = "LSZYY";
      }
      query360PatInfo(this.postData).then((res) => {
        if (res.data.url) {
@@ -742,8 +748,14 @@
    },
    /** 搜索按钮操作 */
    handleQuery() {
      this.queryParams.startInHospTime = this.dateRange[0];
      this.queryParams.endInHospTime = this.dateRange[1];
      if (this.dateRange) {
        this.queryParams.startInHospTime = this.dateRange[0];
        this.queryParams.endInHospTime = this.dateRange[1];
      }else{
        this.queryParams.startInHospTime = '';
        this.queryParams.endInHospTime = '';
      }
      this.queryParams.pageNum = 1;
      this.getList();
    },
@@ -751,12 +763,15 @@
    resetQuery() {
      this.dateRange = [];
      this.resetForm("queryForm");
      (this.queryParams = {
      this.queryParams = {
        pageNum: 1,
        pageSize: 10,
        cry: 0,
        searchscope: 2,
      }),
        searchscope: 3,
        scopetype: [],
        leaveldeptcodes: [],
        leavehospitaldistrictcodes: [],
      };
        this.handleQuery();
    },
    // 多选框选中数据
src/views/patient/patient/hospital.vue
@@ -46,26 +46,25 @@
            />
          </el-form-item>
          <el-form-item label="患者范围" prop="status">
          <el-cascader
            v-model="queryParams.scopetype"
            placeholder="默认全部"
            :options="sourcetype"
            :props="{ expandTrigger: 'hover' }"
            @change="handleChange"
          ></el-cascader>
        </el-form-item>
            <el-cascader
              v-model="queryParams.scopetype"
              placeholder="默认全部"
              :options="sourcetype"
              :props="{ expandTrigger: 'hover' }"
              @change="handleChange"
            ></el-cascader>
          </el-form-item>
          <el-form-item label=" 出院日期 " prop="createTime">
            <el-date-picker
            v-model="dateRange"
            style="width: 240px"
            value-format="yyyy-MM-dd"
            type="daterange"
            range-separator="-"
            start-placeholder="开始日期"
            end-placeholder="结束日期"
          ></el-date-picker>
              v-model="dateRange"
              style="width: 240px"
              value-format="yyyy-MM-dd"
              type="daterange"
              range-separator="-"
              start-placeholder="开始日期"
              end-placeholder="结束日期"
            ></el-date-picker>
          </el-form-item>
          <el-row>
@@ -129,7 +128,7 @@
        <el-table
          v-loading="loading"
          :data="userList"
           height="808"
          height="808"
          @selection-change="handleSelectionChange"
        >
          <el-table-column type="selection" width="50" align="center" />
@@ -157,7 +156,7 @@
            align="center"
            key="inhospno"
            prop="inhospno"
          width="120"
            width="120"
          />
          <!-- <el-table-column
            label="姓名"
@@ -167,26 +166,37 @@
            prop="patname"
          /> -->
          <el-table-column
              fixed
                label="姓名"
          width="100"
                align="center"
                key="patname"
                prop="patname"
            fixed
            label="姓名"
            width="100"
            align="center"
            key="patname"
            prop="patname"
          >
            <template slot-scope="scope">
              <el-button
                size="medium"
                type="text"
                @click="
                  gettoken360(
                    scope.row.idcardno,
                    scope.row.drcode,
                    scope.row.drname
                  )
                "
                ><span class="button-textsc">{{
                  scope.row.patname
                }}</span></el-button
              >
                <template slot-scope="scope">
                  <el-button
                    size="medium"
                    type="text"
                    @click="gettoken360(scope.row.idcardno,scope.row.drcode,scope.row.drname)"
                    ><span class="button-textsc"
                      >{{scope.row.patname}}</span
                    ></el-button
                  >
                </template>
              </el-table-column>
          <el-table-column label="性别"width="100" align="center" key="sex" prop="sex">
            </template>
          </el-table-column>
          <el-table-column
            label="性别"
            width="100"
            align="center"
            key="sex"
            prop="sex"
          >
            <template slot-scope="scope">
              <span>{{ scope.row.sex == 1 ? "男" : "女" }}</span>
            </template>
@@ -280,7 +290,6 @@
                    query: { id: scope.row.patid },
                  })
                "
                ><span class="button-textsc"
                  ><i class="el-icon-zoom-in"></i>查看</span
                ></el-button
@@ -348,9 +357,10 @@
      <div class="uploading" v-else-if="dractive == 2">
        <el-table :data="uploadingData" style="width: 100%">
          <el-table-column prop="serial" label="序号"> </el-table-column>
          <el-table-column prop="name" label="姓名"
          width="100"> </el-table-column>
          <el-table-column prop="sex" label="性别"width="100"> </el-table-column>
          <el-table-column prop="name" label="姓名" width="100">
          </el-table-column>
          <el-table-column prop="sex" label="性别" width="100">
          </el-table-column>
          <el-table-column prop="certificate" label="证件类型">
          </el-table-column>
          <el-table-column prop="certificatenum" label="证件号码">
@@ -394,10 +404,7 @@
<script>
import { delUser } from "@/api/system/user";
import {
  listpatient,
} from "@/api/patient/record";
import { listpatient } from "@/api/patient/record";
import {
  messagelistpatient,
  alterpatient,
@@ -572,15 +579,13 @@
        pageNum: 1,
        pageSize: 10,
        cry: 1,
        searchscope:3,
        searchscope: 3,
        scopetype: [],
        leaveldeptcodes: [],
        leavehospitaldistrictcodes: [],
      },
      // 表单校验
      rules: {
      },
      rules: {},
    };
  },
  watch: {
@@ -631,11 +636,11 @@
      });
    },
    //患者360跳转
    gettoken360(sfzh,drcode,drname) {
    gettoken360(sfzh, drcode, drname) {
      this.postData.YeWuXX.BingRenXX.ZhengJianHM = sfzh;
      if (this.postData.XiaoXiTou.ZuHuMC=='丽水市中医院') {
        this.postData.YeWuXX.YongHuXX.YongHuID = '1400398571877961728';
        this.postData.YeWuXX.YongHuXX.YongHuXM = 'LSZYY';
      if (this.postData.XiaoXiTou.ZuHuMC == "丽水市中医院") {
        this.postData.YeWuXX.YongHuXX.YongHuID = "1400398571877961728";
        this.postData.YeWuXX.YongHuXX.YongHuXM = "LSZYY";
      }
      query360PatInfo(this.postData).then((res) => {
        if (res.data.url) {
@@ -660,8 +665,8 @@
        this.optionstag = response.rows;
      });
    },
       // 患者范围处理
       handleChange(value) {
    // 患者范围处理
    handleChange(value) {
      let type = value[0];
      let code = value.slice(-1)[0];
      this.queryParams.leavehospitaldistrictcodes = [];
@@ -721,8 +726,13 @@
    },
    /** 搜索按钮操作 */
    handleQuery() {
      this.queryParams.startOutHospTime = this.dateRange[0];
      this.queryParams.endOutHospTime = this.dateRange[1];
      if (this.dateRange) {
        this.queryParams.startOutHospTime = this.dateRange[0];
        this.queryParams.endOutHospTime = this.dateRange[1];
      } else {
        this.queryParams.startOutHospTime = "";
        this.queryParams.endOutHospTime = "";
      }
      this.queryParams.pageNum = 1;
      this.getList();
    },
@@ -730,13 +740,16 @@
    resetQuery() {
      this.dateRange = [];
      this.resetForm("queryForm");
      this.queryParams={
      this.queryParams = {
        pageNum: 1,
        pageSize: 10,
        cry: 1,
        searchscope:2,
      },
      this.handleQuery();
        searchscope: 3,
        scopetype: [],
        leaveldeptcodes: [],
        leavehospitaldistrictcodes: [],
      };
        this.handleQuery();
    },
    // 多选框选中数据
    handleSelectionChange(selection) {
src/views/patient/patient/index.vue
@@ -1257,18 +1257,16 @@
    /** 重置按钮操作 */
    resetQuery() {
      this.dateRange = [];
      (this.queryParams = {
      this.queryParams = {
        pageNum: 1,
        allhosp: "1",
        pageSize: 10,
        notrequiredFlag: 0,
        searchscope: 2,
        idcardno: undefined,
        name: undefined,
        status: undefined,
        tagIds: undefined,
        telcode: undefined,
      }),
        scopetype: [],
        leaveldeptcodes: [],
        leavehospitaldistrictcodes: [],
      };
        this.handleQuery();
    },
    // 多选框选中数据
src/views/patient/patient/outpatient.vue
@@ -20,10 +20,10 @@
              @keyup.enter.native="handleQuery"
            />
          </el-form-item>
          <el-form-item label="门诊号" prop="outhospno">
          <el-form-item label="病案号" prop="outhospno">
            <el-input
              v-model="queryParams.outhospno"
              placeholder="请输入门诊号"
              placeholder="请输入病案号"
              clearable
              style="width: 250px"
              @keyup.enter.native="handleQuery"
@@ -177,14 +177,14 @@
              <span>{{ formatTime(scope.row.admitdate) }}</span>
            </template>
          </el-table-column>
          <el-table-column
          <!-- <el-table-column
            label="病案号"
            align="center"
            key="patno"
            prop="patno"
          />
          /> -->
          <el-table-column
            label="门诊号"
            label="病案号"
            align="center"
            key="outhospno"
            prop="outhospno"
@@ -649,8 +649,13 @@
        this.queryParams.leavehospitaldistrictcodes =
          store.getters.belongWards.map((obj) => obj.districtCode);
      }
      this.queryParams.beginTime = this.dateRange[0];
      this.queryParams.endTime = this.dateRange[1];
      if (this.dateRange) {
        this.queryParams.beginTime = this.dateRange[0];
        this.queryParams.endTime = this.dateRange[1];
      }else{
        this.queryParams.beginTime = '';
        this.queryParams.endTime = '';
      }
      listPatouthosp(this.queryParams).then((response) => {
        this.userList = response.rows;
        this.total = response.total;
@@ -755,10 +760,14 @@
    resetQuery() {
      this.dateRange = [];
      this.resetForm("queryForm");
      (this.queryParams = {
      this.queryParams = {
        pageNum: 1,
        pageSize: 10,
      }),
        searchscope: 3,
        scopetype: [],
        leaveldeptcodes: [],
        leavehospitaldistrictcodes: [],
      };
        this.handleQuery();
    },
    // 多选框选中数据