コード例 #1
0
        public HttpResponseMessage taskListByuser(string brokerName, int id, int page, int pageSize)
        {
            Regex reg = new Regex(@"^[^ %@#!*~&',;=?$\x22]+$");

            if (!string.IsNullOrEmpty(brokerName))
            {
                var m = reg.IsMatch(brokerName);
                if (!m)
                {
                    return(PageHelper.toJson(PageHelper.ReturnValue(false, "搜索输入存在非法字符!")));
                }
            }
            var taskCondition = new TaskListSearchCondition
            {
                TaskId     = id,
                Page       = page,
                PageCount  = pageSize,
                BrokerName = brokerName
            };
            var tasklistone = _taskListService.GetTaskListsByCondition(taskCondition).Select(p => new
            {
                Taskname     = p.Task.Taskname,
                Brokername   = p.Broker.Brokername,
                Taskschedule = p.Taskschedule,
                Endtime      = p.Task.Endtime
            }).ToList().Select(
                p => new
            {
                Taskname     = p.Taskname,
                Brokername   = p.Brokername,
                Taskschedule = p.Taskschedule,
                Endtime      = p.Endtime.ToString()
            });

            var taskCount = _taskListService.GetTaskListCount(taskCondition);

            if (taskCount > 0)
            {
                return(PageHelper.toJson(new { list = tasklistone, totalCount = taskCount, condition = taskCondition }));
            }
            else
            {
                return(PageHelper.toJson(PageHelper.ReturnValue(true, "不存在数据!")));
            }
        }
コード例 #2
0
        public HttpResponseMessage taskListBytaskId(int id, int page, int pageSize)
        {
            var taskCondition = new TaskListSearchCondition
            {
                TaskId    = id,
                Page      = page,
                PageCount = pageSize
            };

            var tasklistone = _taskListService.GetTaskListsByCondition(taskCondition).Select(p => new
            {
                Taskname     = p.Task.Taskname,
                Brokername   = p.Broker.Brokername,
                Taskschedule = p.Taskschedule,
                Endtime      = p.Task.Endtime.ToShortDateString(),
            }).ToList();

            var taskCount = _taskListService.GetTaskListCount(taskCondition);

            return(PageHelper.toJson(new { list = tasklistone, totalCount = taskCount, condition = taskCondition }));
        }
コード例 #3
0
        public int GetTaskListCount(TaskListSearchCondition condition)
        {
            var query = _tasklistRepository.Table;

            try
            {
                if (!string.IsNullOrEmpty(condition.Taskschedule))
                {
                    query = query.Where(q => q.Taskschedule.Contains(condition.Taskschedule));
                }
                if (condition.Ids != null && condition.Ids.Any())
                {
                    query = query.Where(q => condition.Ids.Contains(q.Id));
                }
                if (condition.Tasks != null && condition.Tasks.Any())
                {
                    query = query.Where(q => condition.Tasks.Contains(q.Task));
                }
                if (condition.Brokers != null && condition.Brokers.Any())
                {
                    query = query.Where(q => condition.Brokers.Contains(q.Broker));
                }
                if (condition.TaskId > 0)
                {
                    query = query.Where(q => q.Task.Id == (condition.TaskId));
                }
                if (condition.BrokerName != null && condition.BrokerName.Any())
                {
                    query = query.Where(q => q.Broker.Brokername.Contains(condition.BrokerName));
                }
                return(query.Count());
            }
            catch (Exception e)
            {
                _log.Error(e, "数据库操作出错");
                return(-1);
            }
        }
コード例 #4
0
 public HttpResponseMessage DelTask(int id)
 {
     try
     {
         var cond = new TaskListSearchCondition()
         {
             TaskId = id
         };
         int tlistcout = _taskListService.GetTaskListCount(cond);
         if (tlistcout > 0)
         {
             return(PageHelper.toJson(PageHelper.ReturnValue(false, "不能删除,已经有人接手任务")));
         }
         else
         {
             _taskService.Delete(_taskService.GetTaskById(id));
             return(PageHelper.toJson(PageHelper.ReturnValue(true, "删除成功")));
         }
     }
     catch (Exception)
     {
         return(PageHelper.toJson(PageHelper.ReturnValue(false, "删除失败")));
     }
 }
