11
lkk
2025-01-15 720381cfb95f06c87c0b11fe92531d06c2b02e12
11
3个文件已修改
346 ■■■■ 已修改文件
src/views/hosp/customer/index.vue 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/hosp/hosp/index.vue 330 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/system/tijian/index.vue 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/hosp/customer/index.vue
@@ -255,6 +255,7 @@
          size="mini"
          @click="handleBlacklist"
          :disabled="single"
          :loading="blackloading"
          v-hasPermi="['hosp:order:export']"
          >加入黑名单</el-button
        >
@@ -1013,6 +1014,9 @@
      // 遮罩层
      loading: true,
      blackloading:false,
      isAdding:false,
      // 选中数组
      ids: [],
      // 非单个禁用
@@ -1296,11 +1300,13 @@
    },
    handleBlacklist() {
      this.blackloading = true;
      let data = {
        cusId: this.ids[0],
      };
      addCustomerBlack(data).then((res) => {
        this.$modal.msgSuccess("已加入黑名单");
        this.blackloading = false;
        this.getList();
      });
    },
src/views/hosp/hosp/index.vue
@@ -1,14 +1,33 @@
<template>
  <div class="app-container">
    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
    <el-form
      :model="queryParams"
      ref="queryForm"
      size="small"
      :inline="true"
      v-show="showSearch"
      label-width="68px"
    >
      <el-form-item label="院区名称" prop="hospAreaName">
        <el-input style="width:160px" v-model="queryParams.hospAreaName" placeholder="请输入院区名称" clearable @keyup.enter.native="handleQuery"/>
        <el-input
          style="width: 160px"
          v-model="queryParams.hospAreaName"
          placeholder="请输入院区名称"
          clearable
          @keyup.enter.native="handleQuery"
        />
      </el-form-item>
      <!-- <el-form-item label="机构ID" prop="hospid">
        <el-input v-model="queryParams.hospid" placeholder="请输入机构ID" clearable @keyup.enter.native="handleQuery"/>
      </el-form-item> -->
      <el-form-item label="机构名称" prop="hospName">
        <el-input v-model="queryParams.hospName" style="width:160px" placeholder="请输入机构名称" clearable @keyup.enter.native="handleQuery"/>
        <el-input
          v-model="queryParams.hospName"
          style="width: 160px"
          placeholder="请输入机构名称"
          clearable
          @keyup.enter.native="handleQuery"
        />
      </el-form-item>
      <!-- <el-form-item label="院区编码" prop="code">
        <el-input v-model="queryParams.code" placeholder="请输入院区编码" clearable @keyup.enter.native="handleQuery"/>
@@ -17,15 +36,37 @@
        <el-input v-model="queryParams.areaid" placeholder="请输入区划ID" clearable @keyup.enter.native="handleQuery" style="width:180px"/>
      </el-form-item> -->
      <el-form-item label="区划名称" prop="areaName">
        <el-input v-model="queryParams.areaName" placeholder="请输入区划名称" clearable @keyup.enter.native="handleQuery" style="width:180px"/>
        <el-input
          v-model="queryParams.areaName"
          placeholder="请输入区划名称"
          clearable
          @keyup.enter.native="handleQuery"
          style="width: 180px"
        />
      </el-form-item>
      <el-form-item label="主院区" prop="mainHospArea">
        <el-select v-model="queryParams.mainHospArea" placeholder="是否主院区" clearable style="width:110px">
          <el-option v-for="dict in dict.type.sys_yes_no" :key="dict.value" :label="dict.label" :value="dict.value" />
        <el-select
          v-model="queryParams.mainHospArea"
          placeholder="是否主院区"
          clearable
          style="width: 110px"
        >
          <el-option
            v-for="dict in dict.type.sys_yes_no"
            :key="dict.value"
            :label="dict.label"
            :value="dict.value"
          />
        </el-select>
      </el-form-item>
      <el-form-item label="负责人" prop="principal">
        <el-input v-model="queryParams.principal" placeholder="请输入负责人" clearable @keyup.enter.native="handleQuery" style="width:140px"/>
        <el-input
          v-model="queryParams.principal"
          placeholder="请输入负责人"
          clearable
          @keyup.enter.native="handleQuery"
          style="width: 140px"
        />
      </el-form-item>
      <!-- <el-form-item label="编制床位" prop="plaitBed">
        <el-input v-model="queryParams.plaitBed" placeholder="请输入编制床位" clearable @keyup.enter.native="handleQuery"/>
