private ProcessLogInfo getProcessLogInfo(ProcessInstanceLog pl) { ProcessLogInfo plInfo = new ProcessLogInfo(); String userDescription = pl.getUser() != null ? nvl(pl.getUser().getRealName(), pl.getUser().getLogin()) : ""; if (pl.getUserSubstitute() != null) { String substituteDescription = nvl(pl.getUserSubstitute().getRealName(), pl.getUserSubstitute().getLogin()); plInfo.userDescription = substituteDescription + "(" + getMessage("awf.basewidgets.process-history.substituting") + " " + userDescription + ")"; } else { plInfo.userDescription = userDescription; } plInfo.entryDescription = nvl(pl.getAdditionalInfo(), pl.getLogValue()); plInfo.actionDescription = i18NSource.getMessage(pl.getEventI18NKey()); if (hasText(plInfo.getEntryDescription())) { plInfo.actionDescription = plInfo.actionDescription + " - " + getMessage(plInfo.entryDescription); } plInfo.performDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(pl.getEntryDate().getTime()); plInfo.stateDescription = pl.getState() != null ? nvl(pl.getState().getDescription(), pl.getState().getName()) : ""; return plInfo; }
@Override protected void auditLog(Collection<HandlingResult> results) { ProcessInstance process = getProvider().getProcessInstance(); if (process != null && !results.isEmpty()) { String json = null; try { json = mapper.writeValueAsString(results); } catch (Exception e) { logger.log(Level.SEVERE, e.getMessage(), e); } ProcessInstanceLog log = new ProcessInstanceLog(); log.setState(null); log.setEntryDate(new Date()); log.setEventI18NKey("process.log.process-change"); // todo if (getProvider() instanceof BpmTask) log.setUserLogin(((BpmTask) getProvider()).getAssignee()); log.setLogType(ProcessInstanceLog.LOG_TYPE_PROCESS_CHANGE); log.setOwnProcessInstance(process); log.setLogValue(json); process.getRootProcessInstance().addProcessLog(log); } } }
private void addActionLogEntry(ProcessStateAction action, ProcessInstance processInstance, ProcessToolContext ctx) { //TODO // ProcessStateConfiguration state = ctx.getProcessDefinitionDAO().getProcessStateConfiguration(processInstance); ProcessInstanceLog log = new ProcessInstanceLog(); log.setLogType(ProcessInstanceLog.LOG_TYPE_PERFORM_ACTION); // log.setState(state); log.setEntryDate(Calendar.getInstance()); log.setEventI18NKey("process.log.action-performed"); log.setLogValue(action.getBpmName()); log.setAdditionalInfo(nvl(action.getLabel(), action.getDescription(), action.getBpmName())); log.setUser(ctx.getUserDataDAO().findOrCreateUser(user)); log.setUserSubstitute(substitutingUser != null ? ctx.getUserDataDAO().findOrCreateUser(substitutingUser) : null); processInstance.addProcessLog(log); }
pi2.setState(task.getName()); ProcessInstanceLog log = new ProcessInstanceLog(); log.setLogType(ProcessInstanceLog.LOG_TYPE_CLAIM_PROCESS); log.setState(ctx.getProcessDefinitionDAO().getProcessStateConfiguration(pi)); log.setEntryDate(Calendar.getInstance()); log.setEventI18NKey("process.log.process-assigned"); log.setLogValue(pq.getName()); log.setUser(ctx.getUserDataDAO().findOrCreateUser(user)); log.setAdditionalInfo(pq.getDescription()); pi2.addProcessLog(log);
@Override public BpmTask getPastOrActualTask(ProcessInstanceLog log, ProcessToolContext ctx) { final UserData user = log.getUser(); final ProcessInstance pi = log.getProcessInstance(); final Calendar minDate = log.getEntryDate(); final Set<String> taskNames = new HashSet<String>(); if (log.getState() != null && Strings.hasText(log.getState().getName())) { taskNames.add(log.getState().getName());
@Override public int compare(ProcessInstanceLog o1, ProcessInstanceLog o2) { return nvl(o2.getEntryDate(), Calendar.getInstance()).compareTo(nvl(o1.getEntryDate(), Calendar.getInstance())); } };