lkk
2024-12-16 c7b33db117fd2893d7d1c93bf5d46e87d33e44d0
src/views/system/dept/index.vue
@@ -227,17 +227,18 @@
        label-width="110px"
        :inline="true"
      >
        <el-form-item label="上级科室" prop="parentName">
        <el-form-item label="上级科室" prop="parentId">
          <el-select
            v-model="form.parentId"
            placeholder="请选择上级科室"
            style="width: 200px"
            clearable
            filterable
            @change="$forceUpdate()"
          >
            <el-option
              v-for="dict in deptOption"
              :key="dict.label"
              :key="dict.id"
              :label="dict.label"
              :value="dict.id"
            ></el-option>
@@ -252,12 +253,12 @@
            placeholder="请输入科室编码"
          />
        </el-form-item>
        <el-form-item label="显示顺序" prop="orderNum">
        <el-form-item label="显示顺序" prop="orderNum" style="margin-top:20px">
          <el-input v-model="form.orderNum" placeholder="请输入显示顺序" />
        </el-form-item>
        <el-form-item label="所属医院" prop="hospName">
        <el-form-item label="所属医院" prop="hospId" style="margin-top:20px">
          <el-select
            v-model="form.hospName"
            v-model="form.hospId"
            placeholder="请选择所属医院"
            clearable
            filterable
@@ -267,17 +268,17 @@
              v-for="dict in hospList"
              :key="dict.hospAreaName"
              :label="dict.hospAreaName"
              :value="dict.hospAreaName"
              :value="dict.hospAreaId"
            />
          </el-select>
        </el-form-item>
        <el-form-item label="负责人" prop="leader">
        <el-form-item label="负责人" prop="leader" style="margin-top:20px">
          <el-input v-model="form.leader" placeholder="请输入负责人" />
        </el-form-item>
        <el-form-item label="联系电话" prop="phone">
        <el-form-item label="联系电话" prop="phone" style="margin-top:20px">
          <el-input v-model="form.phone" placeholder="请输入联系电话" />
        </el-form-item>
        <el-form-item label="邮箱" prop="email">
        <el-form-item label="邮箱" prop="email" style="margin-top:20px">
          <el-input v-model="form.email" placeholder="请输入邮箱" />
        </el-form-item>
        <!-- <el-form-item label="科室英文名称" prop="departmentEnName">
@@ -336,13 +337,13 @@
          <el-date-picker clearable v-model="form.buildDate" type="date" value-format="yyyy-MM-dd" placeholder="请选择建立日期" style="width: 200px">
          </el-date-picker>
        </el-form-item> -->
        <el-form-item label="标准科室" prop="standardDeptCode">
        <el-form-item label="标准科室" prop="standardDeptCode" style="margin-top:20px">
          <el-input
            v-model="form.standardDeptCode"
            placeholder="请输入标准科室"
          />
        </el-form-item>
        <el-form-item label="科室类型" prop="deptTypeCode">
        <el-form-item label="科室类型" prop="parentOrgType">
          <el-select
            v-model="form.parentOrgType"
            placeholder="请选择科室类型"
@@ -421,7 +422,6 @@
  components: { Treeselect },
  data() {
    let checkPhoneNum = (rule, value, callback) => {
      console.log(value);
      let patter = new RegExp(/^1\s*[3456789]\s*(\d\s*){9}$/);
      if (value == "" && value == undefined && !value) {
        return callback("");
@@ -467,19 +467,19 @@
      // 表单校验
      rules: {
        parentId: [
          { required: true, validator: checkPhoneNum, trigger: "blur" },
          { required: true,  validator: checkPhoneNum, trigger: "blur" },
        ],
        deptName: [
          { required: true, validator: checkPhoneNum, trigger: "blur" },
          { required: true, message: "科室名称不能为空", validator: checkPhoneNum, trigger: "blur" },
        ],
        orderNum: [
          { required: true, validator: checkPhoneNum, trigger: "blur" },
          { required: true, message: "显示顺序不能为空", validator: checkPhoneNum, trigger: "blur" },
        ],
        departmentCode: [
          { required: true, validator: checkPhoneNum, trigger: "blur" },
          { required: true, message: "科室编码不能为空", validator: checkPhoneNum, trigger: "blur" },
        ],
        hospName: [
          { required: true, validator: checkPhoneNum, trigger: "blur" },
        hospId: [
          { required: true, message: "所属医院不能为空", validator: checkPhoneNum, trigger: "blur" },
        ],
        // email: [
        //   {
@@ -656,8 +656,13 @@
    },
    /** 修改按钮操作 */
    handleUpdate(row) {
      this.reset();
      // console.log(11111)
      // this.reset();
      this.form = row;
      this.form.parentId = this.form.parentId.toString()
      if(this.form.parentId == 0){
        this.deptOption.push({ "id": 0, "label": "主类目", });
      }
      this.open = true;
      this.title = "科室信息维护  ";
      // getDept(row.deptId).then((response) => {
@@ -682,11 +687,17 @@
      this.$refs["form"].validate((valid) => {
        if (valid) {
          if (this.form.deptId != undefined) {
            updateDept(this.form).then((response) => {
            if(this.form.hospId ){
              // console.log(this.form);
              updateDept(this.form).then((response) => {
              this.$modal.msgSuccess("修改成功");
              this.open = false;
              this.getList();
            });
            }else{
              this.$modal.msgError("请填写带星号");
            }
          } else {
            this.hospList.forEach((element) => {
              if (this.form.hospName == element.hospAreaName) {