wanghong
2023-12-21 ec3add985f600fe56a7232484bbe89a11b73c23b
Source/UBCS-WEB/src/views/work/process/leave/handle.vue
@@ -5,19 +5,14 @@
        <el-card class="dialogwarp_tab_card">
          <el-tabs v-model="activeName" @tab-click="handleClick">
            <el-tab-pane label="业务数据信息" name="first">
              <businesswork :oid="oid" :templateId="templateId"></businesswork>
              <businesswork ref="businesswork" :ids="ids" :templateId="templateId" :taskId="taskId" :modelKey="modelKey" :codeClassifyOid="codeClassifyOid" :stageAttrs="stageAttrs"></businesswork>
            </el-tab-pane>
            <el-tab-pane label="流程跟踪" name="second">
              <avue-crud :data="flowList" :option="option" ref="crud">
              </avue-crud>
              <el-card shadow="hover">
                <div slot="header">
                  <span>流程跟踪</span>
                </div>
                <el-row class="row-bg">
                  <flow-design :is-display="true" :process-instance-id="processInstanceId"></flow-design>
                </el-row>
              </el-card>
              <el-row class="row-bg" style="margin-top: 20px">
                <flow-design :is-display="true" :process-instance-id="processInstanceId"></flow-design>
              </el-row>
            </el-tab-pane>
          </el-tabs>
        </el-card>
@@ -58,7 +53,7 @@
            <el-button v-if="!isRefuse" type="primary" size="mini" @click="handelAgree">同意</el-button>
             <el-button v-if="!isAgree" type="primary" size="mini" @click="handelRefuse">不同意</el-button> -->
            <el-button type="primary" size="mini" @click="handelExecute(item)" v-for="(item, index) in btnList"
              :key="index">{{ item.toName === '同意' ? item.toName : `${item.toName}到${item.taskName}` }}</el-button>
              :key="index">{{ item.toName }}</el-button>
            <!-- <el-button v-if="isRefuse" type="primary" size="mini" @click="handelExecute">执行</el-button> -->
          </div>
        </el-card>
@@ -75,11 +70,14 @@
export default {
  data() {
    return {
      oid:'',
      ids:[],
      templateId:'',
      taskId: '',
      modelKey:'',
      codeClassifyOid:'',
      businessId: '',
      processInstanceId: '',
      stageAttrs:[],
      src: '',
      flowList: [],
      btnList: [],
@@ -134,17 +132,20 @@
      this.apiGetBtnTask(this.processInstanceId)
    },
    formatterPass(row, value, column) {
      console.log('value',value)
      return value?'同意':'驳回'
    },
    async apiGetBtnTask(id) {
      const response = await getBtnTask({ processInstanceId: id })
      const res = response.data
      this.oid=res.data.variables.ids;
      this.ids=res.data.variables.ids;
      this.templateId=res.data.variables.templateId;
      this.modelKey=res.data.variables.modelKey;
      this.codeClassifyOid=res.data.variables.codeClassifyOid;
      this.title=res.data.variables.processName;
      this.stageAttrs=res.data.stageAttrs;
      //this.taskId=res.data.variables.taskId;
      if (res.success) {
        console.log(res)
        this.btnList = res.data.toTasks
        this.btnList = res.data.toTasks;
      }
    },
    async apiExamineTask(param) {
@@ -159,7 +160,9 @@
      }
    },
    handelExecute(event) {
      console.log(event)
      if(this.$refs.businesswork.hasEditor){
        this.$refs.businesswork.HandlerSave()
      }
      const { toName, conditionKey, conditionValue } = event
      let param = {
        comment: this.opinionVal || '同意',
@@ -188,40 +191,48 @@
}
</script>
<style lang="scss" scoped>
.dialogwarp {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
  height: 85vh;
  .dialogwarp {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    height: 85vh;
  &_tab {
    width: 79%;
    &_tab {
      width: 79%;
      &_card {
        width: 100%;
        height: 100%;
      }
    }
    &_card {
      width: 100%;
      height: 100%;
      // margin-left: 20px;
      width: 20%;
    }
  }
  &_card {
    // margin-left: 20px;
    width: 20%;
  ::v-deep {
    .el-upload {
      width: 100%;
      height: 120px;
    }
    .el-upload-dragger {
      width: 100%;
      height: 120px;
    }
    .el-upload-dragger .el-icon-upload {
      margin: 15px 0 16px;
    }
  }
}
::v-deep(.el-upload) {
  width: 100%;
  height: 120px;
}
::v-deep(.el-upload-dragger) {
  width: 100%;
  height: 120px;
}
::v-deep(.el-upload-dragger .el-icon-upload) {
  margin: 15px 0 16px;
}
  .el-tab-pane{
    height: 75vh;
    overflow: auto;
  }
  .el-button{
    margin:0 10px 10px 0;
  }
</style>