bug fixed active
This commit is contained in:
@ -63,6 +63,7 @@ import java.util.Locale;
|
|||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.regex.Matcher;
|
import java.util.regex.Matcher;
|
||||||
import java.util.regex.Pattern;
|
import java.util.regex.Pattern;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 流程模型控制器
|
* 流程模型控制器
|
||||||
*
|
*
|
||||||
@ -92,94 +93,97 @@ public class ModelController {
|
|||||||
protected TaskService taskService;
|
protected TaskService taskService;
|
||||||
|
|
||||||
@RequestMapping("/showModelList.do")
|
@RequestMapping("/showModelList.do")
|
||||||
public String showModelList(HttpServletRequest request,Model model) {
|
public String showModelList(HttpServletRequest request, Model model) {
|
||||||
return "/activiti/modelList";
|
return "/activiti/modelList";
|
||||||
}
|
}
|
||||||
|
|
||||||
@RequestMapping("/showProcessTechnicsList.do")
|
@RequestMapping("/showProcessTechnicsList.do")
|
||||||
public String showProcessTechnicsList(HttpServletRequest request,Model model) {
|
public String showProcessTechnicsList(HttpServletRequest request, Model model) {
|
||||||
return "/activiti/processTechnicsList";
|
return "/activiti/processTechnicsList";
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* 模型副本
|
* 模型副本
|
||||||
* */
|
* */
|
||||||
@RequestMapping(value = "copycreat.do")
|
@RequestMapping(value = "copycreat.do")
|
||||||
public ModelAndView copycreat(HttpServletRequest request,
|
public ModelAndView copycreat(HttpServletRequest request,
|
||||||
HttpServletResponse response,Model model
|
HttpServletResponse response, Model model
|
||||||
) throws IOException {
|
) throws IOException {
|
||||||
int result =0;
|
int result = 0;
|
||||||
User cu = (User)request.getSession().getAttribute("cu");
|
User cu = (User) request.getSession().getAttribute("cu");
|
||||||
String modelid = request.getParameter("id");
|
String modelid = request.getParameter("id");
|
||||||
org.activiti.engine.repository.Model modelData = repositoryService.getModel(modelid);
|
org.activiti.engine.repository.Model modelData = repositoryService.getModel(modelid);
|
||||||
ObjectNode modelNode = (ObjectNode) new ObjectMapper().readTree(repositoryService.getModelEditorSource(modelData.getId()));
|
ObjectNode modelNode = (ObjectNode) new ObjectMapper().readTree(repositoryService.getModelEditorSource(modelData.getId()));
|
||||||
byte[] bpmnBytes = null;
|
byte[] bpmnBytes = null;
|
||||||
try {
|
try {
|
||||||
|
|
||||||
bpmnBytes=modelNode.toString().getBytes("utf-8");
|
bpmnBytes = modelNode.toString().getBytes("utf-8");
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
}
|
}
|
||||||
|
|
||||||
org.activiti.engine.repository.Model modelData_new = repositoryService.newModel();
|
org.activiti.engine.repository.Model modelData_new = repositoryService.newModel();
|
||||||
ObjectMapper objectMapper = new ObjectMapper();
|
ObjectMapper objectMapper = new ObjectMapper();
|
||||||
ObjectNode modelObjectNode = objectMapper.createObjectNode();
|
ObjectNode modelObjectNode = objectMapper.createObjectNode();
|
||||||
modelObjectNode.put(ModelDataJsonConstants.MODEL_NAME,modelData.getName()+"(副本)" );
|
modelObjectNode.put(ModelDataJsonConstants.MODEL_NAME, modelData.getName() + "(副本)");
|
||||||
modelObjectNode.put(ModelDataJsonConstants.MODEL_REVISION, 1);
|
modelObjectNode.put(ModelDataJsonConstants.MODEL_REVISION, 1);
|
||||||
modelObjectNode.put(ModelDataJsonConstants.MODEL_DESCRIPTION, modelData.getName()+"(副本)");
|
modelObjectNode.put(ModelDataJsonConstants.MODEL_DESCRIPTION, modelData.getName() + "(副本)");
|
||||||
modelData_new.setMetaInfo(modelObjectNode.toString());
|
modelData_new.setMetaInfo(modelObjectNode.toString());
|
||||||
modelData_new.setName(modelData.getName()+"(副本)");
|
modelData_new.setName(modelData.getName() + "(副本)");
|
||||||
modelData_new.setKey(modelData.getKey());
|
modelData_new.setKey(modelData.getKey());
|
||||||
|
|
||||||
repositoryService.saveModel(modelData_new);
|
repositoryService.saveModel(modelData_new);
|
||||||
repositoryService.addModelEditorSource(modelData_new.getId(),bpmnBytes );
|
repositoryService.addModelEditorSource(modelData_new.getId(), bpmnBytes);
|
||||||
|
|
||||||
result =1;
|
result = 1;
|
||||||
model.addAttribute("result",result);
|
model.addAttribute("result", result);
|
||||||
return new ModelAndView("result");
|
return new ModelAndView("result");
|
||||||
}
|
}
|
||||||
|
|
||||||
@RequestMapping("/doimportExcel.do")
|
@RequestMapping("/doimportExcel.do")
|
||||||
public String doimportTechnics(HttpServletRequest request,Model model){
|
public String doimportTechnics(HttpServletRequest request, Model model) {
|
||||||
return "/activiti/importExcel4Model";
|
return "/activiti/importExcel4Model";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@RequestMapping(value = "saveImportModel.do")
|
@RequestMapping(value = "saveImportModel.do")
|
||||||
public ModelAndView saveImportActiviti(@RequestParam MultipartFile[] file, HttpServletRequest request,
|
public ModelAndView saveImportActiviti(@RequestParam MultipartFile[] file, HttpServletRequest request,
|
||||||
HttpServletResponse response,Model model) throws IOException {
|
HttpServletResponse response, Model model) throws IOException {
|
||||||
int result=0;
|
int result = 0;
|
||||||
User cu = (User)request.getSession().getAttribute("cu");
|
User cu = (User) request.getSession().getAttribute("cu");
|
||||||
//要存入的实际地址
|
//要存入的实际地址
|
||||||
String realPath = request.getSession().getServletContext().getRealPath("/");
|
String realPath = request.getSession().getServletContext().getRealPath("/");
|
||||||
String pjName = request.getContextPath().substring(1, request.getContextPath().length());
|
String pjName = request.getContextPath().substring(1, request.getContextPath().length());
|
||||||
realPath = realPath.replace(pjName,"Temp");
|
realPath = realPath.replace(pjName, "Temp");
|
||||||
//String technicsname="";
|
//String technicsname="";
|
||||||
List<TaskModel> taskModels= new ArrayList<>();//(technicsname,ptList);
|
List<TaskModel> taskModels = new ArrayList<>();//(technicsname,ptList);
|
||||||
|
|
||||||
String modelid =processModelService.autoImport(taskModels);
|
String modelid = processModelService.autoImport(taskModels);
|
||||||
|
|
||||||
List<String> unmainProcedure =new ArrayList<>();//存储未匹配预设工序的工序名
|
List<String> unmainProcedure = new ArrayList<>();//存储未匹配预设工序的工序名
|
||||||
if(modelid!=null && !modelid.isEmpty()){
|
if (modelid != null && !modelid.isEmpty()) {
|
||||||
try{
|
try {
|
||||||
SimpleDateFormat dateFormat = new SimpleDateFormat(
|
SimpleDateFormat dateFormat = new SimpleDateFormat(
|
||||||
"yyyy-MM-dd HH:mm:ss.SSS", Locale.SIMPLIFIED_CHINESE);
|
"yyyy-MM-dd HH:mm:ss.SSS", Locale.SIMPLIFIED_CHINESE);
|
||||||
result=1;
|
result = 1;
|
||||||
}catch(Exception e){
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
repositoryService.deleteModel(modelid);//管控信息保存失败时,删除模型
|
repositoryService.deleteModel(modelid);//管控信息保存失败时,删除模型
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
String res_str="";
|
String res_str = "";
|
||||||
for (String str : unmainProcedure) {
|
for (String str : unmainProcedure) {
|
||||||
if(!res_str.isEmpty()){
|
if (!res_str.isEmpty()) {
|
||||||
res_str+=",";
|
res_str += ",";
|
||||||
}
|
}
|
||||||
str=str.replace(" ", "").replace("\n", "");
|
str = str.replace(" ", "").replace("\n", "");
|
||||||
res_str+=str;
|
res_str += str;
|
||||||
}
|
}
|
||||||
model.addAttribute("result","{\"res\":\""+result+"\",\"unmatch\":\""+res_str+"\"}");
|
model.addAttribute("result", "{\"res\":\"" + result + "\",\"unmatch\":\"" + res_str + "\"}");
|
||||||
return new ModelAndView("result");
|
return new ModelAndView("result");
|
||||||
}
|
}
|
||||||
|
|
||||||
/* //导入文档最后一个sheet
|
/* //导入文档最后一个sheet
|
||||||
public String importByExcel(String realPath, MultipartFile[] file,List<ProcessTechnics> ptList) throws IOException {
|
public String importByExcel(String realPath, MultipartFile[] file,List<ProcessTechnics> ptList) throws IOException {
|
||||||
String technicsname="";
|
String technicsname="";
|
||||||
//上传文件的原名(即上传前的文件名字)
|
//上传文件的原名(即上传前的文件名字)
|
||||||
@ -240,16 +244,16 @@ public class ModelController {
|
|||||||
|
|
||||||
return technicsname;
|
return technicsname;
|
||||||
}
|
}
|
||||||
*/ //根据导入excel获取工艺名称,即产品编号
|
*/ //根据导入excel获取工艺名称,即产品编号
|
||||||
private String getTechnicsName(Sheet sheet ,int row_NO){
|
private String getTechnicsName(Sheet sheet, int row_NO) {
|
||||||
String res="";
|
String res = "";
|
||||||
Row row = sheet.getRow(row_NO);
|
Row row = sheet.getRow(row_NO);
|
||||||
for(int i=0;i<row.getLastCellNum();i++){
|
for (int i = 0; i < row.getLastCellNum(); i++) {
|
||||||
String cellcontent=getMergedRegionValue(sheet,row_NO,i);
|
String cellcontent = getMergedRegionValue(sheet, row_NO, i);
|
||||||
if(cellcontent!=null && cellcontent.equals(CommString.Flag_Technics_Name)){
|
if (cellcontent != null && cellcontent.equals(CommString.Flag_Technics_Name)) {
|
||||||
continue;
|
continue;
|
||||||
}else{
|
} else {
|
||||||
res=cellcontent;
|
res = cellcontent;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -418,60 +422,64 @@ public class ModelController {
|
|||||||
/*
|
/*
|
||||||
* 获取主工序code
|
* 获取主工序code
|
||||||
* */
|
* */
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取合并单元格的值
|
* 获取合并单元格的值
|
||||||
|
*
|
||||||
* @param sheet
|
* @param sheet
|
||||||
* @param row
|
* @param row
|
||||||
* @param column
|
* @param column
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public String getMergedRegionValue(Sheet sheet ,int row , int column){
|
public String getMergedRegionValue(Sheet sheet, int row, int column) {
|
||||||
int sheetMergeCount = sheet.getNumMergedRegions();
|
int sheetMergeCount = sheet.getNumMergedRegions();
|
||||||
|
|
||||||
for(int i = 0 ; i < sheetMergeCount ; i++){
|
for (int i = 0; i < sheetMergeCount; i++) {
|
||||||
CellRangeAddress ca = sheet.getMergedRegion(i);
|
CellRangeAddress ca = sheet.getMergedRegion(i);
|
||||||
int firstColumn = ca.getFirstColumn();
|
int firstColumn = ca.getFirstColumn();
|
||||||
int lastColumn = ca.getLastColumn();
|
int lastColumn = ca.getLastColumn();
|
||||||
int firstRow = ca.getFirstRow();
|
int firstRow = ca.getFirstRow();
|
||||||
int lastRow = ca.getLastRow();
|
int lastRow = ca.getLastRow();
|
||||||
|
|
||||||
if(row >= firstRow && row <= lastRow){
|
if (row >= firstRow && row <= lastRow) {
|
||||||
|
|
||||||
if(column >= firstColumn && column <= lastColumn){
|
if (column >= firstColumn && column <= lastColumn) {
|
||||||
Row fRow = sheet.getRow(firstRow);
|
Row fRow = sheet.getRow(firstRow);
|
||||||
Cell fCell = fRow.getCell(firstColumn);
|
Cell fCell = fRow.getCell(firstColumn);
|
||||||
|
|
||||||
return getCellValue(fCell) ;
|
return getCellValue(fCell);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return null ;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取单元格的值
|
* 获取单元格的值
|
||||||
|
*
|
||||||
* @param cell
|
* @param cell
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public String getCellValue(Cell cell){
|
public String getCellValue(Cell cell) {
|
||||||
|
|
||||||
if(cell == null) {
|
if (cell == null) {
|
||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
|
|
||||||
if(cell.getCellType() == CellType.STRING){
|
if (cell.getCellType() == CellType.STRING) {
|
||||||
|
|
||||||
return cell.getStringCellValue();
|
return cell.getStringCellValue();
|
||||||
|
|
||||||
}else if(cell.getCellType() == CellType.BOOLEAN){
|
} else if (cell.getCellType() == CellType.BOOLEAN) {
|
||||||
|
|
||||||
return String.valueOf(cell.getBooleanCellValue());
|
return String.valueOf(cell.getBooleanCellValue());
|
||||||
|
|
||||||
}else if(cell.getCellType() == CellType.FORMULA){
|
} else if (cell.getCellType() == CellType.FORMULA) {
|
||||||
|
|
||||||
return cell.getCellFormula() ;
|
return cell.getCellFormula();
|
||||||
|
|
||||||
}else if(cell.getCellType() == CellType.NUMERIC){
|
} else if (cell.getCellType() == CellType.NUMERIC) {
|
||||||
|
|
||||||
return String.valueOf(cell.getNumericCellValue());
|
return String.valueOf(cell.getNumericCellValue());
|
||||||
|
|
||||||
@ -479,6 +487,7 @@ public class ModelController {
|
|||||||
|
|
||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* 将存在的值赋给目标变量
|
* 将存在的值赋给目标变量
|
||||||
* */
|
* */
|
||||||
@ -504,44 +513,45 @@ public class ModelController {
|
|||||||
throw new Exception("属性复制失败:" + e.getMessage());
|
throw new Exception("属性复制失败:" + e.getMessage());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 流程定义列表
|
* 流程定义列表
|
||||||
*
|
*
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@RequestMapping(value = "/getModelList.do")
|
@RequestMapping(value = "/getModelList.do")
|
||||||
public ModelAndView getModelList(HttpServletRequest request,Model model,
|
public ModelAndView getModelList(HttpServletRequest request, Model model,
|
||||||
@RequestParam(value = "page") Integer page,
|
@RequestParam(value = "page") Integer page,
|
||||||
@RequestParam(value = "rows") Integer rows,
|
@RequestParam(value = "rows") Integer rows,
|
||||||
@RequestParam(value = "sort", required=false) String sort,
|
@RequestParam(value = "sort", required = false) String sort,
|
||||||
@RequestParam(value = "order", required=false) String order) {
|
@RequestParam(value = "order", required = false) String order) {
|
||||||
User cu= (User)request.getSession().getAttribute("cu");
|
User cu = (User) request.getSession().getAttribute("cu");
|
||||||
|
|
||||||
int startNum=0;
|
int startNum = 0;
|
||||||
if(rows==null || rows==0){
|
if (rows == null || rows == 0) {
|
||||||
rows = 50;
|
rows = 50;
|
||||||
}
|
}
|
||||||
if(page!=null && page>0){
|
if (page != null && page > 0) {
|
||||||
startNum =(page-1)*rows;
|
startNum = (page - 1) * rows;
|
||||||
}
|
}
|
||||||
String wherestr = " where 1=1 ";
|
String wherestr = " where 1=1 ";
|
||||||
if(request.getParameter("search_name")!=null && !request.getParameter("search_name").isEmpty()){
|
if (request.getParameter("search_name") != null && !request.getParameter("search_name").isEmpty()) {
|
||||||
wherestr += " and NAME_ like '%"+request.getParameter("search_name")+"%' ";
|
wherestr += " and NAME_ like '%" + request.getParameter("search_name") + "%' ";
|
||||||
}
|
}
|
||||||
if(request.getParameter("search_code")!=null && !request.getParameter("search_code").isEmpty()){
|
if (request.getParameter("search_code") != null && !request.getParameter("search_code").isEmpty()) {
|
||||||
wherestr += " and KEY_ like '%"+request.getParameter("search_code")+"%' ";
|
wherestr += " and KEY_ like '%" + request.getParameter("search_code") + "%' ";
|
||||||
}else{
|
} else {
|
||||||
if(!cu.getId().equals(CommString.ID_Admin)){
|
if (!cu.getId().equals(CommString.ID_Admin)) {
|
||||||
List<Company> companies = unitService.getCompaniesByUserId(cu.getId());
|
List<Company> companies = unitService.getCompaniesByUserId(cu.getId());
|
||||||
if(companies!=null && companies.size()>0){
|
if (companies != null && companies.size() > 0) {
|
||||||
for(int i=0;i<companies.size();i++){
|
for (int i = 0; i < companies.size(); i++) {
|
||||||
wherestr += " and KEY_ like '%"+companies.get(0).getId()+"%' ";
|
wherestr += " and KEY_ like '%" + companies.get(0).getId() + "%' ";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
String sql = "select * from [ACT_RE_MODEL]"+wherestr;
|
String sql = "select * from [ACT_RE_MODEL]" + wherestr;
|
||||||
//page = 2;
|
//page = 2;
|
||||||
// List<org.activiti.engine.repository.Model> list = repositoryService.createModelQuery().orderByCreateTime().desc().listPage(startNum, rows);
|
// List<org.activiti.engine.repository.Model> list = repositoryService.createModelQuery().orderByCreateTime().desc().listPage(startNum, rows);
|
||||||
List<org.activiti.engine.repository.Model> list = repositoryService.createNativeModelQuery().sql(sql).list();
|
List<org.activiti.engine.repository.Model> list = repositoryService.createNativeModelQuery().sql(sql).list();
|
||||||
@ -565,98 +575,103 @@ public class ModelController {
|
|||||||
}
|
}
|
||||||
}*/
|
}*/
|
||||||
PageInfo<org.activiti.engine.repository.Model> pi = new PageInfo<org.activiti.engine.repository.Model>(list);
|
PageInfo<org.activiti.engine.repository.Model> pi = new PageInfo<org.activiti.engine.repository.Model>(list);
|
||||||
JSONArray json=JSONArray.fromObject(list);
|
JSONArray json = JSONArray.fromObject(list);
|
||||||
String result="{\"total\":"+list.size()+",\"rows\":"+json+"}";
|
String result = "{\"total\":" + list.size() + ",\"rows\":" + json + "}";
|
||||||
model.addAttribute("result",result);
|
model.addAttribute("result", result);
|
||||||
|
|
||||||
return new ModelAndView("result");
|
return new ModelAndView("result");
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// page.setTotalCount(processDefinitionQuery.count());
|
// page.setTotalCount(processDefinitionQuery.count());
|
||||||
// page.setResult(objects);
|
// page.setResult(objects);
|
||||||
// mav.addObject("page", page);
|
// mav.addObject("page", page);
|
||||||
//
|
//
|
||||||
// return mav;
|
// return mav;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 流程定义列表
|
* 流程定义列表
|
||||||
*
|
*
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@RequestMapping(value = "/getModelAll.do")
|
@RequestMapping(value = "/getModelAll.do")
|
||||||
public ModelAndView getModelAll(HttpServletRequest request,Model model) {
|
public ModelAndView getModelAll(HttpServletRequest request, Model model) {
|
||||||
User cu=(User)request.getSession().getAttribute("cu");
|
User cu = (User) request.getSession().getAttribute("cu");
|
||||||
String userId = cu.getId();
|
String userId = cu.getId();
|
||||||
String wherestr = " where 1=1 ";
|
String wherestr = " where 1=1 ";
|
||||||
if(request.getParameter("bizid")!=null && !request.getParameter("bizid").isEmpty()){
|
if (request.getParameter("bizid") != null && !request.getParameter("bizid").isEmpty()) {
|
||||||
wherestr += " and KEY_ like '%"+request.getParameter("bizid")+"%' ";
|
wherestr += " and KEY_ like '%" + request.getParameter("bizid") + "%' ";
|
||||||
}
|
}
|
||||||
String sql = "select * from [ACT_RE_MODEL]"+wherestr;
|
String sql = "select * from [ACT_RE_MODEL]" + wherestr;
|
||||||
List<org.activiti.engine.repository.Model> list = repositoryService.createNativeModelQuery().sql(sql).list();
|
List<org.activiti.engine.repository.Model> list = repositoryService.createNativeModelQuery().sql(sql).list();
|
||||||
JSONArray json=JSONArray.fromObject(list);
|
JSONArray json = JSONArray.fromObject(list);
|
||||||
JSONArray rows = new JSONArray();
|
JSONArray rows = new JSONArray();
|
||||||
if(json!=null && json.size()>0){
|
if (json != null && json.size() > 0) {
|
||||||
for(int i=0;i<json.size();i++){
|
for (int i = 0; i < json.size(); i++) {
|
||||||
JSONObject job = json.getJSONObject(i);
|
JSONObject job = json.getJSONObject(i);
|
||||||
TaskQuery taskQuery = taskService.createTaskQuery().taskCandidateOrAssigned(userId).processDefinitionKey(job.get("key").toString());
|
TaskQuery taskQuery = taskService.createTaskQuery().taskCandidateOrAssigned(userId).processDefinitionKey(job.get("key").toString());
|
||||||
List<Task> taskList = taskQuery.list();
|
List<Task> taskList = taskQuery.list();
|
||||||
int taskNum = taskList.size();
|
int taskNum = taskList.size();
|
||||||
job.put("taskNum",taskNum);
|
job.put("taskNum", taskNum);
|
||||||
rows.add(job);
|
rows.add(job);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
String result="{\"total\":"+list.size()+",\"rows\":"+rows+"}";
|
String result = "{\"total\":" + list.size() + ",\"rows\":" + rows + "}";
|
||||||
model.addAttribute("result",result);
|
model.addAttribute("result", result);
|
||||||
|
|
||||||
return new ModelAndView("result");
|
return new ModelAndView("result");
|
||||||
}
|
}
|
||||||
|
|
||||||
@RequestMapping("/addModel.do")
|
@RequestMapping("/addModel.do")
|
||||||
public String addModel(HttpServletRequest request,Model model) {
|
public String addModel(HttpServletRequest request, Model model) {
|
||||||
Company company = this.unitService.getCompById(request.getParameter("companyId"));
|
Company company = this.unitService.getCompById(request.getParameter("companyId"));
|
||||||
request.setAttribute("company", company);
|
request.setAttribute("company", company);
|
||||||
return "/activiti/modelAdd";
|
return "/activiti/modelAdd";
|
||||||
}
|
}
|
||||||
|
|
||||||
@RequestMapping("/editModel.do")
|
@RequestMapping("/editModel.do")
|
||||||
public String editModel(HttpServletRequest request,Model model) {
|
public String editModel(HttpServletRequest request, Model model) {
|
||||||
String modelId = request.getParameter("modelid");
|
String modelId = request.getParameter("modelid");
|
||||||
org.activiti.engine.repository.Model modelData = repositoryService.getModel(modelId);
|
org.activiti.engine.repository.Model modelData = repositoryService.getModel(modelId);
|
||||||
model.addAttribute("model", modelData);
|
model.addAttribute("model", modelData);
|
||||||
String metainfo = modelData.getMetaInfo();
|
String metainfo = modelData.getMetaInfo();
|
||||||
JSONObject modelObjectNode = JSONObject.fromObject(metainfo) ;
|
JSONObject modelObjectNode = JSONObject.fromObject(metainfo);
|
||||||
String description = modelObjectNode.getString(ModelDataJsonConstants.MODEL_DESCRIPTION);
|
String description = modelObjectNode.getString(ModelDataJsonConstants.MODEL_DESCRIPTION);
|
||||||
String[] str =modelData.getKey().split("-");
|
String[] str = modelData.getKey().split("-");
|
||||||
model.addAttribute("processTypeId", str[0]);
|
model.addAttribute("processTypeId", str[0]);
|
||||||
String companyId = str[1];
|
String companyId = str[1];
|
||||||
Company company = this.unitService.getCompById(companyId);
|
Company company = this.unitService.getCompById(companyId);
|
||||||
request.setAttribute("company", company);
|
request.setAttribute("company", company);
|
||||||
model.addAttribute("description", description);
|
model.addAttribute("description", description);
|
||||||
if (str.length>2) {
|
if (str.length > 2) {
|
||||||
String maintenanceType = str[2];
|
String maintenanceType = str[2];
|
||||||
model.addAttribute("maintenanceType", maintenanceType);
|
model.addAttribute("maintenanceType", maintenanceType);
|
||||||
}
|
}
|
||||||
return "/activiti/modelEdit";
|
return "/activiti/modelEdit";
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 编辑流程图
|
* 编辑流程图
|
||||||
* @author wuping
|
*
|
||||||
* @return
|
* @return
|
||||||
|
* @author wuping
|
||||||
*/
|
*/
|
||||||
@RequestMapping("/editFlow.do")
|
@RequestMapping("/editFlow.do")
|
||||||
public String editFlow(HttpServletRequest request,Model model) {
|
public String editFlow(HttpServletRequest request, Model model) {
|
||||||
return "/activiti/modelFlowEdit";
|
return "/activiti/modelFlowEdit";
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 编辑流程节点添加业务
|
* 编辑流程节点添加业务
|
||||||
* @author wuping
|
*
|
||||||
* @return
|
* @return
|
||||||
|
* @author wuping
|
||||||
*/
|
*/
|
||||||
@RequestMapping("/editNode.do")
|
@RequestMapping("/editNode.do")
|
||||||
public String editNode(HttpServletRequest request,Model model) {
|
public String editNode(HttpServletRequest request, Model model) {
|
||||||
//String prString= request.getParameter("processTypeId");
|
//String prString= request.getParameter("processTypeId");
|
||||||
String modelid = request.getParameter("modelid");
|
String modelid = request.getParameter("modelid");
|
||||||
int index=0;
|
int index = 0;
|
||||||
String resourceId = request.getParameter("resourceId");
|
String resourceId = request.getParameter("resourceId");
|
||||||
String bizId = request.getParameter("bizId");
|
String bizId = request.getParameter("bizId");
|
||||||
Company company = this.unitService.getCompById(bizId);
|
Company company = this.unitService.getCompById(bizId);
|
||||||
@ -667,22 +682,22 @@ public class ModelController {
|
|||||||
Object businessid = "";
|
Object businessid = "";
|
||||||
try {
|
try {
|
||||||
modelNode = (ObjectNode) new ObjectMapper().readTree(repositoryService.getModelEditorSource(modelid));
|
modelNode = (ObjectNode) new ObjectMapper().readTree(repositoryService.getModelEditorSource(modelid));
|
||||||
for(int i=0;i<modelNode.get("childShapes").size();i++){
|
for (int i = 0; i < modelNode.get("childShapes").size(); i++) {
|
||||||
if(modelNode.get("childShapes").path(i).get("resourceId").asText().equals(resourceId)){
|
if (modelNode.get("childShapes").path(i).get("resourceId").asText().equals(resourceId)) {
|
||||||
index = i;
|
index = i;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
JsonNode json =modelNode.get("childShapes").path(index);
|
JsonNode json = modelNode.get("childShapes").path(index);
|
||||||
JsonNode properties = json.get("properties");
|
JsonNode properties = json.get("properties");
|
||||||
System.out.println(properties);
|
System.out.println(properties);
|
||||||
name =properties.get("name").asText();
|
name = properties.get("name").asText();
|
||||||
JsonNode stencil = json.get("stencil");
|
JsonNode stencil = json.get("stencil");
|
||||||
nodetype =stencil.get("id").asText();
|
nodetype = stencil.get("id").asText();
|
||||||
businessid =properties.get("documentation");
|
businessid = properties.get("documentation");
|
||||||
if(businessid != null){
|
if (businessid != null) {
|
||||||
businessid =properties.get("documentation").asText();
|
businessid = properties.get("documentation").asText();
|
||||||
}else{
|
} else {
|
||||||
businessid = "";
|
businessid = "";
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -709,45 +724,50 @@ public class ModelController {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 流程节点列表
|
* 流程节点列表
|
||||||
* @author wuping
|
*
|
||||||
* @return
|
* @return
|
||||||
|
* @author wuping
|
||||||
*/
|
*/
|
||||||
@RequestMapping("modelNode.do")
|
@RequestMapping("modelNode.do")
|
||||||
public ModelAndView modelNode(HttpServletRequest request,Model model) {
|
public ModelAndView modelNode(HttpServletRequest request, Model model) {
|
||||||
String modelId = request.getParameter("modelid");
|
String modelId = request.getParameter("modelid");
|
||||||
org.activiti.engine.repository.Model modelData = repositoryService.getModel(modelId);
|
org.activiti.engine.repository.Model modelData = repositoryService.getModel(modelId);
|
||||||
model.addAttribute("model", modelData);
|
model.addAttribute("model", modelData);
|
||||||
JSONArray jsonArray =new JSONArray();
|
JSONArray jsonArray = new JSONArray();
|
||||||
|
|
||||||
Map map;
|
Map map;
|
||||||
try {
|
try {
|
||||||
ObjectNode modelNode = (ObjectNode) new ObjectMapper().readTree(repositoryService.getModelEditorSource(modelData.getId()));
|
ObjectNode modelNode = (ObjectNode) new ObjectMapper().readTree(repositoryService.getModelEditorSource(modelData.getId()));
|
||||||
JsonNode childShapes =modelNode.get("childShapes");
|
JsonNode childShapes = modelNode.get("childShapes");
|
||||||
if(childShapes!= null && childShapes.size()>0){
|
if (childShapes != null && childShapes.size() > 0) {
|
||||||
for(int i=0;i<childShapes.size();i++){
|
for (int i = 0; i < childShapes.size(); i++) {
|
||||||
JsonNode stencil = childShapes.path(i).get("stencil");
|
JsonNode stencil = childShapes.path(i).get("stencil");
|
||||||
if(stencil.get("id").asText().toString().equals("UserTask")){
|
if (stencil.get("id").asText().toString().equals("UserTask")) {
|
||||||
JSONObject json = JSONObject.fromObject(childShapes.path(i).toString());
|
JSONObject json = JSONObject.fromObject(childShapes.path(i).toString());
|
||||||
JSONObject properties = JSONObject.fromObject(json.get("properties").toString());
|
JSONObject properties = JSONObject.fromObject(json.get("properties").toString());
|
||||||
String documentation = properties.get("documentation").toString();
|
String documentation = "";
|
||||||
|
Object documentation1 = properties.get("documentation");
|
||||||
|
if (documentation1 != null) {
|
||||||
|
documentation = documentation1.toString();
|
||||||
|
json.put("businessunit", businessUnitService.selectById(documentation));
|
||||||
|
}
|
||||||
// 获取节点名称
|
// 获取节点名称
|
||||||
String nodeName = "";
|
String nodeName = "";
|
||||||
if(properties.has("name") && properties.get("name") != null) {
|
if (properties.has("name") && properties.get("name") != null) {
|
||||||
nodeName = properties.get("name").toString();
|
nodeName = properties.get("name").toString();
|
||||||
|
}else if(properties.has("namename") && properties.get("namename") != null) {
|
||||||
|
nodeName = properties.get("namename").toString();
|
||||||
}
|
}
|
||||||
// 添加节点名称字段,方便前端显示
|
// 添加节点名称字段,方便前端显示
|
||||||
json.put("nodeName", nodeName);
|
json.put("nodeName", nodeName);
|
||||||
|
|
||||||
json.put("businessunit", businessUnitService.selectById(documentation));
|
|
||||||
String resourceId = json.get("resourceId").toString();
|
String resourceId = json.get("resourceId").toString();
|
||||||
List<ModelNodeJob> list = this.jobService.selectModelNodeJobListByWhere(" where resource_id='"+resourceId+"' and model_id ='"+modelData.getId()+"' ");
|
List<ModelNodeJob> list = this.jobService.selectModelNodeJobListByWhere(" where resource_id='" + resourceId + "' and model_id ='" + modelData.getId() + "' ");
|
||||||
StringBuilder jobNames= new StringBuilder();
|
StringBuilder jobNames = new StringBuilder();
|
||||||
StringBuilder jobIds= new StringBuilder();
|
StringBuilder jobIds = new StringBuilder();
|
||||||
if(list != null && !list.isEmpty()){
|
if (list != null && !list.isEmpty()) {
|
||||||
for(int j=0;j<list.size();j++){
|
for (int j = 0; j < list.size(); j++) {
|
||||||
if(list.get(j)!=null){
|
if (list.get(j) != null) {
|
||||||
if(list.get(j).getName() != null && list.get(j).getName() !="" && list.get(j).getName() != "null"){
|
if (list.get(j).getName() != null && list.get(j).getName() != "" && list.get(j).getName() != "null") {
|
||||||
jobNames.append(list.get(j).getName()).append(",");
|
jobNames.append(list.get(j).getName()).append(",");
|
||||||
jobIds.append(list.get(j).getJobId()).append(",");
|
jobIds.append(list.get(j).getJobId()).append(",");
|
||||||
}
|
}
|
||||||
@ -756,7 +776,7 @@ public class ModelController {
|
|||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(!jobNames.toString().isEmpty()){
|
if (!jobNames.toString().isEmpty()) {
|
||||||
json.put("jobNames", jobNames.toString());
|
json.put("jobNames", jobNames.toString());
|
||||||
json.put("jobIds", jobIds.toString());
|
json.put("jobIds", jobIds.toString());
|
||||||
|
|
||||||
@ -768,7 +788,7 @@ public class ModelController {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
String result = "{\"total\":" + jsonArray.size() + ",\"rows\":" + jsonArray + "}";
|
String result = "{\"total\":" + jsonArray.size() + ",\"rows\":" + jsonArray + "}";
|
||||||
model.addAttribute("result",result);
|
model.addAttribute("result", result);
|
||||||
|
|
||||||
|
|
||||||
} catch (JsonProcessingException e) {
|
} catch (JsonProcessingException e) {
|
||||||
@ -782,32 +802,33 @@ public class ModelController {
|
|||||||
return new ModelAndView("result");
|
return new ModelAndView("result");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 更新模型
|
* 更新模型
|
||||||
*/
|
*/
|
||||||
@RequestMapping(value = "update", method = RequestMethod.POST)
|
@RequestMapping(value = "update", method = RequestMethod.POST)
|
||||||
public String update(HttpServletRequest request,Model model,
|
public String update(HttpServletRequest request, Model model,
|
||||||
@RequestParam(value ="id") String id,
|
@RequestParam(value = "id") String id,
|
||||||
@RequestParam(value ="name") String name,
|
@RequestParam(value = "name") String name,
|
||||||
@RequestParam(value ="description", required=false) String description,
|
@RequestParam(value = "description", required = false) String description,
|
||||||
@RequestParam(value ="companyid") String companyid,
|
@RequestParam(value = "companyid") String companyid,
|
||||||
@RequestParam(value ="processType") String processType,HttpServletResponse response){
|
@RequestParam(value = "processType") String processType, HttpServletResponse response) {
|
||||||
User cu= (User)request.getSession().getAttribute("cu");
|
User cu = (User) request.getSession().getAttribute("cu");
|
||||||
|
|
||||||
String result="";
|
String result = "";
|
||||||
try {
|
try {
|
||||||
|
|
||||||
org.activiti.engine.repository.Model modelData = repositoryService.getModel(id);
|
org.activiti.engine.repository.Model modelData = repositoryService.getModel(id);
|
||||||
modelData.setName(name);
|
modelData.setName(name);
|
||||||
String modelKey=processType+"-"+companyid;
|
String modelKey = processType + "-" + companyid;
|
||||||
String maintenanceType=request.getParameter("maintenanceType");
|
String maintenanceType = request.getParameter("maintenanceType");
|
||||||
if (ProcessType.B_Maintenance.getId().equals(processType)) {
|
if (ProcessType.B_Maintenance.getId().equals(processType)) {
|
||||||
modelKey+="-"+maintenanceType;
|
modelKey += "-" + maintenanceType;
|
||||||
}
|
}
|
||||||
modelData.setKey(modelKey);//模型key
|
modelData.setKey(modelKey);//模型key
|
||||||
description = StringUtils.defaultString(description);
|
description = StringUtils.defaultString(description);
|
||||||
String metainfo = modelData.getMetaInfo();
|
String metainfo = modelData.getMetaInfo();
|
||||||
JSONObject modelObjectNode = JSONObject.fromObject(metainfo) ;
|
JSONObject modelObjectNode = JSONObject.fromObject(metainfo);
|
||||||
modelObjectNode.put(ModelDataJsonConstants.MODEL_DESCRIPTION, description);
|
modelObjectNode.put(ModelDataJsonConstants.MODEL_DESCRIPTION, description);
|
||||||
modelData.setMetaInfo(modelObjectNode.toString());
|
modelData.setMetaInfo(modelObjectNode.toString());
|
||||||
repositoryService.saveModel(modelData);
|
repositoryService.saveModel(modelData);
|
||||||
@ -819,7 +840,7 @@ public class ModelController {
|
|||||||
propertiesNode.put("name", modelData.getName());
|
propertiesNode.put("name", modelData.getName());
|
||||||
modelNode.put("properties", propertiesNode);
|
modelNode.put("properties", propertiesNode);
|
||||||
repositoryService.addModelEditorSource(modelData.getId(), modelNode.toString().getBytes("utf-8"));
|
repositoryService.addModelEditorSource(modelData.getId(), modelNode.toString().getBytes("utf-8"));
|
||||||
result=modelData.getId();
|
result = modelData.getId();
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
logger.error("创建模型失败:", e);
|
logger.error("创建模型失败:", e);
|
||||||
}
|
}
|
||||||
@ -827,17 +848,18 @@ public class ModelController {
|
|||||||
model.addAttribute("result", result);
|
model.addAttribute("result", result);
|
||||||
return "result";
|
return "result";
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 创建模型
|
* 创建模型
|
||||||
*/
|
*/
|
||||||
@RequestMapping(value = "create", method = RequestMethod.POST)
|
@RequestMapping(value = "create", method = RequestMethod.POST)
|
||||||
public String create(HttpServletRequest request,Model model,
|
public String create(HttpServletRequest request, Model model,
|
||||||
@RequestParam(value ="name") String name,
|
@RequestParam(value = "name") String name,
|
||||||
@RequestParam(value ="description", required=false) String description,
|
@RequestParam(value = "description", required = false) String description,
|
||||||
@RequestParam(value ="companyid") String companyid,
|
@RequestParam(value = "companyid") String companyid,
|
||||||
@RequestParam(value ="processType") String processType,
|
@RequestParam(value = "processType") String processType,
|
||||||
HttpServletResponse response) {
|
HttpServletResponse response) {
|
||||||
String result="";
|
String result = "";
|
||||||
try {
|
try {
|
||||||
ObjectMapper objectMapper = new ObjectMapper();
|
ObjectMapper objectMapper = new ObjectMapper();
|
||||||
ObjectNode editorNode = objectMapper.createObjectNode();
|
ObjectNode editorNode = objectMapper.createObjectNode();
|
||||||
@ -854,10 +876,10 @@ public class ModelController {
|
|||||||
modelObjectNode.put(ModelDataJsonConstants.MODEL_DESCRIPTION, description);
|
modelObjectNode.put(ModelDataJsonConstants.MODEL_DESCRIPTION, description);
|
||||||
modelData.setMetaInfo(modelObjectNode.toString());
|
modelData.setMetaInfo(modelObjectNode.toString());
|
||||||
modelData.setName(name);
|
modelData.setName(name);
|
||||||
String maintenanceType=request.getParameter("maintenanceType");
|
String maintenanceType = request.getParameter("maintenanceType");
|
||||||
String modelKey=processType+"-"+companyid;
|
String modelKey = processType + "-" + companyid;
|
||||||
if (ProcessType.B_Maintenance.getId().equals(processType)) {
|
if (ProcessType.B_Maintenance.getId().equals(processType)) {
|
||||||
modelKey+="-"+maintenanceType;
|
modelKey += "-" + maintenanceType;
|
||||||
}
|
}
|
||||||
modelData.setKey(modelKey);//模型key
|
modelData.setKey(modelKey);//模型key
|
||||||
|
|
||||||
@ -869,37 +891,39 @@ public class ModelController {
|
|||||||
|
|
||||||
repositoryService.saveModel(modelData);
|
repositoryService.saveModel(modelData);
|
||||||
repositoryService.addModelEditorSource(modelData.getId(), editorNode.toString().getBytes("utf-8"));
|
repositoryService.addModelEditorSource(modelData.getId(), editorNode.toString().getBytes("utf-8"));
|
||||||
result=modelData.getId();
|
result = modelData.getId();
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
logger.error("创建模型失败:", e);
|
logger.error("创建模型失败:", e);
|
||||||
}
|
}
|
||||||
model.addAttribute("result",result );
|
model.addAttribute("result", result);
|
||||||
return "result";
|
return "result";
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 更新业务流程节点
|
* 更新业务流程节点
|
||||||
* @author wuping
|
*
|
||||||
* @return
|
* @return
|
||||||
|
* @author wuping
|
||||||
*/
|
*/
|
||||||
@RequestMapping("/saveNode.do")
|
@RequestMapping("/saveNode.do")
|
||||||
public String saveNode(HttpServletRequest request,Model model,
|
public String saveNode(HttpServletRequest request, Model model,
|
||||||
@RequestParam(value ="businessid") String businessid,
|
@RequestParam(value = "businessid") String businessid,
|
||||||
@RequestParam(value ="nodename") String nodename,
|
@RequestParam(value = "nodename") String nodename,
|
||||||
@RequestParam(value ="modelid") String modelid,
|
@RequestParam(value = "modelid") String modelid,
|
||||||
@RequestParam(value ="index") String index,
|
@RequestParam(value = "index") String index,
|
||||||
@RequestParam(value = "countersign",required = false,defaultValue = "false") boolean countersign,
|
@RequestParam(value = "countersign", required = false, defaultValue = "false") boolean countersign,
|
||||||
HttpServletResponse response) {
|
HttpServletResponse response) {
|
||||||
String result="";
|
String result = "";
|
||||||
JsonNode modelNode;
|
JsonNode modelNode;
|
||||||
JSONObject modelobject;
|
JSONObject modelobject;
|
||||||
BpmnModel bpmnModel ;
|
BpmnModel bpmnModel;
|
||||||
BpmnJsonConverter bpmnJsonConverter;
|
BpmnJsonConverter bpmnJsonConverter;
|
||||||
try {
|
try {
|
||||||
int i = Integer.valueOf(index);
|
int i = Integer.valueOf(index);
|
||||||
modelNode = new ObjectMapper().readTree(repositoryService.getModelEditorSource(modelid));
|
modelNode = new ObjectMapper().readTree(repositoryService.getModelEditorSource(modelid));
|
||||||
modelobject = JSONObject.fromObject(new ObjectMapper().writeValueAsString(modelNode));
|
modelobject = JSONObject.fromObject(new ObjectMapper().writeValueAsString(modelNode));
|
||||||
JSONObject json= modelobject.getJSONArray("childShapes").getJSONObject(i);
|
JSONObject json = modelobject.getJSONArray("childShapes").getJSONObject(i);
|
||||||
JSONObject properties =json.getJSONObject("properties");
|
JSONObject properties = json.getJSONObject("properties");
|
||||||
properties.put("documentation", businessid);
|
properties.put("documentation", businessid);
|
||||||
properties.put("name", nodename);
|
properties.put("name", nodename);
|
||||||
properties.put("nodename", nodename);
|
properties.put("nodename", nodename);
|
||||||
@ -944,7 +968,7 @@ public class ModelController {
|
|||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
logger.error("创建模型失败:", e);
|
logger.error("创建模型失败:", e);
|
||||||
}
|
}
|
||||||
model.addAttribute("result",result );
|
model.addAttribute("result", result);
|
||||||
return "result";
|
return "result";
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -952,64 +976,64 @@ public class ModelController {
|
|||||||
* 根据Model部署流程
|
* 根据Model部署流程
|
||||||
*/
|
*/
|
||||||
@RequestMapping(value = "deploy", method = RequestMethod.POST)
|
@RequestMapping(value = "deploy", method = RequestMethod.POST)
|
||||||
public String deploy(HttpServletRequest request,Model model,
|
public String deploy(HttpServletRequest request, Model model,
|
||||||
@RequestParam(value ="modelId") String modelId) {
|
@RequestParam(value = "modelId") String modelId) {
|
||||||
/*String result=processModelService.deploy(modelId);
|
/*String result=processModelService.deploy(modelId);
|
||||||
model.addAttribute("result",result);
|
model.addAttribute("result",result);
|
||||||
return "result";*/
|
return "result";*/
|
||||||
|
|
||||||
|
|
||||||
String result="";
|
String result = "";
|
||||||
JsonNode modelNode;
|
JsonNode modelNode;
|
||||||
JSONObject modelobject;
|
JSONObject modelobject;
|
||||||
JSONArray childShapes;
|
JSONArray childShapes;
|
||||||
try {
|
try {
|
||||||
modelNode = new ObjectMapper().readTree(repositoryService.getModelEditorSource(modelId));
|
modelNode = new ObjectMapper().readTree(repositoryService.getModelEditorSource(modelId));
|
||||||
modelobject = JSONObject.fromObject(new ObjectMapper().writeValueAsString(modelNode));
|
modelobject = JSONObject.fromObject(new ObjectMapper().writeValueAsString(modelNode));
|
||||||
if(modelobject.get("childShapes")!=null){
|
if (modelobject.get("childShapes") != null) {
|
||||||
childShapes= modelobject.getJSONArray("childShapes");
|
childShapes = modelobject.getJSONArray("childShapes");
|
||||||
for(int i=0;i<childShapes.size();i++){
|
for (int i = 0; i < childShapes.size(); i++) {
|
||||||
JSONObject json= childShapes.getJSONObject(i);
|
JSONObject json = childShapes.getJSONObject(i);
|
||||||
JSONObject properties =json.getJSONObject("properties");
|
JSONObject properties = json.getJSONObject("properties");
|
||||||
JSONObject stencil =json.getJSONObject("stencil");
|
JSONObject stencil = json.getJSONObject("stencil");
|
||||||
if(!stencil.get("id").toString().equals("StartNoneEvent")&&!stencil.get("id").toString().equals("UserTask")&&!stencil.get("id").toString().equals("SequenceFlow")&&!stencil.get("id").toString().equals("EndNoneEvent")
|
if (!stencil.get("id").toString().equals("StartNoneEvent") && !stencil.get("id").toString().equals("UserTask") && !stencil.get("id").toString().equals("SequenceFlow") && !stencil.get("id").toString().equals("EndNoneEvent")
|
||||||
&&!stencil.get("id").toString().equals("ExclusiveGateway")){
|
&& !stencil.get("id").toString().equals("ExclusiveGateway")) {
|
||||||
model.addAttribute("result","{\"res\":\"0\",\"restr\":\"部署失败,请勿添加除任务、单一选择的网关、开始、结束以外的流程图元素!\"}" );
|
model.addAttribute("result", "{\"res\":\"0\",\"restr\":\"部署失败,请勿添加除任务、单一选择的网关、开始、结束以外的流程图元素!\"}");
|
||||||
return "result";
|
return "result";
|
||||||
}
|
}
|
||||||
if(stencil.get("id").toString().equals("UserTask")){
|
if (stencil.get("id").toString().equals("UserTask")) {
|
||||||
if(properties.get("documentation").toString().equals("")||properties.get("documentation").toString()== null){
|
if (properties.get("documentation").toString().equals("") || properties.get("documentation").toString() == null) {
|
||||||
model.addAttribute("result","{\"res\":\"0\",\"restr\":\"部署失败,请为节点添加业务!\"}" );
|
model.addAttribute("result", "{\"res\":\"0\",\"restr\":\"部署失败,请为节点添加业务!\"}");
|
||||||
return "result";
|
return "result";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//properties.put("documentation", businessid);
|
//properties.put("documentation", businessid);
|
||||||
//properties.put("usertaskassignment", "{\"assignment\":{\"candidateUsers\":[{\"value\":\"#{userIds}\",\"$$hashKey\":\"0BQ\"}],\"assignee\":\"${applicantId}\"}}");
|
//properties.put("usertaskassignment", "{\"assignment\":{\"candidateUsers\":[{\"value\":\"#{userIds}\",\"$$hashKey\":\"0BQ\"}],\"assignee\":\"${applicantId}\"}}");
|
||||||
if(stencil.get("id").toString().indexOf("SequenceFlow")!=-1){
|
if (stencil.get("id").toString().indexOf("SequenceFlow") != -1) {
|
||||||
String regEx="[^0-9]";
|
String regEx = "[^0-9]";
|
||||||
Pattern p = Pattern.compile(regEx);
|
Pattern p = Pattern.compile(regEx);
|
||||||
Matcher m = p.matcher(properties.get("name").toString());
|
Matcher m = p.matcher(properties.get("name").toString());
|
||||||
String numstr = m.replaceAll("").trim();
|
String numstr = m.replaceAll("").trim();
|
||||||
numstr=numstr.isEmpty()?"0":numstr;
|
numstr = numstr.isEmpty() ? "0" : numstr;
|
||||||
int num = Integer.valueOf(numstr);
|
int num = Integer.valueOf(numstr);
|
||||||
if(properties.get("name").toString().startsWith("通过")){
|
if (properties.get("name").toString().startsWith("通过")) {
|
||||||
if(num>0){
|
if (num > 0) {
|
||||||
properties.put("conditionsequenceflow", "${pass && route=="+num+"}");
|
properties.put("conditionsequenceflow", "${pass && route==" + num + "}");
|
||||||
}else{
|
} else {
|
||||||
properties.put("conditionsequenceflow", "${pass}");
|
properties.put("conditionsequenceflow", "${pass}");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(properties.get("name").toString().startsWith("不通过")){
|
if (properties.get("name").toString().startsWith("不通过")) {
|
||||||
if(num>0){
|
if (num > 0) {
|
||||||
properties.put("conditionsequenceflow", "${!pass && route=="+num+"}");
|
properties.put("conditionsequenceflow", "${!pass && route==" + num + "}");
|
||||||
}else{
|
} else {
|
||||||
properties.put("conditionsequenceflow", "${!pass}");
|
properties.put("conditionsequenceflow", "${!pass}");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}else{
|
} else {
|
||||||
model.addAttribute("result","{\"res\":\"0\",\"restr\":\"部署失败,请编辑流程图!\"}" );
|
model.addAttribute("result", "{\"res\":\"0\",\"restr\":\"部署失败,请编辑流程图!\"}");
|
||||||
return "result";
|
return "result";
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1018,12 +1042,12 @@ public class ModelController {
|
|||||||
//JSON ----> JsonNode
|
//JSON ----> JsonNode
|
||||||
JsonNode editorNode = mapper.readTree(modelobject.toString());
|
JsonNode editorNode = mapper.readTree(modelobject.toString());
|
||||||
repositoryService.addModelEditorSource(modelId, editorNode.toString().getBytes("utf-8"));
|
repositoryService.addModelEditorSource(modelId, editorNode.toString().getBytes("utf-8"));
|
||||||
result=processModelService.deploy(modelId);
|
result = processModelService.deploy(modelId);
|
||||||
model.addAttribute("result",result );
|
model.addAttribute("result", result);
|
||||||
return "result";
|
return "result";
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
logger.error("创建模型失败:", e);
|
logger.error("创建模型失败:", e);
|
||||||
model.addAttribute("result","{\"res\":\"0\",\"restr\":\"部署失败!\"}" );
|
model.addAttribute("result", "{\"res\":\"0\",\"restr\":\"部署失败!\"}");
|
||||||
return "result";
|
return "result";
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1053,8 +1077,8 @@ public class ModelController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@RequestMapping("/delete.do")
|
@RequestMapping("/delete.do")
|
||||||
public String dodel(HttpServletRequest request,Model model,
|
public String dodel(HttpServletRequest request, Model model,
|
||||||
@RequestParam(value="id") String id){
|
@RequestParam(value = "id") String id) {
|
||||||
repositoryService.deleteModel(id);
|
repositoryService.deleteModel(id);
|
||||||
model.addAttribute("result", 1);
|
model.addAttribute("result", 1);
|
||||||
return "result";
|
return "result";
|
||||||
@ -1094,7 +1118,7 @@ public class ModelController {
|
|||||||
|
|
||||||
// 构建模型Key
|
// 构建模型Key
|
||||||
String modelKey = null;
|
String modelKey = null;
|
||||||
User cu = (User)request.getSession().getAttribute("cu");
|
User cu = (User) request.getSession().getAttribute("cu");
|
||||||
if (companyId != null && !companyId.isEmpty()) {
|
if (companyId != null && !companyId.isEmpty()) {
|
||||||
modelKey = "imported-" + companyId;
|
modelKey = "imported-" + companyId;
|
||||||
} else if (cu != null && !cu.getId().equals(CommString.ID_Admin)) {
|
} else if (cu != null && !cu.getId().equals(CommString.ID_Admin)) {
|
||||||
@ -1145,7 +1169,7 @@ public class ModelController {
|
|||||||
|
|
||||||
try {
|
try {
|
||||||
// 获取当前用户和公司信息
|
// 获取当前用户和公司信息
|
||||||
User cu = (User)request.getSession().getAttribute("cu");
|
User cu = (User) request.getSession().getAttribute("cu");
|
||||||
String processTypeId = request.getParameter("processTypeId");
|
String processTypeId = request.getParameter("processTypeId");
|
||||||
String companyId = request.getParameter("companyId");
|
String companyId = request.getParameter("companyId");
|
||||||
String maintenanceType = request.getParameter("maintenanceType");
|
String maintenanceType = request.getParameter("maintenanceType");
|
||||||
|
|||||||
Reference in New Issue
Block a user