qinxianzhangyao
2024-06-27 f68fa3bc5fc0a286c88d82ee6eb95e8ad6be0d16
src/views/hosp/project/index.vue
@@ -293,6 +293,7 @@
      >
        <el-form-item label="主项名称" prop="proParentId">
          <treeselect
            :disabled="proParent"
            v-model="form.proParentId"
            :options="projectOptions"
            :normalizer="normalizer"
@@ -391,15 +392,15 @@
          <el-select
            v-model="form.deptId"
            placeholder="请选择科室名称"
            @change="changeValue"
            @change="changeType"
            filterable
            style="width: 260px"
          >
            <el-option
              v-for="dict in parentNameList"
              :key="dict.deptId"
              :label="dict.deptName"
              :value="dict.deptId"
              v-for="item in parentNameList"
              :key="item.deptId"
              :label="item.deptName"
              :value="item.deptId"
            />
          </el-select>
        </el-form-item>
@@ -817,6 +818,7 @@
  addProject,
  updateProject,
  ProjectTree,
  getlist,
  deptTree,
  deptTree111,
  getAllChildListById,
@@ -920,6 +922,7 @@
        children: "children",
        label: "label",
      },
      proParent: false,
      id: "",
      // 重新渲染表格状态
      refreshTable: true,
@@ -939,6 +942,7 @@
        xmmc: null,
        pym: null,
      },
      treeDate: {},
      queryParam: {
        page: 1,
        pageSize: 10,
@@ -946,7 +950,10 @@
      },
      // 表单参数
      form: {
        proParentId: "",
        deptId: "",
        needReport: "Y",
        proStatus: "0",
        proName: "",
        proPrice: "",
        sfxmId: "",
@@ -1068,10 +1075,12 @@
    handleAdd(row) {
      // this.reset();
      this.loading = true;
      this.proParent = false;
      this.form.proPrice = 0.0;
      this.form.proName = "";
      this.form.proId = null;
      ProjectTree().then((response) => {
      //  ProjectTree
      getlist().then((response) => {
        if (response.code == 200) {
          this.loading = false;
          this.projectOptions = [];
@@ -1079,16 +1088,47 @@
          project.children = this.handleTree(response.data.list, "proId");
          this.key = response.data.key;
          this.projectOptions.push(project);
          if (row) {
            this.form.proParentId = row.proId;
          if (row.proId) {
            for (var i = 0; i < project.children.length; i++) {
              if (project.children[i].proId ===  row.proId) {
                this.form.proParentId = row.proId;
                break;
              }else{
                this.form.proParentId =0
              }
            }
            this.open = true;
          } else if (this.treeDate.id) {
            for (var i = 0; i < project.children.length; i++) {
              if (project.children[i].proId ===  this.treeDate.id) {
                this.form.proParentId = this.treeDate.id;
                break;
              }else{
                this.form.proParentId =0
              }
            }
            this.projectOptions.forEach((item) => {
              item.children.forEach((item1) => {
                if (this.form.proParentId == item1.proId) {
                  this.form.deptId = item1.deptId;
                }
              });
            });
            this.open = true;
          } else {
            this.open = true;
          }
        }
      });
      this.title = "体检项目信息维护";
      this.form.deptId = this.queryParams.deptId;
      if (this.queryParams.deptId) {
        this.form.deptId = this.queryParams.deptId;
      } else {
        this.form.deptId = null;
      }
      // this.form.proId = this.queryParams.proId;
      this.form.proCheckMethod = "N";
@@ -1125,6 +1165,9 @@
        this.$message.error("请选择主项名称");
      }
    },
    changeType() {
      this.$forceUpdate();
    },
    obtain(vals) {
      if (this.projectOptions) {
@@ -1134,6 +1177,7 @@
        this.showPrise = true;
        this.showRentPrise = false;
      } else {
        this.form.deptId = this.selectList.deptId;
        this.showPrise = false;
        this.showRentPrise = true;
      }
@@ -1233,7 +1277,8 @@
    },
    // 节点单击事件
    handleNodeClick(date) {
      if (date.$treeNodeId == 3) {
      this.treeDate = date;
      if (date.qf == "0") {
        this.xiugais = true;
      } else {
        this.xiugais = false;
@@ -1459,6 +1504,20 @@
    handleUpdate1() {
      this.open = true;
      this.form = this.xiugaiList;
      this.proParent = true;
      // if(){
      //   this.proParent = true
      // }
      getlist().then((response) => {
        if (response.code == 200) {
          this.loading = false;
          this.projectOptions = [];
          const project = { proId: 0, proName: "主类目", children: [] };
          project.children = this.handleTree(response.data.list, "proId");
          this.key = response.data.key;
          this.projectOptions.push(project);
        }
      });
    },
    /** 修改按钮操作 */
    handleUpdate(row) {
@@ -1466,6 +1525,7 @@
      this.getData();
      // this.form = row;
      const proId = row.proId || this.ids;
      this.proParent = false;
      getProject(proId).then((response) => {
        this.form = response.data;
        if (this.form.proParentId === "0") {
@@ -1475,7 +1535,7 @@
          this.showPrise = false;
          this.showRentPrise = true;
        }
        this.form.deptId = Number(this.form.deptId);
        // this.form.deptId = Number(this.form.deptId);
        if (this.form.proStandard === 0) {
          this.showPrise = true;
          this.showRentPrise = false;
@@ -1518,7 +1578,16 @@
            }
          });
        }
        getlist().then((response) => {
          if (response.code == 200) {
            this.loading = false;
            this.projectOptions = [];
            const project = { proId: 0, proName: "主类目", children: [] };
            project.children = this.handleTree(response.data.list, "proId");
            this.key = response.data.key;
            this.projectOptions.push(project);
          }
        });
        this.open = true;
        this.title = "体检项目信息维护";
      });
@@ -1594,8 +1663,13 @@
              this.form.lisXmbm = this.form.lisXmbm;
              updateProject(this.form).then((response) => {
                this.$modal.msgSuccess("修改成功");
                this.cancel();
                this.getList();
                if (this.proParent == true) {
                  this.getDeptTree();
                  this.cancel();
                } else {
                  this.cancel();
                  this.getList();
                }
              });
            } else {
              if (this.form.proParentId === 0) {
@@ -1658,8 +1732,13 @@
              this.form.lisXmbm = this.form.lisXmbm;
              updateProject(this.form).then((response) => {
                this.$modal.msgSuccess("修改成功");
                this.cancel();
                this.getList();
                if (this.proParent == true) {
                  this.getDeptTree();
                  this.cancel();
                } else {
                  this.cancel();
                  this.getList();
                }
              });
            } else {
              if (this.form.proParentId === 0) {
@@ -1755,11 +1834,13 @@
  background-color: #e5f3ff !important;
  color: #333 !important;
}
.el-scrollbar__bar.is-vertical {
  opacity: 1;
  padding-right: 5px;
  width: 7px;
}
.el-scrollbar__wrap {
  overflow-x: hidden;
}