Ejemplo n.º 1
0
        public Result <object> DeleteGroup(GroupDataContract group)
        {
            var result = new Result <object>();

            try
            {
                if (group == null)
                {
                    throw new Exception("Группа не задана");
                }

                using (var ctx = new PolicyProjectEntities())
                {
                    var delGroup = ctx.tbl_group.FirstOrDefault(x => x.id == group.GroupId);
                    ctx.tbl_group.Remove(delGroup);
                    result.BoolRes = ctx.SaveChanges() > 0;
                }
            }
            catch (Exception ex)
            {
                result.BoolRes  = false;
                result.ErrorRes = string.Concat("Ошибка удаления группы. ", ex.Message);
            }

            return(result);
        }
        public static tbl_group FromGroupDataContractToTblGroup(GroupDataContract groupData)
        {
            if (groupData.GroupId < 1 || string.IsNullOrEmpty(groupData.GroupName))
            {
                return(null);
            }

            return(new tbl_group
            {
                id = groupData.GroupId,
                group_name = groupData.GroupName
            });
        }
Ejemplo n.º 3
0
        public Result <GroupDataContract[]> GetGroup(GroupDataContract groupFilter)
        {
            var result = new Result <GroupDataContract[]>();

            try
            {
                using (var ctx = new PolicyProjectEntities())
                {
                    if (groupFilter == null)
                    {
                        result.SomeResult =
                            ctx.tbl_group.Select(
                                groupTblData =>
                                new GroupDataContract
                        {
                            GroupId   = groupTblData.id,
                            GroupName = groupTblData.group_name
                        }).ToArray();
                    }
                    else
                    {
                        result.SomeResult = ctx.tbl_group.Where(x => x.id == groupFilter.GroupId)
                                            .Select(groupTblData =>
                                                    new GroupDataContract
                        {
                            GroupId   = groupTblData.id,
                            GroupName = groupTblData.group_name
                        })
                                            .ToArray();
                    }

                    result.BoolRes = true;
                }
            }
            catch (Exception ex)
            {
                result.BoolRes  = false;
                result.ErrorRes = string.Concat("Ошибка получения списка групп. ", ex.Message);
            }

            return(result);
        }
        public static bool Compare(GroupDataContract obj1, GroupDataContract obj2)
        {
            if (obj1 == null && obj2 == null)
            {
                return(true);
            }

            if (obj1 == null && obj2 != null)
            {
                return(false);
            }

            if (obj1 != null && obj2 == null)
            {
                return(false);
            }

            return(obj1.GroupId == obj2.GroupId &&
                   string.Equals(obj1.GroupName.Trim(), obj2.GroupName.Trim(), StringComparison.CurrentCultureIgnoreCase));
        }
Ejemplo n.º 5
0
        public Result <object> AddGroup(GroupDataContract group)
        {
            var result = new Result <object>();

            try
            {
                if (group == null)
                {
                    throw new Exception("Новая группа не задана");
                }

                using (var ctx = new PolicyProjectEntities())
                {
                    var selected =
                        ctx.tbl_group.FirstOrDefault(
                            x =>
                            x.group_name.Trim()
                            .Equals(group.GroupName.Trim(), StringComparison.InvariantCultureIgnoreCase));

                    if (selected != null)
                    {
                        throw new Exception("Группа уже существует");
                    }

                    group.GroupId = ctx.tbl_group.Any() ? ctx.tbl_group.Max(x => x.id) + 1 : 1;
                    var newGroup = GroupDataContract.FromGroupDataContractToTblGroup(group);
                    ctx.tbl_group.Add(newGroup);
                    result.BoolRes = ctx.SaveChanges() > 0;
                }
            }
            catch (Exception ex)
            {
                result.BoolRes  = false;
                result.ErrorRes = string.Concat("Ошибка добавления группы. ", ex.Message);
            }

            return(result);
        }
Ejemplo n.º 6
0
        public Result <object> UpdateGroup(GroupDataContract oldGroup, GroupDataContract newGroup)
        {
            var result = new Result <object>();

            try
            {
                if (oldGroup == null)
                {
                    throw new Exception("Текущая группа не задана");
                }

                if (newGroup == null)
                {
                    throw new Exception("Новая группа не задана");
                }

                using (var ctx = new PolicyProjectEntities())
                {
                    var selected = ctx.tbl_group.FirstOrDefault(x => x.id == oldGroup.GroupId);

                    if (selected == null)
                    {
                        throw new Exception("Текущая группа не найдена");
                    }

                    selected.group_name = newGroup.GroupName;
                    result.BoolRes      = ctx.SaveChanges() > 0;
                }
            }
            catch (Exception ex)
            {
                result.BoolRes  = false;
                result.ErrorRes = string.Concat("Ошибка изменения группы. ", ex.Message);
            }

            return(result);
        }
Ejemplo n.º 7
0
        public string GetGroupRest(GroupDataContract groupFilter)
        {
            var queryResult = GetGroup(groupFilter);

            return(JsonConvert.SerializeObject(queryResult));
        }