コード例 #5
0
        public HttpResponseMessage AddTask([FromBody] TaskModel taskModel)
        {
            if (!string.IsNullOrEmpty(taskModel.Taskname))
            {
                //用正则表达式验证是否存在非法字符/^(\d{4})-(0\d{1}|1[0-2])-(0\d{1}|[12]\d{1}|3[01])$/
                Regex reg = new Regex(@"^[^ %@#!*~&',;=?$\x22]+$");
                var   m   = reg.IsMatch(taskModel.Taskname);
                if (!m)
                {
                    return(PageHelper.toJson(PageHelper.ReturnValue(false, "任务名称存在非法字符!")));
                }

                //验证日期格式
                if (taskModel.Endtime == null)
                {
                    return(PageHelper.toJson(PageHelper.ReturnValue(false, "结束时间格式错误!")));
                }

                if (DateTime.Today >= Convert.ToDateTime(taskModel.Endtime))
                {
                    return(PageHelper.toJson(PageHelper.ReturnValue(false, "结束时间至少是明天!")));
                }
                if (!string.IsNullOrEmpty(taskModel.Describe))
                {
                    var m1 = reg.IsMatch(taskModel.Describe);

                    if (!m1)
                    {
                        return(PageHelper.toJson(PageHelper.ReturnValue(false, "描述存在非法字符!")));
                    }
                }
                var user  = (UserBase)_workContext.CurrentUser;
                var model = new TaskEntity
                {
                    Id             = user.Id,
                    TaskPunishment = _taskPunishmentService.GetTaskPunishmentById(taskModel.TaskPunishmentId),
                    TaskAward      = _taskAwardService.GetTaskAwardById(taskModel.TaskAwardId),
                    TaskTag        = _taskTagService.GetTaskTagById(taskModel.TaskTagId),
                    TaskType       = _taskTypeService.GetTaskTypeById(taskModel.TaskTypeId),
                    Taskname       = taskModel.Taskname,
                    Describe       = taskModel.Describe,
                    Endtime        = Convert.ToDateTime(taskModel.Endtime),
                    Adduser        = _workContext.CurrentUser.Id,
                    Addtime        = DateTime.Now,
                    Upuser         = 0,
                    Uptime         = DateTime.Now,
                };
                var mo1 = new TaskSearchCondition
                {
                    TasknameRe = taskModel.Taskname
                };
                if (taskModel.Type == "add")
                {
                    //判断是否存在同名名称
                    int taskCount = _taskService.GetTaskCount(mo1);
                    if (taskCount == 0)
                    {
                        try
                        {
                            if (_taskService.Create(model) != null)
                            {
                                return(PageHelper.toJson(PageHelper.ReturnValue(true, "添加成功")));
                            }
                        }
                        catch (Exception)
                        {
                            return(PageHelper.toJson(PageHelper.ReturnValue(false, "添加失败")));
                        }
                    }
                    else
                    {
                        return(PageHelper.toJson(PageHelper.ReturnValue(false, "任务名称已存在,请换名称")));
                    }
                }
                if (taskModel.Type == "edit")
                {
                    var cond = new TaskListSearchCondition()
                    {
                        TaskId = taskModel.Id
                    };
                    //判断任务是否被接手

                    int tlistcout = _taskListService.GetTaskListCount(cond);
                    //判断是否存在同名名称
                    var mo11 = new TaskSearchCondition
                    {
                        TasknameRe = taskModel.Taskname,
                        Id         = taskModel.Id
                    };
                    int tasknameCount = _taskService.GetTaskCount(mo11);
                    if (tlistcout > 0)
                    {
                        return(PageHelper.toJson(PageHelper.ReturnValue(false, "不能修改,已经有人接手任务")));
                    }

                    else if (tasknameCount > 0)
                    {
                        return(PageHelper.toJson(PageHelper.ReturnValue(false, "任务名称已存在,请换名称")));
                    }
                    else
                    {
                        var mdel = _taskService.GetTaskById(taskModel.Id);
                        mdel.Id             = taskModel.Id;
                        mdel.TaskPunishment = _taskPunishmentService.GetTaskPunishmentById(taskModel.TaskPunishmentId);
                        mdel.TaskAward      = _taskAwardService.GetTaskAwardById(taskModel.TaskAwardId);
                        mdel.TaskTag        = _taskTagService.GetTaskTagById(taskModel.TaskTagId);
                        mdel.TaskType       = _taskTypeService.GetTaskTypeById(taskModel.TaskTypeId);
                        mdel.Taskname       = taskModel.Taskname;
                        mdel.Describe       = taskModel.Describe;
                        mdel.Endtime        = Convert.ToDateTime(taskModel.Endtime);
                        mdel.Upuser         = _workContext.CurrentUser.Id;
                        mdel.Uptime         = DateTime.Now;
                        try
                        {
                            _taskService.Update(mdel);
                            return(PageHelper.toJson(PageHelper.ReturnValue(true, "修改成功")));
                        }
                        catch (Exception)
                        {
                            return(PageHelper.toJson(PageHelper.ReturnValue(false, "修改失败")));
                        }
                    }
                }
            }
            else
            {
                return(PageHelper.toJson(PageHelper.ReturnValue(false, "任务名称不能为空!")));
            }
            return(PageHelper.toJson(PageHelper.ReturnValue(false, "数据验证失败")));
        }