@@ -37,58 +78,185 @@
        <el-input v-model="queryParams.orderNum" placeholder="请输入排序" clearable @keyup.enter.native="handleQuery"/>
      </el-form-item> -->
      <el-form-item>
        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
        <el-button
          type="primary"
          icon="el-icon-search"
          size="mini"
          @click="handleQuery"
          >搜索</el-button
        >
        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
          >重置</el-button
        >
      </el-form-item>
    </el-form>
    <el-row :gutter="10" class="mb8">
      <el-col :span="1.5">
        <el-button type="primary" icon="el-icon-plus" size="mini" @click="handleAdd" v-hasPermi="['hosp:hosp:add']">新增</el-button>
        <el-button
          type="primary"
          icon="el-icon-plus"
          size="mini"
          @click="handleAdd"
          v-hasPermi="['hosp:hosp:add']"
          >新增</el-button
        >
      </el-col>
      <el-col :span="1.5">
        <el-button type="primary" icon="el-icon-edit" size="mini" :disabled="single" @click="handleUpdate" v-hasPermi="['hosp:hosp:edit']">修改</el-button>
        <el-button
          type="primary"
          icon="el-icon-edit"
          size="mini"
          :disabled="single"
          @click="handleUpdate"
          v-hasPermi="['hosp:hosp:edit']"
          >修改</el-button
        >
      </el-col>
      <el-col :span="1.5">
        <el-button type="primary" icon="el-icon-delete" size="mini" :disabled="multiple" @click="handleDelete" v-hasPermi="['hosp:hosp:remove']">删除</el-button>
        <el-button
          type="primary"
          icon="el-icon-delete"
          size="mini"
          :disabled="multiple"
          @click="handleDelete"
          v-hasPermi="['hosp:hosp:remove']"
          >删除</el-button
        >
      </el-col>
      <el-col :span="1.5">
        <el-button type="primary" icon="el-icon-download" size="mini" @click="handleExport" v-hasPermi="['hosp:hosp:export']">导出</el-button>
        <el-button
          type="primary"
          icon="el-icon-download"
          size="mini"
          @click="handleExport"
          v-hasPermi="['hosp:hosp:export']"
          >导出</el-button
        >
      </el-col>
      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
      <right-toolbar
        :showSearch.sync="showSearch"
        @queryTable="getList"
      ></right-toolbar>
    </el-row>
    <el-table v-loading="loading" :data="hospList" @selection-change="handleSelectionChange" border
    <el-table
      v-loading="loading"
      :data="hospList"
      @selection-change="handleSelectionChange"
      border
    >
      <el-table-column type="selection" width="55" align="center" fixed />
      <el-table-column label="序号" align="center" prop="newID" width="50px" fixed="left"/>
      <el-table-column label="院区名称" align="center" prop="hospAreaName" width="120px" :show-overflow-tooltip="true" fixed="left"/>
      <el-table-column
        label="序号"
        align="center"
        prop="newID"
        width="50px"
        fixed="left"
      />
      <el-table-column
        label="院区名称"
        align="center"
        prop="hospAreaName"
        width="120px"
        :show-overflow-tooltip="true"
        fixed="left"
      />
      <!-- <el-table-column label="医疗机构ID" align="center" prop="hospid" /> -->
      <!-- <el-table-column label="医疗机构名称" align="center" prop="hospName" /> -->
      <el-table-column label="院区编码" align="center" prop="code" :show-overflow-tooltip="true"/>
      <el-table-column label="五笔简码" align="center" prop="wbm" :show-overflow-tooltip="true"/>
      <el-table-column label="拼音简码" align="center" prop="spell" :show-overflow-tooltip="true"/>
      <el-table-column
        label="院区编码"
        align="center"
        prop="code"
        :show-overflow-tooltip="true"
      />
      <el-table-column
        label="五笔简码"
        align="center"
        prop="wbm"
        :show-overflow-tooltip="true"
      />
      <el-table-column
        label="拼音简码"
        align="center"
        prop="spell"
        :show-overflow-tooltip="true"
      />
      <!-- <el-table-column label="行政区划ID" align="center" prop="areaid" /> -->
      <!-- <el-table-column label="行政区划名称" align="center" prop="areaName" /> -->
      <el-table-column label="主院区" align="center" prop="mainHospArea" :show-overflow-tooltip="true">
      <el-table-column
        label="主院区"
        align="center"
        prop="mainHospArea"
        :show-overflow-tooltip="true"
      >
        <template slot-scope="scope">
          <dict-tag :options="dict.type.sys_yes_no" :value="scope.row.mainHospArea"/>
          <dict-tag
            :options="dict.type.sys_yes_no"
            :value="scope.row.mainHospArea"
          />
        </template>
      </el-table-column>
      <el-table-column label="负责人" align="center" prop="principal" :show-overflow-tooltip="true"/>
      <el-table-column label="负责人电话" align="center" prop="phone" :show-overflow-tooltip="true" width="120px"/>
      <el-table-column label="编制床位" align="center" prop="plaitBed" :show-overflow-tooltip="true"/>
      <el-table-column label="开放床位" align="center" prop="openBed" :show-overflow-tooltip="true"/>
      <el-table-column label="成立日期" align="center" prop="buildDate" width="120px" :show-overflow-tooltip="true">
      <el-table-column
        label="负责人"
        align="center"
        prop="principal"
        :show-overflow-tooltip="true"
      />
      <el-table-column
        label="负责人电话"
        align="center"
        prop="phone"
        :show-overflow-tooltip="true"
        width="120px"
      />
      <el-table-column
        label="编制床位"
        align="center"
        prop="plaitBed"
        :show-overflow-tooltip="true"
      />
      <el-table-column
        label="开放床位"
        align="center"
        prop="openBed"
        :show-overflow-tooltip="true"
      />
      <el-table-column
        label="成立日期"
        align="center"
        prop="buildDate"
        width="120px"
        :show-overflow-tooltip="true"
      >
        <template slot-scope="scope">
          <span>{{ parseTime(scope.row.buildDate, "{y}-{m}-{d}") }}</span>
        </template>
      </el-table-column>
      <el-table-column label="备注" align="center" prop="remark" :show-overflow-tooltip="true"/>
      <el-table-column label="排序" align="center" prop="orderNum" width="50px" :show-overflow-tooltip="true"/>
      <el-table-column label="数据状态" align="center" prop="effective" :show-overflow-tooltip="true">
      <el-table-column
        label="备注"
        align="center"
        prop="remark"
        :show-overflow-tooltip="true"
      />
      <el-table-column
        label="排序"
        align="center"
        prop="orderNum"
        width="50px"
        :show-overflow-tooltip="true"
      />
      <el-table-column
        label="数据状态"
        align="center"
        prop="effective"
        :show-overflow-tooltip="true"
      >
        <template slot-scope="scope">
          <dict-tag :options="dict.type.dict_data_status" :value="scope.row.effective"/>
          <dict-tag
            :options="dict.type.dict_data_status"
            :value="scope.row.effective"
          />
        </template>
      </el-table-column>
      <!-- <el-table-column label="创建人姓名" align="center" prop="createByName" /> -->
