Example #1
0
        public IHttpActionResult UpdateGroupsAdmin([FromBody] NSALK.Models.GetGroups.SystemDataMessage incoming)
        {
            Console.WriteLine(DateTime.Now.ToString("HH:mm:ss"));
            NSALK.Models.GetGroups.SystemDataResponse outgoing = new Models.GetGroups.SystemDataResponse();
            if (incoming != null)
            {
                int    selectedId = 0, selectedgroupId = 0;
                string userName = (User.Identity.GetUserName());
                foreach (var items in incoming.Items)
                {
                    foreach (var gr in items.Group)
                    {
                        selectedId      = gr.selectedid;
                        selectedgroupId = gr.selectedgroupid;
                    }
                }
                string role = ((ClaimsIdentity)User.Identity).Claims.Where(c => c.Type == ClaimTypes.Role).Select(c => c.Value).FirstOrDefault();

                NSALK.Models.GetGroups.SystemDataResponseGroups groups = new Models.GetGroups.SystemDataResponseGroups();
                using (NSAKLEntities context = new NSAKLEntities())
                {
                    #region Update Groups for Selected ID
                    var gps = context.group_members.Where(x => x.member_id == selectedId && x.group_id == selectedgroupId).FirstOrDefault();
                    if (gps != null)
                    {
                        context.Entry(gps).State = EntityState.Deleted;
                        context.SaveChanges();
                    }
                    else
                    {
                        var gp = context.group_members.Add(new group_members
                        {
                            group_id              = selectedgroupId,
                            member_id             = selectedId,
                            last_updated          = DateTime.UtcNow,
                            last_updated_by       = userName,
                            membership_status     = true,
                            street_contact_status = true
                        });
                        context.SaveChanges();
                    }
                    outgoing.Items.Add(groups);
                    #endregion
                }
            }
            return(Ok(outgoing));
        }
Example #2
0
        public IHttpActionResult Post([FromBody] NSALK.Models.GetGroups.SystemDataMessage incoming)
        {
            Console.WriteLine(DateTime.Now.ToString("HH:mm:ss"));
            NSALK.Models.GetGroups.SystemDataResponse outgoing = new Models.GetGroups.SystemDataResponse();
            if (incoming != null)
            {
                int    memberId = Convert.ToInt32(User.Identity.GetUserId());
                string role     = ((ClaimsIdentity)User.Identity).Claims.Where(c => c.Type == ClaimTypes.Role).Select(c => c.Value).FirstOrDefault();

                NSALK.Models.GetGroups.SystemDataResponseGroups groups = new Models.GetGroups.SystemDataResponseGroups();
                using (NSAKLEntities context = new NSAKLEntities())
                {
                    #region Groups
                    if (role == "Admin")
                    {
                        #region Get Admin Groups
                        var lgroup1 = context.groups.ToList();
                        foreach (var lgroup in lgroup1)
                        {
                            string area_coordinator_name  = "";
                            var    area_coordinator_name1 = context.members.Where(x => x.recid == lgroup.area_coordinator_id).FirstOrDefault();
                            if (area_coordinator_name1 != null)
                            {
                                area_coordinator_name = area_coordinator_name1.firstname + " " + area_coordinator_name1.middlename + " " + area_coordinator_name1.lastname;
                            }

                            NSALK.Models.GetGroups.SystemDataResponseGroup group = new Models.GetGroups.SystemDataResponseGroup()
                            {
                                recid                 = lgroup.recid,
                                group_name            = lgroup.group_name,
                                street_name           = lgroup.street_name,
                                suburb                = lgroup.suburb,
                                area_coordinator_id   = lgroup.area_coordinator_id,
                                area_coordinator_name = area_coordinator_name.ToString(),
                                remarks               = lgroup.remarks,
                                setup_by              = lgroup.setup_by,
                                last_updated          = Convert.ToDateTime(lgroup.last_updated).ToString("dd/MM/yyyy HH:mm")
                            };
                            groups.Group.Add(group);
                        }
                        #endregion
                    }
                    if (role == "Coordinator")
                    {
                        #region Get Coordinator Groups
                        var lgroup1 = context.groups.ToList();
                        foreach (var lgroup in lgroup1)
                        {
                            string area_coordinator_name  = "";
                            var    area_coordinator_name1 = context.members.Where(x => x.recid == lgroup.area_coordinator_id).FirstOrDefault();
                            if (area_coordinator_name1 != null)
                            {
                                area_coordinator_name = area_coordinator_name1.firstname + " " + area_coordinator_name1.middlename + " " + area_coordinator_name1.lastname;
                            }

                            NSALK.Models.GetGroups.SystemDataResponseGroup group = new Models.GetGroups.SystemDataResponseGroup()
                            {
                                recid                 = lgroup.recid,
                                group_name            = lgroup.group_name,
                                street_name           = lgroup.street_name,
                                suburb                = lgroup.suburb,
                                area_coordinator_id   = lgroup.area_coordinator_id,
                                area_coordinator_name = area_coordinator_name.ToString(),
                                remarks               = lgroup.remarks,
                                setup_by              = lgroup.setup_by,
                                last_updated          = Convert.ToDateTime(lgroup.last_updated).ToString("dd/MM/yyyy HH:mm")
                            };
                            groups.Group.Add(group);
                        }
                        #endregion
                    }
                    if (role == "Member")
                    {
                        var gps = context.group_members.Where(x => x.member_id == memberId).ToList();
                        if (gps != null)
                        #region Get Member Groups
                        {
                            foreach (var grp in gps)
                            {
                                var lgroup = context.groups.Where(x => x.recid == grp.group_id).FirstOrDefault();
                                if (lgroup != null)
                                {
                                    string area_coordinator_name  = "";
                                    var    area_coordinator_name1 = context.members.Where(x => x.recid == lgroup.area_coordinator_id).FirstOrDefault();
                                    if (area_coordinator_name1 != null)
                                    {
                                        area_coordinator_name = area_coordinator_name1.firstname + " " + area_coordinator_name1.middlename + " " + area_coordinator_name1.lastname;
                                    }
                                    NSALK.Models.GetGroups.SystemDataResponseGroup group = new Models.GetGroups.SystemDataResponseGroup()
                                    {
                                        recid                 = lgroup.recid,
                                        group_name            = lgroup.group_name,
                                        street_name           = lgroup.street_name,
                                        suburb                = lgroup.suburb,
                                        area_coordinator_id   = lgroup.area_coordinator_id,
                                        area_coordinator_name = area_coordinator_name.ToString(),
                                        remarks               = lgroup.remarks,
                                        setup_by              = lgroup.setup_by,
                                        last_updated          = Convert.ToDateTime(lgroup.last_updated).ToString("dd/MM/yyyy HH:mm")
                                    };
                                    groups.Group.Add(group);
                                }
                            }
                        }
                        #endregion
                    }
                    outgoing.Items.Add(groups);
                    #endregion
                }
            }
            return(Ok(outgoing));
        }
