element编辑回显的时候,第二个的下拉框数据,需要根据第一个

2022-10-20  本文已影响0人  jesse28

1.编辑回显的时候,第二个的下拉框数据,需要根据第一个下拉框选中的值去调用接口,这个时候就要考虑调用接口顺序的问题,异步的问题。

  created() {
    this.init();
    // 获取类别列表
    this.getTypeIdArr();
    if (this.id) {
      this.getInfo();//
    }
  },
 async getInfo() {
      this.editArr = await this.handleNewInfo();//调用查看接口----先拿到考核部门id,然后在用这个id去调用考核人员数组
      await this.handleNewUser(); //获取考核人员
      await this.handleNewProject(); //获取考核项目
    },
    handleNewInfo() {
      return new Promise((resolve, reject) => {
        scAssessmentAppraisalFindApi({ id: this.id }).then((res) => {
          this.ruleForm.assessmentSubject = res.data.assessmentSubject;//考核主体
          this.ruleForm.orgId = res.data.orgId;//考核部门id
          this.ruleForm.orgName = res.data.orgName;//考核部门名称
          this.ruleForm.typeId = res.data.typeId//考核类别id
          this.ruleForm.typeName = res.data.typeName//考核类别名称
          this.ruleForm.reviewRate = res.data.reviewRate//考核频次
          this.ruleForm.userName = res.data.userName//考核人员
          this.ruleForm.month = res.data.month//月份
          this.ruleForm.year = res.data.year//年份
          this.ruleForm.attachment = res.data.attachment//附件
          this.ruleForm.tableData = JSON.parse(res.data.detailJson)//表格
          this.ruleForm.remark = res.data.remark;
          resolve(res.data);
        });
      });
    },
    handleNewUser() {
      return new Promise((resolve, reject) => {
        sysAccountQueryUserList({
          orgId: this.ruleForm.orgId,
          pageNum: 1,
          pageSize: 9999999,
          personnelType: "",
        }).then((res) => {
          this.userIdArr = (res && res.data && res.data.list) || [];
          this.ruleForm.userId = this.editArr.userId.split(","); //赋值考核人员
          
          resolve();
        });
      });
    },
上一篇下一篇

猜你喜欢

热点阅读