@Autowired
private ProcessEngine processEngine;
@Autowired
private ModelService modelService;
//核心代码块
Model model = modelService.getModel(modelId);
ObjectMapper mapper = new ObjectMapper();
JsonNode jsonNode = mapper.readTree(model.getModelEditorJson());
BpmnModel bpmnModel = new BpmnJsonConverter().convertToBpmnModel(jsonNode);
byte[] bpmnBytes = new BpmnXMLConverter().convertToXML(bpmnModel);
String processName = "*.bpmn20.xml";
Deployment deployment = processEngine.getRepositoryService()
.createDeployment()
.addString(processName, new String(bpmnBytes,"UTF-8"))
.name(model.getName())
.key(model.getKey())
.category("")
.tenantId(appid)
.deploy();
org.activiti.engine.repository.Model repModel = processEngine.getRepositoryService().newModel();
repModel.setKey(model.getKey());
repModel.setName(model.getName());
repModel.setDeploymentId(deployment.getId());
repModel.setTenantId(appid);
processEngine.getRepositoryService().saveModel(repModel);