@@ -214,13 +382,25 @@
          <!-- <el-input v-model="form.areaid" placeholder="请输入行政区划名称" /> -->
        </el-form-item>
        <el-form-item label="负责人" prop="principal">
          <el-input v-model="form.principal" placeholder="请输入负责人" style="width:135px" />
          <el-input
            v-model="form.principal"
            placeholder="请输入负责人"
            style="width: 135px"
          />
        </el-form-item>
        <el-form-item label="院区地址" prop="areaName">
          <el-input v-model="form.areaName" placeholder="请输入院区地址" style="width:510px" />
          <el-input
            v-model="form.areaName"
            placeholder="请输入院区地址"
            style="width: 510px"
          />
        </el-form-item>
        <el-form-item label="负责人电话" prop="phone">
          <el-input v-model="form.phone" placeholder="请输入负责人电话" style="width:135px" />
          <el-input
            v-model="form.phone"
            placeholder="请输入负责人电话"
            style="width: 135px"
          />
        </el-form-item>
        <el-form-item label="成立日期" prop="buildDate">
          <el-date-picker
@@ -240,17 +420,21 @@
            style="width: 200px"
          />
          <el-form-item label="排序" prop="orderNum">
          <el-input
            v-model="form.orderNum"
            placeholder="请输入排序"
            style="width: 145px"
          />
        </el-form-item>
            <el-input
              v-model="form.orderNum"
              placeholder="请输入排序"
              style="width: 145px"
            />
          </el-form-item>
        </el-form-item>
        <el-form-item label="开放床位数" prop="openBed">
          <el-input v-model="form.openBed" placeholder="请输入开放床位数" style="width: 200px" />
          <el-input
            v-model="form.openBed"
            placeholder="请输入开放床位数"
            style="width: 200px"
          />
        </el-form-item>
        <!-- <el-form-item label="数据状态(PT10.00.004)" prop="effective">
          <el-select
            v-model="form.effective"
