public WorkTaskPageView GetCompletedTasks(WorkTaskQueryParm parm) { parm.ActivityState = 4; var rum = new TaskManager(); return(rum.GetPageByParm(parm)); }
/// <summary> /// 我的申请 /// </summary> /// <param name="parm"></param> /// <returns></returns> public async Task <WorkTaskPageView> GetPageMyApply(WorkTaskQueryParm parm) { return(await WithConnection(async c => { StringBuilder sql = new StringBuilder(); sql.Append($@" SELECT pi.ID, ai.AppName, ai.ProcessGUID, pi.Version, ai.ActivityGUID, ai.ActivityName, ai.ActivityType, ai.WorkItemType, ai.ActivityState, pi.ProcessState, ai.ComplexType, ai.MIHostActivityInstanceID, pi.AppInstanceCode, pi.ProcessName, pi.CreatedByUserID, pi.CreatedByUserName, pi.CreatedDateTime FROM WfActivityInstance ai INNER JOIN WfProcessInstance pi ON ai.ProcessInstanceID = pi.ID " ); StringBuilder whereSql = new StringBuilder(); whereSql.Append(" WHERE ai.ActivityType = '1' AND pi.CreatedByUserID = '" + parm.AssignedToUserID + "' "); if (parm.AppName != null) { whereSql.Append(" and ai.AppName like '%" + parm.AppName.Trim() + "%'"); } sql.Append(whereSql); var data = await c.QueryAsync <TaskViewModel>(sql.ToString()); var total = data.ToList().Count; sql.Append(" order by " + parm.sort + " " + parm.order) .Append(" limit " + (parm.page - 1) * parm.rows + "," + parm.rows); var ets = await c.QueryAsync <TaskViewModel>(sql.ToString()); WorkTaskPageView ret = new WorkTaskPageView(); ret.rows = ets.ToList(); ret.total = total; return ret; })); }
[HttpPost("QueryReadyTasks")]//pass public ResponseResult <WorkTaskPageView> QueryReadyTasks([FromBody] WorkTaskQueryParm query) { var result = ResponseResult <WorkTaskPageView> .Default(); try { var _service = new ResourceService(); var itemList = _service.GetReadyTasks(query); result = ResponseResult <WorkTaskPageView> .Success(itemList); } catch (System.Exception ex) { result = ResponseResult <WorkTaskPageView> .Error(string.Format( "获取当前用户待办任务数据失败, 异常信息:{0}", ex.Message)); } return(result); }
public async Task <ActionResult <ApiResult> > GetPageMyApply([FromQuery] WorkTaskQueryParm parm) { ApiResult ret = new ApiResult { code = Code.Failure }; try { ret = await _service.GetPageMyApply(parm); } catch (System.Exception ex) { ret.msg = string.Format( "获取当前用户申请数据失败, 异常信息:{0}", ex.Message); } return(ret); }
public async Task <WorkTaskPageView> GetPageList(WorkTaskQueryParm parm) { return(await WithConnection(async c => { StringBuilder sql = new StringBuilder(); sql.Append($@" SELECT t.ID, t.AppName, t.AppInstanceID, ai.ProcessGUID, pi.Version, t.ProcessInstanceID, ai.ActivityGUID, t.ActivityInstanceID, ai.ActivityName, ai.ActivityType, ai.WorkItemType, ai.CreatedByUserID, ai.CreatedByUserName, ai.CreatedDateTime, t.TaskType, t.EntrustedTaskID, t.AssignedToUserID, t.AssignedToUserName, t.CreatedDateTime, t.LastUpdatedDateTime, t.EndedDateTime, t.EndedByUserID, t.EndedByUserName, t.TaskState, ai.ActivityState, t.RecordStatusInvalid, pi.ProcessState, ai.ComplexType, ai.MIHostActivityInstanceID, pi.AppInstanceCode, pi.ProcessName, pi.CreatedByUserID, pi.CreatedByUserName, pi.CreatedDateTime, CASE WHEN ai.MIHostActivityInstanceID is null THEN ai.ActivityState ELSE ai1.ActivityState END MiHostState FROM WfActivityInstance ai INNER JOIN WfTasks t ON ai.ID = t.ActivityInstanceID INNER JOIN WfProcessInstance pi ON ai.ProcessInstanceID = pi.ID LEFT JOIN WfActivityInstance ai1 ON ai.MIHostActivityInstanceID = ai1.ID "); StringBuilder whereSql = new StringBuilder(); whereSql.Append(" WHERE pi.ProcessState = '2' AND ( ai.ActivityType = '4' OR ai.WorkItemType = '1' ) AND t.TaskState <> '32' "); if (parm.ActivityState != null) { if (parm.ActivityState == 1) { whereSql.Append(" and ai.ActivityState != 4 "); } else { whereSql.Append(" and ai.ActivityState =" + parm.ActivityState); } } if (parm.AssignedToUserID != null) { whereSql.Append(" and t.AssignedToUserID =" + parm.AssignedToUserID); } if (parm.AppName != null) { whereSql.Append(" and t.AppName like '%" + parm.AppName.Trim() + "%'"); } sql.Append(whereSql); var data = await c.QueryAsync <TaskViewModel>(sql.ToString()); var total = data.ToList().Count; sql.Append(" order by " + parm.sort + " " + parm.order) .Append(" limit " + (parm.page - 1) * parm.rows + "," + parm.rows); var ets = await c.QueryAsync <TaskViewModel>(sql.ToString()); WorkTaskPageView ret = new WorkTaskPageView(); ret.rows = ets.ToList(); ret.total = total; return ret; })); }
internal WorkTaskPageView GetPageByParm(WorkTaskQueryParm parm) { return(WithConnection(c => { StringBuilder sql = new StringBuilder(); sql.Append($@" SELECT t.ID, t.AppName, t.AppInstanceID, ai.ProcessGUID, pi.Version, t.ProcessInstanceID, ai.ActivityGUID, t.ActivityInstanceID, ai.ActivityName, ai.ActivityType, ai.WorkItemType, ai.CreatedByUserID, ai.CreatedByUserName, ai.CreatedDateTime, t.TaskType, t.EntrustedTaskID, t.AssignedToUserID, t.AssignedToUserName, t.CreatedDateTime, t.LastUpdatedDateTime, t.EndedDateTime, t.EndedByUserID, t.EndedByUserName, t.TaskState, ai.ActivityState, t.RecordStatusInvalid, pi.ProcessState, ai.ComplexType, ai.MIHostActivityInstanceID, pi.AppInstanceCode, pi.ProcessName, pi.CreatedByUserID, pi.CreatedByUserName, pi.CreatedDateTime, CASE WHEN ai.MIHostActivityInstanceID is null THEN ai.ActivityState ELSE ai1.ActivityState END MiHostState FROM WfActivityInstance ai INNER JOIN WfTasks t ON ai.ID = t.ActivityInstanceID INNER JOIN WfProcessInstance pi ON ai.ProcessInstanceID = pi.ID LEFT JOIN WfActivityInstance ai1 ON ai.MIHostActivityInstanceID = ai1.ID "); StringBuilder whereSql = new StringBuilder(); whereSql.Append(" WHERE pi.ProcessState = '2' AND ( ai.ActivityType = '4' OR ai.WorkItemType = '1' ) AND t.TaskState <> '32' "); if (parm.ActivityState != null) { whereSql.Append(" and ai.ActivityState =" + parm.ActivityState); } if (parm.AssignedToUserID != null) { whereSql.Append(" and t.AssignedToUserID =" + parm.AssignedToUserID); } sql.Append(whereSql); string sqltmp = $@" SELECT t.ID, t.AppName FROM WfTasks t ; "; try { var data = c.Query <TaskViewModel>(sqltmp); } catch (Exception ex) { string str = ex.ToString(); } int total = 0; sql.Append(" order by t." + parm.sort + " " + parm.order) .Append(" limit " + (parm.page - 1) * parm.rows + "," + parm.rows); //List<TaskViewEntity> ets = c.Query<TaskViewEntity>(sql.ToString()).ToList(); WorkTaskPageView ret = new WorkTaskPageView(); //ret.rows = ets; ret.total = total; return ret; })); }