* @see com.founder.fix.fixflow.service.TaskInstanceService#getTaskList(java.util.Map)
*/
public Map<String, Object> getTaskList(Map<String, Object> filter)
throws Exception {
Map<String,Object> result = new HashMap<String,Object>();
ProcessEngine engine = getProcessEngine(filter
.get("userId"));
try {
TaskQuery tq = engine.getTaskService().createTaskQuery();
String descritpion = StringUtil.getString(filter.get("title"));
if(StringUtil.isNotEmpty(descritpion))
tq.taskDescriptionLike(descritpion);
String initor = StringUtil.getString(filter.get("initor"));
if(StringUtil.isNotEmpty(initor))
tq.initiatorLike(initor);
String bizKey = StringUtil.getString(filter.get("bizKey"));
if(StringUtil.isNotEmpty(bizKey))
tq.businessKeyLike(bizKey);
String processDefinitionName = StringUtil.getString(filter.get("processDefinitionName"));
if(StringUtil.isNotEmpty(processDefinitionName))
tq.processDefinitionNameLike(processDefinitionName);
Date dates = null;
Date datee = null;
String dss = StringUtil.getString(filter.get("arrivalTimeS"));
String dse = StringUtil.getString(filter.get("arrivalTimeE"));
if(StringUtil.isNotEmpty(dss)){
dates = DateUtil.stringToDate(dss,"yyyy-MM-dd");
}
if(StringUtil.isNotEmpty(dse)){
String endTime = "235959999";
dse += endTime;
datee = DateUtil.stringToDate(dse,"yyyy-MM-ddHHmmssSSS");
}
if(dates!=null)
tq.taskCreatedAfter(datee);
if(datee!=null)
tq.taskCreatedBefore(dates);
String pageI = StringUtil.getString(filter.get("pageIndex"));
String rowI = StringUtil.getString(filter.get("pageSize"));
int pageIndex=1;
int rowNum =15;
if(StringUtil.isNotEmpty(pageI)){
pageIndex = Integer.valueOf(pageI);
}
if(StringUtil.isNotEmpty(rowI)){
rowNum = Integer.valueOf(rowI);
}
if(filter.get("ended")==null)
tq.taskNotEnd();
tq.orderByTaskCreateTime().desc();
List<TaskInstance> lts = tq.listPagination(pageIndex, rowNum);
Long count = tq.count();
List<Map<String,Object>> instanceMaps = new ArrayList<Map<String,Object>>();
Pagination page = new Pagination(pageIndex,rowNum);
page.setTotal(count.intValue());
IdentityService identsvz = engine.getIdentityService();
for(TaskInstance tmp:lts){
Map<String,Object> instances = tmp.getPersistentState();
String userId = StringUtil.getString(instances.get("PI_INITIATOR"));
if(StringUtil.isEmpty(userId)){