@@ -314,7 +498,7 @@
  name: "Hosp",
  dicts: ["sys_yes_no", "dict_data_status", "dict_qhdm"],
  data() {
    let checkPhoneNum = (rule, value, callback) => {
    /* let checkPhoneNum = (rule, value, callback) => {
         console.log( value)
      let patter = new RegExp(/^1\s*[3456789]\s*(\d\s*){9}$/);
      if (value == "" && value == undefined && !value) {
@@ -324,7 +508,18 @@
      }else if (!patter.test(value)) {
        return callback('');
      }
    }; */
    let checkPhoneNum = (rule, value, callback) => {
      const pattern = /^1[3-9]\d{9}$/; // 正确的手机号正则
      if (!value) {
        return callback(new Error("请输入负责人电话")); // 必填项校验
      }
      if (!pattern.test(value)) {
        return callback(new Error("请输入正确的手机号")); // 格式校验
      }
      return callback(); // 校验通过
    };
    return {
      // 遮罩层
      loading: true,
@@ -365,31 +560,27 @@
      // 表单参数
      form: {},
      // 表单校验
      rules: {
      /* rules: {
        hospAreaName: [
          { required: true, validator: checkPhoneNum,  trigger: "blur" },
          { required: true, validator: checkPhoneNum, trigger: "blur" },
        ],
        hospid: [
          { required: true, validator: checkPhoneNum,  trigger: "blur" },
        ],
        hospid: [{ required: true, validator: checkPhoneNum, trigger: "blur" }],
        // hospName: [
        //   { required: true, message: "医疗机构名称不能为空", trigger: "blur" },
        // ],
        code: [
          { required: true, validator: checkPhoneNum,  trigger: "blur" },
        ],
        code: [{ required: true, validator: checkPhoneNum, trigger: "blur" }],
        mainHospArea: [
          {
            required: true,
            validator: checkPhoneNum,
            validator: checkPhoneNum,
            trigger: "change",
          },
        ],
        createBy: [
          { required: true, validator: checkPhoneNum,  trigger: "blur" },
          { required: true, validator: checkPhoneNum, trigger: "blur" },
        ],
        createTime: [
          { required: true, validator: checkPhoneNum,  trigger: "blur" },
          { required: true, validator: checkPhoneNum, trigger: "blur" },
        ],
        // orderNum: [
        //   { required: true, message: "排序不能为空", trigger: "blur" },
@@ -397,24 +588,43 @@
        effective: [
          {
            required: true,
            validator: checkPhoneNum,
            validator: checkPhoneNum,
            trigger: "change",
          },
        ],
        createByName: [
          { required: true, validator: checkPhoneNum,  trigger: "blur" },
          { required: true, validator: checkPhoneNum, trigger: "blur" },
        ],
        updateByName: [
          { required: true, validator: checkPhoneNum,  trigger: "blur" },
          { required: true, validator: checkPhoneNum, trigger: "blur" },
        ],
        areaName: [
          { required: true, validator: checkPhoneNum,  trigger: "blur" },
          { required: true, validator: checkPhoneNum, trigger: "blur" },
        ],
        principal: [
          { required: true, validator: checkPhoneNum,  trigger: "blur" },
          { required: true, validator: checkPhoneNum, trigger: "blur" },
        ],
        phone: [
          { required: true, validator: checkPhoneNum,  trigger: "blur" },
          { required: true, validator: checkPhoneNum, trigger: "blur" }, // 使用手机号校验器
        ],
      }, */
      rules: {
        hospAreaName: [
          { required: true, message: "请输入院区名称", trigger: "blur" },
        ],
        code: [{ required: true, message: "请输入院区编码", trigger: "blur" }],
        mainHospArea: [
          { required: true, message: "请选择是否主院区", trigger: "change" },
        ],
        principal: [
          { required: true, message: "请输入负责人", trigger: "blur" },
        ],
        areaName: [
          { required: true, message: "请输入院区地址", trigger: "blur" },
        ],
        phone: [
          { required: true, validator: checkPhoneNum, trigger: "blur" },
        ],
      },
    };
src/views/system/tijian/index.vue
@@ -353,10 +353,6 @@
                ></el-option>
              </el-select>
            </el-form-item>
            <!-- <el-form-item prop="ageUnit">
              </el-form-item> -->
          </el-form>
          <el-form
            :inline="true"
@@ -2335,7 +2331,9 @@
      let _this = this;
      let cusIdcard = this.form.cusIdcard;
      if (cusIdcard) {
        getCusIdcard(cusIdcard).then((response) => {
          _this.top = false;
          if (response.data) {
            this.form = response.data;
            if (this.form.discount === null) {
@@ -2376,11 +2374,11 @@
                    this.list1 = false;
                    this.list2 = true;
                    this.list3 = false;
                    this.top = false;
                    _this.top = false;
                  } else {
                    this.list1 = true;
                    this.TotalPrice = 0;
                    this.top = false;
                    _this.top = false;
                  }
                });
              } else {