wang1
2023-07-13 af73b1917e58e37daaa3e63f5303da1056cedfa3
修复生命周期调试异常,整理流程代码
已修改33个文件
已删除1个文件
已重命名4个文件
已复制4个文件
已添加6个文件
872 ■■■■■ 文件已修改
Source/UBCS-WEB/src/components/template/Stage.vue 249 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/vue.config.js 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/dto/FlowTaskDTO.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/dto/FlowTaskUserDTO.java 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/dto/ProcessStageAttrDTO.java 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/dto/ProcessTemplateDTO.java 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/entity/FlowTaskUser.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/entity/ProcessStageAttr.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/entity/ProcessTemplate.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/feign/IMDMFlowAttrClientFallback.java 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/feign/IMDMIFlowAttrClient.java 55 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/vo/FlowTaskUserVO.java 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/vo/FlowTaskVO.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/vo/ProcessStageAttrVO.java 20 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/vo/ProcessTemplateVO.java 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/business/feign/MDMFlowAttrClient.java 67 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/controller/FlowModelController.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/controller/FlowProcessTSController.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/controller/FlowTaskUserController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/controller/VCIFlowController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/mapper/FlowTaskUserMapper.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/mapper/ProcessStageAttrMapper.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/mapper/ProcessTemplateMapper.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/service/FlowEngineService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/service/FlowTaskUserService.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/service/ProcessStageAttrService.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/service/ProcessTemplateService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/service/VICFlowService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/service/impl/FlowEngineServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/service/impl/FlowTaskUserServiceImpl.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/service/impl/ProcessStageAttrServiceImpl.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/service/impl/ProcessTemplateServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/service/impl/VCIFlowserviceImpl.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops/ubcs-report/src/main/java/com/vci/ubcs/report/config/BladeReportConfiguration.java 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-ops/ubcs-resource/src/main/java/com/vci/ubcs/resource/endpoint/OssEndpoint.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-code-api/pom.xml 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/MdmUIInfoVO.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/pom.xml 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/MdmEngineController.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClstemplateServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeDuckingSyncServiceImpl.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemConfigServiceImpl.java 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DokingSysManaentServiceImpl.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java 80 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/controller/LifeCycleController.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/ILifeCycleService.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/LifeCycleServiceImpl.java 20 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/components/template/Stage.vue
ÎļþÒÑɾ³ý
Source/UBCS-WEB/vue.config.js
@@ -26,12 +26,12 @@
    proxy: {
      '/api': {
        //本地服务接口地址
        target: 'http://localhost:37000',
        // target: 'http://localhost:37000',
        // target: 'http://192.168.1.51:37000',
        // target: 'http://192.168.1.46:37000',
        //target: 'http://192.168.1.46:37000',
        // target: 'http://dev.vci-tech.com:37000',
        // target: 'http://192.168.1.51:37000/',
        // target: 'http://192.168.1.104:37000',
         target: 'http://192.168.1.104:37000',
        // target: 'http://192.168.1.63:37000',
        // target: 'http://192.168.3.7:37000',
        // target: 'http://192.168.1.51:37000/',
Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/dto/FlowTaskDTO.java
ÎļþÃû´Ó Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/entity/FlowTaskDTO.java ÐÞ¸Ä
@@ -14,11 +14,12 @@
 *  this software without specific prior written permission.
 *  Author: Chill åº„骞 (smallchill@163.com)
 */
package com.vci.ubcs.flow.engine.entity;
package com.vci.ubcs.flow.core.dto;
import com.vci.ubcs.flow.core.entity.FlowTaskUser;
import com.vci.ubcs.flow.core.entity.ProcessStageAttr;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
import java.util.Map;
@@ -28,7 +29,7 @@
 * @author wang1
 */
@Data
public class FlowTaskDTO implements Serializable {
public class FlowTaskDTO extends FlowTaskUser{
    private static final long serialVersionUID = 1L;
@@ -61,7 +62,7 @@
    private Map<String, Object> variables;//流程参数
    //流程阶段绑定的属性
    private List<ProcessStageAttr> stageAttrs;
    private List<ProcessStageAttrDTO> stageAttrs;
Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/dto/FlowTaskUserDTO.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,32 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill åº„骞 (smallchill@163.com)
 */
package com.vci.ubcs.flow.core.dto;
import com.vci.ubcs.flow.core.entity.FlowTaskUser;
import lombok.Data;
/**
 * æµç¨‹æ¯ä¸€ä¸ªèŠ‚ç‚¹å®¡æ ¸äºº
 *
 * @author wang1
 */
@Data
public class FlowTaskUserDTO extends FlowTaskUser {
    private static final long serialVersionUID = 1L;
}
Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/dto/ProcessStageAttrDTO.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,32 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill åº„骞 (smallchill@163.com)
 */
package com.vci.ubcs.flow.core.dto;
import com.vci.ubcs.flow.core.entity.ProcessStageAttr;
import lombok.Data;
/**
 * æµç¨‹é˜¶æ®µ
 *
 * @author wang1
 */
@Data
public class ProcessStageAttrDTO extends ProcessStageAttr {
    private static final long serialVersionUID = 1L;
}
Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/dto/ProcessTemplateDTO.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,33 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill åº„骞 (smallchill@163.com)
 */
package com.vci.ubcs.flow.core.dto;
import com.baomidou.mybatisplus.annotation.TableName;
import com.vci.ubcs.flow.core.entity.ProcessTemplate;
import lombok.Data;
/**
 * æµç¨‹æ¨¡æ¿
 *
 * @author wang1
 */
@Data
public class ProcessTemplateDTO extends ProcessTemplate {
    private static final long serialVersionUID = 1L;
}
Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/entity/FlowTaskUser.java
ÎļþÃû´Ó Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/entity/FlowTaskUser.java ÐÞ¸Ä
@@ -14,10 +14,9 @@
 *  this software without specific prior written permission.
 *  Author: Chill åº„骞 (smallchill@163.com)
 */
package com.vci.ubcs.flow.engine.entity;
package com.vci.ubcs.flow.core.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.vci.ubcs.flow.core.utils.TaskUtil;
import lombok.Data;
import java.io.Serializable;
Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/entity/ProcessStageAttr.java
ÎļþÃû´Ó Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/entity/ProcessStageAttr.java ÐÞ¸Ä
@@ -14,7 +14,7 @@
 *  this software without specific prior written permission.
 *  Author: Chill åº„骞 (smallchill@163.com)
 */
package com.vci.ubcs.flow.engine.entity;
package com.vci.ubcs.flow.core.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/entity/ProcessTemplate.java
ÎļþÃû´Ó Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/entity/ProcessTemplate.java ÐÞ¸Ä
@@ -14,14 +14,13 @@
 *  this software without specific prior written permission.
 *  Author: Chill åº„骞 (smallchill@163.com)
 */
package com.vci.ubcs.flow.engine.entity;
package com.vci.ubcs.flow.core.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
 * æµç¨‹æ¨¡æ¿
Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/feign/IMDMFlowAttrClientFallback.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,41 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill åº„骞 (smallchill@163.com)
 */
package com.vci.ubcs.flow.core.feign;
import com.vci.ubcs.flow.core.entity.BladeFlow;
import com.vci.ubcs.flow.core.entity.ProcessStageAttr;
import com.vci.ubcs.flow.core.vo.ProcessStageAttrVO;
import org.springblade.core.tool.api.R;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
import java.util.Map;
/**
 * æµç¨‹è¿œç¨‹è°ƒç”¨å¤±è´¥å¤„理类
 *
 * @author Chill
 */
@Component
public class IMDMFlowAttrClientFallback implements IMDMIFlowAttrClient {
    @Override
    public R<List<ProcessStageAttrVO>> ssslist(String templateId, String modelKey, String taskId){
        return R.fail("远程调用失败");
    }
}
Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/feign/IMDMIFlowAttrClient.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,55 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill åº„骞 (smallchill@163.com)
 */
package com.vci.ubcs.flow.core.feign;
import com.vci.ubcs.flow.core.entity.BladeFlow;
import com.vci.ubcs.flow.core.entity.ProcessStageAttr;
import com.vci.ubcs.flow.core.vo.ProcessStageAttrVO;
import org.springblade.core.launch.constant.AppConstant;
import org.springblade.core.tool.api.R;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
import java.util.Map;
/**
 * å·¥ä½œæµè¿œç¨‹è°ƒç”¨æŽ¥å£.
 *
 * @author Chill
 */
@FeignClient(
    value = AppConstant.APPLICATION_FLOW_NAME,
    fallback = IMDMFlowAttrClientFallback.class
)
public interface IMDMIFlowAttrClient {
    String API_PREFIX = "/mdmflowclient";
    String GET_FLOW_ATTR_BY = API_PREFIX + "/ssslist";
    /**
     * å¼€å¯æµç¨‹
     *
     * @return BladeFlow
     */
    @PostMapping(GET_FLOW_ATTR_BY)
    R<List<ProcessStageAttrVO>> ssslist(@RequestParam String templateId, @RequestParam String modelKey, @RequestParam String taskId);
}
Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/vo/FlowTaskUserVO.java
copy from Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/entity/FlowTaskUser.java copy to Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/vo/FlowTaskUserVO.java
Îļþ´Ó Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/entity/FlowTaskUser.java ¸´ÖÆ
@@ -14,10 +14,10 @@
 *  this software without specific prior written permission.
 *  Author: Chill åº„骞 (smallchill@163.com)
 */
package com.vci.ubcs.flow.engine.entity;
package com.vci.ubcs.flow.core.vo;
import com.baomidou.mybatisplus.annotation.TableName;
import com.vci.ubcs.flow.core.utils.TaskUtil;
import com.vci.ubcs.flow.core.entity.FlowTaskUser;
import lombok.Data;
import java.io.Serializable;
@@ -29,24 +29,8 @@
 * @author wang1
 */
@Data
@TableName("ACT_DE_TASK_USER")
public class FlowTaskUser implements Serializable {
public class FlowTaskUserVO extends FlowTaskUser {
    private static final long serialVersionUID = 1L;
    private String id;
    private String name;//保存的这个收藏名称
    private String modelKey;
    private String modelName;
    private String classifyId;
    private String templateId;
    private String taskId;//流程taskid
    private String taskName;
    private String userId;
    private String userName;
    private String description;
    private Date created;
    private Date lastUpdated;
    private String createdBy;
    private String lastUpdatedBy;
}
Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/vo/FlowTaskVO.java
copy from Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/entity/FlowTaskDTO.java copy to Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/vo/FlowTaskVO.java
Îļþ´Ó Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/entity/FlowTaskDTO.java ¸´ÖÆ
@@ -14,8 +14,10 @@
 *  this software without specific prior written permission.
 *  Author: Chill åº„骞 (smallchill@163.com)
 */
package com.vci.ubcs.flow.engine.entity;
package com.vci.ubcs.flow.core.vo;
import com.vci.ubcs.flow.core.entity.FlowTaskUser;
import com.vci.ubcs.flow.core.entity.ProcessStageAttr;
import lombok.Data;
import java.io.Serializable;
@@ -28,7 +30,7 @@
 * @author wang1
 */
@Data
public class FlowTaskDTO implements Serializable {
public class FlowTaskVO extends FlowTaskUser{
    private static final long serialVersionUID = 1L;
@@ -57,11 +59,11 @@
    private String conditionValue;//同意、驳回到的下一个节点的条件value
    //流程中参数
    private List<FlowTaskDTO> toTasks;//流程下一步按钮
    private List<FlowTaskVO> toTasks;//流程下一步按钮
    private Map<String, Object> variables;//流程参数
    //流程阶段绑定的属性
    private List<ProcessStageAttr> stageAttrs;
    private List<ProcessStageAttrVO> stageAttrs;
Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/vo/ProcessStageAttrVO.java
copy from Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/entity/ProcessTemplate.java copy to Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/vo/ProcessStageAttrVO.java
Îļþ´Ó Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/entity/ProcessTemplate.java ¸´ÖÆ
@@ -14,35 +14,23 @@
 *  this software without specific prior written permission.
 *  Author: Chill åº„骞 (smallchill@163.com)
 */
package com.vci.ubcs.flow.engine.entity;
package com.vci.ubcs.flow.core.vo;
import com.baomidou.mybatisplus.annotation.TableName;
import com.vci.ubcs.flow.core.entity.ProcessStageAttr;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
 * æµç¨‹æ¨¡æ¿
 * æµç¨‹é˜¶æ®µ
 *
 * @author wang1
 */
@Data
@TableName("ACT_DE_PROCESS_TEMPLATE")
public class ProcessTemplate implements Serializable {
public class ProcessStageAttrVO extends ProcessStageAttr {
    private static final long serialVersionUID = 1L;
    private String id;
    private String templateId;//当前模板id
    private String modelKey;//流程模型key,部署key
    private String modelName;//部署流程名称
    private String buttonTypeKey;//应用按钮,ProcessTemplateTypeEnum的key
    private String buttonTypeValue;//应用按钮,ProcessTemplateTypeEnum的value
    private String description;
    private Date created;
    private Date lastUpdated;
    private String createdBy;
    private String lastUpdatedBy;
}
Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/vo/ProcessTemplateVO.java
copy from Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/entity/ProcessTemplate.java copy to Source/UBCS/ubcs-ops-api/ubcs-flow-api/src/main/java/com/vci/ubcs/flow/core/vo/ProcessTemplateVO.java
Îļþ´Ó Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/entity/ProcessTemplate.java ¸´ÖÆ
@@ -14,14 +14,14 @@
 *  this software without specific prior written permission.
 *  Author: Chill åº„骞 (smallchill@163.com)
 */
package com.vci.ubcs.flow.engine.entity;
package com.vci.ubcs.flow.core.vo;
import com.baomidou.mybatisplus.annotation.TableName;
import com.vci.ubcs.flow.core.entity.ProcessTemplate;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
 * æµç¨‹æ¨¡æ¿
@@ -29,20 +29,8 @@
 * @author wang1
 */
@Data
@TableName("ACT_DE_PROCESS_TEMPLATE")
public class ProcessTemplate implements Serializable {
public class ProcessTemplateVO extends ProcessTemplate {
    private static final long serialVersionUID = 1L;
    private String id;
    private String templateId;//当前模板id
    private String modelKey;//流程模型key,部署key
    private String modelName;//部署流程名称
    private String buttonTypeKey;//应用按钮,ProcessTemplateTypeEnum的key
    private String buttonTypeValue;//应用按钮,ProcessTemplateTypeEnum的value
    private String description;
    private Date created;
    private Date lastUpdated;
    private String createdBy;
    private String lastUpdatedBy;
}
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/business/feign/MDMFlowAttrClient.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,67 @@
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill åº„骞 (smallchill@163.com)
 */
package com.vci.ubcs.flow.business.feign;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.vci.ubcs.flow.core.entity.BladeFlow;
import com.vci.ubcs.flow.core.entity.ProcessStageAttr;
import com.vci.ubcs.flow.core.feign.IMDMIFlowAttrClient;
import com.vci.ubcs.flow.core.utils.TaskUtil;
import com.vci.ubcs.flow.core.vo.ProcessStageAttrVO;
import com.vci.ubcs.flow.engine.service.ProcessStageAttrService;
import lombok.AllArgsConstructor;
import org.flowable.engine.IdentityService;
import org.flowable.engine.RuntimeService;
import org.flowable.engine.TaskService;
import org.flowable.engine.runtime.ProcessInstance;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.tenant.annotation.NonDS;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.support.Kv;
import org.springblade.core.tool.utils.Func;
import org.springblade.core.tool.utils.StringUtil;
import org.springframework.web.bind.annotation.*;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
 * æµç¨‹è¿œç¨‹è°ƒç”¨å®žçŽ°ç±»
 *
 * @author Chill
 */
@NonDS
@RestController
@AllArgsConstructor
public class MDMFlowAttrClient implements IMDMIFlowAttrClient {
    private final ProcessStageAttrService processStageAttrService;
    @Override
    @PostMapping(GET_FLOW_ATTR_BY)
    public R<List<ProcessStageAttrVO>> ssslist(@RequestParam String templateId, @RequestParam String modelKey, @RequestParam String taskId) {
        Map<String, Object> m = new HashMap<>();
        m.put("template_id", templateId);
        m.put("task_id", taskId);
        m.put("model_key", modelKey);
        QueryWrapper q = Condition.getQueryWrapper(m, ProcessStageAttr.class)
            .select("attr_id attrId,attr_name attrName,attr_group attrGroup");
        return R.data(processStageAttrService.list(q));
    }
}
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/controller/FlowModelController.java
@@ -20,7 +20,6 @@
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.vci.ubcs.flow.core.utils.TaskUtil;
import com.vci.ubcs.flow.engine.entity.FlowModel;
import com.vci.ubcs.flow.engine.entity.FlowTaskUser;
import com.vci.ubcs.flow.engine.service.FlowEngineService;
import com.vci.ubcs.flow.engine.service.FlowTaskUserService;
import io.swagger.annotations.ApiImplicitParam;
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/controller/FlowProcessTSController.java
@@ -2,9 +2,10 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.vci.ubcs.flow.engine.entity.FlowTaskDTO;
import com.vci.ubcs.flow.engine.entity.ProcessStageAttr;
import com.vci.ubcs.flow.engine.entity.ProcessTemplate;
import com.vci.ubcs.flow.core.dto.FlowTaskDTO;
import com.vci.ubcs.flow.core.entity.ProcessStageAttr;
import com.vci.ubcs.flow.core.entity.ProcessTemplate;
import com.vci.ubcs.flow.core.vo.ProcessStageAttrVO;
import com.vci.ubcs.flow.engine.service.FlowEngineService;
import com.vci.ubcs.flow.engine.service.ProcessStageAttrService;
import com.vci.ubcs.flow.engine.service.ProcessTemplateService;
@@ -88,7 +89,7 @@
     * æµç¨‹é˜¶æ®µï¼Œè¿™ä¸ªæµç¨‹,这个节点,绑定的属性
     */
    @GetMapping("/ssslist")
    public R<List<ProcessStageAttr>> ssslist(@RequestParam String templateId,@RequestParam String modelKey,@RequestParam String taskId) {
    public R<List<ProcessStageAttrVO>> ssslist(@RequestParam String templateId, @RequestParam String modelKey, @RequestParam String taskId) {
        Map<String, Object> m = new HashMap<>();
        m.put("template_id", templateId);
        m.put("task_id", taskId);
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/controller/FlowTaskUserController.java
@@ -1,6 +1,6 @@
package com.vci.ubcs.flow.engine.controller;
import com.vci.ubcs.flow.engine.entity.FlowTaskDTO;
import com.vci.ubcs.flow.core.dto.FlowTaskDTO;
import com.vci.ubcs.flow.engine.service.FlowTaskUserService;
import lombok.AllArgsConstructor;
import org.springblade.core.tenant.annotation.NonDS;
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/controller/VCIFlowController.java
@@ -1,7 +1,7 @@
package com.vci.ubcs.flow.engine.controller;
import com.vci.ubcs.flow.core.dto.FlowTaskDTO;
import com.vci.ubcs.flow.core.entity.BladeFlow;
import com.vci.ubcs.flow.engine.entity.FlowTaskDTO;
import com.vci.ubcs.flow.engine.service.VICFlowService;
import lombok.AllArgsConstructor;
import org.springblade.core.tenant.annotation.NonDS;
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/mapper/FlowTaskUserMapper.java
@@ -18,8 +18,8 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.vci.ubcs.flow.core.entity.FlowTaskUser;
import com.vci.ubcs.flow.engine.entity.FlowModel;
import com.vci.ubcs.flow.engine.entity.FlowTaskUser;
import org.apache.ibatis.annotations.Param;
import java.util.List;
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/mapper/ProcessStageAttrMapper.java
@@ -17,7 +17,7 @@
package com.vci.ubcs.flow.engine.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.vci.ubcs.flow.engine.entity.ProcessStageAttr;
import com.vci.ubcs.flow.core.entity.ProcessStageAttr;
/**
 * æµç¨‹é˜¶æ®µ
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/mapper/ProcessTemplateMapper.java
@@ -17,8 +17,7 @@
package com.vci.ubcs.flow.engine.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.vci.ubcs.flow.engine.entity.FlowTaskUser;
import com.vci.ubcs.flow.engine.entity.ProcessTemplate;
import com.vci.ubcs.flow.core.entity.ProcessTemplate;
/**
 * æµç¨‹æ¨¡æ¿
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/service/FlowEngineService.java
@@ -18,11 +18,11 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.vci.ubcs.flow.core.dto.FlowTaskDTO;
import com.vci.ubcs.flow.core.entity.BladeFlow;
import com.vci.ubcs.flow.engine.entity.FlowExecution;
import com.vci.ubcs.flow.engine.entity.FlowModel;
import com.vci.ubcs.flow.engine.entity.FlowProcess;
import com.vci.ubcs.flow.engine.entity.FlowTaskDTO;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/service/FlowTaskUserService.java
@@ -17,6 +17,8 @@
package com.vci.ubcs.flow.engine.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.vci.ubcs.flow.core.dto.FlowTaskDTO;
import com.vci.ubcs.flow.core.entity.FlowTaskUser;
import com.vci.ubcs.flow.engine.entity.*;
import java.util.List;
@@ -54,5 +56,5 @@
     * @param modelKey
     * @return
     */
    List<FlowTaskUser> getTaskUserByTemplateAndModelKey(String templateId,String modelKey);
    List<FlowTaskUser> getTaskUserByTemplateAndModelKey(String templateId, String modelKey);
}
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/service/ProcessStageAttrService.java
@@ -17,8 +17,8 @@
package com.vci.ubcs.flow.engine.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.vci.ubcs.flow.engine.entity.FlowTaskDTO;
import com.vci.ubcs.flow.engine.entity.ProcessStageAttr;
import com.vci.ubcs.flow.core.dto.FlowTaskDTO;
import com.vci.ubcs.flow.core.entity.ProcessStageAttr;
/**
 * æµç¨‹é˜¶æ®µæœåŠ¡
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/service/ProcessTemplateService.java
@@ -17,7 +17,7 @@
package com.vci.ubcs.flow.engine.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.vci.ubcs.flow.engine.entity.ProcessTemplate;
import com.vci.ubcs.flow.core.entity.ProcessTemplate;
import java.util.List;
import java.util.Map;
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/service/VICFlowService.java
@@ -16,8 +16,8 @@
 */
package com.vci.ubcs.flow.engine.service;
import com.vci.ubcs.flow.core.dto.FlowTaskDTO;
import com.vci.ubcs.flow.core.entity.BladeFlow;
import com.vci.ubcs.flow.engine.entity.FlowTaskDTO;
import org.springblade.core.tool.api.R;
/**
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/service/impl/FlowEngineServiceImpl.java
@@ -20,6 +20,7 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.node.ObjectNode;
import com.vci.ubcs.flow.core.dto.FlowTaskDTO;
import com.vci.ubcs.flow.core.entity.BladeFlow;
import com.vci.ubcs.flow.core.enums.FlowModeEnum;
import com.vci.ubcs.flow.core.utils.TaskUtil;
@@ -27,7 +28,6 @@
import com.vci.ubcs.flow.engine.entity.FlowExecution;
import com.vci.ubcs.flow.engine.entity.FlowModel;
import com.vci.ubcs.flow.engine.entity.FlowProcess;
import com.vci.ubcs.flow.engine.entity.FlowTaskDTO;
import com.vci.ubcs.flow.engine.mapper.FlowMapper;
import com.vci.ubcs.flow.engine.service.FlowEngineService;
import com.vci.ubcs.flow.engine.utils.FlowCache;
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/service/impl/FlowTaskUserServiceImpl.java
@@ -18,6 +18,9 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.vci.ubcs.flow.core.dto.FlowTaskDTO;
import com.vci.ubcs.flow.core.entity.FlowTaskUser;
import com.vci.ubcs.flow.core.entity.ProcessTemplate;
import com.vci.ubcs.flow.core.utils.TaskUtil;
import com.vci.ubcs.flow.engine.entity.*;
import com.vci.ubcs.flow.engine.mapper.FlowTaskUserMapper;
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/service/impl/ProcessStageAttrServiceImpl.java
@@ -18,9 +18,9 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.vci.ubcs.flow.engine.entity.FlowTaskUser;
import com.vci.ubcs.flow.engine.entity.FlowTaskDTO;
import com.vci.ubcs.flow.engine.entity.ProcessStageAttr;
import com.vci.ubcs.flow.core.dto.FlowTaskDTO;
import com.vci.ubcs.flow.core.entity.FlowTaskUser;
import com.vci.ubcs.flow.core.entity.ProcessStageAttr;
import com.vci.ubcs.flow.engine.mapper.ProcessStageAttrMapper;
import com.vci.ubcs.flow.engine.service.ProcessStageAttrService;
import lombok.AllArgsConstructor;
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/service/impl/ProcessTemplateServiceImpl.java
@@ -18,8 +18,8 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.vci.ubcs.flow.core.entity.ProcessTemplate;
import com.vci.ubcs.flow.core.utils.TaskUtil;
import com.vci.ubcs.flow.engine.entity.ProcessTemplate;
import com.vci.ubcs.flow.engine.mapper.ProcessTemplateMapper;
import com.vci.ubcs.flow.engine.service.ProcessTemplateService;
import com.vci.ubcs.starter.web.enumpck.ProcessTemplateTypeEnum;
Source/UBCS/ubcs-ops/ubcs-flow/src/main/java/com/vci/ubcs/flow/engine/service/impl/VCIFlowserviceImpl.java
@@ -18,7 +18,9 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.vci.ubcs.flow.core.constant.ProcessConstant;
import com.vci.ubcs.flow.core.dto.FlowTaskDTO;
import com.vci.ubcs.flow.core.entity.BladeFlow;
import com.vci.ubcs.flow.core.entity.FlowTaskUser;
import com.vci.ubcs.flow.core.utils.TaskUtil;
import com.vci.ubcs.flow.engine.entity.*;
import com.vci.ubcs.flow.engine.service.FlowEngineService;
Source/UBCS/ubcs-ops/ubcs-report/src/main/java/com/vci/ubcs/report/config/BladeReportConfiguration.java
@@ -16,7 +16,7 @@
 */
package com.vci.ubcs.report.config;
import com.vci.ubcs.core.report.datasource.ReportDataSource;
//import org.springblade.core.report.datasource.ReportDataSource;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@@ -32,12 +32,12 @@
@ConditionalOnProperty(value = "report.enabled", havingValue = "true", matchIfMissing = true)
public class BladeReportConfiguration {
    /**
     * è‡ªå®šä¹‰æŠ¥è¡¨å¯é€‰æ•°æ®æº
     */
    @Bean
    public ReportDataSource reportDataSource(DataSource dataSource) {
        return new ReportDataSource(dataSource);
    }
//    /**
//     * è‡ªå®šä¹‰æŠ¥è¡¨å¯é€‰æ•°æ®æº
//     */
//    @Bean
//    public ReportDataSource reportDataSource(DataSource dataSource) {
//        return new ReportDataSource(dataSource);
//    }
}
Source/UBCS/ubcs-ops/ubcs-resource/src/main/java/com/vci/ubcs/resource/endpoint/OssEndpoint.java
@@ -17,10 +17,6 @@
package com.vci.ubcs.resource.endpoint;
import com.vci.ubcs.resource.entity.Attach;
import com.vci.ubcs.resource.service.IFileService;
import com.vci.ubcs.resource.utils.FileDownloadUtil;
import com.vci.ubcs.starter.web.util.LangBaseUtil;
import com.vci.ubcs.starter.web.util.VciBaseUtil;
import io.swagger.annotations.Api;
import lombok.AllArgsConstructor;
import lombok.SneakyThrows;
Source/UBCS/ubcs-service-api/ubcs-code-api/pom.xml
@@ -63,6 +63,12 @@
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>com.vci.ubcs</groupId>
            <artifactId>ubcs-flow-api</artifactId>
            <version>3.0.1.RELEASE</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>com.thoughtworks.xstream</groupId>
            <artifactId>xstream</artifactId>
        </dependency>
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/MdmUIInfoVO.java
@@ -1,5 +1,7 @@
package com.vci.ubcs.code.vo.pagemodel;
import com.vci.ubcs.flow.core.vo.ProcessStageAttrVO;
import java.util.List;
public class MdmUIInfoVO implements java.io.Serializable {
@@ -36,7 +38,6 @@
     * å½“前分类是否为叶子节点
     */
    private boolean leaf;
    public List<SmOperationVO> getButtons() {
        return buttons;
    }
Source/UBCS/ubcs-service/ubcs-code/pom.xml
@@ -137,6 +137,12 @@
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>com.vci.ubcs</groupId>
            <artifactId>ubcs-flow-api</artifactId>
            <version>3.0.1.RELEASE</version>
            <scope>compile</scope>
        </dependency>
        <!--axis2 end -->
    </dependencies>
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/MdmEngineController.java
@@ -12,6 +12,7 @@
import com.vci.ubcs.code.service.MdmEngineService;
import com.vci.ubcs.code.service.MdmIOService;
import com.vci.ubcs.code.vo.pagemodel.*;
import com.vci.ubcs.flow.core.feign.IMDMIFlowAttrClient;
import com.vci.ubcs.omd.vo.BtmTypeVO;
import com.vci.ubcs.starter.annotation.VciBusinessLog;
import com.vci.ubcs.starter.revision.model.BaseModel;
@@ -55,6 +56,7 @@
     */
    @Autowired
    private MdmIOService mdmIOService;
    /**
     * ä¸‹è½½æ‰¹é‡ç”³è¯·çš„导入模板
@@ -627,6 +629,17 @@
        return engineService.getUIInfoByClassifyOid(codeClassifyOid,functionId);
    }
    /**
     * ä½¿ç”¨åˆ†ç±»èŽ·å–è¡¨æ ¼çš„å®šä¹‰
     * @param codeClassifyOid åˆ†ç±»ä¸»é”®
     * @param functionId åŠŸèƒ½çš„ç¼–å·
     * @return UI相关的信息(仅包含表格)
     */
    @GetMapping("/getFlowdUIInfoByClassifyOid")
    public MdmUIInfoVO getUIInfoByClassifyOid(String codeClassifyOid,String functionId,String templateId,String taskId,String modelKey){
        return engineService.getFlowUIInfoByClassifyOid(codeClassifyOid,functionId,templateId,taskId,modelKey);
    }
    @GetMapping("/thisistest")
    @ResponseBody
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java
@@ -372,6 +372,14 @@
     * @return UI相关的内容
     */
    MdmUIInfoVO getUIInfoByClassifyOid(String codeClassifyOid, String functionId);
    /**
     * ä½¿ç”¨åˆ†ç±»ä¸»é”®ï¼Œæ¨¡æ¿ä¸»é”®ï¼Œé˜¶æ®µæ ‡è¯†ï¼Œæµç¨‹æ¨¡æ¿kek获取流程审批中页面的内容,包含按钮
     *
     * @param codeClassifyOid ä¸»é¢˜åº“分类主键
     * @param functionId      åŠŸèƒ½çš„ç¼–å·,默认5
     * @return UI相关的内容
     */
    MdmUIInfoVO getFlowUIInfoByClassifyOid(String codeClassifyOid, String functionId,String templateId,String taskId,String modelKey);
    /**
     * ä¼ å…¥ä¸šåŠ¡ç±»åž‹ä»¥åŠç›¸å…³æ•°æ®è¿›è¡Œæ‰¹é‡æ’å…¥æ“ä½œ
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClstemplateServiceImpl.java
@@ -1088,7 +1088,7 @@
            //递归找上级的模板
            CodeClassify classifyDO = codeClassifyMapper.selectById(codeClassifyOid);
//                codeClassifyDaoI.selectByPrimaryKey(codeClassifyOid);
            if(StringUtils.isBlank(classifyDO.getParentCodeClassifyOid())){
            if(classifyDO==null&&StringUtils.isBlank(classifyDO.getParentCodeClassifyOid())){
                //说明已经是顶了,也没找到的话,那就返回了
                return null;
            }
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeDuckingSyncServiceImpl.java
@@ -68,8 +68,8 @@
    private IDockingLogeService dockingLogeService;
    @Resource
    private IDockingDataService dockingDataService;
    @Resource
    private IDockingTaskService dockingTaskService;
//    @Resource
//    private IDockingTaskService dockingTaskService;
    @Resource
    private IDockingSystemConfigService dockingSystemConfigService;
    @Resource
@@ -243,7 +243,7 @@
            }
            if(dockingTask_insert.size()!=0) {
                dockingTaskService.saveBatch(dockingTask_insert);
//                dockingTaskService.saveBatch(dockingTask_insert);
            }
            //dockingTaskDaoI.updateByPrimaryKey方法报错了,所以手写了这个
            boolean u = updateDockingDatasSendFlag(dataoid,SEND_FLAG_TRUE);
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemConfigServiceImpl.java
@@ -95,11 +95,11 @@
     */
    @Autowired(required = false)
    private DockingSystemMapper dockingSystemMapper;
    /***
     * ä»»åŠ¡ç”ŸæˆæœåŠ¡
     */
    @Autowired( required = false)
    private IDockingTaskService dockingTaskService;
//    /***
//     * ä»»åŠ¡ç”ŸæˆæœåŠ¡
//     */
//    @Resource
//    private IDockingTaskService dockingTaskService;
    /**
@@ -450,7 +450,7 @@
                    dockingTaskDO_insert.add(dockingTaskDO);
                });
            }
            dockingTaskService.saveBatch(dockingTaskDO_insert);
//            dockingTaskService.saveBatch(dockingTaskDO_insert);
        }catch (Throwable e){
            msg="数据推送到定时任务失败!";
            log.error("数据推送到定时任务失败!"+e);
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DokingSysManaentServiceImpl.java
@@ -12,15 +12,17 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@Service
public class DokingSysManaentServiceImpl extends ServiceImpl<DockingSystemConfigMapper, DockingSystemConfig> implements IDokingSysManaentService {
    /***
     * ä»»åŠ¡ç”ŸæˆæœåŠ¡
     */
    @Autowired( required = false)
    private IDockingTaskService dockingTaskService;
//    /***
//     * ä»»åŠ¡ç”ŸæˆæœåŠ¡
//     */
//    @Resource
//    private IDockingTaskService dockingTaskService;
    /***
@@ -52,7 +54,8 @@
     */
    @Override
    public IPage<DockingTaskVO> gridDockingTask(DockingTask dockingTask, Query query) {
        IPage<DockingTask> pages=dockingTaskService.page(Condition.getPage(query), Condition.getQueryWrapper(dockingTask));
        IPage<DockingTask> pages=null;
//        IPage<DockingTask> pages=dockingTaskService.page(Condition.getPage(query), Condition.getQueryWrapper(dockingTask));
        return DockingTaskWrapper.build().pageVO(pages);
    }
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java
@@ -22,6 +22,9 @@
import com.vci.ubcs.code.vo.pagemodel.UITableFieldVO;
import com.vci.ubcs.code.vo.pagemodel.UITablePageVO;
import com.vci.ubcs.code.vo.pagemodel.*;
import com.vci.ubcs.flow.core.entity.ProcessStageAttr;
import com.vci.ubcs.flow.core.feign.IMDMIFlowAttrClient;
import com.vci.ubcs.flow.core.vo.ProcessStageAttrVO;
import com.vci.ubcs.omd.constant.BtmTypeLcStatusConstant;
import com.vci.ubcs.omd.cache.EnumCache;
import com.vci.ubcs.omd.feign.*;
@@ -278,6 +281,11 @@
     * æ›¿æ¢å­—符
     */
    public static final String SPECIAL_CHAR = "VCI";
    /**
     * ä¸»æ•°æ®æµç¨‹é˜¶æ®µæœåŠ¡
     */
    @Autowired
    private IMDMIFlowAttrClient imdmiFlowAttrClient;
//    @Autowired
//    private CodeOsbtmtypeMapper codeOsbtmtypeMapper;----
@@ -2839,6 +2847,51 @@
        return uiInfoVO;
    }
    /**
     * ä½¿ç”¨åˆ†ç±»çš„主键获取表格的定义-ubcs后修改获取流程阶段熟悉获取方法
     * @param codeClassifyOid
     * @param templateId
     * @param taskId
     * @param modelKey
     * @return
     */
    public MdmUIInfoVO getTableDefineByClassifyOid_v2(String codeClassifyOid,String templateId,String taskId,String modelKey) {
        MdmUIInfoVO uiInfoVO = new MdmUIInfoVO();
        CodeClassifyTemplateVO templateVO = getUsedTemplateByClassifyOid(codeClassifyOid);
        uiInfoVO.setTemplateVO(templateVO);
        UITableDefineVO uiTableDefineVO = wrapperTableDefineByTemplate(templateVO, true);
        R<List<ProcessStageAttrVO>> r = imdmiFlowAttrClient.ssslist(templateId,modelKey,taskId);
        List<ProcessStageAttrVO> stageAttrVOS = r.getData();
        List<String> attrList = new ArrayList<>();
        stageAttrVOS.stream().forEach(attr->{
            attrList.add(attr.getAttrId());
        });
        uiTableDefineVO.getCols().stream().forEach(list -> {
            List<UITableFieldVO> visiableTableField = new ArrayList<>();
            visiableTableField = list.stream().filter(col ->
                attrList.stream().anyMatch(s -> StringUtils.equalsIgnoreCase(col.getField(), s) ||
                    (StringUtils.equalsIgnoreCase(col.getFieldType(), "combox") && StringUtils.equalsIgnoreCase(col.getSortField(), s))
                    || (StringUtils.equalsIgnoreCase(col.getFieldType(), "refer") && StringUtils.equalsIgnoreCase(col.getQueryField(), s))
                )).collect(Collectors.toList());
            visiableTableField.stream().forEach(vo -> {
                uiTableDefineVO.setHasEditor(true);
                if ("refer".equalsIgnoreCase(vo.getFieldType())) {
                    setReferConfig2EditConfig(vo);
                } else if ("combox".equalsIgnoreCase(vo.getFieldType())) {
                    setComboxConfig2EditConfig(vo);
                } else if (StringUtils.isNotBlank(vo.getDateFormate())) {
                    vo.setEdit("date");
                } else {
                    vo.setEdit(vo.getFieldType());
                }
            });
        });
        uiInfoVO.setTableDefineVO(uiTableDefineVO);
        wrapperResemble(templateVO, uiInfoVO);
        return uiInfoVO;
    }
    /**
     * æ¨¡æ¿å±žæ€§è½¬æ¢ä¸ºè¡¨æ ¼å®šä¹‰çš„信息
     *
@@ -3099,6 +3152,33 @@
        }
        return uiInfoVO;
    }
    @Override
    public MdmUIInfoVO getFlowUIInfoByClassifyOid(String codeClassifyOid, String functionId,String templateId,String taskId,String modelKey){
//        MdmUIInfoVO uiInfoVO = getTableDefineByClassifyOid_v2(codeClassifyOid,templateId,taskId,modelKey);
        MdmUIInfoVO uiInfoVO = getTableDefineByTemplateVO(getUsedTemplateByClassifyOid(codeClassifyOid));
        R<List<ProcessStageAttrVO>> r = imdmiFlowAttrClient.ssslist(templateId,modelKey,taskId);
        List<ProcessStageAttrVO> stageAttrVOS = r.getData();
        Set<String> attrSet = new HashSet<>();
        stageAttrVOS.stream().forEach(attr->{
            attrSet.add(attr.getAttrId());
        });
        try {
            UITableDefineVO tableDefineVO = uiInfoVO.getTableDefineVO();
            List<List<UITableFieldVO>> tableFieldVOs = tableDefineVO.getCols();
            List<UITableFieldVO> uiTableFieldVOS = tableFieldVOs.get(0);
            uiTableFieldVOS.stream().forEach(ui->{
//                if(!attrSet.contains(ui.getField())){
//                    ui.setEdit(null);
//                    ui.setEditConfig(null);
//                }
            });
        }catch (Exception e){
            throw new ServiceException("模板没有定义属性,读取表头失败!");
        }
        return uiInfoVO;
    }
    /**
     * ä½¿ç”¨åˆ†ç±»ä¸»é”®èŽ·å–å·¥å…·æ ä¸­çš„æŒ‰é’®ä¿¡æ¯
Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/controller/LifeCycleController.java
@@ -1,5 +1,6 @@
package com.vci.ubcs.omd.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.vci.ubcs.omd.dto.LifeCycleDTO;
@@ -15,12 +16,14 @@
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.BeanUtil;
import org.springframework.web.bind.annotation.*;
import java.util.HashMap;
import java.util.List;
import java.util.Locale;
import java.util.Map;
/**
@@ -46,12 +49,9 @@
    @GetMapping("page")
    @ApiOperationSupport(order = 2)
    @ApiOperation(value = "分页查询生命周期",notes = "分页查询生命周期")
    public R<IPage<LifeCycleVO>> page(BladeQueryObject baseQueryObject){
        Map<String, Object> conditionMap = baseQueryObject.getConditionMap();
        if (conditionMap == null){
            conditionMap = new HashMap<>();
        }
        return R.data(lifeCycleService.listLife(conditionMap,baseQueryObject.getQuery()));
    public R<IPage<LifeCycleVO>> page(@RequestParam Map<String, Object> conditionMap, Query query){
        return R.data(lifeCycleService.listLife(conditionMap,query));
    }
@@ -147,14 +147,8 @@
     */
    @GetMapping("page-event")
    @ApiOperationSupport(order = 2)
    @ApiOperation(value = "全部的事件",notes = "分页查询事件")
    public R<IPage<LifeCycleEventVO>> pageEvent(BladeQueryObject baseQueryObject){
        Map<String, Object> conditionMap = baseQueryObject.getConditionMap();
        if (conditionMap == null){
            conditionMap = new HashMap<>();
        }
        return R.data(lifeCycleService.listEvent(conditionMap,baseQueryObject.getQuery()));
    @ApiOperation(value = "全部的事件",notes = "list查询事件")
    public R<List<LifeCycleEventVO>> pageEvent(){
        return R.data(lifeCycleService.listEventNoPage());
    }
}
Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/ILifeCycleService.java
@@ -39,6 +39,11 @@
    IPage<LifeCycleEventVO> listEvent(Map<String, Object> conditionMap, Query query);
    /**
     * èŽ·å–å…¨éƒ¨çš„äº‹ä»¶
     */
    List<LifeCycleEventVO> listEventNoPage();
    /**
     * æ·»åŠ ä¿å­˜
     * @param lifeCycleDTO æ•°æ®ä¼ è¾“对象
     * @return æ·»åŠ åŽçš„æ˜¾ç¤ºå¯¹è±¡
Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/LifeCycleServiceImpl.java
@@ -106,6 +106,18 @@
        return LifeCycleEventWrapper.build().pageVO(eventMapper.selectPage(Condition.getPage(query),Condition.getQueryWrapper(conditionMap, LifeCycleEvent.class).lambda().orderByAsc(LifeCycleEvent::getEventFullName)));
    }
    public List<LifeCycleEventVO> listEventNoPage(){
        QueryWrapper<LifeCycleEvent> queryWrapper = new QueryWrapper();
        List<LifeCycleEvent> lifeCycleEvents =  eventMapper.selectList(queryWrapper);
        List<LifeCycleEventVO> vos = new ArrayList<>();
        lifeCycleEvents.stream().forEach(lifeCycleEvent -> {
            LifeCycleEventVO vo = new LifeCycleEventVO();
            BeanUtil.convert(lifeCycleEvent,vo);
            vos.add(vo);
        });
        return vos;
    }
    /**
     * æ·»åŠ ä¿å­˜
     *
@@ -317,9 +329,7 @@
        LifeCycleRule rule = selectByOid(lifeCycleDTO.getOid());
        //查询重复
        QueryWrapper wrapper = new QueryWrapper(LifeCycleRule.class);
        if(rule.getId().equals(lifeCycleDTO.getId())){
            throw new VciBaseException("生命周期编号不能修改");
        }
        wrapper.eq("lower(id)",lifeCycleDTO.getId().toLowerCase(Locale.ROOT));
        wrapper.ne("oid",lifeCycleDTO.getOid());
        if(baseMapper.selectCount(wrapper)>0){
@@ -336,7 +346,7 @@
        String lifeOid = lifeCycleRule.getOid();
        QueryWrapper<LifeCycleNode> nodeWrapper = new QueryWrapper<>();
        nodeWrapper.eq("lifeCycleOid",lifeOid.toLowerCase(Locale.ROOT));
        nodeWrapper.eq("life_cycle_oid",lifeOid.toLowerCase(Locale.ROOT));
        List<LifeCycleNode> nodes = nodeMapper.selectList(nodeWrapper);
        List<LifeCycleNodeVO> nodeVos = new ArrayList<>();
        nodes.stream().forEach(doo->{
@@ -347,7 +357,7 @@
        vo.setNodes(nodeVos);
        QueryWrapper<LifeCycleEdge> edgeWrapper = new QueryWrapper<>();
        edgeWrapper.eq("lifeCycleOid",lifeOid.toLowerCase(Locale.ROOT));
        edgeWrapper.eq("life_cycle_oid",lifeOid.toLowerCase(Locale.ROOT));
        List<LifeCycleEdge> edges = edgeMapper.selectList(edgeWrapper);
        List<LifeCycleEdgeVO> edgeVos = new ArrayList<>();
        edges.stream().forEach(doo->{