xiangpei
2024-11-26 ab3072bb85b73f8a1a30a21350e733850570da00
流程配置其它属性
2个文件已修改
2个文件已添加
165 ■■■■■ 已修改文件
src/api/projectProcess/processConfigInfo.js 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/flowable/definition/component/EditProcessConfig.vue 103 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/flowable/definition/index.vue 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/projectProcess/components/RunProcess.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/projectProcess/processConfigInfo.js
New file
@@ -0,0 +1,20 @@
import request from '@/utils/request'
// 获取流程类型配置信息表
export const getProcessConfigInfoByDeploy = (params) => {
  return request({
    url: "/process-config-info",
    method: "GET",
    params: params
  })
}
// 保存流程类型配置信息表
export const saveProcessConfigInfo = (data) => {
  return request({
    url: "/process-config-info/",
    method: "POST",
    data: data
  })
}
src/views/flowable/definition/component/EditProcessConfig.vue
New file
@@ -0,0 +1,103 @@
<template>
  <div>
    <el-dialog
      :title="`流程基础配置:` + deployName"
      :visible.sync="processConfigShow"
      width="500px"
      :close-on-click-modal="false"
      :before-close="handleClose">
      <el-form :model="form" :rules="rules" ref="form" label-width="100px" class="demo-ruleForm">
        <el-form-item label="项目类型" prop="projectType">
          <el-select v-model="form.projectType" clearable placeholder="请选择项目类型">
            <el-option v-for="item in dict.type.sys_project_type" :key="item.value" :label="item.label"
                       :value="item.value"/>
          </el-select>
        </el-form-item>
        <el-form-item label="资金类型" prop="fundType">
          <el-select v-model="form.fundType" clearable placeholder="请选择资金类型">
            <el-option v-for="item in dict.type.sys_funding_type" :key="item.value" :label="item.label"
                       :value="item.value"/>
          </el-select>
        </el-form-item>
        <el-form-item label="投资类别" prop="investType">
          <el-select v-model="form.investType" clearable placeholder="请选择投资类别">
            <el-option v-for="item in dict.type.sys_investment_type" :key="item.value" :label="item.label"
                       :value="item.value"/>
          </el-select>
        </el-form-item>
        <el-form-item label="重点分类" prop="importanceType">
          <el-select v-model="form.importanceType" clearable placeholder="请选择重点分类">
            <el-option v-for="item in dict.type.sys_key_categories" :key="item.value" :label="item.label"
                       :value="item.value"/>
          </el-select>
        </el-form-item>
      </el-form>
      <span slot="footer" class="dialog-footer">
        <el-button type="primary" @click="save">保存</el-button>
        <el-button @click="handleClose">取消</el-button>
      </span>
    </el-dialog>
  </div>
</template>
<script>
import {saveProcessConfigInfo, getProcessConfigInfoByDeploy} from "@/api/projectProcess/processConfigInfo"
export default {
  dicts: ['sys_project_type', 'sys_key_categories', 'sys_funding_type', 'sys_investment_type'],
  name: "EditProcessConfig",
  props: {
    processConfigShow: {
      require: true,
      type: Boolean
    },
    deployName: {
      require: true,
      type: String
    },
    form: {
      require: true,
      type: Object
    }
  },
  data() {
    return {
      rules: {
        projectType: [
          { required: true, message: '请选择项目类型', trigger: 'change' }
        ],
        fundType: [
          { required: true, message: '请选资金类型', trigger: 'change' }
        ],
        investType: [
          { required: true, message: '请选择投资类别', trigger: 'change' }
        ],
        importanceType: [
          { required: true, message: '请选择重点分类', trigger: 'change' }
        ],
      }
    }
  },
  methods: {
    save() {
      this.$refs['form'].validate((valid) => {
        if (valid) {
          saveProcessConfigInfo(this.form).then(res => {
            this.$message.success(res.msg)
            this.handleClose()
          })
        }
      });
    },
    handleClose() {
      this.$emit("close")
    }
  }
}
</script>
<style scoped>
</style>
src/views/flowable/definition/index.vue
@@ -92,6 +92,7 @@
      <el-table-column label="操作" width="250" fixed="right"class-name="small-padding fixed-width">
        <template slot-scope="scope">
          <el-button @click="handleLoadXml(scope.row)" icon="el-icon-edit-outline" type="text" size="small">设计</el-button>
          <el-button @click="handleConfig(scope.row)" icon="el-icon-edit-outline" type="text" size="small">流程配置</el-button>
          <el-button @click="handleAddForm(scope.row)" icon="el-icon-edit-el-icon-s-promotion" type="text" size="small" v-if="scope.row.formId == null">配置主表单</el-button>
          <el-button @click="handleUpdateSuspensionState(scope.row)" icon="el-icon-video-pause" type="text" size="small" v-if="scope.row.suspensionState === 1">挂起</el-button>
          <el-button @click="handleUpdateSuspensionState(scope.row)" icon="el-icon-video-play" type="text" size="small" v-if="scope.row.suspensionState === 2">激活</el-button>
@@ -224,6 +225,11 @@
    <!--      append-to-body>-->
    <!--      <Model :deployId="deployId"/>-->
    <!--    </el-dialog>-->
    <edit-process-config :process-config-show="processConfigShow"
                         :deploy-name="configDeployName"
                         :form="configForm"
                         @close="closeConfig"/>
  </div>
</template>
@@ -242,16 +248,29 @@
import { getForm, addDeployForm ,listForm } from "@/api/flowable/form";
import BpmnViewer from '@/components/Process/viewer';
import Model from './model';
import EditProcessConfig from '@/views/flowable/definition/component/EditProcessConfig';
import {getProcessConfigInfoByDeploy} from "@/api/projectProcess/processConfigInfo";
export default {
  name: "Definition",
  dicts: ['sys_process_category'],
  components: {
    BpmnViewer,
    Model
    Model,
    EditProcessConfig
  },
  data() {
    return {
      configForm: {
        deployId: '',
        deployVersion: null,
        projectType: '', // 项目类型
        fundType: '',  // 资金类型
        investType: '',  // 投资类别
        importanceType: '',  // 重点分类
      },
      processConfigShow: false,  // 修改流程信息show
      configDeployName: '',   // 修改配置的部署名称
      // 遮罩层
      loading: true,
      dialogVisible: false,
@@ -341,6 +360,26 @@
    }
  },
  methods: {
    closeConfig() {
      this.processConfigShow = false
    },
    handleConfig(row) {
      const infoArr = row.id.split(":");
      const params = {
        deployId: infoArr[2],
        deployVersion: infoArr[1]
      }
      getProcessConfigInfoByDeploy(params).then(res => {
        if (res.data) {
          this.configForm = res.data
        }
      })
      this.configForm.deployId = infoArr[2]
      this.configForm.deployVersion = infoArr[1]
      this.configDeployName = row.name
      this.processConfigShow = true
    },
    /** 查询流程定义列表 */
    getList() {
      this.loading = true;
src/views/projectProcess/components/RunProcess.vue
@@ -4,6 +4,7 @@
      title="流程启动"
      :visible.sync="show"
      width="750px"
      :close-on-click-modal="false"
      :before-close="handleClose">
      <div>
        <div style="display: flex; flex-direction: row; justify-content: center; align-items: center;font-size: 24px">