Example #3
0
        public IHttpActionResult GetGroupsAdmin([FromBody] NSALK.Models.GetGroups.SystemDataMessage incoming)
        {
            Console.WriteLine(DateTime.Now.ToString("HH:mm:ss"));
            NSALK.Models.GetGroups.SystemDataResponse outgoing = new Models.GetGroups.SystemDataResponse();
            if (incoming != null)
            {
                int selectedId = 0;
                foreach (var items in incoming.Items)
                {
                    foreach (var gr in items.Group)
                    {
                        selectedId = gr.selectedid;
                    }
                }
                string role = ((ClaimsIdentity)User.Identity).Claims.Where(c => c.Type == ClaimTypes.Role).Select(c => c.Value).FirstOrDefault();

                NSALK.Models.GetGroups.SystemDataResponseGroups groups = new Models.GetGroups.SystemDataResponseGroups();
                using (NSAKLEntities context = new NSAKLEntities())
                {
                    #region Groups
                    var gps = context.group_members.Where(x => x.member_id == selectedId).ToList();

                    #region Get Admin Groups Selected and non selected
                    //foreach (var grp in gps)
                    //{

                    var lgroup1 = context.groups.ToList();
                    foreach (var lgroup in lgroup1)
                    {
                        string area_coordinator_name  = "";
                        var    area_coordinator_name1 = context.members.Where(x => x.recid == lgroup.area_coordinator_id).FirstOrDefault();
                        if (area_coordinator_name1 != null)
                        {
                            area_coordinator_name = area_coordinator_name1.firstname + " " + area_coordinator_name1.middlename + " " + area_coordinator_name1.lastname;
                        }
                        var result = "false";
                        if (gps != null)
                        {
                            var item = gps.FirstOrDefault(i => i.group_id == lgroup.recid);
                            if (item != null)
                            {
                                result = "true";
                            }
                        }

                        NSALK.Models.GetGroups.SystemDataResponseGroup group = new Models.GetGroups.SystemDataResponseGroup()
                        {
                            recid                 = lgroup.recid,
                            group_name            = lgroup.group_name,
                            street_name           = lgroup.street_name,
                            suburb                = lgroup.suburb,
                            area_coordinator_id   = lgroup.area_coordinator_id,
                            area_coordinator_name = area_coordinator_name.ToString(),
                            remarks               = lgroup.remarks,
                            setup_by              = lgroup.setup_by,
                            last_updated          = Convert.ToDateTime(lgroup.last_updated).ToString("dd/MM/yyyy HH:mm"),
                            selectedgroup         = result
                        };
                        groups.Group.Add(group);
                    }
                    #endregion
                    groups.Group = groups.Group.OrderByDescending(x => x.selectedgroup.Substring(0)).ToList();

                    outgoing.Items.Add(groups);
                    #endregion
                }
            }
            return(Ok(outgoing));
        }