예제 #1
0
        public PartlyCollection <VTaskTodo> GetList(VTaskTodoFilter filter)
        {
            var where = filter.ConvertToWhereBuilder();
            var tuple = GetPageSplitedCollection(filter.RowIndex, filter.PageSize, where.ToSqlString(TSqlBuilder.Instance));

            return(tuple);
        }
예제 #2
0
        public IHttpActionResult Load(string businessId)
        {
            Guid ret = Guid.Empty;

            if (string.IsNullOrEmpty(businessId) || !Guid.TryParse(businessId, out ret))
            {
                throw new BizException("参数错误");
            }
            var queryFilter = new VTaskTodoFilter();

            queryFilter.BusinessIDS = new List <string>()
            {
                businessId
            };
            var finder = VTaskTodoOperator.Instance.GetViewList(queryFilter).FirstOrDefault();

            if (finder == null)
            {
                throw new BizException("该流程已作废");
            }
            //if (finder.EmployeeLoginName == WebHelper.GetCurrentUser().LoginName)
            //{
            //    WorkflowBuilder.ReadWorkflowProcess(finder.BusinessID, new Lib.Model.Employee() { LoginName = finder.ReceiveLoginName });
            //}

            var todo = new Todo();

            todo.ConvertEntity(finder);
            if (!(todo.TaskStatus < 1 && WebHelper.GetCurrentUser().LoginName != todo.EmployeeLoginName))
            {
                //--填报文件
                var attachment = AttachmentOperator.Instance.GetLastModel("UploadTaskData", businessId);
                todo.ConvertTaskAttachment(attachment);
            }
            //--相关附件
            var attachments = AttachmentOperator.Instance.GetModel("UploadTaskAttachment", todo.TaskID).ToList();

            todo.ConvertTaskAttachmentList(attachments);
            var taskReportAttachments = AttachmentOperator.Instance.GetModel("UploadTaskAttach", businessId).ToList();

            todo.ConvertTaskReportAttachmentList(taskReportAttachments);
            return(BizResult(todo));
        }
예제 #3
0
 public PartlyCollection <VTaskTodo> GetViewList(VTaskTodoFilter filter)
 {
     return(_vtaskUserAdapter.GetList(filter));
 }
예제 #4
0
        public IHttpActionResult LoadTodoList([FromBody] TodoFilter filter)
        {
            Dictionary <string, int> businessids = GetTodoBusinessIdList(filter.TaskType);
            var data = new Framework.Data.PartlyCollection <VTaskTodo>();

            if (businessids.Count > 0)
            {
                var queryFilter = new VTaskTodoFilter();
                queryFilter.BusinessIDS = businessids.Select(x => x.Key).ToList();

                var      startTime = DateTime.MinValue;
                DateTime dateNow   = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd"));
                if (filter.TimeRange.HasValue)
                {
                    switch (filter.TimeRange.Value)
                    {
                    case 1:
                        startTime = dateNow;
                        break;

                    case 2:
                        startTime = dateNow.AddDays(-1);
                        break;

                    case 3:
                        startTime = dateNow.AddDays(Convert.ToDouble((0 - Convert.ToInt16(DateTime.Now.DayOfWeek))) - 7);
                        break;

                    case 4:
                        startTime = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(-1);
                        break;

                    case 5:
                        startTime = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(-3);
                        break;

                    case 6:
                        startTime = DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(-1);
                        break;
                    }
                    queryFilter.CreatorTimeStart = startTime;
                }
                queryFilter.TaskTitle = filter.TaskTitle;
                queryFilter.PageSize  = filter.PageSize;
                queryFilter.PageIndex = filter.PageIndex;
                //queryFilter.EmployeeLoginName = WebHelper.GetCurrentUser().LoginName;
                data = VTaskTodoOperator.Instance.GetViewList(queryFilter);
            }
            var result = data.Select(x =>
            {
                var finder = businessids.FirstOrDefault(t => t.Key.Equals(x.BusinessID, StringComparison.CurrentCultureIgnoreCase));
                var todo   = new Todo();
                todo.ConvertEntity(x, finder.Value);
                return(todo);
            }).ToList();

            return(BizResult(new ViewData <Todo>()
            {
                Data = result, TotalCount = data.TotalCount
            }));
        }