コード例 #6
0
        public IQueryable <TaskListEntity> GetTaskListsByCondition(TaskListSearchCondition condition)
        {
            var query = _tasklistRepository.Table;

            try
            {
                if (!string.IsNullOrEmpty(condition.Taskschedule))
                {
                    query = query.Where(q => q.Taskschedule.Contains(condition.Taskschedule));
                }
                if (condition.Ids != null && condition.Ids.Any())
                {
                    query = query.Where(q => condition.Ids.Contains(q.Id));
                }
                if (condition.Tasks != null && condition.Tasks.Any())
                {
                    query = query.Where(q => condition.Tasks.Contains(q.Task));
                }
                if (condition.Task != null)
                {
                    query = query.Where(q => q.Task.Id == (condition.Task.Id));
                }


                if (condition.Brokers != null && condition.Brokers.Any())
                {
                    query = query.Where(q => condition.Brokers.Contains(q.Broker));
                }
                if (condition.OrderBy.HasValue)
                {
                    switch (condition.OrderBy.Value)
                    {
                    case EnumTaskListSearchOrderBy.OrderById:
                        query = condition.isDescending?query.OrderByDescending(q => q.Id):query.OrderBy(q => q.Id);
                        break;
                    }
                }
                else
                {
                    query = query.OrderBy(q => q.Id);
                }

                if (condition.Page.HasValue && condition.PageCount.HasValue)
                {
                    query = query.Skip((condition.Page.Value - 1) * condition.PageCount.Value).Take(condition.PageCount.Value);
                }
                if (condition.Taskschedule != null && condition.Taskschedule.Any())
                {
                    query = query.Where(q => condition.Taskschedule.Contains(q.Taskschedule));
                }
                if (condition.TaskId > 0)
                {
                    query = query.Where(q => q.Task.Id == (condition.TaskId));
                }
                if (condition.BrokerName != null && condition.BrokerName.Any())
                {
                    query = query.Where(q => q.Broker.Brokername.Contains(condition.BrokerName));
                }
                return(query);
            }
            catch (Exception e)
            {
                _log.Error(e, "数据库操作出错");
                return(null);
            }
        }